/**
  * Exclude object from result
  *
  * @param   UcUserPermissionMatches $ucUserPermissionMatches Object to remove from the list of results
  *
  * @return UcUserPermissionMatchesQuery The current query, for fluid interface
  */
 public function prune($ucUserPermissionMatches = null)
 {
     if ($ucUserPermissionMatches) {
         $this->addUsingAlias(UcUserPermissionMatchesPeer::ID, $ucUserPermissionMatches->getId(), Criteria::NOT_EQUAL);
     }
     return $this;
 }
Exemplo n.º 2
0
 public function userCakeAddUser()
 {
     global $mysqli, $emailActivation, $websiteUrl, $db_table_prefix;
     //Prevent this function being called if there were construction errors
     if ($this->status) {
         //Construct a secure hash for the plain text password
         $secure_pass = generateHash($this->clean_password);
         //Construct a unique activation token
         $this->activation_token = generateActivationToken();
         //Do we need to send out an activation email?
         if ($emailActivation == "true") {
             //User must activate their account first
             $this->user_active = 0;
             $mail = new userCakeMail();
             //Build the activation message
             $activation_message = lang("ACCOUNT_ACTIVATION_MESSAGE", array($websiteUrl, $this->activation_token));
             //Define more if you want to build larger structures
             $hooks = array("searchStrs" => array("#ACTIVATION-MESSAGE", "#ACTIVATION-KEY", "#USERNAME#"), "subjectStrs" => array($activation_message, $this->activation_token, $this->displayname));
             /* Build the template - Optional, you can just use the sendMail function 
             			Instead to pass a message. */
             if (!$mail->newTemplateMsg("new-registration.txt", $hooks)) {
                 $this->mail_failure = true;
             } else {
                 //Send the mail. Specify users email here and subject.
                 //SendMail can have a third parementer for message if you do not wish to build a template.
                 if (!$mail->sendMail($this->clean_email, "New User")) {
                     $this->mail_failure = true;
                 }
             }
             $this->success = lang("ACCOUNT_REGISTRATION_COMPLETE_TYPE2");
         } else {
             //Instant account activation
             $this->user_active = 1;
             $this->success = lang("ACCOUNT_REGISTRATION_COMPLETE_TYPE1");
         }
         if (!$this->mail_failure) {
             //Insert the user into the database providing no errors have been found.
             $user = new UcUsers();
             $user->setUserName($this->username);
             $user->setDisplayName($this->displayname);
             $user->setPassword($secure_pass);
             $user->setEmail($this->clean_email);
             $user->setActivationToken($this->activation_token);
             $user->setLastActivationRequest(time());
             $user->setLostPasswordRequest(0);
             $user->setActive($this->user_active);
             $user->setTitle('New Member');
             $user->setSignUpStamp(time());
             $user->setLastSignInStamp(0);
             $user->save();
             $inserted_id = $user->getId();
             //Insert default permission into matches table
             $permission = new UcUserPermissionMatches();
             $permission->setUserId($inserted_id);
             $permission->setPermissionId(1);
             $permission->save();
         }
     }
 }
 /**
  * Adds an object to the instance pool.
  *
  * Propel keeps cached copies of objects in an instance pool when they are retrieved
  * from the database.  In some cases -- especially when you override doSelect*()
  * methods in your stub classes -- you may need to explicitly add objects
  * to the cache in order to ensure that the same objects are always returned by doSelect*()
  * and retrieveByPK*() calls.
  *
  * @param UcUserPermissionMatches $obj A UcUserPermissionMatches object.
  * @param      string $key (optional) key to use for instance map (for performance boost if key was already calculated externally).
  */
 public static function addInstanceToPool($obj, $key = null)
 {
     if (Propel::isInstancePoolingEnabled()) {
         if ($key === null) {
             $key = (string) $obj->getId();
         }
         // if key === null
         UcUserPermissionMatchesPeer::$instances[$key] = $obj;
     }
 }
Exemplo n.º 4
0
function addPermission($permission, $user)
{
    $i = 0;
    $permissionObj = new UcUserPermissionMatches();
    if (is_array($permission)) {
        foreach ($permission as $id) {
            $permissionObj->setPermissionId($id);
            $permissionObj->setUserId($user);
            $permissionObj->save();
            $i++;
        }
    } elseif (is_array($user)) {
        foreach ($user as $id) {
            $permissionObj->setPermissionId($permission);
            $permissionObj->setUserId($id);
            $permissionObj->save();
            $i++;
        }
    } else {
        $permissionObj->setPermissionId($permission);
        $permissionObj->setUserId($user);
        $permissionObj->save();
        $i++;
    }
    return $i;
}