summaryrefslogtreecommitdiff
path: root/modules/gallery/models
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2009-09-08 13:44:52 -0700
committerBharat Mediratta <bharat@menalto.com>2009-09-08 13:44:52 -0700
commit2aad580f53dbc06bb170c710467b47a5a532c6c8 (patch)
treefc6e91313a1eb594976990b51451d376c14e880b /modules/gallery/models
parent60848480887594e61339000259e5322340518071 (diff)
Move specialized (pretty) url generation back into Item_Model so that
we're not relying on overriding url::site() to do tricks around item urls. This means that you won't get item urls by doing url::site("albums/37"), for example, but it also means that we won't get pretty urls where we don't expect them (like in the action of a <form> element). Incidentally, this will help us move over to using the slug format because if you've got a bad character in a url, the edit forms will now work on it since they'll be id based.
Diffstat (limited to 'modules/gallery/models')
-rw-r--r--modules/gallery/models/item.php21
1 files changed, 18 insertions, 3 deletions
diff --git a/modules/gallery/models/item.php b/modules/gallery/models/item.php
index 0ec5d048..6e9debea 100644
--- a/modules/gallery/models/item.php
+++ b/modules/gallery/models/item.php
@@ -168,9 +168,24 @@ class Item_Model extends ORM_MPTT {
*
* @param string $query the query string (eg "show=3")
*/
- public function url($query=array(), $full_uri=false) {
- $url = ($full_uri ? url::abs_site("{$this->type}s/$this->id")
- : url::site("{$this->type}s/$this->id"));
+ public function url($query=null) {
+ $relative_url = $this->relative_url();
+ $url = url::site($relative_url);
+ if ($query) {
+ $url .= "?$query";
+ }
+ return $url;
+ }
+
+ /**
+ * album: url::abs_site("albums/2")
+ * photo: url::abs_site("photos/3")
+ *
+ * @param string $query the query string (eg "show=3")
+ */
+ public function abs_url($query=null) {
+ $relative_url = $this->relative_url();
+ $url = url::abs_site($relative_url);
if ($query) {
$url .= "?$query";
}