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.

This commit is contained in:
redmatrix
2016-01-28 15:23:42 -08:00
parent 5f1eb18da4
commit 35a9a468ce
3 changed files with 21 additions and 8 deletions

View File

@@ -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 '';