*
* $data = dba::select($table, $fields, $condition, $params);
*/
- public static function select($table, $fields = array(), $condition = array(), $params = array()) {
+ public static function select($table, array $fields = [], array $condition = [], array $params = [])
+ {
if ($table == '') {
return false;
}
$select_fields = "*";
}
- if (count($condition) > 0) {
- $array_element = each($condition);
- $array_key = $array_element['key'];
- if (is_int($array_key)) {
- $condition_string = " WHERE ".array_shift($condition);
- } else {
- $condition_string = " WHERE `".implode("` = ? AND `", array_keys($condition))."` = ?";
- }
- } else {
- $condition_string = "";
- }
+ $condition_string = self::buildCondition($condition);
$param_string = '';
$single_row = false;
$single_row = ($params['limit'] == 1);
}
+ if (isset($params['limit']) && is_array($params['limit'])) {
+ $param_string .= " LIMIT ".intval($params['limit'][0]).", ".intval($params['limit'][1]);
+ $single_row = ($params['limit'][1] == 1);
+ }
+
if (isset($params['only_query']) && $params['only_query']) {
$single_row = !$params['only_query'];
}
}
}
+ /**
+ * @brief Counts the rows from a table satisfying the provided condition
+ *
+ * @param string $table Table name
+ * @param array $condition array of fields for condition
+ *
+ * @return int
+ *
+ * Example:
+ * $table = "item";
+ *
+ * $condition = ["uid" => 1, "network" => 'dspr'];
+ * or:
+ * $condition = ["`uid` = ? AND `network` IN (?, ?)", 1, 'dfrn', 'dspr'];
+ *
+ * $count = dba::count($table, $condition);
+ */
+ public static function count($table, array $condition = [])
+ {
+ if ($table == '') {
+ return false;
+ }
+
+ $condition_string = self::buildCondition($condition);
+
+ $sql = "SELECT COUNT(*) AS `count` FROM `".$table."`".$condition_string;
+
+ $row = self::fetch_first($sql, $condition);
+
+ return $row['count'];
+ }
+
+ /**
+ * @brief Returns the SQL condition string built from the provided condition array
+ *
+ * This function operates with two modes.
+ * - Supplied with a filed/value associative array, it builds simple strict
+ * equality conditions linked by AND.
+ * - Supplied with a flat list, the first element is the condition string and
+ * the following arguments are the values to be interpolated
+ *
+ * $condition = ["uid" => 1, "network" => 'dspr'];
+ * or:
+ * $condition = ["`uid` = ? AND `network` IN (?, ?)", 1, 'dfrn', 'dspr'];
+ *
+ * In either case, the provided array is left with the parameters only
+ *
+ * @param array $condition
+ * @return string
+ */
+ private static function buildCondition(array &$condition = [])
+ {
+ $condition_string = '';
+ if (count($condition) > 0) {
+ $array_element = each($condition);
+ $array_key = $array_element['key'];
+ if (is_int($array_key)) {
+ $condition_string = " WHERE ".array_shift($condition);
+ } else {
+ $condition_string = " WHERE `".implode("` = ? AND `", array_keys($condition))."` = ?";
+ }
+ }
+
+ return $condition_string;
+ }
/**
* @brief Fills an array with data from a query
}}
-// translate string if translation exists
-
-if (! function_exists('t')) {
-function t($s) {
-
+/**
+ * @brief Return the localized version of the provided string with optional string interpolation
+ *
+ * This function takes a english string as parameter, and if a localized version
+ * exists for the current language, substitutes it before performing an eventual
+ * string interpolation (sprintf) with additional optional arguments.
+ *
+ * Usages:
+ * - t('This is an example')
+ * - t('URL %s returned no result', $url)
+ * - t('Current version: %s, new version: %s', $current_version, $new_version)
+ *
+ * @param string $s
+ * @return string
+ */
+function t($s)
+{
$a = get_app();
- if (x($a->strings,$s)) {
+ if (x($a->strings, $s)) {
$t = $a->strings[$s];
- return is_array($t)?$t[0]:$t;
+ $s = is_array($t) ? $t[0] : $t;
}
+ if (func_num_args() > 1) {
+ $args = array_slice(func_get_args(), 1);
+ $s = @vsprintf($s, $args);
+ }
+
return $s;
-}}
+}
-if (! function_exists('tt')){
-function tt($singular, $plural, $count){
+/**
+ * @brief Return the localized version of a singular/plural string with optional string interpolation
+ *
+ * This function takes two english strings as parameters, singular and plural, as
+ * well as a count. If a localized version exists for the current language, they
+ * are used instead. Discrimination between singular and plural is done using the
+ * localized function if any or the default one. Finally, a string interpolation
+ * is performed using the count as parameter.
+ *
+ * Usages:
+ * - tt('Like', 'Likes', $count)
+ * - tt("%s user deleted", "%s users deleted", count($users))
+ *
+ * @global type $lang
+ * @param string $singular
+ * @param string $plural
+ * @param int $count
+ * @return string
+ */
+function tt($singular, $plural, $count)
+{
global $lang;
$a = get_app();
- if (x($a->strings,$singular)) {
+ if (x($a->strings, $singular)) {
$t = $a->strings[$singular];
- $f = 'string_plural_select_' . str_replace('-','_',$lang);
- if (! function_exists($f))
- $f = 'string_plural_select_default';
- $k = $f($count);
- return is_array($t)?$t[$k]:$t;
- }
-
- if ($count!=1){
- return $plural;
+ if (is_array($t)) {
+ $plural_function = 'string_plural_select_' . str_replace('-', '_', $lang);
+ if (function_exists($plural_function)) {
+ $plural_function = 'string_plural_select_default';
+ }
+ $i = $plural_function($count);
+ $s = $t[$i];
+ } else {
+ $s = $t;
+ }
+ } elseif (string_plural_select_default($count)) {
+ $s = $plural;
} else {
- return $singular;
+ $s = $singular;
}
-}}
+
+ $s = @sprintf($s, $count);
+
+ return $s;
+}
// provide a fallback which will not collide with
// a function defined in any language file
-
-if (! function_exists('string_plural_select_default')) {
-function string_plural_select_default($n) {
- return ($n != 1);
-}}
+function string_plural_select_default($n)
+{
+ return $n != 1;
+}
<?php
- /**
+/**
* @file mod/admin.php
*
* @brief Friendica admin
*/
-
use Friendica\App;
use Friendica\Core\System;
use Friendica\Core\Config;
use Friendica\Core\Worker;
use Friendica\Database\DBM;
use Friendica\Model\User;
+use Friendica\Network\Probe;
+use Friendica\Object\Contact;
require_once 'include/enotify.php';
require_once 'include/text.php';
* @param App $a
*
*/
-function admin_post(App $a) {
+function admin_post(App $a)
+{
if (!is_site_admin()) {
// do not allow a page manager to access the admin panel at all.
- if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) {
+ if (x($_SESSION, 'submanage') && intval($_SESSION['submanage'])) {
return;
}
break;
case 'plugins':
if ($a->argc > 2 &&
- is_file("addon/".$a->argv[2]."/".$a->argv[2].".php")) {
- @include_once("addon/".$a->argv[2]."/".$a->argv[2].".php");
- if (function_exists($a->argv[2].'_plugin_admin_post')) {
- $func = $a->argv[2].'_plugin_admin_post';
- $func($a);
- }
+ is_file("addon/" . $a->argv[2] . "/" . $a->argv[2] . ".php")) {
+ @include_once("addon/" . $a->argv[2] . "/" . $a->argv[2] . ".php");
+ if (function_exists($a->argv[2] . '_plugin_admin_post')) {
+ $func = $a->argv[2] . '_plugin_admin_post';
+ $func($a);
+ }
}
- goaway('admin/plugins/'.$a->argv[2]);
+ goaway('admin/plugins/' . $a->argv[2]);
return; // NOTREACHED
break;
case 'themes':
$theme = $a->argv[2];
if (is_file("view/theme/$theme/config.php")) {
- function __call_theme_admin_post(App $a, $theme) {
+
+ function __call_theme_admin_post(App $a, $theme)
+ {
$orig_theme = $a->theme;
$orig_page = $a->page;
$orig_session_theme = $_SESSION['theme'];
$_SESSION['theme'] = $theme;
- $init = $theme."_init";
+ $init = $theme . "_init";
if (function_exists($init)) {
$init($a);
}
if (is_ajax()) {
return;
}
- goaway('admin/themes/'.$theme);
+ goaway('admin/themes/' . $theme);
return;
break;
case 'features':
case 'dbsync':
admin_page_dbsync_post($a);
break;
+ case 'contactblock':
+ admin_page_contactblock_post($a);
+ break;
case 'blocklist':
admin_page_blocklist_post($a);
break;
* @param App $a
* @return string
*/
-function admin_content(App $a) {
-
+function admin_content(App $a)
+{
if (!is_site_admin()) {
return login(false);
}
- if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) {
+ if (x($_SESSION, 'submanage') && intval($_SESSION['submanage'])) {
return "";
}
// $toDelete = new APCIterator('user', APC_ITER_VALUE);
// apc_delete($toDelete);
//}
-
// Header stuff
- $a->page['htmlhead'] .= replace_macros(get_markup_template('admin_settings_head.tpl'), array());
+ $a->page['htmlhead'] .= replace_macros(get_markup_template('admin/settings_head.tpl'), array());
/*
* Side bar links
// array(url, name, extra css classes)
// not part of $aside to make the template more adjustable
$aside_sub = array(
- 'site' => array("admin/site/", t("Site") , "site"),
- 'users' => array("admin/users/", t("Users") , "users"),
- 'plugins'=> array("admin/plugins/", t("Plugins") , "plugins"),
- 'themes' => array("admin/themes/", t("Themes") , "themes"),
- 'features' => array("admin/features/", t("Additional features") , "features"),
- 'dbsync' => array("admin/dbsync/", t('DB updates'), "dbsync"),
- 'queue' => array("admin/queue/", t('Inspect Queue'), "queue"),
- 'blocklist' => array("admin/blocklist/", t('Server Blocklist'), "blocklist"),
- 'federation' => array("admin/federation/", t('Federation Statistics'), "federation"),
- 'deleteitem' => array("admin/deleteitem/", t('Delete Item'), 'deleteitem'),
+ 'site' => array("admin/site/" , t("Site") , "site"),
+ 'users' => array("admin/users/" , t("Users") , "users"),
+ 'plugins' => array("admin/plugins/" , t("Plugins") , "plugins"),
+ 'themes' => array("admin/themes/" , t("Themes") , "themes"),
+ 'features' => array("admin/features/" , t("Additional features") , "features"),
+ 'dbsync' => array("admin/dbsync/" , t('DB updates') , "dbsync"),
+ 'queue' => array("admin/queue/" , t('Inspect Queue') , "queue"),
+ 'contactblock' => array("admin/contactblock/", t('Contact Blocklist') , "contactblock"),
+ 'blocklist' => array("admin/blocklist/" , t('Server Blocklist') , "blocklist"),
+ 'federation' => array("admin/federation/" , t('Federation Statistics'), "federation"),
+ 'deleteitem' => array("admin/deleteitem/" , t('Delete Item') , 'deleteitem'),
);
/* get plugins admin page */
$r = q("SELECT `name` FROM `addon` WHERE `plugin_admin` = 1 ORDER BY `name`");
- $aside_tools['plugins_admin']=array();
+ $aside_tools['plugins_admin'] = array();
foreach ($r as $h) {
- $plugin =$h['name'];
- $aside_tools['plugins_admin'][] = array("admin/plugins/".$plugin, $plugin, "plugin");
+ $plugin = $h['name'];
+ $aside_tools['plugins_admin'][] = array("admin/plugins/" . $plugin, $plugin, "plugin");
// temp plugins with admin
$a->plugins_admin[] = $plugin;
}
$aside_tools['diagnostics_probe'] = array('probe/', t('probe address'), 'probe');
$aside_tools['diagnostics_webfinger'] = array('webfinger/', t('check webfinger'), 'webfinger');
- $t = get_markup_template("admin_aside.tpl");
+ $t = get_markup_template('admin/aside.tpl');
$a->page['aside'] .= replace_macros($t, array(
'$admin' => $aside_tools,
'$subpages' => $aside_sub,
'$logtxt' => t('Logs'),
'$diagnosticstxt' => t('diagnostics'),
'$h_pending' => t('User registrations waiting for confirmation'),
- '$admurl'=> "admin/"
+ '$admurl' => "admin/"
));
-
-
- /*
- * Page content
- */
+ // Page content
$o = '';
// urls
if ($a->argc > 1) {
case 'federation':
$o = admin_page_federation($a);
break;
+ case 'contactblock':
+ $o = admin_page_contactblock($a);
+ break;
case 'blocklist':
$o = admin_page_blocklist($a);
break;
* @param App $a
* @return string
*/
-function admin_page_blocklist(App $a) {
+function admin_page_blocklist(App $a)
+{
$blocklist = Config::get('system', 'blocklist');
$blocklistform = array();
if (is_array($blocklist)) {
- foreach($blocklist as $id => $b) {
+ foreach ($blocklist as $id => $b) {
$blocklistform[] = array(
'domain' => array("domain[$id]", t('Blocked domain'), $b['domain'], '', t('The blocked domain'), 'required', '', ''),
- 'reason' => array("reason[$id]", t("Reason for the block"), $b['reason'], t('The reason why you blocked this domain.').'('.$b['domain'].')', 'required', '', ''),
- 'delete' => array("delete[$id]", t("Delete domain").' ('.$b['domain'].')', False , t("Check to delete this entry from the blocklist"))
+ 'reason' => array("reason[$id]", t("Reason for the block"), $b['reason'], t('The reason why you blocked this domain.') . '(' . $b['domain'] . ')', 'required', '', ''),
+ 'delete' => array("delete[$id]", t("Delete domain") . ' (' . $b['domain'] . ')', False, t("Check to delete this entry from the blocklist"))
);
}
}
- $t = get_markup_template("admin_blocklist.tpl");
+ $t = get_markup_template('admin/blocklist.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Server Blocklist'),
'$entries' => $blocklistform,
'$baseurl' => System::baseUrl(true),
'$confirm_delete' => t('Delete entry from blocklist?'),
- '$form_security_token' => get_form_security_token("admin_blocklist")
+ '$form_security_token' => get_form_security_token("admin_blocklist")
));
}
*
* @param App $a
*/
-function admin_page_blocklist_post(App $a) {
- if (!x($_POST,"page_blocklist_save") && (!x($_POST['page_blocklist_edit']))) {
+function admin_page_blocklist_post(App $a)
+{
+ if (!x($_POST, "page_blocklist_save") && (!x($_POST['page_blocklist_edit']))) {
return;
}
'reason' => notags(trim($_POST['newentry_reason']))
);
Config::set('system', 'blocklist', $blocklist);
- info(t('Server added to blocklist.').EOL);
+ info(t('Server added to blocklist.') . EOL);
} else {
// Edit the entries from blocklist
$blocklist = array();
}
}
Config::set('system', 'blocklist', $blocklist);
- info(t('Site blocklist updated.').EOL);
+ info(t('Site blocklist updated.') . EOL);
}
goaway('admin/blocklist');
return; // NOTREACHED
}
+/**
+ * @brief Process data send by the contact block admin page
+ *
+ * @param App $a
+ */
+function admin_page_contactblock_post(App $a)
+{
+ $contact_url = x($_POST, 'contact_url') ? $_POST['contact_url'] : '';
+ $contacts = x($_POST, 'contacts') ? $_POST['contacts'] : [];
+
+ check_form_security_token_redirectOnErr('/admin/contactblock', 'admin_contactblock');
+
+ if (x($_POST, 'page_contactblock_block')) {
+ $net = Probe::uri($contact_url);
+ if (in_array($net['network'], array(NETWORK_PHANTOM, NETWORK_MAIL))) {
+ notice(t('This contact doesn\'t seem to exist.'));
+ }
+ $nurl = normalise_link($net['url']);
+ $r = dba::select('contact', ['id'], ['nurl' => $nurl, 'uid' => 0], ['limit' => 1]);
+ if (DBM::is_result($r)) {
+ Contact::block($r['id']);
+ notice(t('The contact has been blocked from the node'));
+ } else {
+ notice(t('Could not find any contact entry for this URL (%s)', $nurl));
+ }
+ }
+ if (x($_POST, 'page_contactblock_unblock')) {
+ foreach ($contacts as $uid) {
+ Contact::unblock($uid);
+ }
+ notice(tt("%s contact unblocked", "%s contacts unblocked", count($contacts)));
+ }
+ goaway('admin/contactblock');
+ return; // NOTREACHED
+}
+
+/**
+ * @brief Admin panel for server-wide contact block
+ *
+ * @param App $a
+ * @return string
+ */
+function admin_page_contactblock(App $a)
+{
+ $condition = ['uid' => 0, 'blocked' => true];
+
+ $total = dba::count('contact', $condition);
+
+ $a->set_pager_total($total);
+ $a->set_pager_itemspage(30);
+
+ $statement = dba::select('contact', [], $condition, ['limit' => [$a->pager['start'], $a->pager['itemspage']]]);
+
+ $contacts = dba::inArray($statement);
+
+ $t = get_markup_template('admin/contactblock.tpl');
+ $o = replace_macros($t, array(
+ // strings //
+ '$title' => t('Administration'),
+ '$page' => t('Remote Contact Blocklist'),
+ '$description' => t('This page allows you to prevent any message from a remote contact to reach your node. However, your node must have knowledge of the contact before you can block it.'),
+ '$submit' => t('Block Remote Contact'),
+ '$select_all' => t('select all'),
+ '$select_none' => t('select none'),
+ '$block' => t('Block'),
+ '$unblock' => t('Unblock'),
+ '$no_data' => t('No remote contact is blocked from this node.'),
+
+ '$h_contacts' => t('Blocked Remote Contacts'),
+ '$h_newblock' => t('Block New Remote Contact'),
+ '$th_contacts' => [t('Photo'), t('Name'), t('Address'), t('Profile URL')],
+
+ '$form_security_token' => get_form_security_token("admin_contactblock"),
+
+ // values //
+ '$baseurl' => System::baseUrl(true),
+
+ '$contacts' => $contacts,
+ '$paginate' => paginate($a),
+ '$contacturl' => ['contact_url', t("Profile URL"), '', t("URL of the remote contact to block.")],
+ ));
+ return $o;
+}
+
/**
* @brief Subpage where the admin can delete an item from their node given the GUID
*
* @param App $a
* @return string
*/
-function admin_page_deleteitem(App $a) {
- $t = get_markup_template("admin_deleteitem.tpl");
+function admin_page_deleteitem(App $a)
+{
+ $t = get_markup_template('admin/deleteitem.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$intro2' => t('You need to know the GUID of the item. You can find it e.g. by looking at the display URL. The last part of http://example.com/display/123456 is the GUID, here 123456.'),
'$deleteitemguid' => array('deleteitemguid', t("GUID"), '', t("The GUID of the item you want to delete."), 'required', 'autofocus'),
'$baseurl' => System::baseUrl(),
- '$form_security_token' => get_form_security_token("admin_deleteitem")
+ '$form_security_token' => get_form_security_token("admin_deleteitem")
));
}
+
/**
* @brief Process send data from Admin Delete Item Page
*
*
* @param App $a
*/
-function admin_page_deleteitem_post(App $a) {
+function admin_page_deleteitem_post(App $a)
+{
if (!x($_POST['page_deleteitem_submit'])) {
return;
}
// The GUID should not include a "/", so if there is one, we got an URL
// and the last part of it is most likely the GUID.
if (strpos($guid, '/')) {
- $guid = substr($guid, strrpos($guid, '/')+1);
+ $guid = substr($guid, strrpos($guid, '/') + 1);
}
// Now that we have the GUID get all IDs of the associated entries in the
// item table of the DB and drop those items, which will also delete the
// associated threads.
- $r = dba::select('item', array('id'), array('guid'=>$guid));
+ $r = dba::select('item', array('id'), array('guid' => $guid));
while ($row = dba::fetch($r)) {
drop_item($row['id'], false);
}
dba::close($r);
}
- info(t('Item marked for deletion.').EOL);
+ info(t('Item marked for deletion.') . EOL);
goaway('admin/deleteitem');
return; // NOTREACHED
}
* @param App $a
* @return string
*/
-function admin_page_federation(App $a) {
+function admin_page_federation(App $a)
+{
// get counts on active friendica, diaspora, redmatrix, hubzilla, gnu
// social and statusnet nodes this node is knowing
//
// Add more platforms if you like, when one returns 0 known nodes it is not
// displayed on the stats page.
$platforms = array('Friendi%%a', 'Diaspora', '%%red%%', 'Hubzilla', 'BlaBlaNet', 'GNU Social', 'StatusNet', 'Mastodon', 'Pleroma');
- $colors = array('Friendi%%a' => '#ffc018', // orange from the logo
- 'Diaspora' => '#a1a1a1', // logo is black and white, makes a gray
- '%%red%%' => '#c50001', // fire red from the logo
- 'Hubzilla' => '#43488a', // blue from the logo
- 'BlaBlaNet' => '#3B5998', // blue from the navbar at blablanet-dot-com
- 'GNU Social'=> '#a22430', // dark red from the logo
- 'StatusNet' => '#789240', // the green from the logo (red and blue have already others
- 'Mastodon' => '#1a9df9', // blue from the Mastodon logo
- 'Pleroma' => '#E46F0F'); // Orange from the text that is used on Pleroma instances
+ $colors = array(
+ 'Friendi%%a' => '#ffc018', // orange from the logo
+ 'Diaspora' => '#a1a1a1', // logo is black and white, makes a gray
+ '%%red%%' => '#c50001', // fire red from the logo
+ 'Hubzilla' => '#43488a', // blue from the logo
+ 'BlaBlaNet' => '#3B5998', // blue from the navbar at blablanet-dot-com
+ 'GNU Social' => '#a22430', // dark red from the logo
+ 'StatusNet' => '#789240', // the green from the logo (red and blue have already others
+ 'Mastodon' => '#1a9df9', // blue from the Mastodon logo
+ 'Pleroma' => '#E46F0F' // Orange from the text that is used on Pleroma instances
+ );
$counts = array();
$total = 0;
// to the version string for the displayed list.
foreach ($v as $key => $value) {
if ($v[$key]['version'] == '') {
- $v[$key] = array('total'=>$v[$key]['total'], 'version'=>t('unknown'));
+ $v[$key] = array('total' => $v[$key]['total'], 'version' => t('unknown'));
}
}
// in the DB the Diaspora versions have the format x.x.x.x-xx the last
}
}
foreach ($newV as $key => $value) {
- array_push($newVv, array('total'=>$value, 'version'=>$key));
+ array_push($newVv, array('total' => $value, 'version' => $key));
}
$v = $newVv;
}
foreach ($v as $vv) {
$newVC = $vv['total'];
$newVV = $vv['version'];
- $lastDot = strrpos($newVV,'.');
- $len = strlen($newVV)-1;
- if (($lastDot == $len-4) && (!strrpos($newVV,'-rc') == $len-3)) {
+ $lastDot = strrpos($newVV, '.');
+ $len = strlen($newVV) - 1;
+ if (($lastDot == $len - 4) && (!strrpos($newVV, '-rc') == $len - 3)) {
$newVV = substr($newVV, 0, $lastDot);
}
if (isset($newV[$newVV])) {
}
}
foreach ($newV as $key => $value) {
- array_push($newVv, array('total'=>$value, 'version'=>$key));
+ array_push($newVv, array('total' => $value, 'version' => $key));
}
$v = $newVv;
}
// the 3rd array item is needed for the JavaScript graphs as JS does
// not like some characters in the names of variables...
- $counts[$p]=array($c[0], $v, str_replace(array(' ','%'),'',$p), $colors[$p]);
+ $counts[$p] = array($c[0], $v, str_replace(array(' ', '%'), '', $p), $colors[$p]);
}
// some helpful text
$hint = t('The <em>Auto Discovered Contact Directory</em> feature is not enabled, it will improve the data displayed here.');
// load the template, replace the macros and return the page content
- $t = get_markup_template("admin_federation.tpl");
+ $t = get_markup_template('admin/federation.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Federation Statistics'),
* @param App $a
* @return string
*/
-function admin_page_queue(App $a) {
+function admin_page_queue(App $a)
+{
// get content from the queue table
$r = q("SELECT `c`.`name`, `c`.`nurl`, `q`.`id`, `q`.`network`, `q`.`created`, `q`.`last`
FROM `queue` AS `q`, `contact` AS `c`
WHERE `c`.`id` = `q`.`cid`
ORDER BY `q`.`cid`, `q`.`created`;");
- $t = get_markup_template("admin_queue.tpl");
+ $t = get_markup_template('admin/queue.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Inspect Queue'),
* @param App $a
* @return string
*/
-function admin_page_summary(App $a) {
+function admin_page_summary(App $a)
+{
// are there MyISAM tables in the DB? If so, trigger a warning message
- $r = q("SELECT `engine` FROM `information_schema`.`tables` WHERE `engine` = 'myisam' AND `table_schema` = '%s' LIMIT 1",
- dbesc(dba::database_name()));
+ $r = q("SELECT `engine` FROM `information_schema`.`tables` WHERE `engine` = 'myisam' AND `table_schema` = '%s' LIMIT 1", dbesc(dba::database_name()));
$showwarning = false;
$warningtext = array();
if (DBM::is_result($r)) {
}
// Check if github.com/friendica/master/VERSION is higher then
// the local version of Friendica. Check is opt-in, source may be master or devel branch
- if (Config::get('system', 'check_new_version_url', 'none') != 'none' ) {
- $gitversion = Config::get('system','git_friendica_version');
+ if (Config::get('system', 'check_new_version_url', 'none') != 'none') {
+ $gitversion = Config::get('system', 'git_friendica_version');
if (version_compare(FRIENDICA_VERSION, $gitversion) < 0) {
$warningtext[] = sprintf(t('There is a new version of Friendica available for download. Your current version is %1$s, upstream version is %2$s'), $FRIENDICA_VERSION, $gitversion);
$showwarning = true;
array(t('Private Forum Account'), 0)
);
- $users=0;
+ $users = 0;
foreach ($r as $u) {
$accounts[$u['page-flags']][1] = $u['count'];
$users+= $u['count'];
}
- logger('accounts: '.print_r($accounts,true),LOGGER_DATA);
+ logger('accounts: ' . print_r($accounts, true), LOGGER_DATA);
$r = q("SELECT COUNT(`id`) AS `count` FROM `register`");
$pending = $r[0]['count'];
$queues = array('label' => t('Message queues'), 'queue' => $queue, 'workerq' => $workerqueue);
- $t = get_markup_template("admin_summary.tpl");
+ $t = get_markup_template('admin/summary.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Summary'),
'$baseurl' => System::baseUrl(),
'$platform' => FRIENDICA_PLATFORM,
'$codename' => FRIENDICA_CODENAME,
- '$build' => Config::get('system','build'),
+ '$build' => Config::get('system', 'build'),
'$plugins' => array(t('Active plugins'), $a->plugins),
'$showwarning' => $showwarning,
'$warningtext' => $warningtext
*
* @param App $a
*/
-function admin_page_site_post(App $a) {
+function admin_page_site_post(App $a)
+{
check_form_security_token_redirectOnErr('/admin/site', 'admin_site');
if (!empty($_POST['republish_directory'])) {
return;
}
- if (!x($_POST,"page_site")) {
+ if (!x($_POST, "page_site")) {
return;
}
// relocate
- if (x($_POST,'relocate') && x($_POST,'relocate_url') && $_POST['relocate_url'] != "") {
+ if (x($_POST, 'relocate') && x($_POST, 'relocate_url') && $_POST['relocate_url'] != "") {
$new_url = $_POST['relocate_url'];
- $new_url = rtrim($new_url,"/");
+ $new_url = rtrim($new_url, "/");
$parsed = @parse_url($new_url);
- if (!$parsed || (!x($parsed,'host') || !x($parsed,'scheme'))) {
+ if (!$parsed || (!x($parsed, 'host') || !x($parsed, 'scheme'))) {
notice(t("Can not parse base url. Must have at least <scheme>://<domain>"));
goaway('admin/site');
}
$new_host = str_replace("http://", "@", normalise_link($new_url));
$old_host = str_replace("http://", "@", normalise_link($old_url));
- function update_table($table_name, $fields, $old_url, $new_url) {
+ function update_table($table_name, $fields, $old_url, $new_url)
+ {
global $a;
$dbold = dbesc($old_url);
$q = sprintf("UPDATE %s SET %s;", $table_name, $upds);
$r = q($q);
if (!$r) {
- notice("Failed updating '$table_name': ".dba::errorMessage());
+ notice("Failed updating '$table_name': " . dba::errorMessage());
goaway('admin/site');
}
}
-
// update tables
// update profile links in the format "http://server.tld"
update_table("profile", array('photo', 'thumb'), $old_url, $new_url);
update_table("term", array('url'), $old_url, $new_url);
- update_table("contact", array('photo','thumb','micro','url','nurl','alias','request','notify','poll','confirm','poco', 'avatar'), $old_url, $new_url);
- update_table("gcontact", array('url','nurl','photo','server_url','notify','alias'), $old_url, $new_url);
- update_table("item", array('owner-link','owner-avatar','author-link','author-avatar','body','plink','tag'), $old_url, $new_url);
+ update_table("contact", array('photo', 'thumb', 'micro', 'url', 'nurl', 'alias', 'request', 'notify', 'poll', 'confirm', 'poco', 'avatar'), $old_url, $new_url);
+ update_table("gcontact", array('url', 'nurl', 'photo', 'server_url', 'notify', 'alias'), $old_url, $new_url);
+ update_table("item", array('owner-link', 'owner-avatar', 'author-link', 'author-avatar', 'body', 'plink', 'tag'), $old_url, $new_url);
// update profile addresses in the format "user@server.tld"
update_table("contact", array('addr'), $old_host, $new_host);
- update_table("gcontact", array('connect','addr'), $old_host, $new_host);
+ update_table("gcontact", array('connect', 'addr'), $old_host, $new_host);
// update config
$a->set_baseurl($new_url);
- Config::set('system','url',$new_url);
+ Config::set('system', 'url', $new_url);
// send relocate
$users = q("SELECT `uid` FROM `user` WHERE `account_removed` = 0 AND `account_expired` = 0");
if ($a->get_path() != "") {
$diaspora_enabled = false;
}
- if ($ssl_policy != intval(Config::get('system','ssl_policy'))) {
+ if ($ssl_policy != intval(Config::get('system', 'ssl_policy'))) {
if ($ssl_policy == SSL_POLICY_FULL) {
q("UPDATE `contact` SET
`url` = REPLACE(`url` , 'http:' , 'https:'),
);
}
}
- Config::set('system','ssl_policy',$ssl_policy);
- Config::set('system','maxloadavg',$maxloadavg);
- Config::set('system','maxloadavg_frontend',$maxloadavg_frontend);
- Config::set('system','min_memory',$min_memory);
- Config::set('system','optimize_max_tablesize',$optimize_max_tablesize);
- Config::set('system','optimize_fragmentation',$optimize_fragmentation);
- Config::set('system','poco_completion',$poco_completion);
- Config::set('system','poco_requery_days',$poco_requery_days);
- Config::set('system','poco_discovery',$poco_discovery);
- Config::set('system','poco_discovery_since',$poco_discovery_since);
- Config::set('system','poco_local_search',$poco_local_search);
- Config::set('system','nodeinfo',$nodeinfo);
- Config::set('config','sitename',$sitename);
- Config::set('config','hostname',$hostname);
- Config::set('config','sender_email', $sender_email);
- Config::set('system','suppress_tags',$suppress_tags);
- Config::set('system','shortcut_icon',$shortcut_icon);
- Config::set('system','touch_icon',$touch_icon);
+ Config::set('system', 'ssl_policy', $ssl_policy);
+ Config::set('system', 'maxloadavg', $maxloadavg);
+ Config::set('system', 'maxloadavg_frontend', $maxloadavg_frontend);
+ Config::set('system', 'min_memory', $min_memory);
+ Config::set('system', 'optimize_max_tablesize', $optimize_max_tablesize);
+ Config::set('system', 'optimize_fragmentation', $optimize_fragmentation);
+ Config::set('system', 'poco_completion', $poco_completion);
+ Config::set('system', 'poco_requery_days', $poco_requery_days);
+ Config::set('system', 'poco_discovery', $poco_discovery);
+ Config::set('system', 'poco_discovery_since', $poco_discovery_since);
+ Config::set('system', 'poco_local_search', $poco_local_search);
+ Config::set('system', 'nodeinfo', $nodeinfo);
+ Config::set('config', 'sitename', $sitename);
+ Config::set('config', 'hostname', $hostname);
+ Config::set('config', 'sender_email', $sender_email);
+ Config::set('system', 'suppress_tags', $suppress_tags);
+ Config::set('system', 'shortcut_icon', $shortcut_icon);
+ Config::set('system', 'touch_icon', $touch_icon);
if ($banner == "") {
// don't know why, but del_config doesn't work...
- q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
- dbesc("system"),
- dbesc("banner")
+ q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1", dbesc("system"), dbesc("banner")
);
} else {
- Config::set('system','banner', $banner);
+ Config::set('system', 'banner', $banner);
}
if ($info == "") {
- Config::delete('config','info');
+ Config::delete('config', 'info');
} else {
- Config::set('config','info',$info);
+ Config::set('config', 'info', $info);
}
- Config::set('system','language', $language);
- Config::set('system','theme', $theme);
+ Config::set('system', 'language', $language);
+ Config::set('system', 'theme', $theme);
if ($theme_mobile == '---') {
- Config::delete('system','mobile-theme');
+ Config::delete('system', 'mobile-theme');
} else {
- Config::set('system','mobile-theme', $theme_mobile);
+ Config::set('system', 'mobile-theme', $theme_mobile);
}
if ($singleuser == '---') {
- Config::delete('system','singleuser');
+ Config::delete('system', 'singleuser');
} else {
- Config::set('system','singleuser', $singleuser);
+ Config::set('system', 'singleuser', $singleuser);
}
Config::set('system', 'maximagesize', $maximagesize);
Config::set('system', 'max_image_length', $maximagelength);
Config::set('system', 'frontend_worker', $worker_frontend);
Config::set('system', 'rino_encrypt', $rino);
- info(t('Site settings updated.').EOL);
+ info(t('Site settings updated.') . EOL);
goaway('admin/site');
return; // NOTREACHED
-
}
/**
* @param App $a
* @return string
*/
-function admin_page_site(App $a) {
-
+function admin_page_site(App $a)
+{
/* Installed langs */
$lang_choices = get_available_languages();
- if (strlen(Config::get('system','directory_submit_url')) &&
- !strlen(Config::get('system','directory'))) {
- Config::set('system','directory', dirname(Config::get('system','directory_submit_url')));
- Config::delete('system','directory_submit_url');
+ if (strlen(Config::get('system', 'directory_submit_url')) &&
+ !strlen(Config::get('system', 'directory'))) {
+ Config::set('system', 'directory', dirname(Config::get('system', 'directory_submit_url')));
+ Config::delete('system', 'directory_submit_url');
}
/* Installed themes */
$allowed_theme_list = Config::get('system', 'allowed_themes');
foreach ($files as $file) {
- if (intval(file_exists($file.'/unsupported')))
+ if (intval(file_exists($file . '/unsupported'))) {
continue;
+ }
$f = basename($file);
continue;
}
- $theme_name = ((file_exists($file.'/experimental')) ? sprintf("%s - \x28Experimental\x29", $f) : $f);
+ $theme_name = ((file_exists($file . '/experimental')) ? sprintf("%s - \x28Experimental\x29", $f) : $f);
- if (file_exists($file.'/mobile')) {
+ if (file_exists($file . '/mobile')) {
$theme_choices_mobile[$f] = $theme_name;
} else {
$theme_choices[$f] = $theme_name;
CP_NO_COMMUNITY_PAGE => t("No community page"),
CP_USERS_ON_SERVER => t("Public postings from users of this site"),
CP_GLOBAL_COMMUNITY => t("Global community page")
- );
+ );
/* OStatus conversation poll choices */
$ostatus_poll_choices = array(
"60" => t("Hourly"),
"720" => t("Twice daily"),
"1440" => t("Daily")
- );
+ );
$poco_discovery_choices = array(
"0" => t("Disabled"),
"1" => t("Users"),
"2" => t("Users, Global Contacts"),
"3" => t("Users, Global Contacts/fallback"),
- );
+ );
$poco_discovery_since_choices = array(
"30" => t("One month"),
"91" => t("Three months"),
"182" => t("Half a year"),
"365" => t("One year"),
- );
+ );
/* get user names to make the install a personal install of X */
$user_names = array();
}
/* Banner */
- $banner = Config::get('system','banner');
+ $banner = Config::get('system', 'banner');
if ($banner == false) {
$banner = '<a href="https://friendi.ca"><img id="logo-img" src="images/friendica-32.png" alt="logo" /></a><span id="logo-text"><a href="https://friendi.ca">Friendica</a></span>';
}
$banner = htmlspecialchars($banner);
- $info = Config::get('config','info');
+ $info = Config::get('config', 'info');
$info = htmlspecialchars($info);
// Automatically create temporary paths
}
$diaspora_able = ($a->get_path() == "");
- $optimize_max_tablesize = Config::get('system','optimize_max_tablesize', 100);
+ $optimize_max_tablesize = Config::get('system', 'optimize_max_tablesize', 100);
if ($optimize_max_tablesize < -1) {
$optimize_max_tablesize = -1;
$optimize_max_tablesize = 100;
}
- $t = get_markup_template("admin_site.tpl");
+ $t = get_markup_template('admin/site.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Site'),
'$portable_contacts' => t('Auto Discovered Contact Directory'),
'$performance' => t('Performance'),
'$worker_title' => t('Worker'),
- '$relocate'=> t('Relocate - WARNING: advanced function. Could make this server unreachable.'),
+ '$relocate' => t('Relocate - WARNING: advanced function. Could make this server unreachable.'),
'$baseurl' => System::baseUrl(true),
// name, label, value, help string, extra data...
'$sitename' => array('sitename', t("Site name"), $a->config['sitename'],''),
'$worker_frontend' => array('worker_frontend', t('Enable frontend worker'), Config::get('system','frontend_worker'), sprintf(t('When enabled the Worker process is triggered when backend access is performed (e.g. messages being delivered). On smaller sites you might want to call %s/worker on a regular basis via an external cron job. You should only enable this option if you cannot utilize cron/scheduled jobs on your server.'), System::baseUrl())),
'$form_security_token' => get_form_security_token("admin_site")
-
));
-
}
/**
*
* @param App $a
* @return string
- **/
-function admin_page_dbsync(App $a) {
-
+ * */
+function admin_page_dbsync(App $a)
+{
$o = '';
if ($a->argc > 3 && intval($a->argv[3]) && $a->argv[2] === 'mark') {
- Config::set('database', 'update_'.intval($a->argv[3]), 'success');
- $curr = Config::get('system','build');
+ Config::set('database', 'update_' . intval($a->argv[3]), 'success');
+ $curr = Config::get('system', 'build');
if (intval($curr) == intval($a->argv[3])) {
- Config::set('system','build',intval($curr) + 1);
+ Config::set('system', 'build', intval($curr) + 1);
}
- info(t('Update has been marked successful').EOL);
+ info(t('Update has been marked successful') . EOL);
goaway('admin/dbsync');
}
require_once("include/dbstructure.php");
$retval = update_structure(false, true);
if (!$retval) {
- $o .= sprintf(t("Database structure update %s was successfully applied."), DB_UPDATE_VERSION)."<br />";
- Config::set('database', 'dbupdate_'.DB_UPDATE_VERSION, 'success');
+ $o .= sprintf(t("Database structure update %s was successfully applied."), DB_UPDATE_VERSION) . "<br />";
+ Config::set('database', 'dbupdate_' . DB_UPDATE_VERSION, 'success');
} else {
- $o .= sprintf(t("Executing of database structure update %s failed with error: %s"),
- DB_UPDATE_VERSION, $retval)."<br />";
+ $o .= sprintf(t("Executing of database structure update %s failed with error: %s"), DB_UPDATE_VERSION, $retval) . "<br />";
}
if ($a->argv[2] === 'check') {
return $o;
}
if ($a->argc > 2 && intval($a->argv[2])) {
- require_once('update.php');
- $func = 'update_'.intval($a->argv[2]);
+ require_once 'update.php';
+ $func = 'update_' . intval($a->argv[2]);
if (function_exists($func)) {
$retval = $func();
if ($retval === UPDATE_FAILED) {
$o .= sprintf(t("Executing %s failed with error: %s"), $func, $retval);
- }
- elseif ($retval === UPDATE_SUCCESS) {
+ } elseif ($retval === UPDATE_SUCCESS) {
$o .= sprintf(t('Update %s was successfully applied.', $func));
- Config::set('database',$func, 'success');
+ Config::set('database', $func, 'success');
} else {
$o .= sprintf(t('Update %s did not return a status. Unknown if it succeeded.'), $func);
}
} else {
- $o .= sprintf(t('There was no additional update function %s that needed to be called.'), $func)."<br />";
- Config::set('database',$func, 'success');
+ $o .= sprintf(t('There was no additional update function %s that needed to be called.'), $func) . "<br />";
+ Config::set('database', $func, 'success');
}
return $o;
}
$r = q("SELECT `k`, `v` FROM `config` WHERE `cat` = 'database' ");
if (DBM::is_result($r)) {
foreach ($r as $rr) {
- $upd = intval(substr($rr['k'],7));
+ $upd = intval(substr($rr['k'], 7));
if ($upd < 1139 || $rr['v'] === 'success') {
continue;
}
$failed[] = $upd;
}
}
- if (! count($failed)) {
- $o = replace_macros(get_markup_template('structure_check.tpl'),array(
- '$base' => System::baseUrl(true),
+ if (!count($failed)) {
+ $o = replace_macros(get_markup_template('structure_check.tpl'), array(
+ '$base' => System::baseUrl(true),
'$banner' => t('No failed updates.'),
- '$check' => t('Check database structure'),
+ '$check' => t('Check database structure'),
));
} else {
- $o = replace_macros(get_markup_template('failed_updates.tpl'),array(
- '$base' => System::baseUrl(true),
+ $o = replace_macros(get_markup_template('failed_updates.tpl'), array(
+ '$base' => System::baseUrl(true),
'$banner' => t('Failed Updates'),
- '$desc' => t('This does not include updates prior to 1139, which did not return a status.'),
- '$mark' => t('Mark success (if update was manually applied)'),
- '$apply' => t('Attempt to execute this update step automatically'),
+ '$desc' => t('This does not include updates prior to 1139, which did not return a status.'),
+ '$mark' => t('Mark success (if update was manually applied)'),
+ '$apply' => t('Attempt to execute this update step automatically'),
'$failed' => $failed
));
}
return $o;
-
}
/**
*
* @param App $a
*/
-function admin_page_users_post(App $a) {
+function admin_page_users_post(App $a)
+{
$pending = (x($_POST, 'pending') ? $_POST['pending'] : array());
$users = (x($_POST, 'user') ? $_POST['user'] : array());
$nu_name = (x($_POST, 'new_user_name') ? $_POST['new_user_name'] : '');
check_form_security_token_redirectOnErr('/admin/users', 'admin_users');
if (!($nu_name === "") && !($nu_email === "") && !($nu_nickname === "")) {
- require_once('include/user.php');
+ require_once 'include/user.php';
- $result = create_user(array('username'=>$nu_name, 'email'=>$nu_email,
- 'nickname'=>$nu_nickname, 'verified'=>1, 'language'=>$nu_language));
- if (! $result['success']) {
+ $result = create_user(array('username' => $nu_name, 'email' => $nu_email,
+ 'nickname' => $nu_nickname, 'verified' => 1, 'language' => $nu_language));
+ if (!$result['success']) {
notice($result['message']);
return;
}
notification(array(
'type' => SYSTEM_EMAIL,
'to_email' => $nu['email'],
- 'subject'=> sprintf(t('Registration details for %s'), $a->config['sitename']),
- 'preamble'=> $preamble,
+ 'subject' => sprintf(t('Registration details for %s'), $a->config['sitename']),
+ 'preamble' => $preamble,
'body' => $body));
-
}
- if (x($_POST,'page_users_block')) {
+ if (x($_POST, 'page_users_block')) {
foreach ($users as $uid) {
- q("UPDATE `user` SET `blocked` = 1-`blocked` WHERE `uid` = %s",
- intval($uid)
+ q("UPDATE `user` SET `blocked` = 1-`blocked` WHERE `uid` = %s", intval($uid)
);
}
notice(sprintf(tt("%s user blocked/unblocked", "%s users blocked/unblocked", count($users)), count($users)));
}
- if (x($_POST,'page_users_delete')) {
+ if (x($_POST, 'page_users_delete')) {
foreach ($users as $uid) {
User::remove($uid);
}
notice(sprintf(tt("%s user deleted", "%s users deleted", count($users)), count($users)));
}
- if (x($_POST,'page_users_approve')) {
+ if (x($_POST, 'page_users_approve')) {
require_once("mod/regmod.php");
foreach ($pending as $hash) {
user_allow($hash);
}
}
- if (x($_POST,'page_users_deny')) {
+ if (x($_POST, 'page_users_deny')) {
require_once("mod/regmod.php");
foreach ($pending as $hash) {
user_deny($hash);
* @param App $a
* @return string
*/
-function admin_page_users(App $a) {
- if ($a->argc>2) {
+function admin_page_users(App $a)
+{
+ if ($a->argc > 2) {
$uid = $a->argv[3];
$user = q("SELECT `username`, `blocked` FROM `user` WHERE `uid` = %d", intval($uid));
if (count($user) == 0) {
- notice('User not found'.EOL);
+ notice('User not found' . EOL);
goaway('admin/users');
return ''; // NOTREACHED
}
- switch($a->argv[2]) {
+ switch ($a->argv[2]) {
case "delete":
check_form_security_token_redirectOnErr('/admin/users', 'admin_users', 't');
// delete user
User::remove($uid);
- notice(sprintf(t("User '%s' deleted"), $user[0]['username']).EOL);
+ notice(sprintf(t("User '%s' deleted"), $user[0]['username']) . EOL);
break;
case "block":
check_form_security_token_redirectOnErr('/admin/users', 'admin_users', 't');
- q("UPDATE `user` SET `blocked` = %d WHERE `uid` = %s",
- intval(1-$user[0]['blocked']),
- intval($uid)
+ q("UPDATE `user` SET `blocked` = %d WHERE `uid` = %s", intval(1 - $user[0]['blocked']), intval($uid)
);
- notice(sprintf(($user[0]['blocked']?t("User '%s' unblocked"):t("User '%s' blocked")) , $user[0]['username']).EOL);
+ notice(sprintf(($user[0]['blocked'] ? t("User '%s' unblocked") : t("User '%s' blocked")), $user[0]['username']) . EOL);
break;
}
goaway('admin/users');
return ''; // NOTREACHED
-
}
/* get pending */
$order = "contact.name";
$order_direction = "+";
- if (x($_GET,'o')) {
+ if (x($_GET, 'o')) {
$new_order = $_GET['o'];
if ($new_order[0] === "-") {
$order_direction = "-";
- $new_order = substr($new_order,1);
+ $new_order = substr($new_order, 1);
}
if (in_array($new_order, $valid_orders)) {
$order = $new_order;
}
- if (x($_GET,'d')) {
+ if (x($_GET, 'd')) {
$new_direction = $_GET['d'];
}
}
- $sql_order = "`".str_replace('.','`.`',$order)."`";
- $sql_order_direction = ($order_direction === "+")?"ASC":"DESC";
+ $sql_order = "`" . str_replace('.', '`.`', $order) . "`";
+ $sql_order_direction = ($order_direction === "+") ? "ASC" : "DESC";
$users = q("SELECT `user`.*, `contact`.`name`, `contact`.`url`, `contact`.`micro`, `user`.`account_expired`, `contact`.`last-item` AS `lastitem_date`
FROM `user`
INNER JOIN `contact` ON `contact`.`uid` = `user`.`uid` AND `contact`.`self`
WHERE `user`.`verified`
- ORDER BY $sql_order $sql_order_direction LIMIT %d, %d",
- intval($a->pager['start']),
- intval($a->pager['itemspage'])
- );
+ ORDER BY $sql_order $sql_order_direction LIMIT %d, %d", intval($a->pager['start']), intval($a->pager['itemspage'])
+ );
//echo "<pre>$users"; killme();
t('Normal Account'),
t('Automatic Follower Account'),
t('Public Forum Account'),
- t('Automatic Friend Account')
+ t('Automatic Friend Account')
);
$e['page-flags'] = $accounts[$e['page-flags']];
$e['register_date'] = relative_date($e['register_date']);
//$e['is_admin'] = ($e['email'] === $a->config['admin_email']);
$e['is_admin'] = in_array($e['email'], $adminlist);
$e['is_deletable'] = (intval($e['uid']) != local_user());
- $e['deleted'] = ($e['account_removed']?relative_date($e['account_expires_on']):False);
+ $e['deleted'] = ($e['account_removed'] ? relative_date($e['account_expires_on']) : False);
return $e;
};
$users = array_map($_setup_users, $users);
while (count($users)) {
$new_user = array();
foreach (array_pop($users) as $k => $v) {
- $k = str_replace('-','_',$k);
+ $k = str_replace('-', '_', $k);
$new_user[$k] = $v;
}
if ($new_user['deleted']) {
array_push($users, array_pop($tmp_users));
}
- $th_users = array_map(null,
- array(t('Name'), t('Email'), t('Register date'), t('Last login'), t('Last item'), t('Account')),
- $valid_orders
+ $th_users = array_map(null, array(t('Name'), t('Email'), t('Register date'), t('Last login'), t('Last item'), t('Account')), $valid_orders
);
- $t = get_markup_template("admin_users.tpl");
+ $t = get_markup_template('admin/users.tpl');
$o = replace_macros($t, array(
// strings //
'$title' => t('Administration'),
'$h_pending' => t('User registrations waiting for confirm'),
'$h_deleted' => t('User waiting for permanent deletion'),
'$th_pending' => array(t('Request date'), t('Name'), t('Email')),
- '$no_pending' => t('No registrations.'),
+ '$no_pending' => t('No registrations.'),
'$pendingnotetext' => t('Note from the user'),
'$approve' => t('Approve'),
'$deny' => t('Deny'),
return $o;
}
-
/**
* @brief Plugins admin page
*
* @param App $a
* @return string
*/
-function admin_page_plugins(App $a) {
-
+function admin_page_plugins(App $a)
+{
/*
* Single plugin
*/
return '';
}
- if (x($_GET,"a") && $_GET['a']=="t") {
+ if (x($_GET, "a") && $_GET['a'] == "t") {
check_form_security_token_redirectOnErr('/admin/plugins', 'admin_themes', 't');
// Toggle plugin status
install_plugin($plugin);
info(sprintf(t("Plugin %s enabled."), $plugin));
}
- Config::set("system","addon", implode(", ",$a->plugins));
+ Config::set("system", "addon", implode(", ", $a->plugins));
goaway('admin/plugins');
return ''; // NOTREACHED
}
require_once('library/markdown.php');
if (in_array($plugin, $a->plugins)) {
- $status="on"; $action= t("Disable");
+ $status = "on";
+ $action = t("Disable");
} else {
- $status="off"; $action= t("Enable");
+ $status = "off";
+ $action = t("Enable");
}
- $readme=Null;
+ $readme = Null;
if (is_file("addon/$plugin/README.md")) {
$readme = file_get_contents("addon/$plugin/README.md");
$readme = Markdown($readme, false);
} elseif (is_file("addon/$plugin/README")) {
- $readme = "<pre>". file_get_contents("addon/$plugin/README") ."</pre>";
+ $readme = "<pre>" . file_get_contents("addon/$plugin/README") . "</pre>";
}
- $admin_form="";
+ $admin_form = "";
if (is_array($a->plugins_admin) && in_array($plugin, $a->plugins_admin)) {
@require_once("addon/$plugin/$plugin.php");
- $func = $plugin.'_plugin_admin';
+ $func = $plugin . '_plugin_admin';
$func($a, $admin_form);
}
- $t = get_markup_template("admin_plugins_details.tpl");
+ $t = get_markup_template('admin/plugins_details.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
));
}
-
-
/*
* List plugins
*/
-
- if (x($_GET,"a") && $_GET['a']=="r") {
- check_form_security_token_redirectOnErr(System::baseUrl().'/admin/plugins', 'admin_themes', 't');
+ if (x($_GET, "a") && $_GET['a'] == "r") {
+ check_form_security_token_redirectOnErr(System::baseUrl() . '/admin/plugins', 'admin_themes', 't');
reload_plugins();
info("Plugins reloaded");
- goaway(System::baseUrl().'/admin/plugins');
+ goaway(System::baseUrl() . '/admin/plugins');
}
$plugins = array();
if ($files) {
foreach ($files as $file) {
if (is_dir($file)) {
- list($tmp, $id)=array_map("trim", explode("/",$file));
+ list($tmp, $id) = array_map("trim", explode("/", $file));
$info = get_plugin_info($id);
$show_plugin = true;
// If the addon is unsupported, then only show it, when it is enabled
- if ((strtolower($info["status"]) == "unsupported") && !in_array($id, $a->plugins)) {
+ if ((strtolower($info["status"]) == "unsupported") && !in_array($id, $a->plugins)) {
$show_plugin = false;
}
}
if ($show_plugin) {
- $plugins[] = array($id, (in_array($id, $a->plugins)?"on":"off") , $info);
+ $plugins[] = array($id, (in_array($id, $a->plugins) ? "on" : "off"), $info);
}
}
}
}
- $t = get_markup_template("admin_plugins.tpl");
+ $t = get_markup_template('admin/plugins.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Plugins'),
* @param string $th
* @param int $result
*/
-function toggle_theme(&$themes,$th,&$result) {
- for($x = 0; $x < count($themes); $x ++) {
+function toggle_theme(&$themes, $th, &$result)
+{
+ for ($x = 0; $x < count($themes); $x ++) {
if ($themes[$x]['name'] === $th) {
if ($themes[$x]['allowed']) {
$themes[$x]['allowed'] = 0;
$result = 0;
- }
- else {
+ } else {
$themes[$x]['allowed'] = 1;
$result = 1;
}
* @param string $th
* @return int
*/
-function theme_status($themes,$th) {
- for($x = 0; $x < count($themes); $x ++) {
+function theme_status($themes, $th)
+{
+ for ($x = 0; $x < count($themes); $x ++) {
if ($themes[$x]['name'] === $th) {
if ($themes[$x]['allowed']) {
return 1;
- }
- else {
+ } else {
return 0;
}
}
return 0;
}
-
/**
* @param array $themes
* @return string
*/
-function rebuild_theme_table($themes) {
+function rebuild_theme_table($themes)
+{
$o = '';
if (count($themes)) {
foreach ($themes as $th) {
return $o;
}
-
/**
* @brief Themes admin page
*
* @param App $a
* @return string
*/
-function admin_page_themes(App $a) {
-
- $allowed_themes_str = Config::get('system','allowed_themes');
- $allowed_themes_raw = explode(',',$allowed_themes_str);
+function admin_page_themes(App $a)
+{
+ $allowed_themes_str = Config::get('system', 'allowed_themes');
+ $allowed_themes_raw = explode(',', $allowed_themes_str);
$allowed_themes = array();
if (count($allowed_themes_raw)) {
foreach ($allowed_themes_raw as $x) {
$f = basename($file);
// Is there a style file?
- $theme_files = glob('view/theme/'.$f.'/style.*');
+ $theme_files = glob('view/theme/' . $f . '/style.*');
// If not then quit
if (count($theme_files) == 0) {
continue;
}
- $is_experimental = intval(file_exists($file.'/experimental'));
- $is_supported = 1-(intval(file_exists($file.'/unsupported')));
- $is_allowed = intval(in_array($f,$allowed_themes));
+ $is_experimental = intval(file_exists($file . '/experimental'));
+ $is_supported = 1 - (intval(file_exists($file . '/unsupported')));
+ $is_allowed = intval(in_array($f, $allowed_themes));
if ($is_allowed || $is_supported || Config::get("system", "show_unsupported_themes")) {
$themes[] = array('name' => $f, 'experimental' => $is_experimental, 'supported' => $is_supported, 'allowed' => $is_allowed);
}
}
- if (! count($themes)) {
+ if (!count($themes)) {
notice(t('No themes found.'));
return '';
}
if ($a->argc == 3) {
$theme = $a->argv[2];
- if (! is_dir("view/theme/$theme")) {
+ if (!is_dir("view/theme/$theme")) {
notice(t("Item not found."));
return '';
}
- if (x($_GET,"a") && $_GET['a']=="t") {
+ if (x($_GET, "a") && $_GET['a'] == "t") {
check_form_security_token_redirectOnErr('/admin/themes', 'admin_themes', 't');
// Toggle theme status
- toggle_theme($themes,$theme,$result);
+ toggle_theme($themes, $theme, $result);
$s = rebuild_theme_table($themes);
if ($result) {
install_theme($theme);
- info(sprintf('Theme %s enabled.',$theme));
+ info(sprintf('Theme %s enabled.', $theme));
} else {
uninstall_theme($theme);
- info(sprintf('Theme %s disabled.',$theme));
+ info(sprintf('Theme %s disabled.', $theme));
}
- Config::set('system','allowed_themes',$s);
+ Config::set('system', 'allowed_themes', $s);
goaway('admin/themes');
return ''; // NOTREACHED
}
// display theme details
- require_once('library/markdown.php');
+ require_once 'library/markdown.php';
- if (theme_status($themes,$theme)) {
- $status="on"; $action= t("Disable");
+ if (theme_status($themes, $theme)) {
+ $status = "on";
+ $action = t("Disable");
} else {
- $status="off"; $action= t("Enable");
+ $status = "off";
+ $action = t("Enable");
}
$readme = Null;
$readme = file_get_contents("view/theme/$theme/README.md");
$readme = Markdown($readme, false);
} elseif (is_file("view/theme/$theme/README")) {
- $readme = "<pre>". file_get_contents("view/theme/$theme/README") ."</pre>";
+ $readme = "<pre>" . file_get_contents("view/theme/$theme/README") . "</pre>";
}
$admin_form = "";
if (is_file("view/theme/$theme/config.php")) {
- function __get_theme_admin_form(App $a, $theme) {
+
+ function __get_theme_admin_form(App $a, $theme)
+ {
$orig_theme = $a->theme;
$orig_page = $a->page;
$orig_session_theme = $_SESSION['theme'];
$_SESSION['theme'] = $theme;
- $init = $theme."_init";
+ $init = $theme . "_init";
if (function_exists($init)) {
$init($a);
}
}
$screenshot = array(get_theme_screenshot($theme), t('Screenshot'));
- if (! stristr($screenshot[0],$theme)) {
+ if (!stristr($screenshot[0], $theme)) {
$screenshot = null;
}
- $t = get_markup_template("admin_plugins_details.tpl");
+ $t = get_markup_template('admin/plugins_details.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Themes'),
// reload active themes
- if (x($_GET,"a") && $_GET['a']=="r") {
- check_form_security_token_redirectOnErr(System::baseUrl().'/admin/themes', 'admin_themes', 't');
+ if (x($_GET, "a") && $_GET['a'] == "r") {
+ check_form_security_token_redirectOnErr(System::baseUrl() . '/admin/themes', 'admin_themes', 't');
if ($themes) {
foreach ($themes as $th) {
if ($th['allowed']) {
}
}
info("Themes reloaded");
- goaway(System::baseUrl().'/admin/themes');
+ goaway(System::baseUrl() . '/admin/themes');
}
/*
$xthemes = array();
if ($themes) {
foreach ($themes as $th) {
- $xthemes[] = array($th['name'],(($th['allowed']) ? "on" : "off"), get_theme_info($th['name']));
+ $xthemes[] = array($th['name'], (($th['allowed']) ? "on" : "off"), get_theme_info($th['name']));
}
}
-
- $t = get_markup_template("admin_plugins.tpl");
+ $t = get_markup_template('admin/plugins.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$page' => t('Themes'),
));
}
-
/**
* @brief Prosesses data send by Logs admin page
*
* @param App $a
*/
-function admin_page_logs_post(App $a) {
- if (x($_POST,"page_logs")) {
+function admin_page_logs_post(App $a)
+{
+ if (x($_POST, "page_logs")) {
check_form_security_token_redirectOnErr('/admin/logs', 'admin_logs');
$logfile = ((x($_POST,'logfile')) ? notags(trim($_POST['logfile'])) : '');
$debugging = ((x($_POST,'debugging')) ? true : false);
$loglevel = ((x($_POST,'loglevel')) ? intval(trim($_POST['loglevel'])) : 0);
- Config::set('system','logfile', $logfile);
- Config::set('system','debugging', $debugging);
- Config::set('system','loglevel', $loglevel);
+ Config::set('system', 'logfile', $logfile);
+ Config::set('system', 'debugging', $debugging);
+ Config::set('system', 'loglevel', $loglevel);
}
info(t("Log settings updated."));
* @param App $a
* @return string
*/
-function admin_page_logs(App $a) {
-
+function admin_page_logs(App $a)
+{
$log_choices = array(
LOGGER_NORMAL => 'Normal',
LOGGER_TRACE => 'Trace',
$phplogenabled = t('PHP log currently disabled.');
}
- $t = get_markup_template("admin_logs.tpl");
+ $t = get_markup_template('admin/logs.tpl');
return replace_macros($t, array(
'$title' => t('Administration'),
'$submit' => t('Save Settings'),
'$clear' => t('Clear'),
'$baseurl' => System::baseUrl(true),
- '$logname' => Config::get('system','logfile'),
-
+ '$logname' => Config::get('system', 'logfile'),
// name, label, value, help string, extra data...
- '$debugging' => array('debugging', t("Enable Debugging"),Config::get('system','debugging'), ""),
- '$logfile' => array('logfile', t("Log file"), Config::get('system','logfile'), t("Must be writable by web server. Relative to your Friendica top-level directory.")),
- '$loglevel' => array('loglevel', t("Log level"), Config::get('system','loglevel'), "", $log_choices),
-
+ '$debugging' => array('debugging', t("Enable Debugging"), Config::get('system', 'debugging'), ""),
+ '$logfile' => array('logfile', t("Log file"), Config::get('system', 'logfile'), t("Must be writable by web server. Relative to your Friendica top-level directory.")),
+ '$loglevel' => array('loglevel', t("Log level"), Config::get('system', 'loglevel'), "", $log_choices),
'$form_security_token' => get_form_security_token("admin_logs"),
'$phpheader' => t("PHP logging"),
'$phphint' => t("To enable logging of PHP errors and warnings you can add the following to the .htconfig.php file of your installation. The filename set in the 'error_log' line is relative to the friendica top-level directory and must be writeable by the web server. The option '1' for 'log_errors' and 'display_errors' is to enable these options, set to '0' to disable them."),
* @param App $a
* @return string
*/
-function admin_page_viewlogs(App $a) {
- $t = get_markup_template("admin_viewlogs.tpl");
- $f = Config::get('system','logfile');
+function admin_page_viewlogs(App $a)
+{
+ $t = get_markup_template('admin/viewlogs.tpl');
+ $f = Config::get('system', 'logfile');
$data = '';
if (!file_exists($f)) {
if ($size > 5000000 || $size < 0) {
$size = 5000000;
}
- $seek = fseek($fp,0-$size,SEEK_END);
+ $seek = fseek($fp, 0 - $size, SEEK_END);
if ($seek === 0) {
- $data = escape_tags(fread($fp,$size));
- while (! feof($fp)) {
- $data .= escape_tags(fread($fp,4096));
+ $data = escape_tags(fread($fp, $size));
+ while (!feof($fp)) {
+ $data .= escape_tags(fread($fp, 4096));
}
}
}
'$title' => t('Administration'),
'$page' => t('View Logs'),
'$data' => $data,
- '$logname' => Config::get('system','logfile')
+ '$logname' => Config::get('system', 'logfile')
));
}
*
* @param App $a
*/
-function admin_page_features_post(App $a) {
-
+function admin_page_features_post(App $a)
+{
check_form_security_token_redirectOnErr('/admin/features', 'admin_manage_features');
- logger('postvars: '.print_r($_POST,true),LOGGER_DATA);
+ logger('postvars: ' . print_r($_POST, true), LOGGER_DATA);
$arr = array();
$features = get_features(false);
* @param App $a
* @return string
*/
-function admin_page_features(App $a) {
-
+function admin_page_features(App $a)
+{
if ((argc() > 1) && (argv(1) === 'features')) {
$arr = array();
$features = get_features(false);
foreach ($features as $fname => $fdata) {
$arr[$fname] = array();
$arr[$fname][0] = $fdata[0];
- foreach (array_slice($fdata,1) as $f) {
-
+ foreach (array_slice($fdata, 1) as $f) {
$set = Config::get('feature', $f[0], $f[3]);
$arr[$fname][1][] = array(
- array('feature_' .$f[0],$f[1],$set,$f[2],array(t('Off'), t('On'))),
- array('featurelock_' .$f[0],sprintf(t('Lock feature %s'),$f[1]),(($f[4] !== false) ? "1" : ''),'',array(t('Off'), t('On')))
+ array('feature_' . $f[0], $f[1], $set, $f[2], array(t('Off'), t('On'))),
+ array('featurelock_' . $f[0], sprintf(t('Lock feature %s'), $f[1]), (($f[4] !== false) ? "1" : ''), '', array(t('Off'), t('On')))
);
}
}
- $tpl = get_markup_template("admin_settings_features.tpl");
+ $tpl = get_markup_template('admin/settings_features.tpl');
$o .= replace_macros($tpl, array(
'$form_security_token' => get_form_security_token("admin_manage_features"),
'$title' => t('Manage Additional Features'),
}
/**
- * @brief Updates the avatar links in a contact only if needed
+ * @brief Blocks a contact
+ *
+ * @param int $uid
+ * @return bool
+ */
+ public static function block($uid)
+ {
+ $return = dba::update('contact', ['blocked' => true], ['id' => $uid]);
+
+ return $return;
+ }
+
+ /**
+ * @brief Unblocks a contact
+ *
+ * @param int $uid
+ * @return bool
+ */
+ public static function unblock($uid)
+ {
+ $return = dba::update('contact', ['blocked' => false], ['id' => $uid]);
+
+ return $return;
+ }
+
+ /**
+ * @brief Updates the avatar links in a contact only if needed
*
* @param string $avatar Link to avatar picture
* @param int $uid User id of contact owner
--- /dev/null
+<script>
+ // update pending count //
+ $(function(){
+
+ $("nav").bind('nav-update', function(e,data){
+ var elm = $('#pending-update');
+ var register = $(data).find('register').text();
+ if (register=="0") { register=""; elm.hide();} else { elm.show(); }
+ elm.html(register);
+ });
+ });
+</script>
+
+<h4><a href="{{$admurl}}">{{$admtxt}}</a></h4>
+<ul class='admin linklist'>
+{{foreach $subpages as $page}}
+ <li class='admin link button {{$page.2}}'><a href='{{$page.0}}'>{{$page.1}}</a></li>
+{{/foreach}}
+</ul>
+
+{{if $admin.update}}
+<ul class='admin linklist'>
+ <li class='admin link button {{$admin.update.2}}'><a href='{{$admin.update.0}}'>{{$admin.update.1}}</a></li>
+ <li class='admin link button {{$admin.update.2}}'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
+</ul>
+{{/if}}
+
+
+{{if $admin.plugins_admin}}<h4>{{$plugadmtxt}}</h4>{{/if}}
+<ul class='admin linklist'>
+ {{foreach $admin.plugins_admin as $l}}
+ <li class='admin link button {{$l.2}}'><a href='{{$l.0}}'>{{$l.1}}</a></li>
+ {{/foreach}}
+</ul>
+
+
+<h4>{{$logtxt}}</h4>
+<ul class='admin linklist'>
+ <li class='admin link button {{$admin.logs.2}}'><a href='{{$admin.logs.0}}'>{{$admin.logs.1}}</a></li>
+ <li class='admin link button {{$admin.viewlogs.2}}'><a href='{{$admin.viewlogs.0}}'>{{$admin.viewlogs.1}}</a></li>
+</ul>
+
+<h4>{{$diagnosticstxt}}</h4>
+<ul class='admin linklist'>
+ <li class='admin link {{$admin.diagnostics_probe.2}}'><a href="{{$admin.diagnostics_probe.0}}">{{$admin.diagnostics_probe.1}}</a></li>
+ <li class='admin link {{$admin.diagnostics_webfinger.2}}'><a href="{{$admin.diagnostics_webfinger.0}}">{{$admin.diagnostics_webfinger.1}}</a></li>
+</ul>
--- /dev/null
+<script>
+ function confirm_delete(uname){
+ return confirm("{{$confirm_delete}}".format(uname));
+ }
+</script>
+<div id="adminpage">
+ <h1>{{$title}} - {{$page}}</h1>
+ <p>{{$intro}}</p>
+ <p>{{$public}}</p>
+
+ <h2>{{$addtitle}}</h2>
+ <form action="{{$baseurl}}/admin/blocklist" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+ {{include file="field_input.tpl" field=$newdomain}}
+ {{include file="field_input.tpl" field=$newreason}}
+ <div class="submit"><input type="submit" name="page_blocklist_save" value="{{$submit}}" /></div>
+ </form>
+
+ {{if $entries}}
+ <h2>{{$currenttitle}}</h2>
+ <p>{{$currentintro}}</p>
+ <form action="{{$baseurl}}/admin/blocklist" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+ {{foreach $entries as $e}}
+ {{include file="field_input.tpl" field=$e.domain}}
+ {{include file="field_input.tpl" field=$e.reason}}
+ {{include file="field_checkbox.tpl" field=$e.delete}}
+ {{/foreach}}
+ <div class="submit"><input type="submit" name="page_blocklist_edit" value="{{$savechanges}}" /></div>
+ {{/if}}
+ </form>
+
+</div>
--- /dev/null
+
+<script>
+ function selectall(cls) {
+ $('.' + cls).prop('checked', true);
+ return false;
+ }
+ function selectnone(cls) {
+ $('.' + cls).prop('checked', false);
+ return false;
+ }
+</script>
+<div id="adminpage">
+ <h1>{{$title}} - {{$page}}</h1>
+ <p>{{$description}}</p>
+ <form action="{{$baseurl}}/admin/contactblock" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+
+ <h3>{{$h_contacts}}</h3>
+ {{if $contacts}}
+ <table id="contactblock">
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_contacts as $th}}
+ <th>
+ {{$th}}
+ </th>
+ {{/foreach}}
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $contacts as $contact}}
+ <tr>
+ <td class="checkbox"><input type="checkbox" class="contacts_ckbx" id="id_contact_{{$contact.id}}" name="contacts[]" value="{{$contact.id}}"/></td>
+ <td><img class="icon" src="{{$contact.micro}}" alt="{{$contact.nickname}}" title="{{$contact.nickname}}"></td>
+ <td class="name">{{$contact.name}}</td>
+ <td class="addr">{{$contact.addr}}</td>
+ <td class="addr"><a href="{{$contact.url}}" title="{{$contact.nickname}}" >{{$contact.url}}</a></td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <p><a href="#" onclick="return selectall('contacts_ckbx');">{{$select_all}}</a> | <a href="#" onclick="return selectnone('contacts_ckbx');">{{$select_none}}</a></p>
+ {{$paginate}}
+ <div class="submit"><input type="submit" name="page_contactblock_unblock" value="{{$unblock|escape:'html'}}" /></div>
+ {{else}}
+ <p>{{$no_data|escape:'html'}}</p>
+ {{/if}}
+ </form>
+
+ <h3>{{$h_newblock}}</h3>
+ <form action="{{$baseurl}}/admin/contactblock" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+ <table id="contactblock">
+ <tbody>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$contacturl}}</td>
+ </tr>
+ </tbody>
+ </table>
+ <div class="submit"><input type="submit" name="page_contactblock_block" value="{{$submit|escape:'html'}}" /></div>
+ </form>
+</div>
--- /dev/null
+<div id="adminpage">
+ <h1>{{$title}} - {{$page}}</h1>
+ <p>{{$intro1}}</p>
+ <p>{{$intro2}}</p>
+</div>
+
+<form action="{{$baseurl}}/admin/deleteitem" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+ {{include file="field_input.tpl" field=$deleteitemguid}}
+ <div class="submit"><input type="submit" name="page_deleteitem_submit" value="{{$submit}}" /></div>
+</form>
--- /dev/null
+<script src="{{$baseurl}}/library/Chart.js-1.0.2/Chart.min.js"></script>
+<canvas id="FederationChart" class="federation-graph"></canvas>
+<div id="adminpage">
+ <h1>{{$title}} - {{$page}}</h1>
+ <p>{{$intro}}</p>
+ {{if not $autoactive}}
+ <p class="error-message">{{$hint}}</p>
+ {{/if}}
+ <p>{{$legendtext}}
+ <ul>
+ {{foreach $counts as $c}}
+ {{if $c[0]['total'] > 0}}
+ <li>{{$c[0]['platform']}} ({{$c[0]['total']}})</li>
+ {{/if}}
+ {{/foreach}}
+ </ul>
+ </p>
+</div>
+<script>
+var FedData = [
+{{foreach $counts as $c}}
+ { value: {{$c[0]['total']}}, label: "{{$c[0]['platform']}}", color: '{{$c[3]}}', highlight: "#EE90A1", },
+{{/foreach}}
+];
+var ctx = document.getElementById("FederationChart").getContext("2d");
+var myDoughnutChart = new Chart(ctx).Doughnut(FedData, { animateRotate : false, });
+</script>
+
+<table id="federation-stats">
+{{foreach $counts as $c}}
+ {{if $c[0]['total'] > 0}}
+ <tr>
+ <th>{{$c[0]['platform']}}</th>
+ <th><strong>{{$c[0]['total']}}</strong></td>
+ <td>{{$c[0]['network']}}</td>
+ </tr>
+ <tr>
+ <td colspan="3" class="federation-data">
+ <canvas id="{{$c[2]}}Chart" class="federation-network-graph"></canvas>
+ <script>
+ var {{$c[2]}}data = [
+ {{foreach $c[1] as $v}}
+ { value: {{$v['total']}}, label: '{{$v['version']}}', color: "{{$c[3]}}", highlight: "#EE90A1",},
+ {{/foreach}}
+ ];
+ var ctx = document.getElementById("{{$c[2]}}Chart").getContext("2d");
+ var my{{$c[2]}}DoughnutChart = new Chart(ctx).Doughnut({{$c[2]}}data, {animateRotate : false,});
+ </script>
+ <ul class="federation-stats">
+ {{foreach $c[1] as $v}}
+ <li>{{if ($c[0]['platform']==='Friendica' and $version===$v['version']) }}<span class="version-match">{{$v['version']}}</span>{{else}}{{$v['version']}}{{/if}} ({{$v['total']}})</li>
+ {{/foreach}}
+ </ul>
+ </td>
+ </tr>
+ {{/if}}
+{{/foreach}}
+</table>
--- /dev/null
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/logs" method="post">
+ <input type='hidden' name='form_security_token' value="{{$form_security_token|escape:'html'}}">
+
+ {{include file="field_checkbox.tpl" field=$debugging}}
+ {{include file="field_input.tpl" field=$logfile}}
+ {{include file="field_select.tpl" field=$loglevel}}
+
+ <div class="submit"><input type="submit" name="page_logs" value="{{$submit|escape:'html'}}" /></div>
+
+ </form>
+
+ <h2>{{$phpheader}}</h2>
+ <div>
+ <p>{{$phplogenabled}}<p>
+ <p>{{$phphint}}</p>
+ <pre>{{$phplogcode}}</pre>
+ </div>
+
+</div>
--- /dev/null
+
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+ {{if $pcount eq 0}}
+ <div class="error-message">
+ {{$noplugshint}}
+ </div>
+ {{else}}
+ <a class="btn" href="{{$baseurl}}/admin/{{$function}}?a=r&t={{$form_security_token}}">{{$reload}}</a>
+ <ul id='pluginslist'>
+ {{foreach $plugins as $p}}
+ <li class='plugin {{$p.1}}'>
+ <a class='toggleplugin' href='{{$baseurl}}/admin/{{$function}}/{{$p.0}}?a=t&t={{$form_security_token}}' title="{{if $p.1==on}}Disable{{else}}Enable{{/if}}" ><span class='icon {{$p.1}}'></span></a>
+ <a href='{{$baseurl}}/admin/{{$function}}/{{$p.0}}'><span class='name'>{{$p.2.name}}</span></a> - <span class="version">{{$p.2.version}}</span>
+ {{if $p.2.experimental}} {{$experimental}} {{/if}}{{if $p.2.unsupported}} {{$unsupported}} {{/if}}
+
+ <div class='desc'>{{$p.2.description}}</div>
+ </li>
+ {{/foreach}}
+ </ul>
+ {{/if}}
+</div>
--- /dev/null
+
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <p><span class='toggleplugin icon {{$status}}'></span> {{$info.name}} - {{$info.version}} : <a href="{{$baseurl}}/admin/{{$function}}/{{$plugin}}/?a=t&t={{$form_security_token}}">{{$action}}</a></p>
+ <p>{{$info.description}}</p>
+
+ <p class="author">{{$str_author}}
+ {{foreach $info.author as $a}}
+ {{if $a.link}}<a href="{{$a.link}}">{{$a.name}}</a>{{else}}{{$a.name}}{{/if}},
+ {{/foreach}}
+ </p>
+
+ <p class="maintainer">{{$str_maintainer}}
+ {{foreach $info.maintainer as $a}}
+ {{if $a.link}}<a href="{{$a.link}}">{{$a.name}}</a>{{else}}{{$a.name}}{{/if}},
+ {{/foreach}}
+ </p>
+
+ {{if $screenshot}}
+ <a href="{{$screenshot.0}}" class='screenshot'><img src="{{$screenshot.0}}" alt="{{$screenshot.1}}" /></a>
+ {{/if}}
+
+ {{if $admin_form}}
+ <h3>{{$settings}}</h3>
+ <form method="post" action="{{$baseurl}}/admin/{{$function}}/{{$plugin}}/">
+ {{$admin_form}}
+ </form>
+ {{/if}}
+
+ {{if $readme}}
+ <h3>Readme</h3>
+ <div id="plugin_readme">
+ {{$readme}}
+ </div>
+ {{/if}}
+</div>
--- /dev/null
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}} ({{$count}})</h1>
+
+ <p>{{$info}}</p>
+ <table>
+ <tr>
+ <th>{{$id_header}}</th>
+ <th>{{$to_header}}</th>
+ <th>{{$url_header}}</th>
+ <th>{{$network_header}}</th>
+ <th>{{$created_header}}</th>
+ <th>{{$last_header}}</th>
+ </tr>
+ {{foreach $entries as $e}}
+ <tr>
+ <td>{{$e.id}}</td>
+ <td>{{$e.name}}</td>
+ <td><a href="{{$e.nurl}}">{{$e.nurl}}</a></td>
+ <td>{{$e.network}}</td>
+ <td>{{$e.created}}</td>
+ <td>{{$e.last}}</td>
+ </tr>
+ {{/foreach}}
+ </table>
+</div>
--- /dev/null
+<h1>{{$title}}</h1>
+
+<form action="admin/features" method="post" autocomplete="off">
+<input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+{{foreach $features as $g => $f}}
+<h3 class="settings-heading"><a href="javascript:;">{{$f.0}}</a></h3>
+
+<div class="settings-content-block">
+ {{foreach $f.1 as $fcat}}
+ {{include file="field_yesno.tpl" field=$fcat.0}}
+ {{include file="field_yesno.tpl" field=$fcat.1}}
+ {{/foreach}}
+
+ <div class="settings-submit-wrapper" >
+ <input type="submit" name="submit" class="settings-features-submit" value="{{$submit|escape:'html'}}" />
+ </div>
+</div>
+{{/foreach}}
+
+</form>
--- /dev/null
+<script>
+ $(document).ready(function() {
+ $('.settings-content-block').hide();
+ $('.settings-heading').click(function(){
+ $('.settings-content-block').hide();
+ $(this).next('.settings-content-block').toggle();
+ });
+ });
+</script>
--- /dev/null
+<script>
+ $(function(){
+
+ $("#cnftheme").click(function(){
+ $.colorbox({
+ width: 800,
+ height: '90%',
+ /*onOpen: function(){
+ var theme = $("#id_theme :selected").val();
+ $("#cnftheme").attr('href',"{{$baseurl}}/admin/themes/"+theme);
+ },*/
+ href: "{{$baseurl}}/admin/themes/" + $("#id_theme :selected").val(),
+ onComplete: function(){
+ $("div#fancybox-content form").submit(function(e){
+ var url = $(this).attr('action');
+ // can't get .serialize() to work...
+ var data={};
+ $(this).find("input").each(function(){
+ data[$(this).attr('name')] = $(this).val();
+ });
+ $(this).find("select").each(function(){
+ data[$(this).attr('name')] = $(this).children(":selected").val();
+ });
+ console.log(":)", url, data);
+
+ $.post(url, data, function(data) {
+ if(timer) clearTimeout(timer);
+ NavUpdate();
+ $.colorbox.close();
+ })
+
+ return false;
+ });
+
+ }
+ });
+ return false;
+ });
+ });
+</script>
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/site" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ {{include file="field_input.tpl" field=$sitename}}
+ {{include file="field_input.tpl" field=$hostname}}
+ {{include file="field_input.tpl" field=$sender_email}}
+ {{include file="field_textarea.tpl" field=$banner}}
+ {{include file="field_input.tpl" field=$shortcut_icon}}
+ {{include file="field_input.tpl" field=$touch_icon}}
+ {{include file="field_textarea.tpl" field=$info}}
+ {{include file="field_select.tpl" field=$language}}
+ {{include file="field_select.tpl" field=$theme}}
+ {{include file="field_select.tpl" field=$theme_mobile}}
+ {{include file="field_select.tpl" field=$ssl_policy}}
+ {{if $ssl_policy.2 == 1}}{{include file="field_checkbox.tpl" field=$force_ssl}}{{/if}}
+ {{include file="field_checkbox.tpl" field=$hide_help}}
+ {{include file="field_select.tpl" field=$singleuser}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$registration}}</h3>
+ {{include file="field_input.tpl" field=$register_text}}
+ {{include file="field_select.tpl" field=$register_policy}}
+ {{include file="field_input.tpl" field=$daily_registrations}}
+ {{include file="field_checkbox.tpl" field=$no_multi_reg}}
+ {{include file="field_checkbox.tpl" field=$no_openid}}
+ {{include file="field_checkbox.tpl" field=$no_regfullname}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$upload}}</h3>
+ {{include file="field_input.tpl" field=$maximagesize}}
+ {{include file="field_input.tpl" field=$maximagelength}}
+ {{include file="field_input.tpl" field=$jpegimagequality}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$corporate}}</h3>
+ {{include file="field_input.tpl" field=$allowed_sites}}
+ {{include file="field_input.tpl" field=$allowed_email}}
+ {{include file="field_checkbox.tpl" field=$block_public}}
+ {{include file="field_checkbox.tpl" field=$force_publish}}
+ {{include file="field_select.tpl" field=$community_page_style}}
+ {{include file="field_input.tpl" field=$max_author_posts_community_page}}
+
+ {{include file="field_checkbox.tpl" field=$ostatus_disabled}}
+ {{include file="field_checkbox.tpl" field=$ostatus_full_threads}}
+
+ {{if $diaspora_able}}
+ {{include file="field_checkbox.tpl" field=$diaspora_enabled}}
+ {{else}}
+ <div class='field checkbox' id='div_id_{{$diaspora_enabled.0}}'>
+ <label for='id_{{$diaspora_enabled.0}}'>{{$diaspora_enabled.1}}</label>
+ <span id='id_{{$diaspora_enabled.0}}'>{{$diaspora_not_able}}</span>
+ </div>
+ {{/if}}
+ {{include file="field_checkbox.tpl" field=$dfrn_only}}
+ {{include file="field_input.tpl" field=$global_directory}}
+ <div class="submit"><input type="submit" name="republish_directory" value="{{$republish|escape:'html'}}" /></div>
+ {{include file="field_checkbox.tpl" field=$newuser_private}}
+ {{include file="field_checkbox.tpl" field=$enotify_no_content}}
+ {{include file="field_checkbox.tpl" field=$private_addons}}
+ {{include file="field_checkbox.tpl" field=$disable_embedded}}
+ {{include file="field_checkbox.tpl" field=$allow_users_remote_self}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$advanced}}</h3>
+ {{include file="field_select.tpl" field=$rino}}
+ {{include file="field_checkbox.tpl" field=$verifyssl}}
+ {{include file="field_input.tpl" field=$proxy}}
+ {{include file="field_input.tpl" field=$proxyuser}}
+ {{include file="field_input.tpl" field=$timeout}}
+ {{include file="field_input.tpl" field=$maxloadavg_frontend}}
+ {{include file="field_input.tpl" field=$optimize_max_tablesize}}
+ {{include file="field_input.tpl" field=$optimize_fragmentation}}
+ {{include file="field_input.tpl" field=$abandon_days}}
+ {{include file="field_input.tpl" field=$temppath}}
+ {{include file="field_input.tpl" field=$basepath}}
+ {{include file="field_checkbox.tpl" field=$suppress_tags}}
+ {{include file="field_checkbox.tpl" field=$nodeinfo}}
+ {{include file="field_select.tpl" field=$check_new_version_url}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$portable_contacts}}</h3>
+ {{include file="field_checkbox.tpl" field=$poco_completion}}
+ {{include file="field_input.tpl" field=$poco_requery_days}}
+ {{include file="field_select.tpl" field=$poco_discovery}}
+ {{include file="field_select.tpl" field=$poco_discovery_since}}
+ {{include file="field_checkbox.tpl" field=$poco_local_search}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$performance}}</h3>
+ {{include file="field_checkbox.tpl" field=$only_tag_search}}
+ {{include file="field_input.tpl" field=$itemcache}}
+ {{include file="field_input.tpl" field=$itemcache_duration}}
+ {{include file="field_input.tpl" field=$max_comments}}
+ {{include file="field_checkbox.tpl" field=$proxy_disabled}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ <h3>{{$worker_title}}</h3>
+ {{include file="field_input.tpl" field=$maxloadavg}}
+ {{include file="field_input.tpl" field=$min_memory}}
+ {{include file="field_input.tpl" field=$worker_queues}}
+ {{include file="field_checkbox.tpl" field=$worker_dont_fork}}
+ {{include file="field_checkbox.tpl" field=$worker_fastlane}}
+ {{include file="field_checkbox.tpl" field=$worker_frontend}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
+
+ </form>
+
+ {{* separate form for relocate... *}}
+ <form action="{{$baseurl}}/admin/site" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+ <h3>{{$relocate}}</h3>
+ {{include file="field_input.tpl" field=$relocate_url}}
+ <input type="hidden" name="page_site" value="{{$submit|escape:'html'}}">
+ <div class="submit"><input type="submit" name="relocate" value="{{$submit|escape:'html'}}" /></div>
+ </form>
+
+</div>
--- /dev/null
+
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+{{if $showwarning}}
+ <div id="admin-warning-message-wrapper">
+ {{foreach $warningtext as $wt}}
+ <p class="warning-message">{{$wt}}</p>
+ {{/foreach}}
+ </div>
+{{/if}}
+
+ <dl>
+ <dt>{{$queues.label}}</dt>
+ <dd><a href="{{$baseurl}}/admin/queue">{{$queues.queue}}</a> - {{$queues.workerq}}</dd>
+ </dl>
+ <dl>
+ <dt>{{$pending.0}}</dt>
+ <dd>{{$pending.1}}</dt>
+ </dl>
+
+ <dl>
+ <dt>{{$users.0}}</dt>
+ <dd>{{$users.1}}</dd>
+ </dl>
+ {{foreach $accounts as $p}}
+ <dl>
+ <dt>{{$p.0}}</dt>
+ <dd>{{if $p.1}}{{$p.1}}{{else}}0{{/if}}</dd>
+ </dl>
+ {{/foreach}}
+
+
+ <dl>
+ <dt>{{$plugins.0}}</dt>
+
+ {{foreach $plugins.1 as $p}}
+ <dd><a href="/admin/plugins/{{$p}}/">{{$p}}</a></dd>
+ {{/foreach}}
+
+ </dl>
+
+ <dl>
+ <dt>{{$version.0}}</dt>
+ <dd> {{$platform}} '{{$codename}}' {{$version.1}} - {{$build}}</dt>
+ </dl>
+
+
+</div>
--- /dev/null
+
+<script>
+ function confirm_delete(uname){
+ return confirm( "{{$confirm_delete}}".format(uname));
+ }
+ function confirm_delete_multi(){
+ return confirm("{{$confirm_delete_multi}}");
+ }
+ function selectall(cls){
+ $("."+cls).attr('checked','checked');
+ return false;
+ }
+</script>
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/users" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ <h3>{{$h_pending}}</h3>
+ {{if $pending}}
+ <table id='pending'>
+ <thead>
+ <tr>
+ {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $pending as $u}}
+ <tr>
+ <td class="created">{{$u.created}}</td>
+ <td class="name">{{$u.name}}</td>
+ <td class="email">{{$u.email}}</td>
+ <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
+ <td class="tools">
+ <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='icon like'></span></a>
+ <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='icon dislike'></span></a>
+ </td>
+ </tr>
+ <tr>
+ <td class="pendingnote"><p><span>{{$pendingnotetext}}:</span> {{$u.note}}</p></td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny|escape:'html'}}"/> <input type="submit" name="page_users_approve" value="{{$approve|escape:'html'}}" /></div>
+ {{else}}
+ <p>{{$no_pending}}</p>
+ {{/if}}
+
+ <h3>{{$h_users}}</h3>
+ {{if $users}}
+ <table id='users'>
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_users as $th}}
+ <th>
+ <a href="{{$baseurl}}/admin/users/?o={{if $order_direction_users == "+"}}-{{/if}}{{$th.1}}">
+ {{if $order_users == $th.1}}
+ {{if $order_direction_users == "+"}}
+ ↓
+ {{else}}
+ ↑
+ {{/if}}
+ {{else}}
+ ↕
+ {{/if}}
+ {{$th.0}}</a>
+ </th>
+ {{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $users as $u}}
+ <tr>
+ <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
+ <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
+ <td class='email'>{{$u.email}}</td>
+ <td class='register_date'>{{$u.register_date}}</td>
+ <td class='login_date'>{{$u.login_date}}</td>
+ <td class='lastitem_date'>{{$u.lastitem_date}}</td>
+ <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
+ <td class="checkbox">
+ {{if $u.is_deletable}}
+ <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
+ {{else}}
+
+ {{/if}}
+ <td class="tools">
+ {{if $u.is_deletable}}
+ <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon block {{if $u.blocked==0}}dim{{/if}}'></span></a>
+ <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon drop'></span></a>
+ {{else}}
+
+ {{/if}}
+ </td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_block" value="{{$block|escape:'html'}}/{{$unblock|escape:'html'}}" /> <input type="submit" name="page_users_delete" value="{{$delete|escape:'html'}}" onclick="return confirm_delete_multi()" /></div>
+ {{else}}
+ NO USERS?!?
+ {{/if}}
+ </form>
+ {{if $deleted}}
+ <h3>{{$h_deleted}}</h3>
+ <table id='deleted'>
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_deleted as $th}}<th>{{$th}}</th>{{/foreach}}
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $deleted as $u}}
+ <tr>
+ <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
+ <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
+ <td class='email'>{{$u.email}}</td>
+ <td class='register_date'>{{$u.register_date}}</td>
+ <td class='login_date'>{{$u.login_date}}</td>
+ <td class='lastitem_date'>{{$u.lastitem_date}}</td>
+ <td class='login_date'>{{$u.deleted}}</td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ {{/if}}
+ <h3>{{$h_newuser}}</h3>
+ <form action="{{$baseurl}}/admin/users" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+ <table id='users'>
+ <tbody>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$newusername}}</td>
+ </tr>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$newusernickname}}</td>
+ </tr>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$newuseremail}}</td>
+ </tr>
+ </tbody>
+ </table>
+ <div class="submit"><input type="submit" name="add_new_user_submit" value="{{$submit|escape:'html'}}" /></div>
+ </form>
+</div>
--- /dev/null
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <h3>{{$logname}}</h3>
+ <div style="width:100%; height:400px; overflow: auto; "><pre>{{$data}}</pre></div>
+</div>
+++ /dev/null
-<script>
- // update pending count //
- $(function(){
-
- $("nav").bind('nav-update', function(e,data){
- var elm = $('#pending-update');
- var register = $(data).find('register').text();
- if (register=="0") { register=""; elm.hide();} else { elm.show(); }
- elm.html(register);
- });
- });
-</script>
-
-<h4><a href="{{$admurl}}">{{$admtxt}}</a></h4>
-<ul class='admin linklist'>
-{{foreach $subpages as $page}}
- <li class='admin link button {{$page.2}}'><a href='{{$page.0}}'>{{$page.1}}</a></li>
-{{/foreach}}
-</ul>
-
-{{if $admin.update}}
-<ul class='admin linklist'>
- <li class='admin link button {{$admin.update.2}}'><a href='{{$admin.update.0}}'>{{$admin.update.1}}</a></li>
- <li class='admin link button {{$admin.update.2}}'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
-</ul>
-{{/if}}
-
-
-{{if $admin.plugins_admin}}<h4>{{$plugadmtxt}}</h4>{{/if}}
-<ul class='admin linklist'>
- {{foreach $admin.plugins_admin as $l}}
- <li class='admin link button {{$l.2}}'><a href='{{$l.0}}'>{{$l.1}}</a></li>
- {{/foreach}}
-</ul>
-
-
-<h4>{{$logtxt}}</h4>
-<ul class='admin linklist'>
- <li class='admin link button {{$admin.logs.2}}'><a href='{{$admin.logs.0}}'>{{$admin.logs.1}}</a></li>
- <li class='admin link button {{$admin.viewlogs.2}}'><a href='{{$admin.viewlogs.0}}'>{{$admin.viewlogs.1}}</a></li>
-</ul>
-
-<h4>{{$diagnosticstxt}}</h4>
-<ul class='admin linklist'>
- <li class='admin link {{$admin.diagnostics_probe.2}}'><a href="{{$admin.diagnostics_probe.0}}">{{$admin.diagnostics_probe.1}}</a></li>
- <li class='admin link {{$admin.diagnostics_webfinger.2}}'><a href="{{$admin.diagnostics_webfinger.0}}">{{$admin.diagnostics_webfinger.1}}</a></li>
-</ul>
+++ /dev/null
-<script>
- function confirm_delete(uname){
- return confirm("{{$confirm_delete}}".format(uname));
- }
-</script>
-<div id="adminpage">
- <h1>{{$title}} - {{$page}}</h1>
- <p>{{$intro}}</p>
- <p>{{$public}}</p>
-
- <h2>{{$addtitle}}</h2>
- <form action="{{$baseurl}}/admin/blocklist" method="post">
- <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
- {{include file="field_input.tpl" field=$newdomain}}
- {{include file="field_input.tpl" field=$newreason}}
- <div class="submit"><input type="submit" name="page_blocklist_save" value="{{$submit}}" /></div>
- </form>
-
- {{if $entries}}
- <h2>{{$currenttitle}}</h2>
- <p>{{$currentintro}}</p>
- <form action="{{$baseurl}}/admin/blocklist" method="post">
- <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
- {{foreach $entries as $e}}
- {{include file="field_input.tpl" field=$e.domain}}
- {{include file="field_input.tpl" field=$e.reason}}
- {{include file="field_checkbox.tpl" field=$e.delete}}
- {{/foreach}}
- <div class="submit"><input type="submit" name="page_blocklist_edit" value="{{$savechanges}}" /></div>
- {{/if}}
- </form>
-
-</div>
+++ /dev/null
-<div id="adminpage">
- <h1>{{$title}} - {{$page}}</h1>
- <p>{{$intro1}}</p>
- <p>{{$intro2}}</p>
-</div>
-
-<form action="{{$baseurl}}/admin/deleteitem" method="post">
- <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
- {{include file="field_input.tpl" field=$deleteitemguid}}
- <div class="submit"><input type="submit" name="page_deleteitem_submit" value="{{$submit}}" /></div>
-</form>
+++ /dev/null
-<script src="{{$baseurl}}/library/Chart.js-1.0.2/Chart.min.js"></script>
-<canvas id="FederationChart" class="federation-graph"></canvas>
-<div id="adminpage">
- <h1>{{$title}} - {{$page}}</h1>
- <p>{{$intro}}</p>
- {{if not $autoactive}}
- <p class="error-message">{{$hint}}</p>
- {{/if}}
- <p>{{$legendtext}}
- <ul>
- {{foreach $counts as $c}}
- {{if $c[0]['total'] > 0}}
- <li>{{$c[0]['platform']}} ({{$c[0]['total']}})</li>
- {{/if}}
- {{/foreach}}
- </ul>
- </p>
-</div>
-<script>
-var FedData = [
-{{foreach $counts as $c}}
- { value: {{$c[0]['total']}}, label: "{{$c[0]['platform']}}", color: '{{$c[3]}}', highlight: "#EE90A1", },
-{{/foreach}}
-];
-var ctx = document.getElementById("FederationChart").getContext("2d");
-var myDoughnutChart = new Chart(ctx).Doughnut(FedData, { animateRotate : false, });
-</script>
-
-<table id="federation-stats">
-{{foreach $counts as $c}}
- {{if $c[0]['total'] > 0}}
- <tr>
- <th>{{$c[0]['platform']}}</th>
- <th><strong>{{$c[0]['total']}}</strong></td>
- <td>{{$c[0]['network']}}</td>
- </tr>
- <tr>
- <td colspan="3" class="federation-data">
- <canvas id="{{$c[2]}}Chart" class="federation-network-graph"></canvas>
- <script>
- var {{$c[2]}}data = [
- {{foreach $c[1] as $v}}
- { value: {{$v['total']}}, label: '{{$v['version']}}', color: "{{$c[3]}}", highlight: "#EE90A1",},
- {{/foreach}}
- ];
- var ctx = document.getElementById("{{$c[2]}}Chart").getContext("2d");
- var my{{$c[2]}}DoughnutChart = new Chart(ctx).Doughnut({{$c[2]}}data, {animateRotate : false,});
- </script>
- <ul class="federation-stats">
- {{foreach $c[1] as $v}}
- <li>{{if ($c[0]['platform']==='Friendica' and $version===$v['version']) }}<span class="version-match">{{$v['version']}}</span>{{else}}{{$v['version']}}{{/if}} ({{$v['total']}})</li>
- {{/foreach}}
- </ul>
- </td>
- </tr>
- {{/if}}
-{{/foreach}}
-</table>
+++ /dev/null
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/logs" method="post">
- <input type='hidden' name='form_security_token' value="{{$form_security_token|escape:'html'}}">
-
- {{include file="field_checkbox.tpl" field=$debugging}}
- {{include file="field_input.tpl" field=$logfile}}
- {{include file="field_select.tpl" field=$loglevel}}
-
- <div class="submit"><input type="submit" name="page_logs" value="{{$submit|escape:'html'}}" /></div>
-
- </form>
-
- <h2>{{$phpheader}}</h2>
- <div>
- <p>{{$phplogenabled}}<p>
- <p>{{$phphint}}</p>
- <pre>{{$phplogcode}}</pre>
- </div>
-
-</div>
+++ /dev/null
-
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
- {{if $pcount eq 0}}
- <div class="error-message">
- {{$noplugshint}}
- </div>
- {{else}}
- <a class="btn" href="{{$baseurl}}/admin/{{$function}}?a=r&t={{$form_security_token}}">{{$reload}}</a>
- <ul id='pluginslist'>
- {{foreach $plugins as $p}}
- <li class='plugin {{$p.1}}'>
- <a class='toggleplugin' href='{{$baseurl}}/admin/{{$function}}/{{$p.0}}?a=t&t={{$form_security_token}}' title="{{if $p.1==on}}Disable{{else}}Enable{{/if}}" ><span class='icon {{$p.1}}'></span></a>
- <a href='{{$baseurl}}/admin/{{$function}}/{{$p.0}}'><span class='name'>{{$p.2.name}}</span></a> - <span class="version">{{$p.2.version}}</span>
- {{if $p.2.experimental}} {{$experimental}} {{/if}}{{if $p.2.unsupported}} {{$unsupported}} {{/if}}
-
- <div class='desc'>{{$p.2.description}}</div>
- </li>
- {{/foreach}}
- </ul>
- {{/if}}
-</div>
+++ /dev/null
-
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <p><span class='toggleplugin icon {{$status}}'></span> {{$info.name}} - {{$info.version}} : <a href="{{$baseurl}}/admin/{{$function}}/{{$plugin}}/?a=t&t={{$form_security_token}}">{{$action}}</a></p>
- <p>{{$info.description}}</p>
-
- <p class="author">{{$str_author}}
- {{foreach $info.author as $a}}
- {{if $a.link}}<a href="{{$a.link}}">{{$a.name}}</a>{{else}}{{$a.name}}{{/if}},
- {{/foreach}}
- </p>
-
- <p class="maintainer">{{$str_maintainer}}
- {{foreach $info.maintainer as $a}}
- {{if $a.link}}<a href="{{$a.link}}">{{$a.name}}</a>{{else}}{{$a.name}}{{/if}},
- {{/foreach}}
- </p>
-
- {{if $screenshot}}
- <a href="{{$screenshot.0}}" class='screenshot'><img src="{{$screenshot.0}}" alt="{{$screenshot.1}}" /></a>
- {{/if}}
-
- {{if $admin_form}}
- <h3>{{$settings}}</h3>
- <form method="post" action="{{$baseurl}}/admin/{{$function}}/{{$plugin}}/">
- {{$admin_form}}
- </form>
- {{/if}}
-
- {{if $readme}}
- <h3>Readme</h3>
- <div id="plugin_readme">
- {{$readme}}
- </div>
- {{/if}}
-</div>
+++ /dev/null
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}} ({{$count}})</h1>
-
- <p>{{$info}}</p>
- <table>
- <tr>
- <th>{{$id_header}}</th>
- <th>{{$to_header}}</th>
- <th>{{$url_header}}</th>
- <th>{{$network_header}}</th>
- <th>{{$created_header}}</th>
- <th>{{$last_header}}</th>
- </tr>
- {{foreach $entries as $e}}
- <tr>
- <td>{{$e.id}}</td>
- <td>{{$e.name}}</td>
- <td><a href="{{$e.nurl}}">{{$e.nurl}}</a></td>
- <td>{{$e.network}}</td>
- <td>{{$e.created}}</td>
- <td>{{$e.last}}</td>
- </tr>
- {{/foreach}}
- </table>
-</div>
+++ /dev/null
-<h1>{{$title}}</h1>
-
-<form action="admin/features" method="post" autocomplete="off">
-<input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
-{{foreach $features as $g => $f}}
-<h3 class="settings-heading"><a href="javascript:;">{{$f.0}}</a></h3>
-
-<div class="settings-content-block">
- {{foreach $f.1 as $fcat}}
- {{include file="field_yesno.tpl" field=$fcat.0}}
- {{include file="field_yesno.tpl" field=$fcat.1}}
- {{/foreach}}
-
- <div class="settings-submit-wrapper" >
- <input type="submit" name="submit" class="settings-features-submit" value="{{$submit|escape:'html'}}" />
- </div>
-</div>
-{{/foreach}}
-
-</form>
+++ /dev/null
-<script>
- $(document).ready(function() {
- $('.settings-content-block').hide();
- $('.settings-heading').click(function(){
- $('.settings-content-block').hide();
- $(this).next('.settings-content-block').toggle();
- });
- });
-</script>
+++ /dev/null
-<script>
- $(function(){
-
- $("#cnftheme").click(function(){
- $.colorbox({
- width: 800,
- height: '90%',
- /*onOpen: function(){
- var theme = $("#id_theme :selected").val();
- $("#cnftheme").attr('href',"{{$baseurl}}/admin/themes/"+theme);
- },*/
- href: "{{$baseurl}}/admin/themes/" + $("#id_theme :selected").val(),
- onComplete: function(){
- $("div#fancybox-content form").submit(function(e){
- var url = $(this).attr('action');
- // can't get .serialize() to work...
- var data={};
- $(this).find("input").each(function(){
- data[$(this).attr('name')] = $(this).val();
- });
- $(this).find("select").each(function(){
- data[$(this).attr('name')] = $(this).children(":selected").val();
- });
- console.log(":)", url, data);
-
- $.post(url, data, function(data) {
- if(timer) clearTimeout(timer);
- NavUpdate();
- $.colorbox.close();
- })
-
- return false;
- });
-
- }
- });
- return false;
- });
- });
-</script>
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/site" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- {{include file="field_input.tpl" field=$sitename}}
- {{include file="field_input.tpl" field=$hostname}}
- {{include file="field_input.tpl" field=$sender_email}}
- {{include file="field_textarea.tpl" field=$banner}}
- {{include file="field_input.tpl" field=$shortcut_icon}}
- {{include file="field_input.tpl" field=$touch_icon}}
- {{include file="field_textarea.tpl" field=$info}}
- {{include file="field_select.tpl" field=$language}}
- {{include file="field_select.tpl" field=$theme}}
- {{include file="field_select.tpl" field=$theme_mobile}}
- {{include file="field_select.tpl" field=$ssl_policy}}
- {{if $ssl_policy.2 == 1}}{{include file="field_checkbox.tpl" field=$force_ssl}}{{/if}}
- {{include file="field_checkbox.tpl" field=$hide_help}}
- {{include file="field_select.tpl" field=$singleuser}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$registration}}</h3>
- {{include file="field_input.tpl" field=$register_text}}
- {{include file="field_select.tpl" field=$register_policy}}
- {{include file="field_input.tpl" field=$daily_registrations}}
- {{include file="field_checkbox.tpl" field=$no_multi_reg}}
- {{include file="field_checkbox.tpl" field=$no_openid}}
- {{include file="field_checkbox.tpl" field=$no_regfullname}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$upload}}</h3>
- {{include file="field_input.tpl" field=$maximagesize}}
- {{include file="field_input.tpl" field=$maximagelength}}
- {{include file="field_input.tpl" field=$jpegimagequality}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$corporate}}</h3>
- {{include file="field_input.tpl" field=$allowed_sites}}
- {{include file="field_input.tpl" field=$allowed_email}}
- {{include file="field_checkbox.tpl" field=$block_public}}
- {{include file="field_checkbox.tpl" field=$force_publish}}
- {{include file="field_select.tpl" field=$community_page_style}}
- {{include file="field_input.tpl" field=$max_author_posts_community_page}}
-
- {{include file="field_checkbox.tpl" field=$ostatus_disabled}}
- {{include file="field_checkbox.tpl" field=$ostatus_full_threads}}
-
- {{if $diaspora_able}}
- {{include file="field_checkbox.tpl" field=$diaspora_enabled}}
- {{else}}
- <div class='field checkbox' id='div_id_{{$diaspora_enabled.0}}'>
- <label for='id_{{$diaspora_enabled.0}}'>{{$diaspora_enabled.1}}</label>
- <span id='id_{{$diaspora_enabled.0}}'>{{$diaspora_not_able}}</span>
- </div>
- {{/if}}
- {{include file="field_checkbox.tpl" field=$dfrn_only}}
- {{include file="field_input.tpl" field=$global_directory}}
- <div class="submit"><input type="submit" name="republish_directory" value="{{$republish|escape:'html'}}" /></div>
- {{include file="field_checkbox.tpl" field=$newuser_private}}
- {{include file="field_checkbox.tpl" field=$enotify_no_content}}
- {{include file="field_checkbox.tpl" field=$private_addons}}
- {{include file="field_checkbox.tpl" field=$disable_embedded}}
- {{include file="field_checkbox.tpl" field=$allow_users_remote_self}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$advanced}}</h3>
- {{include file="field_select.tpl" field=$rino}}
- {{include file="field_checkbox.tpl" field=$verifyssl}}
- {{include file="field_input.tpl" field=$proxy}}
- {{include file="field_input.tpl" field=$proxyuser}}
- {{include file="field_input.tpl" field=$timeout}}
- {{include file="field_input.tpl" field=$maxloadavg_frontend}}
- {{include file="field_input.tpl" field=$optimize_max_tablesize}}
- {{include file="field_input.tpl" field=$optimize_fragmentation}}
- {{include file="field_input.tpl" field=$abandon_days}}
- {{include file="field_input.tpl" field=$temppath}}
- {{include file="field_input.tpl" field=$basepath}}
- {{include file="field_checkbox.tpl" field=$suppress_tags}}
- {{include file="field_checkbox.tpl" field=$nodeinfo}}
- {{include file="field_select.tpl" field=$check_new_version_url}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$portable_contacts}}</h3>
- {{include file="field_checkbox.tpl" field=$poco_completion}}
- {{include file="field_input.tpl" field=$poco_requery_days}}
- {{include file="field_select.tpl" field=$poco_discovery}}
- {{include file="field_select.tpl" field=$poco_discovery_since}}
- {{include file="field_checkbox.tpl" field=$poco_local_search}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$performance}}</h3>
- {{include file="field_checkbox.tpl" field=$only_tag_search}}
- {{include file="field_input.tpl" field=$itemcache}}
- {{include file="field_input.tpl" field=$itemcache_duration}}
- {{include file="field_input.tpl" field=$max_comments}}
- {{include file="field_checkbox.tpl" field=$proxy_disabled}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- <h3>{{$worker_title}}</h3>
- {{include file="field_input.tpl" field=$maxloadavg}}
- {{include file="field_input.tpl" field=$min_memory}}
- {{include file="field_input.tpl" field=$worker_queues}}
- {{include file="field_checkbox.tpl" field=$worker_dont_fork}}
- {{include file="field_checkbox.tpl" field=$worker_fastlane}}
- {{include file="field_checkbox.tpl" field=$worker_frontend}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit|escape:'html'}}" /></div>
-
- </form>
-
- {{* separate form for relocate... *}}
- <form action="{{$baseurl}}/admin/site" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
- <h3>{{$relocate}}</h3>
- {{include file="field_input.tpl" field=$relocate_url}}
- <input type="hidden" name="page_site" value="{{$submit|escape:'html'}}">
- <div class="submit"><input type="submit" name="relocate" value="{{$submit|escape:'html'}}" /></div>
- </form>
-
-</div>
+++ /dev/null
-
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-{{if $showwarning}}
- <div id="admin-warning-message-wrapper">
- {{foreach $warningtext as $wt}}
- <p class="warning-message">{{$wt}}</p>
- {{/foreach}}
- </div>
-{{/if}}
-
- <dl>
- <dt>{{$queues.label}}</dt>
- <dd><a href="{{$baseurl}}/admin/queue">{{$queues.queue}}</a> - {{$queues.workerq}}</dd>
- </dl>
- <dl>
- <dt>{{$pending.0}}</dt>
- <dd>{{$pending.1}}</dt>
- </dl>
-
- <dl>
- <dt>{{$users.0}}</dt>
- <dd>{{$users.1}}</dd>
- </dl>
- {{foreach $accounts as $p}}
- <dl>
- <dt>{{$p.0}}</dt>
- <dd>{{if $p.1}}{{$p.1}}{{else}}0{{/if}}</dd>
- </dl>
- {{/foreach}}
-
-
- <dl>
- <dt>{{$plugins.0}}</dt>
-
- {{foreach $plugins.1 as $p}}
- <dd><a href="/admin/plugins/{{$p}}/">{{$p}}</a></dd>
- {{/foreach}}
-
- </dl>
-
- <dl>
- <dt>{{$version.0}}</dt>
- <dd> {{$platform}} '{{$codename}}' {{$version.1}} - {{$build}}</dt>
- </dl>
-
-
-</div>
+++ /dev/null
-
-<script>
- function confirm_delete(uname){
- return confirm( "{{$confirm_delete}}".format(uname));
- }
- function confirm_delete_multi(){
- return confirm("{{$confirm_delete_multi}}");
- }
- function selectall(cls){
- $("."+cls).attr('checked','checked');
- return false;
- }
-</script>
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/users" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- <h3>{{$h_pending}}</h3>
- {{if $pending}}
- <table id='pending'>
- <thead>
- <tr>
- {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $pending as $u}}
- <tr>
- <td class="created">{{$u.created}}</td>
- <td class="name">{{$u.name}}</td>
- <td class="email">{{$u.email}}</td>
- <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
- <td class="tools">
- <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='icon like'></span></a>
- <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='icon dislike'></span></a>
- </td>
- </tr>
- <tr>
- <td class="pendingnote"><p><span>{{$pendingnotetext}}:</span> {{$u.note}}</p></td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny|escape:'html'}}"/> <input type="submit" name="page_users_approve" value="{{$approve|escape:'html'}}" /></div>
- {{else}}
- <p>{{$no_pending}}</p>
- {{/if}}
-
- <h3>{{$h_users}}</h3>
- {{if $users}}
- <table id='users'>
- <thead>
- <tr>
- <th></th>
- {{foreach $th_users as $th}}
- <th>
- <a href="{{$baseurl}}/admin/users/?o={{if $order_direction_users == "+"}}-{{/if}}{{$th.1}}">
- {{if $order_users == $th.1}}
- {{if $order_direction_users == "+"}}
- ↓
- {{else}}
- ↑
- {{/if}}
- {{else}}
- ↕
- {{/if}}
- {{$th.0}}</a>
- </th>
- {{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $users as $u}}
- <tr>
- <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
- <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
- <td class='email'>{{$u.email}}</td>
- <td class='register_date'>{{$u.register_date}}</td>
- <td class='login_date'>{{$u.login_date}}</td>
- <td class='lastitem_date'>{{$u.lastitem_date}}</td>
- <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
- <td class="checkbox">
- {{if $u.is_deletable}}
- <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
- {{else}}
-
- {{/if}}
- <td class="tools">
- {{if $u.is_deletable}}
- <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon block {{if $u.blocked==0}}dim{{/if}}'></span></a>
- <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon drop'></span></a>
- {{else}}
-
- {{/if}}
- </td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_block" value="{{$block|escape:'html'}}/{{$unblock|escape:'html'}}" /> <input type="submit" name="page_users_delete" value="{{$delete|escape:'html'}}" onclick="return confirm_delete_multi()" /></div>
- {{else}}
- NO USERS?!?
- {{/if}}
- </form>
- {{if $deleted}}
- <h3>{{$h_deleted}}</h3>
- <table id='deleted'>
- <thead>
- <tr>
- <th></th>
- {{foreach $th_deleted as $th}}<th>{{$th}}</th>{{/foreach}}
- </tr>
- </thead>
- <tbody>
- {{foreach $deleted as $u}}
- <tr>
- <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
- <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
- <td class='email'>{{$u.email}}</td>
- <td class='register_date'>{{$u.register_date}}</td>
- <td class='login_date'>{{$u.login_date}}</td>
- <td class='lastitem_date'>{{$u.lastitem_date}}</td>
- <td class='login_date'>{{$u.deleted}}</td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- {{/if}}
- <h3>{{$h_newuser}}</h3>
- <form action="{{$baseurl}}/admin/users" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
- <table id='users'>
- <tbody>
- <tr>
- <td>{{include file="field_input.tpl" field=$newusername}}</td>
- </tr>
- <tr>
- <td>{{include file="field_input.tpl" field=$newusernickname}}</td>
- </tr>
- <tr>
- <td>{{include file="field_input.tpl" field=$newuseremail}}</td>
- </tr>
- </tbody>
- </table>
- <div class="submit"><input type="submit" name="add_new_user_submit" value="{{$submit|escape:'html'}}" /></div>
- </form>
-</div>
+++ /dev/null
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <h3>{{$logname}}</h3>
- <div style="width:100%; height:400px; overflow: auto; "><pre>{{$data}}</pre></div>
-</div>
--- /dev/null
+<script type="text/javascript">
+ // update pending count //
+ $(function(){
+ $("nav").bind('nav-update', function(e,data){
+ var elm = $('#pending-update');
+ var register = $(data).find('register').text();
+ if (register=="0") { register = ""; }
+ elm.html(register);
+ });
+ });
+</script>
+
+<div class="widget">
+ <h3><a href="{{$admurl}}">{{$admtxt}}</a></h3>
+
+ <ul role="menu">
+ {{foreach $subpages as $name => $item}}
+ <li role="menuitem" class="{{$item.2}}">
+ <a href="{{$item.0}}" {{if $item.accesskey}}accesskey="{{$item.accesskey}}"{{/if}}>
+ {{$item.1}}
+ {{if $name == "users"}}
+ <span id="pending-update" class="badge pull-right"></span>
+ {{/if}}
+ </a>
+ </li>
+ {{/foreach}}
+ </ul>
+
+ {{if $admin.update}}
+ <ul role="menu">
+ <li role="menuitem" class="{{$admin.update.2}}">
+ <a href="{{$admin.update.0}}" {{if $admin.update.accesskey}}accesskey="{{$admin.update.accesskey}}"{{/if}}>
+ {{$admin.update.1}}
+ </a>
+ </li>
+ </ul>
+ {{/if}}
+</div>
+
+{{if $admin.plugins_admin}}
+<div class="widget">
+ <h3>{{$plugadmtxt}}</h3>
+ <ul role="menu">
+ {{foreach $admin.plugins_admin as $name => $item}}
+ <li role="menuitem" class="{{$item.2}}">
+ <a href="{{$item.0}}" {{if $item.accesskey}}accesskey="{{$item.accesskey}}"{{/if}}>
+ {{$item.1}}
+ </a>
+ </li>
+ {{/foreach}}
+ </ul>
+</div>
+{{/if}}
+
+<div class="widget">
+ <h3>{{$logtxt}}</h3>
+ <ul role="menu">
+ <li role="menuitem" class="{{$admin.logs.2}}">
+ <a href="{{$admin.logs.0}}" {{if $admin.logs.accesskey}}accesskey="{{$admin.logs.accesskey}}"{{/if}}>
+ {{$admin.logs.1}}
+ </a>
+ </li>
+ <li role="menuitem" class="{{$admin.viewlogs.2}}">
+ <a href="{{$admin.viewlogs.0}}" {{if $admin.viewlogs.accesskey}}accesskey="{{$admin.viewlogs.accesskey}}"{{/if}}>
+ {{$admin.viewlogs.1}}
+ </a>
+ </li>
+ </ul>
+</div>
+
+<div class="widget">
+ <h3>{{$diagnosticstxt}}</h3>
+ <ul role="menu">
+ <li role="menuitem" class="{{$admin.diagnostics_probe.2}}">
+ <a href="{{$admin.diagnostics_probe.0}}" {{if $admin.diagnostics_probe.accesskey}}accesskey="{{$admin.diagnostics_probe.accesskey}}"{{/if}}>
+ {{$admin.diagnostics_probe.1}}
+ </a>
+ </li>
+ <li role="menuitem" class="{{$admin.diagnostics_webfinger.2}}">
+ <a href="{{$admin.diagnostics_webfinger.0}}" {{if $admin.viewlogs.accesskey}}accesskey="{{$admin.diagnostics_webfinger.accesskey}}"{{/if}}>
+ {{$admin.diagnostics_webfinger.1}}
+ </a>
+ </li>
+ </ul>
+</div>
--- /dev/null
+
+<script>
+ function selectall(cls) {
+ $('.' + cls).prop('checked', true);
+ return false;
+ }
+ function selectnone(cls) {
+ $('.' + cls).prop('checked', false);
+ return false;
+ }
+</script>
+<div id="adminpage">
+ <h1>{{$title}} - {{$page}}</h1>
+ <p>{{$description}}</p>
+ <form action="{{$baseurl}}/admin/contactblock" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+
+ <h3>{{$h_contacts}}</h3>
+ {{if $contacts}}
+ <table id="contactblock" class="table table-condensed table-striped">
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_contacts as $th}}
+ <th>
+ {{$th}}
+ </th>
+ {{/foreach}}
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $contacts as $contact}}
+ <tr>
+ <td><input type="checkbox" class="contacts_ckbx" id="id_contact_{{$contact.id}}" name="contacts[]" value="{{$contact.id}}"/></td>
+ <td><img class="icon" src="{{$contact.micro}}" alt="{{$contact.nickname}}" title="{{$contact.addr}}"></td>
+ <td class="name">{{$contact.name}}</td>
+ <td class="addr" colspan="2"><a href="{{$contact.url}}" title="{{$contact.addr}}" >{{$contact.url}}</a></td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <p><a href="#" onclick="return selectall('contacts_ckbx');">{{$select_all}}</a> | <a href="#" onclick="return selectnone('contacts_ckbx');">{{$select_none}}</a></p>
+ {{$paginate}}
+ <div class="submit"><input type="submit" name="page_contactblock_unblock" value="{{$unblock|escape:'html'}}" /></div>
+ {{else}}
+ <p>{{$no_data|escape:'html'}}</p>
+ {{/if}}
+ </form>
+
+ <h3>{{$h_newblock}}</h3>
+ <form action="{{$baseurl}}/admin/contactblock" method="post">
+ <input type="hidden" name="form_security_token" value="{{$form_security_token}}">
+ <table id="contactblock">
+ <tbody>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$contacturl}}</td>
+ </tr>
+ </tbody>
+ </table>
+ <div class="submit"><input type="submit" name="page_contactblock_block" value="{{$submit|escape:'html'}}" /></div>
+ </form>
+</div>
+++ /dev/null
-<script type="text/javascript">
- // update pending count //
- $(function(){
- $("nav").bind('nav-update', function(e,data){
- var elm = $('#pending-update');
- var register = $(data).find('register').text();
- if (register=="0") { register = ""; }
- elm.html(register);
- });
- });
-</script>
-
-<div class="widget">
- <h3><a href="{{$admurl}}">{{$admtxt}}</a></h3>
-
- <ul role="menu">
- {{foreach $subpages as $name => $item}}
- <li role="menuitem" class="{{$item.2}}">
- <a href="{{$item.0}}" {{if $item.accesskey}}accesskey="{{$item.accesskey}}"{{/if}}>
- {{$item.1}}
- {{if $name == "users"}}
- <span id="pending-update" class="badge pull-right"></span>
- {{/if}}
- </a>
- </li>
- {{/foreach}}
- </ul>
-
- {{if $admin.update}}
- <ul role="menu">
- <li role="menuitem" class="{{$admin.update.2}}">
- <a href="{{$admin.update.0}}" {{if $admin.update.accesskey}}accesskey="{{$admin.update.accesskey}}"{{/if}}>
- {{$admin.update.1}}
- </a>
- </li>
- </ul>
- {{/if}}
-</div>
-
-{{if $admin.plugins_admin}}
-<div class="widget">
- <h3>{{$plugadmtxt}}</h3>
- <ul role="menu">
- {{foreach $admin.plugins_admin as $name => $item}}
- <li role="menuitem" class="{{$item.2}}">
- <a href="{{$item.0}}" {{if $item.accesskey}}accesskey="{{$item.accesskey}}"{{/if}}>
- {{$item.1}}
- </a>
- </li>
- {{/foreach}}
- </ul>
-</div>
-{{/if}}
-
-<div class="widget">
- <h3>{{$logtxt}}</h3>
- <ul role="menu">
- <li role="menuitem" class="{{$admin.logs.2}}">
- <a href="{{$admin.logs.0}}" {{if $admin.logs.accesskey}}accesskey="{{$admin.logs.accesskey}}"{{/if}}>
- {{$admin.logs.1}}
- </a>
- </li>
- <li role="menuitem" class="{{$admin.viewlogs.2}}">
- <a href="{{$admin.viewlogs.0}}" {{if $admin.viewlogs.accesskey}}accesskey="{{$admin.viewlogs.accesskey}}"{{/if}}>
- {{$admin.viewlogs.1}}
- </a>
- </li>
- </ul>
-</div>
-
-<div class="widget">
- <h3>{{$diagnosticstxt}}</h3>
- <ul role="menu">
- <li role="menuitem" class="{{$admin.diagnostics_probe.2}}">
- <a href="{{$admin.diagnostics_probe.0}}" {{if $admin.diagnostics_probe.accesskey}}accesskey="{{$admin.diagnostics_probe.accesskey}}"{{/if}}>
- {{$admin.diagnostics_probe.1}}
- </a>
- </li>
- <li role="menuitem" class="{{$admin.diagnostics_webfinger.2}}">
- <a href="{{$admin.diagnostics_webfinger.0}}" {{if $admin.viewlogs.accesskey}}accesskey="{{$admin.diagnostics_webfinger.accesskey}}"{{/if}}>
- {{$admin.diagnostics_webfinger.1}}
- </a>
- </li>
- </ul>
-</div>
--- /dev/null
+
+
+<h4><a href="{{$admurl}}">{{$admtxt}}</a></h4>
+<ul class='admin linklist'>
+ <li class='admin button {{$admin.site.2}}'><a href='{{$admin.site.0}}'>{{$admin.site.1}}</a></li>
+ <li class='admin button {{$admin.users.2}}'><a href='{{$admin.users.0}}'>{{$admin.users.1}}</a><span id='pending-update' title='{{$h_pending}}'></span></li>
+ <li class='admin button {{$admin.plugins.2}}'><a href='{{$admin.plugins.0}}'>{{$admin.plugins.1}}</a></li>
+ <li class='admin button {{$admin.themes.2}}'><a href='{{$admin.themes.0}}'>{{$admin.themes.1}}</a></li>
+ <li class='admin button {{$admin.dbsync.2}}'><a href='{{$admin.dbsync.0}}'>{{$admin.dbsync.1}}</a></li>
+</ul>
+
+{{if $admin.update}}
+<ul class='admin linklist'>
+ <li class='admin button {{$admin.update.2}}'><a href='{{$admin.update.0}}'>{{$admin.update.1}}</a></li>
+ <li class='admin button {{$admin.update.2}}'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
+</ul>
+{{/if}}
+
+
+{{if $admin.plugins_admin}}<h4>{{$plugadmtxt}}</h4>{{/if}}
+<ul class='admin linklist'>
+ {{foreach $admin.plugins_admin as $l}}
+ <li class='admin button {{$l.2}}'><a href='{{$l.0}}'>{{$l.1}}</a></li>
+ {{/foreach}}
+</ul>
+
+
+<h4>{{$logtxt}}</h4>
+<ul class='admin linklist'>
+ <li class='admin button {{$admin.logs.2}}'><a href='{{$admin.logs.0}}'>{{$admin.logs.1}}</a></li>
+</ul>
+
--- /dev/null
+
+
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/site" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ {{include file="field_input.tpl" field=$sitename}}
+ {{include file="field_textarea.tpl" field=$banner}}
+ {{include file="field_select.tpl" field=$language}}
+ {{include file="field_select.tpl" field=$theme}}
+ {{include file="field_select.tpl" field=$theme_mobile}}
+ {{include file="field_select.tpl" field=$ssl_policy}}
+ {{include file="field_checkbox.tpl" field=$old_share}}
+ {{include file="field_checkbox.tpl" field=$hide_help}}
+ {{include file="field_select.tpl" field=$singleuser}}
+
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ <h3>{{$registration}}</h3>
+ {{include file="field_input.tpl" field=$register_text}}
+ {{include file="field_select.tpl" field=$register_policy}}
+
+ {{include file="field_checkbox.tpl" field=$no_multi_reg}}
+ {{include file="field_checkbox.tpl" field=$no_openid}}
+ {{include file="field_checkbox.tpl" field=$no_regfullname}}
+
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ <h3>{{$upload}}</h3>
+ {{include file="field_input.tpl" field=$maximagesize}}
+ {{include file="field_input.tpl" field=$maximagelength}}
+ {{include file="field_input.tpl" field=$jpegimagequality}}
+
+ <h3>{{$corporate}}</h3>
+ {{include file="field_input.tpl" field=$allowed_sites}}
+ {{include file="field_input.tpl" field=$allowed_email}}
+ {{include file="field_checkbox.tpl" field=$block_public}}
+ {{include file="field_checkbox.tpl" field=$force_publish}}
+ {{include file="field_checkbox.tpl" field=$no_community_page}}
+ {{include file="field_checkbox.tpl" field=$ostatus_disabled}}
+ {{include file="field_checkbox.tpl" field=$diaspora_enabled}}
+ {{include file="field_checkbox.tpl" field=$dfrn_only}}
+ {{include file="field_input.tpl" field=$global_directory}}
+ {{include file="field_checkbox.tpl" field=$newuser_private}}
+ {{include file="field_checkbox.tpl" field=$enotify_no_content}}
+ {{include file="field_checkbox.tpl" field=$private_addons}}
+ {{include file="field_checkbox.tpl" field=$disable_embedded}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ <h3>{{$advanced}}</h3>
+ {{include file="field_checkbox.tpl" field=$verifyssl}}
+ {{include file="field_input.tpl" field=$proxy}}
+ {{include file="field_input.tpl" field=$proxyuser}}
+ {{include file="field_input.tpl" field=$timeout}}
+ {{include file="field_input.tpl" field=$delivery_interval}}
+ {{include file="field_input.tpl" field=$poll_interval}}
+ {{include file="field_input.tpl" field=$maxloadavg}}
+ {{include file="field_input.tpl" field=$abandon_days}}
+
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ </form>
+</div>
--- /dev/null
+<script>
+ function confirm_delete(uname){
+ return confirm( "{{$confirm_delete}}".format(uname));
+ }
+ function confirm_delete_multi(){
+ return confirm("{{$confirm_delete_multi}}");
+ }
+ function selectall(cls){
+ $("."+cls).attr('checked','checked');
+ return false;
+ }
+</script>
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/users" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ <h3>{{$h_pending}}</h3>
+ {{if $pending}}
+ <table id='pending'>
+ <thead>
+ <tr>
+ {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $pending as $u}}
+ <tr>
+ <td class="created">{{$u.created}}</td>
+ <td class="name">{{$u.name}}</td>
+ <td class="email">{{$u.email}}</td>
+ <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
+ <td class="tools">
+ <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='tool like'></span></a>
+ <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='tool dislike'></span></a>
+ </td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny}}"/> <input type="submit" name="page_users_approve" value="{{$approve}}" /></div>
+ {{else}}
+ <p>{{$no_pending}}</p>
+ {{/if}}
+
+
+
+
+ <h3>{{$h_users}}</h3>
+ {{if $users}}
+ <table id='users'>
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_users as $th}}<th>{{$th}}</th>{{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $users as $u}}
+ <tr>
+ <td><img src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
+ <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
+ <td class='email'>{{$u.email}}</td>
+ <td class='register_date'>{{$u.register_date}}</td>
+ <td class='login_date'>{{$u.login_date}}</td>
+ <td class='lastitem_date'>{{$u.lastitem_date}}</td>
+ <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
+ <td class="checkbox">
+ {{if $u.is_admin}}
+
+ {{else}}
+ <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
+ {{/if}}
+ <td class="tools">
+ {{if $u.is_admin}}
+
+ {{else}}
+ <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon block {{if $u.blocked==0}}dim{{/if}}'></span></a>
+ <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon drop'></span></a>
+ {{/if}}
+ </td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
+ {{else}}
+ NO USERS?!?
+ {{/if}}
+ </form>
+</div>
+++ /dev/null
-
-
-<h4><a href="{{$admurl}}">{{$admtxt}}</a></h4>
-<ul class='admin linklist'>
- <li class='admin button {{$admin.site.2}}'><a href='{{$admin.site.0}}'>{{$admin.site.1}}</a></li>
- <li class='admin button {{$admin.users.2}}'><a href='{{$admin.users.0}}'>{{$admin.users.1}}</a><span id='pending-update' title='{{$h_pending}}'></span></li>
- <li class='admin button {{$admin.plugins.2}}'><a href='{{$admin.plugins.0}}'>{{$admin.plugins.1}}</a></li>
- <li class='admin button {{$admin.themes.2}}'><a href='{{$admin.themes.0}}'>{{$admin.themes.1}}</a></li>
- <li class='admin button {{$admin.dbsync.2}}'><a href='{{$admin.dbsync.0}}'>{{$admin.dbsync.1}}</a></li>
-</ul>
-
-{{if $admin.update}}
-<ul class='admin linklist'>
- <li class='admin button {{$admin.update.2}}'><a href='{{$admin.update.0}}'>{{$admin.update.1}}</a></li>
- <li class='admin button {{$admin.update.2}}'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
-</ul>
-{{/if}}
-
-
-{{if $admin.plugins_admin}}<h4>{{$plugadmtxt}}</h4>{{/if}}
-<ul class='admin linklist'>
- {{foreach $admin.plugins_admin as $l}}
- <li class='admin button {{$l.2}}'><a href='{{$l.0}}'>{{$l.1}}</a></li>
- {{/foreach}}
-</ul>
-
-
-<h4>{{$logtxt}}</h4>
-<ul class='admin linklist'>
- <li class='admin button {{$admin.logs.2}}'><a href='{{$admin.logs.0}}'>{{$admin.logs.1}}</a></li>
-</ul>
-
+++ /dev/null
-
-
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/site" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- {{include file="field_input.tpl" field=$sitename}}
- {{include file="field_textarea.tpl" field=$banner}}
- {{include file="field_select.tpl" field=$language}}
- {{include file="field_select.tpl" field=$theme}}
- {{include file="field_select.tpl" field=$theme_mobile}}
- {{include file="field_select.tpl" field=$ssl_policy}}
- {{include file="field_checkbox.tpl" field=$old_share}}
- {{include file="field_checkbox.tpl" field=$hide_help}}
- {{include file="field_select.tpl" field=$singleuser}}
-
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- <h3>{{$registration}}</h3>
- {{include file="field_input.tpl" field=$register_text}}
- {{include file="field_select.tpl" field=$register_policy}}
-
- {{include file="field_checkbox.tpl" field=$no_multi_reg}}
- {{include file="field_checkbox.tpl" field=$no_openid}}
- {{include file="field_checkbox.tpl" field=$no_regfullname}}
-
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- <h3>{{$upload}}</h3>
- {{include file="field_input.tpl" field=$maximagesize}}
- {{include file="field_input.tpl" field=$maximagelength}}
- {{include file="field_input.tpl" field=$jpegimagequality}}
-
- <h3>{{$corporate}}</h3>
- {{include file="field_input.tpl" field=$allowed_sites}}
- {{include file="field_input.tpl" field=$allowed_email}}
- {{include file="field_checkbox.tpl" field=$block_public}}
- {{include file="field_checkbox.tpl" field=$force_publish}}
- {{include file="field_checkbox.tpl" field=$no_community_page}}
- {{include file="field_checkbox.tpl" field=$ostatus_disabled}}
- {{include file="field_checkbox.tpl" field=$diaspora_enabled}}
- {{include file="field_checkbox.tpl" field=$dfrn_only}}
- {{include file="field_input.tpl" field=$global_directory}}
- {{include file="field_checkbox.tpl" field=$newuser_private}}
- {{include file="field_checkbox.tpl" field=$enotify_no_content}}
- {{include file="field_checkbox.tpl" field=$private_addons}}
- {{include file="field_checkbox.tpl" field=$disable_embedded}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- <h3>{{$advanced}}</h3>
- {{include file="field_checkbox.tpl" field=$verifyssl}}
- {{include file="field_input.tpl" field=$proxy}}
- {{include file="field_input.tpl" field=$proxyuser}}
- {{include file="field_input.tpl" field=$timeout}}
- {{include file="field_input.tpl" field=$delivery_interval}}
- {{include file="field_input.tpl" field=$poll_interval}}
- {{include file="field_input.tpl" field=$maxloadavg}}
- {{include file="field_input.tpl" field=$abandon_days}}
-
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- </form>
-</div>
+++ /dev/null
-<script>
- function confirm_delete(uname){
- return confirm( "{{$confirm_delete}}".format(uname));
- }
- function confirm_delete_multi(){
- return confirm("{{$confirm_delete_multi}}");
- }
- function selectall(cls){
- $("."+cls).attr('checked','checked');
- return false;
- }
-</script>
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/users" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- <h3>{{$h_pending}}</h3>
- {{if $pending}}
- <table id='pending'>
- <thead>
- <tr>
- {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $pending as $u}}
- <tr>
- <td class="created">{{$u.created}}</td>
- <td class="name">{{$u.name}}</td>
- <td class="email">{{$u.email}}</td>
- <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
- <td class="tools">
- <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='tool like'></span></a>
- <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='tool dislike'></span></a>
- </td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny}}"/> <input type="submit" name="page_users_approve" value="{{$approve}}" /></div>
- {{else}}
- <p>{{$no_pending}}</p>
- {{/if}}
-
-
-
-
- <h3>{{$h_users}}</h3>
- {{if $users}}
- <table id='users'>
- <thead>
- <tr>
- <th></th>
- {{foreach $th_users as $th}}<th>{{$th}}</th>{{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $users as $u}}
- <tr>
- <td><img src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
- <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
- <td class='email'>{{$u.email}}</td>
- <td class='register_date'>{{$u.register_date}}</td>
- <td class='login_date'>{{$u.login_date}}</td>
- <td class='lastitem_date'>{{$u.lastitem_date}}</td>
- <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
- <td class="checkbox">
- {{if $u.is_admin}}
-
- {{else}}
- <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
- {{/if}}
- <td class="tools">
- {{if $u.is_admin}}
-
- {{else}}
- <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon block {{if $u.blocked==0}}dim{{/if}}'></span></a>
- <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon drop'></span></a>
- {{/if}}
- </td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
- {{else}}
- NO USERS?!?
- {{/if}}
- </form>
-</div>
--- /dev/null
+
+
+<h4><a href="{{$admurl}}">{{$admtxt}}</a></h4>
+<ul class='admin linklist'>
+ <li class='admin button {{$admin.site.2}}'><a href='{{$admin.site.0}}'>{{$admin.site.1}}</a></li>
+ <li class='admin button {{$admin.users.2}}'><a href='{{$admin.users.0}}'>{{$admin.users.1}}</a><span id='pending-update' title='{{$h_pending}}'></span></li>
+ <li class='admin button {{$admin.plugins.2}}'><a href='{{$admin.plugins.0}}'>{{$admin.plugins.1}}</a></li>
+ <li class='admin button {{$admin.themes.2}}'><a href='{{$admin.themes.0}}'>{{$admin.themes.1}}</a></li>
+ <li class='admin button {{$admin.dbsync.2}}'><a href='{{$admin.dbsync.0}}'>{{$admin.dbsync.1}}</a></li>
+</ul>
+
+{{if $admin.update}}
+<ul class='admin linklist'>
+ <li class='admin button {{$admin.update.2}}'><a href='{{$admin.update.0}}'>{{$admin.update.1}}</a></li>
+ <li class='admin button {{$admin.update.2}}'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
+</ul>
+{{/if}}
+
+
+{{if $admin.plugins_admin}}<h4>{{$plugadmtxt}}</h4>{{/if}}
+<ul class='admin linklist'>
+ {{foreach $admin.plugins_admin as $l}}
+ <li class='admin button {{$l.2}}'><a href='{{$l.0}}'>{{$l.1}}</a></li>
+ {{/foreach}}
+</ul>
+
+
+<h4>{{$logtxt}}</h4>
+<ul class='admin linklist'>
+ <li class='admin button {{$admin.logs.2}}'><a href='{{$admin.logs.0}}'>{{$admin.logs.1}}</a></li>
+</ul>
+
--- /dev/null
+
+
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/site" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ {{include file="field_input.tpl" field=$sitename}}
+ {{include file="field_textarea.tpl" field=$banner}}
+ {{include file="field_select.tpl" field=$language}}
+ {{include file="field_select.tpl" field=$theme}}
+ {{include file="field_select.tpl" field=$theme_mobile}}
+ {{include file="field_select.tpl" field=$ssl_policy}}
+ {{include file="field_checkbox.tpl" field=$old_share}}
+ {{include file="field_checkbox.tpl" field=$hide_help}}
+ {{include file="field_select.tpl" field=$singleuser}}
+
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ <h3>{{$registration}}</h3>
+ {{include file="field_input.tpl" field=$register_text}}
+ {{include file="field_select.tpl" field=$register_policy}}
+ {{include file="field_input.tpl" field=$daily_registrations}}
+ {{include file="field_checkbox.tpl" field=$no_multi_reg}}
+ {{include file="field_checkbox.tpl" field=$no_openid}}
+ {{include file="field_checkbox.tpl" field=$no_regfullname}}
+
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ <h3>{{$upload}}</h3>
+ {{include file="field_input.tpl" field=$maximagesize}}
+ {{include file="field_input.tpl" field=$maximagelength}}
+ {{include file="field_input.tpl" field=$jpegimagequality}}
+
+ <h3>{{$corporate}}</h3>
+ {{include file="field_input.tpl" field=$allowed_sites}}
+ {{include file="field_input.tpl" field=$allowed_email}}
+ {{include file="field_checkbox.tpl" field=$block_public}}
+ {{include file="field_checkbox.tpl" field=$force_publish}}
+ {{include file="field_checkbox.tpl" field=$no_community_page}}
+ {{include file="field_checkbox.tpl" field=$ostatus_disabled}}
+ {{include file="field_checkbox.tpl" field=$diaspora_enabled}}
+ {{include file="field_checkbox.tpl" field=$dfrn_only}}
+ {{include file="field_input.tpl" field=$global_directory}}
+ {{include file="field_checkbox.tpl" field=$newuser_private}}
+ {{include file="field_checkbox.tpl" field=$enotify_no_content}}
+ {{include file="field_checkbox.tpl" field=$private_addons}}
+ {{include file="field_checkbox.tpl" field=$disable_embedded}}
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ <h3>{{$advanced}}</h3>
+ {{include file="field_checkbox.tpl" field=$verifyssl}}
+ {{include file="field_input.tpl" field=$proxy}}
+ {{include file="field_input.tpl" field=$proxyuser}}
+ {{include file="field_input.tpl" field=$timeout}}
+ {{include file="field_input.tpl" field=$delivery_interval}}
+ {{include file="field_input.tpl" field=$poll_interval}}
+ {{include file="field_input.tpl" field=$maxloadavg}}
+ {{include file="field_input.tpl" field=$abandon_days}}
+ {{include file="field_input.tpl" field=$lockpath}}
+ {{include file="field_input.tpl" field=$temppath}}
+ {{include file="field_input.tpl" field=$basepath}}
+
+ <h3>{{$performance}}</h3>
+ {{include file="field_input.tpl" field=$itemcache}}
+ {{include file="field_input.tpl" field=$itemcache_duration}}
+
+
+ <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
+
+ </form>
+</div>
--- /dev/null
+<script>
+ function confirm_delete(uname){
+ return confirm( "{{$confirm_delete}}".format(uname));
+ }
+ function confirm_delete_multi(){
+ return confirm("{{$confirm_delete_multi}}");
+ }
+ function selectall(cls){
+ $("."+cls).attr('checked','checked');
+ return false;
+ }
+</script>
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/users" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ <h3>{{$h_pending}}</h3>
+ {{if $pending}}
+ <table id='pending'>
+ <thead>
+ <tr>
+ {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $pending as $u}}
+ <tr>
+ <td class="created">{{$u.created}}</td>
+ <td class="name">{{$u.name}}</td>
+ <td class="email">{{$u.email}}</td>
+ <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
+ <td class="tools">
+ <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='tool like'></span></a>
+ <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='tool dislike'></span></a>
+ </td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny}}"/> <input type="submit" name="page_users_approve" value="{{$approve}}" /></div>
+ {{else}}
+ <p>{{$no_pending}}</p>
+ {{/if}}
+
+
+
+
+ <h3>{{$h_users}}</h3>
+ {{if $users}}
+ <table id='users'>
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_users as $th}}<th>{{$th}}</th>{{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $users as $u}}
+ <tr>
+ <td><img src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
+ <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
+ <td class='email'>{{$u.email}}</td>
+ <td class='register_date'>{{$u.register_date}}</td>
+ <td class='login_date'>{{$u.login_date}}</td>
+ <td class='lastitem_date'>{{$u.lastitem_date}}</td>
+ <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
+ <td class="checkbox">
+ {{if $u.is_admin}}
+
+ {{else}}
+ <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
+ {{/if}}
+ <td class="tools">
+ {{if $u.is_admin}}
+
+ {{else}}
+ <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon block {{if $u.blocked==0}}dim{{/if}}'></span></a>
+ <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon drop'></span></a>
+ {{/if}}
+ </td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
+ {{else}}
+ NO USERS?!?
+ {{/if}}
+ </form>
+</div>
+++ /dev/null
-
-
-<h4><a href="{{$admurl}}">{{$admtxt}}</a></h4>
-<ul class='admin linklist'>
- <li class='admin button {{$admin.site.2}}'><a href='{{$admin.site.0}}'>{{$admin.site.1}}</a></li>
- <li class='admin button {{$admin.users.2}}'><a href='{{$admin.users.0}}'>{{$admin.users.1}}</a><span id='pending-update' title='{{$h_pending}}'></span></li>
- <li class='admin button {{$admin.plugins.2}}'><a href='{{$admin.plugins.0}}'>{{$admin.plugins.1}}</a></li>
- <li class='admin button {{$admin.themes.2}}'><a href='{{$admin.themes.0}}'>{{$admin.themes.1}}</a></li>
- <li class='admin button {{$admin.dbsync.2}}'><a href='{{$admin.dbsync.0}}'>{{$admin.dbsync.1}}</a></li>
-</ul>
-
-{{if $admin.update}}
-<ul class='admin linklist'>
- <li class='admin button {{$admin.update.2}}'><a href='{{$admin.update.0}}'>{{$admin.update.1}}</a></li>
- <li class='admin button {{$admin.update.2}}'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
-</ul>
-{{/if}}
-
-
-{{if $admin.plugins_admin}}<h4>{{$plugadmtxt}}</h4>{{/if}}
-<ul class='admin linklist'>
- {{foreach $admin.plugins_admin as $l}}
- <li class='admin button {{$l.2}}'><a href='{{$l.0}}'>{{$l.1}}</a></li>
- {{/foreach}}
-</ul>
-
-
-<h4>{{$logtxt}}</h4>
-<ul class='admin linklist'>
- <li class='admin button {{$admin.logs.2}}'><a href='{{$admin.logs.0}}'>{{$admin.logs.1}}</a></li>
-</ul>
-
+++ /dev/null
-
-
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/site" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- {{include file="field_input.tpl" field=$sitename}}
- {{include file="field_textarea.tpl" field=$banner}}
- {{include file="field_select.tpl" field=$language}}
- {{include file="field_select.tpl" field=$theme}}
- {{include file="field_select.tpl" field=$theme_mobile}}
- {{include file="field_select.tpl" field=$ssl_policy}}
- {{include file="field_checkbox.tpl" field=$old_share}}
- {{include file="field_checkbox.tpl" field=$hide_help}}
- {{include file="field_select.tpl" field=$singleuser}}
-
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- <h3>{{$registration}}</h3>
- {{include file="field_input.tpl" field=$register_text}}
- {{include file="field_select.tpl" field=$register_policy}}
- {{include file="field_input.tpl" field=$daily_registrations}}
- {{include file="field_checkbox.tpl" field=$no_multi_reg}}
- {{include file="field_checkbox.tpl" field=$no_openid}}
- {{include file="field_checkbox.tpl" field=$no_regfullname}}
-
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- <h3>{{$upload}}</h3>
- {{include file="field_input.tpl" field=$maximagesize}}
- {{include file="field_input.tpl" field=$maximagelength}}
- {{include file="field_input.tpl" field=$jpegimagequality}}
-
- <h3>{{$corporate}}</h3>
- {{include file="field_input.tpl" field=$allowed_sites}}
- {{include file="field_input.tpl" field=$allowed_email}}
- {{include file="field_checkbox.tpl" field=$block_public}}
- {{include file="field_checkbox.tpl" field=$force_publish}}
- {{include file="field_checkbox.tpl" field=$no_community_page}}
- {{include file="field_checkbox.tpl" field=$ostatus_disabled}}
- {{include file="field_checkbox.tpl" field=$diaspora_enabled}}
- {{include file="field_checkbox.tpl" field=$dfrn_only}}
- {{include file="field_input.tpl" field=$global_directory}}
- {{include file="field_checkbox.tpl" field=$newuser_private}}
- {{include file="field_checkbox.tpl" field=$enotify_no_content}}
- {{include file="field_checkbox.tpl" field=$private_addons}}
- {{include file="field_checkbox.tpl" field=$disable_embedded}}
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- <h3>{{$advanced}}</h3>
- {{include file="field_checkbox.tpl" field=$verifyssl}}
- {{include file="field_input.tpl" field=$proxy}}
- {{include file="field_input.tpl" field=$proxyuser}}
- {{include file="field_input.tpl" field=$timeout}}
- {{include file="field_input.tpl" field=$delivery_interval}}
- {{include file="field_input.tpl" field=$poll_interval}}
- {{include file="field_input.tpl" field=$maxloadavg}}
- {{include file="field_input.tpl" field=$abandon_days}}
- {{include file="field_input.tpl" field=$lockpath}}
- {{include file="field_input.tpl" field=$temppath}}
- {{include file="field_input.tpl" field=$basepath}}
-
- <h3>{{$performance}}</h3>
- {{include file="field_input.tpl" field=$itemcache}}
- {{include file="field_input.tpl" field=$itemcache_duration}}
-
-
- <div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
-
- </form>
-</div>
+++ /dev/null
-<script>
- function confirm_delete(uname){
- return confirm( "{{$confirm_delete}}".format(uname));
- }
- function confirm_delete_multi(){
- return confirm("{{$confirm_delete_multi}}");
- }
- function selectall(cls){
- $("."+cls).attr('checked','checked');
- return false;
- }
-</script>
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/users" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- <h3>{{$h_pending}}</h3>
- {{if $pending}}
- <table id='pending'>
- <thead>
- <tr>
- {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $pending as $u}}
- <tr>
- <td class="created">{{$u.created}}</td>
- <td class="name">{{$u.name}}</td>
- <td class="email">{{$u.email}}</td>
- <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
- <td class="tools">
- <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='tool like'></span></a>
- <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='tool dislike'></span></a>
- </td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny}}"/> <input type="submit" name="page_users_approve" value="{{$approve}}" /></div>
- {{else}}
- <p>{{$no_pending}}</p>
- {{/if}}
-
-
-
-
- <h3>{{$h_users}}</h3>
- {{if $users}}
- <table id='users'>
- <thead>
- <tr>
- <th></th>
- {{foreach $th_users as $th}}<th>{{$th}}</th>{{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $users as $u}}
- <tr>
- <td><img src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
- <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
- <td class='email'>{{$u.email}}</td>
- <td class='register_date'>{{$u.register_date}}</td>
- <td class='login_date'>{{$u.login_date}}</td>
- <td class='lastitem_date'>{{$u.lastitem_date}}</td>
- <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
- <td class="checkbox">
- {{if $u.is_admin}}
-
- {{else}}
- <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
- {{/if}}
- <td class="tools">
- {{if $u.is_admin}}
-
- {{else}}
- <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon block {{if $u.blocked==0}}dim{{/if}}'></span></a>
- <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon drop'></span></a>
- {{/if}}
- </td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
- {{else}}
- NO USERS?!?
- {{/if}}
- </form>
-</div>
--- /dev/null
+
+<script>
+ function confirm_delete(uname){
+ return confirm( "{{$confirm_delete}}".format(uname));
+ }
+ function confirm_delete_multi(){
+ return confirm("{{$confirm_delete_multi}}");
+ }
+ function selectall(cls){
+ $("."+cls).attr('checked','checked');
+ return false;
+ }
+</script>
+<div id='adminpage'>
+ <h1>{{$title}} - {{$page}}</h1>
+
+ <form action="{{$baseurl}}/admin/users" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+
+ <h3>{{$h_pending}}</h3>
+ {{if $pending}}
+ <table id='pending'>
+ <thead>
+ <tr>
+ {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $pending as $u}}
+ <tr>
+ <td class="created">{{$u.created}}</td>
+ <td class="name">{{$u.name}}</td>
+ <td class="email">{{$u.email}}</td>
+ <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
+ <td class="tools">
+ <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='icon like'></span></a>
+ <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='icon dislike'></span></a>
+ </td>
+ </tr>
+ <tr>
+ <td class="pendingnote"><p><span>{{$pendingnotetext}}:</span> {{$u.note}}</p></td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny}}"/> <input type="submit" name="page_users_approve" value="{{$approve}}" /></div>
+ {{else}}
+ <p>{{$no_pending}}</p>
+ {{/if}}
+
+ <h3>{{$h_users}}</h3>
+ {{if $users}}
+ <table id='users'>
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_users as $th}}
+ <th>
+ <a href="{{$baseurl}}/admin/users/?o={{if $order_direction_users == "+"}}-{{/if}}{{$th.1}}">
+ {{if $order_users == $th.1}}
+ {{if $order_direction_users == "+"}}
+ ↓
+ {{else}}
+ ↑
+ {{/if}}
+ {{else}}
+ ↕
+ {{/if}}
+ {{$th.0}}</a>
+ </th>
+ {{/foreach}}
+ <th></th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $users as $u}}
+ <tr>
+ <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
+ <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
+ <td class='email'>{{$u.email}}</td>
+ <td class='register_date'>{{$u.register_date}}</td>
+ <td class='login_date'>{{$u.login_date}}</td>
+ <td class='lastitem_date'>{{$u.lastitem_date}}</td>
+ <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
+ <td class="checkbox">
+ {{if $u.is_deletable}}
+ <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
+ {{else}}
+
+ {{/if}}
+ <td class="tools">
+ {{if $u.is_deletable}}
+ <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon {{if $u.blocked==0}}unlock{{else}}lock{{/if}}'></span></a>
+ <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon delete'></span></a>
+ {{else}}
+
+ {{/if}}
+ </td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
+ <div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
+ {{else}}
+ NO USERS?!?
+ {{/if}}
+ </form>
+ {{if $deleted}}
+ <h3>{{$h_deleted}}</h3>
+ <table id='deleted'>
+ <thead>
+ <tr>
+ <th></th>
+ {{foreach $th_deleted as $th}}<th>{{$th}}</th>{{/foreach}}
+ </tr>
+ </thead>
+ <tbody>
+ {{foreach $deleted as $u}}
+ <tr>
+ <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
+ <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
+ <td class='email'>{{$u.email}}</td>
+ <td class='register_date'>{{$u.register_date}}</td>
+ <td class='login_date'>{{$u.login_date}}</td>
+ <td class='lastitem_date'>{{$u.lastitem_date}}</td>
+ <td class='login_date'>{{$u.deleted}}</td>
+ </tr>
+ {{/foreach}}
+ </tbody>
+ </table>
+ {{/if}}
+ <h3>{{$h_newuser}}</h3>
+ <form action="{{$baseurl}}/admin/users" method="post">
+ <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
+ <table id='users'>
+ <tbody>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$newusername}}</td>
+ </tr>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$newusernickname}}</td>
+ </tr>
+ <tr>
+ <td>{{include file="field_input.tpl" field=$newuseremail}}</td>
+ </tr>
+ </tbody>
+ </table>
+ <div class="submit"><input type="submit" name="add_new_user_submit" value="{{$submit}}" /></div>
+ </form>
+</div>
+++ /dev/null
-
-<script>
- function confirm_delete(uname){
- return confirm( "{{$confirm_delete}}".format(uname));
- }
- function confirm_delete_multi(){
- return confirm("{{$confirm_delete_multi}}");
- }
- function selectall(cls){
- $("."+cls).attr('checked','checked');
- return false;
- }
-</script>
-<div id='adminpage'>
- <h1>{{$title}} - {{$page}}</h1>
-
- <form action="{{$baseurl}}/admin/users" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
-
- <h3>{{$h_pending}}</h3>
- {{if $pending}}
- <table id='pending'>
- <thead>
- <tr>
- {{foreach $th_pending as $th}}<th>{{$th}}</th>{{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $pending as $u}}
- <tr>
- <td class="created">{{$u.created}}</td>
- <td class="name">{{$u.name}}</td>
- <td class="email">{{$u.email}}</td>
- <td class="checkbox"><input type="checkbox" class="pending_ckbx" id="id_pending_{{$u.hash}}" name="pending[]" value="{{$u.hash}}" /></td>
- <td class="tools">
- <a href="{{$baseurl}}/regmod/allow/{{$u.hash}}" title='{{$approve}}'><span class='icon like'></span></a>
- <a href="{{$baseurl}}/regmod/deny/{{$u.hash}}" title='{{$deny}}'><span class='icon dislike'></span></a>
- </td>
- </tr>
- <tr>
- <td class="pendingnote"><p><span>{{$pendingnotetext}}:</span> {{$u.note}}</p></td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('pending_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_deny" value="{{$deny}}"/> <input type="submit" name="page_users_approve" value="{{$approve}}" /></div>
- {{else}}
- <p>{{$no_pending}}</p>
- {{/if}}
-
- <h3>{{$h_users}}</h3>
- {{if $users}}
- <table id='users'>
- <thead>
- <tr>
- <th></th>
- {{foreach $th_users as $th}}
- <th>
- <a href="{{$baseurl}}/admin/users/?o={{if $order_direction_users == "+"}}-{{/if}}{{$th.1}}">
- {{if $order_users == $th.1}}
- {{if $order_direction_users == "+"}}
- ↓
- {{else}}
- ↑
- {{/if}}
- {{else}}
- ↕
- {{/if}}
- {{$th.0}}</a>
- </th>
- {{/foreach}}
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- {{foreach $users as $u}}
- <tr>
- <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
- <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
- <td class='email'>{{$u.email}}</td>
- <td class='register_date'>{{$u.register_date}}</td>
- <td class='login_date'>{{$u.login_date}}</td>
- <td class='lastitem_date'>{{$u.lastitem_date}}</td>
- <td class='login_date'>{{$u.page_flags}} {{if $u.is_admin}}({{$siteadmin}}){{/if}} {{if $u.account_expired}}({{$accountexpired}}){{/if}}</td>
- <td class="checkbox">
- {{if $u.is_deletable}}
- <input type="checkbox" class="users_ckbx" id="id_user_{{$u.uid}}" name="user[]" value="{{$u.uid}}"/></td>
- {{else}}
-
- {{/if}}
- <td class="tools">
- {{if $u.is_deletable}}
- <a href="{{$baseurl}}/admin/users/block/{{$u.uid}}?t={{$form_security_token}}" title='{{if $u.blocked}}{{$unblock}}{{else}}{{$block}}{{/if}}'><span class='icon {{if $u.blocked==0}}unlock{{else}}lock{{/if}}'></span></a>
- <a href="{{$baseurl}}/admin/users/delete/{{$u.uid}}?t={{$form_security_token}}" title='{{$delete}}' onclick="return confirm_delete('{{$u.name}}')"><span class='icon delete'></span></a>
- {{else}}
-
- {{/if}}
- </td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- <div class='selectall'><a href='#' onclick="return selectall('users_ckbx');">{{$select_all}}</a></div>
- <div class="submit"><input type="submit" name="page_users_block" value="{{$block}}/{{$unblock}}" /> <input type="submit" name="page_users_delete" value="{{$delete}}" onclick="return confirm_delete_multi()" /></div>
- {{else}}
- NO USERS?!?
- {{/if}}
- </form>
- {{if $deleted}}
- <h3>{{$h_deleted}}</h3>
- <table id='deleted'>
- <thead>
- <tr>
- <th></th>
- {{foreach $th_deleted as $th}}<th>{{$th}}</th>{{/foreach}}
- </tr>
- </thead>
- <tbody>
- {{foreach $deleted as $u}}
- <tr>
- <td><img class='icon' src="{{$u.micro}}" alt="{{$u.nickname}}" title="{{$u.nickname}}"></td>
- <td class='name'><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
- <td class='email'>{{$u.email}}</td>
- <td class='register_date'>{{$u.register_date}}</td>
- <td class='login_date'>{{$u.login_date}}</td>
- <td class='lastitem_date'>{{$u.lastitem_date}}</td>
- <td class='login_date'>{{$u.deleted}}</td>
- </tr>
- {{/foreach}}
- </tbody>
- </table>
- {{/if}}
- <h3>{{$h_newuser}}</h3>
- <form action="{{$baseurl}}/admin/users" method="post">
- <input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
- <table id='users'>
- <tbody>
- <tr>
- <td>{{include file="field_input.tpl" field=$newusername}}</td>
- </tr>
- <tr>
- <td>{{include file="field_input.tpl" field=$newusernickname}}</td>
- </tr>
- <tr>
- <td>{{include file="field_input.tpl" field=$newuseremail}}</td>
- </tr>
- </tbody>
- </table>
- <div class="submit"><input type="submit" name="add_new_user_submit" value="{{$submit}}" /></div>
- </form>
-</div>