Author name update.

NHN
developers@xpressengine.com
http://xpressengine.com/

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@7676 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ChanMyeong 2010-09-06 06:35:20 +00:00
parent 7d1fa86e5c
commit 8f385a592b
603 changed files with 67379 additions and 67522 deletions

View file

@ -1,4 +1,4 @@
/* NHN > UIT Center > Open UI Platform Team > Jeong Chan Myeong(dece24@nhncorp.com) */
/* NHN (developers@xpressengine.com) */
/* Anchor Button */
a.button,

View file

@ -1,113 +1,113 @@
/**
* @file common.js
* @author zero (zero@nzeo.com)
* @brief 몇가지 유용한 & 기본적으로 자주 사용되는 자바스크립트 함수들 모음
**/
if(jQuery)jQuery.noConflict();(function($){var UA=navigator.userAgent.toLowerCase();$.os={Linux:/linux/.test(UA),Unix:/x11/.test(UA),Mac:/mac/.test(UA),Windows:/win/.test(UA)};$.os.name=($.os.Windows)?'Windows':($.os.Linux)?'Linux':($.os.Unix)?'Unix':($.os.Mac)?'Mac':'';window.XE={loaded_popup_menus:new Array(),addedDocument:new Array(),checkboxToggleAll:function(){var itemName='cart';var options={wrap:null,checked:'toggle',doClick:false};switch(arguments.length){case 1:if(typeof(arguments[0])=="string"){itemName=arguments[0];}else{$.extend(options,arguments[0]||{});}
break;case 2:itemName=arguments[0];$.extend(options,arguments[1]||{});}
if(options.doClick==true)options.checked=null;if(typeof(options.wrap)=="string")options.wrap='#'+options.wrap;if(options.wrap){var obj=$(options.wrap).find('input[name='+itemName+']:checkbox');}else{var obj=$('input[name='+itemName+']:checkbox');}
if(options.checked=='toggle'){obj.each(function(){$(this).attr('checked',($(this).attr('checked'))?false:true);});}else{(options.doClick==true)?obj.click():obj.attr('checked',options.checked);}},displayPopupMenu:function(ret_obj,response_tags,params){var target_srl=params["target_srl"];var menu_id=params["menu_id"];var menus=ret_obj['menus'];var html="";if(this.loaded_popup_menus[menu_id]){html=this.loaded_popup_menus[menu_id];}else{if(menus){var item=menus['item'];if(typeof(item.length)=='undefined'||item.length<1)item=new Array(item);if(item.length){for(var i=0;i<item.length;i++){var url=item[i].url;var str=item[i].str;var icon=item[i].icon;var target=item[i].target;var styleText="";var click_str="";if(icon)styleText=" style=\"background-image:url('"+icon+"')\" ";switch(target){case"popup":click_str=" onclick=\"popopen(this.href,'"+target+"'); return false;\"";break;case"self":break;case"javascript":click_str=" onclick=\""+url+"; return false; \"";url="#";break;default:click_str=" onclick=\"window.open(this.href); return false;\"";break;}
html+='<li '+styleText+'><a href="'+url+'"'+click_str+'>'+str+'</a></li> ';}}}
this.loaded_popup_menus[menu_id]=html;}
if(html){var area=$('#popup_menu_area').html('<ul>'+html+'</ul>');var areaOffset={top:params['page_y'],left:params['page_x']};if(area.outerHeight()+areaOffset.top>$(window).height()+$(window).scrollTop())
areaOffset.top=$(window).height()-area.outerHeight()+$(window).scrollTop();if(area.outerWidth()+areaOffset.left>$(window).width()+$(window).scrollLeft())
areaOffset.left=$(window).width()-area.outerWidth()+$(window).scrollLeft();area.css({top:areaOffset.top,left:areaOffset.left}).show();}}}})(jQuery);jQuery(function($){if(!$('#popup_menu_area').length){var menuObj=$('<div>').attr('id','popup_menu_area').css({display:'none',zIndex:9999});$(document.body).append(menuObj);}
$(document).click(function(evt){var area=$('#popup_menu_area');if(!area.length)return;area.hide();var targetObj=$(evt.target);if(!targetObj.length)return;if(targetObj.length&&$.inArray(targetObj.attr('nodeName'),['DIV','SPAN','A'])==-1)targetObj=targetObj.parent();if(!targetObj.length||$.inArray(targetObj.attr('nodeName'),['DIV','SPAN','A'])==-1)return;var class_name=targetObj.attr('className');if(class_name.indexOf('_')<=0)return;var class_name_list=class_name.split(' ');var menu_id='';var menu_id_regx=/^([a-zA-Z]+)_([0-9]+)$/;for(var i=0,c=class_name_list.length;i<c;i++){if(menu_id_regx.test(class_name_list[i])){menu_id=class_name_list[i];}}
if(!menu_id)return;var tmp_arr=menu_id.split('_');var module_name=tmp_arr[0];var target_srl=tmp_arr[1];if(!module_name||!target_srl||target_srl<1)return;var action_name="get"+module_name.substr(0,1).toUpperCase()+module_name.substr(1,module_name.length-1)+"Menu";var params=new Array();params["target_srl"]=target_srl;params["mid"]=params["cur_mid"]=current_mid;params["cur_act"]=current_url.getQuery('act');params["menu_id"]=menu_id;params["page_x"]=evt.pageX;params["page_y"]=evt.pageY;if(typeof(xeVid)!='undefined')params["vid"]=xeVid;var response_tags=new Array("error","message","menus");if(typeof(XE.loaded_popup_menus[menu_id])!='undefined'){XE.displayPopupMenu(params,response_tags,params);return;}
show_waiting_message=false;exec_xml(module_name,action_name,params,XE.displayPopupMenu,response_tags,params);show_waiting_message=true;});if($.browser.msie){$('select').each(function(i,sels){var disabled_exists=false;var first_enable=new Array();for(var j=0;j<sels.options.length;j++){if(sels.options[j].disabled){sels.options[j].style.color='#CCCCCC';disabled_exists=true;}else{first_enable[i]=(first_enable[i]>-1)?first_enable[i]:j;}}
if(!disabled_exists)return;sels.oldonchange=sels.onchange;sels.onchange=function(){if(this.options[this.selectedIndex].disabled){this.selectedIndex=first_enable[i];}else{if(this.oldonchange)this.oldonchange();}};if(sels.selectedIndex>=0&&sels.options[sels.selectedIndex].disabled)sels.onchange();});}
var drEditorFold=$('.xe_content .fold_button');if(drEditorFold.size()){var fold_container=$('div.fold_container',drEditorFold);$('button.more',drEditorFold).click(function(){$(this).hide().next('button').show().parent().next(fold_container).show();});$('button.less',drEditorFold).click(function(){$(this).hide().prev('button').show().parent().next(fold_container).hide();});}});String.prototype.getQuery=function(key){var idx=this.indexOf('?');if(idx==-1)return null;var query_string=this.substr(idx+1,this.length);var args={};query_string.replace(/([^=]+)=([^&]*)(&|$)/g,function(){args[arguments[1]]=arguments[2];});var q=args[key];if(typeof(q)=="undefined")q="";return q;}
String.prototype.setQuery=function(key,val){var idx=this.indexOf('?');var uri=this;uri=uri.replace(/#$/,'');if(idx!=-1){uri=this.substr(0,idx);var query_string=this.substr(idx+1,this.length);var args=new Array();query_string.replace(/([^=]+)=([^&]*)(&|$)/g,function(){args[arguments[1]]=arguments[2];});args[key]=val;var q_list=new Array();for(var i in args){if(!args.hasOwnProperty(i))continue;var arg=args[i];if(!arg.toString().trim())continue;arg=decodeURI(arg);q_list[q_list.length]=i+'='+arg;}
uri=uri+"?"+q_list.join("&");}else{if(val.toString().trim())uri=uri+"?"+key+"="+val;}
var re=/https:\/\/([^:\/]+)(:\d+|)/i;var check=re.exec(uri);if(check)
{var toReplace="http://"+check[1];if(typeof(http_port)!='undefined'&&http_port!=80)
{toReplace+=":"+http_port;}
uri=uri.replace(re,toReplace);}
var bUseSSL=false;if(typeof(enforce_ssl)!='undefined'&&enforce_ssl)
{bUseSSL=true;}
else if(typeof(ssl_actions)!='undefined'&&typeof(ssl_actions.length)!='undefined'&&uri.getQuery('act')){var act=uri.getQuery('act');for(i=0;i<ssl_actions.length;i++){if(ssl_actions[i]==act){bUseSSL=true;break;}}}
if(bUseSSL)
{var re=/http:\/\/([^:\/]+)(:\d+|)/i;var check=re.exec(uri);if(check)
{var toReplace="https://"+check[1];if(typeof(https_port)!='undefined'&&https_port!=443)
{toReplace+=":"+https_port;}
uri=uri.replace(re,toReplace);}}
return encodeURI(uri);}
String.prototype.trim=function(){return this.replace(/(^\s*)|(\s*$)/g,"");}
function xSleep(sec){sec=sec/1000;var now=new Date();var sleep=new Date();while(sleep.getTime()-now.getTime()<sec){sleep=new Date();}}
function isDef(){for(var i=0;i<arguments.length;++i){if(typeof(arguments[i])=="undefined")return false;}
return true;}
var winopen_list=new Array();function winopen(url,target,attribute){if(typeof(xeVid)!='undefined'&&url.indexOf(request_uri)>-1&&!url.getQuery('vid'))url=url.setQuery('vid',xeVid);try{if(target!="_blank"&&winopen_list[target]){winopen_list[target].close();winopen_list[target]=null;}}catch(e){}
if(typeof(target)=='undefined')target='_blank';if(typeof(attribute)=='undefined')attribute='';var win=window.open(url,target,attribute);win.focus();if(target!="_blank")winopen_list[target]=win;}
function popopen(url,target){if(typeof(target)=="undefined")target="_blank";if(typeof(xeVid)!='undefined'&&url.indexOf(request_uri)>-1&&!url.getQuery('vid'))url=url.setQuery('vid',xeVid);winopen(url,target,"left=10,top=10,width=10,height=10,scrollbars=no,resizable=yes,toolbars=no");}
function sendMailTo(to){location.href="mailto:"+to;}
function move_url(url,open_wnidow){if(!url)return false;if(typeof(open_wnidow)=='undefined')open_wnidow='N';if(open_wnidow=='N'){open_wnidow=false;}else{open_wnidow=true;}
if(/^\./.test(url))url=request_uri+url;if(open_wnidow){winopen(url);}else{location.href=url;}
return false;}
function displayMultimedia(src,width,height,options){var html=_displayMultimedia(src,width,height,options);if(html)document.writeln(html);}
function _displayMultimedia(src,width,height,options){if(src.indexOf('files')==0)src=request_uri+src;var defaults={wmode:'transparent',allowScriptAccess:'sameDomain',quality:'high',flashvars:'',autostart:false};var params=jQuery.extend(defaults,options||{});var autostart=(params.autostart&&params.autostart!='false')?'true':'false';delete(params.autostart);var clsid="";var codebase="";var html="";if(/\.(gif|jpg|jpeg|bmp|png)$/i.test(src)){html='<img src="'+src+'" width="'+width+'" height="'+height+'" />';}else if(/\.flv$/i.test(src)||/\.mov$/i.test(src)||/\.moov$/i.test(src)||/\.m4v$/i.test(src)){html='<embed src="'+request_uri+'common/tpl/images/flvplayer.swf" allowfullscreen="true" autostart="'+autostart+'" width="'+width+'" height="'+height+'" flashvars="&file='+src+'&width='+width+'&height='+height+'&autostart='+autostart+'" wmode="'+params.wmode+'" />';}else if(/\.swf/i.test(src)){clsid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';if(typeof(enforce_ssl)!='undefined'&&enforce_ssl){codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0";}
else{codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0";}
html='<object classid="'+clsid+'" codebase="'+codebase+'" width="'+width+'" height="'+height+'" flashvars="'+params.flashvars+'">';html+='<param name="movie" value="'+src+'" />';for(var name in params){if(params[name]!='undefined'&&params[name]!=''){html+='<param name="'+name+'" value="'+params[name]+'" />';}}
html+=''
+'<embed src="'+src+'" autostart="'+autostart+'" width="'+width+'" height="'+height+'" flashvars="'+params.flashvars+'" wmode="'+params.wmode+'"></embed>'
+'</object>';}else{if(jQuery.browser.mozilla||jQuery.browser.opera){autostart=(params.autostart&&params.autostart!='false')?'1':'0';}
html='<embed src="'+src+'" autostart="'+autostart+'" width="'+width+'" height="'+height+'"';if(params.wmode=='transparent'){html+=' windowlessvideo="1"';}
html+='></embed>';}
return html;}
function zbxe_folder_open(id){jQuery("#folder_open_"+id).hide();jQuery("#folder_close_"+id).show();jQuery("#folder_"+id).show();}
function zbxe_folder_close(id){jQuery("#folder_open_"+id).show();jQuery("#folder_close_"+id).hide();jQuery("#folder_"+id).hide();}
function setFixedPopupSize(){var $=jQuery;var $header=$('#popHeader');var $body=$('#popBody');if($body.length){if($body.height()>400){$body.css({overflow:'auto',overflowX:'hidden',height:400+'px'});}}
var $win=$(window);var $pc=$('#popup_content');var w=Math.max($pc[0].offsetWidth,600);var h=$pc[0].offsetHeight;var dw=$win.width();var dh=$win.height();var _w=0,_h=0;if(w!=dw)_w=w-dw;if(h!=dh)_h=h-dh;if(_w||_h){window.resizeBy(_w,_h);}
if(!arguments.callee.executed){setTimeout(setFixedPopupSize,300);arguments.callee.executed=true;}}
function doCallModuleAction(module,action,target_srl){var params=new Array();params['target_srl']=target_srl;params['cur_mid']=current_mid;exec_xml(module,action,params,completeCallModuleAction);}
function completeCallModuleAction(ret_obj,response_tags){if(ret_obj['message']!='success')alert(ret_obj['message']);location.reload();}
function completeMessage(ret_obj){alert(ret_obj['message']);location.reload();}
function doChangeLangType(obj){if(typeof(obj)=="string"){setLangType(obj);}else{var val=obj.options[obj.selectedIndex].value;setLangType(val);}
location.reload();}
function setLangType(lang_type){var expire=new Date();expire.setTime(expire.getTime()+(7000*24*3600000));xSetCookie('lang_type',lang_type,expire,'/');}
function doDocumentPreview(obj){var fo_obj=obj;while(fo_obj.nodeName!="FORM"){fo_obj=fo_obj.parentNode;}
if(fo_obj.nodeName!="FORM")return;var editor_sequence=fo_obj.getAttribute('editor_sequence');var content=editorGetContent(editor_sequence);var win=window.open("","previewDocument","toolbars=no,width=700px;height=800px,scrollbars=yes,resizable=yes");var dummy_obj=jQuery("#previewDocument");if(!dummy_obj.length){jQuery('<form id="previewDocument" target="previewDocument" method="post" action="'+request_uri+'">'+'<input type="hidden" name="module" value="document" />'+'<input type="hidden" name="act" value="dispDocumentPreview" />'+'<input type="hidden" name="content" />'+'</form>').appendTo(document.body);dummy_obj=jQuery("#previewDocument")[0];}
if(dummy_obj){dummy_obj.content.value=content;dummy_obj.submit();}}
function doDocumentSave(obj){var editor_sequence=obj.form.getAttribute('editor_sequence');var prev_content=editorRelKeys[editor_sequence]['content'].value;if(typeof(editor_sequence)!='undefined'&&editor_sequence&&typeof(editorRelKeys)!='undefined'&&typeof(editorGetContent)=='function'){var content=editorGetContent(editor_sequence);editorRelKeys[editor_sequence]['content'].value=content;}
var params={},responses=['error','message','document_srl'],elms=obj.form.elements,data=jQuery(obj.form).serializeArray();;jQuery.each(data,function(i,field){var val=jQuery.trim(field.value);if(!val)return true;if(/\[\]$/.test(field.name))field.name=field.name.replace(/\[\]$/,'');if(params[field.name])params[field.name]+='|@|'+val;else params[field.name]=field.value;});exec_xml('member','procMemberSaveDocument',params,completeDocumentSave,responses,params,obj.form);editorRelKeys[editor_sequence]['content'].value=prev_content;return false;}
function completeDocumentSave(ret_obj){jQuery('input[name=document_srl]').eq(0).val(ret_obj['document_srl']);alert(ret_obj['message']);}
var objForSavedDoc=null;function doDocumentLoad(obj){objForSavedDoc=obj.form;popopen(request_uri.setQuery('module','member').setQuery('act','dispSavedDocumentList'));}
function doDocumentSelect(document_srl){if(!opener||!opener.objForSavedDoc){window.close();return;}
opener.location.href=opener.current_url.setQuery('document_srl',document_srl).setQuery('act','dispBoardWrite');window.close();}
function viewSkinInfo(module,skin){popopen("./?module=module&act=dispModuleSkinInfo&selected_module="+module+"&skin="+skin,'SkinInfo');}
var addedDocument=new Array();function doAddDocumentCart(obj){var srl=obj.value;addedDocument[addedDocument.length]=srl;setTimeout(function(){callAddDocumentCart(addedDocument.length);},100);}
function callAddDocumentCart(document_length){if(addedDocument.length<1||document_length!=addedDocument.length)return;var params=new Array();params["srls"]=addedDocument.join(",");exec_xml("document","procDocumentAddCart",params,null);addedDocument=new Array();}
function transRGB2Hex(value){if(!value)return value;if(value.indexOf('#')>-1)return value.replace(/^#/,'');if(value.toLowerCase().indexOf('rgb')<0)return value;value=value.replace(/^rgb\(/i,'').replace(/\)$/,'');value_list=value.split(',');var hex='';for(var i=0;i<value_list.length;i++){var color=parseInt(value_list[i],10).toString(16);if(color.length==1)color='0'+color;hex+=color;}
return hex;}
function toggleSecuritySignIn(){var href=location.href;if(/https:\/\//i.test(href))location.href=href.replace(/^https/i,'http');else location.href=href.replace(/^http/i,'https');}
function reloadDocument(){location.reload();}
var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(input){var output="";var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0;input=Base64._utf8_encode(input);while(i<input.length){chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}
output=output+
this._keyStr.charAt(enc1)+this._keyStr.charAt(enc2)+
this._keyStr.charAt(enc3)+this._keyStr.charAt(enc4);}
return output;},decode:function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<input.length){enc1=this._keyStr.indexOf(input.charAt(i++));enc2=this._keyStr.indexOf(input.charAt(i++));enc3=this._keyStr.indexOf(input.charAt(i++));enc4=this._keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2);}
if(enc4!=64){output=output+String.fromCharCode(chr3);}}
output=Base64._utf8_decode(output);return output;},_utf8_encode:function(string){string=string.replace(/\r\n/g,"\n");var utftext="";for(var n=0;n<string.length;n++){var c=string.charCodeAt(n);if(c<128){utftext+=String.fromCharCode(c);}
else if((c>127)&&(c<2048)){utftext+=String.fromCharCode((c>>6)|192);utftext+=String.fromCharCode((c&63)|128);}
else{utftext+=String.fromCharCode((c>>12)|224);utftext+=String.fromCharCode(((c>>6)&63)|128);utftext+=String.fromCharCode((c&63)|128);}}
return utftext;},_utf8_decode:function(utftext){var string="";var i=0;var c=c1=c2=0;while(i<utftext.length){c=utftext.charCodeAt(i);if(c<128){string+=String.fromCharCode(c);i++;}
else if((c>191)&&(c<224)){c2=utftext.charCodeAt(i+1);string+=String.fromCharCode(((c&31)<<6)|(c2&63));i+=2;}
else{c2=utftext.charCodeAt(i+1);c3=utftext.charCodeAt(i+2);string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}}
return string;}}
if(typeof(resizeImageContents)=='undefined'){function resizeImageContents(){}}
if(typeof(activateOptionDisabled)=='undefined'){function activateOptionDisabled(){}}
objectExtend=jQuery.extend;function toggleDisplay(objId){jQuery('#'+objId).toggle();}
function checkboxSelectAll(formObj,name,checked){var itemName=name;var option={};if(typeof(formObj)!="undefined")option.wrap=formObj;if(typeof(checked)!="undefined")option.checked=checked;XE.checkboxToggleAll(itemName,option);}
function clickCheckBoxAll(formObj,name){var itemName=name;var option={doClick:true};if(typeof(formObj)!="undefined")option.wrap=formObj;XE.checkboxToggleAll(itemName,option);}
function svc_folder_open(id){jQuery("#_folder_open_"+id).hide();jQuery("#_folder_close_"+id).show();jQuery("#_folder_"+id).show();}
function svc_folder_close(id){jQuery("#_folder_open_"+id).show();jQuery("#_folder_close_"+id).hide();jQuery("#_folder_"+id).hide();}
function open_calendar(fo_id,day_str,callback_func){if(typeof(day_str)=="undefined")day_str="";var url="./common/tpl/calendar.php?";if(fo_id)url+="fo_id="+fo_id;if(day_str)url+="&day_str="+day_str;if(callback_func)url+="&callback_func="+callback_func;popopen(url,'Calendar');}
var loaded_popup_menus=XE.loaded_popup_menus;function createPopupMenu(){}
function chkPopupMenu(){}
function displayPopupMenu(ret_obj,response_tags,params){XE.displayPopupMenu(ret_obj,response_tags,params);}
function GetObjLeft(obj){return jQuery(obj).offset().left;}
function GetObjTop(obj){return jQuery(obj).offset().top;}
function replaceOuterHTML(obj,html){jQuery(obj).replaceWith(html);}
function getOuterHTML(obj){return jQuery(obj).html().trim();}
jQuery(function(){jQuery(".lang_code").each(function()
/**
* @file common.js
* @author NHN (developers@xpressengine.com)
* @brief 몇가지 유용한 & 기본적으로 자주 사용되는 자바스크립트 함수들 모음
**/
if(jQuery)jQuery.noConflict();(function($){var UA=navigator.userAgent.toLowerCase();$.os={Linux:/linux/.test(UA),Unix:/x11/.test(UA),Mac:/mac/.test(UA),Windows:/win/.test(UA)};$.os.name=($.os.Windows)?'Windows':($.os.Linux)?'Linux':($.os.Unix)?'Unix':($.os.Mac)?'Mac':'';window.XE={loaded_popup_menus:new Array(),addedDocument:new Array(),checkboxToggleAll:function(){var itemName='cart';var options={wrap:null,checked:'toggle',doClick:false};switch(arguments.length){case 1:if(typeof(arguments[0])=="string"){itemName=arguments[0];}else{$.extend(options,arguments[0]||{});}
break;case 2:itemName=arguments[0];$.extend(options,arguments[1]||{});}
if(options.doClick==true)options.checked=null;if(typeof(options.wrap)=="string")options.wrap='#'+options.wrap;if(options.wrap){var obj=$(options.wrap).find('input[name='+itemName+']:checkbox');}else{var obj=$('input[name='+itemName+']:checkbox');}
if(options.checked=='toggle'){obj.each(function(){$(this).attr('checked',($(this).attr('checked'))?false:true);});}else{(options.doClick==true)?obj.click():obj.attr('checked',options.checked);}},displayPopupMenu:function(ret_obj,response_tags,params){var target_srl=params["target_srl"];var menu_id=params["menu_id"];var menus=ret_obj['menus'];var html="";if(this.loaded_popup_menus[menu_id]){html=this.loaded_popup_menus[menu_id];}else{if(menus){var item=menus['item'];if(typeof(item.length)=='undefined'||item.length<1)item=new Array(item);if(item.length){for(var i=0;i<item.length;i++){var url=item[i].url;var str=item[i].str;var icon=item[i].icon;var target=item[i].target;var styleText="";var click_str="";if(icon)styleText=" style=\"background-image:url('"+icon+"')\" ";switch(target){case"popup":click_str=" onclick=\"popopen(this.href,'"+target+"'); return false;\"";break;case"self":break;case"javascript":click_str=" onclick=\""+url+"; return false; \"";url="#";break;default:click_str=" onclick=\"window.open(this.href); return false;\"";break;}
html+='<li '+styleText+'><a href="'+url+'"'+click_str+'>'+str+'</a></li> ';}}}
this.loaded_popup_menus[menu_id]=html;}
if(html){var area=$('#popup_menu_area').html('<ul>'+html+'</ul>');var areaOffset={top:params['page_y'],left:params['page_x']};if(area.outerHeight()+areaOffset.top>$(window).height()+$(window).scrollTop())
areaOffset.top=$(window).height()-area.outerHeight()+$(window).scrollTop();if(area.outerWidth()+areaOffset.left>$(window).width()+$(window).scrollLeft())
areaOffset.left=$(window).width()-area.outerWidth()+$(window).scrollLeft();area.css({top:areaOffset.top,left:areaOffset.left}).show();}}}})(jQuery);jQuery(function($){if(!$('#popup_menu_area').length){var menuObj=$('<div>').attr('id','popup_menu_area').css({display:'none',zIndex:9999});$(document.body).append(menuObj);}
$(document).click(function(evt){var area=$('#popup_menu_area');if(!area.length)return;area.hide();var targetObj=$(evt.target);if(!targetObj.length)return;if(targetObj.length&&$.inArray(targetObj.attr('nodeName'),['DIV','SPAN','A'])==-1)targetObj=targetObj.parent();if(!targetObj.length||$.inArray(targetObj.attr('nodeName'),['DIV','SPAN','A'])==-1)return;var class_name=targetObj.attr('className');if(class_name.indexOf('_')<=0)return;var class_name_list=class_name.split(' ');var menu_id='';var menu_id_regx=/^([a-zA-Z]+)_([0-9]+)$/;for(var i=0,c=class_name_list.length;i<c;i++){if(menu_id_regx.test(class_name_list[i])){menu_id=class_name_list[i];}}
if(!menu_id)return;var tmp_arr=menu_id.split('_');var module_name=tmp_arr[0];var target_srl=tmp_arr[1];if(!module_name||!target_srl||target_srl<1)return;var action_name="get"+module_name.substr(0,1).toUpperCase()+module_name.substr(1,module_name.length-1)+"Menu";var params=new Array();params["target_srl"]=target_srl;params["mid"]=params["cur_mid"]=current_mid;params["cur_act"]=current_url.getQuery('act');params["menu_id"]=menu_id;params["page_x"]=evt.pageX;params["page_y"]=evt.pageY;if(typeof(xeVid)!='undefined')params["vid"]=xeVid;var response_tags=new Array("error","message","menus");if(typeof(XE.loaded_popup_menus[menu_id])!='undefined'){XE.displayPopupMenu(params,response_tags,params);return;}
show_waiting_message=false;exec_xml(module_name,action_name,params,XE.displayPopupMenu,response_tags,params);show_waiting_message=true;});if($.browser.msie){$('select').each(function(i,sels){var disabled_exists=false;var first_enable=new Array();for(var j=0;j<sels.options.length;j++){if(sels.options[j].disabled){sels.options[j].style.color='#CCCCCC';disabled_exists=true;}else{first_enable[i]=(first_enable[i]>-1)?first_enable[i]:j;}}
if(!disabled_exists)return;sels.oldonchange=sels.onchange;sels.onchange=function(){if(this.options[this.selectedIndex].disabled){this.selectedIndex=first_enable[i];}else{if(this.oldonchange)this.oldonchange();}};if(sels.selectedIndex>=0&&sels.options[sels.selectedIndex].disabled)sels.onchange();});}
var drEditorFold=$('.xe_content .fold_button');if(drEditorFold.size()){var fold_container=$('div.fold_container',drEditorFold);$('button.more',drEditorFold).click(function(){$(this).hide().next('button').show().parent().next(fold_container).show();});$('button.less',drEditorFold).click(function(){$(this).hide().prev('button').show().parent().next(fold_container).hide();});}});String.prototype.getQuery=function(key){var idx=this.indexOf('?');if(idx==-1)return null;var query_string=this.substr(idx+1,this.length);var args={};query_string.replace(/([^=]+)=([^&]*)(&|$)/g,function(){args[arguments[1]]=arguments[2];});var q=args[key];if(typeof(q)=="undefined")q="";return q;}
String.prototype.setQuery=function(key,val){var idx=this.indexOf('?');var uri=this;uri=uri.replace(/#$/,'');if(idx!=-1){uri=this.substr(0,idx);var query_string=this.substr(idx+1,this.length);var args=new Array();query_string.replace(/([^=]+)=([^&]*)(&|$)/g,function(){args[arguments[1]]=arguments[2];});args[key]=val;var q_list=new Array();for(var i in args){if(!args.hasOwnProperty(i))continue;var arg=args[i];if(!arg.toString().trim())continue;arg=decodeURI(arg);q_list[q_list.length]=i+'='+arg;}
uri=uri+"?"+q_list.join("&");}else{if(val.toString().trim())uri=uri+"?"+key+"="+val;}
var re=/https:\/\/([^:\/]+)(:\d+|)/i;var check=re.exec(uri);if(check)
{var toReplace="http://"+check[1];if(typeof(http_port)!='undefined'&&http_port!=80)
{toReplace+=":"+http_port;}
uri=uri.replace(re,toReplace);}
var bUseSSL=false;if(typeof(enforce_ssl)!='undefined'&&enforce_ssl)
{bUseSSL=true;}
else if(typeof(ssl_actions)!='undefined'&&typeof(ssl_actions.length)!='undefined'&&uri.getQuery('act')){var act=uri.getQuery('act');for(i=0;i<ssl_actions.length;i++){if(ssl_actions[i]==act){bUseSSL=true;break;}}}
if(bUseSSL)
{var re=/http:\/\/([^:\/]+)(:\d+|)/i;var check=re.exec(uri);if(check)
{var toReplace="https://"+check[1];if(typeof(https_port)!='undefined'&&https_port!=443)
{toReplace+=":"+https_port;}
uri=uri.replace(re,toReplace);}}
return encodeURI(uri);}
String.prototype.trim=function(){return this.replace(/(^\s*)|(\s*$)/g,"");}
function xSleep(sec){sec=sec/1000;var now=new Date();var sleep=new Date();while(sleep.getTime()-now.getTime()<sec){sleep=new Date();}}
function isDef(){for(var i=0;i<arguments.length;++i){if(typeof(arguments[i])=="undefined")return false;}
return true;}
var winopen_list=new Array();function winopen(url,target,attribute){if(typeof(xeVid)!='undefined'&&url.indexOf(request_uri)>-1&&!url.getQuery('vid'))url=url.setQuery('vid',xeVid);try{if(target!="_blank"&&winopen_list[target]){winopen_list[target].close();winopen_list[target]=null;}}catch(e){}
if(typeof(target)=='undefined')target='_blank';if(typeof(attribute)=='undefined')attribute='';var win=window.open(url,target,attribute);win.focus();if(target!="_blank")winopen_list[target]=win;}
function popopen(url,target){if(typeof(target)=="undefined")target="_blank";if(typeof(xeVid)!='undefined'&&url.indexOf(request_uri)>-1&&!url.getQuery('vid'))url=url.setQuery('vid',xeVid);winopen(url,target,"left=10,top=10,width=10,height=10,scrollbars=no,resizable=yes,toolbars=no");}
function sendMailTo(to){location.href="mailto:"+to;}
function move_url(url,open_wnidow){if(!url)return false;if(typeof(open_wnidow)=='undefined')open_wnidow='N';if(open_wnidow=='N'){open_wnidow=false;}else{open_wnidow=true;}
if(/^\./.test(url))url=request_uri+url;if(open_wnidow){winopen(url);}else{location.href=url;}
return false;}
function displayMultimedia(src,width,height,options){var html=_displayMultimedia(src,width,height,options);if(html)document.writeln(html);}
function _displayMultimedia(src,width,height,options){if(src.indexOf('files')==0)src=request_uri+src;var defaults={wmode:'transparent',allowScriptAccess:'sameDomain',quality:'high',flashvars:'',autostart:false};var params=jQuery.extend(defaults,options||{});var autostart=(params.autostart&&params.autostart!='false')?'true':'false';delete(params.autostart);var clsid="";var codebase="";var html="";if(/\.(gif|jpg|jpeg|bmp|png)$/i.test(src)){html='<img src="'+src+'" width="'+width+'" height="'+height+'" />';}else if(/\.flv$/i.test(src)||/\.mov$/i.test(src)||/\.moov$/i.test(src)||/\.m4v$/i.test(src)){html='<embed src="'+request_uri+'common/tpl/images/flvplayer.swf" allowfullscreen="true" autostart="'+autostart+'" width="'+width+'" height="'+height+'" flashvars="&file='+src+'&width='+width+'&height='+height+'&autostart='+autostart+'" wmode="'+params.wmode+'" />';}else if(/\.swf/i.test(src)){clsid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';if(typeof(enforce_ssl)!='undefined'&&enforce_ssl){codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0";}
else{codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0";}
html='<object classid="'+clsid+'" codebase="'+codebase+'" width="'+width+'" height="'+height+'" flashvars="'+params.flashvars+'">';html+='<param name="movie" value="'+src+'" />';for(var name in params){if(params[name]!='undefined'&&params[name]!=''){html+='<param name="'+name+'" value="'+params[name]+'" />';}}
html+=''
+'<embed src="'+src+'" autostart="'+autostart+'" width="'+width+'" height="'+height+'" flashvars="'+params.flashvars+'" wmode="'+params.wmode+'"></embed>'
+'</object>';}else{if(jQuery.browser.mozilla||jQuery.browser.opera){autostart=(params.autostart&&params.autostart!='false')?'1':'0';}
html='<embed src="'+src+'" autostart="'+autostart+'" width="'+width+'" height="'+height+'"';if(params.wmode=='transparent'){html+=' windowlessvideo="1"';}
html+='></embed>';}
return html;}
function zbxe_folder_open(id){jQuery("#folder_open_"+id).hide();jQuery("#folder_close_"+id).show();jQuery("#folder_"+id).show();}
function zbxe_folder_close(id){jQuery("#folder_open_"+id).show();jQuery("#folder_close_"+id).hide();jQuery("#folder_"+id).hide();}
function setFixedPopupSize(){var $=jQuery;var $header=$('#popHeader');var $body=$('#popBody');if($body.length){if($body.height()>400){$body.css({overflow:'auto',overflowX:'hidden',height:400+'px'});}}
var $win=$(window);var $pc=$('#popup_content');var w=Math.max($pc[0].offsetWidth,600);var h=$pc[0].offsetHeight;var dw=$win.width();var dh=$win.height();var _w=0,_h=0;if(w!=dw)_w=w-dw;if(h!=dh)_h=h-dh;if(_w||_h){window.resizeBy(_w,_h);}
if(!arguments.callee.executed){setTimeout(setFixedPopupSize,300);arguments.callee.executed=true;}}
function doCallModuleAction(module,action,target_srl){var params=new Array();params['target_srl']=target_srl;params['cur_mid']=current_mid;exec_xml(module,action,params,completeCallModuleAction);}
function completeCallModuleAction(ret_obj,response_tags){if(ret_obj['message']!='success')alert(ret_obj['message']);location.reload();}
function completeMessage(ret_obj){alert(ret_obj['message']);location.reload();}
function doChangeLangType(obj){if(typeof(obj)=="string"){setLangType(obj);}else{var val=obj.options[obj.selectedIndex].value;setLangType(val);}
location.reload();}
function setLangType(lang_type){var expire=new Date();expire.setTime(expire.getTime()+(7000*24*3600000));xSetCookie('lang_type',lang_type,expire,'/');}
function doDocumentPreview(obj){var fo_obj=obj;while(fo_obj.nodeName!="FORM"){fo_obj=fo_obj.parentNode;}
if(fo_obj.nodeName!="FORM")return;var editor_sequence=fo_obj.getAttribute('editor_sequence');var content=editorGetContent(editor_sequence);var win=window.open("","previewDocument","toolbars=no,width=700px;height=800px,scrollbars=yes,resizable=yes");var dummy_obj=jQuery("#previewDocument");if(!dummy_obj.length){jQuery('<form id="previewDocument" target="previewDocument" method="post" action="'+request_uri+'">'+'<input type="hidden" name="module" value="document" />'+'<input type="hidden" name="act" value="dispDocumentPreview" />'+'<input type="hidden" name="content" />'+'</form>').appendTo(document.body);dummy_obj=jQuery("#previewDocument")[0];}
if(dummy_obj){dummy_obj.content.value=content;dummy_obj.submit();}}
function doDocumentSave(obj){var editor_sequence=obj.form.getAttribute('editor_sequence');var prev_content=editorRelKeys[editor_sequence]['content'].value;if(typeof(editor_sequence)!='undefined'&&editor_sequence&&typeof(editorRelKeys)!='undefined'&&typeof(editorGetContent)=='function'){var content=editorGetContent(editor_sequence);editorRelKeys[editor_sequence]['content'].value=content;}
var params={},responses=['error','message','document_srl'],elms=obj.form.elements,data=jQuery(obj.form).serializeArray();;jQuery.each(data,function(i,field){var val=jQuery.trim(field.value);if(!val)return true;if(/\[\]$/.test(field.name))field.name=field.name.replace(/\[\]$/,'');if(params[field.name])params[field.name]+='|@|'+val;else params[field.name]=field.value;});exec_xml('member','procMemberSaveDocument',params,completeDocumentSave,responses,params,obj.form);editorRelKeys[editor_sequence]['content'].value=prev_content;return false;}
function completeDocumentSave(ret_obj){jQuery('input[name=document_srl]').eq(0).val(ret_obj['document_srl']);alert(ret_obj['message']);}
var objForSavedDoc=null;function doDocumentLoad(obj){objForSavedDoc=obj.form;popopen(request_uri.setQuery('module','member').setQuery('act','dispSavedDocumentList'));}
function doDocumentSelect(document_srl){if(!opener||!opener.objForSavedDoc){window.close();return;}
opener.location.href=opener.current_url.setQuery('document_srl',document_srl).setQuery('act','dispBoardWrite');window.close();}
function viewSkinInfo(module,skin){popopen("./?module=module&act=dispModuleSkinInfo&selected_module="+module+"&skin="+skin,'SkinInfo');}
var addedDocument=new Array();function doAddDocumentCart(obj){var srl=obj.value;addedDocument[addedDocument.length]=srl;setTimeout(function(){callAddDocumentCart(addedDocument.length);},100);}
function callAddDocumentCart(document_length){if(addedDocument.length<1||document_length!=addedDocument.length)return;var params=new Array();params["srls"]=addedDocument.join(",");exec_xml("document","procDocumentAddCart",params,null);addedDocument=new Array();}
function transRGB2Hex(value){if(!value)return value;if(value.indexOf('#')>-1)return value.replace(/^#/,'');if(value.toLowerCase().indexOf('rgb')<0)return value;value=value.replace(/^rgb\(/i,'').replace(/\)$/,'');value_list=value.split(',');var hex='';for(var i=0;i<value_list.length;i++){var color=parseInt(value_list[i],10).toString(16);if(color.length==1)color='0'+color;hex+=color;}
return hex;}
function toggleSecuritySignIn(){var href=location.href;if(/https:\/\//i.test(href))location.href=href.replace(/^https/i,'http');else location.href=href.replace(/^http/i,'https');}
function reloadDocument(){location.reload();}
var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(input){var output="";var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0;input=Base64._utf8_encode(input);while(i<input.length){chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}
output=output+
this._keyStr.charAt(enc1)+this._keyStr.charAt(enc2)+
this._keyStr.charAt(enc3)+this._keyStr.charAt(enc4);}
return output;},decode:function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<input.length){enc1=this._keyStr.indexOf(input.charAt(i++));enc2=this._keyStr.indexOf(input.charAt(i++));enc3=this._keyStr.indexOf(input.charAt(i++));enc4=this._keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2);}
if(enc4!=64){output=output+String.fromCharCode(chr3);}}
output=Base64._utf8_decode(output);return output;},_utf8_encode:function(string){string=string.replace(/\r\n/g,"\n");var utftext="";for(var n=0;n<string.length;n++){var c=string.charCodeAt(n);if(c<128){utftext+=String.fromCharCode(c);}
else if((c>127)&&(c<2048)){utftext+=String.fromCharCode((c>>6)|192);utftext+=String.fromCharCode((c&63)|128);}
else{utftext+=String.fromCharCode((c>>12)|224);utftext+=String.fromCharCode(((c>>6)&63)|128);utftext+=String.fromCharCode((c&63)|128);}}
return utftext;},_utf8_decode:function(utftext){var string="";var i=0;var c=c1=c2=0;while(i<utftext.length){c=utftext.charCodeAt(i);if(c<128){string+=String.fromCharCode(c);i++;}
else if((c>191)&&(c<224)){c2=utftext.charCodeAt(i+1);string+=String.fromCharCode(((c&31)<<6)|(c2&63));i+=2;}
else{c2=utftext.charCodeAt(i+1);c3=utftext.charCodeAt(i+2);string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}}
return string;}}
if(typeof(resizeImageContents)=='undefined'){function resizeImageContents(){}}
if(typeof(activateOptionDisabled)=='undefined'){function activateOptionDisabled(){}}
objectExtend=jQuery.extend;function toggleDisplay(objId){jQuery('#'+objId).toggle();}
function checkboxSelectAll(formObj,name,checked){var itemName=name;var option={};if(typeof(formObj)!="undefined")option.wrap=formObj;if(typeof(checked)!="undefined")option.checked=checked;XE.checkboxToggleAll(itemName,option);}
function clickCheckBoxAll(formObj,name){var itemName=name;var option={doClick:true};if(typeof(formObj)!="undefined")option.wrap=formObj;XE.checkboxToggleAll(itemName,option);}
function svc_folder_open(id){jQuery("#_folder_open_"+id).hide();jQuery("#_folder_close_"+id).show();jQuery("#_folder_"+id).show();}
function svc_folder_close(id){jQuery("#_folder_open_"+id).show();jQuery("#_folder_close_"+id).hide();jQuery("#_folder_"+id).hide();}
function open_calendar(fo_id,day_str,callback_func){if(typeof(day_str)=="undefined")day_str="";var url="./common/tpl/calendar.php?";if(fo_id)url+="fo_id="+fo_id;if(day_str)url+="&day_str="+day_str;if(callback_func)url+="&callback_func="+callback_func;popopen(url,'Calendar');}
var loaded_popup_menus=XE.loaded_popup_menus;function createPopupMenu(){}
function chkPopupMenu(){}
function displayPopupMenu(ret_obj,response_tags,params){XE.displayPopupMenu(ret_obj,response_tags,params);}
function GetObjLeft(obj){return jQuery(obj).offset().left;}
function GetObjTop(obj){return jQuery(obj).offset().top;}
function replaceOuterHTML(obj,html){jQuery(obj).replaceWith(html);}
function getOuterHTML(obj){return jQuery(obj).html().trim();}
jQuery(function(){jQuery(".lang_code").each(function()
{var objText=jQuery(this);var targetName=objText.attr("id");if(typeof(targetName)=="undefined")targetName=objText.attr("name");if(typeof(targetName)=="undefined")return;objText.after("<a href='"+request_uri.setQuery('module','module').setQuery('act','dispModuleAdminLangcode').setQuery('target',targetName)+"' class='buttonSet buttonSetting' onclick='popopen(this.href);return false;'><span>find_langcode</span></a>");});});

View file

@ -1,17 +1,17 @@
/**
* @file js_app.js
* @author taggon (gonom9@gmail.com)
* @brief XE JavaScript Application Framework (JAF)
* @namespace xe
* @update 20100701
*/
(function($){var _xe_base,_app_base,_plugin_base;var _apps=[];_xe_base={getName:function(){return'Core';},createApp:function(sName,oDef){var _base=getTypeBase();$.extend(_base.prototype,_app_base,oDef);_base.prototype.getName=function(){return sName;};return _base;},createPlugin:function(sName,oDef){var _base=getTypeBase();$.extend(_base.prototype,_plugin_base,oDef);_base.prototype.getName=function(){return sName;};return _base;},getApps:function(){return $.makeArray(_apps);},getApp:function(indexOrName){indexOrName=(indexOrName||'').toLowerCase();if(typeof _apps[indexOrName]!='undefined'){return _apps[indexOrName];}else{return null;}},registerApp:function(oApp){var sName=oApp.getName().toLowerCase();_apps.push(oApp);if(!$.isArray(_apps[sName])){_apps[sName]=[];}
_apps[sName].push(oApp);oApp.parent=this;if($.isFunction(oApp.activate))oApp.activate();},unregisterApp:function(oApp){var sName=oPlugin.getName().toLowerCase();var nIndex=$.inArray(oApp,_apps);if(nIndex>=0)_apps.splice(nIndex,1);if($.isArray(_apps[sName])){nIndex=$.inArray(oApp,_apps[sName]);if(nIndex>=0)_apps[sName].splice(nIndex,1);}
if($.isFunction(oApp.deactivate))oApp.deactivate();},broadcast:function(msg,params){this._broadcast(this,msg,params);},_broadcast:function(sender,msg,params){for(var i=0;i<_apps.length;i++){_apps[i]._cast(sender,msg,params);}
this._cast(sender,msg,params);}}
_app_base={_plugins:[],_messages:{},getPlugin:function(sPluginName){sPluginName=sPluginName.toLowerCase();if($.isArray(this._plugins[sPluginName])){return this._plugins[sPluginName];}else{return[];}},registerPlugin:function(oPlugin){var self=this;var sName=oPlugin.getName().toLowerCase();if($.inArray(oPlugin,this._plugins)>=0)return false;this._plugins.push(oPlugin);if(!$.isArray(this._plugins[sName]))this._plugins[sName]=[];this._plugins[sName].push(oPlugin);$.each(oPlugin._binded_fn,function(api,fn){self.registerHandler(api,fn);});oPlugin.oApp=this;if($.isFunction(oPlugin.activate))oPlugin.activate();return true;},registerHandler:function(api,func){var msgs=this._messages;api=api.toUpperCase();if(!$.isArray(msgs[api]))msgs[api]=[];msgs[api].push(func);},cast:function(msg,params){return this._cast(this,msg,params||[]);},broadcast:function(sender,msg,params){if(this.parent&&this.parent._broadcast){this.parent._broadcast(sender,msg,params);}},_cast:function(sender,msg,params){var i,len;var aMsg=this._messages;msg=msg.toUpperCase();if(aMsg['BEFORE_'+msg]||this['API_BEFORE_'+msg]){var bContinue=this._cast(sender,'BEFORE_'+msg,params);if(!bContinue)return;}
var vRet=[],sFn='API_'+msg;if($.isArray(aMsg[msg])){for(i=0;i<aMsg[msg].length;i++){vRet.push(aMsg[msg][i](sender,params));}}
if(vRet.length<2)vRet=vRet[0];if(aMsg['AFTER_'+msg]||this['API_AFTER_'+msg]){this._cast(sender,'AFTER_'+msg,params);}
if(!/^(?:AFTER|BEFORE)_/.test(msg)){return vRet;}else{return $.isArray(vRet)?($.inArray(false,vRet)<0):((typeof vRet=='undefined')?true:!!vRet);}}};_plugin_base={oApp:null,cast:function(msg,params){if(this.oApp&&this.oApp._cast){return this.oApp._cast(this,msg,params||[]);}},broadcast:function(msg,params){if(this.oApp&&this.oApp.broadcast){this.oApp.broadcast(this,mag,params||[]);}}};function getTypeBase(){var _base=function(){var self=this;var pool=null;if($.isArray(this._plugins))this._plugins=[];if(this._messages)this._messages={};else this._binded_fn={};$.each(this,function(key,val){if(!$.isFunction(val))return true;if(!/^API_([A-Z0-9_]+)$/.test(key))return true;var api=RegExp.$1;var fn=function(sender,params){return self[key](sender,params)};if(self._messages)self._messages[api]=[fn];else self._binded_fn[api]=fn;});if($.isFunction(this.init))this.init.apply(this,arguments);};return _base;}
/**
* @file js_app.js
* @author NHN (developers@xpressengine.com)
* @brief XE JavaScript Application Framework (JAF)
* @namespace xe
* @update 20100701
*/
(function($){var _xe_base,_app_base,_plugin_base;var _apps=[];_xe_base={getName:function(){return'Core';},createApp:function(sName,oDef){var _base=getTypeBase();$.extend(_base.prototype,_app_base,oDef);_base.prototype.getName=function(){return sName;};return _base;},createPlugin:function(sName,oDef){var _base=getTypeBase();$.extend(_base.prototype,_plugin_base,oDef);_base.prototype.getName=function(){return sName;};return _base;},getApps:function(){return $.makeArray(_apps);},getApp:function(indexOrName){indexOrName=(indexOrName||'').toLowerCase();if(typeof _apps[indexOrName]!='undefined'){return _apps[indexOrName];}else{return null;}},registerApp:function(oApp){var sName=oApp.getName().toLowerCase();_apps.push(oApp);if(!$.isArray(_apps[sName])){_apps[sName]=[];}
_apps[sName].push(oApp);oApp.parent=this;if($.isFunction(oApp.activate))oApp.activate();},unregisterApp:function(oApp){var sName=oPlugin.getName().toLowerCase();var nIndex=$.inArray(oApp,_apps);if(nIndex>=0)_apps.splice(nIndex,1);if($.isArray(_apps[sName])){nIndex=$.inArray(oApp,_apps[sName]);if(nIndex>=0)_apps[sName].splice(nIndex,1);}
if($.isFunction(oApp.deactivate))oApp.deactivate();},broadcast:function(msg,params){this._broadcast(this,msg,params);},_broadcast:function(sender,msg,params){for(var i=0;i<_apps.length;i++){_apps[i]._cast(sender,msg,params);}
this._cast(sender,msg,params);}}
_app_base={_plugins:[],_messages:{},getPlugin:function(sPluginName){sPluginName=sPluginName.toLowerCase();if($.isArray(this._plugins[sPluginName])){return this._plugins[sPluginName];}else{return[];}},registerPlugin:function(oPlugin){var self=this;var sName=oPlugin.getName().toLowerCase();if($.inArray(oPlugin,this._plugins)>=0)return false;this._plugins.push(oPlugin);if(!$.isArray(this._plugins[sName]))this._plugins[sName]=[];this._plugins[sName].push(oPlugin);$.each(oPlugin._binded_fn,function(api,fn){self.registerHandler(api,fn);});oPlugin.oApp=this;if($.isFunction(oPlugin.activate))oPlugin.activate();return true;},registerHandler:function(api,func){var msgs=this._messages;api=api.toUpperCase();if(!$.isArray(msgs[api]))msgs[api]=[];msgs[api].push(func);},cast:function(msg,params){return this._cast(this,msg,params||[]);},broadcast:function(sender,msg,params){if(this.parent&&this.parent._broadcast){this.parent._broadcast(sender,msg,params);}},_cast:function(sender,msg,params){var i,len;var aMsg=this._messages;msg=msg.toUpperCase();if(aMsg['BEFORE_'+msg]||this['API_BEFORE_'+msg]){var bContinue=this._cast(sender,'BEFORE_'+msg,params);if(!bContinue)return;}
var vRet=[],sFn='API_'+msg;if($.isArray(aMsg[msg])){for(i=0;i<aMsg[msg].length;i++){vRet.push(aMsg[msg][i](sender,params));}}
if(vRet.length<2)vRet=vRet[0];if(aMsg['AFTER_'+msg]||this['API_AFTER_'+msg]){this._cast(sender,'AFTER_'+msg,params);}
if(!/^(?:AFTER|BEFORE)_/.test(msg)){return vRet;}else{return $.isArray(vRet)?($.inArray(false,vRet)<0):((typeof vRet=='undefined')?true:!!vRet);}}};_plugin_base={oApp:null,cast:function(msg,params){if(this.oApp&&this.oApp._cast){return this.oApp._cast(this,msg,params||[]);}},broadcast:function(msg,params){if(this.oApp&&this.oApp.broadcast){this.oApp.broadcast(this,mag,params||[]);}}};function getTypeBase(){var _base=function(){var self=this;var pool=null;if($.isArray(this._plugins))this._plugins=[];if(this._messages)this._messages={};else this._binded_fn={};$.each(this,function(key,val){if(!$.isFunction(val))return true;if(!/^API_([A-Z0-9_]+)$/.test(key))return true;var api=RegExp.$1;var fn=function(sender,params){return self[key](sender,params)};if(self._messages)self._messages[api]=[fn];else self._binded_fn[api]=fn;});if($.isFunction(this.init))this.init.apply(this,arguments);};return _base;}
window.xe=$.extend(_app_base,_xe_base);window.xe.lang={};$(function(){xe.broadcast('ONREADY');});$(window).load(function(){xe.broadcast('ONLOAD');});})(jQuery);

View file

@ -1,368 +1,368 @@
/**
* @brief XE Calendar
* @author gony (http://mygony.com)
*
* 사용법
*
**/
(function($){
if (!$.ui) $.ui = {};
$.extend($.ui, { calendar: { version:'0.3' } });
var PROP_NAME = 'calendar';
var index = 0;
var calendars = {};
var template = {calendar:'',month:''};
function Calendar() {
}
$.extend(Calendar.prototype, {
_activeCalendar : null,
_getuid : function(obj) {
var uid = obj.attr('class').match(/ui-calendar-(\d+-\d+)/);
if (!uid) return -1;
return uid[1];
},
_show : function(obj) {
if (this._activeCalendar) this._hide(this._activeCalendar);
// disabled?
if (obj.hasClass('ui-calendar-disabled')) return;
// Active Calendar
this._activeCalendar = obj.show(300);
},
_hide : function(obj) {
if (this._activeCalendar && this._activeCalendar.get(0) == obj.get(0)) this._activeCalendar = null;
obj.hide(300);
},
_toggle : function(obj) {
(obj.css('display' ) == 'none')?this._show(obj):this._hide(obj);
},
_attachCalendar : function(obj, options) {
if ((obj=$(obj)).hasClass('ui-calendar')) return;
var uid = $.calendar.uuid+'-'+(index++);
var c = calendars[uid] = {};
// uid 추가
obj.addClass('ui-calendar-'+uid).mousedown(function(){return false});
// default options
c.options = $.extend({
type : 'day',
activeDate : ''
}, options||{});
c.lang = $.extend({
weekdays : 'Sun,Mon,Tue,Wed,Thu,Fri,Sat',
today : 'Today',
prevmonth : 'Prev Month',
nextmonth : 'Next Month',
prevyear : 'Prev Year',
nextyear : 'Next Year',
close : 'Close'
}, options.lang||{});
c.lang.weekdays = c.lang.weekdays.split(',');
// 날짜 설정
var d;
if (typeof c.options.activeDate == 'string' && c.options.activeDate) {
var s = c.options.activeDate.split('/');
d = new Date(s[0], s[1]-1, s[2]-0);
} else {
d = new Date();
}
this._setDate(obj, d);
// 토글 버튼
if (c.options.button) {
(c.button=$(c.options.button)).click(function(){ obj.calendar('toggle') });
}
// 클래스 추가
obj.addClass('ui-calendar');
// position 설정한 후, 좌표를 (0,0)으로 변경
var pos = obj.css({position:'absolute',top:0,left:0}).show().offset();
// 버튼의 위치 구해서 좌표 조정
var bpos = c.button.offset();
var dx = bpos.left - pos.left;
var dy = bpos.top - pos.top;
// 좌표 조정 후 레이어 숨김
obj.css({top:(dy+c.button.height())+'px',left:dx+'px'}).hide();
},
_checkExternalClick : function(e) {
if ($.calendar._activeCalendar) $.calendar._hide($.calendar._activeCalendar);
},
_processTemplate : function(tpl, vars) {
tpl = (' '+tpl+' ').split(/[\{\}]/g);
for(var i=0; i < tpl.length; i++) {
if (i%2) {
if (/^[\w\.\[\]]+$/.test(tpl[i])) tpl[i] = 'try{v=vv.'+tpl[i]+'}catch(e){v=""};ret.push(v);';
else if (/^@(\w+)\s+in\s+(\w+)$/.test(tpl[i])) tpl[i] = 'for(i=0,l=vv.'+RegExp.$2+'.length;i<l;i++) { vv.'+RegExp.$1+'=vv.'+RegExp.$2+'[i];';
else if (tpl[i] == '/') tpl[i] = '};';
else tpl[i] = 'ret.push("{'+tpl[i]+'}");';
} else {
tpl[i] = 'ret.push("'+tpl[i].replace(/"/g, '\\"')+'");'; //"
}
}
tpl.push('return ret.join("");');
tpl = (['var i,l,v,t,ret=[];'].concat(tpl)).join('');
return (new Function('vv',tpl))(vars);
},
_draw : function(obj) {
var uid = this._getuid(obj);
if (uid < 0) return;
var cal = calendars[uid];
var tpl = (cal.options.type == 'month')?template.month:template.calendar;
var v = {lang:cal.lang};
// 날짜 관련 변수
v['yyyy'] = cal.date.getFullYear();
v['yy'] = (v['yyyy']+'').substring(2);
v['m'] = cal.date.getMonth() + 1;
v['mm'] = v['m'] > 9?v['m']:'0'+v['m'];
// 연간 달력이 아니라면 이 달의 날짜를 구한다.
if (cal.options.type != 'month') {
// 날짜에 사용할 달력
v['weeks'] = [];
var d = new Date(cal.date.getTime()), w = [];
var last = (v.m!=2)? ((v.m+(v.m>7?1:0))%2?31:30) : ((new Date(v.yyyy,v.m-1,29)).getMonth()==v.m?29:28); // 마지막 날
d.setDate(1); // 1일로 설정 후 1일의 요일을 가져온다.
var start = d.getDay(), end = last+start;
for(var i=0,len=end+(7-(end%7||7));i<len;i++) {
if (i%7 == 0) v['weeks'].push(w=[]);
if (i < start || i >= end) w.push('&nbsp;');
else w.push('<button type="button" class="day'+v.yyyy+'-'+v.m+'-'+(i+1-start)+'">'+(i+1-start)+'</button>');
}
}
// 템플릿 처리
tpl = this._processTemplate(tpl, v);
obj.html(tpl);
// 선택한 날짜
if (cal.options.type == 'month') {
} else {
var t = new Date();
obj.find('td>button.day'+t.getFullYear()+'-'+(t.getMonth()+1)+'-'+t.getDate()).addClass('today');
t = cal.activeDate;
obj.find('td>button.day'+t.getFullYear()+'-'+(t.getMonth()+1)+'-'+t.getDate()).addClass('active');
}
// 이벤트 핸들러
obj.find('button.close').click(function(){ $.calendar._hide(obj); });
obj.find('button.today').click(function(){ $.calendar._moveToday(obj); });
if (cal.options.type == 'month') {
obj.find('button.prev').click(function(){ $.calendar._prevYear(obj) });
obj.find('button.next').click(function(){ $.calendar._nextYear(obj) });
} else {
obj.find('button.prev').click(function(){ $.calendar._prevMonth(obj) });
obj.find('button.next').click(function(){ $.calendar._nextMonth(obj) });
obj.find('button.prev_year').click(function(){ $.calendar._prevYear(obj) });
obj.find('button.next_year').click(function(){ $.calendar._nextYear(obj) });
}
obj.find('td>button').click(function(){ $.calendar._selectDate(obj, $(this)) });
},
_selectDate : function(obj, btn) {
var cal = calendars[ this._getuid(obj) ];
var date = btn.attr('class').match(/day([\d\-]+)/);
if (!date) return;
date = date[1].split('-');
var ad = cal.activeDate;
ad.setFullYear(date[0]-0);
ad.setMonth(date[1]-1);
ad.setDate(date[2]-0);
this._setDate(obj, ad);
},
_setDate : function(obj, newDate) {
var uid = this._getuid(obj);
if (uid < 0) return null;
if (!newDate || !(newDate instanceof Date)) newDate = new Date();
var cal = calendars[uid];
cal.activeDate = new Date(newDate.getTime());
cal.date = new Date(newDate.getTime());
this._draw(obj);
if ($.isFunction(cal.options.select) && obj.hasClass('ui-calendar')) {
cal.options.select(newDate.getFullYear(), newDate.getMonth()+1, newDate.getDate());
}
},
_getDate : function(obj, format) {
var uid = this._getuid(obj);
if (uid < 0) return null;
if (typeof format != 'string') return calendars[uid].activeDate;
// format string
},
_moveToday : function(obj) {
calendars[this._getuid(obj)].date = new Date();
this._draw(obj);
},
_prevMonth : function(obj) {
var cal = calendars[this._getuid(obj)];
var m = cal.date.getMonth();
cal.date.setDate(1);
if (m == 0) {
cal.date.setFullYear(cal.date.getFullYear()-1);
cal.date.setMonth(11);
} else {
cal.date.setMonth(m-1);
}
this._draw(obj);
},
_nextMonth : function(obj) {
var cal = calendars[this._getuid(obj)];
var m = cal.date.getMonth();
cal.date.setDate(1);
if (m == 11) {
cal.date.setFullYear(cal.date.getFullYear()+1);
cal.date.setMonth(0);
} else {
cal.date.setMonth(m+1);
}
this._draw(obj);
},
_prevYear : function(obj) {
var cal = calendars[this._getuid(obj)];
cal.date.setFullYear(cal.date.getFullYear()-1);
this._draw(obj);
},
_nextYear : function(obj) {
var cal = calendars[this._getuid(obj)];
cal.date.setFullYear(cal.date.getFullYear()+1);
this._draw(obj);
}
});
/**
* Invoke the calednar functionallity
* @return jQuery object
*/
$.fn.calendar = function(options) {
var args = $.makeArray(arguments);
if (!$.calendar.initialized) {
$(document).mousedown($.calendar._checkExternalClick);
$.calendar.initialized = true;
}
if (typeof options == 'string' && $.inArray(options, ['getDate'])) {
args.shift();
return $.calendar['_'+options].apply($.calendar, [$(this[0])].concat(args) );
}
return this.each(function(){
if (typeof options == 'string') {
args.shift();
$.calendar['_'+ options].apply($.calendar, [$(this)].concat(args));
} else {
$.calendar._attachCalendar($(this), options);
}
});
}
$.calendar = new Calendar(); // singleton instance
$.calendar.initialized = false;
$.calendar.uuid = new Date().getTime();
$.calendar.version = $.ui.calendar.version;
// template
template.calendar = '<button type="button" class="close"><span>{lang.close_layer}</span></button>\
<table border="1" cellspacing="0" summary="달력에서 날짜를 선택하기">\
<caption>\
<span>\
{yyyy}.{mm}.\
<button type="button" class="today">{lang.today}</button>\
<button type="button" class="navi prev"><span>{lang.prevmonth}</span></button>\
<button type="button" class="navi next"><span>{lang.nextmonth}</span></button>\
<button type="button" class="navi prev_year"><span>{lang.prevyear}</span></button>\
<button type="button" class="navi next_year"><span>{lang.nextyear}</span></button>\
</span>\
</caption>\
<thead>\
<tr>\
<th scope="col" class="sun">{lang.weekdays[0]}</th>\
<th scope="col">{lang.weekdays[1]}</th>\
<th scope="col">{lang.weekdays[2]}</th>\
<th scope="col">{lang.weekdays[3]}</th>\
<th scope="col">{lang.weekdays[4]}</th>\
<th scope="col">{lang.weekdays[5]}</th>\
<th scope="col">{lang.weekdays[6]}</th>\
</tr>\
</thead>\
<tbody>\
{@week in weeks}\
<tr class="ui-calenar-repeat">\
<td class="sun">{week[0]}</td>\
<td>{week[1]}</td>\
<td>{week[2]}</td>\
<td>{week[3]}</td>\
<td>{week[4]}</td>\
<td>{week[5]}</td>\
<td>{week[6]}</td>\
</tr>\
{/}\
</tbody>\
</table>\
<button type="button" class="close"><span>{lang.close_layer}</span></button>';
template.month = '<button type="button" class="close"><span>{lang.close_layer}</span></button>\
<table border="1" cellspacing="0" summary="달력에서 날짜를 선택하기" class="month">\
<caption>\
<span>\
{yyyy}.{mm} <button type="button" class="today">{lang.today}</button>\
<button type="button" class="navi prev"><span>{lang.prevyear}</span></button>\
<button type="button" class="navi next"><span>{lang.nextyear}</span></button>\
</span>\
</caption>\
<tbody>\
<tr>\
<td><button type="button" class="past"><strong>1</strong><br />January</button></td>\
<td><button type="button" class="past"><strong>2</strong><br />Februry</button></td>\
<td><button type="button" class="past"><strong>3</strong><br />March</button></td>\
<td><button type="button" class="past"><strong>4</strong><br />April</button></td>\
</tr>\
<tr>\
<td><button type="button" class="past"><strong>5</strong><br />May</button></td>\
<td><button type="button" class="active"><strong>6</strong><br />June</button></td>\
<td><button type="button"><strong>7</strong><br />July</button></td>\
<td><button type="button"><strong>8</strong><br />August</button></td>\
</tr>\
<tr>\
<td><button type="button"><strong>9</strong><br />September</button></td>\
<td><button type="button"><strong>10</strong><br />October</button></td>\
<td><button type="button"><strong>11</strong><br />Nobember</button></td>\
<td><button type="button"><strong>12</strong><br />December</button></td>\
</tr>\
</tbody>\
</table>\
<button type="button" class="close"><span>{lang.close_layer}</span></button>';
/**
* @brief XE Calendar
* @author NHN (developers@xpressengine.com)
*
* 사용법
*
**/
(function($){
if (!$.ui) $.ui = {};
$.extend($.ui, { calendar: { version:'0.3' } });
var PROP_NAME = 'calendar';
var index = 0;
var calendars = {};
var template = {calendar:'',month:''};
function Calendar() {
}
$.extend(Calendar.prototype, {
_activeCalendar : null,
_getuid : function(obj) {
var uid = obj.attr('class').match(/ui-calendar-(\d+-\d+)/);
if (!uid) return -1;
return uid[1];
},
_show : function(obj) {
if (this._activeCalendar) this._hide(this._activeCalendar);
// disabled?
if (obj.hasClass('ui-calendar-disabled')) return;
// Active Calendar
this._activeCalendar = obj.show(300);
},
_hide : function(obj) {
if (this._activeCalendar && this._activeCalendar.get(0) == obj.get(0)) this._activeCalendar = null;
obj.hide(300);
},
_toggle : function(obj) {
(obj.css('display' ) == 'none')?this._show(obj):this._hide(obj);
},
_attachCalendar : function(obj, options) {
if ((obj=$(obj)).hasClass('ui-calendar')) return;
var uid = $.calendar.uuid+'-'+(index++);
var c = calendars[uid] = {};
// uid 추가
obj.addClass('ui-calendar-'+uid).mousedown(function(){return false});
// default options
c.options = $.extend({
type : 'day',
activeDate : ''
}, options||{});
c.lang = $.extend({
weekdays : 'Sun,Mon,Tue,Wed,Thu,Fri,Sat',
today : 'Today',
prevmonth : 'Prev Month',
nextmonth : 'Next Month',
prevyear : 'Prev Year',
nextyear : 'Next Year',
close : 'Close'
}, options.lang||{});
c.lang.weekdays = c.lang.weekdays.split(',');
// 날짜 설정
var d;
if (typeof c.options.activeDate == 'string' && c.options.activeDate) {
var s = c.options.activeDate.split('/');
d = new Date(s[0], s[1]-1, s[2]-0);
} else {
d = new Date();
}
this._setDate(obj, d);
// 토글 버튼
if (c.options.button) {
(c.button=$(c.options.button)).click(function(){ obj.calendar('toggle') });
}
// 클래스 추가
obj.addClass('ui-calendar');
// position 설정한 후, 좌표를 (0,0)으로 변경
var pos = obj.css({position:'absolute',top:0,left:0}).show().offset();
// 버튼의 위치 구해서 좌표 조정
var bpos = c.button.offset();
var dx = bpos.left - pos.left;
var dy = bpos.top - pos.top;
// 좌표 조정 후 레이어 숨김
obj.css({top:(dy+c.button.height())+'px',left:dx+'px'}).hide();
},
_checkExternalClick : function(e) {
if ($.calendar._activeCalendar) $.calendar._hide($.calendar._activeCalendar);
},
_processTemplate : function(tpl, vars) {
tpl = (' '+tpl+' ').split(/[\{\}]/g);
for(var i=0; i < tpl.length; i++) {
if (i%2) {
if (/^[\w\.\[\]]+$/.test(tpl[i])) tpl[i] = 'try{v=vv.'+tpl[i]+'}catch(e){v=""};ret.push(v);';
else if (/^@(\w+)\s+in\s+(\w+)$/.test(tpl[i])) tpl[i] = 'for(i=0,l=vv.'+RegExp.$2+'.length;i<l;i++) { vv.'+RegExp.$1+'=vv.'+RegExp.$2+'[i];';
else if (tpl[i] == '/') tpl[i] = '};';
else tpl[i] = 'ret.push("{'+tpl[i]+'}");';
} else {
tpl[i] = 'ret.push("'+tpl[i].replace(/"/g, '\\"')+'");'; //"
}
}
tpl.push('return ret.join("");');
tpl = (['var i,l,v,t,ret=[];'].concat(tpl)).join('');
return (new Function('vv',tpl))(vars);
},
_draw : function(obj) {
var uid = this._getuid(obj);
if (uid < 0) return;
var cal = calendars[uid];
var tpl = (cal.options.type == 'month')?template.month:template.calendar;
var v = {lang:cal.lang};
// 날짜 관련 변수
v['yyyy'] = cal.date.getFullYear();
v['yy'] = (v['yyyy']+'').substring(2);
v['m'] = cal.date.getMonth() + 1;
v['mm'] = v['m'] > 9?v['m']:'0'+v['m'];
// 연간 달력이 아니라면 이 달의 날짜를 구한다.
if (cal.options.type != 'month') {
// 날짜에 사용할 달력
v['weeks'] = [];
var d = new Date(cal.date.getTime()), w = [];
var last = (v.m!=2)? ((v.m+(v.m>7?1:0))%2?31:30) : ((new Date(v.yyyy,v.m-1,29)).getMonth()==v.m?29:28); // 마지막 날
d.setDate(1); // 1일로 설정 후 1일의 요일을 가져온다.
var start = d.getDay(), end = last+start;
for(var i=0,len=end+(7-(end%7||7));i<len;i++) {
if (i%7 == 0) v['weeks'].push(w=[]);
if (i < start || i >= end) w.push('&nbsp;');
else w.push('<button type="button" class="day'+v.yyyy+'-'+v.m+'-'+(i+1-start)+'">'+(i+1-start)+'</button>');
}
}
// 템플릿 처리
tpl = this._processTemplate(tpl, v);
obj.html(tpl);
// 선택한 날짜
if (cal.options.type == 'month') {
} else {
var t = new Date();
obj.find('td>button.day'+t.getFullYear()+'-'+(t.getMonth()+1)+'-'+t.getDate()).addClass('today');
t = cal.activeDate;
obj.find('td>button.day'+t.getFullYear()+'-'+(t.getMonth()+1)+'-'+t.getDate()).addClass('active');
}
// 이벤트 핸들러
obj.find('button.close').click(function(){ $.calendar._hide(obj); });
obj.find('button.today').click(function(){ $.calendar._moveToday(obj); });
if (cal.options.type == 'month') {
obj.find('button.prev').click(function(){ $.calendar._prevYear(obj) });
obj.find('button.next').click(function(){ $.calendar._nextYear(obj) });
} else {
obj.find('button.prev').click(function(){ $.calendar._prevMonth(obj) });
obj.find('button.next').click(function(){ $.calendar._nextMonth(obj) });
obj.find('button.prev_year').click(function(){ $.calendar._prevYear(obj) });
obj.find('button.next_year').click(function(){ $.calendar._nextYear(obj) });
}
obj.find('td>button').click(function(){ $.calendar._selectDate(obj, $(this)) });
},
_selectDate : function(obj, btn) {
var cal = calendars[ this._getuid(obj) ];
var date = btn.attr('class').match(/day([\d\-]+)/);
if (!date) return;
date = date[1].split('-');
var ad = cal.activeDate;
ad.setFullYear(date[0]-0);
ad.setMonth(date[1]-1);
ad.setDate(date[2]-0);
this._setDate(obj, ad);
},
_setDate : function(obj, newDate) {
var uid = this._getuid(obj);
if (uid < 0) return null;
if (!newDate || !(newDate instanceof Date)) newDate = new Date();
var cal = calendars[uid];
cal.activeDate = new Date(newDate.getTime());
cal.date = new Date(newDate.getTime());
this._draw(obj);
if ($.isFunction(cal.options.select) && obj.hasClass('ui-calendar')) {
cal.options.select(newDate.getFullYear(), newDate.getMonth()+1, newDate.getDate());
}
},
_getDate : function(obj, format) {
var uid = this._getuid(obj);
if (uid < 0) return null;
if (typeof format != 'string') return calendars[uid].activeDate;
// format string
},
_moveToday : function(obj) {
calendars[this._getuid(obj)].date = new Date();
this._draw(obj);
},
_prevMonth : function(obj) {
var cal = calendars[this._getuid(obj)];
var m = cal.date.getMonth();
cal.date.setDate(1);
if (m == 0) {
cal.date.setFullYear(cal.date.getFullYear()-1);
cal.date.setMonth(11);
} else {
cal.date.setMonth(m-1);
}
this._draw(obj);
},
_nextMonth : function(obj) {
var cal = calendars[this._getuid(obj)];
var m = cal.date.getMonth();
cal.date.setDate(1);
if (m == 11) {
cal.date.setFullYear(cal.date.getFullYear()+1);
cal.date.setMonth(0);
} else {
cal.date.setMonth(m+1);
}
this._draw(obj);
},
_prevYear : function(obj) {
var cal = calendars[this._getuid(obj)];
cal.date.setFullYear(cal.date.getFullYear()-1);
this._draw(obj);
},
_nextYear : function(obj) {
var cal = calendars[this._getuid(obj)];
cal.date.setFullYear(cal.date.getFullYear()+1);
this._draw(obj);
}
});
/**
* Invoke the calednar functionallity
* @return jQuery object
*/
$.fn.calendar = function(options) {
var args = $.makeArray(arguments);
if (!$.calendar.initialized) {
$(document).mousedown($.calendar._checkExternalClick);
$.calendar.initialized = true;
}
if (typeof options == 'string' && $.inArray(options, ['getDate'])) {
args.shift();
return $.calendar['_'+options].apply($.calendar, [$(this[0])].concat(args) );
}
return this.each(function(){
if (typeof options == 'string') {
args.shift();
$.calendar['_'+ options].apply($.calendar, [$(this)].concat(args));
} else {
$.calendar._attachCalendar($(this), options);
}
});
}
$.calendar = new Calendar(); // singleton instance
$.calendar.initialized = false;
$.calendar.uuid = new Date().getTime();
$.calendar.version = $.ui.calendar.version;
// template
template.calendar = '<button type="button" class="close"><span>{lang.close_layer}</span></button>\
<table border="1" cellspacing="0" summary="달력에서 날짜를 선택하기">\
<caption>\
<span>\
{yyyy}.{mm}.\
<button type="button" class="today">{lang.today}</button>\
<button type="button" class="navi prev"><span>{lang.prevmonth}</span></button>\
<button type="button" class="navi next"><span>{lang.nextmonth}</span></button>\
<button type="button" class="navi prev_year"><span>{lang.prevyear}</span></button>\
<button type="button" class="navi next_year"><span>{lang.nextyear}</span></button>\
</span>\
</caption>\
<thead>\
<tr>\
<th scope="col" class="sun">{lang.weekdays[0]}</th>\
<th scope="col">{lang.weekdays[1]}</th>\
<th scope="col">{lang.weekdays[2]}</th>\
<th scope="col">{lang.weekdays[3]}</th>\
<th scope="col">{lang.weekdays[4]}</th>\
<th scope="col">{lang.weekdays[5]}</th>\
<th scope="col">{lang.weekdays[6]}</th>\
</tr>\
</thead>\
<tbody>\
{@week in weeks}\
<tr class="ui-calenar-repeat">\
<td class="sun">{week[0]}</td>\
<td>{week[1]}</td>\
<td>{week[2]}</td>\
<td>{week[3]}</td>\
<td>{week[4]}</td>\
<td>{week[5]}</td>\
<td>{week[6]}</td>\
</tr>\
{/}\
</tbody>\
</table>\
<button type="button" class="close"><span>{lang.close_layer}</span></button>';
template.month = '<button type="button" class="close"><span>{lang.close_layer}</span></button>\
<table border="1" cellspacing="0" summary="달력에서 날짜를 선택하기" class="month">\
<caption>\
<span>\
{yyyy}.{mm} <button type="button" class="today">{lang.today}</button>\
<button type="button" class="navi prev"><span>{lang.prevyear}</span></button>\
<button type="button" class="navi next"><span>{lang.nextyear}</span></button>\
</span>\
</caption>\
<tbody>\
<tr>\
<td><button type="button" class="past"><strong>1</strong><br />January</button></td>\
<td><button type="button" class="past"><strong>2</strong><br />Februry</button></td>\
<td><button type="button" class="past"><strong>3</strong><br />March</button></td>\
<td><button type="button" class="past"><strong>4</strong><br />April</button></td>\
</tr>\
<tr>\
<td><button type="button" class="past"><strong>5</strong><br />May</button></td>\
<td><button type="button" class="active"><strong>6</strong><br />June</button></td>\
<td><button type="button"><strong>7</strong><br />July</button></td>\
<td><button type="button"><strong>8</strong><br />August</button></td>\
</tr>\
<tr>\
<td><button type="button"><strong>9</strong><br />September</button></td>\
<td><button type="button"><strong>10</strong><br />October</button></td>\
<td><button type="button"><strong>11</strong><br />Nobember</button></td>\
<td><button type="button"><strong>12</strong><br />December</button></td>\
</tr>\
</tbody>\
</table>\
<button type="button" class="close"><span>{lang.close_layer}</span></button>';
})(jQuery);

View file

@ -1,366 +1,366 @@
/**
* @brief XE Colorpicker
* @author mygony (http://mygony.com)
**/
jQuery(function($){
var ready = false;
var tmp = $('<span>').hide();
// var panel = null;
$.fn.xe_colorpicker = function(settings){
var selection = this;
if (!ready) {
ColorPicker.init(settings);
ready = true;
}
this.each(function(){
var col = color($(this).val());
$(this).val( col ).css('background-color', col );
setTextColor( $(this) );
}).focus(function(event){
var t = this;
$(this).select();
// show color picker
ColorPicker.show(this);
}).keypress(function(event){
if (!ColorPicker.is(':visible')) return;
if (/^#?[0-9a-f]{6}$/i.test( event.target.value )) {
ColorPicker.color( event.target.value );
}
});
$(document).mousedown(function(event){
var target = event.target;
if (selection.index(target) > -1) return;
if ($(target).parents().add(target).index(ColorPicker.element) > -1) return;
if ($(target).parents().add(target).index(ColorPicker.buttons) > -1) return;
ColorPicker.hide();
});
return this;
};
var ColorPicker = {
element : null,
picker : null,
colpane: null,
buttons : null,
_target : null,
_backup : null,
_hsv : null,
_mode : 'none',
init : function() {
var cp = this;
this.element = $('<div class="xe_colorpicker"><div class="colorpicker"><div class="colortable"><div class="background"><div class="indicator"></div></div></div><div class="huebar"><div class="background"><div class="indicator"></div></div></div></div><div class="buttons"><button type="button" class="ok">OK</button><button type="button" class="cancel">Cancel</button><button type="button" class="none">None</button></div></div>');
this.picker = this.element.find('> div.colorpicker');
this.colpane = this.picker.find('div.colortable > div.background');
this.colpoint = this.colpane.find('> .indicator');
this.buttons = this.element.find('> div.buttons');
this.huepane = this.element.find('div.huebar > .background');
this.huepoint = this.huepane.find('> .indicator');
this._mousedown = method(this.onmousedown, this);
this._mousemove = method(this.onmousemove, this);
this._mouseup = method(this.onmouseup, this);
this.picker.find('.background').mousedown(this._mousedown);
this.buttons.find('button.ok').click(method(this.ok,this));
this.buttons.find('button.cancel').click(method(this.cancel,this));
this.buttons.find('button.none').click(method(this.none,this));
// only for IE6
if ($.browser.msie && parseInt($.browser.version) < 7) {
this.element.append( $('<iframe>').css({position:'absolute','z-index':-1,left:0,top:0,width:9999,height:9999}) );
}
},
show : function(input) {
var pos = (input=$(input)).offset(), pos_panel;
//var par = input.get(0).offsetParent;
var par = $("body").get(0);
var btn = this.buttons.hide();
var col = color(input.val());
this._target = input;
this._backup = col;
this.color(col);
this._target.val(col);
pos_panel = this.element.hide().css({'z-index':99999,left:0,top:0}).appendTo( par ).show(300,function(){btn.slideDown(150)}).offset();
this.element.css({left:pos.left-pos_panel.left,top:pos.top-pos_panel.top+input.get(0).offsetHeight});
},
hide : function() {
var e = this.element;
this._target = null;
this.buttons.slideUp(100, function(){e.hide(200)});
},
visible : function() {
return this.element.is(':visible');
},
color : function(sColor) {
if (typeof sColor == 'string') {
var col = color(sColor);
var hsv = _hsv(rgb2hsv(hex2rgb(col)));
this.hsv(hsv.h, hsv.s, hsv.v);
} else if (this._target) {
return color(this._target.val());
}
},
hsv : function(h, s, v) {
var col = rgb2hex(hsv2rgb(h, s, v));
this._hsv = _hsv(h, s, v);
// background color and text color
this._target.val(col).css('background-color', col);
setTextColor(this._target);
// hue bar indicator
if (this._hue_h) this.huepoint.css('top', limit(0, Math.round((360-this._hsv.h)/360*this._hue_h), this._hue_h-1) - 3 );
// color - background
this.colpane.css('background-color', rgb2hex(hsv2rgb(h, 100, 100)) );
// color - indicator
if (this._col_h && this._col_w) {
this.colpoint.css({
top : limit(0, Math.round((100-this._hsv.v)/100*this._col_h), this._col_h-1) - 5,
left : limit(0, Math.round(this._hsv.s/100*this._col_w), this._col_w-1 ) - 5
});
}
},
onmousedown : function(event) {
var cur = $(event.target);
var par = cur.parent();
var pos = cur.offset();
var hue, sat, val; // hue, saturation, value
this._height = cur.height();
this._width = cur.width();
this._top = pos.top;
this._left = pos.left;
this._col_w = this.colpane.width();
this._col_h = this.colpane.width();
this._hue_h = this.huepane.height();
if (par.is('.colortable')) {
this._mode = 'color';
hue = this._hsv.h;
sat = ( limit(0, (event.pageX - this._left), this._width ) / this._width * 100);
val = ( limit(0, (this._height - event.pageY + this._top), this._height ) / this._height * 100);
} else if (par.is('.huebar')) {
this._mode = 'hue';
hue = limit(0, (this._height - event.pageY + this._top), this._height) / this._height * 360;
sat = this._hsv.s;
val = this._hsv.v;
}
this.hsv( hue, sat, val );
$(document).bind('mousemove', this._mousemove).bind('mouseup', this._mouseup);
},
onmousemove : function(event) {
var hue, sat, val; // hue, saturation, value
switch(this._mode) {
case 'color':
hue = this._hsv.h;
sat = ( limit(0, (event.pageX - this._left), this._width ) / this._width * 100);
val = ( limit(0, (this._height - event.pageY + this._top), this._height ) / this._height * 100);
break;
case 'hue':
hue = limit(0, (this._height - event.pageY + this._top), this._height) / this._height * 360;
sat = this._hsv.s;
val = this._hsv.v;
break;
}
this.hsv( hue, sat, val );
},
onmouseup : function(event) {
this._mode = 'none';
$(document).unbind('mousemove', this._mousemove).unbind('mouseup', this._mouseup);
},
ok : function() {
this.hide();
},
cancel : function() {
this.color(this._backup);
this.hide();
},
none : function() {
this._target.attr('value','transparent').css('background','').css('color','#000000');
this.hide();
}
};
function setTextColor(input) {
var hex = input.css('color', '').val(), hsv, rgb;
if (hex == 'transparent' || hex == '') return;
rgb = hex2rgb(hex);
hsv = rgb2hsv(255-rgb.r, 255-rgb.g, 255-rgb.b); // 보색을 구한 뒤
hex = rgb2hex(hsv2rgb(0, 0, hsv.v>50?100:0)); // 보색에 해당하는 흑백으로 결정
input.css('color', hex);
}
function method(func, thisObj) {
return function() { return func.apply(thisObj, arguments) }
}
function color(str) {
var col = $.trim(str);
var regHex1 = /^#[0-9a-f]{6}$/i;
var regHex2 = /^#?([0-9a-f])([0-9a-f])([0-9a-f])$/i; // short hex
if (regHex1.test(col)) return col.toUpperCase();
if (regHex2.test(col)) return col.replace(regHex2, '#$1$1$2$2$3$3').toUpperCase();
try {
col = tmp.appendTo($('<body>')).css('background-color', col).css('background-color');
} catch(e) {
col = 'transparent';
} finally {
tmp.css('background-color','').remove();
}
if (/^rgb\(([0-9, ]+)\)$/i.test(col)) col = rgb2hex(RegExp.$1.split(/,\s*/));
if (!/#[0-9a-f]{6}/i.test(col)) col = 'transparent';
return col;
}
function _rgb(rgb, _g, _b) {
var r, g, b;
if (typeof arguments[2] == "number") {
r = rgb;
g = _g;
b = _b;
} else if (typeof rgb == "object") {
if (rgb.constructor == Array) {
r = rgb[0] || 0; g = rgb[1] || 0; b = rgb[2] || 0;
} else {
r = rgb.r || 0; g = rgb.g || 0; b = rgb.b || 0;
}
}
rgb = [];
rgb.r = rgb[0] = r = parseInt(r, 10);
rgb.g = rgb[1] = g = parseInt(g, 10);
rgb.b = rgb[2] = b = parseInt(b, 10);
return rgb;
}
function _hsv(hsv, _s, _v) {
var h, s, v;
if (typeof arguments[2] == "number") {
h = hsv; s = _s; v = _v;
} else if (typeof hsv == "object") {
if (hsv.constructor == Array) {
h = hsv[0] || 0; s = hsv[1] || 0; v = hsv[2] || 0;
} else {
h = hsv.h || 0; s = hsv.s || 0; v = hsv.v || 0;
}
}
hsv = [];
hsv.h = hsv[0] = h = parseInt(h, 10);
hsv.s = hsv[1] = s = parseInt(s, 10);
hsv.v = hsv[2] = v = parseInt(v, 10);
return hsv;
}
function rgb2hex(rgb, _g, _b) {
var rgb = _rgb(rgb, _g, _b);
for(var i=0; i < rgb.length; i++) {
(rgb[i] = Number(rgb[i]).toString(16)).length<2?rgb[i]='0'+rgb[i]:0;
}
return '#'+rgb.join('').toUpperCase();
}
function hex2rgb(hex) {
var r=0, g=0, b=0;
if (/^#?([0-9a-f]{1,2})([0-9a-f]{1,2})([0-9a-f]{1,2})$/i.test(hex)) {
r = parseInt(RegExp.$1, 16);
g = parseInt(RegExp.$2, 16);
b = parseInt(RegExp.$3, 16);
}
return _rgb(r, g, b);
}
function hsv2rgb(hsv, _s, _v) {
var r=0, g=0, b=0;
var h=0, s=0, v=0;
var i, f, p, q, t;
hsv = _hsv(hsv, _s, _v);
h = (hsv[0] % 360) / 60; s = hsv[1] / 100; v = hsv[2] / 100;
i = Math.floor(h);
f = h-i;
p = v*(1-s);
q = v*(1-s*f);
t = v*(1-s*(1-f));
switch (i) {
case 0: r=v; g=t; b=p; break;
case 1: r=q; g=v; b=p; break;
case 2: r=p; g=v; b=t; break;
case 3: r=p; g=q; b=v; break;
case 4: r=t; g=p; b=v; break;
case 5: r=v; g=p; b=q; break;
case 6: break;
}
return _rgb(Math.floor(r*255), Math.floor(g*255), Math.floor(b*255));
}
function rgb2hsv(rgb, _g, _b) {
var rgb = _rgb(rgb, _g, _b);
var r = rgb[0], g = rgb[1], b = rgb[2];
var h = 0, s = 0, v = Math.max(r,g,b), min = Math.min(r,g,b), delta = v - min;
if (s = v?delta/v:0) {
if (r == v) h = 60 * (g - b) / delta;
else if (g == v) h = 120 + 60 * (b - r) / delta;
else if (b == v) h = 240 + 60 * (r - g) / delta;
if (h < 0) h += 360;
}
return _hsv(Math.floor(h), Math.floor(s*100), Math.floor(v/255*100));
}
function limit(min, val, max){
return Math.min(Math.max(min, val), max);
}
$('input.color-indicator').xe_colorpicker();
});
/**
* @brief XE Colorpicker
* @author NHN (developers@xpressengine.com)
**/
jQuery(function($){
var ready = false;
var tmp = $('<span>').hide();
// var panel = null;
$.fn.xe_colorpicker = function(settings){
var selection = this;
if (!ready) {
ColorPicker.init(settings);
ready = true;
}
this.each(function(){
var col = color($(this).val());
$(this).val( col ).css('background-color', col );
setTextColor( $(this) );
}).focus(function(event){
var t = this;
$(this).select();
// show color picker
ColorPicker.show(this);
}).keypress(function(event){
if (!ColorPicker.is(':visible')) return;
if (/^#?[0-9a-f]{6}$/i.test( event.target.value )) {
ColorPicker.color( event.target.value );
}
});
$(document).mousedown(function(event){
var target = event.target;
if (selection.index(target) > -1) return;
if ($(target).parents().add(target).index(ColorPicker.element) > -1) return;
if ($(target).parents().add(target).index(ColorPicker.buttons) > -1) return;
ColorPicker.hide();
});
return this;
};
var ColorPicker = {
element : null,
picker : null,
colpane: null,
buttons : null,
_target : null,
_backup : null,
_hsv : null,
_mode : 'none',
init : function() {
var cp = this;
this.element = $('<div class="xe_colorpicker"><div class="colorpicker"><div class="colortable"><div class="background"><div class="indicator"></div></div></div><div class="huebar"><div class="background"><div class="indicator"></div></div></div></div><div class="buttons"><button type="button" class="ok">OK</button><button type="button" class="cancel">Cancel</button><button type="button" class="none">None</button></div></div>');
this.picker = this.element.find('> div.colorpicker');
this.colpane = this.picker.find('div.colortable > div.background');
this.colpoint = this.colpane.find('> .indicator');
this.buttons = this.element.find('> div.buttons');
this.huepane = this.element.find('div.huebar > .background');
this.huepoint = this.huepane.find('> .indicator');
this._mousedown = method(this.onmousedown, this);
this._mousemove = method(this.onmousemove, this);
this._mouseup = method(this.onmouseup, this);
this.picker.find('.background').mousedown(this._mousedown);
this.buttons.find('button.ok').click(method(this.ok,this));
this.buttons.find('button.cancel').click(method(this.cancel,this));
this.buttons.find('button.none').click(method(this.none,this));
// only for IE6
if ($.browser.msie && parseInt($.browser.version) < 7) {
this.element.append( $('<iframe>').css({position:'absolute','z-index':-1,left:0,top:0,width:9999,height:9999}) );
}
},
show : function(input) {
var pos = (input=$(input)).offset(), pos_panel;
//var par = input.get(0).offsetParent;
var par = $("body").get(0);
var btn = this.buttons.hide();
var col = color(input.val());
this._target = input;
this._backup = col;
this.color(col);
this._target.val(col);
pos_panel = this.element.hide().css({'z-index':99999,left:0,top:0}).appendTo( par ).show(300,function(){btn.slideDown(150)}).offset();
this.element.css({left:pos.left-pos_panel.left,top:pos.top-pos_panel.top+input.get(0).offsetHeight});
},
hide : function() {
var e = this.element;
this._target = null;
this.buttons.slideUp(100, function(){e.hide(200)});
},
visible : function() {
return this.element.is(':visible');
},
color : function(sColor) {
if (typeof sColor == 'string') {
var col = color(sColor);
var hsv = _hsv(rgb2hsv(hex2rgb(col)));
this.hsv(hsv.h, hsv.s, hsv.v);
} else if (this._target) {
return color(this._target.val());
}
},
hsv : function(h, s, v) {
var col = rgb2hex(hsv2rgb(h, s, v));
this._hsv = _hsv(h, s, v);
// background color and text color
this._target.val(col).css('background-color', col);
setTextColor(this._target);
// hue bar indicator
if (this._hue_h) this.huepoint.css('top', limit(0, Math.round((360-this._hsv.h)/360*this._hue_h), this._hue_h-1) - 3 );
// color - background
this.colpane.css('background-color', rgb2hex(hsv2rgb(h, 100, 100)) );
// color - indicator
if (this._col_h && this._col_w) {
this.colpoint.css({
top : limit(0, Math.round((100-this._hsv.v)/100*this._col_h), this._col_h-1) - 5,
left : limit(0, Math.round(this._hsv.s/100*this._col_w), this._col_w-1 ) - 5
});
}
},
onmousedown : function(event) {
var cur = $(event.target);
var par = cur.parent();
var pos = cur.offset();
var hue, sat, val; // hue, saturation, value
this._height = cur.height();
this._width = cur.width();
this._top = pos.top;
this._left = pos.left;
this._col_w = this.colpane.width();
this._col_h = this.colpane.width();
this._hue_h = this.huepane.height();
if (par.is('.colortable')) {
this._mode = 'color';
hue = this._hsv.h;
sat = ( limit(0, (event.pageX - this._left), this._width ) / this._width * 100);
val = ( limit(0, (this._height - event.pageY + this._top), this._height ) / this._height * 100);
} else if (par.is('.huebar')) {
this._mode = 'hue';
hue = limit(0, (this._height - event.pageY + this._top), this._height) / this._height * 360;
sat = this._hsv.s;
val = this._hsv.v;
}
this.hsv( hue, sat, val );
$(document).bind('mousemove', this._mousemove).bind('mouseup', this._mouseup);
},
onmousemove : function(event) {
var hue, sat, val; // hue, saturation, value
switch(this._mode) {
case 'color':
hue = this._hsv.h;
sat = ( limit(0, (event.pageX - this._left), this._width ) / this._width * 100);
val = ( limit(0, (this._height - event.pageY + this._top), this._height ) / this._height * 100);
break;
case 'hue':
hue = limit(0, (this._height - event.pageY + this._top), this._height) / this._height * 360;
sat = this._hsv.s;
val = this._hsv.v;
break;
}
this.hsv( hue, sat, val );
},
onmouseup : function(event) {
this._mode = 'none';
$(document).unbind('mousemove', this._mousemove).unbind('mouseup', this._mouseup);
},
ok : function() {
this.hide();
},
cancel : function() {
this.color(this._backup);
this.hide();
},
none : function() {
this._target.attr('value','transparent').css('background','').css('color','#000000');
this.hide();
}
};
function setTextColor(input) {
var hex = input.css('color', '').val(), hsv, rgb;
if (hex == 'transparent' || hex == '') return;
rgb = hex2rgb(hex);
hsv = rgb2hsv(255-rgb.r, 255-rgb.g, 255-rgb.b); // 보색을 구한 뒤
hex = rgb2hex(hsv2rgb(0, 0, hsv.v>50?100:0)); // 보색에 해당하는 흑백으로 결정
input.css('color', hex);
}
function method(func, thisObj) {
return function() { return func.apply(thisObj, arguments) }
}
function color(str) {
var col = $.trim(str);
var regHex1 = /^#[0-9a-f]{6}$/i;
var regHex2 = /^#?([0-9a-f])([0-9a-f])([0-9a-f])$/i; // short hex
if (regHex1.test(col)) return col.toUpperCase();
if (regHex2.test(col)) return col.replace(regHex2, '#$1$1$2$2$3$3').toUpperCase();
try {
col = tmp.appendTo($('<body>')).css('background-color', col).css('background-color');
} catch(e) {
col = 'transparent';
} finally {
tmp.css('background-color','').remove();
}
if (/^rgb\(([0-9, ]+)\)$/i.test(col)) col = rgb2hex(RegExp.$1.split(/,\s*/));
if (!/#[0-9a-f]{6}/i.test(col)) col = 'transparent';
return col;
}
function _rgb(rgb, _g, _b) {
var r, g, b;
if (typeof arguments[2] == "number") {
r = rgb;
g = _g;
b = _b;
} else if (typeof rgb == "object") {
if (rgb.constructor == Array) {
r = rgb[0] || 0; g = rgb[1] || 0; b = rgb[2] || 0;
} else {
r = rgb.r || 0; g = rgb.g || 0; b = rgb.b || 0;
}
}
rgb = [];
rgb.r = rgb[0] = r = parseInt(r, 10);
rgb.g = rgb[1] = g = parseInt(g, 10);
rgb.b = rgb[2] = b = parseInt(b, 10);
return rgb;
}
function _hsv(hsv, _s, _v) {
var h, s, v;
if (typeof arguments[2] == "number") {
h = hsv; s = _s; v = _v;
} else if (typeof hsv == "object") {
if (hsv.constructor == Array) {
h = hsv[0] || 0; s = hsv[1] || 0; v = hsv[2] || 0;
} else {
h = hsv.h || 0; s = hsv.s || 0; v = hsv.v || 0;
}
}
hsv = [];
hsv.h = hsv[0] = h = parseInt(h, 10);
hsv.s = hsv[1] = s = parseInt(s, 10);
hsv.v = hsv[2] = v = parseInt(v, 10);
return hsv;
}
function rgb2hex(rgb, _g, _b) {
var rgb = _rgb(rgb, _g, _b);
for(var i=0; i < rgb.length; i++) {
(rgb[i] = Number(rgb[i]).toString(16)).length<2?rgb[i]='0'+rgb[i]:0;
}
return '#'+rgb.join('').toUpperCase();
}
function hex2rgb(hex) {
var r=0, g=0, b=0;
if (/^#?([0-9a-f]{1,2})([0-9a-f]{1,2})([0-9a-f]{1,2})$/i.test(hex)) {
r = parseInt(RegExp.$1, 16);
g = parseInt(RegExp.$2, 16);
b = parseInt(RegExp.$3, 16);
}
return _rgb(r, g, b);
}
function hsv2rgb(hsv, _s, _v) {
var r=0, g=0, b=0;
var h=0, s=0, v=0;
var i, f, p, q, t;
hsv = _hsv(hsv, _s, _v);
h = (hsv[0] % 360) / 60; s = hsv[1] / 100; v = hsv[2] / 100;
i = Math.floor(h);
f = h-i;
p = v*(1-s);
q = v*(1-s*f);
t = v*(1-s*(1-f));
switch (i) {
case 0: r=v; g=t; b=p; break;
case 1: r=q; g=v; b=p; break;
case 2: r=p; g=v; b=t; break;
case 3: r=p; g=q; b=v; break;
case 4: r=t; g=p; b=v; break;
case 5: r=v; g=p; b=q; break;
case 6: break;
}
return _rgb(Math.floor(r*255), Math.floor(g*255), Math.floor(b*255));
}
function rgb2hsv(rgb, _g, _b) {
var rgb = _rgb(rgb, _g, _b);
var r = rgb[0], g = rgb[1], b = rgb[2];
var h = 0, s = 0, v = Math.max(r,g,b), min = Math.min(r,g,b), delta = v - min;
if (s = v?delta/v:0) {
if (r == v) h = 60 * (g - b) / delta;
else if (g == v) h = 120 + 60 * (b - r) / delta;
else if (b == v) h = 240 + 60 * (r - g) / delta;
if (h < 0) h += 360;
}
return _hsv(Math.floor(h), Math.floor(s*100), Math.floor(v/255*100));
}
function limit(min, val, max){
return Math.min(Math.max(min, val), max);
}
$('input.color-indicator').xe_colorpicker();
});

View file

@ -1,61 +1,61 @@
/**
* @brief Watch Input box
* @author taggon (http://mygony.com)
**/
(function($){
var class_name = '_watch_input';
$.fn.watch_input = function(settings)
{
if (this.length == 0) return false;
if (this.length > 1) {
this.each(function(){ $(this).watch_input(settings) });
return true;
}
if (!$.isFunction(settings.oninput)) return false;
if (this.hasClass(class_name)) return false;
this[0].__wi_oninput = settings.oninput;
this.addClass(class_name).keydown(_onkeydown).focus(_onfocus).blur(_onblur);
return this;
};
var timer = null, val = '', ie=$.browser.msie;
function _onkeydown(event)
{
if ($(this).val() != val) {
val = $(this).val();
this.__wi_oninput();
}
}
function _onfocus(event)
{
var self = $(this);
val = self.val();
if (ie) return true;
(function fn() {
if ( (self.val() != val) && $.isFunction(self[0].__wi_oninput) ) {
val = self.val();
self[0].__wi_oninput();
}
timer = setTimeout(arguments.callee, 100);
})();
}
function _onblur(event)
{
val = '';
if (!ie && timer) {
clearTimeout(timer);
timer = null;
}
}
})(jQuery);
/**
* @brief Watch Input box
* @author NHN (developers@xpresseingine.com)
**/
(function($){
var class_name = '_watch_input';
$.fn.watch_input = function(settings)
{
if (this.length == 0) return false;
if (this.length > 1) {
this.each(function(){ $(this).watch_input(settings) });
return true;
}
if (!$.isFunction(settings.oninput)) return false;
if (this.hasClass(class_name)) return false;
this[0].__wi_oninput = settings.oninput;
this.addClass(class_name).keydown(_onkeydown).focus(_onfocus).blur(_onblur);
return this;
};
var timer = null, val = '', ie=$.browser.msie;
function _onkeydown(event)
{
if ($(this).val() != val) {
val = $(this).val();
this.__wi_oninput();
}
}
function _onfocus(event)
{
var self = $(this);
val = self.val();
if (ie) return true;
(function fn() {
if ( (self.val() != val) && $.isFunction(self[0].__wi_oninput) ) {
val = self.val();
self[0].__wi_oninput();
}
timer = setTimeout(arguments.callee, 100);
})();
}
function _onblur(event)
{
val = '';
if (!ie && timer) {
clearTimeout(timer);
timer = null;
}
}
})(jQuery);

File diff suppressed because it is too large Load diff

View file

@ -1,279 +1,279 @@
/**
* @file js_app.js
* @author taggon (gonom9@gmail.com)
* @brief XE JavaScript Application Framework (JAF)
* @namespace xe
* @update 20100701
*/
(function($){
var _xe_base, _app_base, _plugin_base;
var _apps = [];
_xe_base = {
/**
* @brief return the name of Core module
*/
getName : function() {
return 'Core';
},
/**
* @brief Create an application class
*/
createApp : function(sName, oDef) {
var _base = getTypeBase();
$.extend(_base.prototype, _app_base, oDef);
_base.prototype.getName = function() {
return sName;
};
return _base;
},
/**
* @brief Create a plugin class
*/
createPlugin : function(sName, oDef) {
var _base = getTypeBase();
$.extend(_base.prototype, _plugin_base, oDef);
_base.prototype.getName = function() {
return sName;
};
return _base;
},
/**
* @brief Get the array of applications
*/
getApps : function() {
return $.makeArray(_apps);
},
/**
* @brief Get one application
*/
getApp : function(indexOrName) {
indexOrName = (indexOrName||'').toLowerCase();
if(typeof _apps[indexOrName] != 'undefined') {
return _apps[indexOrName];
} else {
return null;
}
},
/**
* @brief Register an application instance
*/
registerApp : function(oApp) {
var sName = oApp.getName().toLowerCase();
_apps.push(oApp);
if (!$.isArray(_apps[sName])) {
_apps[sName] = [];
}
_apps[sName].push(oApp);
oApp.parent = this;
// register event
if ($.isFunction(oApp.activate)) oApp.activate();
},
/**
* @brief Unregister an application instance
*/
unregisterApp : function(oApp) {
var sName = oPlugin.getName().toLowerCase();
var nIndex = $.inArray(oApp, _apps);
if (nIndex >= 0) _apps.splice(nIndex, 1);
if ($.isArray(_apps[sName])) {
nIndex = $.inArray(oApp, _apps[sName]);
if (nIndex >= 0) _apps[sName].splice(nIndex, 1);
}
// unregister event
if ($.isFunction(oApp.deactivate)) oApp.deactivate();
},
/**
* @brief overrides broadcast method
*/
broadcast : function(msg, params) {
this._broadcast(this, msg, params);
},
_broadcast : function(sender, msg, params) {
for(var i=0; i < _apps.length; i++) {
_apps[i]._cast(sender, msg, params);
}
// cast to child plugins
this._cast(sender, msg, params);
}
}
_app_base = {
_plugins : [],
_messages : {},
/**
* @brief get plugin
*/
getPlugin : function(sPluginName) {
sPluginName = sPluginName.toLowerCase();
if ($.isArray(this._plugins[sPluginName])) {
return this._plugins[sPluginName];
} else {
return [];
}
},
/**
* @brief register a plugin instance
*/
registerPlugin : function(oPlugin) {
var self = this;
var sName = oPlugin.getName().toLowerCase();
// check if the plugin is already registered
if ($.inArray(oPlugin, this._plugins) >= 0) return false;
// push the plugin into the _plugins array
this._plugins.push(oPlugin);
if (!$.isArray(this._plugins[sName])) this._plugins[sName] = [];
this._plugins[sName].push(oPlugin);
// register method pool
$.each(oPlugin._binded_fn, function(api, fn){ self.registerHandler(api, fn); });
// binding
oPlugin.oApp = this;
// registered event
if ($.isFunction(oPlugin.activate)) oPlugin.activate();
return true;
},
/**
* @brief register api message handler
*/
registerHandler : function(api, func) {
var msgs = this._messages; api = api.toUpperCase();
if (!$.isArray(msgs[api])) msgs[api] = [];
msgs[api].push(func);
},
cast : function(msg, params) {
return this._cast(this, msg, params || []);
},
broadcast : function(sender, msg, params) {
if (this.parent && this.parent._broadcast) {
this.parent._broadcast(sender, msg, params);
}
},
_cast : function(sender, msg, params) {
var i, len;
var aMsg = this._messages;
msg = msg.toUpperCase();
// BEFORE hooker
if (aMsg['BEFORE_'+msg] || this['API_BEFORE_'+msg]) {
var bContinue = this._cast(sender, 'BEFORE_'+msg, params);
if (!bContinue) return;
}
// main api function
var vRet = [], sFn = 'API_'+msg;
if ($.isArray(aMsg[msg])) {
for(i=0; i < aMsg[msg].length; i++) {
vRet.push( aMsg[msg][i](sender, params) );
}
}
if (vRet.length < 2) vRet = vRet[0];
// AFTER hooker
if (aMsg['AFTER_'+msg] || this['API_AFTER_'+msg]) {
this._cast(sender, 'AFTER_'+msg, params);
}
if (!/^(?:AFTER|BEFORE)_/.test(msg)) { // top level function
return vRet;
} else {
return $.isArray(vRet)?($.inArray(false, vRet)<0):((typeof vRet=='undefined')?true:!!vRet);
}
}
};
_plugin_base = {
oApp : null,
cast : function(msg, params) {
if (this.oApp && this.oApp._cast) {
return this.oApp._cast(this, msg, params || []);
}
},
broadcast : function(msg, params) {
if (this.oApp && this.oApp.broadcast) {
this.oApp.broadcast(this, mag, params || []);
}
}
/**
* Event handler prototype
*
* function (oSender, params)
*/
};
function getTypeBase() {
var _base = function() {
var self = this;
var pool = null;
if ($.isArray(this._plugins)) this._plugins = [];
if (this._messages) this._messages = {};
else this._binded_fn = {};
// bind functions
$.each(this, function(key, val){
if (!$.isFunction(val)) return true;
if (!/^API_([A-Z0-9_]+)$/.test(key)) return true;
var api = RegExp.$1;
var fn = function(sender, params){ return self[key](sender, params) };
if (self._messages) self._messages[api] = [fn];
else self._binded_fn[api] = fn;
});
if ($.isFunction(this.init)) this.init.apply(this, arguments);
};
return _base;
}
window.xe = $.extend(_app_base, _xe_base);
window.xe.lang = {}; // language repository
// domready event
$(function(){ xe.broadcast('ONREADY'); });
// load event
$(window).load(function(){ xe.broadcast('ONLOAD'); });
})(jQuery);
/**
* @file js_app.js
* @author NHN (developers@xpressengine.com)
* @brief XE JavaScript Application Framework (JAF)
* @namespace xe
* @update 20100701
*/
(function($){
var _xe_base, _app_base, _plugin_base;
var _apps = [];
_xe_base = {
/**
* @brief return the name of Core module
*/
getName : function() {
return 'Core';
},
/**
* @brief Create an application class
*/
createApp : function(sName, oDef) {
var _base = getTypeBase();
$.extend(_base.prototype, _app_base, oDef);
_base.prototype.getName = function() {
return sName;
};
return _base;
},
/**
* @brief Create a plugin class
*/
createPlugin : function(sName, oDef) {
var _base = getTypeBase();
$.extend(_base.prototype, _plugin_base, oDef);
_base.prototype.getName = function() {
return sName;
};
return _base;
},
/**
* @brief Get the array of applications
*/
getApps : function() {
return $.makeArray(_apps);
},
/**
* @brief Get one application
*/
getApp : function(indexOrName) {
indexOrName = (indexOrName||'').toLowerCase();
if(typeof _apps[indexOrName] != 'undefined') {
return _apps[indexOrName];
} else {
return null;
}
},
/**
* @brief Register an application instance
*/
registerApp : function(oApp) {
var sName = oApp.getName().toLowerCase();
_apps.push(oApp);
if (!$.isArray(_apps[sName])) {
_apps[sName] = [];
}
_apps[sName].push(oApp);
oApp.parent = this;
// register event
if ($.isFunction(oApp.activate)) oApp.activate();
},
/**
* @brief Unregister an application instance
*/
unregisterApp : function(oApp) {
var sName = oPlugin.getName().toLowerCase();
var nIndex = $.inArray(oApp, _apps);
if (nIndex >= 0) _apps.splice(nIndex, 1);
if ($.isArray(_apps[sName])) {
nIndex = $.inArray(oApp, _apps[sName]);
if (nIndex >= 0) _apps[sName].splice(nIndex, 1);
}
// unregister event
if ($.isFunction(oApp.deactivate)) oApp.deactivate();
},
/**
* @brief overrides broadcast method
*/
broadcast : function(msg, params) {
this._broadcast(this, msg, params);
},
_broadcast : function(sender, msg, params) {
for(var i=0; i < _apps.length; i++) {
_apps[i]._cast(sender, msg, params);
}
// cast to child plugins
this._cast(sender, msg, params);
}
}
_app_base = {
_plugins : [],
_messages : {},
/**
* @brief get plugin
*/
getPlugin : function(sPluginName) {
sPluginName = sPluginName.toLowerCase();
if ($.isArray(this._plugins[sPluginName])) {
return this._plugins[sPluginName];
} else {
return [];
}
},
/**
* @brief register a plugin instance
*/
registerPlugin : function(oPlugin) {
var self = this;
var sName = oPlugin.getName().toLowerCase();
// check if the plugin is already registered
if ($.inArray(oPlugin, this._plugins) >= 0) return false;
// push the plugin into the _plugins array
this._plugins.push(oPlugin);
if (!$.isArray(this._plugins[sName])) this._plugins[sName] = [];
this._plugins[sName].push(oPlugin);
// register method pool
$.each(oPlugin._binded_fn, function(api, fn){ self.registerHandler(api, fn); });
// binding
oPlugin.oApp = this;
// registered event
if ($.isFunction(oPlugin.activate)) oPlugin.activate();
return true;
},
/**
* @brief register api message handler
*/
registerHandler : function(api, func) {
var msgs = this._messages; api = api.toUpperCase();
if (!$.isArray(msgs[api])) msgs[api] = [];
msgs[api].push(func);
},
cast : function(msg, params) {
return this._cast(this, msg, params || []);
},
broadcast : function(sender, msg, params) {
if (this.parent && this.parent._broadcast) {
this.parent._broadcast(sender, msg, params);
}
},
_cast : function(sender, msg, params) {
var i, len;
var aMsg = this._messages;
msg = msg.toUpperCase();
// BEFORE hooker
if (aMsg['BEFORE_'+msg] || this['API_BEFORE_'+msg]) {
var bContinue = this._cast(sender, 'BEFORE_'+msg, params);
if (!bContinue) return;
}
// main api function
var vRet = [], sFn = 'API_'+msg;
if ($.isArray(aMsg[msg])) {
for(i=0; i < aMsg[msg].length; i++) {
vRet.push( aMsg[msg][i](sender, params) );
}
}
if (vRet.length < 2) vRet = vRet[0];
// AFTER hooker
if (aMsg['AFTER_'+msg] || this['API_AFTER_'+msg]) {
this._cast(sender, 'AFTER_'+msg, params);
}
if (!/^(?:AFTER|BEFORE)_/.test(msg)) { // top level function
return vRet;
} else {
return $.isArray(vRet)?($.inArray(false, vRet)<0):((typeof vRet=='undefined')?true:!!vRet);
}
}
};
_plugin_base = {
oApp : null,
cast : function(msg, params) {
if (this.oApp && this.oApp._cast) {
return this.oApp._cast(this, msg, params || []);
}
},
broadcast : function(msg, params) {
if (this.oApp && this.oApp.broadcast) {
this.oApp.broadcast(this, mag, params || []);
}
}
/**
* Event handler prototype
*
* function (oSender, params)
*/
};
function getTypeBase() {
var _base = function() {
var self = this;
var pool = null;
if ($.isArray(this._plugins)) this._plugins = [];
if (this._messages) this._messages = {};
else this._binded_fn = {};
// bind functions
$.each(this, function(key, val){
if (!$.isFunction(val)) return true;
if (!/^API_([A-Z0-9_]+)$/.test(key)) return true;
var api = RegExp.$1;
var fn = function(sender, params){ return self[key](sender, params) };
if (self._messages) self._messages[api] = [fn];
else self._binded_fn[api] = fn;
});
if ($.isFunction(this.init)) this.init.apply(this, arguments);
};
return _base;
}
window.xe = $.extend(_app_base, _xe_base);
window.xe.lang = {}; // language repository
// domready event
$(function(){ xe.broadcast('ONREADY'); });
// load event
$(window).load(function(){ xe.broadcast('ONLOAD'); });
})(jQuery);

View file

@ -1,409 +1,409 @@
/**
* @file common/js/xml_handler.js
* @brief XE에서 ajax기능을 이용함에 있어 module, act를 사용하기 위한 자바스크립트
**/
// xml handler을 이용하는 user function
var show_waiting_message = true;
/* This work is licensed under Creative Commons GNU LGPL License.
License: http://creativecommons.org/licenses/LGPL/2.1/
Version: 0.9
Author: Stefan Goessner/2006
Web: http://goessner.net/
*/
function xml2json(xml, tab, ignoreAttrib) {
var X = {
toObj: function(xml) {
var o = {};
if (xml.nodeType==1) { // element node ..
if (ignoreAttrib && xml.attributes.length) // element with attributes ..
for (var i=0; i<xml.attributes.length; i++)
o["@"+xml.attributes[i].nodeName] = (xml.attributes[i].nodeValue||"").toString();
if (xml.firstChild) { // element has child nodes ..
var textChild=0, cdataChild=0, hasElementChild=false;
for (var n=xml.firstChild; n; n=n.nextSibling) {
if (n.nodeType==1) hasElementChild = true;
else if (n.nodeType==3 && n.nodeValue.match(/[^ \f\n\r\t\v]/)) textChild++; // non-whitespace text
else if (n.nodeType==4) cdataChild++; // cdata section node
}
if (hasElementChild) {
if (textChild < 2 && cdataChild < 2) { // structured element with evtl. a single text or/and cdata node ..
X.removeWhite(xml);
for (var n=xml.firstChild; n; n=n.nextSibling) {
if (n.nodeType == 3) // text node
o = X.escape(n.nodeValue);
else if (n.nodeType == 4) // cdata node
// o["#cdata"] = X.escape(n.nodeValue);
o = X.escape(n.nodeValue);
else if (o[n.nodeName]) { // multiple occurence of element ..
if (o[n.nodeName] instanceof Array)
o[n.nodeName][o[n.nodeName].length] = X.toObj(n);
else
o[n.nodeName] = [o[n.nodeName], X.toObj(n)];
}
else // first occurence of element..
o[n.nodeName] = X.toObj(n);
}
}
else { // mixed content
if (!xml.attributes.length)
o = X.escape(X.innerXml(xml));
else
o["#text"] = X.escape(X.innerXml(xml));
}
}
else if (textChild) { // pure text
if (!xml.attributes.length)
o = X.escape(X.innerXml(xml));
else
o["#text"] = X.escape(X.innerXml(xml));
}
else if (cdataChild) { // cdata
if (cdataChild > 1)
o = X.escape(X.innerXml(xml));
else
for (var n=xml.firstChild; n; n=n.nextSibling){
//o["#cdata"] = X.escape(n.nodeValue);
o = X.escape(n.nodeValue);
}
}
}
if (!xml.attributes.length && !xml.firstChild) o = null;
}
else if (xml.nodeType==9) { // document.node
o = X.toObj(xml.documentElement);
}
else
alert("unhandled node type: " + xml.nodeType);
return o;
},
toJson: function(o, name, ind) {
var json = name ? ("\""+name+"\"") : "";
if (o instanceof Array) {
for (var i=0,n=o.length; i<n; i++)
o[i] = X.toJson(o[i], "", ind+"\t");
json += (name?":[":"[") + (o.length > 1 ? ("\n"+ind+"\t"+o.join(",\n"+ind+"\t")+"\n"+ind) : o.join("")) + "]";
}
else if (o == null)
json += (name&&":") + "null";
else if (typeof(o) == "object") {
var arr = [];
for (var m in o)
arr[arr.length] = X.toJson(o[m], m, ind+"\t");
json += (name?":{":"{") + (arr.length > 1 ? ("\n"+ind+"\t"+arr.join(",\n"+ind+"\t")+"\n"+ind) : arr.join("")) + "}";
}
else if (typeof(o) == "string")
json += (name&&":") + "\"" + o.toString() + "\"";
else
json += (name&&":") + o.toString();
return json;
},
innerXml: function(node) {
var s = ""
if ("innerHTML" in node)
s = node.innerHTML;
else {
var asXml = function(n) {
var s = "";
if (n.nodeType == 1) {
s += "<" + n.nodeName;
for (var i=0; i<n.attributes.length;i++)
s += " " + n.attributes[i].nodeName + "=\"" + (n.attributes[i].nodeValue||"").toString() + "\"";
if (n.firstChild) {
s += ">";
for (var c=n.firstChild; c; c=c.nextSibling)
s += asXml(c);
s += "</"+n.nodeName+">";
}
else
s += "/>";
}
else if (n.nodeType == 3)
s += n.nodeValue;
else if (n.nodeType == 4)
s += "<![CDATA[" + n.nodeValue + "]]>";
return s;
};
for (var c=node.firstChild; c; c=c.nextSibling)
s += asXml(c);
}
return s;
},
escape: function(txt) {
return txt.replace(/[\\]/g, "\\\\")
.replace(/[\"]/g, '\\"')
.replace(/[\n]/g, '\\n')
.replace(/[\r]/g, '\\r');
},
removeWhite: function(e) {
e.normalize();
for (var n = e.firstChild; n; ) {
if (n.nodeType == 3) { // text node
if (!n.nodeValue.match(/[^ \f\n\r\t\v]/)) { // pure whitespace text node
var nxt = n.nextSibling;
e.removeChild(n);
n = nxt;
}
else
n = n.nextSibling;
}
else if (n.nodeType == 1) { // element node
X.removeWhite(n);
n = n.nextSibling;
}
else // any other node
n = n.nextSibling;
}
return e;
}
};
if (xml.nodeType == 9) // document node
xml = xml.documentElement;
var json_obj = X.toObj(X.removeWhite(xml)), json_str;
if (typeof(JSON)=='object' && jQuery.isFunction(JSON.stringify) && false) {
var obj = {}; obj[xml.nodeName] = json_obj;
json_str = JSON.stringify(obj);
return json_str;
} else {
json_str = X.toJson(json_obj, xml.nodeName, "");
return "{" + (tab ? json_str.replace(/\t/g, tab) : json_str.replace(/\t|\n/g, "")) + "}";
}
}
(function($){
/**
* @brief exec_xml
* @author taggon <gonom9@gmail.com>
**/
$.exec_xml = window.exec_xml = function(module, act, params, callback_func, response_tags, callback_func_arg, fo_obj) {
var xml_path = request_uri+"index.php"
if(!params) params = {};
// {{{ set parameters
if($.isArray(params)) params = arr2obj(params);
params['module'] = module;
params['act'] = act;
if(typeof(xeVid)!='undefined') params['vid'] = xeVid;
if(typeof(response_tags)=="undefined" || response_tags.length<1) response_tags = ['error','message'];
else {
response_tags.push('error', 'message');
}
// }}} set parameters
// use ssl?
if ($.isArray(ssl_actions) && params['act'] && $.inArray(params['act'], ssl_actions) >= 0)
{
var url = default_url || request_uri;
var port = window.https_port || 443;
var _ul = $('<a>').attr('href', url)[0];
var target = 'https://' + _ul.hostname.replace(/:\d+$/, '');
if(port != 443) target += ':'+port;
if(_ul.pathname[0] != '/') target += '/';
target += _ul.pathname;
xml_path = target.replace(/\/$/, '')+'/index.php';
}
var _u1 = $('<a>').attr('href', location.href)[0];
var _u2 = $('<a>').attr('href', xml_path)[0];
// 현 url과 ajax call 대상 url의 schema 또는 port가 다르면 직접 form 전송
if(_u1.protocol != _u2.protocol || _u1.port != _u2.port) return send_by_form(xml_path, params);
var xml = [], i = 0;
xml[i++] = '<?xml version="1.0" encoding="utf-8" ?>';
xml[i++] = '<methodCall>';
xml[i++] = '<params>';
$.each(params, function(key, val) {
xml[i++] = '<'+key+'><![CDATA['+val+']]></'+key+'>';
});
xml[i++] = '</params>';
xml[i++] = '</methodCall>';
var _xhr = null;
if (_xhr && _xhr.readyState != 0) _xhr.abort();
// 전송 성공시
function onsuccess(data, textStatus, xhr) {
var resp_xml = $(data).find('response')[0], resp_obj, txt='', ret=[], tags={}, json_str='';
waiting_obj.css('visibility', 'hidden');
if(!resp_xml) {
alert(_xhr.responseText);
return null;
}
json_str = xml2json(resp_xml, false, false);
resp_obj = (typeof(JSON)=='object' && $.isFunction(JSON.parse))?JSON.parse(json_str):eval('('+json_str+')');
resp_obj = resp_obj.response;
if (typeof(resp_obj)=='undefined') {
ret['error'] = -1;
ret['message'] = 'Unexpected error occured.';
try {
if(typeof(txt=resp_xml.childNodes[0].firstChild.data)!='undefined') ret['message'] += '\r\n'+txt;
} catch(e){};
return ret;
}
$.each(response_tags, function(key, val){ tags[val] = true; });
tags["redirect_url"] = true;
tags["act"] = true;
$.each(resp_obj, function(key, val){ if(tags[key]) ret[key] = val; });
if(ret['error'] != 0) {
if ($.isFunction($.exec_xml.onerror)) {
return $.exec_xml.onerror(module, act, ret, callback_func, response_tags, callback_func_arg, fo_obj);
}
alert(ret['message'] || 'error!');
return null;
}
if(ret['redirect_url']) {
location.href = ret['redirect_url'].replace(/&amp;/g, '&');
return null;
}
if($.isFunction(callback_func)) callback_func(ret, response_tags, callback_func_arg, fo_obj);
}
// 모든 xml데이터는 POST방식으로 전송. try-catch문으로 오류 발생시 대처
try {
$.ajax({
url : xml_path,
type : 'POST',
dataType : 'xml',
data : xml.join('\n'),
contentType : 'text/plain',
beforeSend : function(xhr){ _xhr = xhr; },
success : onsuccess,
error : function(xhr, textStatus) {
waiting_obj.css('visibility', 'hidden');
var msg = '';
if (textStatus == 'parsererror') {
msg = 'The result is not valid XML :\n-------------------------------------\n';
if(xhr.responseText == "") return;
msg += xhr.responseText.replace(/<[^>]+>/g, '');
} else {
msg = textStatus;
}
alert(msg);
}
});
} catch(e) {
alert(e);
return;
}
// ajax 통신중 대기 메세지 출력 (show_waiting_message값을 false로 세팅시 보이지 않음)
var waiting_obj = $('#waitingforserverresponse');
if(show_waiting_message && waiting_obj.length) {
var d = $(document);
waiting_obj.html(waiting_message).css({
'top' : (d.scrollTop()+20)+'px',
'left' : (d.scrollLeft()+20)+'px',
'visibility' : 'visible'
});
}
}
function send_by_form(url, params) {
var frame_id = 'xeTmpIframe';
var form_id = 'xeVirtualForm';
if (!$('#'+frame_id).length) {
$('<iframe name="%id%" id="%id%" style="position:absolute;left:-1px;top:1px;width:1px;height:1px"></iframe>'.replace(/%id%/g, frame_id)).appendTo(document.body);
}
$('#'+form_id).remove();
var form = $('<form id="%id%"></form>'.replace(/%id%/g, form_id)).attr({
'id' : form_id,
'method' : 'post',
'action' : url,
'target' : frame_id
});
params['xeVirtualRequestMethod'] = 'xml';
params['xeRequestURI'] = location.href.replace(/#(.*)$/i,'');
params['xeVirtualRequestUrl'] = request_uri;
$.each(params, function(key, value){
$('<input type="hidden">').attr('name', key).attr('value', value).appendTo(form);
});
form.appendTo(document.body).submit();
}
function arr2obj(arr) {
var ret = {};
for(var key in arr) {
if(arr.hasOwnProperty(key)) ret[key] = arr[key];
}
return ret;
}
/**
* @brief exec_json (exec_xml와 같은 용도)
**/
$.exec_json = function(action,data,func){
if(typeof(data) == 'undefined') data = {};
action = action.split(".");
if(action.length == 2){
if(show_waiting_message) {
$("#waitingforserverresponse").html(waiting_message).css('top',$(document).scrollTop()+20).css('left',$(document).scrollLeft()+20).css('visibility','visible');
}
$.extend(data,{module:action[0],act:action[1]});
if(typeof(xeVid)!='undefined') $.extend(data,{vid:xeVid});
$.ajax({
type:"POST"
,dataType:"json"
,url:request_uri
,contentType:"application/json"
,data:$.param(data)
,success : function(data){
$("#waitingforserverresponse").css('visibility','hidden');
if(data.error > 0) alert(data.message);
if($.isFunction(func)) func(data);
}
});
}
};
$.fn.exec_html = function(action,data,type,func,args){
if(typeof(data) == 'undefined') data = {};
if(!$.inArray(type, ['html','append','prepend'])) type = 'html';
var self = $(this);
action = action.split(".");
if(action.length == 2){
if(show_waiting_message) {
$("#waitingforserverresponse").html(waiting_message).css('top',$(document).scrollTop()+20).css('left',$(document).scrollLeft()+20).css('visibility','visible');
}
$.extend(data,{module:action[0],act:action[1]});
$.ajax({
type:"POST"
,dataType:"html"
,url:request_uri
,data:$.param(data)
,success : function(html){
$("#waitingforserverresponse").css('visibility','hidden');
self[type](html);
if($.isFunction(func)) func(args);
}
});
}
};
})(jQuery);
/**
* @file common/js/xml_handler.js
* @brief XE에서 ajax기능을 이용함에 있어 module, act를 사용하기 위한 자바스크립트
**/
// xml handler을 이용하는 user function
var show_waiting_message = true;
/* This work is licensed under Creative Commons GNU LGPL License.
License: http://creativecommons.org/licenses/LGPL/2.1/
Version: 0.9
Author: Stefan Goessner/2006
Web: http://goessner.net/
*/
function xml2json(xml, tab, ignoreAttrib) {
var X = {
toObj: function(xml) {
var o = {};
if (xml.nodeType==1) { // element node ..
if (ignoreAttrib && xml.attributes.length) // element with attributes ..
for (var i=0; i<xml.attributes.length; i++)
o["@"+xml.attributes[i].nodeName] = (xml.attributes[i].nodeValue||"").toString();
if (xml.firstChild) { // element has child nodes ..
var textChild=0, cdataChild=0, hasElementChild=false;
for (var n=xml.firstChild; n; n=n.nextSibling) {
if (n.nodeType==1) hasElementChild = true;
else if (n.nodeType==3 && n.nodeValue.match(/[^ \f\n\r\t\v]/)) textChild++; // non-whitespace text
else if (n.nodeType==4) cdataChild++; // cdata section node
}
if (hasElementChild) {
if (textChild < 2 && cdataChild < 2) { // structured element with evtl. a single text or/and cdata node ..
X.removeWhite(xml);
for (var n=xml.firstChild; n; n=n.nextSibling) {
if (n.nodeType == 3) // text node
o = X.escape(n.nodeValue);
else if (n.nodeType == 4) // cdata node
// o["#cdata"] = X.escape(n.nodeValue);
o = X.escape(n.nodeValue);
else if (o[n.nodeName]) { // multiple occurence of element ..
if (o[n.nodeName] instanceof Array)
o[n.nodeName][o[n.nodeName].length] = X.toObj(n);
else
o[n.nodeName] = [o[n.nodeName], X.toObj(n)];
}
else // first occurence of element..
o[n.nodeName] = X.toObj(n);
}
}
else { // mixed content
if (!xml.attributes.length)
o = X.escape(X.innerXml(xml));
else
o["#text"] = X.escape(X.innerXml(xml));
}
}
else if (textChild) { // pure text
if (!xml.attributes.length)
o = X.escape(X.innerXml(xml));
else
o["#text"] = X.escape(X.innerXml(xml));
}
else if (cdataChild) { // cdata
if (cdataChild > 1)
o = X.escape(X.innerXml(xml));
else
for (var n=xml.firstChild; n; n=n.nextSibling){
//o["#cdata"] = X.escape(n.nodeValue);
o = X.escape(n.nodeValue);
}
}
}
if (!xml.attributes.length && !xml.firstChild) o = null;
}
else if (xml.nodeType==9) { // document.node
o = X.toObj(xml.documentElement);
}
else
alert("unhandled node type: " + xml.nodeType);
return o;
},
toJson: function(o, name, ind) {
var json = name ? ("\""+name+"\"") : "";
if (o instanceof Array) {
for (var i=0,n=o.length; i<n; i++)
o[i] = X.toJson(o[i], "", ind+"\t");
json += (name?":[":"[") + (o.length > 1 ? ("\n"+ind+"\t"+o.join(",\n"+ind+"\t")+"\n"+ind) : o.join("")) + "]";
}
else if (o == null)
json += (name&&":") + "null";
else if (typeof(o) == "object") {
var arr = [];
for (var m in o)
arr[arr.length] = X.toJson(o[m], m, ind+"\t");
json += (name?":{":"{") + (arr.length > 1 ? ("\n"+ind+"\t"+arr.join(",\n"+ind+"\t")+"\n"+ind) : arr.join("")) + "}";
}
else if (typeof(o) == "string")
json += (name&&":") + "\"" + o.toString() + "\"";
else
json += (name&&":") + o.toString();
return json;
},
innerXml: function(node) {
var s = ""
if ("innerHTML" in node)
s = node.innerHTML;
else {
var asXml = function(n) {
var s = "";
if (n.nodeType == 1) {
s += "<" + n.nodeName;
for (var i=0; i<n.attributes.length;i++)
s += " " + n.attributes[i].nodeName + "=\"" + (n.attributes[i].nodeValue||"").toString() + "\"";
if (n.firstChild) {
s += ">";
for (var c=n.firstChild; c; c=c.nextSibling)
s += asXml(c);
s += "</"+n.nodeName+">";
}
else
s += "/>";
}
else if (n.nodeType == 3)
s += n.nodeValue;
else if (n.nodeType == 4)
s += "<![CDATA[" + n.nodeValue + "]]>";
return s;
};
for (var c=node.firstChild; c; c=c.nextSibling)
s += asXml(c);
}
return s;
},
escape: function(txt) {
return txt.replace(/[\\]/g, "\\\\")
.replace(/[\"]/g, '\\"')
.replace(/[\n]/g, '\\n')
.replace(/[\r]/g, '\\r');
},
removeWhite: function(e) {
e.normalize();
for (var n = e.firstChild; n; ) {
if (n.nodeType == 3) { // text node
if (!n.nodeValue.match(/[^ \f\n\r\t\v]/)) { // pure whitespace text node
var nxt = n.nextSibling;
e.removeChild(n);
n = nxt;
}
else
n = n.nextSibling;
}
else if (n.nodeType == 1) { // element node
X.removeWhite(n);
n = n.nextSibling;
}
else // any other node
n = n.nextSibling;
}
return e;
}
};
if (xml.nodeType == 9) // document node
xml = xml.documentElement;
var json_obj = X.toObj(X.removeWhite(xml)), json_str;
if (typeof(JSON)=='object' && jQuery.isFunction(JSON.stringify) && false) {
var obj = {}; obj[xml.nodeName] = json_obj;
json_str = JSON.stringify(obj);
return json_str;
} else {
json_str = X.toJson(json_obj, xml.nodeName, "");
return "{" + (tab ? json_str.replace(/\t/g, tab) : json_str.replace(/\t|\n/g, "")) + "}";
}
}
(function($){
/**
* @brief exec_xml
* @author NHN (developers@xpressengine.com)
**/
$.exec_xml = window.exec_xml = function(module, act, params, callback_func, response_tags, callback_func_arg, fo_obj) {
var xml_path = request_uri+"index.php"
if(!params) params = {};
// {{{ set parameters
if($.isArray(params)) params = arr2obj(params);
params['module'] = module;
params['act'] = act;
if(typeof(xeVid)!='undefined') params['vid'] = xeVid;
if(typeof(response_tags)=="undefined" || response_tags.length<1) response_tags = ['error','message'];
else {
response_tags.push('error', 'message');
}
// }}} set parameters
// use ssl?
if ($.isArray(ssl_actions) && params['act'] && $.inArray(params['act'], ssl_actions) >= 0)
{
var url = default_url || request_uri;
var port = window.https_port || 443;
var _ul = $('<a>').attr('href', url)[0];
var target = 'https://' + _ul.hostname.replace(/:\d+$/, '');
if(port != 443) target += ':'+port;
if(_ul.pathname[0] != '/') target += '/';
target += _ul.pathname;
xml_path = target.replace(/\/$/, '')+'/index.php';
}
var _u1 = $('<a>').attr('href', location.href)[0];
var _u2 = $('<a>').attr('href', xml_path)[0];
// 현 url과 ajax call 대상 url의 schema 또는 port가 다르면 직접 form 전송
if(_u1.protocol != _u2.protocol || _u1.port != _u2.port) return send_by_form(xml_path, params);
var xml = [], i = 0;
xml[i++] = '<?xml version="1.0" encoding="utf-8" ?>';
xml[i++] = '<methodCall>';
xml[i++] = '<params>';
$.each(params, function(key, val) {
xml[i++] = '<'+key+'><![CDATA['+val+']]></'+key+'>';
});
xml[i++] = '</params>';
xml[i++] = '</methodCall>';
var _xhr = null;
if (_xhr && _xhr.readyState != 0) _xhr.abort();
// 전송 성공시
function onsuccess(data, textStatus, xhr) {
var resp_xml = $(data).find('response')[0], resp_obj, txt='', ret=[], tags={}, json_str='';
waiting_obj.css('visibility', 'hidden');
if(!resp_xml) {
alert(_xhr.responseText);
return null;
}
json_str = xml2json(resp_xml, false, false);
resp_obj = (typeof(JSON)=='object' && $.isFunction(JSON.parse))?JSON.parse(json_str):eval('('+json_str+')');
resp_obj = resp_obj.response;
if (typeof(resp_obj)=='undefined') {
ret['error'] = -1;
ret['message'] = 'Unexpected error occured.';
try {
if(typeof(txt=resp_xml.childNodes[0].firstChild.data)!='undefined') ret['message'] += '\r\n'+txt;
} catch(e){};
return ret;
}
$.each(response_tags, function(key, val){ tags[val] = true; });
tags["redirect_url"] = true;
tags["act"] = true;
$.each(resp_obj, function(key, val){ if(tags[key]) ret[key] = val; });
if(ret['error'] != 0) {
if ($.isFunction($.exec_xml.onerror)) {
return $.exec_xml.onerror(module, act, ret, callback_func, response_tags, callback_func_arg, fo_obj);
}
alert(ret['message'] || 'error!');
return null;
}
if(ret['redirect_url']) {
location.href = ret['redirect_url'].replace(/&amp;/g, '&');
return null;
}
if($.isFunction(callback_func)) callback_func(ret, response_tags, callback_func_arg, fo_obj);
}
// 모든 xml데이터는 POST방식으로 전송. try-catch문으로 오류 발생시 대처
try {
$.ajax({
url : xml_path,
type : 'POST',
dataType : 'xml',
data : xml.join('\n'),
contentType : 'text/plain',
beforeSend : function(xhr){ _xhr = xhr; },
success : onsuccess,
error : function(xhr, textStatus) {
waiting_obj.css('visibility', 'hidden');
var msg = '';
if (textStatus == 'parsererror') {
msg = 'The result is not valid XML :\n-------------------------------------\n';
if(xhr.responseText == "") return;
msg += xhr.responseText.replace(/<[^>]+>/g, '');
} else {
msg = textStatus;
}
alert(msg);
}
});
} catch(e) {
alert(e);
return;
}
// ajax 통신중 대기 메세지 출력 (show_waiting_message값을 false로 세팅시 보이지 않음)
var waiting_obj = $('#waitingforserverresponse');
if(show_waiting_message && waiting_obj.length) {
var d = $(document);
waiting_obj.html(waiting_message).css({
'top' : (d.scrollTop()+20)+'px',
'left' : (d.scrollLeft()+20)+'px',
'visibility' : 'visible'
});
}
}
function send_by_form(url, params) {
var frame_id = 'xeTmpIframe';
var form_id = 'xeVirtualForm';
if (!$('#'+frame_id).length) {
$('<iframe name="%id%" id="%id%" style="position:absolute;left:-1px;top:1px;width:1px;height:1px"></iframe>'.replace(/%id%/g, frame_id)).appendTo(document.body);
}
$('#'+form_id).remove();
var form = $('<form id="%id%"></form>'.replace(/%id%/g, form_id)).attr({
'id' : form_id,
'method' : 'post',
'action' : url,
'target' : frame_id
});
params['xeVirtualRequestMethod'] = 'xml';
params['xeRequestURI'] = location.href.replace(/#(.*)$/i,'');
params['xeVirtualRequestUrl'] = request_uri;
$.each(params, function(key, value){
$('<input type="hidden">').attr('name', key).attr('value', value).appendTo(form);
});
form.appendTo(document.body).submit();
}
function arr2obj(arr) {
var ret = {};
for(var key in arr) {
if(arr.hasOwnProperty(key)) ret[key] = arr[key];
}
return ret;
}
/**
* @brief exec_json (exec_xml와 같은 용도)
**/
$.exec_json = function(action,data,func){
if(typeof(data) == 'undefined') data = {};
action = action.split(".");
if(action.length == 2){
if(show_waiting_message) {
$("#waitingforserverresponse").html(waiting_message).css('top',$(document).scrollTop()+20).css('left',$(document).scrollLeft()+20).css('visibility','visible');
}
$.extend(data,{module:action[0],act:action[1]});
if(typeof(xeVid)!='undefined') $.extend(data,{vid:xeVid});
$.ajax({
type:"POST"
,dataType:"json"
,url:request_uri
,contentType:"application/json"
,data:$.param(data)
,success : function(data){
$("#waitingforserverresponse").css('visibility','hidden');
if(data.error > 0) alert(data.message);
if($.isFunction(func)) func(data);
}
});
}
};
$.fn.exec_html = function(action,data,type,func,args){
if(typeof(data) == 'undefined') data = {};
if(!$.inArray(type, ['html','append','prepend'])) type = 'html';
var self = $(this);
action = action.split(".");
if(action.length == 2){
if(show_waiting_message) {
$("#waitingforserverresponse").html(waiting_message).css('top',$(document).scrollTop()+20).css('left',$(document).scrollLeft()+20).css('visibility','visible');
}
$.extend(data,{module:action[0],act:action[1]});
$.ajax({
type:"POST"
,dataType:"html"
,url:request_uri
,data:$.param(data)
,success : function(html){
$("#waitingforserverresponse").css('visibility','hidden');
self[type](html);
if($.isFunction(func)) func(args);
}
});
}
};
})(jQuery);

View file

@ -1,301 +1,301 @@
/**
* @file common/js/xml_js_filter.js
* @author taggon (taggon@gmail.com)
* @brief xml filter (validator) plugin
*
* A rule is a method validate one field.
* A filter is made up of one or more rules.
**/
(function($){
var messages = [];
var rules = [];
var filters = [];
var callbacks = [];
var extras = {};
var Validator = xe.createApp('Validator', {
init : function() {
// {{{ add filters
// email
var regEmail = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)*$/;
this.cast('ADD_RULE', ['email', regEmail]);
this.cast('ADD_RULE', ['email_address', regEmail]);
// userid
var regUserid = /^[a-z]+[\w-]*[a-z0-9_]+$/i;
this.cast('ADD_RULE', ['userid', regUserid]);
this.cast('ADD_RULE', ['user_id', regUserid]);
// url
var regUrl = /^(https?|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-\/\~]+)+(:[0-9]{2,4})*$/;
this.cast('ADD_RULE', ['url', regUrl]);
this.cast('ADD_RULE', ['homepage', regUrl]);
// korean
var regKor = /^[가-힣]*$/;
this.cast('ADD_RULE', ['korean', regKor]);
// korean_number
var regKorNum = /^[가-힣0-9]*$/;
this.cast('ADD_RULE', ['korean_number', regKorNum]);
// alpha
var regAlpha = /^[a-z]*$/i;
this.cast('ADD_RULE', ['alpha', regAlpha]);
// alpha_number
var regAlphaNum = /^[a-z][a-z0-9_]*$/i;
this.cast('ADD_RULE', ['alpha_number', regAlphaNum]);
// number
var regNum = /^[0-9]*$/;
this.cast('ADD_RULE', ['number', regNum]);
// }}} add filters
},
// run validator
run : function(oForm) {
var filter = '';
if (oForm._filter) filter = oForm._filter.value;
var params = [oForm, filter];
var result = this.cast('VALIDATE', params);
if (typeof result == 'undefined') result = false;
return result;
},
API_ONREADY : function() {
var self = this;
// hook form submit event
$('form')
.each(function(){
if (this.onsubmit) {
this['xe:onsubmit'] = this.onsubmit;
this.onsubmit = null;
}
})
.submit(function(){
var legacyFn = this['xe:onsubmit'];
var hasLegacyFn = $.isFunction(legacyFn);
var bResult = hasLegacyFn?legacyFn.apply(this):self.run(this);
return bResult;
});
},
API_VALIDATE : function(sender, params) {
var self = this, result = true, form = params[0], filter=null, callback=null;
if (form.elements['_filter']) filter = form.elements['_filter'].value;
if (!filter) return true;
if ($.isFunction(callbacks[filter])) callback = callbacks[filter];
filter = $.extend({}, filters[filter.toLowerCase()] || {}, extras);
$.each(filter, function(name) {
var _el = form.elements[name];
if (!_el) return true;
var el = $(_el), val = $.trim(get_value(el));
var minlen = parseInt(this.minlength) || 0;
var maxlen = parseInt(this.maxlength) || 0;
var rule = (this.rule || '').split(',');
if (this.required && !val) return (result = (!!self.cast('ALERT', [form, name, 'isnull']) && false));
if (!this.required && !val) return (result = true);
if ((minlen && val.length < minlen) || (maxlen && val.length > maxlen)) return (result = (!!self.cast('ALERT', [form, name, 'outofrange', minlen, maxlen]) && false));
if (this.equalto) {
var eq_val = get_value($(form.elements[this.equalto]));
if (eq_val != val) return (result = (!!self.cast('ALERT', [form, name, 'equalto']) && false));
}
$.each(rule, function() {
var ret = self.cast('APPLY_RULE', [this, val]);
if (!ret) {
self.cast('ALERT', [form, name, 'invalid_'+this]);
return (result = false);
}
});
if (!result) return false;
});
if (!result) return false;
if ($.isFunction(callback)) return callback(form);
return true;
},
API_ADD_RULE : function(sender, params) {
var name = params[0].toLowerCase();
rules[name] = params[1];
},
API_DEL_RULE : function(sender, params) {
var name = params[0].toLowerCase();
delete rules[name];
},
API_GET_RULE : function(sender, params) {
var name = params[0].toLowerCase();
if (rules[name]) {
return rules[name];
} else {
return null;
}
},
API_ADD_FILTER : function(sender, params) {
var name = params[0].toLowerCase();
var filter = params[1];
filters[name] = filter;
},
API_DEL_FILTER : function(sender, params) {
var name = params[0].toLowerCase();
delete filters[name];
},
API_GET_FILTER : function(sender, params) {
var name = params[0].toLowerCase();
if (filters[name]) {
return filters[name];
} else {
return null;
}
},
API_ADD_EXTRA_FIELD : function(sender, params) {
var name = params[0].toLowerCase();
var prop = params[1];
extras[name] = prop;
},
API_GET_EXTRA_FIELD : function(sender, params) {
var name = params[0].toLowerCase();
return extras[name];
},
API_DEL_EXTRA_FIELD : function(sender, params) {
var name = params[0].toLowerCase();
delete extras[name];
},
API_APPLY_RULE : function(sender, params) {
var name = params[0].toLowerCase();
var value = params[1];
if (typeof(rules[name]) == 'undefined') return true; // no filter
if ($.isFunction(rules[name])) return rules[name](value);
if (rules[name] instanceof RegExp) return rules[name].test(value);
return true;
},
API_ALERT : function(sender, params) {
var form = params[0];
var field_name = params[1];
var msg_code = params[2];
var minlen = params[3];
var maxlen = params[4];
var field_msg = this.cast('GET_MESSAGE', [field_name]);
var msg = this.cast('GET_MESSAGE', [msg_code]);
if (msg != msg_code) msg = (msg.indexOf('%s')<0)?(field_msg+msg):(msg.replace('%s',field_msg));
if (minlen||maxlen) msg += '('+(minlen||'')+'~'+(maxlen||'')+')';
this.cast('SHOW_ALERT', [msg]);
// set focus
$(form.elements[field_name]).focus();
},
API_SHOW_ALERT : function(sender, params) {
alert(params[0]);
},
API_ADD_MESSAGE : function(sender, params) {
var msg_code = params[0];
var msg_str = params[1];
messages[msg_code] = msg_str;
},
API_GET_MESSAGE : function(sender, params) {
var msg_code = params[0];
return messages[msg_code] || msg_code;
},
API_ADD_CALLBACK : function(sender, params) {
var name = params[0];
var func = params[1];
callbacks[name] = func;
},
API_REMOVE_CALLBACK : function(sender, params) {
var name = params[0];
delete callbacks[name];
}
});
var oValidator = new Validator;
// register validator
xe.registerApp(oValidator);
// 호환성을 위해 추가한 플러그인 - 에디터에서 컨텐트를 가져와서 설정한다.
var EditorStub = xe.createPlugin('editor_stub', {
API_BEFORE_VALIDATE : function(sender, params) {
var form = params[0];
var seq = form.getAttribute('editor_sequence');
if (seq) {
try {
editorRelKeys[seq].content.value = editorRelKeys[seq].func(seq) || '';
} catch(e) { }
}
}
});
oValidator.registerPlugin(new EditorStub);
// functions
function get_value(elem) {
var vals = [];
if (elem.is(':radio')){
return elem.filter(':checked').val();
} else if (elem.is(':checkbox')) {
elem.filter(':checked').each(function(){
vals.push(this.value);
});
return vals.join('|@|');
} else {
return elem.val();
}
}
})(jQuery);
/**
* @function filterAlertMessage
* @brief ajax로 서버에 요청후 결과를 처리할 callback_function을 지정하지 않았을 호출되는 기본 함수
**/
function filterAlertMessage(ret_obj) {
var error = ret_obj["error"];
var message = ret_obj["message"];
var act = ret_obj["act"];
var redirect_url = ret_obj["redirect_url"];
var url = location.href;
if(typeof(message)!="undefined"&&message&&message!="success") alert(message);
if(typeof(act)!="undefined" && act) url = current_url.setQuery("act", act);
else if(typeof(redirect_url)!="undefined" && redirect_url) url = redirect_url;
if(url == location.href) url = url.replace(/#(.*)$/,'');
location.href = url;
}
/**
* @brief Function to process filters
* @deprecated
*/
function procFilter(fo_obj, filter_func)
{
filter_func(fo_obj);
return false;
}
/**
* @file common/js/xml_js_filter.js
* @author NHN (developers@xpressengine.com)
* @brief xml filter (validator) plugin
*
* A rule is a method validate one field.
* A filter is made up of one or more rules.
**/
(function($){
var messages = [];
var rules = [];
var filters = [];
var callbacks = [];
var extras = {};
var Validator = xe.createApp('Validator', {
init : function() {
// {{{ add filters
// email
var regEmail = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)*$/;
this.cast('ADD_RULE', ['email', regEmail]);
this.cast('ADD_RULE', ['email_address', regEmail]);
// userid
var regUserid = /^[a-z]+[\w-]*[a-z0-9_]+$/i;
this.cast('ADD_RULE', ['userid', regUserid]);
this.cast('ADD_RULE', ['user_id', regUserid]);
// url
var regUrl = /^(https?|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-\/\~]+)+(:[0-9]{2,4})*$/;
this.cast('ADD_RULE', ['url', regUrl]);
this.cast('ADD_RULE', ['homepage', regUrl]);
// korean
var regKor = /^[가-힣]*$/;
this.cast('ADD_RULE', ['korean', regKor]);
// korean_number
var regKorNum = /^[가-힣0-9]*$/;
this.cast('ADD_RULE', ['korean_number', regKorNum]);
// alpha
var regAlpha = /^[a-z]*$/i;
this.cast('ADD_RULE', ['alpha', regAlpha]);
// alpha_number
var regAlphaNum = /^[a-z][a-z0-9_]*$/i;
this.cast('ADD_RULE', ['alpha_number', regAlphaNum]);
// number
var regNum = /^[0-9]*$/;
this.cast('ADD_RULE', ['number', regNum]);
// }}} add filters
},
// run validator
run : function(oForm) {
var filter = '';
if (oForm._filter) filter = oForm._filter.value;
var params = [oForm, filter];
var result = this.cast('VALIDATE', params);
if (typeof result == 'undefined') result = false;
return result;
},
API_ONREADY : function() {
var self = this;
// hook form submit event
$('form')
.each(function(){
if (this.onsubmit) {
this['xe:onsubmit'] = this.onsubmit;
this.onsubmit = null;
}
})
.submit(function(){
var legacyFn = this['xe:onsubmit'];
var hasLegacyFn = $.isFunction(legacyFn);
var bResult = hasLegacyFn?legacyFn.apply(this):self.run(this);
return bResult;
});
},
API_VALIDATE : function(sender, params) {
var self = this, result = true, form = params[0], filter=null, callback=null;
if (form.elements['_filter']) filter = form.elements['_filter'].value;
if (!filter) return true;
if ($.isFunction(callbacks[filter])) callback = callbacks[filter];
filter = $.extend({}, filters[filter.toLowerCase()] || {}, extras);
$.each(filter, function(name) {
var _el = form.elements[name];
if (!_el) return true;
var el = $(_el), val = $.trim(get_value(el));
var minlen = parseInt(this.minlength) || 0;
var maxlen = parseInt(this.maxlength) || 0;
var rule = (this.rule || '').split(',');
if (this.required && !val) return (result = (!!self.cast('ALERT', [form, name, 'isnull']) && false));
if (!this.required && !val) return (result = true);
if ((minlen && val.length < minlen) || (maxlen && val.length > maxlen)) return (result = (!!self.cast('ALERT', [form, name, 'outofrange', minlen, maxlen]) && false));
if (this.equalto) {
var eq_val = get_value($(form.elements[this.equalto]));
if (eq_val != val) return (result = (!!self.cast('ALERT', [form, name, 'equalto']) && false));
}
$.each(rule, function() {
var ret = self.cast('APPLY_RULE', [this, val]);
if (!ret) {
self.cast('ALERT', [form, name, 'invalid_'+this]);
return (result = false);
}
});
if (!result) return false;
});
if (!result) return false;
if ($.isFunction(callback)) return callback(form);
return true;
},
API_ADD_RULE : function(sender, params) {
var name = params[0].toLowerCase();
rules[name] = params[1];
},
API_DEL_RULE : function(sender, params) {
var name = params[0].toLowerCase();
delete rules[name];
},
API_GET_RULE : function(sender, params) {
var name = params[0].toLowerCase();
if (rules[name]) {
return rules[name];
} else {
return null;
}
},
API_ADD_FILTER : function(sender, params) {
var name = params[0].toLowerCase();
var filter = params[1];
filters[name] = filter;
},
API_DEL_FILTER : function(sender, params) {
var name = params[0].toLowerCase();
delete filters[name];
},
API_GET_FILTER : function(sender, params) {
var name = params[0].toLowerCase();
if (filters[name]) {
return filters[name];
} else {
return null;
}
},
API_ADD_EXTRA_FIELD : function(sender, params) {
var name = params[0].toLowerCase();
var prop = params[1];
extras[name] = prop;
},
API_GET_EXTRA_FIELD : function(sender, params) {
var name = params[0].toLowerCase();
return extras[name];
},
API_DEL_EXTRA_FIELD : function(sender, params) {
var name = params[0].toLowerCase();
delete extras[name];
},
API_APPLY_RULE : function(sender, params) {
var name = params[0].toLowerCase();
var value = params[1];
if (typeof(rules[name]) == 'undefined') return true; // no filter
if ($.isFunction(rules[name])) return rules[name](value);
if (rules[name] instanceof RegExp) return rules[name].test(value);
return true;
},
API_ALERT : function(sender, params) {
var form = params[0];
var field_name = params[1];
var msg_code = params[2];
var minlen = params[3];
var maxlen = params[4];
var field_msg = this.cast('GET_MESSAGE', [field_name]);
var msg = this.cast('GET_MESSAGE', [msg_code]);
if (msg != msg_code) msg = (msg.indexOf('%s')<0)?(field_msg+msg):(msg.replace('%s',field_msg));
if (minlen||maxlen) msg += '('+(minlen||'')+'~'+(maxlen||'')+')';
this.cast('SHOW_ALERT', [msg]);
// set focus
$(form.elements[field_name]).focus();
},
API_SHOW_ALERT : function(sender, params) {
alert(params[0]);
},
API_ADD_MESSAGE : function(sender, params) {
var msg_code = params[0];
var msg_str = params[1];
messages[msg_code] = msg_str;
},
API_GET_MESSAGE : function(sender, params) {
var msg_code = params[0];
return messages[msg_code] || msg_code;
},
API_ADD_CALLBACK : function(sender, params) {
var name = params[0];
var func = params[1];
callbacks[name] = func;
},
API_REMOVE_CALLBACK : function(sender, params) {
var name = params[0];
delete callbacks[name];
}
});
var oValidator = new Validator;
// register validator
xe.registerApp(oValidator);
// 호환성을 위해 추가한 플러그인 - 에디터에서 컨텐트를 가져와서 설정한다.
var EditorStub = xe.createPlugin('editor_stub', {
API_BEFORE_VALIDATE : function(sender, params) {
var form = params[0];
var seq = form.getAttribute('editor_sequence');
if (seq) {
try {
editorRelKeys[seq].content.value = editorRelKeys[seq].func(seq) || '';
} catch(e) { }
}
}
});
oValidator.registerPlugin(new EditorStub);
// functions
function get_value(elem) {
var vals = [];
if (elem.is(':radio')){
return elem.filter(':checked').val();
} else if (elem.is(':checkbox')) {
elem.filter(':checked').each(function(){
vals.push(this.value);
});
return vals.join('|@|');
} else {
return elem.val();
}
}
})(jQuery);
/**
* @function filterAlertMessage
* @brief ajax로 서버에 요청후 결과를 처리할 callback_function을 지정하지 않았을 호출되는 기본 함수
**/
function filterAlertMessage(ret_obj) {
var error = ret_obj["error"];
var message = ret_obj["message"];
var act = ret_obj["act"];
var redirect_url = ret_obj["redirect_url"];
var url = location.href;
if(typeof(message)!="undefined"&&message&&message!="success") alert(message);
if(typeof(act)!="undefined" && act) url = current_url.setQuery("act", act);
else if(typeof(redirect_url)!="undefined" && redirect_url) url = redirect_url;
if(url == location.href) url = url.replace(/#(.*)$/,'');
location.href = url;
}
/**
* @brief Function to process filters
* @deprecated
*/
function procFilter(fo_obj, filter_func)
{
filter_func(fo_obj);
return false;
}

View file

@ -1,74 +1,74 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<title>JSSpec results</title>
<link rel="stylesheet" type="text/css" href="css/JSSpec.css" />
<script type="text/javascript" src="JSSpec/JSSpec.js"></script>
<script type="text/javascript" src="JSSpec/diff_match_patch.js"></script>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="../common.js"></script>
<script type="text/javascript">// <![CDATA[
describe('SetQuery', {
'should satisfy basic uri condition' : function() {
target = "http://www.zeroboard.com/";
value_of(target.setQuery("q","r")).should_be("http://www.zeroboard.com/?q=r");
},
'should work when ssl is on' : function() {
target = "http://www.zeroboard.com/";
ssl_actions = new Array("dispLogin");
value_of(target.setQuery("act","dispLogin")).should_be("https://www.zeroboard.com/?act=dispLogin");
},
'should work when ssl is on and https_port is set (not 443)' : function() {
target = "http://www.zeroboard.com/";
https_port = 445;
ssl_actions = new Array("dispLogin");
value_of(target.setQuery("act","dispLogin")).should_be("https://www.zeroboard.com:445/?act=dispLogin");
},
'should work when ssl is on and https_port is set as 443' : function() {
target = "http://www.zeroboard.com/";
https_port = 443;
ssl_actions = new Array("dispLogin");
value_of(target.setQuery("act","dispLogin")).should_be("https://www.zeroboard.com/?act=dispLogin");
},
'should replace https to http if act is not a member of ssl_actions': function() {
targets = "https://www.zeroboard.com/";
ssl_actions = new Array("dispLogin");
value_of(targets.setQuery("act","dispLogin2")).should_be("http://www.zeroboard.com/?act=dispLogin2");
},
'should remove https port' : function() {
targetsp = "https://www.zeroboard.com:443/?q=r";
value_of(targetsp.setQuery("act","dispLogin2")).should_be("http://www.zeroboard.com/?q=r&act=dispLogin2");
},
'should remove https port and add http port if http port is defined' : function() {
targetsp = "https://www.zeroboard.com:443/?q=r";
http_port = 8000;
value_of(targetsp.setQuery("act","dispLogin2")).should_be("http://www.zeroboard.com:8000/?q=r&act=dispLogin2");
},
'should only remove https port and if http port is defined as 80' : function() {
targetsp = "https://www.zeroboard.com:443/?q=r";
http_port = 80;
value_of(targetsp.setQuery("act","dispLogin2")).should_be("http://www.zeroboard.com/?q=r&act=dispLogin2");
},
'should work if enforce_ssl is set' : function() {
target = "http://www.zeroboard.com/";
enforce_ssl = true;
value_of(target.setQuery("act","dispLogin")).should_be("https://www.zeroboard.com/?act=dispLogin");
},
'should work if enforce_ssl is set with 443 port' : function() {
target = "http://www.zeroboard.com/";
enforce_ssl = true;
https_port = 443;
value_of(target.setQuery("act","dispLogin")).should_be("https://www.zeroboard.com/?act=dispLogin");
},
'should work if enforce_ssl is set with none-443 port' : function() {
target = "http://www.zeroboard.com/";
enforce_ssl = true;
https_port = 445;
value_of(target.setQuery("act","dispLogin")).should_be("https://www.zeroboard.com:445/?act=dispLogin");
}
})
// ]]></script>
</head>
<body><div style="display:none;"><p>A</p><p>B</p></div></body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<title>JSSpec results</title>
<link rel="stylesheet" type="text/css" href="css/JSSpec.css" />
<script type="text/javascript" src="JSSpec/JSSpec.js"></script>
<script type="text/javascript" src="JSSpec/diff_match_patch.js"></script>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="../common.js"></script>
<script type="text/javascript">// <![CDATA[
describe('SetQuery', {
'should satisfy basic uri condition' : function() {
target = "http://xpressengine.com/";
value_of(target.setQuery("q","r")).should_be("http://xpressengine.com/?q=r");
},
'should work when ssl is on' : function() {
target = "http://xpressengine.com/";
ssl_actions = new Array("dispLogin");
value_of(target.setQuery("act","dispLogin")).should_be("https://xpressengine.com/?act=dispLogin");
},
'should work when ssl is on and https_port is set (not 443)' : function() {
target = "http://xpressengine.com/";
https_port = 445;
ssl_actions = new Array("dispLogin");
value_of(target.setQuery("act","dispLogin")).should_be("https://xpressengine.com:445/?act=dispLogin");
},
'should work when ssl is on and https_port is set as 443' : function() {
target = "http://xpressengine.com/";
https_port = 443;
ssl_actions = new Array("dispLogin");
value_of(target.setQuery("act","dispLogin")).should_be("https://xpressengine.com/?act=dispLogin");
},
'should replace https to http if act is not a member of ssl_actions': function() {
targets = "https://xpressengine.com/";
ssl_actions = new Array("dispLogin");
value_of(targets.setQuery("act","dispLogin2")).should_be("http://xpressengine.com/?act=dispLogin2");
},
'should remove https port' : function() {
targetsp = "https://xpressengine.com:443/?q=r";
value_of(targetsp.setQuery("act","dispLogin2")).should_be("http://xpressengine.com/?q=r&act=dispLogin2");
},
'should remove https port and add http port if http port is defined' : function() {
targetsp = "https://xpressengine.com:443/?q=r";
http_port = 8000;
value_of(targetsp.setQuery("act","dispLogin2")).should_be("http://xpressengine.com/:8000/?q=r&act=dispLogin2");
},
'should only remove https port and if http port is defined as 80' : function() {
targetsp = "https://xpressengine.com:443/?q=r";
http_port = 80;
value_of(targetsp.setQuery("act","dispLogin2")).should_be("http://xpressengine.com/?q=r&act=dispLogin2");
},
'should work if enforce_ssl is set' : function() {
target = "http://xpressengine.com/";
enforce_ssl = true;
value_of(target.setQuery("act","dispLogin")).should_be("https://xpressengine.com/?act=dispLogin");
},
'should work if enforce_ssl is set with 443 port' : function() {
target = "http://xpressengine.com/";
enforce_ssl = true;
https_port = 443;
value_of(target.setQuery("act","dispLogin")).should_be("https://xpressengine.com/?act=dispLogin");
},
'should work if enforce_ssl is set with none-443 port' : function() {
target = "http://xpressengine.com/";
enforce_ssl = true;
https_port = 445;
value_of(target.setQuery("act","dispLogin")).should_be("https://xpressengine.com:445/?act=dispLogin");
}
})
// ]]></script>
</head>
<body><div style="display:none;"><p>A</p><p>B</p></div></body>
</html>

View file

@ -1,12 +1,12 @@
/**
* @file common/js/xml_js_filter.js
* @author taggon (taggon@gmail.com)
* @brief xml filter (validator) plugin
*
* A rule is a method validate one field.
* A filter is made up of one or more rules.
**/
(function($){var messages=[];var rules=[];var filters=[];var callbacks=[];var extras={};var Validator=xe.createApp('Validator',{init:function(){var regEmail=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)*$/;this.cast('ADD_RULE',['email',regEmail]);this.cast('ADD_RULE',['email_address',regEmail]);var regUserid=/^[a-z]+[\w-]*[a-z0-9_]+$/i;this.cast('ADD_RULE',['userid',regUserid]);this.cast('ADD_RULE',['user_id',regUserid]);var regUrl=/^(https?|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-\/\~]+)+(:[0-9]{2,4})*$/;this.cast('ADD_RULE',['url',regUrl]);this.cast('ADD_RULE',['homepage',regUrl]);var regKor=/^[가-힣]*$/;this.cast('ADD_RULE',['korean',regKor]);var regKorNum=/^[가-힣0-9]*$/;this.cast('ADD_RULE',['korean_number',regKorNum]);var regAlpha=/^[a-z]*$/i;this.cast('ADD_RULE',['alpha',regAlpha]);var regAlphaNum=/^[a-z][a-z0-9_]*$/i;this.cast('ADD_RULE',['alpha_number',regAlphaNum]);var regNum=/^[0-9]*$/;this.cast('ADD_RULE',['number',regNum]);},run:function(oForm){var filter='';if(oForm._filter)filter=oForm._filter.value;var params=[oForm,filter];var result=this.cast('VALIDATE',params);if(typeof result=='undefined')result=false;return result;},API_ONREADY:function(){var self=this;$('form').each(function(){if(this.onsubmit){this['xe:onsubmit']=this.onsubmit;this.onsubmit=null;}}).submit(function(){var legacyFn=this['xe:onsubmit'];var hasLegacyFn=$.isFunction(legacyFn);var bResult=hasLegacyFn?legacyFn.apply(this):self.run(this);return bResult;});},API_VALIDATE:function(sender,params){var self=this,result=true,form=params[0],filter=null,callback=null;if(form.elements['_filter'])filter=form.elements['_filter'].value;if(!filter)return true;if($.isFunction(callbacks[filter]))callback=callbacks[filter];filter=$.extend({},filters[filter.toLowerCase()]||{},extras);$.each(filter,function(name){var _el=form.elements[name];if(!_el)return true;var el=$(_el),val=$.trim(get_value(el));var minlen=parseInt(this.minlength)||0;var maxlen=parseInt(this.maxlength)||0;var rule=(this.rule||'').split(',');if(this.required&&!val)return(result=(!!self.cast('ALERT',[form,name,'isnull'])&&false));if(!this.required&&!val)return(result=true);if((minlen&&val.length<minlen)||(maxlen&&val.length>maxlen))return(result=(!!self.cast('ALERT',[form,name,'outofrange',minlen,maxlen])&&false));if(this.equalto){var eq_val=get_value($(form.elements[this.equalto]));if(eq_val!=val)return(result=(!!self.cast('ALERT',[form,name,'equalto'])&&false));}
$.each(rule,function(){var ret=self.cast('APPLY_RULE',[this,val]);if(!ret){self.cast('ALERT',[form,name,'invalid_'+this]);return(result=false);}});if(!result)return false;});if(!result)return false;if($.isFunction(callback))return callback(form);return true;},API_ADD_RULE:function(sender,params){var name=params[0].toLowerCase();rules[name]=params[1];},API_DEL_RULE:function(sender,params){var name=params[0].toLowerCase();delete rules[name];},API_GET_RULE:function(sender,params){var name=params[0].toLowerCase();if(rules[name]){return rules[name];}else{return null;}},API_ADD_FILTER:function(sender,params){var name=params[0].toLowerCase();var filter=params[1];filters[name]=filter;},API_DEL_FILTER:function(sender,params){var name=params[0].toLowerCase();delete filters[name];},API_GET_FILTER:function(sender,params){var name=params[0].toLowerCase();if(filters[name]){return filters[name];}else{return null;}},API_ADD_EXTRA_FIELD:function(sender,params){var name=params[0].toLowerCase();var prop=params[1];extras[name]=prop;},API_GET_EXTRA_FIELD:function(sender,params){var name=params[0].toLowerCase();return extras[name];},API_DEL_EXTRA_FIELD:function(sender,params){var name=params[0].toLowerCase();delete extras[name];},API_APPLY_RULE:function(sender,params){var name=params[0].toLowerCase();var value=params[1];if(typeof(rules[name])=='undefined')return true;if($.isFunction(rules[name]))return rules[name](value);if(rules[name]instanceof RegExp)return rules[name].test(value);return true;},API_ALERT:function(sender,params){var form=params[0];var field_name=params[1];var msg_code=params[2];var minlen=params[3];var maxlen=params[4];var field_msg=this.cast('GET_MESSAGE',[field_name]);var msg=this.cast('GET_MESSAGE',[msg_code]);if(msg!=msg_code)msg=(msg.indexOf('%s')<0)?(field_msg+msg):(msg.replace('%s',field_msg));if(minlen||maxlen)msg+='('+(minlen||'')+'~'+(maxlen||'')+')';this.cast('SHOW_ALERT',[msg]);$(form.elements[field_name]).focus();},API_SHOW_ALERT:function(sender,params){alert(params[0]);},API_ADD_MESSAGE:function(sender,params){var msg_code=params[0];var msg_str=params[1];messages[msg_code]=msg_str;},API_GET_MESSAGE:function(sender,params){var msg_code=params[0];return messages[msg_code]||msg_code;},API_ADD_CALLBACK:function(sender,params){var name=params[0];var func=params[1];callbacks[name]=func;},API_REMOVE_CALLBACK:function(sender,params){var name=params[0];delete callbacks[name];}});var oValidator=new Validator;xe.registerApp(oValidator);var EditorStub=xe.createPlugin('editor_stub',{API_BEFORE_VALIDATE:function(sender,params){var form=params[0];var seq=form.getAttribute('editor_sequence');if(seq){try{editorRelKeys[seq].content.value=editorRelKeys[seq].func(seq)||'';}catch(e){}}}});oValidator.registerPlugin(new EditorStub);function get_value(elem){var vals=[];if(elem.is(':radio')){return elem.filter(':checked').val();}else if(elem.is(':checkbox')){elem.filter(':checked').each(function(){vals.push(this.value);});return vals.join('|@|');}else{return elem.val();}}})(jQuery);function filterAlertMessage(ret_obj){var error=ret_obj["error"];var message=ret_obj["message"];var act=ret_obj["act"];var redirect_url=ret_obj["redirect_url"];var url=location.href;if(typeof(message)!="undefined"&&message&&message!="success")alert(message);if(typeof(act)!="undefined"&&act)url=current_url.setQuery("act",act);else if(typeof(redirect_url)!="undefined"&&redirect_url)url=redirect_url;if(url==location.href)url=url.replace(/#(.*)$/,'');location.href=url;}
function procFilter(fo_obj,filter_func)
/**
* @file common/js/xml_js_filter.js
* @author NHN (developers@xpressengine.com)
* @brief xml filter (validator) plugin
*
* A rule is a method validate one field.
* A filter is made up of one or more rules.
**/
(function($){var messages=[];var rules=[];var filters=[];var callbacks=[];var extras={};var Validator=xe.createApp('Validator',{init:function(){var regEmail=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)*$/;this.cast('ADD_RULE',['email',regEmail]);this.cast('ADD_RULE',['email_address',regEmail]);var regUserid=/^[a-z]+[\w-]*[a-z0-9_]+$/i;this.cast('ADD_RULE',['userid',regUserid]);this.cast('ADD_RULE',['user_id',regUserid]);var regUrl=/^(https?|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-\/\~]+)+(:[0-9]{2,4})*$/;this.cast('ADD_RULE',['url',regUrl]);this.cast('ADD_RULE',['homepage',regUrl]);var regKor=/^[가-힣]*$/;this.cast('ADD_RULE',['korean',regKor]);var regKorNum=/^[가-힣0-9]*$/;this.cast('ADD_RULE',['korean_number',regKorNum]);var regAlpha=/^[a-z]*$/i;this.cast('ADD_RULE',['alpha',regAlpha]);var regAlphaNum=/^[a-z][a-z0-9_]*$/i;this.cast('ADD_RULE',['alpha_number',regAlphaNum]);var regNum=/^[0-9]*$/;this.cast('ADD_RULE',['number',regNum]);},run:function(oForm){var filter='';if(oForm._filter)filter=oForm._filter.value;var params=[oForm,filter];var result=this.cast('VALIDATE',params);if(typeof result=='undefined')result=false;return result;},API_ONREADY:function(){var self=this;$('form').each(function(){if(this.onsubmit){this['xe:onsubmit']=this.onsubmit;this.onsubmit=null;}}).submit(function(){var legacyFn=this['xe:onsubmit'];var hasLegacyFn=$.isFunction(legacyFn);var bResult=hasLegacyFn?legacyFn.apply(this):self.run(this);return bResult;});},API_VALIDATE:function(sender,params){var self=this,result=true,form=params[0],filter=null,callback=null;if(form.elements['_filter'])filter=form.elements['_filter'].value;if(!filter)return true;if($.isFunction(callbacks[filter]))callback=callbacks[filter];filter=$.extend({},filters[filter.toLowerCase()]||{},extras);$.each(filter,function(name){var _el=form.elements[name];if(!_el)return true;var el=$(_el),val=$.trim(get_value(el));var minlen=parseInt(this.minlength)||0;var maxlen=parseInt(this.maxlength)||0;var rule=(this.rule||'').split(',');if(this.required&&!val)return(result=(!!self.cast('ALERT',[form,name,'isnull'])&&false));if(!this.required&&!val)return(result=true);if((minlen&&val.length<minlen)||(maxlen&&val.length>maxlen))return(result=(!!self.cast('ALERT',[form,name,'outofrange',minlen,maxlen])&&false));if(this.equalto){var eq_val=get_value($(form.elements[this.equalto]));if(eq_val!=val)return(result=(!!self.cast('ALERT',[form,name,'equalto'])&&false));}
$.each(rule,function(){var ret=self.cast('APPLY_RULE',[this,val]);if(!ret){self.cast('ALERT',[form,name,'invalid_'+this]);return(result=false);}});if(!result)return false;});if(!result)return false;if($.isFunction(callback))return callback(form);return true;},API_ADD_RULE:function(sender,params){var name=params[0].toLowerCase();rules[name]=params[1];},API_DEL_RULE:function(sender,params){var name=params[0].toLowerCase();delete rules[name];},API_GET_RULE:function(sender,params){var name=params[0].toLowerCase();if(rules[name]){return rules[name];}else{return null;}},API_ADD_FILTER:function(sender,params){var name=params[0].toLowerCase();var filter=params[1];filters[name]=filter;},API_DEL_FILTER:function(sender,params){var name=params[0].toLowerCase();delete filters[name];},API_GET_FILTER:function(sender,params){var name=params[0].toLowerCase();if(filters[name]){return filters[name];}else{return null;}},API_ADD_EXTRA_FIELD:function(sender,params){var name=params[0].toLowerCase();var prop=params[1];extras[name]=prop;},API_GET_EXTRA_FIELD:function(sender,params){var name=params[0].toLowerCase();return extras[name];},API_DEL_EXTRA_FIELD:function(sender,params){var name=params[0].toLowerCase();delete extras[name];},API_APPLY_RULE:function(sender,params){var name=params[0].toLowerCase();var value=params[1];if(typeof(rules[name])=='undefined')return true;if($.isFunction(rules[name]))return rules[name](value);if(rules[name]instanceof RegExp)return rules[name].test(value);return true;},API_ALERT:function(sender,params){var form=params[0];var field_name=params[1];var msg_code=params[2];var minlen=params[3];var maxlen=params[4];var field_msg=this.cast('GET_MESSAGE',[field_name]);var msg=this.cast('GET_MESSAGE',[msg_code]);if(msg!=msg_code)msg=(msg.indexOf('%s')<0)?(field_msg+msg):(msg.replace('%s',field_msg));if(minlen||maxlen)msg+='('+(minlen||'')+'~'+(maxlen||'')+')';this.cast('SHOW_ALERT',[msg]);$(form.elements[field_name]).focus();},API_SHOW_ALERT:function(sender,params){alert(params[0]);},API_ADD_MESSAGE:function(sender,params){var msg_code=params[0];var msg_str=params[1];messages[msg_code]=msg_str;},API_GET_MESSAGE:function(sender,params){var msg_code=params[0];return messages[msg_code]||msg_code;},API_ADD_CALLBACK:function(sender,params){var name=params[0];var func=params[1];callbacks[name]=func;},API_REMOVE_CALLBACK:function(sender,params){var name=params[0];delete callbacks[name];}});var oValidator=new Validator;xe.registerApp(oValidator);var EditorStub=xe.createPlugin('editor_stub',{API_BEFORE_VALIDATE:function(sender,params){var form=params[0];var seq=form.getAttribute('editor_sequence');if(seq){try{editorRelKeys[seq].content.value=editorRelKeys[seq].func(seq)||'';}catch(e){}}}});oValidator.registerPlugin(new EditorStub);function get_value(elem){var vals=[];if(elem.is(':radio')){return elem.filter(':checked').val();}else if(elem.is(':checkbox')){elem.filter(':checked').each(function(){vals.push(this.value);});return vals.join('|@|');}else{return elem.val();}}})(jQuery);function filterAlertMessage(ret_obj){var error=ret_obj["error"];var message=ret_obj["message"];var act=ret_obj["act"];var redirect_url=ret_obj["redirect_url"];var url=location.href;if(typeof(message)!="undefined"&&message&&message!="success")alert(message);if(typeof(act)!="undefined"&&act)url=current_url.setQuery("act",act);else if(typeof(redirect_url)!="undefined"&&redirect_url)url=redirect_url;if(url==location.href)url=url.replace(/#(.*)$/,'');location.href=url;}
function procFilter(fo_obj,filter_func)
{filter_func(fo_obj);return false;}

View file

@ -1,7 +1,7 @@
<?php
/**
* @file common/lang/en.lang.php
* @author zero (zero@nzeo.com)
* @author NHN (developers@xpressengine.com)
* @brief English Language Pack (Only basic words are included here)
**/
@ -309,9 +309,9 @@
$lang->filter->isnull = 'Please input a value for %s';
$lang->filter->outofrange = 'Please align the text length of %s';
$lang->filter->equalto = "The value of %s is invalid";
$lang->filter->invalid_email = "The format of %s is invalid. ex) zbxe@zeroboard.com";
$lang->filter->invalid_email = "The format of %s is invalid. ex) developers@xpressengine.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "The format of %s is invalid.\\nAll values should consist of alphabets, numbers or underscore(_) and the first letter should be alphabet";
$lang->filter->invalid_homepage = "The format of %s is invalid. ex) http://www.zeroboard.com";
$lang->filter->invalid_homepage = "The format of %s is invalid. ex) http://xpressengine.com/";
$lang->filter->invalid_korean = "The format of %s is invalid. Please input Korean only";
$lang->filter->invalid_korean_number = "The format of %s is invalid. Please input Korean or numbers";
$lang->filter->invalid_alpha = "The format of %s is invalid. Please input alphabets only";

View file

@ -1,7 +1,7 @@
<?php
/**
* @archivo common/lang/es.lang.php
* @autor zero (zero@nzeo.com)
* @autor NHN (developers@xpressengine.com)
* @sumario Paquete del Idioma Español (incluye sólo las palabras básicas )
**/
@ -316,9 +316,9 @@
$lang->filter->isnull = 'Introduzca valor en el %s';
$lang->filter->outofrange = 'Se ha excedido el máximo número de letras permitido en el %s';
$lang->filter->equalto = 'Valor inválido en el %s';
$lang->filter->invalid_email = 'Formato email inválido en el %s (ej. zbxe@zeroboard.com)';
$lang->filter->invalid_email = 'Formato email inválido en el %s (ej. developers@xpressengine.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "Formato inválido en el %s.\\nSólo pueden introducir los alfabetos o los dígitos númericos o el guión bajo(_). Además, el primer valor sólo puede ser una letra de alfabeto";
$lang->filter->invalid_homepage = 'Formato url inválido en el %s (ej: http://www.zeroboard.com)';
$lang->filter->invalid_homepage = 'Formato url inválido en el %s (ej: http://xpressengine.com/)';
$lang->filter->invalid_korean = 'Sólo puede introducir los caracteres coreanos en el %s';
$lang->filter->invalid_korean_number = 'Sólo puede introducir los caracteres coreanos o números en el %s';
$lang->filter->invalid_alpha = 'Sólo puede introducir los alfabetos en el %s';

View file

@ -1,320 +1,320 @@
<?php
/**
* @file common/lang/fr.lang.php
* @author zero (zero@nzeo.com) Traduit par Pierre Duvent(PierreDuvent@gamil.com)
* @brief Paquet du langage en français
**/
// verbes et mots fondamentaux qui décrivent des actions
$lang->cmd_write = 'Ecrire';
$lang->cmd_reply = 'Répondre';
$lang->cmd_delete = 'Supprimer';
$lang->cmd_modify = 'Modifier';
$lang->cmd_edit = 'Editer';
$lang->cmd_view = 'Voir';
$lang->cmd_view_all = 'Voir tout';
$lang->cmd_list = 'Liste';
$lang->cmd_prev = 'Précédent';
$lang->cmd_next = 'Suivant';
$lang->cmd_send_trackback = 'Envoyer Rétrolien';
$lang->cmd_registration = $lang->cmd_submit = 'Enrégistrer';
$lang->cmd_comment_registration = 'Ajouter un Commentaire';
$lang->cmd_insert = 'Insérer';
$lang->cmd_save = 'Conserver';
$lang->cmd_load = 'Charger';
$lang->cmd_input = 'Entrer';
$lang->cmd_search = 'Rechercher';
$lang->cmd_find = '찾기';
$lang->cmd_replace = '바꾸기';
$lang->cmd_confirm = '확인';
$lang->cmd_cancel = 'Annuler';
$lang->cmd_back = 'Retourner';
$lang->cmd_vote = 'Recommander';
$lang->cmd_vote_down = 'Critiquer';
$lang->cmd_declare = 'Déclarer';
$lang->cmd_cancel_declare = 'Annuler déclaration';
$lang->cmd_declared_list = 'Liste des déclarations';
$lang->cmd_copy = 'Copier';
$lang->cmd_move = 'Bouger';
$lang->cmd_move_up = 'En haut';
$lang->cmd_move_down = 'En bas';
$lang->cmd_add_indent = 'Ajouter un Rentré';
$lang->cmd_remove_indent = 'Enlever un Rentré';
$lang->cmd_management = 'Administrer';
$lang->cmd_make = 'Créer';
$lang->cmd_select = 'Choisir';
$lang->cmd_select_all = 'Choisir Tout';
$lang->cmd_unselect_all = 'Annuler Tout';
$lang->cmd_reverse_all = 'Renverser la Sélection';
$lang->cmd_close_all = 'Fermer Tout';
$lang->cmd_open_all = 'Ouvrir Tout';
$lang->cmd_reload = 'Recharger';
$lang->cmd_close = 'Fermer';
$lang->cmd_open = 'Ouvrir';
$lang->cmd_setup = 'Configuration';
$lang->cmd_addition_setup = 'Configuration Additionnelle';
$lang->cmd_option = 'Option';
$lang->cmd_apply = 'Appliquer';
$lang->cmd_open_calendar = 'Choisir un Jour';
$lang->cmd_send = 'Envoyer';
$lang->cmd_print = 'Imprimer';
$lang->cmd_scrap = 'Coupure';
$lang->cmd_preview = 'Avant-première';
$lang->cmd_reset = 'Restaurer';
$lang->cmd_remake_cache = "Recréer l'antémémoire du Fichier";
$lang->cmd_publish = "Publier";
$lang->cmd_layout_setup = 'Configurer la Mise en page';
$lang->cmd_layout_edit = 'Editer la Mise en page';
$lang->cmd_search_by_ipaddress = 'Recherce par l\'Address IP';
$lang->cmd_add_ip_to_spamfilter = 'Add IP to spamfilter';
$lang->enable = 'Valide';
$lang->disable = 'Invalide';
// Mots essentiels
$lang->menu = 'Menu';
$lang->no = 'No';
$lang->notice = 'Notice';
$lang->secret = 'Secret';
$lang->category = $lang->category_srl = 'Catégorie';
$lang->none_category = 'None category';
$lang->none_image = '이미지 없음';
$lang->document_srl = 'Numéro de série du Document';
$lang->user_id = 'Compte';
$lang->author = 'Auteur';
$lang->password = 'Mot de Passe';
$lang->password1 = 'Mot de Passe';
$lang->password2 = 'Confirmer du Mot de Passe';
$lang->admin_id = 'Compte d\'Administrateur';
$lang->writer = 'Auteur';
$lang->user_name = 'Nom';
$lang->nick_name = 'Surnom';
$lang->email_address = 'Mél';
$lang->homepage = 'Page d\'accueil';
$lang->blog = 'Blogue';
$lang->birthday = 'Anniversaire';
$lang->browser_title = 'Titre de Navigateur';
$lang->title = 'Titre';
$lang->title_content = 'Titre + Contenu';
$lang->topic = 'Sujet';
$lang->replies = 'Répondse';
$lang->content = 'Contenu';
$lang->document = 'Document';
$lang->comment = 'Commentaire';
$lang->description = 'Description';
$lang->trackback = 'Rétrolien';
$lang->tag = 'Tag';
$lang->allow_comment = 'Permettre Commentaires';
$lang->lock_comment = 'Bloquer Commentaires';
$lang->allow_trackback = 'Permettre Rétrolien';
$lang->uploaded_file = 'Fichier Attaché';
$lang->grant = 'Permission';
$lang->target = 'Objet';
$lang->total = 'Total';
$lang->total_count = 'Somme';
$lang->ipaddress = 'Addresse IP';
$lang->path = 'Chemin';
$lang->cart = 'Article Choisi';
$lang->friend = 'Les Amis';
$lang->notify = 'Annoncer';
$lang->order_target = 'Align Target';
$lang->order_type = 'Sorting Type';
$lang->order_asc = 'Ascend';
$lang->order_desc = 'Descendre';
$lang->file = 'file';
$lang->mid = 'Nom';
$lang->sid = 'Site Name';
$lang->layout = 'Mise en Page';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Gadget';
$lang->module = 'Module';
$lang->skin = 'Habillage';
$lang->mobile_skin = 'Mobile Habillage';
$lang->colorset = 'Arrangement de couleur';
$lang->extra_vars = 'Variables Supplémentaires';
$lang->domain = "Domain Name";
$lang->url = "URL";
$lang->document_url = 'Document URL';
$lang->trackback_url = 'Rétrolien URL';
$lang->blog_name = 'Nom du Blogue';
$lang->excerpt = 'Extrait';
$lang->document_count = ' Documents';
$lang->page_count = 'Pages';
$lang->list_count = 'Item';
$lang->search_list_count = 'Trouvés';
$lang->readed_count = ' Vues';
$lang->voted_count = 'Recommandés';
$lang->comment_count = 'Commentaires';
$lang->member_count = 'Membres';
$lang->date = 'Jour';
$lang->regdate = 'Enrégistré';
$lang->last_update = 'Dernière Mise à Jour';
$lang->last_post = 'Dernière Affichage';
$lang->signup_date = 'Inscription';
$lang->last_login = 'Dernière connexion';
$lang->first_page = 'Première Page';
$lang->last_page = 'Dernière Page';
$lang->search_target = 'Champ à Rechercher';
$lang->search_keyword = 'Mot-clé à Rechercher';
$lang->is_default = 'Par Défaut';
$lang->no_documents = 'Nul Document';
$lang->board_manager = 'Administration des Panneaux';
$lang->member_manager = 'Administration des Membres';
$lang->layout_manager = 'Administration des Mises en Page';
$lang->use = 'Utiliser';
$lang->notuse = 'Pas Utilisé';
$lang->not_exists = 'Rien';
$lang->public = 'public';
$lang->private = 'privé';
$lang->unit_sec = 'seconde';
$lang->unit_min = 'minute';
$lang->unit_hour = 'heure';
$lang->unit_day = 'jour';
$lang->unit_month = 'mois';
$lang->unit_year = 'année';;
$lang->unit_week = array(
'Monday' => 'Lundi',
'Tuesday' => 'Mardi',
'Wednesday' => 'Mer.',
'Thursday' => 'Jeu.',
'Friday' => 'Vendredi',
'Saturday' => 'Samedi',
'Sunday' => 'Dimanche',
);
$lang->unit_meridiem = array(
'am' => 'am',
'pm' => 'pm',
'AM' => 'AM',
'PM' => 'PM',
);
$lang->time_gap = array(
'min' => '%d heure',
'mins' => 'Il ya %d minutes',
'hour' => 'Il ya %d jour',
'hours' => 'Il ya %d jours',
);
// Descriptions et information
$lang->about_tag = 'Vous pouvez enrégistrer plusieurs balises en utilisant ,(virgule) entre chaque balise';
$lang->about_layout = 'Le Mise en Page décore l\'apparence des modules. Vous pouvez les configurer avec le menu de Mise en Page en haut';
// Messages et alertes
$lang->msg_call_server = 'En demandant sur le serveur, attendez S.V.P.';
$lang->msg_db_not_setted = 'La configuration de Base de Données n\'a pas été établie.';
$lang->msg_dbconnect_failed = "Erreur a lieu en essayant connecter à la Base de Données.\nVérifiez encore une fois les informations sur la Base de Données, S.V.P.";
$lang->msg_invalid_queryid = 'La valeur spécifiée d\'identite de query est invalide.';
$lang->msg_not_permitted = 'Vous n\'avez pas le droit d\'accès.';
$lang->msg_input_password = 'Veuillez entrer votre mot de passe.';
$lang->msg_invalid_document = 'Numéro de Document invalide';
$lang->msg_invalid_request = 'Requête invalide';
$lang->msg_invalid_password = 'Mot de passe invalide';
$lang->msg_error_occured = 'Une erreur a lieu';
$lang->msg_not_founded = 'L\'objet n\'est pas trouvé.';
$lang->msg_no_result = 'Nul Résultat';
$lang->msg_fail_to_request_open = 'Fail to open your request';
$lang->msg_invalid_format = 'Invalid Format';
$lang->msg_not_permitted_act = 'Vous n\'êtes pas autorisés à exécuter l\'action que vous avez demandé.';
$lang->msg_module_is_not_exists = "요청하신 모듈을 찾을 수 없습니다.\n사이트 관리자에게 모듈 점검 요청 바랍니다";
$lang->msg_module_is_not_standalone = 'Le module demandé ne peut pas être exécuté indépendamment.';
$lang->msg_default_url_is_not_defined = '기본 URL이 정해지지 않아서 동작을 중지합니다';
$lang->success_registed = 'Enregistré avec succès';
$lang->success_declared = 'Accusé avec succès';
$lang->success_updated = 'Mise à jour avec succès';
$lang->success_deleted = 'Supprimé avec succès';
$lang->success_voted = 'Voté avec succès';
$lang->success_blamed = 'Blâmé avec succès';
$lang->success_moved = 'Bougé avec succès';
$lang->success_sended = 'Envoyé avec succès';
$lang->success_reset = 'Restauré avec succès';
$lang->success_leaved = 'Toutes vos informations sont complètement supprimés';
$lang->success_saved = 'Conservé avec succès';
$lang->fail_to_delete = 'N\'a pas pu être supprimé.';
$lang->fail_to_move = 'N\'a pas pu être bougé';
$lang->failed_voted = 'N\'a pas pu recommander';
$lang->failed_blamed = 'N\'a pas pu blâmer';
$lang->failed_declared = 'N\'a pas pu accuser';
$lang->fail_to_delete_have_children = 'Essayez encore une fois après avoir suprimé les reponses, S.V.P.';
$lang->confirm_submit = 'Vous voulez sûrement soumettre?';
$lang->confirm_logout = 'Vous voulez sûrement fermer la session?';
$lang->confirm_vote = 'Vous voulez recommander?';
$lang->confirm_delete = 'Vous voulez sûrement supprimer?';
$lang->confirm_move = 'Vous voulez sûrement bouger?';
$lang->confirm_reset = 'Vous voulez sûrement restaurer?';
$lang->confirm_leave = 'Vous voulez sûrement supprimer votre compte?';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'Types de la colonne';
$lang->column_type_list['text'] = 'Texte en une seul ligne';
$lang->column_type_list['homepage'] = 'URL';
$lang->column_type_list['email_address'] = 'Mél';
$lang->column_type_list['tel'] = 'Numéro de Telephone';
$lang->column_type_list['textarea'] = 'Texte en plusieurs lignes';
$lang->column_type_list['checkbox'] = 'Case à cocher (multichoix)';
$lang->column_type_list['select'] = 'Case d\'option (seul choix)';
$lang->column_type_list['radio'] = 'radio button (radio)';
$lang->column_type_list['kr_zip'] = 'Code postal (coréen)';
$lang->column_type_list['date'] = 'Jour (yyyy/mm/dd)';
//$lang->column_type_list['jp_zip'] = 'code postal (japonais)';
$lang->column_name = 'Nom de la colonne';
$lang->column_title = 'Titre de la colonne';
$lang->default_value = 'Valeur par défaut';
$lang->is_active = 'Actif';
$lang->is_required = 'Item essentielle';
$lang->eid = '확장변수 이름';
// ftp 관련
$lang->ftp_form_title = 'FTP 정보 입력';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP 접속 확인';
$lang->about_ftp_info = "
FTP 정보는 다음의 경우에 이용될 있습니다.<br/>
1. PHP의 safe_mode=On일 경우에 FTP 정보를 이용해서 XE를 정상적으로 동작할 있게 합니다.<br/>
2. 자동 업데이트등에서 FTP 정보를 이용할 있습니다.<br/>
FTP정보는 files/config/ftp.config.php 파일내에 정보가 저장됩니다.<br/>
그리고 설치 관리자 페이지에서 FTP 정보를 변경하거나 제거할 있습니다.<br />
";
$lang->msg_safe_mode_ftp_needed = "PHP의 safe_mode가 On일 경우 FTP 정보를 꼭 입력해주셔야 XE의 설치 및 사용이 가능합니다";
$lang->msg_ftp_not_connected = "localhost로의 FTP 접속 오류가 발생하였습니다. ftp 포트 번호를 확인해주시거나 ftp 서비스가 가능한지 확인해주세요";
$lang->msg_ftp_invalid_auth_info = "입력하신 FTP 정보로 로그인을 하지 못했습니다. FTP정보를 확인해주세요";
$lang->msg_ftp_mkdir_fail = "FTP를 이용한 디렉토리 생성 명령을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_chmod_fail = "FTP를 이용한 디렉토리의 속성 변경을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_connect_success = "FTP 접속 및 인증 성공하였습니다";
$lang->ftp_path_title = 'FTP 경로 정보 입력';
$lang->msg_ftp_installed_realpath = '설치된 XE의 절대경로';
$lang->msg_ftp_installed_ftp_realpath = '설치된 XE의 FTP 절대경로 설정';
// Messages d\'alerte de le Javascript qui est utilisé dans les filtres en XML
$lang->filter->isnull = 'Entrez une valeur pour %s';
$lang->filter->outofrange = 'Aligner la longueur du texte de %s';
$lang->filter->equalto = "La valeur de %s est invalide.";
$lang->filter->invalid_email = "Le format de %s est invalide. ex) zbxe@zeroboard.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "La format de %s n\'est pas convenable.\\nToutes les lettres devraient se composer des alphabets, des chiffres ou du soulignage(_) Et la première lettre doit être un de l\'alphabet.";
$lang->filter->invalid_homepage = "La format de %s n\'est pas convenable. ex) http://www.zeroboard.com";
$lang->filter->invalid_korean = "La format de %s n\'est pas convenable. Entrez seulement en coréen, S.V.P.";
$lang->filter->invalid_korean_number = "La format de %s n\'est pas convenable. Entrez seulement des lettres d\'alphabet coréen ou des chiffres, S.V.P.";
$lang->filter->invalid_alpha = "La format de %s n\'est pas convenable. Entrez seulement en alphabet, S.V.P.";
$lang->filter->invalid_alpha_number = "La format de %s n\'est pas convenable. Entrez seulement des lettres d\'alphabet ou des chiffres.";
$lang->filter->invalid_number = "La format de %s n\'est pas convenable. Entrez seulement des chiffres.";
?>
<?php
/**
* @file common/lang/fr.lang.php
* @author NHN (developers@xpressengine.com) Traduit par Pierre Duvent(PierreDuvent@gamil.com)
* @brief Paquet du langage en français
**/
// verbes et mots fondamentaux qui décrivent des actions
$lang->cmd_write = 'Ecrire';
$lang->cmd_reply = 'Répondre';
$lang->cmd_delete = 'Supprimer';
$lang->cmd_modify = 'Modifier';
$lang->cmd_edit = 'Editer';
$lang->cmd_view = 'Voir';
$lang->cmd_view_all = 'Voir tout';
$lang->cmd_list = 'Liste';
$lang->cmd_prev = 'Précédent';
$lang->cmd_next = 'Suivant';
$lang->cmd_send_trackback = 'Envoyer Rétrolien';
$lang->cmd_registration = $lang->cmd_submit = 'Enrégistrer';
$lang->cmd_comment_registration = 'Ajouter un Commentaire';
$lang->cmd_insert = 'Insérer';
$lang->cmd_save = 'Conserver';
$lang->cmd_load = 'Charger';
$lang->cmd_input = 'Entrer';
$lang->cmd_search = 'Rechercher';
$lang->cmd_find = '찾기';
$lang->cmd_replace = '바꾸기';
$lang->cmd_confirm = '확인';
$lang->cmd_cancel = 'Annuler';
$lang->cmd_back = 'Retourner';
$lang->cmd_vote = 'Recommander';
$lang->cmd_vote_down = 'Critiquer';
$lang->cmd_declare = 'Déclarer';
$lang->cmd_cancel_declare = 'Annuler déclaration';
$lang->cmd_declared_list = 'Liste des déclarations';
$lang->cmd_copy = 'Copier';
$lang->cmd_move = 'Bouger';
$lang->cmd_move_up = 'En haut';
$lang->cmd_move_down = 'En bas';
$lang->cmd_add_indent = 'Ajouter un Rentré';
$lang->cmd_remove_indent = 'Enlever un Rentré';
$lang->cmd_management = 'Administrer';
$lang->cmd_make = 'Créer';
$lang->cmd_select = 'Choisir';
$lang->cmd_select_all = 'Choisir Tout';
$lang->cmd_unselect_all = 'Annuler Tout';
$lang->cmd_reverse_all = 'Renverser la Sélection';
$lang->cmd_close_all = 'Fermer Tout';
$lang->cmd_open_all = 'Ouvrir Tout';
$lang->cmd_reload = 'Recharger';
$lang->cmd_close = 'Fermer';
$lang->cmd_open = 'Ouvrir';
$lang->cmd_setup = 'Configuration';
$lang->cmd_addition_setup = 'Configuration Additionnelle';
$lang->cmd_option = 'Option';
$lang->cmd_apply = 'Appliquer';
$lang->cmd_open_calendar = 'Choisir un Jour';
$lang->cmd_send = 'Envoyer';
$lang->cmd_print = 'Imprimer';
$lang->cmd_scrap = 'Coupure';
$lang->cmd_preview = 'Avant-première';
$lang->cmd_reset = 'Restaurer';
$lang->cmd_remake_cache = "Recréer l'antémémoire du Fichier";
$lang->cmd_publish = "Publier";
$lang->cmd_layout_setup = 'Configurer la Mise en page';
$lang->cmd_layout_edit = 'Editer la Mise en page';
$lang->cmd_search_by_ipaddress = 'Recherce par l\'Address IP';
$lang->cmd_add_ip_to_spamfilter = 'Add IP to spamfilter';
$lang->enable = 'Valide';
$lang->disable = 'Invalide';
// Mots essentiels
$lang->menu = 'Menu';
$lang->no = 'No';
$lang->notice = 'Notice';
$lang->secret = 'Secret';
$lang->category = $lang->category_srl = 'Catégorie';
$lang->none_category = 'None category';
$lang->none_image = '이미지 없음';
$lang->document_srl = 'Numéro de série du Document';
$lang->user_id = 'Compte';
$lang->author = 'Auteur';
$lang->password = 'Mot de Passe';
$lang->password1 = 'Mot de Passe';
$lang->password2 = 'Confirmer du Mot de Passe';
$lang->admin_id = 'Compte d\'Administrateur';
$lang->writer = 'Auteur';
$lang->user_name = 'Nom';
$lang->nick_name = 'Surnom';
$lang->email_address = 'Mél';
$lang->homepage = 'Page d\'accueil';
$lang->blog = 'Blogue';
$lang->birthday = 'Anniversaire';
$lang->browser_title = 'Titre de Navigateur';
$lang->title = 'Titre';
$lang->title_content = 'Titre + Contenu';
$lang->topic = 'Sujet';
$lang->replies = 'Répondse';
$lang->content = 'Contenu';
$lang->document = 'Document';
$lang->comment = 'Commentaire';
$lang->description = 'Description';
$lang->trackback = 'Rétrolien';
$lang->tag = 'Tag';
$lang->allow_comment = 'Permettre Commentaires';
$lang->lock_comment = 'Bloquer Commentaires';
$lang->allow_trackback = 'Permettre Rétrolien';
$lang->uploaded_file = 'Fichier Attaché';
$lang->grant = 'Permission';
$lang->target = 'Objet';
$lang->total = 'Total';
$lang->total_count = 'Somme';
$lang->ipaddress = 'Addresse IP';
$lang->path = 'Chemin';
$lang->cart = 'Article Choisi';
$lang->friend = 'Les Amis';
$lang->notify = 'Annoncer';
$lang->order_target = 'Align Target';
$lang->order_type = 'Sorting Type';
$lang->order_asc = 'Ascend';
$lang->order_desc = 'Descendre';
$lang->file = 'file';
$lang->mid = 'Nom';
$lang->sid = 'Site Name';
$lang->layout = 'Mise en Page';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Gadget';
$lang->module = 'Module';
$lang->skin = 'Habillage';
$lang->mobile_skin = 'Mobile Habillage';
$lang->colorset = 'Arrangement de couleur';
$lang->extra_vars = 'Variables Supplémentaires';
$lang->domain = "Domain Name";
$lang->url = "URL";
$lang->document_url = 'Document URL';
$lang->trackback_url = 'Rétrolien URL';
$lang->blog_name = 'Nom du Blogue';
$lang->excerpt = 'Extrait';
$lang->document_count = ' Documents';
$lang->page_count = 'Pages';
$lang->list_count = 'Item';
$lang->search_list_count = 'Trouvés';
$lang->readed_count = ' Vues';
$lang->voted_count = 'Recommandés';
$lang->comment_count = 'Commentaires';
$lang->member_count = 'Membres';
$lang->date = 'Jour';
$lang->regdate = 'Enrégistré';
$lang->last_update = 'Dernière Mise à Jour';
$lang->last_post = 'Dernière Affichage';
$lang->signup_date = 'Inscription';
$lang->last_login = 'Dernière connexion';
$lang->first_page = 'Première Page';
$lang->last_page = 'Dernière Page';
$lang->search_target = 'Champ à Rechercher';
$lang->search_keyword = 'Mot-clé à Rechercher';
$lang->is_default = 'Par Défaut';
$lang->no_documents = 'Nul Document';
$lang->board_manager = 'Administration des Panneaux';
$lang->member_manager = 'Administration des Membres';
$lang->layout_manager = 'Administration des Mises en Page';
$lang->use = 'Utiliser';
$lang->notuse = 'Pas Utilisé';
$lang->not_exists = 'Rien';
$lang->public = 'public';
$lang->private = 'privé';
$lang->unit_sec = 'seconde';
$lang->unit_min = 'minute';
$lang->unit_hour = 'heure';
$lang->unit_day = 'jour';
$lang->unit_month = 'mois';
$lang->unit_year = 'année';;
$lang->unit_week = array(
'Monday' => 'Lundi',
'Tuesday' => 'Mardi',
'Wednesday' => 'Mer.',
'Thursday' => 'Jeu.',
'Friday' => 'Vendredi',
'Saturday' => 'Samedi',
'Sunday' => 'Dimanche',
);
$lang->unit_meridiem = array(
'am' => 'am',
'pm' => 'pm',
'AM' => 'AM',
'PM' => 'PM',
);
$lang->time_gap = array(
'min' => '%d heure',
'mins' => 'Il ya %d minutes',
'hour' => 'Il ya %d jour',
'hours' => 'Il ya %d jours',
);
// Descriptions et information
$lang->about_tag = 'Vous pouvez enrégistrer plusieurs balises en utilisant ,(virgule) entre chaque balise';
$lang->about_layout = 'Le Mise en Page décore l\'apparence des modules. Vous pouvez les configurer avec le menu de Mise en Page en haut';
// Messages et alertes
$lang->msg_call_server = 'En demandant sur le serveur, attendez S.V.P.';
$lang->msg_db_not_setted = 'La configuration de Base de Données n\'a pas été établie.';
$lang->msg_dbconnect_failed = "Erreur a lieu en essayant connecter à la Base de Données.\nVérifiez encore une fois les informations sur la Base de Données, S.V.P.";
$lang->msg_invalid_queryid = 'La valeur spécifiée d\'identite de query est invalide.';
$lang->msg_not_permitted = 'Vous n\'avez pas le droit d\'accès.';
$lang->msg_input_password = 'Veuillez entrer votre mot de passe.';
$lang->msg_invalid_document = 'Numéro de Document invalide';
$lang->msg_invalid_request = 'Requête invalide';
$lang->msg_invalid_password = 'Mot de passe invalide';
$lang->msg_error_occured = 'Une erreur a lieu';
$lang->msg_not_founded = 'L\'objet n\'est pas trouvé.';
$lang->msg_no_result = 'Nul Résultat';
$lang->msg_fail_to_request_open = 'Fail to open your request';
$lang->msg_invalid_format = 'Invalid Format';
$lang->msg_not_permitted_act = 'Vous n\'êtes pas autorisés à exécuter l\'action que vous avez demandé.';
$lang->msg_module_is_not_exists = "요청하신 모듈을 찾을 수 없습니다.\n사이트 관리자에게 모듈 점검 요청 바랍니다";
$lang->msg_module_is_not_standalone = 'Le module demandé ne peut pas être exécuté indépendamment.';
$lang->msg_default_url_is_not_defined = '기본 URL이 정해지지 않아서 동작을 중지합니다';
$lang->success_registed = 'Enregistré avec succès';
$lang->success_declared = 'Accusé avec succès';
$lang->success_updated = 'Mise à jour avec succès';
$lang->success_deleted = 'Supprimé avec succès';
$lang->success_voted = 'Voté avec succès';
$lang->success_blamed = 'Blâmé avec succès';
$lang->success_moved = 'Bougé avec succès';
$lang->success_sended = 'Envoyé avec succès';
$lang->success_reset = 'Restauré avec succès';
$lang->success_leaved = 'Toutes vos informations sont complètement supprimés';
$lang->success_saved = 'Conservé avec succès';
$lang->fail_to_delete = 'N\'a pas pu être supprimé.';
$lang->fail_to_move = 'N\'a pas pu être bougé';
$lang->failed_voted = 'N\'a pas pu recommander';
$lang->failed_blamed = 'N\'a pas pu blâmer';
$lang->failed_declared = 'N\'a pas pu accuser';
$lang->fail_to_delete_have_children = 'Essayez encore une fois après avoir suprimé les reponses, S.V.P.';
$lang->confirm_submit = 'Vous voulez sûrement soumettre?';
$lang->confirm_logout = 'Vous voulez sûrement fermer la session?';
$lang->confirm_vote = 'Vous voulez recommander?';
$lang->confirm_delete = 'Vous voulez sûrement supprimer?';
$lang->confirm_move = 'Vous voulez sûrement bouger?';
$lang->confirm_reset = 'Vous voulez sûrement restaurer?';
$lang->confirm_leave = 'Vous voulez sûrement supprimer votre compte?';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'Types de la colonne';
$lang->column_type_list['text'] = 'Texte en une seul ligne';
$lang->column_type_list['homepage'] = 'URL';
$lang->column_type_list['email_address'] = 'Mél';
$lang->column_type_list['tel'] = 'Numéro de Telephone';
$lang->column_type_list['textarea'] = 'Texte en plusieurs lignes';
$lang->column_type_list['checkbox'] = 'Case à cocher (multichoix)';
$lang->column_type_list['select'] = 'Case d\'option (seul choix)';
$lang->column_type_list['radio'] = 'radio button (radio)';
$lang->column_type_list['kr_zip'] = 'Code postal (coréen)';
$lang->column_type_list['date'] = 'Jour (yyyy/mm/dd)';
//$lang->column_type_list['jp_zip'] = 'code postal (japonais)';
$lang->column_name = 'Nom de la colonne';
$lang->column_title = 'Titre de la colonne';
$lang->default_value = 'Valeur par défaut';
$lang->is_active = 'Actif';
$lang->is_required = 'Item essentielle';
$lang->eid = '확장변수 이름';
// ftp 관련
$lang->ftp_form_title = 'FTP 정보 입력';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP 접속 확인';
$lang->about_ftp_info = "
FTP 정보는 다음의 경우에 이용될 있습니다.<br/>
1. PHP의 safe_mode=On일 경우에 FTP 정보를 이용해서 XE를 정상적으로 동작할 있게 합니다.<br/>
2. 자동 업데이트등에서 FTP 정보를 이용할 있습니다.<br/>
FTP정보는 files/config/ftp.config.php 파일내에 정보가 저장됩니다.<br/>
그리고 설치 관리자 페이지에서 FTP 정보를 변경하거나 제거할 있습니다.<br />
";
$lang->msg_safe_mode_ftp_needed = "PHP의 safe_mode가 On일 경우 FTP 정보를 꼭 입력해주셔야 XE의 설치 및 사용이 가능합니다";
$lang->msg_ftp_not_connected = "localhost로의 FTP 접속 오류가 발생하였습니다. ftp 포트 번호를 확인해주시거나 ftp 서비스가 가능한지 확인해주세요";
$lang->msg_ftp_invalid_auth_info = "입력하신 FTP 정보로 로그인을 하지 못했습니다. FTP정보를 확인해주세요";
$lang->msg_ftp_mkdir_fail = "FTP를 이용한 디렉토리 생성 명령을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_chmod_fail = "FTP를 이용한 디렉토리의 속성 변경을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_connect_success = "FTP 접속 및 인증 성공하였습니다";
$lang->ftp_path_title = 'FTP 경로 정보 입력';
$lang->msg_ftp_installed_realpath = '설치된 XE의 절대경로';
$lang->msg_ftp_installed_ftp_realpath = '설치된 XE의 FTP 절대경로 설정';
// Messages d\'alerte de le Javascript qui est utilisé dans les filtres en XML
$lang->filter->isnull = 'Entrez une valeur pour %s';
$lang->filter->outofrange = 'Aligner la longueur du texte de %s';
$lang->filter->equalto = "La valeur de %s est invalide.";
$lang->filter->invalid_email = "Le format de %s est invalide. ex) developers@xpressengine.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "La format de %s n\'est pas convenable.\\nToutes les lettres devraient se composer des alphabets, des chiffres ou du soulignage(_) Et la première lettre doit être un de l\'alphabet.";
$lang->filter->invalid_homepage = "La format de %s n\'est pas convenable. ex) http://xpressengine.com/";
$lang->filter->invalid_korean = "La format de %s n\'est pas convenable. Entrez seulement en coréen, S.V.P.";
$lang->filter->invalid_korean_number = "La format de %s n\'est pas convenable. Entrez seulement des lettres d\'alphabet coréen ou des chiffres, S.V.P.";
$lang->filter->invalid_alpha = "La format de %s n\'est pas convenable. Entrez seulement en alphabet, S.V.P.";
$lang->filter->invalid_alpha_number = "La format de %s n\'est pas convenable. Entrez seulement des lettres d\'alphabet ou des chiffres.";
$lang->filter->invalid_number = "La format de %s n\'est pas convenable. Entrez seulement des chiffres.";
?>

View file

@ -1,322 +1,322 @@
<?php
/**
* @Datei common/lang/ge.lang.php
* @Author zero (zero@nzeo.com)
* @Kurzen german Language Pack (nur einfache Worte sind hier eingeschlossen)
**/
// Worte für Aktion, die im Grunde verwendet
$lang->cmd_write = 'Schreiben';
$lang->cmd_reply = 'Antworten';
$lang->cmd_delete = 'Löschen';
$lang->cmd_modify = 'Ändern';
$lang->cmd_edit = 'Bearbeiten';
$lang->cmd_view = 'Anzeigen';
$lang->cmd_view_all = 'Alle anzeigen';
$lang->cmd_list = 'US -';
$lang->cmd_prev = 'Zurück';
$lang->cmd_next = 'Nächster';
$lang->cmd_send_trackback = 'Trackback senden';
$lang->cmd_registration = $lang->cmd_submit = 'Übermitteln';
$lang->cmd_comment_registration = 'Kommentar hinzufügen';
$lang->cmd_insert = 'Legen Sie';
$lang->cmd_save = 'sichern';
$lang->cmd_load = 'Laden';
$lang->cmd_input = 'Input';
$lang->cmd_search = 'Suche';
$lang->cmd_find = '찾기';
$lang->cmd_replace = '바꾸기';
$lang->cmd_confirm = '확인';
$lang->cmd_cancel = 'Abbrechen';
$lang->cmd_back = 'Zurück';
$lang->cmd_vote = 'Weiterempfehlen';
$lang->cmd_vote_down = 'Criticize';
$lang->cmd_declare = 'accuse';
$lang->cmd_cancel_declare = 'accuse Abbrechen';
$lang->cmd_declared_list = 'Vorwürfe Liste';
$lang->cmd_copy = 'Kopieren';
$lang->cmd_move = 'Verschieben';
$lang->cmd_move_up = 'Nach oben';
$lang->cmd_move_down = 'Down';
$lang->cmd_add_indent = 'Einrücken';
$lang->cmd_remove_indent = 'Ausrücken';
$lang->cmd_management = 'Verwaltung';
$lang->cmd_make = 'Erstellen';
$lang->cmd_select = 'Select';
$lang->cmd_select_all = 'Alle auswählen';
$lang->cmd_unselect_all = 'Alle abwählen';
$lang->cmd_reverse_all = 'Reverse';
$lang->cmd_close_all = 'Schließen Sie alle';
$lang->cmd_open_all = 'Open All';
$lang->cmd_reload = 'Reload';
$lang->cmd_close = 'Schließen';
$lang->cmd_open = 'Open';
$lang->cmd_setup = 'Konfiguration';
$lang->cmd_addition_setup = 'Zusätzliche Setup ';
$lang->cmd_option = 'Option';
$lang->cmd_apply = 'Übernehmen';
$lang->cmd_open_calendar = 'Wählen Sie ein Datum';
$lang->cmd_send = 'Senden';
$lang->cmd_print = 'Drucken';
$lang->cmd_scrap = 'Schrott';
$lang->cmd_preview = 'Vorschau';
$lang->cmd_reset = 'Reset';
$lang->cmd_remake_cache = 'Re-Cache-Datei erstellen';
$lang->cmd_publish = 'Veröffentlichen';
$lang->cmd_layout_setup = 'Konfiguration Layout';
$lang->cmd_layout_edit = 'Layout bearbeiten';
$lang->cmd_search_by_ipaddress = 'Search by IP Address';
$lang->cmd_add_ip_to_spamfilter = 'Add IP to spamfilter';
$lang->enable = 'Aktivieren';
$lang->deaktivieren = 'Deaktivieren';
// Essential Words
$lang->menu = 'Menu';
$lang->no = 'Nein';
$lang->notice = 'Hinweis';
$lang->secret = 'Geheim';
$lang->category = $lang->category_srl = 'Kategorie';
$lang->none_category = '분류없음';
$lang->none_image = '이미지 없음';
$lang->document_srl = 'Doc. No ';
$lang->user_id = 'User-ID';
$lang->author = 'Entwickler';
$lang->password = 'Passwort';
$lang->password1 = 'Passwort';
$lang->password2 = 'Passwort bestätigen';
$lang->admin_id = 'Admin ID';
$lang->writer = 'Autor';
$lang->user_name = 'Username';
$lang->nick_name = 'Nick Name';
$lang->email_address = 'E-Mail';
$lang->homepage = 'Startseite';
$lang->blog = 'Blog';
$lang->birthday = 'Geburtstag';
$lang->browser_title = 'Browser-Titel';
$lang->title = 'Betreff';
$lang->title_content = 'Betreff + Inhalt';
$lang->topic = 'Thema';
$lang->replies = 'Antwort';
$lang->content = 'Inhalt';
$lang->document = 'Artikel';
$lang->comment = 'Kommentar';
$lang->description = 'Beschreibung';
$lang->trackback = 'Trackback';
$lang->tag = 'Tag';
$lang->allow_comment = 'Kommentare erlauben';
$lang->lock_comment = 'Block Kommentare';
$lang->allow_trackback = 'Allow Trackbacks';
$lang->uploaded_file = 'Anlage';
$lang->grant = 'Erlaubnis';
$lang->target = 'target';
$lang->total = 'Gesamt';
$lang->total_count = 'count Gesamt';
$lang->ipaddress = 'IP-Adresse';
$lang->path = 'Pfad';
$lang->cart = 'Ausgewählte Posten';
$lang->friend = 'Freunde';
$lang->notify = 'Meldung';
$lang->order_target = 'Ausrichten Target';
$lang->order_type = 'Sortieren Typ';
$lang->order_asc = 'Aufstieg';
$lang->order_desc = 'Abstieg';
$lang->file = 'file';
$lang->mid = 'Module Name';
$lang->sid = 'Site Name';
$lang->layout = 'Layout';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Widget';
$lang->module = 'Modul';
$lang->skin = 'Thema';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'Colorset';
$lang->extra_vars = 'Extra Vars';
$lang->domain = "Domain Name";
$lang->url = "URL";
$lang->document_url = 'Artikel-URL';
$lang->trackback_url = 'Trackback-URL';
$lang->blog_name = 'Blog-Titel';
$lang->excerpt = 'Zitat';
$lang->document_count = 'Total Artikel';
$lang->page_count = 'Page Count';
$lang->list_count = 'US-Count ';
$lang->search_list_count = 'Suchen US-Count';
$lang->readed_count = 'Views';
$lang->voted_count = 'Stimmen';
$lang->comment_count = 'Kommentare';
$lang->member_count = 'Mitglied Count';
$lang->date = 'Datum';
$lang->regdate = 'Anmeldungsdatum Datum';
$lang->last_update = 'Letzte Aktualisierung';
$lang->last_post = 'Letzter Beitrag';
$lang->signup_date = 'Join Date';
$lang->last_login = 'Letzter Login';
$lang->first_page = 'Erste Seite';
$lang->last_page = 'Letzte Seite';
$lang->search_target = 'Target für die Google-Suche';
$lang->search_keyword = 'Stichwort';
$lang->is_default = 'Standard';
$lang->no_documents = 'Keine Artikel';
$lang->board_manager = 'Board';
$lang->member_manager = 'Mitglied';
$lang->layout_manager = 'Layout-Einstellungen';
$lang->use = 'Use';
$lang->notuse = 'nicht verwenden';
$lang->not_exists = 'nicht vorhanden';
$lang->public = 'öffentlich';
$lang->private = 'private';
$lang->unit_sec = 's';
$lang->unit_min = 'mindestens';
$lang->unit_hour = 'h';
$lang->unit_day = 'th';
$lang->unit_month = 'Monat';
$lang->unit_year = 'Jahr';
$lang->unit_week = array(
'Monday' => 'Montag',
'Tuesday' => 'Dienstag',
'Wednesday' => 'Mittwoch',
'Thursday' => 'Donnerstag',
'Friday' => 'Freitag',
'Saturday' => 'Samstag',
'Sunday' => 'Sonntag',
);
$lang->unit_meridiem = array(
'am' => 'am',
'pm' => 'pm',
'AM' => 'AM',
'PM' => 'PM',
);
$lang->time_gap = array(
'min' => 'Vor %d Minute',
'mins' => '%d Stunden',
'hour' => '%d Tag',
'hours' => '%d Tage',
);
// Beschreibungen
$lang->about_tag = 'Sie können mehrere Tags, indem Sie ein Komma (,) zwischen den einzelnen Tag';
$lang->about_layout = 'Layouts schmücken das Aussehen Ihrer Module. Sie können sie von Layout-Menü am oberen Rand ';
// Messages
$lang->msg_call_server = 'Anfordern an den Server, bitte warten';
$lang->msg_db_not_setted = 'DB-Konfiguration wurde nicht festgelegt';
$lang->msg_dbconnect_failed = "Error has occurred while connecting DB.\nPlease check DB information again"; // TODO:translation en -> ge
$lang->msg_invalid_queryid = 'spezifiziert Abfrage ID-Wert ist ungültig';
$lang->msg_not_permitted = 'Sie haben keine Berechtigung zum Zugriff auf';
$lang->msg_input_password = 'Bitte geben Sie das Passwort';
$lang->msg_invalid_document = 'Ungültige Article Number';
$lang->msg_invalid_request = 'Invalid request ';
$lang->msg_invalid_password = 'Ungültiges Passwort';
$lang->msg_error_occured = 'Ein Fehler ist aufgetreten ';
$lang->msg_not_founded = 'Target konnte nicht gefunden werden';
$lang->msg_no_result = 'Nichts gefunden';
$lang->msg_fail_to_request_open = 'Fail to open your request';
$lang->msg_invalid_format = 'Invalid Format';
$lang->msg_not_permitted_act = 'Sie haben keine Berechtigung zur Ausführung angeforderte Aktion';
$lang->msg_module_is_not_exists = "요청하신 모듈을 찾을 수 없습니다.\n사이트 관리자에게 모듈 점검 요청 바랍니다";
$lang->msg_module_is_not_standalone = 'Gewünschte Modul kann nicht ausgeführt werden unabhängig';
$lang->msg_default_url_is_not_defined = '기본 URL이 정해지지 않아서 동작을 중지합니다';
$lang->success_registed = 'Anmeldungsdatum';
$lang->success_declared = 'Accused erfolgreich';
$lang->success_updated = 'erfolgreich aktualisiert';
$lang->success_deleted = 'erfolgreich gelöscht';
$lang->success_voted = 'Empfohlen';
$lang->success_blamed = 'Schuld success_blamed';
$lang->success_moved = 'Umzug';
$lang->success_sended = 'Gesendet';
$lang->success_reset = 'Reset';
$lang->success_leaved = 'Alle Mitglieder Daten wurden komplett gestrichen. ';
$lang->success_saved = 'erfolgreich gespeichert ';
$lang->fail_to_delete = 'konnte nicht gelöscht werden';
$lang->fail_to_move = 'konnte nicht verschoben werden';
$lang->failed_voted = 'konnte nicht empfehlen';
$lang->failed_blamed = 'Es konnte keine Schuld';
$lang->failed_declared = 'Konnte nicht vorwerfen';
$lang->fail_to_delete_have_children = 'Bitte versuchen Sie es erneut nach dem Entfernen erste Antworten';
$lang->confirm_submit = 'Sind Sie sicher, dass zur Vorlage? ';
$lang->confirm_logout = 'Sind Sie sicher, dass nach Logout? ';
$lang->confirm_vote = 'Sind Sie sicher, dass zu empfehlen? ';
$lang->CONFIRM_DELETE = 'Sind Sie sicher, dass löschen? ';
$lang->confirm_move = 'Sind Sie sicher, dass zu bewegen? ';
$lang->confirm_reset = 'Sind Sie sicher, dass zurücksetzen? ';
$lang->confirm_leave = 'Sind Sie sicher, dass zu verlassen? ';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'Spaltenart';
$lang->column_type_list['text'] = 'ein Online-Text';
$lang->column_type_list['homepage'] = 'url';
$lang->column_type_list['email_address'] =' E-Mail ';
$lang->column_type_list['tel'] = 'Telefonnummer';
$lang->column_type_list['textarea'] = 'Multi-line textarea';
$lang->column_type_list['checkbox'] = 'Checkbox (multiple Auswahl)';
$lang->column_type_list['select'] = 'select box (Einzel-Auswahl) ';
$lang->column_type_list['radio'] = 'radio button (radio)';
$lang->column_type_list['kr_zip'] = 'Postleitzahl (Koreanisch) ';
$lang->column_type_list['date'] = 'Datum (jjjj / mm / dd)';
// $lang->column_type_list [ 'jp_zip'] = 'Postleitzahl (Japanisch)';
$lang->column_name = 'Spaltenname';
$lang->column_title = 'Spaltentitel';
$lang->default_value = 'Standardwert';
$lang->is_active = 'Aktiv';
$lang->is_required = 'Pflichtfeld';
$lang->eid = '확장변수 이름';
// ftp 관련
$lang->ftp_form_title = 'FTP 정보 입력';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP 접속 확인';
$lang->about_ftp_info = "
FTP 정보는 다음의 경우에 이용될 있습니다.<br/>
1. PHP의 safe_mode=On일 경우에 FTP 정보를 이용해서 XE를 정상적으로 동작할 있게 합니다.<br/>
2. 자동 업데이트등에서 FTP 정보를 이용할 있습니다.<br/>
FTP정보는 files/config/ftp.config.php 파일내에 정보가 저장됩니다.<br/>
그리고 설치 관리자 페이지에서 FTP 정보를 변경하거나 제거할 있습니다.<br />
";
$lang->msg_safe_mode_ftp_needed = "PHP의 safe_mode가 On일 경우 FTP 정보를 꼭 입력해주셔야 XE의 설치 및 사용이 가능합니다";
$lang->msg_ftp_not_connected = "localhost로의 FTP 접속 오류가 발생하였습니다. ftp 포트 번호를 확인해주시거나 ftp 서비스가 가능한지 확인해주세요";
$lang->msg_ftp_invalid_auth_info = "입력하신 FTP 정보로 로그인을 하지 못했습니다. FTP정보를 확인해주세요";
$lang->msg_ftp_mkdir_fail = "FTP를 이용한 디렉토리 생성 명령을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_chmod_fail = "FTP를 이용한 디렉토리의 속성 변경을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_connect_success = "FTP 접속 및 인증 성공하였습니다";
$lang->ftp_path_title = 'FTP 경로 정보 입력';
$lang->msg_ftp_installed_realpath = '설치된 XE의 절대경로';
$lang->msg_ftp_installed_ftp_realpath = '설치된 XE의 FTP 절대경로 설정';
// Alert Nachrichten für JavaScript unter Verwendung von XML-Filter
$lang->filter->isnull = 'Bitte geben Sie einen Wert für% s';
$lang->filter->outofrange = 'Bitte richten Sie die Textlänge von% s';
$lang->filter->equalto = "Der Wert von% s ist ungültig";
$lang->filter->invalid_email = "Das Format von% s ist ungültig. ex) zbxe@zeroboard.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "Das Format von% s ist ungültig. \ \ Nall Werte sollte aus Alphabet, Zahlen oder Unterstrich (_) und den ersten Buchstaben sollten Alphabet" ;
$lang->filter->invalid_homepage = "Das Format von% s ist ungültig. ex) http://www.zeroboard.com";
$lang->filter->invalid_korean = "Das Format von% s ist ungültig. Koreanisch Bitte geben Sie nur";
$lang->filter->invalid_korean_number = "Das Format von% s ist ungültig. Bitte geben Sie Ihre Koreanisch oder Zahlen";
$lang->filter->invalid_alpha = "Das Format von% s ist ungültig. Bitte geben Sie nur Alphabete";
$lang->filter->invalid_alpha_number = "Das Format von% s ist ungültig. Bitte geben Sie Ihre Alphabete oder Zahlen";
$lang->filter->invalid_number = "Das Format von% s ist ungültig. Bitte geben Sie nur Zahlen";
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>
<?php
/**
* @Datei common/lang/ge.lang.php
* @Author NHN (developers@xpressengine.com)
* @Kurzen german Language Pack (nur einfache Worte sind hier eingeschlossen)
**/
// Worte für Aktion, die im Grunde verwendet
$lang->cmd_write = 'Schreiben';
$lang->cmd_reply = 'Antworten';
$lang->cmd_delete = 'Löschen';
$lang->cmd_modify = 'Ändern';
$lang->cmd_edit = 'Bearbeiten';
$lang->cmd_view = 'Anzeigen';
$lang->cmd_view_all = 'Alle anzeigen';
$lang->cmd_list = 'US -';
$lang->cmd_prev = 'Zurück';
$lang->cmd_next = 'Nächster';
$lang->cmd_send_trackback = 'Trackback senden';
$lang->cmd_registration = $lang->cmd_submit = 'Übermitteln';
$lang->cmd_comment_registration = 'Kommentar hinzufügen';
$lang->cmd_insert = 'Legen Sie';
$lang->cmd_save = 'sichern';
$lang->cmd_load = 'Laden';
$lang->cmd_input = 'Input';
$lang->cmd_search = 'Suche';
$lang->cmd_find = '찾기';
$lang->cmd_replace = '바꾸기';
$lang->cmd_confirm = '확인';
$lang->cmd_cancel = 'Abbrechen';
$lang->cmd_back = 'Zurück';
$lang->cmd_vote = 'Weiterempfehlen';
$lang->cmd_vote_down = 'Criticize';
$lang->cmd_declare = 'accuse';
$lang->cmd_cancel_declare = 'accuse Abbrechen';
$lang->cmd_declared_list = 'Vorwürfe Liste';
$lang->cmd_copy = 'Kopieren';
$lang->cmd_move = 'Verschieben';
$lang->cmd_move_up = 'Nach oben';
$lang->cmd_move_down = 'Down';
$lang->cmd_add_indent = 'Einrücken';
$lang->cmd_remove_indent = 'Ausrücken';
$lang->cmd_management = 'Verwaltung';
$lang->cmd_make = 'Erstellen';
$lang->cmd_select = 'Select';
$lang->cmd_select_all = 'Alle auswählen';
$lang->cmd_unselect_all = 'Alle abwählen';
$lang->cmd_reverse_all = 'Reverse';
$lang->cmd_close_all = 'Schließen Sie alle';
$lang->cmd_open_all = 'Open All';
$lang->cmd_reload = 'Reload';
$lang->cmd_close = 'Schließen';
$lang->cmd_open = 'Open';
$lang->cmd_setup = 'Konfiguration';
$lang->cmd_addition_setup = 'Zusätzliche Setup ';
$lang->cmd_option = 'Option';
$lang->cmd_apply = 'Übernehmen';
$lang->cmd_open_calendar = 'Wählen Sie ein Datum';
$lang->cmd_send = 'Senden';
$lang->cmd_print = 'Drucken';
$lang->cmd_scrap = 'Schrott';
$lang->cmd_preview = 'Vorschau';
$lang->cmd_reset = 'Reset';
$lang->cmd_remake_cache = 'Re-Cache-Datei erstellen';
$lang->cmd_publish = 'Veröffentlichen';
$lang->cmd_layout_setup = 'Konfiguration Layout';
$lang->cmd_layout_edit = 'Layout bearbeiten';
$lang->cmd_search_by_ipaddress = 'Search by IP Address';
$lang->cmd_add_ip_to_spamfilter = 'Add IP to spamfilter';
$lang->enable = 'Aktivieren';
$lang->deaktivieren = 'Deaktivieren';
// Essential Words
$lang->menu = 'Menu';
$lang->no = 'Nein';
$lang->notice = 'Hinweis';
$lang->secret = 'Geheim';
$lang->category = $lang->category_srl = 'Kategorie';
$lang->none_category = '분류없음';
$lang->none_image = '이미지 없음';
$lang->document_srl = 'Doc. No ';
$lang->user_id = 'User-ID';
$lang->author = 'Entwickler';
$lang->password = 'Passwort';
$lang->password1 = 'Passwort';
$lang->password2 = 'Passwort bestätigen';
$lang->admin_id = 'Admin ID';
$lang->writer = 'Autor';
$lang->user_name = 'Username';
$lang->nick_name = 'Nick Name';
$lang->email_address = 'E-Mail';
$lang->homepage = 'Startseite';
$lang->blog = 'Blog';
$lang->birthday = 'Geburtstag';
$lang->browser_title = 'Browser-Titel';
$lang->title = 'Betreff';
$lang->title_content = 'Betreff + Inhalt';
$lang->topic = 'Thema';
$lang->replies = 'Antwort';
$lang->content = 'Inhalt';
$lang->document = 'Artikel';
$lang->comment = 'Kommentar';
$lang->description = 'Beschreibung';
$lang->trackback = 'Trackback';
$lang->tag = 'Tag';
$lang->allow_comment = 'Kommentare erlauben';
$lang->lock_comment = 'Block Kommentare';
$lang->allow_trackback = 'Allow Trackbacks';
$lang->uploaded_file = 'Anlage';
$lang->grant = 'Erlaubnis';
$lang->target = 'target';
$lang->total = 'Gesamt';
$lang->total_count = 'count Gesamt';
$lang->ipaddress = 'IP-Adresse';
$lang->path = 'Pfad';
$lang->cart = 'Ausgewählte Posten';
$lang->friend = 'Freunde';
$lang->notify = 'Meldung';
$lang->order_target = 'Ausrichten Target';
$lang->order_type = 'Sortieren Typ';
$lang->order_asc = 'Aufstieg';
$lang->order_desc = 'Abstieg';
$lang->file = 'file';
$lang->mid = 'Module Name';
$lang->sid = 'Site Name';
$lang->layout = 'Layout';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Widget';
$lang->module = 'Modul';
$lang->skin = 'Thema';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'Colorset';
$lang->extra_vars = 'Extra Vars';
$lang->domain = "Domain Name";
$lang->url = "URL";
$lang->document_url = 'Artikel-URL';
$lang->trackback_url = 'Trackback-URL';
$lang->blog_name = 'Blog-Titel';
$lang->excerpt = 'Zitat';
$lang->document_count = 'Total Artikel';
$lang->page_count = 'Page Count';
$lang->list_count = 'US-Count ';
$lang->search_list_count = 'Suchen US-Count';
$lang->readed_count = 'Views';
$lang->voted_count = 'Stimmen';
$lang->comment_count = 'Kommentare';
$lang->member_count = 'Mitglied Count';
$lang->date = 'Datum';
$lang->regdate = 'Anmeldungsdatum Datum';
$lang->last_update = 'Letzte Aktualisierung';
$lang->last_post = 'Letzter Beitrag';
$lang->signup_date = 'Join Date';
$lang->last_login = 'Letzter Login';
$lang->first_page = 'Erste Seite';
$lang->last_page = 'Letzte Seite';
$lang->search_target = 'Target für die Google-Suche';
$lang->search_keyword = 'Stichwort';
$lang->is_default = 'Standard';
$lang->no_documents = 'Keine Artikel';
$lang->board_manager = 'Board';
$lang->member_manager = 'Mitglied';
$lang->layout_manager = 'Layout-Einstellungen';
$lang->use = 'Use';
$lang->notuse = 'nicht verwenden';
$lang->not_exists = 'nicht vorhanden';
$lang->public = 'öffentlich';
$lang->private = 'private';
$lang->unit_sec = 's';
$lang->unit_min = 'mindestens';
$lang->unit_hour = 'h';
$lang->unit_day = 'th';
$lang->unit_month = 'Monat';
$lang->unit_year = 'Jahr';
$lang->unit_week = array(
'Monday' => 'Montag',
'Tuesday' => 'Dienstag',
'Wednesday' => 'Mittwoch',
'Thursday' => 'Donnerstag',
'Friday' => 'Freitag',
'Saturday' => 'Samstag',
'Sunday' => 'Sonntag',
);
$lang->unit_meridiem = array(
'am' => 'am',
'pm' => 'pm',
'AM' => 'AM',
'PM' => 'PM',
);
$lang->time_gap = array(
'min' => 'Vor %d Minute',
'mins' => '%d Stunden',
'hour' => '%d Tag',
'hours' => '%d Tage',
);
// Beschreibungen
$lang->about_tag = 'Sie können mehrere Tags, indem Sie ein Komma (,) zwischen den einzelnen Tag';
$lang->about_layout = 'Layouts schmücken das Aussehen Ihrer Module. Sie können sie von Layout-Menü am oberen Rand ';
// Messages
$lang->msg_call_server = 'Anfordern an den Server, bitte warten';
$lang->msg_db_not_setted = 'DB-Konfiguration wurde nicht festgelegt';
$lang->msg_dbconnect_failed = "Error has occurred while connecting DB.\nPlease check DB information again"; // TODO:translation en -> ge
$lang->msg_invalid_queryid = 'spezifiziert Abfrage ID-Wert ist ungültig';
$lang->msg_not_permitted = 'Sie haben keine Berechtigung zum Zugriff auf';
$lang->msg_input_password = 'Bitte geben Sie das Passwort';
$lang->msg_invalid_document = 'Ungültige Article Number';
$lang->msg_invalid_request = 'Invalid request ';
$lang->msg_invalid_password = 'Ungültiges Passwort';
$lang->msg_error_occured = 'Ein Fehler ist aufgetreten ';
$lang->msg_not_founded = 'Target konnte nicht gefunden werden';
$lang->msg_no_result = 'Nichts gefunden';
$lang->msg_fail_to_request_open = 'Fail to open your request';
$lang->msg_invalid_format = 'Invalid Format';
$lang->msg_not_permitted_act = 'Sie haben keine Berechtigung zur Ausführung angeforderte Aktion';
$lang->msg_module_is_not_exists = "요청하신 모듈을 찾을 수 없습니다.\n사이트 관리자에게 모듈 점검 요청 바랍니다";
$lang->msg_module_is_not_standalone = 'Gewünschte Modul kann nicht ausgeführt werden unabhängig';
$lang->msg_default_url_is_not_defined = '기본 URL이 정해지지 않아서 동작을 중지합니다';
$lang->success_registed = 'Anmeldungsdatum';
$lang->success_declared = 'Accused erfolgreich';
$lang->success_updated = 'erfolgreich aktualisiert';
$lang->success_deleted = 'erfolgreich gelöscht';
$lang->success_voted = 'Empfohlen';
$lang->success_blamed = 'Schuld success_blamed';
$lang->success_moved = 'Umzug';
$lang->success_sended = 'Gesendet';
$lang->success_reset = 'Reset';
$lang->success_leaved = 'Alle Mitglieder Daten wurden komplett gestrichen. ';
$lang->success_saved = 'erfolgreich gespeichert ';
$lang->fail_to_delete = 'konnte nicht gelöscht werden';
$lang->fail_to_move = 'konnte nicht verschoben werden';
$lang->failed_voted = 'konnte nicht empfehlen';
$lang->failed_blamed = 'Es konnte keine Schuld';
$lang->failed_declared = 'Konnte nicht vorwerfen';
$lang->fail_to_delete_have_children = 'Bitte versuchen Sie es erneut nach dem Entfernen erste Antworten';
$lang->confirm_submit = 'Sind Sie sicher, dass zur Vorlage? ';
$lang->confirm_logout = 'Sind Sie sicher, dass nach Logout? ';
$lang->confirm_vote = 'Sind Sie sicher, dass zu empfehlen? ';
$lang->CONFIRM_DELETE = 'Sind Sie sicher, dass löschen? ';
$lang->confirm_move = 'Sind Sie sicher, dass zu bewegen? ';
$lang->confirm_reset = 'Sind Sie sicher, dass zurücksetzen? ';
$lang->confirm_leave = 'Sind Sie sicher, dass zu verlassen? ';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'Spaltenart';
$lang->column_type_list['text'] = 'ein Online-Text';
$lang->column_type_list['homepage'] = 'url';
$lang->column_type_list['email_address'] =' E-Mail ';
$lang->column_type_list['tel'] = 'Telefonnummer';
$lang->column_type_list['textarea'] = 'Multi-line textarea';
$lang->column_type_list['checkbox'] = 'Checkbox (multiple Auswahl)';
$lang->column_type_list['select'] = 'select box (Einzel-Auswahl) ';
$lang->column_type_list['radio'] = 'radio button (radio)';
$lang->column_type_list['kr_zip'] = 'Postleitzahl (Koreanisch) ';
$lang->column_type_list['date'] = 'Datum (jjjj / mm / dd)';
// $lang->column_type_list [ 'jp_zip'] = 'Postleitzahl (Japanisch)';
$lang->column_name = 'Spaltenname';
$lang->column_title = 'Spaltentitel';
$lang->default_value = 'Standardwert';
$lang->is_active = 'Aktiv';
$lang->is_required = 'Pflichtfeld';
$lang->eid = '확장변수 이름';
// ftp 관련
$lang->ftp_form_title = 'FTP 정보 입력';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP 접속 확인';
$lang->about_ftp_info = "
FTP 정보는 다음의 경우에 이용될 있습니다.<br/>
1. PHP의 safe_mode=On일 경우에 FTP 정보를 이용해서 XE를 정상적으로 동작할 있게 합니다.<br/>
2. 자동 업데이트등에서 FTP 정보를 이용할 있습니다.<br/>
FTP정보는 files/config/ftp.config.php 파일내에 정보가 저장됩니다.<br/>
그리고 설치 관리자 페이지에서 FTP 정보를 변경하거나 제거할 있습니다.<br />
";
$lang->msg_safe_mode_ftp_needed = "PHP의 safe_mode가 On일 경우 FTP 정보를 꼭 입력해주셔야 XE의 설치 및 사용이 가능합니다";
$lang->msg_ftp_not_connected = "localhost로의 FTP 접속 오류가 발생하였습니다. ftp 포트 번호를 확인해주시거나 ftp 서비스가 가능한지 확인해주세요";
$lang->msg_ftp_invalid_auth_info = "입력하신 FTP 정보로 로그인을 하지 못했습니다. FTP정보를 확인해주세요";
$lang->msg_ftp_mkdir_fail = "FTP를 이용한 디렉토리 생성 명령을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_chmod_fail = "FTP를 이용한 디렉토리의 속성 변경을 실패하였습니다. FTP 서버의 설정을 확인해주세요";
$lang->msg_ftp_connect_success = "FTP 접속 및 인증 성공하였습니다";
$lang->ftp_path_title = 'FTP 경로 정보 입력';
$lang->msg_ftp_installed_realpath = '설치된 XE의 절대경로';
$lang->msg_ftp_installed_ftp_realpath = '설치된 XE의 FTP 절대경로 설정';
// Alert Nachrichten für JavaScript unter Verwendung von XML-Filter
$lang->filter->isnull = 'Bitte geben Sie einen Wert für% s';
$lang->filter->outofrange = 'Bitte richten Sie die Textlänge von% s';
$lang->filter->equalto = "Der Wert von% s ist ungültig";
$lang->filter->invalid_email = "Das Format von% s ist ungültig. ex) developers@xpressengine.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "Das Format von% s ist ungültig. \ \ Nall Werte sollte aus Alphabet, Zahlen oder Unterstrich (_) und den ersten Buchstaben sollten Alphabet" ;
$lang->filter->invalid_homepage = "Das Format von% s ist ungültig. ex) http://xpressengine.com/";
$lang->filter->invalid_korean = "Das Format von% s ist ungültig. Koreanisch Bitte geben Sie nur";
$lang->filter->invalid_korean_number = "Das Format von% s ist ungültig. Bitte geben Sie Ihre Koreanisch oder Zahlen";
$lang->filter->invalid_alpha = "Das Format von% s ist ungültig. Bitte geben Sie nur Alphabete";
$lang->filter->invalid_alpha_number = "Das Format von% s ist ungültig. Bitte geben Sie Ihre Alphabete oder Zahlen";
$lang->filter->invalid_number = "Das Format von% s ist ungültig. Bitte geben Sie nur Zahlen";
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>

View file

@ -1,324 +1,324 @@
<?php
/**
* @file common/lang/jp.lang.php
* @author zero (zero@nzeo.com) 翻訳RisaPapa、ミニミ
* @brief 日本語言語パッケージ(基本的な実行関連の用語がまとめられている)
**/
// 基本的な実行に用いる用語
$lang->cmd_write = '書き込む';
$lang->cmd_reply = '返信';
$lang->cmd_delete = '削除';
$lang->cmd_modify = '修正';
$lang->cmd_edit = '編集';
$lang->cmd_view = '表示';
$lang->cmd_view_all = 'すべて表示';
$lang->cmd_list = 'リスト';
$lang->cmd_prev = '前へ';
$lang->cmd_next = '次へ';
$lang->cmd_send_trackback = 'トラックバック送信';
$lang->cmd_registration = $lang->cmd_submit = '登録';
$lang->cmd_comment_registration = 'コメント登録';
$lang->cmd_insert = '挿入';
$lang->cmd_save = '保存';
$lang->cmd_load = '読み込む';
$lang->cmd_input = '入力';
$lang->cmd_search = '検索';
$lang->cmd_find = '検索';
$lang->cmd_replace = '置換';
$lang->cmd_confirm = '確認';
$lang->cmd_cancel = '取り消し';
$lang->cmd_back = '戻る';
$lang->cmd_vote = '推薦';
$lang->cmd_vote_down = '非推薦';
$lang->cmd_declare = '通報';
$lang->cmd_cancel_declare = '通報取り消し';
$lang->cmd_declared_list = '通報リスト';
$lang->cmd_copy = 'コピー';
$lang->cmd_move = '移動';
$lang->cmd_move_up = '上へ';
$lang->cmd_move_down = '下へ';
$lang->cmd_add_indent = 'インデント';
$lang->cmd_remove_indent = '逆インデント';
$lang->cmd_management = '管理';
$lang->cmd_make = '作成';
$lang->cmd_select = '選択';
$lang->cmd_select_all = 'すべて選択';
$lang->cmd_unselect_all = 'すべて解除';
$lang->cmd_reverse_all = '選択の反転';
$lang->cmd_close_all = 'すべて閉じる';
$lang->cmd_open_all = 'すべて開く';
$lang->cmd_reload = 'リロード';
$lang->cmd_close = '閉じる';
$lang->cmd_open = '開く';
$lang->cmd_setup = '設定';
$lang->cmd_addition_setup = '追加設定';
$lang->cmd_option = 'オプション';
$lang->cmd_apply = '適用';
$lang->cmd_open_calendar = 'カレンダーを開く';
$lang->cmd_send = '送信';
$lang->cmd_print = '印刷';
$lang->cmd_scrap = 'スクラップ';
$lang->cmd_preview = 'プレビュー';
$lang->cmd_reset = '初期化';
$lang->cmd_remake_cache = 'キャッシュファイル再生成';
$lang->cmd_publish = '発行';
$lang->cmd_layout_setup = 'レイアウト設定';
$lang->cmd_layout_edit = 'レイアウト編集';
$lang->cmd_search_by_ipaddress = 'IPアドレスで検索';
$lang->cmd_add_ip_to_spamfilter = 'スパムフィルターにIPを追加';
$lang->enable = '可能';
$lang->disable = '不可';
// 基本用語
$lang->menu = 'メニュー';
$lang->no = '番号';
$lang->notice = 'お知らせ';
$lang->secret = '非公開';
$lang->category = $lang->category_srl = 'カテゴリ';
$lang->none_category = 'カテゴリ無し';
$lang->none_image = 'イメージなし';
$lang->document_srl = '書き込み番号';
$lang->user_id = 'ユーザーID';
$lang->author = '作成者';
$lang->password = 'パスワード';
$lang->password1 = 'パスワード';
$lang->password2 = 'パスワード確認';
$lang->admin_id = '管理者ID';
$lang->writer = '投稿者';
$lang->user_name = '名前';
$lang->nick_name = 'ニックネーム';
$lang->email_address = 'メールアドレス';
$lang->homepage = 'ホームページ';
$lang->blog = 'ブログ';
$lang->birthday = 'お誕生日';
$lang->browser_title = 'ブラウザータイトル';
$lang->title = 'タイトル';
$lang->title_content = 'タイトル+内容';
$lang->topic = 'トピック';
$lang->replies = '返事';
$lang->content = '内容';
$lang->document = '書き込み';
$lang->comment = 'コメント';
$lang->description = '説明';
$lang->trackback = 'トラックバック';
$lang->tag = 'タグ';
$lang->allow_comment = 'コメント許可';
$lang->lock_comment = 'コメントロック';
$lang->allow_trackback = 'トラックバック許可';
$lang->uploaded_file = '添付';
$lang->grant = '権限';
$lang->target = '対象';
$lang->total = 'すべて';
$lang->total_count = 'トータル数';
$lang->ipaddress = 'IPアドレス';
$lang->path = 'パス';
$lang->cart = '選択項目';
$lang->friend = '友達';
$lang->notify = 'アラート';
$lang->order_target = 'ソート対象';
$lang->order_type = 'ソート方法';
$lang->order_asc = '昇る';
$lang->order_desc = '降下';
$lang->file = 'ファイル';
$lang->mid = 'モジュール名';
$lang->sid = 'バーチャルVirtualサイト名';
$lang->layout = 'レイアウト';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'ウィジェット';
$lang->module = 'モジュール';
$lang->skin = 'スキン';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'カラーセット';
$lang->extra_vars = '拡張変数';
$lang->domain = 'ドメイン';
$lang->url = 'URL';
$lang->document_url = '書き込みURL';
$lang->trackback_url = 'トラックバックURL';
$lang->blog_name = 'ブログ名';
$lang->excerpt = '抜粋';
$lang->document_count = '書き込み数';
$lang->page_count = 'ページ数';
$lang->list_count = 'リスト数';
$lang->search_list_count = '検索リスト数';
$lang->readed_count = '閲覧数';
$lang->voted_count = '推薦数';
$lang->comment_count = 'コメント数';
$lang->member_count = '会員数';
$lang->date = '日付';
$lang->regdate = '登録日';
$lang->last_update = '最近修正日';
$lang->last_post = '最近登録';
$lang->signup_date = '登録日';
$lang->last_login = '最近ログイン';
$lang->first_page = '最初のページ';
$lang->last_page = '最後のページ';
$lang->search_target = '検索対象';
$lang->search_keyword = 'キーワード';
$lang->is_default = 'デフォルト';
$lang->no_documents = '登録された書き込みがありません。';
$lang->board_manager = '掲示板管理';
$lang->member_manager = '会員管理';
$lang->layout_manager = 'レイアウト管理';
$lang->use = '使用';
$lang->notuse = '未使用';
$lang->not_exists = 'なし';
$lang->public = '公開';
$lang->private = '非公開';
$lang->unit_sec = '秒';
$lang->unit_min = '分';
$lang->unit_hour = '時';
$lang->unit_day = '日';
$lang->unit_month = '月';
$lang->unit_year = '年';
$lang->unit_week = array(
'Monday' => '月',
'Tuesday' => '火',
'Wednesday' => '水',
'Thursday' => '木',
'Friday' => '金',
'Saturday' => '土',
'Sunday' => '日',
);
$lang->unit_meridiem = array(
'am' => '午前',
'pm' => '午後',
'AM' => '午前',
'PM' => '午後',
);
$lang->time_gap = array(
'min' => '%d 分前',
'mins' => '%d 分前',
'hour' => '%d 時間前',
'hours' => '%d 時間前',
);
// 説明関連
$lang->about_tag = 'タグを入力する時、「,」(半角コンマ)を使うと複数登録出来ます。';
$lang->about_layout = 'レイアウトでモジュールの枠をデザインします。上段のレイアウトメニューで管理出来ます。';
// メッセージ関連
$lang->msg_call_server = 'サーバへ問合わせ中です。しばらくお待ち下さい。';
$lang->msg_db_not_setted = 'DBが設定されていません。';
$lang->msg_dbconnect_failed = "データベースアクセスにエラーが発生しました。\nデータベースの情報をもう一度確認して下さい。";
$lang->msg_invalid_queryid = 'クエリIDの値が無効です。';
$lang->msg_not_permitted = '権限がありません。';
$lang->msg_input_password = 'パスワードを入力して下さい。';
$lang->msg_invalid_document = '無効な書き込み番号です。';
$lang->msg_invalid_request = '無効なリクエストです。';
$lang->msg_invalid_password = 'パスワードが正しくありません。';
$lang->msg_error_occured = 'エラーが発生しました。';
$lang->msg_not_founded = '見つかりません。';
$lang->msg_no_result = '検索結果がありません。';
$lang->msg_fail_to_request_open = 'リクエストのアクセスに失敗しました。';
$lang->msg_invalid_format = '正しくないフォーマットです。';
$lang->msg_not_permitted_act = '現在の操作は実行する権限がありません。';
$lang->msg_module_is_not_exists = "動作に必要なモジュールが見つかりません。\nサイト管理者へモジュールの点検をお問い合わせ下さい。";
$lang->msg_module_is_not_standalone = 'このモジュールはスタンドアローンでは作動しません。';
$lang->msg_default_url_is_not_defined = 'デフォルトURLが定められてないため、動作を中止します。';
$lang->success_registed = '登録しました。';
$lang->success_declared = '通報しました。';
$lang->success_updated = '修正しました。';
$lang->success_deleted = '削除しました。';
$lang->success_restore = '復元しました。';
$lang->success_voted = '推薦しました。';
$lang->success_blamed = '非推薦しました。';
$lang->success_moved = '移動しました。';
$lang->success_sended = '送信しました。';
$lang->success_reset = '初期化しました。';
$lang->success_leaved = '退会しました。';
$lang->success_saved = '保存しました。';
$lang->fail_to_delete = '削除に失敗しました。';
$lang->fail_to_move = '移動に失敗しました。';
$lang->failed_voted = '推薦出来ません。';
$lang->failed_blamed = '非推薦出来ません。';
$lang->failed_declared = '通報出来ません。';
$lang->fail_to_delete_have_children = '返信の書き込みがあり、削除出来ません。';
$lang->confirm_submit = '登録しますか?';
$lang->confirm_logout = 'ログアウトしますか?';
$lang->confirm_vote = '推薦しますか?';
$lang->confirm_delete = '削除しますか?';
$lang->confirm_restore = '復元しますか?';
$lang->confirm_move = '移動しますか?';
$lang->confirm_reset = '初期化しますか?';
$lang->confirm_leave = '退会しますか?';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'タイプ';
$lang->column_type_list['text'] = '入力フィールド(text)';
$lang->column_type_list['homepage'] = 'URLタイプ(url)';
$lang->column_type_list['email_address'] = 'メールアドレスタイプ(email)';
$lang->column_type_list['tel'] = '電話番号タイプ(phone)';
$lang->column_type_list['textarea'] = 'テキストエリア(textarea)';
$lang->column_type_list['checkbox'] = 'チェックボックス(checkbox)';
$lang->column_type_list['select'] = '選択(select)';
$lang->column_type_list['radio'] = 'ラジオボタン (radio)';
$lang->column_type_list['kr_zip'] = '韓国住所(zip)';
$lang->column_type_list['date'] = '日付(年月日)';
//$lang->column_type_list['jp_zip'] = '日本住所(zip)';
$lang->column_name = 'コラム名';
$lang->column_title = 'コラムタイトル';
$lang->default_value = 'デフォルト値';
$lang->is_active = '活性化';
$lang->is_required = '必須項目';
$lang->eid = '拡張変数名';
// ftp関連
$lang->ftp_form_title = 'サーバーのFTP情報の入力';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTPポート番号port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP接続をテストする';
$lang->about_ftp_info = "
FTP情報は次の場合、利用されます。<br />
1. サーバー側のPHPの設定中、「safe_mode=On」になった際、FTP情報を用いてXEが正常に働くようにします。<br />
2. FTP経由でXEの自動アップデート等に使われます。<br />
FTP情報は「files/config/ftp.config.php」の中に保存されます。<br />
また、XEのインストールの後、管理者画面からFTP情報の変更・削除が可能です。省略可能 <br />
";
$lang->msg_safe_mode_ftp_needed = 'PHPのsafe_modeがOnの場合、FTP情報を登録することで、XEのインストール及び利用が可能になります。';
$lang->msg_ftp_not_connected = 'localhostへのFTP接続エラーが発生しました。FTPポート(port)番号をはじめ、FTPサービスが可能であるかをご確認下さい。';
$lang->msg_ftp_invalid_auth_info = 'ログインが失敗しました。 FTPアクセス情報を再度ご確認下さい。';
$lang->msg_ftp_mkdir_fail = 'FTPを用いたディレクトリ生成に失敗しました。FTPサーバーの設定を再度ご確認下さい。';
$lang->msg_ftp_chmod_fail = 'FTPを用いたディレクトリパーミッション(permission)変更に失敗しました。FTPサーバーの設定を再度ご確認下さい。';
$lang->msg_ftp_connect_success = 'FTP接続に成功しました。';
$lang->ftp_path_title = 'FTP 경로 정보 입력';
$lang->msg_ftp_installed_realpath = '설치된 XE의 절대경로';
$lang->msg_ftp_installed_ftp_realpath = '설치된 XE의 FTP 절대경로 설정';
// xml filterで用いられているjavascript用のアラートメッセージ
$lang->filter->isnull = '%sを入力して下さい。';
$lang->filter->outofrange = '%sの文字の長さを合わせて下さい。';
$lang->filter->equalto = '%sが正しくありません。';
$lang->filter->invalid_email = '%sのパターンが正しくありません。 (例: zbxe@xepressengine.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "%sの形式が正しくありません。\\n半角の英数と記号「_」を組み合わせて入力して下さい。頭字は半角英文字でなければなりません。";
$lang->filter->invalid_homepage = '%sの形式が正しくありません。 (例: http://www.xepressengine.com)';
$lang->filter->invalid_korean = '%sの形式が正しくありません。ハングルのみ入力して下さい。';
$lang->filter->invalid_korean_number = '%sの形式が正しくありません。ハングルと半角数字で入力して下さい。';
$lang->filter->invalid_alpha = '%sの形式が正しくありません。半角英文字のみ入力して下さい。';
$lang->filter->invalid_alpha_number = '%sの形式が正しくありません。半角英数で入力して下さい。';
$lang->filter->invalid_number = '%sの形式が正しくありません。半角数字で入力して下さい。';
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>
<?php
/**
* @file common/lang/jp.lang.php
* @author NHN (developers@xpressengine.com) 翻訳RisaPapa、ミニミ
* @brief 日本語言語パッケージ(基本的な実行関連の用語がまとめられている)
**/
// 基本的な実行に用いる用語
$lang->cmd_write = '書き込む';
$lang->cmd_reply = '返信';
$lang->cmd_delete = '削除';
$lang->cmd_modify = '修正';
$lang->cmd_edit = '編集';
$lang->cmd_view = '表示';
$lang->cmd_view_all = 'すべて表示';
$lang->cmd_list = 'リスト';
$lang->cmd_prev = '前へ';
$lang->cmd_next = '次へ';
$lang->cmd_send_trackback = 'トラックバック送信';
$lang->cmd_registration = $lang->cmd_submit = '登録';
$lang->cmd_comment_registration = 'コメント登録';
$lang->cmd_insert = '挿入';
$lang->cmd_save = '保存';
$lang->cmd_load = '読み込む';
$lang->cmd_input = '入力';
$lang->cmd_search = '検索';
$lang->cmd_find = '検索';
$lang->cmd_replace = '置換';
$lang->cmd_confirm = '確認';
$lang->cmd_cancel = '取り消し';
$lang->cmd_back = '戻る';
$lang->cmd_vote = '推薦';
$lang->cmd_vote_down = '非推薦';
$lang->cmd_declare = '通報';
$lang->cmd_cancel_declare = '通報取り消し';
$lang->cmd_declared_list = '通報リスト';
$lang->cmd_copy = 'コピー';
$lang->cmd_move = '移動';
$lang->cmd_move_up = '上へ';
$lang->cmd_move_down = '下へ';
$lang->cmd_add_indent = 'インデント';
$lang->cmd_remove_indent = '逆インデント';
$lang->cmd_management = '管理';
$lang->cmd_make = '作成';
$lang->cmd_select = '選択';
$lang->cmd_select_all = 'すべて選択';
$lang->cmd_unselect_all = 'すべて解除';
$lang->cmd_reverse_all = '選択の反転';
$lang->cmd_close_all = 'すべて閉じる';
$lang->cmd_open_all = 'すべて開く';
$lang->cmd_reload = 'リロード';
$lang->cmd_close = '閉じる';
$lang->cmd_open = '開く';
$lang->cmd_setup = '設定';
$lang->cmd_addition_setup = '追加設定';
$lang->cmd_option = 'オプション';
$lang->cmd_apply = '適用';
$lang->cmd_open_calendar = 'カレンダーを開く';
$lang->cmd_send = '送信';
$lang->cmd_print = '印刷';
$lang->cmd_scrap = 'スクラップ';
$lang->cmd_preview = 'プレビュー';
$lang->cmd_reset = '初期化';
$lang->cmd_remake_cache = 'キャッシュファイル再生成';
$lang->cmd_publish = '発行';
$lang->cmd_layout_setup = 'レイアウト設定';
$lang->cmd_layout_edit = 'レイアウト編集';
$lang->cmd_search_by_ipaddress = 'IPアドレスで検索';
$lang->cmd_add_ip_to_spamfilter = 'スパムフィルターにIPを追加';
$lang->enable = '可能';
$lang->disable = '不可';
// 基本用語
$lang->menu = 'メニュー';
$lang->no = '番号';
$lang->notice = 'お知らせ';
$lang->secret = '非公開';
$lang->category = $lang->category_srl = 'カテゴリ';
$lang->none_category = 'カテゴリ無し';
$lang->none_image = 'イメージなし';
$lang->document_srl = '書き込み番号';
$lang->user_id = 'ユーザーID';
$lang->author = '作成者';
$lang->password = 'パスワード';
$lang->password1 = 'パスワード';
$lang->password2 = 'パスワード確認';
$lang->admin_id = '管理者ID';
$lang->writer = '投稿者';
$lang->user_name = '名前';
$lang->nick_name = 'ニックネーム';
$lang->email_address = 'メールアドレス';
$lang->homepage = 'ホームページ';
$lang->blog = 'ブログ';
$lang->birthday = 'お誕生日';
$lang->browser_title = 'ブラウザータイトル';
$lang->title = 'タイトル';
$lang->title_content = 'タイトル+内容';
$lang->topic = 'トピック';
$lang->replies = '返事';
$lang->content = '内容';
$lang->document = '書き込み';
$lang->comment = 'コメント';
$lang->description = '説明';
$lang->trackback = 'トラックバック';
$lang->tag = 'タグ';
$lang->allow_comment = 'コメント許可';
$lang->lock_comment = 'コメントロック';
$lang->allow_trackback = 'トラックバック許可';
$lang->uploaded_file = '添付';
$lang->grant = '権限';
$lang->target = '対象';
$lang->total = 'すべて';
$lang->total_count = 'トータル数';
$lang->ipaddress = 'IPアドレス';
$lang->path = 'パス';
$lang->cart = '選択項目';
$lang->friend = '友達';
$lang->notify = 'アラート';
$lang->order_target = 'ソート対象';
$lang->order_type = 'ソート方法';
$lang->order_asc = '昇る';
$lang->order_desc = '降下';
$lang->file = 'ファイル';
$lang->mid = 'モジュール名';
$lang->sid = 'バーチャルVirtualサイト名';
$lang->layout = 'レイアウト';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'ウィジェット';
$lang->module = 'モジュール';
$lang->skin = 'スキン';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'カラーセット';
$lang->extra_vars = '拡張変数';
$lang->domain = 'ドメイン';
$lang->url = 'URL';
$lang->document_url = '書き込みURL';
$lang->trackback_url = 'トラックバックURL';
$lang->blog_name = 'ブログ名';
$lang->excerpt = '抜粋';
$lang->document_count = '書き込み数';
$lang->page_count = 'ページ数';
$lang->list_count = 'リスト数';
$lang->search_list_count = '検索リスト数';
$lang->readed_count = '閲覧数';
$lang->voted_count = '推薦数';
$lang->comment_count = 'コメント数';
$lang->member_count = '会員数';
$lang->date = '日付';
$lang->regdate = '登録日';
$lang->last_update = '最近修正日';
$lang->last_post = '最近登録';
$lang->signup_date = '登録日';
$lang->last_login = '最近ログイン';
$lang->first_page = '最初のページ';
$lang->last_page = '最後のページ';
$lang->search_target = '検索対象';
$lang->search_keyword = 'キーワード';
$lang->is_default = 'デフォルト';
$lang->no_documents = '登録された書き込みがありません。';
$lang->board_manager = '掲示板管理';
$lang->member_manager = '会員管理';
$lang->layout_manager = 'レイアウト管理';
$lang->use = '使用';
$lang->notuse = '未使用';
$lang->not_exists = 'なし';
$lang->public = '公開';
$lang->private = '非公開';
$lang->unit_sec = '秒';
$lang->unit_min = '分';
$lang->unit_hour = '時';
$lang->unit_day = '日';
$lang->unit_month = '月';
$lang->unit_year = '年';
$lang->unit_week = array(
'Monday' => '月',
'Tuesday' => '火',
'Wednesday' => '水',
'Thursday' => '木',
'Friday' => '金',
'Saturday' => '土',
'Sunday' => '日',
);
$lang->unit_meridiem = array(
'am' => '午前',
'pm' => '午後',
'AM' => '午前',
'PM' => '午後',
);
$lang->time_gap = array(
'min' => '%d 分前',
'mins' => '%d 分前',
'hour' => '%d 時間前',
'hours' => '%d 時間前',
);
// 説明関連
$lang->about_tag = 'タグを入力する時、「,」(半角コンマ)を使うと複数登録出来ます。';
$lang->about_layout = 'レイアウトでモジュールの枠をデザインします。上段のレイアウトメニューで管理出来ます。';
// メッセージ関連
$lang->msg_call_server = 'サーバへ問合わせ中です。しばらくお待ち下さい。';
$lang->msg_db_not_setted = 'DBが設定されていません。';
$lang->msg_dbconnect_failed = "データベースアクセスにエラーが発生しました。\nデータベースの情報をもう一度確認して下さい。";
$lang->msg_invalid_queryid = 'クエリIDの値が無効です。';
$lang->msg_not_permitted = '権限がありません。';
$lang->msg_input_password = 'パスワードを入力して下さい。';
$lang->msg_invalid_document = '無効な書き込み番号です。';
$lang->msg_invalid_request = '無効なリクエストです。';
$lang->msg_invalid_password = 'パスワードが正しくありません。';
$lang->msg_error_occured = 'エラーが発生しました。';
$lang->msg_not_founded = '見つかりません。';
$lang->msg_no_result = '検索結果がありません。';
$lang->msg_fail_to_request_open = 'リクエストのアクセスに失敗しました。';
$lang->msg_invalid_format = '正しくないフォーマットです。';
$lang->msg_not_permitted_act = '現在の操作は実行する権限がありません。';
$lang->msg_module_is_not_exists = "動作に必要なモジュールが見つかりません。\nサイト管理者へモジュールの点検をお問い合わせ下さい。";
$lang->msg_module_is_not_standalone = 'このモジュールはスタンドアローンでは作動しません。';
$lang->msg_default_url_is_not_defined = 'デフォルトURLが定められてないため、動作を中止します。';
$lang->success_registed = '登録しました。';
$lang->success_declared = '通報しました。';
$lang->success_updated = '修正しました。';
$lang->success_deleted = '削除しました。';
$lang->success_restore = '復元しました。';
$lang->success_voted = '推薦しました。';
$lang->success_blamed = '非推薦しました。';
$lang->success_moved = '移動しました。';
$lang->success_sended = '送信しました。';
$lang->success_reset = '初期化しました。';
$lang->success_leaved = '退会しました。';
$lang->success_saved = '保存しました。';
$lang->fail_to_delete = '削除に失敗しました。';
$lang->fail_to_move = '移動に失敗しました。';
$lang->failed_voted = '推薦出来ません。';
$lang->failed_blamed = '非推薦出来ません。';
$lang->failed_declared = '通報出来ません。';
$lang->fail_to_delete_have_children = '返信の書き込みがあり、削除出来ません。';
$lang->confirm_submit = '登録しますか?';
$lang->confirm_logout = 'ログアウトしますか?';
$lang->confirm_vote = '推薦しますか?';
$lang->confirm_delete = '削除しますか?';
$lang->confirm_restore = '復元しますか?';
$lang->confirm_move = '移動しますか?';
$lang->confirm_reset = '初期化しますか?';
$lang->confirm_leave = '退会しますか?';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'タイプ';
$lang->column_type_list['text'] = '入力フィールド(text)';
$lang->column_type_list['homepage'] = 'URLタイプ(url)';
$lang->column_type_list['email_address'] = 'メールアドレスタイプ(email)';
$lang->column_type_list['tel'] = '電話番号タイプ(phone)';
$lang->column_type_list['textarea'] = 'テキストエリア(textarea)';
$lang->column_type_list['checkbox'] = 'チェックボックス(checkbox)';
$lang->column_type_list['select'] = '選択(select)';
$lang->column_type_list['radio'] = 'ラジオボタン (radio)';
$lang->column_type_list['kr_zip'] = '韓国住所(zip)';
$lang->column_type_list['date'] = '日付(年月日)';
//$lang->column_type_list['jp_zip'] = '日本住所(zip)';
$lang->column_name = 'コラム名';
$lang->column_title = 'コラムタイトル';
$lang->default_value = 'デフォルト値';
$lang->is_active = '活性化';
$lang->is_required = '必須項目';
$lang->eid = '拡張変数名';
// ftp関連
$lang->ftp_form_title = 'サーバーのFTP情報の入力';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTPポート番号port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP接続をテストする';
$lang->about_ftp_info = "
FTP情報は次の場合、利用されます。<br />
1. サーバー側のPHPの設定中、「safe_mode=On」になった際、FTP情報を用いてXEが正常に働くようにします。<br />
2. FTP経由でXEの自動アップデート等に使われます。<br />
FTP情報は「files/config/ftp.config.php」の中に保存されます。<br />
また、XEのインストールの後、管理者画面からFTP情報の変更・削除が可能です。省略可能 <br />
";
$lang->msg_safe_mode_ftp_needed = 'PHPのsafe_modeがOnの場合、FTP情報を登録することで、XEのインストール及び利用が可能になります。';
$lang->msg_ftp_not_connected = 'localhostへのFTP接続エラーが発生しました。FTPポート(port)番号をはじめ、FTPサービスが可能であるかをご確認下さい。';
$lang->msg_ftp_invalid_auth_info = 'ログインが失敗しました。 FTPアクセス情報を再度ご確認下さい。';
$lang->msg_ftp_mkdir_fail = 'FTPを用いたディレクトリ生成に失敗しました。FTPサーバーの設定を再度ご確認下さい。';
$lang->msg_ftp_chmod_fail = 'FTPを用いたディレクトリパーミッション(permission)変更に失敗しました。FTPサーバーの設定を再度ご確認下さい。';
$lang->msg_ftp_connect_success = 'FTP接続に成功しました。';
$lang->ftp_path_title = 'FTP 경로 정보 입력';
$lang->msg_ftp_installed_realpath = '설치된 XE의 절대경로';
$lang->msg_ftp_installed_ftp_realpath = '설치된 XE의 FTP 절대경로 설정';
// xml filterで用いられているjavascript用のアラートメッセージ
$lang->filter->isnull = '%sを入力して下さい。';
$lang->filter->outofrange = '%sの文字の長さを合わせて下さい。';
$lang->filter->equalto = '%sが正しくありません。';
$lang->filter->invalid_email = '%sのパターンが正しくありません。 (例: zbxe@xepressengine.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "%sの形式が正しくありません。\\n半角の英数と記号「_」を組み合わせて入力して下さい。頭字は半角英文字でなければなりません。";
$lang->filter->invalid_homepage = '%sの形式が正しくありません。 (例: http://www.xepressengine.com)';
$lang->filter->invalid_korean = '%sの形式が正しくありません。ハングルのみ入力して下さい。';
$lang->filter->invalid_korean_number = '%sの形式が正しくありません。ハングルと半角数字で入力して下さい。';
$lang->filter->invalid_alpha = '%sの形式が正しくありません。半角英文字のみ入力して下さい。';
$lang->filter->invalid_alpha_number = '%sの形式が正しくありません。半角英数で入力して下さい。';
$lang->filter->invalid_number = '%sの形式が正しくありません。半角数字で入力して下さい。';
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>

View file

@ -1,7 +1,7 @@
<?php
/**
* @file common/lang/ko.lang.php
* @author zero (zero@nzeo.com)
* @author NHN (developers@xpressengine.com)
* @brief 한국어 언어팩 (기본적인 내용만 수록)
**/

View file

@ -1,319 +1,319 @@
<?php
/**
* @file common/lang/ko.lang.php
* @author zero (zero@nzeo.com)
* @brief 한국어 언어팩 (기본적인 내용만 수록)
**/
// 기본적으로 사용되는 action 언어
$lang->cmd_write = 'Бичих';
$lang->cmd_reply = 'Хариу';
$lang->cmd_delete = 'Устгах';
$lang->cmd_modify = 'Засах';
$lang->cmd_edit = 'Өөрчлөх';
$lang->cmd_view = 'Харах';
$lang->cmd_view_all = 'Бүгдийг харах';
$lang->cmd_list = 'Жагсаалт';
$lang->cmd_prev = 'Өмнөх';
$lang->cmd_next = 'Дараах';
$lang->cmd_send_trackback = 'Холбоотой бичлэг илгээх';
$lang->cmd_registration = $lang->cmd_submit = 'Оруулах';
$lang->cmd_comment_registration = 'Коммент бичих';
$lang->cmd_insert = 'Нэмэх';
$lang->cmd_save = 'Хадгалах';
$lang->cmd_load = 'Дуудах';
$lang->cmd_input = 'Оруулах';
$lang->cmd_search = 'Хайх';
$lang->cmd_find = 'Хайх';
$lang->cmd_replace = 'Солих';
$lang->cmd_confirm = 'ОК';
$lang->cmd_cancel = 'Устгах';
$lang->cmd_back = 'Буцах';
$lang->cmd_vote = 'Санал болгох';
$lang->cmd_vote_down = 'Санал болгохгүй';
$lang->cmd_declare = 'Мэдээлэх';
$lang->cmd_cancel_declare = 'Мэдэгдлийг устгах';
$lang->cmd_declared_list = 'Мэдээлсэн жагсаалт';
$lang->cmd_copy = 'Хуулах';
$lang->cmd_move = 'Шилжих';
$lang->cmd_move_up = 'Дээш';
$lang->cmd_move_down = 'Доош';
$lang->cmd_add_indent = 'Нэмж оруулах';
$lang->cmd_remove_indent = 'Хасах';
$lang->cmd_management = 'Удирдах';
$lang->cmd_make = 'Харуулах';
$lang->cmd_select = 'Сонгох';
$lang->cmd_select_all = 'Бүгдийг сонгох';
$lang->cmd_unselect_all = 'Сонголтыг болих';
$lang->cmd_reverse_all = "Дахин сонгох";
$lang->cmd_close_all = 'Бүгдийг хаах';
$lang->cmd_open_all = 'Бүгдийг нээх';
$lang->cmd_reload = 'Дахин унших';
$lang->cmd_close = 'Хаах';
$lang->cmd_open = 'Нээх';
$lang->cmd_setup = 'Тохируулга';
$lang->cmd_addition_setup = 'Нэмэлт тохируулга';
$lang->cmd_option = 'Опшион';
$lang->cmd_apply = 'Хэрэгжүүлэх';
$lang->cmd_open_calendar = 'Календар сонгох';
$lang->cmd_send = 'Илгээх';
$lang->cmd_print = 'Хэвлэх';
$lang->cmd_scrap = 'Скрап';
$lang->cmd_preview = 'Урьдчилан харах';
$lang->cmd_reset = 'Дахин тохируулах';
$lang->cmd_remake_cache = "cache файл дахин хийх";
$lang->cmd_publish = "Олгох";
$lang->cmd_layout_setup = 'Лэйаут тохируулах';
$lang->cmd_layout_edit = 'Лэйаут өөрчлөх';
$lang->cmd_search_by_ipaddress = 'IP хаягаар хайх';
$lang->cmd_add_ip_to_spamfilter = 'Спэм филтерт IPнэмэх';
$lang->enable = 'Боломжтой';
$lang->disable = 'Боломжгүй';
// 기본 단어
$lang->menu = 'Menu';
$lang->no = 'Дугаар';
$lang->notice = 'Зарлал';
$lang->secret = 'Нууц';
$lang->category = $lang->category_srl = 'Категори';
$lang->none_category = 'Категори байхгүй';
$lang->none_image = 'No image';
$lang->document_srl = 'Баримтын дугаар';
$lang->user_id = 'ID';
$lang->author = 'Бичсэн';
$lang->password = 'Нууц дугаар';
$lang->password1 = 'Нууц дугаар';
$lang->password2 = 'Нууц дугаар шалгах';
$lang->admin_id = 'Хариуцагч ID';
// $lang->writer = 'Бичлэг оруулагч';
$lang->writer = 'Нэр';
$lang->user_name = 'Нэр';
$lang->nick_name = 'Ник';
$lang->email_address = 'Мэйл хаяг';
$lang->homepage = 'Вебхуудас';
$lang->blog = 'Блог';
$lang->birthday = 'Төрсөн өдөр';
$lang->browser_title = 'Browser гарчиг';
$lang->title = 'Гарчиг';
$lang->title_content = 'Гарчиг+ Агуулга';
$lang->topic = 'Сэдэв';
$lang->replies = 'Хариулах';
$lang->content = 'Агуулга';
$lang->document = 'Бичлэг';
$lang->comment = 'Коммент';
$lang->description = 'Тайлбар';
$lang->trackback = 'Холбоотой бичлэг';
$lang->tag = 'tag';
$lang->allow_comment = 'Коммент зөвшөөрнө';
$lang->lock_comment = 'Коммент түгжих';
$lang->allow_trackback = 'Холбоотой бичлэг зөвшөөрнө';
$lang->uploaded_file = 'Файл оруулах';
$lang->grant = 'Эрх';
$lang->target = 'Зорилго';
$lang->total = 'Нийт';
$lang->total_count = 'Нийт тоо';
$lang->ipaddress = 'IP хаяг';
$lang->path = 'Байрлал';
$lang->cart = 'Сонгосон төрөл';
$lang->friend = 'Найз';
$lang->notify = 'Мэдээлэх';
$lang->order_target = 'Цэгцлэх зорилго';
$lang->order_type = 'Цэгцлэх арга';
$lang->order_asc = 'Багаас ихрүү';
$lang->order_desc = 'Ихээс бага руу';
$lang->file = 'file';
$lang->mid = 'Модиул нэр';
$lang->sid = 'Тvр сайтын нэр';
$lang->layout = 'Лэйаут';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Вижет ';
$lang->module = 'Модиул';
$lang->skin = 'Скин';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'Өнгө тохируулах';
$lang->extra_vars = 'Өргөжүүлэх тоо';
$lang->domain = 'Domain';
$lang->url = 'URL';
$lang->document_url = 'Бичлэгийн хаяг';
$lang->trackback_url = 'Холбоотой бичлэгний хаяг';
$lang->blog_name = 'Блог нэр';
$lang->excerpt = 'excerpt';
$lang->document_count = 'Бичлэгийн тоо';
$lang->page_count = 'Хуудасны тоо';
$lang->list_count = 'Жагсаалтын тоо';
$lang->search_list_count = 'Хайлтын жагсаалт';
$lang->readed_count = 'Уншсан';
$lang->voted_count = 'vote';
$lang->comment_count = 'Комментын тоо';
$lang->member_count = 'Гишүүдийн тоо';
$lang->date = 'Date';
$lang->regdate = 'Оруулсан өдөр';
$lang->last_update = 'Сүүлд засварласан өдөр';
$lang->last_post = 'Хамгийн сүүлд оруулсан';
$lang->signup_date = 'Бүртгүүлсэн өдөр';
$lang->last_login = 'Хамгийн сүүлд нэвтэрсэн';
$lang->first_page = 'Эхний хуудас';
$lang->last_page = 'Сүүлчийн хуудас';
$lang->search_target = 'Хайх зорилго';
$lang->search_keyword = 'Хайх үг';
$lang->is_default = 'Үндсэн';
$lang->no_documents = 'Оруулсан бичлэг байхгүй';
$lang->board_manager = 'Board удирдах';
$lang->member_manager = 'Гишүүн удирдах';
$lang->layout_manager = 'Лэйаут удирдах';
$lang->use = 'Хэрэглэх';
$lang->notuse = 'Хэрэглэхгүй';
$lang->not_exists = 'Байхгүй';
$lang->public = 'Нийтийн';
$lang->private = 'Нууцлах';
$lang->unit_sec = 'Секунд';
$lang->unit_min = 'Минут';
$lang->unit_hour = 'Цаг';
$lang->unit_day = 'Өдөр';
$lang->unit_month = 'Сар';
$lang->unit_year = 'Жил';
$lang->unit_week = array(
'Monday' => 'Да',
'Tuesday' => 'Мя',
'Wednesday' => 'Лха',
'Thursday' => 'Пv',
'Friday' => 'Ба',
'Saturday' => 'Бя',
'Sunday' => 'Ня',
);
$lang->unit_meridiem = array(
'am' => 'eглee',
'pm' => 'орой',
'AM' => 'eглee',
'PM' => 'орой',
);
$lang->time_gap = array(
'min' => '%d минутын eмнe',
'mins' => '%d минутын eмнe',
'hour' => '%d цагийн eмнe',
'hours' => '%d цагийн eмнe',
);
// 설명 관련
$lang->about_tag = 'tag оруулахдаа таслал ашиглавал давтан оруулж болно';
$lang->about_layout = 'Лэйаут нь модиулын гадаад байдлыг чимж өгнө. Дээрх лэйаут менюнээс удирдаж болно';
// 메세지 관련
$lang->msg_call_server = 'Сервер ачаалж байна. Түр хүлээнэ үү.';
$lang->msg_db_not_setted = 'DB тохируулга хийгдээгүй байна.';
$lang->msg_invalid_queryid = 'Query ID буруу бичигдсэн байна.';
$lang->msg_not_permitted = 'Эрх байхгүй байна';
$lang->msg_input_password = 'Нууц дугаараа оруулна уу';
$lang->msg_invalid_document = 'Бичлэгийн дугаар буруу байна';
$lang->msg_invalid_request = 'Буруу шаардлага байна';
$lang->msg_invalid_password = 'Нууц дугаар буруу байна';
$lang->msg_error_occured = 'Алдаа гарлаа';
$lang->msg_not_founded = 'Зорилгыг олж чадсангүйү';
$lang->msg_no_result = 'Хайлтын үр дүн байхгүй байна';
$lang->msg_fail_to_request_open = 'Холболт амжилтгvй боллоо.';
$lang->msg_invalid_format = 'Буруу хэлбэр байна.';
$lang->msg_not_permitted_act = 'Хүсэлт гаргасан үйлдлийг хэрэгжүүлэх эрх байхгүй.';
$lang->msg_module_is_not_exists = 'Хүссэн модиулыг олж чадсангүй';
$lang->msg_module_is_not_standalone = 'Хүсэлт гаргасан модиул нь бие даан хэрэгжих боломжгүй';
$lang->success_registed = 'Бүртгэгдсэн';
$lang->success_declared = 'Мэдээлэгдсэн';
$lang->success_updated = 'Засварлагдсан';
$lang->success_deleted = 'Устгагдсан';
$lang->success_voted = 'Санал болгогдсон';
$lang->success_blamed = 'Санал болгогдоогүй';
$lang->success_moved = 'Шилжсэн';
$lang->success_sended = 'Илгээгдсэн';
$lang->success_reset = 'Reset';
$lang->success_leaved = 'Гишүүнээс гарсан';
$lang->success_saved = 'Хадгалагдсан';
$lang->fail_to_delete = 'Устгалт амжилтгүй боллоо';
$lang->fail_to_move = 'Шилжилт амжилтгүй боллоо';
$lang->failed_voted = 'Санал болгох боломжгүй';
$lang->failed_blamed = 'Санал болгохгүй байх боломжгүй';
$lang->failed_declared = 'Мэдээлэх боломжгүй';
$lang->fail_to_delete_have_children = 'Хариулт бичлэг байгаа тул устгах боломжгүй';
$lang->confirm_submit = 'Оруулах уу?';
$lang->confirm_logout = 'Гарах уу?';
$lang->confirm_vote = 'Санал болгох уу?';
$lang->confirm_delete = 'Устгах уу?';
$lang->confirm_move = 'Шилжих үү?';
$lang->confirm_reset = 'Reset хийх үү?';
$lang->confirm_leave = 'Гишүүнээс гарах уу?';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'Хэлбэр';
$lang->column_type_list['text'] = 'Нэг мөрөөр оруулах (text)';
$lang->column_type_list['homepage'] = 'Веб хуудас хэлбэр (url)';
$lang->column_type_list['email_address'] = 'Мэйл хэлбэр (email)';
$lang->column_type_list['tel'] = 'Утасны дугаар хэлбэр (phone)';
$lang->column_type_list['textarea'] = 'Олон мөрөөр оруулах (textarea)';
$lang->column_type_list['checkbox'] = 'Олон сонголт хийх (checkbox)';
$lang->column_type_list['select'] = 'Ганц сонголт хийх (select)';
$lang->column_type_list['radio'] = 'Нэг eдeр сонгох(radio)';
$lang->column_type_list['kr_zip'] = 'Солонгос хаяг (zip)';
$lang->column_type_list['date'] = 'Онсар (Жил сар өдөр)';
//$lang->column_type_list['jp_zip'] = '일본주소 (zip)';
$lang->column_name = 'Баганын нэр';
$lang->column_title = 'Баганын гарчиг';
$lang->default_value = 'Үндсэн байдал';
$lang->is_active = 'Идэвхжүүлэх';
$lang->is_required = 'Заавал бөглөх';
$lang->eid = 'eгeдлийн нэр';
// ftp 관련
$lang->ftp_form_title = 'FTP мэдээлэл оруулах';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP холболт шалгах';
$lang->about_ftp_info = "
FTP мэдээлэл нь дараах тохиолдолд хэрэглэгдэх боломжтой.<br />
1. PHP의 safe_mode=Onбайх тохиолдолд , FTP мэдээллийг ашиглан XE-г бvрэн ажиллуулахаар болгож болно.<br />
2. Автомат опдэйт хийх зэрэгт FTP мэдээллийг ашиглаж болно.<br />
Тус FTP мэпээлэл нь files/config/ftp.config.php файл дотор хадгалагдна.<br />
Идэвхжvvлсэний дараа хариуцагчийн хуудаснаас FTP мэдээллийг eeрчлeх болон устгаж болно.<br />
";
$lang->msg_safe_mode_ftp_needed = 'PHP의 safe_mode가 Onбайх тохиолдолд , FTP мэдээллийг заавал оруулснаар XE идэвжvvлэх болон хэрэглэх боломжтой болно.';
$lang->msg_ftp_not_connected = 'localhost-ын FTP холболт амжилтгvй боллоо. FTP дугаараа шалгах буюу эсвэл FTP vйлчилгээг ашиглах боломжтой эсэхээ шалгана уу.';
$lang->msg_ftp_invalid_auth_info = 'Таны оруулсан FTP мэдээллээр нэвтэрч чадсангvй. FTPмэдээллээ шалгана уу.';
$lang->msg_ftp_mkdir_fail = 'FTP-г ашиглан eгсeн eгeгдлийг биелvvлж чадсангvй. FTP серверийн идэвхжvvлэлтээ шалгана уу.';
$lang->msg_ftp_chmod_fail = 'FTP-г ашиглан eeрчлeлтийг хийж чадсангvй. FTP серверийн идэвхжvvлэлтээ шалгана уу.';
$lang->msg_ftp_connect_success = 'FTP холболт болон баталгаажуулалт хийгдлээ.';
// xml filter에서 사용되는 javascript용 alert msg
$lang->filter->isnull = '%s-ийг оруулна уу';
$lang->filter->outofrange = '%s-ийн үсгийн тоог тааруулна уу.';
$lang->filter->equalto = '%s-ыг буруу оруулсан байна.';
$lang->filter->invalid_email = '%s-ын хэлбэрийг буруу оруулсан байна. (Жнь: zbxe@zeroboard.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "%s-ын хэлбэр буруу байна. .\\n Латин vсэг, тоо болон \'_\'-р оруулж болох бeгeeд эхлэл нь vсэг байх шаардлагатай. ";
$lang->filter->invalid_homepage = '%s-ын хэлбэр буруу байна.. (Жнь: http://www.zeroboard.com)';
$lang->filter->invalid_korean = '%s-ын хэлбэр буруу байна. Солонгосоор оруулах ёстой';
$lang->filter->invalid_korean_number = '%s-ын хэлбэр буруу байна. Солонгос үсэг болон тоогоор оруулах хэрэгтэй.';
$lang->filter->invalid_alpha = '%s-ын хэлбэр буруу байна. Зөвхөн латин үсгээр оруулах ёстой';
$lang->filter->invalid_alpha_number = '%s-ын хэлбэр буруу байна. Зөвхөн латин үсэг болон тоогоор л оруулах ёстой.';
$lang->filter->invalid_number = '%s-ын хэлбэр буруу байна. Зөвхөн тоогоор оруулах ёстой.';
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>
<?php
/**
* @file common/lang/ko.lang.php
* @author NHN (developers@xpressengine.com)
* @brief 한국어 언어팩 (기본적인 내용만 수록)
**/
// 기본적으로 사용되는 action 언어
$lang->cmd_write = 'Бичих';
$lang->cmd_reply = 'Хариу';
$lang->cmd_delete = 'Устгах';
$lang->cmd_modify = 'Засах';
$lang->cmd_edit = 'Өөрчлөх';
$lang->cmd_view = 'Харах';
$lang->cmd_view_all = 'Бүгдийг харах';
$lang->cmd_list = 'Жагсаалт';
$lang->cmd_prev = 'Өмнөх';
$lang->cmd_next = 'Дараах';
$lang->cmd_send_trackback = 'Холбоотой бичлэг илгээх';
$lang->cmd_registration = $lang->cmd_submit = 'Оруулах';
$lang->cmd_comment_registration = 'Коммент бичих';
$lang->cmd_insert = 'Нэмэх';
$lang->cmd_save = 'Хадгалах';
$lang->cmd_load = 'Дуудах';
$lang->cmd_input = 'Оруулах';
$lang->cmd_search = 'Хайх';
$lang->cmd_find = 'Хайх';
$lang->cmd_replace = 'Солих';
$lang->cmd_confirm = 'ОК';
$lang->cmd_cancel = 'Устгах';
$lang->cmd_back = 'Буцах';
$lang->cmd_vote = 'Санал болгох';
$lang->cmd_vote_down = 'Санал болгохгүй';
$lang->cmd_declare = 'Мэдээлэх';
$lang->cmd_cancel_declare = 'Мэдэгдлийг устгах';
$lang->cmd_declared_list = 'Мэдээлсэн жагсаалт';
$lang->cmd_copy = 'Хуулах';
$lang->cmd_move = 'Шилжих';
$lang->cmd_move_up = 'Дээш';
$lang->cmd_move_down = 'Доош';
$lang->cmd_add_indent = 'Нэмж оруулах';
$lang->cmd_remove_indent = 'Хасах';
$lang->cmd_management = 'Удирдах';
$lang->cmd_make = 'Харуулах';
$lang->cmd_select = 'Сонгох';
$lang->cmd_select_all = 'Бүгдийг сонгох';
$lang->cmd_unselect_all = 'Сонголтыг болих';
$lang->cmd_reverse_all = "Дахин сонгох";
$lang->cmd_close_all = 'Бүгдийг хаах';
$lang->cmd_open_all = 'Бүгдийг нээх';
$lang->cmd_reload = 'Дахин унших';
$lang->cmd_close = 'Хаах';
$lang->cmd_open = 'Нээх';
$lang->cmd_setup = 'Тохируулга';
$lang->cmd_addition_setup = 'Нэмэлт тохируулга';
$lang->cmd_option = 'Опшион';
$lang->cmd_apply = 'Хэрэгжүүлэх';
$lang->cmd_open_calendar = 'Календар сонгох';
$lang->cmd_send = 'Илгээх';
$lang->cmd_print = 'Хэвлэх';
$lang->cmd_scrap = 'Скрап';
$lang->cmd_preview = 'Урьдчилан харах';
$lang->cmd_reset = 'Дахин тохируулах';
$lang->cmd_remake_cache = "cache файл дахин хийх";
$lang->cmd_publish = "Олгох";
$lang->cmd_layout_setup = 'Лэйаут тохируулах';
$lang->cmd_layout_edit = 'Лэйаут өөрчлөх';
$lang->cmd_search_by_ipaddress = 'IP хаягаар хайх';
$lang->cmd_add_ip_to_spamfilter = 'Спэм филтерт IPнэмэх';
$lang->enable = 'Боломжтой';
$lang->disable = 'Боломжгүй';
// 기본 단어
$lang->menu = 'Menu';
$lang->no = 'Дугаар';
$lang->notice = 'Зарлал';
$lang->secret = 'Нууц';
$lang->category = $lang->category_srl = 'Категори';
$lang->none_category = 'Категори байхгүй';
$lang->none_image = 'No image';
$lang->document_srl = 'Баримтын дугаар';
$lang->user_id = 'ID';
$lang->author = 'Бичсэн';
$lang->password = 'Нууц дугаар';
$lang->password1 = 'Нууц дугаар';
$lang->password2 = 'Нууц дугаар шалгах';
$lang->admin_id = 'Хариуцагч ID';
// $lang->writer = 'Бичлэг оруулагч';
$lang->writer = 'Нэр';
$lang->user_name = 'Нэр';
$lang->nick_name = 'Ник';
$lang->email_address = 'Мэйл хаяг';
$lang->homepage = 'Вебхуудас';
$lang->blog = 'Блог';
$lang->birthday = 'Төрсөн өдөр';
$lang->browser_title = 'Browser гарчиг';
$lang->title = 'Гарчиг';
$lang->title_content = 'Гарчиг+ Агуулга';
$lang->topic = 'Сэдэв';
$lang->replies = 'Хариулах';
$lang->content = 'Агуулга';
$lang->document = 'Бичлэг';
$lang->comment = 'Коммент';
$lang->description = 'Тайлбар';
$lang->trackback = 'Холбоотой бичлэг';
$lang->tag = 'tag';
$lang->allow_comment = 'Коммент зөвшөөрнө';
$lang->lock_comment = 'Коммент түгжих';
$lang->allow_trackback = 'Холбоотой бичлэг зөвшөөрнө';
$lang->uploaded_file = 'Файл оруулах';
$lang->grant = 'Эрх';
$lang->target = 'Зорилго';
$lang->total = 'Нийт';
$lang->total_count = 'Нийт тоо';
$lang->ipaddress = 'IP хаяг';
$lang->path = 'Байрлал';
$lang->cart = 'Сонгосон төрөл';
$lang->friend = 'Найз';
$lang->notify = 'Мэдээлэх';
$lang->order_target = 'Цэгцлэх зорилго';
$lang->order_type = 'Цэгцлэх арга';
$lang->order_asc = 'Багаас ихрүү';
$lang->order_desc = 'Ихээс бага руу';
$lang->file = 'file';
$lang->mid = 'Модиул нэр';
$lang->sid = 'Тvр сайтын нэр';
$lang->layout = 'Лэйаут';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Вижет ';
$lang->module = 'Модиул';
$lang->skin = 'Скин';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'Өнгө тохируулах';
$lang->extra_vars = 'Өргөжүүлэх тоо';
$lang->domain = 'Domain';
$lang->url = 'URL';
$lang->document_url = 'Бичлэгийн хаяг';
$lang->trackback_url = 'Холбоотой бичлэгний хаяг';
$lang->blog_name = 'Блог нэр';
$lang->excerpt = 'excerpt';
$lang->document_count = 'Бичлэгийн тоо';
$lang->page_count = 'Хуудасны тоо';
$lang->list_count = 'Жагсаалтын тоо';
$lang->search_list_count = 'Хайлтын жагсаалт';
$lang->readed_count = 'Уншсан';
$lang->voted_count = 'vote';
$lang->comment_count = 'Комментын тоо';
$lang->member_count = 'Гишүүдийн тоо';
$lang->date = 'Date';
$lang->regdate = 'Оруулсан өдөр';
$lang->last_update = 'Сүүлд засварласан өдөр';
$lang->last_post = 'Хамгийн сүүлд оруулсан';
$lang->signup_date = 'Бүртгүүлсэн өдөр';
$lang->last_login = 'Хамгийн сүүлд нэвтэрсэн';
$lang->first_page = 'Эхний хуудас';
$lang->last_page = 'Сүүлчийн хуудас';
$lang->search_target = 'Хайх зорилго';
$lang->search_keyword = 'Хайх үг';
$lang->is_default = 'Үндсэн';
$lang->no_documents = 'Оруулсан бичлэг байхгүй';
$lang->board_manager = 'Board удирдах';
$lang->member_manager = 'Гишүүн удирдах';
$lang->layout_manager = 'Лэйаут удирдах';
$lang->use = 'Хэрэглэх';
$lang->notuse = 'Хэрэглэхгүй';
$lang->not_exists = 'Байхгүй';
$lang->public = 'Нийтийн';
$lang->private = 'Нууцлах';
$lang->unit_sec = 'Секунд';
$lang->unit_min = 'Минут';
$lang->unit_hour = 'Цаг';
$lang->unit_day = 'Өдөр';
$lang->unit_month = 'Сар';
$lang->unit_year = 'Жил';
$lang->unit_week = array(
'Monday' => 'Да',
'Tuesday' => 'Мя',
'Wednesday' => 'Лха',
'Thursday' => 'Пv',
'Friday' => 'Ба',
'Saturday' => 'Бя',
'Sunday' => 'Ня',
);
$lang->unit_meridiem = array(
'am' => 'eглee',
'pm' => 'орой',
'AM' => 'eглee',
'PM' => 'орой',
);
$lang->time_gap = array(
'min' => '%d минутын eмнe',
'mins' => '%d минутын eмнe',
'hour' => '%d цагийн eмнe',
'hours' => '%d цагийн eмнe',
);
// 설명 관련
$lang->about_tag = 'tag оруулахдаа таслал ашиглавал давтан оруулж болно';
$lang->about_layout = 'Лэйаут нь модиулын гадаад байдлыг чимж өгнө. Дээрх лэйаут менюнээс удирдаж болно';
// 메세지 관련
$lang->msg_call_server = 'Сервер ачаалж байна. Түр хүлээнэ үү.';
$lang->msg_db_not_setted = 'DB тохируулга хийгдээгүй байна.';
$lang->msg_invalid_queryid = 'Query ID буруу бичигдсэн байна.';
$lang->msg_not_permitted = 'Эрх байхгүй байна';
$lang->msg_input_password = 'Нууц дугаараа оруулна уу';
$lang->msg_invalid_document = 'Бичлэгийн дугаар буруу байна';
$lang->msg_invalid_request = 'Буруу шаардлага байна';
$lang->msg_invalid_password = 'Нууц дугаар буруу байна';
$lang->msg_error_occured = 'Алдаа гарлаа';
$lang->msg_not_founded = 'Зорилгыг олж чадсангүйү';
$lang->msg_no_result = 'Хайлтын үр дүн байхгүй байна';
$lang->msg_fail_to_request_open = 'Холболт амжилтгvй боллоо.';
$lang->msg_invalid_format = 'Буруу хэлбэр байна.';
$lang->msg_not_permitted_act = 'Хүсэлт гаргасан үйлдлийг хэрэгжүүлэх эрх байхгүй.';
$lang->msg_module_is_not_exists = 'Хүссэн модиулыг олж чадсангүй';
$lang->msg_module_is_not_standalone = 'Хүсэлт гаргасан модиул нь бие даан хэрэгжих боломжгүй';
$lang->success_registed = 'Бүртгэгдсэн';
$lang->success_declared = 'Мэдээлэгдсэн';
$lang->success_updated = 'Засварлагдсан';
$lang->success_deleted = 'Устгагдсан';
$lang->success_voted = 'Санал болгогдсон';
$lang->success_blamed = 'Санал болгогдоогүй';
$lang->success_moved = 'Шилжсэн';
$lang->success_sended = 'Илгээгдсэн';
$lang->success_reset = 'Reset';
$lang->success_leaved = 'Гишүүнээс гарсан';
$lang->success_saved = 'Хадгалагдсан';
$lang->fail_to_delete = 'Устгалт амжилтгүй боллоо';
$lang->fail_to_move = 'Шилжилт амжилтгүй боллоо';
$lang->failed_voted = 'Санал болгох боломжгүй';
$lang->failed_blamed = 'Санал болгохгүй байх боломжгүй';
$lang->failed_declared = 'Мэдээлэх боломжгүй';
$lang->fail_to_delete_have_children = 'Хариулт бичлэг байгаа тул устгах боломжгүй';
$lang->confirm_submit = 'Оруулах уу?';
$lang->confirm_logout = 'Гарах уу?';
$lang->confirm_vote = 'Санал болгох уу?';
$lang->confirm_delete = 'Устгах уу?';
$lang->confirm_move = 'Шилжих үү?';
$lang->confirm_reset = 'Reset хийх үү?';
$lang->confirm_leave = 'Гишүүнээс гарах уу?';
$lang->confirm_update = 'Are you sure to update?';
$lang->column_type = 'Хэлбэр';
$lang->column_type_list['text'] = 'Нэг мөрөөр оруулах (text)';
$lang->column_type_list['homepage'] = 'Веб хуудас хэлбэр (url)';
$lang->column_type_list['email_address'] = 'Мэйл хэлбэр (email)';
$lang->column_type_list['tel'] = 'Утасны дугаар хэлбэр (phone)';
$lang->column_type_list['textarea'] = 'Олон мөрөөр оруулах (textarea)';
$lang->column_type_list['checkbox'] = 'Олон сонголт хийх (checkbox)';
$lang->column_type_list['select'] = 'Ганц сонголт хийх (select)';
$lang->column_type_list['radio'] = 'Нэг eдeр сонгох(radio)';
$lang->column_type_list['kr_zip'] = 'Солонгос хаяг (zip)';
$lang->column_type_list['date'] = 'Онсар (Жил сар өдөр)';
//$lang->column_type_list['jp_zip'] = '일본주소 (zip)';
$lang->column_name = 'Баганын нэр';
$lang->column_title = 'Баганын гарчиг';
$lang->default_value = 'Үндсэн байдал';
$lang->is_active = 'Идэвхжүүлэх';
$lang->is_required = 'Заавал бөглөх';
$lang->eid = 'eгeдлийн нэр';
// ftp 관련
$lang->ftp_form_title = 'FTP мэдээлэл оруулах';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'FTP холболт шалгах';
$lang->about_ftp_info = "
FTP мэдээлэл нь дараах тохиолдолд хэрэглэгдэх боломжтой.<br />
1. PHP의 safe_mode=Onбайх тохиолдолд , FTP мэдээллийг ашиглан XE-г бvрэн ажиллуулахаар болгож болно.<br />
2. Автомат опдэйт хийх зэрэгт FTP мэдээллийг ашиглаж болно.<br />
Тус FTP мэпээлэл нь files/config/ftp.config.php файл дотор хадгалагдна.<br />
Идэвхжvvлсэний дараа хариуцагчийн хуудаснаас FTP мэдээллийг eeрчлeх болон устгаж болно.<br />
";
$lang->msg_safe_mode_ftp_needed = 'PHP의 safe_mode가 Onбайх тохиолдолд , FTP мэдээллийг заавал оруулснаар XE идэвжvvлэх болон хэрэглэх боломжтой болно.';
$lang->msg_ftp_not_connected = 'localhost-ын FTP холболт амжилтгvй боллоо. FTP дугаараа шалгах буюу эсвэл FTP vйлчилгээг ашиглах боломжтой эсэхээ шалгана уу.';
$lang->msg_ftp_invalid_auth_info = 'Таны оруулсан FTP мэдээллээр нэвтэрч чадсангvй. FTPмэдээллээ шалгана уу.';
$lang->msg_ftp_mkdir_fail = 'FTP-г ашиглан eгсeн eгeгдлийг биелvvлж чадсангvй. FTP серверийн идэвхжvvлэлтээ шалгана уу.';
$lang->msg_ftp_chmod_fail = 'FTP-г ашиглан eeрчлeлтийг хийж чадсангvй. FTP серверийн идэвхжvvлэлтээ шалгана уу.';
$lang->msg_ftp_connect_success = 'FTP холболт болон баталгаажуулалт хийгдлээ.';
// xml filter에서 사용되는 javascript용 alert msg
$lang->filter->isnull = '%s-ийг оруулна уу';
$lang->filter->outofrange = '%s-ийн үсгийн тоог тааруулна уу.';
$lang->filter->equalto = '%s-ыг буруу оруулсан байна.';
$lang->filter->invalid_email = '%s-ын хэлбэрийг буруу оруулсан байна. (Жнь: developers@xpressengine.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "%s-ын хэлбэр буруу байна. .\\n Латин vсэг, тоо болон \'_\'-р оруулж болох бeгeeд эхлэл нь vсэг байх шаардлагатай. ";
$lang->filter->invalid_homepage = '%s-ын хэлбэр буруу байна.. (Жнь: http://xpressengine.com/)';
$lang->filter->invalid_korean = '%s-ын хэлбэр буруу байна. Солонгосоор оруулах ёстой';
$lang->filter->invalid_korean_number = '%s-ын хэлбэр буруу байна. Солонгос үсэг болон тоогоор оруулах хэрэгтэй.';
$lang->filter->invalid_alpha = '%s-ын хэлбэр буруу байна. Зөвхөн латин үсгээр оруулах ёстой';
$lang->filter->invalid_alpha_number = '%s-ын хэлбэр буруу байна. Зөвхөн латин үсэг болон тоогоор л оруулах ёстой.';
$lang->filter->invalid_number = '%s-ын хэлбэр буруу байна. Зөвхөн тоогоор оруулах ёстой.';
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>

View file

@ -1,323 +1,323 @@
<?php
/**
* @file ru.lang.php
* @author zero <zero@nzeo.com> | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
* @brief Russian basic language pack
**/
// Основные слова для действий
$lang->cmd_write = 'Написать';
$lang->cmd_reply = 'Ответить';
$lang->cmd_delete = 'Удалить';
$lang->cmd_modify = 'Изменить';
$lang->cmd_edit = 'Редактировать';
$lang->cmd_view = 'Просмотреть';
$lang->cmd_view_all = 'Просмотреть все';
$lang->cmd_list = 'Список';
$lang->cmd_prev = 'Предыдущее';
$lang->cmd_next = 'Следующее';
$lang->cmd_send_trackback = 'Отправить трекбек';
$lang->cmd_registration = $lang->cmd_submit = 'Принять';
$lang->cmd_comment_registration = 'Добавить запись';
$lang->cmd_insert = 'Вставить';
$lang->cmd_save = 'Сохранить';
$lang->cmd_load = 'Загрузить';
$lang->cmd_input = 'Ввести';
$lang->cmd_search = 'Искать';
$lang->cmd_find = 'Поиск';
$lang->cmd_replace = 'Поменять';
$lang->cmd_confirm = 'Подтвердить';
$lang->cmd_cancel = 'Отменить';
$lang->cmd_back = 'Вернуться';
$lang->cmd_vote = 'Рекомендовать';
$lang->cmd_vote_down = 'Критиковать';
$lang->cmd_declare = 'Пожаловаться';
$lang->cmd_cancel_declare = 'Отменить жалобу';
$lang->cmd_declared_list = 'Список жалоб';
$lang->cmd_copy = 'Копировать';
$lang->cmd_move = 'Переместить';
$lang->cmd_move_up = 'Вверх';
$lang->cmd_move_down = 'Вниз';
$lang->cmd_add_indent = 'Отступ вправо';
$lang->cmd_remove_indent = 'Отступ влево';
$lang->cmd_management = 'Управление';
$lang->cmd_make = 'Создать';
$lang->cmd_select = 'Выделить';
$lang->cmd_select_all = 'Выделить все';
$lang->cmd_unselect_all = 'Убрать выделение ВСЕХ';
$lang->cmd_reverse_all = 'Перевернуть';
$lang->cmd_close_all = 'Закрыть все';
$lang->cmd_open_all = 'Открыть все';
$lang->cmd_reload = 'Перегрузить';
$lang->cmd_close = 'Закрыть';
$lang->cmd_open = 'Открыть';
$lang->cmd_setup = 'Конфигурация';
$lang->cmd_addition_setup = 'Дополнительная настройка';
$lang->cmd_option = 'Опция';
$lang->cmd_apply = 'Применить';
$lang->cmd_open_calendar = 'Выбрать дату';
$lang->cmd_send = 'Отправить';
$lang->cmd_print = 'Напечатать';
$lang->cmd_scrap = 'В черновики';
$lang->cmd_preview = 'Предпросмотр';
$lang->cmd_reset = 'Сброс';
$lang->cmd_remake_cache = "Пересоздать файл кэша";
$lang->cmd_publish = "Опубликовать";
$lang->cmd_layout_setup = 'Конфигурировать лейаут';
$lang->cmd_layout_edit = 'Редактировать лейаут';
$lang->cmd_search_by_ipaddress = 'Искать по IP адресу';
$lang->cmd_add_ip_to_spamfilter = 'Добавить IP в спамфильтры';
$lang->enable = 'Включено';
$lang->disable = 'Выключено';
// Основные слова
$lang->menu = 'Меню';
$lang->no = 'No.';
$lang->notice = 'Уведомление';
$lang->secret = 'Секрет';
$lang->category = $lang->category_srl = 'Категория';
$lang->none_category = 'Без категории';
$lang->none_image = 'Картинки нет';
$lang->document_srl = 'No документа';
$lang->user_id = 'ID пользователя';
$lang->author = 'Автор';
$lang->password = 'Пароль';
$lang->password1 = 'Пароль';
$lang->password2 = 'Подтверждение пароля';
$lang->admin_id = 'ID админа';
$lang->writer = 'Автор записи';
$lang->user_name = 'Имя пользователя';
$lang->nick_name = 'Ник';
$lang->email_address = 'Email';
$lang->homepage = 'Домашняя страница';
$lang->blog = 'Блог';
$lang->birthday = 'Дата рождения';
$lang->browser_title = 'Заголовок браузера';
$lang->title = 'Заголовок';
$lang->title_content = 'Заголовок+Содержание';
$lang->topic = 'Тема';
$lang->replies = 'Ответы';
$lang->content = 'Содержание';
$lang->document = 'Статьи';
$lang->comment = 'Комментарии';
$lang->description = 'Описание';
$lang->trackback = 'Трекбек';
$lang->tag = 'Тег';
$lang->allow_comment = 'Позволить комментарии';
$lang->lock_comment = 'Заблокировать комментарии';
$lang->allow_trackback = 'Позволить трекбек';
$lang->uploaded_file = 'Прикрепить файл';
$lang->grant = 'Права доступа';
$lang->target = 'Назначение';
$lang->total = 'Всего';
$lang->total_count = 'Общее количество';
$lang->ipaddress = 'IP адрес';
$lang->path = 'Путь';
$lang->cart = 'Выбранный объект';
$lang->friend = 'Друзья';
$lang->notify = 'Уведомление';
$lang->order_target = 'Align Target';
$lang->order_type = 'Тип сортировки';
$lang->order_asc = 'снизу вверх';
$lang->order_desc = 'сверху вниз';
$lang->file = 'файл';
$lang->mid = 'Имя Модуля';
$lang->sid = 'Site Name';
$lang->layout = 'Лейаут';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Виджет';
$lang->module = 'Модуль';
$lang->skin = 'Тема';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'Цветовой набор';
$lang->extra_vars = 'Дополнительные переменные.';
$lang->domain = "Доменное имя";
$lang->url = "URL";
$lang->document_url = 'URL записи';
$lang->trackback_url = 'URL трекбека';
$lang->blog_name = 'Название блога';
$lang->excerpt = 'Цитата';
$lang->document_count = 'Всего записей';
$lang->page_count = 'Количество страниц';
$lang->list_count = 'Количество списков';
$lang->search_list_count = 'Поиск Список кол';
$lang->readed_count = 'Просмотры';
$lang->voted_count = 'Голоса';
$lang->comment_count = 'Комментарии';
$lang->member_count = 'Количество пользователей';
$lang->date = 'Дата';
$lang->regdate = 'Дата регистрации';
$lang->last_update = 'Последнее обновление';
$lang->last_post = 'Последний комментарий';
$lang->signup_date = 'Дата регистрации';
$lang->last_login = 'Последний вход';
$lang->first_page = 'Первая страница';
$lang->last_page = 'Последняя страница';
$lang->search_target = 'Назначение поиска';
$lang->search_keyword = 'Ключевые слова';
$lang->is_default = 'По умолчанию';
$lang->no_documents = 'Нет записей';
$lang->board_manager = 'Настройки форума';
$lang->member_manager = 'Настройки пользователей';
$lang->layout_manager = 'Настройки лейаута';
$lang->use = 'Использовать';
$lang->notuse = 'Не использовать';
$lang->not_exists = "Отсутствует";
$lang->public = 'Показать всем';
$lang->private = 'Не показывать';
$lang->unit_sec = 'сек.';
$lang->unit_min = 'мин.';
$lang->unit_hour = 'ч.';
$lang->unit_day = 'д.';
$lang->unit_week = 'нед.';
$lang->unit_month = 'мес.';
$lang->unit_year = 'г.';
$lang->unit_week = array(
'Monday' => 'Понедельник',
'Tuesday' => 'Вторник',
'Wednesday' => 'Среда',
'Thursday' => 'Четверг',
'Friday' => 'Пятница',
'Saturday' => 'Суббота',
'Sunday' => 'Воскресенье',
);
$lang->unit_meridiem = array(
'am' => 'am',
'pm' => 'pm',
'AM' => 'AM',
'PM' => 'PM',
);
$lang->time_gap = array(
'min' => '%d минуту назад',
'mins' => '%d минут назад',
'hour' => '%d час назад',
'hours' => '%d часов назад',
);
// Описания
$lang->about_tag = 'Вы можете применить несколько тегов, разделенных запятыми (,)';
$lang->about_layout = 'Лейауты украшают внешний вид Ваших модулей. Вы можете сконфигурировать их с помощью меню Лейаут сверху';
// Сообщение
$lang->msg_call_server = 'Идет обработка. Пожалуйста, подождите...';
$lang->msg_db_not_setted = 'Даза данных не сконфигурирована';
$lang->msg_dbconnect_failed = "Произошла ошибка подключения к базе данных.\nПожалуйста, проверьте иформацию базы данных еще раз";
$lang->msg_invalid_queryid = 'Указанный ID запроса неверен';
$lang->msg_not_permitted = 'У Вас нет доступа';
$lang->msg_input_password = 'Пожалуйста, введите пароль';
$lang->msg_invalid_document = 'Неверный номер статьи';
$lang->msg_invalid_request = 'Неверный запрос';
$lang->msg_invalid_password = 'Неверный пароль';
$lang->msg_error_occured = 'Произошла ошибка';
$lang->msg_not_founded = 'Сообщение не найдено';
$lang->msg_no_result = 'Ничего не найдено';
$lang->msg_fail_to_request_open = 'Ошибка в запрашиваемом соединении';
$lang->msg_invalid_format = 'Неверный формат';
$lang->msg_not_permitted_act = 'У Вас нет прав для исполнения запрошенного действия';
$lang->msg_module_is_not_exists = "Невозможно найти запрашиваемый модуль.\nПросьба обратиться к администратору";
$lang->msg_module_is_not_standalone = 'Запрошенный модуль не может быть исполнен независимо';
$lang->msg_default_url_is_not_defined = 'Default URL is not define';
$lang->success_registed = 'Зарегистрировано успешно';
$lang->success_declared = 'Жалоба отправлена';
$lang->success_updated = 'Обновление успешно';
$lang->success_deleted = 'Удалено успешно';
$lang->success_voted = 'Рекомендовано успешно';
$lang->success_blamed = 'Критика принята';
$lang->success_moved = 'Перемещено успешно';
$lang->success_sended = 'Отправлено успешно';
$lang->success_reset = 'Сброшено успешно';
$lang->success_leaved = 'Пользователь удален';
$lang->success_saved = 'Сохранено успешно';
$lang->fail_to_delete = 'Не может быть удалено';
$lang->fail_to_move = 'Перемещение невозможно';
$lang->failed_voted = 'Рекоммендовать невозможно';
$lang->failed_blamed = 'Критиковать невозможно';
$lang->failed_declared = 'Пожаловаться невозможно';
$lang->fail_to_delete_have_children = 'Невозможно удаление из-за наличия ответов в записи';
$lang->confirm_submit = 'Вы подтверждаете запись?';
$lang->confirm_logout = 'Вы подтверждаете выход?';
$lang->confirm_vote = 'Рекомендовать?';
$lang->confirm_delete = 'Удалить?';
$lang->confirm_restore = 'Восстановить?';
$lang->confirm_move = 'Переместить?';
$lang->confirm_reset = 'Вы подтверждаете сброс?';
$lang->confirm_leave = 'Вы подтверждаете удаление аккаунта?';
$lang->confirm_update = 'Обновить?';
$lang->column_type = 'Тип колонки';
$lang->column_type_list['text'] = 'Однострочное окно ввода';
$lang->column_type_list['homepage'] = 'url';
$lang->column_type_list['email_address'] = 'email';
$lang->column_type_list['tel'] = 'номер телефона';
$lang->column_type_list['textarea'] = 'Многострочное окно ввода';
$lang->column_type_list['checkbox'] = 'Чекбокс (мульти вариант)';
$lang->column_type_list['select'] = 'Выбор (один вариант)';
$lang->column_type_list['radio'] = 'Кнопка радио (радио)';
$lang->column_type_list['kr_zip'] = 'Почтовый индекс (Корейский)';
$lang->column_type_list['date'] = 'Дата (гггг / мм / дд)';
//$lang->column_type_list['jp_zip'] = 'почтовый индекс (японский)';
$lang->column_name = 'Имя колонки';
$lang->column_title = 'Заголовок колонки';
$lang->default_value = 'Стандартное значение';
$lang->is_active = 'Активация';
$lang->is_required = 'Обязательные данные';
$lang->eid = 'Имя экстра переменных';
// ftp 관련
$lang->ftp_form_title = 'Введите данные FTP';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'Check FTP Connection';
$lang->about_ftp_info = "
FTP account information can be used in following cases. <br />
1. If safe_mode setting of PHP is on, XE will be installed using FTP. <br />
2. Automatic updates might use FTP information. <br />
This account info will be stored in files/config/ftp.config.php <br />
After installation, you can modify or delete the account info at the administration page. <br />
";
$lang->msg_safe_mode_ftp_needed = "If safe_mode setting of PHP is on, you should input FTP account information to install XE.";
$lang->msg_ftp_not_connected = "Connection to localhost via FTP failed. Please check the port number and if FTP service is available.";
$lang->msg_ftp_invalid_auth_info = "Authentication failed. Please check the username and password.";
$lang->msg_ftp_mkdir_fail = "Directory creation failed. Please check the permission of FTP account.";
$lang->msg_ftp_chmod_fail = "Chmod failed. Please check the permission and configuration of FTP server.";
$lang->msg_ftp_connect_success = "Connection and authentication to the FTP server succeeded.";
$lang->ftp_path_title = 'FTP Path Information';
$lang->msg_ftp_installed_realpath = 'Absolute Path of XE';
$lang->msg_ftp_installed_ftp_realpath = 'Absolute FTP Path of XE';
// Alert messages for Javascript using by XML filter
$lang->filter->isnull = 'Please input a value for %s';
$lang->filter->outofrange = 'Please align the text length of %s';
$lang->filter->equalto = "The value of %s is invalid";
$lang->filter->invalid_email = "The format of %s is invalid. ex) zbxe@zeroboard.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "The format of %s is invalid.\\nAll values should consist of alphabets, numbers or underscore(_) and the first letter should be alphabet";
$lang->filter->invalid_homepage = "The format of %s is invalid. ex) http://www.zeroboard.com";
$lang->filter->invalid_korean = "The format of %s is invalid. Please input Korean only";
$lang->filter->invalid_korean_number = "The format of %s is invalid. Please input Korean or numbers";
$lang->filter->invalid_alpha = "The format of %s is invalid. Please input alphabets only";
$lang->filter->invalid_alpha_number = "The format of %s is invalid. Please input alphabets or numbers";
$lang->filter->invalid_number = "The format of %s is invalid. Please input numbers only";
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>
<?php
/**
* @file ru.lang.php
* @author NHN (developers@xpressengine.com) | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
* @brief Russian basic language pack
**/
// Основные слова для действий
$lang->cmd_write = 'Написать';
$lang->cmd_reply = 'Ответить';
$lang->cmd_delete = 'Удалить';
$lang->cmd_modify = 'Изменить';
$lang->cmd_edit = 'Редактировать';
$lang->cmd_view = 'Просмотреть';
$lang->cmd_view_all = 'Просмотреть все';
$lang->cmd_list = 'Список';
$lang->cmd_prev = 'Предыдущее';
$lang->cmd_next = 'Следующее';
$lang->cmd_send_trackback = 'Отправить трекбек';
$lang->cmd_registration = $lang->cmd_submit = 'Принять';
$lang->cmd_comment_registration = 'Добавить запись';
$lang->cmd_insert = 'Вставить';
$lang->cmd_save = 'Сохранить';
$lang->cmd_load = 'Загрузить';
$lang->cmd_input = 'Ввести';
$lang->cmd_search = 'Искать';
$lang->cmd_find = 'Поиск';
$lang->cmd_replace = 'Поменять';
$lang->cmd_confirm = 'Подтвердить';
$lang->cmd_cancel = 'Отменить';
$lang->cmd_back = 'Вернуться';
$lang->cmd_vote = 'Рекомендовать';
$lang->cmd_vote_down = 'Критиковать';
$lang->cmd_declare = 'Пожаловаться';
$lang->cmd_cancel_declare = 'Отменить жалобу';
$lang->cmd_declared_list = 'Список жалоб';
$lang->cmd_copy = 'Копировать';
$lang->cmd_move = 'Переместить';
$lang->cmd_move_up = 'Вверх';
$lang->cmd_move_down = 'Вниз';
$lang->cmd_add_indent = 'Отступ вправо';
$lang->cmd_remove_indent = 'Отступ влево';
$lang->cmd_management = 'Управление';
$lang->cmd_make = 'Создать';
$lang->cmd_select = 'Выделить';
$lang->cmd_select_all = 'Выделить все';
$lang->cmd_unselect_all = 'Убрать выделение ВСЕХ';
$lang->cmd_reverse_all = 'Перевернуть';
$lang->cmd_close_all = 'Закрыть все';
$lang->cmd_open_all = 'Открыть все';
$lang->cmd_reload = 'Перегрузить';
$lang->cmd_close = 'Закрыть';
$lang->cmd_open = 'Открыть';
$lang->cmd_setup = 'Конфигурация';
$lang->cmd_addition_setup = 'Дополнительная настройка';
$lang->cmd_option = 'Опция';
$lang->cmd_apply = 'Применить';
$lang->cmd_open_calendar = 'Выбрать дату';
$lang->cmd_send = 'Отправить';
$lang->cmd_print = 'Напечатать';
$lang->cmd_scrap = 'В черновики';
$lang->cmd_preview = 'Предпросмотр';
$lang->cmd_reset = 'Сброс';
$lang->cmd_remake_cache = "Пересоздать файл кэша";
$lang->cmd_publish = "Опубликовать";
$lang->cmd_layout_setup = 'Конфигурировать лейаут';
$lang->cmd_layout_edit = 'Редактировать лейаут';
$lang->cmd_search_by_ipaddress = 'Искать по IP адресу';
$lang->cmd_add_ip_to_spamfilter = 'Добавить IP в спамфильтры';
$lang->enable = 'Включено';
$lang->disable = 'Выключено';
// Основные слова
$lang->menu = 'Меню';
$lang->no = 'No.';
$lang->notice = 'Уведомление';
$lang->secret = 'Секрет';
$lang->category = $lang->category_srl = 'Категория';
$lang->none_category = 'Без категории';
$lang->none_image = 'Картинки нет';
$lang->document_srl = 'No документа';
$lang->user_id = 'ID пользователя';
$lang->author = 'Автор';
$lang->password = 'Пароль';
$lang->password1 = 'Пароль';
$lang->password2 = 'Подтверждение пароля';
$lang->admin_id = 'ID админа';
$lang->writer = 'Автор записи';
$lang->user_name = 'Имя пользователя';
$lang->nick_name = 'Ник';
$lang->email_address = 'Email';
$lang->homepage = 'Домашняя страница';
$lang->blog = 'Блог';
$lang->birthday = 'Дата рождения';
$lang->browser_title = 'Заголовок браузера';
$lang->title = 'Заголовок';
$lang->title_content = 'Заголовок+Содержание';
$lang->topic = 'Тема';
$lang->replies = 'Ответы';
$lang->content = 'Содержание';
$lang->document = 'Статьи';
$lang->comment = 'Комментарии';
$lang->description = 'Описание';
$lang->trackback = 'Трекбек';
$lang->tag = 'Тег';
$lang->allow_comment = 'Позволить комментарии';
$lang->lock_comment = 'Заблокировать комментарии';
$lang->allow_trackback = 'Позволить трекбек';
$lang->uploaded_file = 'Прикрепить файл';
$lang->grant = 'Права доступа';
$lang->target = 'Назначение';
$lang->total = 'Всего';
$lang->total_count = 'Общее количество';
$lang->ipaddress = 'IP адрес';
$lang->path = 'Путь';
$lang->cart = 'Выбранный объект';
$lang->friend = 'Друзья';
$lang->notify = 'Уведомление';
$lang->order_target = 'Align Target';
$lang->order_type = 'Тип сортировки';
$lang->order_asc = 'снизу вверх';
$lang->order_desc = 'сверху вниз';
$lang->file = 'файл';
$lang->mid = 'Имя Модуля';
$lang->sid = 'Site Name';
$lang->layout = 'Лейаут';
$lang->mobile_layout = 'Mobile Layout';
$lang->widget = 'Виджет';
$lang->module = 'Модуль';
$lang->skin = 'Тема';
$lang->mobile_skin = 'Mobile Theme';
$lang->colorset = 'Цветовой набор';
$lang->extra_vars = 'Дополнительные переменные.';
$lang->domain = "Доменное имя";
$lang->url = "URL";
$lang->document_url = 'URL записи';
$lang->trackback_url = 'URL трекбека';
$lang->blog_name = 'Название блога';
$lang->excerpt = 'Цитата';
$lang->document_count = 'Всего записей';
$lang->page_count = 'Количество страниц';
$lang->list_count = 'Количество списков';
$lang->search_list_count = 'Поиск Список кол';
$lang->readed_count = 'Просмотры';
$lang->voted_count = 'Голоса';
$lang->comment_count = 'Комментарии';
$lang->member_count = 'Количество пользователей';
$lang->date = 'Дата';
$lang->regdate = 'Дата регистрации';
$lang->last_update = 'Последнее обновление';
$lang->last_post = 'Последний комментарий';
$lang->signup_date = 'Дата регистрации';
$lang->last_login = 'Последний вход';
$lang->first_page = 'Первая страница';
$lang->last_page = 'Последняя страница';
$lang->search_target = 'Назначение поиска';
$lang->search_keyword = 'Ключевые слова';
$lang->is_default = 'По умолчанию';
$lang->no_documents = 'Нет записей';
$lang->board_manager = 'Настройки форума';
$lang->member_manager = 'Настройки пользователей';
$lang->layout_manager = 'Настройки лейаута';
$lang->use = 'Использовать';
$lang->notuse = 'Не использовать';
$lang->not_exists = "Отсутствует";
$lang->public = 'Показать всем';
$lang->private = 'Не показывать';
$lang->unit_sec = 'сек.';
$lang->unit_min = 'мин.';
$lang->unit_hour = 'ч.';
$lang->unit_day = 'д.';
$lang->unit_week = 'нед.';
$lang->unit_month = 'мес.';
$lang->unit_year = 'г.';
$lang->unit_week = array(
'Monday' => 'Понедельник',
'Tuesday' => 'Вторник',
'Wednesday' => 'Среда',
'Thursday' => 'Четверг',
'Friday' => 'Пятница',
'Saturday' => 'Суббота',
'Sunday' => 'Воскресенье',
);
$lang->unit_meridiem = array(
'am' => 'am',
'pm' => 'pm',
'AM' => 'AM',
'PM' => 'PM',
);
$lang->time_gap = array(
'min' => '%d минуту назад',
'mins' => '%d минут назад',
'hour' => '%d час назад',
'hours' => '%d часов назад',
);
// Описания
$lang->about_tag = 'Вы можете применить несколько тегов, разделенных запятыми (,)';
$lang->about_layout = 'Лейауты украшают внешний вид Ваших модулей. Вы можете сконфигурировать их с помощью меню Лейаут сверху';
// Сообщение
$lang->msg_call_server = 'Идет обработка. Пожалуйста, подождите...';
$lang->msg_db_not_setted = 'Даза данных не сконфигурирована';
$lang->msg_dbconnect_failed = "Произошла ошибка подключения к базе данных.\nПожалуйста, проверьте иформацию базы данных еще раз";
$lang->msg_invalid_queryid = 'Указанный ID запроса неверен';
$lang->msg_not_permitted = 'У Вас нет доступа';
$lang->msg_input_password = 'Пожалуйста, введите пароль';
$lang->msg_invalid_document = 'Неверный номер статьи';
$lang->msg_invalid_request = 'Неверный запрос';
$lang->msg_invalid_password = 'Неверный пароль';
$lang->msg_error_occured = 'Произошла ошибка';
$lang->msg_not_founded = 'Сообщение не найдено';
$lang->msg_no_result = 'Ничего не найдено';
$lang->msg_fail_to_request_open = 'Ошибка в запрашиваемом соединении';
$lang->msg_invalid_format = 'Неверный формат';
$lang->msg_not_permitted_act = 'У Вас нет прав для исполнения запрошенного действия';
$lang->msg_module_is_not_exists = "Невозможно найти запрашиваемый модуль.\nПросьба обратиться к администратору";
$lang->msg_module_is_not_standalone = 'Запрошенный модуль не может быть исполнен независимо';
$lang->msg_default_url_is_not_defined = 'Default URL is not define';
$lang->success_registed = 'Зарегистрировано успешно';
$lang->success_declared = 'Жалоба отправлена';
$lang->success_updated = 'Обновление успешно';
$lang->success_deleted = 'Удалено успешно';
$lang->success_voted = 'Рекомендовано успешно';
$lang->success_blamed = 'Критика принята';
$lang->success_moved = 'Перемещено успешно';
$lang->success_sended = 'Отправлено успешно';
$lang->success_reset = 'Сброшено успешно';
$lang->success_leaved = 'Пользователь удален';
$lang->success_saved = 'Сохранено успешно';
$lang->fail_to_delete = 'Не может быть удалено';
$lang->fail_to_move = 'Перемещение невозможно';
$lang->failed_voted = 'Рекоммендовать невозможно';
$lang->failed_blamed = 'Критиковать невозможно';
$lang->failed_declared = 'Пожаловаться невозможно';
$lang->fail_to_delete_have_children = 'Невозможно удаление из-за наличия ответов в записи';
$lang->confirm_submit = 'Вы подтверждаете запись?';
$lang->confirm_logout = 'Вы подтверждаете выход?';
$lang->confirm_vote = 'Рекомендовать?';
$lang->confirm_delete = 'Удалить?';
$lang->confirm_restore = 'Восстановить?';
$lang->confirm_move = 'Переместить?';
$lang->confirm_reset = 'Вы подтверждаете сброс?';
$lang->confirm_leave = 'Вы подтверждаете удаление аккаунта?';
$lang->confirm_update = 'Обновить?';
$lang->column_type = 'Тип колонки';
$lang->column_type_list['text'] = 'Однострочное окно ввода';
$lang->column_type_list['homepage'] = 'url';
$lang->column_type_list['email_address'] = 'email';
$lang->column_type_list['tel'] = 'номер телефона';
$lang->column_type_list['textarea'] = 'Многострочное окно ввода';
$lang->column_type_list['checkbox'] = 'Чекбокс (мульти вариант)';
$lang->column_type_list['select'] = 'Выбор (один вариант)';
$lang->column_type_list['radio'] = 'Кнопка радио (радио)';
$lang->column_type_list['kr_zip'] = 'Почтовый индекс (Корейский)';
$lang->column_type_list['date'] = 'Дата (гггг / мм / дд)';
//$lang->column_type_list['jp_zip'] = 'почтовый индекс (японский)';
$lang->column_name = 'Имя колонки';
$lang->column_title = 'Заголовок колонки';
$lang->default_value = 'Стандартное значение';
$lang->is_active = 'Активация';
$lang->is_required = 'Обязательные данные';
$lang->eid = 'Имя экстра переменных';
// ftp 관련
$lang->ftp_form_title = 'Введите данные FTP';
$lang->ftp = 'FTP';
$lang->ftp_host = 'FTP hostname';
$lang->ftp_port = 'FTP port';
$lang->about_ftp_password = 'FTP password will not be stored';
$lang->cmd_check_ftp_connect = 'Check FTP Connection';
$lang->about_ftp_info = "
FTP account information can be used in following cases. <br />
1. If safe_mode setting of PHP is on, XE will be installed using FTP. <br />
2. Automatic updates might use FTP information. <br />
This account info will be stored in files/config/ftp.config.php <br />
After installation, you can modify or delete the account info at the administration page. <br />
";
$lang->msg_safe_mode_ftp_needed = "If safe_mode setting of PHP is on, you should input FTP account information to install XE.";
$lang->msg_ftp_not_connected = "Connection to localhost via FTP failed. Please check the port number and if FTP service is available.";
$lang->msg_ftp_invalid_auth_info = "Authentication failed. Please check the username and password.";
$lang->msg_ftp_mkdir_fail = "Directory creation failed. Please check the permission of FTP account.";
$lang->msg_ftp_chmod_fail = "Chmod failed. Please check the permission and configuration of FTP server.";
$lang->msg_ftp_connect_success = "Connection and authentication to the FTP server succeeded.";
$lang->ftp_path_title = 'FTP Path Information';
$lang->msg_ftp_installed_realpath = 'Absolute Path of XE';
$lang->msg_ftp_installed_ftp_realpath = 'Absolute FTP Path of XE';
// Alert messages for Javascript using by XML filter
$lang->filter->isnull = 'Please input a value for %s';
$lang->filter->outofrange = 'Please align the text length of %s';
$lang->filter->equalto = "The value of %s is invalid";
$lang->filter->invalid_email = "The format of %s is invalid. ex) developers@xpressengine.com";
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "The format of %s is invalid.\\nAll values should consist of alphabets, numbers or underscore(_) and the first letter should be alphabet";
$lang->filter->invalid_homepage = "The format of %s is invalid. ex) http://xpressengine.com/";
$lang->filter->invalid_korean = "The format of %s is invalid. Please input Korean only";
$lang->filter->invalid_korean_number = "The format of %s is invalid. Please input Korean or numbers";
$lang->filter->invalid_alpha = "The format of %s is invalid. Please input alphabets only";
$lang->filter->invalid_alpha_number = "The format of %s is invalid. Please input alphabets or numbers";
$lang->filter->invalid_number = "The format of %s is invalid. Please input numbers only";
$lang->security_warning_embed = "Due to security concern, administrators are not allowed to view embedded items.<BR /> To view them, please use another non-administrator ID.";
?>

View file

@ -1,7 +1,7 @@
<?php
/* ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░ * @File : common/lang/vi.lang.php ░░
░░ * @Author : zero (zero@nzeo.com) ░░
░░ * @Author : NHN (developers@xpressengine.com) ░░
░░ * @Trans : DucDuy Dao (webmaster@xpressengine.vn) ░░
░░ * @Website: http://xpressengine.vn ░░
░░ * @Brief : Vietnamese Language Pack (Only basic words are included here) ░░

View file

@ -1,7 +1,7 @@
<?php
/**
* @file common/lang/zh-CN.lang.php
* @author zero (zero@nzeo.com)
* @author NHN (developers@xpressengine.com)
* @brief 简体中文语言包
**/
@ -310,9 +310,9 @@
$lang->filter->isnull = '请输入%s';
$lang->filter->outofrange = '请确认%s字数';
$lang->filter->equalto = '%s值有误。';
$lang->filter->invalid_email = '%s格式有误。zbxe@zeroboard.com)';
$lang->filter->invalid_email = '%s格式有误。developers@xpressengine.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "%s只能用英文数字和 _首个字符必须是英文字母。";
$lang->filter->invalid_homepage = '%s格式有误。 http://www.zeroboard.com)';
$lang->filter->invalid_homepage = '%s格式有误。 http://xpressengine.com/)';
$lang->filter->invalid_korean = '%s只能输入中文';
$lang->filter->invalid_korean_number = '%s只能输入中文或数字';
$lang->filter->invalid_alpha = '%s只能输入英文字母';

View file

@ -1,7 +1,7 @@
<?php
/**
* @file common/lang/zh-TW.lang.php
* @author zero (zero@nzeo.com) 翻譯royallin
* @author NHN (developers@xpressengine.com) 翻譯royallin
* @brief 正體中文語言
**/
@ -310,9 +310,9 @@
$lang->filter->isnull = '請輸入%s';
$lang->filter->outofrange = '請確認%s字數';
$lang->filter->equalto = '%s值有誤。';
$lang->filter->invalid_email = '%s格式有誤。(例:zbxe@zeroboard.com)';
$lang->filter->invalid_email = '%s格式有誤。(例:developers@xpressengine.com)';
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "%s只允許使用英文數字和底線開頭必須是英文。";
$lang->filter->invalid_homepage = '%s格式有誤。(例: http://www.zeroboard.com)';
$lang->filter->invalid_homepage = '%s格式有誤。(例: http://xpressengine.com/)';
$lang->filter->invalid_korean = '%s只能輸入中文';
$lang->filter->invalid_korean_number = '%s只能輸入中文或數字';
$lang->filter->invalid_alpha = '%s只能輸入英文字母';

View file

@ -1,278 +1,278 @@
<?php
/**
* @author sol (sol@nhn.com)
* @brief css js Optimizer 처리 gateway
*
**/
if(!$_GET['t'] || !$_GET['l']) exit;
// set env
$XE_PATH = substr(dirname(__FILE__),0,strlen('common')*-1);
define('_XE_PATH_', $XE_PATH);
define('__ZBXE__', true);
define('__XE_LOADED_CLASS__', true);
include _XE_PATH_ . 'config/config.inc.php';
$dbconfig_file =_XE_PATH_ . 'files/config/db.config.php';
if(file_exists($dbconfig_file)){
include $dbconfig_file;
if($db_info && $db_info->use_template_cache){
include _XE_PATH_ . 'classes/handler/Handler.class.php';
include _XE_PATH_ . 'classes/cache/CacheHandler.class.php';
$oCacheHandler = new CacheHandler('template', $db_info);
$cache_support = $oCacheHandler->isSupport();
}else{
$cache_support = false;
}
}else{
$cache_support = false;
}
//$XE_WEB_PATH = substr($XE_PATH,strlen($_SERVER['DOCUMENT_ROOT']));
$XE_WEB_PATH_arr = explode("/", $_SERVER['REQUEST_URI']);
array_pop($XE_WEB_PATH_arr);
array_pop($XE_WEB_PATH_arr);
$XE_WEB_PATH = implode("/", $XE_WEB_PATH_arr);
if(substr($XE_WEB_PATH,-1) != "/") $XE_WEB_PATH .= "/";
$cache_path = $XE_PATH . 'files/cache/optimized/';
$type = $_GET['t'];
$list_file = $cache_path . $_GET['l'] .'.info.php';
function getRealPath($file){
if($file{0}=='.' && $file{1} =='/') $file = _XE_PATH_.substr($file, 2);
return $file;
}
function getMtime($file){
$file = getRealPath($file);
if(file_exists($file)) return filemtime($file);
}
function getMaxMtime($list){
$mtime = array();
foreach($list as $file) $mtime[] = getMtime($file);
return max($mtime);
}
// check
if($cache_support){
$list = $oCacheHandler->get($_GET['l']);
$mtime = getMaxMtime($list);
}else{
if(!file_exists($list_file)) exit;
$list = include($list_file);
$mtime = getMaxMtime(array_merge($list,array($list_file)));
}
if(!is_array($list)) exit;
// set content-type
if($type == '.css'){
$content_type = 'text/css';
} else if($type == '.js') {
$content_type = 'text/javascript';
}
header("Content-Type: ".$content_type."; charset=UTF-8");
// return 304
if (!empty($_SERVER['HTTP_IF_MODIFIED_SINCE'])) {
$modifiedSince = strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']);
if ($modifiedSince && ($modifiedSince == $mtime)) {
header('HTTP/1.1 304 Not Modified');
header("Connection: close");
exit;
}
}
function useContentEncoding(){
if( (defined('__OB_GZHANDLER_ENABLE__') && __OB_GZHANDLER_ENABLE__ == 1)
&& strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')!==false
&& function_exists('ob_gzhandler')
&& extension_loaded('zlib')) {
return true;
}
return false;
}
function getCacheKey($list){
$key = 'optimized:' . join('',$list);
return md5($key);
}
function printFileList($list){
global $mtime, $cache_support, $oCacheHandler;
$content_encoding = useContentEncoding();
$output = null;
if($cache_support){
$cache_key = getCacheKey($list);
$output = $oCacheHandler->get($cache_key, $mtime);
}
if(!$output || trim($output)==''){
for($i=0,$c=count($list);$i<$c;$i++){
$file = getRealPath($list[$i]);
if(file_exists($file)){
$output .= '/* file:' . $file . " */\n";
$output .= file_get_contents($file);
$output .= "\n";
}
}
}
if($cache_support) $oCacheHandler->put($cache_key, $output);
if($content_encoding) $output = ob_gzhandler($output, 5);
$size = strlen($output);
if($size > 0){
header("Cache-Control: private");
header("Pragma: cache");
header("Connection: close");
header("Last-Modified: " . substr(gmdate('r', $mtime), 0, -5). "GMT");
header("ETag: \"". md5(join(' ', $list)) .'-'. dechex($mtime) .'-'.dechex($size)."\"");
}
header("Content-Length: ". $size);
if($content_encoding) header("Content-Encoding: gzip");
echo($output);
}
function write($file_name, $buff, $mode='w'){
$file_name = getRealPath($file_name);
if(@!$fp = fopen($file_name,$mode)) return false;
fwrite($fp, $buff);
fclose($fp);
@chmod($file_name, 0644);
}
function read($file_name) {
$file_name = getRealPath($file_name);
if(!file_exists($file_name)) return;
$filesize = filesize($file_name);
if($filesize<1) return;
if(function_exists('file_get_contents')) return file_get_contents($file_name);
$fp = fopen($file_name, "r");
$buff = '';
if($fp) {
while(!feof($fp) && strlen($buff)<=$filesize) {
$str = fgets($fp, 1024);
$buff .= $str;
}
fclose($fp);
}
return $buff;
}
function makeCacheFileCSS($css_file, $cache_file, $return=false){
$str = read($css_file);
$str = replaceCssPath($css_file, trim(convertEncodingStr($str)));
if($return){
return $str;
}else{
write($cache_file, $str."\n");
unset($str);
}
}
function replaceCssPath($file, $str) {
global $tmp_css_path;
// css 파일의 위치를 구함
$tmp_css_path = preg_replace("/^\.\//is","",dirname($file))."/";
// url() 로 되어 있는 css 파일의 경로를 변경
$str = preg_replace_callback('/url\(([^\)]*)\)/is', '_replaceCssPath', $str);
// charset 지정 문구를 제거
$str = preg_replace('!@charset([^;]*?);!is','',$str);
return $str;
}
function _replaceCssPath($matches) {
global $tmp_css_path, $XE_WEB_PATH;
$path = str_replace(array('"',"'"),'',$matches[1]);
if(substr($path,0,1)=='/' || strpos($path,'://')!==false || strpos($path,'.htc')!==false) return 'url('.$path.')';
if(substr($path,0,2)=='./') $path = substr($path,2);
$target = $XE_WEB_PATH.$tmp_css_path.$path;
while(strpos($target,'/../')!==false) {
$target = preg_replace('/\/([^\/]+)\/\.\.\//','/',$target);
}
return 'url('.$target.')';
}
function convertEncodingStr($str) {
if(!$str) return '';
$charset_list = array(
'UTF-8', 'EUC-KR', 'CP949', 'ISO8859-1', 'EUC-JP', 'SHIFT_JIS', 'CP932',
'EUC-CN', 'HZ', 'GBK', 'GB18030', 'EUC-TW', 'BIG5', 'CP950', 'BIG5-HKSCS',
'ISO2022-CN', 'ISO2022-CN-EXT', 'ISO2022-JP', 'ISO2022-JP-2', 'ISO2022-JP-1',
'ISO8859-6', 'ISO8859-8', 'JOHAB', 'ISO2022-KR', 'CP1255', 'CP1256', 'CP862',
'ASCII', 'ISO8859-1', 'ISO8850-2', 'ISO8850-3', 'ISO8850-4', 'ISO8850-5',
'ISO8850-7', 'ISO8850-9', 'ISO8850-10', 'ISO8850-13', 'ISO8850-14',
'ISO8850-15', 'ISO8850-16', 'CP1250', 'CP1251', 'CP1252', 'CP1253', 'CP1254',
'CP1257', 'CP850', 'CP866',
);
for($i=0,$c=count($charset_list);$i<$c;$i++) {
$charset = $charset_list[$i];
if($str == iconv($charset, $charset.'//IGNORE',$str)){
if($charset == 'UTF-8') return $str;
return iconv($charset, 'UTF-8//IGNORE', $str);
}
}
return $str;
}
if($type == '.js'){
printFileList($list);
}else if($type == '.css'){
$css = array();
if($cache_support){
foreach($list as $file){
$cache_file = $cache_path . md5($file). '.cache.php';
$css[] = getRealPath($cache_file);
}
$cache_key = getCacheKey($css);
$buff = $oCacheHandler->get($cache_key, $mtime);
if(!$buff){
$buff = '';
foreach($list as $file){
$buff .= makeCacheFileCSS($file, '', true);
}
$oCacheHandler->put($cache_key, $buff);
}
}else{
foreach($list as $file){
$cache_file = $cache_path . md5($file). '.cache.php';
$cache_mtime = getMtime($cache_file);
$css_mtime = getMtime($file);
// check modified
if($css_mtime > $cache_mtime){
makeCacheFileCSS($file, getRealPath($cache_file));
}
$css[] = getRealPath($cache_file);
}
}
printFileList($css);
}
?>
<?php
/**
* @author NHN (developer@xpressengine.com)
* @brief css js Optimizer 처리 gateway
*
**/
if(!$_GET['t'] || !$_GET['l']) exit;
// set env
$XE_PATH = substr(dirname(__FILE__),0,strlen('common')*-1);
define('_XE_PATH_', $XE_PATH);
define('__ZBXE__', true);
define('__XE_LOADED_CLASS__', true);
include _XE_PATH_ . 'config/config.inc.php';
$dbconfig_file =_XE_PATH_ . 'files/config/db.config.php';
if(file_exists($dbconfig_file)){
include $dbconfig_file;
if($db_info && $db_info->use_template_cache){
include _XE_PATH_ . 'classes/handler/Handler.class.php';
include _XE_PATH_ . 'classes/cache/CacheHandler.class.php';
$oCacheHandler = new CacheHandler('template', $db_info);
$cache_support = $oCacheHandler->isSupport();
}else{
$cache_support = false;
}
}else{
$cache_support = false;
}
//$XE_WEB_PATH = substr($XE_PATH,strlen($_SERVER['DOCUMENT_ROOT']));
$XE_WEB_PATH_arr = explode("/", $_SERVER['REQUEST_URI']);
array_pop($XE_WEB_PATH_arr);
array_pop($XE_WEB_PATH_arr);
$XE_WEB_PATH = implode("/", $XE_WEB_PATH_arr);
if(substr($XE_WEB_PATH,-1) != "/") $XE_WEB_PATH .= "/";
$cache_path = $XE_PATH . 'files/cache/optimized/';
$type = $_GET['t'];
$list_file = $cache_path . $_GET['l'] .'.info.php';
function getRealPath($file){
if($file{0}=='.' && $file{1} =='/') $file = _XE_PATH_.substr($file, 2);
return $file;
}
function getMtime($file){
$file = getRealPath($file);
if(file_exists($file)) return filemtime($file);
}
function getMaxMtime($list){
$mtime = array();
foreach($list as $file) $mtime[] = getMtime($file);
return max($mtime);
}
// check
if($cache_support){
$list = $oCacheHandler->get($_GET['l']);
$mtime = getMaxMtime($list);
}else{
if(!file_exists($list_file)) exit;
$list = include($list_file);
$mtime = getMaxMtime(array_merge($list,array($list_file)));
}
if(!is_array($list)) exit;
// set content-type
if($type == '.css'){
$content_type = 'text/css';
} else if($type == '.js') {
$content_type = 'text/javascript';
}
header("Content-Type: ".$content_type."; charset=UTF-8");
// return 304
if (!empty($_SERVER['HTTP_IF_MODIFIED_SINCE'])) {
$modifiedSince = strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']);
if ($modifiedSince && ($modifiedSince == $mtime)) {
header('HTTP/1.1 304 Not Modified');
header("Connection: close");
exit;
}
}
function useContentEncoding(){
if( (defined('__OB_GZHANDLER_ENABLE__') && __OB_GZHANDLER_ENABLE__ == 1)
&& strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')!==false
&& function_exists('ob_gzhandler')
&& extension_loaded('zlib')) {
return true;
}
return false;
}
function getCacheKey($list){
$key = 'optimized:' . join('',$list);
return md5($key);
}
function printFileList($list){
global $mtime, $cache_support, $oCacheHandler;
$content_encoding = useContentEncoding();
$output = null;
if($cache_support){
$cache_key = getCacheKey($list);
$output = $oCacheHandler->get($cache_key, $mtime);
}
if(!$output || trim($output)==''){
for($i=0,$c=count($list);$i<$c;$i++){
$file = getRealPath($list[$i]);
if(file_exists($file)){
$output .= '/* file:' . $file . " */\n";
$output .= file_get_contents($file);
$output .= "\n";
}
}
}
if($cache_support) $oCacheHandler->put($cache_key, $output);
if($content_encoding) $output = ob_gzhandler($output, 5);
$size = strlen($output);
if($size > 0){
header("Cache-Control: private");
header("Pragma: cache");
header("Connection: close");
header("Last-Modified: " . substr(gmdate('r', $mtime), 0, -5). "GMT");
header("ETag: \"". md5(join(' ', $list)) .'-'. dechex($mtime) .'-'.dechex($size)."\"");
}
header("Content-Length: ". $size);
if($content_encoding) header("Content-Encoding: gzip");
echo($output);
}
function write($file_name, $buff, $mode='w'){
$file_name = getRealPath($file_name);
if(@!$fp = fopen($file_name,$mode)) return false;
fwrite($fp, $buff);
fclose($fp);
@chmod($file_name, 0644);
}
function read($file_name) {
$file_name = getRealPath($file_name);
if(!file_exists($file_name)) return;
$filesize = filesize($file_name);
if($filesize<1) return;
if(function_exists('file_get_contents')) return file_get_contents($file_name);
$fp = fopen($file_name, "r");
$buff = '';
if($fp) {
while(!feof($fp) && strlen($buff)<=$filesize) {
$str = fgets($fp, 1024);
$buff .= $str;
}
fclose($fp);
}
return $buff;
}
function makeCacheFileCSS($css_file, $cache_file, $return=false){
$str = read($css_file);
$str = replaceCssPath($css_file, trim(convertEncodingStr($str)));
if($return){
return $str;
}else{
write($cache_file, $str."\n");
unset($str);
}
}
function replaceCssPath($file, $str) {
global $tmp_css_path;
// css 파일의 위치를 구함
$tmp_css_path = preg_replace("/^\.\//is","",dirname($file))."/";
// url() 로 되어 있는 css 파일의 경로를 변경
$str = preg_replace_callback('/url\(([^\)]*)\)/is', '_replaceCssPath', $str);
// charset 지정 문구를 제거
$str = preg_replace('!@charset([^;]*?);!is','',$str);
return $str;
}
function _replaceCssPath($matches) {
global $tmp_css_path, $XE_WEB_PATH;
$path = str_replace(array('"',"'"),'',$matches[1]);
if(substr($path,0,1)=='/' || strpos($path,'://')!==false || strpos($path,'.htc')!==false) return 'url('.$path.')';
if(substr($path,0,2)=='./') $path = substr($path,2);
$target = $XE_WEB_PATH.$tmp_css_path.$path;
while(strpos($target,'/../')!==false) {
$target = preg_replace('/\/([^\/]+)\/\.\.\//','/',$target);
}
return 'url('.$target.')';
}
function convertEncodingStr($str) {
if(!$str) return '';
$charset_list = array(
'UTF-8', 'EUC-KR', 'CP949', 'ISO8859-1', 'EUC-JP', 'SHIFT_JIS', 'CP932',
'EUC-CN', 'HZ', 'GBK', 'GB18030', 'EUC-TW', 'BIG5', 'CP950', 'BIG5-HKSCS',
'ISO2022-CN', 'ISO2022-CN-EXT', 'ISO2022-JP', 'ISO2022-JP-2', 'ISO2022-JP-1',
'ISO8859-6', 'ISO8859-8', 'JOHAB', 'ISO2022-KR', 'CP1255', 'CP1256', 'CP862',
'ASCII', 'ISO8859-1', 'ISO8850-2', 'ISO8850-3', 'ISO8850-4', 'ISO8850-5',
'ISO8850-7', 'ISO8850-9', 'ISO8850-10', 'ISO8850-13', 'ISO8850-14',
'ISO8850-15', 'ISO8850-16', 'CP1250', 'CP1251', 'CP1252', 'CP1253', 'CP1254',
'CP1257', 'CP850', 'CP866',
);
for($i=0,$c=count($charset_list);$i<$c;$i++) {
$charset = $charset_list[$i];
if($str == iconv($charset, $charset.'//IGNORE',$str)){
if($charset == 'UTF-8') return $str;
return iconv($charset, 'UTF-8//IGNORE', $str);
}
}
return $str;
}
if($type == '.js'){
printFileList($list);
}else if($type == '.css'){
$css = array();
if($cache_support){
foreach($list as $file){
$cache_file = $cache_path . md5($file). '.cache.php';
$css[] = getRealPath($cache_file);
}
$cache_key = getCacheKey($css);
$buff = $oCacheHandler->get($cache_key, $mtime);
if(!$buff){
$buff = '';
foreach($list as $file){
$buff .= makeCacheFileCSS($file, '', true);
}
$oCacheHandler->put($cache_key, $buff);
}
}else{
foreach($list as $file){
$cache_file = $cache_path . md5($file). '.cache.php';
$cache_mtime = getMtime($cache_file);
$css_mtime = getMtime($file);
// check modified
if($css_mtime > $cache_mtime){
makeCacheFileCSS($file, getRealPath($cache_file));
}
$css[] = getRealPath($cache_file);
}
}
printFileList($css);
}
?>