1// user 2(function() { 3 let info = window.fjuser ? window.fjuser.info : null; 4 window.fjuser = { 5 eventType: { 6 login: 0x0001, 7 register: 0x0010, 8 logout: 0x0100, 9 showLoginPanel:0x1001, 10 hideLoginPanel:0x1002, 11 showRegisterPanel:0x1003, 12 hideRegisterPanel:0x1004, 13 }, 14 15 info: info, 16 17 _listeners: [], 18 _showLoginFunc: null, 19 _showRegisterFunc: null, 20 _logoutHooks: [], 21 22 initWithMethods: function(showLoginFunc, showRegisterFunc) 23 { 24 this._showLoginFunc = showLoginFunc; 25 this._showRegisterFunc = showRegisterFunc; 26 }, 27 28 // callback(result, info) 29 addListener: function(type, callback, once = false) 30 { 31 this._listeners.push({ 32 type: type, 33 callback: callback, 34 once: once 35 }); 36 }, 37 //ç§»é¤äºä»¶çå¬ 38 removeListener: function(type, callback, once = false) 39 { 40 let removeIndex = -1; 41 let length = this._listeners.length; 42 for (let i = 0; i < length; i++) { 43 let {type: _type, callback: _callback, once: _once} = this._listeners[i]; 44 if (type === _type && callback === _callback && once === _once) { 45 removeIndex = i; 46 break; 47 } 48 } 49 if (removeIndex !== -1) { 50 this._listeners.splice(removeIndex, 1); 51 } 52 }, 53 54 dispatchCallbacks: function(type) 55 { 56 var args = [...arguments].slice(1); 57 for(var i = 0; i < this._listeners.length; i++) 58 { 59 var item = this._listeners[i]; 60 61 if(item.type === type) 62 { 63 item.callback(...args); 64 if(item.once) 65 { 66 this._listeners.splice(i, 1); 67 i--; 68 } 69 } 70 } 71 }, 72 73 showLoginPanel: function() 74 { 75 if(this._showLoginFunc) 76 this._showLoginFunc(); 77 }, 78 79 showRegisterPanel: function() 80 { 81 if(this._showRegisterFunc) 82 this._showRegisterFunc(); 83 }, 84 85 loginPost:function (data, callback) { 86 if(window.csrf_token){ 87 data[window.csrf_token] = 1; 88 }; 89 $.post("/user/login", data, (json) => { 90 var result = (json.code === 200); 91 if(result) 92 { 93 window.fjuser.info = json.data; 94 window.csrf_token = json.token; 95 } 96 window.fjuser.dispatchCallbacks(window.fjuser.eventType.login, result, json); 97 98 if(callback) 99 callback(result, json.data); 100 }); 101 }, 102 103 registerPost: function(data, callback) { 104 $.post("/user/register", data, (json) => { 105 var result = (json.code === 200); 106 if(result) 107 { 108 window.fjuser.info = json.data; 109 window.csrf_token = json.token; 110 } 111 window.fjuser.dispatchCallbacks(window.fjuser.eventType.register, result, json); 112 113 if(callback) 114 callback(result, json); 115 }); 116 }, 117 118 connectFacebook: function(data, callback) { 119 $.post("/user/connectFacebookUser", data, (json) => { 120 var result = (json.code === 200); 121 if(result) 122 { 123 window.fjuser.info = json.data; 124 window.csrf_token = json.token; 125 } 126 127 if(json.data.register) 128 { 129 window.fjuser.dispatchCallbacks(window.fjuser.eventType.register, result, json); 130 } 131 else 132 { 133 window.fjuser.dispatchCallbacks(window.fjuser.eventType.login, result, json); 134 } 135 136 if(callback) 137 callback(result, json); 138 }); 139 }, 140 141 connectGoogle: function(data, callback) { 142 $.post("/user/connectGoogleUser",data,function (json) { 143 var result = (json.code === 200); 144 if(result) 145 { 146 window.fjuser.info = json.data; 147 window.csrf_token = json.token; 148 } 149 150 if(json.data.register) 151 { 152 window.fjuser.dispatchCallbacks(window.fjuser.eventType.register, result, json); 153 } 154 else 155 { 156 window.fjuser.dispatchCallbacks(window.fjuser.eventType.login, result, json); 157 } 158 159 if(callback) 160 callback(result, json); 161 }); 162 }, 163 164 logoutPost: async function(callback) { 165 Promise.all(this._logoutHooks.map((hook) => { 166 return hook(); 167 })).then(() => { 168 if(!window.FJTools){ 169 FJTools = $; 170 } 171 post_data = {}; 172 post_data[window.csrf_token] = 1; 173 FJTools.post("/user/logout",post_data, (json) => { 174 var result = (json.code === 200); 175 if(result) 176 { 177 window.csrf_token = json.token; 178 window.fjuser.info = {result: false}; 179 } 180 window.fjuser.dispatchCallbacks(window.fjuser.eventType.logout, result); 181 182 if(callback) 183 callback(result); 184 }) 185 }).catch((e) => { 186 console.log(e); 187 }); 188 }, 189 190 addLogoutHook: function(hook) { 191 this._logoutHooks.push(hook); 192 }, 193 194 isUserLogin:function () { 195 return this.info && this.info.result; 196 }, 197 198 getUserCountryCode: function() { 199 return this.getCountryCode(); 200 }, 201 202 getCountryCode: function() { 203 return new Promise(resolve => { 204 if(this.localCountryCode) 205 resolve(this.localCountryCode); 206 else { 207 $.ajax({ 208 type: "POST", 209 url: "https://www.cloudflare.com/cdn-cgi/trace", 210 data: {}, 211 success: (data) => { 212 let params = data.split('\n');
213 params.forEach((val) => { 214 if(val.indexOf('loc=') !== -1) { 215 this.localCountryCode = val.match(/=(.*)/)[1]; 216 } 217 }); 218 219 resolve(this.localCountryCode); 220 }, 221 error: function(jqXHR, textStatus, errorThrown) { 222 resolve(null); 223 } 224 }); 225 } 226 }); 227 }, 228 229 getBrowser: function (n) { 230 var ua = navigator.userAgent.toLowerCase(), 231 s, 232 name = '', 233 ver = 0; 234 (s = ua.match(/msie ([\d.]+)/)) ? _set("IE", _toFixedVersion(s[1])) : 235 (s = ua.match(/firefox\/([\d.]+)/)) ? _set("Firefox", _toFixedVersion(s[1])) : 236 (s = ua.match(/chrome\/([\d.]+)/)) ? _set("Chrome", _toFixedVersion(s[1])) : 237 (s = ua.match(/opera.([\d.]+)/)) ? _set("Opera", _toFixedVersion(s[1])) : 238 (s = ua.match(/version\/([\d.]+).*safari/)) ? _set("Safari", _toFixedVersion(s[1])) : 0; 239 240 function _toFixedVersion(ver, floatLength) { 241 ver = ('' + ver).replace(/_/g, '.'); 242 floatLength = floatLength || 1; 243 ver = String(ver).split('.'); 244 ver = ver[0] + '.' + (ver[1] || '0'); 245 ver = Number(ver).toFixed(floatLength); 246 return ver; 247 } 248 249 function _set(bname, bver) { 250 name = bname; 251 ver = bver; 252 } 253 254 return (n == 'n' ? name : (n == 'v' ? ver : name + " " + ver)); 255 }, 256 257 getOS: function () { 258 var sUserAgent = navigator.userAgent; 259 var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows"); 260 var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel"); 261 if (isMac) return "Mac"; 262 var isUnix = (navigator.platform == "X11") && !isWin && !isMac; 263 if (isUnix) return "Unix"; 264 var isLinux = (String(navigator.platform).indexOf("Linux") > -1); 265 if (isLinux) return "Linux"; 266 if (isWin) { 267 var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1; 268 if (isWin2K) return "Win2000"; 269 var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1; 270 if (isWinXP) return "WinXP"; 271 var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1; 272 if (isWin2003) return "Win2003"; 273 var isWinVista = sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1; 274 if (isWinVista) return "WinVista"; 275 var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1; 276 if (isWin7) return "Win7"; 277 var isWin10 = sUserAgent.indexOf("Windows NT 10") > -1 || sUserAgent.indexOf("Windows 10") > -1; 278 if (isWin10) return "Win10"; 279 } 280 return "Unknown"; 281 }, 282 getDeviceInfo: function () { 283 let os = this.getOS(); 284 if(os != "Unknown") 285 { 286 os = os + " " + window.screen.width + " x " + window.screen.height; 287 } 288 289 return os; 290 } 291 }; 292})(); 293 294 295//login 模åcreate卿åè° 296window.app_fj_login_created_callback = function (_this) { 297 298 _this.hasLogin = window.fjuser.isUserLogin(); 299 _this.userInfo = window.fjuser.info; 300 301 //ç»å½äºä»¶åè° 302 window.fjuser.addListener(window.fjuser.eventType.login, function (result, response){ 303 if(result) { 304 _this.userLogined(response.data); 305 } 306 _this.loaded(); 307 _this.setError(response.msg); 308 }); 309 310 //注åäºä»¶åè° 311 window.fjuser.addListener(window.fjuser.eventType.register,function (result, response){ 312 if (result) { 313 314 //注åäºä»¶ç»è®¡ 315 if(window.eaRegCallBack){ 316 if(window.signup_action_path){ 317 window.eaRegCallBack(window.signup_action_path,response.data.email); 318 } 319 } 320 _this.userLogined(response.data); 321 if (window.app_survey) { 322 window.app_survey.openBox(); 323 } 324 //window.registerSuccessedEalog("mail",response.data.email); 325 } 326 app_fj_login.loaded(); 327 app_fj_login.setError(response.msg); 328 }); 329 330 //ç»åºäºä»¶åè° 331 window.fjuser.addListener(window.fjuser.eventType.logout,function (result, response){ 332 _this.hasLogin = !result; 333 if(result) { 334 _this.userInfo = null; 335 } 336 _this.loaded(); 337 }); 338 339 window.callbackWhenUserIdChange(); 340}; 341 342 343window.callbackWhenUserIdChange = function(){ 344 //è®¾ç½®ç¨æ·çidåç¨æ·çå¥é¤ç±»å 345 if(window.ealog){ 346 if(window.fjuser.info && window.fjuser.info.result) { 347 id = window.fjuser.info.id; 348 policy = window.fjuser.info.policy;
349 period = window.fjuser.info.period; 350 email = window.fjuser.info.email; 351 window.amplitude.getInstance().setUserId(window.fjuser.info.id); 352 window.ealog.setUserProperties({ 353 "id":email, 354 "account type": policy + " " + period, 355 }); 356 } 357 } 358}; 359 360window.registerSuccessedEalog = function (path,account) { 361 if(window.gaEvent){ 362 window.gaEvent("signUp","signUp_success_"+path); 363 } 364}; 365 366 367//æå¼æ³¨å颿¿çåè° 368window.showSignUpEacallback = function () { 369 window.ealog.addEvent("sign up visit",{}); 370}; 371window.fj = window.fj ? window.fj : {}; 372window.fj.fb_app_id = (document.domain === "www.designcap.com") || (document.domain === "designcap.com") ? '147722076005532' : '2459054510782124'; 373window.fj.google_auth2_id = "1075051213312-d3jpuou4semk3lm5tmmqsrn3f2nl80k1.apps.googleusercontent.com"; 374/** 375 * Created by Administrator on 2019/12/11. 376 */ 377//remember me 378var CookieFunc = { 379 initLogin: function (callback) { 380 if ('true' === this.getCookie('fj_remember')) { 381 var usertoken = this.getCookie('fj_usertoken'); 382 383 if(usertoken){ 384 callback(usertoken) 385 } 386 } 387 }, 388 setCookie: function (name, value) { 389 if(CookieFunc.getCookie(name)){ 390 CookieFunc.delCookie(name); 391 } 392 var Days = 10; 393 var exp = new Date(); 394 exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000); 395 document.cookie = name + "=" + escape(value) + ";path=/;expires=" + exp.toGMTString(); 396 }, 397 getCookie: function (name) { 398 var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)"); 399 if (arr = document.cookie.match(reg)) 400 return unescape(arr[2]); 401 else 402 return null; 403 }, 404 delCookie: function (name) { 405 var exp = new Date(); 406 exp.setTime(exp.getTime() - 1); 407 var cval = this.getCookie(name); 408 if (cval != null) 409 document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString(); 410 } 411} 412 413//注åæåçeaç»è®¡äºä»¶ 414window.eaRegCallBack = function (path,account) { 415 if(window.ealog){ 416 417 mode = path; 418 page = "page_" + window.location.pathname; 419 account = "Account_" + account; 420 421 sign_up_event_name = "sign up"; 422 if(location.href.indexOf("recordcast.com") != -1){ 423 sign_up_event_name = "sign"; 424 } 425 window.ealog.addEvent(sign_up_event_name,{ 426 signUpMode:mode, 427 signUpPage:page, 428 signUpAccount:account 429 }); 430 } 431}; 432 433//å®ä¾åfacebookè¿æ¥å¯¹è±¡ 434window.fbAsyncInit = function () { 435 FB.init({ 436 appId: window.fj.fb_app_id, 437 xfbml: true, 438 version: 'v10.0' 439 }); 440}; 441 442window.loadFacebookSDK = function() 443{ 444 (function (d, s, id) { 445 var js, 446 fjs = d.getElementsByTagName(s)[0]; 447 if (d.getElementById(id)) { 448 return; 449 } 450 js = d.createElement(s); 451 js.id = id; 452 js.async = 'async'; 453 js.defer = 'defer'; 454 js.src = "https://connect.facebook.net/en_US/sdk.js"; 455 fjs.parentNode.insertBefore(js, fjs); 456 })(document, 'script', 'facebook-jssdk'); 457} 458 459/** 460 * 黿¢å泡ç¨åºçæ¹æ³ 461 * @param e äºä»¶ 462 * @returns {boolean} 463 */ 464function stopDefault(e) { 465 //妿æä¾äºäºä»¶å¯¹è±¡ï¼åè¿æ¯ä¸ä¸ªéIEæµè§å¨ 466 if (e && e.preventDefault) { 467 //黿¢é»è®¤æµè§å¨å¨ä½(W3C) 468 e.preventDefault(); 469 } else { 470 //IEä¸é»æ¢å½æ°å¨é»è®¤å¨ä½çæ¹å¼ 471 window.event.returnValue = false; 472 } 473 return false; 474} 475 476//facebookç»å½å¯¹è±¡
477window.connectWithFaceBook = { 478 errorcallback:function () { 479 //console.log("google auth error callback"); 480 }, 481 //ç»å½ 482 login: function (e,errorcallback) { 483 if(errorcallback){ 484 window.connectWithFaceBook.errorcallback = errorcallback; 485 } 486 stopDefault(e); 487 FB.login(function (response) { 488 if (response.status === 'connected') { 489 this.handleFacebookConnected(response); 490 } else if (response.status === 'not_authorized') { 491 // The person is logged into Facebook, but not your app. 492 window.connectWithFaceBook.errorcallback(); 493 } else { 494 // The person is not logged into Facebook, so we're not sure if 495 // they are logged into this app or not. 496 window.connectWithFaceBook.errorcallback(); 497 } 498 }.bind(this), { scope: 'public_profile,email' }); 499 }, 500 //è¿æ¥facebookæååçåè° 501 handleFacebookConnected: function handleFacebookConnected(resp) { 502 var token = resp.authResponse.accessToken; 503 this.ajaxConnectFacebook(token); 504 }, 505 //è·åå°facebookçæ¥å£åè¯·æ±æä»¬çç½ç« 506 ajaxConnectFacebook:function(token) { 507 var post_data = {token:token}; 508 post_data[window.csrf_token] = 1; 509 510 window.fjuser.connectFacebook(post_data, (result, response) => { 511 /*if(result) 512 { 513 if (response.data.register == true) { 514 if(window.app_survey){ 515 window.app_survey.openBox(); 516 } 517 //registerSuccessedEalog("facebook",response.data.email); 518 } 519 }*/ 520 }); 521 }, 522 // This is called with the results from from FB.getLoginStatus(). 523 statusChangeCallback: function statusChangeCallback(response) { 524 if (response.status === 'connected') { 525 // Logged into your app and Facebook. 526 this.handleFacebookConnected(response); 527 } else if (response.status === 'not_authorized') { 528 } else { 529 } 530 }, 531 checkLoginState: function checkLoginState() { 532 FB.getLoginStatus(function (response) { 533 this.statusChangeCallback(response); 534 }.bind(this)); 535 }, 536}; 537 538 539window.loadGoogleSDK = function () { 540 (function (d, s, id) { 541 var js, 542 fjs = d.getElementsByTagName(s)[0]; 543 if (d.getElementById(id)) { 544 return; 545 } 546 js = d.createElement(s); 547 js.id = id; 548 js.gapi_processed = "true"; 549 js.async = 'async'; 550 js.defer = 'defer'; 551 js.src = "https://apis.google.com/js/api:client.js"; 552 fjs.parentNode.insertBefore(js, fjs); 553 })(document, 'script', 'google-jssdk'); 554} 555 556//å ³ègoogleç»å½ 557function attachGoogleSignin(element) { 558 auth2.attachClickHandler(element, {}, 559 function(googleUser) { 560 connectWithGoogle.onSignIn(googleUser); 561 }, function(error) { 562 //å ³éææå¼¹çªç 563 //console.log(error); 564 window.connectWithGoogle.errorcallback(); 565 }); 566} 567 568//å®ä¾ågoogleç»å½ç»ä»¶ 569var googleUser = {}; 570 571//domå è½½å®æ¯èªå¨ç»å®googleç»å½å°æé® 572$(function () { 573 //window.startGoogle(); 574}); 575 576//googleç»å½å¯¹è±¡ 577var googleOauthLoaded = false; 578window.connectWithGoogle = { 579 errorcallback:function () { 580 //console.log("google auth error callback"); 581 }, 582 login:function (e,errorcallback) { 583 if(errorcallback){ 584 window.connectWithGoogle.errorcallback = errorcallback; 585 } 586 //console.log(e); 587 if(!googleOauthLoaded){ 588 //éè¿classå®ç°ç»å®å¤ä¸ªæé® 589 btns = jQuery(".fj-login-gl-btn"); 590 if(window.gapi != undefined && btns.length > 0){ 591 gapi.load('auth2', function(){ 592 // Retrieve the singleton for the GoogleAuth library and set up the client. 593 auth2 = gapi.auth2.init({ 594 client_id: window.fj.google_auth2_id, 595 cookiepolicy: 'single_host_origin', 596 }); 597 598 for(i=0;i<btns.length;i++){ 599 btn = btns[i]; 600 attachGoogleSignin(btn); 601 }; 602 googleOauthLoaded = true; 603 $(e.target).click(); 604 605 }); 606 607 }else{ 608 //å 为vueæ²¡ææ¸²ædomï¼æä»¥ä¼æ¥é 609 setTimeout(function () { 610 window.connectWithGoogle.login(e); 611 },1000); 612 } 613 }else{ 614 $(e.target).click(); 615 } 616 }, 617 loginClick: function (e) { 618 stopDefault(e); 619 }, 620 onSignIn: function(googleUser) { 621 var id_token = googleUser.getAuthResponse().id_token; 622 this.ajaxConnectGoogle(id_token); 623 }, 624 signOut: function() { 625 try{ 626 var auth2 = gapi.auth2.getAuthInstance(); 627 auth2.signOut().then(function () {}); 628 }catch (e) {} 629 }, 630 ajaxConnectGoogle: function (token) { 631 var post_data = {token:token}; 632 post_data[window.csrf_token] = 1; 633 634 window.fjuser.connectGoogle(post_data, (result,response) => { 635 if(result){ 636 if (response.register == true) { 637 if(window.app_survey){ 638 window.app_survey.openBox(); 639 } 640 //registerSuccessedEalog("google",response.data.email); 641 } 642 } 643 }) 644 } 645}; 646 647 648 649 650/** 651 * googleéªè¯å ¬å ±æ¹æ³,ä½¿ç¨æ¹æ³ 652 * ç¬¬ä¸æ¥ï¼å¨domä¸å å ¥ï¼<div id="grc" class="g-recaptcha" data-size="invisible" style="display: none"></div> 653 * ç¬¬äºæ¥ï¼å¼å ¥google apiï¼
vendor: 117 bytes, lines 653-654
653<script src="https://www.google.com/recaptcha/api.js?onload=captchaCallback&render=explicit" async defer></script> 654
654* ç¬¬ä¸æ¥ï¼å¼å ¥æ¬jsæä»¶ 655 * ç¬¬åæ¥ï¼è°ç¨addTarget æ·»å éªè¯ç®æ 656 * ç¬¬äºæ¥ï¼è°ç¨submit 触åéªè¯ 657 */ 658 659window.gcIdSitekey = ""; 660if(document.domain == "www.scrapbooking-software.com" || document.domain == "www.designcap.com"){ 661 //window.gcIdSitekey = "6LekquIqAAAAAHoMJQ1Aw2CkTR2RsajOTE_IPxvY"; 662 window.gcIdSitekey = "6LemAAcrAAAAADNUyN8QACBi2GtQMOFgiuBsLb2v"; 663}else if(document.domain == "www.photoframemaster.com" || document.domain == "www.designevo.com"){ 664 window.gcIdSitekey = "6LeKzqQUAAAAAEJ6PafM6cSZhhN8ghYC0MRvJpyT"; 665}else{ 666 console.log("not set site key"); 667} 668 669//googleéªè¯ç åè° 670window.captchaCallback = function() { 671 window.getGoogleRecaptchaId = function () { 672 if(window.gcId == undefined){ 673 window.gcId = grecaptcha.render('grc', { 674 'sitekey' : window.gcIdSitekey, 675 'callback' : (captcha) => { 676 googleRecaptcha.gcAjax(captcha); 677 }, 678 'expired-callback':()=>{ 679 //console.log("Error call back1."); 680 }, 681 'error-callback':()=>{ 682 //console.log("Error call back1."); 683 }, 684 }); 685 } 686 return window.gcId; 687 } 688}; 689 690// å è½½googleéªè¯ç 691window.loadGoogleRecaptchaSDK = function() 692{ 693 (function (d, s, id) { 694 var js, 695 fjs = d.getElementsByTagName(s)[0]; 696 if (d.getElementById(id)) { 697 return; 698 } 699 js = d.createElement(s); 700 js.id = id; 701 js.async = 'async'; 702 js.defer = 'defer'; 703 js.src = "https://www.google.com/recaptcha/api.js?onload=captchaCallback&render=explicit"; 704 fjs.parentNode.insertBefore(js, fjs); 705 706 if (js.addEventListener) { 707 js.addEventListener('load', function () { 708 window.googleRecaptcha.loaded = true; 709 }, false); 710 } else if (js.attachEvent) { 711 js.attachEvent('onreadystatechange', function () { 712 var target = window.event.srcElement; 713 if (target.readyState == 'loaded') { 714 window.googleRecaptcha.loaded = true; 715 } 716 }); 717 } 718 })(document, 'script', 'google-recaptcha-jssdk'); 719} 720 721//googleéªè¯å¯¹è±¡ 722window.googleRecaptcha = { 723 // éè¦æäº¤çæ°æ® 724 post_data : {}, 725 // å½åéªè¯å®æåï¼éè¦æ§è¡çç®æ 726 target: null, 727 // éªè¯çç®æ æ°ç» 728 targets: [], 729 //æ¯å¦éè¦ç»å½éªè¯ï¼é»è®¤ä¸éè¦ 730 needLoginRecaptcha:false, 731 732 loaded:false, 733 734 // æ·»å éªè¯ç®æ 735 addTarget: function(name, func, callback=null) 736 { 737 target = { 738 name: name, 739 func: func, 740 callback: callback 741 }; 742 743 for(i=0;i<this.targets.length;i++){ 744 temp_target = this.targets[i]; 745 if( JSON.stringify(temp_target) == JSON.stringify(target)){ 746 return; 747 } 748 } 749 750 this.targets.push(target); 751 }, 752 753 // googleéªè¯åè° 754 gcAjax : function (captcha) { 755 this.post_data['recaptcha'] = captcha; 756 if(window.csrf_token){ 757 this.post_data[window.csrf_token] = 1; 758 } 759 this.post_data["rt"] = "gl"; 760 // googleéªè¯æååï¼æ§è¡å¯¹åºçç®æ 彿° 761 this.targets.forEach((target) => { 762 if(target.name == this.target) 763 { 764 target.func(this.post_data, (result) => { 765 this.reset(); 766 if(target.callback) 767 target.callback(...arguments); 768 }); 769 } 770 }); 771 }, 772 773 // éç½®googleéªè¯ç 774 reset: function() 775 { 776 this.target = null; 777 if((typeof window.grecaptcha !== "undefined") && window.grecaptcha && (typeof gcId !== "undefined")) { 778 grecaptcha.reset(window.gcId); 779 }; 780 }, 781 782 // æäº¤è¯·æ±æ¹æ³ 783 submit:function (post_data, target) { 784 if(window.getGoogleRecaptchaId) { 785 this.post_data = post_data; 786 this.target = target; 787 788 var gcId = window.getGoogleRecaptchaId(); 789 grecaptcha.execute(gcId); 790 } 791 else { 792 setTimeout((post_data, target) => { 793 this.submit(post_data, target); 794 }, 100); 795 } 796 } 797} 798 799 800 801window.TCRloadCallback = function () { 802 window.TCcaptcha = new TencentCaptcha('2080394949', function (res) { 803 tencentRecaptcha.gcAjax(res); 804 });
805}; 806 807// å è½½tencentéªè¯ç 808window.loadTencentRecaptchaSDK = function() 809{ 810 (function (d, s, id) { 811 var js, 812 fjs = d.getElementsByTagName(s)[0]; 813 if (d.getElementById(id)) { 814 return; 815 } 816 js = d.createElement(s); 817 js.id = id; 818 js.async = 'async'; 819 js.defer = 'defer'; 820 js.src = "https://ssl.captcha.qq.com/TCaptcha.js"; 821 fjs.parentNode.insertBefore(js, fjs); 822 823 if (js.addEventListener) { 824 js.addEventListener('load', function () { 825 window.tencentRecaptcha.loaded = true; 826 window.TCRloadCallback(); 827 }, false); 828 } else if (js.attachEvent) { 829 js.attachEvent('onreadystatechange', function () { 830 var target = window.event.srcElement; 831 if (target.readyState == 'loaded') { 832 window.tencentRecaptcha.loaded = true; 833 window.TCRloadCallback(); 834 } 835 }); 836 } 837 838 })(document, 'script', 'tencent-recaptcha-jssdk'); 839}; 840 841//tencentéªè¯å¯¹è±¡ 842window.tencentRecaptcha = { 843 // éè¦æäº¤çæ°æ® 844 post_data : {}, 845 // å½åéªè¯å®æåï¼éè¦æ§è¡çç®æ 846 target: null, 847 // éªè¯çç®æ æ°ç» 848 targets: [], 849 //æ¯å¦éè¦ç»å½éªè¯ï¼é»è®¤ä¸éè¦ 850 loaded:false, 851 852 // æ·»å éªè¯ç®æ 853 addTarget: function(name, func, callback=null) 854 { 855 target = { 856 name: name, 857 func: func, 858 callback: callback 859 }; 860 861 for(i=0;i<this.targets.length;i++){ 862 temp_target = this.targets[i]; 863 if( JSON.stringify(temp_target) == JSON.stringify(target)){ 864 return; 865 } 866 } 867 868 this.targets.push(target); 869 }, 870 //è ¾è®¯éªè¯åè° 871 gcAjax : function (res) { 872 // resï¼ç¨æ·ä¸»å¨å ³ééªè¯ç ï¼= {ret: 2, ticket: null} 873 // resï¼éªè¯æåï¼ = {ret: 0, ticket: "String", randstr: "String"} 874 if(res.ret === 0){ 875 this.post_data['recaptcha'] = res.ticket; 876 if(window.csrf_token){ 877 this.post_data[window.csrf_token] = 1; 878 } 879 this.post_data["rt"] = "tc"; 880 this.post_data["randstr"] = res.randstr; 881 this.targets.forEach((target) => { 882 if(target.name == this.target) 883 { 884 target.func(this.post_data, (result) => { 885 if(target.callback) 886 target.callback(...arguments); 887 }); 888 } 889 }); 890 }else if(res.ret === 2){ 891 //console.log("close box"); 892 if(window.tcRecaptchaCloseCallback){ 893 window.tcRecaptchaCloseCallback(); 894 } 895 } 896 }, 897 // æäº¤è¯·æ±æ¹æ³ 898 submit:function (post_data, target) { 899 this.post_data = post_data; 900 this.target = target; 901 window.TCcaptcha.show(); 902 } 903} 904 905 906 907/** 908 * Created by Administrator on 2019/11/5. 909 */ 910 911$(document).on("click",".ga_ab_button",function () { 912 var parameter01 = $(this).attr("ga-parameter01"); 913 var parameter02 = $(this).attr("ga-parameter02"); 914 var parameter03 = $(this).attr("ga-parameter03"); 915 916 if(window.gaEvent){ 917 gaEvent(parameter01,parameter02,parameter03); 918 //console.log('gaEvent(' + parameter01 +',' + parameter02 +',' + parameter03 + ')'); 919 } 920 921}); 922Vue.component('fj-loading', { 923 template: ` 924 <div class="loader-inner ball-pulse"> 925 <div></div> 926 <div></div> 927 <div></div> 928 </div> 929 ` 930}); 931Vue.component('fj-login-remember', { 932 template: ` 933 <div class="fj-login-remember"> 934 <div :class="checkClass" @click="toggleCheck"> 935 <div class="fj-check-box"><img v-show="this.isRemember" src="/media/login/images/check.svg"></div> 936 <div class="fj-check-label">{{loginLanguage.rememberMe}}</div> 937 </div> 938 <a href="/reset-request.html" target="_blank" class="fj-login-forgot-password">{{loginLanguage.forgotPassword}}</a> 939 </div> 940 `, 941 data: function () { 942 return { 943 isRemember: false, 944 } 945 }, 946 props: { 947 loginLanguage: Object, 948 }, 949 computed: { 950 checkClass: function () { 951 return this.isRemember ? 'fj-login-remember-check fj-checked' : 'fj-login-remember-check'; 952 }, 953 }, 954 methods: { 955 getValue: function () { 956 return this.isRemember; 957 }, 958 setValue: function (state) { 959 this.isRemember = state; 960 }, 961 toggleCheck: function () { 962 this.isRemember = !this.isRemember; 963 }, 964 } 965}); 966Vue.component('fj-third-button', { 967 template: ` 968 <fj-button :onClick="onClick" className="fj-third-button" :icon="icon" :text="text" t
968ype="default" :class="btn_class" :isLoading="isLoading" :isLoadingThird="isLoadingThird"> 969 <template v-slot:icon> 970 <slot name="icon"></slot> 971 </template> 972 </div> 973 </fj-button> 974 `, 975 props: { 976 icon: String, 977 text: String, 978 onClick: Function, 979 btn_class: String, 980 isLoading: Boolean 981 }, 982 data: function () { 983 return { 984 isLoadingThird: true, 985 }; 986 }, 987}); 988Vue.component('fj-bar', { 989 template: ` 990 <i :class="classObject"/> 991 `, 992 props: { 993 type: { 994 type: String, 995 default: 'horizontal' 996 }, 997 }, 998 computed: { 999 classObject: function () { 1000 return { 1001 'fj-bar': true, 1002 'fj-bar-horizontal': this.type === 'horizontal', 1003 'fj-bar-vertical': this.type === 'vertical', 1004 } 1005 } 1006 } 1007}); 1008Vue.component('fj-input', { 1009 template: ` 1010 <div class="fj-login-input"> 1011 <slot name="icon"></slot> 1012 <input v-model="value" :placeholder="placeholder" :type="inputType" @keyup="change" @keyup.enter="keyupEnter" /> 1013 <div class="fj-login-input-border"></div> 1014 <span v-show="this.isErr" class="fj-login-input-err">{{errText}}</span> 1015 </div> 1016 `, 1017 props: { 1018 placeholder: String, 1019 inputType:String, 1020 change:Function, 1021 keyupEnter:Function, 1022 }, 1023 data: function () { 1024 return { 1025 isErr: false, 1026 errText: '', 1027 value: '', 1028 }; 1029 }, 1030 methods: { 1031 getValue: function () { 1032 return this.value; 1033 }, 1034 setValue: function (value) { 1035 this.value = value; 1036 }, 1037 updateErr:function (value) { 1038 this.errText = value; 1039 }, 1040 showErr: function () { 1041 this.isErr = true; 1042 }, 1043 hideErr: function () { 1044 this.isErr = false; 1045 }, 1046 } 1047}); 1048Vue.component('fj-button', { 1049 template: ` 1050 <button @click="onDataChange" :style="style" :class="buttonClass"> 1051 <div v-show="!this.isLoading"> 1052 <template> 1053 <slot name="icon"></slot> 1054 <span class="fj-third-text">{{text}}</span> 1055 </template> 1056 </div> 1057 <fj-loading v-show="this.isLoading" /> 1058 </button> 1059 `, 1060 data: function () { 1061 }, 1062 props: { 1063 icon: String, 1064 text: String, 1065 style: Object, 1066 type: { 1067 type: String, 1068 default: 'primary', 1069 }, 1070 className: { 1071 type: String, 1072 default: '', 1073 }, 1074 onClick: Function, 1075 isLoading:Boolean, 1076 isLoadingThird:Boolean, 1077 1078 }, 1079 computed: { 1080 buttonClass: function () { 1081 return { 1082 'fj-button': true, 1083 'fj-button_primary': this.type === 'primary', 1084 'fj-button_default': this.type === 'default', 1085 'fj-button_warning': this.type === 'warning', 1086 'fj_button_loading': this.isLoading, 1087 'fj_loading_third': this.isLoadingThird, 1088 [this.className]: this.className, 1089 } 1090 } 1091 }, 1092 methods: { 1093 onDataChange: function (e) { 1094 // if (this.onClick && !this.isLoading) { 1095 // this.isLoading = true; 1096 // this.onClick(() => { 1097 // this.isLoading = false; 1098 // }); 1099 // } 1100 if (this.onClick) { 1101 this.onClick(e); 1102 } 1103 }, 1104 } 1105}); 1106Vue.component('fj-box-button', { 1107 template: ` 1108 <div @click="onClick" class="fj-box-button" :class="className"> 1109 <span>{{text}}</span> 1110 </div> 1111 `, 1112 props: { 1113 onClick: Function, 1114 text: String, 1115 type: String, 1116 className: String 1117 } 1118}); 1119Vue.component('fj-email-input', { 1120 template: ` 1121 <fj-input ref="input" :placeholder="inputLanguage" :inputType="emailType" :change="change" :keyupEnter="keyupEnter"> 1122 <template v-slot:icon> 1123 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="24px" height="24px"
1124 viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve"> 1125 <path fill="#C8C8C8" d="M22,6.322c-0.001-0.133-0.035-0.265-0.059-0.397c-0.002-0.009-0.002-0.019-0.004-0.028 1126 c-0.055-0.288-0.143-0.571-0.305-0.815c-0.18-0.272-0.433-0.501-0.714-0.683c-0.029-0.019-0.058-0.039-0.087-0.057 1127 c-0.058-0.033-0.105-0.082-0.166-0.109c-0.054-0.023-0.109-0.034-0.163-0.054c-0.049-0.02-0.101-0.033-0.151-0.05 1128 c-0.084-0.026-0.168-0.055-0.254-0.073c-0.151-0.032-0.308-0.051-0.467-0.054C19.624,4.002,19.618,4,19.611,4h-0.004h-0.074h-0.398 1129 h-0.719h-0.41H16.38h-0.085H14.4h-0.822h-1.327h-1.602h-0.566H8.056H7.892h-1.56H5.717H5.068H4.505H4.428 1130 C4.247,4,4.064,4.021,3.886,4.057C3.862,4.062,3.837,4.059,3.813,4.064C3.794,4.068,3.778,4.08,3.76,4.084 1131 C3.735,4.091,3.709,4.092,3.685,4.1C3.609,4.124,3.542,4.163,3.47,4.194C2.763,4.477,2.185,5.109,2.052,5.839 1132 c-0.03,0.169-0.045,0.337-0.044,0.506C2.007,6.373,2,6.399,2,6.427v0.254v1.13V9.56v2.088v2.172v1.992v1.551v0.846 1133 c0,0.197,0.013,0.396,0.075,0.583c0.241,0.71,0.875,1.198,1.635,1.207c0.141,0.002,0.279,0,0.42,0h1.041h1.53h1.891h2.1h2.181h2.126 1134 h1.938h1.61H19.7h0.559c0.349,0,0.716-0.092,0.992-0.304c0.347-0.258,0.632-0.609,0.707-1.045C21.98,18.525,22,18.398,22,18.271 1135 c0.002-0.229,0-0.451,0-0.676v-1.435V14.24v-2.156V9.959V8.127V6.85V6.389c0-0.011-0.007-0.022-0.007-0.034S22,6.334,22,6.322z 1136 M12.457,13.176c-0.063,0.043-0.131,0.078-0.2,0.112c-0.057,0.019-0.114,0.034-0.172,0.047c-0.056,0.003-0.112,0.003-0.168,0 1137 c-0.061-0.013-0.12-0.029-0.179-0.048c-0.062-0.031-0.124-0.063-0.183-0.103c-0.24-0.192-0.472-0.395-0.707-0.589 1138 c-0.615-0.517-1.229-1.033-1.846-1.549c-0.749-0.628-1.496-1.253-2.245-1.88C6.124,8.637,5.49,8.104,4.856,7.574 1139 C4.567,7.331,4.274,7.091,3.988,6.846C3.936,6.802,3.892,6.751,3.846,6.701c-0.03-0.043-0.057-0.088-0.082-0.134 1140 c-0.019-0.056-0.035-0.112-0.047-0.17c-0.001-0.037,0-0.073,0.001-0.11C3.73,6.232,3.746,6.178,3.764,6.124 1141 C3.793,6.067,3.825,6.012,3.86,5.959c0.036-0.04,0.074-0.077,0.113-0.113c0.046-0.03,0.094-0.058,0.143-0.083 1142 C4.172,5.745,4.229,5.73,4.288,5.718C4.44,5.709,4.595,5.706,4.746,5.706h1.095h1.647H9.5h2.22h2.241h2.084h1.754h1.24H19.6 1143 c0.029,0,0.058,0.004,0.086,0.006c0.063,0.012,0.125,0.03,0.187,0.049c0.05,0.026,0.099,0.054,0.146,0.084 1144 c0.038,0.035,0.075,0.072,0.11,0.11c0.034,0.052,0.066,0.107,0.095,0.163c0.023,0.07,0.045,0.14,0.059,0.212 1145 c0,0.014,0.002,0.028,0.002,0.042c-0.014,0.065-0.032,0.129-0.053,0.193c-0.023,0.042-0.049,0.083-0.075,0.124 1146 c-0.096,0.103-0.197,0.199-0.307,0.29c-0.178,0.149-0.354,0.298-0.535,0.447c-0.604,0.507-1.207,1.013-1.812,1.521 1147 c-0.747,0.625-1.496,1.253-2.243,1.879c-0.643,0.539-1.285,1.079-1.93,1.618C13.037,12.689,12.748,12.933,12.457,13.176z 1148 M18.674,18.289H16.88h-2.188h-2.396H9.872H7.616h-1.91H4.35H3.741C3.73,18.286,3.72,18.283,3.709,18.28 1149 c0-0.001,0-0.002-0.001-0.003c-0.003-0.096-0.006-0.191-0.006-0.285v-0.866V14.24v-3.472V8.789c0.292,0.244,0.584,0.489,0.876,0.733 1150 c0.71,0.595,1.421,1.191,2.132,1.786c0.7,0.586,1.4,1.175,2.103,1.76c0.459,0.387,0.917,0.77,1.376,1.154 1151 c0.07,0.059,0.139,0.115,0.209,0.174c0.213,0.177,0.42,0.309,0.674,0.414c0.26,0.104,0.504,0.155,0.788,0.184 1152 c0.241,0.02,0.493-0.012,0.726-0.066c0.229-0.055,0.459-0.148,0.659-0.271c0.371-0.23,0.702-0.554,1.032-0.831 1153 c0.592-0.495,1.184-0.992,1.771-1.487c0.733-0.615,1.471-1.23,2.202-1.846c0.646-0.541,1.289-1.082,1.937-1.622 1154 c0.033-0.027,0.064-0.055,0.098-0.082v1.663v3.462v2.963c0,0.46,0.002,0.92,0,1.38c-0.002,0.008-0.005,0.016-0.007,0.023 1155 c-0.002,0-0.004,0.001-0.006,0.001c-0.135,0.007-0.271,0.008-0.403,0.008H18.674z"/> 1156 </svg> 1157 </template> 1158 </fj-input> 1159 `, 1160 data: function () { 1161 return { 1162 emailType:'email', 1163 }; 1164 }, 1165 props:{ 1166 change:Function, 1167 keyupEnter:Function, 1168 inputLanguage:String, 1169 isInFotoJetUpgradeWrapper:Boolean 1170 }, 1171 methods: { 1172 getValue: function () { 1173 return this.$refs.input.getValue(); 1174 }, 1175 setValue: function (val) { 1176 return this.$refs.input.setValue(val); 1177 }, 1178 setErr: function (value) { 1179 this.$refs.input.updateErr(value); 1180 this.$refs.input.showErr(); 1181 }, 1182 reset: function () { 1183 this.$refs.input.setValue(''); 1184 this.$refs.input.updateErr(''); 1185 this.$refs.input.hideErr(); 1186 }, 1187 } 1188}); 1189Vue.component('fj-password-input', { 1190 template: ` 1191 <fj-input ref="input" :placeholder="loginLanguage.password" :inputType="passwordType" :change="change" :keyupEnter="keyupEnter"> 1192 <template v-slot:icon> 1193 <svg version="1.1" 1194 xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="24px" height="24px" 1195 viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve"> 1196 <g id="Logoin-" transform="translate(-467.000000, -406.000000)"> 1197 <g id="password" transform="translate(467.000000, 406.000000)">
1198 <path id="Shape" fill="#C2C2C2" d="M12,13c-0.468,0-1,0.45-1,0.999v1.999C11,16.55,11.532,17,12,17s1-0.45,1-1.002v-1.999 1199 C13,13.45,12.468,13,12,13z"/> 1200 <path id="Shape_1_" fill="#C2C2C2" d="M18.566,6.11C17.979,3.18,15.514,1,12.604,1C9.71,1,7.296,3.124,6.662,6.072 1201 C5.032,6.339,4,7.813,4,9.601v8.813C4,20.393,5.254,22,7.189,22H12.5h5.311C19.746,22,21,20.393,21,18.416V9.601 1202 C21,7.896,20.064,6.472,18.566,6.11z M12.994,3C14.842,3,16.42,4.254,17,6h-4.113H9C9.601,4.233,11.152,3,12.994,3z M19,18.514 1203 C19,19.334,18.693,20,17.914,20H12.5H7.085C6.306,20,6,19.334,6,18.514V9.488C6,8.667,6.306,8,7.085,8H12.5h5.414 1204 C18.693,8,19,8.667,19,9.488V18.514z"/> 1205 </g> 1206 </g> 1207</svg> 1208 </template> 1209 </fj-input> 1210 `, 1211 data: function () { 1212 return { 1213 passwordType:'password', 1214 }; 1215 }, 1216 props: { 1217 change:Function, 1218 keyupEnter:Function, 1219 }, 1220 methods: { 1221 getValue: function () { 1222 return this.$refs.input.getValue(); 1223 }, 1224 setValue: function (val) { 1225 return this.$refs.input.setValue(val); 1226 }, 1227 setErr: function (value) { 1228 this.$refs.input.updateErr(value); 1229 this.$refs.input.showErr(); 1230 }, 1231 reset: function () { 1232 this.$refs.input.setValue(''); 1233 this.$refs.input.updateErr(''); 1234 this.$refs.input.hideErr(); 1235 }, 1236 } 1237}); 1238 1239Vue.component('fj-user-info', { 1240 template: ` 1241 <div id="logged" class=""> 1242 <div class="userGroup user-avatar dropdown"> 1243 <button id="btUser" class="fj-user" type="button" 1244 data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" @click="toggleMenu"> 1245 <div> 1246 </div> 1247 <img id="imgAvatarThumb" :src="userInfo.img"> 1248 <span class="fj-username"> 1249 <nobr id="user_name"> 1250 {{userInfo.name}} 1251 </nobr> 1252 </span> 1253 </button> 1254 <transition name="drop"> 1255 <ul id="fj-profile-drop-menu" class="fj-profile-drop-menu dropdown-menu animated" role="menu" v-show="isOpen"> 1256 <div class="fj-profile-userinfo"> 1257 <div class="user-img"><img :src="userInfo.img"></div> 1258 <div class="user-policy-wrapper"> 1259 <div class="user-name">{{userInfo.email}}</div> 1260 <div class="user-policy policy-upgrade" v-if="userInfo.policy === 'free'" @click="upgrade">{{loginLanguage.upgrade}}</div> 1261 <div class="user-policy policy-info" v-if="userInfo.policy === 'basic'" @click="billing">{{loginLanguage.policyBasic}}</div> 1262 <div class="user-policy policy-info" v-if="userInfo.policy === 'plus'" @click="billing">{{loginLanguage.policyPlus}}</div> 1263 </div> 1264 </div> 1265 <div class="fj-profile-border"></div> 1266 <li> 1267 <a id="myDesigns" @click="myDesigns"> 1268 {{loginLanguage.myDesigns}} 1269 </a> 1270 </li> 1271 <li> 1272 <a id="myProfile" target="_self" ref="nofollw" href="/profile.html"> 1273 {{loginLanguage.myAccount}} 1274 </a> 1275 </li> 1276 <li> 1277 <a id="logout" @click="userLogout"> 1278 {{loginLanguage.signOut}} 1279 </a> 1280 </li> 1281 </ul> 1282 </transition> 1283 </div> 1284 </div> 1285 `, 1286 props: { 1287 userInfo: Object, 1288 hasLogin: Boolean, 1289 loginLanguage: Object, 1290 }, 1291 data: function () { 1292 return { 1293 isOpen: false, 1294 }; 1295 }, 1296 methods: { 1297 toggleMenu:function () { 1298 this.isOpen = !this.isOpen; 1299 }, 1300 userLogout: function () { 1301 window.fjuser.logoutPost((json) => { 1302 if(json.code === 200){ 1303 this.$parent.userLogedout(); 1304 } 1305 }); 1306 }, 1307 upgrade:function () { 1308 if(window.openSubscription){ 1309 window.openSubscription("profile"); 1310 } 1311 }, 1312 billing:function () { 1313 window.open("/profile.html?page=billing",'_blank'); 1314 }, 1315 myDesigns:function () { 1316 //鲿¢ç½ç»è¿æ ¢çæ¶å页é¢è·³è½¬ä¾ç¶æ¾ç¤ºç¨æ·å¤´åçé®é¢ 1317 //$("#logged").hide(); 1318 localStorage.setItem("isDefaultProjectPage",true); 1319 1320 var hasLangTag = window.language_tag?true:false; 1321 if(hasLangTag && "en" != window.language_tag){ 1322 //location.href = "/" + window.language_tag +"/app/"; 1323 window.open("/" + window.language_tag +"/app/","_blank"); 1324 }else{ 1325 //location.href = "/app/"; 1326 window.open("/app/","_blank"); 1327 } 1328 1329 1330 /*if(window.language_tag && "en" != window.language_tag){ 1331 location.href = "/" + window.language_tag + "/app/"; 1332 }else{ 1333 location.href = "/app/"; 1334 }*/ 1335 1336 } 1337 }, 1338 created:function () { 1339 //æ·»å ç¹å»æé®ç§»é¤äºä»¶ 1340 document.addEventListener('click', (e)=> { 1341 if(this.isOpen === true){ 1342 dom = e.target;
1343 className01 = $(dom).attr("class"); 1344 className02 = $(dom).parent().attr("class"); 1345 className03 = $(dom).parent().parent().attr("class"); 1346 if(className01 !== "fj-user" && className02 !== "fj-user" && className03 !== "fj-user"){ 1347 this.isOpen = false; 1348 } 1349 } 1350 }); 1351 1352 //ç»å®keydownäºä»¶ 1353 var _this = this; 1354 $(document).keydown(function(e){ 1355 var code = e.which || e.keyCode; 1356 1357 if(27 === code ){ 1358 _this.isOpen = false; 1359 } 1360 }); 1361 1362 } 1363}); 1364 1365Vue.component('fj-user-container', { 1366 template: ` 1367 <div class="fj-user-container"> 1368 <fj-box-button :text="loginLanguage.login" :onClick="showSignIn" v-if="!hasLogin" :className="'fj-btn-signin'" /> 1369 <fj-box-button :text="loginLanguage.signUpFree" :onClick="showSignUp" v-if="!hasLogin" :className="'fj-btn-signup'" /> 1370 <fj-user-info v-if="hasLogin" :userInfo="userInfo" :hasLogin="hasLogin" :loginLanguage="loginLanguage" /> 1371 </div> 1372 `, 1373 props: { 1374 loginLanguage: Object, 1375 hasLogin: Boolean, 1376 setPanelMode: Function, 1377 userInfo: Object, 1378 }, 1379 methods: { 1380 showSignUp: function () { 1381 this.setPanelMode(false); 1382 }, 1383 showSignIn: function () { 1384 this.setPanelMode(true); 1385 }, 1386 userLogedout:function () { 1387 this.hasLogin = false; 1388 this.userInfo = {}; 1389 } 1390 }, 1391}); 1392Vue.component('fj-login-panel', { 1393 template: ` 1394 <div class="fj-login-panel"> 1395 <div class="fj-login-head"> 1396 <div class="fj-login-head__title">{{headTitle}}</div> 1397 <div class="fj-login-head__desc"> 1398 <span>{{headDesc}}</span> 1399 <span @click="togglePanel" class="fj-login-head__desc-sign">{{headToggleTitle}}</span> 1400 </div> 1401 </div> 1402 <fj-bar /> 1403 <fj-third-button :onClick="facebookSubmit" :text="facebookText" :isLoading="isLoadingFB"> 1404 <template v-slot:icon> 1405 <svg class="fl-facebook-icon" version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" 1406 width="32px" height="32px" viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve"> 1407<path fill="#3B5997" d="M21.643,2.176h-3.31c0,0-5.299-0.973-5.299,5.346c0,1.359,0,4.207,0,4.207H9.561l0.015,3.583h3.159 1408 l0.004,15.522h3.875V15.311h4.751l0.894-3.583h-5.645V7.395c0,0,0.535-1.637,2.352-1.637h2.662L21.643,2.176L21.643,2.176z"/> 1409</svg> 1410 </template> 1411 </fj-third-button> 1412 <fj-third-button :onClick="googleSubmit" :text="googleText" :btn_class="'fj-login-gl-btn'" :isLoading="isLoadingGL"> 1413 <template v-slot:icon> 1414 <svg class="fl-google-icon" version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" 1415 width="32px" height="32px" viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve"> 1416<g> 1417 <g> 1418 <g> 1419 <g> 1420 <defs> 1421 <path id="LOGOIN_SVG_SVGID_1_" d="M27.59,13.673H16.408v4.636h6.436c-0.6,2.944-3.107,4.637-6.436,4.637c-3.926,0-7.09-3.161-7.09-7.09 1422 s3.164-7.09,7.09-7.09c1.691,0,3.218,0.6,4.418,1.582l3.49-3.491c-2.127-1.854-4.854-3-7.909-3c-6.655,0-12,5.346-12,12 1423 c0,6.654,5.345,12,12,12c6,0,11.456-4.362,11.456-12C27.863,15.146,27.754,14.382,27.59,13.673z"/> 1424 </defs> 1425 <clipPath id="LOGOIN_SVG_SVGID_2_"> 1426 <use xlink:href="#LOGOIN_SVG_SVGID_1_" overflow="visible"/> 1427 </clipPath> 1428 <path clip-path="url(#LOGOIN_SVG_SVGID_2_)" fill="#FBBC05" d="M3.317,22.945V8.764l9.273,7.089L3.317,22.945z"/> 1429 </g> 1430 </g> 1431 </g> 1432 <g> 1433 <g> 1434 <g> 1435 <defs> 1436 <path id="LOGOIN_SVG_SVGID_3_" d="M27.59,13.673H16.408v4.636h6.436c-0.6,2.944-3.107,4.637-6.436,4.637c-3.926,0-7.09-3.161-7.09-7.09 1437 s3.164-7.09,7.09-7.09c1.691,0,3.218,0.6,4.418,1.582l3.49-3.491c-2.127-1.854-4.854-3-7.909-3c-6.655,0-12,5.346-12,12 1438 c0,6.654,5.345,12,12,12c6,0,11.456-4.362,11.456-12C27.863,15.146,27.754,14.382,27.59,13.673z"/> 1439 </defs> 1440 <clipPath id="LOGOIN_SVG_SVGID_4_"> 1441 <use xlink:href="#LOGOIN_SVG_SVGID_3_" overflow="visible"/> 1442 </clipPath> 1443 <path clip-path="url(#LOGOIN_SVG_SVGID_4_)" fill="#EA4335" d="M3.317,8.764l9.273,7.089l3.818-3.326L29.499,10.4V2.764H3.317V8.764z"/> 1444 </g> 1445 </g> 1446 </g> 1447 <g> 1448 <g> 1449 <g> 1450 <defs> 1451 <path id="LOGOIN_SVG_SVGID_5_" d="M27.59,13.673H16.408v4.636h6.436c-0.6,2.944-3.107,4.637-6.436,4.637c-3.926,0-7.09-3.161-7.09-7.09 1452 s3.164-7.09,7.09-7.09c1.691,0,3.218,0.6,4.418,1.582l3.49-3.491c-2.127-1.854-4.854-3-7.909-3c-6.655,0-12,5.346-12,12 1453 c0,6.654,5.345,12,12,12c6,0,11.456-4.362,11.456-12C27.863,15.146,27.754,14.382,27.59,13.673z"/> 1454 </defs> 1455 <clipPath id="LOGOIN_SVG_SVGID_6_"> 1456 <use xlink:href="#LOGOIN_SVG_SVGID_5_" overflow="visible"/> 1457 </clipPath> 1458 <path clip-path="url(#LOGOIN_SVG_SVGID_6_)" fill="#34A853" d="M3.317,22.945L19.682,10.4l4.311,0.546L29.5,2.763v26.182H3.317V22.945z"/> 1459 </g> 1460 </g> 1461 </g> 1462 <g> 1463 <g> 1464 <g> 1465 <defs> 1466 <path id="LOGOIN_SVG_SVGID_7_" d="M27.59,13.673H16.408v4.636h6.436c-0.6,2.944-3.107,4.637-6.436,4.637c-3.926,0-7.09-3.161-7.09-7.09 1467 s3.164-7.09,7.09-7.09c1.691,0,3.218,0.6,4.418,1.582l3.49-3.491c-2.127-1.854-4.854-3-7.909-3c-6.655,0-12,5.346-12,12 1468 c0,6.654,5.345,12,12,12c6,0,11.456-4.362,11.456-12C27.863,15.146,27.754,14.382,27.59,13.673z"/> 1469 </defs> 1470 <clipPath id="LOGOIN_SVG_SVGID_8_"> 1471 <use xlink:href="#LOGOIN_SVG_SVGID_7_" overflow="visible"/> 1472 </clipPath> 1473 <path clip-path="url(#LOGOIN_SVG_SVGID_8_)" fill="#4285F4" d="M29.499,28.945L12.59,15.854l-2.182-1.636l19.091-5.455V28.945z"/> 1474 </g> 1475 </g> 1476 </g> 1477</g> 1478</svg> 1479 </template> 1480 </fj-third-button> 1481 <div class="fj-or"> 1482 <i />
1483 <span class="fj-or-text">{{loginLanguage.or}}</span> 1484 <i /> 1485 </div> 1486 <div v-show="!isLoginMode" class="fj-sign-inputs" > 1487 <fj-email-input ref="emailSignInput" :inputLanguage="loginLanguage.email" :change="checkInput" :keyupEnter="submitNull" /> 1488 <fj-email-input ref="emailSignConfirmInput" :inputLanguage="loginLanguage.emailConfirm" :change="checkInput" :keyupEnter="submitNull" /> 1489 <fj-password-input ref="passwordSignInput" :loginLanguage="loginLanguage" :change="checkInput" :keyupEnter="submit" /> 1490 </div> 1491 <div v-show="isLoginMode" class="fj-login-inputs"> 1492 <fj-email-input ref="emailLoginInput" :inputLanguage="loginLanguage.email" :change="checkInput" :keyupEnter="submitNull" /> 1493 <fj-password-input ref="passwordLoginInput" :loginLanguage="loginLanguage" :change="checkInput" :keyupEnter="submit" /> 1494 </div> 1495 <fj-login-remember ref="loginRemember" v-show="isLoginMode" :loginLanguage="loginLanguage"/> 1496 <div class="joms-input--append designevo-login-input-append" style="display: none"> 1497 <div id="grc" class="g-recaptcha" data-size="invisible"></div> 1498 </div> 1499 1500 <fj-button :onClick="submit" :style="submitStyle" type="primary" :text="submitText" :isLoading="isLoading" /> 1501 <div class="fj-login-policy"> 1502 <span>{{isLoginMode ? loginLanguage.loginPolicy : loginLanguage.signPolicy}}</span> 1503 <a href="/terms.html" target="_blank">{{loginLanguage.terms}}</a> 1504 <span>{{loginLanguage.and}}</span> 1505 <a href="/privacy.html" target="_blank">{{loginLanguage.privacyPolicy}}</a> 1506 </div> 1507 </div> 1508 `, 1509 props: { 1510 loginLanguage: Object, 1511 isLoginMode: Boolean, 1512 hideLoginPanel: Function, 1513 showLoginPanel: Function, 1514 setPanelMode:Function, 1515 userLogined: Function, 1516 1517 }, 1518 data: function () { 1519 return { 1520 isLoading: false, 1521 isLoadingFB:false, 1522 isLoadingGL:false, 1523 isFirstSignIn:true, 1524 isFirstSignUp:true, 1525 }; 1526 }, 1527 computed: { 1528 headTitle: function () { 1529 let {signUp, login} = this.loginLanguage; 1530 return this.isLoginMode ? login : signUp; 1531 }, 1532 headToggleTitle: function () { 1533 let {signUp, login} = this.loginLanguage; 1534 return this.isLoginMode ? signUp : login; 1535 }, 1536 headDesc: function () { 1537 let {haveAccount, noAccount} = this.loginLanguage; 1538 return this.isLoginMode ? noAccount : haveAccount; 1539 }, 1540 googleText: function () { 1541 let {googleSignUp, googleLogin} = this.loginLanguage; 1542 return this.isLoginMode ? googleLogin : googleSignUp; 1543 }, 1544 facebookText: function () { 1545 let {facebookSignUp, facebookLogin} = this.loginLanguage; 1546 return this.isLoginMode ? facebookLogin : facebookSignUp; 1547 }, 1548 submitText: function () { 1549 let {signUp, login} = this.loginLanguage; 1550 return this.isLoginMode ? login : signUp; 1551 }, 1552 loadingText:function () { 1553 return "Loading..."; 1554 }, 1555 submitStyle: function () { 1556 return { 1557 display: 'block', 1558 margin: 'auto', 1559 'min-width': '280px', 1560 'box-shadow': '0 4px 8px 0 rgba(238,92,51,0.3)', 1561 } 1562 }, 1563 loadingStyle:function () { 1564 return { 1565 display: 'block', 1566 margin: 'auto', 1567 'min-width': '280px', 1568 'box-shadow': '0 4px 8px 0 rgba(238,92,51,0.3)', 1569 'background':"#a74f37", 1570 } 1571 } 1572 }, 1573 methods: { 1574 setRemember:function(state){ 1575 this.$refs.loginRemember.setValue(state); 1576 }, 1577 autoLogin:function (data) { 1578 this.$refs.emailLoginInput.setValue(data.email); 1579 this.$refs.passwordLoginInput.setValue(data.pswd); 1580 }, 1581 initFirst:function () { 1582 this.isFirstSignIn = true; 1583 this.isFirstSignUp = true; 1584 }, 1585 checkInput:function () { 1586 if(this.isFirstSignIn === false){ 1587 this.validateLogin(); 1588 } 1589 if(this.isFirstSignUp === false){ 1590 this.validateSignUp(); 1591 } 1592 }, 1593 checkLoading:function () { 1594 /*if(this.isLoading || this.isLoadingFB || this.isLoadingGL){ 1595 return true; 1596 }*/ 1597 //éæ±ä¿®æ¹,å è®¸åæ¶æä½ 1598 return false;
1599 }, 1600 loading:function () { 1601 this.isLoading = true; 1602 }, 1603 loaded:function () { 1604 this.isLoading = false; 1605 }, 1606 facebookSubmit: function (e) { 1607 //妿æå ¶å®å¨ç»å½ï¼åéåº 1608 if(this.isLoadingFB){ 1609 return false; 1610 } 1611 //éè¦æfacebookè¿æ¥å¯¹è±¡ï¼å¹¶ä¸å è½½äºFB对象æè¡ 1612 if(window.connectWithFaceBook && window.FB){ 1613 this.isLoadingFB = true; 1614 var _this = this; 1615 window.signup_action_path = "facebook"; 1616 connectWithFaceBook.login(e,function () { 1617 _this.isLoadingFB = false; 1618 }); 1619 } 1620 1621 }, 1622 googleSubmit: function (e) { 1623 1624 //妿æå ¶å®å¨ç»å½ï¼åéåº 1625 if(this.isLoadingGL){ 1626 return false; 1627 } 1628 //éè¦ægoogleçapiç»å½å¯¹è±¡æè¡ 1629 if(window.connectWithGoogle && window.gapi){ 1630 this.isLoadingGL = true; 1631 var _this = this; 1632 window.signup_action_path = "google"; 1633 //loginFacebookFunc.loginClick(e); 1634 connectWithGoogle.login(e,function () { 1635 _this.isLoadingGL = false; 1636 }); 1637 } 1638 1639 }, 1640 togglePanel: function () { 1641 //妿æå ¶å®å¨ç»å½ï¼åéåº 1642 if(this.checkLoading()){ 1643 return false; 1644 } 1645 if(this.isLoginMode === true){ 1646 this.$emit("setPanelMode",false); 1647 }else{ 1648 this.$emit("setPanelMode",true); 1649 } 1650 }, 1651 resetLoading:function () { 1652 this.isLoading = false; 1653 this.isLoadingFB = false; 1654 this.isLoadingGL = false; 1655 }, 1656 reset: function () { 1657 let { 1658 emailSignInput, 1659 emailSignConfirmInput, 1660 passwordSignInput, 1661 emailLoginInput, 1662 passwordLoginInput, 1663 } = this.$refs; 1664 emailSignInput.reset(); 1665 emailSignConfirmInput.reset(); 1666 passwordSignInput.reset(); 1667 emailLoginInput.reset(); 1668 passwordLoginInput.reset(); 1669 }, 1670 isRemember:function () { 1671 return this.$refs.loginRemember.getValue()?true:false; 1672 }, 1673 submitNull:function () { 1674 //ç¹å»emailçæ¶åä¸éè¦èªå¨æäº¤ 1675 }, 1676 submit: function () { 1677 //妿æå ¶å®å¨ç»å½ï¼åéåº 1678 if(this.isLoading){ 1679 return false; 1680 } 1681 let loginRemember = this.$refs.loginRemember; 1682 let isRemember = loginRemember.getValue(); 1683 if (this.isLoginMode === true) { 1684 var loginData = this.validateLogin(); 1685 this.isFirstSignIn = false; 1686 if (loginData) { 1687 // loginData = {email: xxx, password: xxx} 1688 // ç»å½ 1689 loginData.remember = isRemember; 1690 this.isLoading = true; 1691 //妿æ¯ç¬¬ä¸æ¬¡ç»å½ï¼é»è®¤ä¸éè¦éªè¯ç 1692 if(window.needLoginRecaptcha === undefined){ 1693 window.needLoginRecaptcha = false; 1694 } 1695 //妿éè¦éªè¯ç ï¼å使ç¨éªè¯ç»å½æ¹æ³ 1696 if(window.needLoginRecaptcha === true){ 1697 window.recaptchaPost(loginData,'login'); 1698 }else{ 1699 window.fjuser.loginPost(loginData,(result,data)=>{ 1700 if(data.needCaptcha === true){ 1701 window.needLoginRecaptcha = true; 1702 //console.log(data); 1703 if(result === true){ 1704 this.userLogined(data); 1705 } 1706 } 1707 }); 1708 } 1709 } 1710 } else { 1711 var signUpData = this.validateSignUp(); 1712 this.isFirstSignUp = false;
1713 if (signUpData) { 1714 email = signUpData.email; 1715 var emailService = jQuery("#emailService")[0]; 1716 //console.log(email); 1717 emailService.href = "http://www." + email.substr(email.indexOf("@") + 1); 1718 1719 signUpData.remember = isRemember; 1720 this.isLoading = true; 1721 window.signup_action_path = "email"; 1722 //window.googleRecaptcha.submit(signUpData, 'register'); 1723 window.recaptchaPost(signUpData,'register'); 1724 } 1725 } 1726 }, 1727 validateSignUp: function () { 1728 let emailSignInput = this.$refs.emailSignInput; 1729 let emailSignConfirmInput = this.$refs.emailSignConfirmInput; 1730 let passwordSignInput = this.$refs.passwordSignInput; 1731 let emailText = emailSignInput.getValue(); 1732 let emailConfirmText = emailSignConfirmInput.getValue(); 1733 let passwordText = passwordSignInput.getValue(); 1734 let emailErrText = this.validateEmail(emailText); 1735 let passwordErrText = this.validatePassword(passwordText); 1736 let emailNotConfirm = false; 1737 if (emailErrText) { 1738 emailSignInput.setErr(emailErrText); 1739 }else{ 1740 emailSignInput.setErr(""); 1741 } 1742 if (emailConfirmText === '') { 1743 emailSignConfirmInput.setErr(this.loginLanguage.emailEmpty); 1744 emailNotConfirm = true; 1745 } else if (emailConfirmText !== emailText) { 1746 emailSignConfirmInput.setErr(this.loginLanguage.emailWrongConfirm); 1747 emailNotConfirm = true; 1748 }else{ 1749 emailSignConfirmInput.setErr(""); 1750 } 1751 if (passwordErrText) { 1752 passwordSignInput.setErr(passwordErrText); 1753 }else{ 1754 passwordSignInput.setErr(""); 1755 } 1756 return emailErrText || emailNotConfirm || passwordErrText ? null 1757 : {email: emailText, password: passwordText}; 1758 }, 1759 validateLogin: function () { 1760 let emailLoginInput = this.$refs.emailLoginInput; 1761 let passwordLoginInput = this.$refs.passwordLoginInput; 1762 let emailText = emailLoginInput.getValue(); 1763 let passwordText = passwordLoginInput.getValue(); 1764 let emailErrText = this.validateEmail(emailText); 1765 //console.log(passwordText); 1766 let passwordErrText = this.validatePassword(passwordText); 1767 if (emailErrText) { 1768 emailLoginInput.setErr(emailErrText); 1769 }else{ 1770 emailLoginInput.setErr(""); 1771 } 1772 if (passwordErrText) { 1773 passwordLoginInput.setErr(passwordErrText); 1774 }else{ 1775 passwordLoginInput.setErr(""); 1776 } 1777 return emailErrText || passwordErrText ? null : {email: emailText, password: passwordText}; 1778 }, 1779 checkEmail: function checkEmail(email) { 1780 if (email.indexOf(".") === -1) { 1781 return false 1782 } 1783 let regex = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/; 1784 return regex.test(email); 1785 }, 1786 validateEmail: function (value) { 1787 let email = value.replace(/(^\s*)|(\s*$)/g, ""); 1788 let errText = ''; 1789 let {emailEmpty, emailOverLength, emailWrongAddress} = this.loginLanguage; 1790 if (email.length === 0) { 1791 errText = emailEmpty; 1792 } else if (email.length > 64) { 1793 errText = emailOverLength; 1794 } else if (!this.checkEmail(email)) { 1795 errText = emailWrongAddress; 1796 } 1797 return errText; 1798 }, 1799 validatePassword: function (value) { 1800 let password = value.replace(/(^\s*)|(\s*$)/g, ""); 1801 let errText = ''; 1802 let {passwordEmpty, passwordOverLength} = this.loginLanguage; 1803 if (password.length === 0) { 1804 errText = passwordEmpty; 1805 } else if (password.length < 6 || password.length > 64) { 1806 errText = passwordOverLength; 1807 } 1808 return errText; 1809 }, 1810 setError:function (text) { 1811 let emailSignInput = this.$refs.emailSignInput; 1812 if(this.isLoginMode === true){ 1813 emailSignInput = this.$refs.emailLoginInput; 1814 } 1815 emailSignInput.setErr(text); 1816 }, 1817 }, 1818 created:function () { 1819 var _this = this; 1820 window.tcRecaptchaCloseCallback = function () { 1821 _this.isLoading = false;
1822 }; 1823 }, 1824 watch: { 1825 isLoginMode: function () { 1826 this.reset(); 1827 } 1828 } 1829}); 1830 1831Vue.component('fj-modal', { 1832 template: ` 1833 <div v-show="isVisible" class="fj-modal"> 1834 <transition name="fade"> 1835 <div class="mask"/> 1836 </transition> 1837 <div class="wrap"> 1838 <div @click="closeModal" class="close"> 1839 <img src="/media/login/images/close.svg"> 1840 </div> 1841 <slot name="content"></slot> 1842 </div> 1843 </div> 1844 `, 1845 props: { 1846 isVisible: Boolean, 1847 closeModal: Function 1848 }, 1849 data: function () { 1850 return { 1851 isHover:false 1852 }; 1853 }, 1854 methods:{ 1855 } 1856}); 1857var app_fj_login = new Vue({ 1858 el: '#login', 1859 template: ` 1860 <div id="login-module"> 1861 <fj-user-container :hasLogin="hasLogin" 1862 :loginLanguage="loginLanguage" 1863 :setPanelMode="setPanelMode" 1864 :loginLanguage="loginLanguage" 1865 :userLogout="userLogout" 1866 :showSignUpPanel="showSignUpPanel" 1867 :userInfo="userInfo" 1868 /> 1869 <fj-modal :closeModal="hideLoginPanel" :isVisible="active"> 1870 <template v-slot:content> 1871 <fj-login-panel ref="fj_login_panel" :loginLanguage="loginLanguage" 1872 :isLoginMode="isLoginMode" 1873 :hideLoginPanel="hideLoginPanel" 1874 :showLoginPanel="showLoginPanel" 1875 @setPanelMode="setPanelMode" 1876 :userLogined="userLogined" 1877 /> 1878 </template> 1879 </fj-modal> 1880 </div> 1881 `, 1882 data: function () { 1883 return { 1884 hasLogin: false, 1885 isLoginMode: null, // trueï¼loginçé¢ï¼false: signUpçé¢ï¼ null: çé¢éè 1886 loginLanguage: loginLanguage, 1887 userInfo:null, 1888 }; 1889 }, 1890 computed: { 1891 active: function () { 1892 return this.isLoginMode !== null 1893 } 1894 }, 1895 methods: { 1896 autoLogin:function (data) { 1897 this.$refs.fj_login_panel.autoLogin(data); 1898 }, 1899 userLogout: function () { 1900 window.fjuser.logoutPost(); 1901 }, 1902 checkRemeber:function () { 1903 //console.log("call CookieFunc"); 1904 var _this = this; 1905 if(window.CookieFunc){ 1906 window.CookieFunc.initLogin(function (token) { 1907 if (token) { 1908 _this.$refs.fj_login_panel.setRemember(true); 1909 $.post("/user/rememberState",{token: token},function (result) { 1910 if(result.code === 200){ 1911 csrf_token = result.csrf_token || result.token; 1912 if(csrf_token){ 1913 window.csrf_token = csrf_token; 1914 } 1915 _this.autoLogin(result.data); 1916 } 1917 }); 1918 } 1919 }); 1920 } 1921 }, 1922 dispatchPanelEvent:function (old_status,new_status) { 1923 if(old_status !== new_status){ 1924 //éè 1925 if(new_status === null){ 1926 if(old_status === false){ 1927 window.fjuser.dispatchCallbacks(window.fjuser.eventType.hideRegisterPanel); 1928 }else{ 1929 window.fjuser.dispatchCallbacks(window.fjuser.eventType.hideLoginPanel); 1930 } 1931 }else if(new_status === false){ //æ¾ç¤ºæ³¨å颿¿ 1932 window.fjuser.dispatchCallbacks(window.fjuser.eventType.showRegisterPanel); 1933 }else if(new_status === true){ //æ¾ç¤ºç»å½é¢æ¿ 1934 window.fjuser.dispatchCallbacks(window.fjuser.eventType.showLoginPanel); 1935 } 1936 }; 1937 }, 1938 setPanelMode:function (statue) { 1939 this.dispatchPanelEvent(this.isLoginMode,statue); 1940 //å ³éå¼¹çªåéç½®éªè¯ 1941 if(statue === null){ 1942 this.$refs.fj_login_panel.initFirst(); 1943 } 1944 else { 1945 this.ensureSDKs(); 1946 } 1947 this.isLoginMode = statue; 1948 if(window.callbackWhenLoginPanelModeChange){ 1949 callbackWhenLoginPanelModeChange(statue); 1950 } 1951 if(statue === true){ 1952 var _this = this; 1953 setTimeout(function () { 1954 _this.checkRemeber(); 1955 }, 300); 1956 } 1957 1958 if(!window.hasAutoLogin) { 1959 window.hasAutoLogin = true; 1960 this.checkAutoLogin(); 1961 } 1962
1963 //æ£æ¥æ¯å¦æ¯ç¨åºé¡µéè¦ç¹æ®å¤ç 1964 if(statue === false && window.showSignUpEacallback){ 1965 showSignUpEacallback(); 1966 } 1967 }, 1968 showLoginPanel: function () { 1969 this.setPanelMode(true); 1970 }, 1971 hideLoginPanel: function () { 1972 this.setPanelMode(null); 1973 }, 1974 showSignUpPanel:function () { 1975 this.setPanelMode(false); 1976 }, 1977 checkAutoLogin:function () { 1978 var _this = this; 1979 1980 if(!window.$ && window.jQuery){ 1981 window.$ = window.jQuery; 1982 } 1983 1984 $.post("/user/checkState",{},function (json) { 1985 if(200 == json.code){ 1986 window.fjuser.dispatchCallbacks(window.fjuser.eventType.login, true, json); 1987 window.fjuser.info = json.data; 1988 }; 1989 if(json.token){ 1990 window.csrf_token = json.token; 1991 } 1992 }) 1993 }, 1994 userLogined:function (info) { 1995 this.userInfo = info; 1996 //this.hasLogin = true; 1997 //å¨ç´æ¥æ´æ°ç»å½ç¶æç´æ¥dispatchä¸ä¸é¢æ¿ç¶æ 1998 this.dispatchPanelEvent(this.isLoginMode,true); 1999 this.hasLogin = true; 2000 if(info.email){ 2001 this.setEmailWeb(info.email); 2002 }else if(info.userEmail){ //å ¼å®¹fotojet 2003 this.setEmailWeb(info.userEmail); 2004 } 2005 2006 if(info.remembertoken){ 2007 this.setRememberState(info.remembertoken); 2008 } 2009 2010 this.hideLoginPanel(); 2011 this.$refs.fj_login_panel.resetLoading(); 2012 if(window.appLoginCallback){ 2013 window.appLoginCallback(info); 2014 } 2015 if(window.callbackWhenUserIdChange){ 2016 window.callbackWhenUserIdChange(); 2017 } 2018 }, 2019 setEmailWeb:function (email) { 2020 var emailService = jQuery("#emailService")[0]; 2021 //console.log(email); 2022 emailService.href = "http://www." + email.substr(email.indexOf("@") + 1); 2023 }, 2024 setRememberState:function (remembertoken) { 2025 is_remember = this.$refs.fj_login_panel.isRemember(); 2026 if (is_remember) { 2027 CookieFunc.setCookie('fj_remember', true); 2028 CookieFunc.setCookie('fj_usertoken', remembertoken); 2029 } 2030 else { 2031 CookieFunc.delCookie('fj_remember'); 2032 CookieFunc.delCookie('fj_usertoken'); 2033 } 2034 }, 2035 loading:function () { 2036 this.$refs.fj_login_panel.loading(); 2037 }, 2038 loaded:function () { 2039 this.$refs.fj_login_panel.loaded(); 2040 }, 2041 setError:function (text) { 2042 this.$refs.fj_login_panel.setError(text); 2043 }, 2044 getQueryVariable:function(variable) { 2045 var query = window.location.search.substring(1); 2046 var vars = query.split("&"); 2047 for (var i=0;i<vars.length;i++) { 2048 var pair = vars[i].split("="); 2049 if(pair[0] == variable){return pair[1];} 2050 } 2051 return(false); 2052 }, 2053 updatePackInfo:function (data) { 2054 this.userInfo.policy = data.package; 2055 this.userInfo.period = data.period; 2056 }, 2057 ensureSDKs: function () { 2058 this.ensureRecaptcha(); 2059 }, 2060 setUserInfo: function (data) { 2061 $('#user_name').text(data.email); 2062 $('#imgAvatar').attr("src",data.img); 2063 $('#imgAvatarThumb').attr("src",data.img); 2064 window.userInfo = { 2065 img: data.img, 2066 userName: data.name, 2067 userEmail: data.email, 2068 }; 2069 if (window.appLoginCallback) { 2070 window.appLoginCallback(); 2071 } 2072 if (window.packageLoginCallback) { 2073 window.packageLoginCallback(); 2074 } 2075 }, 2076 ensureRecaptcha:function () { 2077 if(window.googleRecaptcha.loaded || window.tencentRecaptcha.loaded){ 2078 return true; 2079 } 2080 2081 window.loadGoogleRecaptchaSDK(); 2082 window.loadFacebookSDK(); 2083 window.loadGoogleSDK(); 2084 window.loadTencentRecaptchaSDK(); 2085 2086 // window.fjuser.getCountryCode().then(code => { 2087 // if(code && code !== "CN") 2088 // { 2089 // window.loadGoogleRecaptchaSDK(); 2090 // window.loadFacebookSDK(); 2091 // window.loadGoogleSDK(); 2092 // } else { 2093 // window.loadFacebookSDK(); 2094 // window.loadGoogleSDK(); 2095 // window.loadTencentRecaptchaSDK(); 2096 // } 2097 // }); 2098 } 2099 }, 2100 created: function () { 2101 // `this` æå vm å®ä¾ 2102 var _this = this; 2103 //createåçåè°ï¼ä¸åäº§åæ§è¡ä¸åçå¤ç 2104 if(window.app_fj_login_created_callback){ 2105 app_fj_login_created_callback(this); 2106 } 2107 2108 //妿å°åæ å å«signinæsignupä¸ç¨æ·æªç»å½ï¼åæå¼é¡µé¢å¼¹åºç»å½å¼¹çª 2109 if(!this.userInfo || !this.userInfo.result){ 2110 action = this.getQueryVariable("action"); 2111 if(action == "signin"){ 2112 this.showLoginPanel(); 2113 } else if(action == "signup"){
2114 this.showSignUpPanel(); 2115 } 2116 } 2117 } 2118}); 2119 2120 2121 2122window.loadRecaptcha = function (ele_id,re_name,cb_before,cb_after) { 2123 //å è½½éªè¯sdk 2124 app_fj_login.ensureSDKs(); 2125 2126 // æ·»å googleéªè¯ç®æ æ¹æ³ 2127 window.googleRecaptcha.addTarget(re_name,(data) => { 2128 cb_after(data); 2129 }); 2130 2131 //æ·»å è ¾è®¯éªè¯çæ¹æ³ 2132 window.tencentRecaptcha.addTarget(re_name,(data)=>{ 2133 cb_after(data); 2134 }); 2135 2136 //ç»å®äºä»¶ 2137 $(document).on("click",ele_id,() => { 2138 data = cb_before(); 2139 if(data === false){ 2140 2141 }else{ 2142 window.recaptchaPost(data,re_name); 2143 } 2144 }); 2145}; 2146function handleCredentialResponse(response) { 2147 FJTools.post("/user/connectGoogleUser", {token: response.credential}, function (res) { 2148 let result = (res.code === 200); 2149 if(result) { 2150 window.fjuser.info = res.data; 2151 window.csrf_token = res.token; 2152 } 2153 2154 if(res.data.register) { 2155 if (window.ealog) { 2156 window.ealog.addEvent("sign up", { 2157 "signUpMode": "google", 2158 "signUpPage": window.location.pathname, 2159 "signUpAccount": window.fjuser.info.email 2160 }) 2161 } 2162 window.fjuser.dispatchCallbacks(window.fjuser.eventType.register, result, res); 2163 } else { 2164 window.fjuser.dispatchCallbacks(window.fjuser.eventType.login, result, res); 2165 } 2166 }) 2167} 2168 2169window.onload = function () { 2170 if (window.fjuser && !window.fjuser.info.result) { 2171 2172 let dom = document.createElement("div"); 2173 $(dom).attr("id", "google-one-tap"); 2174 2175 let path = location.pathname 2176 let style; 2177 if (path.indexOf('/embed') !== -1) { 2178 return false 2179 } 2180 if (path.indexOf('editor/') !== -1) { 2181 style = { 2182 "z-index": "100", 2183 "position": "fixed", 2184 "top": "55px", 2185 "right": 0 2186 } 2187 } else { 2188 style = { 2189 "z-index": "5", 2190 "position": "fixed", 2191 "top": "86px", 2192 "right": 0 2193 } 2194 } 2195 $(dom).css(style); 2196 2197 let loginModule = document.getElementById('login-module') 2198 $(loginModule).after(dom) 2199 try { 2200 google.accounts.id.initialize({ 2201 client_id: window.fj.google_auth2_id, 2202 prompt_parent_id: "google-one-tap", 2203 // auto_select: true, 2204 callback: handleCredentialResponse, 2205 // cancel_on_tap_outside: false 2206 }); 2207 google.accounts.id.prompt((notification) => { 2208 console.log(notification) 2209 if(!notification.h) { 2210 document.getElementById('google-one-tap').remove() 2211 window.fj.event.dispatch("SHOW_APP_LOGIN_TIPS_MODEL") 2212 } else { 2213 window.fj.event.dispatch("MOVE_SHARE_TOOLS_TOP") 2214 } 2215 if (notification.g) { 2216 switch (notification.g) { 2217 case "skipped": 2218 window.fj.event.dispatch("REDUCTION_SHARE_TOOLS_POSITION") 2219 break; 2220 } 2221 } 2222 }); 2223 } catch (e) { 2224 document.getElementById('google-one-tap').remove() 2225 } 2226 } 2227}; 2228 2229window.fjuser.addListener(window.fjuser.eventType.logout,function (result, response){ 2230 if(result) { 2231 try { 2232 google.accounts.id.disableAutoSelect() 2233 } catch (e) { 2234 2235 } 2236 } 2237 2238}); 2239 2240//icon components 2241Vue.component('fj-icon-success', { 2242 template: ` 2243<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2244 width="46px" height="46px" viewBox="0 0 46 46" enable-background="new 0 0 46 46" xml:space="preserve"> 2245<polygon fill="#52BF8A" points="17.998,34.414 10.584,27 11.999,25.586 17.998,31.586 33.998,15.586 35.412,17 "/> 2246<path fill="#52BF8A" d="M23,46C10.317,46,0,35.684,0,23C0,10.318,10.317,0,23,0c12.684,0,23,10.318,23,23 2247 C45.998,35.684,35.684,46,23,46z M23,2.001C11.421,2.001,2,11.421,2,23s9.421,20.998,21,20.998c11.58,0,20.998-9.419,20.998-20.998 2248 C43.996,11.421,34.578,2.001,23,2.001z"/> 2249</svg> 2250` 2251}); 2252 2253Vue.component('fj-icon-delete', { 2254 template: ` 2255<svg width="12px" height="12px" viewBox="0 0 12 12" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 2256 <!-- Generator: sketchtool 43.1 (39012) - http://www.bohemiancoding.com/sketch --> 2257 <title>73E9C865-B140-4020-81F7-4E5628F0F688</title> 2258 <desc>Created with sketchtool.</desc> 2259 <defs></defs> 2260 <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> 2261 <g id="2.9.3-è°æ¥çªå£3-copy" transform="translate(-284.000000, -173.000000)" fill="#404040"> 2262 <path d="M291.364803,178.95059 L295.606827,174.708565 C296.000149,174.315244 295.997968,173.68426 295.607444,173.293735 C295.214197,172.900488 294.583479,172.903487 294.192614,173.294352 L289.95059,177.536376 L285.708565,173.294352 C285.315244,172.90103 284.68426,172.903211 284.293735,173.293735 C283.900488,173.686982 283.903487,174.3177 284.294352,174.708565 L288.536376,178.95059 L284.294352,183.192614 C283.90103,183.585935 283.903211,184.216919 284.293735,184.607444 C284.686982,185.000691 285.3177,184.997692 285.708565,184.606827 L289.95059,180.364803 L294.192614,184.606827 C294.585935,185.000149 295.216919,184.997968 295.607444,184.607444 C296.000691,184.214197 295.997692,183.583479 295.606827,183.192614 L291.364803,178.95059 Z" id="delete"></path> 2263 </g> 2264 </g> 2265</svg> 2266` 2267}); 2268 2269Vue.component('fj-icon-back', { 2270 template: ` 2271<svg width="17px" height="18px" viewBox="0 0 17 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 2272 <!-- Generator: sketchtool 43.1 (39012) - http://www.bohemiancoding.com/sketch --> 2273 <defs></defs> 2274 <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> 2275 <g id="2.9.3-è°æ¥çªå£3-copy" transform="translate(-169.000000, -57.000000)" fill-rule="nonzero" fill="#6A6E79"> 2276 <path d="M173.414214,65 L179.707107,58.7071068 L178.292893,57.2928932 L169.585786,66 L178.292893,74.7071068 L179.707107,73.2928932 L173.414214,67 L186,67 L186,65 L173.414214,65 Z" id="Back"></path> 2277 </g> 2278 </g> 2279</svg> 2280` 2281}); 2282 2283Vue.component('fj-icon-step-designcap', { 2284 template: ` 2285 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2286 width="12px" height="12px" viewBox="0 0 18 18" enable-background="new 0 0 18 18" xml:space="preserve"> 2287 <title>Shape Copy 15</title> 2288 <desc>Created with Sketch.</desc> 2289 <g id="Page-1"> 2290 <g id="pricing" transform="translate(-876.000000, -492.000000)"> 2291 <path id="Shape-Copy-15" fill="#EE5C33" d="M892.209,495.001c-0.452,0.013-0.881,0.202-1.197,0.525 2292 c-2.717,2.724-5.438,5.436-8.159,8.16l-3.998-3.336c-0.739-0.614-1.835-0.514-2.451,
22920.224c-0.615,0.738-0.517,1.834,0.22,2.45 2293 l5.222,4.353c0.693,0.577,1.712,0.53,2.348-0.108c3.092-3.099,6.187-6.18,9.285-9.284c0.512-0.501,0.662-1.265,0.383-1.924 2294 C893.58,495.4,892.925,494.98,892.209,495.001L892.209,495.001z"/> 2295 </g> 2296 </g> 2297 </svg> 2298` 2299}); 2300 2301Vue.component('fj-icon-step-designevo', { 2302 template: ` 2303<svg width="13px" height="9px" viewBox="0 0 13 9" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 2304 <!-- Generator: sketchtool 43.1 (39012) - http://www.bohemiancoding.com/sketch --> 2305 <title>812F623D-E5C8-417F-83CD-9AF088F8D726</title> 2306 <desc>Created with sketchtool.</desc> 2307 <defs></defs> 2308 <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> 2309 <g id="2.9.3-è°æ¥çªå£-2" transform="translate(-489.000000, -233.000000)" fill-rule="nonzero" fill="#FFFFFF"> 2310 <polygon id="Path-3" points="490.353553 236.646447 489.646447 237.353553 494 241.707107 501.353553 234.353553 500.646447 233.646447 494 240.292893"></polygon> 2311 </g> 2312 </g> 2313</svg> 2314` 2315}); 2316 2317Vue.component('fj-icon-enterprise', { 2318 template: ` 2319<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2320 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2321<g> 2322 <path fill="#404040" d="M54.3,21.6H41.4V7.4c0-0.969-0.73-1.7-1.7-1.7H20.3c-0.969,0-1.7,0.731-1.7,1.7v14.2H5.7 2323 c-0.969,0-1.7,0.731-1.7,1.7v29.3c0,0.97,0.731,1.7,1.7,1.7h14.6h19.4h14.6c0.97,0,1.7-0.73,1.7-1.7V23.3 2324 C56,22.331,55.27,21.6,54.3,21.6z M5,52.6V23.3c0-0.425,0.275-0.7,0.7-0.7h12.9v30c0,0.253,0.052,0.488,0.143,0.7H5.7 2325 C5.275,53.3,5,53.025,5,52.6z M20.3,53.3c-0.425,0-0.7-0.274-0.7-0.7V7.4c0-0.425,0.274-0.7,0.7-0.7h19.4 2326 c0.426,0,0.7,0.274,0.7,0.7v45.2c0,0.426-0.274,0.7-0.7,0.7H20.3z M55,52.6c0,0.426-0.274,0.7-0.7,0.7H41.258 2327 c0.091-0.212,0.143-0.447,0.143-0.7v-30H54.3c0.426,0,0.7,0.274,0.7,0.7V52.6z"/> 2328 <path fill="#404040" d="M34.9,10.3h-9.7c-0.969,0-1.7,0.731-1.7,1.7v6.1c0,0.969,0.731,1.7,1.7,1.7h9.7 2329 c0.969,0,1.699-0.731,1.699-1.7V12C36.6,11.031,35.869,10.3,34.9,10.3z M35.6,18.1c0,0.425-0.274,0.7-0.699,0.7h-9.7 2330 c-0.425,0-0.7-0.274-0.7-0.7V12c0-0.425,0.275-0.7,0.7-0.7h9.7c0.425,0,0.699,0.275,0.699,0.7V18.1z"/> 2331 <rect x="50.1" y="31.8" fill="#404040" width="1" height="15.9"/> 2332 <rect x="29.5" y="34.9" fill="#404040" width="1" height="1.8"/> 2333 <rect x="29.5" y="31.2" fill="#404040" width="1" height="1.8"/> 2334 <rect x="29.5" y="42.2" fill="#404040" width="1" height="1.8"/> 2335 <rect x="29.5" y="38.5" fill="#404040" width="1" height="1.9"/> 2336 <rect x="29.5" y="27.6" fill="#404040" width="1" height="1.8"/> 2337 <rect x="25.9" y="34.9" fill="#404040" width="1" height="1.8"/> 2338 <rect x="25.9" y="31.2" fill="#404040" width="1" height="1.8"/> 2339 <rect x="25.9" y="42.2" fill="#404040" width="1" height="1.8"/> 2340 <rect x="25.9" y="38.5" fill="#404040" width="1" height="1.9"/> 2341 <rect x="25.9" y="27.6" fill="#404040" width="1" height="1.8"/> 2342 <rect x="22.2" y="34.9" fill="#404040" width="1" height="1.8"/> 2343 <rect x="22.2" y="31.2" fill="#404040" width="1" height="1.8"/> 2344 <rect x="22.2" y="42.2" fill="#404040" width="1" height="1.8"/> 2345 <rect x="22.2" y="38.5" fill="#404040" width="1" height="1.9"/> 2346 <rect x="36.8" y="34.9" fill="#404040" width="1" height="1.8"/> 2347 <rect x="36.8" y="31.2" fill="#404040" width="1" height="1.8"/> 2348 <rect x="36.8" y="42.2" fill="#404040" width="1" height="1.8"/> 2349 <rect x="36.8" y="38.5" fill="#404040" width="1" height="1.9"/> 2350 <rect x="33.1" y="27.6" fill="#404040" width="1" height="1.8"/> 2351 <rect x="33.1" y="34.9" fill="#404040" width="1" height="1.8"/> 2352 <rect x="33.1" y="31.2" fill="#404040" width="1" height="1.8"/> 2353 <rect x="33.1" y="42.2" fill="#404040" width="1" height="1.8"/> 2354 <rect x="29.5" y="45.9" fill="#404040" width="1" height="1.8"/> 2355 <rect x="25.9" y="45.9" fill="#404040" width="1" height="1.8"/> 2356 <rect x="22.2" y="45.9" fill="#404040" width="1" height="1.8"/> 2357 <rect x="36.8" y="45.9" fill="#404040" width="1" height="1.8"/> 2358 <rect x="33.1" y="45.9" fill="#404040" width="1" height="1.8"/> 2359 <rect x="33.1" y="38.5" fill="#404040" width="1" height="1.9"/> 2360 <rect x="45.4" y="31.8" fill="#404040" width="1" height="15.9"/> 2361 <rect x="13.7" y="31.8" fill="#404040" width="1" height="15.9"/> 2362 <rect x="8.9" y="31.8" fill="#404040" width="1" height="15.9"/> 2363</g> 2364</svg> 2365` 2366}); 2367 2368Vue.component('fj-icon-nonprofit-ngo', { 2369 template: ` 2370<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2371 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2372<path fill="#404040" d="M54.9,33.9h-8.7c-0.576,0-1.101,0.524-1.1,1.133l0.156,2.365c-1.136-0.631-5.203-2.694-8.391-1.78 2373 c-1.685,0.468-3.561,1.679-5.546,2.962c-0.159,0.103-0.319,0.205-0.479,0.309l2.045-8.269L32.9,30.5c0-0.373-0.327-0.7-0.7-0.7 2374 H21.703c0.222-0.483,0.406-0.927,0.553-1.337l2.171-3.78c0.025,0.004,0.047,0.018,0.073,0.018l0.982-0.007 2375 c1.457-0.243,2.346-0.614,2.948-1.217c1.103-0.965,1.15-2.49,1.07-3.676c0-0.338-0.295-1.334-0.422-1.747L28.877,17.4l-0.562,0.389 2376 c-0.013,0.009-1.293,0.893-2.555,1.572c-1.106,0.603-1.688,1.36-1.942,2.502C23.6,22.63,23.6,23.295,23.6,24 2377 c0,0.03,0.012,0.056,0.017,0.084l-0.927,1.614c-0.201-1.531-1.34-2.573-3.096-4.163l-0.563-0.511 2378 c-3.116-2.749-1.765-7.537-1.751-7.584c0.077-0.265-0.075-0.542-0.339-0.62c-0.269-0.079-0.542,0.074-0.62,0.338 2379 c-0.044,0.149-0.728,2.574-0.069,5.108c-0.242-0.181-0.473-0.364-0.687-0.536l-0.147-0.118C14.477,16.844,14,15.729,14,14.3 2380 c0-0.769,0.241-1.461,0.647-2.376c0.28-0.56,0.76-1.23,1.426-1.992c0.82-0.922,1.389-1.69,1.757-2.23
2381 c0.14,0.287,0.305,0.611,0.493,0.979c0.16,0.313,0.336,0.659,0.542,1.067c0.711,1.245,1.241,2.271,1.579,3.059 2382 C20.874,13.75,21.1,14.612,21.1,15.3c0,0.832-0.411,1.976-1.112,3.117l-1.1,1.6c-0.156,0.228-0.099,0.539,0.129,0.695 2383 c0.086,0.06,0.185,0.088,0.283,0.088c0.159,0,0.315-0.076,0.413-0.217l1.114-1.621c0.822-1.335,1.274-2.636,1.274-3.663 2384 c0-0.841-0.25-1.819-0.741-2.896c-0.348-0.813-0.895-1.874-1.612-3.127c-0.193-0.387-0.371-0.735-0.532-1.05 2385 c-0.411-0.804-0.708-1.385-0.841-1.785l-0.354-1.061l-0.937,1.641c-0.326,0.489-0.895,1.275-1.76,2.248 2386 c-0.725,0.828-1.253,1.57-1.581,2.227C13.367,12.342,13,13.255,13,14.3c0,1.719,0.617,3.133,1.788,4.091l0.15,0.12 2387 c0.467,0.376,1.049,0.843,1.714,1.224c0.055,0.032,0.113,0.048,0.172,0.058c0.36,0.701,0.858,1.376,1.54,1.978l0.56,0.507 2388 c2.483,2.247,3.364,3.059,2.493,5.591l-1.405-0.961c-0.296-0.591-0.604-1.198-1.031-1.732c-0.668-0.779-1.364-1.344-2.575-1.563 2389 c-1.403-0.301-2.907-0.602-2.907-0.602l-0.701-0.14l0.109,0.707c0.035,0.224,0.212,1.358,0.313,1.661 2390 c0.43,1.504,1.218,2.548,2.284,3.022c0.408,0.175,0.872,0.263,1.392,0.263c0.502,0,1.057-0.083,1.663-0.248 2391 c0.342-0.113,0.583-0.233,0.92-0.458c0.015-0.01,0.024-0.025,0.039-0.037l1.529,1.046c-0.091,0.211-0.189,0.43-0.298,0.663 2392 c-0.047,0.102-0.049,0.209-0.028,0.311H11.1c-0.373,0-0.7,0.327-0.7,0.7l2.511,10.723c-2.11-1.538-4.687-3.291-5.645-3.418 2393 c-1.381-0.192-2.396,0.768-2.674,1.065c-0.21,0.224-0.688,0.803-0.577,1.351c0.152,0.609,10.853,13.123,12.161,13.727 2394 c0.774,0.387,5.28,0.664,9.233,0.664c2.712,0,5.164-0.131,5.972-0.445c0.845-0.328,1.889-1.153,2.994-2.025 2395 c1.332-1.053,2.842-2.245,3.895-2.445c2.009-0.289,7.703,0.492,7.761,0.5c0.023,0.003,0.046-0.005,0.069-0.006l0.1,1.511 2396 c0,0.627,0.473,1.1,1.1,1.1H54.9c0.575,0,1.1-0.524,1.1-1.1V35C56,34.373,55.527,33.9,54.9,33.9z M18.923,26.984 2397 c-0.265,0.176-0.424,0.256-0.655,0.333c-0.983,0.268-1.78,0.277-2.365,0.025c-0.781-0.347-1.376-1.17-1.729-2.401 2398 c-0.036-0.107-0.1-0.444-0.164-0.808c0.567,0.115,1.397,0.286,2.2,0.458c0.944,0.171,1.452,0.582,1.999,1.22 2399 c0.273,0.341,0.499,0.739,0.719,1.167C18.927,26.981,18.925,26.982,18.923,26.984z M26.237,20.24 2400 c0.788-0.424,1.567-0.914,2.074-1.245c0.104,0.378,0.186,0.717,0.19,0.838c0.1,1.491-0.119,2.355-0.754,2.914 2401 c-0.467,0.467-1.194,0.754-2.347,0.954h-0.651c-0.031-0.07-0.078-0.131-0.14-0.181c0.009-0.476,0.038-0.913,0.18-1.411 2402 C24.957,21.351,25.258,20.774,26.237,20.24z M11.484,30.8h20.328l-2.193,8.864c-1.775,1.1-3.534,2.042-5.081,2.24l-1.154,0.14 2403 c-2.906,0.345-5.887,0.704-7.39,1.726c-0.009-0.139-0.069-0.272-0.187-0.364c-0.295-0.229-0.897-0.695-1.654-1.264L11.484,30.8z 2404 M38.106,48.709c-1.315,0.25-2.858,1.469-4.351,2.646c-1.045,0.825-2.031,1.604-2.737,1.879c-1.667,0.648-13.35,0.342-14.409-0.188 2405 C15.458,52.489,5.977,41.34,5.014,39.982c0.151-0.381,1.079-1.314,2.12-1.188c0.995,0.133,5.471,3.383,8.059,5.399 2406 c0.066,0.052,0.141,0.077,0.218,0.092c-0.01,0.012-0.026,0.021-0.036,0.033c-0.311,0.399-0.436,0.852-0.371,1.345 2407 c0.337,2.589,1.566,2.729,3.122,2.907l0.191,0.021c0.212,0.035,0.473,0.084,0.771,0.139c1.476,0.273,3.751,0.694,5.925,0.694 2408 c1.286,0,2.537-0.147,3.566-0.56c3.124-1.209,7.334-4.233,7.511-4.361c0.225-0.161,0.275-0.474,0.113-0.697 2409 c-0.162-0.226-0.476-0.276-0.697-0.113c-0.043,0.03-4.285,3.077-7.293,4.242c-2.507,1.001-6.854,0.197-8.944-0.188 2410 c-0.305-0.057-0.571-0.105-0.813-0.146l-0.218-0.024c-1.542-0.177-2.008-0.23-2.244-2.043c-0.029-0.225,0.024-0.416,0.169-0.602 2411 c0.88-1.13,4.46-1.556,7.337-1.897l1.162-0.14c2.267-0.291,4.774-1.91,7.2-3.477c1.92-1.24,3.733-2.411,5.274-2.84 2412 c3.245-0.926,7.857,1.82,7.903,1.848c0.09,0.055,0.189,0.067,0.287,0.062l0.706,10.698C45.146,49.068,40.126,48.422,38.106,48.709z 2413 M55,51.695c-0.006,0.035-0.066,0.097-0.103,0.104H47.3c-0.1,0-0.1-0.053-0.101-0.133l-1.1-16.662 2414 c0.006-0.036,0.069-0.099,0.101-0.104h8.7c0.1,0,0.1,0.053,0.1,0.1V51.695z"/> 2415</svg> 2416` 2417}); 2418 2419Vue.component('fj-icon-store', { 2420 template: ` 2421<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2422 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2423<g> 2424 <path fill="#404040" d="M33.8,44.2H44c0.262,0,0.477-0.124,0.618-0.3H44.9v-8.7c0-0.479-0.414-0.8-0.801-0.8H33.8 2425 c-0.479,0-0.8,0.413-0.8,0.8v8.2C33,43.872,33.422,44.2,33.8,44.2z M34,35.4h9.9v7.5H43.8v0.3H34V35.4z"/>
2426 <path fill="#404040" d="M56,50.7h-5.811c0.065-0.084,0.11-0.185,0.11-0.3V28.1c0-0.012-0.006-0.022-0.007-0.034 2427 C52.992,27.77,55.1,25.477,55.1,22.7v-5.4v-0.194V17.1c0-0.26-0.201-0.467-0.455-0.491l-7.302-7.967 2428 C47.254,8.451,47.064,8.3,46.8,8.3H13.2c-0.222,0-0.449,0.127-0.548,0.349l-7.32,7.985c-0.15,0.054-0.261,0.178-0.305,0.333 2429 L4.9,17.105V17.3c0,0.11,0.041,0.218,0.1,0.314V22.7c0,2.743,2.058,5.01,4.71,5.351C9.708,28.068,9.7,28.083,9.7,28.1v22.3 2430 c0,0.115,0.045,0.216,0.11,0.3H4c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5h52c0.276,0,0.5-0.224,0.5-0.5S56.276,50.7,56,50.7z 2431 M13.412,9.3h33.177l6.966,7.6H6.445L13.412,9.3z M6,22.7v-4.8h9.3h9.8h9.8h9.8h0.1h9.3v4.8c0,2.426-1.974,4.4-4.399,4.4 2432 c-2.427,0-4.4-1.974-4.4-4.4v-4.3c0-0.276-0.224-0.5-0.5-0.5c-0.018,0-0.032,0.008-0.05,0.01c-0.018-0.002-0.032-0.01-0.05-0.01 2433 c-0.276,0-0.5,0.224-0.5,0.5v4.3c0,2.426-1.974,4.4-4.4,4.4c-2.426,0-4.399-1.974-4.399-4.4v-4.3c0-0.276-0.224-0.5-0.5-0.5 2434 s-0.5,0.224-0.5,0.5v4.3c0,2.426-1.974,4.4-4.4,4.4c-2.426,0-4.4-1.974-4.4-4.4v-4.3c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5 2435 v4.3c0,2.426-1.974,4.4-4.4,4.4s-4.4-1.974-4.4-4.4v-4.3c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5v4.3 2436 c0,2.426-1.974,4.4-4.4,4.4S6,25.126,6,22.7z M10.697,28.085c2.044-0.112,3.786-1.362,4.603-3.129 2437 c0.856,1.853,2.728,3.145,4.9,3.145c2.172,0,4.043-1.292,4.9-3.145c0.856,1.853,2.728,3.145,4.9,3.145s4.044-1.292,4.9-3.145 2438 c0.856,1.853,2.728,3.145,4.899,3.145c2.213,0,4.117-1.339,4.95-3.248c0.783,1.793,2.513,3.079,4.554,3.228 2439 c0,0.007-0.004,0.013-0.004,0.02v22.3c0,0.115,0.045,0.216,0.11,0.3H29.6V35.2c0-0.479-0.414-0.8-0.8-0.8H16 2440 c-0.479,0-0.8,0.413-0.8,0.8v15.5h-4.61c0.065-0.084,0.11-0.185,0.11-0.3V28.1C10.7,28.095,10.697,28.09,10.697,28.085z M28.6,50.7 2441 H16.2V35.4h12.4V50.7z"/> 2442</g> 2443</svg> 2444` 2445}); 2446 2447Vue.component('fj-icon-government', { 2448 template: ` 2449<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2450 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2451<g> 2452 <path fill="#404040" d="M55.5,48.7h-2v-1.9c0-0.276-0.224-0.5-0.5-0.5h-4.9V25.2H53c0.276,0,0.5-0.224,0.5-0.5v-3.4 2453 c0-0.174-0.091-0.335-0.238-0.426l-23-14.1c-0.16-0.099-0.362-0.098-0.523,0l-22.9,14.1C6.69,20.965,6.6,21.126,6.6,21.3v3.4 2454 c0,0.276,0.224,0.5,0.5,0.5h4.8v21.1H7.1c-0.276,0-0.5,0.224-0.5,0.5v1.9H4.5c-0.276,0-0.5,0.224-0.5,0.5v3.6 2455 c0,0.276,0.224,0.5,0.5,0.5h51c0.276,0,0.5-0.224,0.5-0.5v-3.6C56,48.924,55.776,48.7,55.5,48.7z M47.1,46.3h-3.6V25.2h3.6V46.3z 2456 M27.2,25.2v21.1h-9.7V25.2H27.2z M28.2,25.2h3.6v21.1h-3.6V25.2z M32.8,25.2h9.7v21.1h-9.7V25.2z M7.6,21.579L30,7.787L52.5,21.58 2457 V24.2H7.6V21.579z M12.9,25.2h3.6v21.1h-3.6V25.2z M55,52.3H5v-2.6h2.1c0.276,0,0.5-0.224,0.5-0.5v-1.9h44.9v1.9 2458 c0,0.276,0.224,0.5,0.5,0.5h2V52.3z"/> 2459 <path fill="#404040" d="M30,13.1c-2.041,0-3.7,1.66-3.7,3.7c0,2.041,1.66,3.7,3.7,3.7c2.04,0,3.7-1.66,3.7-3.7 2460 C33.7,14.76,32.04,13.1,30,13.1z M30,19.5c-1.489,0-2.7-1.211-2.7-2.7s1.211-2.7,2.7-2.7c1.489,0,2.7,1.211,2.7,2.7 2461 S31.489,19.5,30,19.5z"/> 2462</g> 2463</svg> 2464 2465` 2466}); 2467 2468//Self-Employed 2469Vue.component('fj-icon-self-employed', { 2470 template: ` 2471<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2472 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2473<path fill="#404040" d="M33.177,32.378C38.645,30.951,42.7,25.95,42.7,20c0-7.058-5.697-12.8-12.7-12.8S17.3,12.942,17.3,20 2474 c0,5.95,4.056,10.951,9.523,12.378C17.303,33.915,10,42.205,10,52.2c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2475 C11,41.668,19.523,33.1,30,33.1S49,41.668,49,52.2c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2476 C50,42.205,42.697,33.915,33.177,32.378z M18.3,20c0-6.506,5.249-11.8,11.7-11.8c6.451,0,11.7,5.293,11.7,11.8S36.451,31.8,30,31.8 2477 C23.548,31.8,18.3,26.506,18.3,20z"/> 2478</svg> 2479 2480` 2481}); 2482 2483//community 2484Vue.component('fj-icon-community', { 2485 template: ` 2486<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2487 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2488<g> 2489 <path fill="#404040" d="M30,15.9c4.656,0,8.391-7.363,8.547-7.676c0.123-0.247,0.023-0.547-0.224-0.671 2490 c-0.247-0.121-0.547-0.023-0.671,0.224C37.617,7.848,34.045,14.9,30,14.9c-4.039,0-7.617-7.052-7.653-7.124
2491 c-0.124-0.248-0.424-0.346-0.671-0.224c-0.247,0.124-0.347,0.424-0.224,0.671C21.609,8.537,25.345,15.9,30,15.9z"/> 2492 <path fill="#404040" d="M30,10.6c1.819,0,3.3-1.48,3.3-3.3C33.3,5.48,31.819,4,30,4s-3.3,1.48-3.3,3.3 2493 C26.7,9.089,28.211,10.6,30,10.6z M30,5c1.269,0,2.3,1.032,2.3,2.3c0,1.269-1.031,2.3-2.3,2.3c-1.225,0-2.3-1.075-2.3-2.3 2494 C27.7,6.032,28.732,5,30,5z"/> 2495 <path fill="#404040" d="M30,44.1c-4.655,0-8.391,7.363-8.547,7.677c-0.124,0.247-0.023,0.547,0.224,0.671 2496 c0.072,0.036,0.148,0.053,0.223,0.053c0.184,0,0.36-0.102,0.448-0.276C22.383,52.152,25.961,45.1,30,45.1s7.617,7.053,7.652,7.124 2497 c0.124,0.248,0.427,0.349,0.671,0.224c0.247-0.124,0.347-0.424,0.224-0.671C38.391,51.463,34.656,44.1,30,44.1z"/> 2498 <path fill="#404040" d="M30,49.4c-1.819,0-3.3,1.48-3.3,3.3S28.181,56,30,56s3.3-1.48,3.3-3.3C33.3,50.911,31.789,49.4,30,49.4z 2499 M30,55c-1.268,0-2.3-1.031-2.3-2.3s1.032-2.3,2.3-2.3c1.226,0,2.3,1.074,2.3,2.3C32.3,53.969,31.269,55,30,55z"/> 2500 <path fill="#404040" d="M52.126,37.653C52.056,37.618,45.1,34.047,45.1,30c0-4.041,6.957-7.619,7.027-7.654 2501 c0.246-0.125,0.344-0.426,0.22-0.672c-0.126-0.247-0.426-0.345-0.672-0.22C51.365,21.611,44.1,25.347,44.1,30 2502 c0,4.654,7.266,8.389,7.575,8.546c0.072,0.036,0.149,0.054,0.226,0.054c0.182,0,0.357-0.101,0.446-0.274 2503 C52.472,38.079,52.373,37.778,52.126,37.653z"/> 2504 <path fill="#404040" d="M52.7,26.7c-1.819,0-3.3,1.48-3.3,3.3s1.48,3.3,3.3,3.3S56,31.819,56,30S54.52,26.7,52.7,26.7z M52.7,32.3 2505 c-1.269,0-2.3-1.031-2.3-2.3c0-1.268,1.031-2.3,2.3-2.3S55,28.732,55,30C55,31.269,53.969,32.3,52.7,32.3z"/> 2506 <path fill="#404040" d="M15.9,30c0-4.653-7.265-8.389-7.574-8.546c-0.247-0.127-0.548-0.027-0.672,0.22 2507 c-0.125,0.246-0.026,0.547,0.22,0.672C7.944,22.381,14.9,25.954,14.9,30c0,4.041-6.956,7.618-7.026,7.653 2508 c-0.246,0.125-0.345,0.426-0.22,0.673C7.742,38.5,7.918,38.6,8.101,38.6c0.076,0,0.153-0.018,0.226-0.054 2509 C8.635,38.389,15.9,34.654,15.9,30z"/> 2510 <path fill="#404040" d="M10.6,30c0-1.819-1.48-3.3-3.3-3.3C5.48,26.7,4,28.181,4,30s1.48,3.3,3.3,3.3 2511 C9.12,33.3,10.6,31.819,10.6,30z M7.3,32.3C6.032,32.3,5,31.269,5,30c0-1.268,1.032-2.3,2.3-2.3c1.269,0,2.3,1.032,2.3,2.3 2512 C9.6,31.269,8.568,32.3,7.3,32.3z"/> 2513 <path fill="#404040" d="M8.642,20.674c0.202,0.067,3.2,1.048,6.249,1.048c1.935,0,3.89-0.395,5.164-1.668 2514 c3.28-3.281,0.731-11.082,0.621-11.412c-0.087-0.262-0.369-0.405-0.632-0.316c-0.262,0.087-0.403,0.37-0.316,0.632 2515 c0.025,0.075,2.469,7.54-0.379,10.389c-2.846,2.844-10.313,0.404-10.389,0.379c-0.261-0.085-0.545,0.055-0.632,0.317 2516 C8.238,20.304,8.38,20.587,8.642,20.674z"/> 2517 <path fill="#404040" d="M14.05,17.225c0.859,0,1.677-0.345,2.303-0.972c1.292-1.292,1.292-3.315,0-4.607 2518 c-1.253-1.253-3.354-1.252-4.607,0c-1.292,1.292-1.292,3.315,0,4.607C12.373,16.88,13.191,17.225,14.05,17.225z M12.454,12.354 2519 c0.438-0.438,1.004-0.679,1.597-0.679c0.592,0,1.159,0.241,1.596,0.679c0.91,0.91,0.91,2.283,0,3.193 2520 c-0.875,0.875-2.318,0.875-3.193,0C11.543,14.636,11.543,13.264,12.454,12.354z"/> 2521 <path fill="#404040" d="M51.358,39.325c-0.331-0.11-8.133-2.659-11.412,0.621c-3.28,3.281-0.731,11.082-0.621,11.412 2522 c0.07,0.209,0.266,0.342,0.475,0.342c0.053,0,0.105-0.008,0.158-0.025c0.262-0.088,0.403-0.371,0.316-0.633 2523 c-0.025-0.075-2.47-7.54,0.379-10.389c2.845-2.847,10.314-0.403,10.389-0.379c0.263,0.087,0.545-0.055,0.633-0.316 2524 C51.762,39.695,51.62,39.413,51.358,39.325z"/> 2525 <path fill="#404040" d="M43.63,43.764c-1.165,1.282-1.165,3.291,0,4.572c0.571,0.629,1.403,0.988,2.282,0.988 2526 c0.871,0,1.724-0.354,2.342-0.971c1.291-1.291,1.291-3.315,0-4.607C47,42.493,44.915,42.478,43.63,43.764z M47.547,47.646 2527 c-0.862,0.86-2.4,0.869-3.177,0.018c-0.823-0.905-0.822-2.323-0.017-3.211c0.438-0.438,1.004-0.678,1.597-0.678 2528 c0.592,0,1.159,0.24,1.597,0.678C48.457,45.363,48.457,46.736,47.547,47.646z"/> 2529 <path fill="#404040" d="M39.946,19.954c1.274,1.274,3.229,1.669,5.164,1.668c3.048,0,6.046-0.98,6.248-1.048 2530 c0.262-0.087,0.403-0.37,0.316-0.632c-0.088-0.262-0.37-0.399-0.633-0.316c-0.074,0.026-7.544,2.464-10.389-0.379 2531 c-2.845-2.845-0.404-10.313-0.379-10.388c0.087-0.262-0.055-0.545-0.316-0.632c-0.261-0.085-0.545,0.054-0.633,0.316 2532 C39.215,8.873,36.666,16.673,39.946,19.954z"/> 2533 <path fill="#404040" d="M45.95,17.125c0.858,0,1.677-0.345,2.304-0.972c1.291-1.292,1.291-3.315,0-4.607
2534 c-1.254-1.254-3.355-1.252-4.607,0c-1.23,1.231-1.237,3.247,0,4.607C44.272,16.78,45.091,17.125,45.95,17.125z M44.354,12.253 2535 c0.438-0.438,1.004-0.679,1.597-0.679c0.592,0,1.159,0.241,1.597,0.679c0.91,0.91,0.91,2.283,0,3.193 2536 c-0.876,0.875-2.336,0.857-3.177,0.017C43.494,14.5,43.487,13.12,44.354,12.253z"/> 2537 <path fill="#404040" d="M20.054,40.047c-3.278-3.278-11.169-0.829-11.504-0.724c-0.263,0.083-0.409,0.364-0.326,0.627 2538 c0.083,0.264,0.362,0.409,0.627,0.326c0.076-0.022,7.644-2.375,10.496,0.478c2.845,2.845,0.404,10.313,0.379,10.388 2539 c-0.087,0.263,0.055,0.545,0.317,0.633c0.052,0.018,0.105,0.025,0.158,0.025c0.209,0,0.404-0.133,0.474-0.342 2540 C20.785,51.128,23.334,43.327,20.054,40.047z"/> 2541 <path fill="#404040" d="M11.747,43.746c-0.626,0.627-0.972,1.445-0.972,2.304c0,0.859,0.345,1.678,0.972,2.304 2542 s1.444,0.971,2.304,0.971c0.859,0,1.677-0.345,2.303-0.971c1.189-1.189,1.197-3.291,0-4.607 2543 C15.1,42.493,12.999,42.495,11.747,43.746z M15.646,47.646c-0.875,0.876-2.318,0.874-3.193,0c-0.438-0.438-0.679-1.004-0.679-1.597 2544 c0-0.592,0.241-1.159,0.679-1.597s1.004-0.678,1.597-0.678c0.592,0,1.159,0.24,1.58,0.66 2545 C16.448,45.337,16.456,46.837,15.646,47.646z"/> 2546</g> 2547</svg> 2548 2549` 2550}); 2551 2552//school-university 2553Vue.component('fj-icon-school-university', { 2554 template: ` 2555<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2556 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2557<path fill="#404040" d="M59.881,23.876c-0.021-0.025-0.046-0.048-0.072-0.069c0,0,0,0,0,0c-0.033-0.026-0.069-0.047-0.107-0.064 2558 l-29.39-13.695C30.245,10.016,30.173,10,30.1,10h-0.2c-0.073,0-0.145,0.016-0.211,0.047l-29.4,13.7C0.113,23.829,0,24.105,0,24.3 2559 s0.113,0.371,0.289,0.453l11.705,5.455L7.1,32.342c-0.183,0.079-0.3,0.259-0.3,0.458v16.7c0,0.276,0.224,0.5,0.5,0.5 2560 s0.5-0.224,0.5-0.5V33.127l5.403-2.356l0.712,0.332c-0.005,0-0.009-0.003-0.015-0.003c-0.276,0-0.5,0.224-0.5,0.5v10.5 2561 c0,0.084,0.021,0.167,0.062,0.241C15.817,46.623,22.463,49.5,30,49.5c7.537,0,14.184-2.877,16.538-7.159 2562 c0.04-0.074,0.062-0.157,0.062-0.241V31.6c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5v10.369C43.391,45.82,37.005,48.5,30,48.5 2563 c-7.004,0-13.39-2.68-15.6-6.531V31.6c0-0.129-0.052-0.244-0.132-0.332l15.421,7.186c0.066,0.031,0.139,0.047,0.211,0.047h0.2 2564 c0.073,0,0.146-0.017,0.212-0.048l29.223-13.716c0.257-0.021,0.461-0.267,0.465-0.529c0,0,0,0,0,0v0c0-0.002,0-0.005,0-0.007 2565 c0-0.001,0-0.003,0-0.004c0,0,0-0.001,0-0.001c0,0,0,0,0-0.001C59.998,24.072,59.954,23.961,59.881,23.876z M30,37.495 2566 l-15.574-7.258L30.2,23.358c0.253-0.11,0.369-0.405,0.259-0.658c-0.11-0.253-0.406-0.37-0.658-0.259l-16.584,7.233L1.577,24.25 2567 L30,11.005l28.319,13.197L30,37.495z"/> 2568</svg> 2569 2570` 2571}); 2572 2573//other 2574Vue.component('fj-icon-other', { 2575 template: ` 2576<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2577 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2578<g> 2579 <path fill="#404040" d="M51.672,47.166c-0.902-1.004-1.552-2.065-2.104-3.44C53.122,39.718,55,34.976,55,30 2580 C55,17.814,43.785,7.9,30,7.9S5,17.814,5,30c0,12.139,11.258,22.098,25.096,22.2c0.001,0,0.002,0,0.004,0 2581 c4.738,0,9.417-1.195,13.533-3.458c1.802,1.05,4.025,1.657,6.452,1.758l3.5,0.1c0.005,0,0.01,0,0.015,0c0.009,0,0.014,0,0.02,0 2582 c0.276,0,0.5-0.224,0.5-0.5c0-0.171-0.086-0.322-0.217-0.412L51.672,47.166z M50.12,49.5c-2.339-0.097-4.469-0.693-6.159-1.727 2583 C43.883,47.726,43.792,47.7,43.7,47.7H43.6c-0.307,0-0.479,0.109-0.575,0.235c-3.938,2.136-8.402,3.265-12.922,3.265 2584 C16.813,51.101,6,41.591,6,30C6,18.365,16.767,8.9,30,8.9S54,18.365,54,30c0,4.77-1.823,9.322-5.254,13.146 2585 c-0.257,0.257-0.289,0.586-0.11,0.939c0.599,1.495,1.306,2.651,2.29,3.745l1.535,1.736L50.12,49.5z"/> 2586 <path fill="#404040" d="M28.9,17.7c-1.972,0-3.908,0.827-5.312,2.268c-1.398,1.435-2.14,3.298-2.088,5.245 2587 c0.008,0.277,0.266,0.483,0.513,0.487c0.276-0.007,0.494-0.237,0.487-0.513c-0.044-1.675,0.597-3.281,1.805-4.521 2588 c1.217-1.249,2.892-1.965,4.595-1.965c3.108,0,5.761,2.182,6.308,5.188c0.477,2.667-0.591,5.233-2.789,6.699
2589 C30.09,32.174,28.7,34.833,28.7,37.7v0.6c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5v-0.6c0-2.536,1.227-4.886,3.277-6.284 2590 c2.53-1.688,3.762-4.639,3.215-7.706C35.559,20.228,32.491,17.7,28.9,17.7z"/> 2591 <path fill="#404040" d="M29.3,40.6c-0.4,0-0.7,0.301-0.7,0.7c0,0.4,0.3,0.7,0.7,0.7c0.4,0,0.7-0.3,0.7-0.7 2592 C30,40.9,29.7,40.6,29.3,40.6z"/> 2593</g> 2594</svg> 2595 2596` 2597}); 2598 2599//hr-admin 2600Vue.component('fj-icon-hr-admin', { 2601 template: ` 2602<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2603 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2604<g> 2605 <path fill="#404040" d="M55.754,43.047l-0.086-0.086l-1.778-0.563l-0.315-0.655l-0.037-0.111l0.715-1.519l0.048-0.564l-0.084-0.126 2606 c-0.692-1.04-1.602-1.788-2.316-2.323L51.666,37H51.5l-1.826,0.765l-0.018-0.006c-0.184-0.15-0.363-0.21-0.499-0.256 2607 c-0.045-0.015-0.09-0.028-0.198-0.076l-0.572-1.648C48.349,35.601,48.209,35.3,47.7,35.3H44.6c-0.286,0-0.497,0.19-0.555,0.249 2608 l-0.085,0.086l-0.562,1.775l-0.655,0.315l-0.111,0.037l-1.519-0.715L40.549,37l-0.126,0.084c-1.038,0.691-1.786,1.601-2.323,2.316 2609 L38,39.533v0.078c-0.079,0.189-0.053,0.389,0.075,0.56l0.69,1.467l-0.339,0.703l-1.648,0.573C36.601,42.952,36.3,43.092,36.3,43.6 2610 V46.7c0,0.284,0.189,0.496,0.247,0.554l0.086,0.087l1.777,0.561l0.315,0.656l0.037,0.11l-0.715,1.52L38,50.751l0.084,0.126 2611 c0.691,1.038,1.601,1.786,2.316,2.323l0.232,0.1H40.8l1.832-0.767l0.711,0.342l0.572,1.647C43.953,54.7,44.093,55,44.6,55H47.7 2612 c0.283,0,0.494-0.187,0.552-0.244l0.088-0.087l0.562-1.779l0.767-0.353l1.52,0.715l0.563,0.048l0.126-0.084 2613 c1.04-0.692,1.788-1.602,2.323-2.316l0.1-0.134v-0.076c0.08-0.19,0.054-0.39-0.075-0.562l-0.689-1.466l0.34-0.705l1.647-0.571 2614 C55.7,47.348,56,47.208,56,46.7V43.6C56,43.315,55.812,43.104,55.754,43.047z M55,46.503L53.106,47.1l-0.481,1.144l-0.162,0.489 2615 l0.813,1.73c-0.447,0.583-1.038,1.273-1.805,1.818l-1.739-0.818L48.1,52.106L47.502,54h-2.704l-0.599-1.894l-1.142-0.481 2616 l-0.484-0.16l-1.77,0.786c-0.577-0.445-1.251-1.029-1.785-1.779l0.818-1.739l-0.19-0.557l-0.272-0.535L39.193,47.1L37.3,46.502 2617 v-2.703l1.894-0.599l0.481-1.143l0.162-0.49l-0.813-1.729c0.448-0.585,1.04-1.275,1.805-1.819l1.739,0.818l0.559-0.19l0.533-0.272 2618 l0.541-0.181l0.599-1.894h2.703l0.598,1.894l0.478,0.154c0.088,0.044,0.176,0.075,0.265,0.104c0.115,0.038,0.157,0.054,0.205,0.102 2619 l0.084,0.084l0.596,0.197l1.77-0.786c0.576,0.444,1.251,1.027,1.785,1.779l-0.818,1.739l0.19,0.559l0.18,0.357l0.273,0.716 2620 L55,43.798V46.503z"/> 2621 <path fill="#404040" d="M22.1,28.5c-5.459,0-9.9,4.441-9.9,9.9s4.441,9.899,9.9,9.899S32,43.859,32,38.4S27.559,28.5,22.1,28.5z 2622 M22.1,47.3c-4.907,0-8.9-3.992-8.9-8.899s3.993-8.9,8.9-8.9s8.9,3.993,8.9,8.9S27.007,47.3,22.1,47.3z"/> 2623 <path fill="#404040" d="M22.1,31.8c-3.523,0-6.5,3.022-6.5,6.601c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2624 c0-3.036,2.519-5.601,5.5-5.601c0.276,0,0.5-0.224,0.5-0.5S22.376,31.8,22.1,31.8z"/> 2625 <path fill="#404040" d="M46.1,40.7c-2.481,0-4.5,2.019-4.5,4.5s2.019,4.5,4.5,4.5s4.5-2.019,4.5-4.5S48.581,40.7,46.1,40.7z 2626 M46.1,48.7c-1.93,0-3.5-1.57-3.5-3.5s1.57-3.5,3.5-3.5s3.5,1.57,3.5,3.5S48.029,48.7,46.1,48.7z"/> 2627 <path fill="#404040" d="M34.5,29.3c0.373,0,0.7-0.327,0.7-0.7v-8.483l1.364-0.642C36.744,19.424,37,19.269,37,18.8v-5.4 2628 c0-1.669-1.287-3.16-2.944-3.397l-0.189-0.021l0.098-0.196C34.193,9.214,34.3,8.646,34.3,8c0-2.371-1.929-4.3-4.3-4.3 2629 S25.7,5.629,25.7,8c0,0.602,0.123,1.253,0.353,1.824l0.08,0.159l-0.203,0.022C24.232,10.248,23,11.675,23,13.4v5.4 2630 c0,0.47,0.256,0.625,0.436,0.675l1.364,0.642v5.265c-0.872-0.183-1.774-0.282-2.7-0.282c-1.47,0-2.879,0.253-4.2,0.702v-5.685 2631 l1.364-0.642C19.443,19.424,19.7,19.27,19.7,18.8v-5.4c0-1.669-1.287-3.16-2.945-3.397l-0.189-0.021l0.098-0.196 2632 C16.894,9.212,17,8.645,17,8c0-2.371-1.929-4.3-4.3-4.3c-2.411,0-4.3,1.845-4.3,4.2c0,0.741,0.146,1.314,0.453,1.824l0.08,0.159 2633 L8.729,9.905C7.032,10.147,5.8,11.575,5.8,13.3v5.4c0,0.463,0.25,0.62,0.428,0.673L7.5,20.009V28.5c0,0.373,0.327,0.7,0.7,0.7h4.39 2634 c-2.28,2.392-3.69,5.63-3.69,9.2c0,2.202,0.542,4.275,1.486,6.106l-1.942,1.941c-0.291,0.294-0.291,0.81-0.002,1.102l0.89,0.91 2635 l-5.084,5.086c-0.142,0.141-0.223,0.343-0.223,0.555c0,0.211,0.081,0.413,0.222,0.553l1.499,1.499 2636 c0.141,0.142,0.343,0.223,0.555,0.223c0.211,0,0.413-0.081,0.553-0.222l5.056-5.057l0.836,0.855 2637 c0.141,0.142,0.343,0.223,0.554,0.223c0.212,0,0.414-0.081,0.554-0.222l1.898-1.898C17.637,51.102,19.8,51.7,22.1,51.7 2638 c7.278,0,13.2-5.966,13.2-13.3c0-3.521-1.375-6.719-3.6-9.101H34.5z M24,18.636V13.4c0-1.222,0.871-2.233,2.055-2.403l1.613-0.18 2639 l-0.704-1.403C26.799,9.001,26.7,8.473,26.7,8c0-1.819,1.48-3.3,3.3-3.3s3.3,1.48,3.3,3.3c0,0.522-0.081,0.958-0.247,
26391.376 2640 l-0.722,1.441l1.599,0.178C35.071,11.158,36,12.237,36,13.4v5.236l-1.8,0.846V28.3h-2.8c-0.193,0-0.355,0.112-0.438,0.272 2641 c-1.462-1.339-3.216-2.356-5.162-2.93v-6.159L24,18.636z M6.8,18.541V13.3c0-1.222,0.871-2.233,2.055-2.403l1.613-0.18l-0.74-1.475 2642 C9.498,8.858,9.4,8.457,9.4,7.9c0-1.794,1.45-3.2,3.3-3.2C14.52,4.7,16,6.181,16,8c0,0.521-0.082,0.958-0.247,1.376l-0.721,1.441 2643 l1.598,0.178c1.142,0.163,2.071,1.242,2.071,2.405l0,5.236l-1.8,0.847V25.9c0,0.091,0.031,0.171,0.073,0.245 2644 c-1.288,0.549-2.465,1.308-3.507,2.219c-0.091-0.099-0.22-0.164-0.365-0.164H8.5v-8.809L6.8,18.541z M6.3,55.293L5.107,54.1 2645 l4.924-4.924l1.18,1.206L6.3,55.293z M13.302,51.091l-3.997-4.089l1.595-1.596c1.017,1.643,2.37,3.05,3.975,4.111L13.302,51.091z 2646 M22.1,50.7c-2.292,0-4.431-0.652-6.265-1.765l-0.189-0.189l-0.045,0.045c-1.625-1.036-2.986-2.446-3.973-4.112l0.025-0.025 2647 l-0.102-0.103C10.508,42.739,9.9,40.643,9.9,38.4c0-6.782,5.473-12.3,12.2-12.3s12.2,5.518,12.2,12.3S28.827,50.7,22.1,50.7z"/> 2648 <path fill="#404040" d="M28.6,13.4h1.215c-0.126,0.091-0.215,0.232-0.215,0.4v3.9c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2649 v-3.9c0-0.168-0.088-0.309-0.215-0.4H31.6c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5h-3c-0.276,0-0.5,0.224-0.5,0.5 2650 S28.324,13.4,28.6,13.4z"/> 2651 <path fill="#404040" d="M11.3,13.4h1.115c-0.127,0.091-0.215,0.232-0.215,0.4v3.9c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2652 v-3.9c0-0.168-0.088-0.309-0.215-0.4H14.2c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5h-2.9c-0.276,0-0.5,0.224-0.5,0.5 2653 S11.023,13.4,11.3,13.4z"/> 2654 <path fill="#404040" d="M40.836,19.375l1.364,0.643V28.5c0,0.379,0.32,0.7,0.7,0.7H51.8c0.38,0,0.7-0.321,0.7-0.7v-8.482 2655 l1.332-0.627c0.295-0.043,0.568-0.241,0.568-0.69v-5.4c0-1.668-1.287-3.16-2.944-3.397l-0.189-0.021l0.099-0.197 2656 C51.594,9.111,51.7,8.543,51.7,7.9c0-2.371-1.929-4.3-4.3-4.3S43.1,5.529,43.1,7.9c0,0.601,0.123,1.251,0.354,1.824l0.079,0.159 2657 L43.33,9.905c-1.698,0.243-2.93,1.67-2.93,3.395v5.4C40.4,19.169,40.656,19.324,40.836,19.375z M41.4,13.3 2658 c0-1.222,0.871-2.233,2.056-2.403l1.611-0.18l-0.703-1.403C44.198,8.9,44.1,8.371,44.1,7.9c0-1.819,1.48-3.3,3.301-3.3 2659 c1.819,0,3.3,1.48,3.3,3.3c0,0.52-0.081,0.956-0.247,1.376l-0.722,1.441l1.598,0.178c1.143,0.163,2.071,1.242,2.071,2.405v5.188 2660 l-1.9,0.895V28.2h-8.3v-8.817l-1.8-0.847V13.3z"/> 2661 <path fill="#404040" d="M46,13.4h1.215C47.088,13.491,47,13.632,47,13.8v3.9c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5v-3.9 2662 c0-0.168-0.088-0.309-0.215-0.4H48.9c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5H46c-0.276,0-0.5,0.224-0.5,0.5 2663 S45.724,13.4,46,13.4z"/> 2664</g> 2665</svg> 2666 2667` 2668}); 2669 2670//it-engineering 2671Vue.component('fj-icon-it-engineering', { 2672 template: ` 2673<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2674 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2675<g> 2676 <path fill="#404040" d="M47.1,33.7c0-3.529-2.826-6.4-6.3-6.4h-2.989c0.053-0.321,0.09-0.675,0.09-1c0-3.529-2.826-6.4-6.301-6.4 2677 c-2.454,0-4.567,1.339-5.714,3.6H25.5c-2.491,0-4.792,1.513-5.832,3.8H19.2c-3.474,0-6.3,2.871-6.3,6.4 2678 c0,3.528,2.826,6.399,6.3,6.399h21.6C44.273,40.1,47.1,37.229,47.1,33.7z M40.8,39.1H19.2c-2.922,0-5.3-2.422-5.3-5.399 2679 s2.378-5.4,5.3-5.4h1.141l0.125-0.318c0.815-2.083,2.838-3.482,5.034-3.482h1.022l0.133-0.293c0.941-2.071,2.79-3.307,4.944-3.307 2680 c2.923,0,5.301,2.422,5.301,5.4c0,0.469-0.1,1.036-0.186,1.379L36.561,28.3H40.8c2.922,0,5.3,2.423,5.3,5.4 2681 C46.1,36.627,43.673,39.1,40.8,39.1z"/> 2682 <path fill="#404040" d="M30.5,49v-6.3c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5V49c0,0.276,0.224,0.5,0.5,0.5 2683 S30.5,49.276,30.5,49z"/> 2684 <path fill="#404040" d="M29.5,11v7.5c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5V11c0-0.276-0.224-0.5-0.5-0.5 2685 S29.5,10.724,29.5,11z"/> 2686 <path fill="#404040" d="M30,9c2.15,0,3.9-1.794,3.9-4S32.15,1,30,1s-3.9,1.794-3.9,4S27.85,9,30,9z M30,2c1.6,0,2.9,1.346,2.9,3 2687 S31.6,8,30,8c-1.599,0-2.9-1.346-2.9-3S28.401,2,30,2z"/> 2688 <path fill="#404040" d="M30,51c-2.15,0-3.9,1.794-3.9,4s1.75,4,3.9,4s3.9-1.794,3.9-4S32.15,51,30,51z M30,58 2689 c-1.599,0-2.9-1.346-2.9-3s1.301-3,2.9-3c1.6,0,2.9,1.346,2.9,3S31.6,58,30,58z"/> 2690 <path fill="#404040" d="M45.457,40.671l-0.5-0.3c-0.233-0.142-0.543-0.065-0.686,0.172c-0.143,0.236-0.065,0.544,0.172,0.686 2691 l0.5,0.3c0.08,0.049,0.169,0.071,0.257,0.071c0.169,0,0.335-0.087,0.429-0.243C45.771,41.12,45.694,40.813,45.457,40.671z"/> 2692 <path fill="#404040" d="M20.406,23.604c0.089,0.064,0.192,0.096,0.294,0.096c0.154,0,0.307-0.071,0.405-0.206 2693 c0.163-0.223,0.113-0.536-0.11-0.699l-5.9-4.3c-0.223-0.162-0.536-0.114-0.699,0.11c-0.163,0.223-0.113,0.536,0.11,0.699 2694 L20.406,23.604z"/> 2695 <path fill="#404040" d="M9.9,19.3c2.15,0,3.9-1.794,3.9-4s-1.75-4-3.9-4S6,13.094,6,15.3S7.75,19.3,9.9,19.3z M9.9,12.3 2696 c1.599,0,2.9,1.346,2.9,3s-1.301,3-2.9,3S7,16.954,7,15.3S8.301,12.3,9.9,12.3z"/> 2697 <path fill="#404040" d="M50.1,40.7c-2.15,0-3.899,1.794-3.899,4s1.749,4,3.899,4s3.9-1.794,3.9-4S52.25,40.7,50.1,40.7z M50.1,47.7 2698 c-1.599,0-2.899-1.346-2.899-3s1.301-3,2.899-3c1.6,0,2.9,1.346,2.9,3S51.699,47.7,50.1,47.7z"/> 2699 <path fill="#404040" d="M15.335,40.176l-0.8,0.5c-0.234,0.146-0.305,0.454-0.159,0.688c0.095,0.152,0.258,0.235,0.424,0.235 2700 c0.09,0,0.182-0.024,0.265-0.076l0.8-0.5c0.234-0.146,0.305-0.454,0.159-0.688C15.877,40.1,15.57,40.029,15.335,40.176z"/> 2701 <path fill="#404040" d="M39.2,23.7c0.102,0,0.203-0.03,0.291-0.094l6-4.3c0.225-0.161,0.276-0.473,0.115-0.698 2702 c-0.161-0.226-0.476-0.275-0.697-0.115l-6,4.3c-0.225,0.161-0.276,0.473-0.115,0.698C38.892,23.628,39.045,23.7,39.2,23.7z"/> 2703 <path fill="#404040" d="M50.1,19.3c2.15,0,3.9-1.794,3.9-4s-1.75-4-3.9-4s-3.899,1.794-3.899,4S47.949,19.3,50.1,19.3z M50.1,12.3 2704 c1.6,0,2.9,1.346,2.9,3s-1.301,3-2.9,3c-1.599,0-2.899-1.346-2.899-3S48.501,12.3,50.1,12.3z"/> 2705 <path fill="#404040" d="M9.9,40.7c-2.15,0-3.9,1.794-3.9,4s1.75,4,3.9,4s3.9-1.794,3.9-4S12.05,40.7,9.9,40.7z M9.9,47.7 2706 c-1.599,0-2.9-1.346-2.9-3s1.301-3,2.9-3s2.9,1.346,2.9,3S11.499,47.7,9.9,47.7z"/> 2707</g> 2708</svg> 2709 2710` 2711}); 2712 2713//designer 2714Vue.component('fj-icon-designer', { 2715 template: ` 2716<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2717 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2718<g> 2719 <path fill="#404040" d="M24.6,34c6.121,0,11.1-5.024,11.1-11.2c0-1.137,0-2.854-1.344-3.829c-1.215-0.73-2.791-0.343-4.21,1.075 2720 c-0.778,0.778-2.015,0.778-2.793,0C26.976,19.668,26.8,19.209,26.8,18.6c0-0.504,0.193-0.991,0.567-1.461 2721 c1.459-1.58,1.52-2.759,1.407-3.397c-0.261-0.784-0.883-1.455-1.751-1.89C26.318,11.5,25.366,11.5,24.6,11.5 2722 c-6.224,0-11.1,4.963-11.1,11.3C13.5,28.976,18.479,34,24.6,34z M24.6,12.5c0.625,0,1.482,0,1.976,0.247 2723 c0.62,0.31,1.075,0.788,1.23,1.235c0.051,0.308,0.04,1.165-1.197,2.505c-0.537,0.672-0.81,1.383-0.81,2.113
2724 c0,0.879,0.277,1.583,0.847,2.153c1.156,1.156,3.051,1.156,4.207,0c0.752-0.752,1.506-1.15,2.178-1.15 2725 c0.289,0,0.563,0.076,0.774,0.201C34.7,20.455,34.7,21.755,34.7,22.8c0,5.625-4.531,10.2-10.1,10.2s-10.1-4.576-10.1-10.2 2726 C14.5,16.928,18.842,12.5,24.6,12.5z"/> 2727 <path fill="#404040" d="M39.9,20.251V30h1v-9.62c1.284-0.104,2.3-1.17,2.3-2.48v-1.1c0-1.474,0-2.538,0.183-3.269l0.53-1.944 2728 l-1.941,0.53c-3.771,0.999-3.771,3.938-3.764,5.973C38.399,19.138,39.053,19.937,39.9,20.251z M42.231,13.083l0.257-0.07 2729 l-0.073,0.266C42.2,14.139,42.2,15.255,42.2,16.8v1.1c0,0.827-0.673,1.5-1.5,1.5c-0.74,0-1.346-0.599-1.5-1.4 2730 C39.2,16.071,39.2,13.885,42.231,13.083z"/> 2731 <path fill="#404040" d="M32,39.8h-3.9c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5H32c0.276,0,0.5-0.224,0.5-0.5 2732 S32.276,39.8,32,39.8z"/> 2733 <path fill="#404040" d="M52.1,7.8H7.9c-2.467,0-4.4,1.933-4.4,4.4V39.6c0,2.427,1.974,4.4,4.4,4.4h21.6v7.2H15.1 2734 c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5H45c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5H30.5V44h21.6 2735 c2.468,0,4.4-1.933,4.4-4.4V12.2C56.5,9.774,54.526,7.8,52.1,7.8z M7.9,8.8h44.2c1.875,0,3.4,1.525,3.4,3.4v24.7h-51V12.2 2736 C4.5,10.262,5.961,8.8,7.9,8.8z M52.1,43H7.9c-1.875,0-3.4-1.525-3.4-3.4V37.9h51V39.6C55.5,41.538,54.038,43,52.1,43z"/> 2737 <path fill="#404040" d="M20.5,20.7c1.158,0,2.1-0.942,2.1-2.1s-0.942-2.1-2.1-2.1s-2.1,0.942-2.1,2.1S19.342,20.7,20.5,20.7z 2738 M20.5,17.5c0.606,0,1.1,0.494,1.1,1.1s-0.494,1.1-1.1,1.1s-1.1-0.494-1.1-1.1S19.894,17.5,20.5,17.5z"/> 2739 <path fill="#404040" d="M19.2,26c1.158,0,2.1-0.942,2.1-2.1s-0.942-2.1-2.1-2.1c-1.158,0-2.1,0.942-2.1,2.1S18.042,26,19.2,26z 2740 M19.2,22.8c0.606,0,1.1,0.494,1.1,1.1S19.807,25,19.2,25s-1.1-0.494-1.1-1.1S18.594,22.8,19.2,22.8z"/> 2741 <path fill="#404040" d="M21.2,28.4c0,1.158,0.942,2.1,2.1,2.1c1.158,0,2.1-0.942,2.1-2.1s-0.942-2.1-2.1-2.1 2742 C22.142,26.3,21.2,27.242,21.2,28.4z M23.3,27.3c0.606,0,1.1,0.494,1.1,1.1s-0.494,1.1-1.1,1.1s-1.1-0.494-1.1-1.1 2743 S22.693,27.3,23.3,27.3z"/> 2744 <path fill="#404040" d="M29.3,28.3c1.158,0,2.101-0.942,2.101-2.1c0-1.158-0.942-2.1-2.101-2.1c-1.158,0-2.1,0.942-2.1,2.1 2745 C27.2,27.358,28.142,28.3,29.3,28.3z M29.3,25.1c0.607,0,1.101,0.494,1.101,1.1s-0.494,1.1-1.101,1.1c-0.606,0-1.1-0.493-1.1-1.1 2746 S28.693,25.1,29.3,25.1z"/> 2747 <path fill="#404040" d="M41.9,30.2h-3c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5h3c0.276,0,0.5-0.224,0.5-0.5 2748 S42.177,30.2,41.9,30.2z"/> 2749</g> 2750</svg> 2751 2752` 2753}); 2754 2755//agent 2756Vue.component('fj-icon-agent', { 2757 template: ` 2758<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2759 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2760<path fill="#404040" d="M51.9,16.7h-4.621c0.008-0.033,0.021-0.064,0.021-0.1v-1.3c0-0.976-0.824-1.8-1.8-1.8h-0.843 2761 c0.027-0.062,0.043-0.129,0.043-0.2v-3c0-1.68-1.42-3.1-3.101-3.1H18.4c-1.681,0-3.1,1.419-3.1,3.1v3c0,0.071,0.016,0.139,0.043,0.2 2762 H14.5c-0.976,0-1.8,0.824-1.8,1.8v1.3c0,0.036,0.013,0.067,0.02,0.1H8.1C6.419,16.7,5,18.12,5,19.8V23v5.2v21.5 2763 c0,1.68,1.419,3.1,3.1,3.1h43.8c1.68,0,3.1-1.42,3.1-3.1V28.2V23v-3.2C55,18.12,53.58,16.7,51.9,16.7z M46.3,15.3v1.3 2764 c0,0.036,0.013,0.067,0.021,0.1h-6.841c0.007-0.033,0.021-0.064,0.021-0.1v-1.3c0-0.426,0.374-0.8,0.8-0.8h5.2 2765 C45.926,14.5,46.3,14.874,46.3,15.3z M19.7,13.5h-0.843c0.027-0.062,0.043-0.129,0.043-0.2v-1.7c0-0.426,0.374-0.8,0.8-0.8h20.6 2766 c0.426,0,0.8,0.374,0.8,0.8v1.7c0,0.071,0.016,0.139,0.043,0.2H40.3c-0.976,0-1.8,0.824-1.8,1.8v1.3c0,0.036,0.014,0.067,0.021,0.1 2767 H21.48c0.007-0.033,0.02-0.064,0.02-0.1v-1.3C21.5,14.324,20.676,13.5,19.7,13.5z M16.3,13.3v-3c0-1.119,0.981-2.1,2.1-2.1h23.2 2768 c1.119,0,2.101,0.981,2.101,2.1v3c0,0.071,0.016,0.139,0.043,0.2h-1.687c0.027-0.062,0.043-0.129,0.043-0.2v-1.7 2769 c0-0.976-0.824-1.8-1.8-1.8H19.7c-0.976,0-1.8,0.824-1.8,1.8v1.7c0,0.071,0.016,0.139,0.043,0.2h-1.686 2770 C16.284,13.438,16.3,13.371,16.3,13.3z M13.7,16.6v-1.3c0-0.426,0.374-0.8,0.8-0.8h5.2c0.426,0,0.8,0.374,0.8,0.8v1.3 2771 c0,0.036,0.013,0.067,0.02,0.1h-6.84C13.687,16.667,13.7,16.636,13.7,16.6z M6,19.8c0-1.119,0.981-2.1,2.1-2.1h43.8 2772 c1.118,0,2.1,0.981,2.1,2.1V23v5.2c0,2.636-2.064,4.7-4.7,4.7H34.4V31.8c0-0.976-0.824-1.8-1.801-1.8h-5.2 2773 c-0.976,0-1.8,0.824-1.8,1.8V32.9H10.7c-2.592,0-4.7-2.108-4.7-4.7V23V19.8z M43.7,51.8H42.1V33.9H43.7V51.8z M17.9,51.8h-1.6V33.9 2774 h1.6V51.8z M18.9,33.9h6.7v1.8c0,0.976,0.824,1.8,1.8,1.8h5.2c0.977,0,1.801-0.824,1.801-1.8v-1.8H41.1V51.8H18.9V33.9z M33.4,35.7 2775 c0,0.426-0.374,0.8-0.801,0.8h-5.2c-0.426,0-0.8-0.374-0.8-0.8v-3.9c0-0.426,0.374-0.8,0.8-0.8h5.2c0.427,0,0.801,0.374,0.801,0.8 2776 V35.7z M6,49.7V31.419c1.028,1.497,2.751,2.481,4.7,2.481h4.6V51.8H8.1C6.981,51.8,6,50.818,6,49.7z M54,49.7 2777 c0,1.118-0.981,2.1-2.1,2.1h-7.2V33.9h4.6c1.974,0,3.681-0.956,4.7-2.439V49.7z"/> 2778</svg> 2779 2780` 2781}); 2782 2783//analyst 2784Vue.component('fj-icon-analyst', { 2785 template: ` 2786<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2787 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2788<path fill="#404040" d="M51.9,16.7h-4.621c0.008-0.033,0.021-0.064,0.021-0.1v-1.3c0-0.976-0.824-1.8-1.8-1.8h-0.843 2789 c0.027-0.062,0.043-0.129,0.043-0.2v-3c0-1.68-1.42-3.1-3.101-3.1H18.4c-1.681,0-3.1,1.419-3.1,3.1v3c0,0.071,0.016,0.139,0.043,0.2 2790 H14.5c-0.976,0-1.8,0.824-1.8,1.8v1.3c0,0.036,0.013,0.067,0.02,0.1H8.1C6.419,16.7,5,18.12,5,19.8V23v5.2v21.5 2791 c0,1.68,1.419,3.1,3.1,3.1h43.8c1.68,0,3.1-1.42,3.1-3.1V28.2V23v-3.2C55,18.12,53.58,16.7,51.9,16.7z M46.3,15.3v1.3 2792 c0,0.036,0.013,0.067,0.021,0.1h-6.841c0.007-0.033,0.021-0.064,0.021-0.1v-1.3c0-0.426,0.374-0.8,0.8-0.8h5.2 2793 C45.926,14.5,46.3,14.874,46.3,15.3z M19.7,13.5h-0.843c0.027-0.062,0.043-0.129,0.043-0.2v-1.7c0-0.426,0.374-0.8,0.8-0.8h20.6 2794 c0.426,0,0.8,0.374,0.8,0.8v1.7c0,0.071,0.016,0.139,0.043,0.2H40.3c-0.976,0-1.8,0.824-1.8,1.8v1.3c0,0.036,0.014,0.067,0.021,0.1 2795 H21.48c0.007-0.033,0.02-0.064,0.02-0.1v-1.3C21.5,14.324,20.676,13.5,19.7,13.5z M16.3,13.3v-3c0-1.119,0.981-2.1,2.1-2.1h23.2
2796 c1.119,0,2.101,0.981,2.101,2.1v3c0,0.071,0.016,0.139,0.043,0.2h-1.687c0.027-0.062,0.043-0.129,0.043-0.2v-1.7 2797 c0-0.976-0.824-1.8-1.8-1.8H19.7c-0.976,0-1.8,0.824-1.8,1.8v1.7c0,0.071,0.016,0.139,0.043,0.2h-1.686 2798 C16.284,13.438,16.3,13.371,16.3,13.3z M13.7,16.6v-1.3c0-0.426,0.374-0.8,0.8-0.8h5.2c0.426,0,0.8,0.374,0.8,0.8v1.3 2799 c0,0.036,0.013,0.067,0.02,0.1h-6.84C13.687,16.667,13.7,16.636,13.7,16.6z M6,19.8c0-1.119,0.981-2.1,2.1-2.1h43.8 2800 c1.118,0,2.1,0.981,2.1,2.1V23v5.2c0,2.636-2.064,4.7-4.7,4.7H34.4V31.8c0-0.976-0.824-1.8-1.801-1.8h-5.2 2801 c-0.976,0-1.8,0.824-1.8,1.8V32.9H10.7c-2.592,0-4.7-2.108-4.7-4.7V23V19.8z M43.7,51.8H42.1V33.9H43.7V51.8z M17.9,51.8h-1.6V33.9 2802 h1.6V51.8z M18.9,33.9h6.7v1.8c0,0.976,0.824,1.8,1.8,1.8h5.2c0.977,0,1.801-0.824,1.801-1.8v-1.8H41.1V51.8H18.9V33.9z M33.4,35.7 2803 c0,0.426-0.374,0.8-0.801,0.8h-5.2c-0.426,0-0.8-0.374-0.8-0.8v-3.9c0-0.426,0.374-0.8,0.8-0.8h5.2c0.427,0,0.801,0.374,0.801,0.8 2804 V35.7z M6,49.7V31.419c1.028,1.497,2.751,2.481,4.7,2.481h4.6V51.8H8.1C6.981,51.8,6,50.818,6,49.7z M54,49.7 2805 c0,1.118-0.981,2.1-2.1,2.1h-7.2V33.9h4.6c1.974,0,3.681-0.956,4.7-2.439V49.7z"/> 2806</svg> 2807 2808` 2809}); 2810 2811//Blogger-Writer 2812Vue.component('fj-icon-blogger-writer', { 2813 template: ` 2814<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2815 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2816<g> 2817 <path fill="#404040" d="M56.055,15.902c-2.549,0.232-6.921,2.851-13.365,8.006c-0.639,0.506-1.308,1.053-1.989,1.617V16.1h10.1 2818 v-3.5c0-2.812-2.198-5.1-4.899-5.1h-29c-0.104,0-0.195,0.039-0.275,0.094C16.326,7.534,16.017,7.5,15.7,7.5 2819 c-2.277,0-4.2,1.923-4.2,4.2v32.21c-0.084-0.065-0.185-0.11-0.3-0.11H2.5V47.4c0,2.859,2.196,5.1,5,5.1 2820 c0.66,0,1.276-0.107,1.828-0.3H36.5c2.276,0,4.2-1.924,4.2-4.2v-7.4c0-0.005-0.003-0.01-0.003-0.015 2821 c2.492-2.685,5.799-6.42,8.698-10.079c2.461-3.19,7.581-9.827,7.9-13.343l0.181-1.439L56.055,15.902z M45.9,8.5 2822 c2.15,0,3.899,1.839,3.899,4.1v2.5h-9.1V15H20.4v-2.8c0-1.509-0.728-2.84-1.836-3.7H45.9z M3.5,47.4V44.8h7.7 2823 c0.115,0,0.215-0.045,0.3-0.11V47.4c0,1.012-0.413,2.111-1.07,2.863l-0.373,0.41c-0.027,0.016-0.058,0.024-0.083,0.046 2824 C9.388,51.223,8.51,51.5,7.5,51.5C5.257,51.5,3.5,49.699,3.5,47.4z M39.7,48c0,1.734-1.466,3.2-3.2,3.2H10.93l0.246-0.271 2825 c0.829-0.946,1.324-2.266,1.324-3.528V11.7c0-1.735,1.465-3.2,3.2-3.2c2.04,0,3.7,1.66,3.7,3.7v3.1c0,0.373,0.327,0.7,0.7,0.7 2826 h0.215c0.082,0.059,0.177,0.1,0.285,0.1h19.1V26c0,0.105,0.04,0.197,0.095,0.277c-3.053,2.569-6.469,5.652-10.048,9.07 2827 c-2.709,2.709-2.612,6.71-2.442,8.323c0.004,0.027,0.083,0.534,0.413,1.106l-4.071,4.07c-0.195,0.195-0.195,0.512,0,0.707 2828 C23.744,49.651,23.872,49.7,24,49.7s0.256-0.049,0.354-0.146l4.052-4.052C29.21,45.927,30.638,46,31.5,46h0.01h0.01 2829 c2.574-0.103,4.919-1.031,6.434-2.547c0.465-0.464,1.063-1.081,1.747-1.805V48z M56.302,17.055 2830 c-0.295,3.244-5.482,9.969-7.693,12.835c-3.944,4.977-9.019,10.514-11.362,12.856c-1.337,1.338-3.435,2.159-5.756,2.254 2831 c-0.955-0.001-1.838-0.105-2.333-0.25l23.496-23.497c0.195-0.195,0.195-0.512,0-0.707s-0.512-0.195-0.707,0L28.459,44.033 2832 c-0.117-0.27-0.162-0.486-0.163-0.486c-0.152-1.452-0.248-5.089,2.148-7.485c4.729-4.517,9.179-8.448,12.867-11.371 2833 c6.2-4.96,10.518-7.582,12.85-7.794l0.162-0.021L56.302,17.055z"/> 2834 <path fill="#404040" d="M16.5,24.1h19.3c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5H16.5c-0.276,0-0.5,0.224-0.5,0.5 2835 S16.224,24.1,16.5,24.1z"/> 2836 <path fill="#404040" d="M16.5,29.3h18c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5h-18c-0.276,0-0.5,0.224-0.5,0.5 2837 S16.224,29.3,16.5,29.3z"/> 2838 <path fill="#404040" d="M16.5,34.6h12.7c0.276,0,0.5-0.224,0.5-0.5s-0.224-0.5-0.5-0.5H16.5c-0.276,0-0.5,0.224-0.5,0.5 2839 S16.224,34.6,16.5,34.6z"/> 2840 <path fill="#404040" d="M25.8,39.3c0-0.276-0.224-0.5-0.5-0.5h-8.8c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5h8.8 2841 C25.576,39.8,25.8,39.576,25.8,39.3z"/> 2842</g> 2843</svg> 2844 2845` 2846}); 2847 2848//Consultant 2849Vue.component('fj-icon-consultant', { 2850 template: ` 2851<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2852 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2853<g> 2854 <path fill="#404040" d="M21.788,31.582C26.911,30.215,30.7,25.548,30.7,20c0-6.617-5.383-12-12-12s-12,5.383-12,12 2855 c0,5.556,3.801,10.229,8.935,11.588C6.898,33.119,0,41.009,0,50.2c0,0.276,
28550.224,0.5,0.5,0.5S1,50.477,1,50.2 2856 c0-8.791,6.659-16.323,15.044-17.666l-0.501,1.566l1.515,1.92l-2.813,11.953l4.451,3.994l4.56-3.989l-2.814-11.958l1.508-1.91 2857 l-0.437-1.56C29.882,33.927,36.3,41.306,36.3,50.2c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2858 C37.3,40.85,30.576,33.084,21.788,31.582z M7.7,20c0-6.065,4.935-11,11-11s11,4.935,11,11s-4.935,11-11,11S7.7,26.065,7.7,20z 2859 M20.85,33.89l-1.492,1.891l2.787,11.841l-3.44,3.011l-3.35-3.006l2.788-11.846l-1.485-1.881l0.485-1.517 2860 c0.515-0.049,1.033-0.083,1.558-0.083c0.584,0,1.16,0.032,1.729,0.089L20.85,33.89z"/> 2861 <path fill="#404040" d="M58.1,11H34.8c-1.172,0-1.899,0.728-1.899,1.9v13.3c0,1.172,0.728,1.9,1.899,1.9h2.3v3.8 2862 c0,0.255,0.051,0.455,0.156,0.611c0.135,0.201,0.355,0.316,0.604,0.316c0.33,0,0.653-0.193,1.017-0.412 2863 c0.57-0.38,3.981-3.46,4.815-4.216H58.1c1.172,0,1.9-0.728,1.9-1.9V12.9C60,11.728,59.271,11,58.1,11z M59,26.3 2864 c0,0.623-0.277,0.9-0.9,0.9H43.307l-0.143,0.129c-1.717,1.558-4.424,3.976-4.821,4.242c-0.068,0.041-0.157,0.095-0.243,0.142V27.1 2865 h-3.3c-0.622,0-0.899-0.277-0.899-0.9V12.9c0-0.623,0.277-0.9,0.899-0.9h23.3c0.623,0,0.9,0.277,0.9,0.9V26.3z"/> 2866 <circle fill="#404040" cx="46.4" cy="20" r="1.3"/> 2867 <circle fill="#404040" cx="39.9" cy="20" r="1.3"/> 2868 <circle fill="#404040" cx="53" cy="20" r="1.3"/> 2869</g> 2870</svg> 2871 2872` 2873}); 2874 2875//Customer Service 2876Vue.component('fj-icon-customer-service', { 2877 template: ` 2878<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2879 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2880<g> 2881 <path fill="#404040" d="M21.788,31.582C26.911,30.215,30.7,25.548,30.7,20c0-6.617-5.383-12-12-12s-12,5.383-12,12 2882 c0,5.556,3.801,10.229,8.935,11.588C6.898,33.119,0,41.009,0,50.2c0,0.276,0.224,0.5,0.5,0.5S1,50.477,1,50.2 2883 c0-8.791,6.659-16.323,15.044-17.666l-0.501,1.566l1.515,1.92l-2.813,11.953l4.451,3.994l4.56-3.989l-2.814-11.958l1.508-1.91 2884 l-0.437-1.56C29.882,33.927,36.3,41.306,36.3,50.2c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2885 C37.3,40.85,30.576,33.084,21.788,31.582z M7.7,20c0-6.065,4.935-11,11-11s11,4.935,11,11s-4.935,11-11,11S7.7,26.065,7.7,20z 2886 M20.85,33.89l-1.492,1.891l2.787,11.841l-3.44,3.011l-3.35-3.006l2.788-11.846l-1.485-1.881l0.485-1.517 2887 c0.515-0.049,1.033-0.083,1.558-0.083c0.584,0,1.16,0.032,1.729,0.089L20.85,33.89z"/> 2888 <path fill="#404040" d="M58.1,11H34.8c-1.172,0-1.899,0.728-1.899,1.9v13.3c0,1.172,0.728,1.9,1.899,1.9h2.3v3.8 2889 c0,0.255,0.051,0.455,0.156,0.611c0.135,0.201,0.355,0.316,0.604,0.316c0.33,0,0.653-0.193,1.017-0.412 2890 c0.57-0.38,3.981-3.46,4.815-4.216H58.1c1.172,0,1.9-0.728,1.9-1.9V12.9C60,11.728,59.271,11,58.1,11z M59,26.3 2891 c0,0.623-0.277,0.9-0.9,0.9H43.307l-0.143,0.129c-1.717,1.558-4.424,3.976-4.821,4.242c-0.068,0.041-0.157,0.095-0.243,0.142V27.1 2892 h-3.3c-0.622,0-0.899-0.277-0.899-0.9V12.9c0-0.623,0.277-0.9,0.899-0.9h23.3c0.623,0,0.9,0.277,0.9,0.9V26.3z"/> 2893 <circle fill="#404040" cx="46.4" cy="20" r="1.3"/> 2894 <circle fill="#404040" cx="39.9" cy="20" r="1.3"/> 2895 <circle fill="#404040" cx="53" cy="20" r="1.3"/> 2896</g> 2897</svg> 2898 2899` 2900}); 2901 2902//FitnessHealth 2903Vue.component('fj-icon-fitness-health', { 2904 template: ` 2905<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2906 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2907<path fill="#404040" d="M58.5,28.4h-6.118C53.435,26.457,54,24.306,54,22.1c0-3.443-1.363-6.762-3.839-9.346 2908 C47.813,10.305,44.475,8.9,41,8.9c-3.525,0-6.779,1.369-9.146,3.838l-1.846,1.763l-1.647-1.647C26.014,10.405,22.675,9,19.2,9 2909 c-3.475,0-6.814,1.405-9.157,3.85c-4.973,5.077-4.974,13.418,0.001,18.601l2.027,2.049H1.5C1.224,33.5,1,33.724,1,34 2910 s0.224,0.5,0.5,0.5h11.562l15.985,16.153c0.304,0.305,0.639,0.446,1.054,0.446c0.496,0,0.898-0.183,1.099-0.492l18.962-19.162 2911 c0.613-0.64,1.157-1.325,1.63-2.045H58.5c0.276,0,0.5-0.224,0.5-0.5S58.776,28.4,58.5,28.4z M10.761,30.753 2912 c-4.601-4.792-4.602-12.509,0-17.207C12.92,11.292,15.997,10,19.2,10s6.28,1.292,8.446,3.554l2.345,2.346l2.57-2.453 2913 C34.753,11.159,37.75,9.9,41,9.9c3.203,0,6.279,1.292,8.438,3.546C51.735,15.842,53,18.916,53,22.1c0,2.221-0.628,4.381-1.776,6.3 2914 H35.297l-5.519,10.578l-4.098-17.392L19.398,33.5h-5.919L10.761,30.753z M49.444,30.748l-19,19.2l-0.066,0.093 2915 C30.355,50.06,30.253,50.1,30.1,50.1c-0.15,0-0.228-0.034-0.345-0.151L14.469,34.5h5.533l5.317-10.086l4.103,17.409l6.48-12.423 2916 H50.56C50.217,29.867,49.854,30.321,49.444,30.748z"/> 2917</svg> 2918 2919` 2920}); 2921 2922//Manager 2923Vue.component('fj-icon-manager', { 2924 template: ` 2925<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2926 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2927<path fill="#404040" d="M33.177,31.778C38.645,30.351,42.7,25.351,42.7,19.4c0-7.058-5.697-12.8-12.7-12.8s-12.7,5.742-12.7,12.8 2928 c0,5.951,4.056,10.951,9.523,12.378C17.303,33.315,10,41.605,10,51.6c0,0.276,
29280.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 2929 c0-9.535,6.994-17.438,16.092-18.852l-0.554,1.539l1.621,2.127l-3.014,12.557L30,53.375l4.855-4.404l-3.014-12.557l1.621-2.127 2930 l-0.555-1.539C42.006,34.162,49,42.064,49,51.6c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5C50,41.605,42.697,33.315,33.177,31.778 2931 z M18.3,19.4c0-6.506,5.249-11.8,11.7-11.8c6.451,0,11.7,5.293,11.7,11.8c0,6.507-5.249,11.8-11.7,11.8 2932 C23.548,31.2,18.3,25.907,18.3,19.4z M32.338,34.113l-1.58,2.072l2.986,12.443L30,52.025l-3.745-3.396l2.986-12.443l-1.579-2.072 2933 l0.548-1.522C28.8,32.535,29.396,32.5,30,32.5c0.604,0,1.199,0.035,1.789,0.091L32.338,34.113z"/> 2934</svg> 2935 2936` 2937}); 2938 2939//Marketer-PR 2940Vue.component('fj-icon-marketer-pr', { 2941 template: ` 2942<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2943 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2944<g> 2945 <path fill="#404040" d="M23.1,38.9v-1.282l12.749,4.059C35.898,41.692,35.949,41.7,36,41.7c0.104,0,0.208-0.033,0.295-0.097 2946 C36.424,41.51,36.5,41.359,36.5,41.2V17c0-0.16-0.076-0.31-0.205-0.404c-0.13-0.094-0.295-0.121-0.446-0.073l-24.5,7.8 2947 c-0.039,0.013-0.062,0.048-0.095,0.069c-0.029-0.018-0.046-0.048-0.078-0.061l-6.7-2.5c-0.153-0.058-0.325-0.037-0.46,0.058 2948 C3.88,21.982,3.8,22.136,3.8,22.3V35.9c0,0.164,0.08,0.317,0.215,0.411C4.1,36.37,4.199,36.4,4.3,36.4 2949 c0.059,0,0.118-0.011,0.175-0.031l6.7-2.5c0.032-0.012,0.05-0.043,0.078-0.061c0.034,0.021,0.056,0.056,0.095,0.068l2.178,0.693 2950 c-0.012,0.042-0.026,0.084-0.026,0.13v4.2c0,1.178,0.922,2.1,2.1,2.1H21C22.178,41,23.1,40.078,23.1,38.9z M10.5,33.054L4.8,35.18 2951 V23.02l5.7,2.127V33.054z M12,25.166l23.5-7.481v22.833L12,33.035V25.166z M14.5,38.9v-4.02l7.619,2.425 2952 C22.113,37.338,22.1,37.367,22.1,37.4v1.5c0,0.627-0.473,1.1-1.1,1.1h-5.4C14.973,40,14.5,39.527,14.5,38.9z"/> 2953 <path fill="#404040" d="M41.8,18.8h13.8c0.006,0,0.014,0,0.02,0c0.276,0,0.5-0.224,0.5-0.5c0-0.07-0.014-0.137-0.04-0.198 2954 l-0.083-0.66c-0.364-3.103-2.729-5.544-5.752-6.176C51.57,10.671,52.5,9.345,52.5,7.8c0-2.095-1.704-3.8-3.8-3.8 2955 s-3.8,1.705-3.8,3.8c0,1.549,0.935,2.88,2.267,3.471c-2.944,0.64-5.308,3.072-5.763,6.167l-0.101,0.8 2956 c-0.018,0.143,0.026,0.286,0.121,0.393C41.52,18.738,41.656,18.8,41.8,18.8z M45.9,7.8c0-1.544,1.256-2.8,2.8-2.8 2957 s2.8,1.256,2.8,2.8s-1.256,2.8-2.8,2.8S45.9,9.344,45.9,7.8z M42.396,17.573c0.466-3.171,3.117-5.473,6.305-5.473 2958 c3.227,0,5.937,2.347,6.304,5.462l0.029,0.238H42.366L42.396,17.573z"/> 2959 <path fill="#404040" d="M55.996,36.041c-0.36-3.059-2.663-5.473-5.623-6.146c1.255-0.621,2.127-1.902,2.127-3.395 2960 c0-2.095-1.704-3.8-3.8-3.8s-3.8,1.705-3.8,3.8c0,1.497,0.878,2.782,2.139,3.401c-2.885,0.682-5.186,3.086-5.635,6.136 2961 l-0.101,0.801c-0.018,0.143,0.026,0.286,0.121,0.394S41.656,37.4,41.8,37.4h13.8c0.006,0,0.014,0,0.02,0c0.276,0,0.5-0.224,0.5-0.5 2962 c0-0.07-0.014-0.138-0.04-0.198L55.996,36.041z M45.9,26.5c0-1.544,1.256-2.8,2.8-2.8s2.8,1.256,2.8,2.8s-1.256,2.8-2.8,2.8 2963 S45.9,28.044,45.9,26.5z M42.366,36.4l0.029-0.228c0.458-3.12,3.169-5.473,6.305-5.473c3.227,0,5.937,2.347,6.304,5.461 2964 l0.029,0.239H42.366z"/> 2965 <path fill="#404040" d="M55.996,54.642c-0.359-3.058-2.661-5.473-5.622-6.147c1.254-0.621,2.126-1.902,2.126-3.395 2966 c0-2.096-1.704-3.8-3.8-3.8s-3.8,1.704-3.8,3.8c0,1.497,0.877,2.782,2.138,3.401c-2.884,0.683-5.186,3.088-5.634,6.137l-0.101,0.8 2967 c-0.018,0.143,0.026,0.286,0.121,0.394S41.656,56,41.8,56h13.8c0.006,0,0.014,0,0.02,0c0.276,0,0.5-0.224,0.5-0.5 2968 c0-0.07-0.014-0.138-0.04-0.198L55.996,54.642z M45.9,45.1c0-1.544,1.256-2.8,2.8-2.8s2.8,1.256,2.8,2.8S50.244,47.9,48.7,47.9 2969 S45.9,46.644,45.9,45.1z M42.366,55l0.029-0.228c0.466-3.171,3.117-5.473,6.305-5.473c3.227,0,5.937,2.347,6.304,5.462L55.033,55 2970 H42.366z"/> 2971 <path fill="#404040" d="M30,25.4h-6.2c-1.177,0-2.1,0.922-2.1,2.1v1.693l-3.154,3.154c-0.143,0.143-0.186,0.358-0.108,0.545 2972 c0.077,0.187,0.26,0.309,0.462,0.309h11c1.065,0,1.921-0.755,2.076-1.771c0.077-0.088,0.124-0.204,0.124-0.33v-3.6 2973 C32.1,26.322,31.178,25.4,30,25.4z M31.1,30.8c-0.063,0.084-0.1,0.188-0.1,0.3c0,0.627-0.473,1.101-1.1,1.101h-9.793l2.347-2.347 2974 c0.058-0.058,0.247-0.269,0.247-0.554v-1.8c0-0.627,0.473-1.1,1.1-1.1H30c0.627,0,1.1,0.473,1.1,1.1V30.8z"/> 2975 <path fill="#404040" d="M28.5,28.8h-3.4c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5h3.4c0.276,0,0.5-0.224,0.5-0.5 2976 S28.776,28.8,28.5,28.8z"/> 2977 <path fill="#404040" d="M39.4,6.9H16.6c-0.276,0-0.5,0.224-0.5,0.5v9.3c0,0.276,
29770.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5V7.9h22.3 2978 c0.276,0,0.5-0.224,0.5-0.5S39.677,6.9,39.4,6.9z"/> 2979 <path fill="#404040" d="M39.4,52.1H17.1v-8.8c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5v9.3c0,0.276,0.224,0.5,0.5,0.5h22.8 2980 c0.276,0,0.5-0.224,0.5-0.5S39.677,52.1,39.4,52.1z"/> 2981</g> 2982</svg> 2983 2984` 2985}); 2986 2987//Operations-Finance 2988Vue.component('fj-icon-operations-finance', { 2989 template: ` 2990<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 2991 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 2992<g> 2993 <path fill="#404040" d="M51.594,32.522c-0.033-0.213-0.199-0.381-0.412-0.416C51.131,32.098,49.929,31.9,48.8,31.9 2994 c-2.714,0-5.185,0.98-7.146,2.838c-2.371,2.269-3.464,5.531-2.974,8.851l-7.98,6.972V28.774c6.936-0.263,12.5-5.929,12.5-12.875 2995 c0-7.113-5.832-12.9-13-12.9c-7.168,0-13,5.787-13,12.9c0,6.945,5.564,12.611,12.5,12.875v17.211l-8.57-7.334 2996 c0.019-0.043,0.046-0.084,0.056-0.128l0.105-0.334c0.614-3.378-0.487-6.799-2.948-9.153c-1.929-1.822-4.453-2.829-7.023-2.829 2997 c-0.01,0-0.021,0-0.031,0c-0.234-0.043-0.487-0.064-0.751-0.064c-0.941,0-1.762,0.27-1.796,0.282 2998 c-0.178,0.059-0.307,0.212-0.336,0.397c-0.038,0.247-0.897,6.093,2.741,9.73c1.83,1.83,4.386,2.838,7.198,2.838h0 2999 c0.664,0,1.326-0.063,1.912-0.171l9.418,8.06c0.008,0.007,0.018,0.009,0.025,0.015V56h-9.2c-0.276,0-0.5,0.224-0.5,0.5 3000 s0.224,0.5,0.5,0.5h19.4c0.276,0,0.5-0.224,0.5-0.5S40.177,56,39.9,56h-9.2v-4.146c0.045-0.02,0.09-0.042,0.129-0.076l8.207-7.17 3001 c0.133,0.144,0.302,0.256,0.474,0.285c0.732,0.159,1.484,0.239,2.234,0.239c2.689,0,5.28-1.049,7.109-2.878 3002 C52.491,38.616,51.632,32.77,51.594,32.522z M18.344,38.392c-2.544,0-4.85-0.903-6.491-2.545c-2.822-2.822-2.613-7.328-2.496-8.554 3003 c0.277-0.066,0.715-0.148,1.18-0.148c0.188,0,0.382,0.013,0.662,0.056c2.413,0,4.706,0.91,6.454,2.561 3004 c2.216,2.119,3.208,5.203,2.671,8.181l-0.053,0.16c-0.125,0.007-0.246,0.062-0.337,0.16C19.407,38.342,18.875,38.392,18.344,38.392 3005 L18.344,38.392z M18.2,15.9c0-6.562,5.383-11.9,12-11.9c6.617,0,12,5.338,12,11.9s-5.383,11.9-12,11.9 3006 C23.583,27.8,18.2,22.461,18.2,15.9z M48.146,41.547c-2.092,2.092-5.355,3.021-8.378,2.378l-0.076-0.215 3007 c-0.555-3.045,0.438-6.129,2.651-8.247c1.77-1.677,4.002-2.563,6.456-2.563c0.684,0,1.418,0.082,1.847,0.139 3008 C50.766,34.328,50.94,38.753,48.146,41.547z"/> 3009 <path fill="#404040" d="M30.7,24.4v-1.844c0.95-0.097,1.771-0.416,2.425-0.976C33.883,20.931,34.3,20.015,34.3,19 3010 c0-0.904-0.419-1.75-1.146-2.354c-0.475-0.476-1.317-0.797-2.695-1.221c-1.488-0.497-2.511-0.971-3.004-1.379 3011 C27.02,13.612,26.8,13.126,26.8,12.6c0-0.592,0.287-1.18,0.825-1.72c0.629-0.54,1.331-0.78,2.275-0.78 3012 c0.006,0,0.011,0.001,0.017,0.001c0.082,0.058,0.176,0.099,0.283,0.099c0.08,0,0.152-0.022,0.219-0.056 3013 c0.399,0.062,0.779,0.182,1.171,0.313c0.443,0.266,0.86,0.523,1.189,0.918c0.029,0.054,0.063,0.114,0.099,0.178 3014 c0.084,0.149,0.188,0.326,0.247,0.504c0.086,0.261,0.369,0.403,0.632,0.317c0.263-0.087,0.404-0.37,0.317-0.632 3015 c-0.085-0.255-0.219-0.491-0.326-0.681c-0.038-0.068-0.073-0.13-0.101-0.184c-0.016-0.032-0.035-0.062-0.057-0.089 3016 c-0.458-0.571-1.005-0.899-1.534-1.216c-0.031-0.019-0.064-0.034-0.099-0.045c-0.399-0.133-0.812-0.264-1.258-0.345V7.3 3017 c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5v1.815c-1.086,0.037-1.963,0.353-2.754,1.032C26.186,10.908,25.8,11.733,25.8,12.6 3018 c0,0.801,0.318,1.525,0.98,2.184c0.632,0.527,1.731,1.047,3.373,1.594c1.175,0.361,1.969,0.651,2.327,1.006 3019 c0.529,0.44,0.82,1.014,0.82,1.616c0,0.508-0.144,1.236-0.825,1.82c-0.612,0.525-1.39,0.78-2.375,0.78 3020 c-0.651,0-1.283-0.15-1.876-0.447c-0.488-0.244-0.837-0.671-1.202-1.127c-0.029-0.054-0.063-0.114-0.098-0.177 3021 c-0.085-0.15-0.189-0.328-0.249-0.506c-0.087-0.262-0.37-0.402-0.632-0.317c-0.262,0.087-0.404,0.37-0.317,0.632 3022 c0.085,0.256,0.219,0.493,0.328,0.684c0.038,0.067,0.073,0.129,0.1,0.183c0.016,0.031,0.035,
30220.061,0.056,0.088 3023 c0.427,0.534,0.869,1.085,1.567,1.435c0.612,0.306,1.258,0.478,1.924,0.53V24.4c0,0.276,0.224,0.5,0.5,0.5S30.7,24.676,30.7,24.4z" 3024 /> 3025</g> 3026</svg> 3027 3028` 3029}); 3030 3031//Organizer 3032Vue.component('fj-icon-organizer', { 3033 template: ` 3034<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 3035 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 3036<g> 3037 <path fill="#404040" d="M20.9,24.9c0.276,0,0.5-0.224,0.5-0.5c0-4.797,3.858-8.7,8.6-8.7s8.6,3.903,8.6,8.7 3038 c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5c0-4.466-3.007-8.227-7.079-9.349c2.165-0.984,3.68-3.189,3.68-5.751 3039 C36.2,5.826,33.419,3,30,3s-6.2,2.826-6.2,6.3c0,2.562,1.515,4.767,3.68,5.751c-4.073,1.123-7.08,4.883-7.08,9.349 3040 C20.4,24.676,20.624,24.9,20.9,24.9z M24.8,9.3C24.8,6.377,27.133,4,30,4s5.2,2.377,5.2,5.3s-2.333,5.3-5.2,5.3 3041 S24.8,12.222,24.8,9.3z"/> 3042 <path fill="#404040" d="M32.259,48.737c1.676-0.853,2.841-2.602,2.841-4.638c0-2.867-2.288-5.199-5.1-5.199 3043 c-2.812,0-5.1,2.332-5.1,5.199c0,2.036,1.165,3.785,2.841,4.638C24.483,49.725,22.1,52.784,22.1,56.4c0,0.276,0.224,0.5,0.5,0.5 3044 s0.5-0.224,0.5-0.5c0-3.859,3.095-7,6.9-7s6.9,3.141,6.9,7c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 3045 C37.9,52.784,35.518,49.725,32.259,48.737z M25.9,44.1c0-2.315,1.839-4.199,4.1-4.199s4.1,1.884,4.1,4.199 3046 c0,2.316-1.839,4.2-4.1,4.2S25.9,46.416,25.9,44.1z"/> 3047 <path fill="#404040" d="M53.327,48.756c1.693-0.847,2.873-2.606,2.873-4.656c0-2.867-2.288-5.199-5.101-5.199 3048 c-2.812,0-5.1,2.332-5.1,5.199c0,2.023,1.15,3.761,2.81,4.62c-3.293,0.965-5.71,4.04-5.71,7.681c0,0.276,
30480.224,0.5,0.5,0.5 3049 s0.5-0.224,0.5-0.5c0-3.859,3.096-7,6.9-7s6.9,3.141,6.9,7c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5 3050 C58.9,52.809,56.551,49.764,53.327,48.756z M47,44.1c0-2.315,1.839-4.199,4.1-4.199S55.2,41.784,55.2,44.1 3051 c0,2.316-1.84,4.2-4.101,4.2S47,46.416,47,44.1z"/> 3052 <path fill="#404040" d="M11.159,48.737C12.835,47.885,14,46.136,14,44.1c0-2.867-2.288-5.199-5.1-5.199S3.8,41.232,3.8,44.1 3053 c0,2.036,1.165,3.785,2.841,4.638C3.383,49.725,1,52.784,1,56.4c0,0.276,0.224,0.5,0.5,0.5S2,56.677,2,56.4c0-3.859,3.095-7,6.9-7 3054 s6.9,3.141,6.9,7c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5C16.8,52.784,14.417,49.725,11.159,48.737z M4.8,44.1 3055 c0-2.315,1.839-4.199,4.1-4.199S13,41.784,13,44.1c0,2.316-1.839,4.2-4.1,4.2S4.8,46.416,4.8,44.1z"/> 3056 <path fill="#404040" d="M8.9,36.3c0.276,0,0.5-0.224,0.5-0.5v-4.5c0-0.123,0.077-0.2,0.2-0.2h19.9v4.7c0,0.276,0.224,0.5,0.5,0.5 3057 s0.5-0.224,0.5-0.5v-4.7h19.8c0.123,0,0.2,0.077,0.2,0.2v4.5c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5v-4.5 3058 c0-0.673-0.527-1.2-1.2-1.2H30.5v-4c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5v4H9.6c-0.673,0-1.2,0.527-1.2,1.2v4.5 3059 C8.4,36.076,8.624,36.3,8.9,36.3z"/> 3060</g> 3061</svg> 3062 3063` 3064}); 3065 3066//owner 3067Vue.component('fj-icon-owner', { 3068 template: ` 3069<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 3070 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 3071<g> 3072 <path fill="#404040" d="M42.1,53.2h6.7c0.373,0,0.7-0.327,0.7-0.7v-5.3c0-0.38-0.32-0.7-0.7-0.7h-6.7 3073 c-0.379,0-0.699,0.32-0.699,0.7v5.3C41.4,52.873,41.728,53.2,42.1,53.2z M42.4,47.5h6.1v4.7h-6.1V47.5z"/> 3074 <path fill="#404040" d="M56.6,57h-4H39.7v-9.8c0-0.373-0.327-0.7-0.7-0.7h-8.3c-0.379,0-0.7,0.32-0.7,0.7V57h-3h-4 3075 c-0.276,0-0.5,0.224-0.5,0.5S22.724,58,23,58h33.6c0.276,0,0.5-0.224,0.5-0.5S56.876,57,56.6,57z M31,47.5h7.7V57H31V47.5z"/> 3076 <path fill="#404040" d="M27.5,56.5V42.051c0.167,0.018,0.328,0.049,0.5,0.049c1.72,0,3.167-0.93,3.927-2.313 3077 C32.7,41.115,34.121,42,35.8,42c1.737,0,3.198-0.949,3.95-2.356C40.502,41.051,41.963,42,43.7,42c1.717,0,3.163-0.927,3.923-2.306 3078 c0.744,1.435,2.219,2.405,3.977,2.405c0.172,0,0.334-0.031,0.5-0.049V56.5c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5V42 3079 c0-0.056-0.015-0.107-0.031-0.157c1.776-0.599,3.031-2.239,3.031-4.243v-2.901l0.728-0.002l-5.678-6.246 3080 c-0.1-0.223-0.327-0.351-0.55-0.351H28.9c-0.266,0-0.457,0.153-0.545,0.348L23.4,34.01v0.19c0,0.126,0.043,0.229,0.1,0.317V37.6 3081 c0,2.004,1.255,3.645,3.032,4.243C26.515,41.893,26.5,41.944,26.5,42v14.5c0,0.276,0.224,0.5,0.5,0.5S27.5,56.776,27.5,56.5z 3082 M29.113,29.1h21.274l4.186,4.604l-29.645,0.093L29.113,29.1z M24.5,37.6v-2.802l30.6-0.096V37.6c0,1.963-1.537,3.5-3.5,3.5 3083 c-1.804,0-3.231-1.303-3.455-3.036c0.023-0.187,0.056-0.37,0.056-0.563v-2c0-0.276-0.224-0.5-0.5-0.5 3084 c-0.163,0-0.302,0.084-0.393,0.205C47.185,35.296,47.1,35.435,47.1,35.6v2c0,0.159,0.03,0.31,0.045,0.464 3085 C46.881,39.747,45.47,41,43.7,41c-1.788,0-3.209-1.28-3.45-2.991c0.019-0.169,0.05-0.334,0.05-0.509v-2c0-0.276-0.224-0.5-0.5-0.5 3086 c-0.018,0-0.032,0.008-0.05,0.01C39.732,35.008,39.718,35,39.7,35c-0.276,0-0.5,0.224-0.5,0.5v2c0,0.175,0.031,0.34,0.05,0.509 3087 C39.009,39.72,37.588,41,35.8,41c-1.652,0-2.991-1.096-3.377-2.611c0.044-0.257,0.077-0.518,0.077-0.789v-2 3088 c0-0.233-0.163-0.421-0.38-0.476C32.033,35.05,31.924,35,31.8,35c-0.276,0-0.5,0.224-0.5,0.5v2c0,0.32,0.033,0.632,0.095,0.933 3089 C31.028,39.979,29.673,41.1,28,41.1C26.038,41.1,24.5,39.563,24.5,37.6z"/> 3090 <path fill="#404040" d="M14.6,14.6c3.757,0,6.7-2.987,6.7-6.8c0-3.75-3.005-6.8-6.7-6.8c-3.757,0-6.7,2.987-6.7,6.8 3091 C7.9,11.549,10.906,14.6,14.6,14.6z M14.6,2c3.143,0,5.7,2.602,5.7,5.8c0,3.252-2.503,5.8-5.7,5.8c-3.143,0-5.7-2.602-5.7-5.8 3092 C8.9,4.547,11.404,2,14.6,2z"/> 3093 <path fill="#404040" d="M37.5,25.3c2.188,0,3.9-1.713,3.897-3.952c-0.241-2.287-1.963-3.947-4.065-3.947c-0.001,0-0.002,0-0.002,0 3094 L20.7,16.4h-2.5c-0.414,0-0.749,0.142-1.092,0.489l-2.71,3.409l-2.845-3.552C11.257,16.45,10.937,16.3,10.6,16.3H8.9 3095 c-1.748,0-3.383,0.758-4.482,2.078c-1.164,1.375-1.639,2.985-1.414,4.785l1.4,11.104c0.228,1.706,1.237,3.3,2.672,4.181 3096 l0.164,0.082L9.605,56.17c0.226,1.582,1.485,2.73,2.995,2.73h3.9c1.481,0,2.74-1.101,2.997-2.645l1.199-10.688L23.437,25.3H37.5z 3097 M22.504,24.733l-2.801,20.711l-1.196,10.674C18.359,57.004,17.622,57.9,16.5,57.9h-3.9c-1.007,0-1.851-0.787-2.004-1.867
3098 l-2.4-17.899c-0.022-0.164-0.124-0.307-0.272-0.381l-0.362-0.179c-1.13-0.695-1.98-2.046-2.166-3.437l-1.4-11.1 3099 c-0.189-1.511,0.21-2.862,1.188-4.018C6.095,17.927,7.449,17.3,8.9,17.3h1.7c0.058,0,0.15,0.058,0.209,0.113l3.2,4 3100 c0.095,0.119,0.239,0.188,0.391,0.188c0,0,0,0,0.001,0c0.152,0,0.296-0.07,0.391-0.189l3.062-3.857 3101 c0.119-0.119,0.197-0.154,0.347-0.154l2.47-0.001L37.3,18.4c1.826,0,2.943,1.536,3.101,3c0,1.815-1.475,2.9-2.9,2.9H23 3102 C22.75,24.3,22.538,24.485,22.504,24.733z"/> 3103</g> 3104</svg> 3105 3106` 3107}); 3108 3109//Sales 3110Vue.component('fj-icon-sales', { 3111 template: ` 3112<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 3113 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 3114<g> 3115 <path fill="#404040" d="M38.4,36.6c7.829,0,14.199-6.415,14.199-14.3S46.229,8,38.4,8c-7.83,0-14.2,6.415-14.2,14.3 3116 S30.57,36.6,38.4,36.6z M38.4,9C45.679,9,51.6,14.966,51.6,22.3S45.679,35.6,38.4,35.6s-13.2-5.966-13.2-13.3S31.122,9,38.4,9z"/> 3117 <path fill="#404040" d="M38.263,22.781c1.278,0.365,2.161,0.739,2.612,1.099c0.682,0.584,0.825,1.313,0.825,1.82 3118 c0,0.768-0.346,1.523-0.954,2.046C40.18,28.313,39.323,28.6,38.2,28.6c-0.723,0-1.352-0.137-2.022-0.416 3119 c-0.563-0.375-1.009-0.732-1.361-1.261c-0.165-0.248-0.251-0.506-0.342-0.78c-0.087-0.262-0.37-0.403-0.632-0.317 3120 c-0.263,0.087-0.404,0.37-0.317,0.632c0.103,0.31,0.219,0.661,0.459,1.021c0.471,0.707,1.065,1.157,1.719,1.582 3121 c0.779,0.334,1.456,0.491,2.197,0.526V31.8c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5v-2.25 3122 c1.062-0.111,1.922-0.465,2.524-1.069c0.799-0.685,1.275-1.724,1.275-2.78c0-1.015-0.417-1.931-1.188-2.591 3123 c-0.576-0.46-1.549-0.882-2.972-1.289c-1.627-0.479-2.681-0.955-3.287-1.474C34.719,19.812,34.5,19.334,34.5,18.7 3124 c0-0.776,0.247-1.34,0.829-1.924C36.031,16.162,36.8,15.9,37.9,15.9c0.807,0,1.402,0.11,1.876,0.347 3125 c0.635,0.317,1.13,0.686,1.407,1.031c0.179,0.267,0.363,0.543,0.441,0.78c0.086,0.261,0.37,0.403,0.632,0.317 3126 c0.263-0.087,0.404-0.37,0.317-0.632c-0.121-0.365-0.344-0.698-0.584-1.054c-0.398-0.499-0.992-0.948-1.767-1.335 3127 c-0.384-0.191-0.821-0.313-1.323-0.382V12.7c0-0.276-0.224-0.5-0.5-0.5s-0.5,0.224-0.5,0.5v2.2c-1.327,0-2.354,0.357-3.254,1.146 3128 C33.854,16.839,33.5,17.658,33.5,18.7c0,0.904,0.323,1.63,1.075,2.379C35.331,21.729,36.468,22.252,38.263,22.781z"/> 3129 <path fill="#404040" d="M56.742,39.401c-0.385-0.834-1.234-1.314-2.108-1.196c-1.499,0.199-15.344,2.986-15.933,3.104 3130 c-0.271,0.055-0.446,0.318-0.392,0.589c0.055,0.271,0.323,0.445,0.589,0.392c0.144-0.029,14.401-2.898,15.868-3.095 3131 c0.442-0.056,0.866,0.187,1.068,0.626c0.31,0.67,0.022,1.495-0.771,2.211c-1.021,0.807-18.636,8.071-23.171,8.071 3132 c-0.059,0-0.116-0.001-0.17-0.003c-2.721-0.121-7.517-2.616-11.02-4.438c-2.248-1.17-4.023-2.093-4.913-2.255 3133 c-1.79-0.323-3.128,1.076-3.784,1.968l0.75-10.687c0.091,0.008,0.184,0.001,0.271-0.044c0.056-0.027,5.562-2.802,9.028-1.767 3134 c3.765,1.149,12.317,5.689,12.655,7.712c0.183,0.99-0.191,1.278-0.314,1.372c-1.479,1.136-7.029-0.818-10.18-2.314 3135 c-0.25-0.12-0.548-0.013-0.667,0.236c-0.119,0.25-0.012,0.548,0.237,0.666c0.711,0.339,5.876,2.738,9.176,2.738 3136 c0.834,0,1.55-0.153,2.043-0.532c0.448-0.345,0.932-1.031,0.689-2.339c-0.472-2.827-10.115-7.509-13.351-8.497 3137 c-3.446-1.024-8.353,1.154-9.513,1.709L13,31.2c0-0.576-0.524-1.101-1.1-1.101H4.1C3.524,30.1,3,30.624,3,31.2v17.1 3138 C3,48.876,3.524,49.4,4.1,49.4h6.6c0.576,0,1.1-0.524,1.098-1.065l0.109-1.551c0.209,0.041,0.428-0.051,0.534-0.248 3139 c0.013-0.025,1.349-2.488,3.17-2.144c0.742,0.135,2.631,1.117,4.63,2.157c3.785,1.969,8.496,4.419,11.437,4.549 3140 c0.055,0.003,0.11,0.004,0.17,0.004c4.581-0.001,22.933-7.377,23.888-8.331C57.07,41.569,57.131,40.242,56.742,39.401z 3141 M10.8,48.295c-0.006,0.036-0.067,0.098-0.104,0.105H4.105C4.069,48.395,4.006,48.331,4,48.3l0-17.095 3142 c0.006-0.036,0.069-0.1,0.101-0.105h7.795c0.037,0.006,0.096,0.066,0.106,0.065L10.8,48.295z"/> 3143</g> 3144</svg> 3145 3146` 3147}); 3148 3149//Student 3150Vue.component('fj-icon-student', { 3151 template: ` 3152<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 3153 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 3154<path fill="#404040" d="M54.1,6H41.8H18.2H5.9C5.624,6,5.4,6.224,5.4,6.5S5.624,7,5.9,7h10.819C16.644,7.186,16.6,7.388,16.6,7.6 3155 v10.5c0,0.882,0.718,1.6,1.6,1.6h0.271c-0.181,0.868-0.271,1.804-0.271,2.9c0,6.126,3.756,11.277,8.824,12.757
3156 c-8.843,1.417-15.624,9-15.624,18.143c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5c0-9.595,7.896-17.4,17.6-17.4 3157 c9.704,0,17.6,7.806,17.6,17.4c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5c0-9.142-6.78-16.726-15.623-18.143 3158 c5.067-1.48,8.823-6.631,8.823-12.757c0-1.023-0.142-1.974-0.303-2.9H41.8c0.883,0,1.601-0.718,1.601-1.6V7.6 3159 c0-0.212-0.044-0.415-0.119-0.6H48.3v13.8c0,0.276,0.224,0.5,0.5,0.5s0.5-0.224,0.5-0.5V7h4.8c0.276,0,0.5-0.224,0.5-0.5 3160 S54.376,6,54.1,6z M40.8,22.6c0,6.727-4.845,12.2-10.8,12.2s-10.8-5.473-10.8-12.2c0-1.129,0.09-2.042,0.289-2.9h20.993 3161 C40.653,20.66,40.8,21.588,40.8,22.6z M42.4,7.6v10.5c0,0.325-0.275,0.6-0.601,0.6h-0.481h-22.6H18.2c-0.325,0-0.6-0.275-0.6-0.6 3162 V7.6c0-0.325,0.275-0.6,0.6-0.6h23.6C42.125,7,42.4,7.275,42.4,7.6z"/> 3163</svg> 3164 3165` 3166}); 3167 3168 3169//Teacher-Professor 3170Vue.component('fj-icon-teacher-professor', { 3171 template: ` 3172<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 3173 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 3174<g> 3175 <path fill="#404040" d="M59.5,8.7H2.7c-0.276,0-0.5,0.224-0.5,0.5v3.2c0,0.276,0.224,0.5,0.5,0.5H5v21.4 3176 c0,0.091,0.031,0.171,0.073,0.245l-3.668,4.849l-0.659,0.853c-0.619,0.619-0.936,1.463-0.87,2.313 3177 c0.065,0.825,0.477,1.57,1.105,2.026l5.7,4.7c0.042,0.035,0.104,0.067,0.156,0.087c0.031,0.012,0.077,0.035,0.135,0.063 3178 c0.087,0.042,0.203,0.098,0.339,0.155c-0.185,0.131-0.264,0.375-0.176,0.595C7.435,50.935,8.035,51.4,8.7,51.4h12.4 3179 c0.927,0,1.6-0.673,1.6-1.601V48.4h34c0.276,0,0.5-0.224,0.5-0.5v-35h2.3c0.276,0,0.5-0.224,0.5-0.5V9.2 3180 C60,8.924,59.776,8.7,59.5,8.7z M21.7,49.8c0,0.141-0.043,0.601-0.6,0.601H8.7c-0.284,0-0.508-0.29-0.622-0.552 3181 c0.745,0.176,1.678,0.164,2.421-0.648c0.522-0.392,0.738-1.114,0.593-1.982c-0.125-0.749-0.4-1.248-0.86-1.591l-2.146-1.916 3182 C8.096,43.676,8.1,43.638,8.1,43.6v-3.393l1.456-1.455c0.292-0.295,0.292-0.812-0.003-1.106c-0.294-0.293-0.811-0.293-1.096-0.01 3183 l-1.746,1.649l-1.664,2.061c-0.165,0.164-0.241,0.401-0.204,0.633c0.036,0.22,0.167,0.41,0.366,0.531L9.6,46.4 3184 c0.282,0.211,0.424,0.486,0.507,0.981c0.078,0.466-0.003,0.865-0.274,1.079c-0.696,0.755-1.619,0.459-2.429,0.073 3185 c-0.054-0.026-0.103-0.049-0.144-0.067l-5.667-4.671c-0.416-0.303-0.678-0.781-0.72-1.315c-0.044-0.566,0.162-1.109,0.621-1.574 3186 l6.56-8.653c0.276-0.276,0.515-0.516,1.004-0.679c0.073-0.024,0.14-0.065,0.194-0.12l0.06-0.063 3187 c0.378-0.303,0.948-0.491,1.487-0.491h8.3c0.516,0,1.147,0.208,1.584,0.514c0.073,0.121,0.188,0.208,0.315,0.253 3188 c0.055,0.034,0.109,0.065,0.162,0.097c0.128,0.075,0.249,0.146,0.265,0.195c0.017,0.051,0.042,0.099,0.074,0.142l5.748,7.655 3189 c0.131,0.13,0.232,0.205,0.391,0.232c0.149,0.068,0.318,0.073,0.474,0.009c0.146-0.061,0.261-0.177,0.327-0.319L35.3,33.4 3190 c0.24-0.18,0.738-0.271,1.116-0.225c0.1,0.063,0.218,0.131,0.339,0.201c0.145,0.084,0.339,0.196,0.453,0.265 3191 c0.01,0.114,0.053,0.227,0.141,0.313c0.031,0.031,0.068,0.048,0.104,0.069c0.089,0.225,0.149,0.475,0.156,0.778 3192 c-0.083,0.417-0.251,0.749-0.563,1.144l-6.4,7.5c-0.296,0.296-0.675,0.469-1.304,0.579C29.119,44.1,28.879,44.1,28.6,44.1 3193 c-1.265,0-2.296-0.545-2.984-1.577c-0.048-0.072-0.115-0.132-0.193-0.17l-2.27-2.906C22.907,39.2,22.632,39.2,22.5,39.2h-0.1 3194 c-0.132,0-0.259,0.053-0.353,0.146C21.909,39.483,21.7,39.691,21.7,40v7.4h-0.2c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5h0.2 3195 V49.8z M7.1,40.389v2.447l-1.157-1.013L7.1,40.389z M43.3,47.1v-2.6c0-0.123,0.077-0.2,0.2-0.2h7.3c0.123,0,0.2,0.077,0.2,0.2v2.6 3196 c0,0.123-0.077,0.2-0.2,0.2h-7.3C43.377,47.3,43.3,47.223,43.3,47.1z M56.2,47.4h-4.26C51.966,47.302,52,47.207,52,47.1v-2.6 3197 c0-0.673-0.527-1.2-1.2-1.2h-7.3c-0.673,0-1.2,0.527-1.2,1.2v2.6c0,0.107,0.034,0.202,0.06,0.301H22.7v-6.904l1.901,2.506 3198 c0.047,0.062,0.107,0.111,0.176,0.146l0.084,0.042c0.871,1.233,2.193,1.91,3.739,1.91c0.319,0,0.681,0,0.982-0.106 3199 c0.762-0.126,1.325-0.394,1.799-0.869l6.272-7.37l0.138-0.142c0.452-0.566,0.684-1.033,0.809-1.712 3200 c0-0.497-0.075-0.905-0.225-1.271l11.181-11.277c0.194-0.196,0.192-0.513-0.004-0.707c-0.195-0.194-0.511-0.192-0.707,0.003
3201 L37.766,32.823c-0.14-0.093-0.304-0.192-0.51-0.312c-0.143-0.082-0.278-0.161-0.379-0.228c-0.055-0.036-0.115-0.062-0.179-0.074 3202 c-0.561-0.114-1.425-0.039-2.035,0.421l-6.831,6.245l-5.491-7.321c-0.149-0.347-0.438-0.516-0.674-0.654 3203 c-0.055-0.032-0.111-0.065-0.168-0.102c-0.025-0.033-0.054-0.063-0.087-0.09C20.797,30.217,19.889,29.9,19.1,29.9h-8.3 3204 c-0.768,0-1.557,0.265-2.152,0.746l-0.021,0.021c-0.639,0.237-0.981,0.581-1.326,0.933L6,33.319V12.9h50.2V47.4z M59,11.9H3.2V9.7 3205 H59V11.9z"/> 3206 <path fill="#404040" d="M14.9,29.1c3.75,0,6.8-3.051,6.8-6.8c0-3.763-2.833-6.71-6.448-6.71c-0.126,0-0.253,0.004-0.352,0.01 3207 c-3.75,0-6.8,3.05-6.8,6.8C8.1,26.157,11.087,29.1,14.9,29.1z M14.928,16.599c0.109-0.006,0.217-0.009,0.324-0.009 3208 c3.055,0,5.448,2.508,5.448,5.71c0,3.198-2.602,5.8-5.8,5.8c-3.252,0-5.8-2.504-5.8-5.7C9.1,19.202,11.702,16.6,14.928,16.599z"/> 3209</g> 3210</svg> 3211 3212` 3213}); 3214 3215//Trainer 3216Vue.component('fj-icon-trainer', { 3217 template: ` 3218<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 3219 width="60px" height="60px" viewBox="0 0 60 60" enable-background="new 0 0 60 60" xml:space="preserve"> 3220<g> 3221 <path fill="#404040" d="M53.939,46.771c0.243-0.188,0.386-0.472,0.386-0.771c0-0.324-0.168-0.63-0.391-0.771l-8.3-7.5 3222 c-0.008-0.007-0.018-0.009-0.025-0.015c-0.022-0.519-0.052-0.876-0.092-1.114H45.6c0-4.301-3.454-7.8-7.699-7.8h-5.462 3223 c0.711-0.695,1.161-1.655,1.161-2.7V11.786c0.059-0.082,0.101-0.177,0.101-0.286V6.8c0-2.06-1.74-3.8-3.8-3.8h-9.2 3224 c-2.06,0-3.8,1.74-3.8,3.8v2.8c0,0.031,0.012,0.057,0.018,0.086c-0.495,0.234-0.991,0.495-1.489,0.793l-1.7,1.1 3225 c-0.186,0.121-0.271,0.349-0.208,0.562C13.583,12.354,13.778,12.5,14,12.5h2.8v13.6c0,1.045,0.45,2.005,1.161,2.7H13.3 3226 c-4.174,0-7.7,3.572-7.7,7.8v19.9c0,0.276,0.224,0.5,0.5,0.5h39.1c0.007-0.001,0.014-0.001,0.02,0c0.276,0,0.5-0.224,0.5-0.5 3227 c0-0.049-0.007-0.096-0.02-0.141c0-0.041,0-0.099,0-0.156L53.939,46.771z M53.322,45.984c-0.036,0.024-0.07,0.054-0.1,0.087 3228 l-7.523,8.611c-0.001-1.894-0.004-5.012-0.012-8.134c-0.009-3.574-0.015-5.918-0.041-7.466L53.322,45.984z M38.5,49.965 3229 l-5.923-5.349c0.036-0.023,0.067-0.052,0.096-0.084l5.827-6.544V49.965z M38.514,29.832C38.511,29.854,38.5,29.875,38.5,29.9v6.613 3230 c-0.024,0.02-0.052,0.032-0.073,0.056l-6.465,7.259c-0.243,0.189-0.387,0.473-0.387,0.772c0,0.324,0.167,0.629,0.389,0.771 3231 l6.536,5.941V56H26.2V41.274c4.729-0.265,8.5-4.228,8.5-9.074v-2.4h3.2C38.107,29.8,38.312,29.813,38.514,29.832z M17.7,29.8h1.843 3232 C19.516,29.861,19.5,29.929,19.5,30v1.5c0,3.229,2.523,5.872,5.7,6.079v2.695c-4.178-0.264-7.5-3.779-7.5-8.074V29.8z M30.7,29.8 3233 v1.7c0,2.812-2.288,5.1-5.1,5.1s-5.1-2.288-5.1-5.1V30c0-0.04-0.014-0.076-0.023-0.113c0.042,0.001,0.081,0.013,0.123,0.013h9.2 3234 c0.282,0,0.555-0.039,0.821-0.1H30.7z M31.7,31.5v-1.7h2v2.4c0,4.295-3.322,7.811-7.5,8.074v-2.705 3235 C29.283,37.267,31.7,34.661,31.7,31.5z M25.781,12.5H32.6v2.318l-1.983,2.362c-0.415,0.498-0.883,0.72-1.516,0.72 3236 c-0.382,0-0.704-0.161-1.043-0.329C27.586,17.289,26.985,17,26.1,17h-1.711l1.386-4.245C25.803,12.669,25.799,12.583,25.781,12.5z 3237 M17.9,6.8c0-1.518,1.282-2.8,2.8-2.8h9.2c1.518,0,2.8,1.282,2.8,2.8v4.015C32.642,10.896,32.6,10.991,32.6,11.1v0.018 3238 l-0.906-0.624C29.795,9.124,27.584,8.4,25.3,8.4h-3.1c-1.404,0-2.842,0.29-4.3,0.858V6.8z M15.958,11.329 3239 C18.091,10.049,20.191,9.4,22.2,9.4h3.1c2.073,0,4.082,0.659,5.817,1.912l0.273,0.188H15.693L15.958,11.329z M24.807,12.5 3240 l-1.529,4.685l-0.581,0.258c-0.056,0.025-0.141,0.065-0.185,0.108c-0.065,0.025-0.142,0.054-0.312,0.149 3241 c-0.288,0.216-0.568,0.3-1,0.3c-0.497,0-1.075-0.282-1.516-0.72L17.8,15.019V12.5H24.807z M17.8,26.1v-9.52l1.146,1.374 3242 C19.611,18.619,20.433,19,21.2,19c0.645,0,1.139-0.154,1.523-0.453c0.058-0.029,0.105-0.047,0.146-0.062 3243 c0.087-0.034,0.192-0.074,0.301-0.159L23.906,18H26.1c0.604,0,1.013,0.171,1.476,0.447C28,18.659,28.481,18.9,29.1,18.9 3244 c0.932,0,1.678-0.353,2.283-1.078l1.217-1.449V26.1c0,1.28-0.916,2.382-2.112,2.7H19.912C18.715,28.482,17.8,27.38,17.8,26.1z 3245 M16.7,29.8v2.4c0,4.847,3.771,8.81,8.5,9.074V56H12.9V29.9c0-0.028-0.011-0.051-0.016-0.078C13.022,29.813,13.16,29.8,13.3,29.8 3246 H16.7z M6.6,36.6c0-3.2,2.313-5.966,5.3-6.64V56H6.6V36.6z M39.5,56V30.004c2.923,0.73,5.1,3.407,5.1,6.596 3247 c0,0.037,0.004,0.074,0.012,0.108C44.675,37.523,44.699,48.454,44.7,56H39.5z"/> 3248 <path fill="#404040" d="M26.1,24.2h-4.2c-0.276,0-0.5,0.224-0.5,0.5s0.224,0.5,0.5,0.5h4.2c0.276,0,0.5-0.224,0.5-0.5 3249 S26.376,24.2,26.1,24.2z"/> 3250</g> 3251</svg> 3252 3253` 3254}); 3255 3256 3257//Trainer 3258Vue.component('fj-icon-email-check', { 3259 template: ` 3260<svg width="86px" height="85px" viewBox="0 0 86 85" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 3261 <!-- Generator: sketchtool 43.1 (39012) - http://www.bohemiancoding.com/sketch --> 3262 <title>A024D77C-D271-4218-821A-6C51DB1CC608</title> 3263 <desc>Created with sketchtool.</desc> 3264 <defs></defs> 3265 <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> 3266 <g id="step3" transform="translate(-597.000000, -321.000000)"> 3267 <g id="Group-12" transform="translate(597.000000, 321.000000)">
3268 <g id="Group-7" fill="#F0EFFF"> 3269 <path d="M85.7324561,42.6038759 C85.7324561,19.1884889 66.68784,0.207070707 43.1951754,0.207070707 C19.7025109,0.207070707 0.657894737,19.1884889 0.657894737,42.6038759 C0.657894737,66.0185818 19.7025109,85 43.1951754,85 C66.68784,85 85.7324561,66.0185818 85.7324561,42.6038759" id="Fill-8"></path> 3270 </g> 3271 <g id="Group-11" transform="translate(14.000000, 9.000000)"> 3272 <g id="Group-4"> 3273 <path d="M59.5773626,38.1892523 L29.7883516,55.6192523 L0,38.1892523 L0.00461538462,38.1408411 C0.029010989,38.0302804 1.67340659,36.6682243 4.18021978,34.646729 L4.24813187,34.5891589 C12.4740659,27.9627103 29.7883516,14.3925234 29.7883516,14.3925234 C29.7883516,14.3925234 47.1032967,27.9627103 55.3285714,34.5891589 C57.8749451,36.6394393 59.549011,38.0257009 59.5727473,38.1408411 L59.5773626,38.1892523" id="Fill-17" fill="#F69C1A"></path> 3274 <path d="M42.4068132,0 L10.2665934,0 C7.50989011,0 5.27472527,2.21775701 5.27472527,4.95233645 L5.27472527,53.1699065 C5.27472527,55.9051402 7.50989011,58.122243 10.2665934,58.122243 L50.5397802,58.122243 C53.2958242,58.122243 55.530989,55.9051402 55.530989,53.1699065 L55.530989,13.0219626 L42.4068132,0" id="Fill-18" fill="#FFFFFF"></path> 3275 <path d="M42.1978022,8.06962617 C42.1978022,10.8048598 44.432967,13.0219626 47.189011,13.0219626 L55.321978,13.0219626 L42.1978022,0 L42.1978022,8.06962617" id="Fill-19" fill="#F7F8FA"></path> 3276 <path d="M59.5773626,37.9439252 L59.5773626,66.2998131 C59.5773626,68.2820561 57.9448352,69.901215 55.947033,69.901215 L3.62043956,69.901215 C1.62263736,69.901215 0,68.2820561 0,66.2998131 L0,37.9439252 L29.7883516,55.3706542 L59.5773626,37.9439252" id="Fill-24" fill="#FFD454"></path> 3277 <path d="M58.8876923,68.7458879 L39.7147253,49.7215888 L30.1054945,55.3431776 L20.492967,49.7196262 L1.31868132,68.7445794 C1.97868132,69.4360748 2.90505495,69.8737383 3.93758242,69.8737383 L56.2641758,69.8737383 C57.2967033,69.8737383 58.2250549,69.436729 58.8876923,68.7458879" id="Fill-25" fill="#FFB228"></path> 3278 </g> 3279 <path d="M39.2560142,22.8155607 C38.78686,22.8291494 38.3414414,23.0236555 38.0140568,23.3579007 C35.1938351,26.1667699 32.3706025,28.9643136 29.5461657,31.7735299 L25.396914,28.3324673 C24.6303042,27.6991925 23.4924819,27.8025157 22.8540483,28.5633795 C22.2156147,29.3242433 22.3177595,30.4552058 23.082327,31.0909147 L28.5017774,35.5792455 C29.2206986,36.1747896 30.278231,36.1260947 30.9386633,35.4670372 C34.1474597,32.271196 37.3589657,29.0932484 40.5732417,25.8919375 C41.1038055,25.3745596 41.2613722,24.58703 40.9703244,23.9072896 C40.6792765,23.2275493 39.9990199,22.7943395 39.2560142,22.8155607 L39.2560142,22.8155607 Z" id="Shape" fill="#7762EF" fill-rule="nonzero"></path> 3280 </g> 3281 </g> 3282 </g> 3283 </g> 3284</svg> 3285 3286` 3287}); 3288 3289window.confirmAccount = function () { 3290 jQuery("#emailService")[0].click(); 3291} 3292 3293window.app_survey = new Vue({ 3294 el: '.app_survey', 3295 data: { 3296 local: { 3297 answerType:'organization', 3298 step:1, 3299 animateStepClass:"step0-step1-next", 3300 isOtherOrganization:false, 3301 isShowOtherDelBtn:false, 3302 otherOrganization:null, 3303 doSurvey:false, 3304 } 3305 }, 3306 methods: { 3307 askRole:function (organization) { 3308 this.local.answerType = organization; 3309 this.local.animateStepClass = "step1-step2-next", 3310 this.local.step = 2; 3311 }, 3312 submitSurvey:function (role) { 3313 ealog.addEvent("user survey",{ 3314 organization:this.local.answerType, 3315 role:this.local.answerType + " " + role 3316 }); 3317 this.local.animateStepClass = "step2-step3-next"; 3318 this.local.step = 3; 3319 }, 3320 goBack(){ 3321 if(this.local.step === 2){ 3322 if(this.local.isOtherOrganization){ 3323 this.local.isOtherOrganization = false;
3324 }else{ 3325 this.local.answerType = 'organization'; 3326 } 3327 this.local.animateStepClass = "step2-step1-prev"; 3328 this.local.step = 1; 3329 } 3330 }, 3331 closeBox(){ 3332 this.local.doSurvey = false; 3333 if(document.domain != "localhost"){ 3334 if(this.local.step === 1){ //å¨ç»ç»é¡µé¢ç¹å»å ³é 3335 ealog.addEvent("user survey",{ 3336 "step1 2 close":1 3337 }); 3338 } 3339 if(this.local.step === 2 && this.local.isOtherOrganization && this.local.answerType === "organization"){ //å ¶å®ç»ç»é¡µé¢ç¹å»å ³é 3340 ealog.addEvent("user survey",{ 3341 "step1 2 close":1 3342 }); 3343 } 3344 if(this.local.step === 2 && !this.local.isOtherOrganization && this.local.answerType != "organization"){ //è§è²é¡µé¢ç¹å»å ³é 3345 ealog.addEvent("user survey",{ 3346 "step1 2 close":1, 3347 "organization":this.local.answerType 3348 }); 3349 } 3350 } 3351 }, 3352 openBox(){ 3353 this.local.step = 1; 3354 this.local.answerType = 'organization'; 3355 this.local.animateStepClass = "step0-step1-next"; 3356 this.local.isOtherOrganization = false; 3357 this.local.isShowOtherDelBtn = false; 3358 this.local.otherOrganization = null; 3359 this.local.doSurvey = true; 3360 }, 3361 goOtherPage(){ 3362 if(this.local.step === 1){ //ç»ç»é¡µé¢ç¹otherï¼æäº¤otherï¼å¹¶å¼¹åºè¾å ¥æ¡ 3363 this.local.animateStepClass = "step1-step2-next"; 3364 this.local.isOtherOrganization = true; 3365 this.local.step = 2; 3366 ealog.addEvent("user survey",{ 3367 organization:"other", 3368 }); 3369 }else if(this.local.step === 2 && this.local.answerType != 'organization'){ //è§è²é¡µé¢ç¹otherï¼ç´æ¥å®æï¼æäº¤other 3370 this.local.step = 3; 3371 ealog.addEvent("user survey",{ 3372 organization:this.local.answerType, 3373 role:"other" 3374 }); 3375 } 3376 3377 }, 3378 inputChange(){ 3379 if(this.local.otherOrganization.length > 0){ 3380 this.local.isShowOtherDelBtn = true; 3381 }else{ 3382 this.local.isShowOtherDelBtn = false; 3383 } 3384 }, 3385 clearOtherInput(){ 3386 this.local.otherOrganization = null; 3387 this.local.isShowOtherDelBtn = false; 3388 }, 3389 completeOther(){ 3390 if(this.local.answerType === "organization"){ //ç»ç»é¡µé¢ç¹å ¶ä»ï¼ç¶åè¾å ¥å®æ 3391 ealog.addEvent("user survey",{ 3392 "organization other":this.local.otherOrganization 3393 }); 3394 } 3395 this.local.step = 3; 3396 this.local.isOtherOrganization = false; 3397 }, 3398 goConfirmEmail:function () { 3399 if(window.confirmAccount){ 3400 window.confirmAccount(); 3401 } 3402 //jQuery("#emailService")[0].click(); 3403 this.local.doSurvey = false; 3404 } 3405 }, 3406 create:function () { 3407 3408 }, 3409 mounted: function () { 3410 }, 3411}); 3412//订é ç¶ææ¹ååæ´æ°è®¢é ä¿¡æ¯ 3413document.addEventListener('DOMContentLoaded', function() { 3414 if (window.FJGlobalariable && window.FJGlobalariable.modSubscription) { 3415 window.FJGlobalariable.modSubscription.addSubscriptionChangedListener(function(data) { 3416 //console.log(data); 3417 app_fj_login.updatePackInfo(data); 3418 }); 3419 } else { 3420 console.log('modSubscription is undefined'); 3421 } 3422}); 3423// åå§åæ¾ç¤ºç»å½/注å颿¿çæ¹æ³ 3424window.fjuser.initWithMethods(app_fj_login.showLoginPanel, app_fj_login.showSignUpPanel); 3425 3426// æ·»å googleéªè¯ç®æ æ¹æ³ 3427if(window.googleRecaptcha){ 3428 window.googleRecaptcha.addTarget('login', window.fjuser.loginPost); 3429 window.googleRecaptcha.addTarget('register', window.fjuser.registerPost); 3430} 3431 3432//æ·»å è ¾è®¯éªè¯çæ¹æ³ 3433if(window.tencentRecaptcha){ 3434 window.tencentRecaptcha.addTarget('login', window.fjuser.loginPost); 3435 window.tencentRecaptcha.addTarget('register', window.fjuser.registerPost); 3436}; 3437 3438window.recaptchaPost = function(data,type){ 3439 if(window.googleRecaptcha.loaded === true){ 3440 window.googleRecaptcha.submit(data, type); 3441 return; 3442 } 3443 if(window.tencentRecaptcha.loaded === true){ 3444 window.tencentRecaptcha.submit(data, type); 3445 return; 3446 } 3447 3448 setTimeout(() => { 3449 window.recaptchaPost(data, type); 3450 }, 500); 3451};
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.