예제 #1
0
$blocks = array();
if (checkperm('allowdiy')) {
    $count = DB::result_first('SELECT COUNT(*) FROM ' . DB::table('common_block') . " b {$wheresql}");
    $sql = 'SELECT b.*,tb.targettplname FROM ' . DB::table('common_block') . " b LEFT JOIN " . DB::table('common_template_block') . " tb ON b.bid=tb.bid {$wheresql} ORDER BY b.bid DESC LIMIT {$start}, {$perpage}";
} else {
    $count = DB::result_first('SELECT COUNT(*) FROM ' . DB::table('common_block_permission') . ' bp LEFT JOIN ' . DB::table('common_block') . " b ON bp.bid=b.bid {$wheresql}");
    $sql = 'SELECT b.*, tb.targettplname FROM ' . DB::table('common_block_permission') . " bp LEFT JOIN " . DB::table('common_block') . " b ON bp.bid = b.bid LEFT JOIN " . DB::table('common_template_block') . " tb ON bp.bid=tb.bid {$wheresql} ORDER BY b.bid DESC LIMIT {$start}, {$perpage}";
}
if ($count) {
    require_once libfile('function/block');
    $query = DB::query($sql);
    while ($value = DB::fetch($query)) {
        if ($value['blocktype']) {
            $value['url'] = lang('portal/template', 'block_jscall');
        } else {
            $tplinfo = block_getdiyurl($value['targettplname']);
            if ($tplinfo['url']) {
                $value['url'] = lang('portal/template', 'block_view_link', array('url' => $tplinfo['url']));
            } else {
                $value['url'] = lang('portal/template', 'block_unused');
            }
        }
        $value['name'] = empty($value['name']) ? '#' . $value['bid'] : trim($value['name']);
        $theclass = block_getclass($value['blockclass']);
        $value['datasrc'] = $theclass['script'][$value['script']];
        $value['allowdata'] = checkperm('allowdiy') || $permission[$value['bid']]['allowdata'] ? true : false;
        $value['allowsetting'] = checkperm('allowdiy') || $permission[$value['bid']]['allowsetting'] ? true : false;
        $blocks[] = $value;
    }
    $multi = multi($count, $perpage, $page, "portal.php?mod=portalcp&ac=portalblock");
}
예제 #2
0
             }
         }
         $multipage = multi($count, $perpage, $page, $mpurl);
     }
     showsubmit('', '', '', '<input type="checkbox" name="chkall" id="chkall" class="checkbox" onclick="checkAll(\'prefix\', this.form, \'ids\')" /><label for="chkall">' . cplang('select_all') . '</label>&nbsp;&nbsp;<input type="submit" class="btn" name="deletesubmit" value="' . cplang('block_delete') . '" />', $multipage);
     showtablefooter();
     showformfooter();
 } else {
     showsubtitle(array('block_name', 'block_script', 'block_style', 'block_dateline', 'block_page', 'operation'));
     $multipage = '';
     $count = DB::result(DB::query("SELECT COUNT(*) FROM " . DB::table('common_block') . " b LEFT JOIN " . DB::table('common_template_block') . " tb ON tb.bid=b.bid WHERE {$wheresql}"), 0);
     if ($count) {
         $query = DB::query("SELECT b.*, tb.targettplname FROM " . DB::table('common_block') . " b LEFT JOIN " . DB::table('common_template_block') . " tb ON b.bid=tb.bid WHERE {$wheresql} {$ordersql} LIMIT {$start},{$perpage}");
         while ($value = DB::fetch($query)) {
             if ($value['targettplname']) {
                 $diyurl = block_getdiyurl($value['targettplname']);
                 $diyurl = $diyurl['url'];
                 $tplname = isset($_G['cache']['diytemplatename'][$value['targettplname']]) ? $_G['cache']['diytemplatename'][$value['targettplname']] : $value['targettplname'];
                 $diypage[$value['bid']][$value['targettplname']] = $diyurl ? '<a href="' . $diyurl . '" target="_blank">' . $tplname . '</a>' : $tplname;
             }
             $list[$value['bid']] = $value;
         }
         if ($list) {
             foreach ($list as $bid => $value) {
                 $inpage = empty($diypage[$bid]) ? cplang('block_page_unused') : implode('<br/>', $diypage[$bid]);
                 $theclass = block_getclass($value['blockclass'], true);
                 showtablerow('', '', array($value['name'] ? $value['name'] : cplang('block_name_null'), $theclass['script'][$value['script']], $value['styleid'] ? $theclass['style'][$value['styleid']]['name'] : lang('portalcp', 'blockstyle_diy'), !empty($value['dateline']) ? dgmdate($value['dateline']) : cplang('block_dateline_null'), $inpage, "<a href=\"portal.php?mod=portalcp&ac=block&op=block&bid={$value['bid']}&from=cp\" target=\"_blank\" onclick=\"showWindow('showblock',this.href);return false;\">" . cplang('block_setting') . "</a> &nbsp;&nbsp" . "<a href=\"portal.php?mod=portalcp&ac=block&op=data&bid={$value['bid']}&from=cp\" target=\"_blank\" onclick=\"showWindow('showblock',this.href);return false;\">" . cplang('block_data') . "</a> &nbsp;&nbsp" . $diyop . "&nbsp;&nbsp;<a href=\"" . ADMINSCRIPT . "?action=block&operation=perm&bid={$value['bid']}\">" . cplang('portalcategory_perm') . '</a>'));
             }
         }
         $multipage = multi($count, $perpage, $page, $mpurl);
     }
예제 #3
0
 $page = max(1, intval($_GET['page']));
 $start = ($page - 1) * $perpage;
 if ($start < 0) {
     $start = 0;
 }
 $end = $start + $perpage;
 $multi = multi(count($pageblocks), $perpage, $page, $theurl);
 $allpageblocks = $pageblocks;
 $bids = $pageblocks = $diyurls = array();
 $cursor = 0;
 require_once libfile('function/block');
 foreach ($allpageblocks as $key => $value) {
     if ($cursor >= $start && $cursor < $end) {
         $pageblocks[$key] = $value;
         $bids = array_merge($bids, $value);
         $diyurl = block_getdiyurl($key);
         $diyurls[$key] = $diyurl['url'];
     } elseif ($cursor >= $end) {
         break;
     }
     $cursor++;
 }
 if ($bids) {
     $query = DB::query('SELECT b.bid, b.`name`, b.blockclass, b.notinherited, tb.targettplname FROM ' . DB::table('common_block') . ' b LEFT JOIN ' . DB::table('common_template_block') . ' tb ON tb.bid=b.bid WHERE b.bid IN (' . dimplode($bids) . ')');
     while ($value = DB::fetch($query)) {
         $value['isrecommendable'] = block_isrecommendable($value);
         $value['perm'] = formatblockpermissoin($value);
         $value['name'] = !empty($value['name']) ? $value['name'] : '<strong>#' . $value['bid'] . '</strong>';
         $blocks[$value['bid']] = $value;
     }
 }