diff --git a/app/includes/header.tpl b/app/includes/header.tpl index 2929a8220b..5d15f72ad9 100644 --- a/app/includes/header.tpl +++ b/app/includes/header.tpl @@ -53,7 +53,7 @@
Your file is encrypted. Please enter the password:
Your single HD mnemonic phrase can access a number of wallets / addresses. Please select the address you would like to interact with at this time.
<div ng-bind-html="snippet"></div>
<div ng-bind-html="deliberatelyTrustDangerousSnippet()"> -</div>
<div ng-bind="snippet"></div>
an html\nclick here\nsnippet
an html\n" + - "click here\n" + - "snippet
By enabling this setting without taking other precautions, you might expose your - * application to click-hijacking attacks. In these attacks, sanitized svg elements could be positioned - * outside of the containing element and be rendered over other elements on the page (e.g. a login - * link). Such behavior can then result in phishing incidents.
To protect against these, explicitly setup `overflow: hidden` css rule for all potential svg - * tags within the sanitized content:
- * .rootOfTheIncludedContent svg { - * overflow: hidden !important; - * } - *
<div ng-bind-html="deliberatelyTrustDangerousSnippet()"> + </div>
an html\n" + + "click here\n" + + "snippet
By enabling this setting without taking other precautions, you might expose your + * application to click-hijacking attacks. In these attacks, sanitized svg elements could be positioned + * outside of the containing element and be rendered over other elements on the page (e.g. a login + * link). Such behavior can then result in phishing incidents.
To protect against these, explicitly setup `overflow: hidden` css rule for all potential svg + * tags within the sanitized content:
+ * .rootOfTheIncludedContent svg { + * overflow: hidden !important; + * } + *
<div ng-bind-html="snippet | linky"></div>
<div ng-bind-html="snippetWithSingleURL | linky:'_blank'"></div>
<div ng-bind-html="snippetWithSingleURL | linky:'_self':{rel: 'nofollow'}"></div>
- * // register translation table for language: 'de_DE' - * $translateProvider.translations('de_DE', { - * 'GREETING': 'Hallo Welt!' - * }); - * - * // register another one - * $translateProvider.translations('en_US', { - * 'GREETING': 'Hello world!' - * }); - *
+ * // register translation table for language: 'de_DE' + * $translateProvider.translations('de_DE', { + * 'GREETING': 'Hallo Welt!' + * }); + * + * // register another one + * $translateProvider.translations('en_US', { + * 'GREETING': 'Hello world!' + * }); + *
- * app.config(function ($translateProvider) { - * $translateProvider.useMissingTranslationHandler('customHandler'); - * }); - * - * app.factory('customHandler', function (dep1, dep2) { - * return function (translationId) { - * // something with translationId and dep1 and dep2 - * }; - * }); - *
- * app.config(function ($translateProvider) { - * $translateProvider.usePostCompiling(true); - * }); - *
- * app.config(function ($translateProvider) { - * $translateProvider.forceAsyncReload(true); - * }); - *
- * $translateProvider - * .uniformLanguageTag('bcp47') - * .determinePreferredLanguage() - *
- * app.config(function ($translateProvider) { - * $translateProvider.keepContent(true); - * }); - *
- * $translate('HEADLINE_TEXT').then(function (translation) { - * $scope.translatedText = translation; - * }); - *
+ * app.config(function ($translateProvider) { + * $translateProvider.useMissingTranslationHandler('customHandler'); + * }); + * + * app.factory('customHandler', function (dep1, dep2) { + * return function (translationId) { + * // something with translationId and dep1 and dep2 + * }; + * }); + *
+ * app.config(function ($translateProvider) { + * $translateProvider.usePostCompiling(true); + * }); + *
+ * app.config(function ($translateProvider) { + * $translateProvider.forceAsyncReload(true); + * }); + *
+ * $translateProvider + * .uniformLanguageTag('bcp47') + * .determinePreferredLanguage() + *
+ * app.config(function ($translateProvider) { + * $translateProvider.keepContent(true); + * }); + *
+ * $translate('HEADLINE_TEXT').then(function (translation) { + * $scope.translatedText = translation; + * }); + *
TRANSLATION_ID
{{translationId}}
WITH_VALUES
{{ 'TRANSLATION_ID' | translate }}
{{ translationId | translate }}
{{ 'WITH_VALUES' | translate:'{value: 5}' }}
{{ 'WITH_VALUES' | translate:values }}
form = {{user | json}}
master = {{master | json}}
{{user1 | json}}
{{user2 | json}}
{{result}}
This renders because the controller does not fail to - instantiate, by using explicit annotation style (see - script.js for details) -
This renders because the controller does not fail to - instantiate, by using explicit annotation style - (see script.js for details) -
The controller could not be instantiated, due to relying - on automatic function annotations (which are disabled in - strict mode). As such, the content of this section is not - interpolated, and there should be an error in your web console. -
This renders because the controller does not fail to + instantiate, by using explicit annotation style (see + script.js for details) +
This renders because the controller does not fail to + instantiate, by using explicit annotation style + (see script.js for details) +
The controller could not be instantiated, due to relying + on automatic function annotations (which are disabled in + strict mode). As such, the content of this section is not + interpolated, and there should be an error in your web console. +
Cached Values
Cache Info
{{ $ctrl.log | json }}
{{ items }}
{{total}}
ngBind
ng-bind
$document title:
window.document title:
http status code: {{status}}
http response data: {{data}}
{{apptitle}}: \{\{ username = "defaced value"; \}\} - *
{{username}} attempts to inject code which will deface the - * application, but fails to accomplish their task, because the server has correctly - * escaped the interpolation start/end markers with REVERSE SOLIDUS U+005C (backslash) - * characters.
Instead, the result of the attempted script injection is visible, and can be removed - * from the database by an administrator.
{{apptitle}}: \{\{ username = "defaced value"; \}\} + *
{{username}} attempts to inject code which will deface the + * application, but fails to accomplish their task, because the server has correctly + * escaped the interpolation start/end markers with REVERSE SOLIDUS U+005C (backslash) + * characters.
Instead, the result of the attempted script injection is visible, and can be removed + * from the database by an administrator.
Reload this page with open console, enter text and hit the log button...
{{ {'name':'value'} | json }}
{{ {'name':'value'} | json:4 }}
Output numbers: {{ numbers | limitTo:numLimit }}
Output letters: {{ letters | limitTo:letterLimit }}
Output long number: {{ longNumber | limitTo:longNumberLimit }}
Sort by = {{propertyName}}; reverse = {{reverse}}
- * //be sure to include ngAnimate as a module to hook into more - * //advanced animations - * .my-form { - * transition:0.5s linear all; - * background: white; - * } - * .my-form.ng-invalid { - * background: red; - * color:white; - * } - *
userType = {{userType}}
myForm.input.$valid = {{myForm.input.$valid}}
myForm.input.$error = {{myForm.input.$error}}
myForm.$valid = {{myForm.$valid}}
myForm.$error.required = {{!!myForm.$error.required}}
text = {{example.text}}
+ * //be sure to include ngAnimate as a module to hook into more + * //advanced animations + * .my-form { + * transition:0.5s linear all; + * background: white; + * } + * .my-form.ng-invalid { + * background: red; + * color:white; + * } + *
+ * In v1.5.9+, in order to avoid interfering with already existing, custom directives for + * `input[range]`, you need to let Angular know that you want to enable its built-in support. + * You can do this by adding the `ng-input-range` attribute to the input element. E.g.: + * `` + *
+ * Input elements without the `ng-input-range` attibute will continue to be treated the same + * as in previous versions (e.g. their model value will be a string not a number and Angular + * will not take `min`/`max`/`step` attributes and properties into account). + *
+ * **Note:** From v1.6.x onwards, the support for `input[range]` will be always enabled and + * the `ng-input-range` attribute will have no effect. + *
+ * This documentation page refers to elements which have the built-in support enabled; i.e. + * elements _with_ the `ng-input-range` attribute. + *
{{value}}
{{myForm.range.$valid}}
{{myForm.range.$error}}
HTML
Map Syntax Example
Using String Syntax
Using Array Syntax
Using Array and Map Syntax
list={{list}}
Typing in the input box below updates the key count
Typing in the input box below updates the keycode
event keyCode: {{ event.keyCode }}
event altKey: {{ event.altKey }}
{{template.url}}
- * `` - *
+ * `` + *
{{ list | json }}
Both of these inputs are only updated if they are blurred. Hitting escape should - * empty them. Follow these steps and observe the difference:
Without $rollbackViewValue():
With $rollbackViewValue():
Both of these inputs are only updated if they are blurred. Hitting escape should + * empty them. Follow these steps and observe the difference:
+ * //be sure to include ngAnimate as a module to hook into more + * //advanced animations + * .my-input { + * transition:0.5s linear all; + * background: white; + * } + * .my-input.ng-invalid { + * background: red; + * color:white; + * } + *
+ Update input to see transitions when valid/invalid. + Integer is a valid value. +
user.name =
- * //be sure to include ngAnimate as a module to hook into more - * //advanced animations - * .my-input { - * transition:0.5s linear all; - * background: white; - * } - * .my-input.ng-invalid { - * background: red; - * color:white; - * } - *
- Update input to see transitions when valid/invalid. - Integer is a valid value. -
user.data =