jsÀà from qq

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡var Comment = new Object();

¡¡¡¡var $C = function(tagName)

¡¡¡¡{

¡¡¡¡return document.createElement(tagName);

¡¡¡¡};

¡¡¡¡String.prototype.trim = function()

¡¡¡¡{

¡¡¡¡return this.replace(/^\s*|\s*$/g,"");

¡¡¡¡};

¡¡¡¡String.prototype.realLength = function()

¡¡¡¡{

¡¡¡¡return this.replace(/[^\x00-\xff]/g,"**").length;

¡¡¡¡};

¡¡¡¡String.prototype.left = function(n)

¡¡¡¡{

¡¡¡¡if (this.length > n)

¡¡¡¡{

¡¡¡¡return this.substr(0, n) + '...';

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡return this;

¡¡¡¡}

¡¡¡¡};

¡¡¡¡Array.prototype.remove = function(n)

¡¡¡¡{

¡¡¡¡if (n < 0)

¡¡¡¡{

¡¡¡¡return this;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡return this.slice(0, n).concat(this.slice(n + 1, this.length));

¡¡¡¡}

¡¡¡¡};

¡¡¡¡function findPosX(obj)

¡¡¡¡{

¡¡¡¡var curleft = 0;

¡¡¡¡if (obj && obj.offsetParent)

¡¡¡¡{

¡¡¡¡while (obj.offsetParent)

¡¡¡¡{

¡¡¡¡curleft += obj.offsetLeft;

¡¡¡¡obj = obj.offsetParent;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else if (obj && obj.x) curleft += obj.x;

¡¡¡¡return curleft;

¡¡¡¡}

¡¡¡¡function findPosY(obj)

¡¡¡¡{

¡¡¡¡var curtop = 0;

¡¡¡¡if (obj && obj.offsetParent)

¡¡¡¡{

¡¡¡¡while (obj.offsetParent)

¡¡¡¡{

¡¡¡¡curtop += obj.offsetTop;

¡¡¡¡obj = obj.offsetParent;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else if (obj && obj.y) curtop += obj.y;

¡¡¡¡return curtop;

¡¡¡¡}

¡¡¡¡var input_domain = 'http://input.comment.qq.com';

¡¡¡¡var index_domain = 'http://comment1.qq.com';

¡¡¡¡var pinglun_domain = 'http://pinglun.qq.com';

¡¡¡¡var js_domain = 'http://pinglun.qq.com';

¡¡¡¡var img_domain = 'http://mat1.qq.com/pinglun';

¡¡¡¡Comment.Configure = {

¡¡¡¡version:                '1.0',

¡¡¡¡newline:                '\n',

¡¡¡¡site_length:            20,

¡¡¡¡key_length:                20,

¡¡¡¡id_length:                10,

¡¡¡¡index_line_sum:            10000,

¡¡¡¡index_width:            5,

¡¡¡¡default_mode:            'origin_count',

¡¡¡¡default_order:            1,

¡¡¡¡default_reply_per_page:    10,

¡¡¡¡quote_str_len:            60,

¡¡¡¡intro_len:                150,

¡¡¡¡debate_intro_len:        200,

¡¡¡¡content_len:            200,

¡¡¡¡reply_default_title:    'ÇëÌîд±êÌâ',

¡¡¡¡intro_min_length:        20,

¡¡¡¡request_delay:            100,

¡¡¡¡login_frame_delay:        2000,

¡¡¡¡reply_type_def:            {

¡¡¡¡'1':    '<span class="reply_top">[¾«]</span> ',

¡¡¡¡'2':    '<span class="reply_commend">[¼ö]</span> ',

¡¡¡¡'3':    '<span class="reply_expert">[ר]</span> '

¡¡¡¡},

¡¡¡¡postUrl:                input_domain + '/post.cmt',

¡¡¡¡logoutUrl:                input_domain + '/cgi-bin/qqlogout',

¡¡¡¡commentIndex:            'http://pinglun.qq.com/',

¡¡¡¡loginIframeUrl:            index_domain + '/i_login.htm',

¡¡¡¡defaultLogoUrl:            img_domain + '/images/defpic.jpg'

¡¡¡¡}

¡¡¡¡Comment.Define = {

¡¡¡¡getReplyType: function(type)

¡¡¡¡{

¡¡¡¡if (Comment.Configure.reply_type_def[type])

¡¡¡¡{

¡¡¡¡return Comment.Configure.reply_type_def[type];

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡return '';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.PGV_Count = function(option)

¡¡¡¡{

¡¡¡¡if (typeof(pgvMain) == 'function')

¡¡¡¡{

¡¡¡¡pvRepeatCount = 1;

¡¡¡¡pvCurDomain = sDomain;

¡¡¡¡if (option)

¡¡¡¡{

¡¡¡¡if (option.domain)

¡¡¡¡{

¡¡¡¡pvCurDomain = option.domain;

¡¡¡¡}

¡¡¡¡if (option.path)

¡¡¡¡{

¡¡¡¡pvCurUrl = option.path;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡pgvMain();

¡¡¡¡//Debug.log('call pgv function');

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.UrlFactory = {

¡¡¡¡get3LevelDir: function(id)

¡¡¡¡{

¡¡¡¡var path = parseInt(id / 1000000) + '/';

¡¡¡¡path += parseInt(id / 1000) + '/';

¡¡¡¡path += id / 1;

¡¡¡¡return path;

¡¡¡¡},

¡¡¡¡getCommentUrl: function(id)

¡¡¡¡{

¡¡¡¡return (this.get3LevelDir(id) + '/');

¡¡¡¡},

¡¡¡¡getDebateUrl: function(id)

¡¡¡¡{

¡¡¡¡return this.get3LevelDir(id);

¡¡¡¡},

¡¡¡¡getUserUrl: function(id)

¡¡¡¡{

¡¡¡¡return this.get3LevelDir(id);

¡¡¡¡},

¡¡¡¡getReplyUrl: function(key)

¡¡¡¡{

¡¡¡¡var path = key.substr(0, 8);

¡¡¡¡path += '/' + (key.substr(8, 4));

¡¡¡¡path += '/' + (key.substr(12, 2));

¡¡¡¡path += '/' + key;

¡¡¡¡return path;

¡¡¡¡},

¡¡¡¡getIndexUrl: function(id)

¡¡¡¡{

¡¡¡¡var length = id.toString().length;

¡¡¡¡if (length < Comment.Configure.index_width)

¡¡¡¡{

¡¡¡¡for (var i = 0; i < Comment.Configure.index_width - length; ++i)

¡¡¡¡{

¡¡¡¡id = '0' + id;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return id;

¡¡¡¡},

¡¡¡¡getIndexDir: function(mode)

¡¡¡¡{

¡¡¡¡var modes = {

¡¡¡¡'origin_count':    'originindex',

¡¡¡¡'total_count':    'allindex',

¡¡¡¡'top_count':    'topindex'

¡¡¡¡};

¡¡¡¡return modes[mode];

¡¡¡¡},

¡¡¡¡getRangeHeader: function(start, length, line_len)

¡¡¡¡{

¡¡¡¡var range_start = start * line_len;

¡¡¡¡var range_length = length * line_len;

¡¡¡¡return ['Range','bytes=' + range_start + '-' + (parseInt(range_start) + parseInt(range_length) - 1 - Comment.Configure.newline.length)];

¡¡¡¡},

¡¡¡¡getCommentNormalUrl: function(site, id)

¡¡¡¡{

¡¡¡¡return 'comment.htm?site=' + site + '&id=' + id;

¡¡¡¡},

¡¡¡¡getCommentGroupUrl: function(site, id)

¡¡¡¡{

¡¡¡¡return 'comment_group.htm?site=' + site + '&id=' + id;

¡¡¡¡},

¡¡¡¡getCommentDebateUrl: function(site, id)

¡¡¡¡{

¡¡¡¡return 'comment_debate.htm?site=' + site + '&id=' + id;

¡¡¡¡},

¡¡¡¡getCommentUserUrl: function(uin)

¡¡¡¡{

¡¡¡¡return 'comment_user.htm?uin=' + uin;

¡¡¡¡},

¡¡¡¡getCommentUserLink: function(uin, nick)

¡¡¡¡{

¡¡¡¡return '<a href="' + this.getCommentUserUrl(uin) + '" target="_blank">' + (nick ? nick : uin) + '</a>';

¡¡¡¡},

¡¡¡¡getCommentListLink: function(site_en, site_cn, sort_en, sort_cn, className)

¡¡¡¡{

¡¡¡¡if (className)

¡¡¡¡{

¡¡¡¡className = 'class="' + className + '"';

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡className = '';

¡¡¡¡}

¡¡¡¡return '<a href="' + Comment.Configure.commentIndex + '" ' + className + ' target="_blank">ÆÀÂÛÊ×Ò³</a> >> '

¡¡¡¡+ '<a href="list.htm?' + site_en + '." ' + className + ' target="_blank">' + site_cn + '</a> >> '

¡¡¡¡+ '<a href="list.htm?' + site_en + '.' + sort_en + '" ' + className + ' target="_blank">' + sort_cn + '</a>';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.ContentFormat = {

¡¡¡¡decode: function(content)

¡¡¡¡{

¡¡¡¡return content.split(Comment.Configure.newline);

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.DataObjectFactory = function(content, model)

¡¡¡¡{

¡¡¡¡content = Comment.ContentFormat.decode(content);

¡¡¡¡var dataModel = Comment.DataObject[model];

¡¡¡¡if (content.length - 1 != dataModel.length)

¡¡¡¡{

¡¡¡¡if (model != 'commentinfo' && model != 'listsum')

¡¡¡¡{

¡¡¡¡//alert('[DEBUG ÐÅÏ¢] O/R Ó³Éäʧ°Ü£¬Ô¶³ÌÊý¾ÝºÍ±¾µØÄ£ÐÍÊýÁ¿²»Æ¥Å䣡Çë¼ì²é£¡');

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var dataObject = new Object();

¡¡¡¡for (var i = 0; i < dataModel.length; ++i)

¡¡¡¡{

¡¡¡¡dataObject[dataModel[i]] = content[i];

¡¡¡¡}

¡¡¡¡return dataObject;

¡¡¡¡}

¡¡¡¡Comment.DataObject = {

¡¡¡¡'commentinfo':

¡¡¡¡[

¡¡¡¡'site_cn',

¡¡¡¡'sort_en',

¡¡¡¡'sort_cn',

¡¡¡¡'source',

¡¡¡¡'source_url',

¡¡¡¡'title',

¡¡¡¡'url',

¡¡¡¡'intro',

¡¡¡¡'intro_img',

¡¡¡¡'group_id',

¡¡¡¡'intro_show',

¡¡¡¡'create_time',

¡¡¡¡'debate_id'

¡¡¡¡],

¡¡¡¡'groupinfo':

¡¡¡¡[

¡¡¡¡'site_cn',

¡¡¡¡'title',

¡¡¡¡'url',

¡¡¡¡'intro',

¡¡¡¡'intro_img',

¡¡¡¡'comment_id',

¡¡¡¡'intro_show',

¡¡¡¡'create_time'

¡¡¡¡],

¡¡¡¡'debateinfo':

¡¡¡¡[

¡¡¡¡'site_cn',

¡¡¡¡'title',

¡¡¡¡'url',

¡¡¡¡'intro',

¡¡¡¡'intro_img',

¡¡¡¡'agree_id',

¡¡¡¡'disagree_id',

¡¡¡¡'middle_id',

¡¡¡¡'intro_show',

¡¡¡¡'create_time'

¡¡¡¡],

¡¡¡¡'sum':

¡¡¡¡[

¡¡¡¡'origin_count',

¡¡¡¡'total_count',

¡¡¡¡'top_count'

¡¡¡¡],

¡¡¡¡'reply':

¡¡¡¡[

¡¡¡¡'comment_id',

¡¡¡¡'uin',

¡¡¡¡'nickname',

¡¡¡¡'pub_time',

¡¡¡¡'pass_time',

¡¡¡¡'ip',

¡¡¡¡'title',

¡¡¡¡'content',

¡¡¡¡'reply_key',

¡¡¡¡'is_del',

¡¡¡¡'reply_type',

¡¡¡¡'reply_kind',

¡¡¡¡'tips'

¡¡¡¡],

¡¡¡¡'pksum':

¡¡¡¡[

¡¡¡¡'agree',

¡¡¡¡'disagree',

¡¡¡¡'middle'

¡¡¡¡],

¡¡¡¡'listsum':

¡¡¡¡[

¡¡¡¡'all'

¡¡¡¡],

¡¡¡¡'usersum':

¡¡¡¡[

¡¡¡¡'total_count',

¡¡¡¡'top_count',

¡¡¡¡'is_expert'

¡¡¡¡],

¡¡¡¡'userinfo':

¡¡¡¡[

¡¡¡¡'user_img',

¡¡¡¡'user_intro'

¡¡¡¡]

¡¡¡¡}

¡¡¡¡/* ¿ØÖÆÆ÷Àà */

¡¡¡¡Comment.Control = new Object();

¡¡¡¡/* ·ÖÒ³¿ØÖÆÆ÷ */

¡¡¡¡Comment.Control.Pagination = Class.create();

¡¡¡¡Comment.Control.Pagination.prototype = {

¡¡¡¡initialize: function(option)

¡¡¡¡{

¡¡¡¡this.totalPage = option.totalPage;

¡¡¡¡this.currPage = 1;

¡¡¡¡this.zoom_start = 3;

¡¡¡¡this.zoom_end = 613;

¡¡¡¡this.bindControl();

¡¡¡¡},

¡¡¡¡reset: function(option)

¡¡¡¡{

¡¡¡¡this.totalPage = option.totalPage;

¡¡¡¡this.currPage = 1;

¡¡¡¡this.movePageControl(this.currPage);

¡¡¡¡},

¡¡¡¡updateOrder: function()

¡¡¡¡{

¡¡¡¡},

¡¡¡¡countCurrPage: function(offset)

¡¡¡¡{

¡¡¡¡var page = parseInt(offset * this.totalPage / this.zoom_end) + 1;

¡¡¡¡if (page > this.totalPage)

¡¡¡¡{

¡¡¡¡page = this.totalPage;

¡¡¡¡}

¡¡¡¡return page;

¡¡¡¡},

¡¡¡¡movePageControl: function(toPage)

¡¡¡¡{

¡¡¡¡if (toPage < 1 || toPage > this.totalPage)

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var offset = 0;

¡¡¡¡if (toPage == 1)

¡¡¡¡{

¡¡¡¡offset = this.zoom_start;

¡¡¡¡}

¡¡¡¡else if (toPage == this.totalPage)

¡¡¡¡{

¡¡¡¡offset = this.zoom_end;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡offset = this.zoom_start + (toPage - 1) * (this.zoom_end / (this.totalPage - 1));

¡¡¡¡}

¡¡¡¡$('scrfloat').style.left = offset + 'px';

¡¡¡¡//$('scrfloat_2').style.left = offset + 'px';

¡¡¡¡},

¡¡¡¡bindControl: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡var tooltip = $('Page_tip');

¡¡¡¡var offsetX = 10;

¡¡¡¡var offsetY = -10;

¡¡¡¡function getSite(o)

¡¡¡¡{

¡¡¡¡var obj = o;

¡¡¡¡var objS = obj.offsetLeft;

¡¡¡¡while (obj != obj.offsetParent && obj.offsetParent)

¡¡¡¡{

¡¡¡¡obj = obj.offsetParent;

¡¡¡¡if (obj.tagName == 'span')

¡¡¡¡{

¡¡¡¡objS += obj.offsetLeft;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return objS;

¡¡¡¡}

¡¡¡¡Event.observe($('scr'), 'mousedown', mDown, false);

¡¡¡¡//Event.observe($('scr_2'), 'mousedown', mDown, false);

¡¡¡¡var flag = false;

¡¡¡¡function mDown()

¡¡¡¡{

¡¡¡¡flag = true;

¡¡¡¡if(window.event.srcElement.id != 'scr'

¡¡¡¡&& window.event.srcElement.id != 'scr_2')

¡¡¡¡{

¡¡¡¡$('scrfloat').style.left = $('scrfloat').offsetLeft;

¡¡¡¡//$('scrfloat_2').style.left = $('scrfloat').style.left;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$('scrfloat').style.left = (window.event.x - 5);

¡¡¡¡//$('scrfloat_2').style.left = $('scrfloat').style.left;

¡¡¡¡}

¡¡¡¡tooltip.style.display = 'block';

¡¡¡¡t = $('scrfloat').offsetLeft;

¡¡¡¡tooltip.innerHTML = self.countCurrPage(t);

¡¡¡¡tooltip.style.left = window.event.clientX + offsetX + 'px';

¡¡¡¡tooltip.style.top = window.event.clientY + offsetY + document.documentElement.scrollTop + 'px';

¡¡¡¡}

¡¡¡¡function mMove()

¡¡¡¡{

¡¡¡¡if(flag)

¡¡¡¡{

¡¡¡¡$('scrfloat').style.left = window.event.clientX - getSite($('scr')) - 5 + 'px';

¡¡¡¡//$('scrfloat_2').style.left = window.event.clientX - getSite($('scr')) - 5 + 'px';

¡¡¡¡}

¡¡¡¡if (parseInt($('scrfloat').style.left.replace('px', '')) > self.zoom_end)

¡¡¡¡{

¡¡¡¡$('scrfloat').style.left = self.zoom_end + 'px';

¡¡¡¡//$('scrfloat_2').style.left = $('scrfloat').style.left;

¡¡¡¡}

¡¡¡¡if (parseInt($("scrfloat").style.left.replace('px', '')) < self.zoom_start)

¡¡¡¡{

¡¡¡¡$('scrfloat').style.left = self.zoom_start + 'px';

¡¡¡¡//$('scrfloat_2').style.left = $('scrfloat').style.left;

¡¡¡¡}

¡¡¡¡if (flag)

¡¡¡¡{

¡¡¡¡t = $('scrfloat').offsetLeft;

¡¡¡¡tooltip.innerHTML = self.countCurrPage(t);

¡¡¡¡tooltip.style.left = window.event.clientX + offsetX + 'px';

¡¡¡¡tooltip.style.top = window.event.clientY + offsetY + document.documentElement.scrollTop + 'px';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function mUp()

¡¡¡¡{

¡¡¡¡if (flag)

¡¡¡¡{

¡¡¡¡t = $('scrfloat').offsetLeft;

¡¡¡¡self.setCurrPage(self.countCurrPage(t));

¡¡¡¡}

¡¡¡¡flag = false;

¡¡¡¡tooltip.style.display = 'none';

¡¡¡¡}

¡¡¡¡function mEnd()

¡¡¡¡{

¡¡¡¡window.event.returnValue = false;

¡¡¡¡}

¡¡¡¡window.document.onmousemove = mMove;

¡¡¡¡window.document.ondragstart = mEnd;

¡¡¡¡window.document.onmouseup = mUp;

¡¡¡¡Event.observe($('up'), 'click', mUpBtn, false);

¡¡¡¡Event.observe($('down'), 'click', mDownBtn, false);

¡¡¡¡function mUpBtn()

¡¡¡¡{

¡¡¡¡self.setCurrPage(self.currPage - 1, 1);

¡¡¡¡}

¡¡¡¡function mDownBtn()

¡¡¡¡{

¡¡¡¡self.setCurrPage(self.currPage + 1, 1);

¡¡¡¡}

¡¡¡¡},

¡¡¡¡nextPage: function()

¡¡¡¡{

¡¡¡¡if (this.currPage < this.totalPage)

¡¡¡¡{

¡¡¡¡++this.currPage;

¡¡¡¡this.onPageChange();

¡¡¡¡}

¡¡¡¡},

¡¡¡¡previousPage: function()

¡¡¡¡{

¡¡¡¡if (this.currPage > 0)

¡¡¡¡{

¡¡¡¡--this.currPage;

¡¡¡¡this.onPageChange();

¡¡¡¡}

¡¡¡¡},

¡¡¡¡setCurrPage: function(page, move)

¡¡¡¡{

¡¡¡¡if (page > 0 && page <= this.totalPage && page != this.currPage)

¡¡¡¡{

¡¡¡¡this.currPage = page;

¡¡¡¡this.onPageChange();

¡¡¡¡if (move != null)

¡¡¡¡{

¡¡¡¡this.movePageControl(page);

¡¡¡¡}

¡¡¡¡}

¡¡¡¡},

¡¡¡¡onPageChange: function()

¡¡¡¡{

¡¡¡¡},

¡¡¡¡getCurrPage: function()

¡¡¡¡{

¡¡¡¡return this.currPage;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.Iterator = {

¡¡¡¡getIndex: function(objComment)

¡¡¡¡{

¡¡¡¡var rangeList = new Array();

¡¡¡¡function getIndexId(reply_id)

¡¡¡¡{

¡¡¡¡return parseInt(reply_id / Comment.Configure.index_line_sum);

¡¡¡¡}

¡¡¡¡function getReplyPos(reply_id)

¡¡¡¡{

¡¡¡¡return (reply_id % Comment.Configure.index_line_sum);

¡¡¡¡}

¡¡¡¡if (objComment.order == 0)

¡¡¡¡{

¡¡¡¡var reply_start = (objComment.currPage - 1) * objComment.replyPerPage;

¡¡¡¡var start_index_id = getIndexId(reply_start);

¡¡¡¡var start_reply_id = getReplyPos(reply_start);

¡¡¡¡var currReply = 1;

¡¡¡¡var replySum = 0;

¡¡¡¡while (currReply++)

¡¡¡¡{

¡¡¡¡if (reply_start + currReply > objComment.totalReply)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(start_reply_id, currReply - replySum - 1, objComment.index_line_len)

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (currReply == objComment.replyPerPage)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(start_reply_id, currReply - replySum, objComment.index_line_len)

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (start_reply_id + currReply > Comment.Configure.index_line_sum)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(start_reply_id, currReply, objComment.index_line_len)

¡¡¡¡});

¡¡¡¡start_index_id++;

¡¡¡¡start_reply_id = 0;

¡¡¡¡replySum = currReply - 1;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡var reply_start = objComment.totalReply - 1 - (objComment.currPage - 1) * objComment.replyPerPage;

¡¡¡¡var start_index_id = getIndexId(reply_start);

¡¡¡¡var start_reply_id = getReplyPos(reply_start);

¡¡¡¡var currReply = 1;

¡¡¡¡var replySum = 0;

¡¡¡¡while (currReply++)

¡¡¡¡{

¡¡¡¡if (reply_start - currReply < 0)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(0, start_reply_id + 1, objComment.index_line_len)

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (currReply == objComment.replyPerPage)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(start_reply_id - currReply + replySum + 1, currReply - replySum, objComment.index_line_len)

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (start_reply_id - currReply < 0)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(0, start_reply_id + 1, objComment.index_line_len)

¡¡¡¡});

¡¡¡¡start_index_id--;

¡¡¡¡start_reply_id = Comment.Configure.index_line_sum - 1;

¡¡¡¡replySum = currReply;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡return rangeList;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡/* ÏÔʾÑùʽ¿ØÖÆÆ÷ */

¡¡¡¡Comment.Control.Display = Class.create();

¡¡¡¡Comment.Control.Display.prototype = {

¡¡¡¡initialize: function()

¡¡¡¡{

¡¡¡¡}

¡¡¡¡}

¡¡¡¡/* Ò³ÃæÏÔʾÀà */

¡¡¡¡Comment.Page = new Object();

¡¡¡¡/* ÆÀÂÛÒ³¿ØÖƽӿڠ*/

¡¡¡¡Comment.Page.Base = {

¡¡¡¡changeMode: function(mode)

¡¡¡¡{

¡¡¡¡this.mode = mode;

¡¡¡¡this.totalReply = this.data_sum[mode];

¡¡¡¡this.totalPage = parseInt(this.totalReply / this.replyPerPage)

¡¡¡¡+ (this.totalReply % this.replyPerPage != 0 ? 1 : 0);

¡¡¡¡},

¡¡¡¡changeOrder: function(order)

¡¡¡¡{

¡¡¡¡if (this.order == order)

¡¡¡¡return;

¡¡¡¡this.order = order;

¡¡¡¡this.currPage = 1;

¡¡¡¡this.resetPageControl();

¡¡¡¡this.bindPageNav();

¡¡¡¡this.bindReplyList();

¡¡¡¡this.bindOrderControl();

¡¡¡¡},

¡¡¡¡bindOrderControl: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡if (self.order == 0)

¡¡¡¡{

¡¡¡¡$('order_front').style.cursor = 'none';

¡¡¡¡$('order_front').style.color = '#000';

¡¡¡¡$('order_front').onclick = function(e)

¡¡¡¡{

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡$('order_desc').style.cursor = 'pointer';

¡¡¡¡$('order_desc').style.color = '#3B78AF';

¡¡¡¡$('order_desc').onclick = function()

¡¡¡¡{

¡¡¡¡self.changeOrder(1);

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else if (self.order == 1)

¡¡¡¡{

¡¡¡¡$('order_front').style.cursor = 'pointer';

¡¡¡¡$('order_front').style.color = '#3B78AF';

¡¡¡¡$('order_front').onclick = function(e)

¡¡¡¡{

¡¡¡¡self.changeOrder(0);

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡$('order_desc').style.cursor = 'none';

¡¡¡¡$('order_desc').style.color = '#000';

¡¡¡¡$('order_desc').onclick = function()

¡¡¡¡{

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindRowsPerPage: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡$A($('rows_page').getElementsByTagName('a')).each(function(button)

¡¡¡¡{

¡¡¡¡button.onclick = function()

¡¡¡¡{

¡¡¡¡self.replyPerPage = button.value;

¡¡¡¡self.currPage = 1;

¡¡¡¡self.resetPageControl();

¡¡¡¡self.bindPageNav();

¡¡¡¡self.bindReplyList();

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡selectTab: function(mode)

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡$A($('mode_tab').getElementsByTagName('p')).each(function(tab)

¡¡¡¡{

¡¡¡¡if (tab.value == mode)

¡¡¡¡{

¡¡¡¡$A($('mode_tab').getElementsByTagName('p')).each(function(t)

¡¡¡¡{

¡¡¡¡if (t.value != '')

¡¡¡¡{

¡¡¡¡t.className = 'none';

¡¡¡¡}

¡¡¡¡});

¡¡¡¡tab.className = 'c';

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡appendTab: function(option)

¡¡¡¡{

¡¡¡¡var pTab = $C('p');

¡¡¡¡pTab.innerHTML = option.title;

¡¡¡¡pTab.value = '';

¡¡¡¡$('mode_tab').appendChild(pTab);

¡¡¡¡pTab.onclick = function()

¡¡¡¡{

¡¡¡¡window.open(option.url);

¡¡¡¡}

¡¡¡¡return false;

¡¡¡¡},

¡¡¡¡bindTabControl: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡$A($('mode_tab').getElementsByTagName('p')).each(function(tab)

¡¡¡¡{

¡¡¡¡var mode = tab.value;

¡¡¡¡if (mode != '')

¡¡¡¡{

¡¡¡¡tab.onclick = function()

¡¡¡¡{

¡¡¡¡$A($('mode_tab').getElementsByTagName('p')).each(function(t)

¡¡¡¡{

¡¡¡¡t.className = 'none';

¡¡¡¡});

¡¡¡¡this.className = 'c';

¡¡¡¡self.currPage = 1;

¡¡¡¡self.changeMode(mode)

¡¡¡¡self.resetPageControl();

¡¡¡¡self.bindPageNav();

¡¡¡¡self.bindReplyList();

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡bindPageRandom: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡$A($('page_random', 'page_random_2')).each(function(button)

¡¡¡¡{

¡¡¡¡button.onclick = function()

¡¡¡¡{

¡¡¡¡if (self.totalPage == 1)

¡¡¡¡{

¡¡¡¡self.currPage = 1;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡self.currPage = Math.floor(Math.random() * (self.totalPage + 1));

¡¡¡¡if (self.currPage == 0)

¡¡¡¡{

¡¡¡¡self.currPage = 1;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡self.bindPageNav();

¡¡¡¡self.bindReplyList();

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡bindPageNav: function(flag)

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡var currPage = self.currPage;

¡¡¡¡if (flag != 1)

¡¡¡¡{

¡¡¡¡this.pageControl.movePageControl(currPage);

¡¡¡¡}

¡¡¡¡var pagesPerRange = 6;

¡¡¡¡this.totalPage = parseInt(this.totalReply / this.replyPerPage)

¡¡¡¡+ (this.totalReply % this.replyPerPage != 0 ? 1 : 0);

¡¡¡¡var startPage = parseInt((self.currPage - 1) / pagesPerRange) * pagesPerRange + 1;

¡¡¡¡createPageNav($('page_nav'), false);

¡¡¡¡createPageNav($('page_nav_2'), true);

¡¡¡¡function createPageNav(obj, top)

¡¡¡¡{

¡¡¡¡obj.innerHTML = '';

¡¡¡¡var i = startPage;

¡¡¡¡if (self.currPage != 1)

¡¡¡¡{

¡¡¡¡obj.appendChild(createPage2(1, 'µÚÒ»Ò³', top));

¡¡¡¡obj.appendChild(createPage({

¡¡¡¡page:    'ÉÏÒ»Ò³',

¡¡¡¡onclick:function()

¡¡¡¡{

¡¡¡¡self.currPage = self.currPage - 1;

¡¡¡¡self.bindPageNav();

¡¡¡¡self.bindReplyList();

¡¡¡¡if (top)

¡¡¡¡{

¡¡¡¡window.location.replace('#reload');

¡¡¡¡}

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡}));

¡¡¡¡}

¡¡¡¡for (; i < startPage + pagesPerRange; ++i)

¡¡¡¡{

¡¡¡¡if (i > self.totalPage)

¡¡¡¡{

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡obj.appendChild(createPage2(i, '', top));

¡¡¡¡}

¡¡¡¡if (self.currPage < self.totalPage)

¡¡¡¡{

¡¡¡¡obj.appendChild(createPage({

¡¡¡¡page:    'ÏÂÒ»Ò³',

¡¡¡¡onclick:function()

¡¡¡¡{

¡¡¡¡self.currPage = self.currPage + 1;

¡¡¡¡self.bindPageNav();

¡¡¡¡self.bindReplyList();

¡¡¡¡if (top)

¡¡¡¡{

¡¡¡¡window.location.replace('#reload');

¡¡¡¡}

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡}));

¡¡¡¡obj.appendChild(createPage2(self.totalPage, '×îĩҳ', top));

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function createPage(option)

¡¡¡¡{

¡¡¡¡var p = $C('a');

¡¡¡¡if (option.page == self.currPage)

¡¡¡¡{

¡¡¡¡p.style.fontWeight = 'bold';

¡¡¡¡}

¡¡¡¡p.innerHTML = (option.text && option.text != '') ? option.text : option.page;

¡¡¡¡p.href = '';

¡¡¡¡p.onclick = option.onclick;

¡¡¡¡if (option.title)

¡¡¡¡{

¡¡¡¡p.title = option.title;

¡¡¡¡}

¡¡¡¡return p;

¡¡¡¡}

¡¡¡¡function createPage2(page, text, top)

¡¡¡¡{

¡¡¡¡return createPage({

¡¡¡¡page:    page,

¡¡¡¡onclick:function()

¡¡¡¡{

¡¡¡¡self.currPage = page;

¡¡¡¡self.bindPageNav();

¡¡¡¡self.bindReplyList();

¡¡¡¡if (top)

¡¡¡¡{

¡¡¡¡window.location.replace('#reload');

¡¡¡¡}

¡¡¡¡return false;

¡¡¡¡},

¡¡¡¡text:    text != '' ? text : ''

¡¡¡¡});

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindPageControl: function()

¡¡¡¡{

¡¡¡¡this.totalPage = parseInt(this.totalReply / this.replyPerPage)

¡¡¡¡+ (this.totalReply % this.replyPerPage != 0 ? 1 : 0);

¡¡¡¡this.pageControl = new Comment.Control.Pagination({

¡¡¡¡totalPage: this.totalPage

¡¡¡¡});

¡¡¡¡/* overwrite event virtual function */

¡¡¡¡var self = this;

¡¡¡¡this.pageControl.onPageChange = function()

¡¡¡¡{

¡¡¡¡self.currPage = this.getCurrPage();

¡¡¡¡self.bindPageNav(1);

¡¡¡¡self.bindReplyList();

¡¡¡¡}

¡¡¡¡},

¡¡¡¡resetPageControl: function()

¡¡¡¡{

¡¡¡¡this.totalPage = parseInt(this.totalReply / this.replyPerPage)

¡¡¡¡+ (this.totalReply % this.replyPerPage != 0 ? 1 : 0);

¡¡¡¡this.pageControl.reset({

¡¡¡¡totalPage: this.totalPage

¡¡¡¡});

¡¡¡¡},

¡¡¡¡bindTopReply: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡var rangeList = new Array();

¡¡¡¡function getIndexId(reply_id)

¡¡¡¡{

¡¡¡¡return parseInt(reply_id / Comment.Configure.index_line_sum);

¡¡¡¡}

¡¡¡¡function getReplyPos(reply_id)

¡¡¡¡{

¡¡¡¡return (reply_id % Comment.Configure.index_line_sum);

¡¡¡¡}

¡¡¡¡var top_show_sum = 5;

¡¡¡¡var index_line_len = self.index_line_len;

¡¡¡¡var reply_start = self.data_sum['top_count'] - 1;

¡¡¡¡var start_index_id = getIndexId(reply_start);

¡¡¡¡var start_reply_id = getReplyPos(reply_start);

¡¡¡¡var currReply = 1;

¡¡¡¡var replySum = 0;

¡¡¡¡while (currReply++)

¡¡¡¡{

¡¡¡¡if (reply_start - currReply < 0)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(0, start_reply_id + 1, index_line_len)

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (currReply == top_show_sum)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(start_reply_id - currReply + replySum + 1, currReply - replySum, index_line_len)

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (start_reply_id - currReply < 0)

¡¡¡¡{

¡¡¡¡rangeList.push({

¡¡¡¡url:    Comment.UrlFactory.getIndexUrl(start_index_id),

¡¡¡¡range:    Comment.UrlFactory.getRangeHeader(0, start_reply_id + 1, index_line_len)

¡¡¡¡});

¡¡¡¡start_index_id--;

¡¡¡¡start_reply_id = Comment.Configure.index_line_sum - 1;

¡¡¡¡replySum = currReply;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var replyList = new Array();

¡¡¡¡var replyAllList = new Array();

¡¡¡¡var rangeSum = rangeList.length;

¡¡¡¡for (var i = 0; i < rangeList.length; ++i)

¡¡¡¡{

¡¡¡¡new getReplyList(i);

¡¡¡¡}

¡¡¡¡function getReplyList(i)

¡¡¡¡{

¡¡¡¡var comment_type = 'normal';

¡¡¡¡var comment_id = self.commentId;

¡¡¡¡if (self.name == 'Group')

¡¡¡¡{

¡¡¡¡comment_type = 'group';

¡¡¡¡comment_id = self.groupId;

¡¡¡¡}

¡¡¡¡var sCommentIndexUrl = '/' + self.site + '/' + comment_type + '/'

¡¡¡¡+ Comment.UrlFactory.getCommentUrl(comment_id)

¡¡¡¡+ Comment.UrlFactory.getIndexDir('top_count')

¡¡¡¡+ '/'

¡¡¡¡+ rangeList[i].url

¡¡¡¡+ '.htm' + noCacheUrl();

¡¡¡¡new Ajax.Request(

¡¡¡¡sCommentIndexUrl,

¡¡¡¡{

¡¡¡¡method:         'get',

¡¡¡¡asynchronous:    true,

¡¡¡¡onSuccess:     onSucc,

¡¡¡¡onFailure:        onError,

¡¡¡¡requestHeaders:rangeList[i].range

¡¡¡¡}

¡¡¡¡);

¡¡¡¡function onSucc(response)

¡¡¡¡{

¡¡¡¡replyList[i] = Comment.ContentFormat.decode(response.responseText);

¡¡¡¡if (i == rangeSum - 1)

¡¡¡¡{

¡¡¡¡replySort();

¡¡¡¡self.bindReplyList();

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function onError()

¡¡¡¡{

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function replySort()

¡¡¡¡{

¡¡¡¡if (self.order == 0)

¡¡¡¡{

¡¡¡¡if (replyList.length == 1)

¡¡¡¡{

¡¡¡¡replyAllList = replyAllList.concat(replyList[0]);

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡for (var i = 0; i < replyList.length; ++i)

¡¡¡¡{

¡¡¡¡replyAllList = replyAllList.concat(replyList[i]);

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡if (replyList.length == 1)

¡¡¡¡{

¡¡¡¡for (var i = replyList[0].length - 1; i >= 0; --i)

¡¡¡¡{

¡¡¡¡replyAllList.push(replyList[0][i])

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡for (var i = 0; i < replyList.length; ++i)

¡¡¡¡{

¡¡¡¡for (var j = replyList[i].length - 1; j >= 0; --j)

¡¡¡¡{

¡¡¡¡replyAllList.push(replyList[i][j])

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var str = '';

¡¡¡¡for (var j = 0; j < replyAllList.length; ++j)

¡¡¡¡{

¡¡¡¡str += replyAllList[j] + '\r\n';

¡¡¡¡}

¡¡¡¡self.topReplyList = replyAllList;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.User = {

¡¡¡¡logined:    null,

¡¡¡¡uin:        null

¡¡¡¡}

¡¡¡¡Comment.Post = {

¡¡¡¡init: function(option)

¡¡¡¡{

¡¡¡¡this.base = option.base;

¡¡¡¡this.option = option;

¡¡¡¡this.initAsyncForm();

¡¡¡¡this.bindPostTypeSelector();

¡¡¡¡this.bindOtherEvent();

¡¡¡¡this.bindPostBtn();

¡¡¡¡this.bindBottomPostBtn();

¡¡¡¡this.bindBottomTitleEvent();

¡¡¡¡this.bindBottomPostTypeEvent();

¡¡¡¡this.setDefault();

¡¡¡¡},

¡¡¡¡bindOpenPostBtn: function(btn, c_id)

¡¡¡¡{

¡¡¡¡$(btn).onclick = function()

¡¡¡¡{

¡¡¡¡Comment.Post.beforeOpenPost(0, '', c_id);

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡},

¡¡¡¡formElem: [

¡¡¡¡'b_anonymous',

¡¡¡¡'c_id',

¡¡¡¡'c_site',

¡¡¡¡'c_sort',

¡¡¡¡'c_title',

¡¡¡¡'c_content',

¡¡¡¡'r_key',

¡¡¡¡'r_type',

¡¡¡¡'r_tips',

¡¡¡¡'g_id'

¡¡¡¡],

¡¡¡¡initAsyncForm: function()

¡¡¡¡{

¡¡¡¡var formElem = this.formElem;

¡¡¡¡var form = $C('form');

¡¡¡¡form.id = 'post_form';

¡¡¡¡$A(formElem).each(function(elem_name)

¡¡¡¡{

¡¡¡¡var elem = $C('input');

¡¡¡¡elem.type = 'hidden';

¡¡¡¡elem.name = elem_name;

¡¡¡¡elem.value = '';

¡¡¡¡form.appendChild(elem);

¡¡¡¡});

¡¡¡¡document.getElementsByTagName('body')[0].appendChild(form);

¡¡¡¡},

¡¡¡¡clearAsyncForm: function()

¡¡¡¡{

¡¡¡¡$A($('post_form').getElementsByTagName('input')).each(function(elem)

¡¡¡¡{

¡¡¡¡elem.value = '';

¡¡¡¡});

¡¡¡¡},

¡¡¡¡setDefault: function()

¡¡¡¡{

¡¡¡¡$('stat_post_type').innerHTML = '·ÇÄäÃû·¢±í';

¡¡¡¡},

¡¡¡¡bindOtherEvent: function()

¡¡¡¡{

¡¡¡¡if (!$('r_quote_del'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡/* ÒýÓÃʼþ */

¡¡¡¡$('r_quote_del').onclick = function()

¡¡¡¡{

¡¡¡¡$('r_quote').style.display = 'none';

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡/* Ñ¡Ôñ»Ø¸´Á¢³¡ */

¡¡¡¡$A($('reply_type').getElementsByTagName('input')).each(

¡¡¡¡function(radio)

¡¡¡¡{

¡¡¡¡if (radio.value == 'middle')

¡¡¡¡{

¡¡¡¡radio.checked = true;

¡¡¡¡}

¡¡¡¡radio.onclick = function()

¡¡¡¡{

¡¡¡¡if (this.value == 'agree')

¡¡¡¡{

¡¡¡¡$('stat_reply_type').innerHTML = 'Ö§³ÖÔ­Ìû';

¡¡¡¡makeFormValue({r_type:'0'});

¡¡¡¡}

¡¡¡¡else if (this.value == 'disagree')

¡¡¡¡{

¡¡¡¡$('stat_reply_type').innerHTML = '·´¶ÔÔ­Ìû';

¡¡¡¡makeFormValue({r_type:'1'});

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$('stat_reply_type').innerHTML = 'ÖÐÁ¢Ì¬¶È';

¡¡¡¡makeFormValue({r_type:'2'});

¡¡¡¡}

¡¡¡¡}

¡¡¡¡});

¡¡¡¡/* Ñ¡Ôñ±çÂÛÁ¢³¡ */

¡¡¡¡$A($('debate_id').getElementsByTagName('input')).each(

¡¡¡¡function(radio)

¡¡¡¡{

¡¡¡¡radio.onclick = function()

¡¡¡¡{

¡¡¡¡if (this.value == 'agree')

¡¡¡¡{

¡¡¡¡$('stat_debate_type').innerHTML = 'ÎÒÊÇÕý·½';

¡¡¡¡makeFormValue({c_id:Comment.Post.base.data_info.agree_id});

¡¡¡¡}

¡¡¡¡else if (this.value == 'disagree')

¡¡¡¡{

¡¡¡¡$('stat_debate_type').innerHTML = 'ÎÒÊÇ·´·½';

¡¡¡¡makeFormValue({c_id:Comment.Post.base.data_info.disagree_id});

¡¡¡¡}

¡¡¡¡else if (this.value == 'middle')

¡¡¡¡{

¡¡¡¡$('stat_debate_type').innerHTML = 'ÎÒÊÇÖÐÁ¢·½';

¡¡¡¡makeFormValue({c_id:Comment.Post.base.data_info.middle_id});

¡¡¡¡}

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡setReplyType: function(type)

¡¡¡¡{

¡¡¡¡$A($('reply_type').getElementsByTagName('input')).each(

¡¡¡¡function(radio)

¡¡¡¡{

¡¡¡¡if (radio.value == type)

¡¡¡¡{

¡¡¡¡radio.click();

¡¡¡¡return;

¡¡¡¡/*

¡¡¡¡radio.checked = true;

¡¡¡¡var type_num = {

¡¡¡¡'agree':    '0',

¡¡¡¡'disagree':    '1',

¡¡¡¡'middle':    '2'

¡¡¡¡};

¡¡¡¡makeFormValue({r_type:type_num[type]});

¡¡¡¡*/

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡radio.checked = false;

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡setDebate: function(type, c_id)

¡¡¡¡{

¡¡¡¡$A($('debate_id').getElementsByTagName('input')).each(

¡¡¡¡function(radio)

¡¡¡¡{

¡¡¡¡if (radio.value == type)

¡¡¡¡{

¡¡¡¡radio.checked = true;

¡¡¡¡makeFormValue({c_id:c_id});

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡radio.checked = false;

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡clearValue: function()

¡¡¡¡{

¡¡¡¡$A($(

¡¡¡¡'l_c_title',

¡¡¡¡'l_c_content'

¡¡¡¡)).each(

¡¡¡¡function(input)

¡¡¡¡{

¡¡¡¡input.value = '';

¡¡¡¡});

¡¡¡¡},

¡¡¡¡bindTitleEvent: function()

¡¡¡¡{

¡¡¡¡var d_title = Comment.Configure.reply_default_title;

¡¡¡¡$('l_c_title').value = d_title;

¡¡¡¡$('l_c_title').onfocus = function()

¡¡¡¡{

¡¡¡¡if ($('l_c_title').value == d_title)

¡¡¡¡{

¡¡¡¡$('l_c_title').value = '';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡$('l_c_title').onblur = function()

¡¡¡¡{

¡¡¡¡if ($('l_c_title').value == '')

¡¡¡¡{

¡¡¡¡$('l_c_title').value = d_title;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindBottomTitleEvent: function()

¡¡¡¡{

¡¡¡¡if (!$('b_c_title'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var d_title = Comment.Configure.reply_default_title;

¡¡¡¡$('b_c_title').value = d_title;

¡¡¡¡$('b_c_title').onfocus = function()

¡¡¡¡{

¡¡¡¡if ($('b_c_title').value == d_title)

¡¡¡¡{

¡¡¡¡$('b_c_title').value = '';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡$('b_c_title').onblur = function()

¡¡¡¡{

¡¡¡¡if ($('b_c_title').value == '')

¡¡¡¡{

¡¡¡¡$('b_c_title').value = d_title;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡},

¡¡¡¡setPostTypeSelector: function(type)

¡¡¡¡{

¡¡¡¡if (type == 'login_select')

¡¡¡¡{

¡¡¡¡$('l_login_frame').src = 'i_login.htm?l_login_frame';

¡¡¡¡showElement('l_login_post');

¡¡¡¡$('stat_post_type').innerHTML = 'µÇ¼·¢±í';

¡¡¡¡$('l_b_tips').disabled = false;

¡¡¡¡$('l_b_tips').checked = false;

¡¡¡¡$('l_b_anonymous').checked = false;

¡¡¡¡}

¡¡¡¡else if (type == 'anonymous_select')

¡¡¡¡{

¡¡¡¡hideElement('l_login_post');

¡¡¡¡$('stat_post_type').innerHTML = 'ÄäÃû·¢±í';

¡¡¡¡$('l_b_tips').disabled = true;

¡¡¡¡$('l_b_tips').checked = false;

¡¡¡¡$('l_b_anonymous').checked = true;

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindPostTypeSelector: function()

¡¡¡¡{

¡¡¡¡if (!$('l_b_anonymous'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡$('l_b_anonymous').onclick = function()

¡¡¡¡{

¡¡¡¡if ($('l_b_anonymous').checked)

¡¡¡¡{

¡¡¡¡Comment.Post.setPostTypeSelector('anonymous_select');

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡Comment.Post.setPostTypeSelector('login_select');

¡¡¡¡}

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindPostBtn: function()

¡¡¡¡{

¡¡¡¡if (!$('l_post_btn'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var self = this;

¡¡¡¡$('l_post_btn').onclick = function()

¡¡¡¡{

¡¡¡¡if (!getCookie('skey') && !$('l_b_anonymous').checked)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÄúÉÐδµÇ¼£¬ÇëÏȵǼ');

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡if ($('l_c_title').value.length > 32)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬±êÌâ²»µÃ³¬¹ý32¸ö×Ö·û');

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var c_content = $('l_c_content').value.trim();

¡¡¡¡if (c_content == '')

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÇëÌîдÆÀÂÛÄÚÈÝ');

¡¡¡¡$('l_c_content').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡else if (c_content.realLength() > 10000)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÆÀÂÛÄÚÈݲ»Äܳ¬¹ý10,000¸ö×Ö·û£¨5,000¸öºº×Ö£©');

¡¡¡¡$('l_c_content').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡if (self.base.min_len)

¡¡¡¡{

¡¡¡¡if (c_content.realLength() < self.base.min_len)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÆÀÂÛÄÚÈݲ»ÄÜÉÙÓÚ' + self.base.min_len + '¸ö×Ö·û£¨' + self.base.min_len / 2 + '¸öºº×Ö£©');

¡¡¡¡$('l_c_content').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡makeFormValue(

¡¡¡¡{

¡¡¡¡b_anonymous:    $('l_b_anonymous').checked ? '1' : '',

¡¡¡¡c_site:            self.base.site,

¡¡¡¡c_sort:            self.base.sort_en,

¡¡¡¡c_title:        ($('l_c_title').value == Comment.Configure.reply_default_title ? '' : $('l_c_title').value),

¡¡¡¡c_content:        $('l_c_content').value,

¡¡¡¡g_id:            self.base.comment_g_id,

¡¡¡¡r_tips:            $('l_b_tips').checked ? '1' : ''

¡¡¡¡});

¡¡¡¡self.postData();

¡¡¡¡return false;

¡¡¡¡};

¡¡¡¡},

¡¡¡¡bindBottomPostBtn: function()

¡¡¡¡{

¡¡¡¡if (!$('b_post_btn'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var self = this;

¡¡¡¡$('b_post_btn').onclick = function()

¡¡¡¡{

¡¡¡¡if (!getCookie('skey') && !$('b_b_anonymous').checked)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÄúÉÐδµÇ¼£¬ÇëÏȵǼ');

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡if ($('b_c_title'))

¡¡¡¡{

¡¡¡¡if ($('b_c_title').value.length > 32)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬±êÌâ²»µÃ³¬¹ý32¸ö×Ö·û');

¡¡¡¡$('b_c_title').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var c_content = $('b_c_content').value.trim();

¡¡¡¡if (c_content == '')

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÇëÌîдÆÀÂÛÄÚÈÝ');

¡¡¡¡$('b_c_content').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡else if (c_content.realLength() > 10000)

¡¡¡¡{

¡¡¡¡alert('ºÜ±§Ç¸£¬ÆÀÂÛÄÚÈݲ»Äܳ¬¹ý10,000¸ö×Ö·û');

¡¡¡¡$('b_c_content').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡if (self.base.min_len)

¡¡¡¡{

¡¡¡¡if (c_content.realLength() < self.base.min_len)

¡¡¡¡{

¡¡¡¡alert('ÊéÆÀÄÚÈݲ»ÄÜÉÙÓÚ' + self.base.min_len + '×Ö·û');

¡¡¡¡$('b_c_content').focus();

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡makeFormValue(

¡¡¡¡{

¡¡¡¡b_anonymous:    $('b_b_anonymous').checked  ? '1' : '',

¡¡¡¡c_site:            self.base.site,

¡¡¡¡c_sort:            self.base.sort_en,

¡¡¡¡c_title:        ($('b_c_title').value == Comment.Configure.reply_default_title ? '' : $('b_c_title').value),

¡¡¡¡c_content:        $('b_c_content').value,

¡¡¡¡g_id:            self.base.comment_g_id,

¡¡¡¡c_id:            self.base.commentId,

¡¡¡¡r_tips:            $('b_b_tips').checked ? '1' : ''

¡¡¡¡});

¡¡¡¡self.postData();

¡¡¡¡return false;

¡¡¡¡};

¡¡¡¡},

¡¡¡¡bindBottomPostTypeEvent: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡if (!$('b_b_anonymous'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡if (self.base.name != 'MiniNormal')

¡¡¡¡{

¡¡¡¡setTimeout(setBottomLocation, Comment.Configure.login_frame_delay);

¡¡¡¡}

¡¡¡¡function setBottomLocation()

¡¡¡¡{

¡¡¡¡$('b_login_frame').src = 'i_login.htm?b_login_frame';

¡¡¡¡}

¡¡¡¡$('b_b_anonymous').onclick = function()

¡¡¡¡{

¡¡¡¡if ($('b_b_anonymous').checked)

¡¡¡¡{

¡¡¡¡hideElement('b_login_post');

¡¡¡¡with ($('b_b_tips'))

¡¡¡¡{

¡¡¡¡disabled = true;

¡¡¡¡checked = false;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡$('b_login_frame').src = 'i_login.htm?b_login_frame';

¡¡¡¡showElement('b_login_post');

¡¡¡¡$('b_b_tips').disabled = false;

¡¡¡¡}

¡¡¡¡if (self.base.name == 'MiniNormal')

¡¡¡¡{

¡¡¡¡self.base.updateHeight();

¡¡¡¡}

¡¡¡¡}

¡¡¡¡},

¡¡¡¡postData: function()

¡¡¡¡{

¡¡¡¡showLoading('ÕýÔÚ·¢ËÍ...');

¡¡¡¡var post_form = $('post_form');

¡¡¡¡post_form.action = Comment.Configure.postUrl;

¡¡¡¡post_form.target = 'post_async';

¡¡¡¡post_form.method = 'post';

¡¡¡¡post_form.submit();

¡¡¡¡},

¡¡¡¡fastReplyWords:

¡¡¡¡[

¡¡¡¡[

¡¡¡¡'¾«²Ê£¬Ò»Õë¼ûѪ',

¡¡¡¡'¹Ûµã¶Àµ½',

¡¡¡¡'˵µÃºÜ¶Ô',

¡¡¡¡'Äã˵µÃÓеÀÀí'

¡¡¡¡],

¡¡¡¡[

¡¡¡¡'ÂÒÆß°ËÔã˵ʲô',

¡¡¡¡'Äã˵µÃûµÀÀí',

¡¡¡¡'¼òÖ±ÊǺú˵°ËµÀ'

¡¡¡¡]

¡¡¡¡],

¡¡¡¡fastReply: function(btn, type, r_key, c_id)

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡$('fastLayer').innerHTML = '';

¡¡¡¡$('fastLayer').style.display = 'block';

¡¡¡¡$('fastLayer').style.left = findPosX(btn) + 1 + 'px';

¡¡¡¡$('fastLayer').style.top = findPosY(btn) + 20 + 'px';

¡¡¡¡var replyWords = this.fastReplyWords[type];

¡¡¡¡for (var i = 0; i < replyWords.length; ++i)

¡¡¡¡{

¡¡¡¡var word = $C('a');

¡¡¡¡word.innerHTML = replyWords[i];

¡¡¡¡word.href = '#';

¡¡¡¡$('fastLayer').appendChild(word);

¡¡¡¡word.onclick = function()

¡¡¡¡{

¡¡¡¡replyPost(this.innerHTML);

¡¡¡¡return false;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function replyPost(content)

¡¡¡¡{

¡¡¡¡makeFormValue(

¡¡¡¡{

¡¡¡¡b_anonymous:    (getCookie('skey') ? '' : '1'),

¡¡¡¡c_id:            c_id,

¡¡¡¡c_site:            self.base.site,

¡¡¡¡c_sort:            self.base.data_commentinfo.sort_en,

¡¡¡¡r_key:            r_key,

¡¡¡¡r_type:            (type == 0 ? '3' : '4'),

¡¡¡¡r_tips:            '',

¡¡¡¡c_title:        '',

¡¡¡¡c_content:        content,

¡¡¡¡g_id:            self.base.comment_g_id

¡¡¡¡});

¡¡¡¡self.postData();

¡¡¡¡}

¡¡¡¡},

¡¡¡¡onError: function(msg)

¡¡¡¡{

¡¡¡¡alert(msg);

¡¡¡¡},

¡¡¡¡onSucc: function()

¡¡¡¡{

¡¡¡¡var self = this;

¡¡¡¡setTimeout(reload, 300);

¡¡¡¡function reload()

¡¡¡¡{

¡¡¡¡self.base.reload();

¡¡¡¡window.location.replace('#reload');

¡¡¡¡}

¡¡¡¡},

¡¡¡¡clearBottomInput: function()

¡¡¡¡{

¡¡¡¡$A($(

¡¡¡¡'b_c_title',

¡¡¡¡'b_c_content'

¡¡¡¡)).each(function(elem)

¡¡¡¡{

¡¡¡¡if (elem)

¡¡¡¡{

¡¡¡¡elem.value = '';

¡¡¡¡}

¡¡¡¡});

¡¡¡¡},

¡¡¡¡logout: function()

¡¡¡¡{

¡¡¡¡var url = Comment.Configure.loginIframeUrl + '?l_login_frame';

¡¡¡¡if ($('l_login_frame'))

¡¡¡¡{

¡¡¡¡$('l_login_frame').src = Comment.Configure.logoutUrl + '?url=' + url;

¡¡¡¡}

¡¡¡¡if ($('b_login_frame'))

¡¡¡¡{

¡¡¡¡$('b_login_frame').src = Comment.Configure.logoutUrl + '?url=' + url;

¡¡¡¡}

¡¡¡¡},

¡¡¡¡callback: function(url)

¡¡¡¡{

¡¡¡¡hideLoading();

¡¡¡¡$('post_async').src = 'about:blank';

¡¡¡¡var code = url.substr(url.indexOf('code=') + 5);

¡¡¡¡if (code == '-')

¡¡¡¡{

¡¡¡¡code = -1;

¡¡¡¡}

¡¡¡¡code = code / 1;

¡¡¡¡getFormValue('r_type');

¡¡¡¡if (code == -1 && Comment.Post.r_type >= 3)

¡¡¡¡{

¡¡¡¡code = 0;

¡¡¡¡}

¡¡¡¡var errMsg = '';

¡¡¡¡switch (code)

¡¡¡¡{

¡¡¡¡case -1:

¡¡¡¡errMsg = 'ÄúµÄÆÀÂÛÒÑÌá½»ÉóºË£¬¸ÐлÄúµÄ²ÎÓ룡';

¡¡¡¡this.closePostLayer();

¡¡¡¡this.clearBottomInput();

¡¡¡¡break;

¡¡¡¡case 0:

¡¡¡¡errMsg = '·¢±í³É¹¦£¬¸ÐлÄúµÄ²ÎÓ룡';

¡¡¡¡this.onSucc();

¡¡¡¡this.closePostLayer();

¡¡¡¡this.clearBottomInput();

¡¡¡¡break;

¡¡¡¡case 1:

¡¡¡¡errMsg = 'ºÜ±§Ç¸£¬ÄúÌîдµÄÄÚÈݲ»ÍêÕû£¬ÇëÖØÐÂÊäÈëÄúµÄÄÚÈÝ¡£';

¡¡¡¡break;

¡¡¡¡case 2:

¡¡¡¡errMsg = 'ºÜ±§Ç¸£¬ÄúÉÐδµÇ¼»òµÇ¼ÒѾ­¹ýÆÚ£¬ÇëÏȵǼ¡£';

¡¡¡¡this.logout();

¡¡¡¡break;

¡¡¡¡case 3:

¡¡¡¡errMsg = 'ÄúµÄÆÀÂÛÒÑÌá½»ÉóºË£¬¸ÐлÄúµÄ²ÎÓ룡';

¡¡¡¡this.closePostLayer();

¡¡¡¡this.clearBottomInput();

¡¡¡¡break;

¡¡¡¡case 4:

¡¡¡¡errMsg = 'ÄúµÄIPµØÖ·ÒÑÔÝʱ±»ÆÁ±Î¡£';

¡¡¡¡break;

¡¡¡¡case 5:

¡¡¡¡errMsg = 'ÄúµÄQQºÅÒÑÔÝʱ½ûÖ¹ÔÚ±¾ÆÀÂÛϵͳ·¢ÑÔ¡£';

¡¡¡¡break;

¡¡¡¡case 6:

¡¡¡¡errMsg = 'ºÜ±§Ç¸£¬ÄúµÄQQºÅÂëºÍÃÜÂ벻ƥÅä¡£';

¡¡¡¡break;

¡¡¡¡case 7:

¡¡¡¡errMsg = 'ºÜ±§Ç¸£¬ÏµÍ³·±Ã¦£¬ÇëÉÔºòÔÙÊÔ¡£';

¡¡¡¡break;

¡¡¡¡case 8:

¡¡¡¡errMsg = 'ºÜ±§Ç¸£¬Äú·¢±íµÄƵÂÊÌ«¿ì£¬ÇëÉÔºóÔÙÊÔ¡£';

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡if (errMsg != '')

¡¡¡¡{

¡¡¡¡this.onError(errMsg);

¡¡¡¡}

¡¡¡¡},

¡¡¡¡openPostLayer: function()

¡¡¡¡{

¡¡¡¡$('sPost').style.top = document.documentElement.scrollTop + 50;

¡¡¡¡$('sPost').style.left = 300;

¡¡¡¡$('sLayer').style.height = document.documentElement.scrollHeight;

¡¡¡¡$('sLayer').oncontextmenu = function(){return false};

¡¡¡¡$('sLayer').className = 'dis';

¡¡¡¡$('sPost').className= 'dis';

¡¡¡¡this.auto = setInterval(setAuto, 200);

¡¡¡¡function setAuto()

¡¡¡¡{

¡¡¡¡$('sPost').style.top = document.documentElement.scrollTop + 50;

¡¡¡¡}

¡¡¡¡},

¡¡¡¡closePostLayer: function()

¡¡¡¡{

¡¡¡¡if (!$('sLayer'))

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡$('sLayer').oncontextmenu = function(){return true};

¡¡¡¡$('sLayer').className = 'undis';

¡¡¡¡$('sPost').className = 'undis';

¡¡¡¡clearInterval(this.auto);

¡¡¡¡this.clearAsyncForm();

¡¡¡¡this.clearValue();

¡¡¡¡Debug.log('clearAsyncForm');

¡¡¡¡},

¡¡¡¡beforeOpenPost: function(type, r_key, c_id, content)

¡¡¡¡{

¡¡¡¡/* type -> ·¢±íÆÀÂ۵ķ½Ê½

¡¡¡¡0£ºÆÕͨÆÀÂ۵Ļظ´

¡¡¡¡1£ºÆÕͨÆÀÂÛµÄÒýÓûظ´

¡¡¡¡2£º±çÂÛÆÀÂ۵Ļظ´

¡¡¡¡*/

¡¡¡¡this.bindTitleEvent();

¡¡¡¡$('post_article').innerHTML = this.base.comment_title.left(20);

¡¡¡¡if (getCookie('skey'))

¡¡¡¡{

¡¡¡¡this.setPostTypeSelector('login_select');

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡this.setPostTypeSelector('anonymous_select');

¡¡¡¡}

¡¡¡¡$('l_b_tips').checked = false;

¡¡¡¡switch (type)

¡¡¡¡{

¡¡¡¡case 0:

¡¡¡¡hideElement('debate_id', 'reply_type', 'r_quote');

¡¡¡¡makeFormValue(

¡¡¡¡{

¡¡¡¡c_id:            c_id

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡case 1:

¡¡¡¡hideElement('debate_id');

¡¡¡¡$('post_quote').innerHTML = (content).stripTags();

¡¡¡¡showElement('r_quote', 'reply_type');

¡¡¡¡this.setReplyType('middle');

¡¡¡¡$('stat_reply_type').innerHTML = 'ÖÐÁ¢Ì¬¶È';

¡¡¡¡makeFormValue(

¡¡¡¡{

¡¡¡¡r_key:            r_key,

¡¡¡¡r_type:            '2',

¡¡¡¡c_id:            c_id

¡¡¡¡});

¡¡¡¡break;

¡¡¡¡case 2:

¡¡¡¡hideElement('reply_type', 'r_quote');

¡¡¡¡showElement('debate_id');

¡¡¡¡break;

¡¡¡¡}

¡¡¡¡this.openPostLayer();

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var NDEBUG = true;

¡¡¡¡var Debug = {

¡¡¡¡init: function()

¡¡¡¡{

¡¡¡¡if (NDEBUG == true)

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var divDebug = $C('div');

¡¡¡¡this.divDebug = divDebug;

¡¡¡¡with (divDebug.style)

¡¡¡¡{

¡¡¡¡top = '10px';

¡¡¡¡left = '10px';

¡¡¡¡width = '300px';

¡¡¡¡height = '200px';

¡¡¡¡overflow = 'scroll';

¡¡¡¡verticalAlign = 'top';

¡¡¡¡position = 'absolute';

¡¡¡¡backgroundColor = '#fff';

¡¡¡¡padding = '5px';

¡¡¡¡lineHeight = '110%';

¡¡¡¡}

¡¡¡¡document.getElementsByTagName('body')[0].appendChild(divDebug);

¡¡¡¡this.auto = setInterval(setAuto, 200);

¡¡¡¡function setAuto()

¡¡¡¡{

¡¡¡¡divDebug.style.top = document.documentElement.scrollTop + 10;

¡¡¡¡}

¡¡¡¡Debug.log('<b>Debug</b>');

¡¡¡¡divDebug.ondblclick = function()

¡¡¡¡{

¡¡¡¡NDEBUG = true;

¡¡¡¡Element.remove(divDebug);

¡¡¡¡}

¡¡¡¡this.height = 0;

¡¡¡¡},

¡¡¡¡log: function(str)

¡¡¡¡{

¡¡¡¡if (NDEBUG == true)

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡var now = new Date();

¡¡¡¡this.divDebug.innerHTML += '[' + now.getHours() + ':'

¡¡¡¡+ now.getMinutes() + ':'

¡¡¡¡+ now.getSeconds() + '] ' + str + '<br>';

¡¡¡¡this.divDebug.scrollTop = 10000000;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var divLoading = null;

¡¡¡¡function showLoading(action)

¡¡¡¡{

¡¡¡¡if (!divLoading)

¡¡¡¡{

¡¡¡¡divLoading = $C('div');

¡¡¡¡divLoading.className = 'loading';

¡¡¡¡document.getElementsByTagName('body')[0].appendChild(divLoading);

¡¡¡¡}

¡¡¡¡if (!action)

¡¡¡¡{

¡¡¡¡divLoading.innerHTML = 'ÕýÔÚ¶ÁÈ¡...';

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡divLoading.innerHTML = action;

¡¡¡¡}

¡¡¡¡divLoading.style.top = document.documentElement.scrollTop;

¡¡¡¡divLoading.style.left = '0px';

¡¡¡¡divLoading.style.display = 'block';

¡¡¡¡}

¡¡¡¡function hideLoading()

¡¡¡¡{

¡¡¡¡if (!divLoading)

¡¡¡¡{

¡¡¡¡return;

¡¡¡¡}

¡¡¡¡divLoading.style.display = 'none';

¡¡¡¡}

¡¡¡¡function showElement()

¡¡¡¡{

¡¡¡¡for (var i = 0; i < arguments.length; i++)

¡¡¡¡{

¡¡¡¡var element = arguments[i];

¡¡¡¡if ($(element))

¡¡¡¡{

¡¡¡¡$(element).style.display = 'block';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function hideElement()

¡¡¡¡{

¡¡¡¡for (var i = 0; i < arguments.length; i++)

¡¡¡¡{

¡¡¡¡var element = arguments[i];

¡¡¡¡if ($(element))

¡¡¡¡{

¡¡¡¡$(element).style.display = 'none';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡function getFormValue(name)

¡¡¡¡{

¡¡¡¡$A($('post_form').getElementsByTagName('input')).each(function(elem)

¡¡¡¡{

¡¡¡¡if (elem.name == name)

¡¡¡¡{

¡¡¡¡Comment.Post.r_type = elem.value;

¡¡¡¡return elem.value;

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡return null;

¡¡¡¡}

¡¡¡¡});

¡¡¡¡}

¡¡¡¡function makeFormValue(name2Value)

¡¡¡¡{

¡¡¡¡Debug.log('makeFormValue start');

¡¡¡¡$A($('post_form').getElementsByTagName('input')).each(function(elem)

¡¡¡¡{

¡¡¡¡if (name2Value[elem.name] != null)

¡¡¡¡{

¡¡¡¡elem.value = name2Value[elem.name];

¡¡¡¡}

¡¡¡¡Debug.log(elem.name + ': ' + elem.value);

¡¡¡¡});

¡¡¡¡Debug.log('makeFormValue end');

¡¡¡¡}

¡¡¡¡function noCacheUrl()

¡¡¡¡{

¡¡¡¡return '?cache=' + rndNum(9);

¡¡¡¡}

¡¡¡¡function rndNum(n)

¡¡¡¡{

¡¡¡¡var rnd= '1.';

¡¡¡¡for(var i = 0; i < n; i++)

¡¡¡¡rnd += Math.floor(Math.random() * 10);

¡¡¡¡return rnd;

¡¡¡¡}

¡¡¡¡var sUrl = window.location.href.toString();

¡¡¡¡var sDomain = sUrl.substring(7, sUrl.indexOf('/', 7));

¡¡¡¡var sPath = sUrl.substring(sUrl.indexOf('/', 7));

¡¡¡¡var sParam = sUrl.substring(sUrl.indexOf('?') + 1);

¡¡¡¡if (sParam.indexOf('#') != -1)

¡¡¡¡{

¡¡¡¡sParam = sParam.substr(0, sParam.indexOf('#'));

¡¡¡¡}

¡¡¡¡document.domain = 'qq.com';

¡¡¡¡var initWith = {

¡¡¡¡'comment':            'Normal',

¡¡¡¡'i_comment':        'MiniNormal',

¡¡¡¡'comment_group':    'Group',

¡¡¡¡'comment_debate':    'Debate',

¡¡¡¡'comment_reply_pk':    'ReplyPK',

¡¡¡¡'comment_user':        'UserReply',

¡¡¡¡'list':                'List'

¡¡¡¡};

¡¡¡¡window.onload = function()

¡¡¡¡{

¡¡¡¡Comment.Start();

¡¡¡¡}

¡¡¡¡Comment.Start = function()

¡¡¡¡{

¡¡¡¡Debug.init();

¡¡¡¡for (var url in initWith)

¡¡¡¡{

¡¡¡¡if (sUrl.indexOf('/' + url + '.htm') != -1)

¡¡¡¡{

¡¡¡¡if (url == 'list')

¡¡¡¡{

¡¡¡¡Comment.Page[initWith[url]].load(sUrl);

¡¡¡¡}

¡¡¡¡else

¡¡¡¡{

¡¡¡¡Comment.Page[initWith[url]].load(sParam.toQueryParams());

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡document.body.onclick = function()

¡¡¡¡{

¡¡¡¡if ($('fastLayer'))

¡¡¡¡{

¡¡¡¡$('fastLayer').style.display = 'none';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}

¡¡¡¡Comment.HotList =

¡¡¡¡{

¡¡¡¡siteObject:    {

¡¡¡¡'news':    'ÐÂÎÅ',

¡¡¡¡'ent':    'ÓéÀÖ',

¡¡¡¡'finance':    '²Æ¾­',

¡¡¡¡'tech':    '¿Æ¼¼',

¡¡¡¡'auto':    'Æû³µ',

¡¡¡¡'gamezone':    'ÓÎÏ·',

¡¡¡¡'edu':    '½ÌÓý',

¡¡¡¡'book':    '¶ÁÊé',

¡¡¡¡'lady':    'Å®ÐÔ',

¡¡¡¡'astro':    'ÐÇ×ù',

¡¡¡¡'sports':    'ÌåÓý',

¡¡¡¡'comic':    '¶¯Âþ',

¡¡¡¡'luxury':    'ʱÉÐ',

¡¡¡¡'joke':    'Ц»°',

¡¡¡¡'cq':    'ÖØÇì',

¡¡¡¡'xian':    'Î÷°²',

¡¡¡¡'view':    '˵°É'

¡¡¡¡},

¡¡¡¡getRandomSite: function()

¡¡¡¡{

¡¡¡¡if (!this.siteArray)

¡¡¡¡{

¡¡¡¡this.siteArray = new Array();

¡¡¡¡for (var site_en in this.siteObject)

¡¡¡¡{

¡¡¡¡this.siteArray.push(site_en);

¡¡¡¡}

¡¡¡¡}

¡¡¡¡var site_sum = this.siteArray.length;

¡¡¡¡var rnd_site = Math.floor(Math.random() * site_sum);

¡¡¡¡return this.siteArray[rnd_site];

¡¡¡¡},

¡¡¡¡bindTopHotList: function(container, site)

¡¡¡¡{

¡¡¡¡var topSiteSum = 6;

¡¡¡¡var topSite = new Object();

¡¡¡¡if (site != '')

¡¡¡¡{

¡¡¡¡if (this.siteObject[site])

¡¡¡¡{

¡¡¡¡topSite[site] = this.siteObject[site];

¡¡¡¡topSiteSum--;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡while (topSiteSum > 0)

¡¡¡¡{

¡¡¡¡var rnd_site = this.getRandomSite();

¡¡¡¡if (topSite[rnd_site])

¡¡¡¡{

¡¡¡¡continue;

¡¡¡¡}

¡¡¡¡topSite[rnd_site] = this.siteObject[rnd_site];

¡¡¡¡topSiteSum--;

¡¡¡¡}

¡¡¡¡var hot_index = 0;

¡¡¡¡var hot_header = '';

¡¡¡¡var hot_body = '';

¡¡¡¡for (var site_en in topSite)

¡¡¡¡{

¡¡¡¡hot_header += '<p' + (hot_index == 0 ? ' class="c"' : '') + ' onclick="getMe(this)">' + topSite[site_en] + '</p>';

¡¡¡¡hot_body += '<dd' + (hot_index != 0 ? ' class="undis"' : '') + ' id="Hot_Top_' + site_en + '"></dd>';

¡¡¡¡hot_index++;

¡¡¡¡}

¡¡¡¡var hot_html = '<dl><dt>' + hot_header + '</dt>' + hot_body + '</dl>';

¡¡¡¡$(container).innerHTML = hot_html;

¡¡¡¡for (var site_en in topSite)

¡¡¡¡{

¡¡¡¡this.bindTopSite('Hot_Top_' + site_en, '/c/async_html/' + site_en + '_top.htm');

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindRightHotList: function(container, site)

¡¡¡¡{

¡¡¡¡var topSiteSum = 3;

¡¡¡¡var topSite = new Object();

¡¡¡¡if (site != '')

¡¡¡¡{

¡¡¡¡if (this.siteObject[site])

¡¡¡¡{

¡¡¡¡topSite[site] = this.siteObject[site];

¡¡¡¡topSiteSum--;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡while (topSiteSum > 0)

¡¡¡¡{

¡¡¡¡var rnd_site = this.getRandomSite();

¡¡¡¡if (topSite[rnd_site])

¡¡¡¡{

¡¡¡¡continue;

¡¡¡¡}

¡¡¡¡topSite[rnd_site] = this.siteObject[rnd_site];

¡¡¡¡topSiteSum--;

¡¡¡¡}

¡¡¡¡var hot_body = '';

¡¡¡¡for (var site_en in topSite)

¡¡¡¡{

¡¡¡¡hot_body += '<dl><dt>' + topSite[site_en] + 'ÈÈÆÀ</dt><div id="Hot_Right_' + site_en + '"></div></dl>';

¡¡¡¡}

¡¡¡¡$(container).innerHTML = hot_body;

¡¡¡¡for (var site_en in topSite)

¡¡¡¡{

¡¡¡¡this.bindTopSite('Hot_Right_' + site_en, '/c/async_html/' + site_en + '_right.htm');

¡¡¡¡}

¡¡¡¡},

¡¡¡¡bindTopSite: function(container, url)

¡¡¡¡{

¡¡¡¡new Ajax.Request(

¡¡¡¡url,

¡¡¡¡{

¡¡¡¡method:         'get',

¡¡¡¡onSuccess:     onSucc,

¡¡¡¡onFailure:        onError

¡¡¡¡}

¡¡¡¡);

¡¡¡¡function onSucc(response)

¡¡¡¡{

¡¡¡¡$(container).innerHTML = response.responseText;

¡¡¡¡}

¡¡¡¡function onError()

¡¡¡¡{

¡¡¡¡$(container).innerHTML = '';

¡¡¡¡}

¡¡¡¡}

¡¡¡¡}