TUM eAccess Redirector

Automatically redirect to the proxified equivalent as provided by the libary of the Technische Universitaet Muenchen via the eAccess-System. TUM credentials required.

目前为 2016-08-01 提交的版本。查看 最新版本

// ==UserScript==
// @name            TUM eAccess Redirector
// @name:de         TUM eAccess Redirector
// @version         1.0.0.5
// @description     Automatically redirect to the proxified equivalent as provided by the libary of the Technische Universitaet Muenchen via the eAccess-System. TUM credentials required.
// @description:de  Userscript, dass auf einigen Seiten, mit denen die Universitätsbiblothek der Technischen Universität München kooperiert, die eAccess-Version aufruft.
// @author          zsewa
// @namespace       https://gf.qytechs.cn/users/57483
// @require         https://code.jquery.com/jquery-3.1.0.min.js

// @match *://*.eaccess.ub.tum.de/*

// @match *://opac.ub.tum.de/InfoGuideClient.tumsis/*
// @match *://bvb-new-primo.hosted.exlibrisgroup.com/primo_library/libweb/action/search.do*vid=49BVB_TUM01_VU1*
// @match *://bvb-new-primo.hosted.exlibrisgroup.com/primo_library/libweb/action/dlSearch.do*vid=49BVB_TUM01_VU1*
// @match *://mediatum.ub.tum.de/*
// @match *://sfx.bib-bvb.de/*
// @match *://ezb.uni-regensburg.de/ezeit/*bibid=TUM*
// @match *://ezb.uni-regensburg.de/*bibid=TUM*
// @match *://ezb.uni-regensburg.de/index.phtml*bibid=TUM*
// @match *://rzblx1.uni-regensburg.de/ezeit/ezb.phtml*bibid=TUM*
// @match *://rzblx10.uni-regensburg.de/dbinfo/*
// @match *://dbis.uni-regensburg.de/dbinfo/dbliste.php*bibid=TUM*

// @match *://science.sciencemag.org/*
// @match *://www.sciencedirect.com/*
// @match *://www.nature.com/*

// @match *://*.thieme-connect.de/*
// @match *://link.springer.com/*
// @match *://springer.com/*

// @match *://apps.webofknowledge.com/*
// @match *://www.emeraldinsight.com/*
// @match *://www.degruyter.com/*
// @match *://ieeexplore.ieee.org/*
// @match *://onlinelibrary.wiley.com/*
// @match *://www.worldscientific.com/*
// @match *://ebooks.worldscinet.com/*
// @match *://*.ncbi.nlm.nih.gov/*
// @match *://*.tandfonline.com/*
// @match *://*.biochemj.org/*
// @match *://*.aappublications.org/*
// @match *://*.ovid.com/*
// @match *://*.scopus.com/*
// @match *://*.annualreviews.org/*
// @match *://*.thiemebilddatenbankanatomie.de/*
// @match *://*.jove.com/*
// @match *://*.jstor.org/*
// @match *://app.knovel.com/*
// @match *://tecfinder.wti.frankfurt.de/*
// @match *://*.gbv.de/*
// @match *://roempp.thieme.de/*
// @match *://*.cas.org/*
// @match *://stneasy.fiz-karlsruhe.de/*
// @match *://*.umwelt-online.de/*

// @match *://*.acs.org/*
// @match *://*.rsc.org/*
// @match *://*.gbv.de/*
// @match *://www.reaxys.com/*

// @match *://*.aacrjournals.org/*
// @match *://*.bmj.com/*
// @match *://www.hematologylibrary.org/*
// @match *://www.karger.com/*
// @match *://web.b.ebscohost.com/*
// @match *://search.ebscohost.com/*
// @match *://*.agu-hochschulen.de/*
// @match *://elibrary.asabe.org/*

// @match *://www.hanser-elibrary.com/*

// @match *://www.ami-informiert.de/*
// @match *://www.allthatstats.com/*
// @match *://www.oecd-ilibrary.org/*

// @match *://www.ams.org/*
// @match *://www.ems-ph.org/*
// @match *://*.siam.org/*
// @match *://zbmath.org/*
// @match *://proquest.tech.safaribooksonline.de/*
// @match *://www.zentralblatt-math.org/*

// @match *://error.incites.thomsonreuters.com/error/Error*DestApp=IC2ESI&*Error=IPError
// @match *://error.incites.thomsonreuters.com/error/Error*DestApp=IC2JCR&*Error=IPError
// @match *://login.webofknowledge.com/error/Error*Error=IPError

// @match *://global.factiva.com/

// @match *://www.video2brain.com/*

// @grant GM_setValue
// @grant GM_getValue
// @grant GM_addStyle

// ==/UserScript==

/*
not working (external access permitted):
UPTODATE ://www.uptodate.com/
Chemical abstracts http://webcsd.ccdc.cam.ac.uk
DIN-Normen etc. ://tum.eresearchcenter.eu
Emerald http://www.emeraldgrouppublishing.com

not working:
*/

function core(mode){

    var domain = location.href;
    var hostname = document.location.hostname;
    GM_setValue('last_domain_hostname', hostname);
    
    //special rules - bugfixes
    //Reaxys
    if(domain.indexOf('www.reaxys.com/reaxys/session.do') != -1){var domain = 'https://www-reaxys-com.eaccess.ub.tum.de/reaxys/secured/search.do';}
    //Essential science indicators Thomas Reuters InCites
    if(hostname == 'error.incites.thomsonreuters.com' && domain.indexOf('error.incites.thomsonreuters.com/error/Error?DestApp=IC2ESI') != -1){var domain = 'https://esi.incites.thomsonreuters.com/IndicatorsAction.action';}
    //Journal Citation Reports Thomas Reuters InCites
    if(hostname == 'error.incites.thomsonreuters.com' && domain.indexOf('error.incites.thomsonreuters.com/error/Error?DestApp=IC2JCR') != -1){var domain = 'https://jcr.incites.thomsonreuters.com/JCRJournalHomeAction.action';}
    //WebofScience/WebofKnowledge
    if(hostname == 'login.webofknowledge.com'){var domain = 'https://apps.webofknowledge.com/';}

    switch(mode) {
        case 1:
            //confirmation mode
            if (window.confirm("Redirect to TUM eAccess?")){void(window.document.location.replace('https://eaccess.ub.tum.de/login?url='+domain));            }
            break;
        case 2:
            //html page mode
            var html = '<center><img src="http://www.ub.tum.de/files/eacessbutton.jpg" height="40" width="40"></div><br><br>Resource is reloaded via TUM eAccess...<br><br>You are redirected form '+window.location.hostname+' to the fitting resource in the TUM eAccess system. Login may be required.<br><br>To change the behavior of this userscript open it in your Tapermonkey or Greasemonkey extention. You can specify a mode there.<br><br><br><br><br><br>Thanks for using TUM eAccess Redirector.</center>';
            document.write(html);
            void(location.href='https://eaccess.ub.tum.de/login?url='+domain); //default way to reload via eacess
            break;
        default:
            //default mode - silent
            void(window.document.location.replace('https://eaccess.ub.tum.de/login?url='+domain));
    }
}

function set_usermode(value){
    GM_setValue('eAccess_reloader_mode', value);
}

function excludeme(hostname_passed){
    var hostname_temp = hostname_passed;
    var excluseme_userexclude_temp = GM_getValue('eAccess_reloader_userexclude', []); if(excluseme_userexclude_temp.indexOf(hostname_temp) == -1){excluseme_userexclude_temp.push(hostname_temp);}
    GM_setValue('eAccess_reloader_userexclude', excluseme_userexclude_temp);
}

function excludeme_reset(sec){
    if(sec){
        var excluseme_userexclude_temp = []; //reset via decommenting
        GM_setValue('eAccess_reloader_userexclude', excluseme_userexclude_temp);
    }
}

function markaseaccess(){
    $("body").prepend ( '<div id="eAccess_userscript_created_content" style="z-index:9000;float:true;bottom:1.5%;right:1.5%;position:fixed;"><a style="text-decoration: none; color: darkblue;"id="userscript_eAccess_redirector_created_site_link" target="_blank" href="https://login.eaccess.ub.tum.de/login">By <img src="https://www.tum.de/typo3conf/ext/in2template/Resources/Public/Images/tum-logo.svg" height="28 px">&nbsp;&nbsp;<img src="https://www.ub.tum.de/files/eacessbutton.jpg" height="28px" width="28px"></a></div>');
}

function addsettingstodom(){
    var settings_html1 = '\
<div class="container">\
<div class="row">\
<br>\
<p><h3>Die folgenden Zeilen werden durch ein Userscript produziert und verschwinden bei dessen Deinstallation.<br>Dieser Teil der Webseite ist nur für Sie sichtbar.</h3></p>\
<h2>Einstellungen des TUM eAccess Redirector Userscripts</h2>\
Das "TUM eAccess Redirector Userscript" überprüft die URL aufgerufener Seiten und läd diese über die proxyfizierte Version neu.<br>Das Userscript basiert auf der Funktion des Bookmarklets, automatisiert jedoch den Ablauf.\
<br><br>\
<div class="row"><div class="eight columns"><h2> Einstellungen </h2><form><b>Modus:</b> Das Script kann in 3 verschieden Modi ausgefürt werden. Dies wirk sich auf das Verhalten aus.<br><br><fieldset><div class="csc-mailform-field"><label for="modeselect">Modus (aktuell: <b>';

    var settings_html2='</b>)</a></label><select name="modeselect" size="3" style="width: 500px"> <option id="userscript_opt_0">Mode 0 (Standard): Automatische Weiterleitung ohne Meldungen</option> <option id="userscript_opt_1">Mode 1 (Confirmation): Vor dem Weiterleiten IMMER fragen (außer Ausnahmen)</option> <option id="userscript_opt_2">Mode 2 (Hinweis): Automatische Weiterleitung mit kurzzeitiger Meldung</option></select></div></fieldset></form></div></div>\
<b>Ausnahmen:</b> Das Script leitet auf viele über eAccess erreichbare Seiten um. Sollten Sie das bei bestimmten Seiten NICHT wünschen klicken sie folgenden Link und geben Sie den Hostnamen ein.<br>Geben Sie z.B. statt der URL "http://link.springer.com/content" Folgendes ein: "link.springer.com". Aber z.B.: "www.reaxys.com".<br><br><a id="userscript_add_exeption">Weiterleitungs-Ausnahme hinzufügen</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a id="userscript_show_exeptions">Ausnahmen ansehen</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a id="userscript_delete_exeptions">Ausnahmen löschen</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a id="userscript_edit_exeptions">Ausnahmen manuell bearbeiten (Achtung: Profimodus!)</a><br>\
<br><br><h2>Vielen Dank, dass Sie den TUM eAccess Redirector nutzen</h2><br></div></div>\
</div>\
<div class="three columns"><div class="content-box content-box--heavy content-box--green"><div class="csc-header csc-header-n1"><h4 class="csc-firstHeader">TUM eAccess Redirector</h4></div><p class="bodytext"><a target="_blank" title="Installationsseite" href="https://gf.qytechs.cn/de/scripts/21778-tum-eaccess-redirector" class="external-link-new-window">Installationsseite</a><br>Version: 1.0.0.x<br>Autor: zsewa<!--<br><a href="mailto:[email protected]">Email an Entwickler</a>--></p></div>\
';

    $("body").append ( settings_html1 + GM_getValue('eAccess_reloader_mode', 'nicht eingestellt') + settings_html2 );
    $("#userscript_opt_0").click(function() { set_usermode(0); alert('Mode '+GM_getValue('eAccess_reloader_mode', 0)+' wurde gesetzt.'); location.reload(); });
    $("#userscript_opt_1").click(function() { set_usermode(1); alert('Mode '+GM_getValue('eAccess_reloader_mode', 0)+' wurde gesetzt.'); location.reload(); });
    $("#userscript_opt_2").click(function() { set_usermode(2); alert('Mode '+GM_getValue('eAccess_reloader_mode', 0)+' wurde gesetzt.'); location.reload(); });

    $("#userscript_add_exeption").click(function() { var link_exclude = prompt('Bitte einen Hostnamen eingeben. Z.B. '+GM_getValue('last_domain_hostname', 'www.reaxys.com')); excludeme(link_exclude); alert( 'Ausnahmen: '+GM_getValue('eAccess_reloader_userexclude', []) ); });
    $("#userscript_show_exeptions").click(function() { alert( 'Ausnahmnen: '+GM_getValue('eAccess_reloader_userexclude', []) ); });
    $("#userscript_edit_exeptions").click(function() { var ex_temp = GM_getValue('eAccess_reloader_userexclude', []); var ex_temp_new = prompt('Ändern Sie etwas und klicken Sie OK. Wollen SIe doch nichts ändern beenden Sie mit Abbrechen. Aktuelle Ausnahmen: ',ex_temp); if(ex_temp_new != null){GM_setValue('eAccess_reloader_userexclude', ex_temp_new); } });
    $("#userscript_delete_exeptions").click(function() { excludeme_reset(confirm('Wollen Sie wirklich ALLE Ausnahmen entfernen?')); alert( 'Ausnahmnen: '+GM_getValue('eAccess_reloader_userexclude', []) ); });
}

(function() {
    'use strict';
    var usermode = GM_getValue('eAccess_reloader_mode', 0);

    var hostname = document.location.hostname;

    var userexclude = GM_getValue('eAccess_reloader_userexclude', []);

    if( hostname.indexOf('eaccess.ub.tum.de') == -1){
        if( userexclude.indexOf(hostname) == -1 ){
            core(usermode);
        }
    } else {
        var domain = location.href;
        if(domain.indexOf('https://login.eaccess.ub.tum.de/menu') != -1 || domain.indexOf('https://login.eaccess.ub.tum.de/login') != -1 || domain.indexOf('http://eaccess.ub.tum.de/menu') != -1 || domain.indexOf('https://eaccess.ub.tum.de/menu') != -1 ){
            addsettingstodom();
        } else {
            markaseaccess();
            $("#userscript_eAccess_redirector_created_site_link").click(function() {  });
        }
    }

})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址