<?php

namespace Neag\MainBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * User
 *
 * @ORM\Table(name="neag_user", options={"collate"="utf8_general_ci"}, indexes={@ORM\Index(name="name_idx", columns={"name"}), @ORM\Index(name="email_idx", columns={"email"}), @ORM\Index(name="vk_id_idx", columns={"vk_id"}), @ORM\Index(name="fb_id_idx", columns={"fb_id"}), @ORM\Index(name="ok_id_idx", columns={"ok_id"}), @ORM\Index(name="ip_idx", columns={"ip"}), @ORM\Index(name="cookie_id_idx", columns={"cookie_id"}), @ORM\Index(name="time_visit_idx", columns={"time_visit"}), @ORM\Index(name="time_login_idx", columns={"time_login"}), @ORM\Index(name="time_registration_idx", columns={"time_registration"}), @ORM\Index(name="time_edit_idx", columns={"time_edit"}), @ORM\Index(name="active_idx", columns={"active"})})
 * @ORM\Entity
 */
class User
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="bigint", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="name", type="string", nullable=false)
     */
    private $name;
    
    /**
     * @var string
     *
     * @ORM\Column(name="email", type="string", nullable=true, length=255)
     */
    private $email;
    
    /**
     * @var string
     *
     * @ORM\Column(name="pass", type="string", nullable=true, length=255)
     */
    private $pass;
    
    /**
     * @var string
     *
     * @ORM\Column(name="vk_id", type="string", nullable=true)
     */
    private $vkId;
    
    /**
     * @var string
     *
     * @ORM\Column(name="fb_id", type="string", nullable=true)
     */
    private $fbId;
    
    /**
     * @var string
     *
     * @ORM\Column(name="ok_id", type="string", nullable=true)
     */
    private $okId;
    
    /**
     * @var string
     *
     * @ORM\Column(name="description", type="text")
     */
    private $description;
    
    /**
     * @var string
     *
     * @ORM\Column(name="contacts", type="text")
     */
    private $contacts;
    
    /**
     * @var string
     *
     * @ORM\Column(name="phone", type="string", length=255)
     */
    private $phone;
    
    /**
     * @var string
     *
     * @ORM\Column(name="ip", type="string", nullable=false)
     */
    private $ip;
    
    /**
     * @var string
     *
     * @ORM\Column(name="cookie_id", type="string", nullable=false)
     */
    private $cookieId;
    
    /**
     * @var \DateTime
     *
     * @ORM\Column(name="time_visit", type="datetime", nullable=true)
     */
    private $timeVisit;
    
    /**
     * @var \DateTime
     *
     * @ORM\Column(name="time_login", type="datetime", nullable=true)
     */
    private $timeLogin;
    
    /**
     * @var \DateTime
     *
     * @ORM\Column(name="time_registration", type="datetime", nullable=true)
     */
    private $timeRegistration;
    
    /**
     * @var \DateTime
     *
     * @ORM\Column(name="time_edit", type="datetime", nullable=true)
     */
    private $timeEdit;
    
    /**
     * @var string
     *
     * @ORM\Column(name="email_confirm_token", type="string", length=255, nullable=true)
     */
    private $emailConfirmToken;
    
    /**
     * @var string
     *
     * @ORM\Column(name="pass_change_token", type="string", length=255, nullable=true)
     */
    private $passChangeToken;
    
    /**
     * @var string
     *
     * @ORM\Column(name="email_change", type="string", nullable=true, length=255)
     */
    private $emailChange = null;
    
    /**
     * @var string
     *
     * @ORM\Column(name="email_change_token", type="string", length=255, nullable=true)
     */
    private $emailChangeToken;
    
    /**
     * @var integer
     * @ORM\Column(name="image_width", type="integer")
     */
    private $imageWidth = 0;

    /**
     * @var integer
     * @ORM\Column(name="image_height", type="integer")
     */
    private $imageHeight = 0;

    /**
     * @var string
     * @ORM\Column(name="image_format", type="string", length=4, nullable=true)
     */
    private $imageFormat = null;
    
    /**
     * @var integer
     * @ORM\Column(name="thumb_image_width", type="integer")
     */
    private $thumbImageWidth = 0;

    /**
     * @var integer
     * @ORM\Column(name="thumb_image_height", type="integer")
     */
    private $thumbImageHeight = 0;

    /**
     * @var string
     * @ORM\Column(name="thumb_image_format", type="string", length=4, nullable=true)
     */
    private $thumbImageFormat = null;
    
    /**
     * @var boolean
     *
     * @ORM\Column(name="active", type="boolean", nullable=false)
     */
    private $active = true;
    
    
    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    } 

    /**
     * Set name
     *
     * @param string $name
     * @return User
     */
    public function setName($name)
    {
        $this->name = $name;

        return $this;
    }

    /**
     * Get name
     *
     * @return string 
     */
    public function getName()
    {
        return $this->name;
    }
    
    /**
     * Set email
     *
     * @param string $email
     * @return User
     */
    public function setEmail($email)
    {
        $this->email = $email;

        return $this;
    }

    /**
     * Get email
     *
     * @return string 
     */
    public function getEmail()
    {
        return $this->email;
    }
    
    /**
     * Set Pass
     *
     * @param string $Pass
     * @return User
     */
    public function setPass($pass)
    {
        $this->pass = $pass;

        return $this;
    }

    /**
     * Get Pass
     *
     * @return string 
     */
    public function getPass()
    {
        return $this->pass;
    }
    
    /**
     * Set vkId
     *
     * @param string $vkId
     * @return User
     */
    public function setVkId($vkId)
    {
        $this->vkId = $vkId;

        return $this;
    }

    /**
     * Get vkId
     *
     * @return string 
     */
    public function getVkId()
    {
        return $this->vkId;
    }
    
    /**
     * Set fbId
     *
     * @param string $fbId
     * @return User
     */
    public function setFbId($fbId)
    {
        $this->fbId = $fbId;

        return $this;
    }

    /**
     * Get fbId
     *
     * @return string 
     */
    public function getFbId()
    {
        return $this->fbId;
    }
    
    /**
     * Set okId
     *
     * @param string $okId
     * @return User
     */
    public function setOkId($okId)
    {
        $this->okId = $okId;

        return $this;
    }

    /**
     * Get okId
     *
     * @return string 
     */
    public function getOkId()
    {
        return $this->okId;
    }
    
    /**
     * Set description
     *
     * @param string $description
     * @return User
     */
    public function setDescription($description)
    {
        $this->description = $description;

        return $this;
    }

    /**
     * Get description
     *
     * @return string 
     */
    public function getDescription()
    {
        return $this->description;
    }
    
    /**
     * Set contacts
     *
     * @param string $contacts
     * @return User
     */
    public function setContacts($contacts)
    {
        $this->contacts = $contacts;

        return $this;
    }

    /**
     * Get contacts
     *
     * @return string 
     */
    public function getContacts()
    {
        return $this->contacts;
    }
    
    /**
     * Set ip
     *
     * @param string $ip
     * @return User
     */
    public function setIp($ip)
    {
        $this->ip = $ip;

        return $this;
    }

    /**
     * Get ip
     *
     * @return string 
     */
    public function getIp()
    {
        return $this->ip;
    }
    
    /**
     * Set cookieId
     *
     * @param string $cookieId
     * @return User
     */
    public function setCookieId($cookieId)
    {
        $this->cookieId = $cookieId;

        return $this;
    }

    /**
     * Get cookieId
     *
     * @return string 
     */
    public function getCookieId()
    {
        return $this->cookieId;
    }
    
    /**
     * Set timeVisit
     *
     * @param string $timeVisit
     * @return User
     */
    public function setTimeVisit($timeVisit)
    {
        $this->timeVisit = $timeVisit;

        return $this;
    }

    /**
     * Get timeVisit
     *
     * @return string 
     */
    public function getTimeVisit()
    {
        return $this->timeVisit;
    }
    
    /**
     * Set timeLogin
     *
     * @param string $timeLogin
     * @return User
     */
    public function setTimeLogin($timeLogin)
    {
        $this->timeLogin = $timeLogin;

        return $this;
    }

    /**
     * Get timeLogin
     *
     * @return string 
     */
    public function getTimeLogin()
    {
        return $this->timeLogin;
    }
    
    /**
     * Set timeRegistration
     *
     * @param string $timeRegistration
     * @return User
     */
    public function setTimeRegistration($timeRegistration)
    {
        $this->timeRegistration = $timeRegistration;

        return $this;
    }

    /**
     * Get timeRegistration
     *
     * @return string 
     */
    public function getTimeRegistration()
    {
        return $this->timeRegistration;
    }
    
    /**
     * Set timeEdit
     *
     * @param string $timeEdit
     * @return User
     */
    public function setTimeEdit($timeEdit)
    {
        $this->timeEdit = $timeEdit;

        return $this;
    }

    /**
     * Get timeEdit
     *
     * @return string 
     */
    public function getTimeEdit()
    {
        return $this->timeEdit;
    }

    /**
     * Set active
     *
     * @param boolean $active
     * @return User
     */
    public function setActive($active)
    {
        $this->active = $active;

        return $this;
    }

    /**
     * Get active
     *
     * @return boolean 
     */
    public function getActive()
    {
        return $this->active;
    }
    
    /**
     * Set emailConfirmToken
     *
     * @param boolean $emailConfirmToken
     * @return User
     */
    public function setEmailConfirmToken($emailConfirmToken)
    {
        $this->emailConfirmToken = $emailConfirmToken;

        return $this;
    }

    /**
     * Get emailConfirmToken
     *
     * @return boolean 
     */
    public function getEmailConfirmToken()
    {
        return $this->emailConfirmToken;
    }
    
    /**
     * Set passChangeToken
     *
     * @param boolean $passChangeToken
     * @return User
     */
    public function setPassChangeToken($passChangeToken)
    {
        $this->passChangeToken = $passChangeToken;

        return $this;
    }

    /**
     * Get passChangeToken
     *
     * @return boolean 
     */
    public function getPassChangeToken()
    {
        return $this->passChangeToken;
    }
    
    /**
     * Set emailChangeToken
     *
     * @param boolean $emailChangeToken
     * @return User
     */
    public function setEmailChangeToken($emailChangeToken)
    {
        $this->emailChangeToken = $emailChangeToken;

        return $this;
    }

    /**
     * Get emailChangeToken
     *
     * @return boolean 
     */
    public function getEmailChangeToken()
    {
        return $this->emailChangeToken;
    }
    
    /**
     * Set emailChange
     *
     * @param boolean $emailChange
     * @return User
     */
    public function setEmailChange($emailChange)
    {
        $this->emailChange = $emailChange;

        return $this;
    }

    /**
     * Get emailChange
     *
     * @return boolean 
     */
    public function getEmailChange()
    {
        return $this->emailChange;
    }
    
    /**
     * Set thumbImageFormat
     *
     * @param string $thumbImageFormat
     * @return User
     */
    public function setThumbImageFormat($thumbImageFormat)
    {
        $this->thumbImageFormat = $thumbImageFormat;

        return $this;
    }

    /**
     * Get thumbImageFormat
     *
     * @return string 
     */
    public function getThumbImageFormat()
    {
        return $this->thumbImageFormat;
    }

    /**
     * Set thumbImageWidth
     *
     * @param integer $thumbImageWidth
     * @return User
     */
    public function setThumbImageWidth($thumbImageWidth)
    {
        $this->thumbImageWidth = $thumbImageWidth;

        return $this;
    }

    /**
     * Get thumbImageWidth
     *
     * @return integer 
     */
    public function getThumbImageWidth()
    {
        return $this->thumbImageWidth;
    }

    /**
     * Set thumbImageHeight
     *
     * @param integer $thumbImageHeight
     * @return User
     */
    public function setThumbImageHeight($thumbImageHeight)
    {
        $this->thumbImageHeight = $thumbImageHeight;

        return $this;
    }

    /**
     * Get thumbImageHeight
     *
     * @return integer 
     */
    public function getThumbImageHeight()
    {
        return $this->thumbImageHeight;
    }

    /**
     * Set imageFormat
     *
     * @param string $imageFormat
     * @return User
     */
    public function setImageFormat($imageFormat)
    {
        $this->imageFormat = $imageFormat;

        return $this;
    }

    /**
     * Get imageFormat
     *
     * @return string 
     */
    public function getImageFormat()
    {
        return $this->imageFormat;
    }

    /**
     * Set imageWidth
     *
     * @param integer $imageWidth
     * @return User
     */
    public function setImageWidth($imageWidth)
    {
        $this->imageWidth = $imageWidth;

        return $this;
    }

    /**
     * Get imageWidth
     *
     * @return integer 
     */
    public function getImageWidth()
    {
        return $this->imageWidth;
    }

    /**
     * Set imageHeight
     *
     * @param integer $imageHeight
     * @return User
     */
    public function setImageHeight($imageHeight)
    {
        $this->imageHeight = $imageHeight;

        return $this;
    }

    /**
     * Get imageHeight
     *
     * @return integer 
     */
    public function getImageHeight()
    {
        return $this->imageHeight;
    }
}
