PageSourceSearch

https://myaccount.cnpower.com/app/login.jsp

html cnpower.com collected 2026-10-04 07:52:47 UTC 36,297 bytes, 1,074 lines download raw bytes

1
2
3
4
5
6
7<!DOCTYPE html>
8<html lang="en">
9
10<head>
11
12    <meta charset="utf-8">
13    <meta http-equiv="X-UA-Compatible" content="IE=edge">
14    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
15	
16			
17
18
19<meta name="description" content="SilverBlaze Capricorn is your power hub for customer self service web portals supplying electrical energy to residential, commercial and industrial customers.">
20<meta name="keywords" content="SilverBlaze, Capricorn, deregulation, heating, energy, power, utility, appliance, range, stove, dryer, water heater, air conditioning, fireplace, home improvement, renovation, electricity, electric power, electric energy, electric generation, electric meter, customer service, electric bill, residential electric rates, business electric rates, energy audit, kilowatt, kilowatt hour, kWh, bill payment information, electrical usage rates, rates, bill payment information, electrical information, electricity information, electrical services">
21	
22	
23
24
25
26	
27	
28	
29	
29<script src="/SilverBlazePortalV4.0/js/jquery.min.js"></script>
29
30	
31
32
33	<link href="/SilverBlazePortalV4.0/css/cap.min.css" rel="stylesheet" type="text/css">
34	
35    
36
37	<link href="/SilverBlazePortalV4.0/capricornCustom.css" rel="stylesheet" type="text/css">
38	<link rel="shortcut icon" href="/SilverBlazePortalV4.0/favicon.ico" type="image/x-icon">
39	<link rel="icon" href="/favicon.ico" type="image/x-icon">
40
41
42	<title>Fortis ONTARIO :: My Account Login</title>
43
44	
45
46	
47</head>
48
49<body onLoad="initFields(); getAccountNo();">
50
51<style>
52	.navbar-default .navbar-nav > li > a {
53		color: #333;
54		font-size: medium;
55		text-transform: uppercase;
56	}
57	ul.company-logos{margin:0px !important; padding:5px  0px; display:flex; justify-content:center}
58	ul.company-logos li{xdisplay:inline-block !important; border:0px solid #000; list-style-type:none; border-right:1px solid #EEE; padding:0px 20px; flex-wrap:wrap}
59	ul.company-logos li:last-child{border-right:0px solid;}	
60	.space-The-Top{
61		padding:20px 0px;
62	}
63</style>
64
65<!--change number: 252-013-->
66<div id="main_content_wrapper">
67
68	<!-- Main Mega Menu Navigation -->
69    
70	  <nav class="navbar navbar-default " id="main-menu" role="navigation" style="padding-bottom:0px;">
71        <div class="container-fluid" style=" border-bottom:10px solid #1e305f; border-top:0px solid #1e305f;">			
72			<div class="col-sm-12 col-lg-12" style="xpadding-left:0px; xpadding-right:0px; ">
73				<div style="">
74				<ul class="company-logos">
75					<li>
76						<img alt="Fortis ONTARIO" src="/SilverBlazePortalV4.0/images/sbs_fo.png" class="ximg-responsive" width="250px" height="80px" >
77					</li>
78					<li>
79						<img alt="Algoma Power Inc." src="/SilverBlazePortalV4.0/images/sbs_api.png" class="ximg-responsive" width="250px" height="80px">
80					</li>
81					<li>
82						<img alt="Cornwall Electric" src="/SilverBlazePortalV4.0/images/sbs_ce.png" class="ximg-responsive" width="250px" height="80px">
83					</li>
84					<li>
85						<img alt="Canadian Niagra Power Inc." src="/SilverBlazePortalV4.0/images/sbs_cnp.png" class="ximg-responsive" width="250px" height="80px">
86					</li>
87					<li>
88						<img alt="Eastern Ontario Power" src="/SilverBlazePortalV4.0/images/sbs_eop.png" class="ximg-responsive" width="250px" height="80px">
89					</li>
90				 </ul>
91				</div>   
92			</div>   
93				
94			<!-- /.navbar-header -->
95			<!--div class="navbar-collapse collapse" style="margin-top: 15px;">
96			  <ul class="nav navbar-nav navbar-right">
97			    <li class="dropdown fhmm-fw"><a href="/Home/Outages.html" data-toggle="dropdown" class="dropdown-toggle">Outages<strong class="caret"></strong></a></li>
98			    <li class="dropdown fhmm-fw"><a href="/Home/EnergyManagement.html" data-toggle="dropdown" class="dropdown-toggle">Energy Management<strong class="caret"></strong></a></li>
99			    <li class="dropdown fhmm-fw"><a href="/Home/Contact.html" data-toggle="dropdown" class="dropdown-toggle">Contact Us<strong class="caret"></strong></a></li>
100			  </ul>
101			</div--><!-- end #navbar-collapse-1 -->
102            <!-- /.navbar-collapse -->
103        </div>
104		
104<script>
105			
106		</script>
106
107
108			<div class="clearfix" id="site-Header-Spacer"></div>
109        <!-- /.container -->
110	
111    </nav>
112	
113	<!-- This is the processing dialog (loading bar) for all pages -->
114    <div class="modal fade" id="processingDialog" tabindex="-1" role="dialog" 
115	    aria-labelledby="processingDialog" aria-hidden="true" data-keyboard="false" data-backdrop="static">
116		<div class="modal-dialog">
117			<div class="modal-content">
118				<div class="text-center">
119					<div class="progress progress-striped active capricorn-progress" style="margin-bottom: 0px;">
120						<div class="progress-bar progress-bar-primary capricorn-progress-bar" style="width: 100%; font-size: 14px;">
121							<strong>Loading...</strong>
122						</div>
123					</div>
124				</div>
125			</div>
126		</div>
127	</div>
128
129
130
131
132<div class="capricorn-container container">
133
134
135
136	
137	
138	
139	
140
141	
142	
143	
144	
145	
146
147	
148	<div class="row">
149	
150	
151		
152		
153		    
154			
155			
156					<!-- Login Panel -->
157					<div class="col-md-6">
158						<h3>My Account Login</h3>
159						<div class="well">
160							<form id="login-form" role="form" name="login" method="post" action="/app/capricorn?para=index">
161								<input type="hidden" name="jspCSRFToken" value="3e7a1d3828153c0dd802d02c7e7999ddf3bc2cbe" />
162								<div class="capricorn-login-form-group form-group">
163									<label for="accessCode" class="control-label">User Name</label>
164									<div class="controls"> <input type="text" class="form-control" id="accessCode" name="accessCode" autocorrect="off" autocapitalize="none" placeholder="User Name"> </div>
165								</div>
166								<div class="capricorn-login-form-group form-group">
167									<label for="password" class="control-label">Password</label>
168									<div class="input-group">
169										<input type="password" class="form-control" id="password" name="password" maxlength="60" placeholder="Password" autocomplete="new-password">
170										<span toggle="#password" class="input-group-addon toggle-password" style="cursor: pointer;"><i class="fa fa-eye"></i></span>
171									</div>
172								</div>
173								
174			
175								<div class="form-actions">	
176									<button type="submit" class="pull-right btn btn-primary btn-lg" >Login <span class="glyphicon glyphicon-log-in"></span></button>
177								</div>
178								<div class="checkbox" style="max-width: 50%;">
179									<label> 
180										<input type="checkbox" title="rememberMyAccountNumber" name="rememberMyAccountNumber" class="" value="Y" /> Remember me  
181									</label>
182								</div>
183			
184								<div><a href="contact.jsp" id="capricorn-login-help-link">Contact Us</a></div>
185								<hr>
186								
187								<div class="capricorn-login-form-group">
188									<div><a id="capricorn-forgot-password-link" href="/app/forgotPassword.jsp">Forgot your password?</a></div>
189									<div><a id="capricorn-forgot-user-link" href="/app/forgotAccessCode.jsp">Forgot your User Name?</a></div>
190									
191								</div>
192								
193								<input type="hidden" name="nextPara" value="" />
194								<input type="hidden" name="nextPara_attr1" value="" />
195							</form>				
196						</div>			
197					</div>
198					
199					<!-- Signup Panel -->
200					<div class="col-md-6">
201						<h3>Don't have a User Name yet?</h3>
202						<div class="well">
203							<p>Creating a User Name gives you access to your account details and some great tools including:</p>
204
205<ul style="list-style:none;">
206	<li><i class="fa fa-bar-chart" aria-hidden="true"></i> - View Smart Meter consumption data </li>
207	<li> <i class="fa fa-file-pdf-o" aria-hidden="true"></i> - View and Pay your bills online </li>
208	<li><i class="fa fa-list" aria-hidden="true"></i> - Review your transaction and payment history </li>
209	<li><i class="fa fa-area-chart" aria-hidden="true"></i> - Analyze and download electricity </li>
210	<li><i class="fa fa-user" aria-hidden="true"></i> - Add multiple accounts to your web profile</li>
211</ul>
212<p>Before you get started, please have your most recent bill handy to complete the registration form.</p>
213
214							<hr>
215							<form role="form">
216								<div class="button-set clearfix">
217									<a href="register.jsp" type="button" class="pull-right btn btn-primary btn-lg" id="capricorn-login-signup">
217Register Now <span class="glyphicon glyphicon-check"></span> </a>
218								</div>
219							</form>
220						</div>		
221					</div>
222				
223			
224				
225			
226			
227		
228	
229	
230	
231	</div> <!-- ./row -->
232	
233	
234	
235	
236
237	
238	<div class="row" style="margin-top:12px;">
239	<div class="col-md-6">
240		<div class="well">
241			<h3 style="margin-top:0;">Are you a new customer or a current customer setting up an additional account?</h3>
242			<h4>Fill out our online <a href="https://myaccount.cnpower.com/ApolloWE/ctl?para=publicRequest&workflowProcess=MIV1&TYPE=PUBLIC&WE_LANG=EN" target="newApp">Application for New Service</a></h4>
243		</div>
244		<!-- class="well" style="margin-bottom:0;min-height: 170px;">
245			<h3 style="margin-top:0;">Register Now</h3>
246			<h4>Watch our video demo series to see all the great tools and services available to you any time on any device.</h4>
247			<div class="pull-right">
248				<h3>Check it out <i class="fa fa-arrow-circle-right hidden-xs hidden-sm" aria-hidden="true"></i><i class="fa fa-arrow-circle-down hidden-md hidden-lg" aria-hidden="true"></i></h3>
249			</div>
250		</div>
251	</div>
252<!-- class="col-md-6">
253		<div class="embed-responsive embed-responsive-16by9">
254		  <iframe class="embed-responsive-item" src="https://www.youtube.com/embed/videoseries?list=PL53iLnMxVll7Gdl1ZBp0Q2kfeLI56nFk2" frameborder="0" allowfullscreen style="width: 100%; min-height: 210px;"></iframe>
255		</div>		
256	</div>	-->
257				   
258    
259   </div>
260   <div class="col-md-6">   
261	  <div class="well">
262               <h3 style="margin-top:0;" class="bigger">Stay Connected!</h3>
263               <p class="h4" style="text-align:left;">Please make sure your email and phone number are up to date on your account. This helps us keep you informed with important updates and useful information about your utility services.</p>
264      </div>	
265   </div>	  
266</div>
267
268	
269
270	
271	
272
273
274</div>
275<!-- ./container -->
276
277
278
279
280
281
282
283<div class="fix-to-bottom" id="fix-to-bottom" >
284	<div class="container-fluid" style="border-top:20px solid #fdc217; background:#1e305f; margin-top:24px; width:100%; color:#FFF;" >
285	  <div id="footer" class="container" style="margin-top:12px; width:100%">
286		<div class="row">
287			<div class="col-md-12">
288				<ul class="footer-nav-links">
289					<li><a href="https://www.fortisontario.com/" target="_fortisONT">Home<a/></li>
290					<li><a href="https://www.fortisontario.com/about-fortisontario/company-profile" target="_fortisONT">About FortisOntario<a/></li>
291					<li><a href="https://www.fortisontario.com/distribution" target="_fortisONT">Distribution<a/></li>
292					<li><a href="https://www.fortisontario.com/transmission" target="_fortisONT">Transmission<a/></li>
293					<li><a href="https://www.fortisontario.com/news-media" target="_fortisONT">News &amp; Media<a/></li>
294					<li><a href="https://www.fortisontario.com/accessibility" target="_fortisONT">Accessibility<a/></li>
295					<li><a href="https://www.fortisontario.com/contact" target="_fortisONT">Contact</a></li>
296				</ul>
297			</div>
298			<div class="col-md-12">
299				<p>
300					<br /><img alt="Fortis ONTARIO" src="/SilverBlazePortalV4.0/images/logo-footer.jpg" class="ximg-responsive pull-right" ><br />
301				</p>
302			</div>
303			<div class="col-md-12">
304				<ul class="copyright-nav-links">
305					<li>Copyright &copy; 2019 FortisOntario. All Rights Reserved.</li>
306					<li><a href="https://www.fortisontario.com/privacy-policy" target="_fortisONT">Privacy Policy</a></li>
307					<li><a href="https://www.fortisontario.com/legal-notice" target="_fortisONT">Legal Notice</a></li>
308				</ul>
309			</div>
310		</div>
311	  </div>
312	  
313	</div>  
314<!--change number: 252-013-->
315</div> <!-- end for main_content_wrapper -->
316
317<script>
318	<!-- 
319	var newSize = 0;
320	$(document).ready(function(){
321		if($(".fix-to-bottom").position().top < $(window).height()){
322			newSize = ( $(window).height() - $("#fix-to-bottom").position().top) - $("#fix-to-bottom").height()+24;
323			<!-- console.log('if: ' + newSize); -->
324		} 
325		//else {
326			//console.log('else');
327		//}
328		$(".fix-to-bottom").css("margin-top", Math.abs(newSize));
329	});
330	
331	$(window).on("resize", function(){
332		// console.log("Fix to bottom: " + $(".fix-to-bottom").position().top	+" | window: "+ $(window).height());
333		if($(".fix-to-bottom").position().top < $(window).height()){
334			newSize = ($("#fix-to-bottom").position().top - $(window).height()) + $("#fix-to-bottom").height();
335			if(newSize < 0)
336				$(".fix-to-bottom").css("margin-top", Math.abs(newSize));
337			else 
338				$(".fix-to-bottom").css("margin-top", Math.abs(newSize)-1);
339		}
340	});
341	-->
342	// console.log("Window H: " + $(window).height() + " | FixToBottom Position: " + $(".fix-to-bottom").position().top + " | Document H: " + $(document).height());
343
344</script>
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361	
361<script src="/SilverBlazePortalV4.0/js/cap.min.js" type="text/javascript"></script>
361
362	
363
364
365
366
367<script src="/SilverBlazePortalV4.0/js/custom.js" type="text/javascript"></script>
367
368
369<script type="text/javascript">
370
371
372//change the moment locale globally based on the language code.
373moment.locale('en');
374
375
376function showProcessingDialog(processingBarLabel) {
377	if(processingBarLabel != null && processingBarLabel !== ''){
378		$("#processingBarLabel").html(processingBarLabel);
379	}
380	$("#processingDialog").modal('show');
381}
382
383function hideProcessingDialog(){
384	$("#processingDialog").modal('hide');
385}
386
387$(document).ready(function() {
388	var secureFlag = false;
389
390	/* Close the scotch panel (left-menu) while clicking on iframe contents. */
391	$('body, .tabContentWrapper').on('click', function(e){
392		if(window.parent.dashboardScotchPanel !== undefined){			
393			window.parent.dashboardScotchPanel.close();
394		}
395	});
396
397	
398	
399	$("head").append("<link href='//fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>");
400	
401	$("head").append("<link href='//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,700italic,400,300,700' rel='stylesheet' type='text/css'>");
402	
403	
404    
405    
406	
407	// =========================================
408    
409	// JS codes for topIncludeV3.jsp
410	//$("#subtabs, #xs-subtabs").buttonset();
411	
412	$("#subtabs input[type=radio], #xs-subtabs input[type=radio]").change(function() {
413	    // 330-694 Kubra changes for EMWD support generic landing page and open page in new window instead of iframe via opttar
414		if ('_blank' === $(this).attr("data-opttar")) {			
415			window.open($(this).attr("rel") + '&opttar=_blank', '_blank') ;
416			var _this = this;
417			setTimeout(function() { $(_this).parent().removeClass('active') ;}); // trick to deselect the radio			
418		}else if ('parent' === $(this).attr("data-opttar") ) {
419			window.parent.location.href = $(this).attr("rel") + '&opttar=parent';			
420			return false;
421		}else {
422			showProcessingDialog();
423			window.location.href = $(this).attr("rel");			
424		}
425		
426	});
427	// END JS codes for topIncludeV3.jsp
428	// =========================================
429    
430   $('#SMCONSUM').click(function() {
431     	showProcessingDialog();
432   });
433   $('#SMARTCON').click(function() {
434     	showProcessingDialog();
435   });
436   
437   $('a[rel*=blockUI]').click(function() {
438    	showProcessingDialog();
439   });
440
441
442	// Setup jQuery button styling
443	$( "input:submit, input:button, a, button", ".buttonV2" ).button();
444	$( "a", ".buttonV2" ).click(function() { return false; });
445
446	// Setup shadows
447	$('.box.standard').shadow();
448	$('.box.lifted').shadow('lifted');
449	$('.box.perspective').shadow('perspective');
450	$('.box.raised').shadow('raised');
451	$('.box.sides-vt-1').shadow({type:'sides',sides:'vt-1'});
452	$('.box.sides-vt-2').shadow({type:'sides',sides:'vt-2'});
453	$('.box.sides-hz-1').shadow({type:'sides',sides:'hz-1'});
454	$('.box.sides-hz-2').shadow({type:'sides',sides:'hz-2'});
455	$('.box.rotated').shadow({type:'rotated',rotate:'-5deg'});	
456
457	// Help text dialog
458    $(".helpLink").click(function () {
459        $("#helpDialog").attr('src', $(this).attr("href"));
460        $("#helpDiv").dialog({
461            width: 640,
462            height: 450,
463            modal: true,
464            close: function () {
465                $("#helpDialog").attr('src', "about:blank");
466            }
467        });
468        return false;
469    }); 
470    
471    // change number: 252-013
472	var f=navigator.userAgent.search("Firefox");
473	var c=navigator.userAgent.search("Chrome");
474	var ie=navigator.userAgent.search("MSIE") + (navigator.userAgent.search(/Trident/)); // MSIE for older ie and Trident for newer IE such as IE 11
475	var ie9=navigator.userAgent.search("MSIE 9.0");
476    
477    // set the zoom level from cookie
478    var cookie_name = "zoom_level";
479    var index = document.cookie.indexOf(cookie_name);
480    var zoomlvl = 100;
481    
482	// change number: 252-013
483	// write cookies
484	function write_cookie_for_zoom(zoomLevel)	{
485		$.cookie(cookie_name, zoomLevel,  { path: '/', expires: 3650, secure: secureFlag });
486	}
487    
488    if (index >= 0) {
489    	zoomlvl = Number(document.cookie.substring(index).split(";")[0].split("=")[1]);
490    	 
491    	if(zoomlvl!=100){
492    		zoom(zoomlvl);
493    	}
494
495    }else{
496   		/*console.log("Cookie not Found at the beginning.");*/
497    }
498 
499   // zoom in the page
500   $("#zoom_in_page").click(function () {
501        // max zoom level is 150%
502        if(zoomlvl>= 150){
503          return;
504        }
505        zoomlvl += 10;
506        zoom(zoomlvl);
507   });
508   
509   // zoom out the page
510   $("#zoom_out_page").click(function () {
511   		// min zoom level is 70%
512        if(zoomlvl<=70){
513          return;
514        }
515    	zoomlvl -= 10;
516    	zoom(zoomlvl);
517   });
518   
519   // zoom back
520   $("#back_to_original_page").click(function () {
521    	zoomlvl = 100;
522    	zoom(zoomlvl);
523   });
524   
525
526   function zoom(zoomlvl){
527	   	if(f>-1){ // for firefox, use css3: transform:scale
528	        $("body").css({
529	      			"-moz-transform": "scale(" + zoomlvl/100 + ")",
530	     			"-moz-transform-origin": "0 0"
531	   		});
532	        var viewPortWidth = $(window).width();
533	   		var currMainContentWrapperWidth = viewPortWidth * (zoomlvl/100);
534	   		var mainContentWidthDiff = (currMainContentWrapperWidth - viewPortWidth) / 2;
535			if(mainContentWidthDiff>50){ /* zoom in */
536		   		$("body").css("left", "-" + mainContentWidthDiff + "px");
537			}else if(mainContentWidthDiff<50){  /* zoom out */
538		   		$("body").css("left", mainContentWidthDiff + "px");
539			}
540	   		
541	    }else if(ie9>-1){ // for ie9
542	    	$("body").css({
543	 			"transform": "scale(" + zoomlvl/100 + ")",
544				"transform-origin": "0 0",
545				"-ms-transform": "scale(" + zoomlvl/100 + ")",
546				"-ms-transform-origin": "0 0"
547			});
548	    
549	    }else{  // for other browers, use zooming
550	   	  $("body").css("zoom", zoomlvl+"%");
551	  	  if(ie>-1){  // for ie, re-position the div to center
552	  		 $("body").css("width", "100%");
553	  	  	
554	  	     // center the viewport in the center if there is scroll bar in the window.
555	  	     var newPosition =  ($(document).width() - $(window).width())/2;
556	  	   	 window.scrollTo(newPosition,0);
557	      }
558	   	}
559	   	write_cookie_for_zoom(zoomlvl);
560   }
561   
562   
563   
564   
565  
566  
567  
568  
569  function onElementHeightChange(elm, callback){
570		
571		if(elm == null)
572			return;
573		
574		var index = 0;
575		var lastHeight = elm.clientHeight, newHeight;
576	    (function run(){
577	        newHeight = elm.clientHeight;
578	        
579	        if( lastHeight != newHeight || (lastHeight == newHeight && !iframeHeightAdjusted))
580	            callback();
581	        lastHeight = newHeight;
582
583	        if( elm.onElementHeightChangeTimer )
584	            clearTimeout(elm.onElementHeightChangeTimer);
585
586	        //console.log('run' + (index++));
587	        elm.onElementHeightChangeTimer = setTimeout(run, 500);
588	    })();
589	    
590	    // #330-300 - 2018-11-15 : Enhance the performance by reducing the workload. Cancel the resize function in 10 seconds. 
591	    if( elm.onElementHeightChangeTimer ){
592	    	setTimeout( function(){
593	    		clearTimeout(elm.onElementHeightChangeTimer);
594	    		//console.log('clear timeout');
595	    	}, 10000);
596	    }
597	}
598
599	onElementHeightChange(document.body, function(){
600		resizeIFrameWhenBodyHeightChanges();
601	});
602  	//setTimeout(resizeIFrameWhenBodyHeightChanges, 2000);
603   
604	
605	$(document).on('click', ".logoff", function(e){
606	 	e.preventDefault();
607	 	$("#form-logoff").submit();
608	});
609  	
610}); /* end jQuery.document.ready() */
611
612
613
614
615var iframeHeightAdjusted = (typeof $.cookie("googtrans") == 'undefined' || $.cookie("googtrans") === "/en/en");
616
617
618// 2017-06-06 @hli: Resize current active iframe according to its own content height when the page finishes loading.
619// 2017-08-14 @grohman: Account for new dashboard nav.
620function resizeIFrameWhenBodyHeightChanges(){
621	  var $frametabs = parent.$('.iframetab');
622	  var currentFrame;
623	  $frametabs.each(function(){ 
624		  var $iframeTabContainer = $(this).closest(".tab-pane");
625		  if($iframeTabContainer.css("display") != "none"){ // all other iframes are invisible. Find the current active iframe.
626			  currentFrame = $(this);
627			  currentFrame.load(resizeIframe()); // reload the current iframe size.
628			  return;
629		  }
630	  });
631	  
632	  // reload iframe according to the content size.
633	  function resizeIframe() {
634	  	  var frameBodyElment = currentFrame.contents().find("body")[0];
635	  	  if(frameBodyElment == undefined){
636	  		  return;
637	  	  }
638		  var contentHeight = frameBodyElment.offsetHeight;
639		  
640		  var myScotchNav = parent.document.getElementById('myAccountTabs');
641		  if(typeof myScotchNav !== 'undefined'){
642			  if(contentHeight < myScotchNav.offsetHeight){
643				  contentHeight = myScotchNav.offsetHeight;
644			  }
645		  }
646		  
647		  
648		  
649		  if(!iframeHeightAdjusted){
650		  	 currentFrame.height(contentHeight+1);
651		  	 iframeHeightAdjusted = true;
652		  }
653		  //console.log("contentHeight=" + contentHeight);
654		  currentFrame.height(contentHeight);
655	  }
656}
657
658
659
660
661
662
663
664
665
666
667function MM_openBrWindow(theURL,winName,features) { //v2.0
668  return window.open(theURL,winName,features);
669}
670
671</script>
671
672
673
674<!-- Page Rating JS -->
675<script>
676	
677	function browserSupportsCors() {
678	    if ("withCredentials" in new XMLHttpRequest()) return true;
679	    else if (typeof XDomainRequest == "object") return true;
680	    else return false;
681	}
682
683	$(document).ready(function(){
684		var $star_rating = $('.star-rating .fa');
685
686		var SetRatingStar = function() {
687		  return $star_rating.each(function() {
688			if (parseInt($star_rating.siblings('input.rating-value').val()) >= parseInt($(this).data('rating'))) {
689			  return $(this).removeClass('fa-star-o').addClass('fa-star');
690			} else {
691			  return $(this).removeClass('fa-star').addClass('fa-star-o');
692			}
693		  });
694		};
695
696		$star_rating.on('click', function() {
697		  $star_rating.siblings('input.rating-value').val($(this).data('rating')).change();
698		  return SetRatingStar();
699		});
700
701		SetRatingStar();
702	});
703	
704	
705	// Page Rating 
706	$('input[name="pageRating"]').on("change", function(){
707		
708		var pageRating = $(this).val();
709		var documentId = $('#pageCommentsAndRating').find('input[name="documentId"]').val();
710		var pageRatingCSRFToken = $('#pageCommentsAndRating').find('input[name="jspCSRFToken"]').val();
711			
712		var url = "/app/capricorn?para=documentRatingAndComments&type=RATING"; 
713
714		if(browserSupportsCors()) {
715			jQuery.ajax({
716				type: "POST",
717				cache: false,
718				url: url,
719				data: {
720					"pageRating" : pageRating,
721					"documentId" : documentId,
722					"jspCSRFToken" : pageRatingCSRFToken
723				}
724			})
725			.done(function(data){ 
726				
727				$('#input-pageRating').val("");
728
729				$('#ratingResponse').html(data);
730			});
731		} else {
732			alert("CORS not supported");
733		}
734		
735	});	
736	
737	// Page Comments 
738	function submitDocumentComments(){
739		var documentId = $('#pageCommentsAndRating').find('input[name="documentId"]').val(); 
740		var ratingComment = $('#input-pageComment').val();
741		var pageRatingCSRFToken = $('#pageCommentsAndRating').find('input[name="jspCSRFToken"]').val();
742		
743		if(ratingComment === "") return;
744		
745		var url = "/app/capricorn?para=documentRatingAndComments&type=COMMENT"; 
746
747		if(browserSupportsCors()) {
748			jQuery.ajax({
749				type: "POST",
750				cache: false,
751				url: url,
752				data: {
753					"documentId" : documentId,
754					"ratingComment" : ratingComment,
755					"jspCSRFToken" : pageRatingCSRFToken
756				}
757			})
758			.done(function(data){ 
759				$('#input-pageComment').val("");
760
761				$('#commentsResponse').html(data);
762			});
763		} else {
764			alert("CORS not supported");
765		}
766		
767	}
768	
769	$('button[name="pageCommentButton"]').on("click", function(){
770		submitDocumentComments();
771	});		
772	
773	$("#pageCommentForm").on('submit', function(e){
774		e.preventDefault();
775		submitDocumentComments();
776	});
777	
778	
779	// =========================================================
780	// Center modal dialog to the middle of current view.
781	// =========================================================
782	var iframeId = "";
783	var iframeTop = 0;
784	if(window.frameElement){
785       	iframeId = window.frameElement.id;
786       	iframeTop = parent.$("#"+iframeId).offset().top;  // get the iframe top, i.e. the height between 0 and the iframe's top border.
787    }
788	// A variable that saves the original form data to detect if the form has been changed when submitting the form.
789	var $form_original_data = "";
790	// reposition the dialog modal based on the screen view.
791	/* $(document).on('shown.bs.modal', '#subscribeDialog, #ajaxSelectLinkedAccountsModal, #ajaxViewAddtionalProfileModal', function(e) {
792		// cache the element into js.
793	   var $currentTarget = $(e.currentTarget); // modal
794	   var dialog = $currentTarget.find('.modal-dialog');
795	   centerModalWidget(dialog);
796       
797   	});	 */
798   	
799   	$(document).on('shown.bs.modal', '.modal:not(#processingDialog)', function(e) {
800		// cache the element into js.
801	   var $currentTarget = $(e.currentTarget); // modal
802	   var dialog = $currentTarget.find('.modal-dialog');
803	   
804	   
805	   resizeModalForView($currentTarget);
806	   
807	   
808	   if(navigator.userAgent.match(/(iPod|iPhone|iPad)/)){
809		   parent.$('body,html').addClass("modal-open");
810	   }else{
811		   centerModalWidget(dialog);
812	   }
813   	});	
814   	
815   	
816   	function resizeModalForView($currentTarget){
817 	   var percentageInsideWindow = 0.65; 
818   	   var modalObj = $currentTarget.find('.modal-content');
819	   var modalCurrentHeight = $(modalObj).height();
820   	   var modalNewHeight = parent.window.innerHeight * percentageInsideWindow;
821	   if (modalCurrentHeight > modalNewHeight) {
822		   //alert("modalCurrentHeight=" + modalCurrentHeight); // leave it for debug.
823		   //alert("modalNewHeight=" + modalNewHeight); // leave it for debug.
824		   var modalBody = $currentTarget.find('.modal-body');
825		   
826		   var modalHeaderHeight = $currentTarget.find('.modal-header').height();
827		   var modalFooterHeight = $currentTarget.find('.modal-footer').height();
828		   var newModalBodyHeight = Math.max(modalNewHeight - modalHeaderHeight - modalFooterHeight, 50);
829		   //alert("newModalBodyHeight=" + newModalBodyHeight); // leave it for debug.
830		   $(modalBody).height(newModalBodyHeight);
831		   $(modalBody).css('overflow-y', 'auto'); 
832	   }
833   	}
834   	
835   	
836	$(document).on('hide.bs.modal', '.modal:not(#processingDialog)', function(e) {
837		if(navigator.userAgent.match(/(iPod|iPhone|iPad)/)){
838			parent.$('body, html').removeClass("modal-open");
839		}
840	});
841   	
842   	
843	
844    $('#processingDialog').on('show.bs.modal', function(e){  
845    	var $currentTarget = $(e.currentTarget); // modal
846	   	var dialog = $currentTarget.find('.modal-dialog');
847	   	centerModalWidget(dialog, 450); // note: make the height larger such as 450 would put the widget higher instead of center.
848    });
849  
850   	
851	
852 	// a function to center the passed in dialog/modal in the current view port.
853   	function centerModalWidget(dialog, dialogHeight){
854        var offset = $(parent.document).scrollTop(); // Get the current vertical position of the scroll bar for the first element in the set of matched elements
855        var actualViewportHeight = parent.window.innerHeight;
856        // #330-304 - Enhance the centerModal logic by using a more accurate modal height if applicable.
857        var modalHeight = 0;
858
859        // #330-370: use the height from the parameter by default. If no height value is passed in, detect the modal height programmatically.
860        if(typeof(dialogHeight) !== 'undefined' && dialogHeight!==0){
861        	modalHeight = dialogHeight;
862        }else{
863        	modalHeight = dialog.height();
864        }
865        
866     	// If the modalHeight is still 0, then use an average height value.
867        if(modalHeight == 0)
868        	modalHeight = 495;  
869        
870     	// show the modal at the position of (parent.scrollTop - iframe's top) [inner viewport start point] + (actualViewportHeight-modalHeight)/2) [center in the current view port] .
871        var newPosition = 0;
872     	var innerFrameTop = 0;
873        if(window.frameElement){ // if this is inside a iframe, then calculate the distance between iframeTop and scrollTop. If not a iframe, then always use 0.
874        	// #330-337 - When the view port is staying at the top of the iframe, this value should allow to be negative.The negative iframeTop value should be included in the calculation for centering. 
875        	//innerFrameTop = Math.max(0, offset-iframeTop);
876        	innerFrameTop = offset-iframeTop;
877        	// #330-337 - the final new position must be either postive value or 0. 
878        	newPosition = Math.max(0, innerFrameTop + (actualViewportHeight-modalHeight)/2);
879        }else{
880        	innerFrameTop = offset;
881        	newPosition = Math.max(0, innerFrameTop);
882        }
883     	
884        
885        
886        /* 
887        console.log("innerFrameTop=" + innerFrameTop);
888        console.log("actualViewportHeight=" + actualViewportHeight);
889        console.log("modalHeight=" + modalHeight);
890        console.log("scrollTop=" + offset);
891        console.log("iframeTop=" + iframeTop);
892        console.log("innerFrameTop=scrollTop-iframeTop= " + innerFrameTop);
893        console.log("newPosition = innerFrameTop + (actualViewportHeight-modalHeight)/2 = " + newPosition);
894        */
895        dialog.css("top", newPosition);
896        
897/*  	   if(innerFrameTop>0){ // if the viewport is showing deep down in the parent window, i.e. innerFrameTop will be greater than 0. Show the dialog in the center of innerFrameTop.
898        	dialog.css("top", newPosition);
899 	   } else{ // if the viewport is showing the top of the parent window, i.e. innerFrameTop will be 0. Show the dialog closed to the top of inner frame.
900 		    dialog.css("top", "20%");
901 	   } */
902   	} 
903
904 	
905   	$(document).on('click', ".btnClickLoading", function(e){
906   		var $thisButton = $(this);
907   		if($thisButton.attr("data-loading-text") === ""){ // add the default loading message if not set.
908   			$thisButton.attr("data-loading-text", "Loading...");
909   		}
910   		$thisButton.button('loading');
911   	});
912 	
913</script>
913
914<!-- / Page Rating JS -->
915
916
917
918
919
920
921<!-- Script to Activate the Carousel -->
922<script type="text/javascript">
923$('.carousel').carousel({
924	interval: 5000 //changes the speed
925})
926</script>
926
927
928<script type="text/javascript">
929	
930	
931	// +---------------------------------------------------------------------
932	// | Auto Refresh: 330-263 
933	// +---------------------------------------------------------------------
934	var itimer;
935	var timeInterval;
936	
937	function set_interval() { 
938		var timeoutMins = 1000 * 1 * 300; 
939		itimer=setTimeout("auto_reload()",timeoutMins);
940	}
941	
942	function auto_reload() {
943	  location.replace('/app/login.jsp');
944	}
945	// +---------------------------------------------------------------------
946		
947	
948	function initFields() {
949	   	var form = document.login;
950		form.accessCode.focus();
951		form.accessCode.select();
952		
953		set_interval();
954		
955	}
956	
957	function processRememberMyAccountNumber() {
958	  // if rememberMyAccountNumber flag is check, then write the account# to the PowerStream cookie
959	  if (document.login.rememberMyAccountNumber.checked == true) {
960	    write_cookie('Y');
961	  } else {
962	    write_cookie('N');
963	  }
964	  
965	}
966	
967	cookie_name = "www.fortisontario.ca_admin";
968	function write_cookie(writeAcctFlag)	{
969	  if (document.cookie) {
970	    index = document.cookie.indexOf(cookie_name);
971	  } else {
972	    index = -1;
973	  }
974	  if (index == -1) { // cookie not found
975	    if (writeAcctFlag == "Y") {
976	   	  // #330-068 : @jli 2018-02-16 - encode the access code value before putting it into cookie  
977	      document.cookie = cookie_name + "=" + encodeURI(document.login.accessCode.value) + "; expires=Wednesday, 01-Aug-2040 08:00:00 GMT";
978	    }
979	  } else { // cookie found
980	    if (writeAcctFlag == "Y") {
981	      // #330-068 : @jli 2018-02-16 - encode the access code value before putting it into cookie.
982	      document.cookie = cookie_name + "=" + encodeURI(document.login.accessCode.value) + "; expires=Wednesday, 01-Aug-2040 08:00:00 GMT";
983	    } else {
984	      document.cookie = cookie_name + "=NA";
985	    }
986	  }
987	}
988	
989	function getAccountNo()	{
990	  if (document.cookie) {
991	    index = document.cookie.indexOf(cookie_name);
992	    if (index != -1) { // cookie for powerstream found
993	      countbegin = (document.cookie.indexOf("=", index) + 1);
994	      countend = document.cookie.indexOf(";", index);
995	      if (countend == -1) {
996	        countend = document.cookie.length;
997	      }
998	      accountNo = document.cookie.substring(countbegin, countend);
999	      if (accountNo == "NA") {
1000	        accountNo = "";
1001	        document.login.rememberMyAccountNumber.checked = false;
1002	      } else {
1003	        document.login.rememberMyAccountNumber.checked = true;
1004	      }
1005	      // #330-068 : @jli 2018-02-16 - decode the access code value when retrieving it from cookie.  
1006	      document.login.accessCode.value = decodeURI(accountNo);
1007	      if (document.login.accessCode.value != "") {
1008	        document.login.password.focus();
1009	      }
1010	    } else { // cookie for powerstream not found
1011	      document.login.rememberMyAccountNumber.checked = false;
1012	    }
1013	  }
1014	}
1015	
1016	jQuery(function ($) {
1017		
1018	    $('#login-form').validate({
1019		    rules: {
1020		    	 accessCode: {
1021			        required: true
1022			     },
1023				 password: {
1024					required: true
1025				 }
1026		    },
1027	        highlight: function(element) {
1028	            $(element).closest('.form-group').addClass('has-error');
1029	        },
1030	        unhighlight: function(element) {
1031	            $(element).closest('.form-group').removeClass('has-error');
1032	        },
1033	        errorElement: 'span',
1034	        errorClass: 'help-block',
1035	        errorPlacement: function(error, element) {
1036	            if(element.parent('.input-group').length) {
1037	                error.insertAfter(element.parent());
1038	            } else {
1039	                error.insertAfter(element);
1040	            }
1041	        },
1042	        submitHandler: function(form) {
1043	    	   $("#processingDialog .progress-bar").html("<strong>Please wait a few seconds while we verify your login information...</strong>");
1044	    	   $("#processingDialog").modal('show');
1045	    	   processRememberMyAccountNumber();
1046	    	   form.submit();
1047	        }
1048	    }); 
1049	    
1050	    
1051	    
1052	    
1053	    
1054	    
1055    });
1056
1057</script>
1057
1058
1059
1060<script type="text/javascript">
1061	//CAP-230 : 2021-01-25 : Toggle-password-visibility
1062	$(".toggle-password").click(function() {
1063		$(this).children("i").toggleClass(".fa-eye fa-eye-slash");
1064		var pwdInput = $($(this).attr("toggle"));
1065		if (pwdInput.attr("type") === "text") {
1066			pwdInput.attr("type", "password");
1067		} else {
1068			pwdInput.attr("type", "text");
1069		}
1070	});
1071</script>
1071 <!-- CAP-230 -->
1072</body>
1073</html>
1074

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.