{"version":3,"file":"/pc/common/js/search.js.map","sources":["/pc/common/js/search.js"],"sourcesContent":["/**\n * Created by luojianguo on 2016/6/9.\n * http://ada.sdo.com/msg_doc.php?ssid=63&s=CfgGW&m=getGameList\n */\ndefine([\"pcbase\",\"ko\",\"common/js/search_data\",\"game\",\"strhelp\",\"storage\",\"typeJs\",\"dao\",\"router\",\"conf\"],function (pcbase,ko,search_data,game,strhelp,storage,typeJs,dao,router,conf){\n\n return pcbase.extend(function() {\n \"use strict\";\n //声明页面配置\n\n var my = this;\n\n /* new search start */\n function throat(cb) {\n var tid = null;\n return function (data, e) {\n if (tid) {\n clearTimeout(tid);\n tid = null;\n }\n tid = setTimeout(function() {\n cb(e);\n clearTimeout(tid);\n tid = null;\n }, 500);\n }\n }\n /* new search end */\n\n this.reInit = function(){\n if(window.location.pathname.toLowerCase() == \"/pc/goods/home.html\" || window.location.pathname.toLowerCase() == \"/\"){\n if($(my.pageSelector).hasClass(\"search-home\") == false) {\n $(my.pageSelector).addClass(\"search-home\");\n }\n }else{\n $(my.pageSelector).removeClass(\"search-home\");\n }\n };\n\n this.init = function(){\n this.needLogin =false;\n this.pageSelector = \".page-common-search\";\n\n this.reInit();\n\n this.model = {\n demoInfo: ko.observable(''),\n gameList:ko.observableArray(),\n goodsTypes:ko.observableArray(),\n gameOsList:ko.observableArray(),\n gameOperatorList:ko.observableArray(),\n areaList:ko.observableArray(),\n groupList:ko.observableArray(),\n raceList:ko.observableArray([]),//种族阵营\n isMobileGame:ko.observable(),\n currentGame:ko.observable({}),\n currentOs: ko.observable({}),\n currentOperator: ko.observable({}),\n currentArea: ko.observable({}),\n currentGroup:ko.observable({}),\n currentRace:ko.observable({}),\n currentGoods:ko.observable({}),\n currentItemType:ko.observable({}),\n searchHis:ko.observable([]), //key,text,gameId,goodsType,areaId,groupId\n quickKeyList:ko.observableArray([]),//搜索输入快速提示\n fastNavGameGroup : ko.observableArray([]),\n recommendHot:ko.observableArray([]),//搜索栏下推荐的热门游戏\n supportItemTypeList:ko.observableArray(),//装备道具类型\n hasRace:ko.observable(),//有种族阵营\n raceText:ko.observable('种族'),//种族或阵营文字\n getGoodsList: function (gameId,goodType,areaId,groupId,keyword,refer,gameOs,operatorId,tradeMode) {\n return strhelp.getGoodsListUrl(gameId,goodType,areaId,groupId,keyword,refer,gameOs,operatorId,tradeMode);\n },\n\n queryGameInfo: function(){\n var self = this;\n\n // game.getFilterList(function(code,list){\n // if(code == 0){\n // self.gameList(list);\n // }\n // else{\n // my.galert(\"数据获取失败,请稍后再试。\");\n // }\n // });\n\n },\n\n\n queryAdvert: function(option){\n var self = this;\n router.getPageModule(\"common/js/advert\",function(pageModel){\n pageModel.model.getAdvertiseConfig(option,\"page-common-advert\");\n },1);\n\n },\n\n /* new search start */\n dropHisToggle: throat(function(e){\n console.log(e);\n var inputVal = $(e.currentTarget).val();\n var isInputEmpty = typeJs.isEmpty(inputVal);\n var isCurrentDisplay = $(e.currentTarget).parent('.dropdown.open').length > 0;\n if((!isInputEmpty && isCurrentDisplay) || (isInputEmpty && !isCurrentDisplay)){\n $(e.currentTarget).dropdown('toggle');\n //return false;\n }\n game.getGoodsByKey(inputVal, function(result) {\n my.model.quickKeyList(result || []);\n if (my.model.quickKeyList().length > 0){\n $(\"#quick-drop\").show();\n } else {\n $(\"#quick-drop\").hide();\n }\n });\n \n if(e.keyCode==13){ //ie10下keyup 不能阻止回车事件,要用下面的jquery事件阻止\n e.preventDefault();\n e.stopPropagation();\n $(e).focus();\n my.model.onSearch();\n }\n return false;\n }),\n /* new search end */\n\n checkNeedShow: function(data,e){\n var inputVal = $($(e.currentTarget).find('.search-key')[0]).val();\n var isCurrentDisplay = $(e.currentTarget).hasClass('open');\n if(!typeJs.isEmpty(inputVal) && !isCurrentDisplay){\n return false;\n }\n return true;\n },\n\n selectGame : function(appId,gameName,data){\n var self = this;\n my.model.currentGame({key:appId,text:gameName});\n my.model.isMobileGame(data.category == \"mobilegame\" ? true : false);\n if(appId == \"\"){\n my.model.goodsTypes([]);\n return;\n }\n var goodTypes;\n if(!data || !data.goodsTypes){\n goodTypes = game.getGameByGameId(appId).goodsTypes;\n }else{\n goodTypes = data.goodsTypes;\n }\n my.model.goodsTypes(goodTypes);\n my.model.getItemConfig(appId);\n $.when($(my.pageSelector + \" .dropdowngame\").newClosedDeferred()).done(function(){\n $(my.pageSelector + \" .dropdowngood\").openDropdownList(true);\n });\n\n //清空区服数据\n my.model.areaList([]);\n my.model.groupList([]);\n my.model.getRaceList(data);\n },\n selectGoodsType: function(goodType,goodName){\n my.model.currentGoods({key:goodType,text:goodName});\n var query_params;\n var deffer = $(my.pageSelector + \" .dropdowngood\").newClosedDeferred();\n if (my.model.isMobileGame()){\n query_params={\n game_id:my.model.currentGame().key,\n type:\"game_app_os\"\n };\n $.ajax( \"/gate/frontconfigapi/GetGameOperatorAreaGroupList\",{\n data:query_params,\n cache:true,\n success: function(response){\n if(response.return_code ==0){\n if(response.data){\n my.model.gameOsList(response.data);\n $.when(deffer).done(function(){\n $(my.pageSelector + \" .dropdownos\").openDropdownList();\n });\n }else{\n my.model.gameOsList([]);\n }\n }else{\n alert(\"数据查询失败,请稍后再试\");\n }\n }\n });\n } else {\n query_params={\n game_id:my.model.currentGame().key,\n type:\"area\",\n count:1000\n };\n //$.ajax( \"/gmmweb/CfgGW/getGameAreaGroupList\",{\n $.ajax( \"/gatew/CfgGW/getGameAreaGroupList\",{\n data:query_params,\n cache:true,\n success: function(response){\n if(response.return_code ==0){\n if(response.data || response.data.areaList){\n my.model.areaList(response.data.areaList);\n $.when(deffer).done(function(){\n $(my.pageSelector + \" .dropdownarea\").openDropdownList();\n });\n }else{\n my.model.areaList([]);\n }\n }else{\n alert(\"数据查询失败,请稍后再试\");\n }\n }\n });\n\n //清空服数据\n my.model.groupList([]);\n }\n },\n selectItemType: function(itemType){\n my.model.currentItemType(itemType);\n },\n selectOs: function(game_app_os,game_app_os_anme){\n my.model.currentOs({key:game_app_os,text:game_app_os_anme});\n var deffer = $(my.pageSelector + \" .dropdownos\").newClosedDeferred();\n var query_params={\n game_id:my.model.currentGame().key,\n game_app_os:my.model.currentOs().key,\n type:\"operator\"\n };\n $.ajax( \"/gate/frontconfigapi/GetGameOperatorAreaGroupList\",{\n data:query_params,\n cache:true,\n success: function(response){\n if(response.return_code ==0){\n if(response.data){\n my.model.gameOperatorList(response.data);\n $.when(deffer).done(function(){\n $(my.pageSelector + \" .dropdownoperator\").openDropdownList();\n });\n }else{\n my.model.gameOperatorList([]);\n }\n }else{\n alert(\"数据查询失败,请稍后再试\");\n }\n }\n });\n },\n selectOperator : function(operator_id,operator_name){\n my.model.currentOperator({key:operator_id,text:operator_name});\n var deffer = $(my.pageSelector + \" .dropdownoperator\").newClosedDeferred();\n var query_params={\n game_id:my.model.currentGame().key,\n game_app_os:my.model.currentOs().key,\n operator_id:my.model.currentOperator().key,\n type:\"operatorarea\"\n };\n $.ajax( \"/gate/frontconfigapi/GetGameOperatorAreaGroupList\",{\n data:query_params,\n cache:true,\n success: function(response){\n if(response.return_code ==0){\n if(response.data){\n my.model.areaList(response.data);\n $.when(deffer).done(function(){\n $(my.pageSelector + \" .dropdownarea\").openDropdownList();\n });\n }else{\n my.model.areaList([]);\n }\n }else{\n alert(\"数据查询失败,请稍后再试\");\n }\n }\n });\n },\n selectArea: function(areaId,areaName){\n my.model.currentArea({key:areaId,text:areaName});\n var query_params={\n game_id:my.model.currentGame().key,\n type:\"group\",\n area_id:my.model.currentArea().key,\n count:1000\n };\n var deffer = $(my.pageSelector + \" .dropdownarea\").newClosedDeferred();\n //$.ajax( \"/gmmweb/CfgGW/getGameAreaGroupList\",{\n $.ajax( \"/gatew/CfgGW/getGameAreaGroupList\",{\n data:query_params,\n cache:true,\n success: function(response){\n if(response.return_code ==0){\n if(response.data || response.data.groupList){\n my.model.groupList(response.data.groupList);\n\n $.when(deffer).done(function(){\n $(my.pageSelector + \" .dropdownserver\").openDropdownList();\n });\n\n }else{\n my.model.groupList([]);\n }\n }else{\n alert(\"数据查询失败,请稍后再试\");\n }\n }\n });\n },\n selectGroup: function(groupId,groupName){\n my.model.currentGroup({key:groupId,text:groupName});\n },\n onSearch: function(data,e){\n\n //onclick=\"window.location.href='/pc/goods/searchlist.html'\"\n\n // if(!typeJs.isEmpty(my.model.currentGame().key)){\n // searchHis.push({game:my.model.currentGame(),goods:my.model.currentGoods(),group:my.model.currentGroup()});\n // storage.setCookie(JSON.stringify(searchHis));\n // }\n\n\n\n var inputSearch = $(\".search-key\").val();\n\n //var inputSearch = $($(e.currentTarget).parent().find('.form-control.search-key')[0]).val();\n\n\n // if(!typeJs.isEmpty(inputSearch)){\n // my.pageInf.routeToSearchList(inputSearch);\n // return;\n // }\n var curGame = $(my.pageSelector + ' .dropdowngame').getDropSelectItem();\n\n /* new_search start */\n if(typeJs.isEmpty(curGame.key)){\n my.galert(\"请先选择游戏进行搜索\");\n return;\n // curGame.key = 'all';\n // curGame.text = inputSearch;\n }\n /* new_search end */\n\n var curGood = $(my.pageSelector + ' .dropdowngood').getDropSelectItem();\n var curOs = $(my.pageSelector + ' .dropdownos').getDropSelectItem();\n var curOperator = $(my.pageSelector + ' .dropdownoperator').getDropSelectItem();\n var curArea = $(my.pageSelector + ' .dropdownarea').getDropSelectItem();\n var curSever = $(my.pageSelector + ' .dropdownserver').getDropSelectItem();\n var curRace = $(my.pageSelector + ' .dropdownrace').getDropSelectItem();\n var curKeyword = inputSearch;\n var isMobileGame = my.model.queryMobile(curGame.key);\n var curTradeMode = conf.queryTradeModeByName(curGood.text) || {'key':'','text':'交易模式'};\n var curItemType = $(my.pageSelector + ' .dropdownitem').getDropSelectItem();\n if (curItemType){\n my.model.supportItemTypeList().forEach(function(item){\n if(item.item_type == curItemType.key){\n curGood.key = item.goods_type;\n curGood.text = game.getGoodsTypeName(item.goods_type);\n }\n });\n my.model.searchHis(dao.saveSearchHis(curGame,curGood,curArea,curSever,curOs,curOperator,isMobileGame,curTradeMode,curItemType));\n } else {\n my.model.searchHis(dao.saveSearchHis(curGame,curGood,curArea,curSever,curOs,curOperator,isMobileGame,curTradeMode));\n }\n \n //if 输入框是空的,直接跳转到页面\n my.pageInf.routeToGoodsList(curGame.key,curGood.key,curArea.key,curSever.key,curKeyword,'search',curOs.key,curOperator.key,curTradeMode.key,null,null,curItemType.key,curRace.key);\n //else 在游戏检索页面显示游戏信息\n },\n\n delSearchHis: function(key){\n my.model.searchHis(dao.delSearchHis(key));\n return false;\n },\n\n goGoodList: function(data){\n my.pageInf.routeToGoodsList(data.gameId,data.goodType,data.areaId,data.serverId,null,'history',data.gameOs,data.operatorId,data.trademodeId,null,null,data.itemType);\n },\n selQuickKey:function(game_name){\n $(\".search-key\").val(game_name);\n $(\"#quick-drop\").hide();\n },\n getRecommendHotlist:function(){\n my.model.fastNavGameGroup(game.getFastNavGameGroup('热门'));\n var gamelist = my.model.fastNavGameGroup();\n\t\t\t\t\tgamelist.sort(function (game1, game2) {\n\t\t\t\t\t\treturn game1['show_order'] - game2['show_order'];\n\t\t\t\t\t});\n my.model.recommendHot(gamelist.slice(0,7));\n },\n queryMobile:function(gameid){\n return game.getGameByGameId(gameid).category == \"mobilegame\" ? true : false;\n },\n //获取装备道具配置\n getItemConfig:function(game_id){\n var self = this\n var url = \"/gate/frontconfigapi/GetVersion\";\n var query_params = {\n object_id: 'game_id_' + game_id + '_item_type_cfg'\n }\n $.ajax({\n url:url,\n data: query_params,\n success: function(response){\n if(response.return_code == 0 ){\n my.model.supportItemTypeList(response.data.memo);\n }\n }\n });\n },\n getRaceList:function(data){\n var race_camp = \"\";\n if (data.ext_info && data.ext_info.race_camp){\n race_camp = data.ext_info && data.ext_info.race_camp;\n my.model.raceText(race_camp.text);\n my.model.hasRace(true);\n my.model.raceList(race_camp.options);\n } else {\n my.model.hasRace(false);\n my.model.raceList([]);\n }\n },\n selectRace: function(raceId,raceName){\n my.model.currentRace({key:raceId,text:raceName});\n },\n };\n };\n\n this.bindEvent = function(){\n $(document).on('focus', '.search-key', function(event) {\n $(document).on('keyup', '.search-key', function(event) {\n if (event.keyCode == 13) {\n\n }\n })\n });\n };\n\n //定义入口函数\n this.entry = function(option){\n my.model.searchHis(dao.getSearchHis() || []);\n this.model.queryGameInfo();\n this.model.getRecommendHotlist();\n\n };\n })\n\n})"],"names":["define","pcbase","ko","search_data","game","strhelp","storage","typeJs","dao","router","conf","extend","throat","cb","tid","data","e","clearTimeout","setTimeout","my","this","reInit","window","location","pathname","toLowerCase","$","pageSelector","hasClass","addClass","removeClass","init","needLogin","model","demoInfo","observable","gameList","observableArray","goodsTypes","gameOsList","gameOperatorList","areaList","groupList","raceList","isMobileGame","currentGame","currentOs","currentOperator","currentArea","currentGroup","currentRace","currentGoods","currentItemType","searchHis","quickKeyList","fastNavGameGroup","recommendHot","supportItemTypeList","hasRace","raceText","getGoodsList","gameId","goodType","areaId","groupId","keyword","refer","gameOs","operatorId","tradeMode","getGoodsListUrl","queryGameInfo","queryAdvert","option","getPageModule","pageModel","getAdvertiseConfig","dropHisToggle","inputVal","currentTarget","val","isInputEmpty","isEmpty","isCurrentDisplay","parent","length","dropdown","getGoodsByKey","result","show","hide","keyCode","preventDefault","stopPropagation","focus","onSearch","checkNeedShow","find","selectGame","appId","gameName","key","text","category","goodTypes","getGameByGameId","getItemConfig","when","newClosedDeferred","done","openDropdownList","getRaceList","selectGoodsType","goodName","query_params","deffer","game_id","type","ajax","cache","success","response","return_code","alert","count","selectItemType","itemType","selectOs","game_app_os","game_app_os_anme","selectOperator","operator_id","operator_name","selectArea","areaName","area_id","selectGroup","groupName","inputSearch","curGame","getDropSelectItem","galert","curGood","curOs","curOperator","curArea","curSever","curRace","curKeyword","queryMobile","curTradeMode","queryTradeModeByName","curItemType","forEach","item","item_type","goods_type","getGoodsTypeName","saveSearchHis","pageInf","routeToGoodsList","delSearchHis","goGoodList","serverId","trademodeId","selQuickKey","game_name","getRecommendHotlist","getFastNavGameGroup","gamelist","sort","game1","game2","slice","gameid","url","object_id","memo","race_camp","ext_info","options","selectRace","raceId","raceName","bindEvent","document","on","event","entry","getSearchHis"],"mappings":"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"}