<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://ifigenia.org/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js%2FCoreObjects.js</id>
	<title>MediaWiki:Common.js/CoreObjects.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://ifigenia.org/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js%2FCoreObjects.js"/>
	<link rel="alternate" type="text/html" href="https://ifigenia.org/index.php?title=MediaWiki:Common.js/CoreObjects.js&amp;action=history"/>
	<updated>2026-04-18T11:43:44Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://ifigenia.org/index.php?title=MediaWiki:Common.js/CoreObjects.js&amp;diff=15&amp;oldid=prev</id>
		<title>Ifigenia Administrator: New page: var Creator = { 	createOptgroup: function(label, data) { 		var g = document.createElement(&quot;optgroup&quot;); 		g.label = label; 		for (var i in data) { 			g.appendChild( Creator.createOption(dat...</title>
		<link rel="alternate" type="text/html" href="https://ifigenia.org/index.php?title=MediaWiki:Common.js/CoreObjects.js&amp;diff=15&amp;oldid=prev"/>
		<updated>2008-10-07T23:09:40Z</updated>

		<summary type="html">&lt;p&gt;New page: var Creator = { 	createOptgroup: function(label, data) { 		var g = document.createElement(&amp;quot;optgroup&amp;quot;); 		g.label = label; 		for (var i in data) { 			g.appendChild( Creator.createOption(dat...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;var Creator = {&lt;br /&gt;
	createOptgroup: function(label, data) {&lt;br /&gt;
		var g = document.createElement(&amp;quot;optgroup&amp;quot;);&lt;br /&gt;
		g.label = label;&lt;br /&gt;
		for (var i in data) {&lt;br /&gt;
			g.appendChild( Creator.createOption(data[i], i) );&lt;br /&gt;
		}&lt;br /&gt;
		return g;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createOption: function(val, text) {&lt;br /&gt;
		var o = document.createElement(&amp;quot;option&amp;quot;);&lt;br /&gt;
		o.value = val;&lt;br /&gt;
		o.appendChild( document.createTextNode(text) );&lt;br /&gt;
		return o;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createRadios: function(name, data, checkedId) {&lt;br /&gt;
		var w = document.createElement(&amp;quot;div&amp;quot;);&lt;br /&gt;
		for (var id in data) {&lt;br /&gt;
			w.appendChild( Creator.createRadio(&lt;br /&gt;
				id, name, data[id][0], data[id][1], checkedId == id) );&lt;br /&gt;
		}&lt;br /&gt;
		return w;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createRadio: function(id, name, value, label, checked) {&lt;br /&gt;
		var attrs = { &amp;quot;type&amp;quot; : &amp;quot;radio&amp;quot;, &amp;quot;id&amp;quot; : id, &amp;quot;name&amp;quot; : name, &amp;quot;value&amp;quot; : value };&lt;br /&gt;
		if (checked) attrs[&amp;quot;checked&amp;quot;] = &amp;quot;checked&amp;quot;;&lt;br /&gt;
		var r = Creator.createElement(&amp;quot;input&amp;quot;, attrs);&lt;br /&gt;
		var l = Creator.createLabel(id, label);&lt;br /&gt;
		return Creator.createElement(&amp;quot;div&amp;quot;, {}, [r, l]);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createSubmit: function(value) {&lt;br /&gt;
		var attrs = { &amp;quot;type&amp;quot; : &amp;quot;submit&amp;quot;, &amp;quot;value&amp;quot; : value };&lt;br /&gt;
		return Creator.createElement(&amp;quot;input&amp;quot;, attrs);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createButton: function(value) {&lt;br /&gt;
		return Creator.createElement(&amp;quot;button&amp;quot;, {}, value);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createAnchor: function(url, text, title) {&lt;br /&gt;
		var attrs = { &amp;quot;href&amp;quot; : url, &amp;quot;title&amp;quot; : title };&lt;br /&gt;
		return Creator.createElement(&amp;quot;a&amp;quot;, attrs, text);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createImage: function(url, alt, title) {&lt;br /&gt;
		var attrs = { &amp;quot;src&amp;quot; : url, &amp;quot;alt&amp;quot; : alt, &amp;quot;title&amp;quot; : title };&lt;br /&gt;
		return Creator.createElement(&amp;quot;img&amp;quot;, attrs);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createHiddenField: function(name, value) {&lt;br /&gt;
		var attrs = { &amp;quot;type&amp;quot; : &amp;quot;hidden&amp;quot;, &amp;quot;name&amp;quot; : name, &amp;quot;value&amp;quot; : value };&lt;br /&gt;
		return Creator.createElement(&amp;quot;input&amp;quot;, attrs);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createTextarea: function(id, name, value, rows, cols) {&lt;br /&gt;
		var attrs = { &amp;quot;id&amp;quot; : id, &amp;quot;name&amp;quot; : name || id,&lt;br /&gt;
			&amp;quot;rows&amp;quot; : rows || 3, &amp;quot;cols&amp;quot; :  cols || 40 };&lt;br /&gt;
		return Creator.createElement(&amp;quot;textarea&amp;quot;, attrs, value || &amp;quot;&amp;quot;);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createLabel: function(htmlFor, text) {&lt;br /&gt;
		var attrs = { &amp;quot;for&amp;quot; : htmlFor };&lt;br /&gt;
		return Creator.createElement(&amp;quot;label&amp;quot;, attrs, text);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createElement: function(node, attrs, content) {&lt;br /&gt;
		var e = document.createElement(node);&lt;br /&gt;
		for (var attr in attrs) {&lt;br /&gt;
			e.setAttribute(attr, attrs[attr]);&lt;br /&gt;
		}&lt;br /&gt;
		if (content instanceof Array) {&lt;br /&gt;
			Creator.appendChildrenTo(e, content);&lt;br /&gt;
		} else {&lt;br /&gt;
			Creator.appendChildTo(e, content);&lt;br /&gt;
		}&lt;br /&gt;
		return e;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	createInternUrl: function(page, action, args) {&lt;br /&gt;
		page = encodeURI(page.replace(/ /g, &amp;quot;_&amp;quot;));&lt;br /&gt;
		if ( typeof(action) == &amp;quot;undefined&amp;quot; || action === null ) {&lt;br /&gt;
			return wgArticlePath.replace(&amp;quot;$1&amp;quot;, page);&lt;br /&gt;
		}&lt;br /&gt;
		var url = wgScript + &amp;quot;?title=&amp;quot;+ page +&amp;quot;&amp;amp;action=&amp;quot;+ action;&lt;br /&gt;
		if ( typeof(args) == &amp;quot;undefined&amp;quot; || args === null ) {&lt;br /&gt;
			return url;&lt;br /&gt;
		}&lt;br /&gt;
		for (var arg in args) {&lt;br /&gt;
			url += &amp;quot;&amp;amp;&amp;quot; + arg + &amp;quot;=&amp;quot; + args[arg];&lt;br /&gt;
		}&lt;br /&gt;
		return url;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	appendChildrenTo: function(parent, children) {&lt;br /&gt;
		for (var i = 0; i &amp;lt; children.length; i++) {&lt;br /&gt;
			parent = Creator.appendChildTo(parent, children[i]);&lt;br /&gt;
		}&lt;br /&gt;
		return parent;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	appendChildTo: function(parent, child) {&lt;br /&gt;
		if ( typeof(child) == &amp;quot;string&amp;quot; ) {&lt;br /&gt;
			parent.appendChild( document.createTextNode(child) );&lt;br /&gt;
		} else if ( child instanceof HTMLElement ) {&lt;br /&gt;
			parent.appendChild(child);&lt;br /&gt;
		}&lt;br /&gt;
		return parent;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
 &lt;br /&gt;
// from http://www.quirksmode.org/js/cookies.html&lt;br /&gt;
// escape(), unescape() methods added&lt;br /&gt;
var Cookie = {&lt;br /&gt;
	create: function(name, value, days) {&lt;br /&gt;
		var expires;&lt;br /&gt;
		if (days) {&lt;br /&gt;
			var date = new Date();&lt;br /&gt;
			date.setTime(date.getTime() + (days*24*60*60*1000));&lt;br /&gt;
			expires = &amp;quot;; expires=&amp;quot; + date.toGMTString();&lt;br /&gt;
		} else {&lt;br /&gt;
			expires = &amp;quot;&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
		document.cookie = Cookie.escape(name) + &amp;quot;=&amp;quot; + Cookie.escape(value)&lt;br /&gt;
			+ expires + &amp;quot;; path=/&amp;quot;;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	read: function(name) {&lt;br /&gt;
		var nameEQ = Cookie.escape(name) + &amp;quot;=&amp;quot;;&lt;br /&gt;
		var ca = document.cookie.split(&amp;#039;;&amp;#039;);&lt;br /&gt;
		for (var i = 0; i &amp;lt; ca.length; i++) {&lt;br /&gt;
			var c = ca[i];&lt;br /&gt;
			while (c.charAt(0)==&amp;#039; &amp;#039;) {&lt;br /&gt;
				c = c.substring(1, c.length);&lt;br /&gt;
			}&lt;br /&gt;
			if (c.indexOf(nameEQ) === 0) {&lt;br /&gt;
				return Cookie.unescape(c.substring(nameEQ.length, c.length));&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		return null;&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	erase: function(name) {&lt;br /&gt;
		Cookie.create(name, &amp;quot;&amp;quot;, -1);&lt;br /&gt;
	},&lt;br /&gt;
 &lt;br /&gt;
	escape: function(v) {&lt;br /&gt;
		return encodeURIComponent(v);&lt;br /&gt;
	},&lt;br /&gt;
	unescape: function(v) {&lt;br /&gt;
		return decodeURIComponent(v);&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
var _lang_messages = {};&lt;br /&gt;
var _debug_lang = false;&lt;br /&gt;
 &lt;br /&gt;
function MessageLanguage() {&lt;br /&gt;
	this.lang = DEFAULT_USER_LANGUAGE;&lt;br /&gt;
	this.messages = new Object();&lt;br /&gt;
	this.prefix = &amp;quot;&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
	this.addMessages = function(messages, code, prefix) {&lt;br /&gt;
		if ( typeof this.messages[code] == &amp;quot;undefined&amp;quot; ) {&lt;br /&gt;
			this.messages[code] = new Object();&lt;br /&gt;
		}&lt;br /&gt;
		var p = typeof prefix == &amp;quot;string&amp;quot; ? prefix : &amp;quot;&amp;quot;;&lt;br /&gt;
		for (var key in messages) {&lt;br /&gt;
			if ( typeof key == &amp;quot;string&amp;quot; ) {&lt;br /&gt;
				this.messages[code][p + key] = messages[key];&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	};&lt;br /&gt;
 &lt;br /&gt;
	this.setLanguage = function(langCode) {&lt;br /&gt;
		this.lang = langCode;&lt;br /&gt;
		this.importMessages( this.lang );&lt;br /&gt;
	};&lt;br /&gt;
 &lt;br /&gt;
	this.setPrefix = function(prefix) {&lt;br /&gt;
		this.prefix = prefix;&lt;br /&gt;
	};&lt;br /&gt;
 &lt;br /&gt;
	this.msg = function(key) {&lt;br /&gt;
		key = this.prefix + key;&lt;br /&gt;
		var msg = this.messages[this.lang] &amp;amp;&amp;amp; this.messages[this.lang][key];&lt;br /&gt;
		if ( typeof msg == &amp;quot;undefined&amp;quot; ) {&lt;br /&gt;
			if ( _debug_lang ) alert(key + &amp;quot; го няма на &amp;quot;+this.lang);&lt;br /&gt;
			msg = this.messages[FALLBACK_USER_LANGUAGE]&lt;br /&gt;
				&amp;amp;&amp;amp; this.messages[FALLBACK_USER_LANGUAGE][key];&lt;br /&gt;
		}&lt;br /&gt;
		if ( typeof msg == &amp;quot;undefined&amp;quot; ) {&lt;br /&gt;
			return &amp;quot;{&amp;quot;+ key +&amp;quot;}&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
		for (var i = 1; i &amp;lt; arguments.length; i++) {&lt;br /&gt;
			msg = msg.replace(&amp;quot;$&amp;quot;+i, arguments[i]);&lt;br /&gt;
		}&lt;br /&gt;
		return msg;&lt;br /&gt;
	};&lt;br /&gt;
 &lt;br /&gt;
	this.importMessages = function(lang) {&lt;br /&gt;
		importScript(&amp;quot;MediaWiki:Messages/&amp;quot; + lang + &amp;quot;.js&amp;quot;);&lt;br /&gt;
	};&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
var gLang = new MessageLanguage();&lt;br /&gt;
 &lt;br /&gt;
// import message files&lt;br /&gt;
gLang.setLanguage( wgUserLanguage );&lt;br /&gt;
 &lt;br /&gt;
var mainLangs = [ DEFAULT_USER_LANGUAGE, FALLBACK_USER_LANGUAGE ];&lt;br /&gt;
if ( ! inArray( wgUserLanguage, mainLangs ) ) {&lt;br /&gt;
	gLang.importMessages( FALLBACK_USER_LANGUAGE );&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
// add messages on load&lt;br /&gt;
addOnloadHook( function() {&lt;br /&gt;
	if ( typeof _lang_messages[ wgUserLanguage ] == &amp;quot;object&amp;quot; ) {&lt;br /&gt;
		gLang.addMessages( _lang_messages[ wgUserLanguage ], wgUserLanguage );&lt;br /&gt;
	}&lt;br /&gt;
	if ( typeof _lang_messages[ FALLBACK_USER_LANGUAGE ] == &amp;quot;object&amp;quot; ) {&lt;br /&gt;
		if ( ! inArray( wgUserLanguage, mainLangs ) ) {&lt;br /&gt;
			gLang.addMessages( _lang_messages[ FALLBACK_USER_LANGUAGE ],&lt;br /&gt;
				FALLBACK_USER_LANGUAGE );&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
});&lt;/div&gt;</summary>
		<author><name>Ifigenia Administrator</name></author>
	</entry>
</feed>