Beispiel #1
0
 /** create cart if none exists, also returns cart count */
 public function initCart()
 {
     $tag = new Dase_DBO_Tag($this->db);
     $tag->dase_user_id = $this->id;
     $tag->type = 'cart';
     if (!$tag->findOne()) {
         $tag->eid = $this->eid;
         $tag->name = 'My Cart';
         $tag->ascii_id = 'cart';
         $tag->created = date(DATE_ATOM);
         $tag->item_count = 0;
         $tag->insert();
     }
     return $tag->item_count;
 }
Beispiel #2
0
 protected function setup($r)
 {
     //Locates requested tag.  Method still needs to authorize.
     $tag = new Dase_DBO_Tag($this->db);
     if ($r->has('tag_ascii_id') && $r->has('eid')) {
         $tag->ascii_id = $r->get('tag_ascii_id');
         $tag->eid = $r->get('eid');
         $found = $tag->findOne();
     } elseif ($r->has('tag_id')) {
         $found = $tag->load($r->get('tag_id'));
     }
     if (isset($found) && $found && $found->id) {
         $this->tag = $tag;
     } else {
         $r->renderError(404, 'no such tag');
     }
 }
Beispiel #3
0
 public function insert($db, $r)
 {
     $user = $r->getUser();
     $atom_author = $this->getAuthorName();
     //should be exception??
     if (!$atom_author || $atom_author != $user->eid) {
         $r->renderError(401, 'users do not match');
     }
     $set = new Dase_DBO_Tag($db);
     $set->ascii_id = Dase_Util::dirify($this->getAsciiId());
     $set->eid = $user->eid;
     if ($set->findOne()) {
         $r->renderError(409, 'set with that name exists');
     }
     $set->dase_user_id = $user->id;
     $set->name = $this->getTitle();
     $set->is_public = 0;
     $set->item_count = 0;
     $set->type = 'set';
     $set->created = date(DATE_ATOM);
     $set->updated = date(DATE_ATOM);
     $set->insert();
     /*
     		foreach ($this->getCategories() as $category) {
     			$tag_cat = new Dase_DBO_TagCategory($db);
     			$tag_cat->tag_id = $set->id;
     			$tag_cat->category_id = 0;
     			$tag_cat->term = $category['term'];
     			$tag_cat->label = $category['label'];
     			$scheme = str_replace('http://daseproject.org/category/','',$category['scheme']);
     			$tag_cat->scheme = $scheme;
     			$tag_cat->insert();
     		}
     */
     return $set;
 }
Beispiel #4
0
 public function getCartAtom($r)
 {
     $u = $this->user;
     $tag = new Dase_DBO_Tag($this->db);
     $tag->dase_user_id = $u->id;
     $tag->type = 'cart';
     if ($tag->findOne()) {
         $r->renderResponse($tag->asAtom($r->app_root));
     } else {
         $r->renderError(404);
     }
 }
Beispiel #5
0
 public static function get($db, $ascii_id, $eid)
 {
     if (!$ascii_id || !$eid) {
         return false;
     }
     $user = new Dase_DBO_DaseUser($db);
     $user->retrieveByEid($eid);
     $tag = new Dase_DBO_Tag($db);
     $tag->ascii_id = $ascii_id;
     $tag->dase_user_id = $user->id;
     $tag->findOne();
     if ($tag->id) {
         return $tag;
     } else {
         return false;
     }
 }