<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="shortcut icon" href="/img/favicon.ico" />
<title>&#70;&#54;&#56;&#48;</title>
<style type="text/css">
﻿html, body {
min-height:101%;
}
body {
text-align: center;
background: #F2F2F2;
overflow-y: scroll;
}
body, input, textarea, select, label, td, th {
font-size: 12px;
color: #313131;
font-family: "Microsoft YaHei",Arial,SimSun,Verdana,Helvetica,Sans-Serif,Geneva;
}
body, form, h1, h3, h4, p, ul, ol {
margin: 0;
}
ul, ol {
padding-left: 0;
list-style-type: none;
}
a img {border: 0;}
table {
border-collapse: collapse;
border-spacing: 0;
}
#page_container {
position: relative;
width: 960px;
margin: 0 auto;
padding: 0 30px 15px 30px;
text-align: left;
background: url(../img/site_holder.gif) repeat-y scroll center top;
}
#page_header {
padding-bottom: 20px;
}
#banner {
position: relative;
width: 100%;
height: 74px;
overflow: hidden;
padding-bottom: 5px;
}
#mainNavigator {
width: 100%;
height: 38px;
text-align: center;
margin: 0 auto;
overflow:hidden;
background: #737373;
}
#page_content {
position: relative;
min-height: 510px;
height: auto !important;
height: 480px;
overflow: visible;
text-align: center;
}
#page_footer {
height: 43px;
line-height: 43px;
text-align: left;
background-color: #F4F4F4;
margin-top: 15px;
padding: 0 10px;
border-top: 1px solid #D7D7D7;
}
.logo {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_ZTE.png) no-repeat 5px 30px;
}
#banner_switchArea {
width: 500px;
height: 25px;
line-height: 25px;
position: absolute;
bottom: 2px;
right: 0px;
}
.timeArea {
width: 300px;
height: 25px;
line-height: 25px;
position: absolute;
bottom: 2px;
left: 140px;
}
#banner_switchArea div {
float: right;
text-align: center;
margin: 0 8px;
}
#banner_switchArea div.logUser{
padding: 0px;
text-align: right;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 180px;
}
.clickable {
cursor: pointer;
}
#mainNavigator ul,li {
margin:0;
padding:0;
list-style: none;
}
#mainNavigator {
position: relative;
}
#mainNavigator ul {
position: relative;
left: 50%;
float: left;
}
#mainNavigator li {
float: left;
position: relative;
right: 50%;
line-height: 34px;
}
#homeLi {
}
#mainNavigator a {
display: block;
width: 100%;
height: 100%;
background: url(../img/nv_middle.gif) repeat-x;
text-decoration: none;
}
#mainNavigator a:link,
#mainNavigator a:visited {
color: #FFFFFF;
}
#mainNavigator a.SelectMenuItem {
color: #FFFFFF;
background: url(../img/nv_s.gif) repeat-x;
}
#mn_first, #mn_last {
height: 100%;
width: 5px;
position: absolute;
}
#mn_li {
background: url(../img/nv_middle.gif) repeat-x;
height: 100%;
}
#mn_first {
background: url(../img/nv_left.gif) no-repeat;
top: 0px;
left: 0px;
}
#mn_last {
background: url(../img/nv_right.gif) no-repeat;
top: 0px;
right: 0px;
}
#slogan {
width: 200px;
float: right;
margin: 0px;
text-align: right;
}
.caption2,
h1 {
border-bottom: 1px dotted #313131;
font-size: 16px;
font-weight: normal;
padding-bottom: 8px;
margin-bottom: 10px;
}
input[type="text"],
input[type="password"],
input[type="file"],
textarea,
select {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
height: 26px;
*height: 20px;
padding: 2px;
margin: 2px 0;
border: 1px solid;
border-color: #AAAAAA #CCCCCC #CCCCCC #AAAAAA;
border-radius: 3px;
box-shadow: 0 1px 2px #CCCCCC inset;
}
select {
*height: 26px;
}
textarea {
margin: 0;
width: 100%;
*width: 99%;
resize: none;
height: 180px;
overflow: auto;
}
input[type="text"]:focus,
input[type="password"]:focus,
input[type="file"]:focus,
textarea:focus {
border-color: #FF8040;
-webkit-box-shadow: 0 0 3px rgba(255, 128, 64, 0.7);
-moz-box-shadow: 0 0 3px rgba(255, 128, 64, 0.7);
box-shadow: 0 0 3px rgba(255, 128, 64, 0.7);
}
select:focus {
border-color: #FF8040;
}
input[type="text"]:disabled,
input[type="password"]:disabled,
input[type="file"]:disabled,
textarea:disabled,
select:disabled {
color: #898989;
background-color: #ECE9D8;
}
input[type="checkbox"] {
margin-left: 0;
margin-top: 9px;
}
input[type="radio"] {
margin-left: 0;
}
.Button,
.button,
.longBtn ,
.disableBtn,
.disableLongBtn,
.BrowseBtn {
cursor: pointer;
height: 28px;
border: none;
padding: 0 15px;
min-width: 100px;
border-radius: 3px;
}
.Button,
.button,
.longBtn  {
background-color: #0099cc;
background-image: -moz-linear-gradient(top , #34c3f9, #0099cc);
background-image: -webkit-gradient(linear,0% 0%, 0% 100%, from(#34c3f9), to(#0099cc));
background-image: -webkit-linear-gradient(top, #34c3f9, #0099cc);
background-image: -o-linear-gradient(top, #34c3f9, #0099cc);
background-image: -ms-linear-gradient(top, #34c3f9, #0099cc);
background-image: linear-gradient(top, #34c3f9, #0099cc);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#34c3f9', endColorstr='#0099cc', GradientType=0);
color: #fff;
}
.Button:hover,
.button:hover,
.longBtn:hover,
.Button:focus,
.button:focus,
.longBtn:focus {
font-weight: bold;
font-style: oblique;
}
.disableBtn,
.disableLongBtn,
.BrowseBtn {
border: 1px solid #878889;
background-color: #ddd;
background-image: -moz-linear-gradient(top , #ebebeb 15%, #ddd 45%, #cdcdcd 85%);
background-image: -webkit-gradient(linear,0% 0%, 0% 100%, from(#ebebeb), to(#cdcdcd),color-stop(45%,#ddd));
background-image: -webkit-linear-gradient(top, #ebebeb 15%, #ddd 45%, #cdcdcd 85%);
background-image: -o-linear-gradient(top, #ebebeb 15%, #ddd 45%, #cdcdcd 85%);
background-image: -ms-linear-gradient(top, #ebebeb, #cdcdcd);
background-image: linear-gradient(top, #ebebeb, #cdcdcd);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb', endColorstr='#cdcdcd', GradientType=0);
}
.BrowseBtn
{
color: #000;
}
.disableBtn,
.disableLongBtn {
cursor: default;
color: #898989;
}
.disableBtn:hover,
.disableBtn:focus,
.disableLongBtn:hover,
.disableLongBtn:focus {
font-weight: normal;
font-style: normal;
}
.mac {
width: 23px;
}
.ip {
width: 32px;
}
.port {
width: 67px;
}
.w37 {
width: 37px;
}
.w40 {
width: 40px;
}
.w45 {
width: 45px;
}
.w50 {
width: 50px;
}
.w60 {
width: 60px;
}
.w70 {
width: 70px;
}
.w75 {
width: 75px;
}
.w80 {
width: 80px;
}
.w100, .inputShort {
width: 100px;
}
.w120 {
width: 120px;
}
.w130 {
width: 130px;
}
.w140 {
width: 140px;
}
.w150, .inputNorm , .selectNorm {
width: 150px;
}
.w160 {
width: 160px;
}
.w165 {
width: 165px;
}
.w170 {
width: 170px;
}
.w175 {
width: 175px;
}
.w180 {
width: 180px;
}
.w200 {
width: 200px;
}
.w210 {
width: 210px;
}
.w217 {
width: 217px;
}
.w220 {
width: 220px;
}
.w230 {
width: 230px;
}
.w250, .inputLong, .selectLong {
width: 250px;
}
.w280 {
width: 280px;
}
.w330, .inputLong, .selectLong {
width: 330px;
}
.w400 {
width: 400px;
}
.emColor {
color: #0099cc;
}
.bgColorRow {
background-color: #F2F2F2;
}
.green {
color:#385401;
font-weight: bold;
}
.red {
color:#6c0101;
font-weight: bold;
}
.emFont {
font-weight: bold;
}
.ctrlFont,
.link2More {
text-decoration: underline;
cursor: pointer;
}
.ctrlFont {
text-decoration: none;
}
.sdRightPos{
float:right;
margin-right:10px;
}
.disableFont {
cursor: default;
text-decoration: none;
color: #898989;
}
.readonlyInputBg {
background-color: #ECE9D8;
}
.alignLeft {
text-align: left;
}
.alignRight {
text-align: right;
}
.alignCenter {
text-align: center;
}
.caption1 {
font-size: 1.1em;
font-weight: bold;
}
.caption3 {
font-size: 1em;
font-weight: bold;
}
.statusRow {
width: 100%;
height: 24px;
}
.statusRow div {
float: left;
border: 1px solid #BDBDBD;
padding: 3px;
text-align: center;
overflow: hidden;
}
.redFont {
color: red;
}
.instCfgArea {
margin: 0;
padding: 0 0 50px 0;
}
.buttongroup,
.unfloatBtnGroup {
padding: 25px 25px 20px 25px;
height: 30px;
}
.buttongroup input {
float: right;
margin-left: 15px;
}
.unfloatBtnGroup input {
margin: 0;
}
.radioInput {
width: auto;
float: left;
}
.submitArea {
text-align: right;
padding: 20px 0;
}
.externErrorHint,
.succHint,
.errorHint,
.warnHint,
.infoHint,
.waitHint {
margin: 30px 0;
text-align: left;
padding: 10px 10px 10px 70px;
}
.externErrorHint,
.errorHint {
color: #6c0101;
background: #FFEBE4 url(../img/err_m.png) no-repeat 15px;
}
.succHint {
color: #385401;
background: #E7FFE4 url(../img/succ_m.png) no-repeat 15px;
}
.warnHint {
color: #443500;
background: #FFF9E4 url(../img/warn_m.png) no-repeat 15px;
}
.infoHint {
color: #012f4c;
background: #E4EFFF url(../img/info_m.png) no-repeat 15px;
}
.waitHint {
color: #012f4c;
background: #E7FFE4 url(../img/waiting_Small.gif) no-repeat 15px;
}
.staticInfoHint,
.staticInfoHintReal {
display: block;
background: url(../img/info_s.png) no-repeat 25px 1px;
margin-bottom: 20px;
text-align: left;
padding: 0 25px;
}
.staticInfoHintReal {
background: url(../img/info_s.png) no-repeat 0px 1px;
padding: 0;
}
.staticInfoHint p,
.staticInfoHintReal p {
line-height: 18px;
text-align: justify;
text-indent: 2em;
margin-bottom: 5px;
}
.sceneTip {
padding: 0 0 10px 0;
margin: 0;
text-align: justify;
}
.sceneTipLink {
padding: 0;
}
.sceneTip a,
.sceneTipLink a,
.sceneTip_close a {
color: #0099CC;
text-decoration: underline;
cursor: pointer;
}
.sceneTip_close a {
text-decoration: none;
padding-right: 5px;
}
.help_content,
.sceneTip_container {
background-color: #EFF8FF;
padding: 5px 0;
}
.help_close,
.sceneTip_close {
text-align: right;
}
.inlineTip {
float: left;
padding-left: 60px;
line-height: 30px;
}
.black_overlay
{
position: fixed;
_position: absolute;
top: 0%;
left: 0%;
width: 100%;
height: 100%;
background-color: #A7A7A7;
z-index: 100;
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
opacity: 0.5;
filter: alpha(opacity=50);
}
.white_content
{
display: none;
width: 365px;
min-height: 195px;
height: auto !important;
height: 195px;
background:  url(../img/waiting.gif) no-repeat center center;
z-index: 101;
overflow: auto;
position: fixed;
_position: absolute;
}
.white_content_Qos
{
display: none;
width: 775px;
height: auto !important;
background: #FFFFFF;
z-index: 101;
overflow: auto;
position: fixed;
left: 25%;
top: 80px;
}
#confirmLayer {
border: 8px solid #7D7D7D;
text-align: left;
padding: 0 10px;
background: #FFFFFF;
}
#confirmMsg {
min-height: 32px;
height: auto !important;
height: 32px;
padding: 25px 0;
background: url("../img/info_m.png") no-repeat 20px 50%;
}
#confirmMsg p {
padding-left: 60px;
font-size: 1.2em;
line-height: 24px;
}
#waitingImgArea {
height: 50px;
padding-bottom: 25px;
background:  url(../img/waiting_w.gif) no-repeat top center;
}
#confirmBtnArea {
height: 28px;
border-top: 1px dotted #313131;
padding: 10px;
}
#confirmBtnArea input {
float: right;
margin-left: 20px;
}
#dynamicTip {
position: absolute;
display: none;
font-size: 11px;
}
#dynamicTip div {
float: left;
height: 34px;
padding-top: 5px;
}
#dTip_l {
width: 16px;
background: url(../img/dTip_l.gif) no-repeat left top;
}
#dTip_m {
padding: 2px 8px 0 5px;
background: url(../img/dTip_m.gif) repeat-x;
}
#dTip_r {
width: 6px;
background: url(../img/dTip_r.gif) no-repeat left top;
}
div.errorLabelWraper{
background: url(../img/fail_s.png) no-repeat 5px 6px;
display:inline-block;
padding-left: 23px;
line-height: 30px;
}
label.error{
color: #FF0000;
}
.expandArrow {
background: url(../img/expandArrow.png) no-repeat 0px 8px;
}
.collapseArrow {
background: url(../img/collapseArrow.png) no-repeat 0px 8px;
}
.apStatusRow {
cursor:pointer
}
.apConnectting {
background: url(../img/waiting_Small.gif) no-repeat 0px 8px;
}
.qrCodeContainer {
bottom: 160px;
position: fixed;
right: 0;
z-index: 1;
}
@media screen and (max-width: 1100px) {
.qrCodeContainer {
display: none;
}
}
.captchaImg {
vertical-align: middle;
}
#commLeft {
width: 197px;
margin: 0;
padding:0;
float: left;
background-color: #EEEFF5;
}
#commRight {
min-height:415px;
height:auto !important;
height: 415px;
margin-left: 215px;
margin-right: 0;
padding-left: 0px;
text-align: left;
}
#class2MenuItem {
width: 100%;
margin: 0px;
padding: 0px;
}
#class2MenuItem li {
display: block;
margin: -1px 0 0 0;
}
#class2MenuItem a {
display: block;
height: 30px;
line-height: 30px;
text-align: left;
text-decoration: none;
color: #000;
padding: 0 20px;
background-color: #fbfbfb;
border: 1px solid #d0d0d0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
#class2MenuItem a.selectClass2Menu {
background-color: #eee;
background-image: -moz-linear-gradient(top , #f7f7f7, #e6e6e6);
background-image: -webkit-gradient(linear,0% 0%, 0% 100%, from(#f7f7f7), to(#e6e6e6));
background-image: -webkit-linear-gradient(top, #f7f7f7, #e6e6e6);
background-image: -o-linear-gradient(top, #f7f7f7, #e6e6e6);
background-image: -ms-linear-gradient(top, #f7f7f7, #e6e6e6);
background-image: linear-gradient(top, #f7f7f7, #e6e6e6);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7f7f7', endColorstr='#e6e6e6', GradientType=0);
color: #0099CC;
}
#class3Menu {
height:30px;
margin-bottom: 30px;
border-bottom: 1px solid #0099CC;
}
#scrollLeftBtn,
#scrollRightBtn {
height: 30px;
width: 30px;
float: left;
}
.EnableScrollBtn {
cursor: pointer;
}
.scrollRightBtn {
background: url("../img/collapse_B.png") no-repeat scroll right center;
}
.scrollLeftBtn {
background: url("../img/leftArrow.png") no-repeat scroll left center;
}
.scrollRightBtnDisable {
background: url("../img/rightArrowDisable.png") no-repeat scroll right center;
cursor: default;
}
.scrollLeftBtnDisable {
background: url("../img/leftArrowDisable.png") no-repeat scroll left center;
cursor: default;
}
#scrollLeftBtn p,
#scrollRightBtn p {
height: 30px;
}
#class3MenuMainContent {
width:697px;
overflow:hidden;
float:left;
margin-top: -1px;
}
#class3MenuMainContent ul {
width: 5000px;
}
#class3MenuMainContent li {
float: left;
list-style: none outside none;
}
#class3MenuMainContent ul p {
text-decoration: none !important;
height: 30px;
line-height: 30px;
padding: 0 30px;
float: left;
cursor: pointer;
}
.AEleMenu3 {
color: #313131;
border: 1px solid #D0D0D0;
border-bottom: 1px solid #0099CC;
background-color: #F5F5F5;
}
.AEleMenu3Selected {
color: #0099CC;
border: 1px solid #0099CC;
border-bottom: 1px solid #FFFFFF;
}
.HeadDIV,
.fakeHeadDIV  {
padding-top: 20px;
}
.pageIntroduce {
font-size: 18px;
}
.pIntroContent {
padding: 8px 0;
}
.row,
.rowBox,
.colorTblRow,
.segmentRow {
clear: both;
}
.row,
.rowBox,
.colorTblRow,
.outRow,
.rowWithoutClear {
min-height: 30px;
height: auto !important;
height: 30px;
padding: 0 25px;
}
.rowBox div {
display: inline-block;
}
.rowPaddingClear {
padding: 0px;
}
.outRow  {
padding: 0;
margin: 10px 0;
}
.selectRow {
min-height: 80px;
}
.segmentRow {
height: 15px;
background-color: #F7F7F7;
}
.left,
.right,
label.cfgLabel {
float: left;
line-height: 30px;
}
.collapBarWithDataTrans,
.collapsibleBar {
padding-left: 25px;
cursor: pointer;
background: url(../img/collapse_B.png) no-repeat 0px 30%;
}
.collapsibleBarExp {
background: url(../img/expand_B.png) no-repeat 0px 30%;
}
.colorTbl {
border: 1px solid #D0D0D0;
line-height: 30px;
margin-top: 10px;
overflow: auto;
}
.colorRow {
background: #EFF8FF;
}
.colorTblRow,
.textareaRow {
padding: 0 25px;
}
.colorTblRow span {
display:inline-block;
*display:inline;
*zoom:1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
margin-right: 3px;
vertical-align: middle;
*vertical-align: top;
}
.titleRow {
background: #C8E6FE;
}
.noDataHint {
height: 30px;
line-height: 30px;
border: 1px solid #D0D0D0;
padding: 0 5px 0 45px;
background: #C8E6FE url(../img/info_s.png) no-repeat 23px 50%;
}
.formTblWrap {
border: 1px solid #D0D0D0;
line-height: 30px;
background: #F7F7F7;
margin: -1px 0;
zoom: 1;
}
.formTbl {
padding: 10px 0 0;
overflow: auto;
*overflow: hidden;
}
.formTblCtrlBar, .addInstBar {
height: 30px;
line-height: 30px;
border: 1px solid #D0D0D0;
background: #EEEEEE;
position: relative;
}
.formTblCtrlBar div {
display: inline;
}
.instName, .instNew {
padding-left: 25px;
outline: none;
color: #313131;
height: 100%;
cursor: pointer;
display: block;
width: 200px;
}
.instName {
background: url(../img/collapse.png) no-repeat 0 50%;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.instNew {
background: url(../img/newInst.png) no-repeat 2px 50%;
}
.instNameExp {
background: url(../img/expand.png) no-repeat 0 50%;
}
.noHand {
cursor: default;
}
.instSwitch {
position: absolute;
left: 300px;
top: 3px;
}
.instDelete,
.closePopLayer {
position: absolute;
right: 20px;
top: 7px;
cursor: pointer;
}
.closePopLayer {
top: 10px;
}
.clear {
clear: both;
overflow:hidden;
}
.ExceedWidthEllipsis {
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.divQoSStatisticsCfg {
padding: 20px;
text-align: left;
}
.picQoSTrans {
background:  url(../img/uploading.gif) no-repeat;
}
.partDivision {
border-bottom: 1px dotted #313131;
padding-bottom: 8px;
margin: 10px 0 30px;
}
.emptyRow10 {
margin: 10px;
}
.emptyRow20 {
margin: 20px;
}
.fontSize {
font-size:15px;
}
.DMSPathDiv {
border: 1px solid #0099CC;
width: 710px;
*width: 690px;
overflow: auto;
margin: 10px auto;
padding: 5px;
}
.hr0 {
height:1px;
border:none;
border-top:1px solid #D0D0D0;
}
.sideShortCut {
position: fixed;
width:28px;
height:50px;
bottom:105px;
right:0px;
_position:absolute;
_right:auto;
cursor:pointer;
z-index: 1000;
}
.BackToTop {
display: block;
height: 50px;
width: 28px;
text-decoration:none;
background: url(../img/TOP.gif) no-repeat;
}
.pinspan {
color: #313131;
background: #E7FFE4;
}
.pin_remain {
color: red;
font-size: 1.1em;
font-weight: bold;
}
._LuQUID_SelAccessDevice{
color: #0099CC;
cursor: pointer;
text-decoration: none;
}
._LuQUID_AccessDeviceList{
margin-left:150px;
height:auto !important;
min-height: 30px;
padding: 0 5px 0 0;
clear: both;
}
._LuQUID_HideAccessDevice{
color: #0099CC;
cursor: pointer;
text-decoration: none;
}
.AddIconControl{
cursor: pointer;
position: relative;
top: 2px;
}
.DelIconControl{
cursor: pointer;
position: relative;
top: 2px;
}
.logo_Claro {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_Claro.png) no-repeat 5px 30px;
}.logo_Antel {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_Antel.png) no-repeat 5px 30px;
}.logo_Tot {
width: 160px;
background: url(../img/Logo_Tot.png) no-repeat 5px 30px;
}
.timeArea_Tot {
left: 190px;
}.logo_Morocco {
background: url(../img/Logo_Morocco.png) no-repeat 5px 30px;
}.logo_IvoryOrange {
background: url(../img/Logo_IvoryOrange.png) no-repeat 5px 30px;
}
.logo_KAMA_Orange {
width: 300px;
height: 72px;
float: left;
background: url(../img/Logo_OMA.png) no-repeat 5px 15px;
}.logo_Orange {
background: url(../img/Logo_Orange.png) no-repeat 5px 30px;
}
.logo_KAMA_Orange {
width: 300px;
height: 72px;
float: left;
background: url(../img/Logo_OMA.png) no-repeat 5px 15px;
}.logo_CTC {
width: 190px;
height: 72px;
float: left;
background: url(../img/Logo_CTC.jpg) no-repeat 5px 40px;
}
.timeArea_CTC
{
left: 200px;
}
.loginTitle_CTC {
padding-left: 0px !important;
}
.logo_Tarr {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_Tarr.png) no-repeat 5px 30px;
}.logo_OMA {
width: 300px;
height: 72px;
float: left;
background: url(../img/Logo_OMA.png) no-repeat 5px 15px;
}
.color_OMA
{
color:#FF6600 !important;
}

</style>
<script type="text/javascript" src="jquery/jquery-3.4.1.min.js"></script>
<!--[if lte IE 8]>
<script type="text/javascript" src="jquery/jquery-3.0.0-alpha1-compat.min.js"></script>
<![endif]-->
<script type="text/javascript" src="jquery/crypto-js.min.js"></script>
<script type="text/javascript" src="jquery/jsencrypt.min.js"></script>
<script type="text/javascript" src="jquery/common_lib.js"></script>
<script type="text/javascript">
function StatusOfLRBtnOf3MenuHandle(nowScrollLocation)
{
if (nowScrollLocation == "")
{
nowScrollLocation = 0;
}
var class3MenuContainerWidth = $("#class3MenuMainContent").width();
var totalTabWidth = $("#_totalTabWidth").val();
if ( nowScrollLocation >= (totalTabWidth - class3MenuContainerWidth) )
{
$("#scrollRightBtn").attr("class","scrollRightBtnDisable");
$("#scrollLeftBtn").attr("class", "scrollLeftBtn EnableScrollBtn");
}
else if ( nowScrollLocation == 0 )
{
$("#scrollLeftBtn").attr("class", "scrollLeftBtnDisable");
$("#scrollRightBtn").attr("class","scrollRightBtn EnableScrollBtn");
}
else
{
$("#scrollRightBtn").attr("class","scrollRightBtn EnableScrollBtn");
$("#scrollLeftBtn").attr("class", "scrollLeftBtn EnableScrollBtn");
}
}
function Menu3TabStyleHandle()
{
var class3MenuContainer = $("#class3MenuMainContent");
var ContainerWidth = $("#commRight").width()- $("#scrollLeftBtn").width()
- $("#scrollRightBtn").width();
class3MenuContainer.width(ContainerWidth);
var tabTotalWidth = 0;
var tab = $("li",class3MenuContainer);
for (var i=0; i< tab.length; i++)
{
var LiWidth = parseInt(tab[i].offsetWidth);
tabTotalWidth = tabTotalWidth + LiWidth;
}
$("#_totalTabWidth").val(tabTotalWidth);
var class3MenuUl = $("ul",class3MenuContainer);
if ( tabTotalWidth > ContainerWidth )
{
class3MenuUl.css("width", 5000);
$("#scrollLeftBtn,#scrollRightBtn").addClass("EnableScrollBtn");
var nowScrollLocation = $("#_Menu3Location").text();
if ((tabTotalWidth-ContainerWidth) < nowScrollLocation)
{
nowScrollLocation = tabTotalWidth-ContainerWidth;
}
class3MenuContainer.scrollLeft(nowScrollLocation);
StatusOfLRBtnOf3MenuHandle(nowScrollLocation);
}
else
{
$("#scrollLeftBtn").removeClass("scrollLeftBtn");
$("#scrollRightBtn").removeClass("scrollRightBtn");
}
}
function MenuItemClass(menuItemJSON) {
this.menuItemJSON = menuItemJSON;
}
MenuItemClass.prototype.findMenu = function (menuid) {
var menuItemJSON = this.menuItemJSON;
var menuItemId = menuItemJSON.id;
if (menuItemId == menuid)
{
return menuItemJSON;
}
var children = menuItemJSON.children;
if ( !children )
{
return null;
}
for (var i = 0; i < children.length; i++) {
var childItem = children[i];
var childID = childItem.id;
if ( menuid == childID )
{
return childItem;
}
if ( childItem.children )
{
var childObj = new MenuItemClass(childItem);
var targetMenu = childObj.findMenu(menuid);
if (targetMenu)
{
return targetMenu;
}
}
}
return null
}
MenuItemClass.prototype.getLeftMostPageJSON = function () {
var menuItemJSON = this.menuItemJSON;
var menuItemId = menuItemJSON;
var children = menuItemJSON.children;
if ( !children )
{
return menuItemJSON;
}
var leftMostSon = children[0];
var menuObj = new MenuItemClass(leftMostSon);
return menuObj.getLeftMostPageJSON();
}
function MenuTreeClass(menuTreeJSON)
{
this.menuTreeJSON = menuTreeJSON
}
MenuTreeClass.prototype.findMenu = function(menuid) {
var menuTreeJSON = this.menuTreeJSON
for (var i = 0; i < menuTreeJSON.length; i++) {
var menu1table = menuTreeJSON[i];
var menu1Obj = new MenuItemClass(menu1table);
var targetMenu = menu1Obj.findMenu(menuid);
if ( targetMenu )
{
return targetMenu;
}
}
return null
};
function GetLeftMostPageID(menuid)
{
var menuTable = menuTreeObj.findMenu(menuid);
var menuObj = new MenuItemClass(menuTable);
var pageJSON = menuObj.getLeftMostPageJSON();
return pageJSON.id;
}
function Class3MenuShow(selectPageID, selectSupId, selectMidId, selectThdId)
{
if ( selectThdId == "" )
{
$("#class3Menu").css("display", "none");
return;
}
var class2MenuNode = menuTreeObj.findMenu(selectMidId);
var class3MenuJSON = class2MenuNode.children;
var class3MenuContent = "";
for (var index in class3MenuJSON)
{
var menu = class3MenuJSON[index]
var class3MenuID = menu.id
var class3MenuName = menu.name
if ( class3MenuID == selectThdId )
{
AEleMenu3Class = "AEleMenu3Selected";
}
else
{
AEleMenu3Class = "AEleMenu3";
}
class3MenuContent = class3MenuContent
+ "<li><p class='" + AEleMenu3Class + "'"
+ "MenuClass='3'"
+ "id='"+ class3MenuID + "'"
+ "MenuPage='"+ GetLeftMostPageID(class3MenuID) +"'"
+ "href='#" + class3MenuID + "'>"
+ class3MenuName
+ "</p></li>";
}
$("#class3MenuMainContent ul").html(class3MenuContent);
$("#class3MenuMainContent ul li p").click(function(){
var MenuOBJ = $(this);
if ( !checkDisClickAttr(MenuOBJ) )
{
return;
}
AjaxQuery_ClassMenuClick(MenuOBJ);
});
Menu3TabStyleHandle();
$(window).resize(function(){
Menu3TabStyleHandle();
});
var t;
$("#scrollRightBtn,#scrollLeftBtn").mousedown(function(e){
if ( ! $(this).hasClass("EnableScrollBtn"))
{
consoleLog("no scroll button!!");
return;
}
var step = 10;
if ( $(this).attr("id") == "scrollLeftBtn" )
{
step = 0-step;
}
if(1 == e.which)
{
t = window.setInterval(function() {
var scrollTarget = $("#class3MenuMainContent");
var nowPosition = scrollTarget.scrollLeft();
var tabWidth = $("#_totalTabWidth").val();
var srcollTotalLen = tabWidth - scrollTarget.width();
if ( (srcollTotalLen - nowPosition) >= step )
{
scrollTarget.scrollLeft(nowPosition + step);
}
else if ( (srcollTotalLen - nowPosition) >= 0 )
{
scrollTarget.scrollLeft(srcollTotalLen);
}
var afterPosition = scrollTarget.scrollLeft();
StatusOfLRBtnOf3MenuHandle(afterPosition);
}, 20);
}
});
$("#scrollRightBtn,#scrollLeftBtn").mouseup(function(e){
if(1 == e.which)
{
window.clearInterval(t);
}
});
}
function Class2MenuShow(selectPageID, selectSupId, selectMidId)
{
if ( selectMidId == "" )
{
return;
}
var class1MenuNode = menuTreeObj.findMenu(selectSupId);
var class2MenuJSON = class1MenuNode.children;
var class2MenuContent = "";
var class2MenuClass = "";
for (var index in class2MenuJSON)
{
var menu = class2MenuJSON[index]
var class2MenuID = menu.id
var class2MenuName = menu.name
if ( class2MenuID == selectMidId )
{
class2MenuClass = "selectClass2Menu";
}
else
{
class2MenuClass = "";
}
class2MenuContent = class2MenuContent
+ "<li>"
+ "<a class='" + class2MenuClass + "' "
+ "href='javascript:void(0);' "
+ "MenuClass='2' "
+ "id='"+ class2MenuID + "' "
+ "MenuPage='"+ GetLeftMostPageID(class2MenuID)
+ "' title='" + class2MenuName
+ "'>"
+ class2MenuName
+ "</a></li>";
}
$("#class2MenuItem").html(class2MenuContent);
$("#class2MenuItem li a").click(function(){
var MenuOBJ = $(this);
if ( !checkDisClickAttr(MenuOBJ) )
{
return;
}
AjaxQuery_ClassMenuClick(MenuOBJ);
});
}
function Class1MenuShow(selectPageID, selectSupId)
{
var FirstMenuContent = "<ul>";
var SupClass = "";
var SupLiID = "";
var FirstOne = "yes";
var navBarWidth = $("#mainNavigator").width();
var leftPadWidth = $("#mn_first").width();
var rightPadWidth = $("#mn_last").width();
var menuAreaWidth = navBarWidth - leftPadWidth - rightPadWidth;
menuAreaWidth -= 7;
var menuWidth = menuAreaWidth/(menuTreeJSON.length);
menuWidth = Math.floor(menuWidth);
for (var index in menuTreeJSON)
{
var menu = menuTreeJSON[index]
var supId = menu.id
var supName = menu.name
if ( supId == selectSupId )
{
SupClass = "SelectMenuItem";
}
else
{
SupClass = "MenuItem";
}
if ( FirstOne == "yes" )
{
SupLiID = "homeLi";
FirstOne = "no";
}
else
{
SupLiID = "";
}
FirstMenuContent = FirstMenuContent
+ "<li id=\"" + SupLiID + "\">"
+ "<a href=\"javascript:void(0);\" class=\"" + SupClass
+ "\" "
+ "style='width:" + menuWidth + "px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;' "
+ "MenuClass='1' "
+ "id='"+ supId + "' "
+ "MenuPage='"+ GetLeftMostPageID(supId) +"'"
+ " title='" + supName +"'>"
+ supName
+ "</a></li>";
}
FirstMenuContent = FirstMenuContent + "</ul>";
$("#mn_li").html(FirstMenuContent);
$("#mn_li li a").click(function(){
var MenuOBJ = $(this);
if ( !checkDisClickAttr(MenuOBJ) )
{
return;
}
AjaxQuery_ClassMenuClick(MenuOBJ);
});
}
function checkDisClickAttr(obj)
{
if ("off" == obj.attr("EnableClick"))
{
return false;
}
handleDisClickAttr("off");
return true;
}
function handleDisClickAttr(ret)
{
var selectSupId = $("#_NowSupIdInfo",_MenuInfo).text();
var selectMidId = $("#_NowMidIdInfo",_MenuInfo).text();
var selectThdId = $("#_NowThdIdInfo",_MenuInfo).text();
if(selectThdId)
{
var objs = [$("#" + selectSupId),$("#" + selectMidId),$("#" + selectThdId)];
}
else
{
if(selectMidId)
{
var objs = [$("#" + selectSupId),$("#" + selectMidId)];
}
else
{
var objs = [$("#" + selectSupId)];
}
}
for (var i = 0; i < objs.length; i++)
{
if (objs[i].length > 0)
{
objs[i].attr("EnableClick", ret);
}
}
}
function AjaxPageGet(PageName, MenuClass)
{
var pageContainer = $("#commPageContainer");
pageContainer.succfunction = function(html){
pageContainer.html(html);
var _MenuInfo = $("#_MenuInfo");
var selectPageID = $("#_NextPageInfo",_MenuInfo).text();
var selectSupId = $("#_NowSupIdInfo",_MenuInfo).text();
var selectMidId = $("#_NowMidIdInfo",_MenuInfo).text();
var selectThdId = $("#_NowThdIdInfo",_MenuInfo).text();
if ( "mmHome" == selectPageID )
{
$(document).scrollTop(0);
return;
}
if (MenuClass == '1')
{
Class1MenuShow(selectPageID, selectSupId);
}
Class2MenuShow(selectPageID, selectSupId, selectMidId);
Class3MenuShow(selectPageID, selectSupId, selectMidId, selectThdId);
$(document).scrollTop(0);
handleDisClickAttr("on");
};
pageContainer.errorfunction = function(){
consoleLog("page get fail");
showWaitTip(false);
pageContainer.html("Page request failed, please try again!");
handleDisClickAttr("on");
};
showWaitTip(true);
pageContainer.dataTransfer( PageName, "GET", pageContainer.succfunction,
pageContainer.errorfunction, false,
undefined, 'html'
);
}
function AjaxQuery_ClassMenuClick(MenuOBJ)
{
var MenuClass = MenuOBJ.attr("MenuClass");
var page = MenuOBJ.attr("MenuPage");
var scrollTarget = $("#class3MenuMainContent");
var Menu3Location = scrollTarget.scrollLeft();
var pageFile = "/?_type=menuView&_tag="
+ page + "&Menu3Location=0";
if ( MenuClass == 3 )
{
pageFile = "/?_type=menuView&_tag="
+ page + "&Menu3Location=" + Menu3Location;
}
AjaxPageGet(pageFile, MenuClass);
}
function openLink(pageurl)
{
var PageName = "/?_type=menuView&_tag=" + pageurl;
AjaxPageGet(PageName, 1);
}
function MenuShow(Menuclass, selectPageID, selectSupId, selectMidId, selectThdId)
{
if (Menuclass == "ClassAll")
{
Class1MenuShow(selectPageID, selectSupId);
Class2MenuShow(selectPageID, selectSupId, selectMidId);
Class3MenuShow(selectPageID, selectSupId, selectMidId, selectThdId);
}
else if (Menuclass == "ClassOne")
{
Class1MenuShow(selectPageID, selectSupId);
}
else if (Menuclass == "ClassTwo")
{
Class2MenuShow(selectPageID, selectSupId);
}
else
{
consoleLog("[menu_api.lp][MenuShow]    Menuclass("+ Menuclass + "filling is not right!!");
}
}
function FakeClass1MenuShow()
{
var FirstMenuContent = "<ul>";
var SupClass = "MenuItem";
var SupLiID = "";
var FirstOne = "yes";
var navBarWidth = $("#mainNavigator").width();
var leftPadWidth = $("#mn_first").width();
var rightPadWidth = $("#mn_last").width();
var menuAreaWidth = navBarWidth - leftPadWidth - rightPadWidth;
menuAreaWidth -= 7;
var menuWidth = menuAreaWidth/(menuTreeJSON.length);
menuWidth = Math.floor(menuWidth);
for (var index in menuTreeJSON)
{
var menu = menuTreeJSON[index]
var supId = menu.id
var supName = menu.name
if ( FirstOne == "yes" )
{
SupLiID = "homeLi";
FirstOne = "no";
}
else
{
SupLiID = "";
}
FirstMenuContent = FirstMenuContent
+ "<li id=\"" + SupLiID + "\">"
+ "<a href=\"javascript:void(0);\" class=\"" + SupClass
+ "\" "
+ "style='width:" + menuWidth + "px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; "
+ "color:#BFBDBE; cursor:default;'"
+ " hidefocus=\"true\" onclick=\" \" title=\"" + supName + "\">"
+ supName
+ "</a></li>";
}
FirstMenuContent = FirstMenuContent + "</ul>";
$("#mn_li").html(FirstMenuContent);
}
function showWaitTip(show, TipMsg, StopTag)
{
var TipMsgTmp = TipMsg;
if( show )
{
$("#blackMask,#tipLayer,#confirmBtnArea").css("display", "block");
if (TipMsgTmp == undefined || TipMsgTmp == "")
{
$("#waitingImgArea").css("display", "none");
if(true==StopTag)
{
$("#confirmStop").css("display", "block");
$("#confirmCancel,#confirmOK").css("display", "none");
}
else
{
$("#confirmStop").css("display", "none");
$("#confirmCancel,#confirmOK").css("display", "block");
}
}
else
{
$("#confirmLayer, #waitingImgArea").css("display", "block");
$("#confirmMsg p").text(TipMsgTmp);
if(true==StopTag)
{
$("#confirmStop").css("display", "block");
$("#confirmCancel,#confirmOK").css("display", "none");
}
else
{
$("#confirmCancel,#confirmOK,#confirmStop").css("display", "none");
}
}
reposition_box("tipLayer");
}
else
{
$("#blackMask, #tipLayer, #confirmLayer").css("display", "none");
}
}
function IniConfirm(msg)
{
showWaitTip(true);
var confirmLayerOBJ = $("#confirmLayer");
confirmLayerOBJ.css("display", "block");
$("#confirmMsg p",confirmLayerOBJ).text(msg);
$("#confirmCancel",confirmLayerOBJ).unbind( "click" );
$("#confirmOK",confirmLayerOBJ).unbind( "click" );
$("#confirmStop",confirmLayerOBJ).unbind( "click" );
$("#confirmCancel",confirmLayerOBJ).bind("click", function(event){
showWaitTip(false);
});
$("#confirmCancel",confirmLayerOBJ).focus();
return confirmLayerOBJ;
}
function getStyle(obj,attr)
{
if (obj.currentStyle)
{
return obj.currentStyle[attr];
}
else
{
return document.defaultView.getComputedStyle(obj,null)[attr];
}
}
function reposition_box(divId)
{
var box=document.getElementById(divId);
if (null!=box)
{
var boxObj = $("#"+divId);
var winH = $(window).height();
var winW = $(window).width();
var divH = boxObj.height();
var divW = boxObj.width();
var h = (winH-divH)/2;
h = (h > 0) ? h : 5;
var w = (winW-divW)/2;
w = (w > 0) ? w : 5;
boxObj.css({top:h, left:w});
if ( divH > winH || divW > winW)
{
boxObj.css("position", "absolute");
}
else
{
boxObj.css("position", "fixed");
}
}
}
$.validator.setDefaults({
errorPlacement: function (error, element) {
var tipHTML = "<div class=\"errorLabelWraper\"></div>";
var tipObj = $(tipHTML);
error.appendTo(tipObj);
var rowObj = element.closest(".row");
if ( rowObj.length == 0 )
{
consoleLog("element id=["+element.attr("id")+"] is not in row div.");
return ;
}
var rowWidth = rowObj.width();
var usedWidth = 0;
var rightObj = undefined;
rowObj.children().each(function(){
if (!($(this).hasClass("_LuQUID_AccessDeviceList")||
$(this).hasClass("clear"))){
usedWidth += $(this).outerWidth(true);
}
if ($(this).hasClass("right")){
rightObj = $(this);
}
});
var errWidth = rowWidth - usedWidth;
var widthtmp = errWidth-5-23-10;
if(widthtmp < 1)
{
tipObj.removeAttr("style","");
}
else
{
tipObj.width(widthtmp);
}
if (rightObj != undefined)
{
tipObj.insertAfter(rightObj);
}
else
{
tipObj.appendTo(rowObj);
}
}
});
jQuery.extend(jQuery.validator.messages, {
required: "This field is required. ",
remote: "Please fix this field. ",
email: "Please enter a valid email address. ",
url: "Please enter a valid URL. ",
date: "Please enter a valid date. ",
dateISO: "Please enter a valid date (ISO). ",
number: "Please enter a valid number. ",
digits: "Please enter an integer. ",
creditcard: "Please enter a valid credit card number. ",
equalTo: "Please enter the same value again. ",
maxlength: jQuery.validator.format("Please enter no more than {0} characters. "),
minlength: jQuery.validator.format("Please enter at least {0} characters. "),
rangelength: jQuery.validator.format("Please enter a value with {0} ~ {1} characters. "),
range: jQuery.validator.format("Please enter a value between {0} and {1}. "),
max: jQuery.validator.format("Please enter a value less than or equal to {0}. "),
min: jQuery.validator.format("Please enter a value greater than or equal to {0}. ")
});
function AsciiPasswordCheck(Key)
{
for (var j = 0 ;j < Key.length; j++)
{
var ch = Key.charCodeAt(j);
if(ch == 9)
{
return false;
}
}
return true;
}
function AsciiCheck(Key)
{
for (var j = 0 ;j < Key.length; j++)
{
var ch = Key.charCodeAt(j);
if(ch<32 || ch>126)
{
return false;
}
}
return true;
}
function AsciiCheckWithLen(Key, LenLimit)
{
if (Key.length != LenLimit)
{
return false;
}
if ( false == AsciiCheck(Key) )
{
return false;
}
return true;
}
function HexCheck(Key)
{
for (var j = 0 ;j < Key.length; j++)
{
var ch = Key.charCodeAt(j);
if (!((ch >= 65 && ch <= 70)
||(ch >= 97 && ch <= 102)
||(ch >= 48 && ch <= 57)))
{
return false;
}
}
return true;
}
function HexCheckWithLen(Key, LenLimit)
{
if (Key.length != LenLimit)
{
return false;
}
if ( false == HexCheck(Key) )
{
return false;
}
return true;
}
function checkIPv4Addr(ipaddr)
{
var re = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;
if(re.test(ipaddr) == true)
{
var parts = ipaddr.split(".");
for(var i=0; i<parts.length; i++)
{
if(parts[i].indexOf("0") == 0 && parts[i].length > 1)
return false;
if (parseInt((parts[i]),10) > 255 || parseInt((parts[i]),10) < 0)
{
return false;
}
}
return true;
}
return false;
}
function checkMacAddr(macaddr)
{
var regSingleByte = new RegExp(":","g");
var regexp = /^([A-Fa-f0-9]{2}-){5}[A-Fa-f0-9]{2}$/;
macaddr = macaddr.replace(regSingleByte,"-");
if (!regexp.test(macaddr)) {
return false;
}
return true;
}
jQuery.validator.addMethod(
"macAddr",
function(value, element, params) {
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if(checkMacAddr(value) == true)
{
return true;
}
return false;
},
"Please enter a valid MAC Address. "
);
jQuery.validator.addMethod(
"IPv4Addr",
function(value, element, params) {
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if(checkIPv4Addr(value) == true)
{
return true;
}
return false;
},
"Please enter a valid IPv4 Address. "
);
jQuery.validator.addMethod(
"IPv6Addr",
function(value, element, params) {
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (value.match("[^0-9a-fA-F:.]") != null)
return false;
addrParts = value.split(':');
Doublecolon = value.split('::');
ipv4Parts = value.split('.');
if(addrParts.length<3||addrParts.length>8)
{
return false;
}
else if(Doublecolon.length==1&&ipv4Parts.length==1&&addrParts.length!=8)
{
return false;
}
else if(Doublecolon.length==1&&ipv4Parts.length>1&&addrParts.length!=6)
{
return false;
}
else if(Doublecolon.length>1&&ipv4Parts.length>1&&addrParts.length>6)
{
return false;
}
else if(Doublecolon.length>2||value.split(':::').length>1)
{
return false;
}
else
{
if(addrParts[0]==""&&addrParts[1]!="")
{
return false;
}
for(var i=0;i<addrParts.length;i++)
{
if(i==addrParts.length-1&&addrParts[i]==""&&addrParts[i-1]!="")
{
return false;
}
if(addrParts[i].length>4 && addrParts[i].split('.').length<2)
{
return false;
}
}
}
var pos = value.lastIndexOf(":");
var ipv4Parts = value.split('.');
if(ipv4Parts.length>1)
{
var ipv4=value.substring(pos+1,value.length);
if( false == checkIPv4Addr(ipv4) )
{
return false;
}
}
return true;
},
"Please enter a valid IPv6 Address. "
);
jQuery.validator.addMethod(
"DomainName",
function(value, element, params) {
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var len = value.length;
var firstChar = value.substr(0,1);
var lastChar = value.substr(len-1,1);
var maxlen = 64;
if(len>64||len<1)
{
return false;
}
if (value.match("[^0-9a-zA-Z.-]") != null)
{
return false;
}
if(firstChar.match("[^0-9a-zA-Z]") != null)
{
return false;
}
if(lastChar.match("[^0-9a-zA-Z]") != null)
{
return false;
}
var pos = value.lastIndexOf(".");
if(pos == -1)
{
var str = value;
var templen = value.length;
for(var i=0;i<len;i++)
{
var tempvalue = str.substring(i,i+1);
if(isNaN(parseInt(tempvalue)))
{
return true;
}
}
return false;
}
else
{
var str = value.substr(pos+1);
var tmplen = value.length - (pos + 1);
for(var i=0;i<tmplen;i++)
{
var tmpvalue = str.substring(i,i+1);
if(isNaN(parseInt(tmpvalue)))
{
return true;
}
}
return false;
}
},
"Please enter a valid Domain Name. "
);
jQuery.validator.addMethod(
"HostName",
function(value, element, params) {
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var len = value.length;
var firstChar = value.substr(0,1);
var lastChar = value.substr(len-1,1);
if (value.match("[^0-9a-zA-Z.-]") != null)
{
return false;
}
if(firstChar.match("[^0-9a-zA-Z]") != null)
{
return false;
}
if(lastChar.match("[^0-9a-zA-Z]") != null)
{
return false;
}
var pos = value.lastIndexOf(".");
if(pos == -1)
{
var str = value;
var templen = value.length;
for(var i=0;i<len;i++)
{
var tempvalue = str.substring(i,i+1);
if(isNaN(parseInt(tempvalue)))
{
return true;
}
}
return false;
}
else
{
var str = value.substr(pos+1);
var tmplen = value.length - (pos + 1);
for(var i=0;i<tmplen;i++)
{
var tmpvalue = str.substring(i,i+1);
if(isNaN(parseInt(tmpvalue)))
{
return true;
}
}
return false;
}
},
"Please enter a valid Host Name. "
);
jQuery.validator.addMethod(
"url",
function(value, element, params) {
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var len = value.length;
if( (len < 1) || (len > 256) )
{
return false;
}
if (value.match("[^0-9a-zA-Z.:;,!@%#?_/&=+*'$()\\[\\]-]") != null)
{
return false;
}
return true;
},
"Please enter a valid URL. "
);
jQuery.validator.addMethod(
"PasswordASCII",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (value == "						")
{
return true;
}
if ( false == AsciiPasswordCheck(value) )
{
params = 0;
return false;
}
if ( false == AsciiCheck(value) )
{
params = 1;
return false;
}
return true;
},
function(param, element)
{
var error = ["The format of password is wrong. Please clear it and re-enter. ", "Please enter only ASCII characters. "];
var value = $(element).val();
var ret = 0;
if ( false == AsciiPasswordCheck(value) )
{
ret = 0;
}
else if( false == AsciiCheck(value) )
{
ret = 1;
}
else
{
}
if ( ret <= error.length )
{
return error[ret];
}
}
);
jQuery.validator.addMethod(
"ASCII",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if ( false == AsciiCheck(value) )
{
return false;
}
return true;
},
"Please enter only ASCII characters. "
);
jQuery.validator.addMethod(
"PassStrong",
function(value, element, params)
{
var num = 0;
for (var j = 0 ;j < value.length; j++)
{
var ch = value.charCodeAt(j);
if(ch<32 || ch>126)
{
return false;
}
}
if (value.length < 8)
return false;
if((/[0-9]+/).test(value))
num = num+1;
if((/[a-z]+/).test(value))
num = num+1;
if((/[A-Z]+/).test(value))
num = num+1;
if((/[!"#$%&'()*+,-./:;<=>?@\[\\\]^_`{|}~]+/).test(value))
num = num+1;
if(num < 3)
return false;
return true;
},
"Please enter a strong password!"
);
jQuery.validator.addMethod(
"utf8",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
return true;
},
"Please enter only ASCII characters. "
);
jQuery.validator.addMethod(
"WEPKey128Bit",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var AsciiLenLimit = 13;
var HexLenLimit = 26;
if ( AsciiCheckWithLen(value, AsciiLenLimit) == false
&& HexCheckWithLen(value, HexLenLimit) == false )
{
return false;
}
return true;
},
"Please enter 13 ASCII characters or 26 hexadecimal digits. "
);
jQuery.validator.addMethod(
"WEPAsciiOrHexLen",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var AsciiLenLimit = 5;
var HexLenLimit = 10;
var AsciiLenLimit13 = 13;
var HexLenLimit26 =26;
if (AsciiCheckWithLen(value, AsciiLenLimit) == false
&& HexCheckWithLen(value, HexLenLimit) == false
&& AsciiCheckWithLen(value, AsciiLenLimit13) == false
&& HexCheckWithLen(value, HexLenLimit26) == false)
{
return false;
}
return true;
},
"Please enter 5 or 13 ASCII characters, or enter 10 or 26 hexadecimal digits. "
);
jQuery.validator.addMethod(
"HEX",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if ( HexCheck(value) == false )
{
return false;
}
return true;
},
"Please enter only hexadecimal characters. "
);
jQuery.validator.addMethod(
"fixedlength",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (value.length != param)
{
return false;
}
return true;
},
jQuery.validator.format("Please enter {0} characters. ")
);
jQuery.validator.addMethod(
"fixedValue",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (value != param)
{
return false;
}
return true;
},
jQuery.validator.format("The only allowed value is {0}.")
);
function hexCompare(hexNum, hexRefer)
{
var num = parseInt(hexNum, 16);
var refer = parseInt(hexRefer, 16);
if (num < refer)
{
return -1;
}
else if (num > refer)
{
return 1;
}
else
{
return 0;
}
}
jQuery.validator.addMethod(
"hexRange",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (typeof(params[0]) == "object")
{
for (var i=0; i<params.length; i++)
{
var range = params[i];
if (typeof(range) == "object")
{
if (hexCompare(value, range[0]) != -1 && hexCompare(value, range[1]) != 1 )
{
return true;
}
}
}
}
else
{
if (hexCompare(value, params[0]) != -1 && hexCompare(value, params[1]) != 1 )
{
return true;
}
}
return false;
},
function(params, element){
var rangesStr = "";
if (typeof(params[0]) == "object")
{
var rangesLen = params.length;
for (var i=0; i<rangesLen; i++)
{
var range = params[i];
if (hexCompare(range[0], range[1]) != 0)
{
rangesStr += range[0] + "~" + range[1];
}
else
{
rangesStr += range[0];
}
if ( i < rangesLen-1 )
{
rangesStr += ", ";
}
}
}
else
{
rangesStr = params[0] + "~" + params[1];
}
return $.validator.format("Please enter a hexadecimal value in the ranges of {0}. ", rangesStr);
}
);
jQuery.validator.addMethod(
"ranges",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var rangesLen = param.length;
for (var i=0; i<rangesLen; i++)
{
var range = param[i];
if ( typeof range === 'number' )
{
if ( value == range )
{
return true;
}
}
else
{
if ( value >= range[0] && value <= range[1] )
{
return true;
}
}
}
return false;
},
function(param, element){
var rangesStr = "";
var rangesLen = param.length;
for (var i=0; i<rangesLen; i++)
{
var range = param[i];
if ( typeof range === 'number' )
{
rangesStr += range;
}
else
{
rangesStr += range[0] + "~" + range[1];
}
if ( i < rangesLen-1 )
{
rangesStr += ",";
}
}
return $.validator.format("Please enter a value in the ranges of {0}. ", rangesStr);
}
);
jQuery.validator.addMethod(
"integer",
function(value, element, params)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
return /^-?\d+$/.test(value);
},
"Please enter an integer. "
);
jQuery.validator.addMethod(
"concurrence",
function(value, element, param)
{
if (1 > param.length)
{
return true;
}
var obj = get_element_obj($(element), param[0]);
if (obj.is(":hidden"))
{
return true;
}
if ("" == value && "" == obj.val())
{
return true;
}
if ("" != value && "" != obj.val())
{
return true;
}
return false;
},
"Please input valid prefix. "
);
function get_element_obj(obj, id)
{
var instTplt = obj.closest("[id^=template_]");
var elementID = obj.attr("id");
var arr = elementID.split(':');
var strId = id;
if (arr.length > 1)
{
var exNum = arr[arr.length-1];
strId = id + ":" + exNum;
}
return $("[id^='"+strId+"']", instTplt);
};
function test_greatThan(obj, value, param, type)
{
if ("errstring" == type )
{
var tempstring = {
"1" : param[2].separate ? "Please enter a value greater than \"{0}\". " : "Please enter a value greater than the former. " ,
"2" : param[2].separate ? "Please enter a value not less than \"{0}\". " : "Please enter a value not less than the former. " ,
"3" : param[2].separate ? "Please ensure the difference with the latter not greater than {1}. " : "Please ensure the difference with the former not greater than {1}. "
};
return $.validator.format(tempstring[param[2].ret], param[2].idtext, param[2].discrepantMode);
}
else
{
var tmpvalue = obj.val();
var ret = true;
if (param[2].equal)
{
ret = Number(value) >= Number(tmpvalue);
if (!ret)
{
param[2].ret = "2";
return false;
}
}
else
{
ret = Number(value) > Number(tmpvalue);
if (!ret)
{
param[2].ret = "1";
return false;
}
}
if (param[2].discrepantMode)
{
ret = Number(value) - Number(tmpvalue) <= Number(param[2].discrepantMode);
if (!ret)
{
param[2].ret = "3";
return false;
}
}
obj.parent().next().children().hide();
return true;
}
};
function test_lessThan(obj, value, param, type)
{
if ("errstring" == type )
{
var tempstring = {
"1" : param[2].separate ? "Please enter a value less than \"{0}\". " : "Please enter a value less than the latter. " ,
"2" : param[2].separate ? "Please enter a value not greater than \"{0}\". " : "Please enter a value not greater than the latter. " ,
"3" : param[2].separate ? "Please ensure the difference with the former not greater than {1}. " : "Please ensure the difference with the latter not greater than {1}. "
};
return $.validator.format(tempstring[param[2].ret], param[2].idtext, param[2].discrepantMode);
}
else
{
var tmpvalue = obj.val();
var ret = true;
if (param[2].equal)
{
ret = Number(value) <= Number(tmpvalue);
if (!ret)
{
param[2].ret = "2";
return false;
}
}
else
{
ret = Number(value) < Number(tmpvalue);
if (!ret)
{
param[2].ret = "1";
return false;
}
}
if (param[2].discrepantMode)
{
ret = Number(tmpvalue) - Number(value) <= Number(param[2].discrepantMode)
if (!ret)
{
param[2].ret = "3";
return false;
}
}
obj.parent().next().children().hide();
return true;
}
};
jQuery.validator.addMethod(
"extremumRange",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (2 > param.length)
{
return true;
}
var obj = get_element_obj($(element), param[1]);
if (3 > param.length)
{
param[2] = {};
}
param[2]["idtext"] = obj.parent().prev().text();
if (obj.is(":hidden") || "" == obj.val())
{
return true;
}
var selectMode = {
"greatThan" : test_greatThan,
"lessThan" : test_lessThan
};
return selectMode[param[0]](obj, value, param);
},
function(param,element)
{
var selectMode = {
"greatThan" : test_greatThan,
"lessThan" : test_lessThan
};
return selectMode[param[0]]("", "", param, "errstring");
}
);
function range_greatThan(obj, value, param, type)
{
if ("errstring" == type )
{
var tempstring = {
"1" : param[2].separate ? "Please enter a value greater than \"{0}\". " : ( param[2].objPosition =="first" ? "Please enter a value greater than the former. " : "Please enter a value greater than the latter." ),
"2" : param[2].separate ? "Please enter a value not less than \"{0}\". " : ( param[2].objPosition =="first" ? "Please enter a value not less than the former. " : "Please enter a value not less than the latter. " ) ,
"3" : param[2].separate ? "Please ensure the difference with \"{0}\" not greater than {1}. " : ( param[2].objPosition =="first" ? "Please ensure the difference with the former not greater than {1}. " : "Please ensure the difference with the latter not greater than {1}. ")
};
return $.validator.format(tempstring[param[2].ret], param[2].idtext, param[2].discrepantMode);
}
else
{
obj.parent().next().children().hide();
var tmpvalue = obj.val();
var ret = true;
if (param[2].equal)
{
ret = Number(value) >= Number(tmpvalue);
if (!ret)
{
param[2].ret = "2";
return false;
}
}
else
{
ret = Number(value) > Number(tmpvalue);
if (!ret)
{
param[2].ret = "1";
return false;
}
}
if (param[2].discrepantMode)
{
ret = Number(value) - Number(tmpvalue) <= Number(param[2].discrepantMode);
if (!ret)
{
param[2].ret = "3";
return false;
}
}
return true;
}
};
function range_lessThan(obj, value, param, type)
{
if ("errstring" == type )
{
var tempstring = {
"1" : param[2].separate ? "Please enter a value less than \"{0}\". " : ( param[2].objPosition == "first" ? "Please enter a value less than the former. " : "Please enter a value less than the latter. " ),
"2" : param[2].separate ? "Please enter a value not greater than \"{0}\". " : ( param[2].objPosition == "first" ? "Please enter a value not greater than the former." : "Please enter a value not greater than the latter. " ),
"3" : param[2].separate ? "Please ensure the difference with \"{0}\" not greater than {1}. " : ( param[2].objPosition == "first" ? "Please ensure the difference with the former not greater than {1}. " : "Please ensure the difference with the latter not greater than {1}. " )
};
return $.validator.format(tempstring[param[2].ret], param[2].idtext, param[2].discrepantMode);
}
else
{
obj.parent().next().children().hide();
var tmpvalue = obj.val();
var ret = true;
if (param[2].equal)
{
ret = Number(value) <= Number(tmpvalue);
if (!ret)
{
param[2].ret = "2";
return false;
}
}
else
{
ret = Number(value) < Number(tmpvalue);
if (!ret)
{
param[2].ret = "1";
return false;
}
}
if (param[2].discrepantMode)
{
ret = Number(tmpvalue) - Number(value) <= Number(param[2].discrepantMode)
if (!ret)
{
param[2].ret = "3";
return false;
}
}
return true;
}
};
jQuery.validator.addMethod(
"compareRange",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
if (2 > param.length)
{
return true;
}
var obj = get_element_obj($(element), param[1]);
if (3 > param.length)
{
param[2] = {};
}
param[2]["idtext"] = obj.parent().prev().text();
var selectMode = {
"greatThan" : range_greatThan,
"lessThan" : range_lessThan
};
return selectMode[param[0]](obj, value, param);
},
function(param,element)
{
var selectMode = {
"greatThan" : range_greatThan,
"lessThan" : range_lessThan
};
return selectMode[param[0]]("", "", param, "errstring");
}
);
jQuery.validator.addMethod(
"banValue",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var paramLen = param.length;
for (var i = 0;i < paramLen;i++)
{
var range = param[i];
if (typeof range === 'string' )
{
if (value == range)
{
return false;
}
}
else
{
if (value >= range[0] && value <= range[1])
{
return false;
}
}
}
return true;
},
function(param, element){
var rangesStr = "";
var paramLen = param.length;
for (var i=0; i<paramLen; i++)
{
var paraVal = param[i];
if ( "object" === typeof paraVal )
{
rangesStr += paraVal[0] + "~" + paraVal[1];
}
else
{
rangesStr += paraVal;
}
if ( i < paramLen-1 )
{
rangesStr += ", ";
}
}
if (paramLen > 1)
{
return $.validator.format("Please ensure the input NOT in the ranges of \"{0}\". ", rangesStr);
}
else
{
return $.validator.format("Please ensure the input NOT equal to \"{0}\". ", rangesStr);
}
}
);
jQuery.validator.addClassRules({
ipSepCheck: {
"required": true,
"integer": true,
"range":[0,255]
},
macSepCheck:{
"required": true,
"HEX": true,
"fixedlength": 2
}
});
function compareIPv4(firstIP, secondIP)
{
var fIP;
var sIP;
fIP = firstIP.split(".");
sIP = secondIP.split(".");
for (var i = 0; i < 4; i++)
{
if (fIP[i] != "" && sIP[i] != "")
{
fIP[i] = parseInt(fIP[i],10);
sIP[i] = parseInt(sIP[i],10);
}
if (fIP[i] > sIP[i])
{
return 1;
}
else if (fIP[i] < sIP[i])
{
return -1;
}
}
return 0;
}
function checkWholeIPv4(k, v, ipValue,template)
{
var vLen = v.length;
var retMsg = "";
for (var j = 0; j < vLen; j++)
{
if (retMsg != "")
{
retMsg += ", ";
}
var range = v[j];
if (typeof range === 'string')
{
retMsg += range;
}
else
{
retMsg += range[0]+" ~ "+range[1];
}
}
if (k == "banValue")
{
retMsg = " is NOT allowed to input the following value(s): {0}. ".format(retMsg);
for (var i = 0; i < vLen; i++)
{
var range = v[i];
if (typeof range === 'string')
{
if (ipValue == range)
{
return [false, k, retMsg];
}
}
else
{
if ("-1" != compareIPv4(ipValue, range[0]) &&
"1" != compareIPv4(ipValue, range[1]))
{
return [false, k, retMsg];
}
}
}
}
else if (k == "allowRange")
{
retMsg = "'s input is invalid. Please ensure the input is in the following range: {0}. ".format(retMsg);
for (var i = 0; i < vLen; i++)
{
var range = v[i];
if ("-1" != compareIPv4(ipValue, range[0]) &&
"1" != compareIPv4(ipValue, range[1]))
{
return [true, "", ""];
}
}
return [false, k, retMsg];
}
else if (k == "notLessThan")
{
retMsg = "";
var IPObj = $("[id^='"+v+"']",template);
IPObj.FillIPorMacDataCombination("sub_"+v, ".", 4);
var minValue = IPObj.val();
if (-1 == compareIPv4(ipValue, minValue)){
return [false, k, retMsg];
}
}
else if (k == "notMoreThan")
{
retMsg = "";
var IPObj = $("[id^='"+v+"']",template);
IPObj.FillIPorMacDataCombination("sub_"+v, ".", 4);
var maxValue = IPObj.val();
if (1 == compareIPv4(ipValue, maxValue)){
return [false, k, retMsg];
}
}
else
{
}
return [true, "", ""];
}
function checkWholeMac(k, v, macValue)
{
var vLen = v.length;
var retMsg = "";
for (var j = 0; j < vLen; j++)
{
if (retMsg != "")
{
retMsg += ", ";
}
var range = v[j];
if (typeof range === 'string')
{
retMsg += range;
}
else
{
retMsg += range[0]+" ~ "+range[1];
}
}
if (k == "banValue")
{
retMsg = " is NOT allowed to input the following value(s): {0}. ".format(retMsg);
for (var i = 0; i < vLen; i++)
{
var range = v[i];
if (typeof range === 'string')
{
if (macValue.toLowerCase() == range.toLowerCase())
{
return [false, k, retMsg];
}
}
}
}
else
{
}
return [true, "", ""];
}
function getMsgofWholeMACIPCheck(checkRetArray, ruleObj, checkValue, checkParaName)
{
var errMsg = "";
var ruleName = checkRetArray[1];
if(ruleObj.messages[ruleName] != undefined){
return ruleObj.messages[ruleName];
}
switch (ruleName){
case "banValue":{
if (checkParaName != "")
{
errMsg = checkParaName + checkRetArray[2];
}
else{
errMsg = "Current operation is invalid, please check configuration parameters. "+"["+"Error Input: "+checkValue+"]";
}
break;
}
case "allowRange":{
if (checkParaName != ""){
errMsg = checkParaName + checkRetArray[2];
}
else{
errMsg = "Current operation is invalid, please check configuration parameters. "+"["+"Error Input: "+checkValue+"]";
}
break;
}
default:{
errMsg = "error msg undefined!"
}
}
return errMsg;
}
jQuery.validator.addMethod(
"utf8LengthRange",
function(value, element, param)
{
if ( this.optional(element) )
{
return "dependency-mismatch";
}
var valLength = value.length;
var param1 = param[0];
var param2 = param[1];
if (param2 < 3)
{
alert("utf8LengthRange is invalid!["+param2+"<"+3 +"]");
}
else
{
param1 = Math.ceil(parseInt(param[0])/ 3);
param2 = Math.floor(parseInt(param[1]) / 3);
if (param1 < param2)
{
if (valLength >= param1 && valLength <= param2 )
{
return true;
}
}
else if (param1 == param2)
{
if (valLength == param2)
{
return true;
}
}
else
{
alert("utf8LengthRange ["+param1+","+param2+"] is invalid!");
}
}
return false;
},
function(param, element){
var lengthStr = "";
var param1 = param[0];
var param2 = param[1];
if (param2 < 3)
{
lengthStr = " Range Error!!!!!![param2<WEB_UTF8_REALBYTE]";
}
else
{
param1 = Math.ceil(parseInt(param[0])/ 3);
param2 = Math.floor(parseInt(param[1]) / 3);
if (param1 < param2)
{
lengthStr = param1 + " ~ " + param2;
}
else if (param1 == param2)
{
lengthStr = param2;
}
else
{
lengthStr = " Range Error!!!!!!["+param1+","+param2+"]";
}
}
return $.validator.format("Please enter a value with {0} characters.", lengthStr);
}
);


(function(){
$(document).ready(function(){
var curv = 0;
if (curv == "65")
$("#languageSwitch").hide();
});
})();
(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "152" || CountryCode == "163")
{
$("#logo").attr("class", "logo_Claro");
}
});
})();
(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "21")
{
$("#logo").attr("class", "logo_Antel");
}
});
})();

(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "36")
{
$("#logo").addClass("logo_Tot");
$("#timeArea").addClass("timeArea_Tot");
}
});
})();
(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "106")
{
$("#logo").addClass("logo_Morocco");
}
});
})();
(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "138")
{
$("#logo").addClass("logo_IvoryOrange");
}
});
})();
(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "174")
{
$("#logo").addClass("logo_Orange");
}
});
})();

(function(){
$(document).ready(function(){
var CountryCode = "0";
if (CountryCode == "137")
{
$("#logo").attr("class", "logo_Tarr");
}
});
})();




var menuTreeJSON = [{"id":"homePage","name":"Home","extData":"Show the important information.","area":[{"area":"home_t.lp"}]},{"id":"internet","name":"Internet"},{"id":"localnet","name":"Local Network"},{"id":"voip","name":"VoIP"},{"id":"mgrAndDiag","name":"Management & Diagnosis"}];
var menuTreeObj = new MenuTreeClass(menuTreeJSON);
var _sessionTmpToken = "";
var preLoadImg = [];
preLoadImg[0] = "/img/nv_s.gif";
preLoadImg[1] = "/img/nv_left.gif";
preLoadImg[2] = "/img/nv_right.gif";
preLoadImg[3] = "/img/nv_middle.gif";
preLoadImg[4] = "/img/English_s.gif";
preLoadImg[5] = "/img/Chinese.gif";
preLoadImg[6] = "/img/Chinese_s.gif";
preLoadImg[7] = "/img/English.gif";
preLoadImg[8] = "/img/waiting.gif";
preLoadImg[9] = "/img/info_m.png";
preLoadImg[10] = "/img/waiting_w.gif";
function preload(Img)
{
var imgTmp = [];
for (var i=0; i<Img.length; i++)
{
imgTmp[i] = new Image();
imgTmp[i].src = Img[i];
}
}
preload(preLoadImg);
</script>
</head>
<body>
<script type="text/javascript">
if(top != self)
{
document.getElementsByTagName("body")[0].style.display = 'none';
top.location = self.location;
}
function LogOff()
{
showWaitTip(true);
$.post( "/?_type=loginData&_tag=logout_entry", {IF_LogOff:1}, undefined, "json" )
.done(function( data ) {
if ( data.need_refresh )
{
top.location.href = top.location.href;
}
});
}
function LogUser()
{
openLink("accountMgr" + "&Menu3Location=0");
}
</script>
<div id="blackMask" class="black_overlay" style="display:none;"></div>
<div id="tipLayer" class="white_content">
<div id="confirmLayer" style="display:none;">
<div id="confirmMsg">
<p>are you sure?</p>
</div>
<div id="waitingImgArea" style="display:none;">
</div>
<div id="confirmBtnArea" style="display:none;">
<input type="button" class="button" id="confirmCancel" value="Cancel" />
<input type="button" class="button" id="confirmOK" value="OK" />
<input type="button" class="button" id="confirmStop" value="Stop" />
</div>
</div>
</div>
<div id="page_container">
<div id="page_header">
<div id="banner">
<div id="logo" class="logo"></div>
<div class="timeArea" id="timeArea" style="display:none;">
Current Time: <span id="_DevCurrTime">Loading...</span>
</div>
<div id="banner_switchArea">


<div id="languageSwitch">
<img src="/img/Chinese.gif" alt="Chinese" id="ChineseModify"/>
<img src="/img/English.gif" alt="English" id="EnglishModify"/>
</div>

<div id="logOff" class="emColor clickable" onclick="LogOff()">
<div id="LogOffLnk"> Logout</div>
<div id="logUser" class="logUser" title="">

</div>
</div>
</div>
</div>
<div id="mainNavigator">
<div id="mn_first"></div>
<div id="mn_li"></div>
<div id="mn_last"></div>
</div>
</div>
<div id="page_content">

<script type="text/javascript">

var loginLockInterval = null;
var editableInputs;
var dftFcsTaget;
var IsAllowedSubmit = true;
function createTimeCountDownMessage(lockingTime, promptMsg)
{
if((promptMsg != null && promptMsg.length > 0) || lockingTime > 0 )
{

var timeOutHint = promptMsg.concat("Please retry after {1} seconds. ");
$("#login_error_waittime").text(timeOutHint.format(3,lockingTime)).show();
}
else
{
$("#login_error_waittime").hide();
}
}
function timer(seconds, promptMsg) {
window.setTimeout(function() {
editableInputs.removeAttr("disabled");
if(dftFcsTaget){
dftFcsTaget.focus();
}
$("#LoginId").removeAttr("disabled").removeClass("disableBtn");
$("#login_error").hide();
$("#login_error_waittime").hide().text("");
if (loginLockInterval) {
window.clearInterval(loginLockInterval);
consoleLog("timeout to clearInterval!!!");
}
}, seconds * 1000);
loginLockInterval = window.setInterval((function(sec, msg){
return function () {
if (sec > 0){
sec--;
}
createTimeCountDownMessage(sec, msg);
}
})(seconds, promptMsg), 1000);
}
function SetPasswordValue(obj)
{
var template = $("#loginWrapper");
var objJQ = $(obj);
var passInvisibleOBJ = $("[id^='Frm_Password'][class*='passInvisible']", template);
var pwvalue = objJQ.val();
passInvisibleOBJ.val(pwvalue);
}
function PasswordChange(template)
{
var typeOBJ = $("[id^='Switch_Password']", template);
var passVisibleOBJ = $("[id^='Frm_Password'][class*='passVisible']", template);
var passVisibleVal = passVisibleOBJ.val();
var passInvisibleOBJ = $("[id^='Frm_Password'][class*='passInvisible']", template);
var passInvisibleVal = passInvisibleOBJ.val();
passInvisibleOBJ.addClass("valid");
if( typeOBJ.is(':checked'))
{
passInvisibleOBJ.hide();
passVisibleOBJ.show();
passVisibleOBJ.val(passInvisibleVal);
}
else
{
passVisibleOBJ.hide();
passInvisibleOBJ.show();
passInvisibleOBJ.val(passVisibleVal);
}
}
function showTimeCountDown(lockingTime, promptMsg)
{
if(lockingTime > 0)
{
createTimeCountDownMessage(lockingTime, promptMsg);
$("#LoginId").attr("disabled","true").addClass("disableBtn");
editableInputs.attr("disabled","true");
timer(lockingTime, promptMsg);
}
}
function DisplayLoginErrorTip(loginData)
{
var loginErrMsg = loginData.loginErrMsg;
var lockingTime = loginData.lockingTime;
var promptMsg = loginData.promptMsg;
lockingTime = parseInt(lockingTime);
if ( IsBrowserSupportCookie() == false )
{
$("#login_error").show();
$("#login_error_span").text("Your browser's cookie functionality is turned off, please turn it on before login.");
}
else if(loginErrMsg.length > 0 || promptMsg.length > 0)
{
$("#login_error").show();
if(loginErrMsg.length > 0)
{
$("#login_error_span").text(loginErrMsg).show();
}
else
{
$("#login_error_span").hide();
}
if (lockingTime > 0 || promptMsg.length > 0)
{
showTimeCountDown(lockingTime, promptMsg);
}
}
else
{
$("#login_error").hide();
}
}
function g_loginToken(xml)
{
var xmlObj = $(xml).text();
var Password =$("#Frm_Password").val();
var SHA256Password =sha256(Password+xmlObj);
var postData = {};
postData["action"] = "login";
postData["Password"] = SHA256Password;
postData["Username"] = $("#Frm_Username").val();
postData["_sessionTOKEN"] = $("#_sessionTOKEN").val();
Password = undefined;
SHA256Password = undefined;
$.post( "/?_type=loginData&_tag=login_entry", postData, undefined, "json" )
.done(function( data ) {
$("#_sessionTOKEN").val(data.sess_token);
if ( data.login_need_refresh )
{
top.location.href = top.location.href;
}
else
{
DisplayLoginErrorTip(data);
}
});
postData = undefined;
}
function CanTextAndPasswordSwitch_InputType()
{
var pass = document.createElement('input');
pass.type = 'text';
pass.style.display = "none";
document.body.appendChild(pass);
var retVal = true;
try
{
pass.type = 'password';
if ( "password" == pass.type )
{
pass.type = 'text';
if ( "text" == pass.type )
{
retVal = true;
}
else
{
retVal = false;
}
}
else
{
retVal = false;
}
}
catch(e)
{
retVal = false;
}
document.body.removeChild(pass);
return retVal;
}
var throttle = function (fn, delay, atleast) {
var timer = null, previous = null;
return function () {
var context = this, args = arguments, now = +new Date();
if (!previous) {previous = now;}
if (now - previous > atleast) {
fn.apply(context, args);
previous = now;
} else {
clearTimeout(timer);
timer = setTimeout(function() {
fn.apply(context, args);
}, delay);
}
}
};
$(document).ready(function(){
var loginForm = $(".loginInstCfgArea");
editableInputs = $("input",loginForm).not(":disabled").not("[readonly=readonly]");
if ( CanTextAndPasswordSwitch_InputType() ) {
var passwordObj = document.getElementById("Frm_Password");
passwordObj.type = "text";
passwordObj.onfocus = function () {
var passval = passwordObj.value;
this.type = "password";
this.value = "";
this.value = passval;
}
$("#Frm_Password").focus();
}
$.getJSON("/?_type=loginData&_tag=login_entry")
.done(function( json ) {
$("#_sessionTOKEN").val(json.sess_token);
DisplayLoginErrorTip(json);
})
.fail(function( jqxhr, textStatus, error ) {
var err = textStatus + ", " + error;
consoleLog( "Request Failed: " + err );
});
editableInputs.each(function(){
if ($(this).val() == "") {
$(this).focus();
dftFcsTaget = $(this);
return false;
}
});
$("#LoginId").bind("click", throttle(function(){
if ( true == IsAllowedSubmit )
{
var loadAllowAddr = "/?_type=loginData&_tag=login_token";
$(this).dataTransfer(loadAllowAddr, "GET", g_loginToken, undefined, false);
}
}, 300, 300));
showWaitTip(false);
editableInputs.keydown(function(event){
if(event.keyCode==13){
event.preventDefault();
event.stopPropagation();
$("#LoginId").click();
}
});
});
String.prototype.format = function(args) {
var result = this;
if (arguments.length > 0)
{
for (var i = 0; i < arguments.length; i++)
{
if (arguments[i] != undefined) {
var reg = new RegExp("({[" + i + "]})", "g");
result = result.replace(reg, arguments[i]);
}
}
}
return result;
};
function showOrHideRowDiv(action, RowDiv)
{
var subWidget = RowDiv.find("*[id!='']")
if ( action == "show" )
{
RowDiv.showIt(true);
subWidget.removeClass("PostIgnore");
}
else
{
RowDiv.showIt(false);
subWidget.addClass("PostIgnore");
}
}
function colonStripping(str)
{
var colonLocation = str.indexOf(":");
if ( colonLocation != -1 )
{
return str.substring(0, colonLocation);
}
return str;
}
function colonStrippingLast(str)
{
var colonLocation = str.lastIndexOf(":");
if ( colonLocation != -1 )
{
return str.substring(0, colonLocation);
}
return str;
}
function randomNum(n){
var t='';
for(var i=0;i<n;i++)
{
t+=Math.floor(Math.random()*10);
}
return t;
}
function checkPassStrong(sz)
{
if(/[a-z]/.test(sz) && /[A-Z]/.test(sz) && /[0-9]/.test(sz) && (sz.length >= 8))
{
return true;
}
return false;
}
function asyEncode(srcStr)
{
var pubKey = "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAodPTerkUVCYmv28SOfRV\n7UKHVujx/HjCUTAWy9l0L5H0JV0LfDudTdMNPEKloZsNam3YrtEnq6jqMLJV4ASb\n1d6axmIgJ636wyTUS99gj4BKs6bQSTUSE8h/QkUYv4gEIt3saMS0pZpd90y6+B/9\nhZxZE/RKU8e+zgRqp1/762TB7vcjtjOwXRDEL0w71Jk9i8VUQ59MR1Uj5E8X3WIc\nfYSK5RWBkMhfaTRM6ozS9Bqhi40xlSOb3GBxCmliCifOJNLoO9kFoWgAIw5hkSIb\nGH+4Csop9Uy8VvmmB+B3ubFLN35qIa5OG5+SDXn4L7FeAA5lRiGxRi8tsWrtew8w\nnwIDAQAB\n-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(pubKey);
var encrypted = encrypt.encrypt(srcStr);
var dstStr = encrypted.toString();
if(dstStr.length == 0 || dstStr == "false")
{
console.log("encrypt key fail!");
dstStr = "";
}
return dstStr;
}
function encodeKey(key,iv)
{
var kv = key + "+" + iv;
return asyEncode(kv);
}
function encodeParaValue(src,key,iv)
{
if(src.length > 0)
{
var bKey = CryptoJS.SHA256(key);
var bIv = CryptoJS.SHA256(iv);
var encrypted =CryptoJS.AES.encrypt(src,bKey,
{
iv:bIv,
mode:CryptoJS.mode.CBC,
padding:CryptoJS.pad.ZeroPadding
});
var dst = encrypted.toString();
if(dst != "" && dst != "failed")
{
return dst;
}
}
return src;
}
function decodeParaValue(src,key,iv)
{
if(src.length > 0)
{
var bKey = CryptoJS.SHA256(key);
var bIv = CryptoJS.SHA256(iv);
var decrypted =CryptoJS.AES.decrypt(src,bKey,
{
iv:bIv,
mode:CryptoJS.mode.CBC,
padding:CryptoJS.pad.ZeroPadding
});
var dst = decrypted.toString(CryptoJS.enc.Utf8);
if(dst != "" && dst != "failed")
{
return dst;
}
}
return src;
}
jQuery.fn.showIt = function(show) {
if (show)
{
$(this).css("display", "");
}
else
{
$(this).css("display", "none");
}
};
function GetSuffixedIDorName(oldValue, suffix, splitter, forParaName)
{
var newValue = "";
if ( forParaName == true )
{
oldValue = oldValue.split(":");
oldValue[0] += splitter + suffix;
newValue = oldValue.join(":");
}
else
{
newValue = oldValue + splitter + suffix;
}
return newValue;
}
jQuery.fn.cloneWithSuffix = function(suffix, splitter, forParaName) {
var source = $(this);
var clone = source.clone(true);
clone.attr("id", clone.attr("id")+"_"+suffix);
if ( undefined == splitter )
{
splitter = ":";
}
if ( undefined == forParaName )
{
forParaName = false;
}
var idElems = clone.find("*[id!='']");
idElems.each(function(){
var idEle = $(this);
var oldID = idEle.attr("id");
if (oldID != undefined)
{
var newID = GetSuffixedIDorName(oldID, suffix, splitter, forParaName);
idEle.attr("id", newID);
}
var oldName = idEle.attr("name");
if (oldName != undefined)
{
var newName = GetSuffixedIDorName(oldName, suffix, splitter, forParaName);
idEle.attr("name", newName);
}
});
labelForElems = clone.find("label");
labelForElems.each(function(){
var labelForEle = $(this);
var oldFor = labelForEle.attr("for");
if (oldFor != undefined)
{
var newFor = GetSuffixedIDorName(oldFor, suffix, splitter, forParaName);
labelForEle.attr("for", newFor);
}
});
clone.trigger("applyPromptCheckJSON", [clone]);
return clone;
};
function initial_sceneTip()
{
$(".sceneTip_container").each(function(){
$(this).hide();
});
$(".sceneTipLink").each(function(){
var sceneTipLinkContent = $(this).children();
sceneTipLinkContent.unbind( "click" );
sceneTipLinkContent.click(function(event){
event.preventDefault();
$(this).parent().next().slideToggle("normal");
});
});
$(".sceneTip_close").each(function(){
var sceneTip_closeLink = $(this).children();
sceneTip_closeLink.unbind( "click" );
sceneTip_closeLink.click(function(){
$(this).parent().parent().slideUp("normal");
});
});
}
function succHintShow(template)
{
var PostFeedbackOBJ = $(".succHint",template);
PostFeedbackOBJ.fadeIn(1000);
window.setTimeout(
function() {
PostFeedbackOBJ.fadeOut(1000);
PostFeedbackOBJ.hide();
},
2000
);
}
jQuery.fn.dataTransfer = function(URL, transferType, success_func, error_func, IfShowWaitTip, async, dataType){
if ( !URL || URL == "" )
{
consoleLog("[dataTransfer]URL is illegal!");
return;
}
var IfShowWaitTipTmp = IfShowWaitTip;
if ( IfShowWaitTipTmp == undefined )
{
IfShowWaitTipTmp = true;
}
var asyncTemp = async;
if ( asyncTemp == undefined )
{
asyncTemp = true;
}
if ( !dataType )
{
var dataType = "xml";
}
if ( IfShowWaitTipTmp == true )
{
showWaitTip(true);
}
var Head = $(this);
$.ajax({
url:URL,
type: transferType,
dataType: dataType,
timeout: 30000,
async: asyncTemp,
cache:false,
error: function(){
if ($.isFunction(error_func))
{
error_func();
}
else
{
if (Head != undefined)
{
var ajaxTransferFailHint = "The server is not available now. Please refresh page to reload. ";
var externErrorHint = $(".externErrorHint",Head);
if ( externErrorHint != undefined )
{
$("span",externErrorHint).text(ajaxTransferFailHint);
externErrorHint.showIt(true);
}
}
showWaitTip(false);
}
},
success: function(xml){
success_func(xml);
if ( IfShowWaitTipTmp == true )
{
showWaitTip(false);
}
}
});
};
function HTMLEnCode(str)
{
var s = "";
if (typeof(str) != "string")
{
return str;
}
if(str.length == 0)
{
return "";
}
s = str.replace(/&/g, "&#38;");
s = s.replace(/</g, "&#60;");
s = s.replace(/>/g, "&#62;");
s = s.replace(/ /g, "&#32;");
s = s.replace(/\'/g, "&#39;");
s = s.replace(/\"/g, "&#34;");
return s;
}
function addSlash(srcStr)
{
var str = "";
var ch = "";
if (typeof(srcStr) != "string")
{
return srcStr;
}
for(var i = 0; i < srcStr.length; i++)
{
ch = srcStr.substr(i, 1);
if( "\\" == ch )
{
ch = "\\\\";
}
else if( "\'" == ch )
{
ch = "\\\'";
}
else if( "\"" == ch )
{
ch = "\\\"";
}
str = str + ch;
}
return str;
}
function SetSelectValue(SelectElem, data)
{
$("option[class='_optExpHandle']", SelectElem).remove();
var findOption = 0;
$("option", SelectElem).removeAttr("selected");
$("option", SelectElem).each(function(){
var OptionObj = $(this);
if ( OptionObj.val() == data )
{
findOption = 1
return false;
}
});
if ( findOption == 0 )
{
SelectElem.append("<option value='"+ HTMLEnCode(data)
+ "' title='--Unknown--' class='_optExpHandle'>"
+ "--Unknown--" + "</option>");
}
SelectElem.val(data);
}
jQuery.fn.fillDataByType = function(data){
var Elems = $(this);
if (Elems.is("input"))
{
switch (Elems.attr("type"))
{
case "hidden":
{
Elems.val(data);
if (Elems.attr("_LuQUID_splitMACID") != undefined)
{
var splitMACID = Elems.attr("_LuQUID_splitMACID");
Elems.FillIPorMacDataBySplit(splitMACID, ":", 6);
}
else if (Elems.attr("_LuQUID_splitIPID") != undefined)
{
var splitIPID = Elems.attr("_LuQUID_splitIPID");
Elems.FillIPorMacDataBySplit(splitIPID, ".", 4);
}
break;
}
case "text":
case "password":
{
if( Elems.attr("encode") == "1")
{
var key = _sessionTmpToken;
var iv = key.split("").reverse().join("");
data = decodeParaValue(data,key,iv);
}
Elems.val(data);
if (typeof(Elems.attr("title")) != "undefined")
{
Elems.attr("title", data);
}
break;
}
case "checkbox":
{
if( 1 == data )
{
Elems.prop("checked", true);
}
else
{
Elems.prop("checked", false);
}
Elems.val(data);
break;
}
default:
{
break;
}
}
}
else if (Elems.is("span"))
{
Elems.text(data);
if (typeof(Elems.attr("title")) != "undefined")
{
Elems.attr("title", data);
}
}
else if (Elems.is("a"))
{
Elems.text(data);
Elems.attr("href",data);
}
else if (Elems.is("select"))
{
SetSelectValue(Elems, data);
}
else if (Elems.is("textarea"))
{
Elems.val(data);
}
else if (Elems.is("label"))
{
Elems.text(data);
}
else if (Elems.is("div"))
{
var radioObj = $("input[type=radio]", Elems);
radioObj.each(function(){
var thisObj = $(this);
if (thisObj.val() == data)
{
thisObj.prop("checked", true);
}
else
{
thisObj.prop("checked", false);
}
});
}
else if (Elems.is("td"))
{
Elems.text(data);
if (typeof(Elems.attr("title")) != "undefined")
{
Elems.attr("title", data);
}
}
else
{
}
};
jQuery.fn.fillDataByOBJID = function(xml, OBJIDs, Clone, suffix, splitter){
if ( undefined == splitter )
{
splitter = ":";
}
$(xml).find("encode").each(function(){
var encodePara= $(this).text().split(",");
for(var i in encodePara)
{
$("input[id^="+encodePara[i]+"]", Clone).attr("encode","1");
}
});
for (var i=0; i<OBJIDs.length; i++)
{
var OBJID = OBJIDs[i];
var OBJIDSplit = OBJID.split(":");
var OBJIDIndex = 0;
var isSplitterExist = 0;
if ( OBJIDSplit.length == 2 )
{
OBJID = OBJIDSplit[0];
OBJIDIndex = parseInt(OBJIDSplit[1]);
isSplitterExist = 1;
}
var OBJs = $(xml).find(OBJID);
if ( OBJs.length == 0 )
{
continue;
}
var OBJ;
if ( OBJIDIndex < OBJs.length )
{
OBJ = OBJs.get(OBJIDIndex);
}
else
{
continue;
}
var instances;
if ( 1 == isSplitterExist )
{
instances = $("Instance", OBJ);
}
else
{
instances = $("Instance", OBJs);
}
if ( instances.length <= suffix
|| suffix < 0 )
{
consoleLog("suffix off normal upper!!");
continue;
}
var InstOBJ = instances.eq(suffix);
InstOBJ.find("ParaName").each(function(){
var ParaName = $(this).text();
var ParaValue = $(this).next().text();
var Elems = $("[id^='"+ParaName+splitter+"']", Clone);
if ( Elems.length == 0 )
{
Elems = $("[id='"+ParaName+"']", Clone);
}
if ( Elems.length > 0 )
{
if ( Elems.length > 1 )
{
consoleLog("this ele id is duplicate[" +Elems.attr("id")+ "]");
}
Elems.fillDataByType(ParaValue);
}
else
{
if ( "_InstID" != ParaName )
{
consoleLog("XML ParaName("+ParaName+") cannot map to HTML "
+ "by fillDataByType, so it may be useless, "
+ "web security require deleting it!");
}
}
});
}
$(".SpecialPassword", Clone).each(function(i){
$(this).val("						");
});
};
jQuery.fn.InstantializeForTemplateBox = function(xml, OBJIDs, container){
for (var i=0; i<OBJIDs.length; i++)
{
var OBJID = OBJIDs[i];
var OBJs = $(xml).find(OBJID);
if ( OBJs.length == 0 )
{
continue;
}
var ruleTemplate = $("[id='"+OBJID+"']._LuQuid_TempalteBox", container);
if( ruleTemplate.length == 0 )
{
continue;
}
$("[id^='"+OBJID+"_']._LuQuid_TempalteBox", container).remove();
var subWidget = ruleTemplate.find("*[id!='']");
subWidget.removeClass("PostIgnore");
var instances = $("Instance", OBJs);
var ruleNum = instances.length;
for (var i=0; i<ruleNum; i++)
{
var clone = ruleTemplate.cloneWithSuffix(i, "_", true);
ruleTemplate.before(clone);
var DataOBJID = [OBJID];
clone.fillDataByOBJID(xml, DataOBJID, clone, i, "_");
clone.showIt(true);
}
$("[id='"+OBJID+"._OBJ_InstNUM']", container).val(ruleNum);
var templateInstID = $("[id='"+OBJID+"._OBJ_InstID']", container);
templateInstID.addClass("PostIgnore");
subWidget.addClass("PostIgnore");
}
};
jQuery.fn.FillDataOnlyForTemplateBox = function(xml, OBJIDs, container){
for (var i=0; i<OBJIDs.length; i++)
{
var OBJID = OBJIDs[i];
var OBJs = $(xml).find(OBJID);
if ( OBJs.length == 0 )
{
continue;
}
var ruleTemplate = $("[id='"+OBJID+"']._LuQuid_TempalteBox", container);
if( ruleTemplate.length == 0 )
{
continue;
}
$("[id^='"+OBJID+"_']._LuQuid_TempalteBox", container).each(function(){
var instObj = $(this);
var instId = instObj.find("[id^='"+OBJID+"._OBJ_InstID']").val();
var index = -1;
var instances = $("Instance", OBJs);
var ruleNum = instances.length;
for (var i=0; i<ruleNum; i++)
{
var instIdName = OBJID+"._OBJ_InstID";
var ToOperParaArray = {};
ToOperParaArray[instIdName] = {
ValueOrigin: ""
};
xmlParaInInstOperate(xml, OBJID, i, ToOperParaArray);
var ruleInstId = ToOperParaArray[instIdName].ValueOrigin;
if ( instId == ruleInstId )
{
index = i;
break;
}
}
if ( index > -1 )
{
var DataOBJID = [OBJID];
instObj.fillDataByOBJID(xml, DataOBJID, instObj, index, "_");
}
else
{
consoleLog("instId("+instId+") cannot match xml instance");
}
});
}
};
jQuery.fn.createPageDataByClone = function(RuleNum,DataOBJID,xml,fillDataByCustom){
var Head = $(this);
var HeadID = Head.attr("id");
var TemplateOBJ = $("#template_"+HeadID , Head);
$("#_InstNum", Head).val(RuleNum);
for (var i=0; i<RuleNum; i++)
{
var clone = TemplateOBJ.cloneWithSuffix(i);
TemplateOBJ.before(clone);
clone.fillDataByOBJID(xml ,DataOBJID, clone, i);
if ( $.isFunction(fillDataByCustom) )
{
fillDataByCustom(i,clone);
}
else
{
clone.trigger("fillDataByCustom",[i,clone]);
}
clone.showIt(true);
}
};
jQuery.fn.hasError = function(xml, location){
var ContentContainer = $(this);
var cmapiErrorContainer;
var errStr = $("IF_ERRORSTR", $(xml));
var errParam = $("IF_ERRORPARAM", $(xml));
if (errStr.length <= 0 || errParam.length <= 0)
{
consoleLog("[hasError:]cannot find IF_ERRORSTR or IF_ERRORPARAM");
return;
}
if (!location)
{
location = "errorHint";
}
if (location == "externErrorHint")
{
cmapiErrorContainer = $(".externErrorHint",ContentContainer);
}
else
{
cmapiErrorContainer = $("."+location,ContentContainer);
}
var ErrorString = $("IF_ERRORSTR", $(xml)).text();
var ErrorParam = $("IF_ERRORPARAM", $(xml)).text();
if ( ErrorString == "SUCC" )
{
cmapiErrorContainer.showIt(false);
return 0;
}
else if ( ErrorString == "SessionTimeout" )
{
top.location.href = top.location.href;
return 1;
}
else
{
var cmapiErrorContainerHtml = "";
var paraString = "";
if ( ErrorParam != "SUCC")
{
var LabelFindResult = 0;
ErrorString = "Current operation is invalid, please check whether {0} is legal. "
var paraLabel = ContentContainer.find("label[for^='"+ErrorParam+"\\:']");
if ( paraLabel.length <= 0 )
{
paraLabel = ContentContainer.find("label[for='"+ErrorParam+"']");
}
if ( paraLabel.length > 0 )
{
paraLabel.each(function(){
var labelTmp = $(this);
if ( !labelTmp.hasClass("error"))
{
paraString = labelTmp.text();
LabelFindResult = 1;
return false;
}
});
}
if ( LabelFindResult == 0 )
{
ErrorString = "Current operation is invalid, please check configuration parameters. ";
}
cmapiErrorContainerHtml = ErrorString.format(paraString);
}
else
{
if ( "FAIL" == ErrorString
|| "Current operation is invalid, please check whether {0} is legal. " == ErrorString )
{
ErrorString = "Current operation is invalid, please check configuration parameters. ";
}
cmapiErrorContainerHtml = ErrorString;
}
$("span",cmapiErrorContainer).text(cmapiErrorContainerHtml);
cmapiErrorContainer.showIt(true);
return 1;
}
};
jQuery.fn.ShouldPostIgnore = function(){
if($(this).hasClass("PostIgnore"))
{
return true;
}
return false;
};
jQuery.fn.InitialPostData = function(actionType){
var AND = "&";
var template = $(this);
var PostData = "IF_ACTION=" + actionType;
var cryptoKey = randomNum(16);
var cryptoIv = randomNum(16);
var needEncode = false;
var formInputContent = template.find("input,select,textarea");
formInputContent.each(function(key){
var Elems = $(this);
if ( Elems.ShouldPostIgnore() )
{
return true;
}
var ElemsID = Elems.attr("id");
if (typeof(ElemsID) != "string") {
return true;
}
if ( Elems.attr("type") == "radio" )
{
if ( Elems.is(':checked') )
{
ElemsID = Elems.attr("name");
}
else
{
return true;
}
}
var ElemsMainID = colonStripping(ElemsID);
var ElemsValue = "";
if ( Elems.is("input") )
{
switch (Elems.attr("type"))
{
case "hidden":
{
if (Elems.attr("_LuQUID_splitMACID") != undefined)
{
var splitMACID = Elems.attr("_LuQUID_splitMACID");
Elems.FillIPorMacDataCombination(splitMACID, ":", 6);
}
else if (Elems.attr("_LuQUID_splitIPID") != undefined)
{
var splitIPID = Elems.attr("_LuQUID_splitIPID");
Elems.FillIPorMacDataCombination(splitIPID, ".", 4);
}
ElemsValue = Elems.val();
break;
}
case "text":
case "password":
case "radio":
{
ElemsValue = Elems.val();
if(Elems.attr("encode") == "1")
{
ElemsValue = encodeParaValue(ElemsValue,cryptoKey,cryptoIv);
needEncode = true;
}
break;
}
case "checkbox":
{
if( Elems.is(':checked'))
{
ElemsValue = 1;
}
else
{
ElemsValue = 0;
}
break;
}
default:
{
break;
}
}
}
else if ( Elems.is("select") )
{
ElemsValue = Elems.val();
}
else if( Elems.is("textarea") && Elems.attr("needPost") == "needPost" )
{
ElemsValue = Elems.val();
}
else
{
consoleLog("when create post data, find not support elements type!!");
}
var NameValueJson = {
"ElemsMainID": ElemsMainID,
"ElemsValue": ElemsValue
};
template.trigger("PostDataChangeByCustom",[NameValueJson,template]);
var RealElemsValue = encodeURIComponent(NameValueJson.ElemsValue);
PostData += AND + ElemsMainID + "=" + RealElemsValue;
});
if(needEncode)
{
PostData += AND + "encode=" + encodeURIComponent(encodeKey(cryptoKey,cryptoIv));
}
return PostData;
};
function RefreshClickHandle(Head)
{
$(".Btn_refresh", Head).each(function(){
$(this).unbind("click");
$(this).bind("click", function(){
var buttonOBJ = $(this);
if (buttonOBJ.hasClass("disableBtn")
||buttonOBJ.hasClass("disableLongBtn"))
{
return;
}
var HeadID = Head.attr("id");
Head.find("[id^='template_"+HeadID+"_']").each(function(){
$(this).remove();
});
var ServerAddr = $("address span", Head).text();
Head.dataTransfer(ServerAddr,
"GET",
Head.succfunction,
Head.failfunction,
undefined,
true);
});
})
}
function initialStatusArea(Head)
{
if ( 0 == $("._LuQUID_STATUS_OBJID", Head).length )
{
return;
}
var OBJID = [];
var OBJDOMs = $("._LuQUID_STATUS_OBJID>li", Head);
OBJDOMs.each(function(){
var identity = $(this).text();
OBJID.push(identity);
})
var isMultiInst = $(".maxInstNum", Head).val();
var ServerAddr = $("address span", Head).text();
Head.succfunction = function(xml){
if (Head.hasError(xml,"externErrorHint") == 0)
{
Head.trigger("changeXMLDataBeforeFillData", [xml]);
var XMLOBJ = $(xml).find(OBJID[0]);
var RuleNum = $("Instance", XMLOBJ).length;
if (RuleNum == 0)
{
$(".noDataHint",Head).showIt(true);
$(".form_content",Head).showIt(false);
}
else
{
$(".noDataHint",Head).showIt(false);
$(".form_content",Head).showIt(true);
if (isMultiInst == 0)
{
Head.fillDataByOBJID(xml ,OBJID, Head, 0);
Head.trigger("fillDataByCustom",[0, Head]);
var template = $("[id^='template_']", Head);
template.trigger("fillDataByCustom",[0, template]);
template.showIt(true);
}
else
{
Head.fillDataByCustom = undefined;
Head.createPageDataByClone(RuleNum, OBJID, xml,
Head.fillDataByCustom);
}
colorTblRow(".colorTbl", "even", Head);
}
}
};
RefreshClickHandle(Head);
if ( $(".collapBarWithDataTrans",Head).length <= 0 )
{
Head.dataTransfer(ServerAddr,
"GET",
Head.succfunction);
}
else
{
initial_collapBarWithDataTrans(Head);
}
}
function initial_special_password(Head)
{
$(".SpecialPassword", Head).each(function(){
$(this).mouseup( function(){
if(this.focused){
this.focused=false;
return false;
}
});
});
$(".SpecialPassword", Head).each(function(){
$(this).focus( function(){
this.select();
this.focused=true;
});
});
}
function initial_button(buttonType, Head, IfShowWaitTip)
{
if ( !Head )
{
consoleLog("incoming para:Head is not defined!");
return;
}
var buttonClass = "";
var eventHandler = "";
if ( buttonType == "Apply" )
{
buttonClass = "Btn_apply";
eventHandler = "fillDataByApplyResult";
}
else if ( buttonType == "Cancel" )
{
buttonClass = "Btn_cancel";
eventHandler = "fillDataByCancelResult";
}
else if ( buttonType == "Delete" )
{
buttonClass = "Btn_delete";
eventHandler = "fillDataByDeleteResult";
}
else
{
}
$("."+buttonClass, Head).each(function(){
$(this).unbind("click");
$(this).bind("click",function(event){
var buttonOBJ = $(this);
if (buttonOBJ.hasClass("disableBtn")
||buttonOBJ.hasClass("disableLongBtn"))
{
return;
}
var Head = buttonOBJ.parents(".HeadDIV");
var template = buttonOBJ.parents("[id^='template']");
var ActionBeforePostResult = {result: "Process"};
if ( buttonType == "Apply" )
{
var formOBJ = $(".form_content", template);
if ( formOBJ.length > 0 && false == formOBJ.valid() )
{
return;
}
else
{
var formObj = $(".form_content", template);
var txtInputObjs = $("input[type='text']", formObj);
txtInputObjs.each(function(){
var obj = $(this);
var rules = obj.rules();
if (rules.integer)
{
var intStr = obj.val();
var sign, digits;
if ( intStr.charAt(0) == '-' )
{
sign = "-";
digits = intStr.substring(1);
}
else
{
sign = "";
digits = intStr;
}
while(digits.charAt(0) == '0' && digits.length > 1)
{
digits = digits.substring(1);
}
intStr = sign + digits;
obj.val(intStr);
}
});
}
var IPMACCheckResult = {result: "checkOK"};
template.trigger("wholeIPorMACCheck",[template,IPMACCheckResult]);
if (IPMACCheckResult.result != "checkOK")
{
return;
}
}
template.trigger("ActionBeforePostByCustom",[template,ActionBeforePostResult]);
if (ActionBeforePostResult.result != "Process")
{
return;
}
var ThisInstID = $("[id^='_InstID']",template).val();
if ( ThisInstID == undefined )
{
var luquidObjUl = $("._LuQUID_CONFIG_OBJID", Head);
var objId = $("li", luquidObjUl).eq(0).text();
var instId = objId + "\\._OBJ_InstID";
ThisInstID = $("[id^='"+ instId +"']",template).val();
}
if ( ThisInstID == -1
&& (buttonType == "Cancel" || buttonType == "Delete") )
{
template.remove();
return;
}
var ServerAddr = $("address span", Head).text();
var IfShowWaitTipTmp = IfShowWaitTip;
if ( IfShowWaitTipTmp == undefined )
{
IfShowWaitTipTmp = true;
}
dataPost(buttonType, eventHandler, ServerAddr, template, undefined, IfShowWaitTipTmp);
});
});
}
function dataPost(actionType, PostSuccHandler, ServerAddr, template, PostData, IfShowWaitTip, asyncFlag)
{
var IfShowWaitTipTmp = IfShowWaitTip;
if ( IfShowWaitTipTmp == undefined )
{
IfShowWaitTipTmp = true;
}
if (asyncFlag == undefined)
{
asyncFlag = true;
}
var PostDataTmp = "";
if (PostData == undefined)
{
template.trigger("hiddenValueChangeByCustom",[template, actionType]);
PostDataTmp = template.InitialPostData(actionType);
}
else
{
PostDataTmp = PostData;
}
PostDataTmp += "&_sessionTOKEN="+_sessionTmpToken;
var procData = true;
if (PostDataTmp.indexOf("%20") >= 0)
{
procData = false;
}
var degistStr = sha256(PostDataTmp);
var selfHeader = {};
selfHeader["Check"] = asyEncode(degistStr);
if ( IfShowWaitTipTmp == true )
{
showWaitTip(true);
}
$.ajax({
url:ServerAddr,
type: 'POST',
data: PostDataTmp,
dataType: 'xml',
headers: selfHeader,
processData: procData,
async: asyncFlag,
timeout: 30000,
cache:false,
error: function(){
var ajaxPostFailHint = "The server is not available now. Please refresh page to reload. ";
var errorContainer = $(".errorHint",template);
var changeArea = $(".ChangeArea",template);
var collapsibleInst = $(".collapsibleInst",template);
if ( errorContainer != undefined )
{
$("span", errorContainer).text(ajaxPostFailHint);
errorContainer.showIt(true);
if ( changeArea != undefined )
{
changeArea.showIt(true);
}
if ( collapsibleInst != undefined )
{
collapsibleInst.addClass("instNameExp");
}
template.showIt(true);
}
showWaitTip(false);
},
success: function(xml){
_LuQUID_setTemplateDefEvents(template, PostSuccHandler);
template.trigger(PostSuccHandler,[xml,template]);
if (template.hasError(xml,"_noExist") == 0)
{
$(".SpecialPassword", template).each(function(i){
$(this).val("						");
});
}
var formObj = $(".form_content", template);
var errObjs = $(".errorLabelWraper > .error", formObj);
errObjs.attr("style", "display:none");
if ( IfShowWaitTipTmp == true )
{
showWaitTip(false);
}
}
});
}
function homedeletedataPost(actionType, PostSuccHandler, ServerAddr, template, PostData, IfShowWaitTip, asyncFlag)
{
var IfShowWaitTipTmp = IfShowWaitTip;
if ( IfShowWaitTipTmp == undefined )
{
IfShowWaitTipTmp = true;
}
if (asyncFlag == undefined)
{
asyncFlag = true;
}
var deleteid = $("[id^='Delete']",template).attr('id');
var idArr = deleteid.split(":");
var tmpinsid = idArr[idArr.length - 1];
var insid = parseInt(tmpinsid, 10) + 1;
var PostDataTmp = "IF_ACTION=" + actionType + "&" +"_InstID=" + parseInt(insid, 10);
if (typeof(_sessionTmpToken) != "undefined")
{
PostDataTmp += "&_sessionTOKEN="+_sessionTmpToken;
}
if ( IfShowWaitTipTmp == true )
{
showWaitTip(true);
}
$.ajax({
url:ServerAddr,
type: 'POST',
data: PostDataTmp,
dataType: 'xml',
async: asyncFlag,
timeout: 30000,
cache:false,
error: function(){
var ajaxPostFailHint = "The server is not available now. Please refresh page to reload. ";
var homeWrapperObj = template.parent("[id^='homeWrapper']");
var errorContainertmp = $(".lanErr",homeWrapperObj);
var errorContainer = $(".errorHint",errorContainertmp);
if ( errorContainer != undefined )
{
$("span", errorContainer).text(ajaxPostFailHint);
errorContainer.showIt(true);
template.showIt(true);
}
showWaitTip(false);
},
success: function(xml){
template.trigger(PostSuccHandler);
if ( IfShowWaitTipTmp == true )
{
showWaitTip(false);
}
}
});
}
function focusAndSelectInput(jqObj)
{
var disValue = jqObj.attr("disabled");
if (disValue != "disabled" && disValue != true)
{
jqObj.focus();
jqObj.select();
}
}
function FocusAutoJump(obj,value,e)
{
var objJQ = $(obj);
var prevOBJ = objJQ.prev("input");
var nextOBJ = objJQ.next("input");
var valLen = value.length;
var keynum;
if (window.event)
{
keynum = e.keyCode;
}
else if (e.which)
{
keynum = e.which;
}
var temp = value.substring(valLen-1, valLen);
if ("." == temp && objJQ.hasClass("ip") && 0 != valLen)
{
objJQ.val(value.substring(0, valLen-1))
if ("." != value)
{
focusAndSelectInput(nextOBJ);
}
}
if (valLen == obj.maxLength)
{
if (nextOBJ.length <= 0)
{
return;
}
if (9 != keynum && 16 != keynum && 35 != keynum && 36 != keynum &&
37 != keynum && 38 != keynum && 39 != keynum && 40 != keynum &&
46 != keynum && 8 != keynum && objJQ.valid() == 1)
{
focusAndSelectInput(nextOBJ);
}
}
else if (valLen == 0 && 37 == keynum)
{
if (prevOBJ.length <= 0)
{
return;
}
focusAndSelectInput(prevOBJ);
}
else
{
return;
}
}
function autoJumpBack(obj,value,e)
{
var objJQ = $(obj);
var prevOBJ = objJQ.prev("input");
var nextOBJ = objJQ.next("input");
var valLen = value.length;
var keynum;
if (window.event)
{
keynum = e.keyCode;
}
else if (e.which)
{
keynum = e.which;
}
if (8 == keynum && valLen == 0)
{
if (prevOBJ.length <= 0)
{
return;
}
focusAndSelectInput(prevOBJ);
}
}
jQuery.fn.FillIPorMacDataBySplit = function(subid,Delimiter,length) {
var IPOBJ = $(this);
if ( IPOBJ.length == 0 )
{
return;
}
var containerOBJ = IPOBJ.parents("[id^='template_']");
var value = IPOBJ.val();
if ( !value )
{
return;
}
var temp= value.split(Delimiter);
if (length != temp.length)
{
return;
}
for(var i=0; i<length; i++)
{
var fillOBJ = $("[id^='"+subid+i+"']",containerOBJ);
fillOBJ.val(temp[i]);
}
};
jQuery.fn.FillIPorMacDataCombination = function(subid,Delimiter,length) {
var IPOBJ = $(this);
if ( IPOBJ.length == 0 )
{
return;
}
var containerOBJ = IPOBJ.parents("[id^='template_']");
var temp = "";
for(var i=0; i<length; i++)
{
var tempObj = $("[id^='"+subid+i+"']",containerOBJ);
if(0!=i)
{
temp += Delimiter;
}
var tempValue = tempObj.val();
if ( !tempValue )
{
tempValue = "";
}
temp += tempValue;
tempObj.addClass("PostIgnore");
}
IPOBJ.val(temp);
return temp;
};
jQuery.fn.checkIPorMACbyApply = function(checkIPorMACObj, template, IPMACCheckResult){
var breakFlag = 0;
$.each(checkIPorMACObj, function(key, value){
if (breakFlag != 0)
{
return false;
}
if ($("[id^='sub_"+key+"']",template).is(":visible") != true)
{
return true;
}
var labelId = value.labelId;
var paraName = "";
var paraNameObj = template.find("label[for^='"+labelId+"\\:']");
if ( paraNameObj.length <= 0 )
{
paraNameObj = template.find("label[for='"+labelId+"']");
}
if ( paraNameObj.length > 0 )
{
paraNameObj.each(function(){
var labelTmp = $(this);
if (labelTmp.hasClass("error"))
{
return true;
}
paraName = labelTmp.text();
return false;
});
}
var elementType = value.eleType;
if (elementType == "IP")
{
var IPObj = $("[id^='"+key+"']",template);
IPObj.FillIPorMacDataCombination("sub_"+key, ".", 4);
var ipValue = IPObj.val();
if (value.rules != undefined)
{
$.each(value.rules, function(k, v){
var ipRet = checkWholeIPv4(k, v, ipValue, template);
if (ipRet[0] == false)
{
var errMsg = getMsgofWholeMACIPCheck(ipRet, value, ipValue, paraName);
$(".errorHint",template).show();
$(".errorHint span",template).text(errMsg);
IPMACCheckResult.result = "checkFail";
breakFlag = 1;
return false;
}
else
{
$(".errorHint",template).hide();
}
});
}
}
else if (elementType == "MAC")
{
var MACObj = $("[id^='"+key+"']",template);
MACObj.FillIPorMacDataCombination("sub_"+key, ":", 6);
var macValue = MACObj.val();
if (value.rules != undefined)
{
$.each(value.rules, function(k, v){
var macRet = checkWholeMac(k, v, macValue);
if (macRet[0] == false)
{
var errMsg = getMsgofWholeMACIPCheck(macRet, value, macValue, paraName);
$(".errorHint",template).show();
$(".errorHint span",template).text(errMsg);
IPMACCheckResult.result = "checkFail";
breakFlag = 1;
return false;
}
else
{
$(".errorHint",template).hide();
}
});
}
}
else
{
consoleLog("ElementType +'"+elementType+"' is not supported now!")
}
});
};
jQuery.fn.setPromptCheckJSON = function(checkJSONTempObj, template){
var templateID = template.attr("id");
var instIndex = templateID.match(/\d+$/);
var suffix = "";
if ( instIndex )
{
suffix = ":"+instIndex;
}
var checkJSONInstObj = {"groups":{}, "rules":{}, "messages":{}};
if ( checkJSONTempObj.groups != undefined )
{
$.each(checkJSONTempObj.groups, function(key, value) {
var valJSONStr = value;
var idArr = value.split(" ");
for ( var i=0; i<idArr.length; i++ )
{
idArr[i] += suffix;
}
valJSONStr = idArr.join(" ");
var parameterJSON = eval("({'"+key+suffix+"':'" + valJSONStr + "'})");
$.extend(checkJSONInstObj.groups, parameterJSON);
});
}
if ( checkJSONTempObj.rules != undefined )
{
$.each(checkJSONTempObj.rules, function(key, value) {
var parameterJSON = {};
parameterJSON[key + suffix] = value;
$.extend(checkJSONInstObj.rules, parameterJSON);
});
}
if ( checkJSONTempObj.messages != undefined )
{
$.each(checkJSONTempObj.messages, function(key, value) {
var parameterJSON = {};
parameterJSON[key + suffix] = value;
$.extend(checkJSONInstObj.messages, parameterJSON);
});
}
var instForm = template.find("form");
instForm.validate(checkJSONInstObj);
};
function consoleLog(para)
{
if (typeof window.console == "undefined") {
window.console = {log: function() {}};
}
window.console.log( para );
}
function getInstIndexByPath(xml, OBJID, path)
{
var OBJ = $(xml).find(OBJID);
var instances = $("Instance", OBJ);
var instIndex = -1;
instances.each(function(i){
var inst = $(this);
inst.find("ParaName").each(function(){
var ParaName = $(this).text();
var ParaValue = $(this).next().text();
if ( ParaName.match(/^_InstID/) != null
&& ParaValue == path )
{
instIndex = i;
}
});
});
return instIndex;
}
function xmlParaInInstOperate(xml, OBJVal, InstIndex, ToOperParaArray)
{
var OBJ = $(OBJVal, $(xml));
var inst = $("Instance", OBJ).eq(InstIndex);
inst.find("ParaName").each(function(){
var ParaSelf = $(this);
var ParaValSelf = $(this).next();
var ParaName = ParaSelf.text();
var ParaValue = ParaValSelf.text();
for (var tmp in ToOperParaArray)
{
if( tmp == ParaName )
{
ToOperParaArray[tmp].ValueOrigin = ParaValue;
if (ToOperParaArray[tmp].setAction)
{
ToOperParaArray[tmp].setAction(ParaSelf, ParaValSelf, ParaValue);
}
}
}
});
}
function getParaValueInXML(xml, OBJID, InstIndex, paraNameIn)
{
var paraValueOut = "N/A";
var OBJ = $(xml).find(OBJID);
var instances = $("Instance", OBJ);
var inst = instances.eq(InstIndex);
inst.find("ParaName").each(function(){
var ParaName = $(this).text();
var ParaValue = $(this).next().text();
if ( ParaName == paraNameIn )
{
paraValueOut = ParaValue;
return false;
}
});
return paraValueOut;
}
function colorTblRow(tblClass, rowAttr, Head)
{
$(tblClass+" .colorTblRow", Head).each(function(){
var thisRow = $(this);
thisRow.removeClass("colorRow");
});
var shouldPainted = true;
if ( rowAttr == "even" )
{
shouldPainted = true;
}
else
{
shouldPainted = false;
}
var allRows = $(tblClass+" .colorTblRow", Head);
allRows.each(function(){
var thisRow = $(this);
if ( thisRow.css("display") != "none" )
{
if ( true == shouldPainted )
{
thisRow.addClass("colorRow");
shouldPainted = false;
}
else
{
shouldPainted = true;
}
}
});
}
function reformString(inStr, splitNum)
{
var strLen = inStr.length;
var outStr = "";
var arr = [];
var start = 0;
var end = 0;
if (strLen > 4)
{
var flag = strLen % splitNum;
if (flag != 0)
{
end = flag;
}
else
{
end = start + splitNum;
}
for (var i=0; end <= strLen; i++)
{
arr[i] = inStr.slice(start, end);
start = end;
end = start + splitNum;
}
for (var j = 0; j < arr.length; j++)
{
outStr = outStr + arr[j] + " ";
}
outStr = outStr.slice(0, (outStr.length-1));
}
if (outStr == "")
{
outStr = inStr;
}
return outStr;
}
function sec2HrMinSec(sec)
{
if (sec == "")
{
consoleLog("[sec2HrMinSec]sec is empty, please check if it's ok?! ");
}
var s, m, h;
s = parseInt(sec % 60);
m = parseInt(sec / 60, 10) % 60;
h = parseInt(sec / 3600, 10);
return (h + " h " + m + " min " + s + " s");
}
jQuery.fn.collapsibleInstTitleChange = function(referenceID) {
var ContainerOBJ = $(this);
var NameValue = "";
var nameSrcObj = $("[id^='"+referenceID+":']",ContainerOBJ);
var eleType = nameSrcObj[0].type;
if (eleType == "select-one") {
NameValue = $("option:selected", nameSrcObj).text();
}else {
NameValue = nameSrcObj.val();
}
var instNameObj = $(".collapsibleInst",ContainerOBJ);
instNameObj.text(NameValue);
instNameObj.attr("title", NameValue);
};
function initialCtrlAllLink(containerOBJ)
{
var AllObj = $(".AllOn, .AllOff",containerOBJ);
AllObj.unbind("click");
AllObj.click(function(event){
var AllCtlItme = $(this);
var Head = AllCtlItme.parents(".HeadDIV");
var Template = AllCtlItme.parents("[id^='template_']");
var needCheck = 1;
var EleSelectValue;
if ( AllCtlItme.hasClass("AllOn") )
{
needCheck = 1;
EleSelectValue = 1;
}
else if ( AllCtlItme.hasClass("AllOff") )
{
needCheck = 0;
EleSelectValue = 0;
}
else
{
}
if ( AllCtlItme.attr("EleSelectValue") )
{
EleSelectValue = AllCtlItme.attr("EleSelectValue");
}
$(":radio",Template).each(function(){
var RadioOBJ = $(this);
if ( RadioOBJ.val() == EleSelectValue )
{
RadioOBJ.prop("checked", true);
}
else
{
RadioOBJ.prop("checked", false);
}
});
$(":checkbox",Template).each(function(){
var CheckboxOBJ = $(this);
if ( needCheck == 1)
{
CheckboxOBJ.prop("checked", true);
}
else
{
CheckboxOBJ.prop("checked", false);
}
});
});
}
function ActionByApplyResult(xml, template, TitleValueReferID)
{
var isError = template.hasError(xml);
if (isError == 0)
{
$("span.__CheckPwdStrength",template).remove();
succHintShow(template);
var _InstIDOBJ = $(xml).find("_InstID");
if (_InstIDOBJ.length > 0)
{
$("[id^='_InstID']",template).val(_InstIDOBJ.text());
}
var headObj = template.parents(".HeadDIV");
var luquidObjUl = $("._LuQUID_CONFIG_OBJID", headObj);
$("li", luquidObjUl).each(function(){
var objId = $(this).text();
var ruleTemplate = $("[id='"+objId+"']._LuQuid_TempalteBox", template);
if( ruleTemplate.length > 0 )
{
return true;
}
var instIdSelector = objId + "\\._OBJ_InstID";
var instIDTag = $(xml).find(instIdSelector);
if (instIDTag.length == 0)
{
return true;
}
$("[id^='"+ instIdSelector +"']",template).val(instIDTag.text());
});
if ( TitleValueReferID != undefined )
{
template.collapsibleInstTitleChange(TitleValueReferID);
}
$("textarea[_readonlycanberm]",template).attr("readonly","readonly");
$("input[type!=button][_readonlycanberm],select[_readonlycanberm]",template).attr("disabled","disabled")
.addClass("readonlyInputBg");
$(".Button[_readonlycanberm]",template).attr("disabled","disabled").addClass("disableBtn");
$(".longBtn[_readonlycanberm]",template).attr("disabled","disabled").addClass("disableLongBtn");
}
return isError;
}
function ActionByCancelResult(xml, template, OBJIDForFillData, TitleValueReferID)
{
var isError = template.hasError(xml);
if ( isError == 0 )
{
$("span.__CheckPwdStrength",template).remove();
template.fillDataByOBJID(xml, OBJIDForFillData, template, 0);
template.FillDataOnlyForTemplateBox(xml, OBJIDForFillData, template);
if ( TitleValueReferID != undefined )
{
template.collapsibleInstTitleChange(TitleValueReferID);
}
}
else
{
$(".ChangeArea",template).showIt(true);
$(".collapsibleInst",template).addClass("instNameExp");
}
return isError;
}
function addInst(Head, InstNumOBJ)
{
var HeadID = Head.attr("id");
var templateOBJ = $("#template_"+HeadID);
var suffix = InstNumOBJ.val();
var clone = templateOBJ.cloneWithSuffix(suffix);
$("[_readonlycanberm]",clone).removeAttr("disabled readonly")
.removeClass("readonlyInputBg disableBtn disableLongBtn");
templateOBJ.before(clone);
InstNumOBJ.val(parseInt(suffix)+1);
templateOBJ.trigger("ActionBeforeAddInst",[clone]);
clone.showIt(true);
$(".collapsibleInst",clone).addClass("instNameExp");
$(".ChangeArea",clone).showIt(true);
}
function IfCreateInstChk(Head, InstNumOBJ, AddInstLink)
{
var ExistInst = 0;
$("[id^='template_']",Head).each(function(){
if ($(this).css("display") == "block")
{
ExistInst = 1;
return false;
}
});
if ( ExistInst == 0
&& AddInstLink.length > 0 )
{
return true;
}
return false;
}
function collapBarAction(collapBar)
{
var Head = collapBar.parents(".HeadDIV");
var HeadID = Head.attr("id");
var containerMainID = HeadID + "_container";
var UnderControlContainer = $("#"+containerMainID, Head);
var template = collapBar.parents("[id^='template_']");
var selector = "[id^='"+ containerMainID +"']";
var containerInTemp = $(selector, template);
var containerLen = containerInTemp.length;
if ( containerLen > 0 )
{
UnderControlContainer = containerInTemp;
}
if ( UnderControlContainer.is(":visible") )
{
UnderControlContainer.showIt(false);
collapBar.removeClass("collapsibleBarExp");
}
else
{
UnderControlContainer.showIt(true);
collapBar.addClass("collapsibleBarExp");
}
var InstNumOBJ = $("#_InstNum",Head);
var AddInstLink = Head.find(".addInst");
if ( IfCreateInstChk(Head, InstNumOBJ, AddInstLink) )
{
addInst(Head, InstNumOBJ);
}
}
function initial_collapBarWithDataTrans(Head)
{
var UnderControlContainer = $("#"+ Head.attr("id") +"_container");
UnderControlContainer.hide();
$(".collapBarWithDataTrans",Head).click(function(event){
event.preventDefault();
var collapBar = $(this);
if ( $("#DataHasBeenGot",Head).val() == 0 )
{
showWaitTip(true);
setTimeout(function(){
var ServerAddr = $("address span", Head).text();
Head.dataTransfer(ServerAddr,
"GET",
Head.succfunction,
undefined,
undefined,
false
);
$("#DataHasBeenGot",Head).val(1);
collapBarAction(collapBar);
}, 2);
}
else
{
collapBarAction(collapBar);
}
});
}
function initial_CollapsibleBar()
{
$(".collapsibleBar").each(function(){
var HeadID = $(this).parents(".HeadDIV").attr("id");
var UnderControlContainer = $("#"+ HeadID +"_container");
UnderControlContainer.hide();
});
$(".collapsibleBar").each(function(){
var collapsibleBar = $(this);
collapsibleBar.click(function(event){
event.preventDefault();
var collapBar = $(this);
collapBarAction(collapBar);
});
});
}
function initial_addInstLink()
{
$(".addInst").each(function(event){
var addInstOBJ = $(this);
addInstOBJ.unbind("click");
addInstOBJ.click(function(event){
var Head = $(this).parents(".HeadDIV");
var InstNumOBJ = $("#_InstNum",Head);
addInst(Head, InstNumOBJ);
});
});
}
function _LuQUID_template_ApplyDefEventFunc(event, xml, template)
{
return ActionByApplyResult(xml, template);
}
function _LuQUID_template_CancelDefEventFunc(event, xml, template)
{
var OBJID = [];
var Head = template.parents(".HeadDIV");
var OBJDOMs = $("._LuQUID_CONFIG_OBJID>li", Head);
OBJDOMs.each(function(){
var identity = $(this).text();
OBJID.push(identity);
})
ActionByCancelResult(xml, template, OBJID);
template.trigger("fillDataByCustom",[0, template, xml]);
}
function _LuQUID_template_DeleteDefEventFunc(event, xml, template)
{
if ( template.hasError(xml) == 0 )
{
template.remove();
}
else
{
$(".ChangeArea",template).showIt(true);
}
}
function _LuQUID_template_InstSwitchDefEventFunc(event, xml, template)
{
if ( template.hasError(xml) == 0 )
{
return;
}
$(".ChangeArea",template).showIt(true);
$(".collapsibleInst",template).addClass("instNameExp");
}
var _LuQUID_template_DefEventFuncMap = {
"fillDataByApplyResult" : _LuQUID_template_ApplyDefEventFunc,
"fillDataByCancelResult" : _LuQUID_template_CancelDefEventFunc,
"fillDataByDeleteResult" : _LuQUID_template_DeleteDefEventFunc,
"fillDataByInstSwitchResult" : _LuQUID_template_InstSwitchDefEventFunc
};
function _LuQUID_setTemplateDefEvents(template, PostSuccHandler)
{
var events = template.data("events");
if( events && events[PostSuccHandler] )
{
return ;
}
var eventFunc = _LuQUID_template_DefEventFuncMap[PostSuccHandler];
if ( eventFunc )
{
template.bind(PostSuccHandler, eventFunc);
}
}
function initialConfigArea(Head)
{
if ( 0 == $("._LuQUID_CONFIG_OBJID", Head).length )
{
return;
}
var OBJID = [];
var OBJDOMs = $("._LuQUID_CONFIG_OBJID>li", Head);
OBJDOMs.each(function(){
var identity = $(this).text();
OBJID.push(identity);
});
var isMultiInst = $(".maxInstNum", Head).val();
consoleLog("isMultiInst="+isMultiInst);
Head.succfunction = function(xml){
Head.hasError(xml, "externErrorHint");
{
Head.trigger("changeXMLDataBeforeFillData", [xml]);
var XMLOBJ = $(xml).find(OBJID[0]);
var RuleNum = $("Instance", XMLOBJ).length;
if (isMultiInst == 0)
{
Head.fillDataByOBJID(xml, OBJID, Head, 0);
Head.InstantializeForTemplateBox(xml, OBJID, Head);
var template = $("[id^='template_']", Head);
template.trigger("fillDataByCustom",[0, template]);
template.showIt(true);
}
else
{
Head.fillDataByCustom = undefined;
Head.createPageDataByClone(RuleNum, OBJID, xml,
Head.fillDataByCustom);
}
}
};
if ( $(".collapBarWithDataTrans",Head).length <= 0 )
{
Head.dataTransfer(ServerAddr,
"GET",
Head.succfunction);
}
else
{
initial_collapBarWithDataTrans(Head);
}
}
function initial_QueryAccessDeviceLink()
{
var linkSelector = "._LuQUID_SelAccessDevice";
var selDevLinks = $(linkSelector);
if ( selDevLinks.length == 0 )
{
return;
}
selDevLinks.each(function(){
var selDevLink = $(this);
selDevLink.css("display", "block");
var rowObj = selDevLink.parents(".row").eq(0);
rowObj.append("<div class='clear'></div>");
var macID = rowObj.find(".mac").eq(0).attr("id");
var macIDStriped = macID;
var paraID = macIDStriped.match(/^sub_(.+)\d$/)[1];
var headID = selDevLink.parents(".HeadDIV").attr("id");
var suffix = ":"+paraID+":"+headID;
var devListHTML = ''
+ '<div class="_LuQUID_AccessDeviceList" name="_LuQUID_AccessDeviceInfo'+suffix+'" style="display:none;">'
+ '<input type="hidden" class="PostIgnore" id="_LuQUID_InstNum'+suffix+'" value="0">'
+ '<p id="_LuQUID_NoAccessDev'+suffix+'">Currently no associated devices.</p>'
+ '<p id="_LuQUID_template_AccessDeviceInfo'+suffix+'" style="display:none">'
+ '<label class="cfgLabel">&nbsp;</label>'
+ '<input type="hidden" class="PostIgnore" id="_LuQUID_HostName'+suffix+'" value="">'
+ '<input type="hidden" class="PostIgnore" id="_LuQUID_IPAddress'+suffix+'" value="">'
+ '<input type="hidden" class="PostIgnore" id="_LuQUID_MACAddress'+suffix+'" value="">'
+ '<input type="radio" class="PostIgnore" id="_LuQUID_AccessDeviceRadio'+suffix+'" name="_LuQUID_AccessDeviceRadio'+suffix+'" value=""/>'
+ '<label for="_LuQUID_AccessDeviceRadio'+suffix+'">'
+ 'Host Name: [<span id="_LuQUID_StrHostName'+suffix+'">Unknown</span>]'
+ '-MAC Address: [<span id="_LuQUID_StrMACAddress'+suffix+'"></span>]'
+ '</label>'
+ '</p>'
+ '<a class="_LuQUID_HideAccessDevice">Hide</a>'
+ '</div>';
var macObj = rowObj.find(".right");
var devListObj = $(devListHTML).insertAfter(macObj);
var labelObj = selDevLink.parent().prev();
var labelWidth = labelObj.css("width");
devListObj.css("margin-left", labelWidth);
});
var devRadios = $("input[name^='_LuQUID_AccessDeviceRadio']");
devRadios.click(function(event){
var devRadio = $(this);
var templateSelector = "[id^='_LuQUID_template_AccessDeviceInfo']";
var templateDev = devRadio.parents(templateSelector);
var devListObj = devRadio.parents("[name^='_LuQUID_AccessDeviceInfo']");
var rowObj = devRadio.parents(".row").eq(0);
var deviceRadioSelector = "input[name^='_LuQUID_AccessDeviceRadio']";
$(deviceRadioSelector, devListObj).prop("checked", false);
devRadio.prop("checked", true);
var devMACObj = $("[id^='_LuQUID_MACAddress']", templateDev);
var macID = rowObj.find(".mac").eq(0).attr("id");
var macIDStriped = colonStrippingLast(macID);
var subID = macIDStriped.match(/^(sub_.+)\d$/)[1];
devMACObj.FillIPorMacDataBySplit(subID, ":", 6);
var lastSubMAC = rowObj.find(".mac").last();
lastSubMAC.focus().blur();
});
var hideDevLinks = $("._LuQUID_HideAccessDevice");
hideDevLinks.unbind("click");
hideDevLinks.click(function(event){
event.preventDefault();
var devListObj = $(this).parents("[name^='_LuQUID_AccessDeviceInfo']");
devListObj.hide();
});
selDevLinks.unbind("click");
selDevLinks.click(function(event){
event.preventDefault();
var selDevLink = $(this);
var rowObj = selDevLink.parents(".row");
var devListObj = rowObj.find("[name^='_LuQUID_AccessDeviceInfo']");
if (devListObj.is(":visible"))
{
devListObj.hide();
return;
}
var InstNumBefore = $("[id^='_LuQUID_InstNum']", devListObj).val();
for ( var i=0; i<InstNumBefore; i++ )
{
var selector = "[id$='_"+i+"']"
+"[id^='_LuQUID_template_AccessDeviceInfo']";
$(selector, devListObj).remove();
}
devListObj.AccessDeviceXMLDealWith = function(xml){
devListObj.hasError(xml,"externErrorHint");
var ACCESSDEVRuleOBJ = $(xml).find("OBJ_ACCESSDEV_ID");
var RuleNum = $("Instance", ACCESSDEVRuleOBJ).length;
var OBJID = ["OBJ_ACCESSDEV_ID"];
var templateSelector = "[id^='_LuQUID_template_AccessDeviceInfo']";
var TemplateOBJ = $(templateSelector, devListObj);
$("[id^='_LuQUID_InstNum']", devListObj).val(RuleNum);
var NoAccessDevObj = $("[id^='_LuQUID_NoAccessDev']", devListObj);
if (RuleNum == 0 )
{
NoAccessDevObj.show();
}
else
{
NoAccessDevObj.hide();
}
for (var i=0; i<RuleNum; i++)
{
var clone = TemplateOBJ.cloneWithSuffix(i);
TemplateOBJ.before(clone);
clone.fillDataByOBJID(xml, OBJID, clone, i);
var HostNameStr = $("[id^='_LuQUID_HostName']", clone).val();
var IPAddress = $("[id^='_LuQUID_IPAddress']", clone).val();
var MACAddress = $("[id^='_LuQUID_MACAddress']", clone).val();
if (HostNameStr == "")
{
if (IPAddress != "")
{
HostNameStr = "PC" + IPAddress;
}
else if (MACAddress != "")
{
HostNameStr = "PC" + MACAddress
}
else
{
HostNameStr = "Unknown";
}
}
$("[id^='_LuQUID_StrHostName']", clone).text(HostNameStr);
var MACAddress = $("[id^='_LuQUID_MACAddress']", clone).val();
$("[id^='_LuQUID_StrMACAddress']", clone).text(MACAddress);
clone.show();
}
devListObj.show();
};
var accessMode = selDevLink.attr("_LuQUID_Access_Mode")
var AccessModeSet =
[
"ETH",
"WLAN",
"ALL"
];
if ( -1 == $.inArray(accessMode, AccessModeSet) )
{
var devTypeList = AccessModeSet.join("/")
consoleLog("_LuQUID_Access_Mode must be set as one of "+devTypeList);
return ;
}
var ServerAddr = "/?_type=hiddenData&_tag=accessdev_data&";
ServerAddr += "DeveiceType="+accessMode;
showWaitTip(true);
devListObj.dataTransfer(ServerAddr,
"GET",
devListObj.AccessDeviceXMLDealWith,
undefined,
undefined,
false);
});
}
function InitTimeOption(start,end,ele,step, ctrlClass)
{
var realNum = (end - start)/step;
for(var i=0; i<realNum; i++)
{
var tmp = i*step+start;
var tmpText = tmp;
if ( tmp < 10 )
{
tmpText = '0'+tmpText;
}
if (i == realNum-1
&&( ctrlClass == "group_HourEnd" || ctrlClass == "group_MinuteEnd" ) )
{
ele.append("<option value='"+tmp+"' selected='selected'>"+ tmpText +"</option>");
}
else
{
ele.append("<option value='"+tmp+"'>"+ tmpText +"</option>");
}
}
}
function initial_TimeCtl()
{
var TimeCtl = $("._LuQUID_TimeCtl");
if ( TimeCtl.length <= 0 )
{
return;
}
var timeArr = {
"group_HourStart" : [0, 24],
"group_MinuteStart" : [0, 60],
"group_HourEnd" : [0, 24],
"group_MinuteEnd" : [0, 60]
};
for (var tmp in timeArr)
{
var timeEle = $("."+ tmp, TimeCtl);
var start = timeArr[tmp][0];
var end = timeArr[tmp][1];
InitTimeOption(start, end, timeEle, 1, tmp);
}
}
function Second2DHMS(num)
{
var s = num % 60;
num = parseInt(num/60);
var m = num % 60;
num = parseInt(num/60);
var h = num % 24;
num = parseInt(num/24);
var d = num;
return {
day: d,
hour: h,
minute: m,
second: s
}
}
function InitSelectByIntRange(selectObj, min, max)
{
selectObj.empty();
var domCache = [];
for (var i = min; i <= max; i++)
{
domCache.push("<option title='" +i+ "' value='" +i+ "'>"+i+"</option>");
}
selectObj.append(domCache.join());
}
function SetCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value)
+ ";expires=" + exp.toGMTString();
}
function getCookie(name)
{
var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
if(arr != null)
{
return unescape(arr[2]);
}
return null;
}
function delCookie(name)
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval = getCookie(name);
if( cval!=null )
{
document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
}
function IsBrowserSupportCookie()
{
var support = false;
SetCookie('cookie_test','1');
var cookie_test = getCookie('cookie_test');
if( '1' == cookie_test)
{
support = true;
}
delCookie('cookie_test');
return support;
}
(function () {
var setTimeout_context_binding = function (vCallback, nDelay ) {
var oThis = this, aArgs = Array.prototype.slice.call(arguments, 2);
return window.setTimeout(vCallback instanceof Function ? function () {
vCallback.apply(oThis, aArgs);
} : vCallback, nDelay);
};
var setInterval_context_binding = function(vCallback, nDelay ) {
var oThis = this, aArgs = Array.prototype.slice.call(arguments, 2);
return window.setInterval(vCallback instanceof Function ? function() {
vCallback.apply(oThis, aArgs);
} : vCallback, nDelay);
};
var timer = function(fnAlarm, options)
{
this.fnAlarm_inner = undefined;
this.timeout = undefined;
this.interval = undefined;
this.contextDom = undefined;
this.timerHandle;
if ( fnAlarm )
{
this.fnAlarm_inner = fnAlarm;
}
else
{
return;
}
if ( options )
{
if ( options.timeout )
{
this.timeout = options.timeout;
}
if ( options.interval )
{
this.interval = options.interval;
}
if ( options.contextDom )
{
this.contextDom = options.contextDom;
}
}
if ( !(this.timeout || options.interval) )
{
return;
}
};
timer.prototype.start = function(){
var context_binding_timer = undefined;
var time_value = undefined;
if ( this.timeout )
{
context_binding_timer = setTimeout_context_binding;
time_value = this.timeout;
}
else if ( this.interval )
{
context_binding_timer = setInterval_context_binding;
time_value = this.interval;
}
else
{
return;
}
this.timerHandle = context_binding_timer.call(this, function(){
if ( this.contextDom && !document.body.contains(this.contextDom) )
{
this.stop();
return;
}
this.fnAlarm_inner.call(this);
}, time_value);
};
timer.prototype.stop = function(){
if ( this.timeout ) {
clearTimeout(this.timerHandle)
} else {
clearInterval(this.timerHandle)
}
delete this.timerHandle;
};
timer.prototype.getTimerID = function(){
return this.timerHandle;
};
window.ContextBindingTimer = timer;
})();
(function ($) {
var o = $({});
$.subscribe = function () {
o.on.apply(o, arguments);
};
$.unsubscribe = function () {
o.off.apply(o, arguments);
};
$.publish = function () {
o.trigger.apply(o, arguments);
};
} (jQuery));
function timeTranslate(timeString)
{
var timetempstr = timeString;
if( timeString != "" )
{
var dayTranslat = {
"Sun" : "Sun",
"Mon" : "Mon",
"Tue" : "Tue",
"Wed" : "Wed",
"Thu" : "Thu",
"Fri" : "Fri",
"Sat" : "Sat"
};
var MonTranslat = {
"Jan" : "Jan",
"Feb" : "Feb",
"Mar" : "Mar",
"Apr" : "Apr",
"May" : "May",
"Jun" : "Jun",
"Jul" : "Jul",
"Aug" : "Aug",
"Sep" : "Sep",
"Oct" : "Oct",
"Nov" : "Nov",
"Dec" : "Dec"
};
var timeArry = timeString.split(",");
if(timeArry.length > 1)
{
var datstr = timeArry[0];
var monstr = timeArry[1];
timeArry[0] = dayTranslat[datstr];
timeArry[1] = MonTranslat[monstr];
}
timetempstr = timeArry.join(",");
}
return timetempstr;
}
function getPwdLevel(val, relVal)
{
if (val.length < 6)
{
return false;
}
if ( !(/[0-9]+/).test(val) ||
!(/[a-zA-Z]+/).test(val) ||
!(/[!"#$%&'()*+,-./:;<=>?@\[\\\]^_`{|}~]+/).test(val) )
{
return false;
}
if (val == relVal || val == relVal.split("").reverse().join(""))
{
return false;
}
return true;
}
function CheckPwdStrengthClass(pwdId, relativeId, templateId, customRuleFunc, customTip){
this.pwdObj = $("[id^="+pwdId+"]", $("#"+templateId));
this.checkStrength = function(o, v){
var r = {
txt: "Weak",
aClass: "redFont"
};
if (typeof(customRuleFunc) == "function"){
return customRuleFunc();
}
var myTplt = o.closest("[id^=template_]");
var relVal = $("[id^="+relativeId+"]", myTplt).val();
var strongPwd = getPwdLevel(v, relVal);
if (strongPwd) {
r.txt = "";
}
return r;
};
this.showResult = function(o, r){
var inputParent = o.parent();
inputParent.find(".__CheckPwdStrength").remove();
if (r.txt != "") {
inputParent.append("<span class='__CheckPwdStrength "+r.aClass+"'>"+r.txt+"</span>");
}
};
this.showTip = function(o){
var tip = "A strong password should match these rules: <br/>1. It should have at least 6 characters. <br/>2. It should be composed of digits, alphabet and special symbols. <br/>3. It should not have context relationship with the username, such as the same or inverse. ";
if (typeof(customTip) == "string") {
tip = customTip;
}
if (tip.length > 0){
var area = o.closest(".formTbl");
if (area.find(".__CheckPwdStrengthTip").length < 1) {
area.prepend("<div class='staticInfoHint __CheckPwdStrengthTip'><p>"+tip+"</p></div>");
}
}
$("#dynamicTip").remove();
o.trigger("focus.dTip");
};
var theCPSObj = this;
this.pwdObj.bind("keyup.pwdStrength", function(){
var v = $(this).val();
var r = theCPSObj.checkStrength($(this), v);
theCPSObj.showResult($(this), r);
}).bind("focus.pwdStrength", function(){
theCPSObj.showTip($(this));
});
}

</script>
<script type="text/javascript">
$(document).ready(function(){
initial_sceneTip();
initial_CollapsibleBar();
initial_addInstLink();
initial_QueryAccessDeviceLink();
initial_TimeCtl();
$(".HeadDIV").each(function(){
var Head = $(this);
var HeadID = Head.attr("id");
var template = $("#template_"+HeadID,Head);
var formOBJ = $("form",Head);
if ( ! formOBJ.attr("onsubmit") )
{
formOBJ.attr("onsubmit", "return false;");
}
var stopFormAutoSubmitStr = "<input type='text' id='_stopFormAutoSubmit'"
+" value='' class='PostIgnore'"
+" style='display:none;'>";
formOBJ.prepend(stopFormAutoSubmitStr);
initial_button("Apply", Head);
initial_button("Cancel", Head);
initial_button("Delete", Head);
initialCtrlAllLink(Head);
initial_special_password(Head);
var collapsibleInstObj = $(".collapsibleInst",template);
collapsibleInstObj.unbind("click");
collapsibleInstObj.click(function(event){
var collapsibleInst = $(this);
var template = collapsibleInst.parents("[id^='template_']");
var ChangeArea = $(".ChangeArea",template);
if ( ChangeArea.is(":hidden") )
{
ChangeArea.showIt(true);
collapsibleInst.addClass("instNameExp");
}
else
{
ChangeArea.showIt(false);
collapsibleInst.removeClass("instNameExp");
$(".Btn_cancel",ChangeArea).click();
}
});
$(".utf8Compatible", template).each(function(){
var thisObj = $(this);
var dTip = thisObj.text();
var dTipArr = dTip.split("");
var firstNum = "";
var secNum = "";
var firstNumStart = "";
var firstNumEnd = "";
var secNumStart = "";
var secNumEnd = "";
var Nums = 0;
var newTip = "";
dTipArr = $.grep(dTipArr, function(n,i){
return n != " ";
});
dTip = dTipArr.join("");
for(var i=0; i<dTipArr.length; i++)
{
if (Nums > 2)
{
thisObj.remove();
break;
}
if (isNaN(dTipArr[i]) == false)
{
if (firstNumStart == "")
{
firstNumStart = i;
firstNumEnd = parseInt(i)+1;
Nums += 1;
}
else
{
if (secNumStart == "")
{
if (firstNumEnd == i)
{
firstNumEnd = parseInt(i)+1;
}
else
{
secNumStart = i;
secNumEnd = parseInt(i)+1;
Nums += 1;
}
}
else
{
if (secNumEnd == i)
{
secNumEnd = parseInt(i)+1;
}
else
{
Nums = 3;
}
}
}
}
}
if (firstNumStart != "" && secNumStart != "")
{
firstNum = dTip.slice(firstNumStart, firstNumEnd);
secNum = dTip.slice(secNumStart, secNumEnd);
newTip = dTip.slice(0, firstNumStart)+" ";
if (parseInt(secNum) < 3)
{
var prevObjId = thisObj.prev().attr("id");
alert("Element[id='"+prevObjId+"']'s length range ["+ firstNum+","+secNum+"] will be invalid after utf-8 transforming!");
}
else
{
firstNum = Math.ceil(parseInt(firstNum) / 3);
secNum = Math.floor(parseInt(secNum) / 3);
if (firstNum < secNum)
{
firstNum=reformString(firstNum.toString(), 3);
secNum=reformString(secNum.toString(), 3);
newTip += firstNum + " ~ " + secNum;;
}
else if (firstNum == secNum)
{
secNum=reformString(secNum.toString(), 3);
newTip += secNum;
}
else
{
var prevObjId = thisObj.prev().attr("id");
alert("Element[id='"+prevObjId+"']'s length range ["+firstNum+","+secNum+"] is invalid after utf-8 transforming!");
}
}
}
else
{
thisObj.remove();
}
if (newTip != "")
{
thisObj.text(newTip);
}
});
template.on("focus.dTip","input[type='text'],input[type='password']", function(){
var thisObj = $(this);
if (thisObj.attr("readonly")) {
return;
}
var msg = thisObj.next("span").not(".__CheckPwdStrength").text();
if (msg != "")
{
var pos = thisObj.offset();
var objWidth = thisObj.width();
var dhtml = "<div id='dynamicTip'><div id='dTip_l'></div>"
+ "<div id='dTip_m'>"
+ msg
+ "</div><div id='dTip_r'></div></div>";
var dtObj = $(dhtml).css({top:(pos.top-33)+'px',left:(pos.left+objWidth+8)+'px'});
dtObj.appendTo('body').fadeIn(400);
thisObj.bind("blur.dTip",function(){
dtObj.remove();
});
}
});
$("input.ip,input.mac", template).each(function(){
var InputOBJ = $(this);
InputOBJ.unbind("keydown");
InputOBJ.unbind("keyup");
InputOBJ.keydown(function(event){
autoJumpBack(this,this.value,event);
});
InputOBJ.keyup(function(event){
FocusAutoJump(this,this.value,event);
});
});
$(".instSwitch input",template).each(function(){
var InputOBJ = $(this);
if (InputOBJ.attr("type") == "radio")
{
InputOBJ.unbind("change");
InputOBJ.change(function(event){
var template = $(this).parents("[id^='template_']");
var ChangeArea = $(".ChangeArea",template);
var _InstIDName = "_InstID";
var _InstIDValue = template.find("[id^='_InstID']").val();
var luquidObjUl = $("._LuQUID_CONFIG_OBJID", Head);
var objId = $("li", luquidObjUl).eq(0).text();
if ( _InstIDValue == undefined )
{
var instId = objId + "\\._OBJ_InstID";
_InstIDValue = $("[id^='"+ instId +"']",template).val();
_InstIDName = objId + "._OBJ_InstID";
}
if ( ChangeArea.is(":hidden")
&& _InstIDValue != "-1" )
{
var ServerAddr = template.parents(".HeadDIV").find("address span").text();
var instSwitchName = colonStripping(InputOBJ.attr("name"));
var instSwitchValue = InputOBJ.val();
var PostData = "IF_ACTION=Apply"+"&"
+ instSwitchName+"="+instSwitchValue+"&"
+ _InstIDName+"=" + _InstIDValue;
var actionType = "InstSwitch";
var PostSuccHandler = "fillDataByInstSwitchResult";
dataPost(actionType, PostSuccHandler, ServerAddr, template, PostData);
}
});
}
});
template.unbind("fillDataByInstSwitchResult");
template.bind("fillDataByInstSwitchResult", function(event,xml, template){
if ( template.hasError(xml) == 0 )
{
return;
}
$(".ChangeArea",template).showIt(true);
$(".collapsibleInst",template).addClass("instNameExp");
});
template.unbind("fillDataByDeleteResult");
template.bind("fillDataByDeleteResult", function(event,xml, template){
if ( template.hasError(xml) == 0 )
{
template.remove();
}
else
{
$(".ChangeArea",template).showIt(true);
}
});
initialStatusArea(Head);
initialConfigArea(Head);
});
});
</script>

<link rel="stylesheet" type="text/css" href="css/login.css" />
<style>
.logo_Claro {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_Claro.png) no-repeat 5px 30px;
}.logo_Antel {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_Antel.png) no-repeat 5px 30px;
}.logo_Tot {
width: 160px;
background: url(../img/Logo_Tot.png) no-repeat 5px 30px;
}
.timeArea_Tot {
left: 190px;
}.logo_Morocco {
background: url(../img/Logo_Morocco.png) no-repeat 5px 30px;
}.logo_IvoryOrange {
background: url(../img/Logo_IvoryOrange.png) no-repeat 5px 30px;
}
.logo_KAMA_Orange {
width: 300px;
height: 72px;
float: left;
background: url(../img/Logo_OMA.png) no-repeat 5px 15px;
}.logo_Orange {
background: url(../img/Logo_Orange.png) no-repeat 5px 30px;
}
.logo_KAMA_Orange {
width: 300px;
height: 72px;
float: left;
background: url(../img/Logo_OMA.png) no-repeat 5px 15px;
}.logo_CTC {
width: 190px;
height: 72px;
float: left;
background: url(../img/Logo_CTC.jpg) no-repeat 5px 40px;
}
.timeArea_CTC
{
left: 200px;
}
.loginTitle_CTC {
padding-left: 0px !important;
}
.logo_Tarr {
width: 110px;
height: 72px;
float: left;
background: url(../img/Logo_Tarr.png) no-repeat 5px 30px;
}.logo_OMA {
width: 300px;
height: 72px;
float: left;
background: url(../img/Logo_OMA.png) no-repeat 5px 15px;
}
.color_OMA
{
color:#FF6600 !important;
}

</style>
<div id="loginWrapper">
<div class="emFont loginTitle">Welcome to &#70;&#54;&#56;&#48;. Please login. </div>
<div id="loginContainer" class="loginContainer">
<input type="hidden" name="_sessionTOKEN" id="_sessionTOKEN" value=""/>
<div class="loginInstCfgArea">
<div class="row">
<label for="Frm_Username" class="left w120">Username</label>
<div class="right">
<input type="text" name="Frm_Username" id="Frm_Username" autocomplete="new-password" class="w180" value="" />
</div>
</div>
<div class="row">
<label for="Frm_Password" class="left w120">Password</label>
<div class="right">
<input type="password" name="Frm_Password" id="Frm_Password" autocomplete="new-password" class="w180 passInvisible" value=""/>
</div>
</div>
<div id="login_error" class="errorHint" style="display:none;">
<span id="login_error_span"></span>
<span id="login_error_waittime" value="0"></span>
</div>
</div>
</div>
<div id="loginBtn" class="">
<input type="submit" id="LoginId" class="button login" value="Login"/>
</div>
</div>

<div style="clear:left;height:1px;">&nbsp;</div>
</div>
<div id="page_footer">

<span id="copyRight">&copy;2008-&#50;&#48;&#50;&#48; ZTE Corporation. All rights reserved</span>&nbsp;&nbsp;|&nbsp;&nbsp;

<span id="pdtVer">&#70;&#54;&#56;&#48;</span>

</div>
</div>
<script type="text/javascript">
function LanguageSwitch(nowLanguage)
{
var changeLanguage = "";
if ( "English" == nowLanguage)
{
changeLanguage = "Chinese";
}
else
{
changeLanguage = "English";
}
showWaitTip(true);
$.post( "/?_type=hiddenData&_tag=switchlang_entry", {IF_LanguageSwitch:changeLanguage}, undefined, "json" )
.done(function( data ) {
if ( data.need_refresh )
{
top.location.href = top.location.href;
}
});
}
function MenuModeSwitch(ModeNow)
{
var ChangeModeSwitch = "";
if ( "Basic" == ModeNow )
{
ChangeModeSwitch = "Advanced";
}
else
{
ChangeModeSwitch = "Basic";
}
showWaitTip(true);
$.post( "/?_type=loginData&_tag=modeswitch_entry", {IF_ModeSwitch:ChangeModeSwitch}, undefined, "json" )
.done(function( data ) {
if ( data.need_refresh )
{
top.location.href = top.location.href;
}
});
}
var UpdateTimeTimerID;
function UpdateCurrTime()
{
var CurrTimeObj = $("#_DevCurrTime");
var CurrTimeDiv = $("#timeArea");
CurrTimeObj.succfunction = function(xml){
if (CurrTimeDiv.hasError(xml,"_noExist") == 0)
{
var currTimeByXML = "";
$(xml).find('ParaName').each(function(){
var tmp = $(this);
if ( tmp.text() == "CurrentLocalTime" )
{
currTimeByXML = tmp.next().text();
return false;
}
});
if(typeof(customTimeStyle) == "function")
{
customTimeStyle(CurrTimeObj, currTimeByXML, "template");
}
else
{
var timeStr = timeTranslate(currTimeByXML);
if ( currTimeByXML != "")
{
var SecTimeLocation = currTimeByXML.lastIndexOf(":");
var currTimeNotSec = currTimeByXML.substring(0, SecTimeLocation);
CurrTimeObj.text(currTimeNotSec);
}
}
}
};
CurrTimeObj.failfunction = function(xml){
};
CurrTimeObj.dataTransfer("/?_type=hiddenData&_tag=sntp_data",
"GET",
CurrTimeObj.succfunction,
CurrTimeObj.failfunction,
false);
UpdateTimeTimerID = setTimeout("UpdateCurrTime()", 30*1000);
}
$(document).ready(function(){

FakeClass1MenuShow();

clearTimeout(UpdateTimeTimerID);
var NowStatus = "\x73\x68\x6f\x77\x6c\x6f\x67\x69\x6e\x50\x61\x67\x65";
var IsShowTimeZone = {
'showloginPage' : false,
'showWizardPage' : true,
'showCommonPage' : true
};
if ( !IsShowTimeZone[NowStatus] )
{
$("#timeArea").hide();
}
else
{
$("#timeArea").show();
UpdateCurrTime();
}

var logoLink = "homePage";
var IsShowlogOff = {
'showloginPage' : false,
'showWizardPage' : true,
'showCommonPage' : true
};
if ( !IsShowlogOff[NowStatus] )
{
$("#logOff").hide();
}
else
{
var obj = $("#logo");
obj.addClass("clickable");
obj.click(function(){
openLink(logoLink + "&Menu3Location=0");
});
}
var modeSwitchAction = {
'showloginPage' : null,
'showWizardPage' : null,
'showCommonPage' : MenuModeSwitch
};
if ( 4 == 1 || 4 == 4)
{
modeSwitchAction.showCommonPage = null;
}
if ( modeSwitchAction[NowStatus] != null )
{
var modeSwitchButContent = "\x41\x64\x76\x61\x6e\x63\x65\x64";
var modeOBJ = $("#modeSwitch");
var modeBasic = $("#modeBisic",modeOBJ);
var ModeAdvanced = $("#ModeAdvanced",modeOBJ);
if ( modeSwitchButContent == "Basic" )
{
ModeAdvanced.attr("class", "emColor clickable");
modeBasic.attr("class", "");
}
else if ( modeSwitchButContent == "Advanced" )
{
modeBasic.attr("class", "emColor clickable");
ModeAdvanced.attr("class", "");
}
else
{
}
}
$("span", modeOBJ).each(function(){
var tempOBJ = $(this);
tempOBJ.click(function(){
if ( ! $(this).hasClass("clickable")
|| modeSwitchAction[NowStatus] == null)
{
return;
}
var ModeNow = "\x41\x64\x76\x61\x6e\x63\x65\x64";
MenuModeSwitch(ModeNow);
});
});
var languageButContent = "\x45\x6e\x67\x6c\x69\x73\x68";
var languageOBJ = $("#languageSwitch");
var languageEnglishOBJ = $("#EnglishModify",languageOBJ);
var languageChineseOBJ = $("#"+"ChineseModify",languageOBJ);
if ( languageButContent == "English" )
{
languageEnglishOBJ.attr("src","/img/English_s.gif");
languageChineseOBJ.attr("src","/img/Chinese.gif");
languageChineseOBJ.addClass("clickable");
}
else if ( languageButContent == "Chinese" )
{
languageEnglishOBJ.attr("src","/img/English.gif");
languageEnglishOBJ.addClass("clickable");
languageChineseOBJ.attr("src","/img/Chinese_s.gif");
}
else if ( languageButContent == "Spanish" )
{
languageEnglishOBJ.attr("src","/img/English.gif");
languageEnglishOBJ.addClass("clickable");
languageChineseOBJ.attr("src","/img/Spanish_s.gif");
}
else if ( languageButContent == "Japanese" )
{
languageEnglishOBJ.attr("src","/img/English.gif");
languageEnglishOBJ.addClass("clickable");
languageChineseOBJ.attr("src","/img/Japanese_s.gif");
}
else if ( languageButContent == "Portuguese" )
{
languageEnglishOBJ.attr("src","/img/English.gif");
languageEnglishOBJ.addClass("clickable");
languageChineseOBJ.attr("src","/img/Portuguese_s.gif");
}else if( languageButContent == "French" ){
languageEnglishOBJ.attr("src","/img/English.gif");
languageEnglishOBJ.addClass("clickable");
languageChineseOBJ.attr("src","/img/French_s.gif");
}else if( languageButContent == "Russian" ){
languageEnglishOBJ.attr("src","/img/English.gif");
languageEnglishOBJ.addClass("clickable");
languageChineseOBJ.attr("src","/img/Russian_s.gif");
}
else
{
}
$("img", languageOBJ).each(function(){
var LanguageModifyOBJ = $(this);
LanguageModifyOBJ.click(function(){
if ( ! $(this).hasClass("clickable") )
{
return;
}
var LanguageNow = "\x45\x6e\x67\x6c\x69\x73\x68";
LanguageSwitch(LanguageNow);
});
});
try{
if((templateModify!=undefined) && (typeof(templateModify)=="function")){
templateModify();
}
}catch(e){
}
});
window.onresize = function()
{
if ($("#tipLayer").css("display") != "none")
{
reposition_box("tipLayer");
consoleLog("window reseze!");
}
}
</script>
</body>
</html>
