Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
482 lines (481 sloc) 24.5 KB
---
---
<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>ng1_state_events | UI-Router</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<link rel="stylesheet" href="../assets/css/typedoctheme.css">
<script src="../assets/js/modernizr.js"></script>
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.js" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">UI-Router</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-externals" checked />
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
<input type="checkbox" id="tsd-filter-only-exported" />
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../globals.html">Globals</a>
</li>
<li>
<a href="ng1_state_events.html">ng1_state_events</a>
</li>
</ul>
<h1>External module ng1_state_events</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Provides implementation of the UI-Router 0.2.x state events.</p>
</div>
<p>The 0.2.x state events are deprecated. We recommend moving to Transition Hooks instead, as they
provide much more flexibility, support async, and provide the context (the Transition, etc) necessary
to implement meaningful application behaviors.</p>
<p>To enable these state events, include the <code>stateEvents.js</code> file in your project, e.g.,</p>
<pre><code><span class="hljs-tag">&lt;<span class="hljs-name">script</span> <span class="hljs-attr">src</span>=<span class="hljs-string">"stateEvents.js"</span>&gt;</span><span class="undefined"></span><span class="hljs-tag">&lt;/<span class="hljs-name">script</span>&gt;</span>
</code></pre><p>and also make sure you depend on the <code>ui.router.state.events</code> angular module, e.g.,</p>
<pre><code>angular.module(<span class="hljs-string">"myApplication"</span>, ['ui.router', 'ui.router.<span class="hljs-keyword">state</span>.events']
</code></pre>
<dl class="tsd-comment-tags">
<dt>module</dt>
<dd><p>ng1_state_events</p>
</dd>
</dl>
</div>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>Index</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section tsd-is-not-exported">
<h3>Events</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported"><a href="ng1_state_events.html#_statechangecancel" class="tsd-kind-icon">$state<wbr>Change<wbr>Cancel</a></li>
<li class="tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported"><a href="ng1_state_events.html#_statechangeerror" class="tsd-kind-icon">$state<wbr>Change<wbr>Error</a></li>
<li class="tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported"><a href="ng1_state_events.html#_statechangestart" class="tsd-kind-icon">$state<wbr>Change<wbr>Start</a></li>
<li class="tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported"><a href="ng1_state_events.html#_statechangesuccess" class="tsd-kind-icon">$state<wbr>Change<wbr>Success</a></li>
<li class="tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported"><a href="ng1_state_events.html#_statenotfound" class="tsd-kind-icon">$state<wbr>Not<wbr>Found</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group tsd-is-not-exported">
<h2>Events</h2>
<section class="tsd-panel tsd-member tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a name="_statechangecancel" class="tsd-anchor"></a>
<!---->
<!--<h3>$state<wbr>Change<wbr>Cancel</h3>-->
<!---->
<div class="tsd-signature tsd-kind-icon">$state<wbr>Change<wbr>Cancel<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span> <div class="tsd-header">
<p> An event broadcast on <code>$rootScope</code> if a transition is <strong>cancelled</strong>. </p>
</div>
</div>
<div class="tsd-declaration">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event broadcast on <code>$rootScope</code> if a transition is <strong>cancelled</strong>.</p>
</div>
<p>Additional arguments to the event handler are provided:</p>
<ul>
<li><code>toState</code>: the Transition Target state</li>
<li><code>toParams</code>: the Transition Target Params</li>
<li><code>fromState</code>: the state the transition is coming from</li>
<li><code>fromParams</code>: the parameters from the state the transition is coming from</li>
<li><code>options</code>: any Transition Options</li>
<li><code>$transition$</code>: the <a href="../classes/transition.transition-1.html">Transition</a> that was cancelled</li>
</ul>
<dl class="tsd-comment-tags">
<dt>deprecated</dt>
<dd></dd>
</dl>
</div>
</div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/angular-ui/ui-router/blob/70a237a/src/ng1/legacy/stateEvents.ts#L69">ng1/legacy/stateEvents.ts:69</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a name="_statechangeerror" class="tsd-anchor"></a>
<!---->
<!--<h3>$state<wbr>Change<wbr>Error</h3>-->
<!---->
<div class="tsd-signature tsd-kind-icon">$state<wbr>Change<wbr>Error<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span> <div class="tsd-header">
<p> An event broadcast on <code>$rootScope</code> when an <strong>error occurs</strong> during transition. </p>
</div>
</div>
<div class="tsd-declaration">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event broadcast on <code>$rootScope</code> when an <strong>error occurs</strong> during transition.</p>
</div>
<p>It&#39;s important to note that if you
have any errors in your resolve functions (javascript errors, non-existent services, etc)
they will not throw traditionally. You must listen for this $stateChangeError event to
catch <strong>ALL</strong> errors.</p>
<p>Additional arguments to the event handler are provided:</p>
<ul>
<li><code>toState</code>: the Transition Target state</li>
<li><code>toParams</code>: the Transition Target Params</li>
<li><code>fromState</code>: the state the transition is coming from</li>
<li><code>fromParams</code>: the parameters from the state the transition is coming from</li>
<li><code>error</code>: The reason the transition errored.</li>
<li><code>options</code>: any Transition Options</li>
<li><code>$transition$</code>: the <a href="../classes/transition.transition-1.html">Transition</a> that errored</li>
</ul>
<dl class="tsd-comment-tags">
<dt>deprecated</dt>
<dd><p>use <a href="../classes/transition.transitionservice.html#onstart">TransitionService.onStart</a> and <a href="../classes/transition.transition-1.html#promise">Transition.promise</a>, or <a href="../classes/transition.transition-1.html#onerror">Transition.onError</a></p>
</dd>
</dl>
</div>
</div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/angular-ui/ui-router/blob/70a237a/src/ng1/legacy/stateEvents.ts#L108">ng1/legacy/stateEvents.ts:108</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a name="_statechangestart" class="tsd-anchor"></a>
<!---->
<!--<h3>$state<wbr>Change<wbr>Start</h3>-->
<!---->
<div class="tsd-signature tsd-kind-icon">$state<wbr>Change<wbr>Start<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span> <div class="tsd-header">
<p> An event broadcast on <code>$rootScope</code> when the state transition <strong>begins</strong>. </p>
</div>
</div>
<div class="tsd-declaration">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event broadcast on <code>$rootScope</code> when the state transition <strong>begins</strong>.</p>
</div>
<p>You can use <code>event.preventDefault()</code>
to prevent the transition from happening and then the transition promise will be
rejected with a <code>&#39;transition prevented&#39;</code> value.</p>
<p>Additional arguments to the event handler are provided:</p>
<ul>
<li><code>toState</code>: the Transition Target state</li>
<li><code>toParams</code>: the Transition Target Params</li>
<li><code>fromState</code>: the state the transition is coming from</li>
<li><code>fromParams</code>: the parameters from the state the transition is coming from</li>
<li><code>options</code>: any Transition Options</li>
<li><code>$transition$</code>: the <a href="../classes/transition.transition-1.html">Transition</a></li>
</ul>
<dl class="tsd-comment-tags">
<dt>example</dt>
<dd><pre><code>
$rootScope.$on(<span class="hljs-string">'$stateChangeStart'</span>, <span class="hljs-function"><span class="hljs-keyword">function</span><span class="hljs-params">(event, transition)</span> </span>{
event.preventDefault();
<span class="hljs-comment">// transitionTo() promise will be rejected with</span>
<span class="hljs-comment">// a 'transition prevented' error</span>
})
</code></pre></dd>
<dt>deprecated</dt>
<dd><p>use <a href="../classes/transition.transitionservice.html#onstart">TransitionService.onStart</a></p>
</dd>
</dl>
</div>
</div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/angular-ui/ui-router/blob/70a237a/src/ng1/legacy/stateEvents.ts#L53">ng1/legacy/stateEvents.ts:53</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a name="_statechangesuccess" class="tsd-anchor"></a>
<!---->
<!--<h3>$state<wbr>Change<wbr>Success</h3>-->
<!---->
<div class="tsd-signature tsd-kind-icon">$state<wbr>Change<wbr>Success<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span> <div class="tsd-header">
<p> An event broadcast on <code>$rootScope</code> once the state transition is <strong>complete</strong>. </p>
</div>
</div>
<div class="tsd-declaration">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event broadcast on <code>$rootScope</code> once the state transition is <strong>complete</strong>.</p>
</div>
<p>Additional arguments to the event handler are provided:</p>
<ul>
<li><code>toState</code>: the Transition Target state</li>
<li><code>toParams</code>: the Transition Target Params</li>
<li><code>fromState</code>: the state the transition is coming from</li>
<li><code>fromParams</code>: the parameters from the state the transition is coming from</li>
<li><code>options</code>: any Transition Options</li>
<li><code>$transition$</code>: the <a href="../classes/transition.transition-1.html">Transition</a> that just succeeded</li>
</ul>
<dl class="tsd-comment-tags">
<dt>deprecated</dt>
<dd><p>use <a href="../classes/transition.transitionservice.html#onstart">TransitionService.onStart</a> and <a href="../classes/transition.transition-1.html#promise">Transition.promise</a>, or <a href="../classes/transition.transition-1.html#onsuccess">Transition.onSuccess</a></p>
</dd>
</dl>
</div>
</div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/angular-ui/ui-router/blob/70a237a/src/ng1/legacy/stateEvents.ts#L86">ng1/legacy/stateEvents.ts:86</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a name="_statenotfound" class="tsd-anchor"></a>
<!---->
<!--<h3>$state<wbr>Not<wbr>Found</h3>-->
<!---->
<div class="tsd-signature tsd-kind-icon">$state<wbr>Not<wbr>Found<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span> <div class="tsd-header">
<p> An event broadcast on <code>$rootScope</code> when a requested state <strong>cannot be found</strong> using the provided state name. </p>
</div>
</div>
<div class="tsd-declaration">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event broadcast on <code>$rootScope</code> when a requested state <strong>cannot be found</strong> using the provided state name.</p>
</div>
<p>The event is broadcast allowing any handlers a single chance to deal with the error (usually by
lazy-loading the unfound state). A <code>TargetState</code> object is passed to the listener handler,
you can see its properties in the example. You can use <code>event.preventDefault()</code> to abort the
transition and the promise returned from <code>transitionTo()</code> will be rejected with a
<code>&#39;transition aborted&#39;</code> error.</p>
<p>Additional arguments to the event handler are provided:</p>
<ul>
<li><code>unfoundState</code> Unfound State information. Contains: <code>to, toParams, options</code> properties.</li>
<li><code>fromState</code>: the state the transition is coming from</li>
<li><code>fromParams</code>: the parameters from the state the transition is coming from</li>
<li><code>options</code>: any Transition Options</li>
</ul>
<dl class="tsd-comment-tags">
<dt>example</dt>
<dd><pre>
// somewhere, assume lazy.state has not been defined
$state.go("lazy.state", { a: 1, b: 2 }, { inherit: false });
// somewhere else
$scope.$on('$stateNotFound', function(event, transition) {
function(event, unfoundState, fromState, fromParams){
console.log(unfoundState.to); // "lazy.state"
console.log(unfoundState.toParams); // {a:1, b:2}
console.log(unfoundState.options); // {inherit:false} + default options
});
</pre>
</dd>
<dt>deprecated</dt>
<dd><p>use <a href="../classes/state.stateprovider.html#oninvalid">StateProvider.onInvalid</a> // TODO: Move to [[StateService.onInvalid]]</p>
</dd>
</dl>
</div>
</div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/angular-ui/ui-router/blob/70a237a/src/ng1/legacy/stateEvents.ts#L142">ng1/legacy/stateEvents.ts:142</a></li>
</ul>
</aside>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class="globals ">
<a href="../globals.html"><em>Globals</em></a>
</li>
<li class=" tsd-kind-external-module">
<a href="common.html">common</a>
</li>
<li class=" tsd-kind-external-module">
<a href="common_hof.html">common_<wbr>hof</a>
</li>
<li class=" tsd-kind-external-module">
<a href="common_predicates.html">common_<wbr>predicates</a>
</li>
<li class=" tsd-kind-external-module">
<a href="common_strings.html">common_<wbr>strings</a>
</li>
<li class=" tsd-kind-external-module">
<a href="core.html">core</a>
</li>
<li class=" tsd-kind-external-module">
<a href="hooks.html">hooks</a>
</li>
<li class=" tsd-kind-external-module">
<a href="justjs.html">justjs</a>
</li>
<li class=" tsd-kind-external-module">
<a href="ng1.html">ng1</a>
</li>
<li class=" tsd-kind-external-module">
<a href="ng1_directives.html">ng1_<wbr>directives</a>
</li>
<li class="current tsd-kind-external-module">
<a href="ng1_state_events.html">ng1_<wbr>state_<wbr>events</a>
</li>
<li class=" tsd-kind-external-module">
<a href="ng2.html">ng2</a>
</li>
<li class=" tsd-kind-external-module">
<a href="ng2_directives.html">ng2_<wbr>directives</a>
</li>
<li class=" tsd-kind-external-module">
<a href="params.html">params</a>
</li>
<li class=" tsd-kind-external-module">
<a href="path.html">path</a>
</li>
<li class=" tsd-kind-external-module">
<a href="resolve.html">resolve</a>
</li>
<li class=" tsd-kind-external-module">
<a href="state.html">state</a>
</li>
<li class=" tsd-kind-external-module">
<a href="trace.html">trace</a>
</li>
<li class=" tsd-kind-external-module">
<a href="transition.html">transition</a>
</li>
<li class=" tsd-kind-external-module">
<a href="url.html">url</a>
</li>
<li class=" tsd-kind-external-module">
<a href="view.html">view</a>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a href="ng1_state_events.html#_statechangecancel" class="tsd-kind-icon">$state<wbr>Change<wbr>Cancel</a>
</li>
<li class=" tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a href="ng1_state_events.html#_statechangeerror" class="tsd-kind-icon">$state<wbr>Change<wbr>Error</a>
</li>
<li class=" tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a href="ng1_state_events.html#_statechangestart" class="tsd-kind-icon">$state<wbr>Change<wbr>Start</a>
</li>
<li class=" tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a href="ng1_state_events.html#_statechangesuccess" class="tsd-kind-icon">$state<wbr>Change<wbr>Success</a>
</li>
<li class=" tsd-kind-event tsd-parent-kind-external-module tsd-is-not-exported">
<a href="ng1_state_events.html#_statenotfound" class="tsd-kind-icon">$state<wbr>Not<wbr>Found</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>Legend</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
<li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
<li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
<li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
<li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
<li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
<li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.io" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="../assets/js/search.js"><' + '/script>');</script>
</body>
</html>
You can’t perform that action at this time.