diff --git a/include/hubloc.php b/include/hubloc.php
index 94f1dc985..98c1a21f3 100644
--- a/include/hubloc.php
+++ b/include/hubloc.php
@@ -175,8 +175,9 @@ function hubloc_change_primary($hubloc) {
// The https might be alive, and the http dead.
function hubloc_mark_as_down($posturl) {
- $r = q("update hubloc set hubloc_status = ( hubloc_status | %d ) where hubloc_posturl = '%s'",
- intval(HUBLOC_OFFLINE)
+ $r = q("update hubloc set hubloc_status = ( hubloc_status | %d ) where hubloc_callback = '%s'",
+ intval(HUBLOC_OFFLINE),
+ dbesc($posturl)
);
}
diff --git a/mod/admin.php b/mod/admin.php
index 98b2f4266..f97c15786 100644
--- a/mod/admin.php
+++ b/mod/admin.php
@@ -590,19 +590,42 @@ function admin_page_dbsync(&$a) {
function admin_page_queue($a) {
$o = '';
+ $r = q("select count(outq_posturl) as total, outq_posturl, max(hubloc_connected) as connected from outq
+ where outq_delivered = 0 group by outq_posturl order by total desc");
+
+ if($_REQUEST['drophub']) {
+ require_once('hubloc.php');
+ hubloc_mark_as_down($_REQUEST['drophub']);
+ }
+
+ if($_REQUEST['emptyhub']) {
+ $r = q("delete from outq where outq_posturl = '%s' ",
+ dbesc($_REQUEST['emptyhub'])
+ );
+ }
+
+
+
$r = q("select count(outq_posturl) as total, outq_posturl from outq
where outq_delivered = 0 group by outq_posturl order by total desc");
- $o .= '
' . t('Queue Statistics') . '
';
-
- if($r) {
- $o .= '' . t('Total Entries') . ' | ' . t('Destination URL') . ' |
';
- foreach($r as $rr) {
- $o .= '' . $rr['total'] . ' | ' . $rr['outq_posturl'] . ' |
';
- }
- $o .= '
';
+ for($x = 0; $x < count($r); $x ++) {
+ $r[$x]['eurl'] = urlencode($r[$x]['outq_posturl']);
+ $r[$x]['connected'] = datetime_convert('UTC',date_default_timezone_get(),$r[$x]['connected'],'Y-m-d');
}
+
+ $o = replace_macros(get_markup_template('admin_queue.tpl'), array(
+ '$banner' => t('Queue Statistics'),
+ '$numentries' => t('Total Entries'),
+ '$desturl' => t('Destination URL'),
+ '$nukehub' => t('Mark hub permanently offline'),
+ '$empty' => t('Empty queue for this hub'),
+ '$lastconn' => t('Last known contact'),
+ '$hasentries' => ((count($r)) ? true : false),
+ '$entries' => $r
+ ));
+
return $o;
}
diff --git a/version.inc b/version.inc
index 448d75763..36fcceb22 100644
--- a/version.inc
+++ b/version.inc
@@ -1 +1 @@
-2015-02-27.956
+2015-03-01.958
diff --git a/view/en/htconfig.tpl b/view/en/htconfig.tpl
index d06e5da49..066ae39d8 100644
--- a/view/en/htconfig.tpl
+++ b/view/en/htconfig.tpl
@@ -71,7 +71,6 @@ $a->config['system']['access_policy'] = ACCESS_PRIVATE;
$a->config['system']['sellpage'] = '';
// Maximum size of an imported message, 0 is unlimited
-// FIXME - NOT currently implemented.
$a->config['system']['max_import_size'] = 200000;
diff --git a/view/tpl/admin_queue.tpl b/view/tpl/admin_queue.tpl
new file mode 100644
index 000000000..2abe87db9
--- /dev/null
+++ b/view/tpl/admin_queue.tpl
@@ -0,0 +1,14 @@
+{{$banner}}
+
+{{if $hasentries}}
+
+{{$numentries}} | {{$desturl}} | | |
+
+{{foreach $entries as $e}}
+
+{{$e.total}} | {{$e.outq_posturl}} | | |
+{{/foreach}}
+
+
+
+{{/if}}
\ No newline at end of file