function getTag() { $tag = new Dase_DBO_Tag($this->db); if ($tag->load($this->tag_id)) { return $tag; } else { return false; } }
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'); } }
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; }
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); } }
<?php include 'config.php'; $tag = new Dase_DBO_Tag($db); foreach ($tag->findAll() as $t) { $lower = Dase_Util::dirify($t->ascii_id); if ($t->ascii_id != $lower) { print "PROBLEM! {$t->ascii_id}\n"; $t->ascii_id = $lower; print $t; $t->update(); } else { print "OK {$t->ascii_id}\n"; } }
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; } }
public function getSearchAtom($r) { $r->renderResponse(Dase_DBO_Tag::searchTagsAtom($this->db, $r->app_root, $r->get('q'))); }
<?php include 'config.php'; $tags = new Dase_DBO_Tag(); foreach ($tags->find() as $tag) { $tag->updated = date(DATE_ATOM, strtotime($tag->updated)); $tag->created = date(DATE_ATOM, strtotime($tag->created)); if (!$tag->eid) { $u = new Dase_DBO_DaseUser(); $u->load($tag->dase_user_id); $tag->eid = $u->eid; } $tag->eid = strtolower($tag->eid); if (!$tag->is_public) { $tag->is_public = 0; } print "updating {$tag->ascii_id}\n"; //$tag->update(); }
public function getTag() { $tag = new Dase_DBO_Tag($this->db); $tag->load($this->tag_id); return $tag; }
public function dumpSetsXml() { $prefix = $this->db->table_prefix; $writer = new XMLWriter(); $writer->openMemory(); $writer->setIndent(true); $writer->startDocument('1.0', 'UTF-8'); $writer->startElement('user_sets'); $writer->writeAttribute('archived_date', date(DATE_ATOM)); $writer->writeAttribute('eid', $this->eid); $writer->writeAttribute('name', $this->name); $sets = new Dase_DBO_Tag($this->db); $sets->dase_user_id = $this->id; $total_sets = $sets->findCount(); $set_count = 0; foreach ($sets->find() as $set) { $set = clone $set; $tag_items = new Dase_DBO_TagItem($this->db); $tag_items->tag_id = $set->id; if ($tag_items->findCount()) { $set_count++; $set = clone $set; $writer->startElement('set'); $writer->writeAttribute('ascii_id', $set->ascii_id); $writer->writeAttribute('name', $set->name); $writer->writeAttribute('eid', $set->eid); $writer->writeAttribute('created', $set->created); $writer->writeAttribute('updated', $set->updated); $writer->writeAttribute('visibility', $set->visibility); $writer->writeAttribute('item_count', $set->item_count); if ($set->description) { $writer->startElement('description'); $writer->text($set->description); $writer->endElement(); } foreach ($set->getCategories() as $cat) { $cat = clone $cat; $writer->startElement('category'); $writer->writeAttribute('scheme', $cat->scheme); $writer->writeAttribute('term', $cat->term); $writer->writeAttribute('label', $cat->label); $writer->endElement(); } $item_count = 0; foreach ($set->getTagItems() as $tag_item) { $tag_item = clone $tag_item; $item_count++; $writer->startElement('item'); $writer->writeAttribute('sort_order', $tag_item->sort_order); $writer->writeAttribute('item_unique', $tag_item->p_collection_ascii_id . '/' . $tag_item->p_serial_number); if ($tag_item->annotation) { $writer->startElement('annotation'); $writer->text($tag_item->annotation); $writer->endElement(); } $writer->endElement(); error_log('user ' . $this->eid . ' set number ' . $set_count . ' of ' . $total_sets . ' item number ' . $item_count); } $writer->endElement(); } } $writer->endDocument(); if ($set_count) { return $writer->flush(true); } else { return false; } }