1 2 3<!DOCTYPE html> 4<html ng-app="TiimaApp" id="TiimaApp"> 5<head> 6 <base href="/" /> 7 <link href="/favicon.ico" rel="shortcut icon" type="image/vnd.microsoft.icon" /> 8 <meta charset="utf-8" /> 9 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 10 <meta name="format-detection" content="telephone=no" /> 11 <title>Visma Tiima</title> 12 <!-- login layout --> 13 14 <link href="/Content/_css?v=qBmxxsndO2uFT1ZVgJSqD6e2uIE3vBBsR9EO4741JXQ1" rel="stylesheet"/> 15 16 <link href="/Content/NC3/css?v=zAKCe2nDU12KiwnOvwAlV5WjsGLPaOUhbRlwaRERcrM1" rel="stylesheet"/> 17 18 <link href="/Content/NC3/fonts/css?v=nyCSw3LAcZhL7WleRMoIxVnzhqB1viEb0dQiLMyi3gE1" rel="stylesheet"/> 19 20 <link href="/Content/themes/base/css?v=7ECsLFQ3tBtJbYT_nuP1w-V37kGvrpkhfFABuXyIYyA1" rel="stylesheet"/> 21 22 <link href="/MVC/Content/css/css?v=bQ5_7AleD0uL692rX0BtgM3yXOpuzpvAkL8dD9bmIfk1" rel="stylesheet"/> 23 24 <link href="/MVC/Content/css/loginstyles?v=XL65TRMeyMJ02N0USoD9tFoSoc8etoQ3CPYhd5e74TI1" rel="stylesheet"/> 25 26
26<script src="/lib-scripts/js?v=tYobXEzrTYUGPG44-9nrZ41TRROGYyiHn7Sn_azBSIE1"></script>
26 27 28
28<script src="/app-scripts/js?v=de-ZGMf8cgtFHUXyOWolU396irHpiSLb0VqMuFwHhZs1"></script>
28 29 30 31</head> 32<body ng-controller="loginController" ng-cloak ng-init='angularInit={"Status":1,"UserName":"","CustomerIdentifier":"","InfoMessage":"","TiimaLang":"FIN","Login2FA":false,"MandatoryBulletins":false,"ExpiredPassword":false,"GetCode":false,"UseSMS":false,"LockedUntil":null,"PasswordRequestToken":null,"AdfsLoginUrl":null,"JwtLoginUrl":null,"ShowHakaLogin":false,"SuccessMessages":null,"WarningMessages":null,"Errors":null,"Header":null,"PasswordRequirements":null,"SystemInfoMessage":""}; BaseUrl = "/"' class="login"> 33 <div class="load_spinner" ng-show="pageLoading"></div> 34 <tiima-messages for-modal="false" class="login-flash-messages" 35 info-message="flashContent.flashInfoMessage"> 36 </tiima-messages> 37 38 39 <div class="cookie-consent-bar" id="cookie-consent-bar" ng-if="!cookieConsent"> 40 <span class="vismaicon vismaicon-filled vismaicon-info"></span> 41 <div class="cookie-consent"> 42 <div class="cookie-consent-text"> 43 {{'LOGIN.COOKIE_CONSENT_TEXT' | localize}} 44 </div> 45 <div class="cookie-consent-actions"> 46 <a class="cookie-consent-info-link" ng-click="toggleCookieInfo()">{{'LOGIN.COOKIE_CONSENT_ABOUT_COOKIES' | localize}}</a> 47 <button type="button" class="btn btn-small ok-btn" ng-click="setCookieConsent()">OK</button> 48 </div> 49 </div> 50 </div> 51 52 <div class="system-info-bar" id="system-info-bar" ng-if="systemInfoMessage.length > 0"> 53 <span class="vismaicon vismaicon-filled vismaicon-warning"></span> 54 <div class="system-info">{{systemInfoMessage}}</div> 55 </div> 56 57 <div class="content-box" ng-show="!viewingCookieInfo"> 58 59 60<div class="login-box"> 61 <div class="login-header"> 62 <div class="login-logo">Visma Tiima</div> 63 </div> 64 65 <div class="login-content"> 66 <form action="/Login" method="post" id="loginForm" name="loginForm" role="form" autocomplete="off" novalidate ng-init="initForm()"> 67 68 <input name="__RequestVerificationToken" type="hidden" value="lo-5ho6rNfIpRWmDnHRFXZIR7UNC07BzRTh08Vun1Fa4RG3vuViIGbtmDaB2Ah7qrC1iswFB31Op1wTTatxrQoBY90o4Ve2YuouppNXFd981" /> 69 70 <div class="adjust-login-info-text-left" ng-if="flashContent.flashSuccessMessages.length > 0 || flashContent.flashWarningMessages.length > 0 || flashContent.flashErrorMessages.length > 0"> 71 <div class="form-group" ng-repeat="error in flashContent.flashSuccessMessages"> 72 <div class="col-xs-12 has-success"> 73 <p class="help-block">{{error | localize}}</p> 74 </div> 75 </div> 76 <div class="form-group" ng-repeat="error in flashContent.flashWarningMessages"> 77 <div class="col-xs-12 has-warning"> 78 <p class="help-block">{{error | localize}}</p> 79 </div> 80 </div> 81 <div class="form-group" ng-repeat="error in flashContent.flashErrorMessages"> 82 <div class="col-xs-12 error-text-block"> 83 <p class="help-block">{{error | localize}}</p> 84 </div> 85 </div> 86 <div class="form-group" ng-if="locked.locked"> 87 <div class="col-xs-12 error-text-block"><p class="help-block"><span>{{'LOGIN.ACCOUNT_LOCKED_FOR' | localize}}</span> <span>{{locked.minutes}}</span> <span>{{locked.minutes > 1 ? 'GLOBAL.MINS' : 'GLOBAL.MIN' | localize}}</span></p></div> 88 </div> 89 </div> 90 91 <div class="login-fields-container"> 92 93 <div class="form-group"> 94 <label class="col-sm-5 control-label xs-margin-top-10">{{'LOGIN.USERNAME' | localize}}</label> 95 <div class="col-sm-7"> 96 <input id="UserName" name="UserName" type="text" ng-required="userNameRequired" ng-model="loginData.userName" autocomplete="off" ng-focus required class="form-control xs-mw-270" /> 97 </div> 98 <div class="speech-bubble" ng-show="loginForm.UserName.$error.required"> 99 {{'LOGIN.ERROR_USERNAME_MISSING' | localize}} 100 </div> 101 </div> 102 103 <div class="form-group"> 104 <label class="col-sm-5 control-label xs-margin-top-10">{{'LOGIN.PASSWORD' | localize}}</label> 105 <div class="col-sm-7 password-input-container"> 106 <input id="Password" name="Password" ng-required="passwordRequired" type="password" ng-attr-type="{{ showPassword ? 'text' : 'password' }}" ng-model="loginData.password" class="password-input xs-mw-270 has-reveal" />
107 <span ng-click="toggleShowPassword()" class="password-toggle-eye" ng-class="{'fa fa-eye': !showPassword,'fa fa-eye-slash': showPassword}"></span> 108 </div> 109 <div class="speech-bubble" ng-show="loginForm.Password.$error.required"> 110 {{'LOGIN.ERROR_PASSWORD_MISSING' | localize}} 111 </div> 112 </div> 113 114 <div class="form-group"> 115 <label class="col-sm-5 control-label xs-margin-top-10">{{'LOGIN.COMPANY_IDENTIFIER' | localize}}</label> 116 <div class="col-sm-7"> 117 <input id="CustomerIdentifier" name="CustomerIdentifier" ng-required="customerIdentifierRequired" type="text" ng-model="loginData.customerIdentifier" autocomplete="off" required class="form-control xs-mw-270" /> 118 </div> 119 <div class="speech-bubble" ng-show="loginForm.CustomerIdentifier.$error.required"> 120 {{'LOGIN.ERROR_COMPANY_IDENTIFIER_MISSING' | localize}} 121 </div> 122 </div> 123 124 <!--<div class="caps-lock-warning" ng-style="{'visibility': (showCapsLockWarning ? 'visible' : 'hidden')}">{{'LOGIN.CHECK_CAPS_LOCK' | localize}}</div>--> 125 126 127 <div class="form-group"> 128 <div class="col-sm-7 col-sm-push-5 xs-margin-top-30"> 129 <button type="submit" ng-disabled="loggingIn" class="btn btn-primary btn-block xs-mw-270">{{'LOGIN.BUTTON_LOGIN' | localize}}</button> 130 131 <div ng-if="loginData.adfsLoginUrl" class="xs-margin-top-20"> 132 <a ng-href="{{loginData.adfsLoginUrl}}" ng-click="adfsLogin($event)">{{'LOGIN.ADFS_LOGIN_BUTTON' | localize}}</a> 133 </div> 134 <div ng-if="loginData.showHakaLogin" class="xs-margin-top-20"> 135 <a href="/Login/Haka" ng-click="hakaLogin($event)">{{'LOGIN.HAKA_LOGIN_BUTTON' | localize}}</a> 136 </div> 137 </div> 138 <div class="col-sm-5 col-sm-pull-7 xs-margin-top-20"> 139 <a ng-click="sendPasswordRequest(loginForm)">{{"LOGIN.BUTTON_SEND_PASSWORD" | localize}}</a> 140 </div> 141 </div> 142 143 <div class="form-group xs-margin-top-20"> 144 <div class="col-sm-12"> 145 <input type="hidden" name="Language" value="{{loginData.language}}" /> 146 <div class="field"> 147 <div class="float-left" ng-repeat="lang in languages"> 148 <nobr> 149 <a title="{{'LOGIN.LOGIN_LANGUAGE_' + lang.code | localize}}" ng-click="changeLanguage(lang.code)">{{lang.text}}</a> 150 <span ng-show="$index < languages.length-1">|</span> 151 </nobr> 152 </div> 153 </div> 154 </div> 155 </div> 156 </div> 157 </form> 158 159 <div class="login-footer"> 160 <span class="visma-logo"></span> 161 </div> 162 163 </div> 164</div> 165 166 </div> 167 168 <div class="content-box" ng-show="viewingCookieInfo"> 169 <div class="login-box cookie-info-popup" id="cookie-info-popup"> 170 <div class="login-header"> 171 <div class="login-logo">Visma Tiima</div> 172 </div> 173 <div class="login-content"> 174 <div class="cookie-info-header"> 175 {{'LOGIN.COOKIE_CONSENT_ABOUT_COOKIES' | localize}} 176 </div> 177 <div class="cookie-info-section"> 178 {{'LOGIN.COOKIE_CONSENT_ABOUT_COOKIES_TEXT' | localize}} 179 </div> 180 <div class="cookie-info-header"> 181 {{'LOGIN.COOKIE_CONSENT_ABOUT_LOGIN' | localize}} 182 </div> 183 <div class="cookie-info-section"> 184 {{'LOGIN.COOKIE_CONSENT_ABOUT_LOGIN_TEXT' | localize}} 185 </div> 186 <div class="cookie-info-header"> 187 {{'LOGIN.COOKIE_CONSENT_PERSONIFICATION' | localize}} 188 </div> 189 <div class="cookie-info-section"> 190 {{'LOGIN.COOKIE_CONSENT_PERSONIFICATION_TEXT' | localize}} 191 </div> 192 <div class="cookie-info-popup-footer">
193 <span class="float-left vismaicon vismaicon-move-left-circle vismaicon-sm"></span> 194 <button type=button class="navigation-previous-button btn-link" ng-click="toggleCookieInfo()">{{'LOGIN.COOKIE_CONSENT_BACK_TO_LOGIN' | localize}}</button> 195 </div> 196 </div> 197 </div> 198 </div> 199 200 <div class="bottom-bar"> 201 <div class="bottom-bar-content"> 202 <div class="privacy-policy smaller-font">{{'LOGIN.COOKIE_CONSENT_PRIVACY_POLICY' | localize}}</div> 203 <a class="cookie-consent-info-link" ng-click="toggleCookieInfo()">{{'LOGIN.COOKIE_CONSENT_ABOUT_COOKIES' | localize}}</a> 204 <div class="copyright">© {{'GLOBAL.COPYRIGHT_OWNER' | localize}}</div> 205 </div> 206 </div> 207 208 <!--footer class="footer-container-login"> 209 <div class="footer-inner row"> 210 <div class="col-xs-2"> 211 <div class="version-number"> 212 v2.26.8.15140 213 </div> 214 </div> 215 <div class="col-xs-8"> 216 <div> 217 </div> 218 </div> 219 <div class="col-xs-2"> 220 <div class="vismaep pull-right"> 221 <a href="http://www.visma.fi/enterprise/" target="_blank">Visma Enterprise Oy</a> 222 </div> 223 </div> 224 </div> 225 </footer--> 226</body> 227</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.