From 77eb9bcfa04faee0fbf20a1d9fae90bdf0dcbcc3 Mon Sep 17 00:00:00 2001 From: Andrew Manning Date: Wed, 18 May 2016 21:32:23 -0400 Subject: Link new plugins when updating repos via admin/plugins --- Zotlabs/Module/Admin.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 9b54a4081..cb843e212 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1758,6 +1758,18 @@ class Admin extends \Zotlabs\Web\Controller { $git = new GitRepo('sys', null, false, $repoName, $repoDir); try { if ($git->pull()) { + $files = array_diff(scandir($repoDir), array('.', '..')); + foreach ($files as $file) { + if (is_dir($repoDir . '/' . $file) && $file !== '.git') { + $source = '../extend/addon/' . $repoName . '/' . $file; + $target = realpath(__DIR__ . '/../../addon/') . '/' . $file; + unlink($target); + if (!symlink($source, $target)) { + logger('Error linking addons to /addon'); + json_return_and_die(array('message' => 'Error linking addons to /addon', 'success' => false)); + } + } + } json_return_and_die(array('message' => 'Repo updated.', 'success' => true)); } else { json_return_and_die(array('message' => 'Error updating addon repo.', 'success' => false)); -- cgit v1.2.3 From d5ca889cf5d479135560b1f915fb5d3986b28c65 Mon Sep 17 00:00:00 2001 From: Andrew Manning Date: Thu, 19 May 2016 07:09:13 -0400 Subject: Replace text strings for translation support --- Zotlabs/Module/Admin.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index cb843e212..4d052cdf8 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1408,7 +1408,9 @@ class Admin extends \Zotlabs\Web\Controller { '$plugins' => $plugins, '$disabled' => t('Disabled - version incompatibility'), '$form_security_token' => get_form_security_token('admin_plugins'), - '$addrepo' => t('Add Plugin Repo'), + '$managerepos' => t('Manage Repos'), + '$installedtitle' => t('Installed Plugin Repositories'), + '$addnewrepotitle' => t('Install a New Plugin Repository'), '$expandform' => false, '$form' => $admin_plugins_add_repo_form, '$newRepoModal' => $newRepoModal, -- cgit v1.2.3 From a2cec8899ad191b47d116f4ea124be6bd5b05472 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 19 May 2016 22:26:37 -0700 Subject: daemon conversion continued... --- Zotlabs/Module/Admin.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 4d052cdf8..0a167b273 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1082,7 +1082,7 @@ class Admin extends \Zotlabs\Web\Controller { intval(PAGE_CENSORED), intval( $uid ) ); - proc_run('php','include/directory.php',$uid,'nopush'); + \Zotlabs\Daemon\Master::Summon(array('Directory',$uid,'nopush')); } notice( sprintf( tt("%s channel censored/uncensored", "%s channels censored/uncensored", count($channels)), count($channels)) ); } @@ -1141,7 +1141,7 @@ class Admin extends \Zotlabs\Web\Controller { intval($pflags), intval( $uid ) ); - proc_run('php','include/directory.php',$uid,'nopush'); + \Zotlabs\Daemon\Master::Summon(array('Directory',$uid,'nopush')); notice( sprintf( (($pflags & PAGE_CENSORED) ? t("Channel '%s' censored"): t("Channel '%s' uncensored")) , $channel[0]['channel_name'] . ' (' . $channel[0]['channel_address'] . ')' ) . EOL); }; break; -- cgit v1.2.3 From 598baa1b32b59b187fbdc7012d23831208d0ebbd Mon Sep 17 00:00:00 2001 From: Andrew Manning Date: Sat, 21 May 2016 12:55:17 -0400 Subject: Moved git repository storage to store/[data]/git to avoid collision with a channel named git. Fixed bug where temp repo folder was never created. --- Zotlabs/Module/Admin.php | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 0a167b273..42a91107d 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1735,7 +1735,7 @@ class Admin extends \Zotlabs\Web\Controller { } else { json_return_and_die(array('message' => 'No repo name provided.', 'success' => false)); } - $extendDir = __DIR__ . '/../../store/git/sys/extend'; + $extendDir = __DIR__ . '/../../store/[data]/git/sys/extend'; $addonDir = $extendDir . '/addon'; if (!file_exists($extendDir)) { if (!mkdir($extendDir, 0770, true)) { @@ -1748,7 +1748,7 @@ class Admin extends \Zotlabs\Web\Controller { } } } - $repoDir = __DIR__ . '/../../store/git/sys/extend/addon/' . $repoName; + $repoDir = __DIR__ . '/../../store/[data]/git/sys/extend/addon/' . $repoName; if (!is_dir($repoDir)) { logger('Repo directory does not exist: ' . $repoDir); json_return_and_die(array('message' => 'Invalid addon repo.', 'success' => false)); @@ -1785,7 +1785,7 @@ class Admin extends \Zotlabs\Web\Controller { } else { json_return_and_die(array('message' => 'No repo name provided.', 'success' => false)); } - $extendDir = __DIR__ . '/../../store/git/sys/extend'; + $extendDir = __DIR__ . '/../../store/[data]/git/sys/extend'; $addonDir = $extendDir . '/addon'; if (!file_exists($extendDir)) { if (!mkdir($extendDir, 0770, true)) { @@ -1798,7 +1798,7 @@ class Admin extends \Zotlabs\Web\Controller { } } } - $repoDir = __DIR__ . '/../../store/git/sys/extend/addon/' . $repoName; + $repoDir = __DIR__ . '/../../store/[data]/git/sys/extend/addon/' . $repoName; if (!is_dir($repoDir)) { logger('Repo directory does not exist: ' . $repoDir); json_return_and_die(array('message' => 'Invalid addon repo.', 'success' => false)); @@ -1818,7 +1818,7 @@ class Admin extends \Zotlabs\Web\Controller { if (array_key_exists('repoURL', $_REQUEST)) { require __DIR__ . '/../../library/PHPGit.autoload.php'; // Load PHPGit dependencies $repoURL = $_REQUEST['repoURL']; - $extendDir = __DIR__ . '/../../store/git/sys/extend'; + $extendDir = __DIR__ . '/../../store/[data]/git/sys/extend'; $addonDir = $extendDir . '/addon'; if (!file_exists($extendDir)) { if (!mkdir($extendDir, 0770, true)) { @@ -1846,7 +1846,7 @@ class Admin extends \Zotlabs\Web\Controller { json_return_and_die(array('message' => 'Invalid git repo', 'success' => false)); } $repoDir = $addonDir . '/' . $repoName; - $tempRepoBaseDir = __DIR__ . '/../../store/git/sys/temp/'; + $tempRepoBaseDir = __DIR__ . '/../../store/[data]/git/sys/temp/'; $tempAddonDir = $tempRepoBaseDir . $repoName; if (!is_writable($addonDir) || !is_writable($tempAddonDir)) { @@ -1880,9 +1880,9 @@ class Admin extends \Zotlabs\Web\Controller { if (array_key_exists('repoURL', $_REQUEST)) { require __DIR__ . '/../../library/PHPGit.autoload.php'; // Load PHPGit dependencies $repoURL = $_REQUEST['repoURL']; - $extendDir = __DIR__ . '/../../store/git/sys/extend'; + $extendDir = __DIR__ . '/../../store/[data]/git/sys/extend'; $addonDir = $extendDir . '/addon'; - $tempAddonDir = __DIR__ . '/../../store/git/sys/temp'; + $tempAddonDir = __DIR__ . '/../../store/[data]/git/sys/temp'; if (!file_exists($extendDir)) { if (!mkdir($extendDir, 0770, true)) { logger('Error creating extend folder: ' . $extendDir); @@ -1894,6 +1894,12 @@ class Admin extends \Zotlabs\Web\Controller { } } } + if (!is_dir($tempAddonDir)) { + if (!mkdir($tempAddonDir, 0770, true)) { + logger('Error creating temp plugin repo folder: ' . $extendDir); + json_return_and_die(array('message' => 'Error creating temp plugin repo folder: ' . $extendDir, 'success' => false)); + } + } $repoName = null; if (array_key_exists('repoName', $_REQUEST) && $_REQUEST['repoName'] !== '') { $repoName = $_REQUEST['repoName']; -- cgit v1.2.3 From 7a526fa8a9934fb6f193a11815bcb03490acb2c6 Mon Sep 17 00:00:00 2001 From: Andrew Manning Date: Sat, 21 May 2016 12:58:05 -0400 Subject: Temp repo folder error message correction --- Zotlabs/Module/Admin.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 42a91107d..cd6e45e9f 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1896,8 +1896,8 @@ class Admin extends \Zotlabs\Web\Controller { } if (!is_dir($tempAddonDir)) { if (!mkdir($tempAddonDir, 0770, true)) { - logger('Error creating temp plugin repo folder: ' . $extendDir); - json_return_and_die(array('message' => 'Error creating temp plugin repo folder: ' . $extendDir, 'success' => false)); + logger('Error creating temp plugin repo folder: ' . $tempAddonDir); + json_return_and_die(array('message' => 'Error creating temp plugin repo folder: ' . $tempAddonDir, 'success' => false)); } } $repoName = null; -- cgit v1.2.3 From de006771c7fe92a889d759c2c75c1473c420ad47 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Sun, 22 May 2016 16:54:30 -0700 Subject: renamed include files identity.php (channel.php) and Contact.php (connections.php) --- Zotlabs/Module/Admin.php | 4 ---- 1 file changed, 4 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index cd6e45e9f..172b109c8 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -902,7 +902,6 @@ class Admin extends \Zotlabs\Web\Controller { } // account delete button was submitted if (x($_POST, 'page_users_delete')) { - require_once('include/Contact.php'); foreach ($users as $uid){ account_remove($uid, true, false); } @@ -951,7 +950,6 @@ class Admin extends \Zotlabs\Web\Controller { switch (argv(2)){ case 'delete': // delete user - require_once('include/Contact.php'); account_remove($uid,true,false); notice( sprintf(t("Account '%s' deleted"), $account[0]['account_email']) . EOL); @@ -1096,7 +1094,6 @@ class Admin extends \Zotlabs\Web\Controller { notice( sprintf( tt("%s channel code allowed/disallowed", "%s channels code allowed/disallowed", count($channels)), count($channels)) ); } if (x($_POST,'page_channels_delete')){ - require_once("include/Contact.php"); foreach($channels as $uid){ channel_remove($uid,true); } @@ -1128,7 +1125,6 @@ class Admin extends \Zotlabs\Web\Controller { case "delete":{ check_form_security_token_redirectOnErr('/admin/channels', 'admin_channels', 't'); // delete channel - require_once("include/Contact.php"); channel_remove($uid,true); notice( sprintf(t("Channel '%s' deleted"), $channel[0]['channel_name']) . EOL); -- cgit v1.2.3 From 24360fd19182cad5ed29d10bb47c208bc195c232 Mon Sep 17 00:00:00 2001 From: Mario Vavti Date: Thu, 26 May 2016 14:33:10 +0200 Subject: check if $addonDir is a dir to silence warning if it does not exist --- Zotlabs/Module/Admin.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 172b109c8..8f15035d1 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1421,13 +1421,15 @@ class Admin extends \Zotlabs\Web\Controller { function listAddonRepos() { $addonrepos = []; $addonDir = __DIR__ . '/../../extend/addon/'; - if ($handle = opendir($addonDir)) { - while (false !== ($entry = readdir($handle))) { - if ($entry != "." && $entry != "..") { - $addonrepos[] = $entry; + if(is_dir($addonDir)) { + if ($handle = opendir($addonDir)) { + while (false !== ($entry = readdir($handle))) { + if ($entry != "." && $entry != "..") { + $addonrepos[] = $entry; + } } + closedir($handle); } - closedir($handle); } return $addonrepos; } -- cgit v1.2.3 From 6602ff83dd54d0e17c985a5f527654fc2ed83eea Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 30 May 2016 19:44:30 -0700 Subject: start removing reserved words from database column names (this run: addon and hook) --- Zotlabs/Module/Admin.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 8f15035d1..4cabd78ca 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1291,7 +1291,7 @@ class Admin extends \Zotlabs\Web\Controller { $admin_form = ''; - $r = q("select * from addon where plugin_admin = 1 and name = '%s' limit 1", + $r = q("select * from addon where plugin_admin = 1 and aname = '%s' limit 1", dbesc($plugin) ); -- cgit v1.2.3 From b84f7cd37fdad61e04878580645cab8c53c666f4 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Sat, 4 Jun 2016 03:32:03 -0700 Subject: class functions called incorrectly --- Zotlabs/Module/Admin.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 4cabd78ca..b2c6baf1d 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1547,8 +1547,8 @@ class Admin extends \Zotlabs\Web\Controller { // Toggle theme status - toggle_theme($themes, $theme, $result); - $s = rebuild_theme_table($themes); + $this->toggle_theme($themes, $theme, $result); + $s = $this->rebuild_theme_table($themes); if($result) info( sprintf('Theme %s enabled.', $theme)); else @@ -1561,7 +1561,7 @@ class Admin extends \Zotlabs\Web\Controller { // display theme details require_once('library/markdown.php'); - if (theme_status($themes,$theme)) { + if ($this->theme_status($themes,$theme)) { $status="on"; $action= t("Disable"); } else { $status="off"; $action= t("Enable"); -- cgit v1.2.3 From 037cd74e8e02f048892208bedef0d16faef16af4 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 6 Jun 2016 19:44:22 -0700 Subject: rename admin/users to admin/accounts, provide sortable columns in account and channel summaries - issue #255 --- Zotlabs/Module/Admin.php | 106 ++++++++++++++++++++++++++++------------------- 1 file changed, 63 insertions(+), 43 deletions(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index b2c6baf1d..21ab7f6a7 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -32,8 +32,8 @@ class Admin extends \Zotlabs\Web\Controller { case 'site': $this->admin_page_site_post($a); break; - case 'users': - $this->admin_page_users_post($a); + case 'accounts': + $this->admin_page_accounts_post($a); break; case 'channels': $this->admin_page_channels_post($a); @@ -127,8 +127,8 @@ class Admin extends \Zotlabs\Web\Controller { case 'site': $o = $this->admin_page_site($a); break; - case 'users': - $o = $this->admin_page_users($a); + case 'accounts': + $o = $this->admin_page_accounts($a); break; case 'channels': $o = $this->admin_page_channels($a); @@ -872,20 +872,20 @@ class Admin extends \Zotlabs\Web\Controller { } /** - * @brief Handle POST actions on users admin page. + * @brief Handle POST actions on accounts admin page. * * This function is called when on the admin user/account page the form was * submitted to handle multiple operations at once. If one of the icons next - * to an entry are pressed the function admin_page_users() will handle this. + * to an entry are pressed the function admin_page_accounts() will handle this. * * @param App $a */ - function admin_page_users_post($a) { + function admin_page_accounts_post($a) { $pending = ( x($_POST, 'pending') ? $_POST['pending'] : array() ); $users = ( x($_POST, 'user') ? $_POST['user'] : array() ); $blocked = ( x($_POST, 'blocked') ? $_POST['blocked'] : array() ); - check_form_security_token_redirectOnErr('/admin/users', 'admin_users'); + check_form_security_token_redirectOnErr('/admin/accounts', 'admin_accounts'); // change to switch structure? // account block/unblock button was submitted @@ -901,7 +901,7 @@ class Admin extends \Zotlabs\Web\Controller { notice( sprintf( tt("%s account blocked/unblocked", "%s account blocked/unblocked", count($users)), count($users)) ); } // account delete button was submitted - if (x($_POST, 'page_users_delete')) { + if (x($_POST, 'page_accounts_delete')) { foreach ($users as $uid){ account_remove($uid, true, false); } @@ -920,20 +920,20 @@ class Admin extends \Zotlabs\Web\Controller { } } - goaway(z_root() . '/admin/users' ); + goaway(z_root() . '/admin/accounts' ); } /** - * @brief Generate users admin page and handle single item operations. + * @brief Generate accounts admin page and handle single item operations. * - * This function generates the users/account admin page and handles the actions + * This function generates the accounts/account admin page and handles the actions * if an icon next to an entry was clicked. If several items were selected and - * the form was submitted it is handled by the function admin_page_users_post(). + * the form was submitted it is handled by the function admin_page_accounts_post(). * * @param App &$a * @return string */ - function admin_page_users(&$a){ + function admin_page_accounts(&$a){ if (argc() > 2) { $uid = argv(3); $account = q("SELECT * FROM account WHERE account_id = %d", @@ -942,10 +942,10 @@ class Admin extends \Zotlabs\Web\Controller { if (! $account) { notice( t('Account not found') . EOL); - goaway(z_root() . '/admin/users' ); + goaway(z_root() . '/admin/accounts' ); } - check_form_security_token_redirectOnErr('/admin/users', 'admin_users', 't'); + check_form_security_token_redirectOnErr('/admin/accounts', 'admin_accounts', 't'); switch (argv(2)){ case 'delete': @@ -972,7 +972,7 @@ class Admin extends \Zotlabs\Web\Controller { break; } - goaway(z_root() . '/admin/users' ); + goaway(z_root() . '/admin/accounts' ); } /* get pending */ @@ -980,7 +980,7 @@ class Admin extends \Zotlabs\Web\Controller { intval(ACCOUNT_PENDING) ); - /* get users */ + /* get accounts */ $total = q("SELECT count(*) as total FROM account"); if (count($total)) { @@ -988,22 +988,20 @@ class Admin extends \Zotlabs\Web\Controller { \App::set_pager_itemspage(100); } - - // We'll still need to link email addresses to admin/users/channels or some such, but this bit doesn't exist yet. - // That's where we need to be doing last post/channel flags/etc, not here. - $serviceclass = (($_REQUEST['class']) ? " and account_service_class = '" . dbesc($_REQUEST['class']) . "' " : ''); + + $key = (($_REQUEST['key']) ? dbesc($_REQUEST['key']) : 'account_id'); + $dir = 'asc'; + if(array_key_exists('dir',$_REQUEST)) + $dir = ((intval($_REQUEST['dir'])) ? 'asc' : 'desc'); + + $base = z_root() . '/admin/accounts?f='; + $odir = (($dir === 'asc') ? '0' : '1'); - $order = " order by account_email asc "; - if($_REQUEST['order'] === 'expires') - $order = " order by account_expires desc "; - if($_REQUEST['order'] === 'created') - $order = " order by account_created desc "; - - $users = q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, " . "`account_service_class`, ( account_flags & %d )>0 as `blocked`, " . + $users = q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, " . "`account_service_class`, ( account_flags & %d ) > 0 as `blocked`, " . "(SELECT %s FROM channel as ch " . "WHERE ch.channel_account_id = ac.account_id and ch.channel_removed = 0 ) as `channels` " . - "FROM account as ac where true $serviceclass $order limit %d offset %d ", + "FROM account as ac where true $serviceclass order by $key $dir limit %d offset %d ", intval(ACCOUNT_BLOCKED), db_concat('ch.channel_address', ' '), intval(\App::$pager['itemspage']), @@ -1026,14 +1024,14 @@ class Admin extends \Zotlabs\Web\Controller { // } // $users = array_map("_setup_users", $users); - $t = get_markup_template('admin_users.tpl'); + $t = get_markup_template('admin_accounts.tpl'); $o = replace_macros($t, array( // strings // '$title' => t('Administration'), - '$page' => t('Users'), + '$page' => t('Accounts'), '$submit' => t('Submit'), '$select_all' => t('select all'), - '$h_pending' => t('User registrations waiting for confirm'), + '$h_pending' => t('Registrations waiting for confirm'), '$th_pending' => array( t('Request date'), t('Email') ), '$no_pending' => t('No registrations.'), '$approve' => t('Approve'), @@ -1041,14 +1039,22 @@ class Admin extends \Zotlabs\Web\Controller { '$delete' => t('Delete'), '$block' => t('Block'), '$unblock' => t('Unblock'), - - '$h_users' => t('Users'), - '$th_users' => array( t('ID'), t('Email'), t('All Channels'), t('Register date'), t('Last login'), t('Expires'), t('Service Class')), + '$odir' => $odir, + '$base' => $base, + '$h_users' => t('Accounts'), + '$th_users' => array( + [ t('ID'), 'account_id' ], + [ t('Email'), 'account_email' ], + [ t('All Channels'), 'channels' ], + [ t('Register date'), 'account_created' ], + [ t('Last login'), 'account_lastlog' ], + [ t('Expires'), 'account_expires' ], + [ t('Service Class'), 'account_service_class'] ), '$confirm_delete_multi' => t('Selected accounts will be deleted!\n\nEverything these accounts had posted on this site will be permanently deleted!\n\nAre you sure?'), '$confirm_delete' => t('The account {0} will be deleted!\n\nEverything this account has posted on this site will be permanently deleted!\n\nAre you sure?'), - '$form_security_token' => get_form_security_token("admin_users"), + '$form_security_token' => get_form_security_token("admin_accounts"), // values // '$baseurl' => z_root(), @@ -1158,6 +1164,17 @@ class Admin extends \Zotlabs\Web\Controller { } goaway(z_root() . '/admin/channels' ); } + + + $key = (($_REQUEST['key']) ? dbesc($_REQUEST['key']) : 'channel_id'); + $dir = 'asc'; + if(array_key_exists('dir',$_REQUEST)) + $dir = ((intval($_REQUEST['dir'])) ? 'asc' : 'desc'); + + $base = z_root() . '/admin/channels?f='; + $odir = (($dir === 'asc') ? '0' : '1'); + + /* get channels */ @@ -1166,14 +1183,12 @@ class Admin extends \Zotlabs\Web\Controller { \App::set_pager_total($total[0]['total']); \App::set_pager_itemspage(100); } - - $order = " order by channel_name asc "; - - $channels = q("SELECT * from channel where channel_removed = 0 and channel_system = 0 $order limit %d offset %d ", + + $channels = q("SELECT * from channel where channel_removed = 0 and channel_system = 0 order by $key $dir limit %d offset %d ", intval(\App::$pager['itemspage']), intval(\App::$pager['start']) ); - + if($channels) { for($x = 0; $x < count($channels); $x ++) { if($channels[$x]['channel_pageflags'] & PAGE_CENSORED) @@ -1201,7 +1216,12 @@ class Admin extends \Zotlabs\Web\Controller { '$code' => t('Allow Code'), '$uncode' => t('Disallow Code'), '$h_channels' => t('Channel'), - '$th_channels' => array( t('UID'), t('Name'), t('Address')), + '$base' => $base, + '$odir' => $odir, + '$th_channels' => array( + [ t('UID'), 'channel_id' ], + [ t('Name'), 'channel_name' ], + [ t('Address'), 'channel_address' ]), '$confirm_delete_multi' => t('Selected channels will be deleted!\n\nEverything that was posted in these channels on this site will be permanently deleted!\n\nAre you sure?'), '$confirm_delete' => t('The channel {0} will be deleted!\n\nEverything that was posted in this channel on this site will be permanently deleted!\n\nAre you sure?'), -- cgit v1.2.3 From bb3d56a0b2e3676e780b4b6dd4e1b31b211c7b5e Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 9 Jun 2016 22:07:27 -0700 Subject: foreach: invalid argument --- Zotlabs/Module/Admin.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Zotlabs/Module/Admin.php') diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 21ab7f6a7..085d13fd7 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1738,7 +1738,7 @@ class Admin extends \Zotlabs\Web\Controller { // name, label, value, help string, extra data... '$debugging' => array('debugging', t("Debugging"),get_config('system','debugging'), ""), - '$logfile' => array('logfile', t("Log file"), get_config('system','logfile'), t("Must be writable by web server. Relative to your Red top-level directory.")), + '$logfile' => array('logfile', t("Log file"), get_config('system','logfile'), t("Must be writable by web server. Relative to your top-level webserver directory.")), '$loglevel' => array('loglevel', t("Log level"), get_config('system','loglevel'), "", $log_choices), '$form_security_token' => get_form_security_token('admin_logs'), -- cgit v1.2.3