예제 #1
0
 /**
  * Save the user instance in database
  * @return Boolean true if successfully saved, false otherwise
  */
 public function save()
 {
     // Si l'utilisateur existe, on le met à jour
     if ($this->ok()) {
         // Mise à jour de l'utilisateur
         $user = new query();
         $user->update('user');
         foreach ($this->field as $key => $value) {
             switch ($key) {
                 case "id":
                 case "login":
                     // On ne modifie jamais l'ID de l'utilisateur et on enregistre pas le temps de mise à jour de la session s'il y en a une.
                     break;
                 default:
                     // On modifie la ligne
                     $user->set($key, trim($value));
                     break;
             }
         }
         $user->where('id', '=', $this->get('id'));
         $user->exec();
         //Mise à jour des options
         foreach ($this->create as $create) {
             $query = new query();
             $query->insert('user_option')->set('key', $create)->set('value', $this->option[$create])->set('owner', $this->get('id'))->exec();
         }
         foreach ($this->change as $change) {
             $query = new query();
             $query->update('user_option')->set('value', $this->option[$change])->where('owner', '=', $this->get('id'))->where('key', '=', $change)->exec();
         }
         return true;
         // Si l'utilisateur n'existe pas, impossible de le mettre à jour, on retourne une erreur.
     } else {
         $user = new query();
         $user->insert('user')->set('username', $this->get('username'));
         $id = $user->exec();
         $this->set('id', $id);
         $this->ok = true;
         $this->save();
         return true;
     }
 }
예제 #2
0
/**
 * Allows custom post type 'episode' to be seen in category page listings.
 * @param query $query 
 * @return $query
 */
function convergence_category_post_types($query)
{
    if ($query->is_category) {
        $query->set('post_type', array('post', 'episode'));
    }
    return $query;
}