From e2b56e0d619bcdc5f055dc862280eb1f1a9a1a55 Mon Sep 17 00:00:00 2001 From: Bernhard Posselt Date: Thu, 12 Sep 2013 13:10:20 +0200 Subject: add fileextensions as hint to subscriptions export --- js/vendor/angular-sanitize/.bower.json | 18 + js/vendor/angular-sanitize/README.md | 4 + js/vendor/angular-sanitize/angular-sanitize.js | 549 +++++++++++++++++++++ js/vendor/angular-sanitize/angular-sanitize.min.js | 15 + .../angular-sanitize/angular-sanitize.min.js.map | 8 + js/vendor/angular-sanitize/bower.json | 8 + js/vendor/angular/angular.min.js.map | 8 + templates/part.settings.php | 2 +- 8 files changed, 611 insertions(+), 1 deletion(-) create mode 100644 js/vendor/angular-sanitize/.bower.json create mode 100644 js/vendor/angular-sanitize/README.md create mode 100755 js/vendor/angular-sanitize/angular-sanitize.js create mode 100755 js/vendor/angular-sanitize/angular-sanitize.min.js create mode 100755 js/vendor/angular-sanitize/angular-sanitize.min.js.map create mode 100644 js/vendor/angular-sanitize/bower.json create mode 100755 js/vendor/angular/angular.min.js.map diff --git a/js/vendor/angular-sanitize/.bower.json b/js/vendor/angular-sanitize/.bower.json new file mode 100644 index 000000000..fc5c4d41f --- /dev/null +++ b/js/vendor/angular-sanitize/.bower.json @@ -0,0 +1,18 @@ +{ + "name": "angular-sanitize", + "version": "1.2.0-rc.2", + "main": "./angular-sanitize.js", + "dependencies": { + "angular": "1.2.0-rc.2" + }, + "homepage": "https://github.com/angular/bower-angular-sanitize", + "_release": "1.2.0-rc.2", + "_resolution": { + "type": "version", + "tag": "v1.2.0-rc.2", + "commit": "f8f8a0ef8b60e04a31029a129199f038d3981d00" + }, + "_source": "git://github.com/angular/bower-angular-sanitize.git", + "_target": "1.2.0-rc.2", + "_originalSource": "angular-sanitize" +} \ No newline at end of file diff --git a/js/vendor/angular-sanitize/README.md b/js/vendor/angular-sanitize/README.md new file mode 100644 index 000000000..25d956510 --- /dev/null +++ b/js/vendor/angular-sanitize/README.md @@ -0,0 +1,4 @@ +bower-angular-sanitize +====================== + +angular-sanitize bower repo \ No newline at end of file diff --git a/js/vendor/angular-sanitize/angular-sanitize.js b/js/vendor/angular-sanitize/angular-sanitize.js new file mode 100755 index 000000000..762c949fb --- /dev/null +++ b/js/vendor/angular-sanitize/angular-sanitize.js @@ -0,0 +1,549 @@ +/** + * @license AngularJS v1.2.0-rc.2 + * (c) 2010-2012 Google, Inc. http://angularjs.org + * License: MIT + */ +(function(window, angular, undefined) {'use strict'; + +var $sanitizeMinErr = angular.$$minErr('$sanitize'); + +/** + * @ngdoc overview + * @name ngSanitize + * @description + * + * # ngSanitize + * + * The `ngSanitize` module provides functionality to sanitize HTML. + * + * {@installModule sanitize} + * + * 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 ngSanitize.$sanitize + * @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. + * + * @param {string} html Html input. + * @returns {string} Sanitized html. + * + * @example + + + +
+ Snippet: + + + + + + + + + + + + + + + + + + + + + + + + + +
DirectiveHowSourceRendered
ng-bind-htmlAutomatically uses $sanitize
<div ng-bind-html="snippet">
</div>
ng-bind-htmlBypass $sanitize by explicitly trusting the dangerous value
<div ng-bind-html="deliberatelyTrustDangerousSnippet()">
</div>
ng-bindAutomatically escapes
<div ng-bind="snippet">
</div>
+
+
+ + it('should sanitize the html snippet by default', function() { + expect(using('#bind-html-with-sanitize').element('div').html()). + toBe('

an html\nclick here\nsnippet

'); + }); + + it('should inline raw snippet if bound to a trusted value', function() { + expect(using('#bind-html-with-trust').element("div").html()). + toBe("

an html\n" + + "click here\n" + + "snippet

"); + }); + + it('should escape snippet without any filter', function() { + expect(using('#bind-default').element('div').html()). + toBe("<p style=\"color:blue\">an html\n" + + "<em onmouseover=\"this.textContent='PWN3D!'\">click here</em>\n" + + "snippet</p>"); + }); + + it('should update', function() { + input('snippet').enter('new text'); + expect(using('#bind-html-with-sanitize').element('div').html()).toBe('new text'); + expect(using('#bind-html-with-trust').element('div').html()).toBe('new text'); + expect(using('#bind-default').element('div').html()).toBe("new <b onclick=\"alert(1)\">text</b>"); + }); +
+
+ */ +var $sanitize = function(html) { + var buf = []; + htmlParser(html, htmlSanitizeWriter(buf)); + return buf.join(''); +}; + + +// Regular Expressions for parsing tags and attributes +var START_TAG_REGEXP = /^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/, + END_TAG_REGEXP = /^<\s*\/\s*([\w:-]+)[^>]*>/, + ATTR_REGEXP = /([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g, + BEGIN_TAG_REGEXP = /^/g, + CDATA_REGEXP = //g, + URI_REGEXP = /^((ftp|https?):\/\/|mailto:|tel:|#)/i, + NON_ALPHANUMERIC_REGEXP = /([^\#-~| |!])/g; // Match everything outside of normal chars and " (quote character) + + +// 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")); + + +// Special Elements (can contain anything) +var specialElements = makeMap("script,style"); + +var validElements = angular.extend({}, voidElements, blockElements, inlineElements, optionalEndTagElements); + +//Attributes that have href and hence need to be sanitized +var uriAttrs = makeMap("background,cite,href,longdesc,src,usemap"); +var validAttrs = angular.extend({}, uriAttrs, 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,span,start,summary,target,title,type,'+ + 'valign,value,vspace,width')); + +function makeMap(str) { + var obj = {}, items = str.split(','), i; + for (i = 0; i < items.length; i++) obj[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 ) { + var index, chars, match, stack = [], last = html; + stack.last = function() { return stack[ stack.length - 1 ]; }; + + while ( html ) { + chars = true; + + // Make sure we're not in a script or style element + if ( !stack.last() || !specialElements[ stack.last() ] ) { + + // Comment + if ( html.indexOf(""); + + if ( index >= 0 ) { + if (handler.comment) handler.comment( html.substring( 4, index ) ); + html = html.substring( index + 3 ); + 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 ) { + html = html.substring( match[0].length ); + match[0].replace( START_TAG_REGEXP, parseStartTag ); + chars = false; + } + } + + if ( chars ) { + index = html.indexOf("<"); + + var text = index < 0 ? html : html.substring( 0, index ); + html = index < 0 ? "" : html.substring( index ); + + if (handler.chars) handler.chars( decodeEntities(text) ); + } + + } else { + html = html.replace(new RegExp("(.*)<\\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; + } + } +} + +/** + * decodes all entities into regular string + * @param value + * @returns {string} A string with decoded entities. + */ +var hiddenPre=document.createElement("pre"); +function decodeEntities(value) { + hiddenPre.innerHTML=value.replace(//g, '>'); +} + +/** + * 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){ + 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); + if (validAttrs[lkey]==true && (uriAttrs[lkey]!==true || value.match(URI_REGEXP))) { + out(' '); + out(key); + out('="'); + out(encodeEntities(value)); + out('"'); + } + }); + out(unary ? '/>' : '>'); + } + }, + end: function(tag){ + tag = angular.lowercase(tag); + if (!ignore && validElements[tag] == true) { + out(''); + } + if (tag == ignore) { + ignore = false; + } + }, + chars: function(chars){ + if (!ignore) { + out(encodeEntities(chars)); + } + } + }; +} + + +// define ngSanitize module and register $sanitize service +angular.module('ngSanitize', []).value('$sanitize', $sanitize); + +/** + * @ngdoc filter + * @name ngSanitize.filter:linky + * @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 + + * + * @example + + + +
+ Snippet: + + + + + + + + + + + + + + + + + + + + + +
FilterSourceRendered
linky filter +
<div ng-bind-html="snippet | linky">
</div>
+
+
+
linky target +
<div ng-bind-html="snippetWithTarget | linky:'_blank'">
</div>
+
+
+
no filter
<div ng-bind="snippet">
</div>
+ + + it('should linkify the snippet with urls', function() { + expect(using('#linky-filter').binding('snippet | linky')). + toBe('Pretty text with some links: ' + + 'http://angularjs.org/, ' + + 'us@somewhere.org, ' + + 'another@somewhere.org, ' + + 'and one more: ftp://127.0.0.1/.'); + }); + + it ('should not linkify snippet without the linky filter', function() { + expect(using('#escaped-html').binding('snippet')). + toBe("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/."); + }); + + it('should update', function() { + input('snippet').enter('new http://link.'); + expect(using('#linky-filter').binding('snippet | linky')). + toBe('new http://link.'); + expect(using('#escaped-html').binding('snippet')).toBe('new http://link.'); + }); + + it('should work with the target property', function() { + expect(using('#linky-target').binding("snippetWithTarget | linky:'_blank'")). + toBe('http://angularjs.org/'); + }); + + + */ +angular.module('ngSanitize').filter('linky', function() { + var LINKY_URL_REGEXP = /((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s\.\;\,\(\)\{\}\<\>]/, + MAILTO_REGEXP = /^mailto:/; + + return function(text, target) { + if (!text) return text; + var match; + var raw = text; + var html = []; + // TODO(vojta): use $sanitize instead + var writer = htmlSanitizeWriter(html); + var url; + var i; + var properties = {}; + if (angular.isDefined(target)) { + properties.target = target; + } + 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/mailto then assume mailto + if (match[2] == match[3]) url = 'mailto:' + url; + i = match.index; + writer.chars(raw.substr(0, i)); + properties.href = url; + writer.start('a', properties); + writer.chars(match[0].replace(MAILTO_REGEXP, '')); + writer.end('a'); + raw = raw.substring(i + match[0].length); + } + writer.chars(raw); + return html.join(''); + }; +}); + + +})(window, window.angular); diff --git a/js/vendor/angular-sanitize/angular-sanitize.min.js b/js/vendor/angular-sanitize/angular-sanitize.min.js new file mode 100755 index 000000000..fa90c9276 --- /dev/null +++ b/js/vendor/angular-sanitize/angular-sanitize.min.js @@ -0,0 +1,15 @@ +/* + AngularJS v1.2.0-rc.2 + (c) 2010-2012 Google, Inc. http://angularjs.org + License: MIT +*/ +(function(m,g,n){'use strict';function h(a){var d={};a=a.split(",");var c;for(c=0;c=c;k--)d.end&&d.end(e[k]);e.length= +c}}var b,f,e=[],l=a;for(e.last=function(){return e[e.length-1]};a;){f=!0;if(e.last()&&v[e.last()])a=a.replace(RegExp("(.*)<\\s*\\/\\s*"+e.last()+"[^>]*>","i"),function(a,b){b=b.replace(E,"$1").replace(F,"$1");d.chars&&d.chars(p(b));return""}),k("",e.last());else{if(0===a.indexOf("\x3c!--"))b=a.indexOf("--\x3e"),0<=b&&(d.comment&&d.comment(a.substring(4,b)),a=a.substring(b+3),f=!1);else if(G.test(a)){if(b=a.match(w))a=a.substring(b[0].length),b[0].replace(w,k),f=!1}else H.test(a)&&(b=a.match(x))&& +(a=a.substring(b[0].length),b[0].replace(x,c),f=!1);f&&(b=a.indexOf("<"),f=0>b?a:a.substring(0,b),a=0>b?"":a.substring(b),d.chars&&d.chars(p(f)))}if(a==l)throw I("badparse",a);l=a}k()}function p(a){q.innerHTML=a.replace(//g,">")}function z(a){var d=!1,c=g.bind(a,a.push);return{start:function(a,b,f){a=g.lowercase(a); +!d&&v[a]&&(d=a);d||!0!=A[a]||(c("<"),c(a),g.forEach(b,function(a,b){var d=g.lowercase(b);!0!=K[d]||!0===B[d]&&!a.match(L)||(c(" "),c(b),c('="'),c(y(a)),c('"'))}),c(f?"/>":">"))},end:function(a){a=g.lowercase(a);d||!0!=A[a]||(c(""));a==d&&(d=!1)},chars:function(a){d||c(y(a))}}}var I=g.$$minErr("$sanitize"),x=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,w=/^<\s*\/\s*([\w:-]+)[^>]*>/,D=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g, +H=/^]/,d=/^mailto:/;return function(c,k){if(!c)return c;var b,f=c,e=[],l=z(e),h,m,n={};g.isDefined(k)&&(n.target=k);for(;b=f.match(a);)h=b[0],b[2]==b[3]&&(h="mailto:"+h),m=b.index,l.chars(f.substr(0,m)),n.href=h,l.start("a",n),l.chars(b[0].replace(d,"")),l.end("a"),f=f.substring(m+b[0].length);l.chars(f);return e.join("")}})})(window,window.angular); +/* +//@ sourceMappingURL=angular-sanitize.min.js.map +*/ diff --git a/js/vendor/angular-sanitize/angular-sanitize.min.js.map b/js/vendor/angular-sanitize/angular-sanitize.min.js.map new file mode 100755 index 000000000..dcff45975 --- /dev/null +++ b/js/vendor/angular-sanitize/angular-sanitize.min.js.map @@ -0,0 +1,8 @@ +{ +"version":3, +"file":"angular-sanitize.min.js", +"lineCount":12, +"mappings":"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", +"sources":["angular-sanitize.js"], +"names":["window","angular","undefined","makeMap","str","obj","items","split","i","length","htmlParser","html","handler","parseStartTag","tag","tagName","rest","unary","lowercase","blockElements","stack","last","inlineElements","parseEndTag","optionalEndTagElements","voidElements","push","attrs","replace","ATTR_REGEXP","match","name","doubleQuotedValue","singleQuotedValue","unquotedValue","decodeEntities","start","pos","end","index","chars","stack.last","specialElements","RegExp","all","text","COMMENT_REGEXP","CDATA_REGEXP","indexOf","comment","substring","BEGING_END_TAGE_REGEXP","test","END_TAG_REGEXP","BEGIN_TAG_REGEXP","START_TAG_REGEXP","$sanitizeMinErr","value","hiddenPre","innerHTML","innerText","textContent","encodeEntities","NON_ALPHANUMERIC_REGEXP","charCodeAt","htmlSanitizeWriter","buf","ignore","out","bind","validElements","forEach","key","lkey","validAttrs","uriAttrs","URI_REGEXP","$$minErr","optionalEndTagBlockElements","optionalEndTagInlineElements","extend","document","createElement","module","$sanitize","join","filter","LINKY_URL_REGEXP","MAILTO_REGEXP","target","raw","writer","url","properties","isDefined","substr","href"] +} diff --git a/js/vendor/angular-sanitize/bower.json b/js/vendor/angular-sanitize/bower.json new file mode 100644 index 000000000..fd0541c01 --- /dev/null +++ b/js/vendor/angular-sanitize/bower.json @@ -0,0 +1,8 @@ +{ + "name": "angular-sanitize", + "version": "1.2.0-rc.2", + "main": "./angular-sanitize.js", + "dependencies": { + "angular": "1.2.0-rc.2" + } +} diff --git a/js/vendor/angular/angular.min.js.map b/js/vendor/angular/angular.min.js.map new file mode 100755 index 000000000..bbddbf0e6 --- /dev/null +++ b/js/vendor/angular/angular.min.js.map @@ -0,0 +1,8 @@ +{ +"version":3, +"file":"angular.min.js", +"lineCount":183, +"mappings":"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