﻿/*
# 파일명	: packageloader.js
# 경로	: /skin/js/
# 코드	: UTF-8
# 설명	: JS 기본 패키지 로딩용
# 작성자	: 김성호(sh.kim@yourstage.com)
# 소속	: (주)시니어파트너즈 개발팀
# 일자	: 20080331
*/

var SeniorpartnersPackageLoader = {
	Version: '0.1.0',
	require: function(libraryName) {
		// inserting via DOM fails in Safari 2.0, so brute force approach
		document.write('<script type="text/javascript" src="'+libraryName+'"><\/script>');
	},
	REQUIRED_PROTOTYPE: '1.6.0',
	load: function() {
		function convertVersionString(versionString) {
			var r = versionString.split('.');
			return parseInt(r[0])*100000 + parseInt(r[1])*1000 + parseInt(r[2]);
		}

	if((typeof Prototype=='undefined') ||
		(typeof Element == 'undefined') ||
		(typeof Element.Methods=='undefined') ||
		(convertVersionString(Prototype.Version) < convertVersionString(SeniorpartnersPackageLoader.REQUIRED_PROTOTYPE)))
	throw("yourstage.com services requires the Prototype JavaScript framework >= " + SeniorpartnersPackageLoader.REQUIRED_PROTOTYPE);

	$A(document.getElementsByTagName("script")).findAll( function(s) {
			return (s.src && s.src.match(/packageloader\.js(\?.*)?$/))
		}).each( function(s) {
			var path = s.src.replace(/packageloader\.js(\?.*)?$/,'');
			var includes = s.src.match(/\?.*load=([a-z,]*)/);
			(
				includes ? includes[1] : 'utils/xmlHttp,utils/basic,utils/cookie,utils/formCheck,utils/windowController,utils/AC_RunActiveContent,utils/stringController').split(',').each(
					function(include) { SeniorpartnersPackageLoader.require(path+include+'.js') }
			);
		});
	}
}

SeniorpartnersPackageLoader.load();
