rhymix/modules/importer/tpl/js/importer_admin.min.js

12 lines
No EOL
2.9 KiB
JavaScript

/**
* @file modules/importer/js/importer_admin.js
* @author NHN (developers@xpressengine.com)
* @brief importer에서 사용하는 javascript
**/
function doSync(fo_obj){exec_xml('importer','procImporterAdminSync',[],function(ret){alert(ret.message);location.href=location.href});return false}
function doPreProcessing(form){var xml_file,type,resp,prepared=false,$=jQuery,$status,$process,$form;xml_file=form.elements['xml_file'].value;type=form.elements['type'].value;if(!xml_file)return false;$form=$('#importForm').hide();$process=$('#process').show();$status=$('#status').empty();(function(){if(prepared)return;var str=$status.html();(!str.length||str.length-preProcessingMsg.length>50)?str=preProcessingMsg:str+='.';$status.html(str);setTimeout(arguments.callee,50)})();setTimeout(doPrepareDot,50)
function on_complete(ret){var $reload,$cont,fo_proc,fo_import,elems,i,c,key,to_copy;prepared=true;$status.empty();$reload=$('#btn_reload');$cont=$('#btn_continue');if(ret.status==-1){$form.show();$reload.show();$process.hide();$cont.hide();return alert(ret.message)};$reload.hide();$cont.show();fo_proc=get_by_id('fo_process');elems=fo_proc.elements;for(i=0,c=resp.length;i<c;i++){key=resp[i];elems[key]?elems[key].value=ret[key]:0};fo_import=get_by_id('fo_import');if(fo_import){to_copy=['target_module','guestbook_target_module','user_id','unit_count'];for(i=0,c=to_copy.length;i<c;i++){key=to_copy[i];if(fo_import.elements[key])fo_proc.elements[key].value=fo_import.elements[key].value}};doImport()};exec_xml('importer','procImporterAdminPreProcessing',{type:type,xml_file:xml_file},on_complete,resp=['error','message','type','total','cur','key','status']);return false}
function doImport(){var form=get_by_id('fo_process'),elems=form.elements,i,c,params={},resp;for(i=0,c=elems.length;i<c;i++)params[elems[i].name]=elems[i].value;displayProgress(params.total,params.cur)
function on_complete(ret,response_tags){var i,c,key;for(i=0,c=resp.length;i<c;i++){key=resp[i];elems[key]?elems[key].value=ret_obj[key]:0};ret.total=parseInt(ret.total,10)||0;ret.cur=parseInt(ret.cur,10)||0;if(ret.total>ret.cur){doImport()}else{alert(ret.message);try{form.reset();get_by_id('fo_import').reset();jQuery('#process').hide();jQuery('#importForm').show()}catch(e){}}};show_waiting_message=false;exec_xml('importer','procImporterAdminImport',params,on_complete,resp=['error','message','type','total','cur','key']);show_waiting_message=true;return false}
function displayProgress(total,cur){var per,stat,$stat;per=Math.max(total?Math.round(cur/total*100):100,1);$stat=jQuery('#status');if(!$stat.find('div.progress1').length)$stat.html('<div class="progressBox"><div class="progress1"></div><div class="progress2"></div><div class="clear"></div></div>');$stat.find('div.progress1').html(per+'&nbsp;').css('width',per+'%').end().find('div.progress2').text(cur+'/'+total)}
function insertSelectedModule(id,module_srl,mid,browser_title){get_by_id(id).value=module_srl;get_by_id('_'+id).value=browser_title+' ('+mid+')'}