|
Server IP : 127.0.0.1 / Your IP : 127.0.0.1 Web Server : Apache/2.4.10 (Win32) OpenSSL/1.0.1i PHP/5.6.3 System : Windows NT WIN-R7LTCC7BPLI 6.3 build 9200 (Windows Server 2012 R2 Datacenter Edition) i586 User : GerbangSIPAD ( 0) PHP Version : 5.6.3 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF Directory (0777) : C:/xampp5/htdocs/bhumie/upload/../protected/modules/user2/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
<?php
/**
* Yii-User module
*
* @author Mikhail Mangushev <mishamx@gmail.com>
* @link http://yii-user.googlecode.com/
* @license http://www.opensource.org/licenses/bsd-license.php
* @version $Id: UserModule.php 105 2011-02-16 13:05:56Z mishamx $
*/
class UserModule extends CWebModule
{
/**
* @var int
* @desc items on page
*/
public $user_page_size = 10;
/**
* @var int
* @desc items on page
*/
public $fields_page_size = 10;
/**
* @var string
* @desc hash method (md5,sha1 or algo hash function http://www.php.net/manual/en/function.hash.php)
*/
public $hash='md5';
/**
* @var boolean
* @desc use email for activation user account
*/
public $sendActivationMail=true;
/**
* @var boolean
* @desc allow auth for is not active user
*/
public $loginNotActiv=false;
/**
* @var boolean
* @desc activate user on registration (only $sendActivationMail = false)
*/
public $activeAfterRegister=false;
/**
* @var boolean
* @desc login after registration (need loginNotActiv or activeAfterRegister = true)
*/
public $autoLogin=true;
public $registrationUrl = array("/user/registration");
public $recoveryUrl = array("/user/recovery/recovery");
public $loginUrl = array("/user/login");
public $logoutUrl = array("/user/logout");
public $profileUrl = array("/user/profile");
public $returnUrl = array("/user/profile");
public $returnLogoutUrl = array("/user/login");
public $fieldsMessage = '';
/**
* @var array
* @desc User model relation from other models
* @see http://www.yiiframework.com/doc/guide/database.arr
*/
public $relations = array();
/**
* @var array
* @desc Profile model relation from other models
*/
public $profileRelations = array();
/**
* @var boolean
*/
public $captcha = array('registration'=>true);
/**
* @var boolean
*/
//public $cacheEnable = false;
public $tableUsers = '{{users}}';
public $tableProfiles = '{{profiles}}';
public $tableProfileFields = '{{profiles_fields}}';
static private $_user;
static private $_admin;
static private $_admins;
/**
* @var array
* @desc Behaviors for models
*/
public $componentBehaviors=array();
public function init()
{
// this method is called when the module is being created
// you may place code here to customize the module or the application
// import the module-level models and components
$this->setImport(array(
'user.models.*',
'user.components.*',
));
}
public function getBehaviorsFor($componentName){
if (isset($this->componentBehaviors[$componentName])) {
return $this->componentBehaviors[$componentName];
} else {
return array();
}
}
public function beforeControllerAction($controller, $action)
{
if(parent::beforeControllerAction($controller, $action))
{
// this method is called before any module controller action is performed
// you may place customized code here
return true;
}
else
return false;
}
/**
* @param $str
* @param $params
* @param $dic
* @return string
*/
public static function t($str='',$params=array(),$dic='user') {
return Yii::t("UserModule.".$dic, $str, $params);
}
/**
* @return hash string.
*/
public static function encrypting($string="") {
$hash = Yii::app()->getModule('user')->hash;
if ($hash=="md5")
return md5($string);
if ($hash=="sha1")
return sha1($string);
else
return hash($hash,$string);
}
/**
* @param $place
* @return boolean
*/
public static function doCaptcha($place = '') {
if(!extension_loaded('gd'))
return false;
if (in_array($place, Yii::app()->getModule('user')->captcha))
return Yii::app()->getModule('user')->captcha[$place];
return false;
}
/**
* Return admin status.
* @return boolean
*/
public static function isAdmin() {
if(Yii::app()->user->isGuest)
return false;
else {
if (!isset(self::$_admin)) {
if(self::user()->superuser)
self::$_admin = true;
else
self::$_admin = false;
}
return self::$_admin;
}
}
/**
* Return admins.
* @return array syperusers names
*/
public static function getAdmins() {
if (!self::$_admins) {
$admins = User::model()->active()->superuser()->findAll();
$return_name = array();
foreach ($admins as $admin)
array_push($return_name,$admin->username);
self::$_admins = $return_name;
}
return self::$_admins;
}
/**
* Send mail method
*/
public static function sendMail($email,$subject,$message) {
$adminEmail = Yii::app()->params['adminEmail'];
$headers = "MIME-Version: 1.0\r\nFrom: $adminEmail\r\nReply-To: $adminEmail\r\nContent-Type: text/html; charset=utf-8";
$message = wordwrap($message, 70);
$message = str_replace("\n.", "\n..", $message);
return mail($email,'=?UTF-8?B?'.base64_encode($subject).'?=',$message,$headers);
}
/**
* Return safe user data.
* @param user id not required
* @return user object or false
*/
public static function user($id=0) {
if ($id)
return User::model()->active()->findbyPk($id);
else {
if(Yii::app()->user->isGuest) {
return false;
} else {
if (!self::$_user)
self::$_user = User::model()->active()->findbyPk(Yii::app()->user->id);
return self::$_user;
}
}
}
/**
* Return safe user data.
* @param user id not required
* @return user object or false
*/
public function users() {
return User;
}
}