示例#1
0
 public function postToLogin($r)
 {
     //this is the default, uber-simple login
     //which should be overidden by a module
     //all valid users need to be superusers
     $username = strtolower($r->get('username'));
     $pass = $r->get('password');
     $superusers = $r->getSuperusers();
     //todo: this is why params are not saved -- super ONLY
     if (isset($superusers[$username]) && $superusers[$username] == $pass) {
         $user = new Dase_DBO_DaseUser($this->db);
         $user->retrieveByEid($username);
         $user->initCart();
         $r->setCookie('collections', Dase_Json::get(Dase_DBO_Collection::getLookupArray($this->db)));
         $r->setCookie('eid', $username);
         $r->setCookie('max', $user->max_items);
         $r->setCookie('display', $user->display);
         $r->renderRedirect(urldecode($r->get('target')));
     } else {
         //I could probably just display here instead of redirect
         $params['msg'] = 'incorrect username/password';
         $r->renderRedirect("login/form", $params);
     }
 }
示例#2
0
 function asJson($app_root)
 {
     $collection_lookup = Dase_DBO_Collection::getLookupArray($this->db);
     $json_tag;
     $eid = $this->getUser()->eid;
     $json_tag['id'] = $this->getUrl($app_root);
     $json_tag['uri'] = $this->getUrl($app_root);
     $json_tag['links'] = array('self' => $this->getUrl($app_root));
     if ($this->created) {
         $json_tag['updated'] = $this->created;
     } else {
         $json_tag['updated'] = date(DATE_ATOM);
     }
     $json_tag['name'] = $this->name;
     $json_tag['description'] = $this->description;
     $json_tag['background'] = $this->background;
     $json_tag['is_public'] = $this->is_public;
     $json_tag['type'] = $this->type;
     $json_tag['eid'] = $eid;
     foreach ($this->getTagItems() as $tag_item) {
         $item = $tag_item->getItem();
         if (!$item) {
             Dase_Log::debug(LOG_FILE, 'tag_item missing item: ' . $tag_item->id);
             continue;
         }
         $json_item = array();
         $json_item['id'] = $app_root . '/tag/' . $eid . '/' . $this->ascii_id . '/' . $tag_item->id;
         $json_item['links'] = array();
         $json_item['links']['self'] = $app_root . '/tag/' . $eid . '/' . $this->ascii_id . '/' . $tag_item->id;
         $json_item['links']['related'] = $item->getUrl($app_root);
         $json_item['url'] = $app_root . '/tag/' . $eid . '/' . $this->ascii_id . '/' . $tag_item->id;
         $json_item['sort_order'] = $tag_item->sort_order;
         //make sure p_ values are always populated!
         $json_item['item_unique'] = $tag_item->p_collection_ascii_id . '/' . $tag_item->p_serial_number;
         $json_item['size'] = $tag_item->size;
         $json_item['updated'] = $tag_item->updated;
         $json_item['annotation'] = $tag_item->annotation;
         $json_item['title'] = $item->getTitle();
         $json_item['collection_name'] = $collection_lookup[$item->collection_id]['collection_name'];
         $json_item['media'] = array();
         foreach ($item->getMedia() as $m) {
             $json_item['media'][$m['size']] = $app_root . $m['url'];
         }
         $json_item['metadata'] = array();
         foreach ($item->getMetadata() as $meta) {
             $json_item['metadata'][$meta['attribute_name']] = $meta['value_text'];
         }
         $json_tag['items'][] = $json_item;
     }
     return Dase_Json::get($json_tag);
 }