aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--usecaseui-common/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js683
-rw-r--r--usecaseui-common/src/main/webapp/static/fusion/raptor/css/tree/context-menu.css57
-rw-r--r--usecaseui-common/src/main/webapp/static/fusion/raptor/js/ajax_dynamic_content.js97
-rw-r--r--usecaseui-common/src/main/webapp/static/fusion/raptor/js/form-field-tooltip.js715
-rw-r--r--usecaseui-common/src/main/webapp/static/fusion/raptor/js/rounded-corners.js353
5 files changed, 0 insertions, 1905 deletions
diff --git a/usecaseui-common/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js b/usecaseui-common/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js
deleted file mode 100644
index 5e5c1f20..00000000
--- a/usecaseui-common/src/main/webapp/app/fusion/external/angular-1.4.8/angular-sanitize.js
+++ /dev/null
@@ -1,683 +0,0 @@
-/**
- * @license AngularJS v1.4.8
- * (c) 2010-2015 Google, Inc. http://angularjs.org
- * License: MIT
- */
-(function(window, angular, undefined) {'use strict';
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * Any commits to this file should be reviewed with security in mind. *
- * Changes to this file can potentially create security vulnerabilities. *
- * An approval from 2 Core members with history of modifying *
- * this file is required. *
- * *
- * Does the change somehow allow for arbitrary javascript to be executed? *
- * Or allows for someone to change the prototype of built-in objects? *
- * Or gives undesired access to variables likes document or window? *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-var $sanitizeMinErr = angular.$$minErr('$sanitize');
-
-/**
- * @ngdoc module
- * @name ngSanitize
- * @description
- *
- * # ngSanitize
- *
- * The `ngSanitize` module provides functionality to sanitize HTML.
- *
- *
- * <div doc-module-components="ngSanitize"></div>
- *
- * See {@link ngSanitize.$sanitize `$sanitize`} for usage.
- */
-
-/*
- * HTML Parser By Misko Hevery (misko@hevery.com)
- * based on: HTML Parser By John Resig (ejohn.org)
- * Original code by Erik Arvidsson, Mozilla Public License
- * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js
- *
- * // Use like so:
- * htmlParser(htmlString, {
- * start: function(tag, attrs, unary) {},
- * end: function(tag) {},
- * chars: function(text) {},
- * comment: function(text) {}
- * });
- *
- */
-
-
-/**
- * @ngdoc service
- * @name $sanitize
- * @kind function
- *
- * @description
- * The input is sanitized by parsing the HTML into tokens. All safe tokens (from a whitelist) are
- * then serialized back to properly escaped html string. This means that no unsafe input can make
- * it into the returned string, however, since our parser is more strict than a typical browser
- * parser, it's possible that some obscure input, which would be recognized as valid HTML by a
- * browser, won't make it through the sanitizer. The input may also contain SVG markup.
- * The whitelist is configured using the functions `aHrefSanitizationWhitelist` and
- * `imgSrcSanitizationWhitelist` of {@link ng.$compileProvider `$compileProvider`}.
- *
- * @param {string} html HTML input.
- * @returns {string} Sanitized HTML.
- *
- * @example
- <example module="sanitizeExample" deps="angular-sanitize.js">
- <file name="index.html">
- <script>
- angular.module('sanitizeExample', ['ngSanitize'])
- .controller('ExampleController', ['$scope', '$sce', function($scope, $sce) {
- $scope.snippet =
- '<p style="color:blue">an html\n' +
- '<em onmouseover="this.textContent=\'PWN3D!\'">click here</em>\n' +
- 'snippet</p>';
- $scope.deliberatelyTrustDangerousSnippet = function() {
- return $sce.trustAsHtml($scope.snippet);
- };
- }]);
- </script>
- <div ng-controller="ExampleController">
- Snippet: <textarea ng-model="snippet" cols="60" rows="3"></textarea>
- <table>
- <tr>
- <td>Directive</td>
- <td>How</td>
- <td>Source</td>
- <td>Rendered</td>
- </tr>
- <tr id="bind-html-with-sanitize">
- <td>ng-bind-html</td>
- <td>Automatically uses $sanitize</td>
- <td><pre>&lt;div ng-bind-html="snippet"&gt;<br/>&lt;/div&gt;</pre></td>
- <td><div ng-bind-html="snippet"></div></td>
- </tr>
- <tr id="bind-html-with-trust">
- <td>ng-bind-html</td>
- <td>Bypass $sanitize by explicitly trusting the dangerous value</td>
- <td>
- <pre>&lt;div ng-bind-html="deliberatelyTrustDangerousSnippet()"&gt;
-&lt;/div&gt;</pre>
- </td>
- <td><div ng-bind-html="deliberatelyTrustDangerousSnippet()"></div></td>
- </tr>
- <tr id="bind-default">
- <td>ng-bind</td>
- <td>Automatically escapes</td>
- <td><pre>&lt;div ng-bind="snippet"&gt;<br/>&lt;/div&gt;</pre></td>
- <td><div ng-bind="snippet"></div></td>
- </tr>
- </table>
- </div>
- </file>
- <file name="protractor.js" type="protractor">
- it('should sanitize the html snippet by default', function() {
- expect(element(by.css('#bind-html-with-sanitize div')).getInnerHtml()).
- toBe('<p>an html\n<em>click here</em>\nsnippet</p>');
- });
-
- it('should inline raw snippet if bound to a trusted value', function() {
- expect(element(by.css('#bind-html-with-trust div')).getInnerHtml()).
- toBe("<p style=\"color:blue\">an html\n" +
- "<em onmouseover=\"this.textContent='PWN3D!'\">click here</em>\n" +
- "snippet</p>");
- });
-
- it('should escape snippet without any filter', function() {
- expect(element(by.css('#bind-default div')).getInnerHtml()).
- toBe("&lt;p style=\"color:blue\"&gt;an html\n" +
- "&lt;em onmouseover=\"this.textContent='PWN3D!'\"&gt;click here&lt;/em&gt;\n" +
- "snippet&lt;/p&gt;");
- });
-
- it('should update', function() {
- element(by.model('snippet')).clear();
- element(by.model('snippet')).sendKeys('new <b onclick="alert(1)">text</b>');
- expect(element(by.css('#bind-html-with-sanitize div')).getInnerHtml()).
- toBe('new <b>text</b>');
- expect(element(by.css('#bind-html-with-trust div')).getInnerHtml()).toBe(
- 'new <b onclick="alert(1)">text</b>');
- expect(element(by.css('#bind-default div')).getInnerHtml()).toBe(
- "new &lt;b onclick=\"alert(1)\"&gt;text&lt;/b&gt;");
- });
- </file>
- </example>
- */
-function $SanitizeProvider() {
- this.$get = ['$$sanitizeUri', function($$sanitizeUri) {
- return function(html) {
- var buf = [];
- htmlParser(html, htmlSanitizeWriter(buf, function(uri, isImage) {
- return !/^unsafe/.test($$sanitizeUri(uri, isImage));
- }));
- return buf.join('');
- };
- }];
-}
-
-function sanitizeText(chars) {
- var buf = [];
- var writer = htmlSanitizeWriter(buf, angular.noop);
- writer.chars(chars);
- return buf.join('');
-}
-
-
-// Regular Expressions for parsing tags and attributes
-var START_TAG_REGEXP =
- /^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,
- END_TAG_REGEXP = /^<\/\s*([\w:-]+)[^>]*>/,
- ATTR_REGEXP = /([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,
- BEGIN_TAG_REGEXP = /^</,
- BEGING_END_TAGE_REGEXP = /^<\//,
- COMMENT_REGEXP = /<!--(.*?)-->/g,
- DOCTYPE_REGEXP = /<!DOCTYPE([^>]*?)>/i,
- CDATA_REGEXP = /<!\[CDATA\[(.*?)]]>/g,
- SURROGATE_PAIR_REGEXP = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g,
- // Match everything outside of normal chars and " (quote character)
- NON_ALPHANUMERIC_REGEXP = /([^\#-~| |!])/g;
-
-
-// Good source of info about elements and attributes
-// http://dev.w3.org/html5/spec/Overview.html#semantics
-// http://simon.html5.org/html-elements
-
-// Safe Void Elements - HTML5
-// http://dev.w3.org/html5/spec/Overview.html#void-elements
-var voidElements = makeMap("area,br,col,hr,img,wbr");
-
-// Elements that you can, intentionally, leave open (and which close themselves)
-// http://dev.w3.org/html5/spec/Overview.html#optional-tags
-var optionalEndTagBlockElements = makeMap("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),
- optionalEndTagInlineElements = makeMap("rp,rt"),
- optionalEndTagElements = angular.extend({},
- optionalEndTagInlineElements,
- optionalEndTagBlockElements);
-
-// Safe Block Elements - HTML5
-var blockElements = angular.extend({}, optionalEndTagBlockElements, makeMap("address,article," +
- "aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5," +
- "h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul"));
-
-// Inline Elements - HTML5
-var inlineElements = angular.extend({}, optionalEndTagInlineElements, makeMap("a,abbr,acronym,b," +
- "bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s," +
- "samp,small,span,strike,strong,sub,sup,time,tt,u,var"));
-
-// SVG Elements
-// https://wiki.whatwg.org/wiki/Sanitization_rules#svg_Elements
-// Note: the elements animate,animateColor,animateMotion,animateTransform,set are intentionally omitted.
-// They can potentially allow for arbitrary javascript to be executed. See #11290
-var svgElements = makeMap("circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph," +
- "hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline," +
- "radialGradient,rect,stop,svg,switch,text,title,tspan,use");
-
-// Special Elements (can contain anything)
-var specialElements = makeMap("script,style");
-
-var validElements = angular.extend({},
- voidElements,
- blockElements,
- inlineElements,
- optionalEndTagElements,
- svgElements);
-
-//Attributes that have href and hence need to be sanitized
-var uriAttrs = makeMap("background,cite,href,longdesc,src,usemap,xlink:href");
-
-var htmlAttrs = makeMap('abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,' +
- 'color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,' +
- 'ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,' +
- 'scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,' +
- 'valign,value,vspace,width');
-
-// SVG attributes (without "id" and "name" attributes)
-// https://wiki.whatwg.org/wiki/Sanitization_rules#svg_Attributes
-var svgAttrs = makeMap('accent-height,accumulate,additive,alphabetic,arabic-form,ascent,' +
- 'baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,' +
- 'cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,' +
- 'font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,' +
- 'height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,' +
- 'marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,' +
- 'max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,' +
- 'path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,' +
- 'requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,' +
- 'stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,' +
- 'stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,' +
- 'stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,' +
- 'underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,' +
- 'width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,' +
- 'xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan', true);
-
-var validAttrs = angular.extend({},
- uriAttrs,
- svgAttrs,
- htmlAttrs);
-
-function makeMap(str, lowercaseKeys) {
- var obj = {}, items = str.split(','), i;
- for (i = 0; i < items.length; i++) {
- obj[lowercaseKeys ? angular.lowercase(items[i]) : items[i]] = true;
- }
- return obj;
-}
-
-
-/**
- * @example
- * htmlParser(htmlString, {
- * start: function(tag, attrs, unary) {},
- * end: function(tag) {},
- * chars: function(text) {},
- * comment: function(text) {}
- * });
- *
- * @param {string} html string
- * @param {object} handler
- */
-function htmlParser(html, handler) {
- if (typeof html !== 'string') {
- if (html === null || typeof html === 'undefined') {
- html = '';
- } else {
- html = '' + html;
- }
- }
- var index, chars, match, stack = [], last = html, text;
- stack.last = function() { return stack[stack.length - 1]; };
-
- while (html) {
- text = '';
- chars = true;
-
- // Make sure we're not in a script or style element
- if (!stack.last() || !specialElements[stack.last()]) {
-
- // Comment
- if (html.indexOf("<!--") === 0) {
- // comments containing -- are not allowed unless they terminate the comment
- index = html.indexOf("--", 4);
-
- if (index >= 0 && html.lastIndexOf("-->", index) === index) {
- if (handler.comment) handler.comment(html.substring(4, index));
- html = html.substring(index + 3);
- chars = false;
- }
- // DOCTYPE
- } else if (DOCTYPE_REGEXP.test(html)) {
- match = html.match(DOCTYPE_REGEXP);
-
- if (match) {
- html = html.replace(match[0], '');
- chars = false;
- }
- // end tag
- } else if (BEGING_END_TAGE_REGEXP.test(html)) {
- match = html.match(END_TAG_REGEXP);
-
- if (match) {
- html = html.substring(match[0].length);
- match[0].replace(END_TAG_REGEXP, parseEndTag);
- chars = false;
- }
-
- // start tag
- } else if (BEGIN_TAG_REGEXP.test(html)) {
- match = html.match(START_TAG_REGEXP);
-
- if (match) {
- // We only have a valid start-tag if there is a '>'.
- if (match[4]) {
- html = html.substring(match[0].length);
- match[0].replace(START_TAG_REGEXP, parseStartTag);
- }
- chars = false;
- } else {
- // no ending tag found --- this piece should be encoded as an entity.
- text += '<';
- html = html.substring(1);
- }
- }
-
- if (chars) {
- index = html.indexOf("<");
-
- text += index < 0 ? html : html.substring(0, index);
- html = index < 0 ? "" : html.substring(index);
-
- if (handler.chars) handler.chars(decodeEntities(text));
- }
-
- } else {
- // IE versions 9 and 10 do not understand the regex '[^]', so using a workaround with [\W\w].
- html = html.replace(new RegExp("([\\W\\w]*)<\\s*\\/\\s*" + stack.last() + "[^>]*>", 'i'),
- function(all, text) {
- text = text.replace(COMMENT_REGEXP, "$1").replace(CDATA_REGEXP, "$1");
-
- if (handler.chars) handler.chars(decodeEntities(text));
-
- return "";
- });
-
- parseEndTag("", stack.last());
- }
-
- if (html == last) {
- throw $sanitizeMinErr('badparse', "The sanitizer was unable to parse the following block " +
- "of html: {0}", html);
- }
- last = html;
- }
-
- // Clean up any remaining tags
- parseEndTag();
-
- function parseStartTag(tag, tagName, rest, unary) {
- tagName = angular.lowercase(tagName);
- if (blockElements[tagName]) {
- while (stack.last() && inlineElements[stack.last()]) {
- parseEndTag("", stack.last());
- }
- }
-
- if (optionalEndTagElements[tagName] && stack.last() == tagName) {
- parseEndTag("", tagName);
- }
-
- unary = voidElements[tagName] || !!unary;
-
- if (!unary) {
- stack.push(tagName);
- }
-
- var attrs = {};
-
- rest.replace(ATTR_REGEXP,
- function(match, name, doubleQuotedValue, singleQuotedValue, unquotedValue) {
- var value = doubleQuotedValue
- || singleQuotedValue
- || unquotedValue
- || '';
-
- attrs[name] = decodeEntities(value);
- });
- if (handler.start) handler.start(tagName, attrs, unary);
- }
-
- function parseEndTag(tag, tagName) {
- var pos = 0, i;
- tagName = angular.lowercase(tagName);
- if (tagName) {
- // Find the closest opened tag of the same type
- for (pos = stack.length - 1; pos >= 0; pos--) {
- if (stack[pos] == tagName) break;
- }
- }
-
- if (pos >= 0) {
- // Close all the open elements, up the stack
- for (i = stack.length - 1; i >= pos; i--)
- if (handler.end) handler.end(stack[i]);
-
- // Remove the open elements from the stack
- stack.length = pos;
- }
- }
-}
-
-var hiddenPre=document.createElement("pre");
-/**
- * decodes all entities into regular string
- * @param value
- * @returns {string} A string with decoded entities.
- */
-function decodeEntities(value) {
- if (!value) { return ''; }
-
- hiddenPre.innerHTML = value.replace(/</g,"&lt;");
- // innerText depends on styling as it doesn't display hidden elements.
- // Therefore, it's better to use textContent not to cause unnecessary reflows.
- return hiddenPre.textContent;
-}
-
-/**
- * Escapes all potentially dangerous characters, so that the
- * resulting string can be safely inserted into attribute or
- * element text.
- * @param value
- * @returns {string} escaped text
- */
-function encodeEntities(value) {
- return value.
- replace(/&/g, '&amp;').
- replace(SURROGATE_PAIR_REGEXP, function(value) {
- var hi = value.charCodeAt(0);
- var low = value.charCodeAt(1);
- return '&#' + (((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000) + ';';
- }).
- replace(NON_ALPHANUMERIC_REGEXP, function(value) {
- return '&#' + value.charCodeAt(0) + ';';
- }).
- replace(/</g, '&lt;').
- replace(/>/g, '&gt;');
-}
-
-/**
- * create an HTML/XML writer which writes to buffer
- * @param {Array} buf use buf.jain('') to get out sanitized html string
- * @returns {object} in the form of {
- * start: function(tag, attrs, unary) {},
- * end: function(tag) {},
- * chars: function(text) {},
- * comment: function(text) {}
- * }
- */
-function htmlSanitizeWriter(buf, uriValidator) {
- var ignore = false;
- var out = angular.bind(buf, buf.push);
- return {
- start: function(tag, attrs, unary) {
- tag = angular.lowercase(tag);
- if (!ignore && specialElements[tag]) {
- ignore = tag;
- }
- if (!ignore && validElements[tag] === true) {
- out('<');
- out(tag);
- angular.forEach(attrs, function(value, key) {
- var lkey=angular.lowercase(key);
- var isImage = (tag === 'img' && lkey === 'src') || (lkey === 'background');
- if (validAttrs[lkey] === true &&
- (uriAttrs[lkey] !== true || uriValidator(value, isImage))) {
- out(' ');
- out(key);
- out('="');
- out(encodeEntities(value));
- out('"');
- }
- });
- out(unary ? '/>' : '>');
- }
- },
- end: function(tag) {
- tag = angular.lowercase(tag);
- if (!ignore && validElements[tag] === true) {
- out('</');
- out(tag);
- out('>');
- }
- if (tag == ignore) {
- ignore = false;
- }
- },
- chars: function(chars) {
- if (!ignore) {
- out(encodeEntities(chars));
- }
- }
- };
-}
-
-
-// define ngSanitize module and register $sanitize service
-angular.module('ngSanitize', []).provider('$sanitize', $SanitizeProvider);
-
-/* global sanitizeText: false */
-
-/**
- * @ngdoc filter
- * @name linky
- * @kind function
- *
- * @description
- * Finds links in text input and turns them into html links. Supports http/https/ftp/mailto and
- * plain email address links.
- *
- * Requires the {@link ngSanitize `ngSanitize`} module to be installed.
- *
- * @param {string} text Input text.
- * @param {string} target Window (_blank|_self|_parent|_top) or named frame to open links in.
- * @returns {string} Html-linkified text.
- *
- * @usage
- <span ng-bind-html="linky_expression | linky"></span>
- *
- * @example
- <example module="linkyExample" deps="angular-sanitize.js">
- <file name="index.html">
- <script>
- angular.module('linkyExample', ['ngSanitize'])
- .controller('ExampleController', ['$scope', function($scope) {
- $scope.snippet =
- 'Pretty text with some links:\n'+
- 'http://angularjs.org/,\n'+
- 'mailto:us@somewhere.org,\n'+
- 'another@somewhere.org,\n'+
- 'and one more: ftp://127.0.0.1/.';
- $scope.snippetWithTarget = 'http://angularjs.org/';
- }]);
- </script>
- <div ng-controller="ExampleController">
- Snippet: <textarea ng-model="snippet" cols="60" rows="3"></textarea>
- <table>
- <tr>
- <td>Filter</td>
- <td>Source</td>
- <td>Rendered</td>
- </tr>
- <tr id="linky-filter">
- <td>linky filter</td>
- <td>
- <pre>&lt;div ng-bind-html="snippet | linky"&gt;<br>&lt;/div&gt;</pre>
- </td>
- <td>
- <div ng-bind-html="snippet | linky"></div>
- </td>
- </tr>
- <tr id="linky-target">
- <td>linky target</td>
- <td>
- <pre>&lt;div ng-bind-html="snippetWithTarget | linky:'_blank'"&gt;<br>&lt;/div&gt;</pre>
- </td>
- <td>
- <div ng-bind-html="snippetWithTarget | linky:'_blank'"></div>
- </td>
- </tr>
- <tr id="escaped-html">
- <td>no filter</td>
- <td><pre>&lt;div ng-bind="snippet"&gt;<br>&lt;/div&gt;</pre></td>
- <td><div ng-bind="snippet"></div></td>
- </tr>
- </table>
- </file>
- <file name="protractor.js" type="protractor">
- it('should linkify the snippet with urls', function() {
- expect(element(by.id('linky-filter')).element(by.binding('snippet | linky')).getText()).
- toBe('Pretty text with some links: http://angularjs.org/, us@somewhere.org, ' +
- 'another@somewhere.org, and one more: ftp://127.0.0.1/.');
- expect(element.all(by.css('#linky-filter a')).count()).toEqual(4);
- });
-
- it('should not linkify snippet without the linky filter', function() {
- expect(element(by.id('escaped-html')).element(by.binding('snippet')).getText()).
- toBe('Pretty text with some links: http://angularjs.org/, mailto:us@somewhere.org, ' +
- 'another@somewhere.org, and one more: ftp://127.0.0.1/.');
- expect(element.all(by.css('#escaped-html a')).count()).toEqual(0);
- });
-
- it('should update', function() {
- element(by.model('snippet')).clear();
- element(by.model('snippet')).sendKeys('new http://link.');
- expect(element(by.id('linky-filter')).element(by.binding('snippet | linky')).getText()).
- toBe('new http://link.');
- expect(element.all(by.css('#linky-filter a')).count()).toEqual(1);
- expect(element(by.id('escaped-html')).element(by.binding('snippet')).getText())
- .toBe('new http://link.');
- });
-
- it('should work with the target property', function() {
- expect(element(by.id('linky-target')).
- element(by.binding("snippetWithTarget | linky:'_blank'")).getText()).
- toBe('http://angularjs.org/');
- expect(element(by.css('#linky-target a')).getAttribute('target')).toEqual('_blank');
- });
- </file>
- </example>
- */
-angular.module('ngSanitize').filter('linky', ['$sanitize', function($sanitize) {
- var LINKY_URL_REGEXP =
- /((ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"\u201d\u2019]/i,
- MAILTO_REGEXP = /^mailto:/i;
-
- return function(text, target) {
- if (!text) return text;
- var match;
- var raw = text;
- var html = [];
- var url;
- var i;
- while ((match = raw.match(LINKY_URL_REGEXP))) {
- // We can not end in these as they are sometimes found at the end of the sentence
- url = match[0];
- // if we did not match ftp/http/www/mailto then assume mailto
- if (!match[2] && !match[4]) {
- url = (match[3] ? 'http://' : 'mailto:') + url;
- }
- i = match.index;
- addText(raw.substr(0, i));
- addLink(url, match[0].replace(MAILTO_REGEXP, ''));
- raw = raw.substring(i + match[0].length);
- }
- addText(raw);
- return $sanitize(html.join(''));
-
- function addText(text) {
- if (!text) {
- return;
- }
- html.push(sanitizeText(text));
- }
-
- function addLink(url, text) {
- html.push('<a ');
- if (angular.isDefined(target)) {
- html.push('target="',
- target,
- '" ');
- }
- html.push('href="',
- url.replace(/"/g, '&quot;'),
- '">');
- addText(text);
- html.push('</a>');
- }
- };
-}]);
-
-
-})(window, window.angular);
diff --git a/usecaseui-common/src/main/webapp/static/fusion/raptor/css/tree/context-menu.css b/usecaseui-common/src/main/webapp/static/fusion/raptor/css/tree/context-menu.css
deleted file mode 100644
index 160c2a11..00000000
--- a/usecaseui-common/src/main/webapp/static/fusion/raptor/css/tree/context-menu.css
+++ /dev/null
@@ -1,57 +0,0 @@
-/************************************************************************************************************
-
- DHTML Suite for Applications
- (C) www.dhtmlgoodies.com, August 2006
-
- CSS for the context menu class.
-
- Terms of use:
- Look at the terms of use at http://www.dhtmlgoodies.com/index.html?page=termsOfUse
-
- Thank you!
-
- www.dhtmlgoodies.com
- Alf Magne Kalleland
-
-************************************************************************************************************/
-
-.DHTMLSuite_contextMenu{ /* The bar that is parent of the menu strip */
- position:absolute;
- background-color:#FFF;
- border:1px solid #000;
- padding:1px;
-}
-
-.DHTMLSuite_contextMenu li{
- list-style-type:none;
- padding:1px; /* Equal to border + padding of .DHTMLSuite_item_mouseover */
- border:0px;
- cursor: pointer;
- background-repeat:no-repeat;
- background-position:left center;
-}
-.DHTMLSuite_contextMenu .DHTMLSuite_item_mouseover{
- border:1px solid #000;
- background-color:#EEE;
- padding:0px; /* Padding + border of this element should be equal to padding of li element (see above ) */
-}
-.DHTMLSuite_contextMenu ul{
- margin:0px;
- padding:0px;
-}
-
-.DHTMLSuite_contextMenu a{
- text-decoration:none;
- color:#000;
- padding-left:25px;
-}
-
-.DHTMLSuite_contextMenu div.DHTMLSuite_contextMenu_separator{ /* Css for the separator line */
- height:1px;
- line-height:1px;
- padding:0px;
- background-color: #AAA;
- overflow:hidden;
- margin-top:1px;
- margin-bottom:1px;
-}
diff --git a/usecaseui-common/src/main/webapp/static/fusion/raptor/js/ajax_dynamic_content.js b/usecaseui-common/src/main/webapp/static/fusion/raptor/js/ajax_dynamic_content.js
deleted file mode 100644
index 077932e1..00000000
--- a/usecaseui-common/src/main/webapp/static/fusion/raptor/js/ajax_dynamic_content.js
+++ /dev/null
@@ -1,97 +0,0 @@
-
-/***********************************************
-* Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
-* This notice MUST stay intact for legal use
-* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
-***********************************************/
-
-var loadedobjects=""
-var rootdomain="http://"+window.location.hostname
-
-function ajaxpage(url, containerid){
-
-var page_request = false;
- try {
- netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
- } catch (e) {
- //alert("Permission UniversalBrowserRead denied.");
- }
-if (window.XMLHttpRequest) // if Mozilla, Safari etc
-page_request = new XMLHttpRequest()
-else if (window.ActiveXObject){ // if IE
-try {
-page_request = new ActiveXObject("Msxml2.XMLHTTP")
-}
-catch (e1){
-try{
-page_request = new ActiveXObject("Microsoft.XMLHTTP")
-}
-catch (e1){ page_request = null; alert('permission denied');
-}
-}
-}
-else
-return false
-page_request.onreadystatechange=function(){
-loadpage(page_request, containerid)
-}
-// This is a fix made since IE doesn't refresh the page
-var ajaxRightNow = new Date();
-var noCacheAjaxurl = url + ((/\?/.test(url)) ? "&" : "?") + "ajaxRandomTimestamp=" + ajaxRightNow.getTime();
-page_request.open('GET', noCacheAjaxurl, true)
-page_request.send(null)
-}
-
-function loadpage(page_request, containerid){
-var div = document.getElementById(containerid);
-if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
- div.innerHTML=page_request.responseText;
- var x = div.getElementsByTagName("script");
- for(var i=0;i<x.length;i++)
- {
- if(x[i].text.indexOf("resizeDivScrollbar")>=0)
- eval(x[i].text);
- }
-}
-
-function resizeDivScrollbar(){
- var frame = document.getElementById("scrollableTableResult");
- var parentBody = window.parent.document.body;
- var parentMenu = window.parent.document.getElementById("application");
- if(frame!=null) {
- //alert(frame.clientHeight + " " + window.parent.document.body.clientHeight);
- if (frame.clientHeight > window.parent.document.body.clientHeight) {
- frame.style.height = window.parent.document.body.clientHeight-350;
- } else
- frame.style.height = window.parent.document.body.clientHeight;
- parentMenu.style.width = frame.clientWidth+200;
- }
-}
-
-
-function loadobjs(){
-if (!document.getElementById)
-return
-for (i=0; i<arguments.length; i++){
-var file=arguments[i]
-var fileref=""
-if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
-if (file.indexOf(".js")!=-1){ //If object is a js file
-fileref=document.createElement('script')
-fileref.setAttribute("type","text/javascript");
-fileref.setAttribute("src", file);
-}
-else if (file.indexOf(".css")!=-1){ //If object is a css file
-fileref=document.createElement("link")
-fileref.setAttribute("rel", "stylesheet");
-fileref.setAttribute("type", "text/css");
-fileref.setAttribute("href", file);
-}
-}
-if (fileref!=""){
-document.getElementsByTagName("head").item(0).appendChild(fileref)
-loadedobjects+=file+" " //Remember this object as being already added to page
-}
-}
-}
-
diff --git a/usecaseui-common/src/main/webapp/static/fusion/raptor/js/form-field-tooltip.js b/usecaseui-common/src/main/webapp/static/fusion/raptor/js/form-field-tooltip.js
deleted file mode 100644
index b499ca08..00000000
--- a/usecaseui-common/src/main/webapp/static/fusion/raptor/js/form-field-tooltip.js
+++ /dev/null
@@ -1,715 +0,0 @@
-/************************************************************************************************************
-
- Form field tooltip
- (C) www.dhtmlgoodies.com, September 2006
-
- This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website.
-
- Terms of use:
- Look at the terms of use at http://www.dhtmlgoodies.com/index.html?page=termsOfUse
-
- Thank you!
-
- www.dhtmlgoodies.com
- Alf Magne Kalleland
-
-************************************************************************************************************/
-
-var DHTMLgoodies_globalTooltipObj;
-
-
-/**
-Constructor
-**/
-function DHTMLgoodies_formTooltip()
-{
- var tooltipDiv;
- var tooltipText;
- var tooltipContentDiv; // Reference to inner div with tooltip content
- var imagePath; // Relative path to images
- var arrowImageFile; // Name of arrow image
- var arrowImageFileRight; // Name of arrow image
- var arrowRightWidth;
- var arrowTopHeight;
- var tooltipWidth; // Width of tooltip
- var roundedCornerObj; // Reference to object of class DHTMLgoodies_roundedCorners
- var tooltipBgColor;
- var closeMessage; // Close message
- var activeInput; // Reference to currently active input
- var tooltipPosition; // Tooltip position, possible values: "below" or "right"
- var tooltipCornerSize; // Size of rounded corners
- var displayArrow; // Display arrow above or at the left of the tooltip?
- var cookieName; // Name of cookie
- var disableTooltipPossibility; // Possibility of disabling tooltip
- var disableTooltipByCookie; // If tooltip has been disabled, save the settings in cookie, i.e. for other pages with the same cookie name.
- var disableTooltipMessage;
- var tooltipDisabled;
- var isMSIE;
- var tooltipIframeObj;
- var pageBgColor; // Color of background - used in ie when applying iframe which covers select boxes
- var currentTooltipObj; // Reference to form field which tooltip is currently showing for
-
- this.currentTooltipObj = false,
- this.tooltipDiv = false,
- this.tooltipText = false;
- this.imagePath = 'static/fusion/raptor/images/';
- this.arrowImageFile = 'green-arrow.gif';
- this.arrowImageFileRight = 'green-arrow-right.gif';
- this.tooltipWidth = 200;
- this.tooltipBgColor = '#317082';
- this.closeMessage = 'Close';
- this.disableTooltipMessage = 'Don\'t show this message again';
- this.activeInput = false;
- this.tooltipPosition = 'right';
- this.arrowRightWidth = 16; // Default width of arrow when the tooltip is on the right side of the inputs.
- this.arrowTopHeight = 13; // Default height of arrow at the top of tooltip
- this.tooltipCornerSize = 10;
- this.displayArrow = true;
- this.cookieName = 'DHTMLgoodies_tooltipVisibility';
- this.disableTooltipByCookie = false;
- this.tooltipDisabled = false;
- this.disableTooltipPossibility = true;
- this.tooltipIframeObj = false;
- this.pageBgColor = '#FFFFFF';
-
- DHTMLgoodies_globalTooltipObj = this;
-
- if(navigator.userAgent.indexOf('MSIE')>=0)this.isMSIE = true; else this.isMSIE = false;
-}
-
-
-DHTMLgoodies_formTooltip.prototype = {
- // {{{ initFormFieldTooltip()
- /**
- *
- *
- * Initializes the tooltip script. Most set methods needs to be executed before you call this method.
- *
- * @public
- */
- initFormFieldTooltip : function()
- {
- var formElements = new Array();
- var inputs = document.getElementsByTagName('IMG');
- for(var no=0;no<inputs.length;no++){
- var attr = inputs[no].getAttribute('tooltipText');
- if(!attr)attr = inputs[no].tooltipText;
- if(attr)formElements[formElements.length] = inputs[no];
- }
-
- var inputs = document.getElementsByTagName('INPUT');
- for(var no=0;no<inputs.length;no++){
- var attr = inputs[no].getAttribute('tooltipText');
- if(!attr)attr = inputs[no].tooltipText;
- if(attr)formElements[formElements.length] = inputs[no];
- }
-
- var inputs = document.getElementsByTagName('TEXTAREA');
- for(var no=0;no<inputs.length;no++){
- var attr = inputs[no].getAttribute('tooltipText');
- if(!attr)attr = inputs[no].tooltipText;
- if(attr)formElements[formElements.length] = inputs[no];
- }
- var inputs = document.getElementsByTagName('SELECT');
- for(var no=0;no<inputs.length;no++){
- var attr = inputs[no].getAttribute('tooltipText');
- if(!attr)attr = inputs[no].tooltipText;
- if(attr)formElements[formElements.length] = inputs[no];
- }
-
- window.refToFormTooltip = this;
-
- for(var no=0;no<formElements.length;no++){
- formElements[no].onfocus = this.__displayTooltip;
- }
- this.addEvent(window,'resize',function(){ window.refToFormTooltip.__positionCurrentToolTipObj(); });
-
- this.addEvent(document.documentElement,'click',function(e){ window.refToFormTooltip.__autoHideTooltip(e); });
- }
-
- // }}}
- ,
- // {{{ setTooltipPosition()
- /**
- *
- *
- * Specify position of tooltip(below or right)
- * @param String newPosition (Possible values: "below" or "right")
- *
- * @public
- */
- setTooltipPosition : function(newPosition)
- {
- this.tooltipPosition = newPosition;
- }
- // }}}
- ,
- // {{{ setCloseMessage()
- /**
- *
- *
- * Specify "Close" message
- * @param String closeMessage
- *
- * @public
- */
- setCloseMessage : function(closeMessage)
- {
- this.closeMessage = closeMessage;
- }
- // }}}
- ,
- // {{{ setDisableTooltipMessage()
- /**
- *
- *
- * Specify disable tooltip message at the bottom of the tooltip
- * @param String disableTooltipMessage
- *
- * @public
- */
- setDisableTooltipMessage : function(disableTooltipMessage)
- {
- this.disableTooltipMessage = disableTooltipMessage;
- }
- // }}}
- ,
- // {{{ setTooltipDisablePossibility()
- /**
- *
- *
- * Specify whether you want the disable link to appear or not.
- * @param Boolean disableTooltipPossibility
- *
- * @public
- */
- setTooltipDisablePossibility : function(disableTooltipPossibility)
- {
- this.disableTooltipPossibility = disableTooltipPossibility;
- }
- // }}}
- ,
- // {{{ setCookieName()
- /**
- *
- *
- * Specify name of cookie. Useful if you're using this script on several pages.
- * @param String newCookieName
- *
- * @public
- */
- setCookieName : function(newCookieName)
- {
- this.cookieName = newCookieName;
- }
- // }}}
- ,
- // {{{ setTooltipWidth()
- /**
- *
- *
- * Specify width of tooltip
- * @param Int newWidth
- *
- * @public
- */
- setTooltipWidth : function(newWidth)
- {
- this.tooltipWidth = newWidth;
- }
-
- // }}}
- ,
- // {{{ setArrowVisibility()
- /**
- *
- *
- * Display arrow at the top or at the left of the tooltip?
- * @param Boolean displayArrow
- *
- * @public
- */
-
- setArrowVisibility : function(displayArrow)
- {
- this.displayArrow = displayArrow;
- }
-
- // }}}
- ,
- // {{{ setTooltipBgColor()
- /**
- *
- *
- * Send true to this method if you want to be able to save tooltip visibility in cookie. If it's set to true,
- * It means that when someone returns to the page, the tooltips won't show.
- *
- * @param Boolean disableTooltipByCookie
- *
- * @public
- */
- setDisableTooltipByCookie : function(disableTooltipByCookie)
- {
- this.disableTooltipByCookie = disableTooltipByCookie;
- }
- // }}}
- ,
- // {{{ setTooltipBgColor()
- /**
- *
- *
- * This method specifies background color of tooltip
- * @param String newBgColor
- *
- * @public
- */
- setTooltipBgColor : function(newBgColor)
- {
- this.tooltipBgColor = newBgColor;
- }
-
- // }}}
- ,
- // {{{ setTooltipCornerSize()
- /**
- *
- *
- * Size of rounded corners around tooltip
- * @param Int newSize (0 = no rounded corners)
- *
- * @public
- */
- setTooltipCornerSize : function(tooltipCornerSize)
- {
- this.tooltipCornerSize = tooltipCornerSize;
- }
-
- // }}}
- ,
- // {{{ setTopArrowHeight()
- /**
- *
- *
- * Size height of arrow at the top of tooltip
- * @param Int arrowTopHeight
- *
- * @public
- */
- setTopArrowHeight : function(arrowTopHeight)
- {
- this.arrowTopHeight = arrowTopHeight;
- }
-
- // }}}
- ,
- // {{{ setRightArrowWidth()
- /**
- *
- *
- * Size width of arrow when the tooltip is on the right side of inputs
- * @param Int arrowTopHeight
- *
- * @public
- */
- setRightArrowWidth : function(arrowRightWidth)
- {
- this.arrowRightWidth = arrowRightWidth;
- }
-
- // }}}
- ,
- // {{{ setPageBgColor()
- /**
- *
- *
- * Specify background color of page.
- * @param String pageBgColor
- *
- * @public
- */
- setPageBgColor : function(pageBgColor)
- {
- this.pageBgColor = pageBgColor;
- }
-
- // }}}
- ,
- // {{{ __hideTooltip()
- /**
- *
- *
- * This method displays the tooltip
- *
- *
- * @private
- */
- __displayTooltip : function()
- {
- if(DHTMLgoodies_globalTooltipObj.disableTooltipByCookie){
- var cookieValue = DHTMLgoodies_globalTooltipObj.getCookie(DHTMLgoodies_globalTooltipObj.cookieName) + '';
- if(cookieValue=='1')DHTMLgoodies_globalTooltipObj.tooltipDisabled = true;
- }
-
- if(DHTMLgoodies_globalTooltipObj.tooltipDisabled)return; // Tooltip disabled
- var tooltipText = this.getAttribute('tooltipText');
- DHTMLgoodies_globalTooltipObj.activeInput = this;
-
- if(!tooltipText)tooltipText = this.tooltipText;
- DHTMLgoodies_globalTooltipObj.tooltipText = tooltipText;
-
-
- if(!DHTMLgoodies_globalTooltipObj.tooltipDiv)DHTMLgoodies_globalTooltipObj.__createTooltip();
-
- DHTMLgoodies_globalTooltipObj.__positionTooltip(this);
-
-
-
-
- DHTMLgoodies_globalTooltipObj.tooltipContentDiv.innerHTML = tooltipText;
- DHTMLgoodies_globalTooltipObj.tooltipDiv.style.display='block';
-
- if(DHTMLgoodies_globalTooltipObj.isMSIE){
- if(DHTMLgoodies_globalTooltipObj.tooltipPosition == 'below'){
- DHTMLgoodies_globalTooltipObj.tooltipIframeObj.style.height = (DHTMLgoodies_globalTooltipObj.tooltipDiv.clientHeight - DHTMLgoodies_globalTooltipObj.arrowTopHeight);
- }else{
- DHTMLgoodies_globalTooltipObj.tooltipIframeObj.style.height = (DHTMLgoodies_globalTooltipObj.tooltipDiv.clientHeight);
- }
- }
-
- }
- // }}}
- ,
- // {{{ __hideTooltip()
- /**
- *
- *
- * This function hides the tooltip
- *
- *
- * @private
- */
- __hideTooltip : function()
- {
- try{
- DHTMLgoodies_globalTooltipObj.tooltipDiv.style.display='none';
- }catch(e){
- }
-
- }
- // }}}
- ,
- // {{{ getSrcElement()
- /**
- *
- *
- * Return the source of an event.
- *
- *
- * @private
- */
- getSrcElement : function(e)
- {
- var el;
- if (e.target) el = e.target;
- else if (e.srcElement) el = e.srcElement;
- if (el.nodeType == 3) // defeat Safari bug
- el = el.parentNode;
- return el;
- }
- // }}}
- ,
- __autoHideTooltip : function(e)
- {
- if(document.all)e = event;
- var src = this.getSrcElement(e);
- if(src.tagName.toLowerCase()!='input' && src.tagName.toLowerCase().toLowerCase()!='textarea' && src.tagName.toLowerCase().toLowerCase()!='select')this.__hideTooltip();
-
- var attr = src.getAttribute('tooltipText');
- if(!attr)attr = src.tooltipText;
- if(!attr){
- this.__hideTooltip();
- }
-
- }
- // }}}
- ,
- // {{{ __hideTooltipFromLink()
- /**
- *
- *
- * This function hides the tooltip
- *
- *
- * @private
- */
- __hideTooltipFromLink : function()
- {
-
- this.activeInput.focus();
- window.refToThis = this;
- setTimeout('window.refToThis.__hideTooltip()',10);
- }
- // }}}
- ,
- // {{{ disableTooltip()
- /**
- *
- *
- * Hide tooltip and disable it
- *
- *
- * @public
- */
- disableTooltip : function()
- {
- this.__hideTooltipFromLink();
- if(this.disableTooltipByCookie)this.setCookie(this.cookieName,'1',500);
- this.tooltipDisabled = true;
- }
- // }}}
- ,
- // {{{ __positionTooltip()
- /**
- *
- *
- * This function creates the tooltip elements
- *
- *
- * @private
- */
- __createTooltip : function()
- {
- this.tooltipDiv = document.createElement('DIV');
- this.tooltipDiv.style.position = 'absolute';
-
- if(this.displayArrow){
- var topDiv = document.createElement('DIV');
-
- if(this.tooltipPosition=='below'){
-
- topDiv.style.marginLeft = '20px';
- var arrowDiv = document.createElement('IMG');
- arrowDiv.src = this.imagePath + this.arrowImageFile + '?rand='+ Math.random();
- arrowDiv.style.display='block';
- topDiv.appendChild(arrowDiv);
-
- }else{
- topDiv.style.marginTop = '5px';
- var arrowDiv = document.createElement('IMG');
- arrowDiv.src = this.imagePath + this.arrowImageFileRight + '?rand='+ Math.random();
- arrowDiv.style.display='block';
- topDiv.appendChild(arrowDiv);
- topDiv.style.position = 'absolute';
- }
-
- this.tooltipDiv.appendChild(topDiv);
- }
-
- var outerDiv = document.createElement('DIV');
- outerDiv.style.position = 'relative';
- outerDiv.style.zIndex = 1000;
- if(this.tooltipPosition!='below' && this.displayArrow){
- outerDiv.style.left = this.arrowRightWidth + 'px';
- }
-
- outerDiv.id = 'DHTMLgoodies_formTooltipDiv';
- outerDiv.className = 'DHTMLgoodies_formTooltipDiv';
- outerDiv.style.backgroundColor = this.tooltipBgColor;
- this.tooltipDiv.appendChild(outerDiv);
-
- if(this.isMSIE){
- this.tooltipIframeObj = document.createElement('<IFRAME name="tooltipIframeObj" width="' + this.tooltipWidth + '" frameborder="no" src="about:blank"></IFRAME>');
- this.tooltipIframeObj.style.position = 'absolute';
- this.tooltipIframeObj.style.top = '0px';
- this.tooltipIframeObj.style.left = '0px';
- this.tooltipIframeObj.style.width = (this.tooltipWidth) + 'px';
- this.tooltipIframeObj.style.zIndex = 100;
- this.tooltipIframeObj.background = this.pageBgColor;
- this.tooltipIframeObj.style.backgroundColor= this.pageBgColor;
- this.tooltipDiv.appendChild(this.tooltipIframeObj);
- if(this.tooltipPosition!='below' && this.displayArrow){
- this.tooltipIframeObj.style.left = (this.arrowRightWidth) + 'px';
- }else{
- this.tooltipIframeObj.style.top = this.arrowTopHeight + 'px';
- }
-
- setTimeout("self.frames['tooltipIframeObj'].document.documentElement.style.backgroundColor='" + this.pageBgColor + "'",500);
-
- }
-
- this.tooltipContentDiv = document.createElement('DIV');
- this.tooltipContentDiv.style.position = 'relative';
- this.tooltipContentDiv.id = 'DHTMLgoodies_formTooltipContent';
- outerDiv.appendChild(this.tooltipContentDiv);
-
- var closeDiv = document.createElement('DIV');
- closeDiv.style.textAlign = 'center';
-
- closeDiv.innerHTML = '<A class="DHTMLgoodies_formTooltip_closeMessage" href="#" onclick="DHTMLgoodies_globalTooltipObj.__hideTooltipFromLink();return false">' + this.closeMessage + '</A>';
-
- if(this.disableTooltipPossibility){
- var tmpHTML = closeDiv.innerHTML;
- tmpHTML = tmpHTML + ' | <A class="DHTMLgoodies_formTooltip_closeMessage" href="#" onclick="DHTMLgoodies_globalTooltipObj.disableTooltip();return false">' + this.disableTooltipMessage + '</A>';
- closeDiv.innerHTML = tmpHTML;
- }
-
- outerDiv.appendChild(closeDiv);
-
- document.body.appendChild(this.tooltipDiv);
-
-
-
- if(this.tooltipCornerSize>0){
- this.roundedCornerObj = new DHTMLgoodies_roundedCorners();
- // (divId,xRadius,yRadius,color,backgroundColor,padding,heightOfContent,whichCorners)
- this.roundedCornerObj.addTarget('DHTMLgoodies_formTooltipDiv',this.tooltipCornerSize,this.tooltipCornerSize,this.tooltipBgColor,this.pageBgColor,5);
- this.roundedCornerObj.init();
- }
-
-
- this.tooltipContentDiv = document.getElementById('DHTMLgoodies_formTooltipContent');
- }
- // }}}
- ,
- addEvent : function(whichObject,eventType,functionName)
- {
- if(whichObject.attachEvent){
- whichObject['e'+eventType+functionName] = functionName;
- whichObject[eventType+functionName] = function(){whichObject['e'+eventType+functionName]( window.event );}
- whichObject.attachEvent( 'on'+eventType, whichObject[eventType+functionName] );
- } else
- whichObject.addEventListener(eventType,functionName,false);
- }
- // }}}
- ,
- __positionCurrentToolTipObj : function()
- {
- if(DHTMLgoodies_globalTooltipObj.activeInput)this.__positionTooltip(DHTMLgoodies_globalTooltipObj.activeInput);
-
- }
- // }}}
- ,
- // {{{ __positionTooltip()
- /**
- *
- *
- * This function positions the tooltip
- *
- * @param Obj inputObj = Reference to text input
- *
- * @private
- */
- __positionTooltip : function(inputObj)
- {
- var offset = 0;
- if(!this.displayArrow)offset = 3;
- if(this.tooltipPosition=='below'){
- this.tooltipDiv.style.left = this.getLeftPos(inputObj)+ 'px';
- this.tooltipDiv.style.top = (this.getTopPos(inputObj) + inputObj.offsetHeight + offset) + 'px';
- }else{
-
- this.tooltipDiv.style.left = (this.getLeftPos(inputObj) + inputObj.offsetWidth + offset)+ 'px';
- this.tooltipDiv.style.top = this.getTopPos(inputObj) + 'px';
- }
- this.tooltipDiv.style.width=this.tooltipWidth + 'px';
-
- }
- ,
- // {{{ getTopPos()
- /**
- * This method will return the top coordinate(pixel) of an object
- *
- * @param Object inputObj = Reference to HTML element
- * @public
- */
- getTopPos : function(inputObj)
- {
- var returnValue = inputObj.offsetTop;
- while((inputObj = inputObj.offsetParent) != null){
- if(inputObj.tagName!='HTML'){
- returnValue += inputObj.offsetTop;
- if(document.all)returnValue+=inputObj.clientTop;
- }
- }
- return returnValue;
- }
- // }}}
-
- ,
- // {{{ getLeftPos()
- /**
- * This method will return the left coordinate(pixel) of an object
- *
- * @param Object inputObj = Reference to HTML element
- * @public
- */
- getLeftPos : function(inputObj)
- {
- var returnValue = inputObj.offsetLeft;
- while((inputObj = inputObj.offsetParent) != null){
- if(inputObj.tagName!='HTML'){
- returnValue += inputObj.offsetLeft;
- if(document.all)returnValue+=inputObj.clientLeft;
- }
- }
- return returnValue;
- }
-
- ,
-
- // {{{ getCookie()
- /**
- *
- * These cookie functions are downloaded from
- * http://www.mach5.com/support/analyzer/manual/html/General/CookiesJavaScript.htm
- *
- * This function returns the value of a cookie
- *
- * @param String name = Name of cookie
- * @param Object inputObj = Reference to HTML element
- * @public
- */
- getCookie : function(name) {
- var start = document.cookie.indexOf(name+"=");
- var len = start+name.length+1;
- if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
- if (start == -1) return null;
- var end = document.cookie.indexOf(";",len);
- if (end == -1) end = document.cookie.length;
- return unescape(document.cookie.substring(len,end));
- }
- // }}}
- ,
-
- // {{{ setCookie()
- /**
- *
- * These cookie functions are downloaded from
- * http://www.mach5.com/support/analyzer/manual/html/General/CookiesJavaScript.htm
- *
- * This function creates a cookie. (This method has been slighhtly modified)
- *
- * @param String name = Name of cookie
- * @param String value = Value of cookie
- * @param Int expires = Timestamp - days
- * @param String path = Path for cookie (Usually left empty)
- * @param String domain = Cookie domain
- * @param Boolean secure = Secure cookie(SSL)
- *
- * @public
- */
- setCookie : function(name,value,expires,path,domain,secure) {
- expires = expires * 60*60*24*1000;
- var today = new Date();
- var expires_date = new Date( today.getTime() + (expires) );
- var cookieString = name + "=" +escape(value) +
- ( (expires) ? ";expires=" + expires_date.toGMTString() : "") +
- ( (path) ? ";path=" + path : "") +
- ( (domain) ? ";domain=" + domain : "") +
- ( (secure) ? ";secure" : "");
- document.cookie = cookieString;
- }
- // }}}
-
-
-} \ No newline at end of file
diff --git a/usecaseui-common/src/main/webapp/static/fusion/raptor/js/rounded-corners.js b/usecaseui-common/src/main/webapp/static/fusion/raptor/js/rounded-corners.js
deleted file mode 100644
index f5df01ce..00000000
--- a/usecaseui-common/src/main/webapp/static/fusion/raptor/js/rounded-corners.js
+++ /dev/null
@@ -1,353 +0,0 @@
-/************************************************************************************************************<br>
-<br>
- @fileoverview
- Rounded corners class<br>
- (C) www.dhtmlgoodies.com, September 2006<br>
- <br>
- This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website. <br>
- <br>
- Terms of use:<br>
- Look at the terms of use at http://www.dhtmlgoodies.com/index.html?page=termsOfUse<br>
- <br>
- Thank you!<br>
- <br>
- www.dhtmlgoodies.com<br>
- Alf Magne Kalleland<br>
-<br>
-************************************************************************************************************/
-
-// {{{ Constructor
-function DHTMLgoodies_roundedCorners()
-{
- var roundedCornerTargets;
-
- this.roundedCornerTargets = new Array();
-
-}
- var string = '';
-// }}}
-DHTMLgoodies_roundedCorners.prototype = {
-
- // {{{ addTarget()
- /**
- *
- *
- * Add rounded corners to an element
- *
- * @param String divId = Id of element on page. Example "leftColumn" for &lt;div id="leftColumn">
- * @param Int xRadius = Y radius of rounded corners, example 10
- * @param Int yRadius = Y radius of rounded corners, example 10
- * @param String color = Background color of element, example #FFF or #AABBCC
- * @param String color = backgroundColor color of element "behind", example #FFF or #AABBCC
- * @param Int padding = Padding of content - This will be added as left and right padding(not top and bottom)
- * @param String heightOfContent = Optional argument. You can specify a fixed height of your content. example "15" which means pixels, or "50%".
- * @param String whichCorners = Optional argument. Commaseparated list of corners, example "top_left,top_right,bottom_left"
- *
- * @public
- */
- addTarget : function(divId,xRadius,yRadius,color,backgroundColor,padding,heightOfContent,whichCorners)
- {
- var index = this.roundedCornerTargets.length;
- this.roundedCornerTargets[index] = new Array();
- this.roundedCornerTargets[index]['divId'] = divId;
- this.roundedCornerTargets[index]['xRadius'] = xRadius;
- this.roundedCornerTargets[index]['yRadius'] = yRadius;
- this.roundedCornerTargets[index]['color'] = color;
- this.roundedCornerTargets[index]['backgroundColor'] = backgroundColor;
- this.roundedCornerTargets[index]['padding'] = padding;
- this.roundedCornerTargets[index]['heightOfContent'] = heightOfContent;
- this.roundedCornerTargets[index]['whichCorners'] = whichCorners;
-
- }
- // }}}
- ,
- // {{{ init()
- /**
- *
- *
- * Initializes the script
- *
- *
- * @public
- */
- init : function()
- {
-
- for(var targetCounter=0;targetCounter < this.roundedCornerTargets.length;targetCounter++){
-
- // Creating local variables of each option
- whichCorners = this.roundedCornerTargets[targetCounter]['whichCorners'];
- divId = this.roundedCornerTargets[targetCounter]['divId'];
- xRadius = this.roundedCornerTargets[targetCounter]['xRadius'];
- yRadius = this.roundedCornerTargets[targetCounter]['yRadius'];
- color = this.roundedCornerTargets[targetCounter]['color'];
- backgroundColor = this.roundedCornerTargets[targetCounter]['backgroundColor'];
- padding = this.roundedCornerTargets[targetCounter]['padding'];
- heightOfContent = this.roundedCornerTargets[targetCounter]['heightOfContent'];
- whichCorners = this.roundedCornerTargets[targetCounter]['whichCorners'];
-
- // Which corners should we add rounded corners to?
- var cornerArray = new Array();
- if(!whichCorners || whichCorners=='all'){
- cornerArray['top_left'] = true;
- cornerArray['top_right'] = true;
- cornerArray['bottom_left'] = true;
- cornerArray['bottom_right'] = true;
- }else{
- cornerArray = whichCorners.split(/,/gi);
- for(var prop in cornerArray)cornerArray[cornerArray[prop]] = true;
- }
-
-
- var factorX = xRadius/yRadius; // How big is x radius compared to y radius
-
- var obj = document.getElementById(divId); // Creating reference to element
- obj.style.backgroundColor=null; // Setting background color blank
- obj.style.backgroundColor='transparent';
- var content = obj.innerHTML; // Saving HTML content of this element
- obj.innerHTML = ''; // Setting HTML content of element blank-
-
-
-
-
- // Adding top corner div.
-
- if(cornerArray['top_left'] || cornerArray['top_right']){
- var topBar_container = document.createElement('DIV');
- topBar_container.style.height = yRadius + 'px';
- topBar_container.style.overflow = 'hidden';
-
- obj.appendChild(topBar_container);
- var currentAntialiasSize = 0;
- var savedRestValue = 0;
-
- for(no=1;no<=yRadius;no++){
- var marginSize = (xRadius - (this.getY((yRadius - no),yRadius,factorX)));
- var marginSize_decimals = (xRadius - (this.getY_withDecimals((yRadius - no),yRadius,factorX)));
- var restValue = xRadius - marginSize_decimals;
- var antialiasSize = xRadius - marginSize - Math.floor(savedRestValue)
- var foregroundSize = xRadius - (marginSize + antialiasSize);
-
- var el = document.createElement('DIV');
- el.style.overflow='hidden';
- el.style.height = '1px';
- if(cornerArray['top_left'])el.style.marginLeft = marginSize + 'px';
- if(cornerArray['top_right'])el.style.marginRight = marginSize + 'px';
- topBar_container.appendChild(el);
- var y = topBar_container;
-
- for(var no2=1;no2<=antialiasSize;no2++){
- switch(no2){
- case 1:
- if (no2 == antialiasSize)
- blendMode = ((restValue + savedRestValue) /2) - foregroundSize;
- else {
- var tmpValue = this.getY_withDecimals((xRadius - marginSize - no2),xRadius,1/factorX);
- blendMode = (restValue - foregroundSize - antialiasSize + 1) * (tmpValue - (yRadius - no)) /2;
- }
- break;
- case antialiasSize:
- var tmpValue = this.getY_withDecimals((xRadius - marginSize - no2 + 1),xRadius,1/factorX);
- blendMode = 1 - (1 - (tmpValue - (yRadius - no))) * (1 - (savedRestValue - foregroundSize)) /2;
- break;
- default:
- var tmpValue2 = this.getY_withDecimals((xRadius - marginSize - no2),xRadius,1/factorX);
- var tmpValue = this.getY_withDecimals((xRadius - marginSize - no2 + 1),xRadius,1/factorX);
- blendMode = ((tmpValue + tmpValue2) / 2) - (yRadius - no);
- }
-
- el.style.backgroundColor = this.__blendColors(backgroundColor,color,blendMode);
- y.appendChild(el);
- y = el;
- var el = document.createElement('DIV');
- el.style.height = '1px';
- el.style.overflow='hidden';
- if(cornerArray['top_left'])el.style.marginLeft = '1px';
- if(cornerArray['top_right'])el.style.marginRight = '1px';
- el.style.backgroundColor=color;
- }
-
- y.appendChild(el);
- savedRestValue = restValue;
- }
- }
-
- // Add content
- var contentDiv = document.createElement('DIV');
- contentDiv.className = obj.className;
- contentDiv.style.border='1px solid ' + color;
- contentDiv.innerHTML = content;
- contentDiv.style.backgroundColor=color;
- contentDiv.style.paddingLeft = padding + 'px';
- contentDiv.style.paddingRight = padding + 'px';
-
- if(!heightOfContent)heightOfContent = '';
- heightOfContent = heightOfContent + '';
- if(heightOfContent.length>0 && heightOfContent.indexOf('%')==-1)heightOfContent = heightOfContent + 'px';
- if(heightOfContent.length>0)contentDiv.style.height = heightOfContent;
-
- obj.appendChild(contentDiv);
-
-
- if(cornerArray['bottom_left'] || cornerArray['bottom_right']){
- var bottomBar_container = document.createElement('DIV');
- bottomBar_container.style.height = yRadius + 'px';
- bottomBar_container.style.overflow = 'hidden';
-
- obj.appendChild(bottomBar_container);
- var currentAntialiasSize = 0;
- var savedRestValue = 0;
-
- var errorOccured = false;
- var arrayOfDivs = new Array();
- for(no=1;no<=yRadius;no++){
-
- var marginSize = (xRadius - (this.getY((yRadius - no),yRadius,factorX)));
- var marginSize_decimals = (xRadius - (this.getY_withDecimals((yRadius - no),yRadius,factorX)));
-
- var restValue = (xRadius - marginSize_decimals);
- var antialiasSize = xRadius - marginSize - Math.floor(savedRestValue)
- var foregroundSize = xRadius - (marginSize + antialiasSize);
-
- var el = document.createElement('DIV');
- el.style.overflow='hidden';
- el.style.height = '1px';
- if(cornerArray['bottom_left'])el.style.marginLeft = marginSize + 'px';
- if(cornerArray['bottom_right'])el.style.marginRight = marginSize + 'px';
- bottomBar_container.insertBefore(el,bottomBar_container.firstChild);
-
- var y = bottomBar_container;
-
- for(var no2=1;no2<=antialiasSize;no2++){
- switch(no2){
- case 1:
- if (no2 == antialiasSize)
- blendMode = ((restValue + savedRestValue) /2) - foregroundSize;
- else {
- var tmpValue = this.getY_withDecimals((xRadius - marginSize - no2),xRadius,1/factorX);
- blendMode = (restValue - foregroundSize - antialiasSize + 1) * (tmpValue - (yRadius - no)) /2;
- }
- break;
- case antialiasSize:
- var tmpValue = this.getY_withDecimals((xRadius - marginSize - no2 + 1),xRadius,1/factorX);
- blendMode = 1 - (1 - (tmpValue - (yRadius - no))) * (1 - (savedRestValue - foregroundSize)) /2;
- break;
- default:
- var tmpValue2 = this.getY_withDecimals((xRadius - marginSize - no2),xRadius,1/factorX);
- var tmpValue = this.getY_withDecimals((xRadius - marginSize - no2 + 1),xRadius,1/factorX);
- blendMode = ((tmpValue + tmpValue2) / 2) - (yRadius - no);
- }
-
- el.style.backgroundColor = this.__blendColors(backgroundColor,color,blendMode);
-
- if(y==bottomBar_container)arrayOfDivs[arrayOfDivs.length] = el;
-
- try{ // Need to look closer at this problem which occures in Opera.
- var firstChild = y.getElementsByTagName('DIV')[0];
- y.insertBefore(el,y.firstChild);
- }catch(e){
- y.appendChild(el);
- errorOccured = true;
- }
- y = el;
-
- var el = document.createElement('DIV');
- el.style.height = '1px';
- el.style.overflow='hidden';
- if(cornerArray['bottom_left'])el.style.marginLeft = '1px';
- if(cornerArray['bottom_right'])el.style.marginRight = '1px';
-
- }
-
- if(errorOccured){ // Opera fix
- for(var divCounter=arrayOfDivs.length-1;divCounter>=0;divCounter--){
- bottomBar_container.appendChild(arrayOfDivs[divCounter]);
- }
- }
-
- el.style.backgroundColor=color;
- y.appendChild(el);
- savedRestValue = restValue;
- }
-
- }
- }
- }
- // }}}
- ,
- // {{{ getY()
- /**
- *
- *
- * Add rounded corners to an element
- *
- * @param Int x = x Coordinate
- * @param Int maxX = Size of rounded corners
- *
- *
- * @private
- */
- getY : function(x,maxX,factorX){
- // y = sqrt(100 - x^2)
- // Y = 0.5 * ((100 - x^2)^0.5);
- return Math.max(0,Math.ceil(factorX * Math.sqrt( (maxX * maxX) - (x*x)) ));
-
- }
- // }}}
- ,
- // {{{ getY_withDecimals()
- /**
- *
- *
- * Add rounded corners to an element
- *
- * @param Int x = x Coordinate
- * @param Int maxX = Size of rounded corners
- *
- *
- * @private
- */
- getY_withDecimals : function(x,maxX,factorX){
- // y = sqrt(100 - x^2)
- // Y = 0.5 * ((100 - x^2)^0.5);
- return Math.max(0,factorX * Math.sqrt( (maxX * maxX) - (x*x)) );
-
- }
-
-
- ,
-
- // {{{ __blendColors()
- /**
- *
- *
- * Simply blending two colors by extracting red, green and blue and subtracting difference between colors from them.
- * Finally, we multiply it with the blendMode value
- *
- * @param String colorA = RGB color
- * @param String colorB = RGB color
- * @param Float blendMode
- *
- *
- * @private
- */
- __blendColors : function (colorA, colorB, blendMode) {
- if(colorA.length=='4'){ // In case we are dealing with colors like #FFF
- colorA = '#' + colorA.substring(1,1) + colorA.substring(1,1) + colorA.substring(2,1) + colorA.substring(2,1) + colorA.substring(3,1) + colorA.substring(3,1);
- }
- if(colorB.length=='4'){ // In case we are dealing with colors like #FFF
- colorB = '#' + colorB.substring(1,1) + colorB.substring(1,1) + colorB.substring(2,1) + colorB.substring(2,1) + colorB.substring(3,1) + colorB.substring(3,1);
- }
- var colorArrayA = [parseInt('0x' + colorA.substring(1,3)), parseInt('0x' + colorA.substring(3, 5)), parseInt('0x' + colorA.substring(5, 7))]; // Create array of Red, Green and Blue ( 0-255)
- var colorArrayB = [parseInt('0x' + colorB.substring(1,3)), parseInt('0x' + colorB.substring(3, 5)), parseInt('0x' + colorB.substring(5, 7))]; // Create array of Red, Green and Blue ( 0-255)
- var red = Math.round(colorArrayA[0] + (colorArrayB[0] - colorArrayA[0])*blendMode).toString(16); // Create new Red color ( Hex )
- var green = Math.round(colorArrayA[1] + (colorArrayB[1] - colorArrayA[1])*blendMode).toString(16); // Create new Green color ( Hex )
- var blue = Math.round(colorArrayA[2] + (colorArrayB[2] - colorArrayA[2])*blendMode).toString(16); // Create new Blue color ( Hex )
-
- if(red.length==1)red = '0' + red;
- if(green.length==1)green = '0' + green;
- if(blue.length==1)blue = '0' + blue;
-
- return '#' + red + green+ blue; // Return new RGB color
- }
-}