Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name GR-Tools - Pimp your GayRomeo! *Unpacked*
- // @namespace http://gr-tools.justlep.net/
- // @description Thumbnail-Zoom, BMI-Filter, opens Profiles without Popups, etc. etc.
- // @include http*://www.gayromeo.com/*main/top.php
- // @include http*://www.gayromeo.com/*setcard/cluide/navigation.php*
- // @include http*://www.planetromeo.com/*main/top.php
- // @include http*://www.planetromeo.com/*setcard/cluide/navigation.php*
- // @include http*://www.planetromeo.com/*setcard/cluide/club.php*
- // @include http*://83.98.143.20/*main/top.php
- // @include http*://83.98.143.20/*setcard/cluide/navigation.php*
- // @include http*://83.98.143.20/*auswertung/setcard/index.php*
- // @include http*://www.planetromeo.com/*auswertung/setcard/index.php*
- // @include http*://www.gayromeo.com/*auswertung/setcard/index.php*
- // Partly fixes bug #3 (Zoom works but GRT Config menu still won't open)
- // @include /http?://www\.(gay|planet)romeo\.com.*setcard/cluide/club\.php*
- // @version $Revision: 2.38 $
- // @date $Date: 2012/01/14 11:53:11 $
- // @author LeP <gr-tools@justlep.net>
- // @icon data:image/gif;base64,R0lGODlhHgAeAPcAAFhRjNVbKgRVjPmLKVd7x1ZVUzlcqC1Ztfh1KbFxUQJNikl/rkVdp9o3BWtpa7i6vQZkmuldCgVFelRimjdYeP6JHv53Ggh7tdZZEx04g8pvRzRhvudbC56mxi1VrPynGiRDk5iXmA2TzYN9d3hrYIWFh6s4KqlUQy9cudTV1ZxQTElPYyRbw7QWEBkyeXhRQ+liC3Z0dBcsc/anY1NndQdclIulupozOSoqKiE9i9tTDABLlTZmxHRFaQgRTQZrpPRhASdKnQyFvfj9/zBbtoeBeAl0rjBatHqGiDJfuvRiCywxUmt0dGOEybG74hArUtxEDhMladYrBAoUUylevpR7WwU4diVavtBLDPRxBa03Dc4bAOu0boduSjFZsuhWBbs9FytSp+lpDaYnCM7Ozrg4CiZgwg0aWgcFBypOozJduOLi4ShZvoyGntQ8EzNgu+dgCzJeuP/Ie7ctAS1cutZDDoac0vVfAFpMUzJguwQ8awYNSTNfvsgpDBEhZOdZByJVwRUobgIIPy9Yry9XsOheDQAUUidHmgwYV////zRgu/+2EslFC/G2e7dDMejHoJeThnt6kAB7xEtfSUhwwrxMJuxfC/z8/K+pqzdwmKOvurGrpIuDWvpvGKKUT9zc3GphcuxlFPDw73Nod+iqZfWxXfKhePitMTJqpsyedP+VRM9nHepTD8svEc4yC/CeZ840Erd1YImDkd+mNxAfYJF6lmhdhPDy+PdoDDhcsIJtW5d/QqpGFL/DxYqg1zRfuZGm3J+BdM2lX/r7+6SAZCtbuyxfu//Jbf/cektJRIRSac3Hu+hGCQ1HZx9SfvB/L1czMv+TL7CyzkBOn/aACdBHEOxgByNVvq6qyKGw2+CMV9BBBClXuRAdXfplCMlOEaNMJRdbkqlULehcCx9Mg+hZDfP194VuZzBcuDFcu9uqbW+ZqXKIuXOctKliLAAcT4YwSa654oSAl4aCmFuIrA+JxMLIz6WlpQ9MsqCprbq/5Y6JoMhqLd91N3phTjFctiH5BAAAAAAALAAAAAAeAB4AAAj/AP9tACEjh5ocLkD8+pcniAuEIDao+fcvSRxFIILkSTJxgwsfGWR42eNiT8Q3h2QICgTCg4cNb8J44OEnw4YwhNQQ2RNmAyFCPtKcycEjyQZFU5LkmDIlSAZEU9IEyhGlGwhFg/aoCSIIxBQfZ3gEOuPlyJQwPuKAgJqHakEZtMIYPRPlyJ6lg3y0TKNmpIcph1xEQRREhoxAGeIEmrIhDiE/iAKFkaGG4AaOXgIdOXTGz5EgnYnkyJChW443FWFeRv0GNUWB/xRtkChbYpLbbxS93s2boprfvYMLf220r4dBavikGx6cDop/am5m0COhugRyBthce878HwoDufIc/3Hx7p2eGkZqSGg2yRMSOle6s1BhC987QU9GUIBQ74IACUusssgsE7BAhHDoGAOGCSucQ4I2RSggxA9G/ACBHku488EADBQjHApegPFFJ51YgAAFkogghAgiXCDBO4a8UIEGE3jYWzEMRBDBH3988cUYK0DAohDpSaCAFeJYkAALwbGQABBwjCPlONsgwMQFFxgBgQAKKEBBABX04xxvV0yAgTVRSvnFM+v8YKEAAtQQTg0UVPDBMx3yhkIuJwAhBgeWRKDEADQoAKcCmbRjw6IznFJBLPHxZgY/fo6DxRx4MFGoofTkM0IBBYzQiBzREAOInsZUkgUcOoyB6Q6wKv+wgCYkjEDGGiF0wcUxSFzDGzpsmECNGDqUUUYh/jizQgKPFBFCIms8kIg9XSDDDje9sXBDFmL8wcg3WJQTijeqqEOCOYnc48AliUAijB0oHLibGT3cAQMH5WCggxZa8BIMCSUMwwQOOBSQwjK6APOLvK8ZM00DaXJQCAbQGIJKCTEM80kJyaRwySay+KJTb2bAAzEcEYxjiRLgjIIJCb0kQsazojiAjR1EMNywFy1IUY0rHKAMBC4zkOLPA7cMkUIyaLThBAFHBGfGNC1s0UIfdWQNRQCmcLELJ1VUAQoaaOzz9EQk53LDFlv00QosbrgRwCtylJKKNPrIQ3Yb2VA8ckBwxVwBgAlSSNFAA1Aww4oGtRBASRNO6I1GB038HRw6VLABQA8qOHKCMgB4ccUBpBMQTyQrdEDAAQEBADs%3D
- // ==/UserScript==
- /**
- * The GR-Tools are available on userscripts.org:
- * http://userscripts.org/scripts/show/33184
- */
- /* Unpacked Version <- made by Djamana (Nov 2012)
- Known bugs:
- #1 You tube links are not parse when profile is opened in popup mode
- #2 In club page main page pictures are not zoomable
- #3 In club page clicking on 'Clubmodul' will disable zoom and clicks on GR-Tool ccnfig menu
- until you reload the page or upper frame
- ->partly fixed by adding http*://www.planetromeo.com/*setcard/cluide/club.php* to includes
- #4 If you open on a profil of your favorites and you've not opened visitor or search in the mainframe (and in config no popup is selected)
- the profil is opened in the wrong frame. (the left/'persoenliches'-frame instead of main 'mitte'-frame )
- Changes:
- #1 removing SRC[] String array and wrapper code
- #2 Added function 'bugFixes'
- #3 and wrapped some code into function 'RestoreOriginalHosts'
- to deal with return that else stops Execution
- #4 Replaced in the original source code
- f.main.contentWindow.openUrl
- with
- f.main.contentWindow.wrappedJSObject.openUrl
- 3 x times.
- #5 added '|| self' & '(f.top.contentWindow || f.top)' in
- findTopFrameBody incase current window has no frames(like the profil for ex.)
- #6 enabled console.log output via LOG = {STD: 1...}
- */
- // modify links within profiles opened via "secret click" to be opened via the original host (except for partner profile)..
- if (location.href.indexOf('auswertung/setcard/index.php') > 0) {
- (function RestoreOriginalHosts() {
- if (!/GRT_REF_(PR|GR|IP)(_S)?/.exec(location.hash || '')) return;
- var domain = RegExp.$1,
- ssl = !! RegExp.$2,
- sidebar = self.document.getElementById('sidebar'),
- picbar = self.document.getElementById('picbar'),
- topbar = self.document.getElementById('tabse'),
- urlPrefix1 = (ssl) ? 'https://' : 'http://',
- urlPrefix2 = (domain == 'PR') ? 'www.planetromeo.com' : (domain == 'GR') ? 'www.gayromeo.com' : '83.98.143.20',
- replaceLinks = function (links) {
- if (!links) return;
- for (var i = links.length - 1; i >= 0; i--) {
- var oldURL = links[i].href || '',
- newURL = '';
- if (!oldURL) continue;
- if (oldURL.indexOf('auswertung/setcard/index.php') >= 0) {
- newURL = oldURL + location.hash; // partner link to be opened anonymously
- } else if (oldURL.indexOf('page=status') > 0) {
- newURL = oldURL; // probably an XXX pic which can't be viewed anonymously
- } else {
- newURL = urlPrefix1 + urlPrefix2 + '/' + oldURL.replace(/^(https?:\/\/[^\/]+)?\//, '');
- }
- // console.log(oldURL + ' -> ' + newURL);
- links[i].href = newURL;
- }
- };
- replaceLinks((sidebar) ? sidebar.getElementsByTagName('a') : 0);
- replaceLinks((picbar) ? picbar.getElementsByTagName('a') : 0);
- replaceLinks((topbar) ? topbar.getElementsByTagName('a') : 0);
- return;
- })();
- }
- var DEBUG = 0,
- revisions = {
- used: '$Revision: 2.38 $'.match(/ion: ([^ ]*)/)[1], // auto-insert by cvs
- live: '?' // set asynch. later via GRT.setLiveRevision()
- };
- // skip if GR-Tools already loaded..
- if (typeof top.GRT === 'object') return;
- if (!top.GRT) top.GRT = (function () {
- var LOG = {
- STD: 1,
- T: 0
- },
- lang = 'de',
- L = {
- close: {
- de: 'Zum Schließen klicken',
- en: 'Click to close'
- },
- inv: {
- de: 'Bild invertieren',
- en: 'Invert image'
- },
- hist: {
- de: 'Message-Verlauf',
- en: 'Message history'
- },
- secret: {
- de: 'Profil geheim ansehen (falls Profil oeffentlich)',
- en: 'View profile secretly (if profile is public)'
- },
- sett: {
- de: 'Einstellungen',
- en: 'Settings'
- },
- upd: {
- de: 'jetzt updaten!',
- en: 'update available!'
- }
- },
- f = {
- top: null,
- main: null,
- msg: null
- },
- win = 0,
- grtDiv = null,
- started = 0,
- ic = -1,
- gmVersion = {
- used: '?',
- live: '??'
- },
- C = {
- NAME: 'GRTCFG',
- TTL: 14
- },
- Ds = {
- GAY: 'www.gayromeo.com',
- PLANET: 'www.planetromeo.com',
- IP: '83.98.143.20'
- },
- linkFixHash = '',
- ZOOM_APPLIED = '_grtZoomApplied',
- PAGE_PREPARED = '_grtPagePrepared',
- ZOOM_ADDED = '_grtZDone',
- TABLE_PREPARED = '_grtTableDone',
- tmp = {},
- config = {
- showBMI: 1,
- bmiClickHP: 1,
- filterBMI: 1,
- minBMI: 0,
- maxBMI: 25,
- filterAge: 1,
- minAge: 18,
- maxAge: 100,
- clickTapse: 1,
- zoom: 1,
- bigZoom: 1,
- useIF: 1,
- thumbIF: 1,
- histInMsg: 1,
- histInRes: 1,
- histHighl: 1,
- bigPaging: 1,
- ytHead: 1,
- ytProf: 1,
- ytPreview: 1,
- newsRead: 0
- },
- CONFIG_TRANSKEY = {
- showBMI: 68,
- bmiClickHP: 12,
- filterBMI: 41,
- minBMI: 31,
- maxBMI: 21,
- clickTapse: 14,
- zoom: 9,
- bigZoom: 3,
- useIF: 5,
- thumbIF: 91,
- histInMsg: 44,
- histInRes: 93,
- histHighl: 2,
- bigPaging: 95,
- ytHead: 50,
- ytProf: 49,
- ytPreview: 71,
- newsRead: 15,
- filterAge: 94,
- minAge: 51,
- maxAge: 43
- },
- URLS = {
- BASE: (self.location.protocol.match(/https/)) ?
- 'https://ssl-account.com/gr-tools.justlep.net/' :
- 'http://gr-tools.justlep.net/',
- iB: 'img/',
- IMG: {
- HISTORY: 'hist.gif',
- LOAD: 'load.gif',
- ZOOM1: 'lupe.png',
- ZOOM2: 'lupe2.png',
- CLOSE: 'close.cur',
- CFG: 'tool.png',
- CLUB: 'home.png',
- NEWS: 'charts04.png',
- UPD: 'flag.png',
- NONEWS: 'charts04gray.png',
- YTLOAD: 'ytload.gif'
- },
- hB: 'html/',
- HTML: {
- CONFIG: 'config_',
- NEWS: 'news2.php',
- UPD: 'update.php'
- },
- YTIMG: 'http://ref.justlep.net/ytimg',
- aPu: '/auswertung/setcard/index.php?set=',
- ABOUT_BLANK: 'about:blank'
- },
- BMI = {
- COLOR: {
- egal: '#E4EAF9',
- below: '#fed14a',
- ok: '#85e854',
- above: '#ff8868'
- },
- RANGE: {
- VISIBLE: {
- min: 15,
- max: 40
- },
- HEALTHY: {
- min: 20,
- max: 25
- }
- },
- minS: null,
- maxS: null
- },
- AGE = {
- minI: null,
- maxI: null
- },
- zoomVisible = false,
- currentZoomUID = null,
- hideTimer = null,
- zoomWin = 0,
- zoomDoc = 0,
- cfg = {
- div: 0,
- html: 'config'
- },
- gray = 0,
- zoomDiv = 0,
- iframe = 0,
- zoomedImg = 0,
- closeDiv = 0,
- anonDiv = 0,
- mode = 0,
- MsS = {
- IMAGE: 1,
- PROFILE: 2,
- HISTORY: 3,
- CONFIG: 4,
- OTHER: 5
- },
- HTML = { STYLES:
- '<style type="text/css"> \
- .grt-thumb { \
- display:block; \
- position:relative \
- } \
- \
- div#grtZDiv { \
- position:fixed; \
- top:10px; \
- right:6px; \
- z-index:6000; \
- border:1px solid #ccc; \
- width:100px; \
- height:100px; \
- background:transparent url('+ URLS.BASE + 'img/load.gif) center center no-repeat; \
- display:none \
- } \
- \
- div#grtZDiv>img { \
- cursor:url('+ URLS.BASE + 'img/close.cur), default \
- } \
- \
- img.grtZIcon { \
- position:absolute; \
- right:1px; \
- bottom:1px; \
- border:none; \
- cursor:pointer; \
- z-index:2000; \
- opacity:0.7 \
- } \
- \
- img.grtZIcon:hover { \
- opacity:1 \
- } \
- \
- #grtCfgDiv { \
- background-color:#305AB1; \
- overflow:auto \
- } \
- \
- div.grtZUserName { \
- position:absolute; \
- right:0; \
- top:0; \
- padding:0px 5px 3px 9px; \
- border:1px solid #ccc; \
- border-width:0 0 1px 1px; \
- -moz-border-radius-bottomleft:8px; \
- background:#305AB1 none; \
- opacity:0.8; \
- color:yellow; \
- z-index:6005 \
- } \
- \
- #grtZDiv iframe, \
- #grtZDiv #grtCfgDiv { \
- border:none; \
- width:500px; \
- height:500px; \
- display:none \
- } \
- \
- #grtZDiv.grtPLoaded { \
- right:10px; \
- background-image:none; \
- opacity:1 \
- } \
- \
- #grtZDiv.grtILoaded { \
- background-image:none \
- } \
- \
- #grtZDiv.grtPLoaded iframe, \
- #grtZDiv.grtPLoaded #grtZCl, \
- #grtZDiv.grtPLoaded .grtZoom, \
- #grtZDiv.grtPLoaded #grtCfgDiv { \
- display:block \
- } \
- \
- #grtZCl { \
- position:absolute; \
- left:-51px; \
- top:-1px; \
- background:#236 url('+ URLS.BASE + 'img/close.png) center center no-repeat; \
- width:50px; \
- height:300px; \
- border:1px solid #ccc; \
- border-width:1px 0 1px 1px; \
- -moz-border-radius-bottomleft:20px; \
- -moz-border-radius-topleft:20px; \
- opacity:0.6; \
- cursor:pointer \
- } \
- \
- div#grtZCl:hover { \
- opacity:0.8 \
- } \
- \
- #grtZAnon { \
- position:absolute; \
- left:-38px; \
- top:10px; \
- background:transparent url('+ URLS.BASE + 'img/nogo.png) center center no-repeat; \
- width:26px; \
- height:26px; \
- opacity:0.3; \
- cursor:pointerz-index:999; \
- display:none \
- } \
- \
- .grtPLoaded #grtZAnon { \
- display:block \
- } \
- \
- div#grtZCl { \
- display:none \
- } \
- \
- #grtGray { \
- position:fixed; \
- left:0; \
- top:0; \
- width:100%; \
- height:100%; \
- background:#000 none; \
- opacity:0.7; \
- z-index:5000; \
- display:none \
- } \
- \
- #grtNext, #grtPrev { \
- text-decoration:none; \
- outline:none; \
- background:transparent url('+ URLS.BASE + 'img/next.png) center center no-repeat; \
- opacity:0.6; \
- padding:8px 39px; \
- margin:0 5px; \
- border:1px dotted #6890E5 \
- } \
- \
- a#grtPrev { \
- background-image:url('+ URLS.BASE + 'img/prev.png) \
- } \
- \
- #grtPrev:hover, \
- #grtNext:hover { \
- opacity:1 \
- } \
- \
- #grtIv { \
- width:24px; \
- height:24px; \
- bottom:6px; \
- opacity:0.7 \
- } \
- \
- #grtIv { \
- position:absolute; \
- right:7px; \
- cursor:pointer !important; \
- background:transparent url('+ URLS.BASE + 'img/object_15.png) 0 0 no-repeat; \
- z-index:6005 \
- } \
- \
- #grtIv:hover { \
- opacity:1 \
- } \
- \
- #grtFull { \
- left:0; \
- top:0; \
- z-index:6004 \
- } \
- </style>'
- ,
- DIV: '<div id="grtZDiv"></div>',
- GRAY: '<div id="grtGray"></div>',
- BUTTON_STYLES:
- '#grtDiv { \
- position:absolute; \
- right:310px; \
- top:0; \
- overflow:visible; \
- border:1px solid #A2B3DE; \
- border-top:none; \
- padding:1px 5px 2px 5px; \
- z-index:9999; \
- background:transparent none 0 0 no-repeat; \
- color:#E1DEF1; \
- font-family:Tahoma, Arial, Verdana, Helvetica; \
- font-size:11px; \
- line-height:14px; \
- -moz-border-radius: 0 0 6px 6px; \
- } \
- #grtDiv:hover { \
- border-color:#D1D8EB \
- } \
- #grtPimp { \
- float:left; \
- padding:0 5px 0 2px; \
- position:static; \
- overflow:hidden; \
- display:none \
- } \
- #grtPimp b { \
- display:block; \
- color:#AEE451; \
- font-style:normal \
- } \
- #grtDiv img { \
- float:left; \
- display:none \
- } \
- #grtDiv:hover img, \
- #grtDiv:hover #grtPimp, \
- #grtDiv:hover #grtNewsTxt { \
- display:block \
- } \
- body #grtDiv #grtCfg, \
- body #grtDiv #grtNews { \
- display:block \
- } \
- #grtDiv.grtUpd img#grtUpd, \
- #grtDiv.grtRomeo #grtPimp, \
- #grtDiv #grtNews { \
- display:block \
- } \
- #grtDiv.grtRomeo { \
- right:311px \
- } \
- #grtDiv.grtNews #grtNews { \
- cursor:pointer !important \
- } \
- .grtNewsRead #grtNews { \
- opacity:0.5 \
- } \
- #grtNewsTxt { \
- float:left; \
- position:static; \
- color:#FE9B2C; \
- padding:0 0 0 3px; \
- cursor:pointer; \
- display:none \
- } \
- #grtNewsTxt:hover { \
- text-decoration:underline; \
- opacity:1!important \
- } \
- .grtNewsRead #grtNewsTxt { \
- opacity:0.7 \
- } \
- body.grtClub #grtDiv { \
- left:auto; \
- right:82px !important \
- } \
- body.grtGuideClub #grtDiv { \
- left:225px; \
- right:auto !important \
- } \
- #grtDiv img { \
- cursor:pointer; \
- vertical-align:middle; \
- opacity:0.8; \
- margin:1px 2px 0 \
- } \
- #grtDiv img:hover { \
- opacity:1 !important \
- } \
- body.grtClub #grtDiv #grtPimp, \
- body.grtGuideClub #grtDiv #grtPimp, \
- body.grtClub #grtDiv #grtClub, \
- body.grtGuideClub #grtDiv #grtClub { \
- display:block !important \
- }'
- },
- YT = {
- PROFILE_XPATH: '//table[contains(@class,"prfl")]/tbody/tr/td[contains(.,"http:")][contains(.,"youtube")]',
- RE: /(">)?http:\/\/(?:<wbr>)?(?:[a-z]+\.)?(?:<wbr>)?youtube.(<wbr>)?com\/[^\s\t\n\r\]\)]+/ig,
- FN: function (s) {
- if (!s.indexOf('">')) return s;
- var
- url = s.replace(/(<wbr>| |<br>?)/g, '').replace('&', '&'),
- jumpURL = '/jump.php?jump=' + encodeURIComponent(url),
- link = '<a class="ytlink" href="' + jumpURL + '" target="_blank">' +
- s + '</a>';
- return link;
- },
- DIVHTML:
- '<div id = "grtYT" \
- style = " \
- position: fixed ;\
- display : none"\
- ><img /><img /></div>',
- div: 0
- },
- lcc = function () {
- var c = cookie(C.NAME);
- if (!c) {
- log('no GRT config cookie');
- return;
- }
- var trans = {};
- for (var i in CONFIG_TRANSKEY)
- trans[CONFIG_TRANSKEY[i]] = i;
- var a = c.split('_');
- for (var i = 0; i < a.length; i++) {
- var p = a[i].split('-'),
- k = trans[p[0]] || 0,
- v = p[1];
- if (!k) continue;
- if (typeof config[k] == 'undefined') {
- log('unknown key: ' + k);
- continue;
- }
- log('restoring key %s = %s', k, v);
- config[k] = parseInt(v, 10);
- }
- saveConfigCookie();
- },
- saveConfigCookie = function () {
- var a = [];
- for (var i in config) {
- a[a.length] = CONFIG_TRANSKEY[i] + '-' + config[i];
- }
- var data = a.join('_');
- cookie(C.NAME, data, {
- path: '/',
- expires: C.TTL
- });
- log('config cookie saved');
- },
- delConfigCookie = function () {
- cookie(C.NAME, null, {
- path: '/'
- });
- log('config cookie removed');
- },
- i18n = function (k) {
- return (L[k]) ? L[k][lang] : '???';
- },
- addClass = function (o, s, check) {
- if (!o) return;
- if (check && (o.className || '').indexOf(s) >= 0) return;
- o.className = s + ' ' + (o.className || '');
- },
- removeClass = function (o, s) {
- if (!o || !o.className) return;
- o.className = o.className.replace(s, '');
- },
- findTopFrameBody = function (frameName) {
- if (!f.top) f.top = self.frameElement || self;
- try {
- if (frameName) return top.frames[frameName].document.body;
- return (f.top.contentWindow || f.top).document.body;
- } catch (e) {
- log('findTopFrameBody failed: ' + e.toString());
- return null;
- }
- },
- log = function (s) {
- if (!LOG.STD || typeof console == 'undefined') return;
- console.log.apply(console,
- arguments || []);
- },
- hS = {
- mFl: function () {
- var doc = this.contentWindow.document;
- var userList = doc.getElementById('favoritesOnlineList');
- if (userList) {
- if (!config.useIF) return;
- cZ();
- var links = xpath('//a[contains(@href,"auswertung\/setcard\/")]', userList);
- for (var i = links.length - 1; i >= 0; i--) {
- var a = links[i],
- userID = a.parentNode.id.match(/row(\d*)/)[1],
- smileys = a.parentNode.getElementsByTagName('img');
- if (smileys.length && smileys[0].src.match(/(club|guide)/)) continue;
- a.parentNode.setAttribute('userid', userID);
- a.onclick = null;
- a.addEventListener('click', hS.iC, false);
- }
- return;
- }
- var msgList = doc.getElementById('newMessageList');
- if (!msgList || !config.histInMsg) return;
- var pics = xpath('//a[contains(@href,"\/msg\/\?id=")]/img', msgList),
- title = i18n('hist');
- for (var i = pics.length - 1; i >= 0; i--) {
- var p = pics[i],
- userID = p.parentNode.parentNode.id.match(/row(\d*)_/)[1];
- p.setAttribute('userid', userID);
- p.addEventListener('click', hS.hC, false);
- p.src = URLS.IMG.HISTORY;
- p.className = 'grtHist';
- p.title = title;
- p.style.left = 0;
- p.style.padding = '0 4px';
- }
- },
- hC: function (e) {
- var userID = this.getAttribute('userid') || '???';
- cZ();
- hS.iC('HISTORY', '/msg/history.php?uid=' + userID);
- e.stopPropagation();
- e.preventDefault();
- e.cancelBubble = 1;
- return false;
- },
- tc: function (e) {
- var tr = this.parentNode.parentNode,
- userID = 0;
- while (!userID && tr) {
- if (tr.getAttribute) userID = tr.getAttribute('userid');
- tr = tr.previousSibling;
- }
- if (!userID) {
- log('no userID found.');
- return;
- }
- f.main.contentWindow.wrappedJSObject.openUrl('/auswertung/setcard/romeo/footprint.php?receiverId=' + userID);
- },
- yO: function (e) {
- if (!(/%3Fv%3D([a-z0-9_\-]*)/i).exec(this.href)) return;
- this.ytdiv.childNodes[0].style.display = 'none';
- this.ytdiv.childNodes[1].style.display = 'block';
- this.ytdiv.style.display = 'block';
- this.ytdiv.childNodes[0].src = this.ytbase + RegExp.$1;
- },
- YT_OUT: function (e) {
- this.ytdiv.style.display = 'none';
- },
- yM: function (e) {
- this.ytdiv.style.left = 20 + e.clientX + 'px';
- this.ytdiv.style.top = 15 + e.clientY + 'px';
- },
- yIl: function (e) {
- this.nextSibling.style.display = 'none';
- this.style.display = 'block';
- },
- aC: function (a) {
- tmp.anonUserInfo = {
- u: a.getAttribute('username'),
- a: a
- };
- if (!tmp.sessUnlockImg) {
- tmp.sessUnlockImg = document.createElement('img');
- tmp.sessUnlockImg.addEventListener('error', function () {
- var o = tmp.anonUserInfo;
- if (!o) return;
- if (config.useIF) {
- hS.iC.apply(o.a, [0]);
- return;
- }
- f.main.contentWindow.wrappedJSObject.openUrl(o.a.href);
- delete tmp.anonUserInfo;
- }, false);
- }
- tmp.sessUnlockImg.src = URLS.aH + tmp.anonUserInfo.u;
- return false;
- },
- iHo: function () {
- iLi(this.getAttribute('username'), this.getAttribute('userid'), this.getAttribute('picname'));
- },
- iOu: function () {
- if (mode != MsS.IMAGE) return;
- hvD();
- },
- iC: function (e, histLink) {
- var showHistory = (e === 'HISTORY'),
- url = (showHistory) ? histLink : (this.href || this.parentNode.href);
- if (e && !showHistory && url.match(/(&page=club|&t=3)/)) {
- zoomWin.openUrl(url);
- e.stopPropagation();
- e.preventDefault();
- e.cancelBubble = true;
- return false;
- }
- setGray(1);
- sLsg();
- mode = (showHistory) ? MsS.HISTORY : MsS.PROFILE;
- iframe.src = URLS.ABOUT_BLANK;
- zoomDiv.appendChild(iframe);
- zoomDiv.appendChild(closeDiv);
- iframe.src = url;
- if (mode == MsS.PROFILE && iframe.src.indexOf('://' + top.location.host) < 0) {
- zoomDiv.appendChild(anonDiv);
- }
- if (!showHistory && e) {
- e.stopPropagation();
- e.preventDefault();
- e.cancelBubble = true;
- return false;
- }
- },
- dCl: function () {
- hvD(1);
- setGray(0);
- },
- dHo: function () {
- clt();
- },
- IMG_LOAD: function () {
- if (mode != MsS.IMAGE) return;
- var div = zoomDiv,
- win = div.ownerDocument.defaultView,
- userName = this.getAttribute('username') || '???',
- userID = this.getAttribute('userid') || 0,
- noRefresh = !! this.getAttribute('norefresh');
- div.innerHTML = '<div class="grtZUserName">User: ' + userName.replace(/</g, '<').replace(/>/g, '&gr') + '</div>';
- div.className = 'grtILoaded';
- div.style.width = 'auto';
- div.style.height = 'auto';
- this.style.maxWidth = win.innerWidth - 103 + 'px';
- this.style.maxHeight = win.innerHeight - 20 + 'px';
- this.style.opacity = 1;
- this.style.position = 'static';
- div.appendChild(this);
- },
- iiL: function () {
- if (mode != MsS.IMAGE) return;
- var imgs = tmp.imgIF.contentWindow.document.getElementsByTagName('img');
- if (!imgs || !imgs.length) return;
- zoomedImg.src = imgs[0].src;
- },
- iLoF: function () {
- if (iframe.src == URLS.ABOUT_BLANK) return;
- log('GRTZoom iframe loaded');
- snIO();
- if (config.ytProf) Cv.ytL();
- if (mode == MsS.HISTORY) {
- if (config.histHighl) Cv.hLa();
- iframe.contentWindow.document.body.scrollTop = 9999999;
- }
- },
- bCh: function () {
- if (BMI.minS.selectedIndex && BMI.maxS.selectedIndex) {
- if (this == BMI.minS) {
- log('min changed, value is ' + this.value);
- if (this.value && BMI.maxS.selectedIndex < this.selectedIndex) BMI.maxS.selectedIndex = this.selectedIndex;
- } else if (this == BMI.maxS) {
- log('max changed, value is ' + this.value);
- if (this.value && BMI.minS.selectedIndex > this.selectedIndex) BMI.minS.selectedIndex = this.selectedIndex;
- } else {
- log('this should not happen');
- }
- }
- tmp.tConfig.minBMI = BMI.minS.value;
- tmp.tConfig.maxBMI = BMI.maxS.value;
- uBC();
- },
- aCh: function () {
- var min = AGE.minI.value = parseInt(AGE.minI.value, 10) || 18,
- max = AGE.maxI.value = parseInt(AGE.maxI.value, 10) || 100;
- if (this == AGE.minI) {
- if (max < min) AGE.maxI.value = this.value;
- } else if (this == AGE.maxI) {
- if (min > max) AGE.minI.value = this.value;
- } else {
- log('this should not happen');
- }
- tmp.tConfig.minAge = min;
- tmp.tConfig.maxAge = max;
- },
- AGE_UPDOWN: function (e) {
- switch (e.keyCode) {
- case 39:
- case 38:
- this.value = parseInt(this.value, 10) + 1;
- break;
- case 37:
- case 40:
- this.value = parseInt(this.value, 10) - 1;
- break;
- default:
- return;
- }
- hS.aCh.apply(this, []);
- e.preventDefault();
- return false;
- },
- cBc: function () {
- var cfgID = this.getAttribute('cfgid') || '';
- if (typeof tmp.tConfig[cfgID] == 'undefined') return;
- tmp.tConfig[cfgID] = (this.checked) ? 1 : 0;
- log('cfg->%s changed to %s', cfgID, !! this.checked);
- },
- cSC: function () {
- var changed = 0;
- for (var i in tmp.tConfig) {
- if (typeof config[i] == 'undefined' || config[i] == tmp.tConfig[i]) continue;
- config[i] = tmp.tConfig[i];
- changed = 1;
- }
- if (this.ownerDocument.getElementById('grtSaveCookie').checked) {
- saveConfigCookie();
- } else {
- delConfigCookie();
- }
- if (changed) {
- f.main.contentWindow.location.reload();
- if (f.msg) f.msg.contentWindow.location.reload();
- return;
- }
- hS.dCl();
- }
- },
- //
- // --------------- init --------------------------------
- //
- init = function (version, _cfg) {
- checkClub();
- var T_CLUB = (ic) ? '(club)' : '';
- initButtonStyles();
- if (!ic && !self.location.href.match(/(?:left|top)\.php/)) {
- log('cannot work in frame ' + self.location.href);
- return;
- }
- if (ic) {
- lang = (self.document.body.innerHTML.indexOf('Speichern') > 0) ? 'de' : 'en';
- } else {
- var sels = self.document.getElementsByTagName('select') || [];
- for (var i = 0; i < sels.length; i++) {
- if (sels[i].name != 'lang') continue;
- lang = (sels[i].value == 'de') ? 'de' : 'en';
- }
- }
- var h = location.host || 'gayromeo',
- hashPt1 = '#GRT_REF_',
- hashPt2 = (h.indexOf('planetromeo') >= 0) ? 'PR' : (h.indexOf('gayromeo') >= 0) ? 'GR' : 'IP',
- hashPt3 = (/https/.test(location.protocol || '')) ? '_S' : '';
- linkFixHash = hashPt1 + hashPt2 + hashPt3;
- URLS.iB = URLS.BASE + URLS.iB;
- URLS.hB = URLS.BASE + URLS.hB;
- for (var i in URLS.IMG) {
- var url = URLS.iB + URLS.IMG[i];
- URLS.IMG[i] = url;
- (new Image()).src = url;
- }
- log('GRT::init()');
- var altHost = top.location.protocol + '//';
- if (altHost == 'https://') altHost += ((top.location.host == Ds.PLANET) ? Ds.GAY : Ds.PLANET);
- else altHost += ((top.location.host == Ds.IP) ? Ds.PLANET : Ds.IP);
- URLS.aH = altHost + '/';
- URLS.aPu = altHost + URLS.aPu;
- if (started) {
- log('GRT already running.');
- return;
- }
- if (typeof _cfg == 'object') {
- log('taking config vals from given config object');
- for (var i in _cfg) {
- if (typeof config[i] == 'undefined') continue;
- config[i] = _cfg[i];
- }
- } else {
- lcc();
- }
- gmVersion = version;
- smf();
- f.msg = (ic) ? null : top.frames.persoenliches.frameElement;
- if (f.msg) {
- f.msg.addEventListener('load', hS.mFl, false);
- }
- var topBody = findTopFrameBody(),
- div = document.createElement('div');
- div.id = 'grtDiv';
- div.style.backgroundImage = 'url(' + URLS.iB + 'bg.jpg)';
- if (ic) {
- var className = (xpath('//img[contains(@src,"logoGuideClub")]', topBody).length) ? 'grtGuideClub' : 'grtClub';
- addClass(topBody, className);
- }
- if (top.location.hostname == Ds.GAY) addClass(div, 'grtRomeo');
- grtDiv = div;
- div.innerHTML = '<div id="grtPimp"><i>pimped by<b>GR-Tools</b></i></div>' + '<img id="grtClub" src="' + URLS.IMG.CLUB + '" alt="" title="GR-Tools Club"/>' + '<img id="grtCfg" src="' + URLS.IMG.CFG + '" alt="" title="GR-Tools ' + i18n('sett') + '"/>' + '<img src="' + URLS.IMG.NONEWS + '" alt="" title="GR-Tools News" id="grtNews" />';
- tmp.nBu = div.childNodes[3];
- div.childNodes[2].addEventListener('click', function () {
- cZ();
- sCf();
- }, false);
- div.childNodes[1].addEventListener('click', openClub, false);
- topBody.appendChild(div);
- started = 1;
- log('GRT::init() done');
- track('initDone' + T_CLUB + '(gm' + gmVersion.used + ')');
- }, setNewsDate = function (d) {
- if (!d) {
- setStyles(tmp.nBu, {
- opacity: 0.3,
- cursor: 'default'
- });
- return;
- }
- addClass(grtDiv, 'grtNews');
- tmp.nBu.src = URLS.IMG.NEWS;
- tmp.newsNum = parseInt(d.replace(/\./g, ''), 10), frag = document.createElement('div');
- frag.innerHTML = '<div id="grtNewsTxt"><b>News!</b><br/><small style="font-size:9px">' + d + '</small></div>';
- if (config.newsRead == tmp.newsNum) {
- addClass(grtDiv, 'grtNewsRead', 1);
- }
- tmp.nBu.addEventListener('click', function (e) {
- track('newsClick');
- cZ();
- lep(gnu());
- setNewsRead();
- }, false);
- if (tmp.uAv) return;
- var newsTxt = frag.childNodes[0];
- grtDiv.appendChild(newsTxt);
- newsTxt.addEventListener('click', function (e) {
- track('newsClick');
- cZ();
- lep(gnu());
- setNewsRead();
- }, false);
- },
- smf = function () {
- try {
- f.main = (ic) ? top.frames[1].frames[1].frameElement : top.frames.mitte.frameElement;
- } catch (e) {
- log('GR-Tools cannot find main frame. Retry in a second.');
- setTimeout(smf, 1000);
- return;
- }
- f.main.addEventListener('load', function () {
- log('frame loaded');
- af();
- log('apply filter done');
- }, false);
- log('load handler attached');
- },
- setNewsRead = function () {
- addClass(grtDiv, 'grtNewsRead', 1);
- if ( !! cookie(C.NAME)) {
- config.newsRead = tmp.newsNum || 1;
- saveConfigCookie();
- }
- },
- gcu = function (ver) {
- var url = URLS.hB + URLS.HTML.CONFIG + (ver || Date.parse(new Date()).toString(16)) + '.' + lang + '.html';
- return url;
- },
- gnu = function () {
- var url = URLS.hB + URLS.HTML.NEWS + '?lang=' + lang + '&revision=' + gmVersion.used;
- return url;
- },
- setConfigHTML = function (html) {
- cfg.html = html.replace(/##PICBASE/g, URLS.BASE + 'img/cfg/');
- },
- af = function () {
- var body = null;
- log('GRT::af()');
- try {
- body = f.main.contentWindow.document.body;
- if (body.className != 'searchResults') throw 'no result page';
- } catch (e) {
- if (body.className == 'mainPage') {
- cZ();
- }
- log(e.toString());
- return;
- }
- var tbodies = body.getElementsByTagName('tbody');
- if (tbodies.length < 2) {
- log('skipped: no result table in page.');
- return;
- }
- var doc = body.ownerDocument,
- head = doc.getElementsByTagName('head')[0],
- sI = !! (doc.getElementById('grtBMIStyles'));
- if (iE(doc)) return;
- if (!sI) {
- var bmiStyle = doc.createElement('style');
- bmiStyle.type = 'text/css';
- bmiStyle.id = 'grtBMIStyles';
- bmiStyle.innerHTML = '.bmiF1 td {opacity:0.5}' + '.bmiF1 td:first-child img {opacity:0.5}' + '.bmiF1 td:first-child, .bmiF1 td:first-child .grtZIcon {opacity:1}' + '.bmiF2, .bmiF3 {opacity:0.5}' + '.grtAF {opacity:0.6}' + '.grtAF a {color:#eee}' + '.grtHist {margin:3px 0 0 2px;vertical-align:top;cursor:pointer;width:10px;height:10px;opacity:0.6}' + 'img.grtHist:hover {opacity:1}';
- head.appendChild(bmiStyle);
- }
- if (config.bigPaging && !body.getAttribute('grtPagingDone')) {
- body.setAttribute('grtPagingDone', 1);
- var r = doc.evaluate('//a[contains(@href,"resultPage")][contains(./strong,"\xab")]', doc, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
- if (r.singleNodeValue) {
- r.singleNodeValue.id = 'grtPrev';
- r.singleNodeValue.innerHTML = ' ';
- }
- r = doc.evaluate('//a[contains(@href,"resultPage")][contains(./strong,"\xbb")]', doc, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
- if (r.singleNodeValue) {
- r.singleNodeValue.id = 'grtNext';
- r.singleNodeValue.innerHTML = ' ';
- }
- }
- if (config.ytHead && !body.getAttribute('grtyt')) {
- body.setAttribute('grtyt', 1);
- var yts = xpath('//span[contains(.,"http:")][contains(.,"youtube")]', body);
- for (var i = yts.length - 1; i >= 0; i--) {
- yts[i].innerHTML = yts[i].innerHTML.replace(YT.RE, YT.FN);
- }
- ayp(doc);
- }
- cZ(f.main.contentWindow);
- var count = 0,
- tbody = tbodies[1],
- histTitle = i18n('hist'),
- secrTitle = i18n('secret');
- for (var j = 1; j < tbodies.length; j++) {
- var tbody = tbodies[j];
- if (tbody.getAttribute('grtPrep')) continue;
- tbody.setAttribute('grtPrep', 1);
- for (var i = 0; i < tbody.rows.length; i++) {
- var tr = tbody.rows[i];
- for (var j = 0; j < tr.cells.length; j++) {
- var td = tr.cells[j],
- txt = td.textContent;
- if (!/(\d{2,3})\.(\d{2,3})cm(?:<\/span>)?\.(?:<[^>]+>)?(\d{1,3})kg/.exec(txt.replace(/[\r\n]/g, ''))) continue;
- var age = parseInt(RegExp.$1, 10),
- size = parseInt(RegExp.$2, 10) / 100.0,
- weight = parseInt(RegExp.$3, 10),
- bmi = Math.round(weight / (size * size)),
- userID = tr.getElementsByTagName('a')[0].href.match(/set=(\d*)/)[1];
- tr.setAttribute('userid', userID);
- if (config.filterAge && (age < config.minAge || age > config.maxAge)) {
- addClass(td, 'grtAF');
- addClass(td.parentNode.cells[td.cellIndex - 1], 'grtAF');
- addClass(td.parentNode.cells[td.cellIndex + 1], 'grtAF');
- }
- if (config.showBMI || config.histInRes) {
- var z = document.createElement('span');
- z.className = 'grtBMI';
- td.previousSibling.previousSibling.appendChild(z);
- var profileLink = z.parentNode.getElementsByTagName('a')[0],
- userName = profileLink.innerHTML,
- hpLink = (config.bmiClickHP) ? 'title="' + secrTitle + '" username="' + encodeURIComponent(userName) + '" href="' + URLS.aPu + userID + linkFixHash + '" onclick="return top.GRT.secretClick(this)"' : '',
- bmiVal = (config.showBMI) ? '<a target="_blank" ' + hpLink + '>' + Math.round(bmi) + '</a>' : '',
- histLink = (config.histInRes) ? '<img src="' + URLS.IMG.HISTORY + '" userid="' + userID + '" class="grtHist" />' : '';
- z.innerHTML = '(' + bmiVal + histLink + ')';
- if (config.useIF) {
- profileLink.onclick = null;
- profileLink.addEventListener('click', hS.iC, false);
- }
- if (config.histInRes) {
- var histNode = z.childNodes[(config.showBMI) ? 2 : 1];
- histNode.addEventListener('click', hS.hC, false);
- histNode.title = histTitle;
- }
- }
- var isOutOfLimits = config.filterBMI && (bmi < config.minBMI || bmi > config.maxBMI);
- if (isOutOfLimits) {
- count++;
- addClass(tr, 'bmiF1');
- addClass(tr.nextSibling.nextSibling, 'bmiF2');
- addClass(tr.nextSibling.nextSibling.nextSibling.nextSibling, 'bmiF3');
- }
- break;
- }
- }
- }
- if (config.clickTapse) {
- var fPrints = xpath('//img[contains(@src,"/img/footprints/")]', doc);
- for (var i = fPrints.length - 1; i >= 0; i--) {
- var fp = fPrints[i];
- if (fp.getAttribute('grtPrep')) continue;
- fp.setAttribute('grtPrep', 1)
- fp.style.cursor = 'pointer';
- fp.addEventListener('click', hS.tc, false);
- }
- }
- log('%i items filtered.', count);
- },
- ayp = function (doc) {
- if (!config.ytPreview) return;
- var ytAs = xpath('//a[@class="ytlink"]', doc);
- if (!ytAs.length) return;
- var div = doc.getElementById('grtYT');
- if (!div) {
- var x = doc.createElement('div');
- x.innerHTML = YT.DIVHTML;
- div = x.childNodes[0];
- doc.body.appendChild(div);
- div.childNodes[0].addEventListener('load', hS.yIl, false);
- div.childNodes[0].style.marginTop = '-33px';
- div.childNodes[1].src = URLS.IMG.YTLOAD;
- }
- for (var i = 0; i < ytAs.length; i++) {
- var a = ytAs[i];
- a.ytdiv = div;
- a.ytbase = URLS.YTIMG;
- a.addEventListener('mouseover', hS.yO, false);
- a.addEventListener('mouseout', hS.YT_OUT, false);
- a.addEventListener('mousemove', hS.yM, false);
- }
- },
- setLiveRevision = function (v) {
- var vv = v.match(/(\d)\.99\.(\d*)/);
- if (vv) {
- v = vv[1] + '.' + vv[2];
- }
- gmVersion.live = v;
- var needsUpdate = function (used, live) {
- var u = used.split('.'),
- l = live.split('.'),
- its = Math.min(u.length, l.length);
- for (var i = 0; i < its; i++)
- if (parseInt(u[i]) < parseInt(l[i])) return true;
- return (u[its - 1] == l[its - 1] && u.length < l.length);
- };
- if (!needsUpdate(gmVersion.used, gmVersion.live)) return;
- addClass(grtDiv, 'grtUpd');
- var frag = document.createElement('div');
- frag.innerHTML = '<img id="grtUpd" src="' + URLS.IMG.UPD + '" alt="" title="GR-Tools ' + i18n('upd') + '"/>';
- var img = frag.childNodes[0];
- grtDiv.insertBefore(img, grtDiv.getElementsByTagName('img')[2]);
- tmp.uAv = 1;
- img.addEventListener('click', function (e) {
- track('updateClick');
- cZ();
- var url = URLS.hB + URLS.HTML.UPD + '?lang=' + lang + '&revision=' + gmVersion.used;
- lep(url);
- }, false);
- },
- checkClub = function () {
- if (ic !== -1) return;
- ic = !! self.location.href.match(/setcard\/cluide\//);
- },
- xpath = function (xpath, refNode) {
- var n = [],
- res = (refNode.ownerDocument || refNode).evaluate(xpath, refNode, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null),
- r = res.iterateNext();
- while (r != null) {
- n[n.length] = r;
- r = res.iterateNext();
- }
- return n;
- },
- openClub = function () {
- track('openClub');
- f.main.contentWindow.wrappedJSObject.openUrl('/auswertung/setcard/index.php?set=3053381&t=3&page=club');
- },
- track = function (s) {
- if (!LOG.T) return;
- (new Image()).src = URLS.BASE + 'b/GRT_' + s + '_' + Date.parse(new Date).toString(16).substring(5);
- },
- initButtonStyles = function () {
- if (started) return;
- checkClub();
- var f = findTopFrameBody();
- if (!f) {
- log('no matching frame found for css');
- return;
- }
- f.innerHTML += '<style type="text/css">' + HTML.BUTTON_STYLES + '</style>';
- },
- setStyles = function (o, css) {
- for (var i in css)
- o.style[i] = css[i];
- },
- iE = function (b) {
- return !!((b.getElementsByTagName('td')[0] || {}).innerHTML || '').match(/escorts/i);
- },
- cZ = function () {
- var win = f.main.contentWindow;
- if (win[ZOOM_APPLIED]) return;
- log('zoom wasnt there, adding now..');
- win[ZOOM_APPLIED] = 1;
- var realFrames = win.document.getElementsByTagName('frame');
- initZoom((realFrames.length > 1) ? realFrames[1] : win);
- },
- cookie = function (name, value, _opts) {
- if (arguments.length > 1) {
- var opts = _opts || {};
- if (value === null) {
- value = '';
- opts.expires = -1;
- }
- var path = opts.path ? '; path=' + opts.path : '',
- domain = opts.domain ? '; domain=' + opts.domain : '',
- secure = opts.secure ? '; secure' : '',
- expires = '',
- date;
- if (opts.expires && (typeof opts.expires == 'number' || opts.expires.toUTCString)) {
- if (typeof opts.expires == 'number') {
- date = new Date();
- date.setTime(date.getTime() + (opts.expires * 24 * 60 * 60 * 1000));
- } else {
- date = opts.expires;
- }
- expires = '; expires=' + date.toUTCString();
- }
- document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
- return;
- }
- var cVal = null;
- if (document.cookie && document.cookie != '') {
- var cookies = document.cookie.split(';');
- for (var i = 0; i < cookies.length; i++) {
- var cookie = cookies[i].replace(/^\s+|\s+$/g, '');
- if (cookie.substring(0, name.length + 1) == (name + '=')) {
- cVal = decodeURIComponent(cookie.substring(name.length + 1));
- break;
- }
- }
- }
- return cVal;
- },
- snIO = function () {
- var h = zoomWin.innerHeight - 28,
- cssH = h + 'px',
- body = zoomDoc.body,
- scroll = body.scrollTop;
- body.oldScrollTop = scroll || 0;
- body.style.overflow = 'hidden';
- body.scrollTop = scroll;
- zoomDiv.style.width = 'auto';
- zoomDiv.style.height = 'auto';
- closeDiv.style.height = cssH;
- if (mode == MsS.CONFIG) {
- cfg.div.style.height = cssH;
- } else {
- iframe.style.height = cssH;
- }
- zoomDiv.className = 'grtPLoaded';
- },
- Cv = {
- ytL: function () {
- try {
- var doc = zoomDiv.getElementsByTagName('iframe')[0].contentWindow.document,
- tds = xpath(YT.PROFILE_XPATH, doc);
- for (var i = tds.length - 1; i >= 0; i--) {
- var len = tds[i].innerHTML.length,
- sDone = tds[i].innerHTML.replace(YT.RE, YT.FN);
- if (sDone.length == len) continue;
- tds[i].innerHTML = sDone;
- }
- ayp(doc);
- } catch (e) {}
- },
- hLa: function () {
- try {
- var doc = zoomDiv.getElementsByTagName('iframe')[0].contentWindow.document,
- lastMsgA = xpath('//a[contains(@name,"lastmessage")]', doc);
- tds = xpath('//tr/td[contains(@class,"body")]', doc), td = tds[tds.length - 1];
- if (!lastMsgA.length || !tds.length) return;
- setStyles(td, {
- border: '1px solid #738cbe',
- borderWidth: '1px 0',
- padding: '6px 4px 0 22px',
- background: '#203B71 url(' + URLS.iB + 'lastmsg.gif) 5px 7px no-repeat'
- });
- td.parentNode.parentNode.parentNode.style.borderCollapse = 'separate';
- } catch (e) {}
- }
- }, isPagePrepared = function () {
- return !!f.main.contentWindow[PAGE_PREPARED];
- },
- setPagePrepared = function () {
- f.main.contentWindow[PAGE_PREPARED] = 1;
- },
- initZoom = function (targetWin) {
- if (isPagePrepared()) {
- log('grt prepared page already.');
- } else {
- log('grt preparing page..');
- setPagePrepared();
- zoomDiv = null;
- gray = null;
- currentZoomUserID = null;
- zoomVisible = null;
- clt();
- zoomWin = targetWin;
- zoomDoc = zoomWin.document;
- if (iE(zoomDoc)) return;
- if (iframe) iframe = null;
- iframe = zoomDoc.createElement('iframe');
- iframe.addEventListener('load', hS.iLoF, false);
- cfg.div = zoomDoc.createElement('div');
- cfg.div.id = 'grtCfgDiv';
- cfg.div.title = ' ';
- cfg.div.addEventListener('click', function (e) {
- e.stopPropagation();
- e.cancelBubble = true;
- }, false);
- closeDiv = zoomDoc.createElement('div');
- closeDiv.id = 'grtZCl';
- anonDiv = zoomDoc.createElement('div');
- anonDiv.id = 'grtZAnon';
- var width = zoomWin.innerWidth || 680;
- if (width < 600) {
- var w = width - 75 + 'px';
- iframe.style.width = w;
- cfg.div.style.width = w;
- }
- if (zoomedImg) zoomedImg = null;
- zoomedImg = zoomDoc.createElement('img');
- zoomedImg.addEventListener('load', hS.IMG_LOAD, false);
- if (tmp.imgIF) delete tmp.imgIF;
- tmp.imgIF = zoomDoc.createElement('iframe');
- tmp.imgIF.style.display = 'none';
- zoomDoc.body.appendChild(tmp.imgIF);
- tmp.imgIF.addEventListener('load', hS.iiL, false);
- var xdiv = zoomDoc.createElement('div');
- xdiv.innerHTML = HTML.STYLES + HTML.DIV + HTML.GRAY;
- zoomDoc.body.appendChild(xdiv);
- for (var i = 0; i < 3; i++) {
- zoomDoc.body.appendChild(xdiv.childNodes[0]);
- }
- zoomDoc.body.removeChild(xdiv);
- zoomDiv = zoomDoc.getElementById('grtZDiv');
- zoomDiv.title = i18n('close');
- zoomDiv.addEventListener('mouseover', hS.dHo, false);
- zoomDiv.addEventListener('click', hS.dCl, false);
- gray = zoomDoc.getElementById('grtGray');
- gray.addEventListener('click', hS.dCl, false);
- }
- var imgs = zoomDoc.getElementsByTagName('img'),
- zoomIconURL = URLS.IMG['ZOOM' + ((config.bigZoom) ? 2 : 1)];
- if (iE(zoomDoc)) return;
- for (var i = 0; i < imgs.length; i++) {
- var img = imgs[i],
- src = img.src;
- if (img.getAttribute(ZOOM_ADDED) || !/\/img\/usr\/([0-9a-f]*\.jpg)$/.exec(img.src || '')) continue;
- img.setAttribute(ZOOM_ADDED, 1);
- var picName = RegExp.$1,
- zoomIconHTML = '<img src="' + zoomIconURL + '" alt="Zoom" class="grtZIcon" />',
- _a = img.parentNode,
- a = _a;
- while (_a != _a.ownerDocument.body) {
- if (_a.nodeName == 'A') {
- a = _a;
- break;
- }
- _a = _a.parentNode;
- }
- var moreThanOne = a.parentNode.getElementsByTagName('a').length > 1,
- td = (moreThanOne) ? a.parentNode : a.parentNode.parentNode.getElementsByTagName('td')[1],
- username = '???',
- userID = 0;
- if (!td) {
- var _p = a;
- while (_p != document.body) {
- _p = _p.parentNode;
- if (_p == a.ownerDocument.body) break;
- if (_p.tagName != 'TD') continue;
- td = _p.parentNode.cells[1] || 0;
- break;
- }
- }
- if (config.zoom) {
- if (td) {
- var as = td.getElementsByTagName('a');
- for (var z = 0; z < as.length; z++) {
- var _a = as[z];
- if (!_a.href) continue;
- if (_a.href.match(/setcard/i)) {
- username = _a.innerHTML;
- userID = _a.href.match(/set=(\d*)/)[1] || 0;
- } else if (/popup\.php\/([0-9a-z\.]+)\.jpg/.exec(_a.href)) {
- picName = RegExp.$1;
- }
- if (userID && picName) break;
- }
- }
- a.className += ' grt-thumb';
- a.innerHTML += zoomIconHTML;
- var zoomIcon = a.childNodes[a.childNodes.length - 1];
- zoomIcon.setAttribute('username', username);
- zoomIcon.setAttribute('userid', userID);
- picName = self.location.protocol + '//' + self.location.host + '/auswertung/pix/popup.php/' + picName;
- zoomIcon.setAttribute('picname', picName);
- if (moreThanOne) a.style.display = 'inline-block';
- zoomIcon.parentNode.style.outline = 'none';
- zoomIcon.addEventListener('mouseover', hS.iHo, false);
- zoomIcon.addEventListener('mouseout', hS.iOu, false);
- }
- if (config.useIF) {
- var handlerElem = (moreThanOne) ? td.getElementsByTagName('a')[0] : (config.thumbIF) ? a : zoomIcon;
- if (handlerElem) {
- handlerElem.addEventListener('click', hS.iC, false);
- if (handlerElem === a) {
- a.onclick = null;
- } else if (moreThanOne) {
- handlerElem.onclick = null;
- }
- }
- }
- }
- },
- setGray = function (on) {
- if (on) {
- gray.style.display = 'block';
- return;
- }
- var body = zoomDoc.body;
- body.style.overflow = 'auto';
- if (body.oldScrollTop) {
- body.scrollTop = body.oldScrollTop;
- body.oldScrollTop = 0;
- }
- gray.style.display = 'none';
- },
- lep = function (url) {
- setGray(1);
- sLsg();
- mode = MsS.OTHER;
- zoomDiv.appendChild(iframe);
- zoomDiv.appendChild(closeDiv);
- iframe.src = url;
- },
- sCf = function () {
- setGray(1);
- sLsg();
- mode = MsS.CONFIG;
- cfg.div.innerHTML = cfg.html;
- zoomDiv.appendChild(cfg.div);
- tmp.tConfig = {};
- for (var i in config)
- tmp.tConfig[i] = config[i];
- var cbs = xpath('//input[@type="checkbox"]', cfg.div);
- for (var i = 0; i < cbs.length; i++) {
- var cb = cbs[i],
- id = (cb.id || '').substring(5);
- if (!id || typeof tmp.tConfig[id] == 'undefined') continue;
- cb.checked = !! tmp.tConfig[id];
- cb.setAttribute('cfgid', id);
- cb.addEventListener('change', hS.cBc, false);
- }
- cfg.div.ownerDocument.getElementById('grtSaveCookie').checked = !! cookie(C.NAME);
- cfg.div.ownerDocument.getElementById('grtSaveConfig').addEventListener('click', hS.cSC, false);
- var bmiDiv = cfg.div.ownerDocument.getElementById('bmiDiv'),
- ageDiv = cfg.div.ownerDocument.getElementById('ageDiv'),
- protoSelect = zoomDoc.createElement('select'),
- optIndex = 0,
- minIndex = 0,
- maxIndex = 0;
- protoSelect.className = 'bmiSelect';
- for (var i = BMI.RANGE.VISIBLE.min - 1; i <= BMI.RANGE.VISIBLE.max; i++) {
- var opt = zoomDoc.createElement('option'),
- status = (i < BMI.RANGE.VISIBLE.min) ? 'egal' : (i < BMI.RANGE.HEALTHY.min) ? 'below' : (i > BMI.RANGE.HEALTHY.max) ? 'above' : 'ok';
- opt.innerHTML = (i < BMI.RANGE.VISIBLE.min) ? 'egal' : i;
- opt.value = (i < BMI.RANGE.VISIBLE.min) ? false : i;
- opt.style.background = BMI.COLOR[status];
- protoSelect.appendChild(opt);
- if (i == config.minBMI) minIndex = optIndex;
- if (i == config.maxBMI) maxIndex = optIndex;
- optIndex++;
- }
- BMI.minS = protoSelect.cloneNode(1);
- BMI.minS.id = 'grtMinSelect';
- BMI.minS.selectedIndex = minIndex;
- BMI.minS.addEventListener('change', hS.bCh, false);
- BMI.maxS = protoSelect;
- BMI.maxS.id = 'grtMaxSelect';
- BMI.maxS.selectedIndex = maxIndex;
- BMI.maxS.addEventListener('change', hS.bCh, false);
- var minLabel = zoomDoc.createElement('label');
- minLabel.innerHTML = 'min.';
- minLabel.setAttribute('for', 'grtMinSelect');
- var maxLabel = zoomDoc.createElement('label');
- maxLabel.innerHTML = 'max.';
- maxLabel.setAttribute('for', 'grtMaxSelect');
- bmiDiv.appendChild(minLabel);
- bmiDiv.appendChild(BMI.minS);
- bmiDiv.appendChild(maxLabel);
- bmiDiv.appendChild(BMI.maxS);
- uBC();
- AGE.minI = zoomDoc.createElement('input');
- AGE.minI.id = 'grtAgeMin';
- AGE.minI.value = config.minAge;
- AGE.minI.addEventListener('click', function () {
- this.select()
- }, false);
- AGE.minI.addEventListener('keydown', hS.AGE_UPDOWN, false);
- AGE.minI.addEventListener('change', hS.aCh, false);
- AGE.maxI = AGE.minI.cloneNode(1);
- AGE.maxI.id = 'grtAgeMax';
- AGE.maxI.value = config.maxAge;
- AGE.maxI.addEventListener('click', function () {
- this.select()
- }, false);
- AGE.maxI.addEventListener('keydown', hS.AGE_UPDOWN, false);
- AGE.maxI.addEventListener('change', hS.aCh, false);
- minLabel = zoomDoc.createElement('label');
- minLabel.innerHTML = 'min.';
- minLabel.setAttribute('for', 'grtAgeMin');
- maxLabel = zoomDoc.createElement('label');
- maxLabel.innerHTML = 'max.';
- maxLabel.setAttribute('for', 'grtAgeMax');
- ageDiv.appendChild(minLabel);
- ageDiv.appendChild(AGE.minI);
- ageDiv.appendChild(maxLabel);
- ageDiv.appendChild(AGE.maxI);
- zoomDiv.appendChild(closeDiv);
- snIO();
- },
- uBC = function () {
- BMI.minS.style.backgroundColor = BMI.minS.options[BMI.minS.selectedIndex].style.backgroundColor;
- BMI.maxS.style.backgroundColor = BMI.maxS.options[BMI.maxS.selectedIndex].style.backgroundColor;
- },
- sLsg = function () {
- zoomDiv.innerHTML = '';
- zoomDiv.className = '';
- zoomDiv.style.width = '';
- zoomDiv.style.height = '';
- zoomDiv.style.display = 'block';
- zoomVisible = 1;
- },
- iLi = function (username, userID, picName) {
- clt();
- if (zoomVisible && userID == currentZoomUID && mode == MsS.IMAGE) return;
- currentZoomUID = userID;
- sLsg();
- mode = MsS.IMAGE;
- zoomedImg.setAttribute('userid', userID);
- zoomedImg.setAttribute('username', username);
- zoomedImg.id = 'grtFull';
- tmp.imgIF.src = picName;
- },
- clt = function () {
- if (!hideTimer) return;
- clearTimeout(hideTimer);
- hideTimer = null;
- },
- hvD = function (_now_) {
- if (hideTimer) return;
- if (_now_) {
- rHd();
- return;
- }
- var t = (zoomedImg.width < 300 || zoomedImg.height < 300) ? 250 : 150;
- hideTimer = setTimeout(rHd, t);
- },
- rHd = function () {
- hideTimer = null;
- zoomDiv.innerHTML = '';
- zoomDiv.style.display = 'none';
- zoomVisible = 0;
- },
- getStatusURL = function (isLocal) {
- var statusURLBase = (isLocal) ? 'http://gr-tools/' : URLS.BASE;
- return statusURLBase + 'status';
- };
- return {
- init: init,
- retrigger: function () {
- var win = f.main.contentWindow;
- win[ZOOM_APPLIED] = 0;
- af();
- },
- secretClick: hS.aC,
- setConfigHTML: setConfigHTML,
- setLiveRevision: setLiveRevision,
- setNewsDate: setNewsDate,
- getLanguage: function () {
- return lang
- },
- getStatusURL: getStatusURL
- };
- })(); // from var GRT = function () {...} ();
- ; //from if (!self.GRT)
- /*
- src = [];
- src[src.length] = 'if(!top.GRT)%CRtop.GRT=(function(){var LOG={STD:1,T:0},lang=%SQde%SQ,L={close:{de:%SQZum Schließen klicken%SQ,en:%SQClick to close%SQ},inv:{de:%SQBild invertieren%SQ,en:%SQInvert image%SQ},hist:{de:%SQMessage-Verlauf%SQ,en:%SQMessage history%SQ},secret:{de:%SQProfil geheim ansehen (falls Profil oeffentlich)%SQ,en:%SQView profile secretly (if profile is public)%SQ},sett:{de:%SQEinstellungen%SQ,en:%SQSettings%SQ},upd:{de:%SQjetzt updaten!%SQ,en:%SQupdate available!%SQ}},f={top:null,main:null,msg:null},win=0,grtDiv=null,started=0,ic=-1,gmVersion={used:%SQ?%SQ,live:%SQ??%SQ},C={NAME:%SQGRTCFG%SQ,TTL:14},Ds={GAY:%SQwww.gayromeo.com%SQ,PLANET:%SQwww.planetromeo.com%SQ,IP:%SQ83.98.143.20%SQ},linkFixHash=%SQ%SQ,ZOOM_APPLIED=%SQ_grtZoomApplied%SQ,PAGE_PREPARED=%SQ_grtPagePrepared%SQ,ZOOM_ADDED=%SQ_grtZDone%SQ,TABLE_PREPARED=%SQ_grtTableDone%SQ,tmp={},config={showBMI:1,bmiClickHP:1,filterBMI:1,minBMI:0,maxBMI:25,filterAge:1,minAge:18,maxAge:100,clickTapse:1,zoom:1,bigZoom:1,useIF:1,thumbIF:1,histInMsg:1,histInRes:1,histHighl:1,bigPaging:1,ytHead:1,ytProf:1,ytPreview:1,newsRead:0},CONFIG_TRANSKEY={showBMI:68,bmiClickHP:12,filterBMI:41,minBMI:31,maxBMI:21,clickTapse:14,zoom:9,bigZoom:3,useIF:5,thumbIF:91,histInMsg:44,histInRes:93,histHighl:2,bigPaging:95,ytHead:50,ytProf:49,ytPreview:71,newsRead:15,filterAge:94,minAge:51,maxAge:43},URLS={BASE:(self.location.protocol.match(/https/))?%SQhttps://ssl-account.com/gr-tools.justlep.net/%SQ:%SQhttp://gr-tools.justlep.net/%SQ,iB:%SQimg/%SQ,IMG:{';
- src[src.length] = 'HISTORY:%SQhist.gif%SQ,LOAD:%SQload.gif%SQ,ZOOM1:%SQlupe.png%SQ,ZOOM2:%SQlupe2.png%SQ,CLOSE:%SQclose.cur%SQ,CFG:%SQtool.png%SQ,CLUB:%SQhome.png%SQ,NEWS:%SQcharts04.png%SQ,UPD:%SQflag.png%SQ,NONEWS:%SQcharts04gray.png%SQ,YTLOAD:%SQytload.gif%SQ},hB:%SQhtml/%SQ,HTML:{CONFIG:%SQconfig_%SQ,NEWS:%SQnews2.php%SQ,UPD:%SQupdate.php%SQ},YTIMG:%SQhttp://ref.justlep.net/ytimg%SQ,aPu:%SQ/auswertung/setcard/index.php?set=%SQ,ABOUT_BLANK:%SQabout:blank%SQ},BMI={COLOR:{egal:%SQ#E4EAF9%SQ,below:%SQ#fed14a%SQ,ok:%SQ#85e854%SQ,above:%SQ#ff8868%SQ},RANGE:{VISIBLE:{min:15,max:40},HEALTHY:{min:20,max:25}},minS:null,maxS:null},AGE={minI:null,maxI:null},zoomVisible=false,currentZoomUID=null,hideTimer=null,zoomWin=0,zoomDoc=0,cfg={div:0,html:%SQconfig%SQ},gray=0,zoomDiv=0,iframe=0,zoomedImg=0,closeDiv=0,anonDiv=0,mode=0,MsS={IMAGE:1,PROFILE:2,HISTORY:3,CONFIG:4,OTHER:5},HTML={STYLES:%SQ<style type="text/css">%SQ+%SQ.grt-thumb {display:block;position:relative}%SQ+%SQdiv#grtZDiv {position:fixed;top:10px;right:6px;z-index:6000;border:1px solid #ccc;width:100px;height:100px;background:transparent url(%SQ+URLS.BASE+%SQimg/load.gif) center center no-repeat;display:none}%SQ+%SQdiv#grtZDiv>img {cursor:url(%SQ+URLS.BASE+%SQimg/close.cur),default}%SQ+%SQimg.grtZIcon {position:absolute;right:1px;bottom:1px;border:none;cursor:pointer;z-index:2000;opacity:0.7}%SQ+%SQimg.grtZIcon:hover {opacity:1}%SQ+%SQ#grtCfgDiv {background-color:#305AB1;overflow:auto}%SQ+%SQdiv.grtZUserName {position:absolute;right:0;top:0;pad';
- src[src.length] = 'ding:0px 5px 3px 9px;border:1px solid #ccc;border-width:0 0 1px 1px;-moz-border-radius-bottomleft:8px;background:#305AB1 none;opacity:0.8;color:yellow;z-index:6005}%SQ+%SQ#grtZDiv iframe, #grtZDiv #grtCfgDiv {border:none;width:500px;height:500px;display:none}%SQ+%SQ#grtZDiv.grtPLoaded {right:10px;background-image:none;opacity:1}%SQ+%SQ#grtZDiv.grtILoaded {background-image:none}%SQ+%SQ#grtZDiv.grtPLoaded iframe, #grtZDiv.grtPLoaded #grtZCl, #grtZDiv.grtPLoaded .grtZoom, #grtZDiv.grtPLoaded #grtCfgDiv {display:block}%SQ+%SQ#grtZCl {position:absolute;left:-51px;top:-1px;background:#236 url(%SQ+URLS.BASE+%SQimg/close.png) center center no-repeat;width:50px;height:300px;border:1px solid #ccc;border-width:1px 0 1px 1px;-moz-border-radius-bottomleft:20px;-moz-border-radius-topleft:20px;opacity:0.6;cursor:pointer}%SQ+%SQdiv#grtZCl:hover {opacity:0.8}%SQ+%SQ#grtZAnon {position:absolute;left:-38px;top:10px;background:transparent url(%SQ+URLS.BASE+%SQimg/nogo.png) center center no-repeat;width:26px;height:26px;opacity:0.3;cursor:pointerz-index:999;display:none}%SQ+%SQ.grtPLoaded #grtZAnon {display:block}%SQ+%SQdiv#grtZCl {display:none}%SQ+%SQ#grtGray {position:fixed;left:0;top:0;width:100%;height:100%;background:#000 none;opacity:0.7;z-index:5000;display:none}%SQ+%SQ#grtNext, #grtPrev {text-decoration:none;outline:none;background:transparent url(%SQ+URLS.BASE+%SQimg/next.png) center center no-repeat;opacity:0.6;padding:8px 39px;margin:0 5px;border:1px dotted #6890E5}%SQ+%SQa#grtPrev {ba';
- src[src.length] = 'ckground-image:url(%SQ+URLS.BASE+%SQimg/prev.png)}%SQ+%SQ#grtPrev:hover, #grtNext:hover {opacity:1}%SQ+%SQ#grtIv {width:24px;height:24px;bottom:6px;opacity:0.7}%SQ+%SQ#grtIv {position:absolute;right:7px;cursor:pointer !important;background:transparent url(%SQ+URLS.BASE+%SQimg/object_15.png) 0 0 no-repeat;z-index:6005}%SQ+%SQ#grtIv:hover {opacity:1}%SQ+%SQ#grtFull {left:0;top:0;z-index:6004}%SQ+%SQ</style>%SQ,DIV:%SQ<div id="grtZDiv"></div>%SQ,GRAY:%SQ<div id="grtGray"></div>%SQ,BUTTON_STYLES:%SQ#grtDiv {%SQ+%SQposition:absolute;%SQ+%SQright:310px;%SQ+%SQtop:0;%SQ+%SQoverflow:visible;%SQ+%SQborder:1px solid #A2B3DE;%SQ+%SQborder-top:none;%SQ+%SQpadding:1px 5px 2px 5px;%SQ+%SQz-index:9999;%SQ+%SQbackground:transparent none 0 0 no-repeat;%SQ+%SQcolor:#E1DEF1;%SQ+%SQfont-family:Tahoma,Arial,Verdana,Helvetica;%SQ+%SQfont-size:11px;%SQ+%SQline-height:14px;%SQ+%SQ-moz-border-radius: 0 0 6px 6px;%SQ+%SQ}%SQ+%SQ#grtDiv:hover {border-color:#D1D8EB}%SQ+%SQ#grtPimp {float:left;padding:0 5px 0 2px;position:static;overflow:hidden;display:none}%SQ+%SQ#grtPimp b {display:block;color:#AEE451;font-style:normal}%SQ+%SQ#grtDiv img {float:left;display:none}%SQ+%SQ#grtDiv:hover img, %SQ+%SQ#grtDiv:hover #grtPimp,%SQ+%SQ#grtDiv:hover #grtNewsTxt {display:block}%SQ+%SQbody #grtDiv #grtCfg,%SQ+%SQbody #grtDiv #grtNews {display:block}%SQ+%SQ#grtDiv.grtUpd img#grtUpd, #grtDiv.grtRomeo #grtPimp, #grtDiv #grtNews {display:block}%SQ+%SQ#grtDiv.grtRomeo {right:311px}%SQ+%SQ#grtDiv.grtNews #grtNews {cursor:';
- src[src.length] = 'pointer !important}%SQ+%SQ.grtNewsRead #grtNews {opacity:0.5}%SQ+%SQ#grtNewsTxt {float:left;position:static;color:#FE9B2C;padding:0 0 0 3px;cursor:pointer; display:none}%SQ+%SQ#grtNewsTxt:hover {text-decoration:underline;opacity:1!important}%SQ+%SQ.grtNewsRead #grtNewsTxt {opacity:0.7}%SQ+%SQbody.grtClub #grtDiv {left:auto;right:82px !important}%SQ+%SQbody.grtGuideClub #grtDiv {left:225px;right:auto !important}%SQ+%SQ#grtDiv img {cursor:pointer;vertical-align:middle;opacity:0.8;margin:1px 2px 0}%SQ+%SQ#grtDiv img:hover {opacity:1 !important}%SQ+%SQbody.grtClub #grtDiv #grtPimp, body.grtGuideClub #grtDiv #grtPimp,%SQ+%SQbody.grtClub #grtDiv #grtClub, body.grtGuideClub #grtDiv #grtClub {display:block !important}%SQ},YT={PROFILE_XPATH:%SQ//table[contains(@class,"prfl")]/tbody/tr/td[contains(.,"http:")][contains(.,"youtube")]%SQ,RE:/(">)?http:%BS/%BS/(?:<wbr>)?(?:[a-z]+%BS.)?(?:<wbr>)?youtube.(<wbr>)?com%BS/[^%BSs%BSt%BSn%BSr%BS]%BS)]+/ig,FN:function(s){if(!s.indexOf(%SQ">%SQ))return s;var url=s.replace(/(<wbr>| |<br>?)/g,%SQ%SQ).replace(%SQ&%SQ,%SQ&%SQ),jumpURL=%SQ/jump.php?jump=%SQ+encodeURIComponent(url),link=%SQ<a class="ytlink" href="%SQ+jumpURL+%SQ" target="_blank">%SQ+s+%SQ</a>%SQ;return link;},DIVHTML:%SQ<div id="grtYT" style="position:fixed;display:none"><img /><img /></div>%SQ,div:0},lcc=function(){var c=cookie(C.NAME);if(!c){log(%SQno GRT config cookie%SQ);return;}%CRvar trans={};for(var i in CONFIG_TRANSKEY)trans[CONFIG_TRANSKEY[i]]=i;var a=c.split(%SQ_%SQ);for(v';
- src[src.length] = 'ar i=0;i<a.length;i++){var p=a[i].split(%SQ-%SQ),k=trans[p[0]]||0,v=p[1];if(!k)continue;if(typeof config[k]==%SQundefined%SQ){log(%SQunknown key: %SQ+k);continue;}%CRlog(%SQrestoring key %s = %s%SQ,k,v);config[k]=parseInt(v,10);}%CRsaveConfigCookie();},saveConfigCookie=function(){var a=[];for(var i in config){a[a.length]=CONFIG_TRANSKEY[i]+%SQ-%SQ+config[i];}%CRvar data=a.join(%SQ_%SQ);cookie(C.NAME,data,{path:%SQ/%SQ,expires:C.TTL});log(%SQconfig cookie saved%SQ);},delConfigCookie=function(){cookie(C.NAME,null,{path:%SQ/%SQ});log(%SQconfig cookie removed%SQ);},i18n=function(k){return(L[k])?L[k][lang]:%SQ???%SQ;},addClass=function(o,s,check){if(!o)return;if(check&&(o.className||%SQ%SQ).indexOf(s)>=0)return;o.className=s+%SQ %SQ+(o.className||%SQ%SQ);},removeClass=function(o,s){if(!o||!o.className)return;o.className=o.className.replace(s,%SQ%SQ);},findTopFrameBody=function(frameName){if(!f.top)f.top=self.frameElement;try{if(frameName)return top.frames[frameName].document.body;return f.top.contentWindow.document.body;}catch(e){log(%SQfindTopFrameBody failed: %SQ+e.toString());return null;}},log=function(s){if(!LOG.STD||typeof console==%SQundefined%SQ)return;console.log.apply(console,arguments||[]);},hS={mFl:function(){var doc=this.contentWindow.document;var userList=doc.getElementById(%SQfavoritesOnlineList%SQ);if(userList){if(!config.useIF)return;cZ();var links=xpath(%SQ//a[contains(@href,"auswertung%BS/setcard%BS/")]%SQ,userList);for(var i=links.length-1;i>=0;i--){var a=links';
- src[src.length] = '[i],userID=a.parentNode.id.match(/row(%BSd*)/)[1],smileys=a.parentNode.getElementsByTagName(%SQimg%SQ);if(smileys.length&&smileys[0].src.match(/(club|guide)/))continue;a.parentNode.setAttribute(%SQuserid%SQ,userID);a.onclick=null;a.addEventListener(%SQclick%SQ,hS.iC,false);}%CRreturn;}%CRvar msgList=doc.getElementById(%SQnewMessageList%SQ);if(!msgList||!config.histInMsg)return;var pics=xpath(%SQ//a[contains(@href,"%BS/msg%BS/%BS?id=")]/img%SQ,msgList),title=i18n(%SQhist%SQ);for(var i=pics.length-1;i>=0;i--){var p=pics[i],userID=p.parentNode.parentNode.id.match(/row(%BSd*)_/)[1];p.setAttribute(%SQuserid%SQ,userID);p.addEventListener(%SQclick%SQ,hS.hC,false);p.src=URLS.IMG.HISTORY;p.className=%SQgrtHist%SQ;p.title=title;p.style.left=0;p.style.padding=%SQ0 4px%SQ;}},hC:function(e){var userID=this.getAttribute(%SQuserid%SQ)||%SQ???%SQ;cZ();hS.iC(%SQHISTORY%SQ,%SQ/msg/history.php?uid=%SQ+userID);e.stopPropagation();e.preventDefault();e.cancelBubble=1;return false;},tc:function(e){var tr=this.parentNode.parentNode,userID=0;while(!userID&&tr){if(tr.getAttribute)%CRuserID=tr.getAttribute(%SQuserid%SQ);tr=tr.previousSibling;}%CRif(!userID){log(%SQno userID found.%SQ);return;}%CRf.main.contentWindow.openUrl(%SQ/auswertung/setcard/romeo/footprint.php?receiverId=%SQ+userID);},yO:function(e){if(!(/%3Fv%3D([a-z0-9_%BS-]*)/i).exec(this.href))return;this.ytdiv.childNodes[0].style.display=%SQnone%SQ;this.ytdiv.childNodes[1].style.display=%SQblock%SQ;this.ytdiv.style.display=%SQblock%SQ;this.y';
- src[src.length] = 'tdiv.childNodes[0].src=this.ytbase+RegExp.$1;},YT_OUT:function(e){this.ytdiv.style.display=%SQnone%SQ;},yM:function(e){this.ytdiv.style.left=20+e.clientX+%SQpx%SQ;this.ytdiv.style.top=15+e.clientY+%SQpx%SQ;},yIl:function(e){this.nextSibling.style.display=%SQnone%SQ;this.style.display=%SQblock%SQ;},aC:function(a){tmp.anonUserInfo={u:a.getAttribute(%SQusername%SQ),a:a};if(!tmp.sessUnlockImg){tmp.sessUnlockImg=document.createElement(%SQimg%SQ);tmp.sessUnlockImg.addEventListener(%SQerror%SQ,function(){var o=tmp.anonUserInfo;if(!o)return;if(config.useIF){hS.iC.apply(o.a,[0]);return;}%CRf.main.contentWindow.openUrl(o.a.href);delete tmp.anonUserInfo;},false);}%CRtmp.sessUnlockImg.src=URLS.aH+tmp.anonUserInfo.u;return false;},iHo:function(){iLi(this.getAttribute(%SQusername%SQ),this.getAttribute(%SQuserid%SQ),this.getAttribute(%SQpicname%SQ));},iOu:function(){if(mode!=MsS.IMAGE)return;hvD();},iC:function(e,histLink){var showHistory=(e===%SQHISTORY%SQ),url=(showHistory)?histLink:(this.href||this.parentNode.href);if(e&&!showHistory&&url.match(/(&page=club|&t=3)/)){zoomWin.openUrl(url);e.stopPropagation();e.preventDefault();e.cancelBubble=true;return false;}%CRsetGray(1);sLsg();mode=(showHistory)?MsS.HISTORY:MsS.PROFILE;iframe.src=URLS.ABOUT_BLANK;zoomDiv.appendChild(iframe);zoomDiv.appendChild(closeDiv);iframe.src=url;if(mode==MsS.PROFILE&&iframe.src.indexOf(%SQ://%SQ+top.location.host)<0){zoomDiv.appendChild(anonDiv);}%CRif(!showHistory&&e){e.stopPropagation();e.preventDefault();e.can';
- src[src.length] = 'celBubble=true;return false;}},dCl:function(){hvD(1);setGray(0);},dHo:function(){clt();},IMG_LOAD:function(){if(mode!=MsS.IMAGE)return;var div=zoomDiv,win=div.ownerDocument.defaultView,userName=this.getAttribute(%SQusername%SQ)||%SQ???%SQ,userID=this.getAttribute(%SQuserid%SQ)||0,noRefresh=!!this.getAttribute(%SQnorefresh%SQ);div.innerHTML=%SQ<div class="grtZUserName">User: %SQ+userName.replace(/</g,%SQ<%SQ).replace(/>/g,%SQ&gr%SQ)+%SQ</div>%SQ;div.className=%SQgrtILoaded%SQ;div.style.width=%SQauto%SQ;div.style.height=%SQauto%SQ;this.style.maxWidth=win.innerWidth-103+%SQpx%SQ;this.style.maxHeight=win.innerHeight-20+%SQpx%SQ;this.style.opacity=1;this.style.position=%SQstatic%SQ;div.appendChild(this);},iiL:function(){if(mode!=MsS.IMAGE)return;var imgs=tmp.imgIF.contentWindow.document.getElementsByTagName(%SQimg%SQ);if(!imgs||!imgs.length)return;zoomedImg.src=imgs[0].src;},iLoF:function(){if(iframe.src==URLS.ABOUT_BLANK)return;log(%SQGRTZoom iframe loaded%SQ);snIO();if(config.ytProf)%CRCv.ytL();if(mode==MsS.HISTORY){if(config.histHighl)Cv.hLa();iframe.contentWindow.document.body.scrollTop=9999999;}},bCh:function(){if(BMI.minS.selectedIndex&&BMI.maxS.selectedIndex){if(this==BMI.minS){log(%SQmin changed, value is %SQ+this.value);if(this.value&&BMI.maxS.selectedIndex<this.selectedIndex)%CRBMI.maxS.selectedIndex=this.selectedIndex;}else if(this==BMI.maxS){log(%SQmax changed, value is %SQ+this.value);if(this.value&&BMI.minS.selectedIndex>this.selectedIndex)%CRBMI.minS.selectedInde';
- src[src.length] = 'x=this.selectedIndex;}else{log(%SQthis should not happen%SQ);}}%CRtmp.tConfig.minBMI=BMI.minS.value;tmp.tConfig.maxBMI=BMI.maxS.value;uBC();},aCh:function(){var min=AGE.minI.value=parseInt(AGE.minI.value,10)||18,max=AGE.maxI.value=parseInt(AGE.maxI.value,10)||100;if(this==AGE.minI){if(max<min)AGE.maxI.value=this.value;}else if(this==AGE.maxI){if(min>max)AGE.minI.value=this.value;}else{log(%SQthis should not happen%SQ);}%CRtmp.tConfig.minAge=min;tmp.tConfig.maxAge=max;},AGE_UPDOWN:function(e){switch(e.keyCode){case 39:case 38:this.value=parseInt(this.value,10)+1;break;case 37:case 40:this.value=parseInt(this.value,10)-1;break;default:return;}%CRhS.aCh.apply(this,[]);e.preventDefault();return false;},cBc:function(){var cfgID=this.getAttribute(%SQcfgid%SQ)||%SQ%SQ;if(typeof tmp.tConfig[cfgID]==%SQundefined%SQ)return;tmp.tConfig[cfgID]=(this.checked)?1:0;log(%SQcfg->%s changed to %s%SQ,cfgID,!!this.checked);},cSC:function(){var changed=0;for(var i in tmp.tConfig){if(typeof config[i]==%SQundefined%SQ||config[i]==tmp.tConfig[i])continue;config[i]=tmp.tConfig[i];changed=1;}%CRif(this.ownerDocument.getElementById(%SQgrtSaveCookie%SQ).checked){saveConfigCookie();}else{delConfigCookie();}%CRif(changed){f.main.contentWindow.location.reload();if(f.msg)f.msg.contentWindow.location.reload();return;}%CRhS.dCl();}},init=function(version,_cfg){checkClub();var T_CLUB=(ic)?%SQ(club)%SQ:%SQ%SQ;initButtonStyles();if(!ic&&!self.location.href.match(/(?:left|top)%BS.php/)){log(%SQcannot work in fram';
- src[src.length] = 'e %SQ+self.location.href);return;}%CRif(ic){lang=(self.document.body.innerHTML.indexOf(%SQSpeichern%SQ)>0)?%SQde%SQ:%SQen%SQ;}else{var sels=self.document.getElementsByTagName(%SQselect%SQ)||[];for(var i=0;i<sels.length;i++){if(sels[i].name!=%SQlang%SQ)continue;lang=(sels[i].value==%SQde%SQ)?%SQde%SQ:%SQen%SQ;}}%CRvar h=location.host||%SQgayromeo%SQ,hashPt1=%SQ#GRT_REF_%SQ,hashPt2=(h.indexOf(%SQplanetromeo%SQ)>=0)?%SQPR%SQ:(h.indexOf(%SQgayromeo%SQ)>=0)?%SQGR%SQ:%SQIP%SQ,hashPt3=(/https/.test(location.protocol||%SQ%SQ))?%SQ_S%SQ:%SQ%SQ;linkFixHash=hashPt1+hashPt2+hashPt3;URLS.iB=URLS.BASE+URLS.iB;URLS.hB=URLS.BASE+URLS.hB;for(var i in URLS.IMG){var url=URLS.iB+URLS.IMG[i];URLS.IMG[i]=url;(new Image()).src=url;}%CRlog(%SQGRT::init()%SQ);var altHost=top.location.protocol+%SQ//%SQ;if(altHost==%SQhttps://%SQ)altHost+=((top.location.host==Ds.PLANET)?Ds.GAY:Ds.PLANET);else altHost+=((top.location.host==Ds.IP)?Ds.PLANET:Ds.IP);URLS.aH=altHost+%SQ/%SQ;URLS.aPu=altHost+URLS.aPu;if(started){log(%SQGRT already running.%SQ);return;}%CRif(typeof _cfg==%SQobject%SQ){log(%SQtaking config vals from given config object%SQ);for(var i in _cfg){if(typeof config[i]==%SQundefined%SQ)continue;config[i]=_cfg[i];}}else{lcc();}%CRgmVersion=version;smf();f.msg=(ic)?null:top.frames.persoenliches.frameElement;if(f.msg){f.msg.addEventListener(%SQload%SQ,hS.mFl,false);}%CRvar topBody=findTopFrameBody(),div=document.createElement(%SQdiv%SQ);div.id=%SQgrtDiv%SQ;div.style.backgroundImage=%SQurl(%SQ+URLS.iB+%SQ';
- src[src.length] = 'bg.jpg)%SQ;if(ic){var className=(xpath(%SQ//img[contains(@src,"logoGuideClub")]%SQ,topBody).length)?%SQgrtGuideClub%SQ:%SQgrtClub%SQ;addClass(topBody,className);}%CRif(top.location.hostname==Ds.GAY)addClass(div,%SQgrtRomeo%SQ);grtDiv=div;div.innerHTML=%SQ<div id="grtPimp"><i>pimped by<b>GR-Tools</b></i></div>%SQ+%SQ<img id="grtClub" src="%SQ+URLS.IMG.CLUB+%SQ" alt="" title="GR-Tools Club"/>%SQ+%SQ<img id="grtCfg" src="%SQ+URLS.IMG.CFG+%SQ" alt="" title="GR-Tools %SQ+i18n(%SQsett%SQ)+%SQ"/>%SQ+%SQ<img src="%SQ+URLS.IMG.NONEWS+%SQ" alt="" title="GR-Tools News" id="grtNews" />%SQ;tmp.nBu=div.childNodes[3];div.childNodes[2].addEventListener(%SQclick%SQ,function(){cZ();sCf();},false);div.childNodes[1].addEventListener(%SQclick%SQ,openClub,false);topBody.appendChild(div);started=1;log(%SQGRT::init() done%SQ);track(%SQinitDone%SQ+T_CLUB+%SQ(gm%SQ+gmVersion.used+%SQ)%SQ);},setNewsDate=function(d){if(!d){setStyles(tmp.nBu,{opacity:0.3,cursor:%SQdefault%SQ});return;}%CRaddClass(grtDiv,%SQgrtNews%SQ);tmp.nBu.src=URLS.IMG.NEWS;tmp.newsNum=parseInt(d.replace(/%BS./g,%SQ%SQ),10),frag=document.createElement(%SQdiv%SQ);frag.innerHTML=%SQ<div id="grtNewsTxt"><b>News!</b><br/><small style="font-size:9px">%SQ+d+%SQ</small></div>%SQ;if(config.newsRead==tmp.newsNum){addClass(grtDiv,%SQgrtNewsRead%SQ,1);}%CRtmp.nBu.addEventListener(%SQclick%SQ,function(e){track(%SQnewsClick%SQ);cZ();lep(gnu());setNewsRead();},false);if(tmp.uAv)return;var newsTxt=frag.childNodes[0];grtDiv.appendChild(newsTxt);newsT';
- src[src.length] = 'xt.addEventListener(%SQclick%SQ,function(e){track(%SQnewsClick%SQ);cZ();lep(gnu());setNewsRead();},false);},smf=function(){try{f.main=(ic)?top.frames[1].frames[1].frameElement:top.frames.mitte.frameElement;}catch(e){log(%SQGR-Tools cannot find main frame. Retry in a second.%SQ);setTimeout(smf,1000);return;}%CRf.main.addEventListener(%SQload%SQ,function(){log(%SQframe loaded%SQ);af();log(%SQapply filter done%SQ);},false);log(%SQload handler attached%SQ);},setNewsRead=function(){addClass(grtDiv,%SQgrtNewsRead%SQ,1);if(!!cookie(C.NAME)){config.newsRead=tmp.newsNum||1;saveConfigCookie();}},gcu=function(ver){var url=URLS.hB+URLS.HTML.CONFIG+(ver||Date.parse(new Date()).toString(16))+%SQ.%SQ+lang+%SQ.html%SQ;return url;},gnu=function(){var url=URLS.hB+URLS.HTML.NEWS+%SQ?lang=%SQ+lang+%SQ&revision=%SQ+gmVersion.used;return url;},setConfigHTML=function(html){cfg.html=html.replace(/##PICBASE/g,URLS.BASE+%SQimg/cfg/%SQ);},af=function(){var body=null;log(%SQGRT::af()%SQ);try{body=f.main.contentWindow.document.body;if(body.className!=%SQsearchResults%SQ)throw%SQno result page%SQ;}catch(e){if(body.className==%SQmainPage%SQ){cZ();}%CRlog(e.toString());return;}%CRvar tbodies=body.getElementsByTagName(%SQtbody%SQ);if(tbodies.length<2){log(%SQskipped: no result table in page.%SQ);return;}%CRvar doc=body.ownerDocument,head=doc.getElementsByTagName(%SQhead%SQ)[0],sI=!!(doc.getElementById(%SQgrtBMIStyles%SQ));if(iE(doc))return;if(!sI){var bmiStyle=doc.createElement(%SQstyle%SQ);bmiStyle.type=%SQ';
- src[src.length] = 'text/css%SQ;bmiStyle.id=%SQgrtBMIStyles%SQ;bmiStyle.innerHTML=%SQ.bmiF1 td {opacity:0.5}%SQ+%SQ.bmiF1 td:first-child img {opacity:0.5}%SQ+%SQ.bmiF1 td:first-child, .bmiF1 td:first-child .grtZIcon {opacity:1}%SQ+%SQ.bmiF2, .bmiF3 {opacity:0.5}%SQ+%SQ.grtAF {opacity:0.6}%SQ+%SQ.grtAF a {color:#eee}%SQ+%SQ.grtHist {margin:3px 0 0 2px;vertical-align:top;cursor:pointer;width:10px;height:10px;opacity:0.6}%SQ+%SQimg.grtHist:hover {opacity:1}%SQ;head.appendChild(bmiStyle);}%CRif(config.bigPaging&&!body.getAttribute(%SQgrtPagingDone%SQ)){body.setAttribute(%SQgrtPagingDone%SQ,1);var r=doc.evaluate(%SQ//a[contains(@href,"resultPage")][contains(./strong,"%BSxab")]%SQ,doc,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null);if(r.singleNodeValue){r.singleNodeValue.id=%SQgrtPrev%SQ;r.singleNodeValue.innerHTML=%SQ %SQ;}%CRr=doc.evaluate(%SQ//a[contains(@href,"resultPage")][contains(./strong,"%BSxbb")]%SQ,doc,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null);if(r.singleNodeValue){r.singleNodeValue.id=%SQgrtNext%SQ;r.singleNodeValue.innerHTML=%SQ %SQ;}}%CRif(config.ytHead&&!body.getAttribute(%SQgrtyt%SQ)){body.setAttribute(%SQgrtyt%SQ,1);var yts=xpath(%SQ//span[contains(.,"http:")][contains(.,"youtube")]%SQ,body);for(var i=yts.length-1;i>=0;i--){yts[i].innerHTML=yts[i].innerHTML.replace(YT.RE,YT.FN);}%CRayp(doc);}%CRcZ(f.main.contentWindow);var count=0,tbody=tbodies[1],histTitle=i18n(%SQhist%SQ),secrTitle=i18n(%SQsecret%SQ);for(var j=1;j<tbodies.length;j++){var tbody=tbodies[j];if(tbody.getAt';
- src[src.length] = 'tribute(%SQgrtPrep%SQ))continue;tbody.setAttribute(%SQgrtPrep%SQ,1);for(var i=0;i<tbody.rows.length;i++){var tr=tbody.rows[i];for(var j=0;j<tr.cells.length;j++){var td=tr.cells[j],txt=td.textContent;if(!/(%BSd{2,3})%BS.(%BSd{2,3})cm(?:<%BS/span>)?%BS.(?:<[^>]+>)?(%BSd{1,3})kg/.exec(txt.replace(/[%BSr%BSn]/g,%SQ%SQ)))continue;var age=parseInt(RegExp.$1,10),size=parseInt(RegExp.$2,10)/100.0,weight=parseInt(RegExp.$3,10),bmi=Math.round(weight/(size*size)),userID=tr.getElementsByTagName(%SQa%SQ)[0].href.match(/set=(%BSd*)/)[1];tr.setAttribute(%SQuserid%SQ,userID);if(config.filterAge&&(age<config.minAge||age>config.maxAge)){addClass(td,%SQgrtAF%SQ);addClass(td.parentNode.cells[td.cellIndex-1],%SQgrtAF%SQ);addClass(td.parentNode.cells[td.cellIndex+1],%SQgrtAF%SQ);}%CRif(config.showBMI||config.histInRes){var z=document.createElement(%SQspan%SQ);z.className=%SQgrtBMI%SQ;td.previousSibling.previousSibling.appendChild(z);var profileLink=z.parentNode.getElementsByTagName(%SQa%SQ)[0],userName=profileLink.innerHTML,hpLink=(config.bmiClickHP)?%SQtitle="%SQ+secrTitle+%SQ" username="%SQ+encodeURIComponent(userName)+%SQ" href="%SQ+URLS.aPu+userID+linkFixHash+%SQ" onclick="return top.GRT.secretClick(this)"%SQ:%SQ%SQ,bmiVal=(config.showBMI)?%SQ<a target="_blank" %SQ+hpLink+%SQ>%SQ+Math.round(bmi)+%SQ</a>%SQ:%SQ%SQ,histLink=(config.histInRes)?%SQ<img src="%SQ+URLS.IMG.HISTORY+%SQ" userid="%SQ+userID+%SQ" class="grtHist" />%SQ:%SQ%SQ;z.innerHTML=%SQ(%SQ+bmiVal+histLink+%SQ)%SQ;if(config.useIF){pr';
- src[src.length] = 'ofileLink.onclick=null;profileLink.addEventListener(%SQclick%SQ,hS.iC,false);}%CRif(config.histInRes){var histNode=z.childNodes[(config.showBMI)?2:1];histNode.addEventListener(%SQclick%SQ,hS.hC,false);histNode.title=histTitle;}}%CRvar isOutOfLimits=config.filterBMI&&(bmi<config.minBMI||bmi>config.maxBMI);if(isOutOfLimits){count++;addClass(tr,%SQbmiF1%SQ);addClass(tr.nextSibling.nextSibling,%SQbmiF2%SQ);addClass(tr.nextSibling.nextSibling.nextSibling.nextSibling,%SQbmiF3%SQ);}%CRbreak;}}}%CRif(config.clickTapse){var fPrints=xpath(%SQ//img[contains(@src,"/img/footprints/")]%SQ,doc);for(var i=fPrints.length-1;i>=0;i--){var fp=fPrints[i];if(fp.getAttribute(%SQgrtPrep%SQ))continue;fp.setAttribute(%SQgrtPrep%SQ,1)%CRfp.style.cursor=%SQpointer%SQ;fp.addEventListener(%SQclick%SQ,hS.tc,false);}}%CRlog(%SQ%i items filtered.%SQ,count);},ayp=function(doc){if(!config.ytPreview)return;var ytAs=xpath(%SQ//a[@class="ytlink"]%SQ,doc);if(!ytAs.length)return;var div=doc.getElementById(%SQgrtYT%SQ);if(!div){var x=doc.createElement(%SQdiv%SQ);x.innerHTML=YT.DIVHTML;div=x.childNodes[0];doc.body.appendChild(div);div.childNodes[0].addEventListener(%SQload%SQ,hS.yIl,false);div.childNodes[0].style.marginTop=%SQ-33px%SQ;div.childNodes[1].src=URLS.IMG.YTLOAD;}%CRfor(var i=0;i<ytAs.length;i++){var a=ytAs[i];a.ytdiv=div;a.ytbase=URLS.YTIMG;a.addEventListener(%SQmouseover%SQ,hS.yO,false);a.addEventListener(%SQmouseout%SQ,hS.YT_OUT,false);a.addEventListener(%SQmousemove%SQ,hS.yM,false);}},setLiveRevision=fu';
- src[src.length] = 'nction(v){var vv=v.match(/(%BSd)%BS.99%BS.(%BSd*)/);if(vv){v=vv[1]+%SQ.%SQ+vv[2];}%CRgmVersion.live=v;var needsUpdate=function(used,live){var u=used.split(%SQ.%SQ),l=live.split(%SQ.%SQ),its=Math.min(u.length,l.length);for(var i=0;i<its;i++)%CRif(parseInt(u[i])<parseInt(l[i]))return true;return(u[its-1]==l[its-1]&&u.length<l.length);};if(!needsUpdate(gmVersion.used,gmVersion.live))return;addClass(grtDiv,%SQgrtUpd%SQ);var frag=document.createElement(%SQdiv%SQ);frag.innerHTML=%SQ<img id="grtUpd" src="%SQ+URLS.IMG.UPD+%SQ" alt="" title="GR-Tools %SQ+i18n(%SQupd%SQ)+%SQ"/>%SQ;var img=frag.childNodes[0];grtDiv.insertBefore(img,grtDiv.getElementsByTagName(%SQimg%SQ)[2]);tmp.uAv=1;img.addEventListener(%SQclick%SQ,function(e){track(%SQupdateClick%SQ);cZ();var url=URLS.hB+URLS.HTML.UPD+%SQ?lang=%SQ+lang+%SQ&revision=%SQ+gmVersion.used;lep(url);},false);},checkClub=function(){if(ic!==-1)return;ic=!!self.location.href.match(/setcard%BS/cluide%BS//);},xpath=function(xpath,refNode){var n=[],res=(refNode.ownerDocument||refNode).evaluate(xpath,refNode,null,XPathResult.ORDERED_NODE_ITERATOR_TYPE,null),r=res.iterateNext();while(r!=null){n[n.length]=r;r=res.iterateNext();}%CRreturn n;},openClub=function(){track(%SQopenClub%SQ);f.main.contentWindow.openUrl(%SQ/auswertung/setcard/index.php?set=3053381&t=3&page=club%SQ);},track=function(s){if(!LOG.T)return;(new Image()).src=URLS.BASE+%SQb/GRT_%SQ+s+%SQ_%SQ+Date.parse(new Date).toString(16).substring(5);},initButtonStyles=function(){if(started)retu';
- src[src.length] = 'rn;checkClub();var f=findTopFrameBody();if(!f){log(%SQno matching frame found for css%SQ);return;}%CRf.innerHTML+=%SQ<style type="text/css">%SQ+HTML.BUTTON_STYLES+%SQ</style>%SQ;},setStyles=function(o,css){for(var i in css)o.style[i]=css[i];},iE=function(b){return!!((b.getElementsByTagName(%SQtd%SQ)[0]||{}).innerHTML||%SQ%SQ).match(/escorts/i);},cZ=function(){var win=f.main.contentWindow;if(win[ZOOM_APPLIED])return;log(%SQzoom wasnt there, adding now..%SQ);win[ZOOM_APPLIED]=1;var realFrames=win.document.getElementsByTagName(%SQframe%SQ);initZoom((realFrames.length>1)?realFrames[1]:win);},cookie=function(name,value,_opts){if(arguments.length>1){var opts=_opts||{};if(value===null){value=%SQ%SQ;opts.expires=-1;}%CRvar path=opts.path?%SQ; path=%SQ+opts.path:%SQ%SQ,domain=opts.domain?%SQ; domain=%SQ+opts.domain:%SQ%SQ,secure=opts.secure?%SQ; secure%SQ:%SQ%SQ,expires=%SQ%SQ,date;if(opts.expires&&(typeof opts.expires==%SQnumber%SQ||opts.expires.toUTCString)){if(typeof opts.expires==%SQnumber%SQ){date=new Date();date.setTime(date.getTime()+(opts.expires*24*60*60*1000));}else{date=opts.expires;}%CRexpires=%SQ; expires=%SQ+date.toUTCString();}%CRdocument.cookie=[name,%SQ=%SQ,encodeURIComponent(value),expires,path,domain,secure].join(%SQ%SQ);return;}%CRvar cVal=null;if(document.cookie&&document.cookie!=%SQ%SQ){var cookies=document.cookie.split(%SQ;%SQ);for(var i=0;i<cookies.length;i++){var cookie=cookies[i].replace(/^%BSs+|%BSs+$/g,%SQ%SQ);if(cookie.substring(0,name.length+1)==(name+%SQ';
- src[src.length] = '=%SQ)){cVal=decodeURIComponent(cookie.substring(name.length+1));break;}}}%CRreturn cVal;},snIO=function(){var h=zoomWin.innerHeight-28,cssH=h+%SQpx%SQ,body=zoomDoc.body,scroll=body.scrollTop;body.oldScrollTop=scroll||0;body.style.overflow=%SQhidden%SQ;body.scrollTop=scroll;zoomDiv.style.width=%SQauto%SQ;zoomDiv.style.height=%SQauto%SQ;closeDiv.style.height=cssH;if(mode==MsS.CONFIG){cfg.div.style.height=cssH;}else{iframe.style.height=cssH;}%CRzoomDiv.className=%SQgrtPLoaded%SQ;},Cv={ytL:function(){try{var doc=zoomDiv.getElementsByTagName(%SQiframe%SQ)[0].contentWindow.document,tds=xpath(YT.PROFILE_XPATH,doc);for(var i=tds.length-1;i>=0;i--){var len=tds[i].innerHTML.length,sDone=tds[i].innerHTML.replace(YT.RE,YT.FN);if(sDone.length==len)continue;tds[i].innerHTML=sDone;}%CRayp(doc);}catch(e){}},hLa:function(){try{var doc=zoomDiv.getElementsByTagName(%SQiframe%SQ)[0].contentWindow.document,lastMsgA=xpath(%SQ//a[contains(@name,"lastmessage")]%SQ,doc);tds=xpath(%SQ//tr/td[contains(@class,"body")]%SQ,doc),td=tds[tds.length-1];if(!lastMsgA.length||!tds.length)return;setStyles(td,{border:%SQ1px solid #738cbe%SQ,borderWidth:%SQ1px 0%SQ,padding:%SQ6px 4px 0 22px%SQ,background:%SQ#203B71 url(%SQ+URLS.iB+%SQlastmsg.gif) 5px 7px no-repeat%SQ});td.parentNode.parentNode.parentNode.style.borderCollapse=%SQseparate%SQ;}catch(e){}}},isPagePrepared=function(){return!!f.main.contentWindow[PAGE_PREPARED];},setPagePrepared=function(){f.main.contentWindow[PAGE_PREPARED]=1;},initZoom=function(targetW';
- src[src.length] = 'in){if(isPagePrepared()){log(%SQgrt prepared page already.%SQ);}else{log(%SQgrt preparing page..%SQ);setPagePrepared();zoomDiv=null;gray=null;currentZoomUserID=null;zoomVisible=null;clt();zoomWin=targetWin;zoomDoc=zoomWin.document;if(iE(zoomDoc))return;if(iframe)iframe=null;iframe=zoomDoc.createElement(%SQiframe%SQ);iframe.addEventListener(%SQload%SQ,hS.iLoF,false);cfg.div=zoomDoc.createElement(%SQdiv%SQ);cfg.div.id=%SQgrtCfgDiv%SQ;cfg.div.title=%SQ %SQ;cfg.div.addEventListener(%SQclick%SQ,function(e){e.stopPropagation();e.cancelBubble=true;},false);closeDiv=zoomDoc.createElement(%SQdiv%SQ);closeDiv.id=%SQgrtZCl%SQ;anonDiv=zoomDoc.createElement(%SQdiv%SQ);anonDiv.id=%SQgrtZAnon%SQ;var width=zoomWin.innerWidth||680;if(width<600){var w=width-75+%SQpx%SQ;iframe.style.width=w;cfg.div.style.width=w;}%CRif(zoomedImg)zoomedImg=null;zoomedImg=zoomDoc.createElement(%SQimg%SQ);zoomedImg.addEventListener(%SQload%SQ,hS.IMG_LOAD,false);if(tmp.imgIF)delete tmp.imgIF;tmp.imgIF=zoomDoc.createElement(%SQiframe%SQ);tmp.imgIF.style.display=%SQnone%SQ;zoomDoc.body.appendChild(tmp.imgIF);tmp.imgIF.addEventListener(%SQload%SQ,hS.iiL,false);var xdiv=zoomDoc.createElement(%SQdiv%SQ);xdiv.innerHTML=HTML.STYLES+HTML.DIV+HTML.GRAY;zoomDoc.body.appendChild(xdiv);for(var i=0;i<3;i++){zoomDoc.body.appendChild(xdiv.childNodes[0]);}%CRzoomDoc.body.removeChild(xdiv);zoomDiv=zoomDoc.getElementById(%SQgrtZDiv%SQ);zoomDiv.title=i18n(%SQclose%SQ);zoomDiv.addEventListener(%SQmouseover%SQ,hS.dHo,false);zoomDiv.add';
- src[src.length] = 'EventListener(%SQclick%SQ,hS.dCl,false);gray=zoomDoc.getElementById(%SQgrtGray%SQ);gray.addEventListener(%SQclick%SQ,hS.dCl,false);}%CRvar imgs=zoomDoc.getElementsByTagName(%SQimg%SQ),zoomIconURL=URLS.IMG[%SQZOOM%SQ+((config.bigZoom)?2:1)];if(iE(zoomDoc))return;for(var i=0;i<imgs.length;i++){var img=imgs[i],src=img.src;if(img.getAttribute(ZOOM_ADDED)||!/%BS/img%BS/usr%BS/([0-9a-f]*%BS.jpg)$/.exec(img.src||%SQ%SQ))continue;img.setAttribute(ZOOM_ADDED,1);var picName=RegExp.$1,zoomIconHTML=%SQ<img src="%SQ+zoomIconURL+%SQ" alt="Zoom" class="grtZIcon" />%SQ,_a=img.parentNode,a=_a;while(_a!=_a.ownerDocument.body){if(_a.nodeName==%SQA%SQ){a=_a;break;}%CR_a=_a.parentNode;}%CRvar moreThanOne=a.parentNode.getElementsByTagName(%SQa%SQ).length>1,td=(moreThanOne)?a.parentNode:a.parentNode.parentNode.getElementsByTagName(%SQtd%SQ)[1],username=%SQ???%SQ,userID=0;if(!td){var _p=a;while(_p!=document.body){_p=_p.parentNode;if(_p==a.ownerDocument.body)break;if(_p.tagName!=%SQTD%SQ)continue;td=_p.parentNode.cells[1]||0;break;}}%CRif(config.zoom){if(td){var as=td.getElementsByTagName(%SQa%SQ);for(var z=0;z<as.length;z++){var _a=as[z];if(!_a.href)continue;if(_a.href.match(/setcard/i)){username=_a.innerHTML;userID=_a.href.match(/set=(%BSd*)/)[1]||0;}else if(/popup%BS.php%BS/([0-9a-z%BS.]+)%BS.jpg/.exec(_a.href)){picName=RegExp.$1;}%CRif(userID&&picName)break;}}%CRa.className+=%SQ grt-thumb%SQ;a.innerHTML+=zoomIconHTML;var zoomIcon=a.childNodes[a.childNodes.length-1];zoomIcon.setAttribute(%SQuserna';
- src[src.length] = 'me%SQ,username);zoomIcon.setAttribute(%SQuserid%SQ,userID);picName=self.location.protocol+%SQ//%SQ+self.location.host+%SQ/auswertung/pix/popup.php/%SQ+picName;zoomIcon.setAttribute(%SQpicname%SQ,picName);if(moreThanOne)a.style.display=%SQinline-block%SQ;zoomIcon.parentNode.style.outline=%SQnone%SQ;zoomIcon.addEventListener(%SQmouseover%SQ,hS.iHo,false);zoomIcon.addEventListener(%SQmouseout%SQ,hS.iOu,false);}%CRif(config.useIF){var handlerElem=(moreThanOne)?td.getElementsByTagName(%SQa%SQ)[0]:(config.thumbIF)?a:zoomIcon;if(handlerElem){handlerElem.addEventListener(%SQclick%SQ,hS.iC,false);if(handlerElem===a){a.onclick=null;}else if(moreThanOne){handlerElem.onclick=null;}}}}},setGray=function(on){if(on){gray.style.display=%SQblock%SQ;return;}%CRvar body=zoomDoc.body;body.style.overflow=%SQauto%SQ;if(body.oldScrollTop){body.scrollTop=body.oldScrollTop;body.oldScrollTop=0;}%CRgray.style.display=%SQnone%SQ;},lep=function(url){setGray(1);sLsg();mode=MsS.OTHER;zoomDiv.appendChild(iframe);zoomDiv.appendChild(closeDiv);iframe.src=url;},sCf=function(){setGray(1);sLsg();mode=MsS.CONFIG;cfg.div.innerHTML=cfg.html;zoomDiv.appendChild(cfg.div);tmp.tConfig={};for(var i in config)tmp.tConfig[i]=config[i];var cbs=xpath(%SQ//input[@type="checkbox"]%SQ,cfg.div);for(var i=0;i<cbs.length;i++){var cb=cbs[i],id=(cb.id||%SQ%SQ).substring(5);if(!id||typeof tmp.tConfig[id]==%SQundefined%SQ)continue;cb.checked=!!tmp.tConfig[id];cb.setAttribute(%SQcfgid%SQ,id);cb.addEventListener(%SQchange%SQ,hS.cBc,fal';
- src[src.length] = 'se);}%CRcfg.div.ownerDocument.getElementById(%SQgrtSaveCookie%SQ).checked=!!cookie(C.NAME);cfg.div.ownerDocument.getElementById(%SQgrtSaveConfig%SQ).addEventListener(%SQclick%SQ,hS.cSC,false);var bmiDiv=cfg.div.ownerDocument.getElementById(%SQbmiDiv%SQ),ageDiv=cfg.div.ownerDocument.getElementById(%SQageDiv%SQ),protoSelect=zoomDoc.createElement(%SQselect%SQ),optIndex=0,minIndex=0,maxIndex=0;protoSelect.className=%SQbmiSelect%SQ;for(var i=BMI.RANGE.VISIBLE.min-1;i<=BMI.RANGE.VISIBLE.max;i++){var opt=zoomDoc.createElement(%SQoption%SQ),status=(i<BMI.RANGE.VISIBLE.min)?%SQegal%SQ:(i<BMI.RANGE.HEALTHY.min)?%SQbelow%SQ:(i>BMI.RANGE.HEALTHY.max)?%SQabove%SQ:%SQok%SQ;opt.innerHTML=(i<BMI.RANGE.VISIBLE.min)?%SQegal%SQ:i;opt.value=(i<BMI.RANGE.VISIBLE.min)?false:i;opt.style.background=BMI.COLOR[status];protoSelect.appendChild(opt);if(i==config.minBMI)minIndex=optIndex;if(i==config.maxBMI)maxIndex=optIndex;optIndex++;}%CRBMI.minS=protoSelect.cloneNode(1);BMI.minS.id=%SQgrtMinSelect%SQ;BMI.minS.selectedIndex=minIndex;BMI.minS.addEventListener(%SQchange%SQ,hS.bCh,false);BMI.maxS=protoSelect;BMI.maxS.id=%SQgrtMaxSelect%SQ;BMI.maxS.selectedIndex=maxIndex;BMI.maxS.addEventListener(%SQchange%SQ,hS.bCh,false);var minLabel=zoomDoc.createElement(%SQlabel%SQ);minLabel.innerHTML=%SQmin.%SQ;minLabel.setAttribute(%SQfor%SQ,%SQgrtMinSelect%SQ);var maxLabel=zoomDoc.createElement(%SQlabel%SQ);maxLabel.innerHTML=%SQmax.%SQ;maxLabel.setAttribute(%SQfor%SQ,%SQgrtMaxSelect%SQ);bmiDiv.appendChild(minLabel);';
- src[src.length] = 'bmiDiv.appendChild(BMI.minS);bmiDiv.appendChild(maxLabel);bmiDiv.appendChild(BMI.maxS);uBC();AGE.minI=zoomDoc.createElement(%SQinput%SQ);AGE.minI.id=%SQgrtAgeMin%SQ;AGE.minI.value=config.minAge;AGE.minI.addEventListener(%SQclick%SQ,function(){this.select()},false);AGE.minI.addEventListener(%SQkeydown%SQ,hS.AGE_UPDOWN,false);AGE.minI.addEventListener(%SQchange%SQ,hS.aCh,false);AGE.maxI=AGE.minI.cloneNode(1);AGE.maxI.id=%SQgrtAgeMax%SQ;AGE.maxI.value=config.maxAge;AGE.maxI.addEventListener(%SQclick%SQ,function(){this.select()},false);AGE.maxI.addEventListener(%SQkeydown%SQ,hS.AGE_UPDOWN,false);AGE.maxI.addEventListener(%SQchange%SQ,hS.aCh,false);minLabel=zoomDoc.createElement(%SQlabel%SQ);minLabel.innerHTML=%SQmin.%SQ;minLabel.setAttribute(%SQfor%SQ,%SQgrtAgeMin%SQ);maxLabel=zoomDoc.createElement(%SQlabel%SQ);maxLabel.innerHTML=%SQmax.%SQ;maxLabel.setAttribute(%SQfor%SQ,%SQgrtAgeMax%SQ);ageDiv.appendChild(minLabel);ageDiv.appendChild(AGE.minI);ageDiv.appendChild(maxLabel);ageDiv.appendChild(AGE.maxI);zoomDiv.appendChild(closeDiv);snIO();},uBC=function(){BMI.minS.style.backgroundColor=BMI.minS.options[BMI.minS.selectedIndex].style.backgroundColor;BMI.maxS.style.backgroundColor=BMI.maxS.options[BMI.maxS.selectedIndex].style.backgroundColor;},sLsg=function(){zoomDiv.innerHTML=%SQ%SQ;zoomDiv.className=%SQ%SQ;zoomDiv.style.width=%SQ%SQ;zoomDiv.style.height=%SQ%SQ;zoomDiv.style.display=%SQblock%SQ;zoomVisible=1;},iLi=function(username,userID,picName){clt();if(zoomVisible&&userID==cur';
- src[src.length] = 'rentZoomUID&&mode==MsS.IMAGE)return;currentZoomUID=userID;sLsg();mode=MsS.IMAGE;zoomedImg.setAttribute(%SQuserid%SQ,userID);zoomedImg.setAttribute(%SQusername%SQ,username);zoomedImg.id=%SQgrtFull%SQ;tmp.imgIF.src=picName;},clt=function(){if(!hideTimer)return;clearTimeout(hideTimer);hideTimer=null;},hvD=function(_now_){if(hideTimer)return;if(_now_){rHd();return;}%CRvar t=(zoomedImg.width<300||zoomedImg.height<300)?250:150;hideTimer=setTimeout(rHd,t);},rHd=function(){hideTimer=null;zoomDiv.innerHTML=%SQ%SQ;zoomDiv.style.display=%SQnone%SQ;zoomVisible=0;},getStatusURL=function(isLocal){var statusURLBase=(isLocal)?%SQhttp://gr-tools/%SQ:URLS.BASE;return statusURLBase+%SQstatus%SQ;};return{init:init,retrigger:function(){var win=f.main.contentWindow;win[ZOOM_APPLIED]=0;af();},secretClick:hS.aC,setConfigHTML:setConfigHTML,setLiveRevision:setLiveRevision,setNewsDate:setNewsDate,getLanguage:function(){return lang},getStatusURL:getStatusURL};})();;';
- */
- /*
- var topHead = self.document.getElementsByTagName('head')[0],
- js = self.document.createElement('script'),
- js = js.wrappedJSObject || js;
- js.type = 'text/javascript';
- js.innerHTML = src.join('').replace(/%BS/g,'\\').replace(/%CR/g,'\n').replace(/%SQ/g,'\'');
- // js.innerHTML =
- // 'alert ("CallFrom INSIDE top.mitte.openUrl: " + top.mitte.openUrl); ' +
- // 'alert (top.GRT); '// +
- ;
- topHead.appendChild(js);
- */
- //alert ("CallFrom GM top.mitte.openUrl: " + top.mitte.openUrl);
- // var GRT = (top.wrappedJSObject || top).GRT;
- var GRT = top.GRT;
- function bugFixes() {
- var isClub = !!self.location.href.match(/setcard\/cluide\//);
- var tfm;
- if (isClub) {
- tfm =
- top.frames[1].frames[1].frameElement =
- top.frames[1].frames[1]
- } else {
- // ...for GRT.f.main
- tfm =
- top.frames.mitte =
- top.frames.mitte
- || top.frames[3];
- // ...for GRT.f.msg
- top.frames.persoenliches =
- top.frames.persoenliches
- || top.frames[2] ;
- }
- // for f.main.contentWindow.openUrl
- // replace ^-all with:
- // f.main.contentWindow.wrappedJSObject.openUrl
- };
- bugFixes()
- GRT.init(revisions);
- GRT.setConfigHTML(
- ////////////////////////////////////////////////////////////////////////////////////////////////
- //
- // Configurationdialog German
- //
- //
- ( GRT.getLanguage()=='de' ) ? '\
- <style type="text/css"> \
- #grtcfg2 { \
- padding:10px; \
- color:#D1DEF1; \
- font-family:Tahoma, Arial, Verdana, Helvetica; \
- } \
- #grtcfg2 table { \
- width:auto; \
- margin:10px 0 0; \
- border-collapse:collapse; \
- border-spacing:0 \
- } \
- #grtcfg2 input { \
- cursor:pointer \
- } \
- #grtcfg2 h3 { \
- padding:0 4px 5px 0; \
- margin:0; \
- font-size:14px; \
- border-bottom:1px solid #ccc; \
- text-align:right; \
- color:#D1DEF1 !important \
- } \
- #grtcfg2 h4, #grtcfg2 p { \
- padding:0; \
- margin:0 \
- } \
- #grtcfg2 td { \
- vertical-align:top; \
- padding:7px 5px 0; \
- color:#D1DEF1; \
- width:auto !important \
- } \
- #grtcfg2 label { \
- cursor:pointer; \
- display:block; \
- padding-top:2px \
- } \
- #grtcfg2 label b { \
- color:#fff \
- } \
- #grtcfg2 img { \
- vertical-align:middle \
- } \
- #grtcfg2 img.ex { \
- border:1px solid yellow; \
- margin-top:4px; \
- display:none; \
- position:absolute; \
- z-index:2 \
- } \
- #grtcfg2 span.ex { \
- background:transparent url(##PICBASEshow.png) left center no-repeat; \
- padding-left:20px; \
- opacity:0.5; \
- margin-left:5px \
- } \
- #grtcfg2 span.ex:hover { \
- opacity:1 \
- } \
- #grtcfg2 span.ex:hover img.ex { \
- display:block \
- } \
- #grtcfg2 .grtwarn b { \
- color:#ffb400 \
- } \
- #grtcfg2 .bg2, #grtcfg2 .grtwarn { \
- background-color:#2A509F \
- } \
- #bmiDiv, #ageDiv { \
- padding-top:5px \
- } \
- #bmiDiv .bmiSelect { \
- text-align:center; \
- font-size:11px; \
- padding:0; \
- margin-right:5px; \
- } \
- #bmiDiv label, #ageDiv label { \
- display:inline \
- } \
- #ageDiv input { \
- border:1px solid #fff; \
- width:30px; \
- margin:0 5px 0 2px; \
- background-color:#85E854; \
- cursor:default; \
- font-size:11px; \
- text-align:center \
- } \
- #grtopts a { \
- display:block; \
- text-align:right; \
- background:transparent url(##PICBASEdown.png) right center no-repeat; \
- height:15px; \
- opacity:0.5 \
- } \
- #grtopts a:hover { \
- opacity:0.9 \
- } \
- #grtopts p { \
- opacity:0.7; \
- padding-top:2px \
- } \
- #grtopts td:hover p { \
- opacity:1 \
- } \
- #grtSaveConfig { \
- font-size:11px; \
- font-family:Verdana; \
- } \
- #grtcfg2 tr.ind td:last-child { \
- padding-left:26px !important \
- } \
- #grtcfg2 tr.ind2 td { \
- padding-top:0 !important \
- } \
- \
- </style> \
- <div id="grtcfg2"> \
- <h3>GR-Tools - Einstellungen</h3> \
- \
- <table cellspacing="5" id="grtopts"> \
- <tr class="bg2"> \
- <td> \
- <input type="checkbox" id="grtcbzoom" /> \
- </td> \
- <td> \
- <label for="grtcbzoom"><b>Vorschaubild-Lupe</b> <span class="ex"><img src="##PICBASElupe.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Zeigt das \
- <img src="##PICBASE../lupe.png" alt="" />-Symbol in Vorschaubildern an, um beim Herüberfahren mit der Maus das\
- Originalbild zu sehen.</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2 ind ind2"> \
- <td> \
- <input type="checkbox" id="grtcbbigZoom" /> \
- </td> \
- <td> \
- <label for="grtcbbigZoom"><b>... wenn Lupe, dann XXL!</b> \
- \
- </label> \
- <p>Verwendet ein größeres \
- <img src="##PICBASE../lupe2.png" alt="" />-Symbol für die Vorschau-Bildlupe, falls letztere aktiviert ist.</p>\
- <a \
- href="#grtsave"></a> \
- </td> \
- </tr> \
- <tr> \
- <td> \
- <input type="checkbox" id="grtcbuseIF" /> \
- </td> \
- <td> \
- <label for="grtcbuseIF"><b>Popups vermeiden</b> <span class="ex"><img src="##PICBASEiframe.jpg" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Nutzerprofile werden weitestgehend nicht mehr in Popups geöffnet, sondern\
- direkt in der Seite.</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="ind ind2"> \
- <td> \
- <input type="checkbox" id="grtcbthumbIF" /> \
- </td> \
- <td> \
- <label for="grtcbthumbIF"><b>... auch bei Vorschaubild-Klick</b> \
- \
- </label> \
- <p>Durch Deaktivieren dieser Option bleibt hartnäckigen Popup-Fetischisten\
- ein Weg, trotz aktivierter "Popup-Vermeidung" noch Profil-Popups zu öffnen\
- - per Klick aufs Vorschaubild ;-).</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2"> \
- <td> \
- <input type="checkbox" id="grtcbfilterAge" /> \
- </td> \
- <td> \
- <label for="grtcbfilterAge"><b>Alters-Filter</b> <span class="ex"><img src="##PICBASEage-filter.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Wenn aktiviert, werden Nutzername, Alters- und Gewichtsangaben der Nutzer,\
- die nicht in deinem Alters-Wunschbereich liegen, grau bzw. abgeschwächt\
- dargestellt.</p> \
- <div id="ageDiv">Dein Wunschalter: </div> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr> \
- <td> \
- <input type="checkbox" id="grtcbclickTapse" /> \
- </td> \
- <td> \
- <label for="grtcbclickTapse"><b>Fußtapsen zum Klicken</b> \
- \
- </label> \
- <p>Ein Klick auf eine erhaltene Tapse öffnet das Tapsen-Popup, so dass du\
- direkt eine Antwort-Tapse geben kannst.</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2"> \
- <td> \
- <input type="checkbox" id="grtcbbigPaging" /> \
- </td> \
- <td> \
- <label for="grtcbbigPaging"><b>Größere Blätter-Links unter Ergebnissen</b> <span class="ex"><img src="##PICBASEpaging.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Die futzeligen "Nächste-/Zurück"-Links in Suchergebnisseiten werden durch\
- große, nicht zu verfehlende Monster-Buttons ersetzt. Nicht nur für Grobmotoriker\
- :).</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr> \
- <td> \
- <input type="checkbox" id="grtcbytHead" /> \
- </td> \
- <td> \
- <label for="grtcbytHead"><b>YouTube-Links in Headlines</b> <span class="ex"><img src="##PICBASEyt-list.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>YouTube-URLs innerhalb von Nutzer-Headlines in Suchergebnissen werden\
- zu direkt klickbaren Links - denn Copy&Paste sucks ;-).</p> <a href="#grtsave"></a>\
- \
- </td> \
- </tr> \
- <tr class="ind2"> \
- <td> \
- <input type="checkbox" id="grtcbytProf" /> \
- </td> \
- <td> \
- <label for="grtcbytProf"><b>YouTube-Links in Profilen</b> \
- \
- </label> \
- <p>YouTube-URLs innerhalb von Nutzer-Profiltexten werden zu direkt klickbaren\
- Links.</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="ind ind2"> \
- <td> \
- <input type="checkbox" id="grtcbytPreview" /> \
- </td> \
- <td> \
- <label for="grtcbytPreview"><b>... und Video-Vorschaubild einblenden</b> <span class="ex"><img src="##PICBASEytpreview.jpg" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Beim Überfahren von YouTube-Links mit der Maus wird das Vorschaubild des\
- entsprechenden Videos neben dem Cursor eingeblendet.</p> <a href="#grtsave"></a>\
- \
- </td> \
- </tr> \
- <tr class="bg2"> \
- <td> \
- <input type="checkbox" id="grtcbshowBMI" /> \
- </td> \
- <td> \
- <label for="grtcbshowBMI"><b>BMI-Wert anzeigen</b> <span class="ex"><img src="##PICBASEbmi-wert.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Zeigt in Suchergebnissen den BMI-Wert jedes Nutzers hinter seinem Nickname\
- an. \
- <br/>Der Body-Mass-Index (BMI) gibt Aufschluss über das Verhältnis von Körpergröße\
- zu Gewicht - je höher der BMI, desto voluminöser der Mensch. BMIs von 20\
- bis 25 gelten allgemein als "gesund". <u>Kaum Aussagekraft</u> hat der BMI\
- allerdings bei muskulösen oder durchtrainierten Kerlen. Und überhaupt:\
- den BMI bitte nicht überbewerten!</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2 ind ind2"> \
- <td> \
- <input type="checkbox" id="grtcbbmiClickHP" /> \
- </td> \
- <td> \
- <label for="grtcbbmiClickHP"><b>... mit Geheim-Klick</b> \
- \
- </label> \
- <p>Ein Klick auf den BMI-Wert eines Nutzers öffnet sein Profil so, dass du\
- nicht in seiner Besucherliste auftauchst (funktioniert <u>nur</u>, falls\
- er sein Profil für jedermann sichtbar eingestellt hat). \
- <br/> <b>Achtung:</b> falls du gleichzeitig mit mehreren Profilen bei gayromeo.com,\
- planetromeo.com und/oder 83.98.143.20 eingeloggt bist, kann es passieren,\
- dass dein Zweit-/Drittprofil in der Besucherliste des anderen auftaucht!\
- Pech gehabt!</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr> \
- <td> \
- <input type="checkbox" id="grtcbfilterBMI" /> \
- </td> \
- <td> \
- <label for="grtcbfilterBMI"><b>BMI-Filter</b> <span class="ex"><img src="##PICBASEbmi-filter.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Wenn aktiviert, werden Nutzer, die nicht deinem eingestellten "BMI-Wunschraster"\
- entsprechen, in Suchergebislisten halbtransparent dargestellt.</p> \
- <div \
- id="bmiDiv">Dein Traum-BMI: </div> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2"> \
- <td> \
- <input type="checkbox" id="grtcbhistInRes" /> \
- </td> \
- <td> \
- <label for="grtcbhistInRes"><b>Message-Verlauf-Button in Ergebnislisten</b> <span class="ex"><img src="##PICBASEhist-result.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>In Suchergebnislisten wird ein \
- <img src="##PICBASE../hist.gif" alt="" />-Symbol hinter dem Nutzernamen angezeigt, um direkt den Messageverlauf\
- mit diesem Nutzer anzeigen zu lassen</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2 ind2"> \
- <td> \
- <input type="checkbox" id="grtcbhistInMsg" /> \
- </td> \
- <td> \
- <label for="grtcbhistInMsg"><b>Message-Verlauf-Button in "Neue Messages"-Liste</b> <span class="ex"><img src="##PICBASEhist-msg.png" alt="" class="ex" /></span>\
- \
- </label> \
- <p>Das \
- <img src="/v1/gemeinsam/grafiken/articons/message_art1.gif" alt="" \
- />-Symbol in der Message-Liste wird ersetzt durch ein \
- <img src="##PICBASE../hist.gif" \
- alt="" />-Symbol, um direkt den Messageverlauf anzeigen zu lassen, statt die Nachricht\
- sofort "offiziell" zu lesen ;-).</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- <tr class="bg2 ind ind2"> \
- <td> \
- <input type="checkbox" id="grtcbhistHighl" /> \
- </td> \
- <td> \
- <label for="grtcbhistHighl"><b>... und letzte Nachricht im Verlauf hervorheben</b>\
- \
- </label> \
- <p>Bei Klick auf das \
- <img src="##PICBASE../hist.gif" alt="" />-Symbol für den Message-Verlauf wird die letzte Nachricht besonders hervorgehoben.\
- Gegen träge Augen ;-).</p> <a href="#grtsave"></a> \
- \
- </td> \
- </tr> \
- </table> \
- <table cellspacing="5" style="border:1px solid #ccc"> \
- <tr class="grtWarn"> \
- <td> \
- <input type="checkbox" id="grtSaveCookie" /> \
- </td> \
- <td> \
- <label for="grtSaveCookie"><b>Einstellungen dauerhaft als Cookie speichern</label></b>\
- \
- <p style="padding:5px 0 10px"> \
- <img src="##PICBASEwarn.png" alt="" style="vertical-align:top" />Wichtig: An sich ist ein Cookie ein völlig harmloser Datenschnipsel, der\
- nur an diejenige Seite ständig mit übertragen wird,die ihn selbst auch\
- erstellt hat. Solltest du nicht an deinem Privat-PC sitzen, so lassen deine\
- gespeicherten Cookies jedoch bei anderen Nutzern dieses Rechners Rückschlüsse\
- daraufzu, wo du im Netz unterwegs warst. Bevor du hier den Haken setzt,\
- entscheide deshalb bitte sehr bewusst, ob dir durch einen GayRomeo-Cookie\
- eventuell Probleme entstehen könnten. \
- <br/> \
- <br/>Falls du den Cookie bereits verwendest, kannst du ihn jederzeit löschen,\
- indem du das Häkchen hier entfernst und auf "Einstellungen übernehmen"\
- drückst.</p> \
- </td> \
- </tr> \
- </table> \
- <br/><a name="grtsave" /> \
- <input type="button" id="grtSaveConfig" value="Einstellungen übernehmen" \
- /> \
- </div>'
- :
- ////////////////////////////////////////////////////////////////////////////////////////////////
- //
- // Configurationdialog English
- //
- //
- '\
- <style type="text/css"> \
- #grtcfg2 { \
- padding:10px; \
- color:#D1DEF1; \
- font-family:Tahoma, Arial, Verdana, Helvetica; \
- } \
- #grtcfg2 table { \
- width:auto; \
- margin:10px 0 0; \
- border-collapse:collapse; \
- border-spacing:0 \
- } \
- #grtcfg2 input { \
- cursor:pointer \
- } \
- #grtcfg2 h3 { \
- padding:0 4px 5px 0; \
- margin:0; \
- font-size:14px; \
- border-bottom:1px solid #ccc; \
- text-align:right; \
- color:#D1DEF1 !important \
- } \
- #grtcfg2 h4, #grtcfg2 p { \
- padding:0; \
- margin:0 \
- } \
- #grtcfg2 td { \
- vertical-align:top; \
- padding:7px 5px 0; \
- color:#D1DEF1; \
- width:auto !important \
- } \
- #grtcfg2 label { \
- cursor:pointer; \
- display:block; \
- padding-top:2px \
- } \
- #grtcfg2 label b { \
- color:#fff \
- } \
- #grtcfg2 img { \
- vertical-align:middle \
- } \
- #grtcfg2 img.ex { \
- border:1px solid yellow; \
- margin-top:4px; \
- display:none; \
- position:absolute; \
- z-index:2 \
- } \
- #grtcfg2 span.ex { \
- background:transparent url(##PICBASEshow.png) left center no-repeat; \
- padding-left:20px; \
- opacity:0.5; \
- margin-left:5px \
- } \
- #grtcfg2 span.ex:hover { \
- opacity:1 \
- } \
- #grtcfg2 span.ex:hover img.ex { \
- display:block \
- } \
- #grtcfg2 .grtwarn b { \
- color:#ffb400 \
- } \
- #grtcfg2 .bg2, #grtcfg2 .grtwarn { \
- background-color:#2A509F \
- } \
- #bmiDiv, #ageDiv { \
- padding-top:5px \
- } \
- #bmiDiv .bmiSelect { \
- text-align:center; \
- font-size:11px; \
- padding:0; \
- margin-right:5px; \
- } \
- #bmiDiv label, #ageDiv label { \
- display:inline \
- } \
- #ageDiv input { \
- border:1px solid #fff; \
- width:30px; \
- margin:0 5px 0 2px; \
- background-color:#85E854; \
- cursor:default; \
- font-size:11px; \
- text-align:center \
- } \
- #grtopts a { \
- display:block; \
- text-align:right; \
- background:transparent url(##PICBASEdown.png) right center no-repeat; \
- height:15px; \
- opacity:0.5 \
- } \
- #grtopts a:hover { \
- opacity:0.9 \
- } \
- #grtopts p { \
- opacity:0.7; \
- padding-top:2px \
- } \
- #grtopts td:hover p { \
- opacity:1 \
- } \
- #grtSaveConfig { \
- font-size:11px; \
- font-family:Verdana; \
- } \
- #grtcfg2 tr.ind td:last-child { \
- padding-left:26px !important \
- } \
- #grtcfg2 tr.ind2 td { \
- padding-top:0 !important \
- } \
- </style> \
- \
- <div id="grtcfg2"> \
- <h3>GR-Tools - Settings</h3> \
- <table cellspacing="5" id="grtopts"> \
- <tr class="bg2"> \
- <td><input type="checkbox" id="grtcbzoom"/></td> \
- <td><label for="grtcbzoom"><b>Preview Image Zoom</b> <span class="ex"><img src="##PICBASElupe.png" alt="" class="ex" /></span></label> \
- <p>Adds a <img src="##PICBASE../lupe.png" alt="" /> icon to preview images. Moving the mouse on it will show the original image.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2 ind ind2"> \
- <td><input type="checkbox" id="grtcbbigZoom"/></td> \
- <td><label for="grtcbbigZoom"><b>... Zoom Icon in XXL, please!</b></label> \
- <p>Use a bigger <img src="##PICBASE../lupe2.png" alt="" /> icon for the zoom function.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr> \
- <td><input type="checkbox" id="grtcbuseIF"/></td> \
- <td><label for="grtcbuseIF"><b>Popup Avoidance</b> <span class="ex"><img src="##PICBASEiframe.jpg" alt="" class="ex" /></span></label> \
- <p>User profiles won\'t be opened in popups anymore, but directly within the site.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="ind ind2"> \
- <td><input type="checkbox" id="grtcbthumbIF"/></td> \
- <td><label for="grtcbthumbIF"><b>... even on thumbnail clicks</b></label> \
- <p>With activated popup avoidance, <u>de</u>activating this option allows the popup fetishists among you to still open profile popups by clicking the user\'s thumbnail; \
- -).</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2"> \
- <td><input type="checkbox" id="grtcbfilterAge"/></td> \
- <td><label for="grtcbfilterAge"><b>Age Filter</b> <span class="ex"><img src="##PICBASEage-filter.png" alt="" class="ex" /></span></label> \
- <p>If activated and a user is below or beyond your prefered age, his nickname, age and weight data will be displayed semitransparently / grayed out.</p> \
- <div id="ageDiv">Your prefered age: </div> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr> \
- <td><input type="checkbox" id="grtcbclickTapse"/></td> \
- <td><label for="grtcbclickTapse"><b>Footprints clickable</b></label> \
- <p>A click on a footprint you\'ve been given opens the footprint popup, so you can give a reply footprint right away.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2"> \
- <td><input type="checkbox" id="grtcbbigPaging"/></td> \
- <td><label for="grtcbbigPaging"><b>Bigger Paging Links under Result Lists</b> <span class="ex"><img src="##PICBASEpaging.png" alt="" class="ex" /></span></label> \
- <p>The tiny "Next/Back" links of result pages will be replaced with huge, non-missable monster arrow buttons :-).</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr> \
- <td><input type="checkbox" id="grtcbytHead"/></td> \
- <td><label for="grtcbytHead"><b>YouTube-Links in Headlines</b> <span class="ex"><img src="##PICBASEyt-list.png" alt="" class="ex" /></span></label> \
- <p>YouTube URLs within online-headlines will be turned into real, clickable links -<br/> \
- \'coz Copy&Paste sucks; \
- -).</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="ind2"> \
- <td><input type="checkbox" id="grtcbytProf"/></td> \
- <td><label for="grtcbytProf"><b>YouTube-Links in Profiles</b></label> \
- <p>YouTube-URLs within user profiles wil be turned into clickable links.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="ind ind2"> \
- <td><input type="checkbox" id="grtcbytPreview"/></td> \
- <td><label for="grtcbytPreview"><b>... Video Preview on mouseover</b> <span class="ex"><img src="##PICBASEytpreview.jpg" alt="" class="ex" /></span></label> \
- <p>When you hold the mouse over a YouTube-Link, the video\'s preview image will be displayed next to the mouse cursor.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2"> \
- <td><input type="checkbox" id="grtcbshowBMI"/></td> \
- <td><label for="grtcbshowBMI"><b>Show BMI Values</b> <span class="ex"><img src="##PICBASEbmi-wert.png" alt="" class="ex" /></span></label> \
- <p>In result pages, each user\'s BMI value will be displayed behind his nickname.<br/> \
- The Body-Mass-Index (BMI) is the relation between body size and weight - the higher the value, the more "voluminous" the guy. Values from 20 to 25 are considered "healthy", though this may vary with age and origin. Moreover, the BMI is quite <u>pointless</u> regarding trained or muscle guys. Just generally: Do not overrate the BMI, please!</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2 ind ind2"> \
- <td><input type="checkbox" id="grtcbbmiClickHP"/></td> \
- <td><label for="grtcbbmiClickHP"><b>... with Secret Click</b></label> \
- <p>Clicking a BMI value opens that user\'s public profile through a different GayRomeo domain, so the user won\'t notice your visit (works <u>only</u>, if his is profile is set public for everyone).<br/> \
- <b>Attention:</b> if you are surfing with multiple profiles simultaneously on gayromeo.com, planetromeo.com and/or 83.98.143.20, it may happen that your second/third profile ends up in the visitor list of the viewed person! Bad luck!</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr> \
- <td><input type="checkbox" id="grtcbfilterBMI"/></td> \
- <td><label for="grtcbfilterBMI"><b>BMI Filter</b> <span class="ex"><img src="##PICBASEbmi-filter.png" alt="" class="ex" /></span></label> \
- <p>If activated, all users outside your prefered BMI range will be displayed semi-<wbr/> \
- transparently in the result lists.</p> \
- <div id="bmiDiv">Your prefered BMI range: </div> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2"> \
- <td><input type="checkbox" id="grtcbhistInRes"/></td> \
- <td><label for="grtcbhistInRes"><b>Message History Buttons in Result Lists</b> <span class="ex"><img src="##PICBASEhist-result.png" alt="" class="ex" /></span></label> \
- <p>Within result lists, a tiny <img src="##PICBASE../hist.gif" alt="" /> icon will be displayed behind each user\'s nickname. Clicking it will open your message history with that guy.</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2 ind2"> \
- <td><input type="checkbox" id="grtcbhistInMsg"/></td> \
- <td><label for="grtcbhistInMsg"><b>Message History Buttons in "New Messages" list</b> <span class="ex"><img src="##PICBASEhist-msg.png" alt="" class="ex" /></span></label> \
- <p>The <img src="/v1/gemeinsam/grafiken/articons/message_art1.gif" alt=""/> icon within the "new messages" list will be replaced with a <img src="##PICBASE../hist.gif" alt="" /> icon, allowing you to read the message "inofficially" without having it marked "read" on the spot; \
- -).</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- <tr class="bg2 ind ind2"> \
- <td><input type="checkbox" id="grtcbhistHighl"/></td> \
- <td><label for="grtcbhistHighl"><b>... and highlight last Message in the History</b></label> \
- <p>After opening the history using the <img src="##PICBASE../hist.gif" alt="" /> icon, the last message will be highlighted for being found more easily; \
- -).</p> \
- <a href="#grtsave"></a></td> \
- </tr> \
- </table> \
- <table cellspacing="5" style="border:1px solid #ccc"> \
- <tr class="grtWarn"> \
- <td><input type="checkbox" id="grtSaveCookie"/></td> \
- <td><label for="grtSaveCookie"> <b>Save settings in a cookie</label> \
- </b> \
- <p style="padding:5px 0 10px"><img src="##PICBASEwarn.png" alt="" style="vertical-align:top" /> NOTE: technically, a cookie is a pretty harmless data snippet which gets transmitted with every request ONLY to the website who created it. But: if you are not working at your private PC, the cookies on your computer may expose to other users of that machine what websites you\'ve been surfing on lately. So, before you make the cross for this option, please decide carefully for yourself whether or nota GayRomeo cookie may get you into trouble!<br/> \
- <br/> \
- You can remove the GR-Tools cookie at any time: simply uncheck this option andhit the "Apply Changes" button.</p></td> \
- </tr> \
- </table> \
- <br/> \
- <a name="grtsave"/> \
- <input type="button" id="grtSaveConfig" value="Apply Changes" /> \
- </div> \
- '
- );
- // js.innerHTML = '';
- // determine the latest revision of the GR-Tools UserScript + date of latest news (if available)..
- GM_xmlhttpRequest({
- method: 'GET',
- url: GRT.getStatusURL(),
- headers: {Accept: 'text/plain'},
- onload: function(data) {
- //"2.99.38|"
- var d = data.responseText.split('|');
- GRT.setLiveRevision( d[0] );
- GRT.setNewsDate( d[1] );
- }
- });
Add Comment
Please, Sign In to add comment