사용자:Bd3076/common.js: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
백괴게임>Bd3076
편집 요약 없음
백괴게임>Js091213
잔글 (Bd3076의 편집을 유한림의 마지막 판으로 되돌림)
1번째 줄: 1번째 줄:
function pluginXCore() {
function pluginXCore() {
function forEach(object, callback) {
        for (var key in object) {
            var variable = object[key];
            callback(variable, key);
        }
    }
   
     var script_list = [];
     var script_list = [];
    var pluginExist = false;
      
      
     var api = MediaWikiAPI();
     var api = MediaWikiAPI();
17번째 줄: 23번째 줄:
     var getPluginList = function(){
     var getPluginList = function(){
     $(".c_pluginX").each(function() {
     $(".c_pluginX").each(function() {
    pluginExist = true;
     var url = $(this).attr('data-url');
     var url = $(this).attr('data-url');
     var name = $(this).attr('data-name');
     var name = $(this).attr('data-name');
31번째 줄: 36번째 줄:
      
      
     var showWindow = function(){
     var showWindow = function(){
     $('#mw-content-text').html(api.readDocument("틀:PluginX/setup"));
     $('#mw-content-text').text("");
    var script = "";
   
    script_list.forEach(function(data){
    var addingCode;
    addingCode = '<div class="px-code">';
    addingCode = addingCode.concat(data.script);
    addingCode = addingCode.concat('</div> <div class="px-codeinfo"> <ul> <li> 플러그인 이름: ');
    addingCode = addingCode.concat(data.name);
    addingCode = addingCode.concat('</li> <li> 플러그인 제작자: ');
    addingCode = addingCode.concat(data.creator);
    addingCode = addingCode.concat('</li> </ul> </div');
   
    console.log(addingCode);
   
    script += addingCode;
    });
   
    document.getElementById('px-script').innerHTML = script;
   
$('#px-button').on('click', executePlugins);
     };
     };
   
    var executePlugins = function(){
    document.getElementById('px-box').display = none;
   
    script_list.forEach(function(data){
    var link = data.url;
    $.getScript(link);
    });
    };
   
     getPluginList();
     getPluginList();
    if(pluginExist === false) return;
    showWindow();
}
}
$(pluginXCore());
pluginXCore();

2018년 11월 8일 (목) 15:39 판

function pluginXCore() {
	function forEach(object, callback) {
        for (var key in object) {
            var variable = object[key];
            callback(variable, key);
        }
    }
    
    var script_list = [];
    
    var api = MediaWikiAPI();
    
    var generateScriptData = function(_url, _name, _creator, _doc, _script){
    	return {
    		url: _url,
    		name: _name,
    		creator: _creator,
    		doc: _doc,
    		script: _script,
    	};
    };
    
    var getPluginList = function(){
    	$(".c_pluginX").each(function() {
    		var url = $(this).attr('data-url');
    		var name = $(this).attr('data-name');
    		var creator = $(this).attr('data-creator');
    		var doc = $(this).attr('data-doc');
    		
    		var script = api.getDocument(doc);
    		console.log("Code: " + script);
    		
    		script_list.push(generateScriptData(url, name, creator, doc, script));
    	});
    };
    
    var showWindow = function(){
    	$('#mw-content-text').text("");
    };
    getPluginList();
}
pluginXCore();