Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Adition: Everywhere: FastAccess-Tool
- // @namespace http://userscripts.org/scripts/review/47608
- // @description öffnet einen Layer in Adition mit Hackpad-Verweisen zu Dropbox-Zusatzinformationen
- // @version 1.1.5
- // @include http://login.adition.com*
- // @include http://www.onlineagenten.de/start.htm*
- // @include http://login.adition.com*
- // @exclude http://login.adition.com/reports/gethtmlreport*
- // @exclude http://login.adition.com/bannerpreview*
- // @copyright JoeSimmons
- // @license Creative Commons Attribution-Noncommercial 3.0 United States License
- // @grant none
- // ==/UserScript==
- // ----------------- Configuration ------------------ //
- var box_style = 'z-index:9999; position:fixed; border:0px ridge #CCCCCC; background:#ffffff; color:#000; cursor:move;'
- var box_style_maximized = box_style + 'left:50px; padding:12px; width:92%; height:555px; text-align:center; z-index:9999; ';
- var box_style_minimized = box_style + 'display:none; padding:0; width:4px; height:4px; z-index:9999; ';
- var iframe_url = "https://advertising_alliance.hackpad.com/ep/pad/static/ma7DWEiPSc1";
- var link_words = {
- 'SearchForDemo WordingOne' : 'http://www.test.de/',
- 'SearchForDemoWordingTwo' : 'http://www.testing.de/'
- // ... one word : url, pair per line separated by comma
- };
- // -------------------------------------------------- //
- // my special public domain xpath function ;)
- function forEachMatch(path, f, root) {
- var el;
- var root = (root == null) ? document : root;
- var matches = document.evaluate(path, root, null,
- XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
- for (var i = 0; i < matches.snapshotLength; i++) {
- if(f(matches.snapshotItem(i), i))
- break;
- }
- }
- (function() {
- var dm = 0; // delta movement
- var minimized = false; // box state
- var dragObj = new Object(), x, y;
- dragObj.zIndex = 0;
- var div = document.createElement('div');
- div.setAttribute('id', 'draggable_box');
- document.body.insertBefore(div, document.body.firstChild);
- // create the inner frame
- var framethis = document.createElement("iframe");
- framethis.src = iframe_url;
- framethis.setAttribute('id','classesFrame');
- framethis.setAttribute('style', 'position:absolute; width:98%; height:550px; frameborder:0px;top:0px;left:1%; top:10px; z-index:9999; ');
- div.appendChild(framethis);
- // this sets the initial position relative to the browser window
- dragObj.cursorStartX = window.innerWidth - 60;
- dragObj.cursorStartY = 30;
- minimize();
- function dragStart(e) {
- dragObj.elNode = e.target;
- if (dragObj.elNode.nodeType == 3) dragObj.elNode = dragObj.elNode.parentNode;
- dragObj.cursorStartX = e.clientX + window.scrollX;
- dragObj.cursorStartY = e.clientY + window.scrollY;
- dragObj.elStartLeft = parseInt(dragObj.elNode.style.left, 10);
- dragObj.elStartTop = parseInt(dragObj.elNode.style.top, 10);
- dragObj.elNode.style.zIndex = ++dragObj.zIndex;
- dm = 0;
- document.addEventListener("mousemove", dragGo, true);
- document.addEventListener("mouseup", dragStop, true);
- e.preventDefault();
- }
- function dragGo(e) {
- e.preventDefault();
- var x = e.clientX + window.scrollX,
- y = e.clientY + window.scrollY;
- dm += Math.abs(x)*4000 + Math.abs(y); // register any movement
- dragObj.elNode.style.left = (dragObj.elStartLeft + x - dragObj.cursorStartX) + "px";
- dragObj.elNode.style.top = (dragObj.elStartTop + y - dragObj.cursorStartY) + "px";
- }
- function dragStop(e) {
- document.removeEventListener("mousemove", dragGo, true);
- document.removeEventListener("mouseup", dragStop, true);
- if (dm <= 0) { // mouse up but there was no movement, so it must be a click
- if (minimized)
- restore();
- else
- minimize();
- }
- }
- function restore() {
- div.setAttribute('style', 'top:50px; left:50px; -moz-border-radius:6px; '+(box_style_maximized?box_style_maximized:''));
- minimized = false;
- framethis.style.display = "block";
- }
- function minimize() {
- div.setAttribute('style', 'top:'+(dragObj.cursorStartY-2)+'px; left:'+(dragObj.cursorStartX-2)+'px; -moz-border-radius:6px; '+(box_style_minimized?box_style_minimized:''));
- minimized = true;
- framethis.style.display = "none";
- }
- function loadIFrame(url) {
- framethis.src = url;
- }
- div.addEventListener('mousedown', function(e){dragStart(e);}, false);
- // http://commons.oreilly.com/wiki/index.php/Greasemonkey_Hacks/Search#Highlight_Search_Terms
- function linkWords(node, word, parent) {
- if (node.hasChildNodes) {
- for (var hi_cn = 0; hi_cn<node.childNodes.length; hi_cn++) {
- var n = node.childNodes[hi_cn];
- if (!(n.getAttribute && n.getAttribute("data-tag") == "loadiframe"))
- hi_cn+=linkWords(n, word, node);
- }
- }
- if (node.nodeType == Node.TEXT_NODE) {
- var nv = node.nodeValue;
- var ni = nv.indexOf(word[0]);
- if (ni != -1) {
- var before = document.createTextNode(nv.substr(0,ni));
- var after = document.createTextNode(nv.substr(ni+(word[0]).length));
- var anchor = document.createElement('a');
- anchor.href = word[1];
- anchor.innerHTML = word[0];
- anchor.setAttribute("data-tag", "loadiframe");
- anchor.onclick = function(e)
- {
- e.preventDefault();
- restore();
- loadIFrame(this.href);
- };
- parent.insertBefore(before, node);
- parent.insertBefore(anchor, node);
- parent.insertBefore(after, node);
- parent.removeChild(node);
- return 1;
- }
- }
- return 0;
- }
- var words = [];
- for (var w in link_words) {
- linkWords(document.body, [w, link_words[w]]);
- }
- forEachMatch('//div[@id="userinfo-left"]',
- function(b){
- b.addEventListener(
- "click",
- function(e)
- {
- e.preventDefault();
- restore();
- loadIFrame("https://advertising_alliance.hackpad.com/ep/pad/static/ma7DWEiPSc1");
- },
- true);
- });
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement