diff options
author | redmatrix <git@macgirvin.com> | 2016-01-28 15:23:42 -0800 |
---|---|---|
committer | redmatrix <git@macgirvin.com> | 2016-01-28 15:23:42 -0800 |
commit | 35a9a468ceeb7b8e8b5ae2f026d3bdd76dff68be (patch) | |
tree | de00e5bf297bac33a03681b4f1907f02efdeb768 /include/widgets.php | |
parent | 5f1eb18da4d6380b64e83e0eeda6f1037de2fec9 (diff) | |
download | volse-hubzilla-35a9a468ceeb7b8e8b5ae2f026d3bdd76dff68be.tar.gz volse-hubzilla-35a9a468ceeb7b8e8b5ae2f026d3bdd76dff68be.tar.bz2 volse-hubzilla-35a9a468ceeb7b8e8b5ae2f026d3bdd76dff68be.zip |
widget_item - provide ability to use the page title instead of the message_id to locate the desired item. You can use either, but the page title is often easier to use and discover.
Diffstat (limited to 'include/widgets.php')
-rw-r--r-- | include/widgets.php | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/include/widgets.php b/include/widgets.php index 891e9c018..7e502e4c2 100644 --- a/include/widgets.php +++ b/include/widgets.php @@ -817,7 +817,7 @@ function widget_item($arr) { return ''; - if(! $arr['mid']) + if((! $arr['mid']) && (! $arr['title'])) return ''; if(! perm_is_allowed($channel_id, get_observer_hash(), 'view_pages')) @@ -826,10 +826,20 @@ function widget_item($arr) { require_once('include/security.php'); $sql_extra = item_permissions_sql($channel_id); - $r = q("select * from item where mid = '%s' and uid = %d and item_type = " . intval(ITEM_TYPE_WEBPAGE) . " $sql_extra limit 1", - dbesc($arr['mid']), - intval($channel_id) - ); + if($arr['title']) { + $r = q("select item.* from item left join item_id on item.id = item_id.iid + where item.uid = %d and sid = '%s' and service = 'WEBPAGE' and item_type = %d $sql_options $revision limit 1", + intval($channel_id), + dbesc($arr['title']), + intval(ITEM_TYPE_WEBPAGE) + ); + } + else { + $r = q("select * from item where mid = '%s' and uid = %d and item_type = " . intval(ITEM_TYPE_WEBPAGE) . " $sql_extra limit 1", + dbesc($arr['mid']), + intval($channel_id) + ); + } if(! $r) return ''; |