PageSourceSearch

https://www.superjob.ru/cdn/min/file/sj/yii/protected/views/header…derSearchField.html.blitz.js?hash=672642841

js superjob.ru collected 2026-10-01 08:43:45 UTC 4,327 bytes, 14 lines download raw bytes

1(function(){'use strict';var app=angular.module('angie');var params=null;var KEY_ENTER=13;app.controller('UserSearchCtrl',UserSearchCtrl);UserSearchCtrl.$inject=['$scope','$rootScope','$sce','$filter'];function UserSearchCtrl($scope,$rootScope,$sce,$filter){params=window.header_search_field_params;$scope.additional=true;$scope.value=params.value;$scope.types=params.types;$scope.fromSuggest=false;$scope.excludeCurrentOptionFilter=function(type){return type!==$scope.current;};$scope.select=function(type,e){if(e){e.preventDefault();e.stopPropagation();}
2if(type.categories){return $scope.catalogPopup=!$scope.catalogPopup;}
3if($scope.additional=!type.hide_additional_search){$scope.additional_href=type.additional_search_route;}
4$rootScope.$emit('search:type:select');$scope.current_submit_url=$sce.trustAsResourceUrl(type.submit_url);$scope.current=type;type.suggest_url=$filter('sjAddSlashToUrl')(type.suggest_url);return type;};$scope.select($scope.types[parseInt(params.ruf,10)||0]);$scope.go=function(e,href){e.preventDefault();window.location=href;};}
5app.directive('searchManager',['$rootScope',function($rootScope){return{restrict:'A',controller:function($scope){function submitForm(){var form=$('<form>',{method:'get',action:$scope.current.submit_url});form.append($('<input />',{name:$scope.current.param_name,value:$scope.value,type:'hidden'}));form.append($('<input />',{name:'ruf',value:_.indexOf($scope.types,$scope.current),type:'hidden'}));if(_.isPlainObject($scope.current.additional_params)){_.forOwn($scope.current.additional_params,function(value,key){form.append($('<input />',{name:key,value:value,type:'hidden'}));});}
6form.appendTo($('body')).submit();}
7$scope.submit=function(e){if($scope.current.gtm_search_box_request_label){if(gtm){gtm.push({snowplow:{category:'search_box',action:$scope.fromSuggest?'suggest_click':'submit',label:$scope.current.gtm_search_box_request_label,property:'inner_page',value:$scope.value}});}}
8e&&e.preventDefault();if(!$scope.current.submit_additional_form){submitForm();}
9var form;var input=$('#firstquery');input.val($scope.value);if((form=$('#resume_search_form')).length){form.append($('<input />',{name:$scope.current.param_name,value:$scope.value,type:'hidden'})).submit();}
10if(input.length){input.closest('form').submit();}
11submitForm();};this.submit=$scope.submit;this.setSearchOrigin=function(ref){_.extend($scope.current.additional_params,{'search_origin':ref});$scope.fromSuggest=true;};},link:function(scope){$rootScope.$on('search:submit',function(e,value,params){if(_.isPlainObject(params)){_.extend(scope.current.additional_params,params);}
12delete scope.current.additional_params.resettown;value&&(scope.value=value);scope.submit();});}};}]);app.directive('searchSelector',['$document','$rootScope',function($document,$rootScope){return{restrict:'A',controller:function($scope){$scope.popup=$scope.catalogPopup=false;$scope.togglePopup=function(){$scope.popup=!$scope.popup;if($scope.popup){$scope.catalogPopup=false;}};this.closePopup=function(){$scope.popup=false;$scope.catalogPopup=false;!$scope.$$phase&&$scope.$digest();};},link:function(scope,element,attrs,ctrl){$document.on('mousedown',function(e){if(scope.popup&&!element[0].contains(e.target)){ctrl.closePopup();}});$rootScope.$on('search:type:select',ctrl.closePopup);}};}]);app.directive('fadeElement',function(){return{scope:{'model':'='},link:function(scope,element){element.hide();scope.$watch('model',function(val){if(val){element.stop(true).fadeIn(100);}else{element.stop(true).fadeOut(100);}});}};});app.directive('searchInput',['sjUrl','useAlternativeProfessionUrl',function(sjUrl,useAlternativeProfessionUrl){return{require:['^searchManager','^ngModel'],restrict:'A',scope:{model:'=',suggestUrl:'@'},link:function(scope,element,attrs,ctrl){function select(event,ui){ctrl[1].$setViewValue(ui.item.value);ctrl[0].setSearchOrigin('header_suggest');ctrl[0].submit();}
13function suggestUrl(term){return sjUrl.getProfessionsSuggestUrlBuilder(useAlternativeProfessionUrl)(term);}
14element.sjSuggest({select:select,url:suggestUrl,crossDomain:true});element.placeholder({inputWrapper:'',placeholderCSS:{overflowX:'visible',overflowY:'visible',top:'8px',left:'6px',width:'140px'}});element.on('keyup',function(e){if(e.which===KEY_ENTER){ctrl[0].submit();}});}};}]);})(angular.module('angie'));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.