Skip to content

Instantly share code, notes, and snippets.

@stanio
Created April 22, 2015 13:53
Show Gist options
  • Save stanio/996a501c4ab5a26462df to your computer and use it in GitHub Desktop.
Save stanio/996a501c4ab5a26462df to your computer and use it in GitHub Desktop.
postbank.bg/Applications/Locations/_inc/js/locations.js comments
//тук ще се пазят всички маркери които съм залепил по картата това е Array от обекти тип {marker:object, JSONData:object} - JSONData се използва за да пазя обекта с даните както е дошъл от сървара.
//трябва ми за да си намеря панела при кликане в/у маркера и за да го скролирам до обекта, който е кликнат.
//ще го напълня в PutMarkers и в него ще седят само градовете, които ще нахаквам в комбото с градовете.
//за да не бия постоянно json заявки към сървара, веднъж след като съм го заредил, само крия, показвам! затова ползвам isLoad
//някой вика асинхронно два пъти на onload json ама не мога да го хвана кой. За да оправим проблема проверяваме арея дали е празен и чак тогава стартираме
//използваме малка простотия и си сетваме наш параметър на Google маркера
/*и както се вижда може да си го взема после*/
//правим чудесии от храброст, защото ondblclick изстрелва и clik, и става една мазня.. затова за гледам дали е отворен ако е .. не го пипам.. ако не е го отварям!
/*и както се вижда може да си го взема после*/
/*добавяме си цялата информация за офиса/бранча, за да не търсим после като идиоти в арея който сме изтеглили през json*/
//ей тука събираме информацията от конфига в всеки град който намерим. ако Ники не е дефинирал JS конфига за градовете, то би трябвало тук да е UNDEFINED:)
//извиквам callback за да се знае, че съм свършил. getJSON се изпълнява асинхронно, но ние сме в него и затова тя ще се изпълни след като обработим всичко.
//тук просто ще си сменя арейте с които работя и ще изключа маркерите на всички, без този, който е активен/
//криенето
//преди да ги върнем, ги сортираме по City
//тук малко конфиг стрингове
//тук малко конфиг стрингове свършват
//Ще пазим това за да можем да лимитираме клиента рамките на картата - това би трябвало да са инициализационните стойности
//извъртам всички арея с всички вътрешни обекти, за да им залепя lang и infoPanelID
//въртя из арея с обекти за да си генерирам ID на радио бутините в последствие, и да ги търся.
//namerili sme markera
//и сега ако скача го спираме, ако е спрял го пускаме да скача
//не изключвам всички маркери, за да не ми примигва кофти.
//запазваме си този, който е кликнат.
//след това извъртаме всички за да им угасим маркерите!
//tuk sme w radioto, koeto sme kliknali
//tuk във всички останали
//Тук се генерира HTML за info_panel
//now put bulgaria
//малко игра за да сложим при всеки нов град H1 - арея с маркерите е сортиран по градове ;)
//боим си колко градове има в пането.!
//ако маркера е бил селектнат и подскача, ще го оставиме разтегнат!
//ako nqmame grad, ili imame poweche ot edin grad ще направим комбото да няма избран град ;)
//ако е само един град, го избираме в комбото.
//т.к картата не е ясно кога става готова, то ако е ! ot undefined си го сетваме макс и разчитаме, че повече няма да го променяме.
//ако някой е по границата и се опитва да zoom -out не още... но на практика излиза от видимото пространство то ще го позиционираме на началното зареждане
//проблема, е че Cities e асоциативен арей (демек Dictionary) и не можем да го сортираме...затова Ще го прехвърлим в арей в арей ;)
//и след това ще го сортираме като попове!
//първо по име
//след това по ордер!
//хайде най-накрая да направим комбото!
//хайде сега да го направим търсещо..
//и сега ако е дошъл QRY string
//хващаме го case insensitive po text!
//ако сме хванали някой град, направо шием SetFocus
//е естествено сетваме и комбото ;)
//да не забравяме и да викнем функцията за позициониране на картата.
//и тук най-нагло си го правим търсещо ;)
// инициализиране на картата
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment