function showportalprimaltemplate($pritplname, $type) { include_once libfile('function/portalcp'); $tpls = array('./template/default:portal/' . $type => getprimaltplname('portal/' . $type . '.htm')); foreach ($alltemplate = C::t('common_template')->range() as $template) { if ($dir = dir(DISCUZ_ROOT . $template['directory'] . '/portal/')) { while (false !== ($file = $dir->read())) { $file = strtolower($file); if (fileext($file) == 'htm' && substr($file, 0, strlen($type) + 1) == $type . '_') { $key = $template['directory'] . ':portal/' . str_replace('.htm', '', $file); $tpls[$key] = getprimaltplname($template['directory'] . ':portal/' . $file); } } } } foreach ($tpls as $key => $value) { echo "<input name=signs[{$type}][" . dsign($key) . "] value='1' type='hidden' />"; } $pritplvalue = ''; if (empty($pritplname)) { $pritplhide = ''; $pritplvalue = ' style="display:none;"'; } else { $pritplhide = ' style="display:none;"'; } $catetplselect = '<span' . $pritplhide . '><select id="' . $type . 'select" name="' . $type . 'primaltplname">'; $selectedvalue = ''; if ($type == 'view') { $catetplselect .= '<option value="">' . cplang('portalcategory_inheritupsetting') . '</option>'; } foreach ($tpls as $k => $v) { if ($pritplname === $k) { $selectedvalue = $k; $selected = ' selected'; } else { $selected = ''; } $catetplselect .= '<option value="' . $k . '"' . $selected . '>' . $v . '</option>'; } $pritplophide = !empty($pritplname) ? '' : ' style="display:none;"'; $catetplselect .= '</select> <a href="javascript:;"' . $pritplophide . ' onclick="$(\'' . $type . 'select\').value=\'' . $selectedvalue . '\';$(\'' . $type . 'select\').parentNode.style.display=\'none\';$(\'' . $type . 'value\').style.display=\'\';">' . cplang('cancel') . '</a></span>'; if (empty($pritplname)) { showsetting('portalcategory_' . $type . 'primaltplname', '', '', $catetplselect); } else { $tplname = getprimaltplname($pritplname . '.htm'); $html = '<span id="' . $type . 'value" ' . $pritplvalue . '> ' . $tplname . '<a href="javascript:;" onclick="$(\'' . $type . 'select\').parentNode.style.display=\'\';$(\'' . $type . 'value\').style.display=\'none\';"> ' . cplang('modify') . '</a></span>'; showsetting('portalcategory_' . $type . 'primaltplname', '', '', $catetplselect . $html); } }
$topic['cover'] = $_G['setting']['attachurl'] . $topic['cover']; } elseif ($topic['picflag'] == '2') { $topic['cover'] = $_G['setting']['ftp']['attachurl'] . $topic['cover']; } } } if ($topicid && !$allowmanage || !$topicid && !$allowadd) { showmessage('topic_edit_nopermission', dreferer()); } $tpls = array(); foreach ($alltemplate = C::t('common_template')->range() as $template) { if ($dir = dir(DISCUZ_ROOT . $template['directory'] . '/portal/')) { while (false !== ($file = $dir->read())) { $file = strtolower($file); if (fileext($file) == 'htm' && substr($file, 0, 13) == 'portal_topic_') { $tpls[$template['directory'] . ':portal/' . str_replace('.htm', '', $file)] = getprimaltplname($template['directory'] . ':portal/' . $file); } } } } if (empty($tpls)) { showmessage('topic_has_on_template', dreferer()); } if (submitcheck('editsubmit')) { include_once libfile('function/portalcp'); if (is_numeric($topicid = updatetopic($topic))) { showmessage('do_success', 'portal.php?mod=topic&topicid=' . $topicid); } else { showmessage($topicid, dreferer()); } }
function showportalprimaltemplate($pritplname, $type) { global $_G; $tpls = array($type => getprimaltplname($type . '.htm')); if ($dh = opendir(DISCUZ_ROOT . ($_G['cache']['style_default']['tpldir'] ? $_G['cache']['style_default']['tpldir'] : './template/default') . '/portal/')) { while (($file = readdir($dh)) !== false) { $file = strtolower($file); if (fileext($file) == 'htm' && substr($file, 0, strlen($type) + 1) == $type . '_') { $tpls[str_replace('.htm', '', $file)] = getprimaltplname($file); } } closedir($dh); } arsort($tpls); $pritplvalue = ''; if (empty($pritplname)) { $pritplhide = ''; $pritplvalue = ' style="display:none;"'; } else { $pritplhide = ' style="display:none;"'; } $catetplselect = '<span' . $pritplhide . '><select id="' . $type . 'select" name="' . $type . 'primaltplname">'; $selectedvalue = ''; if ($type == 'view') { $catetplselect .= '<option value="">' . cplang('portalcategory_inheritupsetting') . '</option>'; } foreach ($tpls as $k => $v) { if ($pritplname === 'portal/' . $k) { $selectedvalue = $k; $selected = ' selected'; } else { $selected = ''; } $catetplselect .= '<option value="' . $k . '"' . $selected . '>' . $v . '</option>'; } $pritplophide = !empty($pritplname) ? '' : ' style="display:none;"'; $catetplselect .= '</select> <a href="javascript:;"' . $pritplophide . ' onclick="$(\'' . $type . 'select\').value=\'' . $selectedvalue . '\';$(\'' . $type . 'select\').parentNode.style.display=\'none\';$(\'' . $type . 'value\').style.display=\'\';">' . cplang('cancel') . '</a></span>'; if (empty($pritplname)) { showsetting('portalcategory_' . $type . 'primaltplname', '', '', $catetplselect); } else { $tplname = getprimaltplname(str_replace('portal/', '', $pritplname . '.htm')); $html = '<span id="' . $type . 'value" ' . $pritplvalue . '> ' . $tplname . '<a href="javascript:;" onclick="$(\'' . $type . 'select\').parentNode.style.display=\'\';$(\'' . $type . 'value\').style.display=\'none\';"> ' . cplang('modify') . '</a></span>'; showsetting('portalcategory_' . $type . 'primaltplname', '', '', $catetplselect . $html); } }
foreach ($tpls as $k => $v) { ?> <input type="hidden" name="signs[<?php echo dsign($k); ?> ]" value="1"/> <?php } } $pritplophide = !empty($topic['primaltplname']) ? '' : ' style="display:none;"'; ?> <a href="javascript:;"<?php echo $pritplophide; ?> onclick="$('pritplselect').style.display='none';$('pritplvalue').style.display='';" class="xi2">取消</a></span><?php $html = '<span id="pritplvalue"' . $pritplshow . '>' . getprimaltplname($topic['primaltplname'] . '.htm') . ' <a href="javascript:;" onclick="$(\'pritplselect\').style.display=\'\';$(\'pritplvalue\').style.display=\'none\';" class="xi2">修改</a></span>'; echo $html; ?> <p class="d">请将模板文件上传到模板目录的portal目录下,如:template/default/portal目录下,文件名必须为portal_topic_*.htm,*为自定义文件名<br />如果要重新选择模板,请确保新模板与原模板中可拖拽区域具有相同的ID,否则将会丢失分部或全部原DIY数据</p></td> </tr> <tr> <th>是否允许评论</th> <td> <label class="lb"><input type="radio" name="allowcomment" value="1" class="pr"<?php if ($topic['allowcomment']) { ?> checked="checked"<?php } ?> />是</label> <label class="lb"><input type="radio" name="allowcomment" value="0" class="pr"<?php
$cate['primaltplname'] = 'portal/list'; $pritplvalue = ' style="display:none;"'; } else { $pritplhide = ' style="display:none;"'; } $catetplselect = '<span id="pritplselect"' . $pritplhide . '><select name="primaltplname">'; foreach ($tpls as $k => $v) { $selected = $cate['primaltplname'] == 'portal/' . $k ? ' selected' : ''; $catetplselect .= '<option value="' . $k . '"' . $selected . '>' . $v . '</option>'; } $pritplophide = !empty($cate['primaltplname']) ? '' : ' style="display:none;"'; $catetplselect .= '</select> <a href="javascript:;"' . $pritplophide . ' onclick="$(\'pritplselect\').style.display=\'none\';$(\'pritplvalue\').style.display=\'\';">' . cplang('cancel') . '</a></span>'; if (empty($cate['primaltplname'])) { showsetting('portalcategory_primaltplname', '', '', $catetplselect); } else { $tplname = getprimaltplname(str_replace('portal/', '', $cate['primaltplname'] . '.htm')); $html = '<span id="pritplvalue" ' . $pritplvalue . '> ' . $tplname . '<a href="javascript:;" onclick="$(\'pritplselect\').style.display=\'\';$(\'pritplvalue\').style.display=\'none\';"> ' . cplang('modify') . '</a></span>'; showsetting('portalcategory_primaltplname', '', '', $catetplselect . $html); } showsetting('portalcategory_allowpublish', 'allowpublish', $cate['disallowpublish'] ? 0 : 1, 'radio'); showsetting('portalcategory_allowcomment', 'allowcomment', $cate['allowcomment'], 'radio'); if ($cate['level']) { showsetting('portalcategory_inheritancearticle', 'inheritancearticle', !$cate['notinheritedarticle'] ? '1' : '0', 'radio'); showsetting('portalcategory_inheritanceblock', 'inheritanceblock', !$cate['notinheritedblock'] ? '1' : '0', 'radio'); } showsetting('portalcategory_is_closed', 'closed', $cate['closed'] ? 0 : 1, 'radio'); if ($cate['level'] != 2) { showsetting('portalcategory_shownav', 'shownav', $cate['shownav'], 'radio'); } $setindex = !empty($_G['setting']['defaultindex']) && $_G['setting']['defaultindex'] == $cate['caturl'] ? 1 : 0; showsetting('setindex', 'setindex', $setindex, 'radio');