function replyfloor_postid(url) { url = url.replace(/&/, "&"); var urlarr = new Array(); urlarr = url.split("&"); var value = new Array(); var postid = 0; for (var i = 0, L = urlarr.length; i < L; i++) { value = urlarr[i].split("="); if(value[0] == "repquote"){ postid = value[1]; return postid; } } return postid; } function replyfloor_leftshow(postid) { if(document.getElementById('replyfloor_content_ul_' + postid)){ document.getElementById('replyfloor_content_ul_' + postid).style.display = 'block'; } if(document.getElementById('replyfloor_content_more_' + postid)){ document.getElementById('replyfloor_content_more_' + postid).style.display = 'none'; } if(document.getElementById('replyfloor_content_pg_' + postid)){ document.getElementById('replyfloor_content_pg_' + postid).style.display = 'block'; } } function replyfloor_seccodeimg(obj) { document.getElementById('replyfloor_seccodeverify').value = ''; var tmprandom = 'S' + Math.floor(Math.random() * 1000); obj.src = 'misc.php?mod=seccode&update='+ tmprandom+'&idhash=replyfloor'; } function replyfloor_replace() { var fastre = document.getElementsByClassName('fastre'); for (var i = 0, L = fastre.length; i < L; i++) { var postid = replyfloor_postid(fastre[i].href); if(postid){ fastre[i].onclick = function(e) { replyfloor_reply(this.href); } } } } function replyfloor_collapse(obj, postid, type) { document.getElementById('replyfloor_content_more_'+postid).innerHTML = ''; if(type == 1){ var nextpageurl = obj.getAttribute('rel').valueOf(); var x = new Ajax(); x.get(nextpageurl + '&inajax=1', function(s){ s = s.replace(/\n|\r/g, ' '); var nexts = s.match(/\
(.+?)\
\<\/div>\<\/div>/g); for(i in nexts) { var insertid = nexts[i].match(/
/); if(!document.getElementById('replyfloor_content_li_' + insertid[1])) { var div = document.createElement('div'); document.getElementById('replyfloor_newbox_'+postid).appendChild(div); div.outerHTML = nexts[i].replace(/\
\<\/div>/g, ''); } } var moreinfo = s.match(/\
(.+?)\
\<\/div>\<\/div\>/); if(document.getElementById('replyfloor_content_more_'+postid)){ document.getElementById('replyfloor_content_more_'+postid).innerHTML = moreinfo[2]; } }); }else{ document.getElementById('replyfloor_newbox_'+postid).innerHTML = ''; var nextpageurl = obj.getAttribute('rel').valueOf(); var x = new Ajax(); x.get(nextpageurl + '&inajax=1', function(s){ if(document.getElementById('replyfloor_content_'+postid)){ document.getElementById('replyfloor_content_'+postid).innerHTML = s; } var replyfloor_box_sxy = fetchOffset(document.getElementById("replyfloor_box_"+postid)); if(Math.max(document.documentElement.scrollTop, document.body.scrollTop) > replyfloor_box_sxy['top']){ window.scrollTo('0',replyfloor_box_sxy['top']); } }); } return false; } function replyfloor_uploadimage(userSettings) { replyfloor_webupload(userSettings); } function replyfloor_uploadattach(userSettings) { replyfloor_webupload(userSettings); } function replyfloor_webupload(userSettings) { var settings = {}; var ensureDefault = function(settingName, defaultValue) { var setting = userSettings[settingName]; if (setting != undefined) { settings[settingName] = setting; } else { settings[settingName] = defaultValue; } }; ensureDefault("auto", false); ensureDefault("compress", false); ensureDefault("upload_url", ""); ensureDefault("pick", undefined); ensureDefault("dnd", undefined); ensureDefault("paste", undefined); ensureDefault("accept", null); ensureDefault("fileVal", "file"); ensureDefault("chunked", false); ensureDefault("chunkSize", 5242880); ensureDefault("post_params", {}); ensureDefault("threads", 1); ensureDefault("fileNumLimit", undefined); ensureDefault("fileSingleSizeLimit", undefined); var getBasePath = function() { var els = document.getElementsByTagName('script'), src; for (var i = 0, len = els.length; i < len; i++) { src = els[i].src || ''; if (/cwebuploader[\w\-\.]*\.js/.test(src)) { return src.substring(0, src.lastIndexOf('/') + 1); } } return ''; }; var uploader = CWebUploader.create({ auto: false, swf: getBasePath() + 'Uploader.swf', compress: settings.compress, server: settings.upload_url, pick: settings.pick, dnd: settings.dnd, paste: settings.paste, accept: settings.accept, fileVal: settings.fileVal, chunked: settings.chunked, chunkSize: settings.chunkSize, formData: settings.post_params, threads: settings.threads, fileNumLimit: settings.fileNumLimit, fileSingleSizeLimit: settings.fileSingleSizeLimit, duplicate: true, disableWidgets: 'log' }); uploader.on('beforeFileQueued', function(file) { }); uploader.on('fileQueued', function( file ) { var eles = document.getElementById('replyfloor_upimage').getElementsByClassName('replyfloor_upimage_li'); if (settings.fileNumLimit && eles.length >= settings.fileNumLimit) { showDialog('最多只能上传' + settings.fileNumLimit + '张', 'alert'); return false; } else { var div = document.createElement("div"); div.id = 'replyfloor_upimage_li_'+file.id; div.className = 'replyfloor_upimage_li'; document.getElementById('replyfloor_upimage').appendChild(div); uploader.upload(file); } }); uploader.on('uploadStart', function( file ) { uploader.options.formData['filetype'] = file.ext; }); uploader.on('uploadSuccess', function( file, response ) { var obj = document.getElementById('replyfloor_upimage_li_'+file.id); if(response['status'] == 0) { obj.parentNode.removeChild(obj); showDialog(response['message'], 'alert'); } else { obj.innerHTML = '
'+response['filename']+'
'; } }); uploader.on("uploadError", function (file, response) { var obj = document.getElementById('replyfloor_upimage_li_'+file.id); obj.parentNode.removeChild(obj); }); uploader.on("uploadFinished", function () { uploader.reset(); }); uploader.on('error', function (code) { var err = ''; switch (code) { case 'F_EXCEED_SIZE': err += '单张图片大小不得超过' + Base.formatSize(uploader.option('fileSingleSizeLimit')) + '!'; break; case 'Q_EXCEED_NUM_LIMIT': err += '最多只能上传' + settings.fileNumLimit + '张!'; break; case 'Q_EXCEED_SIZE_LIMIT': err += '上传图片总大小超出' + Base.formatSize(uploader.option('fileSizeLimit')) + '!'; break; case 'Q_TYPE_DENIED': err += '无效图片类型,请上传正确的图片格式!'; break; case 'F_DUPLICATE': err += '请不要重复上传相同图片!'; break; default: err += '上传错误,请刷新重试!'+code; break; } showDialog(err, 'alert'); return false; }); } function replyfloor_plupload(userSettings) { var settings = {}; var ensureDefault = function(settingName, defaultValue) { var setting = userSettings[settingName]; if (setting != undefined) { settings[settingName] = setting; } else { settings[settingName] = defaultValue; } }; ensureDefault("auto", false); ensureDefault("upload_url", ""); ensureDefault("pick", undefined); ensureDefault("accept", null); ensureDefault("fileVal", "file"); ensureDefault("post_params", {}); var pluploader = new plupload.Uploader({ browse_button : settings.pick, url : settings.upload_url, file_data_name: settings.fileVal, multi_selection: false, multipart_params: settings.post_params, filters:settings.accept }); pluploader.init(); pluploader.bind('FilesAdded',function(uploader,files){ pluploader.start(); }); pluploader.bind('FileUploaded', function(uploader,file, res){ var response = eval('(' + res.response + ')'); if(response['status'] == 0) { showDialog(response['message'], 'alert'); } else { var div = document.createElement("div"); div.id = 'replyfloor_upimage_li_'+response['aid']; div.className = 'replyfloor_upimage_li'; div.innerHTML = '
'+response['filename']+'
'; document.getElementById('replyfloor_upimage').appendChild(div); } }); pluploader.bind('Error', function(uploader,error){ showDialog('上传错误,请刷新重试!', 'alert'); }); return false; } function replyfloor_delimage(aid) { var obj = document.getElementById('replyfloor_upimage_del_'+aid).parentNode.parentNode; if(obj) { obj.parentNode.removeChild(obj); var x = new Ajax(); x.get('plugin.php?id=replyfloor:attachment&operation=delete&aid='+aid + '&inajax=1', function(s){ }); } }