{"version":3,"sources":["core.js"],"names":["AutoComplete","$timeout","$mdUtil","$log","$injector","$location","this","md","self","log","timeout","location","simulateQuery","isDisabled","getValues","prototype","selectedItemChange","querySearch","query","states","filter","createFilterFor","lowercaseQuery","angular","lowercase","state","display","indexOf","init","moduleConfig","name","deps","module","run","$rootScope","$window","PageNavigationService","TCFAAppConfigService","$uibModal","__showModal","SessionDAO","get","GeoLocationService","DependencyInjectionService","showSplash","ga","GOOGLE","ANALITYCS","$on","url","userInfo","SHOW_ISSUE_COLLECTOR","loadApi","then","console","session_token","createSession","$promise","position","crd","coords","updateSession","latitude","longitude","modal","message","scope","__modals","loading","keyboard","error","alert","open","animation","windowClass","openedClass","backdrop","templateUrl","controller","$scope","close","$dismiss","accept","$close","controllerAs","bindToController","appendTo","element","showLoadingModal","showErrorModal","showAlertModal","fixScreen","addClass","unfixScreen","removeClass","document","ready","bootstrap","window","config","$httpProvider","interceptors","push","$inject","$routeProvider","$resourceProvider","defaults","stripTrailingSlashes","when","reloadOnSearch","template","resolve","ExternalLoginService","externalLogin","linkedinService","login","login_error","otherwise","redirectTo","useXDomain","headers","common","txtangular","$provide","decorator","html","tooltip","heading","p","pre","ul","ol","quote","undo","redo","bold","italic","underline","strikeThrough","justifyLeft","justifyRight","justifyFull","justifyCenter","indent","outdent","clear","insertImage","dialogPrompt","hotkey","insertVideo","insertLink","editLink","reLinkButton","unLinkButton","targetToggle","buttontext","wordcount","charcount","taTools","h1","h2","h3","h4","CarSliderService","prepareSlide","data","fullView","lng","x","many","car_list","is_homepage","slides","displayMode","slideClass","slidesCount","length","updateRes","width","innerWidth","oldMode","undefined","factory","CotizadorService","$httpParamSerializer","$route","_EVENT_KEY_UPDATED_PLANES_PLAZOS","_EVENT_KEY_UPDATED_LOAN_AMOUNT","_EVENT_KEY_CHANGED_COTIZAR_FORM","_EVENT_KEY_UPDATED_VEHICLE_MODELS","_EVENT_KEY_UPDATED_PLAN","_EVENT_KEY_RESTORED_SLIDER","onPlanesAndPlazosUpdated","callback","__listener","updatePlanesAndPlazos","planes_plazos","is_publication","quiet","$emit","onLoanAmountUpdated","updateLoanAmount","loan_amount","onCotizarFormChanged","changeCotizarForm","onVehicleModelsUpdated","updateVehicleModels","onPlanUpdated","updatePlan","plan","onSliderRestored","restoreSlider","getUrlToSocialShare","params","__url","API","HOST","__params","il","link_type","campaign","ic","operation_type","io","vehicle_brand","vehicle_brand_name","vb","vbn","vehicle_model","vehicle_model_name","vm","vmn","vehicle_version","vehicle_version_name","vv","vvn","vehicle_condition","vc","vehicle_year","vy","vehicle_type","vt","vehicle_id","vi","person_type","pt","tax_condition","tc","la","canon","ca","ip","plazo","pl","subplan","is","insurance_id","ii","insurance_company_name","icn","insurance_pack_name","ipn","insurance_zone_name","izn","insurance_prov_name","izpn","insurance_installments","iic","insurance_company_id","ici","insurance_pack_code","ipi","insurance_zone_cp","izcp","insurance_prov_id","izpi","insurance_detail","idet","btoa","redirectToAnonymousChannel","path","search","hash","reload","$q","loadPromises","loadScript","src","apiName","delayMs","defer","$","getScript","done","setTimeout","fail","reject","promise","externalApis","GOOGLE_MAPS","KEY","exports","SEGUROS","URL","loadedApis","loadApis","i","PICTURE_URL","_USER_IMAGES_URL_PATH_SUFFIX","USER_TYPE_ADMIN","USER_TYPE_CLIENT","USER_TYPE_DEALER","USER_TYPE_TASA","AuthDAO","termsAndConditionChecker","ParametrosService","TCFAModalService","seccion_login","key","validateAndSetUserType","userType","ShowMiPerfil","ShowABM","ShowMensajes","showFavoritos","goToAbm","token","redirect","href","ABM","encodeURIComponent","validateSessionResponse","sessionResponse","invalidSession","debug","showError","showModal","title","validateSessionTasa","ValidateSessionTasa","resp","user","socialProfile","pictureUrl","is_tasa","validateSessionAdminDealerOrClient","validateSession","user_type","admin","profile_image","IMG_SRC","dealer","concesionario","valor","checkAndRequest","cliente","buildSelector","clientes_asociados","cuit","navigateAs","clientesAsociados","showWarning","selectorScope","$new","clientes","clientSelectorModal","parent","result","dismiss","facebookService","require","fallbacks","MSG_USER_CANCELLED_LOGIN","FACEBOOK_LOGIN_RESULT","SOCIAL_PROFILE_INFO","AuthSocial","NotificationsService","PublicationDAO","myself","FB","appId","FACEBOOK","APP_ID","cookie","xfbml","version","VERSION","tcfautos_fallback_check","success","response","status","network","access_token","authResponse","accessToken","resp1","api","resp2","firstName","first_name","lastName","last_name","picture","markAsUnread","mensajes","loggedSocial","getData","getLoginStatus","share","nombre","email","ui","method","loginShare","publicacion_id","sharePublicationByFacebook","info","warning","showBtn","geoLocation","options","enableHighAccuracy","promesa","navigator","geolocation","getCurrentPosition","googleService","usSpinnerService","auth2","gapi","load","client_id","CLIENT_ID","SCOPES","handleAuthResult","googleUser","getAuthResponse","id_token","googleProfile","getBasicProfile","getGivenName","getFamilyName","getImageUrl","checkAuth","signIn","HomeFilterService","filters","tcfaErrorHandler","showErrorCodes","showErrorInternalCodes","showSuccessCodes","isRestService","isCotizadorService","isYouTubeService","showSuccess","responseError","rejection","errors","code","Array","tcfaTokenInjection","userIsLogged","request","avoidInterceptor","Authorization","deferred","UtilsHelper","decodeURIComponent","current","redirectURI","getBaseURI","showSplashScreen","apellido","social_picture","hideSplashScreen","error_desc","atob","openAuthTab","linkedinLoginURI","LINKEDIN","LogInUser","TCFA_MODAL","MODAL_COMPONENT","showUsuariosAsociados","showConcesionariosAsociados","concesionarioSelectorModal","concesionarios_asociados","concesionarios","showLogin","loginCliente","that","parseInt","navigate_as","showLoginConcesionario","loginConcesionario","userData","loginConcesionarioProcesarSeleccionado","getAllParameters","some","check","clave","termsAndConditionsPromise","find","$interval","UserDAO","unreadMessages","readMessages","unreadCallbacks","unreadCount","count","hasOwnProperty","notifyUnreads","unread","messagesArray","notify","read","getMensajesSinLeer","markAsRead","watchUnreads","__navigationParameters","showLoginMenu","showNewsletterSubscription","showingSplash","getParameter","defaultValue","preserve","parameter","deleteParameter","shouldShowSplashScreen","$resource","CacheFactory","transformBasicGetResponse","cacheParametros","__cacheAllParameters","maxAge","cacheFlushInterval","deleteOnExpire","storageMode","fromJson","transformResponse","isArray","cache","getWithoutCache","__json_response","searchService","addParameter","paramName","paramValue","value","page","addFromRequest","res","forEach","removeParameter","navigationValues","SessionValidationService","validators","CheckUserType","usersTypesValidators","tasa","anon","showLoginByUserType","validateStrictPermissions","permissions","innerRole","values","permiso","hasInnerPermission","hasPermission","split","sessionValidator","UIB_MODAL_INSTANCE","myScope","$uibModalInstance","showClose","showAdvice","btnClick","warningFn","showConfirm","aceptar","isFunction","cancelar","showOk","modalInfo","TCFANewsletter","TCFANewsletterDAO","adherirNewsletter","canal","adherir","plataforma","btnText","desadherirNewsletter","desadherir","validarEmailNewsletter","id_persona","verificacionDeEmail","GOOGLE_KEY","CONFIG_SHARED_GOOGLE_API_KEY","CONFIG_SHARED_GOOGLE_CLIENT_ID","CONFIG_SHARED_GOOGLE_RECAPTCHA_KEY","CONFIG_SHARED_LINKS_ASK_LOAN","CONFIG_SHARED_LINKS_ASK_LOAN_COTIZADOR","CONFIG_SHARED_LINKS_SIMULADOR_CREDITOS","hostname","ENVS","DEV_LOCAL","DEV_QA","DEV_QA2","TEST1","TEST2","TEST3","TEST4","TEST_QA","PROD","CONFIG_SHARED","MOCK","AUTO_IMAGE_FOLDER","BANNER_IMAGE_FOLDER","CUOTAS","LOANS","MIN_VALUE","APP_SECRET","API_KEY","CLIENT_SECRET","SHARE_URL","RECAPTCHA_KEY","YOUTUBE","IMAGE_REPO","LINKS","ASK_LOAN","ASK_LOAN_COTIZADOR","SIMULADOR_CREDITOS","REGISTER_URL","FACEBOOK_PAGE","GPLUS_PAGE","LINKEDIN_PAGE","TWITTER_PAGE","IOS_APP_LINK","ANDROID_APP_LINK","TCFA_LOST_PASSWORD","NEW_REGISTER_URL","LOST_PASSWORD","TCFA_NEWSLETTER","ENV","TermsConditionsDAO","seccion","isSeccionApproved","id","aprobado","approved","termino","termino_condicion","fn","approveTerm","idCheckerWithTypeCoercion","id1","id2","isMobile","mobileObj","windows","test","userAgent","android","blackBerry","iOS","any","isOldIEVersion","RegExp","getParamFromURL","searchStr","substring","keyValues","baseURI","absUrl","replace","verificationCodeHandler","showVerificationModal","verificationCode","codeSent","verificationId","resendEnabled","attempts","sendCode","spin","sendVerificationCode","telefono","cellphone","stop","sent","verified","resendCode","closed","onSubmit","trim","checkVerificationCode","sms_id","verification_code","ActionDAO","createAction","transformRequest","tipo_aplicacion_id","JSON","stringify","passwordReset","passwordChange","BannerDAO","_SECCION_BANNERS_URL_PATH_SUFFIX","Upload","cacheBanners","getPublicatedBanners","getBanner","CarDAO","$http","__cacheCuotasData","getAutoById","getOutstandingBrands","getModelsByBrand","getVersionByModel","searchCarByTitle","autocompleteSearch","getSearchFilters","getCuotas","getRelatedByDistributor","getDatosCalculoCuotas","ConcesionariosDAO","baseURL","__cacheConcesionarios","getDestacados","ContactsDAO","consultaAuto","auto_id","confirmarConsulta","CotizadorDAO","__base_url","__cacheCampaign","__cacheVehicleLoanInfoTCFAutos","__cacheAllTooltips","__cacheAllVehicleLogos","__cacheVehicleImage","__cacheAllVehicleImages","__cacheCanalAnonimo","__cacheAllSections","getCampaign","getVehicleLoanInfoTCFAutos","newMessage","getAllTooltips","cotizar","cuadroDeMarcha","pdf","shareWithFriends","favoriteDelete","favoriteAdd","favoriteCheck","favoriteGetAll","getAllVehicleLogos","getAllVehicleImages","getCanalAnonimo","dateroLog","getAllSections","shareWithFriendOnFacebook","getVehicleVersionImage","getVersionXModelo","getPlazoDetalle","getMarcaModeloByTipo","getPlazos","DestacadosDAO","cacheDestacados","getRelacionados","getPublicacionPorToken","activarPublicacion","FavoritoDAO","getAll","delete","isFavorito","LocationDAO","getAllProvincias","apiGoogleMapsLocalidades","address","doCall","returnData","geocoder","google","maps","Geocoder","geocode","componentRestrictions","country","m","GeocoderStatus","OK","place_id","formatted_address","lat","geometry","address_components","agregarAFavoritos","pubId","sharePublication","StatsDAO","postPediTuPrestamo","sendData","callbackError","post","getSeccion","resource","unsubcribeCliente","checkUserName","checkSMTPEmail","registerClient","confirmClient","confirmEmailAlternativo","patchProfile","patchProfileTasa","getMensajes","mensajeVisto","validatePhone","postProfileImage","image","defered","upload","evt","defImgSrc","link","attrs","bind","$set","directive","TcfaBottomBarController","tcfaBottomBar","showBottomBar","restrict","transclude","tcfaCheckPattern","attributes","ngModel","regx","$validators","modelValue","tcfaCutCopyPastePrevent","on","event","preventDefault","directiveA","directiveB","directiveC","directiveD","directiveF","directiveG","filterA","$filter","elem","displayAsNumber","saveAsNumber","appendStr","transform","addMiles","val","finalStr","currency","unit","newCar","toString","$isEmpty","inputValue","$formatters","$parsers","$viewValue","$modelValue","$render","__key_code","keyCode","which","blur","transformedInput","onlyNumbersFunc","$commitViewValue","$setViewValue","ctModel","ctMethod","ctValidato","$watch","$validate","height","videoid","yturl","ytvideo","__yt_player","__current_video_id","__first_script_tag","getElementsByTagName","__new_script_tag","createElement","__onPlayerError","__error_code","valid","__videoInit","YT","Player","children","playerVars","autoplay","html5","theme","modesbranding","color","iv_load_policy","showinfo","controls","rel","videoId","events","onError","__getVideoIdFromYTUrl","yt_url","regExp","match","__updatePlayerVideoId","video_id","cueVideoById","css","stopVideo","clearVideo","parentNode","insertBefore","new_yturl","new_video_id","onYouTubeIframeAPIReady","destroy","ctrl","$valid","$apply","$eval","tcOnKeyPress","finalvideoid","getIdFromUrl","youtubeImageRepo","defImage","input","txt","charAt","toUpperCase","substr","toLowerCase","tcfaDropdownController","changeValue","onValueChange","getDescription","showDescription","getTooltip","showTooltip","enableTooltip","list","ngDisabled","tcfaElementFadeOn","fadeOnElement","fadeOnAction","$element","_s","showOn","inView","docViewTop","docViewBottom","elemTop","elemBottom","belowElement","upElement","pageYOffset","offsetTop","offsetHeight","clientHeight","showObject","showElement","getComputedStyle","win","tcfaPagination","disablePagination","firstPageIndex","lastPageIndex","currentPageIndex","maxPageDisplay","onPageChange","quota","showQuotaBlock","askLoan","_image","_url","_info","_quota","$attrs","quotaBlockPositionY","quotaElement","scrollHeight","showZoom","Number","isInteger","isFinite","Math","floor","zoomElement","ngSrc","ezPlus","zoomWindowWidth","zoomWindowHeight","lenszoom","lensSize","easing","minZoomLevel","preloading","zIndex","tcSlider","priority","carsFilter","onLoad","loadItems","onItemClick","goToItem","showMore","maxListItems","sliderSpinnerKey","NewsletterUnsubscribeCtrl","emailPattern","newsletterEmail","ShareWithFriendsCtrl","emailsmtpcheckfailed","emailamigosmtpcheckfailed","captchaSize","model","checkEmailInput","checkEmailAmigoInput","emailAmigo","onFail","disableSend","send","publication_id","sendInsurance","__data","insurance_data","nombreAmigo","mensaje","marca","marcaId","modelo","modeloId","year","kms","is0km","price","vehicle_price","share_url","lt","ce","App","EsCertificado","grecaptchaKey","CarSliderCtrl","loadData","startSpinner","isUndefined","interval","no_wrap","active","imagesSource","cars","isSearching","defaultSearch","onresize","mouseEnterItem","item","hover","mouseLeaveItem","obj","publicacion","goTo","showMoreLink","removeId","ClientConfirmCtrl","$routeParams","userDAOMethod","showSuccessModal","tokenid","alreadyConfirmed","catch","ClientRegisterCtrl","showNavBar","nameRegex","register","last","reemail","cellphone_prefix","full_cellphone","pass","repass","emailexistnative","emailexisttcfa","formError","cellphonecheckfailed","copyOfRegister","copy","copyOfErrors","tcfauserlostpassword","resetValues","form_register","$setPristine","$setUntouched","detectLoadingError","k","doCheckSmtp","Object","keys","disableAceptar","doCheckClient","base64","encode","native","doCheckCellphone","codigo_area","verificationCodePromise","doRegisterClient","doCancel","showAgainForm","CotizadorCtrl","Cotizador_SeccionConsultaCtrl","__modal_consulta","onNewMessage","__scope_modal_consulta","__recaptcha_promise","__openNewMessageModal","disable_submit","mail","text","message_max_length","message_left_length","captcha_key","captcha_size","onChangeMessageText","__loading_modal","__error_message","__email_regex","consulta","texto","operacion","tipo_operacion_id","cotizador","tipo_persona_id","condicion_impositiva_id","cuit_dealer","vehiculo_nuevo","vehicle_condition_new","anio","tipo_vehiculo_id","marca_id","marca_descripcion","modelo_id","modelo_descripcion","descripcion","version_id","version_descripcion","vehiculo_id","plan_id","plan_descripcion","subplan_id","installment","subplan_descripcion","canon_anticipado","monto_financiar","__success_modal","join","Cotizador_SeccionCotizadorCtrl","_LOG_TAG","_OPTION_INVALID_ERROR_MSG","_LOADING_INFO_MSG","_LOADING_INFO_PLEASE_WAIT_MSG","_CUIT_DEALER_DEFAULT","__id_share_link","__id_campaign","__id_vehicle_brand","__name_vehicle_brand","__id_vehicle_model","__id_vehicle_version","__vehicle_condition","__vehicle_year","__vehicle_type","__id_person_type","__key_tax_condition","__loan_amount","__key_canon","__key_operation","__id_vehicle","__ga_utm_source","utm_source","__ga_utm_medium","utm_medium","__ga_utm_campaign","utm_campaign","__nav_step_model","__nav_state","__nav_prev_state","__nav_back_state_enable","__campaign_data_promise","__initializing_modal","__loan_amount_alert_modal","__person_types_data_promise","__person_types_data_fire_req","__req_fired","j","__taxes_conditions","__person_type","__person_types_data","tipos_persona","condicion_impositiva","interest","iva_interes","codigo","is_default","default","key_number","codigo_numerico","loan_code","codigo_prestamo","taxes_conditions","canons","onChangePersonType","__p_type","__param","resp_params","param_item","__i","__canons","label","onChangeCanon","person_types","__tooltip_error_text","__loadVehicleImagesPromise","__loadVehicleLogosPromise","__loadVehicleLogoImages","all_images_response","image_item","file_exists","brand_id","model_id","logo_image","logo_image_loading","error_logo_image","__loadVehicleImages","get_logo","modelos_id","vehicle_models","map","model_item","$$state","__missing_images","image_loading","error_image","all","__parseVehiclesCollection","collection","brand","p_mar_id_i","p_mar_desc_c","models","modelos","modelo_item","p_mod_id_i","p_mod_desc_c","__loadVehicleLoanInfo","__$vehicle_loan_info","__loanInfo","financiacion_sugerida","max_financiacion","p_veh_id_i","vehiculo_precio","p_veh_precio_n","loan_suggested_amount","parseFloat","__$vehicle_loan_info_finished","Date","getFullYear","vehicle_is_car","vehicle_is_truck","vehicle_is_forklift","vehicle_iva","show_vehicle_price","anonymous_channel","used_anonymous_channel","loan_max_amount","loan_min_amount","form_cotizar_changed","form_submit_in_progress","operations","extra","operation","plans","tooltip_operation_retail","tooltip_operation_leasing","tooltip_canon","show_used_cars","show_new_cars","show_vehicle_type_selectors","swiper_instance","swiper_options","initialSlide","slidesPerView","centeredSlides","breakpoints","767","observer","autoHeight","transitionEnd","__slide_to","activeIndex","previousIndex","isBeginning","isEnd","slideTo","update","swiper_to_initial_slide","swiper_dummy_slide_first","swiper_dummy_slide_last","disable_vehicle_type_forklift","disable_vehicle_type_car","disable_vehicle_type_truck","vehicle_version_model","toyotaCiclo","getVehicleVersions","p_tve_id_i","liftCampaignRestrictions","disable_operation_change","disable_person_type_change","disable_tax_condition_change","disable_vehicle_model_change","disable_vehicle_version_change","isVehicleTypeCarActive","isVehicleTypeForkliftActive","isVehicleTypeTruckActive","vehiclesCustomSortComparator","v1","v2","predefined","v1pos","v2pos","localeCompare","filterCampaignVehicleVersions","vehicle_versions","__campaign_vehicle_versions","versiones","campaign_vehicle_version","p_ver_id_i","swiperSlideToInitial","onSwiperContainerInit","currentBreakpoint","Swiper","onSlideInit","finally","onSwiperPrev","__index","onSwiperNext","onSelectSlide","hashUpdate","onChangeVehicleModel","onSelectSlideUsedCar","onSelectVehicleTypeCar","getMarcaModelo","onSelectVehicleTypeForklift","onSelectVehicleTypeTruck","onFormCotizarChange","onChangeOperationType","operation_is_retail","onChangeVehiclePrice","onChangeVehicleId","onChangeVehicleVersionImage","dataImagen","onChangeVehicleIva","onChangeVehicleVersion","__vehicle_loan_info_promise","__vehicle_loan_info_promise_resolve_func","onChangeLoanAmount","dcu","campaign_id","co","campaign_data","campania","origen","pos","findIndex","rendered","finished_loading_data","p_ver_desc_c","onUpdatedVehicleModels","reset_images","slice","v_model","pre_selected_version_id","__loading_modal2","__version_modelo_promise","__getVehicleImages","onChangeTaxCondition","__last_input","onFocusLoanAmount","target","onKeydownLoanAmount","__previous_loan_amount","selected","onChangeInstallment","onChangePlan","installments","onChangeVehicleCondition","onChangeVehicleYear","onChangeVehicleType","onChangeVehicleBrand","onShare","__modal_share","__modal_scope","__share_data","__share_url","disableFacebookShare","onShareFacebook","isObject","onShareGooglePlus","onShareWithFriends","__share_with_friends_modal_scope","__openShareWithFriendsModal","onCotizar","p_tipo_de_persona_c","p_tipo_operacion_c","p_id_veh_i","p_monto_a_financiar_n","campania_id","cotizar_response","ga_utm_source","ga_utm_medium","ga_utm_campaign","__finish_get_anon_channel","forklift","autoelevadores","car","autos","truck","camiones","__filter_plans","onHashChange","__state","new_hash","__current_hash","__current_url","random","updateVehicleModel","veh_mod","tipo_aplicacion","vehicle","marcas","p_type","tax_cond","deselectModel","param","tooltips","tooltip_item","__image","__vehicle_models","__vehicle_versions","__plans","__installments","__aux_id","__campaign_data","__finish_get_campaign","valor_vehiculo","round","maximo_financiar","showTipoVehiculo","show_tipo_vehiculo","Boolean","show_login_concesionario","hideTipoVehiculo","hideLoginConcesionario","logo","logo_pdf","Image","onload","logo_loaded","onerror","logo_error","from_campaign","sucursales","concesionarios_response","conc_item","branches","tipo_persona","id_marca","marca_desc","tipo_vehiculo","vehiculos_seleccionados","planes","subplanes","tipo_operacion","tipo_operacion_todos","tipo_persona_todos","condicion_impositiva_todos","Cotizador_SeccionPlazosCtrl","_WINDOW_MODAL_CLASS","_MODAL_COMPONENT_HTML_ID_SELECTOR","_MESSAGE_LOADING_DATA","$anchorScroll","__getPlanPDF","__ID_PROV_TDF","__id_plazo","__id_subplan","__id_insurance","__name_insurance_company","__id_insurance_company","__code_insurance_pack","__name_insurance_pack","__name_insurance_zone","__cp_insurance_zone","__name_insurance_prov","__id_insurance_prov","__insurance_installment","__insurance_detail","__used_shared_link","__sumReducer","accumulated","getInstallmentsDataFiltered","cuadro_de_marcha","installments_data","p_sup_id_i","__legal_text","__legal_text_promo","__legal_text_uva","__legal_text_promise","__legal_text_promise_promo","__legal_text_promise_uva","__q_legal_text","__q_legal_text_promo","__q_legal_text_uva","__error_legal_text","__error_legal_text_promo","__error_legal_text_uva","__errorLoadingLegalTextComplete","error_legal_text","loading_legal_text","legal_text_defer","__replace_dynamic_vars","installments_info_promise","__hora_limite_liquidacion","__costo_mensual","__costo_mensual_param_key","__fecha_inicio","__fecha_fin","__time_format","__params_data","__installments_data","moment","p_fecha_vig_desde","p_fecha_vig_hasta","legal_text","tna","tea","cft","cft_efectivo","promo_amount","isValid","format","add","__getLegalTextsForPlan","promo","content","uva","calculateInstallments","auto_select_plan","disable_installments","cft_seguro","cft_seguro_iva","primera_cuota_con_seguro","ultima_cuota_con_seguro","installments_count","number","cuota_pura","capital","interes","costo_mensual","gasto","iva","gasto_iva","order_retail","onSelectPlan","error_installments","checking_favorite","id_campania","id_plan","id_subplan","check_fav_response","__is_favorite","favorite","checking_favorite_error","getPlanesLoanInfoCotizador","caida_de_cuotas","installments_info_loading","Promise","installments_info_error","plan_item","__auto_select_plan","getPlanesLoanInfoPublicaciones","getCuadroMarcha","_seguro_cotizado","_seguro_cotizado_con_restriccion_provincias","_cotizacion_seguro","resetCotizacionSeguro","insurance","plazos","collapsed","checkCotizacionSeguro","reset","__modal","__operation_data","__restrict_provincia","es_TDF","__seguro_promise","__tcfaSegurosSDKPromise","cotizacion_seguro","sid","onChangeLoanInsuranceData","ipl","isl","ccu","p_tipo_operacion","p_cuit_dealer","p_id_vehiculo_i","id_publicacion","provincia","pre_cotizacion","p_cod_cond_fiscal","p_es_usado","p_es_auto","p_es_persona_fisica","p_anio","restrict_provincia_id","origin_session_id","origin_application","onInit","TCFASegurosSDK","environment","container","operation_result","reason","__modal_container","querySelector","classList","remove","locale","showPlazos","show_detail_plazo","pre_selected_plazos","tooltip_cuota_final","tooltip_cuota_final_uva","tooltip_canon_final","tooltip_canon_anticipado","getLoanInsuranceInstallment","getLegalSeguro","__insurance_text","pack","zone","prov","__additional_legal_text","getAclaracionCaidaDeCuota","getCuotaFinal","getCanonFinal","getPrimeraCuota","__primera_cuota_promise","error_primera_cuota","getUltimaCuota","__ultima_cuota_promise","error_ultima_cuota","recalculatePrimeraCuota","recalculateUltimaCuota","getCuotaPromedio","cuota_promedio","__cuota_promedio_promise","reduce","es_agro","es_aguinaldo","p_sup_cant_cuotas_ext_n","p_sup_impo_cuotas_ext_n","es_baloon","p_ref_porcentaje_n","error_cuota_promedio","recalculateCuotaPromedio","getCuotaRefuerzo","cuota_refuerzo","__cuota_refuerzo_promise","error_cuota_refuerzo","getVehiclePrice","p_veh_iva_n","getCanonAnticipado","p_sup_anticipo_porcentaje_n","getOpcionDeCompra","opcion_de_compra","getCanonPromedioMensual","canon_promedio_mensual","__canon_promedio_mensual_promise","__capital_menos_ultimo_valor","__interes_menos_ultimo_valor","cap","splice","error_canon_promedio_mensual","recalculateCanonPromedioMensual","getCapitalAFinanciarEnUVAs","uva_coefficient","getCuotaPuraEnUVAs","getPlanesSortField","secondaryBarFixed","__$window_el","__getUpperBound","offset","__$plan_element","eq","top","__getLowerBound","__$video_element","__viewport_bottom","scrollTop","onPageScroll","__$el","new_insurance","seguro","p_compania_desc_c","p_cobertura_desc_c","localidad","p_cuota_n","p_cotizacion_id_c","company_id","p_compania_id_i","pack_code","p_familia_cod_c","zone_cp","cp","prov_id","detail","p_cob_desc_ampliada_c","plazo_item","onChangePlazoSelect","onPlanesAndPlazosUpdatedPublicaciones","onPlanesAndPlazosUpdatedCotizador","__hash_back","__plazos","p_subplanes_o","__plazo_id","p_sup_plazo_n","disable_plazo","p_es_plan_subvencionado_i","p_pla_id_i","p_pla_descripcion_c","description","p_pla_comentario_c","p_plan_destino_c","includes","promo_adjust","p_importe_max_fin_n","p_sup_peri_cuotas_ext_n","p_sup_porc_cuotas_ext_n","p_factor_c","p_coeficiente_n","incremental","p_tipo_gen_caida_c","is_promo","sort","a","b","__a","__b","has_values","es_promo","onSelectPlazo","seguro_auto_prima","seguro_auto_premio","__planes","__caida_de_cuota","deuda_capital","fecha_cuota","cuotas_con_seguro","onTogglePlazoCollapse","error_canon_anticipado","error_opcion_de_compra","onChoosePlan","loading_choose_plan","__pao_params","cuit_cliente","id_campania_pao","EsTC","__stats_params","id_cotizacion_seg","monto_total","price_calculated","auto_id_vehiculo_fu","vehiculo_id_fu","auto_anio","auto_nuevo","publicacion_titulo","tittle","monto_a_financiar","auto_plan_id","external_plan_id","external_sub_plan_id","stats_response","id_sesion","datero_response","IdDateroTrackingData","closeModalScopeFunc","onShowLegalText","__legal_modal_scope","scrollbarsConfig","autoHideScrollbar","advanced","updateOnContentResize","scrollButtons","enable","setHeight","mouseWheel","scrollInertia","__q","__filteredCapitalAFinanciarEnUVAs","__cuotaRefuerzo","plan_promocion","url_img","es_campania","dealer_logo","dealer_logo_pdf","dealer_sucursales","legal_seguro","descripcion_plazo","titulo","titulo_cuadro_marcha","cuadro_marcha","texto_legal","opcion_compra","plan_uva","aclaracion_caida_de_cuota","pdf_response","onDownloadInstallments","__loading_pdf","__download_url","__blob","__decoded_pdf","file_pdf","__pdf_len","__bytes","Uint8Array","__pdf_link","__URL","webkitURL","charCodeAt","Blob","type","download","createObjectURL","body","appendChild","click","removeChild","revokeObjectURL","onPrintInstallments","__pdf_window","innerText","__iframe","style","border","margin","padding","documentElement","focus","onFavoriteToggleInstallments","__checkFavorito","id_cotizacion_seguro","cotizacion_seguro_compania","cotizacion_seguro_pack","cotizacion_seguro_zona","cotizacion_seguro_prov","cotizacion_seguro_cuota","cotizacion_seguro_id_compania","cotizacion_seguro_codigo_pack","cotizacion_seguro_cp_zona","cotizacion_seguro_id_prov","cotizacion_seguro_detalle","id_modelo","id_vesion","tipo_operacion_clave","vehiculo_anio","cuotas","onShareInstallments","__planes_subplanes_ids","__key","flag_TDF","p_cuit_dealer_c","p_tipo_persona_c","p_veh_nuevo_i","p_precio_usado_n","x_veh_iva","onChangeInsurance","__errorLoadingLegalText","__errorLoadingLegalTextPromo","__errorLoadingLegalTextUva","all_sections","section_item","Cotizador_SeccionVideoCtrl","video_url","DesuscribirClienteController","username","FavoritosListController","sorts","cotizador_data","currentSort","current_page","results","cotizador_response","is_cotizador_result","loadPage","pageIndex","getTotalItems","__total_pubs","__total_loans","total","getAllResults","concat","isItemDisabled","estado","modalOpen","eliminarDeFavoritos","__message","__path","__search","auto","itemHasimages","car_images","getItemImage","getItemMarcaModelo","mar_descripcion_s","mod_descripcion_s","getItemVersion","ver_descripcion_s","getItemYear","getItemKM","getItemProvince","getItemPrice","getItemInstallments","cant_cuotas","HomepageCtrl","linkedin_code","linkedin_error","linkedin_error_desc","Homepage_BannerMovilCtrl","showNewMobileBanner","mobileGplusLink","mobileIphoneLink","Homepage_CarsAutocompleteCtrl","showResults","call","enableScrolling","doTextSearch","searchQuery","autoComplete","Homepage_ConcesionariosDestacadosCtrl","$compile","googleMaps","__showMarker","comoLlego","setCenter","marker","getPosition","setZoom","onSuccess","latLng","mapOptions","scrollwheel","zoom","mapTypeId","MapTypeId","ROADMAP","LatLng","center","Map","getElementById","addListenerOnce","__det_destacados_params","__filter_by_casa_central","user_marker","Marker","Animation","DROP","icon","draggable","user_infoWindow","InfoWindow","addListener","cambiarComoLlego","map_markers","__openInfoWindow","index","infoWindow","cant_publicaciones","sucursal","__marker","order","razon_social","casa_central","lon","setLabel","fontFamily","fontWeight","fontSize","setIcon","labelOrigin","Point","showMe","routeFunction","DirectionsStatus","directionsDisplay","setDirections","setMap","getMap","directionsService","route","origin","destination","travelMode","TravelMode","DRIVING","DirectionsRenderer","markerOptions","visible","DirectionsService","getGoogleMaps","ContactConfirmationController","error_msg","FooterController","newValue","preSettedEmail","facebook_link","gplus_link","linkedin_link","twitter_link","seccionLegalesSitio","seccionPoliticasSitio","disableAdherirButtom","action","String","idx","rem","s","abs","Homepage_HeaderCtrl","refreshCombos","disable_search","disable_search_by_used","disable_search_by_new","showAdvanced","changeSearch","home","searchText","doSearch","accion","parametros","is0kmCheck","brands","versions","disableBrands","disableModels","disableVersions","changeBrand","currentBrand","changeModel","new","currentModel","isChecked","changeTab","tab","selectedTab","set0kmCheckbox","set0km","doAdvanceSearch","advancedSearchParams","id_fu","marcaGroup","v_modelo_id","modeloGroup","currentVersion","kmDesde","kmsFrom","kmHasta","kmsTo","anoDesde","yearFrom","anoHasta","yearTo","precioDesde","priceFrom","precioHasta","priceTo","cuotaDesde","cuotaFrom","cuotaHasta","cuotaTo","currentProv","Homepage_MobileFooterCtrl","showMobileFooter","mobileFooterController","downloadAppLink","hideToolBar","Homepage_ProvinciasAutoCompleteCtrl","Homepage_PublicacionesDestacadas","onItemGo","itemsFunction","extend","Homepage_SliderCtrl","is_admin","bannerToShow","no_pause","no_transition","loadDefault","default_images","afterGetBannersSuccess","banner_images","banners","afterGetBannersFail","bannerSource","tipo_banner","Info_PublicationPreVisualizationCtrl","prepareInfo","categorias","comodidades","categoria","detalles","youtube_url","video","afinanciar","activationTokenValid","mostrarCuotas","isAdmin","isDealer","searchRelacionados","securityToken","obtenerCuotaPromedio","cuota","showcuota","promedio","Cuotas","fecha","FechaCuota","saldoCapital","DeudaCapital","Capital","Interes","Seguro","ivaInteres","IvaInteres","costoMensual","Gasto","ivaCostoMensual","ceil","disableCalcular","calcularCuotas","carId","innerCallback","showValorCuotas","LocationAutocompleteController","search_query","LoginClienteCtrl","_MODAL_COMPONENT_ID_HTML_SELECTOR","checkSocialNetFirewall","SocialNetService","registerUrl","lostPassword","password","disableFacebookLogin","disableGoogleLogin","disableLinkedinLogin","doLoginCliente","registrarUsuario","recuperarUsuario","showRegister","showChangePassword","doLoginFacebook","doLoginGoogle","doLoginLinkedin","LoginClienteSelector","operaPor","doAccept","LoginConcesionarioCtrl","concesionaria","doLoginConcesionario","userPromise","LoginConcesionarioSelector","NavBarCtrl","_ABM_PUBLICACIONES_PATH","_ABM_IMAGENES_PREVIEW_PATH","reloadNavBar","el_is_visible","max_height","innerHeight","scrollY","__updateDealersLogo","abm_imagenes_preview","dealer_preview_override","__updateHeaderLogo","showAbmLogo","__updateDealerLogin","hideDealerLogin","unreadsCount","showLoginCliente","toABM","toFavoritos","toMisMensajes","toMiPerfil","doLogout","__home_cotizador","esCotizador","PerfilController","perfil","prefijo_telefono","prefijo_celular","celular","email_alternativo","email_alternativo_validado","parseCellphone","loadingModal","showBuscador","showCambioPassword","pendingProfileSave","changeProfile","profileSaveInProgress","smtp_validation_invalid","smtp_validation_unavailable","initInputEmailAlternativo","popoverText","statusIcon","validationClass","changeEmailAlternativo","inputEmailAlternativo","doCheckEmailAlternativo","form","err","celular_validado","guardarCambios","onSuccessFunc","onErrorFunc","$setSubmitted","editDireccion","direccion","changeDireccion","types","long_name","changePhone","profileEditForm","changeMobilePhone","PerfilMensajesController","parseDate","parsed_date","created_at","toDate","updateOnSelectorChange","scrollAmount","maxUpdateHeight","axis","updateScrollHeight","scroll_height","getCantidadConsultas","getCantidadMensajesRecibidos","img_src","currentFilter","currentPage","tieneMensajesNuevos","respuesta_permitida","visto","nuevas_consultas","marcarVisto","mensajesVistos","activeMsg","expandMensaje","isExpanded","days_before","viewId","searchParams","viewMessage","cantidad","initConsultaMensaje","procesando_consulta","draft_consulta_nueva","enviarConsulta","reciente","PerfilMenuController","profile","date","isMensajes","isFavoritos","isPerfil","changeProfileImage","sizeParam","w","h","aspectRatio","toFixed","uploadFile","file","new_image_profile","ok","myCroppedImageBlob","myCroppedImage","user_profile_img_src","cancel","cambiar","new_Image_profile1","new_Image_profile","size","BottomSliderController","_CODE_BANNER_TYPE","afterGetBanners","activeSearchSlider","SearchSlider","source","Search_ShowSearchCtrl","__filtered_by_dealer","__filtered_by_used","__filtered_by_new","checkInnerWidth","hideConcesionario","hideIs0km","hideKilometros","hideAnios","hidePrecio","hideMonto","hideProvincias","hideCombustible","hideColor","toggleFilterSearchOverride","toggleFilterSearch","flechaSearch","toggleFilter","dest","toyota","priceAsc","priceDesc","dateAsc","dateDesc","filteredLabel","range","min","max","step","addAndGoZeroAllowed","wait","addAndGo","addAndGoBrand","addAndGoModel","showResultItem","removeAndGo","keyused","removeFilterAndGo","removeDealerFilter","removeNewOrUsedCarFilter","dependency","goToUp","ShowSeccionController","errorTyC","cargandoTyC","seccionId","Info_CarInfoCtrl","_BTN_CONSULTAR_HTML_CLASS_SELECTOR","_BTN_COTIZA_TU_SEGURO_HTML_CLASS_SELECTOR","termConditionScope","loadAndsetDefaultCondicionImpositiva","startCuotasSpinner","minimo_valor_financiable","maximo_valor_financiable","onLoanAmountChange","v","statsPediTuPrestamo","DatosConsulta","idTipoOperacion","valorAFinanciar","tipoPersona","condicionImpositiva","Plazo","marca_id_fu","modelo_id_fu","version_id_fu","utilitario","utilitarian","kilometros","combustible","transmision","idPublicacion","idPlan","idSubPlan","montoAFinanciar","nuevo","tp","deferredWindow","idPediTuPrestamo","findImages","_id","images","_i","cargandoCuotasTyC","errorCuotasTyC","showMobile","showLegals","seccionResponse","seccionCuotas","id_terminos_condiciones","maxSliderItems","showLegalText","cerrar","publicacionActiva","maximo_porcentaje_financiable","delta_relacionados_x_precio","biggest","installments_form_data","tradicional","enforce_text","enforce_installment_drop_title","agro","ballon","aguinaldo","slideModalObjs","slideObjs","activeSlide","activeModalSlide","zoomArea","imageZoomed","mouseTop","mouseLeft","gotoThumbImage","_index","checkFavorito","condicionImpositivaList","tax_cond_item","promedioEnMinutos","thumbnail","obtenerAnticipo","rawDescription","favorito","filtersRelacionados","tiposPersona","tipoPersonaId","filterByPersona","t_per_item","changeTipoPersona","p_veh_precio_usado_d","vehicle_loan_info_response","min_financiacion","filtersConcesionario","concesionario_promedio","frontView","duration","humanize","getMonth","planesFin","changeCondicionImpositiva","showTipoPersona","showCondicionImpositiva","showPlan","showPlanTooltip","changePlan","showInstallments","biggestQuota","detalleCuotas","installmentForShow","renderSeccionTyCTasas","yOffset","Tna","Tea","Cft","CftEfectivo","hasTelefono","getPrefijoTelefono","getTelefono","hasCelular","hasPrefijoCelular","getPrefijoCelular","getCelular","hideInstallments","request_by_publication","insurance_quote","procesandoConsulta","init_form_request","prefix","phone","cel_prefix","cel_phone","show","form_request","form_insurance_quote","request_predefine_text_opening","request_predefine_text_closing","request_predefine_text","checkUserLogged","showConsultByPublication","completeConsult","getProfileUpdateData","hasPerfilTelefono","hasPerfilCelular","formTelefono","formCelular","hasConsultaTelefono","hasConsultaCelular","sendRequestByPublication","_form","checkUser","doContactRequest","userDataToPersist","equals","closeConsultByPublication","deltaRelacionados","precioAuto","similaresXPrecioDesde","similaresXPrecioHasta","confirmacionEnviada","imgsResuorces","buscarXPrecio","buscarXMarcaModelo","checkCellphoneAndContact","showInsuranceQuote","closeInsuranceQuote","onTogglePredefinedText","pre_text","cuotasSplash","toggleFavoritos","shareOnFacebook","currentURL","fb_app_id","shareOnGooglePlus","showShareWithFriend","modalScope","subplan_item","remove_plan_filter","canal_tcfautos","p_veh_anio_i","p_planes_o","onRelatedLoad","showRelated","onRelatedDistibutorLoad","showRelatedDistributor","_params","form_contacto","caracteristicaTelefono","caracteristicaCelular","SplashScreenCtrl","TcfaPaginationCtrl","arrayIndex","updateButtons","prevPages","nextPages","minIndex","maxIndex","disableFirstPageButton","disableLastPageButton","disablePreviousPageButton","disableNextPageButton","pages","showPreviousEllipsis","showNextEllipsis","loadFirstPage","loadLastPage","loadPreviousPageBlock","previous","loadNextPageBlock","next","loadPreviousPage","loadNextPage","refresh","locArrayIndex","$onInit","oldValue","UserChangePasswordController","deshabilitarAceptar","changePassword","passwordConfirm","tokenInvalido","UserLostPasswordController","changeTCFAPassword","invalidUser","sendToClient","resetPassword","passwordRecovery"],"mappings":"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","file":"../core.js","sourcesContent":["var AutoComplete = (function () {\r\n \"use strict\";\r\n\r\n function AutoComplete($timeout, $mdUtil, $log, $injector, $location) {\r\n this.md = $mdUtil;\r\n var self = this;\r\n this.log = $log;\r\n this.timeout = $timeout;\r\n this.location = $location;\r\n self.simulateQuery = false;\r\n self.isDisabled = false;\r\n self.$injector = $injector;\r\n // list of `state` value/display objects\r\n this.getValues();\r\n return this;\r\n }\r\n\r\n AutoComplete.prototype.selectedItemChange = function (/*item*/) {};\r\n AutoComplete.prototype.querySearch = function (query) {\r\n return (query ? this.states.filter(this.createFilterFor(query)) : this.states);\r\n };\r\n AutoComplete.prototype.getValues = function () {\r\n this.states = [];\r\n };\r\n AutoComplete.prototype.createFilterFor = function (query) {\r\n var lowercaseQuery = angular.lowercase(query);\r\n return function (state) {\r\n return (angular.lowercase(state.display).indexOf(lowercaseQuery) >= 0);\r\n };\r\n };\r\n return AutoComplete;\r\n}());\r\n\nvar init = (function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos\",\r\n deps: [\"ngRoute\", \"ngResource\", \"oc.lazyLoad\", \"angularSpinner\", \"ngMask\", \"ngMaterial\", \"ui.bootstrap\", \"ngSanitize\",\r\n \"vcRecaptcha\", \"mwl.calendar\", \"ngScrollbars\", \"ngFileUpload\", \"ngImgCrop\", \"chart.js\", \"angular-cache\", \"textAngular\",\r\n \"angularjs-dropdown-multiselect\", \"ui.sortable\", \"angularUtils.directives.dirPagination\", \"ngclipboard\", \"ngFlash\"]\r\n };\r\n angular.module(moduleConfig.name, moduleConfig.deps)\r\n .run([\"$rootScope\", \"$location\", \"$window\", \"$injector\", \"PageNavigationService\", \"TCFAAppConfigService\", \"$uibModal\",\r\n function ($rootScope, $location, $window, $injector, PageNavigationService, TCFAAppConfigService, $uibModal) {\r\n var __showModal,\r\n SessionDAO = $injector.get(\"SessionDAO\"),\r\n GeoLocationService = $injector.get(\"GeoLocationService\"),\r\n DependencyInjectionService = $injector.get(\"DependencyInjectionService\");\r\n // Show loading splash screen until session is created and retrieved.\r\n PageNavigationService.showSplash = true;\r\n // Google Analytics initialization.\r\n $window.ga(\"create\", TCFAAppConfigService.GOOGLE.ANALITYCS, \"auto\");\r\n $rootScope.$on(\"$locationChangeSuccess\", function () {\r\n $window.ga(\"send\", \"pageview\", $location.url());\r\n });\r\n // User data init.\r\n $rootScope.userInfo = {};\r\n // Jira issue collector config.\r\n if (TCFAAppConfigService.SHOW_ISSUE_COLLECTOR) {\r\n DependencyInjectionService.loadApi(\"IssueCollector\").then(function () {\r\n $window.console.log(\"IssueCollector Loaded\");\r\n }, function () {\r\n $window.console.log(\"Error loading IssueCollector\");\r\n });\r\n }\r\n // Create session and then update location.\r\n $rootScope.session_token = SessionDAO.createSession({});\r\n $rootScope.session_token.$promise.then(function () {\r\n GeoLocationService.location.then(function (position) {\r\n var crd = position.coords;\r\n SessionDAO.updateSession({\r\n latitude: crd.latitude,\r\n longitude: crd.longitude\r\n });\r\n });\r\n // Finish loading with a session.\r\n PageNavigationService.showSplash = false;\r\n });\r\n // Modales Cotizador.\r\n // Show modal generic.\r\n __showModal = function (modal, message, scope) {\r\n var __modals = {\r\n loading: {keyboard: false},\r\n error: {keyboard: true},\r\n alert: {keyboard: false}\r\n };\r\n scope.message = message;\r\n return $uibModal.open({\r\n animation: true,\r\n windowClass: \"tcfa-modal\",\r\n openedClass: \"cotizador-modal-\" + modal,\r\n backdrop: \"static\",\r\n keyboard: ((__modals[modal] && __modals[modal].keyboard) || false),\r\n templateUrl: \"./views/cotizador/modal/modal_\" + modal + \".html\",\r\n controller: [\"$scope\", function ($scope) {\r\n // Close modal.\r\n $scope.close = function () {\r\n $scope.$dismiss(\"close\");\r\n };\r\n // Accept modal (only the alert modal).\r\n $scope.accept = function () {\r\n $scope.$close(\"accept\");\r\n };\r\n }],\r\n controllerAs: \"modalCotizador\",\r\n bindToController: true,\r\n scope: scope,\r\n appendTo: angular.element(\"#modalComponent\")\r\n });\r\n };\r\n $rootScope.showLoadingModal = function (message, scope) {\r\n return __showModal(\"loading\", message, scope);\r\n };\r\n $rootScope.showErrorModal = function (message, scope) {\r\n return __showModal(\"error\", message, scope);\r\n };\r\n $rootScope.showAlertModal = function (message, scope) {\r\n return __showModal(\"alert\", message, scope);\r\n };\r\n $rootScope.fixScreen = function () {\r\n angular.element(\"body\").addClass(\"fixed-screen-hack\");\r\n };\r\n $rootScope.unfixScreen = function () {\r\n angular.element(\"body\").removeClass(\"fixed-screen-hack\");\r\n };\r\n }]);\r\n return function () {\r\n angular.element(document).ready(function () {\r\n angular.bootstrap(window.document, [\"TCFAutos\"]);\r\n });\r\n };\r\n}());\r\ninit();\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"errorHandlerModule\",\r\n deps: [\"TCFAutos.services.PageNavigationService\"],\r\n config: {\r\n deps: [\"$httpProvider\"]\r\n }\r\n },\r\n module, config;\r\n module = angular.module(\"TCFAutos\");\r\n config = function ($httpProvider) {\r\n // Injectar el servicio dentro de los interceptores de PHP.\r\n $httpProvider.interceptors.push(\"tcfaErrorHandler\");\r\n $httpProvider.interceptors.push(\"tcfaTokenInjection\");\r\n };\r\n config.$inject = moduleConfig.config.deps;\r\n module.config(config);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var module = angular.module(\"TCFAutos\");\r\n module.config([\"$routeProvider\", \"$httpProvider\", \"$resourceProvider\",\r\n function ($routeProvider, $httpProvider, $resourceProvider) {\r\n $resourceProvider.defaults.stripTrailingSlashes = false; // Don't strip trailing slashes from calculated URLs.\r\n $routeProvider\r\n // Homepage.\r\n .when(\"/\", {\r\n templateUrl: \"views/homepage.html\",\r\n controller: \"HomepageCtrl\",\r\n controllerAs: \"homepage\"\r\n })\r\n // Cotizador Dinamico Homepage.\r\n .when(\"/cotizador/\", {\r\n templateUrl: \"views/cotizador.html\",\r\n controller: \"CotizadorCtrl\",\r\n controllerAs: \"cotizador\",\r\n reloadOnSearch: false\r\n })\r\n // Resultados de busqueda.\r\n .when(\"/search/\", {\r\n templateUrl: \"views/search/search.html\",\r\n controller: \"Search_ShowSearchCtrl\",\r\n controllerAs: \"ctrl\",\r\n reloadOnSearch: true\r\n })\r\n // route for the contact confirmation\r\n .when(\"/consulta/confirmacion/\", {\r\n templateUrl: \"views/contacts/confirm_consulta.html\",\r\n controller: \"ContactConfirmationController\",\r\n controllerAs: \"ctrl\"\r\n })\r\n // route for the car info page\r\n .when(\"/cars/:carId/\", {\r\n templateUrl: \"views/detalle_publicacion/info.html\",\r\n controller: \"Info_CarInfoCtrl\",\r\n controllerAs: \"ctrl\",\r\n reloadOnSearch: false\r\n })\r\n .when(\"/not_allowed/\", {\r\n templateUrl: \"views/component/not_allowed.html\"\r\n })\r\n .when(\"/secciontyc/:seccionId\", {\r\n templateUrl: \"views/terms_conditions/show_seccion.html\",\r\n controller: \"ShowSeccionController\",\r\n controllerAs: \"ctrl\"\r\n })\r\n .when(\"/favoritos/\", {\r\n templateUrl: \"views/favoritos/main.html\",\r\n controller: \"FavoritosListController\",\r\n controllerAs: \"ctrl\"\r\n })\r\n .when(\"/mensajes/\", {\r\n templateUrl: \"views/perfil/mensajes.html\",\r\n controller: \"PerfilMensajesController\",\r\n controllerAs: \"ctrl\",\r\n reloadOnSearch: false\r\n })\r\n .when(\"/perfil/\", {\r\n templateUrl: \"views/perfil/perfil.html\",\r\n controller: \"PerfilController\",\r\n controllerAs: \"ctrl\"\r\n })\r\n .when(\"/desuscribir/\", {\r\n template: \"\",\r\n controller: \"DesuscribirClienteController\"\r\n })\r\n .when(\"/publicacion/activar/\", {\r\n templateUrl: \"views/detalle_publicacion/info.html\",\r\n controller: \"Info_PublicationPreVisualizationCtrl\",\r\n controllerAs: \"ctrl\"\r\n })\r\n .when(\"/externalLoginAsAdmin/\", {\r\n resolve: {\r\n ExternalLoginService: [\"ExternalLoginService\", function (ExternalLoginService) {\r\n ExternalLoginService.externalLogin(\"admin\");\r\n }]\r\n }\r\n })\r\n .when(\"/externalLoginAsDealer/\", {\r\n resolve: {\r\n ExternalLoginService: [\"ExternalLoginService\", function (ExternalLoginService) {\r\n ExternalLoginService.externalLogin(\"dealer\");\r\n }]\r\n }\r\n })\r\n .when(\"/externalLoginAsTasa/\", {\r\n resolve: {\r\n ExternalLoginService: [\"ExternalLoginService\", function (ExternalLoginService) {\r\n ExternalLoginService.externalLogin(\"tasa\");\r\n }]\r\n }\r\n })\r\n .when(\"/externalLoginAsClient/\", {\r\n resolve: {\r\n ExternalLoginService: [\"ExternalLoginService\", function (ExternalLoginService) {\r\n ExternalLoginService.externalLogin(\"cliente\");\r\n }]\r\n }\r\n })\r\n .when(\"/clientregister/\", {\r\n templateUrl: \"views/clientregister/main.html\",\r\n controller: \"ClientRegisterCtrl\",\r\n controllerAs: \"ClientRegister\"\r\n })\r\n .when(\"/userconfirm/:tokenid\", {\r\n templateUrl: \"views/clientregister/confirm.html\",\r\n controller: \"ClientConfirmCtrl\",\r\n controllerAs: \"ClientConfirm\"\r\n })\r\n\r\n .when(\"/client/emailalternativo/confirm/:tokenid\", {\r\n templateUrl: \"views/clientregister/confirm.html\",\r\n controller: \"ClientConfirmCtrl\",\r\n controllerAs: \"ClientConfirm\"\r\n })\r\n .when(\"/user/password/missed/\", {\r\n templateUrl: \"views/clientregister/lostPassword.html\",\r\n controller: \"UserLostPasswordController\",\r\n controllerAs: \"ctrl\"\r\n })\r\n .when(\"/user/password/change/:token/\", {\r\n templateUrl: \"views/clientregister/changePassword.html\",\r\n controller: \"UserChangePasswordController\",\r\n controllerAs: \"ctrl\"\r\n })\r\n .when(\"/auth/linkedin/code/:code/\", {\r\n resolve: {\r\n linkedinService: [\"linkedinService\", function (linkedinService) {\r\n linkedinService.login();\r\n }]\r\n }\r\n })\r\n .when(\"/auth/linkedin/error/:error/:error_desc/\", {\r\n resolve: {\r\n linkedinService: [\"linkedinService\", function (linkedinService) {\r\n linkedinService.login_error();\r\n }]\r\n }\r\n })\r\n .otherwise({\r\n redirectTo: \"/\"\r\n });\r\n $httpProvider.defaults.useXDomain = true;\r\n delete $httpProvider.defaults.headers.common[\"X-Requested-With\"];\r\n }]);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"textAreaModule\",\r\n deps: [\"textAngular\"],\r\n config: {\r\n deps: [\"$provide\"]\r\n }\r\n },\r\n module, config;\r\n module = angular.module(\"TCFAutos\");\r\n // Se evita la ejecucion del RUN en el modulo textAngular.\r\n var txtangular = angular.module(\"textAngular\");\r\n txtangular.config([\"$provide\", function ($provide) {\r\n $provide.decorator(\"taTranslations\", [function () {\r\n return {\r\n html: {tooltip: \"Mostrar HTML\"},\r\n // tooltip for heading - might be worth splitting\r\n heading: {tooltip: \"Encabezado \"},\r\n p: {tooltip: \"Párrafo\"},\r\n pre: {tooltip: \"Texto pre-formateado\"},\r\n ul: {tooltip: \"Lista no numerada\"},\r\n ol: {tooltip: \"Lista numerada\"},\r\n quote: {tooltip: \"Citar selección o párrafo\"},\r\n undo: {tooltip: \"Deshacer\"},\r\n redo: {tooltip: \"Rehacer\"},\r\n bold: {tooltip: \"Negrita\"},\r\n italic: {tooltip: \"Itálica\"},\r\n underline: {tooltip: \"Subrayado\"},\r\n strikeThrough: {tooltip: \"Interlineado\"},\r\n justifyLeft: {tooltip: \"Alinear texto a la izquierda\"},\r\n justifyRight: {tooltip: \"Alinear texto a la derecha\"},\r\n justifyFull: {tooltip: \"Justificar texto\"},\r\n justifyCenter: {tooltip: \"Centrar\"},\r\n indent: {tooltip: \"Aumentar separación\"},\r\n outdent: {tooltip: \"Disminuir separación\"},\r\n clear: {tooltip: \"Limpiar formato\"},\r\n insertImage: {\r\n dialogPrompt: \"Por favor, ingrese una imagen para agregar\",\r\n tooltip: \"Insertar imagen\",\r\n hotkey: \"\"\r\n },\r\n insertVideo: {\r\n tooltip: \"Insertar video\",\r\n dialogPrompt: \"Por favor, ingrese una URL de Youtube URL para agregar\"\r\n },\r\n insertLink: {\r\n tooltip: \"Insertar link\",\r\n dialogPrompt: \"Por favor, ingrese un link\"\r\n },\r\n editLink: {\r\n reLinkButton: {tooltip: \"Nuevo link\"},\r\n unLinkButton: {tooltip: \"Eliminar link\"},\r\n targetToggle: {buttontext: \"Abrir en nueva ventana\"}\r\n },\r\n wordcount: {tooltip: \"Cantidad de palabras contadas\"},\r\n charcount: {tooltip: \"Caracteres contados\"}\r\n };\r\n }]);\r\n }]);\r\n config = function ($provide) {\r\n $provide.decorator(\"taTools\", [\"$delegate\", function (taTools) {\r\n taTools.h1.buttontext = \"Encabezado 1\";\r\n taTools.h2.buttontext = \"Encabezado 2\";\r\n taTools.h3.buttontext = \"Encabezado 3\";\r\n taTools.h4.buttontext = \"Encabezado 4\";\r\n return taTools;\r\n }]);\r\n };\r\n config.$inject = moduleConfig.config.deps;\r\n module.config(config);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.CarSliderService\",\r\n deps: [],\r\n CarSliderService: {\r\n name: \"CarSliderService\",\r\n deps: []\r\n }\r\n },\r\n module, CarSliderService;\r\n module = angular.module(\"TCFAutos\");\r\n CarSliderService = function () {\r\n return {\r\n prepareSlide: function (scope, data, fullView) {\r\n var lng, x, many,\r\n car_list = [],\r\n is_homepage = fullView;\r\n if (!data) {\r\n data = scope.data;\r\n } else {\r\n scope.data = data;\r\n }\r\n scope.slides = [];\r\n if (scope.displayMode === \"small\") {\r\n if (is_homepage) {\r\n many = 1;\r\n scope.slideClass = \"col-xs-12\";\r\n } else {\r\n many = 1;\r\n scope.slideClass = \"col-xs-12 center-block\";\r\n }\r\n } else if (scope.displayMode === \"phone\") {\r\n if (is_homepage) {\r\n many = 2;\r\n scope.slideClass = \"col-xs-6\";\r\n } else {\r\n many = 1;\r\n scope.slideClass = \"col-xs-6 center-block\";\r\n }\r\n } else if (scope.displayMode === \"tablet\") {\r\n if (is_homepage) {\r\n many = 3;\r\n scope.slideClass = 'col-xs-4';\r\n } else {\r\n many = 1;\r\n scope.slideClass = \"col-xs-12 center-block float-none\";\r\n }\r\n } else { // scope.displayMode \"large\" & \"desktop\" are the same.\r\n if (is_homepage) {\r\n many = 4;\r\n scope.slideClass = \"col-xs-3\";\r\n } else {\r\n many = 2;\r\n scope.slideClass = \"col-xs-6\";\r\n }\r\n }\r\n scope.slidesCount = many;\r\n lng = data.length;\r\n for (x = 0; x < lng; x = x + 1) {\r\n car_list.push(data[x]);\r\n if (car_list.length === many || x + 1 === lng) {\r\n scope.slides.push(car_list);\r\n car_list = [];\r\n }\r\n }\r\n },\r\n updateRes: function (scope, window, fullView) {\r\n var width = window.innerWidth,\r\n oldMode = scope.displayMode;\r\n scope.displayMode = \"desktop\"; // Default.\r\n if (width <= 480) {\r\n scope.displayMode = \"small\";\r\n } else if (width <= 800) {\r\n scope.displayMode = \"phone\";\r\n } else if (width <= 1199) {\r\n scope.displayMode = \"tablet\";\r\n } else if (width >= 1200) {\r\n scope.displayMode = \"desktop\";\r\n } else {\r\n scope.displayMode = \"large\";\r\n }\r\n if (scope.displayMode !== oldMode) {\r\n this.prepareSlide(scope, undefined, fullView);\r\n }\r\n }\r\n };\r\n };\r\n CarSliderService.$inject = moduleConfig.CarSliderService.deps;\r\n module.factory(moduleConfig.CarSliderService.name, CarSliderService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.CotizadorService\",\r\n deps: [],\r\n CotizadorService: {\r\n name: \"CotizadorService\",\r\n deps: [\"$rootScope\", \"$window\", \"$httpParamSerializer\", \"TCFAAppConfigService\", \"$location\", \"$route\"]\r\n }\r\n },\r\n module, CotizadorService;\r\n module = angular.module(\"TCFAutos\");\r\n CotizadorService = function ($rootScope, $window, $httpParamSerializer, TCFAAppConfigService, $location, $route) {\r\n var _EVENT_KEY_UPDATED_PLANES_PLAZOS = \"cotizador_updated_planes_plazos\",\r\n _EVENT_KEY_UPDATED_LOAN_AMOUNT = \"cotizador_updated_loan_amount\",\r\n _EVENT_KEY_CHANGED_COTIZAR_FORM = \"cotizador_changed_cotizar_form\",\r\n _EVENT_KEY_UPDATED_VEHICLE_MODELS = \"cotizador_updated_vehicle_models\",\r\n _EVENT_KEY_UPDATED_PLAN = \"cotizador_updated_plan\",\r\n _EVENT_KEY_RESTORED_SLIDER = \"cotizador_restored_slider\";\r\n return {\r\n onPlanesAndPlazosUpdated: function (scope, callback) {\r\n var __listener = $rootScope.$on(_EVENT_KEY_UPDATED_PLANES_PLAZOS, callback);\r\n scope.$on(\"$destroy\", __listener);\r\n },\r\n updatePlanesAndPlazos: function (planes_plazos, is_publication, quiet) {\r\n $rootScope.$emit(_EVENT_KEY_UPDATED_PLANES_PLAZOS, planes_plazos, is_publication, quiet);\r\n },\r\n onLoanAmountUpdated: function (scope, callback) {\r\n var __listener = $rootScope.$on(_EVENT_KEY_UPDATED_LOAN_AMOUNT, callback);\r\n scope.$on(\"$destroy\", __listener);\r\n },\r\n updateLoanAmount: function (loan_amount) {\r\n $rootScope.$emit(_EVENT_KEY_UPDATED_LOAN_AMOUNT, loan_amount);\r\n },\r\n onCotizarFormChanged: function (scope, callback) {\r\n var __listener = $rootScope.$on(_EVENT_KEY_CHANGED_COTIZAR_FORM, callback);\r\n scope.$on(\"$destroy\", __listener);\r\n },\r\n changeCotizarForm: function () {\r\n $rootScope.$emit(_EVENT_KEY_CHANGED_COTIZAR_FORM);\r\n },\r\n onVehicleModelsUpdated: function (scope, callback) {\r\n var __listener = $rootScope.$on(_EVENT_KEY_UPDATED_VEHICLE_MODELS, callback);\r\n scope.$on(\"$destroy\", __listener);\r\n },\r\n updateVehicleModels: function () {\r\n $rootScope.$emit(_EVENT_KEY_UPDATED_VEHICLE_MODELS);\r\n },\r\n onPlanUpdated: function (scope, callback) {\r\n var __listener = $rootScope.$on(_EVENT_KEY_UPDATED_PLAN, callback);\r\n scope.$on(\"$destroy\", __listener);\r\n },\r\n updatePlan: function (plan) {\r\n $rootScope.$emit(_EVENT_KEY_UPDATED_PLAN, plan);\r\n },\r\n onSliderRestored: function (scope, callback) {\r\n var __listener = $rootScope.$on(_EVENT_KEY_RESTORED_SLIDER, callback);\r\n scope.$on(\"$destroy\", __listener);\r\n },\r\n restoreSlider: function () {\r\n $rootScope.$emit(_EVENT_KEY_RESTORED_SLIDER);\r\n },\r\n /** Builds an URL suitable to share on social networks. */\r\n getUrlToSocialShare: function (params) {\r\n var __url = TCFAAppConfigService.API.HOST + \"/cotizador/showSocial/\",\r\n __params = {};\r\n if (__url.indexOf(\"//\") === 0) {\r\n __url = \"http:\" + __url;\r\n }\r\n // Link IDs.\r\n __params.il = (params.link_type || 1);\r\n // ID Campaña PAO.\r\n if (params.campaign) {\r\n __params.ic = params.campaign;\r\n }\r\n // Operation IDs.\r\n if (params.operation_type) {\r\n __params.io = params.operation_type;\r\n }\r\n // Vehicle's IDs.\r\n if (params.vehicle_brand || params.vehicle_brand_name) {\r\n __params.vb = params.vehicle_brand;\r\n __params.vbn = params.vehicle_brand_name;\r\n }\r\n if (params.vehicle_model || params.vehicle_model_name) {\r\n __params.vm = params.vehicle_model;\r\n __params.vmn = params.vehicle_model_name;\r\n }\r\n if (params.vehicle_version || params.vehicle_version_name) {\r\n __params.vv = params.vehicle_version;\r\n __params.vvn = params.vehicle_version_name;\r\n }\r\n if (params.vehicle_condition) {\r\n __params.vc = params.vehicle_condition;\r\n }\r\n if (params.vehicle_year) {\r\n __params.vy = params.vehicle_year;\r\n }\r\n if (params.vehicle_type) {\r\n __params.vt = params.vehicle_type;\r\n }\r\n if (params.vehicle_id) {\r\n __params.vi = params.vehicle_id;\r\n }\r\n // Person's IDs.\r\n if (params.person_type) {\r\n __params.pt = params.person_type;\r\n }\r\n if (params.tax_condition) {\r\n __params.tc = params.tax_condition;\r\n }\r\n // Loan Keys.\r\n if (params.loan_amount) {\r\n __params.la = params.loan_amount;\r\n }\r\n if (params.canon) {\r\n __params.ca = params.canon;\r\n }\r\n // Plan IDs.\r\n if (params.plan) {\r\n __params.ip = params.plan;\r\n }\r\n // Subplan IDs.\r\n if (params.plazo) {\r\n __params.pl = params.plazo;\r\n }\r\n if (params.subplan) {\r\n __params.is = params.subplan;\r\n }\r\n // Insurance IDs.\r\n if (params.insurance_id) {\r\n __params.ii = params.insurance_id;\r\n }\r\n if (params.insurance_company_name) {\r\n __params.icn = params.insurance_company_name;\r\n }\r\n if (params.insurance_pack_name) {\r\n __params.ipn = params.insurance_pack_name;\r\n }\r\n if (params.insurance_zone_name) {\r\n __params.izn = params.insurance_zone_name;\r\n }\r\n if (params.insurance_prov_name) {\r\n __params.izpn = params.insurance_prov_name;\r\n }\r\n if (params.insurance_installments) {\r\n __params.iic = params.insurance_installments;\r\n }\r\n if (params.insurance_company_id) {\r\n __params.ici = params.insurance_company_id;\r\n }\r\n if (params.insurance_pack_code) {\r\n __params.ipi = params.insurance_pack_code;\r\n }\r\n if (params.insurance_zone_cp) {\r\n __params.izcp = params.insurance_zone_cp;\r\n }\r\n if (params.insurance_prov_id) {\r\n __params.izpi = params.insurance_prov_id;\r\n }\r\n if (params.insurance_detail) {\r\n __params.idet = $window.btoa(params.insurance_detail);\r\n }\r\n return __url + \"?\" + $httpParamSerializer(__params);\r\n },\r\n /** Redirects to anonymous channel on missing info scenarios. */\r\n redirectToAnonymousChannel: function () {\r\n $location.path(\"/cotizador\").search({}).hash(null);\r\n $route.reload();\r\n }\r\n };\r\n };\r\n CotizadorService.$inject = moduleConfig.CotizadorService.deps;\r\n module.factory(moduleConfig.CotizadorService.name, CotizadorService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.DependencyInjectionService\",\r\n deps: [],\r\n DependencyInjectionService: {\r\n name: \"DependencyInjectionService\",\r\n deps: [\"$q\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, DependencyInjectionService;\r\n module = angular.module(\"TCFAutos\");\r\n DependencyInjectionService = function ($q, TCFAAppConfigService) {\r\n var loadPromises = {},\r\n loadScript = function (src, apiName, delayMs) {\r\n loadPromises[apiName] = $q.defer();\r\n $.getScript(src).done(function () {\r\n if (delayMs) {\r\n setTimeout(function () {\r\n loadPromises[apiName].resolve();\r\n }, delayMs);\r\n } else {\r\n loadPromises[apiName].resolve();\r\n }\r\n }).fail(function () {\r\n loadPromises[apiName].reject();\r\n });\r\n return loadPromises[apiName].promise;\r\n },\r\n externalApis = [{\r\n url: \"https://maps.googleapis.com/maps/api/js?key=\" + TCFAAppConfigService.GOOGLE_MAPS.KEY + \"&libraries=places,geometry\",\r\n apiName: \"GoogleMaps\",\r\n exports: \"google.maps\",\r\n delayMs: 0\r\n }, {\r\n url: \"https://apis.google.com/js/client:platform.js\",\r\n apiName: \"GooglePlus\",\r\n exports: \"gapi\",\r\n delayMs: 0\r\n }, {\r\n url: \"https://connect.facebook.net/en_US/sdk.js\",\r\n apiName: \"Facebook\",\r\n exports: \"FB\",\r\n delayMs: 0\r\n }, {\r\n url: \"https://www.google.com/recaptcha/api.js?onload=vcRecaptchaApiLoaded&render=explicit\",\r\n apiName: \"GoogleRecaptcha\",\r\n exports: \"\",\r\n delayMs: 2000\r\n }, {\r\n url: \"https://codeicus.atlassian.net/s/d41d8cd98f00b204e9800998ecf8427e-T/popjk2/b/c/3d70dff4c40bd20e976d5936642e2171/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector-embededjs/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector-embededjs.js?locale=en-US&collectorId=e8867540\",\r\n apiName: \"IssueCollector\",\r\n exports: \"\",\r\n delayMs: 0\r\n }, {\r\n url: TCFAAppConfigService.SEGUROS.URL,\r\n apiName: \"TCFASeguros\",\r\n exports: \"TCFASegurosSDK\",\r\n delayMs: 0\r\n }],\r\n loadedApis = {},\r\n loadApis = function () {\r\n var i;\r\n for (i = externalApis.length - 1; i >= 0; i--) {\r\n loadedApis[externalApis[i].apiName] = {};\r\n loadedApis[externalApis[i].apiName].url = externalApis[i].url;\r\n loadedApis[externalApis[i].apiName].exports = externalApis[i].exports;\r\n loadedApis[externalApis[i].apiName].delayMs = externalApis[i].delayMs;\r\n }\r\n };\r\n loadApis();\r\n return {\r\n loadApi: function (apiName) {\r\n if (!apiName) {\r\n throw \"Invalid api name\";\r\n }\r\n if (!loadPromises[apiName]) {\r\n return loadScript(loadedApis[apiName].url, apiName, loadedApis[apiName].delayMs);\r\n } else {\r\n return loadPromises[apiName].promise;\r\n }\r\n }\r\n };\r\n };\r\n DependencyInjectionService.$inject = moduleConfig.DependencyInjectionService.deps;\r\n module.factory(moduleConfig.DependencyInjectionService.name, DependencyInjectionService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.ExternalLoginService\",\r\n deps: [\"authDaoModule\", \"termsConditionCheckerModule\", \"TCFAutos.services.ParametrosService\", \"TCFAutos.services.PageNavigationService\"],\r\n ExternalLoginService: {\r\n name: \"ExternalLoginService\",\r\n deps: [\"$location\", \"AuthDAO\", \"$window\", \"$rootScope\", \"$uibModal\", \"termsAndConditionChecker\", \"ParametrosService\",\r\n \"PageNavigationService\", \"TCFAModalService\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, ExternalLoginService,\r\n /** Constants */\r\n PICTURE_URL = \"../images/user/defaultProfile.png\",\r\n _USER_IMAGES_URL_PATH_SUFFIX = \"/user_images/\",\r\n USER_TYPE_ADMIN = 'admin',\r\n USER_TYPE_CLIENT = 'cliente',\r\n USER_TYPE_DEALER = 'dealer',\r\n USER_TYPE_TASA = 'tasa';\r\n module = angular.module(\"TCFAutos\");\r\n ExternalLoginService = function ($location, AuthDAO, $window, $rootScope, $uibModal, termsAndConditionChecker,\r\n ParametrosService, PageNavigationService, TCFAModalService, TCFAAppConfigService) {\r\n var seccion_login = ParametrosService.get({key: \"seccion_login\"}),\r\n validateAndSetUserType = function (userType) {\r\n switch (userType) {\r\n case USER_TYPE_ADMIN: // Fallthrough.\r\n case USER_TYPE_DEALER:\r\n $rootScope.ShowMiPerfil = false;\r\n $rootScope.ShowABM = true;\r\n $rootScope.ShowMensajes = false;\r\n $rootScope.showFavoritos = false;\r\n break;\r\n case USER_TYPE_TASA:\r\n $rootScope.ShowMiPerfil = true;\r\n $rootScope.ShowABM = true;\r\n $rootScope.ShowMensajes = false;\r\n $rootScope.showFavoritos = false;\r\n break;\r\n case USER_TYPE_CLIENT:\r\n $rootScope.ShowMiPerfil = true;\r\n $rootScope.ShowABM = false;\r\n $rootScope.ShowMensajes = true;\r\n $rootScope.showFavoritos = true;\r\n break;\r\n default:\r\n $rootScope.ShowMiPerfil = false;\r\n $rootScope.ShowABM = false;\r\n $rootScope.ShowMensajes = false;\r\n $rootScope.showFavoritos = false;\r\n }\r\n },\r\n goToAbm = function (token, redirect) {\r\n if ($rootScope.ShowABM) {\r\n $window.location.href = TCFAAppConfigService.ABM.URL + \"/#/?t=\" + token +\r\n \"&r=\" + $window.encodeURIComponent(redirect);\r\n }\r\n },\r\n validateSessionResponse = function (sessionResponse) {\r\n var invalidSession = (sessionResponse.data.length === 0);\r\n PageNavigationService.showSplash = false;\r\n if (invalidSession) {\r\n $window.console.debug(\"ExternalLoginService - El Token utilizado no corresponde a ningún usuario.\");\r\n TCFAModalService.showError({\r\n error: {\r\n showModal: true,\r\n message: \"Ups algo inesperado ha sucedido, vuelva a ingresar o contáctese con el administrador. Le pedimos disculpas.\",\r\n title: \"¡Ha ocurrido un error!\"\r\n }\r\n });\r\n } else {\r\n $window.console.debug(\"ExternalLoginService - Token valido ->\", sessionResponse);\r\n }\r\n return !invalidSession;\r\n },\r\n validateSessionTasa = function (token) {\r\n AuthDAO.ValidateSessionTasa({token: token}, function (resp) {\r\n if (validateSessionResponse(resp)) {\r\n $rootScope.userInfo.user = resp.data;\r\n $rootScope.userInfo.token = token;\r\n $rootScope.socialProfile = {pictureUrl: PICTURE_URL};\r\n $rootScope.is_tasa = true;\r\n goToAbm($rootScope.userInfo.token, \"aprobaciones/\");\r\n }\r\n }\r\n );\r\n },\r\n validateSessionAdminDealerOrClient = function (token, userType) {\r\n AuthDAO.validateSession({token: token, user_type: userType}, function (resp) {\r\n var pictureUrl, user;\r\n if (validateSessionResponse(resp)) {\r\n user = resp.data.user;\r\n $rootScope.userInfo.token = resp.data.token;\r\n // Usuario Administrador.\r\n if ((user.admin !== undefined) && (user.admin !== null)) {\r\n $rootScope.userInfo.user = user;\r\n if (user.profile_image) {\r\n pictureUrl = TCFAAppConfigService.API.IMG_SRC + _USER_IMAGES_URL_PATH_SUFFIX + user.profile_image.url;\r\n } else {\r\n pictureUrl = PICTURE_URL;\r\n }\r\n $rootScope.socialProfile = {pictureUrl: pictureUrl};\r\n goToAbm($rootScope.userInfo.token, \"publicaciones/\");\r\n }\r\n // Usuario Dealer.\r\n if ((user.dealer !== undefined) && (user.dealer !== null)) {\r\n $rootScope.userInfo.user = user;\r\n if (user.profile_image) {\r\n pictureUrl = TCFAAppConfigService.API.IMG_SRC + _USER_IMAGES_URL_PATH_SUFFIX + user.profile_image.url;\r\n } else {\r\n pictureUrl = \"../images/user/defaultProfileDealer.png\";\r\n }\r\n $rootScope.socialProfile = {pictureUrl: pictureUrl};\r\n // Lógica para login sin unificar.\r\n $rootScope.userInfo.user.dealer.concesionario = resp.data.concesionario;\r\n if (seccion_login.valor) {\r\n termsAndConditionChecker.checkAndRequest(seccion_login.valor);\r\n }\r\n goToAbm($rootScope.userInfo.token, \"publicaciones/\");\r\n }\r\n // Usuario Cliente.\r\n if ((user.cliente !== undefined) && (user.cliente !== null)) {\r\n $rootScope.userInfo.user = user;\r\n if (user.profile_image) {\r\n pictureUrl = TCFAAppConfigService.API.IMG_SRC + _USER_IMAGES_URL_PATH_SUFFIX + user.profile_image.url;\r\n } else {\r\n pictureUrl = PICTURE_URL;\r\n }\r\n $rootScope.socialProfile = {pictureUrl: pictureUrl};\r\n buildSelector(resp.data.clientes_asociados, function (cuit) {\r\n AuthDAO.navigateAs({cuit: cuit}, function (resp) {\r\n $window.console.debug(\"ExternalLoginService - navigateAs success ->\", resp);\r\n }, function (resp) {\r\n $window.console.debug(\"ExternalLoginService - navigateAs Error ->\", resp);\r\n }\r\n );\r\n });\r\n }\r\n }\r\n }, function (resp) {\r\n PageNavigationService.showSplash = false;\r\n $window.console.debug(\"ExternalLoginService - validateSession Error ->\", resp);\r\n }\r\n );\r\n },\r\n buildSelector = function (clientesAsociados, callback) {\r\n if (clientesAsociados.length < 1) {\r\n $window.console.debug(\"ExternalLoginService - buildSelector - Para poder operar como Dealer, debe tener asociado un concesionario.\");\r\n TCFAModalService.showWarning({\r\n error: {\r\n showModal: true,\r\n message: \"Para poder operar como Dealer, debe tener asociado un concesionario.\",\r\n title: \"Usuario no válido\"\r\n }\r\n });\r\n } else {\r\n var selectorScope = $rootScope.$new(true);\r\n selectorScope.clientes = clientesAsociados;\r\n var clientSelectorModal = $uibModal.open({\r\n animation: true,\r\n windowClass: \"tcfa-modal\",\r\n templateUrl: \"./views/login/login_cliente_selector.html\",\r\n controller: \"LoginClienteSelector\",\r\n controllerAs: \"ctrl\",\r\n scope: selectorScope,\r\n parent: angular.element(\"#modalComponent\"),\r\n appendTo: angular.element(\"#modalComponent\"),\r\n bindToController: true,\r\n backdrop: \"static\",\r\n keyboard: false\r\n });\r\n clientSelectorModal.result.then(function (result) {\r\n $window.console.debug(\"ExternalLoginService - buildSelector - Se selecciona entidad\", result);\r\n clientSelectorModal.dismiss(\"userlogged\");\r\n callback(result);\r\n });\r\n }\r\n },\r\n externalLogin = function (userType) {\r\n var token = $location.search().token;\r\n $location.path(\"/\");\r\n if (token === undefined) {\r\n $window.console.debug(\"ExternalLoginService - Token no ingresado.\");\r\n TCFAModalService.showWarning({\r\n error: {\r\n showModal: true,\r\n message: \"Token de sesión vacío o inválido. Se necesita un token para ingresar a TCFAutos. Muchas gracias.\",\r\n title: \"Aviso:\"\r\n }\r\n });\r\n } else { // Token is defined.\r\n $window.console.debug(\"ExternalLoginService - Se esta ingresando desde un sistema externo como...\", userType);\r\n PageNavigationService.showSplash = true;\r\n validateAndSetUserType(userType);\r\n if (userType === USER_TYPE_TASA) {\r\n validateSessionTasa(token);\r\n } else {\r\n validateSessionAdminDealerOrClient(token, userType);\r\n }\r\n }\r\n };\r\n // Integración Apps Externas con TCFAutos.\r\n return {\r\n goToAbm: function (redirect) {\r\n goToAbm($rootScope.userInfo.token, redirect || \"\");\r\n },\r\n externalLogin: externalLogin\r\n };\r\n };\r\n ExternalLoginService.$inject = moduleConfig.ExternalLoginService.deps;\r\n module.factory(moduleConfig.ExternalLoginService.name, ExternalLoginService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"socialModule\",\r\n deps: [\"ngResource\", \"TCFAutos.services.PageNavigationService\", \"TCFAutos.services.NotificationsService\"],\r\n facebookService: {\r\n require: [\"//connect.facebook.net/en_US/sdk.js\"],\r\n fallbacks: [\"scripts_fallbacks/facebook\"],\r\n name: \"facebookService\",\r\n deps: [\"$window\", \"$rootScope\", \"AuthSocial\", \"PageNavigationService\", \"NotificationsService\", \"DependencyInjectionService\",\r\n \"TCFAAppConfigService\", \"PublicationDAO\", \"TCFAModalService\"]\r\n }\r\n },\r\n module, facebookService,\r\n /** Constants */\r\n MSG_USER_CANCELLED_LOGIN = \"User cancelled login or did not fully authorize.\",\r\n FACEBOOK_LOGIN_RESULT = \"Facebook Login result\",\r\n SOCIAL_PROFILE_INFO = \"Social Profile INFO\";\r\n module = angular.module(\"TCFAutos\");\r\n // Facebook Service.\r\n facebookService = function ($window, $rootScope, AuthSocial, PageNavigationService, NotificationsService,\r\n DependencyInjectionService, TCFAAppConfigService, PublicationDAO, TCFAModalService) {\r\n var myself = this;\r\n // Check for Firewalls blocking Facebook.\r\n DependencyInjectionService.loadApi(\"Facebook\").then(function () {\r\n FB.init({\r\n appId: TCFAAppConfigService.FACEBOOK.APP_ID, //The app id of the web app\r\n cookie: true, // enable cookies to allow the server to access the session\r\n xfbml: true, // parse social plugins on this page\r\n version: TCFAAppConfigService.FACEBOOK.VERSION // use graph api version 2.5\r\n });\r\n }, function () {\r\n myself.tcfautos_fallback_check = true;\r\n });\r\n myself.login = function (success) {\r\n FB.login(function (response) {\r\n $window.console.debug(FACEBOOK_LOGIN_RESULT, response);\r\n if (response.status === \"connected\") {\r\n $window.console.debug(\"Welcome! Fetching your information.... \");\r\n // Calling Auth\r\n $window.console.debug(\"Calling TCFAutos API Social Auth\");\r\n var data = {\r\n network: \"facebook\",\r\n access_token: response.authResponse.accessToken\r\n };\r\n PageNavigationService.showSplash = true;\r\n AuthSocial.login(data).$promise.then(function (resp1) {\r\n $window.console.debug(\"AuthSocial INFO\", resp1);\r\n FB.api(\"/me?fields=first_name,last_name,picture.type(large)\", function (resp2) {\r\n $window.console.debug(SOCIAL_PROFILE_INFO, resp2);\r\n var socialProfile = {\r\n firstName: resp2.first_name,\r\n lastName: resp2.last_name,\r\n pictureUrl: resp2.picture.data.url\r\n };\r\n if (resp1.data.user.profile_image) {\r\n socialProfile.pictureUrl = TCFAAppConfigService.API.IMG_SRC + \"/user_images/\" + resp1.data.user.profile_image.url;\r\n }\r\n $window.console.debug(\"Social Profile INFO parsed\", socialProfile);\r\n $rootScope.userInfo = resp1.data;\r\n NotificationsService.markAsUnread(resp1.data.user.cliente.mensajes);\r\n $rootScope.socialProfile = socialProfile;\r\n $rootScope.loggedSocial = \"facebook\";\r\n PageNavigationService.showSplash = false;\r\n success();\r\n });\r\n }, function (resp) {\r\n PageNavigationService.showSplash = false;\r\n $window.console.debug(resp);\r\n });\r\n } else {\r\n $window.console.debug(MSG_USER_CANCELLED_LOGIN);\r\n }\r\n }, {scope: \"email\"});\r\n };\r\n myself.getData = function () {\r\n FB.getLoginStatus(function (response) {\r\n if (response.status === \"connected\") {\r\n // getData\r\n FB.api(\"/me?fields=email,first_name,last_name\", function (response) {\r\n $window.console.debug(response);\r\n });\r\n } else {\r\n $window.console.debug(\"Something bad happened with Facebook\");\r\n $window.console.debug(response);\r\n }\r\n });\r\n };\r\n myself.share = function (url, callback) {\r\n FB.login(function (response) {\r\n $window.console.debug(FACEBOOK_LOGIN_RESULT, response);\r\n if (response.status === \"connected\") {\r\n FB.api(\"/me?fields=name,email\", function (resp) {\r\n $window.console.debug(SOCIAL_PROFILE_INFO, resp);\r\n var socialProfile = {\r\n nombre: resp.name,\r\n email: resp.email\r\n };\r\n FB.ui({\r\n method: \"share\",\r\n href: url\r\n }, function (response) {\r\n $window.console.debug(\"Share on Facebook response:\", response);\r\n if (callback && typeof callback === \"function\") {\r\n callback(socialProfile);\r\n }\r\n });\r\n });\r\n } else {\r\n $window.console.debug(MSG_USER_CANCELLED_LOGIN);\r\n }\r\n }, {scope: \"email\"});\r\n };\r\n myself.loginShare = function (url, publicacion_id, callback) {\r\n FB.login(function (response) {\r\n $window.console.debug(FACEBOOK_LOGIN_RESULT, response);\r\n if (response.status === \"connected\") {\r\n FB.api(\"/me?fields=name,email\", function (resp) {\r\n $window.console.debug(SOCIAL_PROFILE_INFO, resp);\r\n var socialProfile = {\r\n publicacion_id: publicacion_id,\r\n nombre: resp.name,\r\n email: resp.email\r\n };\r\n FB.ui({\r\n method: \"share\",\r\n href: url\r\n }, function (response) {\r\n PublicationDAO.sharePublicationByFacebook(socialProfile).$promise.then(function () {\r\n var info = {\r\n warning: {\r\n showModal: true,\r\n message: [\"¡Muchas Gracias!\"],\r\n title: \"Publicacion compartida con éxito.\"\r\n },\r\n showBtn: false\r\n };\r\n TCFAModalService.showModal(info, \"./views/detalle_publicacion/info/modal/success_modal_share_with_friends.html\");\r\n }, function () {\r\n TCFAModalService.showError({\r\n error: {\r\n showModal: true,\r\n message: \"Ha ocurrido un error al procesar la solicitud, por favor intente nuevamente en unos instantes.\",\r\n title: \"¡Ha ocurrido un error!\"\r\n }\r\n });\r\n });\r\n $window.console.debug(\"Share on Facebook response:\", response);\r\n if (callback && typeof callback === \"function\") {\r\n callback(response);\r\n }\r\n });\r\n });\r\n } else {\r\n $window.console.debug(MSG_USER_CANCELLED_LOGIN);\r\n }\r\n }, {scope: \"email\"});\r\n };\r\n return myself;\r\n };\r\n facebookService.$inject = moduleConfig.facebookService.deps;\r\n module.factory(moduleConfig.facebookService.name, facebookService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.GeoLocation\",\r\n deps: [],\r\n GeoLocationService: {\r\n name: \"GeoLocationService\",\r\n deps: [\"$q\"]\r\n }\r\n },\r\n module, GeoLocationService;\r\n module = angular.module(\"TCFAutos\");\r\n GeoLocationService = function ($q) {\r\n var geoLocation = {}, options = {\r\n timeout: 10000,\r\n enableHighAccuracy: true\r\n }, promesa = $q.defer();\r\n if (!navigator.geolocation) {\r\n promesa.reject(\"El navegador no soporta la geo localización.\");\r\n return geoLocation;\r\n }\r\n navigator.geolocation.getCurrentPosition(function (position) {\r\n promesa.resolve(position);\r\n }, function (error) {\r\n promesa.reject(error);\r\n }, options);\r\n geoLocation.location = promesa.promise;\r\n return geoLocation;\r\n };\r\n GeoLocationService.$inject = moduleConfig.GeoLocationService.deps;\r\n module.factory(moduleConfig.GeoLocationService.name, GeoLocationService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"socialModule\",\r\n deps: [\"ngResource\", \"TCFAutos.services.PageNavigationService\", \"TCFAutos.services.NotificationsService\"],\r\n googleService: {\r\n require: [\"https://apis.google.com/js/client:platform.js\"],\r\n fallbacks: [\"scripts_fallbacks/google-api\"],\r\n name: \"googleService\",\r\n deps: [\"$window\", \"$rootScope\", \"$q\", \"AuthSocial\", \"usSpinnerService\", \"PageNavigationService\", \"NotificationsService\",\r\n \"DependencyInjectionService\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, googleService;\r\n module = angular.module(\"TCFAutos\");\r\n // Google+ Service.\r\n googleService = function ($window, $rootScope, $q, AuthSocial, usSpinnerService, PageNavigationService,\r\n NotificationsService, DependencyInjectionService, TCFAAppConfigService) {\r\n var myself = this,\r\n auth2;\r\n DependencyInjectionService.loadApi(\"GooglePlus\").then(function () {\r\n $window.console.debug(\"GooglePlus API fully loaded\");\r\n\r\n gapi.load('auth2', function() {\r\n auth2 = gapi.auth2.init({\r\n client_id: TCFAAppConfigService.GOOGLE.CLIENT_ID,\r\n scope: TCFAAppConfigService.GOOGLE.SCOPES\r\n });\r\n });\r\n }, function () {\r\n myself.tcfautos_fallback_check = true;\r\n });\r\n // Check for Firewalls blocking Google.\r\n myself.login = function (success) {\r\n var handleAuthResult = function (googleUser) {\r\n $window.console.debug(\"googleUser G+\", googleUser);\r\n if (googleUser && !googleUser.error) {\r\n // Calling Auth\r\n $window.console.debug(\"Calling TCFAutos API Social Auth\");\r\n var data = {\r\n network: \"googleplus\",\r\n access_token: googleUser.getAuthResponse().id_token\r\n };\r\n\r\n PageNavigationService.showSplash = true;\r\n AuthSocial.login(data).$promise.then(function (resp1) {\r\n $window.console.debug(\"AuthSocial INFO\", resp1);\r\n var googleProfile = googleUser.getBasicProfile();\r\n var socialProfile = {\r\n firstName: googleProfile.getGivenName(),\r\n lastName: googleProfile.getFamilyName(),\r\n pictureUrl: googleProfile.getImageUrl() + \"0\" // img size * 10px\r\n };\r\n if (resp1.data.user.profile_image) {\r\n socialProfile.pictureUrl = TCFAAppConfigService.API.IMG_SRC + \"/user_images/\" + resp1.data.user.profile_image.url;\r\n }\r\n\r\n $window.console.debug(\"Social Profile INFO parsed\", socialProfile);\r\n $rootScope.userInfo = resp1.data;\r\n NotificationsService.markAsUnread(resp1.data.user.cliente.mensajes);\r\n $rootScope.socialProfile = socialProfile;\r\n $rootScope.loggedSocial = \"google+\";\r\n PageNavigationService.showSplash = false;\r\n success();\r\n },\r\n function (resp) {\r\n PageNavigationService.showSplash = false;\r\n $window.console.debug(resp);\r\n }\r\n );\r\n } else {\r\n $window.console.debug(\"something went wrong with Google\");\r\n }\r\n },\r\n checkAuth = function () {\r\n auth2.signIn().then(function (googleUser) {\r\n handleAuthResult(googleUser);\r\n }, function (error) {\r\n $window.console.debug(\"Google Error: \" + error.message);\r\n });\r\n };\r\n\r\n $window.setTimeout(checkAuth, 1);\r\n };\r\n return myself;\r\n };\r\n googleService.$inject = moduleConfig.googleService.deps;\r\n module.factory(moduleConfig.googleService.name, googleService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.HomeFilterService\",\r\n deps: [],\r\n HomeFilterService: {\r\n name: \"HomeFilterService\",\r\n deps: []\r\n }\r\n },\r\n module, HomeFilterService;\r\n module = angular.module(\"TCFAutos\");\r\n HomeFilterService = function () {\r\n return {\r\n filters: {}\r\n };\r\n };\r\n HomeFilterService.$inject = moduleConfig.HomeFilterService.deps;\r\n module.factory(moduleConfig.HomeFilterService.name, HomeFilterService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"errorHandlerModule\",\r\n deps: [\"TCFAutos.services.PageNavigationService\"],\r\n tcfaErrorHandler: {\r\n name: \"tcfaErrorHandler\",\r\n deps: [\"$q\", \"$injector\", \"$rootScope\", \"PageNavigationService\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, tcfaErrorHandler;\r\n module = angular.module(\"TCFAutos\");\r\n tcfaErrorHandler = function ($q, $injector, $rootScope, PageNavigationService, TCFAAppConfigService) {\r\n var showErrorCodes = [400],\r\n showErrorInternalCodes = [101],\r\n showSuccessCodes = [201, 204],\r\n isRestService = function (url) {\r\n return url.indexOf(TCFAAppConfigService.API.HOST) > -1;\r\n },\r\n isCotizadorService = function (url) {\r\n return (isRestService(url) && (url.indexOf(\"/cotizador\") > -1));\r\n },\r\n isYouTubeService = function (url) {\r\n return (url.indexOf(\"https://www.googleapis.com/youtube\") > -1);\r\n };\r\n return {\r\n response: function (response) {\r\n var timeout;\r\n if (isRestService(response.config.url) && (showSuccessCodes.indexOf(response.status) > -1)) {\r\n PageNavigationService.showSuccess = true;\r\n timeout = $injector.get(\"$timeout\");\r\n timeout(function () {\r\n PageNavigationService.showSuccess = false;\r\n }, 3500);\r\n }\r\n return response;\r\n },\r\n responseError: function (rejection) {\r\n var errors, i, $location, $route,\r\n info = {error: {}},\r\n TCFAModalService = $injector.get(\"TCFAModalService\");\r\n if (rejection.config && isRestService(rejection.config.url) &&\r\n !isCotizadorService(rejection.config.url) &&\r\n ((showErrorCodes.indexOf(rejection.status) > -1) ||\r\n (rejection.data && rejection.data.errors && rejection.data.errors.code &&\r\n (showErrorInternalCodes.indexOf(rejection.data.errors.code) > -1)))) {\r\n if (rejection.data.errors) {\r\n errors = [];\r\n if (!(rejection.data.errors.message instanceof Array)) {\r\n errors.push(rejection.data.errors.message);\r\n } else {\r\n for (i = 0; i < rejection.data.errors.message.length; i++) {\r\n errors.push(rejection.data.errors.message[i]);\r\n }\r\n }\r\n info.error.showModal = true;\r\n info.error.message = errors;\r\n info.error.title = \"Aviso:\";\r\n TCFAModalService.showWarning(info);\r\n }\r\n } else if (rejection.config && rejection.config.url && isYouTubeService(rejection.config.url)) {\r\n info.error.showModal = true;\r\n info.error.message = \"Existe un problema con la cuenta de YouTube.\";\r\n info.error.title = \"Aviso:\";\r\n TCFAModalService.showWarning(info);\r\n } else if ((rejection.status === 401) || (rejection.status === 403)) {\r\n $rootScope.userInfo = {};\r\n $rootScope.is_tasa = false;\r\n $location = $injector.get(\"$location\");\r\n $route = $injector.get(\"$route\");\r\n $location.path(\"/\");\r\n $route.reload();\r\n info.error.showModal = true;\r\n info.error.message = \"Su sesión ha expirado. Por favor, vuelva a loguearse.\";\r\n info.error.title = \"¡Ha ocurrido un error!\";\r\n TCFAModalService.showError(info);\r\n }\r\n return $q.reject(rejection);\r\n }\r\n };\r\n };\r\n tcfaErrorHandler.$inject = moduleConfig.tcfaErrorHandler.deps;\r\n module.factory(moduleConfig.tcfaErrorHandler.name, tcfaErrorHandler);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"tokenInkectionModule\",\r\n deps: [],\r\n tcfaTokenInjection: {\r\n name: \"tcfaTokenInjection\",\r\n deps: [\"$q\", \"$rootScope\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, tcfaTokenInjection;\r\n module = angular.module(\"TCFAutos\");\r\n tcfaTokenInjection = function ($q, $rootScope, TCFAAppConfigService) {\r\n var isRestService = function (url) {\r\n return url.indexOf(TCFAAppConfigService.API.HOST) > -1;\r\n },\r\n userIsLogged = function () {\r\n return $rootScope.userInfo && $rootScope.userInfo.user && $rootScope.userInfo.token;\r\n };\r\n return {\r\n request: function (config) {\r\n if (!isRestService(config.url) || (config.avoidInterceptor === true)) {\r\n return config;\r\n } else {\r\n if (userIsLogged()) {\r\n config.headers.Authorization = \"Bearer \" + $rootScope.userInfo.token;\r\n }\r\n if ($rootScope.session_token) {\r\n var deferred = $q.defer();\r\n $rootScope.session_token.$promise.then(function (response) {\r\n config.headers[\"X-Session-Token\"] = response.data.session_token;\r\n deferred.resolve(config);\r\n }, function () {\r\n deferred.reject(\"No session token!\");\r\n });\r\n return deferred.promise;\r\n }\r\n }\r\n }\r\n };\r\n };\r\n tcfaTokenInjection.$inject = moduleConfig.tcfaTokenInjection.deps;\r\n module.factory(moduleConfig.tcfaTokenInjection.name, tcfaTokenInjection);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"socialModule\",\r\n deps: [\"ngResource\", \"TCFAutos.services.PageNavigationService\", \"TCFAutos.services.NotificationsService\"],\r\n linkedinService: {\r\n name: \"linkedinService\",\r\n deps: [\"$window\", \"$rootScope\", \"$q\", \"$injector\", \"AuthSocial\", \"PageNavigationService\", \"TCFAModalService\", \"NotificationsService\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, linkedinService;\r\n module = angular.module(\"TCFAutos\");\r\n // LinkedIn Service.\r\n linkedinService = function ($window, $rootScope, $q, $injector, AuthSocial, PageNavigationService, TCFAModalService, NotificationsService, TCFAAppConfigService) {\r\n var myself = this,\r\n $location = $injector.get('$location'),\r\n UtilsHelper = $injector.get(\"UtilsHelper\");\r\n\r\n myself.login = function () {\r\n var $route = $injector.get('$route'),\r\n code = $window.decodeURIComponent($route.current.params.code),\r\n data = {\r\n network: \"linkedin\",\r\n access_token: code,\r\n redirectURI: UtilsHelper.getBaseURI()\r\n };\r\n\r\n PageNavigationService.showSplashScreen();\r\n\r\n AuthSocial.login(data).$promise.then(function (resp) {\r\n var socialProfile = {\r\n firstName: resp.data.user.nombre,\r\n lastName: resp.data.user.apellido,\r\n pictureUrl: resp.data.social_picture\r\n };\r\n\r\n $window.console.debug(\"Social Profile INFO\", socialProfile);\r\n $rootScope.userInfo = resp.data;\r\n NotificationsService.markAsUnread(resp.data.user.cliente.mensajes);\r\n $rootScope.socialProfile = socialProfile;\r\n $rootScope.loggedSocial = \"linkedin\";\r\n if (resp.data.user.profile_image) {\r\n $rootScope.socialProfile.pictureUrl = TCFAAppConfigService.API.IMG_SRC + \"/user_images/\" + resp.data.user.profile_image.url;\r\n }\r\n\r\n PageNavigationService.hideSplashScreen();\r\n\r\n $location.path(\"/\");\r\n },\r\n function (resp) {\r\n PageNavigationService.hideSplashScreen();\r\n $window.console.debug(resp);\r\n });\r\n };\r\n myself.login_error = function () {\r\n var $route = $injector.get('$route'),\r\n error = $window.decodeURIComponent($route.current.params.error),\r\n error_desc = $window.decodeURIComponent($route.current.params.error_desc);\r\n\r\n error_desc = $window.atob(error_desc);\r\n\r\n $window.console.debug(\"LinkedinLoginService - Error: \" + error + \" - Mensaje: \" + error_desc);\r\n TCFAModalService.showError({\r\n error: {\r\n showModal: true,\r\n message: \"Ocurrió un error al iniciar sesión con Linkedin, disculpe las molestias.\",\r\n title: \"Error de Inicio de Sesión:\"\r\n }\r\n });\r\n $location.path(\"/\");\r\n };\r\n myself.openAuthTab = function () {\r\n var linkedinLoginURI = 'https://www.linkedin.com/oauth/v2/authorization?response_type=code';\r\n linkedinLoginURI += '&client_id=' + TCFAAppConfigService.LINKEDIN.CLIENT_ID;\r\n linkedinLoginURI += '&redirect_uri=' + $window.encodeURIComponent(UtilsHelper.getBaseURI());\r\n linkedinLoginURI += '&scope=r_liteprofile%20r_emailaddress';\r\n\r\n $window.open(linkedinLoginURI, \"_self\");\r\n };\r\n return myself;\r\n };\r\n linkedinService.$inject = moduleConfig.linkedinService.deps;\r\n module.factory(moduleConfig.linkedinService.name, linkedinService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.LogInUser\",\r\n deps: [\"TCFAutos.controllers.LoginClienteSelector\", \"TCFAutos.controllers.LoginClienteCtrl\", \"TCFAutos.services.ParametrosService\",\r\n \"termsConditionCheckerModule\"],\r\n LogInUser: {\r\n name: \"LogInUser\",\r\n deps: [\"$rootScope\", \"$uibModal\", \"$q\", \"AuthDAO\", \"ParametrosService\", \"termsAndConditionChecker\"]\r\n }\r\n },\r\n module, LogInUser,\r\n /** Constants */\r\n TCFA_MODAL = \"tcfa-modal\",\r\n MODAL_COMPONENT = \"#modalComponent\";\r\n module = angular.module(\"TCFAutos\");\r\n LogInUser = function ($rootScope, $uibModal, $q, AuthDAO, ParametrosService, termsAndConditionChecker) {\r\n return {\r\n showUsuariosAsociados: function (user) {\r\n var selectorScope, clientSelectorModal;\r\n if (user.clientes_asociados && (user.clientes_asociados.length > 0)) {\r\n selectorScope = $rootScope.$new(true);\r\n selectorScope.clientes = user.clientes_asociados;\r\n clientSelectorModal = $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/login/login_cliente_selector.html\",\r\n controller: \"LoginClienteSelector\",\r\n windowClass: TCFA_MODAL,\r\n controllerAs: \"ctrl\",\r\n scope: selectorScope,\r\n bindToController: true,\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n backdrop: \"static\",\r\n keyboard: false\r\n });\r\n }\r\n return clientSelectorModal;\r\n },\r\n showConcesionariosAsociados: function (user) {\r\n var selectorScope, concesionarioSelectorModal;\r\n if (user.concesionarios_asociados && (user.concesionarios_asociados.length > 0)) {\r\n selectorScope = $rootScope.$new(true);\r\n selectorScope.concesionarios = user.concesionarios_asociados;\r\n concesionarioSelectorModal = $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/login/login_concesionario_selector.html\",\r\n controller: \"LoginConcesionarioSelector\",\r\n windowClass: TCFA_MODAL,\r\n controllerAs: \"ctrl\",\r\n scope: selectorScope,\r\n bindToController: true,\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n backdrop: \"static\",\r\n keyboard: false\r\n });\r\n }\r\n return concesionarioSelectorModal;\r\n },\r\n showLogin: function () {\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/login/login_cliente_modal.html\",\r\n windowClass: TCFA_MODAL,\r\n controller: \"LoginClienteCtrl\",\r\n controllerAs: \"loginCliente\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n loginCliente: function () {\r\n var that = this,\r\n defer = $q.defer();\r\n that.showLogin().result.then(function (user) {\r\n var clientSelectorModal = that.showUsuariosAsociados(user);\r\n if (clientSelectorModal) {\r\n clientSelectorModal.result.then(function (result) {\r\n // Usuario seleccionado.\r\n if (parseInt(result, 10) > 0) {\r\n AuthDAO.navigateAs({cuit: result}).$promise.then(function (/*promise*/) {\r\n $rootScope.userInfo.navigate_as = result;\r\n defer.resolve(\"userlogged\");\r\n });\r\n } else {\r\n defer.resolve(\"userlogged\");\r\n }\r\n });\r\n } else {\r\n defer.resolve(\"userlogged\");\r\n }\r\n }, function () {\r\n defer.reject();\r\n });\r\n return defer.promise;\r\n },\r\n showLoginConcesionario: function () {\r\n return $uibModal.open({\r\n animation: true,\r\n windowClass: TCFA_MODAL,\r\n templateUrl: \"./views/login/login_concesionario_modal.html\",\r\n controller: \"LoginConcesionarioCtrl\",\r\n controllerAs: \"loginConcesionario\",\r\n parent: angular.element(MODAL_COMPONENT),\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n loginConcesionario: function () {\r\n var that = this,\r\n defer = $q.defer();\r\n that.showLoginConcesionario().result.then(function (userData) {\r\n var concesionarioSelectorModal;\r\n if (userData.concesionarios_asociados.length === 1) {\r\n that.loginConcesionarioProcesarSeleccionado(userData.concesionarios_asociados[0].cuit, userData).then(function () {\r\n defer.resolve(\"userlogged\");\r\n });\r\n } else {\r\n concesionarioSelectorModal = that.showConcesionariosAsociados(userData);\r\n if (concesionarioSelectorModal) {\r\n concesionarioSelectorModal.result.then(function (result) {\r\n that.loginConcesionarioProcesarSeleccionado(result, userData).then(function () {\r\n defer.resolve(\"userlogged\");\r\n });\r\n });\r\n } else {\r\n defer.resolve(\"userlogged\");\r\n }\r\n }\r\n }, function () {\r\n defer.reject();\r\n });\r\n return defer.promise;\r\n },\r\n loginConcesionarioProcesarSeleccionado: function (result, userData) {\r\n var defer = $q.defer();\r\n ParametrosService.getAllParameters().$promise.then(function (params) {\r\n var seccion_login;\r\n if (params.some(function (element) {\r\n var check = (element.clave === 'seccion_login');\r\n if (check) {\r\n seccion_login = element;\r\n }\r\n return check;\r\n })) {\r\n if (parseInt(result, 10) > 0) {\r\n AuthDAO.navigateAs({cuit: result}).$promise.then(function ( /*promise*/) {\r\n $rootScope.userInfo.navigate_as = result;\r\n if (seccion_login.valor) {\r\n var termsAndConditionsPromise = termsAndConditionChecker.checkAndRequest(seccion_login.valor);\r\n termsAndConditionsPromise.then(function () {\r\n $rootScope.userInfo.user.dealer.concesionario = userData.concesionarios_asociados.find(function (concesionario) {\r\n return concesionario.cuit === result;\r\n });\r\n defer.resolve();\r\n });\r\n }\r\n });\r\n } else {\r\n defer.resolve();\r\n }\r\n }\r\n });\r\n return defer.promise;\r\n }\r\n };\r\n };\r\n LogInUser.$inject = moduleConfig.LogInUser.deps;\r\n module.factory(moduleConfig.LogInUser.name, LogInUser);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.NotificationsService\",\r\n deps: [\"TCFAutos.services.UserDAOService\"],\r\n NotificationsService: {\r\n name: \"NotificationsService\",\r\n deps: [\"$interval\", \"$rootScope\", \"UserDAO\"]\r\n }\r\n },\r\n module, NotificationsService;\r\n module = angular.module(\"TCFAutos\");\r\n NotificationsService = function ($interval, $rootScope, UserDAO) {\r\n var unreadMessages = {},\r\n readMessages = {},\r\n unreadCallbacks = [],\r\n unreadCount = function () {\r\n var i,\r\n count = 0;\r\n for (i in unreadMessages) {\r\n if (unreadMessages.hasOwnProperty(i)) {\r\n count = count + 1;\r\n }\r\n }\r\n return count;\r\n },\r\n notifyUnreads = function () {\r\n var i,\r\n count = unreadCount();\r\n for (i = unreadCallbacks.length - 1; i >= 0; i--) {\r\n unreadCallbacks[i](count);\r\n }\r\n },\r\n unread = function (messagesArray) {\r\n var i,\r\n notify = false;\r\n for (i = messagesArray.length - 1; i >= 0; i--) {\r\n if (!readMessages.hasOwnProperty(messagesArray[i])) {\r\n unreadMessages[messagesArray[i]] = true;\r\n notify = true;\r\n }\r\n }\r\n if (notify) {\r\n notifyUnreads();\r\n }\r\n },\r\n read = function (messagesArray) {\r\n var i,\r\n notify = false;\r\n for (i = messagesArray.length - 1; i >= 0; i--) {\r\n readMessages[messagesArray[i]] = true;\r\n if (unreadMessages.hasOwnProperty(messagesArray[i])) {\r\n delete unreadMessages[messagesArray[i]];\r\n notify = true;\r\n }\r\n }\r\n if (notify) {\r\n notifyUnreads();\r\n }\r\n };\r\n // Endpoint de actualizacion de mensajes del usuario.\r\n $interval(function () {\r\n if ($rootScope.userInfo && $rootScope.userInfo.user && !$rootScope.is_tasa) {\r\n if ($rootScope.userInfo.user.dealer || $rootScope.userInfo.user.admin) {\r\n return false;\r\n }\r\n UserDAO.getMensajesSinLeer({}, function (response) {\r\n unread(response.data.mensajes);\r\n });\r\n }\r\n }, 60 * 1000);\r\n return {\r\n markAsUnread: function (messagesArray) {\r\n unread(messagesArray);\r\n },\r\n markAsRead: function (messagesArray) {\r\n read(messagesArray);\r\n },\r\n watchUnreads: function (callback) {\r\n unreadCallbacks.push(callback);\r\n },\r\n clear: function () {\r\n var notify = unreadCount();\r\n unreadMessages = {};\r\n readMessages = {};\r\n if (notify) {\r\n notifyUnreads();\r\n }\r\n }\r\n };\r\n };\r\n NotificationsService.$inject = moduleConfig.NotificationsService.deps;\r\n module.factory(moduleConfig.NotificationsService.name, NotificationsService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.PageNavigationService\",\r\n deps: [],\r\n PageNavigationService: {\r\n name: \"PageNavigationService\",\r\n deps: []\r\n }\r\n },\r\n module, PageNavigationService;\r\n module = angular.module(\"TCFAutos\");\r\n PageNavigationService = function () {\r\n var __navigationParameters = {};\r\n return {\r\n showSplash: false,\r\n showSuccess: false,\r\n showLoginMenu: true,\r\n showNewsletterSubscription: false,\r\n showingSplash: 0,\r\n getParameter: function (key, defaultValue, preserve) {\r\n var parameter;\r\n if (__navigationParameters[key] === undefined) {\r\n if (defaultValue === undefined) {\r\n return null;\r\n }\r\n return defaultValue;\r\n } else {\r\n parameter = __navigationParameters[key];\r\n if (!preserve) {\r\n delete __navigationParameters[key];\r\n }\r\n return parameter;\r\n }\r\n },\r\n deleteParameter: function (key) {\r\n delete __navigationParameters[key];\r\n },\r\n showSplashScreen: function () {\r\n this.showingSplash++;\r\n },\r\n hideSplashScreen: function () {\r\n if (this.showingSplash > 0) {\r\n this.showingSplash--;\r\n }\r\n },\r\n shouldShowSplashScreen: function () {\r\n return this.showingSplash > 0 || this.showSplash;\r\n }\r\n };\r\n };\r\n PageNavigationService.$inject = moduleConfig.PageNavigationService.deps;\r\n module.factory(moduleConfig.PageNavigationService.name, PageNavigationService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.ParametrosService\",\r\n deps: [\"angular-cache\"],\r\n ParametrosService: {\r\n name: \"ParametrosService\",\r\n deps: [\"$resource\", \"CacheFactory\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, ParametrosService;\r\n module = angular.module(\"TCFAutos\");\r\n ParametrosService = function ($resource, CacheFactory, TCFAAppConfigService) {\r\n var transformBasicGetResponse,\r\n cacheParametros = CacheFactory.get(\"cacheParametros\"),\r\n __cacheAllParameters = CacheFactory.get(\"cacheAllParameters\");\r\n if (!cacheParametros) {\r\n cacheParametros = CacheFactory(\"cacheParametros\", {\r\n maxAge: 1800000, // =(30m * 60s * 1000ms).\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\"\r\n });\r\n }\r\n if (!__cacheAllParameters) {\r\n __cacheAllParameters = CacheFactory(\"cacheAllParameters\", {\r\n maxAge: (8 * 60 * 60 * 1000), // MS.\r\n cacheFlushInterval: (24 * 60 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n transformBasicGetResponse = function (response) {\r\n // NOTA: el servicio devuelve un array (vac�o, si no encuentra el par�metro).\r\n var data = (angular.fromJson(response)).data;\r\n if (data.length > 0) {\r\n return data[0];\r\n }\r\n return {\r\n error: true\r\n };\r\n };\r\n return $resource(TCFAAppConfigService.API.HOST + \"/parametros/:key/\", {key: \"@key\"}, {\r\n get: {\r\n method: \"GET\",\r\n params: {},\r\n transformResponse: transformBasicGetResponse,\r\n isArray: false,\r\n cache: cacheParametros\r\n },\r\n getWithoutCache: {\r\n method: \"GET\",\r\n params: {},\r\n transformResponse: transformBasicGetResponse,\r\n isArray: false\r\n },\r\n getAllParameters: {\r\n method: \"GET\",\r\n params: {},\r\n url: TCFAAppConfigService.API.HOST + \"/parametros/\",\r\n cache: __cacheAllParameters,\r\n transformResponse: function (response) {\r\n var __json_response = angular.fromJson(response);\r\n if (__json_response && __json_response.data &&\r\n (!!__json_response.data.length || (__json_response.data.length === 0))) {\r\n return __json_response.data;\r\n }\r\n return [];\r\n },\r\n isArray: true\r\n }\r\n });\r\n };\r\n ParametrosService.$inject = moduleConfig.ParametrosService.deps;\r\n module.factory(moduleConfig.ParametrosService.name, ParametrosService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"indexModule\",\r\n deps: [\"TCFAutos.services.PageNavigationService\", \"TCFAutos.services.ParametrosService\", \"authDaoModule\", \"termsConditionCheckerModule\",\r\n \"socialModule\", \"TCFAutos.services.BannerDAO\", \"TCFAutos.services.SessionValidationService\", \"TCFAutos.services.TCFANewsletter\"],\r\n searchService: {\r\n name: \"searchService\",\r\n deps: []\r\n }\r\n },\r\n module, searchService;\r\n module = angular.module(\"TCFAutos\");\r\n searchService = function () {\r\n return {\r\n params: {},\r\n addParameter: function (paramName, paramValue) {\r\n if (paramValue) {\r\n this.params[paramName] = {\r\n name: paramName,\r\n value: paramValue\r\n };\r\n if (paramName !== \"page\") {\r\n delete this.params.page;\r\n }\r\n }\r\n },\r\n addFromRequest: function (params) {\r\n var res = {};\r\n angular.forEach(params, function (value, key) {\r\n this[key] = {\r\n name: key,\r\n value: value\r\n };\r\n }, res);\r\n this.params = res;\r\n },\r\n removeParameter: function (paramName) {\r\n delete this.params[paramName];\r\n delete this.params.page;\r\n },\r\n navigationValues: function () {\r\n var response = {};\r\n angular.forEach(this.params, function (value, key) {\r\n this[key] = value.value;\r\n }, response);\r\n return response;\r\n }\r\n };\r\n };\r\n searchService.$inject = moduleConfig.searchService.deps;\r\n module.factory(moduleConfig.searchService.name, searchService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.SessionValidationService\",\r\n deps: [\"TCFAutos.services.LogInUser\"],\r\n SessionValidationService: {\r\n name: \"SessionValidationService\",\r\n deps: [\"$injector\", \"$rootScope\", \"LogInUser\"]\r\n }\r\n },\r\n module, SessionValidationService;\r\n module = angular.module(\"TCFAutos\");\r\n SessionValidationService = function ($injector, $rootScope, LogInUser) {\r\n var $location = $injector.get(\"$location\"),\r\n $route = $injector.get(\"$route\");\r\n return {\r\n validators: {\r\n CheckUserType: function (user, value) {\r\n return this.usersTypesValidators[value](user);\r\n },\r\n usersTypesValidators: {\r\n cliente: function (user) {\r\n return (typeof user !== \"undefined\") && (user !== null) && (typeof user.cliente !== \"undefined\") && (user.cliente !== null);\r\n },\r\n dealer: function (user) {\r\n return (typeof user !== \"undefined\") && (user !== null) && (typeof user.dealer !== \"undefined\") && (user.dealer !== null);\r\n },\r\n admin: function (user) {\r\n return (typeof user !== \"undefined\") && (user !== null) && (typeof user.admin !== \"undefined\") && (user.admin !== null);\r\n },\r\n tasa: function (user) {\r\n return (typeof user !== \"undefined\") && (user !== null) && !!$rootScope.is_tasa;\r\n },\r\n anon: function (user) {\r\n return typeof user === \"undefined\";\r\n }\r\n },\r\n showLoginByUserType: {\r\n cliente: function (callback) {\r\n LogInUser.loginCliente().then(function () {\r\n if (callback) {\r\n callback();\r\n } else {\r\n $route.reload();\r\n }\r\n });\r\n },\r\n dealer: function (callback) {\r\n LogInUser.loginConcesionario().result.then(function (result) {\r\n if (result === \"userlogged\") {\r\n if (callback) {\r\n callback();\r\n } else {\r\n $route.reload();\r\n }\r\n }\r\n });\r\n },\r\n admin: function () {\r\n },\r\n tasa: function () {\r\n },\r\n anon: function () {\r\n }\r\n }\r\n },\r\n validateStrictPermissions: function (permissions, showLogin, callback) {\r\n var innerRole, x, i, values, permiso, hasInnerPermission,\r\n user,\r\n hasPermission = false;\r\n if ($rootScope.userInfo) {\r\n user = $rootScope.userInfo.user;\r\n }\r\n if (showLogin === undefined || showLogin === null) {\r\n showLogin = false;\r\n }\r\n for (i = 0; i < permissions.length; i++) {\r\n permiso = permissions[i];\r\n if (permiso instanceof Array) {\r\n hasInnerPermission = true;\r\n for (x = 0; x < permiso.length; x++) {\r\n innerRole = permiso[x];\r\n values = innerRole.split(\":\");\r\n if (this.validators[values[0]]) {\r\n hasInnerPermission = hasInnerPermission && this.validators[values[0]](user, values[1]);\r\n }\r\n }\r\n hasPermission = hasPermission || hasInnerPermission;\r\n } else {\r\n values = permiso.split(\":\");\r\n if (this.validators[values[0]]) {\r\n hasPermission = hasPermission || this.validators[values[0]](user, values[1]);\r\n }\r\n }\r\n }\r\n if (!hasPermission && showLogin && this.validators.CheckUserType(user, \"anon\")) { // Anon user.\r\n this.validators.showLoginByUserType[showLogin](callback);\r\n } else if (!hasPermission && showLogin) {\r\n $location.path(\"/not_allowed/\");\r\n $route.reload();\r\n }\r\n return hasPermission;\r\n }\r\n };\r\n };\r\n SessionValidationService.$inject = moduleConfig.SessionValidationService.deps;\r\n module.factory(moduleConfig.SessionValidationService.name, SessionValidationService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"authModule\",\r\n deps: [],\r\n sessionValidator: {\r\n name: \"sessionValidator\",\r\n deps: [\"$location\", \"$route\", \"$rootScope\"]\r\n }\r\n },\r\n module, sessionValidator;\r\n module = angular.module(\"TCFAutos\");\r\n sessionValidator = function ($location, $route, $rootScope) {\r\n return {\r\n validateSession: function (/*permisos*/) {\r\n if ($rootScope.userInfo &&\r\n $rootScope.userInfo.user &&\r\n $rootScope.userInfo.token) {\r\n return true;\r\n }\r\n $location.path(\"/not_allowed/\");\r\n return false;\r\n }\r\n };\r\n };\r\n sessionValidator.$inject = moduleConfig.sessionValidator.deps;\r\n module.factory(moduleConfig.sessionValidator.name, sessionValidator);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.TCFAModalService\",\r\n deps: [],\r\n TCFAModalService: {\r\n name: \"TCFAModalService\",\r\n deps: [\"$uibModal\"]\r\n }\r\n },\r\n module, TCFAModalService,\r\n /** Constants */\r\n TCFA_MODAL = \"tcfa-modal\",\r\n UIB_MODAL_INSTANCE = \"$uibModalInstance\",\r\n MODAL_COMPONENT = \"#modalComponent\";\r\n module = angular.module(\"TCFAutos\");\r\n TCFAModalService = function ($uibModal) {\r\n return {\r\n showError: function (scope) {\r\n var myScope = scope;\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/component/modal/error_modal.html\",\r\n windowClass: TCFA_MODAL,\r\n openedClass: \"tcfa-error-modal-wrapper\",\r\n // FIXME: mover esta definicion a la carpeta controllers.\r\n controller: [\"$scope\", UIB_MODAL_INSTANCE,\r\n function ($scope, $uibModalInstance) {\r\n this.info = myScope;\r\n this.showClose = true;\r\n if (!(this.info.error.message instanceof Array)) {\r\n this.info.error.message = [this.info.error.message];\r\n }\r\n this.close = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n };\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n showWarning: function (scope) {\r\n var myScope = scope;\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/component/modal/warning_modal.html\",\r\n windowClass: TCFA_MODAL,\r\n // FIXME: mover esta definicion a la carpeta controllers.\r\n controller: [\"$scope\", UIB_MODAL_INSTANCE,\r\n function ($scope, $uibModalInstance) {\r\n this.info = myScope;\r\n if (!(this.info.error.message instanceof Array)) {\r\n this.info.error.message = [this.info.error.message];\r\n }\r\n $scope.close = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n };\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n showAdvice: function (scope) {\r\n var myScope = scope;\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/component/modal/advice_modal.html\",\r\n windowClass: TCFA_MODAL,\r\n controller: [\"$scope\", UIB_MODAL_INSTANCE,\r\n function ($scope, $uibModalInstance) {\r\n this.info = myScope;\r\n if (!(this.info.warning.message instanceof Array)) {\r\n this.info.warning.message = [this.info.warning.message];\r\n }\r\n $scope.close = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n };\r\n $scope.btnClick = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n if (myScope.warning.warningFn) {\r\n myScope.warning.warningFn();\r\n }\r\n };\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n showConfirm: function (scope) {\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/component/modal/confirm_modal.html\",\r\n windowClass: TCFA_MODAL,\r\n controller: [\"$scope\", UIB_MODAL_INSTANCE,\r\n function ($scope, $uibModalInstance) {\r\n var vm = this;\r\n vm.info = scope;\r\n $scope.aceptar = function () {\r\n $uibModalInstance.dismiss(\"accept\");\r\n if (vm.info.aceptar && angular.isFunction(\r\n vm.info.aceptar)) {\r\n vm.info.aceptar();\r\n }\r\n };\r\n $scope.cancelar = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n if (vm.info.cancelar && angular.isFunction(\r\n vm.info.cancelar)) {\r\n vm.info.cancelar();\r\n }\r\n };\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n showOk: function (modal) {\r\n var modalInfo = modal;\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: \"./views/component/modal/ok_modal.html\",\r\n windowClass: TCFA_MODAL,\r\n controller: [\"$scope\", UIB_MODAL_INSTANCE,\r\n function ($scope, $uibModalInstance) {\r\n this.info = modalInfo;\r\n if (!(this.info.warning.message instanceof Array)) {\r\n this.info.warning.message = [this.info.warning.message];\r\n }\r\n $scope.close = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n };\r\n $scope.btnClick = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n if (modalInfo.warning.warningFn) {\r\n modalInfo.warning.warningFn();\r\n }\r\n };\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n },\r\n showModal: function (modal, template) {\r\n var modalInfo = modal, templateUrl = \"./views/component/modal/ok_modal.html\";\r\n if (template) {\r\n templateUrl = template;\r\n }\r\n return $uibModal.open({\r\n animation: true,\r\n templateUrl: templateUrl,\r\n windowClass: TCFA_MODAL,\r\n controller: [\"$scope\", UIB_MODAL_INSTANCE,\r\n function ($scope, $uibModalInstance) {\r\n this.info = modalInfo;\r\n if (!(this.info.warning.message instanceof Array)) {\r\n this.info.warning.message = [this.info.warning.message];\r\n }\r\n $scope.close = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n };\r\n $scope.btnClick = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n if (modalInfo.warning.warningFn) {\r\n modalInfo.warning.warningFn();\r\n }\r\n };\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(MODAL_COMPONENT),\r\n bindToController: true\r\n });\r\n }\r\n };\r\n };\r\n TCFAModalService.$inject = moduleConfig.TCFAModalService.deps;\r\n module.factory(moduleConfig.TCFAModalService.name, TCFAModalService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.TCFANewsletter\",\r\n deps: [\"TCFAutos.services.TCFANewsletterDAO\"],\r\n TCFANewsletter: {\r\n name: \"TCFANewsletter\",\r\n deps: [\"$rootScope\", \"TCFAModalService\", \"TCFANewsletterDAO\"]\r\n }\r\n },\r\n module, TCFANewsletter;\r\n module = angular.module('TCFAutos');\r\n TCFANewsletter = function ($rootScope, TCFAModalService, TCFANewsletterDAO) {\r\n return {\r\n adherirNewsletter: function (email, canal) {\r\n var info = {\r\n warning: {},\r\n error: {}\r\n },\r\n promesa = TCFANewsletterDAO.adherir({\r\n canal: canal || $rootScope.loggedSocial || \"native\",\r\n email: email,\r\n nombre: \"\",\r\n apellido: \"\",\r\n plataforma: \"TCFAutos\"\r\n }).$promise;\r\n promesa.then(function () {\r\n info.warning.showModal = true;\r\n info.warning.message = [\"Te suscribiste al newsletter de TCFAUTOS.COM. Recibirás las mejores novedades para financiar tu próximo Toyota 0km - Usado y usados de otras marcas.\", \" ¡Muchas gracias!\"];\r\n info.warning.title = 'Suscripción exitosa';\r\n info.warning.showBtn = true;\r\n info.warning.btnText = 'Cerrar';\r\n TCFAModalService.showOk(info);\r\n }, function (response) {\r\n if (response.status === 400) {\r\n info.error.message = [\"Se encontro el siguiente problema: Ya se encuentra subscripto al newsletter.\", \"Muchas gracias.\"];\r\n info.error.title = 'Suscripción inválida';\r\n TCFAModalService.showWarning(info);\r\n } else {\r\n info.error.message = \"Ha ocurrido un error al realizar la subscripción.\";\r\n info.error.title = 'Error en la suscripción';\r\n TCFAModalService.showError(info);\r\n }\r\n });\r\n return promesa;\r\n },\r\n desadherirNewsletter: function (email) {\r\n var info = {\r\n warning: {},\r\n error: {}\r\n },\r\n promesa = TCFANewsletterDAO.desadherir({\r\n email: email,\r\n plataforma: \"TCFAutos\"\r\n }).$promise;\r\n promesa.then(function () {\r\n info.warning.showModal = true;\r\n info.warning.message = [\"Usted se ha desadherido del newsletter.\", \"Por favor revise su casilla de correo\", \" Muchas gracias.\"];\r\n info.warning.title = 'Desuscripción exitosa';\r\n info.warning.showBtn = true;\r\n info.warning.btnText = 'Cerrar';\r\n TCFAModalService.showOk(info);\r\n }, function (response) {\r\n if (response.status === 400) {\r\n info.error.message = [\"Se encontró el siguiente problema: No se encuentra subscripto al newsletter.\", \"Muchas gracias.\"];\r\n info.error.title = 'Suscripción inválida';\r\n TCFAModalService.showWarning(info);\r\n } else {\r\n info.error.message = \"Ha ocurrido un error al cancelar la suscripción.\";\r\n info.error.title = 'Error en la suscripción';\r\n TCFAModalService.showError(info);\r\n }\r\n });\r\n return promesa;\r\n },\r\n validarEmailNewsletter: function (id_persona, hash) {\r\n var info = {\r\n warning: {},\r\n error: {}\r\n },\r\n promesa = TCFANewsletterDAO.verificacionDeEmail({\r\n id_persona: id_persona,\r\n hash: hash\r\n }).$promise;\r\n promesa.then(function () {\r\n info.warning.showModal = true;\r\n info.warning.message = [\"La operación ha sido completada.\", \" Muchas gracias.\"];\r\n info.warning.title = 'Operacíon completada';\r\n info.warning.showBtn = true;\r\n info.warning.btnText = 'Cerrar';\r\n TCFAModalService.showOk(info);\r\n }, function (response) {\r\n if (response.status === 400) {\r\n info.error.message = [\"Se encontró el siguiente problema: No se encuentra la operación especificada.\", \"Muchas gracias.\"];\r\n info.error.title = 'Operacion fallida';\r\n TCFAModalService.showWarning(info);\r\n } else {\r\n info.error.message = \"Ha ocurrido un error al validar el email.\";\r\n info.error.title = 'Error en la operación';\r\n TCFAModalService.showError(info);\r\n }\r\n });\r\n return promesa;\r\n }\r\n };\r\n };\r\n TCFANewsletter.$inject = moduleConfig.TCFANewsletter.deps;\r\n module.factory(moduleConfig.TCFANewsletter.name, TCFANewsletter);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n TCFAAppConfigService: {\r\n name: \"TCFAAppConfigService\",\r\n deps: [\"$window\"]\r\n }\r\n },\r\n module, TCFAAppConfigService,\r\n /** Constants. */\r\n GOOGLE_KEY = \"AIzaSyDsnM-k76MHzztHTcGJuwBS_Nvb6wMRMxE\",\r\n CONFIG_SHARED_GOOGLE_API_KEY = \"AIzaSyC6iVdXBel8N5SNrps-vDuu81nESZvbXuY\",\r\n CONFIG_SHARED_GOOGLE_CLIENT_ID = \"1046438162897-pelpjv7s64mqi00i6looevtniptmqn00.apps.googleusercontent.com\",\r\n CONFIG_SHARED_GOOGLE_RECAPTCHA_KEY = \"6LdQ3UwUAAAAAF4B1gmft8m-YmYrjW6BVDGBZoEE\",\r\n CONFIG_SHARED_LINKS_ASK_LOAN = \"http://190.216.29.83/ToyotaAppForm/Login/TCFAutos\",\r\n CONFIG_SHARED_LINKS_ASK_LOAN_COTIZADOR = \"http://190.216.29.83/ToyotaAppForm/Login/MultiCanal\",\r\n CONFIG_SHARED_LINKS_SIMULADOR_CREDITOS = \"http://test1.toyotacfa.com.ar/simulador-creditos\";\r\n module = angular.module(\"TCFAutos\");\r\n TCFAAppConfigService = function ($window) {\r\n var HOST = $window.location.hostname,\r\n ENVS = {\r\n DEV_LOCAL: \"local.www.tcfautos.com.ar\",\r\n DEV_QA: \"qa.www.tcfautos.codeicus\",\r\n DEV_QA2: \"qa2.www.tcfautos.codeicus\",\r\n TEST1: \"test1www.tcfautos.com.ar\",\r\n TEST2: \"test2www.tcfautos.com.ar\",\r\n TEST3: \"test3www.tcfautos.com.ar\",\r\n TEST4: \"test4www.tcfautos.com.ar\",\r\n TEST_QA: \"testqawww.tcfautos.com.ar\",\r\n PROD: \"www.tcfautos.com.ar\"\r\n },\r\n CONFIG_SHARED = {\r\n SHOW_ISSUE_COLLECTOR: false,\r\n API: {\r\n HOST: \"\",\r\n MOCK: \"\",\r\n IMG_SRC: \"\",\r\n AUTO_IMAGE_FOLDER: \"/auto_images\",\r\n BANNER_IMAGE_FOLDER: \"/banner_images\"\r\n },\r\n ABM: {URL: \"\"},\r\n CUOTAS: {\r\n LOANS: [60, 48, 32, 24, 18, 12, 6],\r\n MIN_VALUE: 50000\r\n },\r\n FACEBOOK: {\r\n APP_ID: \"681761016377309\",\r\n APP_SECRET: \"922c541513399a40dfba4c6137454c91\",\r\n VERSION: \"v2.6\"\r\n },\r\n GOOGLE: {\r\n API_KEY: GOOGLE_KEY,\r\n CLIENT_ID: \"823949072627-769p880beq6f731su74nf9v9h3qi2ss9.apps.googleusercontent.com\",\r\n CLIENT_SECRET: \"o50ppWyluLYDpGC4QPnMK-2h\",\r\n SCOPES: \"https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/plus.me https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/userinfo.profile\",\r\n SHARE_URL: \"https://plus.google.com/share?url=\",\r\n ANALITYCS: \"UA-54199384-2\",\r\n RECAPTCHA_KEY: \"6LeQZxYUAAAAAD3RxJhd-lfDJA7WwGuEKLhdXCHw\"\r\n },\r\n GOOGLE_MAPS: {KEY: GOOGLE_KEY},\r\n YOUTUBE: {\r\n KEY: \"AIzaSyDaAe2IGaTsw7eHP5sVi-abOt6coocqwYE\",\r\n IMAGE_REPO: \"//i1.ytimg.com/vi/\"\r\n },\r\n LINKEDIN: {\r\n CLIENT_ID: \"77afduyxtja3k9\",\r\n CLIENT_SECRET: \"rMG9IEJ6MxUIlYVq\"\r\n },\r\n LINKS: {\r\n ASK_LOAN: \"https://www.toyotacfa.com.ar/ToyotaAppForm/Login/TCFAutos\",\r\n ASK_LOAN_COTIZADOR: \"https://www.toyotacfa.com.ar/ToyotaAppForm/Login/MultiCanal\",\r\n SIMULADOR_CREDITOS: \"https://www.toyotacfa.com.ar/simulador-creditos\",\r\n REGISTER_URL: \"https://www.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/registration.xhtml\",\r\n FACEBOOK_PAGE: \"https://www.facebook.com/ToyotaCFA\",\r\n GPLUS_PAGE: \"https://plus.google.com/u/0/102230450905286800297\",\r\n LINKEDIN_PAGE: \"http://www.linkedin.com/company/toyota-compa-ia-financiera\",\r\n TWITTER_PAGE: \"https://www.twitter.com\",\r\n IOS_APP_LINK: \"https://itunes.apple.com/app/id1214404213\",\r\n ANDROID_APP_LINK: \"https://play.google.com/store/apps/details?id=com.ar.toyotacfa.tcfautosmobile\",\r\n TCFA_LOST_PASSWORD: \"https://www.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/forgotUserPassword.xhtml\",\r\n NEW_REGISTER_URL: \"/clientregister/\",\r\n LOST_PASSWORD: \"/user/password/missed/\"\r\n },\r\n TCFA_NEWSLETTER: \"//www.toyotacfa.com.ar/api/\",\r\n SEGUROS: {\r\n ENV: \"PROD\",\r\n URL: \"https://widgetseguros.tcfautos.com.ar/sdk/sdk.js\"\r\n }\r\n };\r\n // Development Local.\r\n if (HOST === ENVS.DEV_LOCAL) {\r\n CONFIG_SHARED.API.HOST = \"//local.api.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.API.IMG_SRC = \"http://local.resources.tcfautos.com.ar\";\r\n CONFIG_SHARED.ABM.URL = \"//local.abm.tcfautos.com.ar\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1745266399076401\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"085e61471f6f0181c0ae9066495b4e2d\";\r\n CONFIG_SHARED.GOOGLE.API_KEY = CONFIG_SHARED_GOOGLE_API_KEY;\r\n CONFIG_SHARED.GOOGLE.CLIENT_ID = CONFIG_SHARED_GOOGLE_CLIENT_ID;\r\n CONFIG_SHARED.GOOGLE.CLIENT_SECRET = \"M_Um09ttTKIeJrtyGPSKtoIc\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = CONFIG_SHARED_GOOGLE_RECAPTCHA_KEY;\r\n CONFIG_SHARED.LINKEDIN.CLIENT_ID = \"78gsej3ow80j56\";\r\n CONFIG_SHARED.LINKEDIN.CLIENT_SECRET = \"dUqp6OH043DMN40G\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://qa.www.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = CONFIG_SHARED_LINKS_ASK_LOAN;\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = CONFIG_SHARED_LINKS_ASK_LOAN_COTIZADOR;\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = CONFIG_SHARED_LINKS_SIMULADOR_CREDITOS;\r\n CONFIG_SHARED.SEGUROS.ENV = \"DEV\";\r\n CONFIG_SHARED.SEGUROS.URL = \"http://local.widgetseguros.tcfautos.codeicus.com.ar/sdk/sdk.js\";\r\n }\r\n // Development QA.\r\n if (HOST === ENVS.DEV_QA) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"//qa.api.tcfautos.codeicus/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"//qa.abm.tcfautos.codeicus\";\r\n CONFIG_SHARED.API.IMG_SRC = \"http://qa.resources.tcfautos.codeicus\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1779429392292463\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"295e950403db38d00ddf58e730efdfb6\";\r\n CONFIG_SHARED.GOOGLE.API_KEY = CONFIG_SHARED_GOOGLE_API_KEY;\r\n CONFIG_SHARED.GOOGLE.CLIENT_ID = CONFIG_SHARED_GOOGLE_CLIENT_ID;\r\n CONFIG_SHARED.GOOGLE.CLIENT_SECRET = \"M_Um09ttTKIeJrtyGPSKtoIc\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = CONFIG_SHARED_GOOGLE_RECAPTCHA_KEY;\r\n CONFIG_SHARED.LINKEDIN.CLIENT_ID = \"78gsej3ow80j56\";\r\n CONFIG_SHARED.LINKEDIN.CLIENT_SECRET = \"dUqp6OH043DMN40G\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"http://qa.www.toyotacfa.codeicus/api/\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = CONFIG_SHARED_LINKS_ASK_LOAN;\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = CONFIG_SHARED_LINKS_ASK_LOAN_COTIZADOR;\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = CONFIG_SHARED_LINKS_SIMULADOR_CREDITOS;\r\n CONFIG_SHARED.SEGUROS.ENV = \"QA\";\r\n CONFIG_SHARED.SEGUROS.URL = \"http://qa.widgetseguros.tcfautos.codeicus/sdk/sdk.js\";\r\n }\r\n // Development QA-2.\r\n if (HOST === ENVS.DEV_QA2) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"//qa2.api.tcfautos.codeicus/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"//qa2.abm.tcfautos.codeicus\";\r\n CONFIG_SHARED.API.IMG_SRC = \"//qa2.resources.tcfautos.codeicus\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1745266399076401\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"085e61471f6f0181c0ae9066495b4e2d\";\r\n CONFIG_SHARED.GOOGLE.API_KEY = CONFIG_SHARED_GOOGLE_API_KEY;\r\n CONFIG_SHARED.GOOGLE.CLIENT_ID = CONFIG_SHARED_GOOGLE_CLIENT_ID;\r\n CONFIG_SHARED.GOOGLE.CLIENT_SECRET = \"M_Um09ttTKIeJrtyGPSKtoIc\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = CONFIG_SHARED_GOOGLE_RECAPTCHA_KEY;\r\n CONFIG_SHARED.LINKEDIN.CLIENT_ID = \"78gsej3ow80j56\";\r\n CONFIG_SHARED.LINKEDIN.CLIENT_SECRET = \"dUqp6OH043DMN40G\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"http://test1.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = CONFIG_SHARED_LINKS_ASK_LOAN;\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = CONFIG_SHARED_LINKS_ASK_LOAN_COTIZADOR;\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = CONFIG_SHARED_LINKS_SIMULADOR_CREDITOS;\r\n CONFIG_SHARED.SEGUROS.ENV = \"QA\";\r\n CONFIG_SHARED.SEGUROS.URL = \"http://qa.widgetseguros.tcfautos.codeicus/sdk/sdk.js\";\r\n }\r\n // Testing 1.\r\n if (HOST === ENVS.TEST1) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"https://test1api.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"https://test1abm.tcfautos.com.ar\";\r\n CONFIG_SHARED.API.IMG_SRC = \"https://test1resources.tcfautos.com.ar\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = \"http://test1.toyotacfa.com.ar/ToyotaAppForm/Login/TCFAutos\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = \"http://test1.toyotacfa.com.ar/ToyotaAppForm/Login/MultiCanal\";\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = \"http://test1.toyotacfa.com.ar/simulador-creditos\";\r\n CONFIG_SHARED.LINKS.REGISTER_URL = \"http://test1.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/registration.xhtml\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://test1.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = \"6Le7VBYUAAAAALIeBbiT2t3IHpYQjSZtVu8o_H7a\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1862730357276773\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"8d6879942780892a21ae81e27a1809fe\";\r\n CONFIG_SHARED.SEGUROS.ENV = \"TEST1\";\r\n CONFIG_SHARED.SEGUROS.URL = \"https://test1widgetseguros.tcfautos.com.ar/sdk/sdk.js\";\r\n }\r\n // Testing2.\r\n if (HOST === ENVS.TEST2) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"https://test2api.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"https://test2abm.tcfautos.com.ar\";\r\n CONFIG_SHARED.API.IMG_SRC = \"https://test2resources.tcfautos.com.ar\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = \"http://test2.toyotacfa.com.ar/ToyotaAppForm/Login/TCFAutos\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = \"http://test2.toyotacfa.com.ar/ToyotaAppForm/Login/MultiCanal\";\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = \"http://test2.toyotacfa.com.ar/simulador-creditos\";\r\n CONFIG_SHARED.LINKS.REGISTER_URL = \"http://test2.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/registration.xhtml\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://test2.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = \"6Le7VBYUAAAAALIeBbiT2t3IHpYQjSZtVu8o_H7a\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1862730357276773\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"8d6879942780892a21ae81e27a1809fe\";\r\n CONFIG_SHARED.SEGUROS.ENV = \"TEST2\";\r\n CONFIG_SHARED.SEGUROS.URL = \"https://test2widgetseguros.tcfautos.com.ar/sdk/sdk.js\";\r\n }\r\n // Testing3.\r\n if (HOST === ENVS.TEST3) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"https://test3api.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"https://test3abm.tcfautos.com.ar\";\r\n CONFIG_SHARED.API.IMG_SRC = \"https://test3resources.tcfautos.com.ar\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = \"http://test3.toyotacfa.com.ar/ToyotaAppForm/Login/TCFAutos\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = \"http://test3.toyotacfa.com.ar/ToyotaAppForm/Login/MultiCanal\";\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = \"http://test3.toyotacfa.com.ar/simulador-creditos\";\r\n CONFIG_SHARED.LINKS.REGISTER_URL = \"http://test3.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/registration.xhtml\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://test3.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = \"6Le7VBYUAAAAALIeBbiT2t3IHpYQjSZtVu8o_H7a\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1862730357276773\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"8d6879942780892a21ae81e27a1809fe\";\r\n CONFIG_SHARED.SEGUROS.ENV = \"TEST3\";\r\n CONFIG_SHARED.SEGUROS.URL = \"https://test3widgetseguros.tcfautos.com.ar/sdk/sdk.js\";\r\n }\r\n // Testing4.\r\n if (HOST === ENVS.TEST4) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"https://test4api.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"https://test4abm.tcfautos.com.ar\";\r\n CONFIG_SHARED.API.IMG_SRC = \"https://test4resources.tcfautos.com.ar\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = \"http://test4.toyotacfa.com.ar/ToyotaAppForm/Login/TCFAutos\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = \"http://test4.toyotacfa.com.ar/ToyotaAppForm/Login/MultiCanal\";\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = \"http://test4.toyotacfa.com.ar/simulador-creditos\";\r\n CONFIG_SHARED.LINKS.REGISTER_URL = \"http://test4.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/registration.xhtml\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://test4.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = \"6Le7VBYUAAAAALIeBbiT2t3IHpYQjSZtVu8o_H7a\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1862730357276773\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"8d6879942780892a21ae81e27a1809fe\";\r\n CONFIG_SHARED.SEGUROS.ENV = \"TEST4\";\r\n CONFIG_SHARED.SEGUROS.URL = \"https://test4widgetseguros.tcfautos.com.ar/sdk/sdk.js\";\r\n }\r\n // TestingQA.\r\n if (HOST === ENVS.TEST_QA) {\r\n CONFIG_SHARED.SHOW_ISSUE_COLLECTOR = true;\r\n CONFIG_SHARED.API.HOST = \"https://testqaapi.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"https://testqaabm.tcfautos.com.ar\";\r\n CONFIG_SHARED.API.IMG_SRC = \"https://testqaresources.tcfautos.com.ar\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN = \"http://testqa.toyotacfa.com.ar/ToyotaAppForm/Login/TCFAutos\";\r\n CONFIG_SHARED.LINKS.ASK_LOAN_COTIZADOR = \"http://testqa.toyotacfa.com.ar/ToyotaAppForm/Login/MultiCanal\";\r\n CONFIG_SHARED.LINKS.SIMULADOR_CREDITOS = \"http://testqa.toyotacfa.com.ar/simulador-creditos\";\r\n CONFIG_SHARED.LINKS.REGISTER_URL = \"http://testqa.toyotacfa.com.ar/toyota-sop-web-cliente/faces/pages/login/registration.xhtml\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://testqa.toyotacfa.com.ar/api/\";\r\n CONFIG_SHARED.GOOGLE.RECAPTCHA_KEY = \"6Le7VBYUAAAAALIeBbiT2t3IHpYQjSZtVu8o_H7a\";\r\n CONFIG_SHARED.FACEBOOK.APP_ID = \"1862730357276773\";\r\n CONFIG_SHARED.FACEBOOK.APP_SECRET = \"8d6879942780892a21ae81e27a1809fe\";\r\n CONFIG_SHARED.SEGUROS.ENV = \"TESTQA\";\r\n CONFIG_SHARED.SEGUROS.URL = \"https://testqawidgetseguros.tcfautos.com.ar/sdk/sdk.js\";\r\n }\r\n // Production.\r\n if (HOST === ENVS.PROD) {\r\n CONFIG_SHARED.API.HOST = \"https://api.tcfautos.com.ar/index.php\";\r\n CONFIG_SHARED.ABM.URL = \"https://abm.tcfautos.com.ar\";\r\n CONFIG_SHARED.API.MOCK = \"https://www.tcfautos.com.ar/mock\";\r\n CONFIG_SHARED.API.IMG_SRC = \"https://resources.tcfautos.com.ar\";\r\n // Analytics' Configuration.\r\n CONFIG_SHARED.GOOGLE.ANALITYCS = \"UA-80208331-1\";\r\n CONFIG_SHARED.TCFA_NEWSLETTER = \"https://www.toyotacfa.com.ar/api/\";\r\n }\r\n return CONFIG_SHARED;\r\n };\r\n TCFAAppConfigService.$inject = moduleConfig.TCFAAppConfigService.deps;\r\n module.factory(moduleConfig.TCFAAppConfigService.name, TCFAAppConfigService);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"termsConditionCheckerModule\",\r\n deps: ['termsConditionsDaoModule'],\r\n termsAndConditionChecker: {\r\n name: \"termsAndConditionChecker\",\r\n deps: ['$uibModal', 'TCFAModalService', 'TermsConditionsDAO', '$q']\r\n }\r\n },\r\n module, termsAndConditionChecker;\r\n module = angular.module('TCFAutos');\r\n termsAndConditionChecker = function ($uibModal, TCFAModalService, TermsConditionsDAO, $q) {\r\n return {\r\n checkAndRequest: function (seccion) {\r\n return $q(function (resolve, reject) {\r\n TermsConditionsDAO.isSeccionApproved({id: seccion}, function (data) {\r\n if (data.aprobado) {\r\n resolve({approved: true});\r\n return;\r\n }\r\n $uibModal.open({\r\n animation: true,\r\n backdrop: 'static',\r\n keyboard: false,\r\n templateUrl: './views/component/modal/approve_term_modal.html',\r\n controller: ['$rootScope', '$scope', '$location', '$route', '$uibModalInstance',\r\n function ($rootScope, $scope, $location, $route, $uibModalInstance) {\r\n $scope.termino = data.termino_condicion;\r\n $scope.fn = {};\r\n $scope.fn.aceptar = function () {\r\n TermsConditionsDAO.approveTerm({id: data.termino_condicion.id}, function () {\r\n $uibModalInstance.dismiss('aceptar');\r\n resolve({approved: true});\r\n });\r\n };\r\n $scope.fn.cancelar = function () {\r\n $uibModalInstance.dismiss('cancelar');\r\n $rootScope.userInfo = {};\r\n reject({approved: false});\r\n $location.path('/').search({});\r\n $route.reload();\r\n };\r\n }\r\n ],\r\n controllerAs: 'ctrl',\r\n appendTo: angular.element('#modalComponent'),\r\n bindToController: true\r\n });\r\n },\r\n function (error) {\r\n console.log(error);\r\n TCFAModalService.showError({\r\n error: {\r\n showModal: true,\r\n message: \"No se han cargado los términos y condiciones por favor intente mas tarde.\",\r\n title: \"¡Ha ocurrido un error!\"\r\n }\r\n });\r\n });\r\n });\r\n }\r\n };\r\n };\r\n termsAndConditionChecker.$inject = moduleConfig.termsAndConditionChecker.deps;\r\n module.factory(moduleConfig.termsAndConditionChecker.name, termsAndConditionChecker);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"utilsModule\",\r\n deps: [],\r\n UtilsHelper: {\r\n name: \"UtilsHelper\",\r\n deps: ['$window', '$location']\r\n }\r\n },\r\n module, UtilsHelper;\r\n module = angular.module('TCFAutos');\r\n UtilsHelper = function ($window, $location) {\r\n return {\r\n idCheckerWithTypeCoercion: function (id1, id2) {\r\n return parseInt(id1) === parseInt(id2);\r\n },\r\n isMobile: (function () {\r\n var mobileObj = {\r\n windows: function () {\r\n return /IEMobile/i.test($window.navigator.userAgent);\r\n },\r\n android: function () {\r\n return /Android/i.test($window.navigator.userAgent);\r\n },\r\n blackBerry: function () {\r\n return /BlackBerry/i.test($window.navigator.userAgent);\r\n },\r\n iOS: function () {\r\n return /iPhone|iPad|iPod/i.test($window.navigator.userAgent);\r\n },\r\n any: function () {\r\n return (mobileObj.android() || mobileObj.blackBerry() || mobileObj.iOS() || mobileObj.windows());\r\n }\r\n };\r\n return mobileObj;\r\n }()),\r\n isOldIEVersion: function () {\r\n return /MSIE ([0-9]{1,}[\\.0-9]{0,})/i.test($window.navigator.userAgent) || new RegExp(\"Trident/.*rv:([0-9]{1,}[\\.0-9]{0,})\").test($window.navigator.userAgent);\r\n },\r\n getParamFromURL: function (paramName) {\r\n var searchStr = $window.location.search.substring(1);\r\n var keyValues = searchStr.split('&');\r\n for (var i = 0; i < keyValues.length; i++) {\r\n var split = keyValues[i].split('=');\r\n if (split[0] === paramName) {\r\n return decodeURIComponent(split[1]);\r\n }\r\n }\r\n return null;\r\n },\r\n getBaseURI: function () {\r\n var baseURI = $location.absUrl();\r\n \r\n // Remove the # and ? substrings\r\n baseURI = baseURI.replace(/(#.*|\\?.*)/g, \"\");\r\n \r\n // Remove the trailing slash\r\n baseURI = baseURI.replace(/\\/$/g, \"\");\r\n \r\n return baseURI;\r\n }\r\n };\r\n };\r\n UtilsHelper.$inject = moduleConfig.UtilsHelper.deps;\r\n module.factory(moduleConfig.UtilsHelper.name, UtilsHelper);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"verificationCodeHandlerModule\",\r\n deps: ['TCFAutos.services.UserDAOService'],\r\n verificationCodeHandler: {\r\n name: \"verificationCodeHandler\",\r\n deps: ['$uibModal', '$window', '$q', 'TCFAModalService', 'UserDAO', 'usSpinnerService']\r\n }\r\n },\r\n module, verificationCodeHandler;\r\n module = angular.module('TCFAutos');\r\n verificationCodeHandler = function ($uibModal, $window, $q, TCFAModalService, UserDAO, usSpinnerService) {\r\n return {\r\n showVerificationModal: function (scope) {\r\n return $q(function (resolve, reject) {\r\n $uibModal.open({\r\n animation: true,\r\n backdrop: 'static',\r\n keyboard: false,\r\n templateUrl: \"./views/component/modal/phone_verify_modal.html\",\r\n windowClass: \"tcfa-modal tcfa-phone-modal\",\r\n controller: [\"$scope\", \"$uibModalInstance\",\r\n function ($scope, $uibModalInstance) {\r\n var vm = this;\r\n vm.info = scope,\r\n $scope.verificationCode = \"\",\r\n $scope.codeSent = false,\r\n $scope.verificationId = null,\r\n $scope.resendEnabled = false,\r\n $scope.attempts = 0;\r\n\r\n $scope.showErrorModal = function (message) {\r\n return TCFAModalService.showError({\r\n \"error\": {\r\n \"showModal\": true,\r\n \"title\": \"Error al verificar teléfono\",\r\n \"message\": message\r\n }\r\n });\r\n };\r\n\r\n $scope.sendCode = function () {\r\n usSpinnerService.spin(\"verify_code_spinner\");\r\n\r\n UserDAO.sendVerificationCode({\r\n email: vm.info.email,\r\n telefono: vm.info.cellphone\r\n }, function (response) {\r\n usSpinnerService.stop(\"verify_code_spinner\");\r\n $scope.codeSent = true;\r\n $scope.verificationId = response.data.id;\r\n \r\n $window.setTimeout(function () {\r\n $scope.resendEnabled = true;\r\n }, 1000 * 60 * 5);\r\n }, function (error) {\r\n $window.console.debug(\"Error al enviar SMS: \", error.message);\r\n usSpinnerService.stop(\"verify_code_spinner\");\r\n $uibModalInstance.dismiss(\"cancel\");\r\n \r\n reject({\"sent\": false, \"verified\": false, \"error\": error});\r\n });\r\n };\r\n\r\n $scope.resendCode = function () {\r\n if ($scope.resendEnabled) {\r\n $scope.resendEnabled = false;\r\n $scope.sendCode();\r\n } else {\r\n TCFAModalService.showWarning({\r\n \"error\": {\r\n \"showModal\": true,\r\n \"title\": \"Reenviar código de verificación\",\r\n \"message\": \"Debe esperar 5 minutos entre cada envío para solicitar un nuevo código.\"\r\n }\r\n });\r\n }\r\n };\r\n\r\n $scope.close = function () {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n\r\n if (vm.info.closed && angular.isFunction(vm.info.closed)) {\r\n vm.info.closed();\r\n }\r\n };\r\n\r\n $scope.onSubmit = function () {\r\n if ($scope.verificationCode.trim().length != 4) {\r\n $scope.showErrorModal(\"Debe ingresar un código de verificación válido.\");\r\n return false;\r\n }\r\n\r\n $scope.attempts++;\r\n usSpinnerService.spin(\"verify_code_spinner\");\r\n\r\n UserDAO.checkVerificationCode({\r\n sms_id: $scope.verificationId,\r\n verification_code: $scope.verificationCode\r\n }, function (response) {\r\n usSpinnerService.stop(\"verify_code_spinner\");\r\n\r\n if (response.data.verified) {\r\n $uibModalInstance.dismiss(\"cancel\");\r\n resolve({ \"sent\": true, \"verified\": true });\r\n } else if ($scope.attempts == 3) {\r\n $scope.showErrorModal(\"Código de verificación incorrecto. Se ha alcanzado el máximo de intentos, \" +\r\n \"en breve recibirá un nuevo código de verificación.\");\r\n $scope.attempts = 0;\r\n $scope.verificationCode = \"\";\r\n $scope.sendCode();\r\n } else {\r\n $scope.showErrorModal(\"Código de verificación incorrecto.\");\r\n }\r\n }, function (error) {\r\n $window.console.debug(\"Error al verificar SMS:\", error);\r\n usSpinnerService.stop(\"verify_code_spinner\");\r\n $uibModalInstance.dismiss(\"cancel\");\r\n\r\n reject({ \"sent\": true, \"verified\": false, \"error\": error });\r\n });\r\n };\r\n\r\n $scope.sendCode();\r\n }\r\n ],\r\n controllerAs: \"ctrl\",\r\n appendTo: angular.element(\"#modalComponent\"),\r\n bindToController: true\r\n });\r\n });\r\n }\r\n };\r\n };\r\n verificationCodeHandler.$inject = moduleConfig.verificationCodeHandler.deps;\r\n module.factory(moduleConfig.verificationCodeHandler.name, verificationCodeHandler);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.ActionDAO\",\r\n deps: [\"ngResource\"],\r\n ActionDAO: {\r\n name: \"ActionDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, ActionDAO;\r\n module = angular.module(\"TCFAutos\");\r\n ActionDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/action/\", {}, {\r\n createAction: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/action/\",\r\n transformRequest: function(data) {\r\n data.tipo_aplicacion_id = 1;\r\n return JSON.stringify(data);\r\n }\r\n },\r\n });\r\n };\r\n ActionDAO.$inject = moduleConfig.ActionDAO.deps;\r\n module.factory(moduleConfig.ActionDAO.name, ActionDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"authDaoModule\",\r\n deps: [\"ngResource\"],\r\n AuthDAO: {\r\n name: \"AuthDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, AuthDAO;\r\n module = angular.module(\"TCFAutos\");\r\n AuthDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/auth/\", {}, {\r\n login: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auth/login/\"\r\n },\r\n loginConcesionario: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auth/concesionario/login\"\r\n },\r\n navigateAs: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auth/navigateas/\"\r\n },\r\n validateSession: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auth/validateSession/\"\r\n },\r\n ValidateSessionTasa: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/toyotausados/abm/eval/tasa/\"\r\n },\r\n passwordReset: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/user/password/reset/\"\r\n },\r\n passwordChange: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/user/password/change/\"\r\n }\r\n });\r\n };\r\n AuthDAO.$inject = moduleConfig.AuthDAO.deps;\r\n module.factory(moduleConfig.AuthDAO.name, AuthDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.BannerDAO\",\r\n deps: [\"ngResource\", \"ngFileUpload\"],\r\n BannerDAO: {\r\n name: \"BannerDAO\",\r\n deps: [\"$resource\", \"$q\", \"Upload\", \"CacheFactory\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, BannerDAO,\r\n _SECCION_BANNERS_URL_PATH_SUFFIX = \"/seccionbanner/\";\r\n module = angular.module(\"TCFAutos\");\r\n BannerDAO = function ($resource, $q, Upload, CacheFactory, TCFAAppConfigService) {\r\n var cacheBanners = CacheFactory.get(\"cacheBanners\");\r\n if (!cacheBanners) {\r\n cacheBanners = CacheFactory(\"cacheBanners\", {\r\n maxAge: 1800000, // =(30m * 60s * 1000ms).\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\" // Delete expired items.\r\n });\r\n }\r\n return $resource(TCFAAppConfigService.API.HOST + _SECCION_BANNERS_URL_PATH_SUFFIX, {}, {\r\n getPublicatedBanners: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/seccionbanner/publicated/\",\r\n cache: cacheBanners\r\n },\r\n getBanner: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/seccionbanner/:id/\",\r\n params: {id: \"@id\"}\r\n }\r\n });\r\n };\r\n BannerDAO.$inject = moduleConfig.BannerDAO.deps;\r\n module.factory(moduleConfig.BannerDAO.name, BannerDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"carDaoModule\",\r\n deps: [\"ngResource\", \"angular-cache\"],\r\n CarDAO: {\r\n name: \"CarDAO\",\r\n deps: [\"$window\", \"$http\", \"$resource\", \"TCFAAppConfigService\", \"CacheFactory\"]\r\n }\r\n },\r\n module, CarDAO;\r\n module = angular.module(\"TCFAutos\");\r\n CarDAO = function ($window, $http, $resource, TCFAAppConfigService, CacheFactory) {\r\n var __cacheCuotasData = CacheFactory.get(\"cacheCuotasData\");\r\n if (!__cacheCuotasData) {\r\n __cacheCuotasData = CacheFactory(\"cacheCuotasData\", {\r\n maxAge: (8 * 60 * 60 * 1000), // MS.\r\n cacheFlushInterval: (24 * 60 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n return $resource(TCFAAppConfigService.API.HOST + '/auto/', {}, {\r\n getAutoById: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/auto/:id/',\r\n params: {id: '@id'}\r\n },\r\n getOutstandingBrands: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/marca/destacadas/'\r\n },\r\n getModelsByBrand: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/modelo/:id/',\r\n params: {id: '@id'}\r\n },\r\n getVersionByModel: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/version/:id/',\r\n params: {id: '@id'}\r\n },\r\n searchCarByTitle: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/auto/search/'\r\n },\r\n autocompleteSearch: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/opciones_autocomplete/'\r\n },\r\n getSearchFilters: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/auto/search/filters/'\r\n },\r\n getCuotas: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/auto/:id/cuotas/',\r\n params: {id: '@id'}\r\n },\r\n getRelatedByDistributor: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/concesionario/:concesionario/related/',\r\n params: {concesionario: '@concesionario'}\r\n },\r\n getDatosCalculoCuotas: {\r\n method: 'GET',\r\n url: TCFAAppConfigService.API.HOST + '/cotizador/posicion_fiscal/',\r\n cache: __cacheCuotasData\r\n }\r\n });\r\n };\r\n CarDAO.$inject = moduleConfig.CarDAO.deps;\r\n module.factory(moduleConfig.CarDAO.name, CarDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.ConcesionariosDAO\",\r\n deps: [\"angular-cache\", \"ngFileUpload\"],\r\n ConcesionariosDAO: {\r\n name: \"ConcesionariosDAO\",\r\n deps: [\"$resource\", \"CacheFactory\", \"Upload\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, ConcesionariosDAO;\r\n module = angular.module(\"TCFAutos\");\r\n ConcesionariosDAO = function ($resource, CacheFactory, Upload, TCFAAppConfigService) {\r\n var baseURL = TCFAAppConfigService.API.HOST + \"/concesionario\",\r\n __cacheConcesionarios = CacheFactory.get(\"cacheConcesionarios\");\r\n if (!__cacheConcesionarios) {\r\n __cacheConcesionarios = CacheFactory(\"cacheConcesionarios\", {\r\n maxAge: (24 * 60 * 60 * 1000), // MS.\r\n cacheFlushInterval: (3 * 24 * 60 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n return $resource(baseURL, {id: \"@id\"}, {\r\n get: {\r\n method: \"GET\",\r\n params: {},\r\n transformResponse: function (response) {\r\n return (angular.fromJson(response)).data || [];\r\n },\r\n isArray: true,\r\n cache: __cacheConcesionarios\r\n },\r\n getDestacados: {\r\n method: \"GET\",\r\n url: baseURL + \"/map/:cuit\",\r\n transformResponse: function (response) {\r\n var data = angular.fromJson(response);\r\n return data.data;\r\n },\r\n isArray: true\r\n }\r\n });\r\n };\r\n ConcesionariosDAO.$inject = moduleConfig.ConcesionariosDAO.deps;\r\n module.factory(moduleConfig.ConcesionariosDAO.name, ConcesionariosDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"contactsDaoModule\",\r\n deps: [\"ngResource\"],\r\n ContactsDAO: {\r\n name: \"ContactsDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, ContactsDAO;\r\n module = angular.module(\"TCFAutos\");\r\n ContactsDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/consulta\", {}, {\r\n consultaAuto: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auto/:auto_id/consulta/\",\r\n params: {auto_id: \"@auto_id\"}\r\n },\r\n confirmarConsulta: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/consulta/confirmar/\"\r\n }\r\n });\r\n };\r\n ContactsDAO.$inject = moduleConfig.ContactsDAO.deps;\r\n module.factory(moduleConfig.ContactsDAO.name, ContactsDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.CotizadorDAO\",\r\n deps: [\"ngResource\"],\r\n CotizadorDAO: {\r\n name: \"CotizadorDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\", \"CacheFactory\"]\r\n }\r\n },\r\n module, CotizadorDAO;\r\n module = angular.module(\"TCFAutos\");\r\n CotizadorDAO = function ($resource, TCFAAppConfigService, CacheFactory) {\r\n var __base_url = TCFAAppConfigService.API.HOST + \"/cotizador/\",\r\n __cacheCampaign = CacheFactory.get(\"cacheCampaign\"),\r\n __cacheVehicleLoanInfoTCFAutos = CacheFactory.get(\"cacheVehicleLoanInfoTCFAutos\"),\r\n __cacheAllTooltips = CacheFactory.get(\"cacheAllTooltips\"),\r\n __cacheAllVehicleLogos = CacheFactory.get(\"cacheAllVehicleLogos\"),\r\n __cacheVehicleImage = CacheFactory.get(\"cacheVehicleImage\"),\r\n __cacheAllVehicleImages = CacheFactory.get(\"cacheAllVehicleImages\"),\r\n __cacheCanalAnonimo = CacheFactory.get(\"cacheCanalAnonimo\"),\r\n __cacheAllSections = CacheFactory.get(\"cacheAllSections\");\r\n if (!__cacheCampaign) {\r\n __cacheCampaign = CacheFactory(\"cacheCampaign\", {\r\n maxAge: (2 * 60 * 1000), // MS.\r\n cacheFlushInterval: (6 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\"\r\n });\r\n }\r\n if (!__cacheVehicleLoanInfoTCFAutos) {\r\n __cacheVehicleLoanInfoTCFAutos = CacheFactory(\"cacheVehicleLoanInfoTCFAutos\", {\r\n maxAge: (10 * 60 * 1000), // MS.\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\"\r\n });\r\n }\r\n if (!__cacheAllTooltips) {\r\n __cacheAllTooltips = CacheFactory(\"cacheAllTooltips\", {\r\n maxAge: (8 * 60 * 60 * 1000), // MS.\r\n cacheFlushInterval: (3 * 24 * 60 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n if (!__cacheAllVehicleLogos) {\r\n __cacheAllVehicleLogos = CacheFactory(\"cacheAllVehicleLogos\", {\r\n maxAge: (10 * 60 * 1000), // MS.\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n if (!__cacheVehicleImage) {\r\n __cacheVehicleImage = CacheFactory(\"cacheVehicleImage\", {\r\n maxAge: (10 * 60 * 1000), // MS.\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\"\r\n });\r\n }\r\n if (!__cacheAllVehicleImages) {\r\n __cacheAllVehicleImages = CacheFactory(\"cacheAllVehicleImages\", {\r\n maxAge: (10 * 60 * 1000), // MS.\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n if (!__cacheCanalAnonimo) {\r\n __cacheCanalAnonimo = CacheFactory(\"cacheCanalAnonimo\", {\r\n maxAge: (2 * 60 * 1000), // MS.\r\n cacheFlushInterval: (6 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\"\r\n });\r\n }\r\n if (!__cacheAllSections) {\r\n __cacheAllSections = CacheFactory(\"cacheAllSections\", {\r\n maxAge: (16 * 60 * 60 * 1000), // MS.\r\n cacheFlushInterval: (2 * 24 * 60 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\",\r\n storageMode: \"localStorage\"\r\n });\r\n }\r\n return $resource(__base_url, {}, {\r\n getCampaign: {\r\n method: \"GET\",\r\n url: __base_url + \"campania/:id/\",\r\n cache: __cacheCampaign\r\n },\r\n getVehicleLoanInfoTCFAutos: {\r\n method: \"POST\",\r\n url: __base_url + \"auto_tcfautos/\",\r\n cache: __cacheVehicleLoanInfoTCFAutos,\r\n timeout: (3 * 1000 * 60)\r\n },\r\n newMessage: {\r\n method: \"POST\",\r\n url: __base_url + \"consulta/\"\r\n },\r\n getAllTooltips: {\r\n method: \"GET\",\r\n url: __base_url + \"tooltip/\",\r\n cache: __cacheAllTooltips,\r\n transformResponse: function (response) {\r\n var __json_response = angular.fromJson(response);\r\n if (__json_response && __json_response.data &&\r\n (!!__json_response.data.length || (__json_response.data.length === 0))) {\r\n return __json_response.data;\r\n }\r\n return [];\r\n },\r\n isArray: true\r\n },\r\n cotizar: {\r\n method: \"POST\",\r\n url: __base_url + \"auto/cotizar\"\r\n },\r\n cuadroDeMarcha: {\r\n method: \"POST\",\r\n url: __base_url + \"auto/cuadro_de_marcha\"\r\n },\r\n pdf: {\r\n method: \"POST\",\r\n url: __base_url + \"pdf\"\r\n },\r\n shareWithFriends: {\r\n method: \"POST\",\r\n url: __base_url + \"compartir/amigo\"\r\n },\r\n favoriteDelete: {\r\n method: \"DELETE\",\r\n url: __base_url + \"favorito\"\r\n },\r\n favoriteAdd: {\r\n method: \"POST\",\r\n url: __base_url + \"favorito\"\r\n },\r\n favoriteCheck: {\r\n method: \"POST\",\r\n url: __base_url + \"favorito/check\"\r\n },\r\n favoriteGetAll: {\r\n method: \"GET\",\r\n url: __base_url + \"favorito\"\r\n },\r\n getAllVehicleLogos: {\r\n method: \"POST\",\r\n url: __base_url + \"imagen_logo_unidad/\",\r\n cache: __cacheAllVehicleLogos,\r\n transformResponse: function (response) {\r\n var __json_response = angular.fromJson(response);\r\n if (__json_response && __json_response.data &&\r\n (!!__json_response.data.length || (__json_response.data.length === 0))) {\r\n return __json_response.data;\r\n }\r\n return [];\r\n },\r\n isArray: true\r\n },\r\n getAllVehicleImages: {\r\n method: \"POST\",\r\n url: __base_url + \"imagen_unidad/\",\r\n cache: __cacheAllVehicleImages,\r\n transformResponse: function (response) {\r\n var __json_response = angular.fromJson(response);\r\n if (__json_response && __json_response.data &&\r\n (!!__json_response.data.length || (__json_response.data.length === 0))) {\r\n return __json_response.data;\r\n }\r\n return [];\r\n },\r\n isArray: true\r\n },\r\n getCanalAnonimo: {\r\n method: \"GET\",\r\n url: __base_url + \"canal_anonimo/:cuit\",\r\n cache: __cacheCanalAnonimo\r\n },\r\n dateroLog: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/datero/log\"\r\n },\r\n getAllSections: {\r\n method: \"GET\",\r\n url: __base_url + \"seccion/\",\r\n cache: __cacheAllSections,\r\n transformResponse: function (response) {\r\n var __json_response = angular.fromJson(response);\r\n if (__json_response && __json_response.data &&\r\n (!!__json_response.data.length || (__json_response.data.length === 0))) {\r\n return __json_response.data;\r\n }\r\n return [];\r\n },\r\n isArray: true\r\n },\r\n shareWithFriendOnFacebook: {\r\n method: \"POST\",\r\n url: __base_url + \"compartir/facebook\"\r\n },\r\n getVehicleVersionImage: {\r\n method: \"GET\",\r\n url: __base_url + \"imagen_logo_unidad_version/:brand_id/:model_id/:version_id\",\r\n cache: __cacheVehicleImage\r\n },\r\n getVersionXModelo: {\r\n method: \"GET\",\r\n url: __base_url + \"vehiculo/versiones\"\r\n },\r\n getPlazoDetalle: {\r\n method: \"GET\",\r\n url: __base_url + \"plazos/:plazo/detalle\"\r\n },\r\n getMarcaModeloByTipo: {\r\n method: \"GET\",\r\n url: __base_url + \"vehiculo/marca_modelo\"\r\n },\r\n getPlazos: {\r\n method: \"GET\",\r\n url: __base_url + \"plazos\"\r\n }\r\n });\r\n };\r\n CotizadorDAO.$inject = moduleConfig.CotizadorDAO.deps;\r\n module.factory(moduleConfig.CotizadorDAO.name, CotizadorDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.DestacadosDAO\",\r\n deps: [\"TCFAutos.services.PageNavigationService\"],\r\n DestacadosDAO: {\r\n name: \"DestacadosDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\", \"CacheFactory\"]\r\n }\r\n },\r\n module, DestacadosDAO;\r\n module = angular.module(\"TCFAutos\");\r\n DestacadosDAO = function ($resource, TCFAAppConfigService, CacheFactory) {\r\n var cacheDestacados = CacheFactory.get(\"cacheDestacados\");\r\n if (!cacheDestacados) {\r\n cacheDestacados = CacheFactory(\"cacheDestacados\", {\r\n maxAge: (10 * 60 * 1000), // MS.\r\n cacheFlushInterval: (30 * 60 * 1000), // MS.\r\n deleteOnExpire: \"aggressive\"\r\n });\r\n }\r\n return $resource(TCFAAppConfigService.API.HOST + \"/auto/destacados/\", {}, {\r\n getDestacados: {\r\n method: \"GET\",\r\n params: {},\r\n url: TCFAAppConfigService.API.HOST + \"/auto/destacados/\",\r\n isArray: false,\r\n cache: cacheDestacados\r\n },\r\n getRelacionados: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/auto/relacionados/\",\r\n params: {},\r\n isArray: false\r\n },\r\n getPublicacionPorToken: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/publicacion/activacion/\",\r\n params: {},\r\n isArray: false\r\n },\r\n activarPublicacion: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/publicacion/activacion/\",\r\n params: {},\r\n isArray: false\r\n }\r\n });\r\n };\r\n DestacadosDAO.$inject = moduleConfig.DestacadosDAO.deps;\r\n module.factory(moduleConfig.DestacadosDAO.name, DestacadosDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"favoritoDaoModule\",\r\n deps: [\"ngResource\"],\r\n FavoritoDAO: {\r\n name: \"FavoritoDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, FavoritoDAO;\r\n module = angular.module(\"TCFAutos\");\r\n FavoritoDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/favorito\", {}, {\r\n getAll: {method: \"GET\"},\r\n delete: {\r\n method: \"DELETE\",\r\n url: TCFAAppConfigService.API.HOST + \"/favorito/:id_publicacion/\"\r\n },\r\n isFavorito: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/favorito/check/:id_publicacion/\"\r\n }\r\n });\r\n };\r\n FavoritoDAO.$inject = moduleConfig.FavoritoDAO.deps;\r\n module.factory(moduleConfig.FavoritoDAO.name, FavoritoDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"locationDaoModule\",\r\n deps: [],\r\n LocationDAO: {\r\n name: \"LocationDAO\",\r\n deps: [\"$window\", \"$http\", \"DependencyInjectionService\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, LocationDAO;\r\n module = angular.module(\"TCFAutos\");\r\n LocationDAO = function ($window, $http, DependencyInjectionService, TCFAAppConfigService) {\r\n return {\r\n getAllProvincias: function (callback) {\r\n $http.get(TCFAAppConfigService.API.HOST + \"/provincia\", {method: \"GET\"}).success(function (data) {\r\n callback(data.data);\r\n });\r\n },\r\n apiGoogleMapsLocalidades: function (address, callback) {\r\n var doCall = function () {\r\n var returnData = [],\r\n geocoder = new $window.google.maps.Geocoder();\r\n geocoder.geocode({\r\n address: address,\r\n componentRestrictions: {country: \"AR\"}\r\n }, function (data, status) {\r\n var i, m;\r\n if (status === $window.google.maps.GeocoderStatus.OK) {\r\n m = data.length;\r\n for (i = 0; i < m; i = i + 1) {\r\n returnData[i] = {\r\n id: data[i].place_id,\r\n formatted_address: data[i].formatted_address,\r\n location: {\r\n lat: data[i].geometry.location.lat(),\r\n lng: data[i].geometry.location.lng()\r\n },\r\n address_components: data[i].address_components\r\n };\r\n }\r\n callback(returnData);\r\n } else {\r\n $window.console.debug(\"Geocode was not successful for the following reason: \" + status);\r\n $window.alert(\"No se encontraron resultados para la ubicación ingresada. Por favor, ingrese una nueva búsqueda.\");\r\n }\r\n });\r\n };\r\n DependencyInjectionService.loadApi(\"GoogleMaps\").then(function () {\r\n doCall();\r\n }, function () {\r\n $window.console.log(\"Error al cargar la api de GMaps\");\r\n });\r\n }\r\n };\r\n };\r\n LocationDAO.$inject = moduleConfig.LocationDAO.deps;\r\n module.factory(moduleConfig.LocationDAO.name, LocationDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.PublicationDAO\",\r\n deps: [\"ngResource\"],\r\n PublicationDAO: {\r\n name: \"PublicationDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, PublicationDAO;\r\n module = angular.module(\"TCFAutos\");\r\n PublicationDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/publicacion\", {}, {\r\n get: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/calendariopublicacion/\"\r\n },\r\n agregarAFavoritos: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/publicacion/:pubId/favorito/\",\r\n params: {pubId: \"@pubId\"}\r\n },\r\n sharePublication: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auto/:publicacion_id/compartir/amigo\",\r\n params: {publicacion_id: \"@publicacion_id\"}\r\n },\r\n sharePublicationByFacebook: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/auto/:publicacion_id/compartir/facebook\",\r\n params: {publicacion_id: \"@publicacion_id\"}\r\n }\r\n });\r\n };\r\n PublicationDAO.$inject = moduleConfig.PublicationDAO.deps;\r\n module.factory(moduleConfig.PublicationDAO.name, PublicationDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.SessionDAO\",\r\n deps: [\"ngResource\"],\r\n SessionDAO: {\r\n name: \"SessionDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, SessionDAO;\r\n module = angular.module(\"TCFAutos\");\r\n SessionDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/session/\", {}, {\r\n createSession: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/session/\",\r\n avoidInterceptor: true,\r\n transformRequest: function(data) {\r\n data.tipo_aplicacion_id = 1;\r\n return JSON.stringify(data);\r\n }\r\n },\r\n updateSession: {\r\n method: \"PATCH\",\r\n url: TCFAAppConfigService.API.HOST + \"/session/\",\r\n transformRequest: function(data) {\r\n data.tipo_aplicacion_id = 1;\r\n return JSON.stringify(data);\r\n }\r\n }\r\n });\r\n };\r\n SessionDAO.$inject = moduleConfig.SessionDAO.deps;\r\n module.factory(moduleConfig.SessionDAO.name, SessionDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"socialModule\",\r\n deps: [\"ngResource\", \"TCFAutos.services.PageNavigationService\", \"TCFAutos.services.NotificationsService\"],\r\n AuthSocial: {\r\n name: \"AuthSocial\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, AuthSocial;\r\n module = angular.module(\"TCFAutos\");\r\n AuthSocial = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/auth/social/login\", {}, {login: {method: \"POST\"}});\r\n };\r\n AuthSocial.$inject = moduleConfig.AuthSocial.deps;\r\n module.factory(moduleConfig.AuthSocial.name, AuthSocial);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.StatsDAO\",\r\n deps: [\"ngResource\"],\r\n StatsDAO: {\r\n name: \"StatsDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, StatsDAO;\r\n module = angular.module(\"TCFAutos\");\r\n StatsDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.API.HOST + \"/stats/\", {}, {\r\n postPediTuPrestamo: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/stats/ask/loan/\"\r\n }\r\n });\r\n };\r\n StatsDAO.$inject = moduleConfig.StatsDAO.deps;\r\n module.factory(moduleConfig.StatsDAO.name, StatsDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.TCFANewsletterDAO\",\r\n deps: [\"ngResource\"],\r\n TCFANewsletterDAO: {\r\n name: \"TCFANewsletterDAO\",\r\n deps: [\"$resource\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, TCFANewsletterDAO;\r\n module = angular.module(\"TCFAutos\");\r\n TCFANewsletterDAO = function ($resource, TCFAAppConfigService) {\r\n return $resource(TCFAAppConfigService.TCFA_NEWSLETTER, {}, {\r\n adherir: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.TCFA_NEWSLETTER + \"Adherir\"\r\n },\r\n desadherir: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.TCFA_NEWSLETTER + \"Desadherir\"\r\n },\r\n verificacionDeEmail: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.TCFA_NEWSLETTER + \"VerificacionEmail\"\r\n }\r\n });\r\n };\r\n TCFANewsletterDAO.$inject = moduleConfig.TCFANewsletterDAO.deps;\r\n module.factory(moduleConfig.TCFANewsletterDAO.name, TCFANewsletterDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"termsConditionsDaoModule\",\r\n deps: [],\r\n TermsConditionsDAO: {\r\n name: \"TermsConditionsDAO\",\r\n deps: [\"$window\", \"$http\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, TermsConditionsDAO;\r\n module = angular.module(\"TCFAutos\");\r\n TermsConditionsDAO = function ($window, $http, TCFAAppConfigService) {\r\n return {\r\n isSeccionApproved: function (sendData, callback, callbackError) {\r\n $http.get(TCFAAppConfigService.API.HOST + \"/seccion/\" + sendData.id + \"/isapproved/\", sendData).success(function (data/*, status*/) {\r\n callback(data.data);\r\n }).error(function (error) {\r\n if (callbackError) {\r\n callbackError(error);\r\n }\r\n });\r\n },\r\n approveTerm: function (sendData, callback) {\r\n $http.post(TCFAAppConfigService.API.HOST + \"/terminocondicion/\" + sendData.id + \"/\", sendData).success(function (data/*, status*/) {\r\n callback(data.data);\r\n });\r\n },\r\n getSeccion: function (id, callback, callbackError) {\r\n $http.get(TCFAAppConfigService.API.HOST + \"/seccion/\" + id + \"/\").success(function (data/*, status*/) {\r\n callback(data.data);\r\n }).error(function () {\r\n if (callbackError) {\r\n callbackError();\r\n }\r\n });\r\n }\r\n };\r\n };\r\n TermsConditionsDAO.$inject = moduleConfig.TermsConditionsDAO.deps;\r\n module.factory(moduleConfig.TermsConditionsDAO.name, TermsConditionsDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.services.UserDAOService\",\r\n deps: [\"ngResource\", \"ngFileUpload\"],\r\n UserDAO: {\r\n name: \"UserDAO\",\r\n deps: [\"$resource\", \"$q\", \"Upload\", \"TCFAAppConfigService\"]\r\n }\r\n },\r\n module, UserDAO;\r\n module = angular.module(\"TCFAutos\");\r\n UserDAO = function ($resource, $q, Upload, TCFAAppConfigService) {\r\n var resource = $resource(TCFAAppConfigService.API.HOST + \"/usuario/desuscribir/\", {}, {\r\n unsubcribeCliente: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/desuscribir/\"\r\n },\r\n checkUserName: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/check/email/\"\r\n },\r\n checkSMTPEmail: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/check/smtpemail/\"\r\n },\r\n registerClient: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/register\",\r\n params: {data: \"@data\"}\r\n },\r\n confirmClient: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/confirm\",\r\n params: {token: \"@token\"}\r\n },\r\n confirmEmailAlternativo: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/emailalternativo/confirm\",\r\n params: {token: \"@token\"}\r\n },\r\n patchProfile: {\r\n method: \"PATCH\",\r\n url: TCFAAppConfigService.API.HOST + \"/user/me/\"\r\n },\r\n patchProfileTasa: {\r\n method: \"PATCH\",\r\n url: TCFAAppConfigService.API.HOST + \"/toyotausados/usuario/profile/\"\r\n },\r\n getMensajes: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/user/consulta/\"\r\n },\r\n mensajeVisto: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/respuesta/:id/vista/\",\r\n params: {id: \"@id\"}\r\n },\r\n getMensajesSinLeer: {\r\n method: \"GET\",\r\n url: TCFAAppConfigService.API.HOST + \"/user/messages/\"\r\n },\r\n validatePhone: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/telefono/validar/\"\r\n },\r\n sendVerificationCode: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/telefono/verification/send/\"\r\n },\r\n checkVerificationCode: {\r\n method: \"POST\",\r\n url: TCFAAppConfigService.API.HOST + \"/usuario/telefono/verification/check/\"\r\n }\r\n });\r\n resource.postProfileImage = function (image) {\r\n var defered = $q.defer();\r\n Upload.upload({\r\n url: TCFAAppConfigService.API.HOST + \"/user/me/\",\r\n data: {profile_image: image}, //pass file as data, should be user ng-model\r\n timeout: 1800000\r\n }).then(function (resp) { //upload function returns a promise\r\n defered.resolve(resp);\r\n }, function (resp) { //catch error\r\n defered.reject(resp);\r\n }, function (evt) {\r\n window.console.log(\"Img Upl %\" + evt);\r\n });\r\n return defered.promise;\r\n };\r\n return resource;\r\n };\r\n UserDAO.$inject = moduleConfig.UserDAO.deps;\r\n module.factory(moduleConfig.UserDAO.name, UserDAO);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.directives.DefaultImage\",\r\n deps: [],\r\n defImgSrc: {\r\n name: \"defImgSrc\",\r\n deps: []\r\n }\r\n },\r\n module, defImgSrc;\r\n module = angular.module(\"TCFAutos\");\r\n defImgSrc = function () {\r\n return {\r\n link: function (scope, element, attrs) {\r\n element.bind(\"error\", function () {\r\n if (attrs.src !== attrs.defImgSrc) {\r\n attrs.$set(\"src\", attrs.defImgSrc);\r\n }\r\n });\r\n }\r\n };\r\n };\r\n defImgSrc.$inject = moduleConfig.defImgSrc.deps;\r\n module.directive(moduleConfig.defImgSrc.name, defImgSrc);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.directives.BottomBar\",\r\n deps: [],\r\n TcfaBottomBarController: {\r\n name: \"TcfaBottomBarController\",\r\n deps: [\"$scope\"]\r\n },\r\n tcfaBottomBar: {\r\n name: \"tcfaBottomBar\",\r\n deps: []\r\n }\r\n },\r\n module, TcfaBottomBarController, tcfaBottomBar;\r\n module = angular.module(\"TCFAutos\");\r\n TcfaBottomBarController = function ($scope) {\r\n var vm = this;\r\n vm.close = function () {\r\n $scope.showBottomBar = false;\r\n };\r\n };\r\n tcfaBottomBar = function () {\r\n return {\r\n restrict: \"E\",\r\n transclude: true,\r\n scope: {showBottomBar: \"=showBottomBar\"},\r\n template: \"
\",\r\n controller: \"TcfaBottomBarController\",\r\n controllerAs: \"ctrl\"\r\n };\r\n };\r\n TcfaBottomBarController.$inject = moduleConfig.TcfaBottomBarController.deps;\r\n module.controller(moduleConfig.TcfaBottomBarController.name, TcfaBottomBarController);\r\n tcfaBottomBar.$inject = moduleConfig.tcfaBottomBar.deps;\r\n module.directive(moduleConfig.tcfaBottomBar.name, tcfaBottomBar);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.directives.checkPattern\",\r\n deps: [],\r\n tcfaCheckPattern: {\r\n name: \"tcfaCheckPattern\",\r\n deps: []\r\n }\r\n },\r\n module, tcfaCheckPattern;\r\n module = angular.module(\"TCFAutos\");\r\n tcfaCheckPattern = function () {\r\n return {\r\n require: \"ngModel\",\r\n transclude: false,\r\n scope: {tcfaCheckPattern: \"=tcfaCheckPattern\"},\r\n link: function (scope, element, attributes, ngModel) {\r\n var i, regx;\r\n ngModel.$validators.tcfaCheckPattern = function (modelValue) {\r\n if (modelValue) {\r\n if (scope.tcfaCheckPattern instanceof Array) {\r\n for (i = scope.tcfaCheckPattern.length - 1; i >= 0; i--) {\r\n regx = new RegExp(scope.tcfaCheckPattern[i]);\r\n if (regx.test(modelValue)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n } else {\r\n regx = new RegExp(scope.tcfaCheckPattern);\r\n return regx.test(modelValue);\r\n }\r\n } else {\r\n return true;\r\n }\r\n };\r\n }\r\n };\r\n };\r\n tcfaCheckPattern.$inject = moduleConfig.tcfaCheckPattern.deps;\r\n module.directive(moduleConfig.tcfaCheckPattern.name, tcfaCheckPattern);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"TCFAutos.directives.tcfaCutCopyPastePrevent\",\r\n deps: [],\r\n tcfaCutCopyPastePrevent: {\r\n name: \"tcfaCutCopyPastePrevent\",\r\n deps: []\r\n }\r\n },\r\n module, tcfaCutCopyPastePrevent;\r\n module = angular.module(\"TCFAutos\");\r\n tcfaCutCopyPastePrevent = function () {\r\n return {\r\n //scope: {},\r\n link: function (scope, element) {\r\n element.on(\"cut copy paste\", function (event) {\r\n event.preventDefault();\r\n });\r\n }\r\n };\r\n };\r\n tcfaCutCopyPastePrevent.$inject = moduleConfig.tcfaCutCopyPastePrevent.deps;\r\n module.directive(moduleConfig.tcfaCutCopyPastePrevent.name, tcfaCutCopyPastePrevent);\r\n}());\r\n\n(function () {\r\n \"use strict\";\r\n var moduleConfig = {\r\n name: \"directivesModule\",\r\n deps: [],\r\n directiveA: {\r\n name: \"numericFormatter\",\r\n deps: [\"$filter\", \"$timeout\"]\r\n },\r\n directiveB: {\r\n name: \"tcfaNumericInput\",\r\n deps: []\r\n },\r\n directiveC: {\r\n name: \"ctModel\",\r\n deps: []\r\n },\r\n directiveD: {\r\n name: \"ctYoutubeVideo\",\r\n deps: [\"$window\"]\r\n },\r\n directiveF: {\r\n name: \"tcOnKeyPress\",\r\n deps: []\r\n },\r\n directiveG: {\r\n name: \"ctYoutubeImage\",\r\n deps: [\"TCFAAppConfigService\"]\r\n },\r\n filterA: {\r\n name: \"camelCase\",\r\n deps: []\r\n }\r\n },\r\n module, directiveA, directiveB, directiveC, directiveD, directiveF, directiveG, filterA;\r\n module = angular.module(\"TCFAutos\");\r\n // Numeric formatter.\r\n directiveA = function ($filter, $timeout) {\r\n return {\r\n require: \"?ngModel\",\r\n link: function (scope, elem, attrs, controller) {\r\n var displayAsNumber, saveAsNumber, appendStr, transform, addMiles;\r\n transform = function (val) {\r\n var finalStr;\r\n if (attrs.currency) {\r\n finalStr = $filter(\"currency\")(val, \"$\", \"0\");\r\n } else if (attrs.unit) {\r\n finalStr = $filter(\"number\")(val);\r\n if (attrs.unit === 'km' && attrs.newCar === 'false' && finalStr === \"0\") {\r\n finalStr = \"Kilómetros\";\r\n }\r\n } else {\r\n finalStr = $filter(\"number\")(val, \"0\");\r\n }\r\n if (finalStr && finalStr !== 'Kilómetros' && appendStr) {\r\n finalStr = finalStr + appendStr;\r\n }\r\n return finalStr;\r\n };\r\n addMiles = function (value) {\r\n if (!value) {\r\n return null;\r\n }\r\n return value.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n };\r\n if (attrs.unit) {\r\n appendStr = \" \" + attrs.unit;\r\n }\r\n // Formatter. Changes how model values will appear in the view.\r\n displayAsNumber = function (modelValue) {\r\n if (!controller.$isEmpty(modelValue)) {\r\n return transform(modelValue);\r\n }\r\n return transform(0);\r\n };\r\n // Parser. Change how view values will be saved in the model.\r\n saveAsNumber = function (inputValue) {\r\n if (!controller.$isEmpty(inputValue)) {\r\n return parseInt(inputValue.replace(/[^\\d]/g, \"\"), 10);\r\n }\r\n return 0;\r\n };\r\n controller.$formatters.push(displayAsNumber);\r\n controller.$parsers.push(saveAsNumber);\r\n elem.on(\"focus\", function () {\r\n controller.$viewValue = addMiles(controller.$modelValue);\r\n controller.$render();\r\n });\r\n elem.on(\"blur\", function () {\r\n controller.$viewValue = transform(controller.$modelValue);\r\n controller.$render();\r\n });\r\n elem.on(\"keydown\", function (event) {\r\n var __key_code = (event.keyCode || event.which);\r\n $timeout(function () {\r\n controller.$viewValue = addMiles(controller.$modelValue);\r\n controller.$render();\r\n if (__key_code === 13) { //