aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Zotlabs/Daemon/Checksites.php1
-rw-r--r--Zotlabs/Daemon/Cron_daily.php1
-rw-r--r--Zotlabs/Daemon/Cron_weekly.php1
-rw-r--r--Zotlabs/Lib/Apps.php23
-rw-r--r--Zotlabs/Module/Admin/Queue.php1
-rw-r--r--Zotlabs/Module/Appman.php4
-rw-r--r--Zotlabs/Module/Fhublocs.php28
-rw-r--r--Zotlabs/Module/Import.php33
-rwxr-xr-xboot.php1
-rw-r--r--include/Import/refimport.php1
-rw-r--r--include/api_zot.php1
-rw-r--r--include/bbcode.php2
-rw-r--r--include/bookmarks.php1
-rw-r--r--include/channel.php29
-rw-r--r--include/hubloc.php31
-rw-r--r--include/nav.php2
-rw-r--r--include/network.php21
-rwxr-xr-xinclude/oembed.php2
-rw-r--r--include/text.php2
-rw-r--r--include/widgets.php1
-rw-r--r--include/zid.php4
-rw-r--r--include/zot.php65
-rw-r--r--view/tpl/app.tpl7
-rwxr-xr-xview/tpl/nav.tpl5
24 files changed, 166 insertions, 101 deletions
diff --git a/Zotlabs/Daemon/Checksites.php b/Zotlabs/Daemon/Checksites.php
index 991456319..a2081967a 100644
--- a/Zotlabs/Daemon/Checksites.php
+++ b/Zotlabs/Daemon/Checksites.php
@@ -3,7 +3,6 @@
namespace Zotlabs\Daemon;
require_once('include/zot.php');
-require_once('include/hubloc.php');
class Checksites {
diff --git a/Zotlabs/Daemon/Cron_daily.php b/Zotlabs/Daemon/Cron_daily.php
index a16d49853..0f0001890 100644
--- a/Zotlabs/Daemon/Cron_daily.php
+++ b/Zotlabs/Daemon/Cron_daily.php
@@ -76,7 +76,6 @@ class Cron_daily {
Master::Summon(array('Expire'));
Master::Summon(array('Cli_suggest'));
- require_once('include/hubloc.php');
remove_obsolete_hublocs();
call_hooks('cron_daily',datetime_convert());
diff --git a/Zotlabs/Daemon/Cron_weekly.php b/Zotlabs/Daemon/Cron_weekly.php
index ba4b67ff5..5b185f475 100644
--- a/Zotlabs/Daemon/Cron_weekly.php
+++ b/Zotlabs/Daemon/Cron_weekly.php
@@ -17,7 +17,6 @@ class Cron_weekly {
z_check_cert();
- require_once('include/hubloc.php');
prune_hub_reinstalls();
mark_orphan_hubsxchans();
diff --git a/Zotlabs/Lib/Apps.php b/Zotlabs/Lib/Apps.php
index 2480dde1f..4b95a9f5d 100644
--- a/Zotlabs/Lib/Apps.php
+++ b/Zotlabs/Lib/Apps.php
@@ -349,7 +349,8 @@ class Apps {
'$edit' => ((local_channel() && $installed && $mode == 'edit') ? t('Edit') : ''),
'$delete' => ((local_channel() && $installed && $mode == 'edit') ? t('Delete') : ''),
'$undelete' => ((local_channel() && $installed && $mode == 'edit') ? t('Undelete') : ''),
- '$deleted' => $papp['deleted']
+ '$deleted' => $papp['deleted'],
+ '$featured' => ((strpos($papp['categories'], 'nav_featured_app') === false) ? false : true)
));
}
@@ -421,7 +422,6 @@ class Apps {
}
}
-
static public function app_undestroy($uid,$app) {
// undelete a system app
@@ -443,8 +443,27 @@ class Apps {
}
}
+ static public function app_feature($uid,$app) {
+ $r = q("select id from app where app_id = '%s' and app_channel = %d limit 1",
+ dbesc($app['guid']),
+ intval($uid)
+ );
+ $x = q("select * from term where otype = %d and oid = %d limit 1",
+ intval(TERM_OBJ_APP),
+ intval($r[0]['id'])
+ );
+ if($x) {
+ q("delete from term where otype = %d and oid = %d",
+ intval(TERM_OBJ_APP),
+ intval($x[0]['oid'])
+ );
+ }
+ else {
+ store_item_tag($uid,$r[0]['id'],TERM_OBJ_APP,TERM_CATEGORY,'nav_featured_app',escape_tags(z_root() . '/apps/?f=&cat=nav_featured_app'));
+ }
+ }
static public function app_installed($uid,$app) {
diff --git a/Zotlabs/Module/Admin/Queue.php b/Zotlabs/Module/Admin/Queue.php
index 4986de925..5a47413ee 100644
--- a/Zotlabs/Module/Admin/Queue.php
+++ b/Zotlabs/Module/Admin/Queue.php
@@ -15,7 +15,6 @@ class Queue {
$expert = ((array_key_exists('expert',$_REQUEST)) ? intval($_REQUEST['expert']) : 0);
if($_REQUEST['drophub']) {
- require_once('hubloc.php');
hubloc_mark_as_down($_REQUEST['drophub']);
remove_queue_by_posturl($_REQUEST['drophub']);
}
diff --git a/Zotlabs/Module/Appman.php b/Zotlabs/Module/Appman.php
index a7631758b..270301d34 100644
--- a/Zotlabs/Module/Appman.php
+++ b/Zotlabs/Module/Appman.php
@@ -62,6 +62,10 @@ class Appman extends \Zotlabs\Web\Controller {
return;
}
+ if($_POST['feature']) {
+ Zlib\Apps::app_feature(local_channel(),$papp);
+ }
+
if($_SESSION['return_url'])
goaway(z_root() . '/' . $_SESSION['return_url']);
diff --git a/Zotlabs/Module/Fhublocs.php b/Zotlabs/Module/Fhublocs.php
index cdf323a41..42c119da3 100644
--- a/Zotlabs/Module/Fhublocs.php
+++ b/Zotlabs/Module/Fhublocs.php
@@ -56,19 +56,21 @@ class Fhublocs extends \Zotlabs\Web\Controller {
// Create a verified hub location pointing to this site.
- $h = q("insert into hubloc ( hubloc_guid, hubloc_guid_sig, hubloc_hash, hubloc_addr, hubloc_primary, hubloc_url, hubloc_url_sig, hubloc_host, hubloc_callback, hubloc_sitekey, hubloc_network )
- values ( '%s', '%s', '%s', '%s', %d, '%s', '%s', '%s', '%s', '%s', '%s' )",
- dbesc($rr['channel_guid']),
- dbesc($rr['channel_guid_sig']),
- dbesc($rr['channel_hash']),
- dbesc(channel_reddress($rr)),
- intval($primary),
- dbesc(z_root()),
- dbesc(base64url_encode(rsa_sign(z_root(),$rr['channel_prvkey']))),
- dbesc(\App::get_hostname()),
- dbesc(z_root() . '/post'),
- dbesc($sitekey),
- dbesc('zot')
+
+ $h = hubloc_store_lowlevel(
+ [
+ 'hubloc_guid' => $rr['channel_guid'],
+ 'hubloc_guid_sig' => $rr['channel_guid_sig'],
+ 'hubloc_hash' => $rr['channel_hash'],
+ 'hubloc_addr' => channel_reddress($rr),
+ 'hubloc_network' => 'zot',
+ 'hubloc_primary' => $primary,
+ 'hubloc_url' => z_root(),
+ 'hubloc_url_sig' => base64url_encode(rsa_sign(z_root(),$rr['channel_prvkey'])),
+ 'hubloc_host' => \App::get_hostname(),
+ 'hubloc_callback' => z_root() . '/post',
+ 'hubloc_sitekey' => $sitekey
+ ]
);
if($h)
diff --git a/Zotlabs/Module/Import.php b/Zotlabs/Module/Import.php
index 6de7c85a2..52835c685 100644
--- a/Zotlabs/Module/Import.php
+++ b/Zotlabs/Module/Import.php
@@ -206,23 +206,24 @@ class Import extends \Zotlabs\Web\Controller {
if($completed < 5) {
// create new hubloc for the new channel at this site
-
- $r = q("insert into hubloc ( hubloc_guid, hubloc_guid_sig, hubloc_hash, hubloc_addr, hubloc_network, hubloc_primary,
- hubloc_url, hubloc_url_sig, hubloc_host, hubloc_callback, hubloc_sitekey )
- values ( '%s', '%s', '%s', '%s', '%s', %d, '%s', '%s', '%s', '%s', '%s' )",
- dbesc($channel['channel_guid']),
- dbesc($channel['channel_guid_sig']),
- dbesc($channel['channel_hash']),
- dbesc(channel_reddress($channel)),
- dbesc('zot'),
- intval(($seize) ? 1 : 0),
- dbesc(z_root()),
- dbesc(base64url_encode(rsa_sign(z_root(),$channel['channel_prvkey']))),
- dbesc(\App::get_hostname()),
- dbesc(z_root() . '/post'),
- dbesc(get_config('system','pubkey'))
+
+ $r = hubloc_store_lowlevel(
+ [
+ 'hubloc_guid' => $channel['channel_guid'],
+ 'hubloc_guid_sig' => $channel['channel_guid_sig'],
+ 'hubloc_hash' => $channel['channel_hash'],
+ 'hubloc_addr' => channel_reddress($channel),
+ 'hubloc_network' => 'zot',
+ 'hubloc_primary' => (($seize) ? 1 : 0),
+ 'hubloc_url' => z_root(),
+ 'hubloc_url_sig' => base64url_encode(rsa_sign(z_root(),$channel['channel_prvkey'])),
+ 'hubloc_host' => \App::get_hostname(),
+ 'hubloc_callback' => z_root() . '/post',
+ 'hubloc_sitekey' => get_config('system','pubkey'),
+ 'hubloc_updated' => datetime_convert()
+ ]
);
-
+
// reset the original primary hubloc if it is being seized
if($seize) {
diff --git a/boot.php b/boot.php
index 69a08f0b3..0eae8b3ed 100755
--- a/boot.php
+++ b/boot.php
@@ -46,6 +46,7 @@ require_once('include/connections.php');
require_once('include/account.php');
require_once('include/zid.php');
require_once('include/xchan.php');
+require_once('include/hubloc.php');
define ( 'PLATFORM_NAME', 'hubzilla' );
diff --git a/include/Import/refimport.php b/include/Import/refimport.php
index 3ef8870ac..04540a9bd 100644
--- a/include/Import/refimport.php
+++ b/include/Import/refimport.php
@@ -1,7 +1,6 @@
<?php
require_once('include/html2bbcode.php');
-require_once('include/hubloc.php');
// Sample module for importing conversation data from Reflection CMS. Some preparation was used to
// dump relevant posts, categories and comments into individual JSON files, and also JSON dump of
diff --git a/include/api_zot.php b/include/api_zot.php
index 0881211d0..0b10555a6 100644
--- a/include/api_zot.php
+++ b/include/api_zot.php
@@ -350,7 +350,6 @@
if(api_user() === false)
return false;
logger('api_xchan');
- require_once('include/hubloc.php');
if($_SERVER['REQUEST_METHOD'] === 'POST') {
$r = xchan_store($_REQUEST);
diff --git a/include/bbcode.php b/include/bbcode.php
index b8d732443..c0033f280 100644
--- a/include/bbcode.php
+++ b/include/bbcode.php
@@ -7,7 +7,7 @@
require_once('include/oembed.php');
require_once('include/event.php');
require_once('include/zot.php');
-require_once('include/hubloc.php');
+
function tryoembed($match) {
$url = ((count($match) == 2) ? $match[1] : $match[2]);
diff --git a/include/bookmarks.php b/include/bookmarks.php
index c6e8e86f2..0db103054 100644
--- a/include/bookmarks.php
+++ b/include/bookmarks.php
@@ -23,7 +23,6 @@ function bookmark_add($channel,$sender,$taxonomy,$private,$opts = null) {
$iarr['mitem_desc'] = $taxonomy['term'];
$iarr['mitem_flags'] = (($ischat) ? MENU_ITEM_CHATROOM : 0);
- require_once('include/hubloc.php');
$zrl = is_matrix_url($taxonomy['url']);
if($zrl)
diff --git a/include/channel.php b/include/channel.php
index d2ef89cc8..10c38a5ac 100644
--- a/include/channel.php
+++ b/include/channel.php
@@ -291,20 +291,21 @@ function create_identity($arr) {
// Create a verified hub location pointing to this site.
- $r = q("insert into hubloc ( hubloc_guid, hubloc_guid_sig, hubloc_hash, hubloc_addr, hubloc_primary,
- hubloc_url, hubloc_url_sig, hubloc_host, hubloc_callback, hubloc_sitekey, hubloc_network )
- values ( '%s', '%s', '%s', '%s', %d, '%s', '%s', '%s', '%s', '%s', '%s' )",
- dbesc($guid),
- dbesc($sig),
- dbesc($hash),
- dbesc(channel_reddress($ret['channel'])),
- intval($primary),
- dbesc(z_root()),
- dbesc(base64url_encode(rsa_sign(z_root(),$ret['channel']['channel_prvkey']))),
- dbesc(App::get_hostname()),
- dbesc(z_root() . '/post'),
- dbesc(get_config('system','pubkey')),
- dbesc('zot')
+ $r = hubloc_store_lowlevel(
+ [
+ 'hubloc_guid' => $guid,
+ 'hubloc_guid_sig' => $sig,
+ 'hubloc_hash' => $hash,
+ 'hubloc_addr' => channel_reddress($ret['channel']),
+ 'hubloc_primary' => $primary,
+ 'hubloc_url' => z_root(),
+ 'hubloc_url_sig' => base64url_encode(rsa_sign(z_root(),$ret['channel']['channel_prvkey'])),
+ 'hubloc_host' => App::get_hostname(),
+ 'hubloc_callback' => z_root() . '/post',
+ 'hubloc_sitekey' => get_config('system','pubkey'),
+ 'hubloc_network' => 'zot',
+ 'hubloc_updated' => datetime_convert()
+ ]
);
if(! $r)
logger('create_identity: Unable to store hub location');
diff --git a/include/hubloc.php b/include/hubloc.php
index 4da92ae72..e17be028c 100644
--- a/include/hubloc.php
+++ b/include/hubloc.php
@@ -1,5 +1,36 @@
<?php /** @file */
+
+function hubloc_store_lowlevel($arr) {
+
+ $store = [
+ 'hubloc_guid' => ((array_key_exists('hubloc_guid',$arr)) ? $arr['hubloc_guid'] : ''),
+ 'hubloc_guid_sig' => ((array_key_exists('hubloc_guid_sig',$arr)) ? $arr['hubloc_guid_sig'] : ''),
+ 'hubloc_hash' => ((array_key_exists('hubloc_hash',$arr)) ? $arr['hubloc_hash'] : ''),
+ 'hubloc_addr' => ((array_key_exists('hubloc_addr',$arr)) ? $arr['hubloc_addr'] : ''),
+ 'hubloc_network' => ((array_key_exists('hubloc_network',$arr)) ? $arr['hubloc_network'] : ''),
+ 'hubloc_flags' => ((array_key_exists('hubloc_flags',$arr)) ? $arr['hubloc_flags'] : 0),
+ 'hubloc_status' => ((array_key_exists('hubloc_status',$arr)) ? $arr['hubloc_status'] : 0),
+ 'hubloc_url' => ((array_key_exists('hubloc_url',$arr)) ? $arr['hubloc_url'] : ''),
+ 'hubloc_url_sig' => ((array_key_exists('hubloc_url_sig',$arr)) ? $arr['hubloc_url_sig'] : ''),
+ 'hubloc_host' => ((array_key_exists('hubloc_host',$arr)) ? $arr['hubloc_host'] : ''),
+ 'hubloc_callback' => ((array_key_exists('hubloc_callback',$arr)) ? $arr['hubloc_callback'] : ''),
+ 'hubloc_connect' => ((array_key_exists('hubloc_connect',$arr)) ? $arr['hubloc_connect'] : ''),
+ 'hubloc_sitekey' => ((array_key_exists('hubloc_sitekey',$arr)) ? $arr['hubloc_sitekey'] : ''),
+ 'hubloc_updated' => ((array_key_exists('hubloc_updated',$arr)) ? $arr['hubloc_updated'] : NULL_DATE),
+ 'hubloc_connected' => ((array_key_exists('hubloc_connected',$arr)) ? $arr['hubloc_connected'] : NULL_DATE),
+ 'hubloc_primary' => ((array_key_exists('hubloc_primary',$arr)) ? $arr['hubloc_primary'] : 0),
+ 'hubloc_orphancheck' => ((array_key_exists('hubloc_orphancheck',$arr)) ? $arr['hubloc_orphancheck'] : 0),
+ 'hubloc_error' => ((array_key_exists('hubloc_error',$arr)) ? $arr['hubloc_error'] : 0),
+ 'hubloc_deleted' => ((array_key_exists('hubloc_deleted',$arr)) ? $arr['hubloc_deleted'] : 0)
+ ];
+
+ return create_table_from_array('hubloc',$store);
+
+}
+
+
+
function prune_hub_reinstalls() {
$r = q("select site_url from site where site_type = %d",
diff --git a/include/nav.php b/include/nav.php
index d7b006c6d..25f2a1df4 100644
--- a/include/nav.php
+++ b/include/nav.php
@@ -249,7 +249,7 @@ EOT;
if(local_channel()) {
//Zlib\Apps::import_system_apps();
$syslist = array();
- $list = Zlib\Apps::app_list(local_channel(), false, 'featured');
+ $list = Zlib\Apps::app_list(local_channel(), false, 'nav_featured_app');
if($list) {
foreach($list as $li) {
$syslist[] = Zlib\Apps::app_encode($li);
diff --git a/include/network.php b/include/network.php
index 9049d016b..66716ef9e 100644
--- a/include/network.php
+++ b/include/network.php
@@ -1469,15 +1469,18 @@ function discover_by_webbie($webbie) {
);
if(! $r) {
- $r = q("insert into hubloc ( hubloc_guid, hubloc_hash, hubloc_addr, hubloc_network, hubloc_url, hubloc_host, hubloc_callback, hubloc_updated, hubloc_primary ) values ('%s','%s','%s','%s','%s','%s','%s','%s', 1)",
- dbesc(($diaspora_guid) ? $diaspora_guid : $location),
- dbesc($address),
- dbesc($address),
- dbesc($network),
- dbesc($base),
- dbesc($host),
- dbesc($notify),
- dbescdate(datetime_convert())
+ $r = hubloc_store_lowlevel(
+ [
+ 'hubloc_guid' => (($diaspora_guid) ? $diaspora_guid : $location),
+ 'hubloc_hash' => $address,
+ 'hubloc_addr' => $address,
+ 'hubloc_network' => $network,
+ 'hubloc_url' => $base,
+ 'hubloc_host' => $host,
+ 'hubloc_callback' => $notify,
+ 'hubloc_updated' => datetime_convert(),
+ 'hubloc_primary' => 1
+ ]
);
}
$photos = import_xchan_photo($avatar,$address);
diff --git a/include/oembed.php b/include/oembed.php
index 58ad29291..aac7d15b4 100755
--- a/include/oembed.php
+++ b/include/oembed.php
@@ -2,8 +2,6 @@
use Zotlabs\Lib as Zlib;
-require_once('include/hubloc.php');
-
function oembed_replacecb($matches){
diff --git a/include/text.php b/include/text.php
index 1beefc6eb..4f0dc869b 100644
--- a/include/text.php
+++ b/include/text.php
@@ -4,7 +4,7 @@
*/
require_once("include/bbcode.php");
-require_once('include/hubloc.php');
+
// random string, there are 86 characters max in text mode, 128 for hex
// output is urlsafe
diff --git a/include/widgets.php b/include/widgets.php
index 27eae7d6f..408ba5d24 100644
--- a/include/widgets.php
+++ b/include/widgets.php
@@ -456,6 +456,7 @@ function widget_appcategories($arr) {
where app_channel = %d
and term.uid = app_channel
and term.otype = %d
+ and term.term != 'nav_featured_app'
order by term.term asc",
intval(local_channel()),
intval(TERM_OBJ_APP)
diff --git a/include/zid.php b/include/zid.php
index ac6433e4c..f5df1c611 100644
--- a/include/zid.php
+++ b/include/zid.php
@@ -170,7 +170,7 @@ function zidify_text($s) {
* @return string
*/
function red_zrl_callback($matches) {
- require_once('include/hubloc.php');
+
$zrl = is_matrix_url($matches[2]);
$t = strip_zids($matches[2]);
@@ -215,7 +215,7 @@ function red_unescape_codeblock($m) {
function red_zrlify_img_callback($matches) {
- require_once('include/hubloc.php');
+
$zrl = is_matrix_url($matches[2]);
$t = strip_zids($matches[2]);
diff --git a/include/zot.php b/include/zot.php
index 1538e956e..8bad4fde5 100644
--- a/include/zot.php
+++ b/include/zot.php
@@ -10,7 +10,6 @@
require_once('include/crypto.php');
require_once('include/items.php');
-require_once('include/hubloc.php');
require_once('include/queue_fn.php');
require_once('include/perm_upgrade.php');
@@ -2469,22 +2468,25 @@ function sync_locations($sender, $arr, $absolute = false) {
);
}
logger('sync_locations: new hub: ' . $location['url']);
- $r = q("insert into hubloc ( hubloc_guid, hubloc_guid_sig, hubloc_hash, hubloc_addr, hubloc_network, hubloc_primary, hubloc_url, hubloc_url_sig, hubloc_host, hubloc_callback, hubloc_sitekey, hubloc_updated, hubloc_connected)
- values ( '%s','%s','%s','%s', '%s', %d ,'%s','%s','%s','%s','%s','%s','%s')",
- dbesc($sender['guid']),
- dbesc($sender['guid_sig']),
- dbesc($sender['hash']),
- dbesc($location['address']),
- dbesc('zot'),
- intval($location['primary']),
- dbesc($location['url']),
- dbesc($location['url_sig']),
- dbesc($location['host']),
- dbesc($location['callback']),
- dbesc($location['sitekey']),
- dbesc(datetime_convert()),
- dbesc(datetime_convert())
+
+ $r = hubloc_store_lowlevel(
+ [
+ 'hubloc_guid' => $sender['guid'],
+ 'hubloc_guid_sig' => $sender['guid_sig'],
+ 'hubloc_hash' => $sender['hash'],
+ 'hubloc_addr' => $location['address'],
+ 'hubloc_network' => 'zot',
+ 'hubloc_primary' => $location['primary'],
+ 'hubloc_url' => $location['url'],
+ 'hubloc_url_sig' => $location['url_sig'],
+ 'hubloc_host' => $location['host'],
+ 'hubloc_callback' => $location['callback'],
+ 'hubloc_sitekey' => $location['sitekey'],
+ 'hubloc_updated' => datetime_convert(),
+ 'hubloc_connected' => datetime_convert()
+ ]
);
+
$what .= 'newhub ';
$changed = true;
@@ -4057,21 +4059,24 @@ function check_zotinfo($channel,$locations,&$ret) {
q("delete from hubloc where hubloc_hash = '%s'",
dbesc($channel['channel_hash'])
);
- $r = q("insert into hubloc ( hubloc_guid, hubloc_guid_sig, hubloc_hash, hubloc_addr, hubloc_primary,
- hubloc_url, hubloc_url_sig, hubloc_host, hubloc_callback, hubloc_sitekey, hubloc_network )
- values ( '%s', '%s', '%s', '%s', %d, '%s', '%s', '%s', '%s', '%s', '%s' )",
- dbesc($channel['channel_guid']),
- dbesc($channel['channel_guid_sig']),
- dbesc($channel['channel_hash']),
- dbesc(channel_reddress($channel)),
- intval(1),
- dbesc(z_root()),
- dbesc(base64url_encode(rsa_sign(z_root(),$channel['channel_prvkey']))),
- dbesc(App::get_hostname()),
- dbesc(z_root() . '/post'),
- dbesc(get_config('system','pubkey')),
- dbesc('zot')
+
+ $r = hubloc_store_lowlevel(
+ [
+ 'hubloc_guid' => $channel['channel_guid'],
+ 'hubloc_guid_sig' => $channel['channel_guid_sig'],
+ 'hubloc_hash' => $channel['channel_hash'],
+ 'hubloc_addr' => channel_reddress($channel),
+ 'hubloc_network' => 'zot',
+ 'hubloc_primary' => 1,
+ 'hubloc_url' => z_root(),
+ 'hubloc_url_sig' => base64url_encode(rsa_sign(z_root(),$channel['channel_prvkey'])),
+ 'hubloc_host' => App::get_hostname(),
+ 'hubloc_callback' => z_root() . '/post',
+ 'hubloc_sitekey' => get_config('system','pubkey'),
+ 'hubloc_updated' => datetime_convert(),
+ ]
);
+
if($r) {
$x = zot_encode_locations($channel);
if($x) {
diff --git a/view/tpl/app.tpl b/view/tpl/app.tpl
index def98e869..434653e1e 100644
--- a/view/tpl/app.tpl
+++ b/view/tpl/app.tpl
@@ -14,9 +14,10 @@
<div class="app-tools">
<form action="{{$hosturl}}appman" method="post">
<input type="hidden" name="papp" value="{{$app.papp}}" />
- {{if $install}}<button type="submit" name="install" value="{{$install}}" class="btn btn-default" title="{{$install}}" ><i class="fa fa-arrow-circle-o-down" ></i></button>{{/if}}
- {{if $edit}}<input type="hidden" name="appid" value="{{$app.guid}}" /><button type="submit" name="edit" value="{{$edit}}" class="btn btn-default" title="{{$edit}}" ><i class="fa fa-pencil" ></i></button>{{/if}}
- {{if $delete}}<button type="submit" name="delete" value="{{if $deleted}}{{$undelete}}{{else}}{{$delete}}{{/if}}" class="btn btn-default" title="{{if $deleted}}{{$undelete}}{{else}}{{$delete}}{{/if}}" ><i class="fa fa-trash-o drop-icons"></i></button>{{/if}}
+ {{if $install}}<button type="submit" name="install" value="{{$install}}" class="btn btn-default btn-xs" title="{{$install}}" ><i class="fa fa-arrow-circle-o-down" ></i></button>{{/if}}
+ {{if $edit}}<input type="hidden" name="appid" value="{{$app.guid}}" /><button type="submit" name="edit" value="{{$edit}}" class="btn btn-default btn-xs" title="{{$edit}}" ><i class="fa fa-pencil" ></i></button>{{/if}}
+ {{if $delete}}<button type="submit" name="delete" value="{{if $deleted}}{{$undelete}}{{else}}{{$delete}}{{/if}}" class="btn btn-default btn-xs" title="{{if $deleted}}{{$undelete}}{{else}}{{$delete}}{{/if}}" ><i class="fa fa-trash-o drop-icons"></i></button>{{/if}}
+ <button type="submit" name="feature" value="feature" class="btn btn-default btn-xs" ><i class="fa fa-star"{{if $featured}} style="color: gold"{{/if}}></i></button>
</form>
</div>
{{/if}}
diff --git a/view/tpl/nav.tpl b/view/tpl/nav.tpl
index 16cd9deca..86f9d5cf9 100755
--- a/view/tpl/nav.tpl
+++ b/view/tpl/nav.tpl
@@ -215,6 +215,11 @@
{{/if}}
{{if $navapps}}
+ {{if $nav.help.6}}
+ <li class="{{$sel.help}} hidden-xs">
+ <a class="{{$nav.help.2}}" target="hubzilla-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}" id="{{$nav.help.4}}" onclick="contextualHelp(); return false;"><i class="fa fa-question-circle"></i></a>
+ </li>
+ {{/if}}
<li class="dropdown-toggle" data-toggle="dropdown">
<a href="#"><i class="fa fa-bars"></i></a>
</li>