Wiki
Clone wikicruge-english / Installation
- Download this extension
- Extract it to protected/modules/cruge/downloadedFilesGoHere
- Import data/cruge-data-model.sql if you use MySQL database or data/cruge-data-model-postgres.sql if you use PostgreSQL
- In your protected/config/main.php add:
- in 'import'
#!php 'application.modules.cruge.components.*', 'application.modules.cruge.extensions.crugemailer.*',
- in 'modules'
#!php 'cruge'=>array( 'tableprefix'=>'cruge_', // para que utilice a protected.modules.cruge.models.auth.CrugeAuthDefault.php // // en vez de 'default' pon 'authdemo' para que utilice el demo de autenticacion alterna // para saber mas lee documentacion de la clase modules/cruge/models/auth/AlternateAuthDemo.php // 'availableAuthMethods'=>array('default'), 'availableAuthModes'=>array('username','email'), // url base para los links de activacion de cuenta de usuario 'baseUrl'=>'http://coco.com/', // NO OLVIDES PONER EN FALSE TRAS INSTALAR 'debug'=>true, 'rbacSetupEnabled'=>true, 'allowUserAlways'=>true, // MIENTRAS INSTALAS..PONLO EN: false // lee mas abajo respecto a 'Encriptando las claves' // 'useEncryptedPassword' => false, // Algoritmo de la función hash que deseas usar // Los valores admitidos están en: http://www.php.net/manual/en/function.hash-algos.php 'hash' => 'md5', // Estos tres atributos controlan la redirección del usuario. Solo serán son usados si no // hay un filtro de sesion definido (el componente MiSesionCruge), es mejor usar un filtro. // lee en la wiki acerca de: // "CONTROL AVANZADO DE SESIONES Y EVENTOS DE AUTENTICACION Y SESION" // // ejemplo: // 'afterLoginUrl'=>array('/site/welcome'), ( !!! no olvidar el slash inicial / ) // 'afterLogoutUrl'=>array('/site/page','view'=>'about'), // 'afterLoginUrl'=>null, 'afterLogoutUrl'=>null, 'afterSessionExpiredUrl'=>null, // manejo del layout con cruge. // 'loginLayout'=>'//layouts/column2', 'registrationLayout'=>'//layouts/column2', 'activateAccountLayout'=>'//layouts/column2', 'editProfileLayout'=>'//layouts/column2', // en la siguiente puedes especificar el valor "ui" o "column2" para que use el layout // de fabrica, es basico pero funcional. si pones otro valor considera que cruge // requerirá de un portlet para desplegar un menu con las opciones de administrador. // 'generalUserManagementLayout'=>'ui', // permite indicar un array con los nombres de campos personalizados, // incluyendo username y/o email para personalizar la respuesta de una consulta a: // $usuario->getUserDescription(); 'userDescriptionFieldsArray'=>array('email'), ),
* in 'components'
Make sure in 'components' in protected/config/main.php that you replaced the original 'user' part of the array (that comes with Yii by default) with the new one, provided by the Cruge extension
#!php // IMPORTANTE: asegurate de que la entrada 'user' (y format) que por defecto trae Yii // sea sustituida por estas a continuación: // 'user'=>array( 'allowAutoLogin'=>true, 'class' => 'application.modules.cruge.components.CrugeWebUser', 'loginUrl' => array('/cruge/ui/login'), ), 'authManager' => array( 'class' => 'application.modules.cruge.components.CrugeAuthManager', ), 'crugemailer'=>array( 'class' => 'application.modules.cruge.components.CrugeMailer', 'mailfrom' => 'email-desde-donde-quieres-enviar-los-mensajes@xxxx.com', 'subjectprefix' => 'Tu Encabezado del asunto - ', 'debug' => true, ), 'format' => array( 'datetimeFormat'=>"d M, Y h:m:s a", ),
- Add extension link to main menu:
in protected/views/layouts/main.php for menu widget place this code:
#!php <?php $this->widget('zii.widgets.CMenu',array( 'items'=>array( array('label'=>'Home', 'url'=>array('/site/index')), array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')), array('label'=>'Contact', 'url'=>array('/site/contact')), array('label'=>'Administrar Usuarios' , 'url'=>Yii::app()->user->ui->userManagementAdminUrl , 'visible'=>!Yii::app()->user->isGuest), array('label'=>'Login' , 'url'=>Yii::app()->user->ui->loginUrl , 'visible'=>Yii::app()->user->isGuest), array('label'=>'Logout ('.Yii::app()->user->name.')' , 'url'=>Yii::app()->user->ui->logoutUrl , 'visible'=>!Yii::app()->user->isGuest), ), )); ?>
- If you face any problems refer to the original docs in spanish (easily translatable with google translate or other service) http://yiiframeworkenespanol.org/wiki/index.php?title=Cruge
Updated