aboutsummaryrefslogtreecommitdiffstats
path: root/mod
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2012-07-09 22:08:25 -0700
committerfriendica <info@friendica.com>2012-07-09 22:08:25 -0700
commit4b066e04f619c2c6f8d383daee9ceab49f39acdc (patch)
treec9f3376ffce342333b60d848430ee13b3329d903 /mod
parent8855cb9c286eb66ad96b3388d85ccc57434a6db3 (diff)
downloadvolse-hubzilla-4b066e04f619c2c6f8d383daee9ceab49f39acdc.tar.gz
volse-hubzilla-4b066e04f619c2c6f8d383daee9ceab49f39acdc.tar.bz2
volse-hubzilla-4b066e04f619c2c6f8d383daee9ceab49f39acdc.zip
making tags work
Diffstat (limited to 'mod')
-rw-r--r--mod/filer.php18
-rw-r--r--mod/filerm.php14
-rw-r--r--mod/network.php15
-rw-r--r--mod/profile.php16
-rw-r--r--mod/tagrm.php4
5 files changed, 52 insertions, 15 deletions
diff --git a/mod/filer.php b/mod/filer.php
index c0cca9e6d..adc6245e1 100644
--- a/mod/filer.php
+++ b/mod/filer.php
@@ -18,12 +18,18 @@ function filer_content(&$a) {
if($item_id && strlen($term)){
// file item
- file_tag_save_file(local_user(),$item_id,$term);
- } else {
- // return filer dialog
- $filetags = get_pconfig(local_user(),'system','filetags');
- $filetags = file_tag_file_to_list($filetags,'file');
- $filetags = explode(",", $filetags);
+ store_item_tag(local_user(),$item_id,TERM_OBJ_POST,TERM_FILE,$term,'');
+ }
+ else {
+ $filetags = array();
+ $r = q("select distinct(term) from term where uid = %d and type = %d order by term asc",
+ intval(local_user()),
+ intval(TERM_FILE)
+ );
+ if(count($r)) {
+ foreach($r as $rr)
+ $filetags[] = $rr['term'];
+ }
$tpl = get_markup_template("filer_dialog.tpl");
$o = replace_macros($tpl, array(
'$field' => array('term', t("Save to Folder:"), '', '', $filetags, t('- select -')),
diff --git a/mod/filerm.php b/mod/filerm.php
index d2b57d447..f70816266 100644
--- a/mod/filerm.php
+++ b/mod/filerm.php
@@ -6,8 +6,8 @@ function filerm_content(&$a) {
killme();
}
- $term = unxmlify(trim($_GET['term']));
- $cat = unxmlify(trim($_GET['cat']));
+ $term = trim($_GET['term']);
+ $cat = trim($_GET['cat']);
$category = (($cat) ? true : false);
if($category)
@@ -17,8 +17,14 @@ function filerm_content(&$a) {
logger('filerm: tag ' . $term . ' item ' . $item_id);
- if($item_id && strlen($term))
- file_tag_unsave_file(local_user(),$item_id,$term, $category);
+ if($item_id && strlen($term)) {
+ $r = q("delete from term where uid = %d and type = %d and oid = %d and $term = '%s' limit 1",
+ intval(local_user()),
+ intval(($category) ? FILE_CATEGORY : FILE_HASHTAG),
+ intval($item_id),
+ dbesc($term)
+ );
+ }
if(x($_SESSION,'return_url'))
goaway($a->get_baseurl() . '/' . $_SESSION['return_url']);
diff --git a/mod/network.php b/mod/network.php
index 35a981512..5ce7a9b57 100644
--- a/mod/network.php
+++ b/mod/network.php
@@ -643,7 +643,20 @@ function network_content(&$a, $update = 0) {
dbesc($parents_str)
);
- $items = conv_sort($items,$ordering);
+ $tag_finder = array();
+ if(count($items))
+ foreach($items as $item)
+ if(! in_array($item['item_id'],$tag_finder))
+ $tag_finder[] = $item['item_id'];
+ $tag_finder_str = implode(', ', $tag_finder);
+
+ $tags = q("select * from term where oid in ( %s ) and otype = %d",
+ dbesc($tag_finder_str),
+ intval(TERM_OBJ_POST)
+ );
+
+ $items = conv_sort($items,$tags,$ordering);
+
} else {
$items = array();
diff --git a/mod/profile.php b/mod/profile.php
index 24e03d6ea..b53639c35 100644
--- a/mod/profile.php
+++ b/mod/profile.php
@@ -279,8 +279,20 @@ function profile_content(&$a, $update = 0) {
intval($a->profile['profile_uid']),
dbesc($parents_str)
);
-
- $items = conv_sort($items,'created');
+
+ $tag_finder = array();
+ if(count($items))
+ foreach($items as $item)
+ if(! in_array($item['item_id'],$tag_finder))
+ $tag_finder[] = $item['item_id'];
+ $tag_finder_str = implode(', ', $tag_finder);
+ $tags = q("select * from term where oid in ( '%s' ) and otype = %d",
+ dbesc($tag_finder),
+ intval(TERM_OBJ_POST)
+ );
+
+ $items = conv_sort($items,$tags,'created');
+
} else {
$items = array();
}
diff --git a/mod/tagrm.php b/mod/tagrm.php
index 5041145cc..957cf0d71 100644
--- a/mod/tagrm.php
+++ b/mod/tagrm.php
@@ -11,8 +11,8 @@ function tagrm_post(&$a) {
if((x($_POST,'submit')) && ($_POST['submit'] === t('Cancel')))
goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
- $tag = ((x($_POST,'tag')) ? hex2bin(notags(trim($_POST['tag']))) : '');
- $item = ((x($_POST,'item')) ? intval($_POST['item']) : 0 );
+ $tag = ((x($_POST,'tag')) ? trim($_POST['tag']) : '');
+ $item = ((x($_POST,'item')) ? intval($_POST['item']) : 0 );
$r = q("SELECT * FROM `item` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($item),