コード例 #1
0
ファイル: model.ModelPost.php プロジェクト: arno06/Achilles
 public function share($pData)
 {
     $pData['added_date_post'] = "NOW()";
     $pData['id_user'] = AuthenticationHandler::$data['id_user'];
     $pData['status_post'] = 1;
     $pData['permalink_post'] = $this->generatePermalink();
     $id_tags = array();
     if (isset($pData['tags_post']) && !empty($pData['tags_post'])) {
         $tags = explode(",", $pData['tags_post']);
         foreach ($tags as &$t) {
             $t = trim($t);
         }
         $m = new ModelCategory();
         $id_tags = $m->prepareCategories($tags);
         unset($pData['tags_post']);
     }
     $this->insert($pData);
     $id = $this->getInsertId();
     foreach ($id_tags as $i) {
         Query::insert(array('id_post' => $id, 'id_category' => $i))->into('post_category')->execute();
     }
     return $pData['permalink_post'];
 }
コード例 #2
0
ファイル: class.BaseModel.php プロジェクト: arno06/Savely
 /**
  * Méthode d'insertion de données dans la table du model
  * Renvoie le resultat de la requête
  * @param array $pValues				Tableau associatif des données à insérer
  * @return resource
  */
 public function insert(array $pValues)
 {
     return Query::insert($pValues)->into($this->table)->execute($this->handler);
 }
コード例 #3
0
ファイル: model.ModelLink.php プロジェクト: arno06/Savely
 public function addState($pUrl, $pIdUser = null)
 {
     $existing_link = $this->one(Query::condition()->andWhere('url_link', Query::EQUAL, $pUrl)->orWhere('canonical_link', Query::EQUAL, $pUrl));
     $headers = get_headers($pUrl);
     $code = substr($headers[0], 9, 3);
     if (in_array($code, array(404, 400, 401, 500, 503)) && $existing_link) {
         $this->deleteById($existing_link[$this->id]);
         return false;
     }
     $content = $this->parseLink($pUrl);
     if ($content === false || is_array($content) && empty($content['title']) && empty($content['price'])) {
         return false;
     }
     if (!$existing_link && isset($content['canonical']) && !empty($content['canonical'])) {
         $existing_link = $this->one(Query::condition()->andWhere('url_link', Query::EQUAL, $content['canonical'])->orWhere('canonical_link', Query::EQUAL, $content['canonical']));
     }
     if (!$existing_link) {
         Query::insert(array('url_link' => $pUrl, 'canonical_link' => $content['canonical'], 'title_link' => $content['title'], 'image_link' => $content['image']))->into($this->table)->execute($this->handler);
     } else {
         Query::update('sil_links')->values(array('url_link' => $pUrl, 'canonical_link' => $content['canonical'], 'title_link' => $content['title'], 'image_link' => $content['image']))->andWhere('id_link', Query::EQUAL, $existing_link['id_link'])->execute();
     }
     $existing_link = $this->one(Query::condition()->andWhere('url_link', Query::EQUAL, $pUrl)->orWhere('canonical_link', Query::EQUAL, $content['canonical']));
     if (isset($pIdUser)) {
         if (!Query::count('sil_user_links', Query::condition()->andWhere('id_user', Query::EQUAL, $pIdUser)->andWhere('id_link', Query::EQUAL, $existing_link['id_link']))) {
             Query::insert(array('id_user' => $pIdUser, 'id_link' => $existing_link['id_link']))->into('sil_user_links')->execute();
         }
     }
     Query::insert(array('id_link' => $existing_link['id_link'], 'price_state' => $content['price']['price'], 'devise_state' => $content['price']['devise']))->into('sil_states')->execute($this->handler);
     Query::update($this->table)->values(array('last_price_link' => $content['price']['price'], 'devise_link' => $content['price']['devise']))->andWhere('id_link', Query::EQUAL, $existing_link['id_link'])->execute();
     return true;
 }