ഉപയോക്താവ്:Sadik Khalid/vector.js/quality.js

വിക്കിപീഡിയ, ഒരു സ്വതന്ത്ര വിജ്ഞാനകോശം.

ശ്രദ്ധിക്കുക: സേവ് ചെയ്തശേഷം മാറ്റങ്ങൾ കാണാനായി താങ്കൾക്ക് ബ്രൗസറിന്റെ കാഷെ ഒഴിവാക്കേണ്ടി വന്നേക്കാം.

  • ഫയർഫോക്സ് / സഫാരി: Reload ബട്ടൺ അമർത്തുമ്പോൾ Shift കീ അമർത്തി പിടിക്കുകയോ, Ctrl-F5 അല്ലെങ്കിൽ Ctrl-R (മാക്കിന്റോഷിൽ ⌘-R ) എന്ന് ഒരുമിച്ച് അമർത്തുകയോ ചെയ്യുക
  • ഗൂഗിൾ ക്രോം: Ctrl-Shift-R (മാക്കിന്റോഷിൽ ⌘-Shift-R ) അമർത്തുക
  • ഇന്റർനെറ്റ് എക്സ്പ്ലോറർ: Refresh ബട്ടൺ അമർത്തുമ്പോൾ Ctrl കീ അമർത്തിപിടിക്കുക. അല്ലെങ്കിൽ Ctrl-F5 അമർത്തുക
  • ഓപ്പറ: Menu → Settings എടുക്കുക (മാക്കിൽ Opera → Preferences) എന്നിട്ട് Privacy & security → Clear browsing data → Cached images and files ചെയ്യുക.
//************************* ഗുണമേന്മ സ്ക്രിപ്റ്റ് ഇവിടെ തുടങ്ങുന്നു **************************
//**************************************************************************************************

// ജലകത്തിനും ക്വിക്ക്ഫോമിനും ആവശ്യമായ ഘടകങ്ങളടങ്ങുന്ന morebits.js എന്ന സ്ക്രിപ്റ്റ് ഇറക്കുമതി ചെയ്യുവാൻ
importScript ('User:Sadik Khalid/morebits.js');

//"ഗുണമേന്മ" എന്ന ടാബ് ലേഖനം (ns0) നാമമേഖലയിൽ ചേർക്കുവാൻ
$(function() {
var FinalMarks=new Array("-","-","-","-","-");
    if(wgNamespaceNumber == 0) {
        mw.util.addPortletLink('p-cactions', 'javascript:qualitycheck()', 'ഗുണമേന്മ', 'ca-addsection', 'ഗുണമേന്മ വിലയിരുത്തുവാൻ', '*', '');
    }

//ഗുണമേന്മ വിലയിരുത്തുവാനുള്ള ജാലകം
qualitycheck = function qualitycheck()
{
var Window = new SimpleWindow( 400, 500 );
Window.setTitle( "ഗുണമേന്മ വിലയിരുത്തി അഭിപ്രായം അറിയിക്കുവാൻ" );

var MainForm = new QuickForm (qualityresult);

var Frame = MainForm.append( {
			type: 'field',
			name: 'Frame',
			label: wgTitle + ' എന്ന ലേഖനത്തെ താങ്കൾ എങ്ങിനെ നോക്കിക്കാണുന്നു?',
		} );

// സെലക്ഷൻ ബോക്സ് - ഉള്ളടക്കം
Frame.append( { type:'header', label:'ഉള്ളടക്കം:' } );
var ContentList = Frame.append( {
			type: 'select',
			name: 'content',
			label: '',
			event: content

		} );
	ContentList.append( {
			type: 'option',
			label: '- ഏറ്റവും അനുയോജ്യമായത് തിരഞ്ഞെടുക്കുക - ',
			value: '-'
		} );
	ContentList.append( {
			type: 'option',
			label: '0: പ്രാഥമിക വിവരങ്ങൾ പോലും നൽകാത്ത ലേഖനം.',
			value: '0'
		} );
	ContentList.append( {
			type: 'option',
			label: '1: അടിസ്ഥാന നിർവചനം മാത്രമുള്ള ലേഖനം.',
			value: '1'
		} );
	ContentList.append( {
			type: 'option',
			label: '2: നിർവചനത്തോടൊപ്പം ലഘുവിവരണം കൂടി ഉള്ള ലേഖനം.',
			value: '2'
		} );
	ContentList.append( {
			type: 'option',
			label: '3: പ്രാഥമിക അല്ലെങ്കിൽ മദ്ധ്യമതല പഠന നിലവാരത്തിലുള്ളത്.',
			value: '3'
		} );
	ContentList.append( {
			type: 'option',
			label: '4: ബിരുദമോ അല്ലെങ്കിൽ തത്തുല്യ പഠന നിലവാരത്തിലുള്ളത്.',
			value: '4'
		} );
	ContentList.append( {
			type: 'option',
			label: '5: വിജ്ഞാനകോശ നിലവാരത്തിൽ അഥവാ ആഴത്തിലുള്ള ഉള്ളടക്കത്തോട് കൂടിയത്.',
			value: '5'
		} );

// സെലക്ഷൻ ബോക്സ് - ശൈലി
Frame.append( { type:'header', label:'ശൈലി:' } );
var StyleList = Frame.append( {
			type: 'select',
			name: 'style',
			label: '',
			event: style
		} );
	StyleList.append( {
			type: 'option',
			label: '- ഏറ്റവും അനുയോജ്യമായത് തിരഞ്ഞെടുക്കുക - ',
			value: '-'
		} );
	StyleList.append( {
			type: 'option',
			label: '0: നിലവാരമില്ലാത്തത്.',
			value: '0'
		} );
	StyleList.append( {
			type: 'option',
			label: '1: സങ്കീർണമായ പദങ്ങൾ ഉപയോഗിച്ച് ആശയം വ്യക്തമാക്കുന്നത്.',
			value: '1'
		} );
	StyleList.append( {
			type: 'option',
			label: '2: ഇതര സ്രോതകളുടെ സഹായത്തോടെ ആശയം മനസ്സിലാക്കാൻ പറ്റുന്നത്.',
			value: '2'
		} );
	StyleList.append( {
			type: 'option',
			label: '3: വിക്കിപീഡിയയിലുള്ള മറ്റു ലേഖനങ്ങളുടെ സഹായത്തോടെ ആശയം മനസ്സിലാക്കാൻ പറ്റുന്നത്.',
			value: '3'
		} );
	StyleList.append( {
			type: 'option',
			label: '4: സാമാന്യം പ്രചാരത്തിലുള്ള മലയാള സാങ്കേതികപദങ്ങൾ ഉപയോഗിച്ച്, ആശയം വ്യക്തമാകുന്നത്.',
			value: '4'
		} );
	StyleList.append( {
			type: 'option',
			label: '5: ലളിതമായ വാക്കുകൾ ഉപയോഗിച്ച് അക്ഷരത്തെറ്റുകളില്ലാതെ ആശയം വ്യക്തമാക്കുന്നത്.',
			value: '5'
		} );

// സെലക്ഷൻ ബോക്സ് - ലേഖനസംവിധാനം
Frame.append( { type:'header', label:'ലേഖനസംവിധാനം:' } );
var WritingStyleList = Frame.append( {
			type: 'select',
			name: 'writing_style',
			label: '',
			event: writingstyle
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '- ഏറ്റവും അനുയോജ്യമായത് തിരഞ്ഞെടുക്കുക - ',
			value: '-'
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '0: വ്യക്തമായി ഖണ്ഡിക തിരിച്ച് എഴുതാത്തത്.',
			value: '0'
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '1:  ഒന്നോ രണ്ടോ ഖണ്ഡികയിൽ ചെറുതലക്കെട്ടുകളില്ലാതെ എഴുതിയത്.',
			value: '1'
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '2: ഖണ്ഡിക തിരിച്ച് ചെറുതലക്കെട്ടോടെ ഉദാഹരണ സഹിതം എഴുതിയത്.',
			value: '2'
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '3: രണ്ടാമത്തെ സവിശേഷത, വിക്കിവൽകരണം, കൂടുതൽ വിവരങ്ങളോടുകൂടിയ പുറംകണ്ണികൾ എന്നിവ ഉള്ളത്.',
			value: '3'
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '4: രണ്ട്, മൂന്ന് എന്നീ സവിശേഷതകളും; ഉചിതമായ ചിത്രങ്ങളുടെയും മറ്റും സഹായത്തോടെ എഴുതിയത്.',
			value: '4'
		} );
	WritingStyleList.append( {
			type: 'option',
			label: '5: രണ്ട് മുതൽ നാലുവരെയുള്ള സവിശേഷതകൾ, യുക്തിസഹമായ രീതിയിലുള്ള വിവരണം, ശരിയായ വർഗ്ഗത്തിൽ ഉൾപ്പെടുത്തിയത്.',
			value: '5'
		} );

// സെലക്ഷൻ ബോക്സ് -ആധികാരികത
Frame.append( { type:'header', label:'ആധികാരികത:' } );
var ReferenceList = Frame.append( {
			type: 'select',
			name: 'reference',
			label: '',
			event: reference
		} );
	ReferenceList.append( {
			type: 'option',
			label: '- ഏറ്റവും അനുയോജ്യമായത് തിരഞ്ഞെടുക്കുക - ',
			value: '-'
		} );
	ReferenceList.append( {
			type: 'option',
			label: '0: ആവശ്യത്തിന് അവലംബങ്ങളില്ലാത്ത ലേഖനം',
			value: '0'
		} );
	ReferenceList.append( {
			type: 'option',
			label: '1:  ഉള്ളടക്കത്തിന് ആവശ്യമായ അവലംബം ചേർത്തത്.',
			value: '1'
		} );
	ReferenceList.append( {
			type: 'option',
			label: '2: ഉള്ളടക്കം, ഉപവിഭാഗം എന്നിവയ്ക്ക് വ്യക്തമായ അവലംബം ചേർത്തത്.',
			value: '2'
		} );
	ReferenceList.append( {
			type: 'option',
			label: '3: ഒന്നാമത്തെയും രണ്ടാമത്തെയും സവിശേഷതകൾ, ലേഖനത്തിലെ മുഖ്യവിഷയം അതാതു മേഖലകളിലുള്ള പണ്ഡിതന്മാർ അംഗീകരിച്ചത്.',
			value: '3'
		} );
	ReferenceList.append( {
			type: 'option',
			label: '4: ഒന്നു മുതൽ മൂന്ന് വരെയുള്ള സവിശേഷതകൾ, ഉപവിഷയങ്ങൾ, അനുബന്ധവിഷയങ്ങൾ, എന്നിവ അതാതു മേഖലകളിലുള്ള പണ്ഡിതന്മാർ അംഗീകരിച്ചവ.',
			value: '4'
		} );
	ReferenceList.append( {
			type: 'option',
			label: '5: ഒന്നു മുതൽ നാല് വരെയുളള സവിഷേശതകൾ, അവ പരിശോധിച്ച് ഉറപ്പുവരുത്താവുന്ന രീതിയിൽ കണ്ണികളും കുറിപ്പുകളും നൽകിയിട്ടുള്ളത്.',
			value: '5'
		} );

// സെലക്ഷൻ ബോക്സ് - പ്രതികൂലമാർക്ക്
Frame.append( { type:'header', label:'പ്രതികൂലമാർക്ക്:' } );
var NegativeMarkList = Frame.append( {
			type: 'select',
			name: 'negative_mark',
			label: '',
			event: negativemark
		} );
	NegativeMarkList.append( {
			type: 'option',
			label: '- ഏറ്റവും അനുയോജ്യമായത് തിരഞ്ഞെടുക്കുക - ',
			value: '-'
		} );
			NegativeMarkList.append( {
			type: 'option',
			label: ' 0: ഇല്ല.',
			value: '0'
		} );
	NegativeMarkList.append( {
			type: 'option',
			label: '-1:  ലേഖകന്റെ(രുടെ) സ്വന്തം അഭിപ്രായം/ചായ്‌വ് ഉള്ളത്.',
			value: '-1'
		} );
	NegativeMarkList.append( {
			type: 'option',
			label: '-2: തള്ളിക്കളഞ്ഞ ആശയം നിലവിലുണ്ടെന്ന രീതിയിൽ എഴുതിയത്.',
			value: '-2'
		} );
	NegativeMarkList.append( {
			type: 'option',
			label: '-3: സംശയാവഹമായ ഉള്ളടത്തോട് കൂടിയവ.',
			value: '-3'
		} );
	NegativeMarkList.append( {
			type: 'option',
			label: '-4: അവിശ്വസനീയമായ ഉള്ളടത്തോട് കൂടിയവ.',
			value: '-4'
		} );
	NegativeMarkList.append( {
			type: 'option',
			label: '-5: നീക്കം ചെയ്യാൻ സാധ്യതയുള്ള ഉള്ളടക്കം അടങ്ങിയവ.',
			value: '-5'
		} );

// റ്റെക്സ്റ്റ് ബോക്സ് - അഭിപ്രായം
	MainForm.append( {
			type: 'textarea',
			label:'അഭിപ്രായം',
			name: 'comment'
		} );

	MainForm.append( { type: 'submit' } );

	var result = MainForm.render();
	Window.setContent( result );

 
Window.display();

}


// മാർക്ക് - ഉള്ളടക്കം
content = function content (e) {
	FinalMarks[0] = e.target.value;
}


// മാർക്ക് - ശൈലി
style = function style (e) {
	FinalMarks[1] = e.target.value;
}


// മാർക്ക് - ലേഖനസംവിധാനം
writingstyle = function writingstyle (e) {
	FinalMarks[2] = e.target.value;
}


// മാർക്ക് - ആധികാരികത
reference = function reference (e) {
	FinalMarks[3] = e.target.value;
}


// മാർക്ക് - പ്രതികൂലമാർക്ക്
negativemark = function negativemark (e) {
	FinalMarks[4] = e.target.value;
}


qualityresult = function qualityresult (e){
var Comment = e.target.comment.value;
var Quality = "\n{{നൽകിയ മാർക്ക്|" + FinalMarks[0] + "|" + FinalMarks[1] + "|" + FinalMarks[2] + "|" + FinalMarks[3] + "|" + FinalMarks[4] + "}}\n" + Comment + "--\~\~\~\~";

var api = sajax_init_object();
api.open('GET', mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php?format=json&action=query&prop=info&indexpageids=1&intoken=edit&titles=Whatever', true);
api.onreadystatechange = extract_token;
api.send(null);
function extract_token() {
	if(api.readyState==4) {
		if(api.status==200) {
			var response = eval('(' + api.responseText + ')');
			var token = response['query']['pages'][response['query']['pageids'][0]]['edittoken'];
			edit_page(token);
		}
		else {
			alert('തിരുത്തുവാനുള്ള അടയാളം ലഭിച്ചില്ല, ദയവായി വീണ്ടും ശ്രമിക്കുക.');
		}
	}
}

function edit_page(_token) {
	var parameters = 'action=edit&title=വിക്കിപീഡിയ:വിക്കിപദ്ധതി/ഗുണമേന്മ/' + wgTitle + '&appendtext=' + Quality + '&token=' + encodeURIComponent(_token);
	api.open('POST', mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php', true); // just reuse the same query object
	api.onreadystatechange = alert_result;
	api.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
	api.setRequestHeader('Connection', 'keep-alive');
	api.setRequestHeader('Content-length', parameters.length);
	api.send(parameters);
	
	function alert_result() {
		if(api.readyState==4) {
			if(api.status==200) {
				alert('നന്ദി, താങ്കൾ നൽകിയ മാർക്കുകൾ രേഖപ്പെടുത്തിയിരിക്കുന്നു!');
			}
			else {
				alert('താങ്കൾ നൽകിയ മാർക്കുകൾ രേഖപ്പെടുത്തുവാൻ സാധിച്ചില്ല, ദയവായി വീണ്ടും ശ്രമിക്കുക.');
			}
		}
	}
}

}

});

//************************* ഗുണമേന്മ സ്ക്രിപ്റ്റ് ഇവിടെ അവസാനിക്കുന്നു **************************
//***********************************************************************************************************