Пример #1
0
    function _public_add_info($type = 'bbs')
    {
        $info = $this->_article_info();
        if (!$info) {
            return;
        }
        if ($type == 'bbs') {
            require_once libfile('function/editor');
            $info['content'] = dstripslashes($info['content']);
            $info['content'] = img_htmlbbcode($info['content'], $info['page_url']);
            $info['content'] = media_htmlbbcode($info['content'], $info['page_url']);
            $info['content'] = audio_htmlbbcode($info['content'], $info['page_url']);
            $info['content'] = htmlspecialchars_decode(html2bbcode($info['content']));
            $info['content'] = dstripslashes(format_html($info['content']));
            $script .= '<div id="show_title" style="display:none">' . $info['title'] . '</div><div id="show_content" style="display:none">' . $info['content'] . '</div><script language="javascript" type="text/javascript" >';
            $script .= '
					var subject = $("show_title").innerHTML;
					var message = $("show_content").innerHTML;
					$("subject").value= subject;
					message = message.replace(/<p>([\\s\\S]*?)<\\/p>/ig, "$1<br />");
					message = message.replace(/<center>([\\s\\S]*?)<\\/center>/ig, "[align=center]$1[/align]");
					$(\'e_textarea\').value = message;
					$("subject").focus();';
            $script .= '</script>';
        } else {
            if ($type == 'portal') {
                $script .= '<div id="show_title" style="display:none">' . $info['title'] . '</div><div id="show_content" style="display:none">' . $info['content'] . '</div><script language="javascript" type="text/javascript" >';
                $script .= '
					var subject = $("show_title").innerHTML;
					var message = $("show_content").innerHTML;
					$("title").value= subject;
					$("from").value= \'' . $this->_public_data($info['from']) . '\';
					document.getElementsByName(\'fromurl\')[0].value = \'' . $this->_public_data($info['url']) . '\';
					document.getElementsByName(\'author\')[0].value = \'' . $this->_public_data($info['author']) . '\';
					$(\'uchome-ttHtmlEditor\').value  = message;
					var p = window.frames[\'uchome-ifrHtmlEditor\'];
					var obj = p.window.frames[\'HtmlEditor\'];
					obj.document.body.innerHTML = message;
					edit_save();
					$("title").focus()';
                $script .= '</script>';
            } else {
                if ($type == 'blog') {
                    $script .= '<div id="show_title" style="display:none">' . $info['title'] . '</div><div id="show_content" style="display:none">' . $info['content'] . '</div><script language="javascript" type="text/javascript" >';
                    $script .= '
					var subject = $("show_title").innerHTML;
					var message = $("show_content").innerHTML;
					$("subject").value= subject;
					document.getElementsByName(\'tag\')[0].value = \'' . $this->_public_data($info['article_tag']) . '\';
					$(\'uchome-ttHtmlEditor\').value  = message;
					var p = window.frames[\'uchome-ifrHtmlEditor\'];
					var obj = p.window.frames[\'HtmlEditor\'];
					obj.document.body.innerHTML = message;
					edit_save();
					$("subject").focus()';
                    $script .= '</script>';
                }
            }
        }
        return $script;
    }
Пример #2
0
function portal_article_content($article_arr, $old_arr = array())
{
    global $_G;
    $aid = $article_arr['aid'];
    if ($article_arr['contents'] > 1 && $article_arr['is_page_public'] == 1) {
        //if($article_arr['content_arr']) $article_arr['content'] = content_merge($article_arr['content_arr']);
    }
    $article_arr['content'] = media_htmlbbcode($article_arr['content'], $article_arr['page_url'], 'protal');
    $article_arr['content'] = audio_htmlbbcode($article_arr['content'], $article_arr['page_url'], 'protal');
    $content = getstr($article_arr['content'], 0, 1, 1, 0, 1);
    //$content = addslashes($content);
    $article_status = 0;
    $regexp = '/(###NextPage(\\[title=(.*?)\\])?###)+/';
    preg_match_all($regexp, $content, $arr);
    $pagetitle = array();
    $pagetitle = array_map('trim', $pagetitle);
    $contents = preg_split($regexp, $content);
    $content_count = count($contents);
    $pageorder = intval($arr['pageorder']);
    $id = 0;
    if ($old_arr['portal_id']) {
        DB::query('DELETE FROM ' . DB::table('portal_article_content') . " WHERE aid ='" . $old_arr['portal_id'] . "'");
    }
    DB::query('DELETE FROM ' . DB::table('portal_article_content') . " WHERE aid ='{$aid}'");
    if ($contents) {
        $inserts = array();
        foreach ($contents as $key => $value) {
            $value = trim($value);
            $inserts[] = "('{$aid}', '" . (empty($pagetitle[$key - 1]) ? $arr['pagetitle'] : $pagetitle[$key - 1]) . "', '{$value}', '" . ($pageorder + $key) . "', '{$article_arr['public_time']}', '{$id}', '{$idtype}')";
        }
        //print_r($inserts);
        DB::query("INSERT INTO " . DB::table('portal_article_content') . "\r\n\t\t\t(aid, title, content, pageorder, dateline, id, idtype)\r\n\t\t\tVALUES " . implode(',', $inserts));
        DB::query('UPDATE ' . DB::table('portal_article_title') . " SET status = '{$article_status}',pic = '" . $article_arr['attachment'] . "', contents = " . count($inserts) . " WHERE aid='{$aid}'");
    }
    //exit();
}