summaryrefslogtreecommitdiff
path: root/lib/util.php
diff options
context:
space:
mode:
authorEvan Prodromou <evan@prodromou.name>2008-09-08 14:16:24 -0400
committerEvan Prodromou <evan@prodromou.name>2008-09-08 14:16:24 -0400
commita8a36677748b304faf20742598b90f3d9634f393 (patch)
tree1696b4c28db055544910f7f06786cfe97f4338b9 /lib/util.php
parent75f285ddf6decb4f8c3b1b87d29d9b12f833e9fc (diff)
initial non-Ajax version of favorites
darcs-hash:20080908181624-84dde-8200e1d91eb5f560ef0f296c9e1c56f93ef1b0c5.gz
Diffstat (limited to 'lib/util.php')
-rw-r--r--lib/util.php36
1 files changed, 35 insertions, 1 deletions
diff --git a/lib/util.php b/lib/util.php
index eeb2d7f64..6be317701 100644
--- a/lib/util.php
+++ b/lib/util.php
@@ -174,7 +174,7 @@ function common_show_header($pagetitle, $callable=NULL, $data=NULL, $headercall=
# FIXME: correct language for interface
$language = common_language();
-
+
common_element_start('html', array('xmlns' => 'http://www.w3.org/1999/xhtml',
'xml:lang' => $language,
'lang' => $language));
@@ -913,6 +913,16 @@ function common_fancy_url($action, $args=NULL) {
return common_path($path . (($args) ? ('?' . http_build_query($args)) : ''));
case 'tags':
return common_path('tags' . (($args) ? ('?' . http_build_query($args)) : ''));
+ case 'favor':
+ return common_path('main/favor');
+ case 'disfavor':
+ return common_path('main/disfavor');
+ case 'showfavorites':
+ if ($args && isset($args['page'])) {
+ return common_path($args['nickname'].'/favorites?page=' . $args['page']);
+ } else {
+ return common_path($args['nickname'].'/favorites');
+ }
default:
return common_simple_url($action, $args);
}
@@ -1537,6 +1547,30 @@ function common_session_token() {
return $_SESSION['token'];
}
+function common_disfavor_form($notice) {
+ common_element_start('form', array('id' => 'disfavor-' . $notice->id,
+ 'method' => 'post',
+ 'action' => common_local_url('disfavor')));
+ common_hidden('token', common_session_token());
+ common_hidden('notice', $notice->id);
+ common_element('input', array('type' => 'button',
+ 'class' => 'disfavor'),
+ '♥');
+ common_element_end('form');
+}
+
+function common_favor_form($notice) {
+ common_element_start('form', array('id' => 'favor-' . $notice->id,
+ 'method' => 'post',
+ 'action' => common_local_url('disfavor')));
+ common_hidden('token', common_session_token());
+ common_hidden('notice', $notice->id);
+ common_element('input', array('type' => 'button',
+ 'class' => 'disfavor'),
+ '♡');
+ common_element_end('form');
+}
+
function common_cache_key($extra) {
return 'laconica:' . common_keyize(common_config('site', 'name')) . ':' . $extra;
}