It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: https://follow.bg

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>
  6. Follow.bg - Социална мрежа за дигитални хора! </title>
  7.  
  8. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  9.    <meta name="title" content="Follow.bg - Социална мрежа за дигитални хора!"/>
  10.    <meta name="description" content="Социална мрежа за дигитални хора!"/>
  11.    <meta name="keywords" content="социална мрежа"/>
  12.    <meta name="image" content="https://follow.bg/themes/default/statics/img/og-banner.jpg"/>
  13.    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  14.  
  15. <link rel="stylesheet" href="https://follow.bg/themes/default/statics/css/libs/animate.min.css?v=05012024-1">
  16. <link rel="stylesheet" href="https://follow.bg/themes/default/statics/css/css-libs.css">
  17. <link rel="stylesheet" href="https://follow.bg/themes/default/statics/css/libs/jquery.toast.min.css">
  18. <link rel="stylesheet" href="https://follow.bg/themes/default/statics/css/master.styles.css?v=05012024-1">
  19.  
  20. <link rel="stylesheet" href="https://follow.bg/themes/default/statics/css/libs/jquery.fancybox.css?v=05012024-1">
  21. <link rel="stylesheet" href="https://follow.bg/themes/default/statics/js/libs/plyr/plyr-code/plyr.css?v=05012024-1">
  22. <link rel="icon" href="https://follow.bg/themes/default/statics/img/ficon_1693562443.png" type="image/png">
  23. <link rel="icon" href="https://follow.bg/themes/default/statics/img/ficon_1693562443.png" type="image/x-icon">
  24. <link rel="manifest" href="/manifest.json">
  25.  
  26. <script src="https://follow.bg/themes/default/statics/js/libs/jquery-3.5.1.min.js?v=05012024-1"></script>
  27. <script src="https://follow.bg/themes/default/statics/js/libs/vuejs/vue-v2.6.11.min.js?v=05012024-1"></script>
  28. <script src="https://follow.bg/themes/default/statics/js/libs/vuejs/vue-plugins/validators.min.js?v=05012024-1"></script>
  29.  
  30. <script src="https://follow.bg/themes/default/statics/js/libs/vuejs/vue-plugins/vuelidate.min.js?v=05012024-1"></script>
  31. <script src="https://follow.bg/themes/default/statics/js/libs/jquery-plugins/jquery.form-v4.2.2.min.js?v=05012024-1"></script>
  32. <script src="https://follow.bg/themes/default/statics/js/libs/popper.1.12.9.min.js?v=05012024-1"></script>
  33. <script src="https://follow.bg/themes/default/statics/js/libs/bootstrap.v4.0.0.min.js?v=05012024-1"></script>
  34. <script src="https://follow.bg/themes/default/statics/js/libs/sticky-sidebar/source/jquery.sticky-sidebar.js?v=05012024-1"></script>
  35. <script src="https://follow.bg/themes/default/statics/js/master.script.js?v=05012024-1"></script>
  36. <script src="https://follow.bg/themes/default/statics/js/custom.js?v=05012024-1"></script>
  37. <script src="https://follow.bg/themes/default/statics/js/libs/clipboard.min.js?v=05012024-1"></script>
  38. <script src="https://follow.bg/themes/default/statics/js/libs/jquery-plugins/jquery.fancybox.min.js?v=05012024-1"></script>
  39. <script src="https://follow.bg/themes/default/statics/js/libs/lozad.min.js"></script>
  40. <script src="https://follow.bg/themes/default/statics/js/libs/waitme/waitMe.min.js"></script>
  41. <script src="https://follow.bg/themes/default/statics/js/libs/txt.autoresize.min.js"></script>
  42. <script src="https://follow.bg/themes/default/statics/js/libs/audio-recorder.js"></script>
  43. <script src="https://follow.bg/themes/default/statics/js/libs/plyr/plyr-code/plyr.min.js"></script>
  44. <script src="https://follow.bg/themes/default/statics/js/libs/readmore.js"></script>
  45. <script src="https://follow.bg/themes/default/statics/js/libs/jquery-plugins/jquery-toast.min.js"></script>
  46. <script>
  47. if ('serviceWorker' in navigator) {
  48.    window.addEventListener('load', function() {
  49.      navigator.serviceWorker.register('/themes/default/statics/js/service-worker.js').then(function(registration) {
  50.        console.log('Service Worker registered with scope:', registration.scope);
  51.      }).catch(function(error) {
  52.        console.log('Service Worker registration failed:', error);
  53.      });
  54.    });
  55. }
  56. </script>
  57.  
  58. <script>
  59. <script src="https://analytics.ahrefs.com/analytics.js" data-key="9Wkpw3br5adYeAJ2sQjyrg" defer="true"></script> </script>
  60. <style>
  61. /*
  62. Enter your custom CSS code here.
  63.  
  64. Please note that the code entered here will be added to the <head> tag.
  65. */ </style>
  66.  
  67. </head>
  68. <body dir="ltr" class="cl-app-guest body-guest-mode" data-page-tab="none" data-skin="purple" data-bg="default">
  69. <div class="main-preloader-holder" id="main-preloader-holder">
  70. <div class="main-preloader">
  71. <div class="loading">
  72. <img src="https://follow.bg/themes/default/statics/img/logo_1693562440.png" alt="Logo">
  73. </div>
  74. </div>
  75. </div>
  76. <div data-el="main-content-holder">
  77. <main class="main-content-container guest-mode">
  78. <div class="welcome-page" data-app="guest">
  79. <div class="welcome-page__slider" id="guest-slider">
  80. <div v-for="(img, ind) in images" class="slide" v-bind:class="{'show': ind == curr_ind}" v-bind:style="{'background-image': 'url(' + img + ')'}"></div>
  81. </div>
  82. <div class="welcome-page__body">
  83. <div class="row justify-content-center">
  84. <div class="col-xxl-9 col-xl-10 col-12">
  85. <div class="row">
  86. <div class="col-xxl-6 col-xl-6 col-lg-6 col-md-12 ml-auto">
  87. <div class="welcome-page__rp">
  88. <div class="welcome-page__rp-inner">
  89. <div class="welcome-page-form">
  90. <div class="welcome-page-form__header">
  91. <a href="https://follow.bg" class="logo">
  92. <img src="https://follow.bg/themes/default/statics/img/logo_1693562440.png" alt="Logo">
  93. </a>
  94. <h1>
  95. Добре дошли във Follow.bg </h1>
  96. </div>
  97. <div class="welcome-page-form__body">
  98. <div class="auth-form">
  99. <div class="auth-form-holder">
  100. <form class="form" id="cl-login-vue-app" v-on:submit="submit_form($event)" autocomplete="off">
  101. <div class="form-title">
  102. <h2>
  103. Влезте </h2>
  104. </div>
  105. <div class="form-group">
  106. <label class="input-label">
  107. Имейл адрес или потребител </label>
  108. <input name="email" v-model.trim.lazy="$v.email.$model" type="text" class="form-control" placeholder="Имейл адрес или потребител">
  109. <div class="invalid-main-feedback" v-if="is_valid_email">
  110. {{invalid_feedback_email}}
  111. </div>
  112. </div>
  113. <div class="form-group">
  114. <label class="input-label">
  115. Парола </label>
  116. <div class="password-ctrl">
  117. <input name="password" v-model.trim="$v.password.$model" v-bind:type="password_display" class="form-control" placeholder="Парола">
  118. <button class="password-ctrl" type="button" v-on:click="password_display_toggle">
  119. <span v-if="password_display == 'password'">
  120. <svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 9.005a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 1.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM12 5.5c4.613 0 8.596 3.15 9.701 7.564a.75.75 0 1 1-1.455.365 8.503 8.503 0 0 0-16.493.004.75.75 0 0 1-1.455-.363A10.003 10.003 0 0 1 12 5.5Z" fill="#212121"/></svg> </span>
  121. <span v-else>
  122. <svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M2.22 2.22a.75.75 0 0 0-.073.976l.073.084 4.034 4.035a9.986 9.986 0 0 0-3.955 5.75.75.75 0 0 0 1.455.364 8.49 8.49 0 0 1 3.58-5.034l1.81 1.81A4 4 0 0 0 14.8 15.86l5.919 5.92a.75.75 0 0 0 1.133-.977l-.073-.084-6.113-6.114.001-.002-1.2-1.198-2.87-2.87h.002L8.719 7.658l.001-.002-1.133-1.13L3.28 2.22a.75.75 0 0 0-1.06 0Zm7.984 9.045 3.535 3.536a2.5 2.5 0 0 1-3.535-3.535ZM12 5.5c-1 0-1.97.148-2.889.425l1.237 1.236a8.503 8.503 0 0 1 9.899 6.272.75.75 0 0 0 1.455-.363A10.003 10.003 0 0 0 12 5.5Zm.195 3.51 3.801 3.8a4.003 4.003 0 0 0-3.801-3.8Z" fill="#212121"/></svg> </span>
  123. </button>
  124. </div>
  125. <div class="invalid-main-feedback" v-if="is_valid_password">
  126. {{invalid_feedback_pass}}
  127. </div>
  128. <div v-else-if="unsuccessful_attempt" class="form-group invalid-main-feedback mb-20">
  129. Акаунт с такива данни не е намерен. Проверете дали сте въвели информацията коректно и опитайте отново. </div>
  130. </div>
  131. <div class="form-group">
  132. <div class="form-cta-link">
  133. <span>
  134. Забравихте паролата си? </span>
  135. <a href="https://follow.bg/guest?auth=forgot_pass">
  136. Възстановете паролата си </a>
  137. </div>
  138. </div>
  139. <div class="form-group">
  140. <button v-if="submitting" disabled="true" type="button" class="btn btn-custom main-inline lg btn-block">
  141. Моля, изчакайте </button>
  142. <button v-else-if="done" disabled="true" type="button" class="btn btn-custom main-inline lg btn-block">
  143. Готово! Моля, изчакайте... </button>
  144. <button  v-else v-bind:disabled="($v.$invalid == true)" class="btn btn-custom main-inline lg btn-block">
  145. Вход </button>
  146. </div>
  147. <div class="form-group no-mb">
  148. <div class="form-cta-link">
  149. <span>
  150. Нямате акаунт? </span>
  151. <a href="https://follow.bg/guest?auth=signup">
  152. Регистрирайте се </a>
  153. </div>
  154. </div>
  155. <input type="hidden" class="d-none" value="1739176880:1552e66746eccb1b001fc2053a5587fc1080529c" name="hash">
  156. </form> </div>
  157. </div>
  158. </div>
  159. </div>
  160. </div>
  161. </div>
  162. </div>
  163. </div>
  164. </div>
  165. </div>
  166. </div>
  167. <div class="welcome-page__footer">
  168. <div class="row justify-content-center">
  169. <div class="col-xxl-9 col-xl-10 col-12">
  170. <div class="welcome-page__bp-wrapper">
  171. <div class="welcome-page__bp">
  172. <div class="main-footer">
  173. <ul class="footer-nav">
  174. <li class="footer-nav-item">
  175. <a href="https://follow.bg/terms_of_use" data-spa="true">
  176. Условия за ползване </a>
  177. </li>
  178. <li class="footer-nav-item">
  179. <a href="https://follow.bg/privacy_policy" data-spa="true">
  180. Политика за поверителност </a>
  181. </li>
  182. <li class="footer-nav-item">
  183. <a href="https://follow.bg/cookies_policy" data-spa="true">
  184. Бисквитки </a>
  185. </li>
  186. <li class="footer-nav-item">
  187. <a href="https://follow.bg/about_us" data-spa="true">
  188. За нас </a>
  189. </li>
  190. <li class="footer-nav-item">
  191. <a href="https://follow.bg/faqs" data-spa="true">
  192. ЧЗВ </a>
  193. </li>
  194.  
  195. <li class="footer-nav-item dropdown">
  196. <a class="dropdown-toggle" data-toggle="dropdown">
  197. Български </a>
  198. <div class="dropdown-menu dropdown-icons">
  199. <a class="dropdown-item " href="https://follow.bg/language/english">
  200. Английски </a>
  201. <a class="dropdown-item " href="https://follow.bg/language/french">
  202. Френски </a>
  203. <a class="dropdown-item " href="https://follow.bg/language/german">
  204. Немски </a>
  205. <a class="dropdown-item " href="https://follow.bg/language/italian">
  206. Италиански </a>
  207. <a class="dropdown-item " href="https://follow.bg/language/russian">
  208. Руски </a>
  209. <a class="dropdown-item " href="https://follow.bg/language/portuguese">
  210. Португалски </a>
  211. <a class="dropdown-item " href="https://follow.bg/language/spanish">
  212. Испански </a>
  213. <a class="dropdown-item " href="https://follow.bg/language/turkish">
  214. Турски </a>
  215. <a class="dropdown-item " href="https://follow.bg/language/dutch">
  216. Холандски </a>
  217. <a class="dropdown-item " href="https://follow.bg/language/ukraine">
  218. Украйнски </a>
  219. <a class="dropdown-item " href="https://follow.bg/language/arabic">
  220. Арабски </a>
  221. <a class="dropdown-item active" href="https://follow.bg/language/bulgarian">
  222. Български </a>
  223. <a class="dropdown-item " href="https://follow.bg/language/japanese">
  224. Японски - 日本語 </a>
  225. </div>
  226. </li>
  227. <li class="footer-nav-item">
  228. <a href="https://follow.bg/about_us">&copy; Follow.bg - 2025.</a>
  229. </li>
  230. </ul>
  231.  
  232. </div> </div>
  233. </div>
  234. </div>
  235. </div>
  236. </div>
  237. </div>
  238.  
  239. <script>
  240. $(document).ready(function() {
  241. var _app = $("[data-app='guest']");
  242.  
  243. new Vue({
  244. el: "#guest-slider",
  245. data: {
  246. curr_ind: 0,
  247. images: ["https:\/\/follow.bg\/themes\/default\/statics\/img\/guest\/default\/img-1.jpg","https:\/\/follow.bg\/themes\/default\/statics\/img\/guest\/default\/img-2.jpg","https:\/\/follow.bg\/themes\/default\/statics\/img\/guest\/default\/img-3.jpg"] },
  248. created: function() {
  249. var _app_ = this;
  250.  
  251. if (_app_.images.length >= 2) {
  252. setInterval(function() {
  253.  
  254. if (_app_.curr_ind >= _app_.images.length - 1) {
  255. _app_.curr_ind = 0;
  256. }
  257. else{
  258. _app_.curr_ind += 1;
  259. }
  260.  
  261. }, 3000);
  262. }
  263. }
  264. });
  265.  
  266. });
  267. </script>
  268.  
  269. <script>
  270. "use strict";
  271. $(document).ready(function($) {
  272. Vue.use(window.vuelidate.default);
  273.  
  274. if ($("form#cl-login-vue-app").length) {
  275. new Vue({
  276. "el": "#cl-login-vue-app",
  277. data: {
  278. email: "",
  279. password: "",
  280. submitting: false,
  281. done: false,
  282. unsuccessful_attempt: false,
  283. invalid_feedback_email: "",
  284. invalid_feedback_pass: "",
  285. password_display: "password"
  286. },
  287. computed: {
  288. is_valid_email: function() {
  289. if (this.$v.email.required == true && this.$v.email.$error) {
  290. this.invalid_feedback_email = "Потребителското име което сте въвели е невалидно";
  291. return true;
  292. }
  293.  
  294. else {
  295. this.invalid_feedback_email = "";
  296. return false;
  297. }
  298. },
  299. is_valid_password: function() {
  300. if(this.$v.password.required == true && this.$v.password.$error) {
  301. this.invalid_feedback_pass = "Паролата която сте въвели е невалидна";
  302. return true;
  303. }
  304.  
  305. else {
  306. this.invalid_feedback_pass = "";
  307. return false;
  308. }
  309. }
  310. },
  311. validations: {
  312. email: {
  313. required: window.validators.required,
  314. min_length: window.validators.minLength(3),
  315. max_length: window.validators.maxLength(55)
  316. },
  317. password: {
  318. required: window.validators.required,
  319. min_length: window.validators.minLength(6),
  320. max_length: window.validators.maxLength(20)
  321. }
  322. },
  323. methods: {
  324. submit_form: function(_self = false) {
  325. _self.preventDefault();
  326.  
  327. var _app_ = this;
  328.  
  329. $(_self.target).ajaxSubmit({
  330. url: "https://follow.bg/native_api/auth/login",
  331. type: 'POST',
  332. dataType: 'json',
  333. beforeSend: function() {
  334. _app_.submitting = true;
  335. },
  336. success: function(data) {
  337. if (data.status == 200) {
  338. _app_.done = true;
  339.  
  340. delay(function() {
  341. cl_redirect("https://follow.bg/home");
  342. }, 1000);
  343. }
  344.  
  345. else {
  346. _app_.unsuccessful_attempt = true;
  347.  
  348. delay(function() {
  349. _app_.unsuccessful_attempt = false;
  350. }, 3000);
  351. }
  352. },
  353. complete: function() {
  354. _app_.submitting = false;
  355. }
  356. });
  357. },
  358. password_display_toggle: function() {
  359. var _app_ = this;
  360.  
  361. if (_app_.password_display == "text") {
  362. _app_.password_display = "password";
  363. }
  364. else{
  365. _app_.password_display = "text";
  366. }
  367. }
  368. }
  369. });
  370. }
  371.  
  372. if ($("form#cl-signup-vue-app").length) {
  373. new Vue({
  374. "el": "#cl-signup-vue-app",
  375. data: {
  376. done: false,
  377. email: "",
  378. phone: "",
  379. password: "",
  380. uname: "",
  381. fname: "",
  382. lname: "",
  383. submitting: false,
  384. invalid_feedback_email: "",
  385. invalid_feedback_phone: "",
  386. invalid_feedback_pass: "",
  387. invalid_feedback_uname: "",
  388. tos_agree: false,
  389. uname_taken: false,
  390. email_taken: false,
  391. phone_server_error: false,
  392. phone_taken: false,
  393. uname_denied: false,
  394. email_denied: false,
  395. process_failed: false,
  396. grecaptcha_error: false,
  397. password1_display: "password",
  398. password2_display: "password",
  399. invite_code: "",
  400. grecaptcha: "off"
  401. },
  402. computed: {
  403. is_valid_uname: function() {
  404. if (this.$v.uname.required == true && this.$v.uname.$error) {
  405. this.invalid_feedback_uname = "Въведеният потребител е в невалиден формат. Потребителят може да съдържа само букви (a-z), цифри и долни черти и да бъде по-кратък от 25 символа";
  406. return true;
  407. }
  408.  
  409. else if(this.uname_taken == true) {
  410. this.invalid_feedback_uname = "Потребителят е вече регистриран. Моля, изберете друг";
  411. return true;
  412. }
  413. else if(this.uname_denied == true) {
  414. this.invalid_feedback_uname = "Този потребител е регистриран. Моля, изберете друг.";
  415. return true;
  416. }
  417.  
  418. else {
  419. this.invalid_feedback_uname = "";
  420. return false;
  421. }
  422. },
  423. is_valid_email: function() {
  424. if (this.$v.email.required == true && this.$v.email.$error) {
  425. this.invalid_feedback_email = "Въведеният имейл адрес е невалиден.";
  426. return true;
  427. }
  428.  
  429. else if (this.email_taken == true) {
  430. this.invalid_feedback_email = "Имейл адресът е вече регистриран. Моля, използвайте друг";
  431. return true;
  432. }
  433.  
  434. else if (this.email_denied == true) {
  435. this.invalid_feedback_email = "Този имейл адрес е резервиран и не може да се използва.";
  436. return true;
  437. }
  438.  
  439. else {
  440. this.invalid_feedback_email = "";
  441. return false;
  442. }
  443. },
  444. is_valid_password: function() {
  445. if (this.$v.password.required == true && this.$v.password.$error) {
  446. this.invalid_feedback_pass = "Паролата трябва да съдържа между 6 и 20 символа";
  447. return true;
  448. }
  449.  
  450. else {
  451. this.invalid_feedback_pass  = "";
  452. return false;
  453. }
  454. },
  455. is_valid_form: function() {
  456. return (this.$v.$invalid == false && this.tos_agree == true);
  457. }
  458. },
  459. validations: {
  460. uname: {
  461. required: window.validators.required,
  462. min_length: window.validators.minLength(3),
  463. max_length: window.validators.maxLength(25),
  464. is_alpha_num: cl_uname_valid
  465. },
  466. email: {
  467. required: window.validators.required,
  468. email: window.validators.email,
  469. min_length: window.validators.minLength(8),
  470. max_length: window.validators.maxLength(55)
  471. },
  472. password: {
  473. required: window.validators.required,
  474. min_length: window.validators.minLength(6),
  475. max_length: window.validators.maxLength(20)
  476. }
  477. },
  478. methods: {
  479. submit_form: function(_self = false) {
  480. _self.preventDefault();
  481.  
  482. var _app_ = this;
  483.  
  484. if (_app_.grecaptcha == "on") {
  485. var grecap_res = grecaptcha.getResponse();
  486.  
  487. if (grecap_res.length < 1) {
  488.  
  489. _app_.grecaptcha_error = true;
  490.  
  491. return false;
  492. }
  493. }
  494.  
  495. $(_self.target).ajaxSubmit({
  496. url: "https://follow.bg/native_api/auth/signup",
  497. type: 'POST',
  498. dataType: 'json',
  499. data: {
  500. invite_code: _app_.invite_code
  501. },
  502. beforeSend: function() {
  503. _app_.submitting     = true;
  504. _app_.uname_taken    = false;
  505. _app_.email_taken    = false;
  506. _app_.phone_taken    = false;
  507. _app_.uname_denied   = false;
  508. _app_.email_denied   = false;
  509. _app_.process_failed = false;
  510. _app_.phone_server_error = false;
  511. },
  512. success: function(data) {
  513. if (data.status == 200) {
  514.  
  515. _app_.done = true;
  516.  
  517. delay(function() {
  518. cl_redirect("https://follow.bg/start_up");
  519. }, 1500);
  520. }
  521. else if(data.status == 401) {
  522. _app_.done = true;
  523.  
  524. delay(function() {
  525. cl_redirect("https://follow.bg/confirm_registration");
  526. }, 1500);
  527. }
  528. else if(data.status == 405) {
  529. _app_.phone_server_error = true;
  530. }
  531. else {
  532. if (data.err_code == "doubling_uname") {
  533. _app_.uname_taken = true;
  534. }
  535.  
  536. else if(data.err_code == "doubling_email") {
  537. _app_.email_taken = true;
  538. }
  539.  
  540. else if(data.err_code == "doubling_phone") {
  541. _app_.phone_taken = true;
  542. }
  543.  
  544. else if(data.err_code == "denied_email") {
  545. _app_.email_denied = true;
  546. }
  547.  
  548. else if(data.err_code == "denied_uname") {
  549. _app_.uname_denied = true;
  550. }
  551.  
  552. else {
  553. _app_.process_failed = true;
  554. }
  555. }
  556. },
  557. complete: function() {
  558. _app_.submitting = false;
  559. }
  560. });
  561. },
  562. password1_display_toggle: function() {
  563. var _app_ = this;
  564.  
  565. if (_app_.password1_display == "text") {
  566. _app_.password1_display = "password";
  567. }
  568. else{
  569. _app_.password1_display = "text";
  570. }
  571. }
  572. }
  573. });
  574. }
  575.  
  576. if ($("form#cl-resetpass-vue-app").length) {
  577. new Vue({
  578. "el": "#cl-resetpass-vue-app",
  579. data: {
  580. email: "",
  581. submitting: false,
  582. invalid_feedback_email: "",
  583. process_failed: false,
  584. process_succeeded: false,
  585. unknown_email: false,
  586. },
  587. computed: {
  588. is_valid_email: function() {
  589. if (this.$v.email.required == true && this.$v.email.$error) {
  590. this.invalid_feedback_email = "Въведеният имейл адрес е невалиден.";
  591. return true;
  592. }
  593.  
  594. else if(this.unknown_email == true) {
  595. this.invalid_feedback_email = "Не може да намерим акаунт с този имейл адрес!";
  596. return true;
  597. }
  598.  
  599. else {
  600. this.invalid_feedback_email = "";
  601. return false;
  602. }
  603. },
  604. is_valid_form: function() {
  605. return (this.$v.$invalid == false);
  606. }
  607. },
  608. validations: {
  609. email: {
  610. required: window.validators.required,
  611. email: window.validators.email,
  612. min_length: window.validators.minLength(8),
  613. max_length: window.validators.maxLength(55)
  614. }
  615. },
  616. methods: {
  617. submit_form: function(_self = false) {
  618. _self.preventDefault();
  619.  
  620. var _app_ = this;
  621.  
  622. $(_self.target).ajaxSubmit({
  623. url: "https://follow.bg/native_api/auth/resetpass",
  624. type: 'POST',
  625. dataType: 'json',
  626. beforeSend: function() {
  627. _app_.submitting     = true;
  628. _app_.process_failed = false;
  629. _app_.unknown_email  = false;
  630. },
  631. success: function(data) {
  632. if (data.status == 200) {
  633. _app_.process_succeeded = true;
  634. }
  635. else {
  636. if (data.err_code == "unknown_email") {
  637. _app_.unknown_email = true;
  638. }
  639.  
  640. else {
  641. _app_.process_failed = true;
  642. }
  643. }
  644. },
  645. complete: function() {
  646. _app_.submitting = false;
  647. }
  648. });
  649. }
  650. }
  651. });
  652. }
  653.  
  654. });
  655. </script>
  656. </main>
  657.  
  658. <input id="csrf-token" type="hidden" class="hidden d-none" value="1739176880:1552e66746eccb1b001fc2053a5587fc1080529c">
  659.  
  660. <div data-app="black-hole"></div>
  661. <!-- Google tag (gtag.js) -->
  662. <script async src="https://www.googletagmanager.com/gtag/js?id=G-NXK6R2PT5B"></script>
  663. <script>
  664.  window.dataLayer = window.dataLayer || [];
  665.  function gtag(){dataLayer.push(arguments);}
  666.  gtag('js', new Date());
  667.  
  668.  gtag('config', 'G-NXK6R2PT5B');
  669. </script>
  670. </div>
  671.  
  672. <div class="cookie-alert" tabindex="-1" role="dialog" data-app="cookie-alert-app">
  673.    <div class="cookie-alert__inner">
  674.        <div class="cookie-message">
  675.            <div class="lp">
  676.                <h4>
  677.                    Този сайт използва бисквитки                </h4>
  678.                <p>
  679.                    Използваме бисквитки, за да подобрим изживяването Ви при сърфиране, да предоставяме персонализирани реклами и съдържание и да анализираме нашия трафик. <a href="https://follow.bg/cookies_policy" target="_blank">Прочетете още</a>                </p>
  680.            </div>
  681.            <div class="rp">
  682.                <button class="btn btn-custom main-white lg" data-uiel="accept-cookies">
  683.                    Приемам                </button>
  684.                <button class="btn btn-custom main-white main-white-outline lg" data-href="https://follow.bg/cookies_policy">
  685.                    Прочетете още                </button>
  686.            </div>
  687.        </div>
  688.    </div>
  689.    <script>
  690.        $(document).ready(function($) {
  691.            $('[data-app="cookie-alert-app"]').find('[data-uiel="accept-cookies"]').on('click', function(e) {
  692.                $.ajax({
  693.                    url: 'https://follow.bg/native_api/main/cua',
  694.                    type: 'GET',
  695.                    dataType: 'json'
  696.                }).done(function() {
  697.                    $('[data-app="cookie-alert-app"]').fadeOut(300, function() {
  698.                        $(this).remove();
  699.                    });
  700.                });
  701.            });
  702.        });
  703.    </script>
  704. </div>
  705. <script>
  706. /*
  707. Enter your custom JS code here.
  708.  
  709. Please note that the code entered here will be added to the <footer> tag.
  710. */ </script>
  711.  
  712. </body>
  713. </html>
  714.  
  715.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda