|
|
Line 1: |
Line 1: |
| [ javascript:var Manifest = " RefScript version 40 (2013-09-17). This program is in the Public Domain. You can use it as you wish. "; | | [[File:Example.svg|200px]] |
| var User_Prefix = "";
| |
| var Date_Format = "";
| |
| var SiteLN = "en";
| |
| var AuthorNameTitleCase = "yes";
| |
| function toTitleCase(str) {
| |
| var str = str.toLowerCase();
| |
| return str.replace(/[^\s]+/g, function(word) {
| |
| return word.replace(/^./, function(first) {
| |
| return first.toUpperCase();
| |
| });
| |
| });
| |
| };
| |
| function f_process_Newspaper_Name() {
| |
| var P_Newspaper = u.replace(/\.com.*/, ".com");
| |
| var P_Newspaper = P_Newspaper.replace(/\.net.*/, ".net");
| |
| var P_Newspaper = P_Newspaper.replace(/\.co.uk.*/, ".co.uk");
| |
| var P_Newspaper = P_Newspaper.replace(/\.org.*/, ".org");
| |
| var P_Newspaper = P_Newspaper.replace(/\.net.*/, ".net");
| |
| var P_Newspaper = P_Newspaper.replace(/\.ca\/.*/, ".ca");
| |
| var P_Newspaper = P_Newspaper.replace(/http:\/\/www./, "");
| |
| var P_Newspaper = P_Newspaper.replace(/http:\/\//, "");
| |
| var P_Newspaper = toTitleCase(P_Newspaper);
| |
|
| |
|
| return P_Newspaper;
| |
| };
| |
| function f_process_EN_Date(P_Date) {
| |
|
| |
|
| var P_Date = P_Date.replace(/\n/g, " ");
| |
| var P_Date = P_Date.replace(/\t/g, " ");
| |
| var P_Date = P_Date.replace(/^ +/, "");
| |
| var P_Date = P_Date.replace(/ +$/, "");
| |
|
| |
|
| var P_Date = P_Date.replace(/January 0/, "January ");
| |
| var P_Date = P_Date.replace(/February 0/, "February ");
| |
| var P_Date = P_Date.replace(/March 0/, "March ");
| |
| var P_Date = P_Date.replace(/April 0/, "April ");
| |
| var P_Date = P_Date.replace(/May 0/, "May ");
| |
| var P_Date = P_Date.replace(/June 0/, "June ");
| |
| var P_Date = P_Date.replace(/July 0/, "July ");
| |
| var P_Date = P_Date.replace(/August 0/, "August ");
| |
| var P_Date = P_Date.replace(/September 0/, "September ");
| |
| var P_Date = P_Date.replace(/October 0/, "October ");
| |
| var P_Date = P_Date.replace(/November 0/, "November ");
| |
| var P_Date = P_Date.replace(/December 0/, "December ");
| |
|
| |
|
| var P_Date = P_Date.replace(/ Jan /, " January ");
| | [[File:Example.jpg|200px]] |
| var P_Date = P_Date.replace(/ Feb /, " February ");
| |
| var P_Date = P_Date.replace(/ Mar /, " March ");
| |
| var P_Date = P_Date.replace(/ Apr /, " April ");
| |
| var P_Date = P_Date.replace(/ May /, " May ");
| |
| var P_Date = P_Date.replace(/ Jun /, " June ");
| |
| var P_Date = P_Date.replace(/ Jul /, " July ");
| |
| var P_Date = P_Date.replace(/ Aug /, " August ");
| |
| var P_Date = P_Date.replace(/ Sep /, " September ");
| |
| var P_Date = P_Date.replace(/ Sept /, " September ");
| |
| var P_Date = P_Date.replace(/ Oct /, " October ");
| |
| var P_Date = P_Date.replace(/ Nov /, " November ");
| |
| var P_Date = P_Date.replace(/ Dec /, " December ");
| |
|
| |
|
| return P_Date;
| |
| };
| |
| function f_process_Authors_names(P_Authors) {
| |
|
| |
|
| var P_Authors = P_Authors.replace(/\./g, ". ");
| |
| var P_Authors = P_Authors.replace(/\n/g, "");
| |
| var P_Authors = P_Authors.replace(/\t/g, "");
| |
| var P_Authors = P_Authors.replace(/ +,/g, ",");
| |
| var P_Authors = P_Authors.replace(/,/g, ", ");
| |
| var P_Authors = P_Authors.replace(/ +/g, " ");
| |
| var P_Authors = P_Authors.replace(/^ +/, "");
| |
| var P_Authors = P_Authors.replace(/ +$/, "");
| |
| var P_Authors = P_Authors.replace(/^ +$/, "");
| |
| var P_Authors = P_Authors.replace(/-/g, " = ");
| |
| if (AuthorNameTitleCase == "yes") var P_Authors = toTitleCase(P_Authors);
| |
| var P_Authors = P_Authors.replace(/ = /g, "-");
| |
| var P_Authors = P_Authors.replace(/- /, "-");
| |
|
| |
|
| return P_Authors;
| | |
| };
| | [[File:Example.png|200px]] |
| var u = document.URL;
| |
| var d = document.body.innerHTML;
| |
| var W_Authors = "";
| |
| var W_Date = "";
| |
| var W_Title = "";
| |
| var W_Newspaper = "";
| |
| var W_Source = "";
| |
| var sItalic = "''";
| |
| var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
| |
| var today = new Date();
| |
| var month_today = months[today.getMonth()];
| |
| var dd = today.getDate();
| |
| var mm = today.getMonth()+1;
| |
| var yyyy = today.getFullYear();
| |
| var zdd = dd;
| |
| if (zdd<10) { var zdd='0'+zdd };
| |
| if (mm<10) { var mm='0'+mm };
| |
| var today = dd+'.'+mm+'.'+yyyy;
| |
| var today_YMD = yyyy+'-'+mm+'-'+zdd;
| |
| var today_EN = yyyy+'-'+mm+'-'+zdd;
| |
| var UStoday_EN = month_today + ' ' + dd + ', '+yyyy;
| |
| var UKtoday_EN = dd + ' ' + month_today + ' '+ yyyy;
| |
| var yesterday = new Date(new Date().setDate(new Date().getDate()-1));
| |
| var month_yesterday = months[yesterday.getMonth()];
| |
| var ydd = yesterday.getDate();
| |
| var zydd = ydd;
| |
| var ymm = yesterday.getMonth()+1;
| |
| var yyyyy = yesterday.getFullYear();
| |
| if (zydd<10) { var zydd='0'+ydd };
| |
| if (ymm<10) { var ymm='0'+ymm };
| |
| var yesterday = zydd+'.'+ymm+'.'+yyyyy;
| |
| var yesterday_EN = yyyyy+'-'+ymm+'-'+zydd;
| |
| var USyesterday_EN = month_yesterday + ' ' + ydd + ', ' + yyyyy;
| |
| var UKyesterday_EN = ydd + ' ' + month_yesterday + ' ' + yyyyy;
| |
| if (Date_Format == "US") { var today_EN = UStoday_EN; var yesterday_EN = USyesterday_EN; };
| |
| if (Date_Format == "UK") { var today_EN = UKtoday_EN; var yesterday_EN = UKyesterday_EN; };
| |
| var WW_Title = document.title;
| |
| var WW_Title = WW_Title.replace(/ *\|.*/, "");
| |
| var WW_Newspaper = f_process_Newspaper_Name();
| |
| var W_URL = document.URL;
| |
| if (u.match(/bbc.co.uk/)) {
| |
| var x = document.title;
| |
| var x = x.replace(/BBC NEWS \| Europe \| /,"");
| |
| var x = x.replace(/.*\| */,"");
| |
| var W_Title = x.replace(/BBC News - /,"");
| |
| if (d.match(/<span class="lu">.*/)) {
| |
| var x = d.match(/<span class="lu">.*/)[0];
| |
| var x = x.replace(/<span class="lu">Last Updated: <\/span>/,"");
| |
| var x = x.replace(/GMT.*/, "");
| |
| var x = x.replace(/:.*/, "");
| |
| var x = x.replace(/,/, "@");
| |
| var x = x.replace(/.*@/, "");
| |
| var W_Date = x.replace(/,.*/, "");
| |
| } else
| |
| if (d.match(/<span class="date">/)) {
| |
| var x = d.match(/<span class="date">.*/)[0];
| |
| var x = x.replace(/<span class="date">/, "");
| |
| var W_Date = x.replace(/<\/span>/, "");
| |
| };
| |
| if (d.match(/<span class="byl">/)) {
| |
| var x = d.match(/<span class="byl">[^]*<\/span>/)[0];
| |
| var x = x.match(/By .*/)[0];
| |
| var W_Authors = x.replace(/By /, "");
| |
| } else
| |
| if (d.match(/<span class="byline-name">/)) {
| |
| var x = d.match(/<span class="byline-name">.*<\/span>/)[0];
| |
| var x = x.replace(/<span class="byline-name">/, "");
| |
| var W_Authors = x.replace(/<\/span>/, "");
| |
| };
| |
| var W_Authors = W_Authors.replace(/^By /, "");
| |
| var W_Newspaper = "BBC";
| |
| };
| |
| if (u.match(/dailymail.co.uk/)) {
| |
| if (d.match(/<h1>.*/)) {
| |
| var x = d.match(/<h1>.*<\/h1>/)[0];
| |
| var x = x.replace(/<.?h1>/g, "");
| |
| var W_Title = x.replace(/<br>/g,"");
| |
| };
| |
| var x = d.replace(/[\n\r]/g,"");
| |
| var x = x.replace(/<\/span>/g, "<\/span>\n");
| |
| var x = x.replace(/<span>/g, "\n<span>");
| |
| if (x.match(/<strong>PUBLISHED:/)) {
| |
| var x = x.match(/<strong>PUBLISHED:.*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var x = x.replace(/.*>/, "");
| |
| var W_Date = x.replace(/.*,/, "");
| |
| } else
| |
| if (x.match(/<strong>UPDATED:/)) {
| |
| var x = x.match(/<strong>UPDATED:.*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var x = x.replace(/.*>/, "");
| |
| var W_Date = x.replace(/.*,/, "");
| |
| };
| |
| if (d.match(/class="author" rel="nofollow"/)) {
| |
| var x = d.match(/class="author" rel="nofollow".*/)[0];
| |
| var x = x.replace(/<\/a>.*/, "");
| |
| var W_Authors = x.replace(/.*>/, "");
| |
| };
| |
| var W_Newspaper = "Daily Mail";
| |
| };
| |
| if (u.match(/arstechnica.com/)) {
| |
| var x = document.title;
| |
| var W_Title = x.replace(/ *\| *Ars Technica/, "");
| |
| if (d.match(/ class="date"/)) {
| |
| var x = d.match(/ class="date".*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var x = x.replace(/.*>/, "");
| |
| var W_Date = x.replace(/ *,.*/, "");
| |
| var W_Date = W_Date.replace(/(.*) (.*) (.*)/, "$2 $1 $3");
| |
| };
| |
| if (d.match(/<a href=.*rel="author"/)) {
| |
| var x = d.match(/ <a href=.*rel="author".*/)[0];
| |
| var x = x.replace(/<\/a>.*/, "");
| |
| var W_Authors = x.replace(/.*>/, "");
| |
| };
| |
| if (d.match(/class="author"/)) {
| |
| var x = d.match(/class="author".*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var W_Authors = x.replace(/.*>/, "");
| |
| };
| |
| if (d.match(/class="author-name"/)) {
| |
| var x = d.match(/class="author-name".*/)[0];
| |
| var x = x.replace(/<\/a>.*/, "");
| |
| var W_Authors = x.replace(/.*>/, "");
| |
| };
| |
| var W_Newspaper = "Ars Technica";
| |
| };
| |
| if (u.match(/tgdaily.com/)) {
| |
| var x = document.title;
| |
| var x = x.replace(/ \| TG Daily/, "");
| |
| var W_Title = x.replace(/ – DIY Tech - TG Daily/, "");
| |
| if (d.match(/<time datetime/)) {
| |
| var x = d.match(/<time datetime.*/)[0];
| |
| var x = x.replace(/<\/time>.*/, "");
| |
| var x = x.replace(/.*>/, "");
| |
| var W_Date = x.replace(/ - .*/, "");
| |
| };
| |
| var x = d.replace(/[\n\r]/g,"");
| |
| var x = x.replace(/<\/div>/g,"<\/div>\n");
| |
| if (x.match(/class="meta-author"/)) {
| |
| var x = x.match(/class="meta-author".*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var x = x.replace(/.*> *by */, "");
| |
| var W_Authors = x.replace(/.*>/, "");
| |
| };
| |
| var W_Newspaper = "TG Daily";
| |
| };
| |
| if (u.match(/businessweek.com/)) {
| |
| var x = document.title;
| |
| var W_Title = x.replace(/ - Businessweek/, "");
| |
| if (d.match(/<div id=.publication_date.>/)) {
| |
| var x = d.match(/<div id=.publication_date.>.*/)[0];
| |
| var x = x.replace(/<div id=.publication_date.>/, "");
| |
| var W_Date = x.replace(/<.*/, "");
| |
| };
| |
| if (d.match(/<div class=.author-name.>/)) {
| |
| var x = d.match(/<div class=.author-name.>.*/)[1];
| |
| var x = x.replace(/<div class=.author-name.>/, "");
| |
| var x = x.replace(/By /, "");
| |
| var x = x.replace(/and /, ",");
| |
| var W_Authors = x.replace(/<.*/, "");
| |
| };
| |
| var W_Newspaper = "BusinessWeek";
| |
| };
| |
| if (u.match(/huffingtonpost.com/)) {
| |
| var x = document.title;
| |
| var W_Title = x;
| |
| if (d.match(/<span class="updated"/)) {
| |
| var x = d.match(/<span class="updated".*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var x = x.replace(/.*>/, "");
| |
| var W_Date = x.replace(/ *\w*:.*$/, "");
| |
| };
| |
| if (d.match(/itemprop="datePublished"/)) {
| |
| var x = d.match(/itemprop="datePublished".*/)[0];
| |
| var x = x.replace(/itemprop="datePublished"> */,"");
| |
| var x = x.replace(/<.*/, "");
| |
| var W_Date = x.replace(/ *\w*:.*$/, "");
| |
| };
| |
| if (d.match(/class="arial_11.*Posted:/)) {
| |
| var x = d.match(/class="arial_11.*Posted:.*/)[0];
| |
| var x = x.replace(/.*Posted: */,"");
| |
| var x = x.replace(/<.*/, "");
| |
| var W_Date = x.replace(/ *\w*:.*$/, "");
| |
| };
| |
| var x = d.replace(/[\n\r]/g,"");
| |
| var x = x.replace(/<\/div>/g,"<\/div>\n");
| |
| var x = x.replace(/<\/p>/g,"<\/p>\n");
| |
| if (W_Date=="")
| |
| if (x.match(/<span class="bold color/)) {
| |
| var x = x.match(/<span class="bold color.*/)[0];
| |
| var x = x.replace(/rel=.author.>/, "");
| |
| var x = x.replace(/<\/span>/g,"<\/span>\n");
| |
| var x1 = x.match(/<span class="bold color.*/)[0];
| |
| var x1 = x1.replace(/<\/span>.*/,"");
| |
| var W_Authors = x1.replace(/.*>By /, "");
| |
| var x = x.replace(/<span class="bold color.*/,"");
| |
| var x = x.replace(/[\n\r]/g,"");
| |
| var x = x.replace(/<span.*/,"");
| |
| var W_Date = x.replace(/ *\w*:.*$/, "");
| |
| };
| |
| if (d.match(/<span class="author vcard">/)) {
| |
| var x = d.match(/<span class="author vcard">.*/)[0];
| |
| var x = x.replace(/<\/a>.*/, "");
| |
| var W_Authors = x.replace(/.*>/, "");
| |
| };
| |
| if (d.match(/rel=.author.>/)) {
| |
| var x = d.match(/rel=.author.>.*/)[0];
| |
| var x = x.replace(/rel=.author.>/, "");
| |
| var W_Authors = x.replace(/<\/a>.*/, "");
| |
| };
| |
| var W_Newspaper = "The Huffington Post";
| |
| };
| |
| if (u.match(/huffingtonpost.ca/)) {
| |
| var x = document.title;
| |
| var W_Title = x.replace(/\|.*/, "");
| |
| if (d.match(/itemprop="datePublished"/)) {
| |
| var x = d.match(/itemprop="datePublished".*/)[0];
| |
| var x = x.replace(/itemprop="datePublished"> */,"");
| |
| var W_Date = x.replace(/ *\w*:.*$/, "");
| |
| };
| |
| if (d.match(/class="arial_11.*Posted:/)) {
| |
| var x = d.match(/class="arial_11.*Posted:.*/)[0];
| |
| var x = x.replace(/.*Posted: */,"");
| |
| var x = x.replace(/<.*/, "");
| |
| var W_Date = x.replace(/ *\w*:.*$/, "");
| |
| };
| |
| if (d.match(/rel=.author.>/)) {
| |
| var x = d.match(/rel=.author.>.*/)[0];
| |
| var x = x.replace(/rel=.author.>/, "");
| |
| var W_Authors = x.replace(/<\/a>.*/, "");
| |
| };
| |
| var W_Newspaper = "The Huffington Post Canada";
| |
| };
| |
| if (u.match(/youtube.com/)) {
| |
| var x = document.title;
| |
| var W_Title = x.replace(/ - YouTube/, "");
| |
| if (d.match(/class="watch-video-date"/)) {
| |
| var x = d.match(/class="watch-video-date".*/)[0];
| |
| var x = x.replace(/<\/span>.*/, "");
| |
| var W_Date = x.replace(/.*>/, "");
| |
| };
| |
| if (d.match(/link itemprop="url".*user\//)) {
| |
| var x = d.match(/link itemprop="url".*user\/.*/)[0];
| |
| var x = x.replace(/">.*/, "");
| |
| var x = x.replace(/.*"/, "");
| |
| var W_Authors = x.replace(/.*user\//, "");
| |
| var AuthorNameTitleCase = "no";
| |
| };
| |
| var W_Newspaper = "YouTube";
| |
| };
| |
| if (W_Title=="") var W_Title = WW_Title;
| |
| var W_Title = W_Title.replace(/\[/g, "(");
| |
| var W_Title = W_Title.replace(/\]/g, ")");
| |
| var W_Title = W_Title.replace(/^ +/, "");
| |
| var W_Title = W_Title.replace(/ +$/, "");
| |
| var W_Title = W_Title.replace(/\|/g, "-");
| |
| if (W_Date.match(/today/i)) var W_Date = today_EN;
| |
| if (W_Date.match(/1 day ago/i)) var W_Date = yesterday_EN;
| |
| if (SiteLN == "en") var W_Date = f_process_EN_Date(W_Date);
| |
| if (W_Newspaper=="") var W_Newspaper = WW_Newspaper;
| |
| var W_Authors = f_process_Authors_names(W_Authors);
| |
| if (User_Prefix!="") var User_Prefix = User_Prefix + "_";
| |
| var W_Ref_Name = User_Prefix + W_Newspaper.replace(/ /g, "_") + "_";
| |
| if (sItalic == "") {
| |
| var W_Newspaper = W_Newspaper + " - " + W_Date;
| |
| var W_Date = "";
| |
| };
| |
| var s = "[" + W_URL + " " + W_Title + "]";
| |
| if (W_Date!="") var s = s + ", " + W_Date;
| |
| if (W_Authors!="") var s = s + ", " + W_Authors;
| |
| if (W_Newspaper!="") var s = s + ", " + sItalic + W_Newspaper + sItalic;
| |
| var ref1r = '<ref name="' + W_Ref_Name + today_YMD + 'r">';
| |
| var ref1c = '<ref name="' + W_Ref_Name + today_YMD + 'c">';
| |
| var ref2 = ', retrieved at ' + today_EN + '</ref>';
| |
| var sr = ref1r + s + ref2;
| |
| var ref = "{{cite web |url=" + document.URL + " |title=" + W_Title + " |newspaper="+ W_Newspaper + " |date= "+ W_Date + " |last=" + W_Authors + " |accessdate=" + today_EN + "}}";
| |
| var ref = ref1c + ref + '</ref>';
| |
| var sc = ref;
| |
| var sd = "[" + W_URL + " " + sItalic + W_Newspaper + sItalic + ", " + W_Date + "]";
| |
| var s = "* " + s;
| |
| var s = prompt("Wiki-Reference", sc); Drag]
| |