Advertisement
Guest User

Untitled

a guest
Feb 7th, 2018
591
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 47.93 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="ru" ng-app="mif.apps.auth" >
  3. <head>
  4.     <meta charset="utf-8"/>
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
  6.     <meta name="viewport" content="width=device-width, initial-scale=1"/>
  7.     <title>Авторизация в электронной библиотеке «МИФ»</title>
  8.  
  9.    
  10. <!-- Start: injected by AdGuard -->
  11. <script src="//local.adguard.com/adguard-ajax-api/injections/content-script.js?ts=1517991309.700556&amp;sb=0&amp;domain=pfizer.miflib.ru&amp;mask=103" type="text/javascript" nonce="54A5C8BDAE0D4EFC958AAE92B3CEC8C0" crossorigin="anonymous"></script>
  12. <script src="//local.adguard.com/adguard-ajax-api/injections/userscripts/Adguard Assistant?ts=1517386293.737731" type="text/javascript" nonce="54A5C8BDAE0D4EFC958AAE92B3CEC8C0" crossorigin="anonymous"></script>
  13. <!-- End: injected by AdGuard -->
  14. <script type="text/javascript">
  15.         var data = window.__pageDataSource = window.__pageDataSource || {};
  16.         data.library = {"id":92,"name":"pfizer","title":"Pfizer","logo":"\/upload\/logos\/92.jpeg","url":"https:\/\/pfizer.miflib.ru","header":null,"greeting":{"from":"","photo":"","text":"<p><small><strong><a href=\"http:\/\/docs.google.com\/document\/d\/1YyZVvLj8ssje2OCE9YIWnmTrFXy9Qnjq_dBSj7d7cwA\/edit\" target=\"_blank\">\u041f\u0430\u043c\u044f\u0442\u043a\u0430 \u043f\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435<\/a>&nbsp;<\/strong><\/small><strong><img alt=\"\" src=\"http:\/\/miflib.ru\/upload\/%D0%B2%20%D0%BD%D0%BE%D0%B2%D0%BE%D0%BC%20%D0%BE%D0%BA%D0%BD%D0%B5.jpg\" \/><\/strong><small><strong>&nbsp;&nbsp;<\/strong><strong><a href=\"http:\/\/pfizer.miflib.ru\/admin\/logout\">\u0412\u044b\u0439\u0442\u0438<\/a><\/strong><\/small><\/p>\r\n\r\n<p><small><em>\u0414\u043e\u0440\u043e\u0433\u0438\u0435 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0438, \u043c\u044b \u0440\u0430\u0434\u044b \u043f\u043e\u0434\u0430\u0440\u0438\u0442\u044c \u0432\u0430\u043c \u043d\u0430\u0448\u0443 \u0441\u043e\u043a\u0440\u043e\u0432\u0438\u0449\u043d\u0438\u0446\u0443 \u0437\u043d\u0430\u043d\u0438\u0439&nbsp;\u043e\u0442 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0441\u043e&nbsp;\u0432\u0441\u0435\u0433\u043e&nbsp;\u043c\u0438\u0440\u0430!&nbsp;<\/em><\/small><\/p>\r\n\r\n<p><small><em>\u041a\u043d\u0438\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u0430\u0436\u0434\u0443\u044e \u043d\u0435\u0434\u0435\u043b\u044e \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0442 \u0442\u0440\u0435\u0442\u044c \u0422\u041e\u041f-\u0440\u0435\u0439\u0442\u0438\u043d\u0433\u043e\u0432 \u0431\u0438\u0437\u043d\u0435\u0441-\u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b &nbsp;&mdash; \u044d\u0442\u0438 \u043a\u043d\u0438\u0433\u0438 \u0432 \u043d\u0430\u0448\u0435\u043c \u0441 \u0432\u0430\u043c\u0438 \u0440\u0430\u0441\u043f\u043e\u0440\u044f\u0436\u0435\u043d\u0438\u0438 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e \u0438 \u0431\u0435\u0437\u043b\u0438\u043c\u0438\u0442\u043d\u043e. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0432\u0435\u0436\u0435\u0438\u0437\u0434\u0430\u043d\u043d\u0430\u044f \u043a\u043d\u0438\u0433\u0430 \u041c\u0418\u0424\u0430&nbsp;\u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u043c \u0438\u043b\u0438 \u0430\u0443\u0434\u0438\u043e\u0444\u043e\u0440\u043c\u0430\u0442\u0435, \u043e\u043d\u0430 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u0432 \u044d\u0442\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435.&nbsp;<\/em><em>\u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0439\u0442\u0435 \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043d\u0430 \u043b\u044e\u0431\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435, \u0434\u0435\u043b\u0438\u0442\u0435\u0441\u044c \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f\u043c\u0438, \u043f\u0438\u0448\u0438\u0442\u0435 \u043e\u0442\u0437\u044b\u0432\u044b.<\/em><\/small><\/p>\r\n\r\n<p><small><em>\u0416\u0435\u043b\u0430\u0435\u043c \u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0439 \u0438 \u043d\u0430\u0441\u043b\u0430\u0436\u0434\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u0432\u0440\u0435\u043c\u044f!<\/em><\/small><\/p>\r\n\r\n<p>&nbsp;<\/p>"},"copyright":"<p><small><strong><a href=\"http:\/\/prizer.miflib.ru\/admin\/logout\">\u0412\u044b\u0439\u0442\u0438<\/a>.&nbsp;<\/strong>\u0421\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 \u0438\u0437 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 \u043e\u043a\u043d\u0435 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438<\/small><\/p>\r\n\r\n<p><small>\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435&nbsp;<a href=\"mailto:support-lib@m-i-f.ru?subject=Pfizer%3A%20%D0%92%D0%BE%D0%BF%D1%80%D0%BE%D1%81%20%D0%BF%D0%BE%20%D0%B1%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B5\">support-lib@m-i-f.ru<\/a><\/small><\/p>\r\n\r\n<p><small>\u0421\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b (\u0441\u0430\u0439\u0442\u0430, \u043a\u043d\u0438\u0433\u0438), \u043f\u0430\u0440\u043e\u043b\u0438 \u0438 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0440\u0435\u0441\u0443\u0440\u0441 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043b\u0438\u0447\u043d\u043e\u0433\u043e&nbsp;\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0441 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Pfizer.<\/small><\/p>\r\n\r\n<p><small><strong><a href=\"http:\/\/pfizer.miflib.ru\/admin\/\" target=\"_blank\">\u0412\u0445\u043e\u0434 \u0434\u043b\u044f \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430&nbsp;<\/a><\/strong><\/small><img alt=\"\" src=\"http:\/\/miflib.ru\/upload\/%D0%B2%20%D0%BD%D0%BE%D0%B2%D0%BE%D0%BC%20%D0%BE%D0%BA%D0%BD%D0%B5.jpg\" \/><\/p>","registration":true,"promo_registration":true,"domains":["pfizer.com"],"surname_required":true,"no_email_auth":false,"password_length":0};
  17.         data.user = {};
  18.         data.app = {
  19.             version: "1",
  20.             config: {"mif.host":"www.mann-ivanov-ferber.ru","mif.httphost":"http:\/\/www.mann-ivanov-ferber.ru"}
  21.         };
  22.     </script>
  23.     <!--[if lt IE 9]>
  24.    <script src="/site/vendors/es5-shim/es5-shim.js"></script>
  25.    <script src="/site/vendors/html5shiv/dist/html5shiv.js"></script>
  26.    <script src="/site/vendors/console-polyfill/index.js"></script>
  27.    <![endif]-->
  28.     <script src="/site/vendors/modernizr-ie/modernizr-ie.js"></script>
  29.  
  30.    
  31.     <link rel="apple-touch-icon" sizes="192x192" href="/upload/library/common/private/favicon/192x192.jpeg" />
  32.     <link rel="icon" type="image/jpeg" sizes="192x192" href="/upload/library/common/private/favicon/192x192.jpeg" />
  33.  
  34.         <link rel="stylesheet" href="/site/styles/auth.css?2121303433" />
  35.     <script type="text/javascript" src="/site/scripts/common.js?1359507212"></script>
  36.     <script type="text/javascript" src="/site/scripts/auth.js?352463697"></script>
  37.  
  38. </head>
  39. <body scrollable-under-fixed-modal="">
  40. <!-- Yandex.Metrika counter -->
  41. <script type="text/javascript">
  42.     (function (d, w, c) {
  43.         (w[c] = w[c] || []).push(function() {
  44.             try {
  45.                 w.yaCounter32949839 = new Ya.Metrika({
  46.                     id:32949839,
  47.                     clickmap:true,
  48.                     trackLinks:true,
  49.                     accurateTrackBounce:true,
  50.                     webvisor:true,
  51.                     ut:"noindex"
  52.                 });
  53.             } catch(e) { }
  54.         });
  55.  
  56.         var n = d.getElementsByTagName("script")[0],
  57.             s = d.createElement("script"),
  58.             f = function () { n.parentNode.insertBefore(s, n); };
  59.         s.type = "text/javascript";
  60.         s.async = true;
  61.         s.src = "https://mc.yandex.ru/metrika/watch.js";
  62.  
  63.         if (w.opera == "[object Opera]") {
  64.             d.addEventListener("DOMContentLoaded", f, false);
  65.         } else { f(); }
  66.     })(document, window, "yandex_metrika_callbacks");
  67. </script>
  68. <noscript><div><img src="https://mc.yandex.ru/watch/32949839?ut=noindex" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
  69. <!-- /Yandex.Metrika counter -->
  70.  
  71.     <div class="c-auth-page" ng-controller="AuthPage as page">
  72.     <header class="p-page-header">
  73.         <div class="p-logo" ng-if="page.settings.logo">
  74.             <img ng-src="{{ page.settings.logo }}"/>
  75.         </div>
  76.     </header>
  77.  
  78.     <div class="p-page-container">
  79.         <div class="c-auth-panel" ng-controller="AuthPanel as panel">
  80.     <div ng-show="panel.isAuth()">
  81.         <div tabs="panel.state.active">
  82.  
  83.             <div class="p-panel-tabs">
  84.                 <div class="p-panel-tab">
  85.                     <a ui-sref="index.login" class="p-tab-button" ui-sref-active="active">Войти</a>
  86.                 </div>
  87.                 <div class="p-panel-tab">
  88.                     <a ui-sref="index.registration" class="p-tab-button" ui-sref-active="active" >Регистрация</a>
  89.                 </div>
  90.             </div>
  91.  
  92.             <div class="p-panel-tab-panes">
  93.                 <div class="p-panel-tab-pane" tab-pane-show="login">
  94.                     <div class="c-auth-login" ng-controller="AuthLogin as login">
  95.     <div class="c-auth-form">
  96.         <form
  97.                class="p-form"
  98.                novalidate="novalidate" autocomplete="on" method="post"
  99.                form-ajax="/auth/login.ajax" form-plain=""
  100.                form-ajax-success="login.success()" form-ajax-request="login.transform($data)"
  101.                form-ajax-error="login.error($response, $form)"
  102.                >
  103.  
  104.             <div class="p-form-row" ng-if="login.hasRequestError">
  105.                 <div class="p-error-block">
  106.                     Ошибка авторизации <br/>
  107.                     <small>
  108.                         Пожалуйста, попробуйте снова, <br/>
  109.                         если ошибка повторится, сообщите об этом администратору <br/>
  110.                         или по адресу <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  111.                     </small>
  112.                 </div>
  113.             </div>
  114.  
  115.             <div class="p-form-row">
  116.                 <div class="p-error-block" ng-if="!login.no_email_auth">
  117.                     <div>
  118.                         <div ng-if="login.hasDenied">Логин или пароль указаны неверно</div>
  119.                     </div>
  120.                     <div ng-if="login.hasBlocked">
  121.                         <div>У вас закончились права пользоваться библиотекой.</div>
  122.                         <small>
  123.                             Вопросы можно направить куратору библиотеки в вашей компании или в <a href="mailto:reply-lib@mann-ivanov-ferber.ru">поддержку МИФ</a>
  124.                         </small>
  125.                     </div>
  126.                 </div>
  127.                 <div class="p-error-block" ng-if="login.no_email_auth">
  128.                     <div ng-if="login.hasDenied && false">Логин или пароль указаны неверно</div>
  129.                     <small>
  130.                         Если вы не можете вспомнить пароль, то <br/>
  131.                         сообщите об этом администратору <br/>
  132.                         или по адресу <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  133.                     </small>
  134.                 </div>
  135.             </div>
  136.  
  137.             <div class="p-form-row">
  138.                 <div
  139.                        class="p-control-box"
  140.                        ng-class="{'m-error': $form.email.$invalid && $form.$submitted}"
  141.                        >
  142.                     <input
  143.                            name="email" ng-model="login.local.email"
  144.                            placeholder="{{ login.no_email_auth && 'Логин' || emailText}}"
  145.                            class="p-control default-input" type="{{login.no_email_auth && 'text' || 'email'}}"
  146.                            required=""
  147.                            />
  148.  
  149.                     <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted && !login.no_email_auth"
  150.                         ng-hide="$form.email.$error.not_found">
  151.                         Электронная почта указана неправильно
  152.                     </div>
  153.                     <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted && login.no_email_auth"
  154.                         ng-hide="$form.email.$error.not_found">
  155.                         Логин указан неправильно
  156.                     </div>
  157.                     <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted && !login.no_email_auth"
  158.                         ng-show="$form.email.$error.not_found">
  159.                         Пользователь с такой электронной почтой не найден
  160.                     </div>
  161.                     <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted && login.no_email_auth"
  162.                         ng-show="$form.email.$error.not_found">
  163.                         Пользователь с таким логином не найден
  164.                     </div>
  165.  
  166.                     <div class="p-control-state-box">
  167.                         <div class="p-control-state m-ok" ng-if="$form.email.$valid && $form.$submitted"></div>
  168.                         <div class="p-control-state m-text m-align-middle"
  169.                             ng-if="!($form.email.$valid && $form.$submitted) && !login.no_email_auth">
  170.  
  171.                         </div>
  172.                     </div>
  173.                 </div>
  174.             </div>
  175.  
  176.             <div class="p-form-row">
  177.                 <div
  178.                        class="p-control-box"
  179.                        ng-class="{'m-error': $form.password.$invalid && $form.$submitted}"
  180.                        >
  181.                     <input
  182.                            name="password" ng-model="password" placeholder="Пароль"
  183.                            class="p-control default-input" type="password"
  184.                            required=""
  185.                            />
  186.  
  187.                     <div class="p-control-tip m-error" ng-if="$form.password.$invalid && $form.$submitted"
  188.                         ng-hide="$form.password.$error.invalid">
  189.                         Пароль указан неправильно
  190.                     </div>
  191.                     <div class="p-control-tip m-error" ng-if="$form.password.$invalid && $form.$submitted"
  192.                         ng-show="$form.password.$error.invalid">
  193.                         У вас другой пароль
  194.                     </div>
  195.  
  196.                     <div class="p-control-state-box">
  197.                         <div class="p-control-state m-ok" ng-if="$form.password.$valid"></div>
  198.                     </div>
  199.  
  200.                 </div>
  201.             </div>
  202.  
  203.             <div class="p-form-row m-submit">
  204.                 <div class="p-control-box">
  205.                     <button type="submit" class="p-control m-submit-button"
  206.                            ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">
  207.                         <div>Войти и читать <span class="show-tablet inline">книги</span></div>
  208.                         <div class="hide-tablet">книги</div>
  209.                     </button>
  210.  
  211.                     <div class="p-control-state-box">
  212.                         <div class="p-control-state m-loading" ng-if="$form.$submitting"></div>
  213.                     </div>
  214.  
  215.                 </div>
  216.             </div>
  217.  
  218.             <div class="p-form-row">
  219.                 <div class="p-error-block" ng-if="!login.no_email_auth">
  220.                     <small ng-if="!login.hasBlocked">
  221.                         Если вы забыли пароль, то<br/>
  222.                         воспользуйтесь<br/>
  223.                         <a href="#/password/recover">восстановлением пароля</a>
  224.                     </small>
  225.                 </div>
  226.             </div>
  227.         </form>
  228.     </div>
  229. </div>
  230.                 </div>
  231.                 <div class="p-panel-tab-pane" tab-pane-show="registration">
  232.                     <div class="c-auth-registration" ng-controller="AuthPromoRegistration as reg">
  233.     <div class="c-auth-form">
  234.         <form
  235.                class="p-form"
  236.                novalidate="novalidate" autocomplete="on" method="post"
  237.                form-plain="" form-ajax="/auth/registration.ajax"
  238.                form-ajax-success="reg.success($data)" form-ajax-request="reg.transform($data)"
  239.                form-ajax-error="reg.error($response)"
  240.  
  241.                >
  242.             <div ng-hide="reg.hasFinishMessage">
  243.                 <div class="p-form-row" ng-if="reg.hasRequestError">
  244.                     <div class="p-error-block">
  245.                         Ошибка регистрации <br/>
  246.                         <small>
  247.                             Пожалуйста, попробуйте снова, <br/>
  248.                             если ошибка повторится, сообщите об этом администратору <br/>
  249.                             или по адресу <a
  250.                                    href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  251.                         </small>
  252.                     </div>
  253.                 </div>
  254.  
  255.  
  256.                 <div class="p-form-row" ng-if="reg.errorCode == 'quota_full'">
  257.                     <div class="p-error-block">
  258.                         Ошибка регистрации <br/>
  259.                         <small>
  260.                             <div>
  261.                                 Превышен лимит пользователей для библиотеки
  262.                             </div>
  263.                             <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  264.                         </small>
  265.                     </div>
  266.                 </div>
  267.                 <div class="p-form-row" ng-if="reg.errorCode == 'registration_disallowed'">
  268.                     <div class="p-error-block">
  269.                         Ошибка регистрации <br/>
  270.                         <small>
  271.                             <div>
  272.                                 Для регистрации в электронной библиотеке, пожалуйста, отправьте запрос на
  273.                                 <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  274.                             </div>
  275.                         </small>
  276.                     </div>
  277.                 </div>
  278.                 <div class="p-form-row" ng-if="reg.errorCode == 'promo_registration_disallowed'">
  279.                     <div class="p-error-block">
  280.                         Ошибка регистрации <br/>
  281.                         <small>
  282.                             <div>
  283.                                 В библиотеке не предусмотрена промо регистрация
  284.                             </div>
  285.                             <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  286.                         </small>
  287.                     </div>
  288.                 </div>
  289.                 <div class="p-form-row" ng-if="reg.errorCode == 'user_banned'">
  290.                     <div class="p-error-block">
  291.                         У вас закончились права пользоваться библиотекой.<br/>
  292.                         <small>
  293.                             <div>
  294.                                 Вопросы можно направить куратору библиотеки в вашей компании или в <a href="mailto:reply-lib@mann-ivanov-ferber.ru">поддержку МИФ</a>
  295.                             </div>
  296.                         </small>
  297.                     </div>
  298.                 </div>
  299.  
  300.                 <div class="p-form-row">
  301.                     <div class="p-control-box" ng-show="!reg.hasRequestError">
  302.                         <div class="p-reg-form-text">
  303.                             Укажите почту. На&nbsp;нее придет ссылка.<br />
  304.                             Пройдя по&nbsp;ссылке, вы&nbsp;сможете читать книги
  305.                         </div>
  306.                     </div>
  307.                     <div class="p-control-box"
  308.                         ng-class="{'m-error': $form.email.$invalid && $form.$submitted}"
  309.                            >
  310.                         <input
  311.                                name="email" ng-model="reg.local.email"
  312.                                placeholder="{{ emailText }}"
  313.                                class="p-control default-input" type="email"
  314.                                required=""
  315.                                />
  316.  
  317.                         <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted">
  318.                             Электронная почта указана неправильно
  319.                         </div>
  320.  
  321.  
  322.                     </div>
  323.                 </div>
  324.                 <div class="p-form-row">
  325.  
  326.                     <div class="p-control-box" ng-class="{'m-error': reg.errorCode == 'invalid' || $form.code.$error.required && $form.$submitted }">
  327.                         <input
  328.                               name="code" ng-model="reg.local.code"
  329.                               placeholder="промокод, если есть"
  330.                               class="p-control default-input" type="text"
  331.                                />
  332.                         <div class="p-control-tip m-error" ng-if="reg.errorCode == 'invalid' || $form.code.$error.required && $form.$submitted">
  333.                             Промокод указан неправильно
  334.                         </div>
  335.                     </div>
  336.                 </div>
  337.  
  338.                 <div class="p-form-row m-submit">
  339.                     <div class="p-control-box">
  340.                         <button type="submit" class="p-control m-submit-button"
  341.                                ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">
  342.                             Отправить ссылку на почту
  343.                         </button>
  344.  
  345.                     </div>
  346.  
  347.                 </div>
  348.             </div>
  349.  
  350.             <div class="p-complete-message" ng-show="reg.hasFinishMessage">
  351.                 <span class="p-complete-state"><!--image--></span>
  352.                 На почту <span class="p-complete-new-mail">{{ mailRegistration }}</span>
  353.                 отправлена ссылка с доступом в библиотеку
  354.  
  355.                 <div class="p-panel-tabs-more">
  356.                     <div class="p-control-state m-loading" ng-if="$form.$submitting"></div>
  357.                     <button type="submit" class="p-tab-button"
  358.                            ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">Отправить ссылку еще
  359.                         раз
  360.                     </button>
  361.                 </div>
  362.             </div>
  363.         </form>
  364.     </div>
  365. </div>
  366.                 </div>
  367.                 <div class="p-panel-tab-pane" tab-pane-show="promoregistration">
  368.                     <div class="c-auth-registration" ng-controller="AuthPromoRegistration as reg">
  369.     <div class="c-auth-form">
  370.         <form
  371.                class="p-form"
  372.                novalidate="novalidate" autocomplete="on" method="post"
  373.                form-plain="" form-ajax="/auth/registration.ajax"
  374.                form-ajax-success="reg.success($data)" form-ajax-request="reg.transform($data)"
  375.                form-ajax-error="reg.error($response)"
  376.  
  377.                >
  378.             <div ng-hide="reg.hasFinishMessage">
  379.                 <div class="p-form-row" ng-if="reg.hasRequestError">
  380.                     <div class="p-error-block">
  381.                         Ошибка регистрации <br/>
  382.                         <small>
  383.                             Пожалуйста, попробуйте снова, <br/>
  384.                             если ошибка повторится, сообщите об этом администратору <br/>
  385.                             или по адресу <a
  386.                                    href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  387.                         </small>
  388.                     </div>
  389.                 </div>
  390.  
  391.  
  392.                 <div class="p-form-row" ng-if="reg.errorCode == 'quota_full'">
  393.                     <div class="p-error-block">
  394.                         Ошибка регистрации <br/>
  395.                         <small>
  396.                             <div>
  397.                                 Превышен лимит пользователей для библиотеки
  398.                             </div>
  399.                             <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  400.                         </small>
  401.                     </div>
  402.                 </div>
  403.                 <div class="p-form-row" ng-if="reg.errorCode == 'registration_disallowed'">
  404.                     <div class="p-error-block">
  405.                         Ошибка регистрации <br/>
  406.                         <small>
  407.                             <div>
  408.                                 Для регистрации в электронной библиотеке, пожалуйста, отправьте запрос на
  409.                                 <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  410.                             </div>
  411.                         </small>
  412.                     </div>
  413.                 </div>
  414.                 <div class="p-form-row" ng-if="reg.errorCode == 'promo_registration_disallowed'">
  415.                     <div class="p-error-block">
  416.                         Ошибка регистрации <br/>
  417.                         <small>
  418.                             <div>
  419.                                 В библиотеке не предусмотрена промо регистрация
  420.                             </div>
  421.                             <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  422.                         </small>
  423.                     </div>
  424.                 </div>
  425.  
  426.                 <div class="p-form-row">
  427.                     <div class="p-control-box" ng-show="!reg.hasRequestError">
  428.                         <div class="p-reg-form-text">
  429.                             Укажите почту. На&nbsp;нее придет ссылка.<br />
  430.                             Пройдя по&nbsp;ссылке, вы&nbsp;сможете читать книги
  431.                         </div>
  432.                     </div>
  433.                     <div class="p-control-box"
  434.                         ng-class="{'m-error': $form.email.$invalid && $form.$submitted}"
  435.                            >
  436.                         <input
  437.                                name="email" ng-model="reg.local.email"
  438.                                placeholder="{{ emailText }}"
  439.                                class="p-control default-input" type="email"
  440.                                required=""
  441.                                />
  442.  
  443.                         <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted">
  444.                             Электронная почта указана неправильно
  445.                         </div>
  446.  
  447.  
  448.                     </div>
  449.                 </div>
  450.                 <div class="p-form-row">
  451.  
  452.                     <div class="p-control-box" ng-class="{'m-error': reg.errorCode == 'invalid' || $form.code.$error.required && $form.$submitted }">
  453.                         <input required="required"
  454.                                name="code" ng-model="reg.local.code"
  455.                                placeholder="промокод, если есть"
  456.                                class="p-control default-input" type="text"
  457.                                required=""
  458.                                />
  459.                         <div class="p-control-tip m-error" ng-if="reg.errorCode == 'invalid' || $form.code.$error.required && $form.$submitted">
  460.                             Промокод указан неправильно
  461.                         </div>
  462.                     </div>
  463.                 </div>
  464.  
  465.                 <div class="p-form-row m-submit">
  466.                     <div class="p-control-box">
  467.                         <button type="submit" class="p-control m-submit-button"
  468.                                ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">
  469.                             Отправить ссылку на почту
  470.                         </button>
  471.  
  472.                     </div>
  473.  
  474.                 </div>
  475.             </div>
  476.  
  477.             <div class="p-complete-message" ng-show="reg.hasFinishMessage">
  478.                 <span class="p-complete-state"><!--image--></span>
  479.                 На почту <span class="p-complete-new-mail">{{ mailRegistration }}</span>
  480.                 отправлена ссылка с доступом в библиотеку
  481.  
  482.                 <div class="p-panel-tabs-more">
  483.                     <div class="p-control-state m-loading" ng-if="$form.$submitting"></div>
  484.                     <button type="submit" class="p-tab-button"
  485.                            ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">Отправить ссылку еще
  486.                         раз
  487.                     </button>
  488.                 </div>
  489.             </div>
  490.         </form>
  491.     </div>
  492. </div>
  493.                 </div>
  494.             </div>
  495.  
  496.         </div>
  497.     </div>
  498.  
  499.  
  500.     <div class="p-panel-pane-box" ng-show="panel.isActivate()">
  501.         <div class="p-panel-pane-title">Активация аккаунта</div>
  502.         <div class="p-panel-pane">
  503.             <div class="c-auth-activate" ng-controller="AuthActivate as activate">
  504.     <div class="c-auth-form">
  505.         <form
  506.                class="p-form"
  507.                novalidate="novalidate" autocomplete="on" method="post"
  508.                form-ajax="/auth/activate.ajax" form-plain=""
  509.                form-ajax-query="{token: activate.state.token}" form-ajax-success="activate.success()"
  510.                form-ajax-error="activate.error($response)"
  511.                >
  512.  
  513.             <div class="p-form-row" ng-if="activate.hasRequestError">
  514.                 <div class="p-error-block">
  515.                     Ошибка активации пользователя <br/>
  516.                     <small>
  517.                         Пожалуйста, попробуйте снова, <br/>
  518.                         если ошибка повторится, сообщите об этом администратору <br/>
  519.                         или по адресу <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  520.                     </small>
  521.                 </div>
  522.             </div>
  523.  
  524.  
  525.             <div class="p-form-row">
  526.                 <div class="p-control-box">
  527.                     <div class="p-panel-pane-title">
  528.                         {{ activate.state.user.email }}
  529.                     </div>
  530.                 </div>
  531.             </div>
  532.  
  533.             <div class="p-form-row" style="display: none">
  534.                 <div class="p-control-box">
  535.                     <input
  536.                            ng-value="activate.state.user.email"
  537.                            placeholder="Email"
  538.                            class="p-control default-input" type="text"
  539.                            ng-disabled="true"
  540.                            />
  541.                 </div>
  542.             </div>
  543.  
  544.             <div class="p-form-row">
  545.                 <div
  546.                        class="p-control-box"
  547.                        ng-class="{'m-error': $form.name.$invalid && $form.$submitted}"
  548.                        >
  549.                     <input
  550.                            name="name"
  551.                            ng-model="activate.local.name"
  552.                            placeholder="Имя"
  553.                            class="p-control default-input" type="text"
  554.                            required=""
  555.                            />
  556.  
  557.                     <div class="p-control-tip m-error" ng-if="$form.name.$invalid && $form.$submitted">
  558.                         Имя указано неправильно
  559.                     </div>
  560.  
  561.                     <div class="p-control-state-box">
  562.                         <div class="p-control-state m-ok" ng-if="$form.name.$valid"></div>
  563.                     </div>
  564.                 </div>
  565.             </div>
  566.  
  567.             <div class="p-form-row" ng-if="activate.settings.surname_required">
  568.                 <div
  569.                        class="p-control-box"
  570.                        ng-class="{'m-error': $form.surname.$invalid && $form.$submitted}"
  571.                        >
  572.                     <input
  573.                            name="surname"
  574.                            ng-model="activate.local.surname"
  575.                            placeholder="Фамилия"
  576.                            class="p-control default-input" type="text"
  577.                            required=""
  578.                            />
  579.  
  580.                     <div class="p-control-tip m-error" ng-if="$form.surname.$invalid && $form.$submitted">
  581.                         Фамилия указана неправильно
  582.                     </div>
  583.  
  584.                     <div class="p-control-state-box">
  585.                         <div class="p-control-state m-ok" ng-if="$form.surname.$valid"></div>
  586.                     </div>
  587.                 </div>
  588.             </div>
  589.  
  590.             <div class="p-form-row">
  591.                 <div
  592.                        class="p-control-box"
  593.                        ng-class="{'m-error': $form.password.$invalid && ($form.$submitted || activate.responseErrors.password)}"
  594.                        >
  595.                     <input
  596.                            name="password" ng-model="password"
  597.                            placeholder="Пароль"
  598.                            class="p-control default-input" type="password"
  599.                            required=""
  600.                            />
  601.  
  602.                     <div class="p-control-tip m-error" ng-if="$form.password.$invalid && $form.$submitted && !activate.responseErrors.password.message">
  603.                         Пароль указан неправильно
  604.                     </div>
  605.                     <div class="p-control-tip m-error" ng-if="$form.password.$invalid && activate.responseErrors.password.message">
  606.                         {{ activate.responseErrors.password.message }}
  607.                     </div>
  608.  
  609.                     <div class="p-control-state-box">
  610.                         <div class="p-control-state m-ok" ng-if="$form.password.$valid"></div>
  611.                     </div>
  612.                 </div>
  613.             </div>
  614.  
  615.             <div class="p-form-row">
  616.                 <div
  617.                        class="p-control-box"
  618.                        ng-class="{'m-error': $form.passwordConfirm.$error.equals && $form.$submitted }"
  619.                        >
  620.                     <input
  621.                            name="passwordConfirm"
  622.                            ng-model="passwordConfirm"
  623.                            placeholder="Повторите пароль"
  624.                            class="p-control default-input" type="password"
  625.                            equals-validator="password"
  626.                            required=""
  627.                            />
  628.  
  629.                     <div class="p-control-tip m-error" ng-if="$form.passwordConfirm.$error.equals && $form.$submitted">
  630.                         Пароли не совпадают
  631.                     </div>
  632.  
  633.                     <div class="p-control-state-box">
  634.                         <div class="p-control-state m-ok" ng-if="$form.passwordConfirm.$valid"></div>
  635.                     </div>
  636.                 </div>
  637.             </div>
  638.  
  639.             <div class="p-form-row m-submit">
  640.                 <div class="p-control-box">
  641.                     <button type="submit" class="p-control m-submit-button"
  642.                            ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">
  643.                         <div>Войти и читать</div>
  644.                         <div>книги</div>
  645.                     </button>
  646.  
  647.                     <div class="p-control-state-box">
  648.                         <div class="p-control-state m-loading" ng-if="$form.$submitting"></div>
  649.                     </div>
  650.                 </div>
  651.             </div>
  652.  
  653.         </form>
  654.     </div>
  655. </div>
  656.         </div>
  657.     </div>
  658.     <div class="p-panel-pane-box" ng-show="panel.isRecover()">
  659.         <div class="p-panel-pane">
  660.             <div class="c-auth-recover" ng-controller="AuthRecover as recover">
  661.     <div class="c-auth-form">
  662.         <form
  663.                class="p-form"
  664.                novalidate="novalidate" autocomplete="on" method="post"
  665.                form-plain="" form-ajax="/auth/password/change_request.ajax"
  666.                form-ajax-success="recover.success()" form-ajax-request="recover.transform($data)"
  667.                form-ajax-error="recover.error($response, $form)"
  668.                ng-hide="recover.hasFinishMessage"
  669.                >
  670.  
  671.             <div class="p-form-row" ng-if="recover.hasRequestError">
  672.                 <div class="p-error-block">
  673.                     Ошибка восстановления пароля <br/>
  674.                     <small>
  675.                         Пожалуйста, попробуйте снова, <br/>
  676.                         если ошибка повторится, сообщите об этом администратору <br/>
  677.                         или по адресу <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  678.                     </small>
  679.                 </div>
  680.             </div>
  681.  
  682.             <div class="p-form-row" ng-if="recover.hasDenied">
  683.                 <div class="p-error-block">
  684.                     Пользователя с такой электронной почтой не существует <br/>
  685.                     <small>
  686.                         Вы можете <a href="#/registration">зарегистрироваться</a>
  687.                     </small>
  688.                 </div>
  689.             </div>
  690.  
  691.             <div class="p-form-row" ng-if="recover.hasBlocked">
  692.                 <div class="p-error-block">
  693.                     У вас закончились права пользоваться библиотекой.<br/>
  694.                     <small>
  695.                         Вопросы можно направить куратору библиотеки в вашей компании или в <a href="mailto:reply-lib@mann-ivanov-ferber.ru">поддержку МИФ</a>
  696.                     </small>
  697.                 </div>
  698.             </div>
  699.  
  700.             <div class="p-form-row">
  701.                 <div
  702.                        class="p-control-box"
  703.                        ng-class="{'m-error': $form.email.$invalid && $form.$submitted}"
  704.                        >
  705.                     <input
  706.                            name="email" ng-model="recover.local.email"
  707.                            placeholder="{{ emailText }}"
  708.                            class="p-control default-input" type="email"
  709.                            required=""
  710.                            />
  711.  
  712.                     <div class="p-control-tip m-error" ng-if="$form.email.$invalid && $form.$submitted">
  713.                         Электронная почта указана неправильно
  714.                     </div>
  715.  
  716.                     <div class="p-control-state-box">
  717.                         <div class="p-control-state m-loading" ng-if="$form.$submitting"></div>
  718.                         <div class="p-control-state m-ok" ng-if="$form.email.$valid && $form.$submitted"></div>
  719.                         <div class="p-control-state m-text m-align-middle"
  720.                             ng-if="!($form.email.$valid && $form.$submitted)">
  721.  
  722.                         </div>
  723.                     </div>
  724.                 </div>
  725.             </div>
  726.  
  727.             <div class="p-form-row m-submit">
  728.                 <div class="p-control-box">
  729.                     <button type="submit" class="p-control m-submit-button"
  730.                            ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">
  731.                         Восстановить пароль
  732.                     </button>
  733.                     <div class="link-back"><a ui-sref="index.login">Назад</a></div>
  734.                 </div>
  735.             </div>
  736.  
  737.         </form>
  738.  
  739.         <div class="p-complete-message" ng-show="recover.hasFinishMessage">
  740.             Вам на почту отправлено сообщение <br/>
  741.             с ссылкой для смены пароля.
  742.         </div>
  743.     </div>
  744. </div>
  745.         </div>
  746.     </div>
  747.     <div class="p-panel-pane-box" ng-show="panel.isChange()">
  748.         <div class="p-panel-pane-title">Создание нового пароля</div>
  749.         <div class="p-panel-pane">
  750.             <div class="c-auth-change" ng-controller="AuthChange as change">
  751.     <div class="c-auth-form">
  752.         <form
  753.                class="p-form"
  754.                novalidate="novalidate" autocomplete="on" method="post"
  755.                form-ajax="/auth/password/change.ajax" form-plain=""
  756.                form-ajax-query="{token: change.state.token}" form-ajax-success="change.success()"
  757.                form-ajax-error="change.error($response)"
  758.                >
  759.  
  760.             <div class="p-form-row" ng-if="change.hasRequestError">
  761.                 <div class="p-error-block">
  762.                     Ошибка смены пароля <br/>
  763.                     <small>
  764.                         Пожалуйста, попробуйте снова, <br/>
  765.                         если ошибка повторится, сообщите об этом администратору <br/>
  766.                         или по адресу <a href="mailto:reply-lib@mann-ivanov-ferber.ru">reply-lib@mann-ivanov-ferber.ru</a>
  767.                     </small>
  768.                 </div>
  769.             </div>
  770.  
  771.             <div class="p-form-row">
  772.                 <div class="p-control-box">
  773.                     <input
  774.                            ng-value="change.state.user.email"
  775.                            placeholder="Email"
  776.                            class="p-control default-input" type="text"
  777.                            ng-disabled="true"
  778.                            />
  779.                 </div>
  780.             </div>
  781.  
  782.             <div class="p-form-row">
  783.                 <div
  784.                        class="p-control-box"
  785.                        ng-class="{'m-error': $form.password.$invalid && ($form.$submitted || change.responseErrors.password)}"
  786.                        >
  787.                     <input
  788.                            name="password" ng-model="password"
  789.                            placeholder="Пароль"
  790.                            class="p-control default-input" type="password"
  791.                            required=""
  792.                            />
  793.  
  794.                     <div class="p-control-tip m-error" ng-if="$form.password.$invalid && $form.$submitted && !change.responseErrors.password.message">
  795.                         Пароль указан неправильно
  796.                     </div>
  797.                     <div class="p-control-tip m-error" ng-if="$form.password.$invalid && change.responseErrors.password.message">
  798.                         {{ change.responseErrors.password.message }}
  799.                     </div>
  800.  
  801.                     <div class="p-control-state-box">
  802.                         <div class="p-control-state m-ok" ng-if="$form.password.$valid"></div>
  803.                     </div>
  804.                 </div>
  805.             </div>
  806.  
  807.             <div class="p-form-row">
  808.                 <div
  809.                        class="p-control-box"
  810.                        ng-class="{'m-error': $form.passwordConfirm.$error.equals && $form.$submitted}"
  811.                        >
  812.                     <input
  813.                            name="passwordConfirm"
  814.                            ng-model="passwordConfirm"
  815.                            placeholder="Повторите пароль"
  816.                            class="p-control default-input" type="password"
  817.                            equals-validator="password"
  818.                            required=""
  819.                            />
  820.  
  821.                     <div class="p-control-tip m-error" ng-if="$form.$error.equals && $form.$submitted">
  822.                         Пароли не совпадают
  823.                     </div>
  824.  
  825.                     <div class="p-control-state-box">
  826.                         <div class="p-control-state m-ok" ng-if="$form.passwordConfirm.$valid"></div>
  827.                     </div>
  828.                 </div>
  829.             </div>
  830.  
  831.             <div class="p-form-row m-submit">
  832.                 <div class="p-control-box">
  833.                     <button type="submit" class="p-control m-submit-button"
  834.                            ng-disabled="($form.$submitting || $form.$invalid) && $form.$submitted">
  835.                         Сменить пароль
  836.                     </button>
  837.  
  838.                     <div class="p-control-state-box">
  839.                         <div class="p-control-state m-loading" ng-if="$form.$submitting"></div>
  840.                     </div>
  841.                 </div>
  842.             </div>
  843.  
  844.         </form>
  845.     </div>
  846. </div>
  847.         </div>
  848.     </div>
  849.     <div class="p-panel-pane-box" ng-show="panel.isUnsubscribe()">
  850.         <div class="p-panel-pane">
  851.             <div class="c-auth-unsubscribe" ng-controller="AuthDistribution as distribution">
  852.     <div class="c-auth-form">
  853.         <div class="p-complete-message" ng-show="!distribution.state.unsubscribeStatus">
  854.             К сожалению, произошла ошибка. Попробуйте отписаться позднее.
  855.         </div>
  856.         <div class="p-complete-message" ng-show="distribution.state.unsubscribeStatus">
  857.             Вы отписались от рассылки новинок библиотеки.<br/>Надеемся, что рассылка была вам полезна. Успехов!
  858.         </div>
  859.         <div class="p-complete-message">
  860.             Вы можете <a href="/">вернуться</a> к просмотру книг.
  861.         </div>
  862.     </div>
  863. </div>
  864.         </div>
  865.     </div>
  866.  
  867. </div>
  868.     </div>
  869.  
  870.     <footer class="p-page-footer">
  871.         <div class="c-footer-logo">
  872.             <a href="/" class="p-link">Издательство «МИФ»</a>
  873.         </div>
  874.     </footer>
  875. </div>
  876.  
  877. </body>
  878. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement