diff options
author | zotlabs <mike@macgirvin.com> | 2016-12-27 15:28:52 -0800 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2016-12-27 15:28:52 -0800 |
commit | db9ea66069f2a2df6044e8267a68eae377c45911 (patch) | |
tree | aa93597df2ee43ceeaa980db864b58143f2e06df /Zotlabs/Module/Admin/Channels.php | |
parent | ef02464e3c3188563349bfda42585ce40cdb45ad (diff) | |
parent | c2830c4a98cf3c9983b3c4b61024d52a6d7187df (diff) | |
download | volse-hubzilla-db9ea66069f2a2df6044e8267a68eae377c45911.tar.gz volse-hubzilla-db9ea66069f2a2df6044e8267a68eae377c45911.tar.bz2 volse-hubzilla-db9ea66069f2a2df6044e8267a68eae377c45911.zip |
Merge branch 'master' of https://github.com/redmatrix/hubzilla into master_merge
Diffstat (limited to 'Zotlabs/Module/Admin/Channels.php')
-rw-r--r-- | Zotlabs/Module/Admin/Channels.php | 90 |
1 files changed, 40 insertions, 50 deletions
diff --git a/Zotlabs/Module/Admin/Channels.php b/Zotlabs/Module/Admin/Channels.php index b9b345105..e0f26112d 100644 --- a/Zotlabs/Module/Admin/Channels.php +++ b/Zotlabs/Module/Admin/Channels.php @@ -2,35 +2,36 @@ namespace Zotlabs\Module\Admin; - +/** + * @brief Admin Module for Channels. + * + */ class Channels { - /** - * @brief Channels admin page. + * @brief Handle POST actions on channels admin page. * - * @param App &$a */ function post() { $channels = ( x($_POST, 'channel') ? $_POST['channel'] : Array() ); - + check_form_security_token_redirectOnErr('/admin/channels', 'admin_channels'); - + $xor = db_getfunc('^'); - - if (x($_POST,'page_channels_block')){ - foreach($channels as $uid){ + + if(x($_POST, 'page_channels_block')) { + foreach($channels as $uid) { q("UPDATE channel SET channel_pageflags = ( channel_pageflags $xor %d ) where channel_id = %d", intval(PAGE_CENSORED), intval( $uid ) ); - \Zotlabs\Daemon\Master::Summon(array('Directory',$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)) ); } - if (x($_POST,'page_channels_code')){ - foreach($channels as $uid){ + if(x($_POST, 'page_channels_code')) { + foreach($channels as $uid) { q("UPDATE channel SET channel_pageflags = ( channel_pageflags $xor %d ) where channel_id = %d", intval(PAGE_ALLOWCODE), intval( $uid ) @@ -38,74 +39,71 @@ class Channels { } notice( sprintf( tt("%s channel code allowed/disallowed", "%s channels code allowed/disallowed", count($channels)), count($channels)) ); } - if (x($_POST,'page_channels_delete')){ - foreach($channels as $uid){ - channel_remove($uid,true); + if(x($_POST, 'page_channels_delete')) { + foreach($channels as $uid) { + channel_remove($uid, true); } notice( sprintf( tt("%s channel deleted", "%s channels deleted", count($channels)), count($channels)) ); } - + goaway(z_root() . '/admin/channels' ); } - /** - * @brief + * @brief Generate channels admin page and handle single item operations. * - * @return string + * @return string with parsed HTML */ - function get() { if(argc() > 2) { $uid = argv(3); $channel = q("SELECT * FROM channel WHERE channel_id = %d", intval($uid) ); - + if(! $channel) { notice( t('Channel not found') . EOL); goaway(z_root() . '/admin/channels' ); } - + switch(argv(2)) { case "delete":{ check_form_security_token_redirectOnErr('/admin/channels', 'admin_channels', 't'); // delete channel channel_remove($uid,true); - + notice( sprintf(t("Channel '%s' deleted"), $channel[0]['channel_name']) . EOL); }; break; - + case "block":{ check_form_security_token_redirectOnErr('/admin/channels', 'admin_channels', 't'); - $pflags = $channel[0]['channel_pageflags'] ^ PAGE_CENSORED; + $pflags = $channel[0]['channel_pageflags'] ^ PAGE_CENSORED; q("UPDATE channel SET channel_pageflags = %d where channel_id = %d", intval($pflags), intval( $uid ) ); \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; - + case "code":{ check_form_security_token_redirectOnErr('/admin/channels', 'admin_channels', 't'); - $pflags = $channel[0]['channel_pageflags'] ^ PAGE_ALLOWCODE; + $pflags = $channel[0]['channel_pageflags'] ^ PAGE_ALLOWCODE; q("UPDATE channel SET channel_pageflags = %d where channel_id = %d", intval($pflags), intval( $uid ) ); - + notice( sprintf( (($pflags & PAGE_ALLOWCODE) ? t("Channel '%s' code allowed"): t("Channel '%s' code disallowed")) , $channel[0]['channel_name'] . ' (' . $channel[0]['channel_address'] . ')' ) . EOL); }; break; - - default: + + default: break; } goaway(z_root() . '/admin/channels' ); } - $key = (($_REQUEST['key']) ? dbesc($_REQUEST['key']) : 'channel_id'); $dir = 'asc'; if(array_key_exists('dir',$_REQUEST)) @@ -114,10 +112,8 @@ class Channels { $base = z_root() . '/admin/channels?f='; $odir = (($dir === 'asc') ? '0' : '1'); - - /* get channels */ - + $total = q("SELECT count(*) as total FROM channel where channel_removed = 0 and channel_system = 0"); if($total) { \App::set_pager_total($total[0]['total']); @@ -135,15 +131,15 @@ class Channels { $channels[$x]['blocked'] = true; else $channels[$x]['blocked'] = false; - + if($channels[$x]['channel_pageflags'] & PAGE_ALLOWCODE) $channels[$x]['allowcode'] = true; else $channels[$x]['allowcode'] = false; } } - - $t = get_markup_template("admin_channels.tpl"); + + $t = get_markup_template('admin_channels.tpl'); $o = replace_macros($t, array( // strings // '$title' => t('Administration'), @@ -158,29 +154,23 @@ class Channels { '$h_channels' => t('Channel'), '$base' => $base, '$odir' => $odir, - '$th_channels' => array( + '$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?'), - - '$form_security_token' => get_form_security_token("admin_channels"), - + + '$form_security_token' => get_form_security_token('admin_channels'), + // values // '$baseurl' => z_root(), '$channels' => $channels, )); $o .= paginate($a); - + return $o; } - - - - - - }
\ No newline at end of file |