trbasic(lang('templateclass'), 'mtpladd[tpclass]', makeoption($tpclasses, $mtpl['tpclass']), 'select'); trbasic(lang('soctemfi'), '', $tplname, ''); trbasic(lang('tempfilsav'), 'mtpladd[tplname]'); tabfooter('bmtplcopy'); a_guide('mtplcopy'); } else { (!$mtpladd['cname'] || !$mtpladd['tplname']) && amessage('datamissing', M_REFERER); $mtplsnew = findfiles($true_tpldir); in_array($mtpladd['tplname'], $mtplsnew) && amessage('poitemficnarep', M_REFERER); !copy($true_tpldir . '/' . $tplname, $true_tpldir . '/' . $mtpladd['tplname']) && amessage('temcopfai', M_REFERER); $mtpls[$mtpladd['tplname']] = array('cname' => stripslashes($mtpladd['cname']), 'tpclass' => $mtpladd['tpclass']); cache2file($mtpls, 'mtpls', 'mtpls', $sid); adminlog(lang('copynormaltemplate')); amessage('temcopfin', axaction(6, "?entry=mtpls&action=mtplsedit{$param_suffix}")); } } elseif ($action == 'mtagcode') { if (empty($createrange)) { amessage('poitagsou'); } if (preg_match("/\\{(u|c|p)\\\$(.+?)(\\s|\\})/is", $createrange, $matches)) { $ttype = $matches[1] . 'tag'; $tname = $matches[2]; $url = "?entry=mtags&action=mtagsdetail&ttype={$ttype}{$param_suffix}&tname={$tname}"; mheader("location:{$url}"); } elseif (preg_match("/\\{tpl\\\$(.+?)\\}/is", $createrange, $matches)) { $tname = $matches[1]; $url = "?entry=mtags&action=mtagsdetail&ttype=rtag{$param_suffix}&tname={$tname}"; mheader("location:{$url}"); } amessage('poitagsou'); }
$cn_link = $cnode['indexurl']; } $cn_name = mhtmlspecialchars($cn_name); $rss_str = "<?xml version=\"1.0\" encoding=\"" . $mcharset . "\"?>\n" . "<rss version=\"2.0\">\n" . " <channel>\n" . " <title>{$cn_name}</title>\n" . " <link>" . mhtmlspecialchars($archive['subject']) . "{$cn_link}</link>\n" . " <description>Latest {$rss_num} archives of {$cn_name}</description>\n" . " <copyright>Copyright(C) " . mhtmlspecialchars($cmsname) . "</copyright>\n" . " <generator>www.08cms.com</generator>\n" . " <lastBuildDate>" . date('r', $timestamp) . "</lastBuildDate>\n" . " <ttl>{$rss_ttl}</ttl>\n" . " <image>\n" . " <url>" . view_atmurl($cmslogo) . "</url>\n" . " <title>" . mhtmlspecialchars($cmsname) . "</title>\n" . " <link>" . $cms_abs . "</link>\n" . " </image>\n"; $cachefile = htmlcac_dir('rss', '', 1) . cac_namepre('rss', $cnstr) . '.php'; if ($timestamp - @filemtime($cachefile) > $rss_ttl * 60) { $rsscaches = rss_cache($sqlstr); } else { include $cachefile; } foreach ($rsscaches as $aid => $archive) { $archive['arcurl'] = view_arcurl($archive); $rss_str .= " <item>\n" . " <title>" . mhtmlspecialchars($archive['subject']) . "</title>\n" . " <link>{$archive['arcurl']}</link>\n" . " <description><![CDATA[" . mhtmlspecialchars($archive['abstract']) . "]]></description>\n" . " <category>{$cn_name}</category>\n" . " <author>" . mhtmlspecialchars($archive['mname']) . "</author>\n" . " <pubDate>" . date('r', $archive['createdate']) . "</pubDate>\n" . " </item>\n"; } $rss_str .= " </channel>\n" . "</rss>"; mheader("Content-type: application/xml"); echo $rss_str; exit; function rss_cache($sqlstr = '') { global $db, $tblprefix, $rss_num, $sqlstr, $cnstr, $cotypes; $sqlstr = "WHERE checked=1" . (empty($sqlstr) ? '' : ' AND ') . $sqlstr; $query = $db->query("SELECT * FROM {$tblprefix}archives {$sqlstr} ORDER BY aid DESC LIMIT 0,{$rss_num}"); while ($row = $db->fetch_array($query)) { $row['abstract'] = cutstr(html2text($row['abstract']), 255); $rsscaches[$row['aid']] = $row; } rsscache2file($rsscaches, cac_namepre('rss', $cnstr)); return $rsscaches; } function rsscache2file($array, $cachefile)