Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/01/2012, 13:42
kaspito
 
Fecha de Ingreso: septiembre-2011
Mensajes: 36
Antigüedad: 12 años, 7 meses
Puntos: 0
Que se cree una carpeta cuando un usuario se registre

Bien, lo que quiero es que cuando un usuario nuevo se registre se cree un directorio con su nombre en mi servidor (porque para ciertas funcionalidades que le estoy añadiendo a mi web lo voy a necesitar)

He ido a components/com_user/controllers/registration.php (joomla! 1.7.3)
y el problema es que no tengo ni idea de por donde empezar.
Os dejo aqui el código del registration.php: (aunque supongo que es el mismo para todos xD)

Código PHP:
<?php
/**
 * @version        $Id: registration.php 22355 2011-11-07 05:11:58Z github_bot $
 * @package        Joomla.Site
 * @subpackage    com_users
 * @copyright    Copyright (C) 2005 - 2011 Open Source Matters, Inc. All rights reserved.
 * @license        GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

require_once 
JPATH_COMPONENT.'/controller.php';

/**
 * Registration controller class for Users.
 *
 * @package        Joomla.Site
 * @subpackage    com_users
 * @since        1.6
 */
class UsersControllerRegistration extends UsersController
{
    
/**
     * Method to activate a user.
     *
     * @return    boolean        True on success, false on failure.
     * @since    1.6
     */
    
public function activate()
    {
        
$user        JFactory::getUser();
        
$uParams    JComponentHelper::getParams('com_users');

        
// If the user is logged in, return them back to the homepage.
        
if ($user->get('id')) {
            
$this->setRedirect('index.php');
            return 
true;
        }

        
// If user registration or account activation is disabled, throw a 403.
        
if ($uParams->get('useractivation') == || $uParams->get('allowUserRegistration') == 0) {
            
JError::raiseError(403JText::_('JLIB_APPLICATION_ERROR_ACCESS_FORBIDDEN'));
            return 
false;
        }

        
$model $this->getModel('Registration''UsersModel');
        
$token JRequest::getVar('token'null'request''alnum');

        
// Check that the token is in a valid format.
        
if ($token === null || strlen($token) !== 32) {
            
JError::raiseError(403JText::_('JINVALID_TOKEN'));
            return 
false;
        }

        
// Attempt to activate the user.
        
$return $model->activate($token);

        
// Check for errors.
        
if ($return === false) {
            
// Redirect back to the homepage.
            
$this->setMessage(JText::sprintf('COM_USERS_REGISTRATION_SAVE_FAILED'$model->getError()), 'warning');
            
$this->setRedirect('index.php');
            return 
false;
        }

        
$useractivation $uParams->get('useractivation');

        
// Redirect to the login screen.
        
if ($useractivation == 0)
        {
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_SAVE_SUCCESS'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=login'false));
        }
        elseif (
$useractivation == 1)
        {
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=login'false));
        }
        elseif (
$return->getParam('activate'))
        {
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_VERIFY_SUCCESS'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete'false));
        }
        else
        {
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_ADMINACTIVATE_SUCCESS'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete'false));
        }
        return 
true;
    }

    
/**
     * Method to register a user.
     *
     * @return    boolean        True on success, false on failure.
     * @since    1.6
     */
    
public function register()
    {
        
// Check for request forgeries.
        
JRequest::checkToken() or jexit(JText::_('JINVALID_TOKEN'));

        
// If registration is disabled - Redirect to login page.
        
if(JComponentHelper::getParams('com_users')->get('allowUserRegistration') == 0) {
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=login'false));
            return 
false;
        }

        
// Initialise variables.
        
$app    JFactory::getApplication();
        
$model    $this->getModel('Registration''UsersModel');

        
// Get the user data.
        
$requestData JRequest::getVar('jform', array(), 'post''array');

        
// Validate the posted data.
        
$form    $model->getForm();
        if (!
$form) {
            
JError::raiseError(500$model->getError());
            return 
false;
        }
        
$data    $model->validate($form$requestData);

        
// Check for validation errors.
        
if ($data === false) {
            
// Get the validation messages.
            
$errors    $model->getErrors();

            
// Push up to three validation messages out to the user.
            
for ($i 0$n count($errors); $i $n && $i 3$i++) {
                if (
JError::isError($errors[$i])) {
                    
$app->enqueueMessage($errors[$i]->getMessage(), 'warning');
                } else {
                    
$app->enqueueMessage($errors[$i], 'warning');
                }
            }

            
// Save the data in the session.
            
$app->setUserState('com_users.registration.data'$requestData);

            
// Redirect back to the registration screen.
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration'false));
            return 
false;
        }

        
// Attempt to save the data.
        
$return    $model->register($data);

        
// Check for errors.
        
if ($return === false) {
            
// Save the data in the session.
            
$app->setUserState('com_users.registration.data'$data);

            
// Redirect back to the edit screen.
            
$this->setMessage(JText::sprintf('COM_USERS_REGISTRATION_SAVE_FAILED'$model->getError()), 'warning');
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration'false));
            return 
false;
        }

        
// Flush the data from the session.
        
$app->setUserState('com_users.registration.data'null);

        
// Redirect to the profile screen.
        
if ($return === 'adminactivate'){
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_COMPLETE_VERIFY'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete'false));
        } elseif (
$return === 'useractivate') {
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_COMPLETE_ACTIVATE'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete'false));
        } else {
            
$this->setMessage(JText::_('COM_USERS_REGISTRATION_SAVE_SUCCESS'));
            
$this->setRedirect(JRoute::_('index.php?option=com_users&view=login'false));
        }


        return 
true;
    }
}
Gracias.