1Ext.define("GeoMind.base.ModuleControllerGeneric",{_id:null,managedModules:null,constructor:function(b){this._id=Ext.id();this.managedModules=[];Ext.apply(this,b)},registerEvents:function(){this.addEvents(["broadcast"])},registerModule:function(b,h){var g;if(Ext.isString(b)){g=Ext.create(b,h)}else{g=b}g.controllerCount+=1;this.managedModules.push(g);g.on("advise",this.onAdvisedListener,this);this.on("broadcast",g.onBroadcastListener,g);return g},unregisterModule:function(b){b.controllerCount-=1;Ext.Array.remove(this.managedModules,b);b.un("advise",this.onAdvisedListener,this);this.un("broadcast",b.onBroadcastListener,b)},onAdvisedListener:function(b){if(this.shouldIBroadcast(b)){switch(b.evtName){case"ready":this.onModuleReady(b);break;default:this.broadcast(b);break}}},broadcast:function(b){var g={evtName:b.evtName,evtInitiatingModule:b.evtInitiatingModule,evtSuperInitiatingModule:b.evtSuperInitiatingModule,evtBroadcastingController:this,confirmationRequired:b.confirmationRequired,callback:b.callback,suspendedCallback:b.suspendedCallback,data:b.data};if(b.confirmationRequired){this.moduleReadyCounter=0}this.fireEvent("broadcast",g)},shouldIBroadcast:function(h){var g=false;for(var b=0;b<this.managedModules.length;b++){if(this.managedModules[b]._id==h.evtInitiatingModule._id){g=true;break}}return g},checkIfICare:function(b){var g=false;if(b.evtBroadcastingController&&b.evtBroadcastingController._id==this._id){g=true}return g},onModuleReady:function(b){if(this.checkIfICare(b)){this.moduleReadyCounter++;if(this.managedModules.length==this.moduleReadyCounter){this.moduleReadyCounter=0;if(b&&Ext.isFunction(b.callback)){b.callback()}}}},isModulePresent:function(b){return this.managedModules.some(function(g){return g.internal_name===b})}});Ext.define("GeoMind.base.ModuleController",{extend:GeoMind.base.ModuleControllerGeneric,mixins:[Ext.util.Observable],constructor:function(b){if(GeoMind.utils.InitCheckup.isExtJs){this.mixins["Ext.util.Observable"].constructor.call(this,b)}Ext.apply(this,b);this.callParent([b]);this.registerEvents()}});Ext.define("GeoMind.base.ModuleGeneric",{_id:null,interactsWith:[],controllerCount:0,constructor:function(b){this._id=Ext.id();Ext.apply(this,b)},registerEvents:function(){this.addEvents(["advise"])},onBroadcastListener:function(b){if(b&&Ext.isString(b.evtName)){var g="_on"+b.evtName.substring(0,1).toUpperCase()+b.evtName.substring(1,b.evtName.length);if(Ext.isFunction(this[g])){this[g](b)}else{if(b.confirmationRequired){this.manageEventConfirmation(b)}}}},checkIfICare:function(g){var b=false;if(this._id!=g.evtInitiatingModule._id){return true}return b},manageEventConfirmation:function(b){var g={evtName:"ready",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:b.evtBroadcastingController,confirmationRequired:b.confirmationRequired,callback:b.callback,suspendedCallback:b.suspendedCallback,data:b.data};if(b.confirmationRequired){this.fireEvent("advise",g)}else{if(Ext.isFunction(b.callback)){b.callback(g)}}},dispatchEvent:function(b,g){g=g||{};if(g.confirmationRequired){this.controllersReadyCounter=0;b.confirmationRequired=true;b.suspendedCallback=b.callback;b.callback=Ext.bind(this.controllersReady,this,b,true)}this.fireEvent("advise",b);this.fireEvent(b.evtName,b.data)},controllersReady:function(b){this.controllersReadyCounter+=1;if(this.controllersReadyCounter==this.controllerCount){this.controllersReadyCounter=0;if(b&&Ext.isFunction(b.suspendedCallback)){b.suspendedCallback(b)}}},_onDeactivationRequired:function(q){if(this.checkIfICare(q)){var o=Ext.getClassName(this);var b=Ext.getClassName(q.evtInitiatingModule);var h=false;for(var g=0;g<this.interactsWith.length;g++){if(this.interactsWith[g]==b){h=true;break}}if(!h){for(var g=0;g<q.evtInitiatingModule.interactsWith.length;g++){if(q.evtInitiatingModule.interactsWith[g]==o){h=true;break}}}if(h){this.deactivate();this.manageEventConfirmation(q)}else{this.manageEventConfirmation(q)}}else{this.manageEventConfirmation(q)}},activate:function(){},deactivate:function(){}});Ext.define("GeoMind.utils.InitCheckup",{singleton:true,isExtJs:false,constructor:function(){this.checkFramework();this.fixAndroid()},checkFramework:function(){Ext.versions.extjs?this.isExtJs=true:this.isExtJs=false},fixAndroid:function(){if(Ext.os&&Ext.os.is.Android){window.scrollTo(0,1);function b(g){g.preventDefault()}
1document.addEventListener("ontouchmove",b,false);document.addEventListener("touchmove",b,false)}}});Ext.define("GeoMind.base.Module",{extend:GeoMind.base.ModuleGeneric,mixins:[Ext.util.Observable],constructor:function(b){if(GeoMind.utils.InitCheckup.isExtJs){this.mixins["Ext.util.Observable"].constructor.call(this,b)}Ext.apply(this,b);this.callParent([b]);this.registerEvents()}});Ext.define("GeoMind.utils.Date",{singleton:true,constructor:function(){this.enableDateToISOString()},fixDate:function(b){if(b){if(typeof b=="string"){if(b.indexOf("/Date(")==0){b=b.replace("/Date(","");b=b.replace(")/","");return new Date(b==="0"?0:parseInt(b)||b)}else{return new Date(b)}}else{return b}}else{return b}},dateToString:function(h){var q=(h.getMonth()+1);var g=h.getDate();var b=h.getHours();var o=h.getMinutes();var w=h.getFullYear()+"-"+(q<10?"0"+q:q)+"-"+(g<0?"0"+g:g)+", "+(b<10?"0"+b:b)+":"+(o<10?"0"+o:o);return w},dateToShortString:function(h){var q=(h.getMonth()+1);var g=h.getDate();var b=h.getHours();var o=h.getMinutes();var w=h.getFullYear()+"-"+(q<10?"0"+q:q)+"-"+(g<10?"0"+g:g);return w},enableDateToISOString:function(){if(!Date.prototype.toISOString){Date.prototype.toISOString=function(){function b(g){return g<10?"0"+g:g}return this.getUTCFullYear()+"-"+b(this.getUTCMonth()+1)+"-"+b(this.getUTCDate())+"T"+b(this.getUTCHours())+":"+b(this.getUTCMinutes())+":"+b(this.getUTCSeconds())+"Z"}}},toISOString:function(b){function g(h){return h<10?"0"+h:h}return b.getUTCFullYear()+"-"+g(b.getUTCMonth()+1)+"-"+g(b.getUTCDate())+"T"+g(b.getUTCHours())+":"+g(b.getUTCMinutes())+":"+g(b.getUTCSeconds())+"Z"}});Ext.define("GeoMind.utils.String",{singleton:true,constructor:function(){if(!String.prototype.trim){(function(){var b=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;String.prototype.trim=function(){return this.replace(b,"")}})()}},fixNullString:function(b){return b||null}});Ext.define("GeoMind.utils.Data",{singleton:true,convertKeyValToObject:function(h){var o={};for(var g=0,b=h.length;g<b;g++){o[h[g].key]=h[g].value}return o},convertObjectToKeyValArray:function(g){var b=[];for(k in g){var h={};h.key=k;h.value=g[k];b.push(h)}return b},updateConfig:function(q,g,o){var h=this,b=-1;q.forEach(function(w,z){if(w.key==g){b=z;return}});if(!Ext.isEmpty(o)){if(b!=-1){q[b].value=o}else{q.push({key:g,value:o})}}else{if(b!=-1){q.splice(b,1)}}},extractConfigObjectByKey:function(g,b){var h=null;for(d in g){if(g[d].key==b){h=g[d].value;break}}return h},cloneRecord:function(b,g){if(Ext.getClassName(g)==b){return Ext.create(b,g.getData())}else{return Ext.create(b,g)}}});Ext.define("GeoMind.utils.Generator",{singleton:true,counter:new Date().getTime(),getId:function(){this.counter+=1;return this.counter},getUuid:function(h,g){for(g=h="";h++<36;g+=h*51&52?(h^15?8^Math.random()*(h^20?16:4):4).toString(16):"-"){}return g},getShortUuid:function(g){var b=this.getUuid();if(g){return b.substring(0,b.indexOf("-"))}else{return b.substring(b.lastIndexOf("-")+1,b.length)}}});Ext.define("GeoMind.data.model.LinkFields",{singleton:true,fields:[{name:"parent_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"parent_type_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"child_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"child_type_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"extended_data",type:"auto",defaultValue:null,useNull:true},{name:"parent_type_internal_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"parent_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"parent_description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"child_type_internal_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}
1,{name:"child_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"child_description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.Link",{extend:Ext.data.Model,fields:GeoMind.data.model.LinkFields.fields,config:{fields:GeoMind.data.model.LinkFields.fields}});Ext.define("GeoMind.data.coreCfg.Base",{configData:null,config:{configData:null},constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.g=GeoMind.utils.Generator;this.creator_uuid=this.g.getUuid();this.addEvents(["mapConfigReady"])},loadRawConfigData:function(b){this.configData=GeoMind.utils.Data.convertKeyValToObject(b);this.reportConfigReady()},reportConfigReady:function(){var b={evtName:"mapConfigReady",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{cfgDataManager:this}};this.dispatchEvent(b,{confirmationRequired:false})},loadSimpleConfig:function(w){var b={maps:[],layers:[],layer_groups:[],projections:[],modules:[]};if(!Ext.isArray(w)){w=[w]}var o=GeoMind.utils.Generator;for(d in w){var A=w[d];A.uuid=o.getUuid();A.links=[];var z=A.layers;delete A.layers;var q=A.projections;delete A.projections;var h=A.modules;delete A.modules;this.solveLayersAndLayerGroups(A,z,b);this.solveModulesWithoutChildren(A,q,b);this.solveModulesWithoutChildren(A,h,b)}b.maps.push(A);this.configData=b;this.reportConfigReady()},solveModulesWithoutChildren:function(h,w,b){if(!w){return}var q=GeoMind.utils.Generator;for(d in w){w[d].uuid=q.getUuid();var o=this.createLink(h,w[d]);h.links.push(o);b[w[d].resource_type_internal_name+"s"].push(w[d])}},createLink:function(b,h){var g={parent_uuid:b.uuid,parent_type_internal_name:b.resource_type_internal_name,child_uuid:h.uuid,child_type_internal_name:h.resource_type_internal_name,extended_data:h.extended_data};delete h.extended_data;return g},solveLayersAndLayerGroups:function(D,h,o,C){var z=4;if(!C){C=1}var A=GeoMind.utils.Generator;for(c in h){if(h[c].layer_type_value){var q=h[c];var b=q.projections;delete q.projections;q.uuid=A.getUuid();q.links=[];this.solveModulesWithoutChildren(q,b,o);var B=this.createLink(D,q);D.links.push(B);o.layers.push(q)}else{if(C>=z){continue}if(h[c].layers.length>0){var E=h[c];var w=E.layers;delete E.layers;E.uuid=A.getUuid();E.links=[];this.solveLayersAndLayerGroups(E,w,o,C+1);var B=this.createLink(D,E);D.links.push(B);o.layer_groups.push(E)}}}},_onMapConfigLoaded:function(b){this.loadRawConfigData(b.data)}});Ext.define("GeoMind.data.SimpleMapConfig",{projection:null,projectionMapSettings:null,projectionLayerSettings:null,constructor:function(b){Ext.apply(this,b);this.projection={resource_type_internal_name:"projection",name:"Dutch Amersfoort / RD New",description:"",epsg:"28992",proj4j:"+title=Amersfoort / RD New +proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs"};this.projectionMapSettings={max_resolution:819.2,num_zoom_levels:13,max_extent:"-58750, 247170, 360680.4, 666600.4"};this.projectionLayerSettings={}},getMapConfig:function(){var b=this.projection;b.extended_data=this.projectionMapSettings;var g={resource_type_internal_name:"map",tile_size:256,all_overlays:true,layers:this.getLayers(),projections:[Ext.clone(b)]};return g},getLayers:function(){var h=Ext.clone(this.projection);h.extended_data=this.projectionLayerSettings;var g={resource_type_internal_name:"layer",layer_type_value:"WMS",url:"http://here.goes.layer.url.com",is_base_layer:false,buffer:0,visibility:true,attribution:"simple map config wms layer",layers:"*",version_value:"1.3.0",transparent:false,image_format_value:"image/png",projections:[Ext.clone(h)]};var o={resource_type_internal_name:"layer_group",is_expanded:true,layers:[Ext.clone(g)]};var b=[g,o];return b}});Ext.define("GeoMind.data.coreCfg.Standard",{extend:GeoMind.base.Module,mixins:[GeoMind.data.coreCfg.Base],constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.mixins["GeoMind.data.coreCfg.Base"].constructor.call(this,b)}});Ext.define("GeoMind.utils.Clipboard",{mixins:{observable:Ext.util.Observable},singleton:true,data:null,constructor:function(b){this.mixins.observable.constructor.call(this);Ext.apply(this,b);this.callParent([b]);this.addEvents(["dataAddToClipboard","dataRemoveFromClipboard"]);this.data={}},setData:function(b,g){if(!this.data[b]){this.data[b]={}}this.data[b]=g;this.fireEvent("dataAddToClipboard",{key:b,value:this.data[b]})},removeData:function(b){this.fireEvent("dataRemoveFromClipboard",{key:b});if(this.data[b]){delete this.data[b]}},getData:function(b){var g;if(this.data[b]){g=this.data[b]}return g}});Ext.define("GeoMind.utils.Ajax",{singleton:true,fixResponse:function(b){if(!b){return}try{if(b.responseText){b=Ext.JSON.decode(b.responseText)}if(b.d){b=b.d}}catch(g){}return b},addDefaultHeader:function(b,g){if(!Ext.Ajax.defaultHeaders){Ext.Ajax.defaultHeaders={}}Ext.Ajax.defaultHeaders[b]=g},clearDefaultHeader:function(b){if(Ext.Ajax.defaultHeaders&&Ext.Ajax.defaultHeaders[b]){delete Ext.Ajax.defaultHeaders[b]}}});Ext.define("GeoMind.utils.SessionManager",{extend:GeoMind.base.Module,singleton:true,serviceUrl:null,serviceMethods:{read:"Read"},events:["requestSuccessfull","requestFailed"],ss:{sessionId:null,langCode:null},sessionStorageKey:"gm_session_id",userData:null,userConfig:null,setLangCode:function(b){this.ss.langCode=b;GeoMind.utils.Ajax.addDefaultHeader("gm_lang_code",b)},validateSession:function(b,g,h){if(b.sessionExpired){this.onUserAuthenticatedCallback=g;this.onSignInCancelCallback=h;var o={evtName:"sessionExpired",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(o,{confirmationRequired:false})}},authenticateUser:function(){var b={evtName:"loginUserRequest",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(b,{confirmationRequired:false})},onUserDetailsRetrieved:function(b){this.userData=b.data.data[0].value},getUserName:function(){var z="";if(this.userData!=null){var h=this.userData;var o=h.user_data.first_name;var b=h.user_data.middle_name;var g=h.user_data.last_name;var q=h.user_data.nick_name;if(o!=null&&o.length>0){z+=o}if(b!=null&&b.length>0){var w=b[0].toUpperCase();z=z.length>0?z+=" "+w+".":w+"."}if(g!=null&&g.length>0){z=z.length>0?z+=" "+g:g}if(q!=null&&q.length>0){var A="("+q+")";z=z.length>0?z+=" "+A:A}if(z.length==0){z=h.email}}return z},onUserAuthenticated:function(b){if(Ext.isFunction(this.onUserAuthenticatedCallback)){this.onUserAuthenticatedCallback()}this.onSignInCancelCallback=null;this.onUserAuthenticatedCallback=null},saveSession:function(){if(localStorage){if(!this.ss.sessionId){localStorage.removeItem(this.sessionStorageKey)}else{localStorage.setItem(this.sessionStorageKey,this.ss.sessionId)}}},restoreSession:function(){if(localStorage){var b=localStorage.getItem(this.sessionStorageKey);if(b){this.ss.sessionId=b;return true}}},onSignInCancel:function(b){if(Ext.isFunction(this.onSignInCancelCallback)){this.onSignInCancelCallback()}this.onSignInCancelCallback=null;this.onUserAuthenticatedCallback=null},_onUserDetailsRetrieved:function(b){this.onUserDetailsRetrieved(b)},_onUserAuthenticated:function(b){this.onUserAuthenticated(b)},_onSignInCancel:function(b){this.onSignInCancel(b)}});Ext.define("GeoMind.utils.DictionaryManager",{extend:GeoMind.base.Module,singleton:true,dictionaries:{},saveDictionary:function(g,b){if(this.dictionaries[g]==undefined){var h=[];for(r in b){h.push(b[r].data)}this.dictionaries[g]=h}},saveRawDataDictionary:function(g,b){if(this.dictionaries[g]==undefined){var h=[];for(d in b){h.push(b[d])}this.dictionaries[g]=h}if(g=="projections"&&Ext.isArray(this.dictionaries[g])){this.dictionaries[g].sort(function(q,o){return q.value-o.value})}},updateRawDataDictionary:function(g,b){var h=[];Ext.Array.each(b,function(o){h.push(o)});this.dictionaries[g]=h},getDictionary:function(b){if(this.dictionaries[b]==undefined){return null}else{return this.dictionaries[b]}},getDictionaryUuid:function(h,b){var g=null;var o=this.getDictionary(h);
1if(o){for(dv in o){if(o[dv].value==b){g=o[dv].uuid;break}}}return g},getDictionaryValue:function(b,h){var g=null;var o=this.getDictionary(b);if(o){for(dv in o){if(o[dv].uuid==h){g=o[dv].value;break}}}return g},getDictionaryDescription:function(b,g){var h=null;var o=this.getDictionary(b);if(o){for(dv in o){if(o[dv].uuid==g){h=o[dv].description;break}}}return h}});Ext.define("GeoMind.auth.lang.Standard",{strings:{callbackFailure_Msg1_part1:{pl:"Server zwróciÅ nastÄpujÄ
cy bÅÄ
d:<br>",en:"The server returned the following error:<br>"},callbackFailure_Msg1_part2:{pl:"<br><br>Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"<br><br>Please try again or contact the system administrator."},callbackFailure_Msg2:{pl:"BÅÄ
d komunikacji z serwerem. Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Server communication error. Please try again or contact the system administrator."},passReset_FeedbackMsg:{pl:"Twoje hasÅo zostaÅo zresetowane. Nowe hasÅo zostaÅo wysÅane na podany email.",en:"Your password has been reset. A new password has been sent to your email."},passChangeFeedback:{pl:"Twoje hasÅo zostaÅo zmienione.",en:"Your password has been changed."}},errCodes:{auth_1:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password."},auth_2:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password."},auth_3:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password."},auth_5:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password."},auth_9:{en:"Password expired. Please reset password."},auth_11:{en:"Account is locked. Please try again later."}}});Ext.define("GeoMind.auth.Standard",{extend:GeoMind.base.Module,lang:null,proxy:null,sIdPropertyName:null,crypto:null,constructor:function(b){this.resetCookies();Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.auth.lang.Standard");this.callParent([b]);this.addEvents(["userAuthenticated","userAuthenticationFailed","passReset","passResetFailed","passChanged","passChangeFailed","userSignedOut","userSignOutFailed","userDetailsRetrieved","userDetailsFailed"]);if(this.proxy.sIdPropertyName){this.sIdPropertyName=this.proxy.sIdPropertyName}this.proxy.on("userauthenticated",this.onUserAuthenticated,this);this.proxy.on("userauthenticationfailed",this.onUserAuthenticationFailed,this);this.proxy.on("passreset",this.onPassReset,this);this.proxy.on("passresetfailed",this.onPassResetFailed,this);this.proxy.on("passchanged",this.onPassChanged,this);this.proxy.on("passchangefailed",this.onPassChangeFailed,this);this.proxy.on("usersignedout",this.onUserSignedOut,this);this.proxy.on("usersignoutfailed",this.onUserSignOutFailed,this);this.proxy.on("userdetailsretrieved",this.onUserDetailsRetrieved,this);this.proxy.on("userdetailsfailed",this.onUserDetailsFailed,this)},resetCookies:function(){if(Ext.util.Cookies){Ext.util.Cookies.clear("sid");Ext.util.Cookies.clear("session_id")}},onUserAuthenticated:function(b){if(this.sIdPropertyName){GeoMind.utils.SessionManager.ss.sessionId=GeoMind.utils.Data.extractConfigObjectByKey(b.data,this.sIdPropertyName);GeoMind.utils.Ajax.addDefaultHeader(this.sIdPropertyName,GeoMind.utils.SessionManager.ss.sessionId)}var g={evtName:"userAuthenticated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false});this.proxy.getUserDetails()},onUserAuthenticationFailed:function(b){var g={evtName:"userAuthenticationFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onPassReset:function(b){var g={evtName:"passReset",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onPassResetFailed:function(b){var g={evtName:"passResetFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onUserSignedOut:function(b){var g={evtName:"userSignedOut",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onUserSignOutFailed:function(b){var g={evtName:"userSignOutFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onPassChanged:function(b){var g={evtName:"passChanged",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onPassChangeFailed:function(b){if(b.sessionExpired){GeoMind.utils.SessionManager.validateSession(b)}var g={evtName:"passChangeFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onUserDetailsRetrieved:function(b){var g={evtName:"userDetailsRetrieved",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onUserDetailsFailed:function(b){var g={evtName:"userDetailsFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},authenticateUser:function(g,h,b){if(b!=true){if(this.crypto&&this.crypto.scramble){h=this.crypto.scramble(h)}}this.proxy.authenticate(g,h)},resetPass:function(b){this.proxy.resetPass(b)},signOutUser:function(){this.clearSessionId();this.proxy.signOut()},changePass:function(g,b){if(this.crypto&&this.crypto.scramble){g=this.crypto.scramble(g);b=this.crypto.scramble(b)}this.proxy.changePass(g,b)},clearSessionId:function(){if(this.sIdPropertyName){GeoMind.utils.SessionManager.ss.sessionId=null;GeoMind.utils.Ajax.clearDefaultHeader(this.sIdPropertyName)}},onAuthenticateUser:function(b){this.authenticateUser(b.data.email,b.data.pass,b.data.avoidPassScramble)},onResetPass:function(b){this.resetPass(b.data.email)},onChangePass:function(b){this.changePass(b.data.currentPass,b.data.newPass)},onSignOutUser:function(b){this.signOutUser()},onSessionExpired:function(b){this.clearSessionId()},_onAuthenticateUser:function(b){this.onAuthenticateUser(b)},_onResetPass:function(b){this.onResetPass(b)},_onChangePass:function(b){this.onChangePass(b)},_onSignOutUser:function(b){this.onSignOutUser()},_onSessionExpired:function(b){this.onSessionExpired()},_onGetUserDetails:function(){this.proxy.getUserDetails()}});Ext.define("Client.auth.Standard",{extend:GeoMind.auth.Standard,requires:[],constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["registerUser","updateUserDetails"]);this.proxy.on("userauthenticated",this.onUserAuthenticated,this);this.proxy.on("userRegistered",this.onUserRegistered,this);this.proxy.on("userRegisteredFailed",this.onUserRegisteredFailed,this);this.proxy.on("userDetailsUpdated",this.onUserDetailsUpdated,this);this.proxy.on("userDetailsUpdatedFailed",this.onUserDetailsUpdatedFailed,this)},addSession:function(b){if(this.sIdPropertyName){GeoMind.utils.SessionManager.ss.sessionId=b;GeoMind.utils.SessionManager.saveSession();GeoMind.utils.Ajax.addDefaultHeader(this.sIdPropertyName,GeoMind.utils.SessionManager.ss.sessionId)}},checkSession:function(){if(GeoMind.utils.SessionManager.restoreSession()){GeoMind.utils.Ajax.addDefaultHeader(this.sIdPropertyName,GeoMind.utils.SessionManager.ss.sessionId)}},checkLogin:function(){if(GeoMind.utils.SessionManager.ss.sessionId){var b={evtName:"userAuthenticated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{noConfigReload:true}};this.dispatchEvent(b,{confirmationRequired:false});this.proxy.getUserDetails()}},authenticateUser:function(b,g,h){this.rememberSession=h;this.callParent([b,g,false])},clearSessionId:function(){if(this.sIdPropertyName){GeoMind.utils.SessionManager.ss.sessionId=null;GeoMind.utils.SessionManager.saveSession();GeoMind.utils.Ajax.clearDefaultHeader(this.sIdPropertyName)}},onAuthenticateUser:function(b){if(b.data.noConfigReload){this.noConfigReload=true}else{delete this.noConfigReload}this.authenticateUser(b.data.email,b.data.pass,b.data.remember)},_onResetApp:function(){this.resetApp()},resetApp:function(){var b=this;if(GeoMind.utils.SessionManager.ss.sessionId){b._resetApp=true;b.onUserAuthenticated()}else{b._onSignOutUser()}},onUserAuthenticated:function(b){if(this.sIdPropertyName&&b){GeoMind.utils.SessionManager.ss.sessionId=GeoMind.utils.Data.extractConfigObjectByKey(b.data,this.sIdPropertyName);if(this.rememberSession){GeoMind.utils.SessionManager.saveSession()}GeoMind.utils.Ajax.addDefaultHeader(this.sIdPropertyName,GeoMind.utils.SessionManager.ss.sessionId)}b=b||{};if(this.noConfigReload){b.noConfigReload=true;delete this.noConfigReload}if(this._resetApp){b.resetApp=true;delete this._resetApp}var g={evtName:"userAuthenticated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false});this.proxy.getUserDetails()},onUserRegistered:function(b){var g={evtName:"userRegistered",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onUserDetailsUpdated:function(b){var g={evtName:"userDetailsUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false});this.proxy.getUserDetails()},onUserRegisteredFailed:function(b){var g={evtName:"userRegisteredFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onUserDetailsUpdatedFailed:function(b){var g={evtName:"userDetailsUpdatedFailed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},registerUser:function(b){if(this.crypto&&this.crypto.scramble){b.pass=this.crypto.scramble(b.pass)}this.proxy.registerUser(b)},updateUserDetails:function(b){this.proxy.updateUserDetails(b)},onRegisterUser:function(b){this.registerUser(b.data)},onUpdateUserDetails:function(b){this.updateUserDetails(b.data)},_onRegisterUser:function(b){this.onRegisterUser(b)},_onUpdateUserDetails:function(b){this.onUpdateUserDetails(b)},_onSignOutUser:function(){this.onSignOutUser()}});Ext.define("GeoMind.auth.proxy.TemplateGeneric",{serviceUrl:"",serviceMethods:{authenticate:"Authenticate",resetPass:"ResetPass",changePass:"ChangePass",signOut:"SignOut",getUserDetails:"GetUserDetails"},sIdPropertyName:"sid",constructor:function(b){Ext.apply(this,b)},registerEvents:function(){this.addEvents(["userauthenticated","userauthenticationfailed","passreset","passresetfailed","passchanged","passchangefailed","usersignedout","usersignoutfailed","userdetailsretrieved","userdetailsfailed"])},authenticate:function(b,g){},authCallbackSuccess:function(b,g){},authCallbackFailure:function(b,g){},resetPass:function(b,g){},resetPassCallbackSuccess:function(b,g){},resetPassCallbackFailure:function(b,g){},changePass:function(b,g){},changePassCallbackSuccess:function(b,g){},changePassCallbackFailure:function(b,g){},signOut:function(){},signOutCallbackSuccess:function(b,g){},signOutCallbackFailure:function(b,g){}});Ext.define("GeoMind.auth.proxy.Template",{extend:GeoMind.auth.proxy.TemplateGeneric,mixins:[Ext.util.Observable],constructor:function(b){this.mixins["Ext.util.Observable"].constructor.call(this,b);Ext.apply(this,b);this.callParent([b]);this.registerEvents()}});Ext.define("GeoMind.auth.proxy.Standard",{extend:GeoMind.auth.proxy.Template,lang:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.auth.lang.Standard");this.callParent([b])},authenticate:function(b,g){Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.authenticate,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({email:b,pass:g}),success:Ext.bind(this.authCallbackSuccess,this),failure:Ext.bind(this.authCallbackFailure,this)})},authCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.fireEvent("userauthenticated",b)}else{if(b.exception){b.feedbackMsg=this.lang.getString("callbackFailure_Msg1_part1")+this.lang.getError(b.exception.code)+this.lang.getString("callbackFailure_Msg1_part2")}this.fireEvent("userauthenticationfailed",b)}},authCallbackFailure:function(b,g){b.feedbackMsg=this.lang.getString("callbackFailure_Msg2");this.fireEvent("userauthenticationfailed",b)},resetPass:function(b){Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.resetPass,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({users:[b]}),success:Ext.bind(this.resetPassCallbackSuccess,this),failure:Ext.bind(this.resetPassCallbackFailure,this)})},resetPassCallbackSuccess:function(b,g){this.fireEvent("passreset",{feedbackMsg:this.lang.getString("passReset_FeedbackMsg")})},resetPassCallbackFailure:function(b,g){this.fireEvent("passresetfailed",{feedbackMsg:this.lang.getString("callbackFailure_Msg2")})},changePass:function(g,b){Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.changePass,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({currentPass:g,newPass:b}),success:Ext.bind(this.changePassCallbackSuccess,this),failure:Ext.bind(this.changePassCallbackFailure,this)})},changePassCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){b.feedbackMsg=this.lang.getString("passChangeFeedback");this.fireEvent("passchanged",b)}else{if(b.exception){b.feedbackMsg=this.lang.getString("callbackFailure_Msg1_part1")+this.lang.getError(b.exception.code)+this.lang.getString("callbackFailure_Msg1_part2")}this.fireEvent("passchangefailed",b)}},changePassCallbackFailure:function(b,g){b.feedbackMsg=this.lang.getString("callbackFailure_Msg2");this.fireEvent("passchangefailed",b)},signOut:function(){this.fireEvent("usersignedout")},signOutCallbackSuccess:function(b,g){},signOutCallbackFailure:function(b,g){},getUserDetails:function(){Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.getUserDetails,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(this.getUserDetailsCallbackSuccess,this),failure:Ext.bind(this.getUserDetailsCallbackFailure,this)})},getUserDetailsCallbackSuccess:function(b){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.fireEvent("userdetailsretrieved",b)}else{if(b.exception){b.feedbackMsg=this.lang.getString("callbackFailure_Msg1_part1")+this.lang.getError(b.exception.code)+this.lang.getString("callbackFailure_Msg1_part2")}this.fireEvent("userdetailsfailed",b)}},getUserDetailsCallbackFailure:function(b){b.feedbackMsg=this.lang.getString("callbackFailure_Msg2");this.fireEvent("userdetailsfailed",b)}});Ext.define("Client.auth.proxy.Standard",{extend:GeoMind.auth.proxy.Standard,registerUser:function(b){Ext.Ajax.request({url:this.serviceUrl+"registerUser",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:Ext.apply({url:__pageurl__},b),success:Ext.bind(this.registerUserCallbackSuccess,this),failure:Ext.bind(this.registerUserCallbackFailure,this)})},updateUserDetails:function(b){Ext.Ajax.request({url:this.serviceUrl+"updateUserDetails",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:b,success:Ext.bind(this.updateUserDetailsCallbackSuccess,this),failure:Ext.bind(this.updateUserDetailsCallbackFailure,this)})},registerUserCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.fireEvent("userRegistered",b)}else{if(b.exception){b.feedbackMsg=this.lang.getString("callbackFailure_Msg1_part1")+this.lang.getError(b.exception.code)+this.lang.getString("callbackFailure_Msg1_part2")}this.fireEvent("userRegisteredFailed",b)}},updateUserDetailsCallbackS
1uccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.fireEvent("userDetailsUpdated",b)}else{if(b.exception){b.feedbackMsg=this.lang.getString("callbackFailure_Msg1_part1")+this.lang.getError(b.exception.code)+this.lang.getString("callbackFailure_Msg1_part2")}this.fireEvent("userDetailsUpdatedFailed",b)}},registerUserCallbackFailure:function(b,g){b.feedbackMsg=this.lang.getString("callbackFailure_Msg2");this.fireEvent("userRegisteredFailed",b)},updateUserDetailsCallbackFailure:function(b,g){b.feedbackMsg=this.lang.getString("callbackFailure_Msg2");this.fireEvent("userDetailsUpdatedFailed",b)}});Ext.define("GeoMind.crypto.CryptoJS",{singleton:true,constructor:function(){this.prepare()},getHasher:function(b){var g={algorithm:b.toUpperCase(),CryptoJS:this.CryptoJS,scramble:function(h){return this.CryptoJS[this.algorithm](h).toString()}};return g},prepare:function(){var b=this;b.CryptoJS=b.CryptoJS||function(I,A){var o={},F=o.lib={},E=function(){},C=F.Base={extend:function(h){E.prototype=this;var g=new E();h&&g.mixIn(h);g.hasOwnProperty("init")||(g.init=function(){g.$super.init.apply(this,arguments)});g.init.prototype=g;g.$super=this;return g},create:function(){var g=this.extend();g.init.apply(g,arguments);return g},init:function(){},mixIn:function(h){for(var g in h){h.hasOwnProperty(g)&&(this[g]=h[g])}h.hasOwnProperty("toString")&&(this.toString=h.toString)},clone:function(){return this.init.prototype.extend(this)}},z=F.WordArray=C.extend({init:function(h,g){h=this.words=h||[];this.sigBytes=g!=A?g:4*h.length},toString:function(g){return(g||w).stringify(this)},concat:function(h){var g=this.words,G=h.words,L=this.sigBytes;h=h.sigBytes;this.clamp();if(L%4){for(var q=0;q<h;q++){g[L+q>>>2]|=(G[q>>>2]>>>24-8*(q%4)&255)<<24-8*((L+q)%4)}}else{if(65535<G.length){for(q=0;q<h;q+=4){g[L+q>>>2]=G[q>>>2]}}else{g.push.apply(g,G)}}this.sigBytes+=h;return this},clamp:function(){var h=this.words,g=this.sigBytes;h[g>>>2]&=4294967295<<32-8*(g%4);h.length=I.ceil(g/4)},clone:function(){var g=C.clone.call(this);g.words=this.words.slice(0);return g},random:function(q){for(var g=[],h=0;h<q;h+=4){g.push(4294967296*I.random()|0)}return new z.init(g,q)}}),H=o.enc={},w=H.Hex={stringify:function(h){var g=h.words;h=h.sigBytes;for(var G=[],L=0;L<h;L++){var q=g[L>>>2]>>>24-8*(L%4)&255;G.push((q>>>4).toString(16));G.push((q&15).toString(16))}return G.join("")},parse:function(h){for(var g=h.length,q=[],G=0;G<g;G+=2){q[G>>>3]|=parseInt(h.substr(G,2),16)<<24-4*(G%8)}return new z.init(q,g/2)}},J=H.Latin1={stringify:function(h){var g=h.words;h=h.sigBytes;for(var q=[],G=0;G<h;G++){q.push(String.fromCharCode(g[G>>>2]>>>24-8*(G%4)&255))}return q.join("")},parse:function(h){for(var g=h.length,q=[],G=0;G<g;G++){q[G>>>2]|=(h.charCodeAt(G)&255)<<24-8*(G%4)}return new z.init(q,g)}},B=H.Utf8={stringify:function(h){try{return decodeURIComponent(escape(J.stringify(h)))}catch(g){throw Error("Malformed UTF-8 data")}},parse:function(g){return J.parse(unescape(encodeURIComponent(g)))}},D=F.BufferedBlockAlgorithm=C.extend({reset:function(){this._data=new z.init();this._nDataBytes=0},_append:function(g){"string"==typeof g&&(g=B.parse(g));this._data.concat(g);this._nDataBytes+=g.sigBytes},_process:function(O){var g=this._data,M=g.words,N=g.sigBytes,G=this.blockSize,q=N/(4*G),q=O?I.ceil(q):I.max((q|0)-this._minBufferSize,0);O=q*G;N=I.min(4*O,N);if(O){for(var L=0;L<O;L+=G){this._doProcessBlock(M,L)}L=M.splice(0,O);g.sigBytes-=N}return new z.init(L,N)},clone:function(){var g=C.clone.call(this);g._data=this._data.clone();return g},_minBufferSize:0});F.Hasher=D.extend({cfg:C.extend(),init:function(g){this.cfg=this.cfg.extend(g);this.reset()},reset:function(){D.reset.call(this);this._doReset()},update:function(g){this._append(g);this._process();return this},finalize:function(g){g&&this._append(g);return this._doFinalize()},blockSize:16,_createHelper:function(g){return function(h,q){return(new g.init(q)).finalize(h)}},_createHmacHelper:function(g){return function(h,q){return(new K.HMAC.init(g,q)).finalize(h)}}});var K=o.algo={};return o}(Math);(function(o){var h=b.CryptoJS,w=h.lib,z=w.Base,q=w.WordArray,h=h.x64={};h.Word=z.extend({init:function(g,A){this.high=g;this.low=A}});h.WordArray=z.extend({init:function(g,A){g=this.words=g||[];this.sigBytes=A!=o?A:8*g.length},toX32:function(){for(var g=this.words,D=g.length,C=[],B=0;B<D;B++){var A=g[B];C.push(A.high);C.push(A.low)}return q.create(C,this.sigBytes)},clone:function(){for(var A=z.clone.call(this),D=A.words=this.words.slice(0),B=D.length,C=0;C<B;C++){D[C]=D[C].clone()}return A}})})();(function(){function E(){return B.create.apply(B,arguments)}for(var z=b.CryptoJS,h=z.lib.Hasher,C=z.x64,B=C.Word,A=C.WordArray,C=z.algo,w=[E(1116352408,3609767458),E(1899447441,602891725),E(3049323471,3964484399),E(3921009573,2173295548),E(961987163,4081628472),E(1
1508970993,3053834265),E(2453635748,2937671579),E(2870763221,3664609560),E(3624381080,2734883394),E(310598401,1164996542),E(607225278,1323610764),E(1426881987,3590304994),E(1925078388,4068182383),E(2162078206,991336113),E(2614888103,633803317),E(3248222580,3479774868),E(3835390401,2666613458),E(4022224774,944711139),E(264347078,2341262773),E(604807628,2007800933),E(770255983,1495990901),E(1249150122,1856431235),E(1555081692,3175218132),E(1996064986,2198950837),E(2554220882,3999719339),E(2821834349,766784016),E(2952996808,2566594879),E(3210313671,3203337956),E(3336571891,1034457026),E(3584528711,2466948901),E(113926993,3758326383),E(338241895,168717936),E(666307205,1188179964),E(773529912,1546045734),E(1294757372,1522805485),E(1396182291,2643833823),E(1695183700,2343527390),E(1986661051,1014477480),E(2177026350,1206759142),E(2456956037,344077627),E(2730485921,1290863460),E(2820302411,3158454273),E(3259730800,3505952657),E(3345764771,106217008),E(3516065817,3606008344),E(3600352804,1432725776),E(4094571909,1467031594),E(275423344,851169720),E(430227734,3100823752),E(506948616,1363258195),E(659060556,3750685593),E(883997877,3785050280),E(958139571,3318307427),E(1322822218,3812723403),E(1537002063,2003034995),E(1747873779,3602036899),E(1955562222,1575990012),E(2024104815,1125592928),E(2227730452,2716904306),E(2361852424,442776044),E(2428436474,593698344),E(2756734187,3733110249),E(3204031479,2999351573),E(3329325298,3815920427),E(3391569614,3928383900),E(3515267271,566280711),E(3940187606,3454069534),E(4118630271,4000239992),E(116418474,1914138554),E(174292421,2731055270),E(289380356,3203993006),E(460393269,320620315),E(685471733,587496836),E(852142971,1086792851),E(1017036298,365543100),E(1126000580,2618297676),E(1288033470,3409855158),E(1501505948,4234509866),E(1607167915,987167468),E(1816402316,1246189591)],D=[],o=0;80>o;o++){D[o]=E()}C=C.SHA512=h.extend({_doReset:function(){this._hash=new A.init([new B.init(1779033703,4089235720),new B.init(3144134277,2227873595),new B.init(1013904242,4271175723),new B.init(2773480762,1595750129),new B.init(1359893119,2917565137),new B.init(2600822924,725511199),new B.init(528734635,4215389547),new B.init(1541459225,327033209)])},_doProcessBlock:function(a2,aX){for(var aV=this._hash.words,aW=aV[0],aQ=aV[1],a1=aV[2],aZ=aV[3],a0=aV[4],aU=aV[5],aS=aV[6],aV=aV[7],aP=aW.high,aR=aW.low,aO=aQ.high,ao=aQ.low,ac=a1.high,an=a1.low,aE=aZ.high,am=aZ.low,aC=a0.high,al=a0.low,a3=aU.high,ak=aU.low,aF=aS.high,aj=aS.low,aD=aV.high,ai=aV.low,aK=aP,aN=aR,av=aO,ax=ao,au=ac,aw=an,af=aE,at=am,aJ=aC,aM=al,ah=a3,ar=ak,ag=aF,aq=aj,ae=aD,ap=ai,aI=0;80>aI;aI++){var aA=D[aI];if(16>aI){var aL=aA.high=a2[aX+2*aI]|0,aY=aA.low=a2[aX+2*aI+1]|0}else{var aL=D[aI-15],aY=aL.high,aH=aL.low,aL=(aY>>>1|aH<<31)^(aY>>>8|aH<<24)^aY>>>7,aH=(aH>>>1|aY<<31)^(aH>>>8|aY<<24)^(aH>>>7|aY<<25),ay=D[aI-2],aY=ay.high,aT=ay.low,ay=(aY>>>19|aT<<13)^(aY<<3|aT>>>29)^aY>>>6,aT=(aT>>>19|aY<<13)^(aT<<3|aY>>>29)^(aT>>>6|aY<<26),aY=D[aI-7],ad=aY.high,az=D[aI-16],aB=az.high,az=az.low,aY=aH+aY.low,aL=aL+ad+(aY>>>0<aH>>>0?1:0),aY=aY+aT,aL=aL+ay+(aY>>>0<aT>>>0?1:0),aY=aY+az,aL=aL+aB+(aY>>>0<az>>>0?1:0);aA.high=aL;aA.low=aY}var ad=aJ&ah^~aJ&ag,az=aM&ar^~aM&aq,aA=aK&av^aK&au^av&au,ab=aN&ax^aN&aw^ax&aw,aH=(aK>>>28|aN<<4)^(aK<<30|aN>>>2)^(aK<<25|aN>>>7),ay=(aN>>>28|aK<<4)^(aN<<30|aK>>>2)^(aN<<25|aK>>>7),aT=w[aI],aG=aT.high,G=aT.low,aT=ap+((aM>>>14|aJ<<18)^(aM>>>18|aJ<<14)^(aM<<23|aJ>>>9)),aB=ae+((aJ>>>14|aM<<18)^(aJ>>>18|aM<<14)^(aJ<<23|aM>>>9))+(aT>>>0<ap>>>0?1:0),aT=aT+az,aB=aB+ad+(aT>>>0<az>>>0?1:0),aT=aT+G,aB=aB+aG+(aT>>>0<G>>>0?1:0),aT=aT+aY,aB=aB+aL+(aT>>>0<aY>>>0?1:0),aY=ay+ab,aA=aH+aA+(aY>>>0<ay>>>0?1:0),ae=ag,ap=aq,ag=ah,aq=ar,ah=aJ,ar=aM,aM=at+aT|0,aJ=af+aB+(aM>>>0<at>>>0?1:0)|0,af=au,at=aw,au=av,aw=ax,av=aK,ax=aN,aN=aT+aY|0,aK=aB+aA+(aN>>>0<aT>>>0?1:0)|0}aR=aW.low=aR+aN;aW.high=aP+aK+(aR>>>0<aN>>>0?1:0);ao=aQ.low=ao+ax;aQ.high=aO+av+(ao>>>0<ax>>>0?1:0);an=a1.low=an+aw;a1.high=ac+au+(an>>>0<aw>>>0?1:0);am=aZ.low=am+at;aZ.high=aE+af+(am>>>0<at>>>0?1:0);al=a0.low=al+aM;a0.high=aC+aJ+(al>>>0<aM>>>0?1:0);ak=aU.low=ak+ar;aU.high=a3+ah+(ak>>>0<ar>>>0?1:0);aj=aS.low=aj+aq;aS.high=aF+ag+(aj>>>0<aq>>>0?1:0);ai=aV.low=ai+ap;aV.high=aD+ae+(ai>>>0<ap>>>0?1:0)},_doFinalize:function(){var q=this._data,H=q.words,F=8*this._nDataBytes,G=8*q.sigBytes;H[G>>>5]|=128<<24-G%32;H[(G+128>>>10<<5)+30]=Math.floor(F/4294967296);H[(G+128>>>10<<5)+31]=F;q.sigBytes=4*H.length;this._process();return this._hash.toX32()},clone:function(){var g=h.clone.call(this);g._hash=this._hash.clone();return g},blockSize:32});z.SHA512=h._createHelper(C);z.HmacSHA512=h._createHmacHelper(C)})()}});Ext.define("GeoMind.data.model.BaseFields",{singleton:true,fields:[{name:"id",type:"integer",defaultValue:null,useNull:true},{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"resource_type_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"resource_type_internal_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"creator_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"last_modified_by",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"create_date",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixD
1ate(b)}},{name:"modify_date",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"end_date",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"keep_history",type:"boolean",defaultValue:false,useNull:true},{name:"is_active",type:"boolean",defaultValue:true,useNull:true},{name:"config",type:"auto",defaultValue:null,useNull:true,convert:function(b,g){if(b&&b.__type){delete b.__type}return b}},{name:"links",type:"auto",defaultValue:[],useNull:true},{name:"translations",type:"auto",defaultValue:[],useNull:true}]});Ext.define("GeoMind.data.model.Base",{extend:Ext.data.Model,fields:GeoMind.data.model.BaseFields.fields,config:{fields:GeoMind.data.model.BaseFields.fields},idProperty:"_id",constructor:function(){var b=this;b.callParent(arguments);if(!b.data.config){b.data.config={configs:[]}}}});Ext.define("GeoMind.data.model.MapFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"friendly_url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"is_mobile",type:"boolean",defaultValue:true,useNull:true},{name:"is_desktop",type:"boolean",defaultValue:true,useNull:true},{name:"all_overlays",type:"boolean",defaultValue:true,useNull:true},{name:"tile_size",type:"int",defaultValue:256,useNull:true},{name:"fractional_zoom",type:"boolean",defaultValue:false,useNull:true},{name:"zoom_method",type:"string",defaultValue:"OpenLayers.Easing.Quad.easeOut",useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"pan_method",type:"string",defaultValue:"OpenLayers.Easing.Expo.easeOut",useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"pan_duration",type:"int",defaultValue:null,useNull:true},{name:"is_active_map",type:"bool",defaultValue:false,useNull:true},{name:"is_saved_workspace",type:"bool",defaultValue:false,useNull:true},{name:"projections",type:"auto",defaultValue:[],useNull:true},{name:"modules",type:"auto",defaultValue:[],useNull:true}]});Ext.define("GeoMind.data.model.Map",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.MapFields.fields,config:{fields:GeoMind.data.model.MapFields.fields}});Ext.define("GeoMind.data.model.LayerFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layer_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layer_type_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layer_sub_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layer_sub_type_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"printable",type:"boolean",defaultValue:false,useNull:true},{name:"queryable",type:"boolean",defaultValue:true,useNull:true},{name:"is_base_layer",type:"boolean",defaultValue:false,useNull:false},{name:"transition_effect",type:"string",defaultValue:"resize",useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"buffer",type:"int",defaultValue:0,useNull:true},{name:"visibility",type:"boolean",defaultValue:true,useNull:true},{name:"opacity",type:"int",defaultValue:100,useNull:false},{name:"attribution",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"icon_cls",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"always_in_range",type:"boolean",defaultValue:true,useNull:true},{name:"ratio",type:"number",defaultValue:1.5,useNull:false},{name:"single_tile",type:"boolean",defaultValue:true,useNull:false},{name:"tile_size",type:"int",defaultValue:256,useNull:false},{name:"gutter",type:"int",defaultValue:null,useNull:true},{name:"get_feature_info_url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layers",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"query_layers",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"version",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"version_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"transparent",type:"boolean",defaultValue:true,useNull:true},{name:"image_format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"image_format_value",string:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"info_format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"info_format_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"exception_format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"exception_format_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"lonlat_bbox",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"format_suffix",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"matrix_ids",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"matrix_set",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dimensions",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"request_encoding",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"mode",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"map_imagetype",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"use_jsonp",type:"boolean",defaultValue:null,useNull:true},{name:"format_options",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"style",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"proxy_url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"proxy_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"request_method",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"print_url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"get_legend_url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"min_scale",type:"number",defaultValue:null,useNull:true},{name:"max_scale",type:"number",defaultValue:null,useNull:true},"catUuid","catName","label","preload",{name:"olLayer",type:"auto",defaultValue:null,useNull:true},{name:"isUtilityLayer",type:"boolean",defaultValue:false,useNull:true},{name:"isLoading",type:"boolean",defaultValue:false,useNull:false},{name:"isActiveInfo",type:"boolean",defaultValue:false,useNull:false},{name:"isActivePrintable",type:"boolean",defaultValue:false,useNull:false},{name:"projections",type:"auto",defaultValue:[],useNull:true},{name:"is_internal",type:"bool",defaultValue:false,useNull:true},{name:"is_exportable",type:"bool",defaultValue:false,useNull:true}]});Ext.define("GeoMind.data.model.Layer",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.LayerFields.fields,config:{fields:GeoMind.data.model.LayerFields.fields}});Ext.define("GeoMind.data.model.LayerGroupFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"is_expanded",type:"boolean",defaultValue:false,useNull:true}]});Ext.define("GeoMind.data.model.LayerGroup",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.LayerGroupFields.fields,config:{fields:GeoMind.data.model.LayerGroupFields.fields}});Ext.define("GeoMind.data.model.ModuleFields",{singleton:true,rtequires:["GeoMind.utils.Date","GeoMind.utils.String"],fields:[{name:"internal_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"internal_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"type",type:"int",defaultValue:null,useNull:true},{name:"version",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"version_history",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.Module",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.ModuleFields.fields,config:{fields:GeoMind.data.model.ModuleFields.fields}});Ext.define("GeoMind.data.model.TreeFields",{singleton:true,fields:[{name:"id",type:"string",defaultValue:Ext.i
1d(),useNull:false,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"model",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"leaf",type:"boolean",defaultValue:false,useNull:false},{name:"checked",type:"boolean",defaultValue:false,useNull:false},{name:"expandable",type:"boolean",defaultValue:false,useNull:false},{name:"expanded",type:"boolean",defaultValue:false,useNull:false},{name:"recordData",type:"auto",defaultValue:null,useNull:true},{name:"last_updated",type:"auto",defaultValue:null,useNull:true},{name:"disabled",type:"bool",defaultValue:false},{name:"hidden",type:"bool",defaultValue:false},{name:"config",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.Tree",{extend:Ext.data.Model,fields:GeoMind.data.model.TreeFields.fields,config:{fields:GeoMind.data.model.TreeFields.fields}});Ext.define("GeoMind.data.model.ProjectionFields",{singleton:true,fields:[{name:"epsg",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},"visible",{name:"proj4j",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"projectionSettings",type:"auto",defaultValue:null,useNull:true}]});Ext.define("GeoMind.data.model.Projection",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.ProjectionFields.fields,config:{fields:GeoMind.data.model.ProjectionFields.fields}});Ext.define("GeoMind.data.Models",{singleton:true,relatedModels:{map:"GeoMind.data.model.Map",maps:"GeoMind.data.model.Map",layer_group:"GeoMind.data.model.LayerGroup",layer_groups:"GeoMind.data.model.LayerGroup",layergroups:"GeoMind.data.model.LayerGroup",layer:"GeoMind.data.model.Layer",layers:"GeoMind.data.model.Layer",project:"GeoMind.data.model.Project",projects:"GeoMind.data.model.Project",projection:"GeoMind.data.model.Projection",projections:"GeoMind.data.model.Projection"},getModelByType:function(g){var b=null;if(typeof(g)=="string"){if(this.relatedModels[g.toLowerCase()]){b=this.relatedModels[g.toLowerCase()]}}return b}});Ext.define("GeoMind.utils.Tree",{singleton:true,constructor:function(b){},createTreeStore:function(){return Ext.create("Ext.data.TreeStore",{model:"GeoMind.data.model.Tree",root:{text:"root",id:"root",expanded:true,children:[]}})},findByUuid:function(b,q){var g=null;for(var o=0,h=b.length;o<h;o++){if(b[o].uuid==q){g=b[o];break}}return g},convertToTree:function(w,A,z){var b=this.findByUuid(w[A],z);var g=Ext.create("Ext.data.TreeStore",{model:"GeoMind.data.model.Tree",root:{text:"root",id:"root",expanded:true,children:[]}});var B=GeoMind.utils.InitCheckup;var h;if(B.isExtJs){h=g.getRootNode()}else{h=g.getRoot()}var q=Ext.create(GeoMind.data.Models.getModelByType(A),b);var o=Ext.create("GeoMind.data.model.Tree",{type:A,model:GeoMind.data.Models.getModelByType(A),leaf:false,expandable:true,expanded:true,recordData:q});var C=h.appendChild(o);if(B.isExtJs){g.setRootNode(C)}else{g.setRoot(C)}this.addExtraData(C.get("recordData"),w);this.buildNode(C,w);return C},getProjectionByUuid:function(g,h){for(var b in h.projections){if(h.projections[b].uuid==g){return Ext.clone(h.projections[b])}}return null},addExtraData:function(b,z){var g=b.get("links");var h=null;if(g){var w=[];for(var q in g){if(g[q].child_type_internal_name=="projection"){var o=this.getProjectionByUuid(g[q].child_uuid,z);o.projectionSettings=g[q].extended_data;w.push(o)}}b.set("projections",w)}},buildNode:function(h,z){var D=h.get("recordData").get("links");for(var A=0,q=D.length;A<q;A++){var C=this.getClientSideType(D[A].child_type_internal_name);var B=GeoMind.data.Models.getModelByType(C);if(!B){continue}var o=Ext.create(B,this.findByUuid(z[C],D[A].child_uuid));if(z[C]){if(D[A].child_type_internal_name=="layer_group"){var w=this.isParentNode(h,D[A].child_uuid);if(w){continue}var g=Ext.create("GeoMind.data.model.Tree",{type:"layergroup",model:B,leaf:false,expandable:true,expanded:o.get("is_expanded"),recordData:o});var b=h.appendChild(g);this.buildNode(b,z);for(cn in b.childNodes){if(b.childNodes[cn].get("recordData").get("visibility")==true){b.set("checked",true);break}}}else{if(D[A].child_type_internal_name=="layer"){this.addExtraData(o,z);var g=Ext.create("GeoMind.data.model.Tree",{type:"layer",model:B,leaf:true,expandable:true,expanded:true,checked:o.get("visibility"),recordData:o});h.appendChild(g)}}}}},isParentNode:function(h,g){var b=h.parentNode;if(!b){return false}if(b.get("recordData").get("uuid")==g){return true}return this.isParentNode(b,g)},getClientSideType:function(g){var b=null;switch(g){case"layer":b="layers";break;case"layer_group":b="layer_groups";break;case"projection":b="projections";break;default:b=g;break}return b},extractNodeDataToArrayOfObjects:function(h,b){var g=[];for(n in h){var o={};for(f in b){o[b[f]]=h[n].get(b[f])}g.push(o)}return g},extractNodeDataToArray:function(g,h){var b=[];for(n in g){b.push(g[n].get(h))}return b},getNodesForType:function(h,q,b){var w=[];if(b&&Ext.isArray(b)){w=b}if(q.get("model")==h){w.push(q)}for(var o=0,g=q.childNodes.length;o<g;o++){var z=q.childNodes[o];this.getNodesForType(h,z,w)}return w},getNodes:function(o,b){if(!b||!Ext.isArray(b)){b=[]}b.push(o);if(o.hasChildNodes()){for(var h=0,g=o.childNodes.length;h<g;h++){var q=o.childNodes[h];this.getNodes(q,b)}}return b},hideNode:function(b,o){var g=b.getRowId(o);var h=Ext.get(g);h.setDisplayed(false)},showNode:function(b,o){var g=b.getRowId(o);var h=Ext.get(g);h.setDisplayed(false)}});Ext.define("GeoMind.utils.Map",{singleton:true,blankTile:"resx/blankTile/blankTile.gif",wktReader:null,layerUrlSeparator:"|",customUrlParams:null,layerCfg:{wikipedia:{proxyHost:"xDomainProxy.ashx?url=",wikiImageFolderRelativePath:"resx/layerIcons/",selectCallback:Ext.bind(this.prepareInfoToolTip,this)},panoramio:{proxyHost:"xDomainProxy.ashx?url=",numOfPicsPulled:100,order:"popularity",set:"public",size:"small",usePanoramioMarker:true,panoramioImageFolderRelativePath:"resx/layerIcons/",selectCallback:Ext.bind(this.prepareInfoToolTip,this)}},setLayerCfg:function(b){Ext.merge(b,this.layerCfg)}
1,constructor:function(b){Ext.apply(this,b);this.customUrlParams={}},setBlankTile:function(b){this.blankTile=b},flattenUnifiedMapConfig:function(q){var g=GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.Layer",q);var w=[];for(n in g){var b=g[n].get("recordData");w.push(b)}var o=q.get("recordData");var h={map:o,layers:w};return h},bboxFromStringArray:function(g){if(g&&g.length>0){var h=g.split(",");if(h.length==4){var b=new OpenLayers.Bounds();b.extend(new OpenLayers.LonLat(h[0],h[1]));b.extend(new OpenLayers.LonLat(h[2],h[3]));return b}}return null},bboxFromWkt:function(b,h){if(!this.wktReader){this.wktReader=new OpenLayers.Format.WKT()}var g=this.wktReader.read(b);if(h){return g.geometry.getBounds().toBBOX()}else{return g.geometry.getBounds()}},numArrFromStringArray:function(h){var g=[];var o=h.split(",");for(a in o){var b=parseFloat(o[a]);if(!isNaN(b)){g.push(b)}}if(g.length==0){g=null}return g},prepareOlMapConfig:function(o,b){if(!b){b=0}if(b<0||o.projections.length>b){b=0}var h={};this.createProjectionDef(o.projections[b].epsg,o.projections[b].proj4j);h.projection=new OpenLayers.Projection("EPSG:"+o.projections[b].epsg);h.units=h.projection.getUnits();h.tileSize=new OpenLayers.Size(o.tile_size,o.tile_size);var g=o.projections[b].projectionSettings;if(g){for(mp in g){if(mp=="max_extent"){h.maxExtent=this.bboxFromStringArray(g[mp])}if(mp=="min_extent"){h.minExtent=this.bboxFromStringArray(g[mp])}if(mp=="max_resolution"){h.maxResolution=g[mp]}if(mp=="min_resolution"){h.minResolution=g[mp]}if(mp=="max_scale"){h.maxScale=g[mp]}if(mp=="min_scale"){h.minScale=g[mp]}if(mp=="num_zoom_levels"){h.numZoomLevels=g[mp]}if(mp=="initial_extent"){h.initialExtent=this.bboxFromStringArray(g[mp])}if(mp=="restricted_extent"){h.restrictedExtent=this.bboxFromStringArray(g[mp])}}}if(h.initialExtent==undefined){h.initialExtent=h.maxExtent}h.controls=[];return h},createProjectionDef:function(b,g){if(b&&g&&b!=""&&g!=""){if(!Proj4js.defs["EPSG:"+b]){Proj4js.defs["EPSG:"+b]=g}}},createMap:function(g){g.controls=[];g.tileManager=null;g.fallThrough=true;g.zoomMethod=OpenLayers.Easing.Linear.easeIn;g.zoomDuration=3;var b=g.MapClass?new g.MapClass(g):new OpenLayers.Map(g);this.takeCareOfBaseLayer(b,g);this.addMapControls(b,this.getMapControls());return b},takeCareOfBaseLayer:function(h,o){var g={isBaseLayer:true,sphericalMercator:(o.projection.getCode()=="EPSG:900913"||o.projection.getCode()=="GOOGLE")?true:false,projection:o.projection,units:o.projection.getUnits(),displayInLayerSwitcher:false,maxExtent:o.maxExtent,numZoomLevels:o.numZoomLevels,maxResolution:o.maxResolution};var b=new OpenLayers.Layer.XYZ("fake",this.blankTile,g,{buffer:0});b.isBaseLayer=true;b.group=1;h.addLayer(b)},getMapControls:function(){return[new OpenLayers.Control.Navigation({dragPanOptions:{enableKinetic:true},controlName:"navigation"}),new OpenLayers.Control.ZoomBox({controlName:"zoomin",out:false}),new OpenLayers.Control.ZoomBox({controlName:"zoomout",out:true}),new OpenLayers.Control.NavigationHistory({controlName:"navigationhistory"})]},getMapControlByControlName:function(h,g){var b=null;for(var o=0;o<h.controls.length;o++){if(h.controls[o].controlName==g){b=h.controls[o];break}}return b},resetMap:function(b,g){this.removeMapControls(b);this.removeMapLayers(b);this.takeCareOfBaseLayer(b,g);b.setOptions(g);this.addMapControls(b,this.getMapControls())},removeMapControls:function(b){while(b.controls.length>0){var g=b.controls[0];g.deactivate();b.removeControl(b.controls[g]);g.destroy();g=null}b.controls=[]},addMapControls:function(g,b){g.addControls(b)},removeMapLayers:function(h){var g=h._layers||h.layers;while(g.length>0){var b=g[0];b.destroy()}},setCustomParam:function(b,g){if(b&&g){this.customUrlParams[b]=g}},fixLayerUrl:function(b){if(!b){return b}if(b.indexOf(this.layerUrlSeparator)>-1){b=b.split(this.layerUrlSeparator)}else{if(!Ext.isArray(b)){b=[b]}}var g=[];for(p in this.customUrlParams){g.push(p+"="+this.customUrlParams[p])}g=g.join("&");for(u in b){if(b[u].indexOf("?")>-1){if(b[u].charAt(b[u].length-1)!="?"&&b[u].charAt(b[u].length-1)!="&"){b[u]+="&"}b[u]+=g}else{b[u]+="?"+g}}return b},fixInfoUrl:function(b){var g=this.fixLayerUrl(b);if(g){return g[0]}},wms130_axisOrderSwapEpsg:["EPSG:4326","EPSG:2180"],wms130_ignoreAxisOrderSwapWmsUrls:[],wms130_addIgnoreAxisOrderSwapWmsUrls:function(b){if(!Ext.isArray(b)){b=[b]}for(u in b){this.wms130_ignoreAxisOrderSwapWmsUrls.push(b[u])}},wms130_checkIfIgnoreAxisOrderSnap:function(b){var h=false;var g=b;if(Ext.isArray(g)){g=b[0]}g=g.toLowerCase();for(u in this.wms130_ignoreAxisOrderSwapWmsUrls){if(g.indexOf(this.wms130_ignoreAxisOrderSwapWmsUrls[u].toLowerCase())!=-1){h=true;break}}return h},createProjectionDefaults:function(b,g){if(!OpenLayers.Projection.defaults[b]){OpenLayers.Projection.defaults[b]=g}},setMapProjection:function(g,w){var b=new OpenLayers.Projection("EPSG:4326");GeoMind.utils.Map.createProjectionDef(w.epsg,w.proj4j);var h=new OpenLayers.Projection("EPSG:"+w.epsg);var A={projection:h,units:h.getUnits(),displayProjection:b,maxExtent:this.bboxFromStringArray(w.projectionSettings.max_extent),numZoomLevels:w.projectionSettings.num_zoom_levels,maxResolution:w.projectionSettings.max_resolution};var z=g.getExtent();var o=z.transform(g.getProjectionObject(),b);var B=o.transform(b,h);var q={isBaseLayer:true,projection:A.projection,units:A.units,displayInLayerSwitcher:false,maxExtent:this.bboxFromStringArray(w.projectionSettings.max_extent),numZoomLevels:w.projectionSettings.num_zoom_levels,maxResolution:w.projectionSettings.max_resolution};var C=new OpenLayers.Layer.XYZ("fake",GeoMind.utils.Map.blankTile,q,{buffer:0});g.removeLayer(g.baseLayer,false);g.setOptions(A);C.group=1;g.addLayer(C);g.setBaseLayer(C);g.zoomToExtent(B,true)},createLayer:function(b,z,h,w){if(!z){z=0}if(z<0||b.projections.length>z){z=0}var g=b.projections[z];if(g){this.createProjectionDef(g.epsg,g.proj4j);if(g&&g.projectionSettings){b.get_feature_info_url=this.fixInfoUrl(g.projectionSettings.get_feature_info_url)}}else{g={}}switch(b.layer_type_value){case"WMS":var q={layers:b.layers,QUERY_LAYERS:b.query_layers,queryable:b.query
1able,transitionEffect:b.transition_effect,transparent:b.is_base_layer?false:b.transparent,infoFormat:b.info_format_value,FORMAT:b.image_format_value,VERSION:b.version_value,EXCEPTIONS:b.exception_format_value};var C=typeof __geoid__!="undefined"&&Adaptive.utils.Config.getBooleanConfig(b,"use_geoid",false);if(C){q.TOKEN=__geoid__}for(var H in this.customUrlParams){q[H]=this.customUrlParams[H]}var G=null;if(b.url.indexOf(".qgs")==-1){if(g){G=g.projectionSettings?this.bboxFromStringArray(g.projectionSettings.max_extent):null}else{G=b.max_extent?this.bboxFromStringArray(b.max_extent):null}}var F={buffer:b.buffer,visibility:b.visibility,maxExtent:G,numZoomLevels:g.projectionSettings?g.projectionSettings.num_zoom_levels:null,opacity:b.opacity/100,maxResolution:g.projectionSettings?g.projectionSettings.max_resolution:null,attribution:b.attribution,singleTile:b.single_tile,ratio:b.ratio,gutter:b.single_tile?0:b.gutter,maxScale:b.max_scale||null,minScale:b.min_scale||null};if(b.url.indexOf("mapserv.ashx")!=-1){q.gui=__gui_id__}var M=GeoMind.utils.Data.extractConfigObjectByKey(b.config.configs,"use_time")!="False";if(!Ext.isObject(b.dimensions)){b.dimensions=Ext.decode(b.dimensions)}if(!M&&b.dimensions&&b.dimensions.time){delete b.dimensions.time}F.dimensions=b.dimensions;var L=Ext.decode(GeoMind.utils.Data.extractConfigObjectByKey(b.config.configs,"theme_data"));if(L&&L.editable&&w){q.uuid=w}if(!b.is_base_layer&&b.is_internal){q.sid=GeoMind.utils.SessionManager.ss.sessionId;if(b.proxy_type!=="qgisserver"){if(typeof(__token__)!=="undefined"){q.a3tkn=__token__}}delete q.gkt}if(g&&g.epsg=="900913"){F.reproject=true;F.sphericalMercator=true}var I=new OpenLayers.Layer.WMS(b.name,b.url.split("|"),q,F);if(b.dimensions&&b.dimensions.time){I.PREVENT_MERGE=true}if(parseFloat(b.version_value)>=1.3){if(g&&Ext.Array.contains(this.wms130_axisOrderSwapEpsg,"EPSG:"+g.epsg)){this.createProjectionDefaults("EPSG:"+g.epsg,{yx:true})}else{if(g){this.createProjectionDefaults("EPSG:"+g.epsg,{yx:false})}}if(this.wms130_checkIfIgnoreAxisOrderSnap(b.url)){I.reverseAxisOrder=function(){return false}}}return I;break;case"WMTS":var G=null;if(g){G=g.projectionSettings?this.bboxFromStringArray(g.projectionSettings.max_extent):null}else{G=b.max_extent?this.bboxFromStringArray(b.max_extent):null}var D={name:b.name,url:b.url.split("|"),layer:b.layers,matrixSet:b.matrix_set,formatSuffix:b.format_suffix,dimensions:b.dimensions,format:b.image_format_value,style:b.style,opacity:b.opacity/100,requestEncoding:b.request_encoding,attribution:b.attribution,maxExtent:G,maxResolution:g.projectionSettings?g.projectionSettings.max_resolution:null};var C=typeof __geoid__!="undefined"&&Adaptive.utils.Config.getBooleanConfig(b,"use_geoid",true);if(b.matrix_ids){D.matrixIds=b.matrix_ids.split(",").map(function(N){return N.trim()})}if(D.requestEncoding==="KVP"){D.params={};for(var H in this.customUrlParams){D.params[H]=this.customUrlParams[H]}}if(C){D.params=D.params||{};D.params.TOKEN=__geoid__}var I=new OpenLayers.Layer.WMTS(D);return I;break;case"ARS":var I=new OpenLayers.Layer.GeoportalARS(b.name,b.layer_sub_type_value,{isBaseLayer:false,transitionEffect:b.transition_effect,buffer:b.buffer,visibility:b.visibility,opacity:b.opacity/100,attribution:(b.attribution!=""&&b.attribution!=undefined&&b.attribution!=null)?b.attribution:'©
1 <a href="http://geoportal.gov.pl/" target="_blank">GeoPortal.gov.pl</a>'});return I;break;case"XYZ":var q={transitionEffect:b.transition_effect,maxExtent:this.bboxFromStringArray(g.projectionSettings.max_extent),projection:(g.epsg!=null&&g.epsg!="")?new OpenLayers.Projection("EPSG:"+g.epsg):null,visibility:b.visibility,attribution:b.attribution};var C=typeof __geoid__!="undefined"&&Adaptive.utils.Config.getBooleanConfig(b,"use_geoid",false);if(C){q.TOKEN=__geoid__}if(g.projectionSettings.max_resolution){q.maxResolution=g.projectionSettings.max_resolution}if(g.projectionSettings.num_zoom_levels){q.numZoomLevels=g.projectionSettings.num_zoom_levels}if(g.projectionSettings.resolutions){q.resolutions=this.numArrFromStringArray(g.projectionSettings.resolutions)}if(g.projectionSettings.server_resolutions){q.serverResolutions=this.numArrFromStringArray(g.projectionSettings.server_resolutions)}var E=b.config;if(E&&E.configs){E=E.configs}var L=Ext.JSON.decode(GeoMind.utils.Data.extractConfigObjectByKey(E,"theme_data"));if(L){E=L.config;if(E&&E.configs){E=E.configs}var K=GeoMind.utils.Data.extractConfigObjectByKey(E,"tileOrigin");if(K){K=K.split(",");q.tileOrigin=new OpenLayers.LonLat(K[0],K[1])}}var F={buffer:b.buffer,opacity:b.opacity/100};return new OpenLayers.Layer.XYZ(b.name,b.url.split("|"),q,F);break;case"OSM":var q={transitionEffect:b.transition_effect,maxExtent:this.bboxFromStringArray(g.projectionSettings.max_extent),visibility:b.visibility,attribution:b.attribution};if(g.projectionSettings.max_resolution){q.maxResolution=g.projectionSettings.max_resolution}if(g.projectionSettings.num_zoom_levels){q.numZoomLevels=g.projectionSettings.num_zoom_levels}if(g.projectionSettings.resolutions){q.resolutions=this.numArrFromStringArray(g.projectionSettings.resolutions)}if(g.projectionSettings.server_resolutions){q.serverResolutions=this.numArrFromStringArray(g.projectionSettings.server_resolutions)}var F={buffer:b.buffer,opacity:b.opacity/100};return new OpenLayers.Layer.OSM(b.name,null,q,F);break;case"lXYZ":var q={_serviceLayerId:b.id,transitionEffect:b.p_transitionEffect,maxExtent:this.bboxFromStringArray(g.projectionSettings.max_extent),projection:(g.epsg!=null&&g.epsg!="")?new OpenLayers.Projection("EPSG:"+g.epsg):null,resolutions:g.projectionSettings.resolutions,numZoomLevels:g.projectionSettings.num_zoom_levels,visibility:b.visibility,attribution:b.attribution};var F={buffer:b.buffer,opacity:b.opacity/100};return new OpenLayers.Layer.XYZ(b.name,b.url.split("|"),q,F);break;case"Vector":if(!Proj4js.defs["EPSG:"+g.epsg]){Proj4js.defs["EPSG:"+g.epsg]=g.proj4j}if(!h){return new OpenLayers.Layer.Vector(b.name);return new OpenLayers.Layer.Vector4Service(b.name,{isBaseLayer:false,isVector:true,visibility:b.visibility,_sourceProjection:new OpenLayers.Projection("EPSG:"+g.epsg),_auth:this.appLogic.auth,attribution:b.attribution})}break;case"GML":var q={protocol:new OpenLayers.Protocol.HTTP({url:b.url.split("|"),format:new OpenLayers.Format.GML()}),visibility:b.visibility,strategies:[new OpenLayers.Strategy.Fixed()],attribution:b.attribution};var F={opacity:b.opacity/100};var I=new OpenLayers.Layer.Vector(b.name,q,F);I.setOpacity(b.opacity/100);return I;break;case"KML":var A=new OpenLayers.Projection("EPSG:4326");var q={protocol:new OpenLayers.Protocol.HTTP({url:b.url.split("|"),format:new OpenLayers.Format.KML({kvpAttributes:true,extractStyles:true,extractAttributes:true,maxDepth:2})}),visibility:b.visibility,strategies:[new OpenLayers.Strategy.Fixed()],preFeatureInsert:function(N){N.geometry.transform(A,N.layer.map.getProjectionObject())},attribution:b.attribution};var F={};var I=new OpenLayers.Layer.Vector(b.name,q,F);I.setOpacity(b.opacity/100);return I;break;case"GEOJSON":var q={protocol:new OpenLayers.Protocol.HTTP({url:b.url.split("|"),format:new OpenLayers.Format.GeoJSON({ignoreExtraDims:true})}),strategies:[new OpenLayers.Strategy.Fixed({preload:b.preload})],visibility:b.visibility,attribution:b.attribution};var F={opacity:b.opacity/100};var I=new OpenLayers.Layer.Vector(b.name,q,F);I.setOpacity(b.opacity/100);return I;break;case"GPX":var A=new OpenLayers.Projection("EPSG:4326");
1var q={protocol:new OpenLayers.Protocol.HTTP({url:b.url.split("|"),format:new OpenLayers.Format.GPX({extractWaypoints:true,extractRoutes:true,extractAttributes:true})}),visibility:b.visibility,strategies:[new OpenLayers.Strategy.Fixed()],preFeatureInsert:function(N){N.geometry.transform(A,N.layer.map.getProjectionObject())},attribution:b.attribution};var F={};var I=new OpenLayers.Layer.Vector(b.name,q,F);I.setOpacity(b.opacity/100);return I;break;case"TMS":alert("TMS not implemented yet!");break;case"Panoramio":return new OpenLayers.Layer.Panoramio("Panoramio",{_serviceLayerUuid:b.uuid,_proxyHost:this.layerCfg.panoramio.proxyHost,_numOfPicsPulled:this.layerCfg.panoramio.numOfPicsPulled,_order:this.layerCfg.panoramio.order,_set:this.layerCfg.panoramio.set,_size:this.layerCfg.panoramio.size,_usePanoramioMarker:this.layerCfg.panoramio.usePanoramioMarker,_panoramioImageFolderRelativePath:this.layerCfg.panoramio.panoramioImageFolderRelativePath,visibility:b.visibility});break;case"Wikipedia":return new OpenLayers.Layer.Wikipedia("Wikipedia",{_serviceLayerUuid:b.uuid,_proxyHost:this.layerCfg.wikipedia.proxyHost,_wikiImageFolderRelativePath:this.layerCfg.wikipedia.wikiImageFolderRelativePath,visibility:b.visibility,_selectCallback:this.layerCfg.wikipedia.selectCallback});break;case"Google":var o;if(google){switch(b.layer_sub_type_value){case"ROADMAP":o=google.maps.MapTypeId.ROADMAP;break;case"SATELLITE":o=google.maps.MapTypeId.SATELLITE;break;case"HYBRID":o=google.maps.MapTypeId.HYBRID;break;case"TERRAIN":default:o=google.maps.MapTypeId.TERRAIN}var B={type:o,animationEnabled:false,sphericalMercator:true,opacity:b.opacity/100};if(g.projectionSettings.num_zoom_levels&&g.projectionSettings.num_zoom_levels>0){B.numZoomLevels=g.projectionSettings.num_zoom_levels}if(g.projectionSettings.max_zoom_level&&g.projectionSettings.max_zoom_level>0){B.MAX_ZOOM_LEVEL=g.projectionSettings.max_zoom_level}if(g.projectionSettings.min_zoom_level&&g.projectionSettings.min_zoom_level>0){B.MIN_ZOOM_LEVEL=g.projectionSettings.min_zoom_level}var J=new OpenLayers.Layer.Google(b.name,B);return J}break}},prepareInfoToolTip:function(b){if(b.feature.layer._toolTip){b.feature.layer._toolTip.destroy()}var o="";var q="";if(this._panoramioLogo){q="Panoramio";var g='<div style="font-family: Arial, Helvetica, sans-serif; width:'+(b.feature.attributes.width)+'px; padding:5px;"><div style="width:'+b.feature.attributes.width+'px; font-weight: bold;">'+b.feature.attributes.photo_title+'</div><a href="'+b.feature.attributes.photo_url+'" target="_blank"><img src="'+b.feature.attributes.photo_file_url+'" />';"</a><br/>";if(this._size=="medium"||this._size=="original"){g+='<span style="font-size: small;">Photos provided by Panoramio are under the copyright of their owners.</span><br/>'}g+='<a href="http://www.panoramio.com" target="_blank"><img src="'+this._panoramioLogo+'" /></a><br/><div style="font-size: small;">by: <a href="'+b.feature.attributes.owner_url+'" target="_blank">'+b.feature.attributes.owner_name+"</a></div>";g+="</div>"}else{var w='style=" padding-top: 0.5em; padding-left: 0.5em; width:190px;height:250px; border:10px;"';var h="";q="Wiki";var g='<div style="font-family: Arial, Helvetica, sans-serif; padding:5px;"><div style="font-weight: bold;">'+b.feature.attributes.name+"</div><div>"+b.feature.attributes.description.replace(w,h)+"</div>"}b.feature.layer._toolTip=Ext.create("Ext.tip.ToolTip",{renderTo:b.feature.layer.map.div,title:q,target:Ext.get(b.feature.geometry.id),layout:"fit",anchor:"left",autoHide:false,anchorToTarget:true,anchorOffset:10,floating:true,draggable:true,closable:true,width:300,height:300,items:[{xtype:"panel",layout:"fit",autoScroll:true,html:g,styleHtmlContent:true}]});if(!b.feature.layer._cleanUpRegistered){b.feature.layer.events.register("visibilitychanged",this,function(z){if(!z.visibility&&this._toolTip){this._toolTip.destroy()}});b.feature.layer.events.register("removed",this,function(){if(this._toolTip){this._toolTip.destroy()}this.events.unregister("remove",this,function(){});this.events.unregister("visibilitychanged",this,function(){})})}b.feature.layer._toolTip.show()},getMapScales:function(o){var w=[];var b=o.getUnits();var h=o.getNumZoomLevels();for(var g=0;g<h;g++){var q=OpenLayers.Util.getScaleFromResolution(o.getResolutionForZoom(g),b);w.push({zoomLvl:g,scale:q})}return w},getMapScaleForZoom:function(h,g){var b=h.getUnits();return OpenLayers.Util.getScaleFromResolution(h.getResolutionForZoom(g),b)}});Ext.define("GeoMind.data.store.Layer",{extend:Ext.data.Store,model:"GeoMind.data.model.Layer",autoLoad:false,config:{model:"GeoMind.data.model.Layer",autoLoad:false},constructor:function(b){Ext.apply(this,b);this.callParent([b])}});Ext.define("GeoMind.map.mixins.Generic",{map:null,layerStore:null,startDefault:false,view:null,enforceBaseLayers:false,config:{map:null,layerStore:null,startDefault:false,view:null,enforceBaseLayers:false},constructor:function(b){this.mapUtils=GeoMind.utils.Map;this.createMap();this.view=this.createMapContainer();Ext.apply(this,b);this.addEvents(["afterMapContainerRender","afterMapCreated","afterMapReset","beforeMapReset","mapStateUpdated"]);this.layerStore=Ext.create("GeoMind.data.store.Layer");if(GeoMind.utils.InitCheckup.isExtJs){this.layerStore.on("load",this.onLayerStoreLoad,this);this.layerStore.on("add",this.onLayerStoreAdd,this);this.layerStore.on("remove",this.onLayerStoreRemove,this);this.layerStore.on("update",this.onLayerStoreUpdate,this)}else{this.layerStore.on("load",this.onLayerStoreLoadM,this);this.layerStore.on("addrecords",this.onLayerStoreAddRecordsM,this);this.layerStore.on("removerecords",this.onLayerStoreRemoveRecordsM,this);this.layerStore.on("updaterecord",this.onLayerStoreUpdateRecordM,this)}this.bindContainerEvents()},bindLayerEvents:function(b){if(!Ext.isArray(b)){b=[b]}for(var g in b){b[g].get("olLayer").events.on({loadstart:Ext.bind(this.onLayerLoadStart,this),loadend:Ext.bind(this.onLayerLoadEnd,this)})}},unbindLayerEvents:function(b){if(!Ext.isArray(b)){b=[b]}for(var g in b){b[g].get("olLayer").events.un({loadstart:Ext.bind(this.onLayerLoadStart,this),loadend:Ext.bind(this.onLayerLoadEnd,this)})}},onLayerLoadStart:function(g){var b=g.object;b.record.set("isLoading",true);var h={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersLoadStart",records:[b.record]}};this.dispatchEvent(h,{confirmationRequired:false})},onLayerLoadEnd:function(g){var b=g.object;b.record.set("isLoading",false);var h={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersLoadEnd",records:[b.record]}};this.dispatchEvent(h,{confirmationRequired:false})},onLayerStoreRemove:function(g,b,h,o){this.unbindLayerEvents(b);this.map.removeLayer(b.get("olLayer"));var q={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersRemove",records:[b]}};
1this.dispatchEvent(q,{confirmationRequired:false})},onLayerStoreRemoveRecordsM:function(g,b,q,h){for(r in b){this.unbindLayerEvents(b[r]);this.map.removeLayer(b[r].get("olLayer"))}var o={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersRemove",records:b}};this.dispatchEvent(o,{confirmationRequired:false})},onLayerStoreUpdate:function(h,b,g,o){var q={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersRecordUpdated",records:[b],columns:o}};this.dispatchEvent(q,{confirmationRequired:false})},onLayerStoreUpdateRecordM:function(g,b,o,A,q,z,h){var w={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersRecordUpdated",records:[b],columns:q}};this.dispatchEvent(w,{confirmationRequired:false})},onLayerStoreAdd:function(g,b,h,o){this.processLoadedRecords(b)},onLayerStoreLoad:function(g,b,o,h){this.processLoadedRecords(b)},onLayerStoreAddRecordsM:function(g,b,h){this.processLoadedRecords(b)},onLayerStoreLoadM:function(h,g,q,b,o){this.processLoadedRecords(g)},processLoadedRecords:function(h){for(r in h.reverse()){var o=h[r].get&&h[r].get("config"),w=o&&Ext.JSON.decode(GeoMind.utils.Data.extractConfigObjectByKey(o.configs,"theme_data")),g=w&&w.spatial_data_type,q=(g!="no_geom"),b=h[r].get("olLayer");if(!b){h[r].data.visibility=false;b=GeoMind.utils.Map.createLayer(h[r].data,null,null,this.userUuid);h[r].set("olLayer",b)}b.record=h[r];h[r]._uqid=GeoMind.utils.Generator.getUuid();h[r].isSpatial=q;this.bindLayerEvents(h[r]);this.map.addLayer(b);this.doEnforceBaseLayer(b,b.record.get("visibility"))}},loadMap:function(b){var g={evtName:"beforeMapReset",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:Ext.bind(this.onReadyToResetMap,this),data:b};this.dispatchEvent(g,{confirmationRequired:true});if(this.controllerCount==0){this.onReadyToResetMap(g)}},iterateNodes:function(w){var q=this,g=w.get("recordData"),b=g.get("name"),o=g.get("uuid"),h=Adaptive.utils.Config.getBooleanConfig(g,"group_layers",false);w.childNodes.forEach(function(A){if(A.data.model=="GeoMind.data.model.Layer"){var z=A.get("recordData");z.set("catUuid",o);z.set("catName",b);z.set("group_layers",h)}else{if(A.childNodes){q.iterateNodes(A)}}})},onReadyToResetMap:function(q){var o=this;while(this.layerStore.getCount()>0){this.layerStore.removeAt(0)}this.userUuid=q.data.userUuid;var b=GeoMind.utils.Tree.convertToTree(q.data.cfgData,"maps",q.data.map_uuid);b.childNodes.forEach(function(A){if(A.get("recordData").get("name")!="baseLayers"){o.iterateNodes(A)}});var h=GeoMind.utils.Map.flattenUnifiedMapConfig(b);var g=GeoMind.utils.Map.prepareOlMapConfig(h.map.data);var w=q.data.userExtent;GeoMind.utils.Ajax.addDefaultHeader("X-Adaptive-SRID",g.projection.proj.srsProjNumber);GeoMind.utils.Map.resetMap(this.map,g);this.map.record=h.map;this.map.flatMapCfg=h;
1if(w){Ext.defer(function(){this.map.setCenter(w.center,w.zoom)},10,this)}else{if(this.map.initialExtent){this.map.zoomToExtent(this.map.initialExtent)}else{this.map.zoomToMaxExtent()}}this.layerStore.add(h.layers);var z={evtName:"afterMapReset",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{map:this.map,unifiedMapCfg:b,mapContainer:this.view}};this.dispatchEvent(z,{confirmationRequired:false})},createMap:function(){if(!(this.map instanceof OpenLayers.Map)){var b={projection:new OpenLayers.Projection("EPSG:900913"),maxExtent:this.mapUtils.bboxFromStringArray("-20037508.34,-20037508.34,20037508.34,20037508.34")};if(this.MapClass){b.MapClass=this.MapClass}this.map=this.mapUtils.createMap(b);if(this.startDefault){this.map.addLayers([new OpenLayers.Layer.OSM("osm",null,{attribution:'© <a href="http://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors'})])}this.map.setCenter(new OpenLayers.LonLat(0,0),2)}var g={evtName:"afterMapCreated",evtInitiatingModule:this,evtSuperInitiatingModule:null,evtBroadcastingController:null,callback:null,data:{map:this.map}};this.dispatchEvent(g,{confirmationRequired:true})},layerStoreReorder:function(E,q){function o(I){return function(K,J){return(K[I]<J[I])?-1:(K[I]>J[I])?1:0}}var A=Ext.Array.clone(this.layerStore.getRange());var G=Ext.create("Ext.data.Store",{model:this.layerStore.getModel(),data:A});var C=[];for(var B=1;B<E.length;B++){var g=function(I,J){return I.get("olLayer").id==E[B].get("olLayer").id};var h=G.findBy(g);var z=G.getAt(h);C.push(z);G.remove(z)}var g=function(I,J){return I.get("olLayer").id==E[0].get("olLayer").id};var D=G.findBy(g,E[0].get("uuid"));for(var B=C.length-1;B>=0;B--){G.insert(D+1,C[B])}var w=G.getRange();this.layerStore.loadData(w);var E=[];for(var B=0;B<w.length;B++){var z=w[B];E.push({zIdx:this.map.getLayerIndex(w[B].get("olLayer")),rec:w[B]})}var F=Ext.Array.clone(E);if(F.length>0){F.sort(o("zIdx"));var H=E.length-1;while(F.length>0){this.map.setLayerIndex(E[H].rec.get("olLayer"),F[0].zIdx);F.splice(0,1);H--}}var b={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:q,evtBroadcastingController:null,callback:null,data:{type:"layersOrderChanged",records:this.layerStore.getRange()}};this.dispatchEvent(b,{confirmationRequired:false})},layersVisibilityChange:function(q,w){var g=[];for(var o=0,h=q.length;o<h;o++){var b=q[o].recordData.get("olLayer");if(b){q[o].recordData.set("visibility",q[o].checked);if(!q[o].checked){q[o].recordData.set("isLoading",false)}g.push(q[o].recordData);this.doEnforceBaseLayer(b,q[o].checked)}}var z={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:w,evtBroadcastingController:null,callback:null,data:{type:"layersVisibilityChanged",records:g}};this.dispatchEvent(z,{confirmationRequired:false})},doEnforceBaseLayer:function(g,b){if(g.record.get("is_base_layer")&&this.enforceBaseLayers&&b){if(g.CLASS_NAME=="OpenLayers.Layer.Google"){g.map.setOptions({zoomMethod:null,zoomTween:null})}var h=GeoMind.utils.Map.bboxFromStringArray(g.map.record.get("restricted_extent"));this.map.baseLayer.setVisibility(false);g.isBaseLayer=true;g.map.setBaseLayer(g);g.map.setOptions({restrictedExtent:h});g.setVisibility(true)}},onLayersOrderChange:function(b){this.layerStoreReorder(b.data.records,b.evtSuperInitiatingModule)},onLayersVisibilityChange:function(b){this.layersVisibilityChange(b.data.records,b.evtSuperInitiatingModule);if(Ext.isFunction(this.map.layersVisibilityChanged)){this.map.layersVisibilityChanged(b)}},onLayersOpacityChange:function(g){var b=g.data.records;for(r in b){b[r].record.set("opacity",b[r].value);b[r].record.get("olLayer").setOpacity(b[r].value/100)}},onLayersZoomExtent:function(q){var h=q.data.records;for(r in h){var g=h[r].get("olLayer");if(g.CLASS_NAME=="OpenLayers.Layer.Vector"){g.map.zoomToExtent(g.getDataExtent());return}if(g.CLASS_NAME=="OpenLayers.Layer.WMS"){if(h[r].get("ll_bbox")){var b=h[r].get("ll_bbox").split(",");var o=new OpenLayers.Bounds(b[0],b[1],b[2],b[3]);o.transform(new OpenLayers.Projection("EPSG:4326"),g.map.getProjectionObject());g.map.zoomToExtent(o)}return}if(g&&g.maxExtent.CLASS_NAME=="OpenLayers.Bounds"){g.map.zoomToExtent(g.maxExtent,true);return}if(g&&g.maxExtent==undefined){g.map.zoomMaxExtent(true);return}}},onLayersReload:function(g){var b=g.data.records;for(r in b){b[r].get("olLayer").redraw()}},removeLayers:function(b){if(!Ext.isArray(b)){b=[b]}for(i in b){this.layerStore.remove(b[i])}},onLayersRemove:function(b){this.layerStore.remove(b.data.records)},onLayersSetQueryable:function(g){var b=g.data.records;for(r in b){b[r].set("isActiveInfo",!b[r].get("isActiveInfo"))}var h={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:g.evtSuperInitiatingModule,evtBroadcastingController:null,callback:null,data:{type:"layersSetQueryable",records:b}};this.dispatchEvent(h,{confirmationRequired:false})},onMapContainerResize:function(){var b=this.map;if(b){b.updateSize()}},createLayerRecordFromOL:function(g){var b=Ext.create("GeoMind.data.model.Layer");b.set("uuid",GeoMind.utils.Generator.getUuid());b.set("name",g.name);return b},addLayers:function(q,h){if(!Ext.isArray(q)){q=[q]}var b=[];for(var z in q){var o,g;if(h.config){q[z].config=q[z].config||{configs:[]};Ext.iterate(h.config,function(A,B){GeoMind.utils.Data.updateConfig(q[z].config.configs,A,B)})}if(q[z] instanceof OpenLayers.Layer||q[z] instanceof OpenLayers.Layer.Vector){o=this.createLayerRecordFromOL(q[z]);o.set("olLayer",q[z])}else{if(Ext.ClassManager.getName(q[z]=="GeoMind.data.model.Layer")){g=GeoMind.utils.Map.createLayer(q[z].getData());o.set("olLayer",g)}else{if(!q[z].uuid){q[z].uuid=GeoMind.utils.Generator.getUuid()}o=Ext.create("GeoMind.data.model.Layer",q[z]);g=GeoMind.utils.Map.createLayer(o.getData());o.set("olLayer",g)}}if(h.group){var g=o.get("olLayer");g.group=h.group}b.push(o)}this.layerStore.insert(0,b);var w={evtName:"mapStateUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersAdded",re
1cords:b,extraConfig:h}};this.dispatchEvent(w,{confirmationRequired:false});return{records:b,extraConfig:h}},_onUpdateMapState:function(b){switch(b.data.type){case"layersOrderChanged":this.onLayersOrderChange(b);break;case"layersVisibilityChanged":this.onLayersVisibilityChange(b);break;case"layersOpacityChange":this.onLayersOpacityChange(b);break;case"layersZoomExtent":this.onLayersZoomExtent(b);break;case"layersReload":this.onLayersReload(b);break;case"layersRemove":this.onLayersRemove(b);break;case"layersSetQueryable":this.onLayersSetQueryable(b);break}}});Ext.define("GeoMind.map.mixins.Desktop",{bindContainerEvents:function(){if(!Ext.isString(this.view)){this.view.on("afterrender",this.onAfterContainerRender,this)}},onAfterContainerRender:function(b,g){this.renderTo(this.view);var h={evtName:"afterMapContainerRender",evtInitiatingModule:this,evtSuperInitiatingModule:null,evtBroadcastingController:null,callback:null,data:{mapContainer:this.view}};this.dispatchEvent(h,{confirmationRequired:false})},createMapContainer:function(){var g=Ext.create("Ext.container.Container",{anchor:"100% 100%",layout:"fit"});var b=Ext.create("Ext.container.Container",{layout:"absolute",border:false,items:[g],mapContainer:g});return b},renderTo:function(b){if(this.map){this.map.render(b.mapContainer.getEl().dom);b.on("resize",this.onMapContainerResize,this)}}});Ext.define("GeoMind.map.MapPanel",{extend:GeoMind.base.Module,mixins:[GeoMind.map.mixins.Generic,GeoMind.map.mixins.Desktop],constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.mixins["GeoMind.map.mixins.Generic"].constructor.call(this,b)}});Ext.define("GeoMind.desktop.mask.LoadMask",{extend:GeoMind.base.Module,loadMask:null,showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(Ext.getBody(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},updateLoadMaskMsg:function(b){if(this.loadMask){this.loadMask.msg=b}},_onShowLoadMask:function(b){this.showLoadMask(b.data.msg)},_onHideLoadMask:function(){this.hideLoadMask()},_onUpdateLoadMaskMsg:function(b){this.updateLoadMaskMsg(b.data.msg)}});Ext.define("Adaptive.utils.LightModule",{statics:{moduleController:null},registerModule:function(){this.isGlobal=true;Adaptive.utils.LightModule.moduleController.registerModule(this)},deregisterModule:function(){Adaptive.utils.LightModule.moduleController.unregisterModule(this);this.isGlobal=false},onBroadcastListener:function(b){if(b&&Ext.isString(b.evtName)){var g=this,h="_on"+b.evtName.substring(0,1).toUpperCase()+b.evtName.substring(1,b.evtName.length);if(Ext.isFunction(g[h])){g[h](b)}else{if(b.confirmationRequired){g.manageEventConfirmation(b)}}}},manageEventConfirmation:function(g){var b=this,h={evtName:"ready",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:g.evtBroadcastingController,confirmationRequired:g.confirmationRequired,callback:g.callback,suspendedCallback:g.suspendedCallback,data:g.data};if(g.confirmationRequired){b.fireEvent("advise",h)}else{if(Ext.isFunction(g.callback)){g.callback(h)}}},reportEvent:function(g,o){var h=this,b={evtInitiatingModule:h,evtName:g,data:o};h.fireEvent("advise",b);h.fireEvent(g,o);if(h.isGlobal){Adaptive.utils.LightModule.moduleController.broadcast(b)}}});Ext.define("Adaptive.utils.Config",{singleton:true,_toConfigs:function(b){if(!b){return null}if(b.data&&b.data.config&&b.data.config.configs){return b.data.config.configs}else{if(b.config&&b.config.configs){return b.config.configs}}return b},getConfig:function(h,b){if(!h){return}try{h=this._toConfigs(h);return GeoMind.utils.Data.extractConfigObjectByKey(h,b)}catch(g){return}},getJsonConfig:function(h,b){try{return Ext.JSON.decode(this.getConfig(h,b))}catch(g){return}},getThemeData:function(b){if(!b){return}if(!b.theme_data){b.theme_data=Adaptive.utils.Config.getJsonConfig(b,"theme_data");if(b.theme_data&&b.get){b.theme_data.name=b.get("name");b.theme_data.description=b.get("description")}}return b.theme_data},getBooleanConfig:function(q,h,b){try{var g=this.getConfig(q,h);if(typeof g==="boolean"){return g}if(!g){return b}return g.toLowerCase()==="true"}catch(o){return b}},toObject:function(g){if(!g){return}try{g=this._toConfigs(g);return g.reduce(function(q,h){q[h.key]=h.value;return q},{})}catch(b){return}},toRecord:function(q,g,b){var h=this,o=h.toObject(q);if(!o){return o}if(b){b.forEach(function(w){switch(w.type){case"json":w.type="auto";w.convert=function(z){if(typeof z==="string"){return Ext.JSON.decode(z,true)||w.defaultValue}return z};w.isJson=true;break;case"bool":case"boolean":w.convert=function(z){if(typeof z==="string"){return z.toLowerCase()==="true"}return z};break}})}if(!Ext.ClassManager.isCreated(g)){if(!b){throw new Error('Model "'+g+'" must exist or fields must be provided.')}Ext.define(g,{extend:"Ext.data.Model",fields:b})}return Ext.create(g,o)},updateFromRecord:function(o,b){var g=this,h=g._toConfigs(o);if(!Ext.isArray(h)){return}
1b.fields.items.forEach(function(w){var q=b.get(w.name);if(w.isJson){q=JSON.stringify(q)}g._set(h,w.name,q!==undefined&&q!==null?""+q:q)})},updateConfig:function(q,b,h){var g=this,o=g._toConfigs(q);if(!Ext.isArray(o)){return}g._set(o,b,h)},_set:function(o,g,h){var b=-1;o.forEach(function(q,w){if(q.key==g){b=w}});if(!Ext.isEmpty(h)){if(b!=-1){o[b].value=h}else{o.push({key:g,value:h})}}else{if(b!=-1){o.splice(b,1)}}}});Ext.define("GeoMind.utils.Url",{singleton:true,constructor:function(){this.extractUrlParams()},extractUrlParams:function(){var b=this;b.urlParams=b.getUrlParams(window.location.href)},getUrlParams:function(h){var b,g={};if(h.indexOf("?")>-1){b=(h).substring(h.indexOf("?")+1);b.split("&").forEach(function(q){var o=q.split("=");if(o.length>1){g[o[0].toLowerCase()]=decodeURIComponent(o[1])}})}return g},removeURLParam:function(b,w){if(b.indexOf("#")>-1){b=b.split("#")[0]}var o=b.split("?");if(o.length>=2){var q=encodeURIComponent(w)+"=";var h=o[1].split(/[&;]/g);for(var g=h.length;g-->0;){if(h[g].indexOf(q,0)==0){h.splice(g,1)}}if(h.length>0){return o[0]+"?"+h.join("&")}else{return o[0]}}else{return b}},getUrlParam:function(h,g){var b=this;h=h.toLowerCase();if(b.urlParams&&b.urlParams[h]){return g?b.urlParams[h].toLowerCase():b.urlParams[h]}return null},setUrlParam:function(g,o,q){var h=g.split("?"),z=o+"="+encodeURIComponent(q),w=h.length>1?h[1].split("&"):[],b=false;if(typeof q==="undefined"||q===null||q===""){w=w.filter(function(A){return A.split("=")[0]!==o})}else{w=w.map(function(A){if(A.split("=")[0]===o){b=true;return z}return A});if(!b){w.push(z)}}return h[0]+(w.length?"?"+w.join("&"):"")},getLangIndependentUrlParam:function(h){var g=null;if(this.langIndependentUrlParams[h]){for(var b=0;b<this.langIndependentUrlParams[h].length;b++){g=this.getUrlParam(this.langIndependentUrlParams[h][b]);if(g!=null){break}}}return g},langIndependentUrlParams:{project:["project","projekt"],map:["map","mapa"]}});Ext.define("GeoMind.lang.SupportedLangs",{singleton:true,constructor:function(){if(!(typeof __lang__==="undefined")){if(__lang__.supportedLangs){if(typeof(__lang__.supportedLangs)==="string"){this.supportedLangs=Ext.JSON.decode(__lang__.supportedLangs)}else{this.supportedLangs=__lang__.supportedLangs}}}},supportedLangs:[{code:"pl",name:"Polski"},{code:"en",name:"English UK"}],instanceLang:"en",getSupportedLangs:function(){return this.supportedLangs},langSupported:function(g){var b=false;for(lng in this.supportedLangs){if(this.supportedLangs[lng].code==g){b=true;break}}return b}});Ext.define("GeoMind.lang.Lang",{singleton:true,urlUtils:null,langParamName:"lng",defaultLangCode:"en",langCode:null,supportedLangs:null,constructor:function(b){this.initSetup()},initSetupSchedule:null,initSetup:function(){this.setMeUp()},setMeUp:function(){this.urlUtils=GeoMind.utils.Url;Ext.ns("GeoMind.lang.locale");if(!(typeof __lang__==="undefined")){if(__lang__.defaultLangCode){this.defaultLangCode=__lang__.defaultLangCode}}this.applySupportedLangs();this.setLanguage()},applySupportedLangs:function(){this.supportedLangs=GeoMind.lang.SupportedLangs},selfCheck:function(b,o,z){var g=this.getLngCodes(b,o);var w={},q=0;for(string in b){for(var h=0;h<g.length;h++){if(b[string][g[h]]==undefined){w[q]=g[h].toUpperCase()+" translation missing for "+string;q++}}}for(errCode in o){for(var h=0;h<g.length;h++){if(o[errCode][g[h]]==undefined){w[q]=g[h].toUpperCase()+" translation missing for error "+errCode;q++}}}if(q>0){console.warn("Translations missing in "+z,w)}},getLngCodes:function(b,h){var g=[];for(string in b){for(lng in b[string]){if(!this.lngCodeExists(lng,g)){g.push(lng)}}}for(errCode in h){for(lng in h[errCode]){if(!this.lngCodeExists(lng,g)){g.push(lng)}}}return g},lngCodeExists:function(o,g){var h=false;for(var b=0;b<g.length;b++){if(g[b]==o){h=true;break}}return h},registerTranslations:function(o,A){var z;if(!Ext.isString(o)){z=o;o=Ext.getClassName(z)}if(!this.strings[o]){try{if(!z){z=Ext.create(o)}}catch(w){}if(z){var g=!(typeof __lang__==="undefined");if(z.defaultLangCode){this.defaultLangCodes[o]=z.defaultLangCode}if(!this.strings[o]){var b;
1if(g&&__lang__[o]){b=__lang__[o].strings}if(!b){b={}}b=Ext.merge(z.strings,b);this.strings[o]=b}if(!this.errCodes[o]){var h;if(g&&__lang__[o]){h=__lang__[o].errCodes}if(!h){h={}}h=Ext.merge(z.errCodes,h);this.errCodes[o]=z.errCodes}}if(A){this.selfCheck(z.strings,z.errCodes,o)}}var q={l:this,t:o,getString:function(B,C){return this.l.getString(this.t,B,C)},getError:function(B,C){return this.l.getError(this.t,B,C)}};return q},setLanguage:function(){var b=this.urlUtils.getUrlParam(this.langParamName);if(!b){if(Ext.util.Cookies){b=Ext.util.Cookies.get(this.langParamName)}}if(!b&&typeof __default_lang__!=="undefined"){b=__default_lang__}if(!b){b=(window.navigator.language||window.navigator.browserLanguage).substring(0,2)}this.langCode=b.toLowerCase();if(!this.supportedLangs.langSupported(b)){this.langCode=this.defaultLangCode}if(Ext.util.Cookies){Ext.util.Cookies.set(this.langParamName,this.langCode,Ext.Date.add(new Date(),Ext.Date.YEAR,1));GeoMind.utils.SessionManager.setLangCode(b)}if(!GeoMind.lang.locale[this.langCode]){Ext.Loader.loadScript({url:Ext.Loader.getPath("GeoMind.lang.locale."+this.langCode),onLoad:function(){if(GeoMind.lang.locale[this.langCode]&&GeoMind.lang.locale[this.langCode].applyLocale){GeoMind.lang.locale[this.langCode].applyLocale()}},onError:function(){},scope:this})}else{if(GeoMind.lang.locale[this.langCode].applyLocale){GeoMind.lang.locale[this.langCode].applyLocale()}}},changeLang:function(b){if(!this.supportedLangs.langSupported(b)){console.warn(b,"lang code not supported");return}Ext.util.Cookies.set(this.langParamName,b,Ext.Date.add(new Date(),Ext.Date.YEAR,10));var o="";for(var g=0;g<this.urlUtils.urlParams.length;g++){if(this.urlUtils.urlParams[g].indexOf(this.langParamName+"=")==-1){o+=o.length>0?"&":"?";o+=this.urlUtils.urlParams[g]}}var h="";if(window.location.href.indexOf("?")>-1){h=(window.location.href).substring(0,window.location.href.indexOf("?"))}else{h=window.location.href}window.location.href=h+o;window.location.reload(true)},getTranslatedString:function(h,b,g){var o=b;for(t in g){if(g[t]["langCode"]==this.langCode&&g[t]["propertyName"]==h){o=g[t]["translation"];break}}return o},getString:function(g,h,o){if(!Ext.isString(g)){g=Ext.getClassName(g)}var b=this.strings;if(g&&this.strings[g]){b=this.strings[g]}if(b[h]&&b[h][this.langCode]!=undefined){return b[h][this.langCode]}else{if(b[h]&&b[h][this.defaultLangCodes[g]||this.defaultLangCode]!=undefined){return b[h][this.defaultLangCodes[g]||this.defaultLangCode]}else{if(o){return false}try{console.warn("Unknown translation: "+g+"/"+h+"/"+this.langCode)}catch(q){}return"Unknown translation: "+h}}},getError:function(h,b,o){if(!Ext.isString(h)){h=Ext.getClassName(h)}var g=this.errCodes;if(h&&this.errCodes[h]){g=this.errCodes[h]}if(g[b]&&g[b][this.langCode]!=undefined){return g[b][this.langCode]}else{if(g[b]&&g[b][this.defaultLangCodes[h]||this.defaultLangCode]!=undefined){return g[b][this.defaultLangCodes[h]||this.defaultLangCode]}else{if(o){return}else{return"Unknown error code: "+b}}}},defaultLangCodes:{},strings:{},errCodes:{}});Ext.define("Adaptive.utils.Lang",{singleton:true,getString:function(g,o,h){var b=h&&h.getString(g,true);return b?b:o.getString(g)}});Ext.define("Adaptive.utils.File",{singleton:true,canExport:function(){if(Ext.isIE9m){return false}try{var g=!!new Blob();return g}catch(b){return false}},_inject:function(b,g){Ext.Loader.injectScriptElement(b,function(){g(true)},function(){g(false)})},requireJSZip:function(b){if(window.JSZip){b(true)}else{Adaptive.utils.File._inject("jslibs/jszip/jszip.min.js",b)}},requireFileSaver:function(b){if(window.saveAs){b(true)}else{Adaptive.utils.File._inject("jslibs/FileSaver/FileSaver.min.js",b)}},saveAs:function(b,h,g){Adaptive.utils.File.requireFileSaver(function(o){if(o){saveAs(b,h);if(g){g(true)}}else{if(g){g(false)}}})},saveTextAs:function(b,o,h,g){o=o||"text/plain;charset=utf-8";Adaptive.utils.File.requireFileSaver(function(q){if(q){saveAs(new Blob([b],{type:o}),h);if(g){g(true)}}else{if(g){g(false)}}})},saveZip:function(b,h,g){Adaptive.utils.File.requireJSZip(function(w){if(w){var q=new JSZip();b.forEach(function(z){q.file(z.name,z.data)});var o=q.generate({type:"blob"});Adaptive.utils.File.saveAs(o,h,g)}else{if(g){g(false)}}})},getMaxUploadSize:function(g,h){var b=this;Ext.Ajax.request({url:"WebServices/generic/Upload.asmx/GetMaxUploadSize",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:Ext.JSON.encode({endpoint:g}),callback:function(q,w,o){o=GeoMind.utils.Ajax.fixResponse(o);if(!w){h(false)}else{h(true,o)}}})},getSizeAsString:function(g){var b=(g/1024).toFixed(2);if(b>1000){return(b/1024).toFixed(2)+" GB"}return b+" MB"}});Ext.define("Client.lang.AppLogic",{strings:{pullCfg:{pl:"Pobieranie konfiguracji...",en:"Loading...",nb:"Starter...",nn:"Starter..."}
1,launchApp:{pl:"Uruchamianie aplikacji...",en:"Loading...",nb:"Starter...",nn:"Starter..."},cfg_1:{en:"No read access assigned to the chosen GUI",nb:"Ingen lesetilgang til det valgte GUI",nn:"Ingen lesetilgang til det valgte GUI"},exception_unknown:{en:"Unknown exception",nb:"Ukjent avvik",nn:"Ukjent avvik"},exception_title:{en:"Error",nb:"Feil",nn:"Feil"},on_authencticate_text:{pl:"Pobieranie konfiguracji dla użytkownika...",en:"Loading user configuration...",nb:"Laster brukerkonfigurasjon...",nn:"Laster brukarkonfigurasjon..."},on_signed_out_text:{pl:"Pobieranie domyÅlnej konfiguracji...",en:"Loading default configuration...",nb:"Laster standard konfigurasjon...",nn:"Laster standard konfigurasjon..."},closeWelcomePopup:{en:"Dismiss",nb:"Lukk",nn:"Lukk"},noShow:{en:"Do not show again",nb:"Ikke vis igjen"},ssoWinAuth:{en:"Authenticating with your Windows user...",nb:"Autentiserer med din Windows-bruker..."},backup_site_warning:{en:"This is a backup site.<br>Changes made here may be lost.",nb:"Dette er en backup-side.<br>Endringer gjort her kan gÃ¥ tapt."}},errCodes:{}});Ext.define("Client.cfgLoader.Standard",{extend:GeoMind.base.Module,proxy:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["configLoaded","configLoadFailure"])},pullConfig:function(){var b={guuid:__guuid__};Ext.Ajax.request({timeout:120000,url:this.serviceUrl+this.serviceMethods.readAppConfig,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(b),success:Ext.bind(this.pullConfigCallbackSuccess,this),failure:Ext.bind(this.pullConfigCallbackFailure,this)})},pullConfigCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.onConfigLoaded(b)}else{this.onConfigLoadFailure(b)}},pullConfigCallbackFailure:function(b,g){this.onConfigLoadFailure(b)},onConfigLoaded:function(b){var g={evtName:"configLoaded",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{response:b}};this.dispatchEvent(g,{confirmationRequired:false})},onConfigLoadFailure:function(b){var g={evtName:"configLoadFailure",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{response:b}};this.dispatchEvent(g,{confirmationRequired:false})}});Ext.define("Client.module.Generic",{extend:GeoMind.base.Module,map:null,mapContainer:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},_setActive:function(b){},afterMapContainerRender:function(b){},afterMapReset:function(b){},beforeMapReset:function(b){},_onAfterMapContainerRender:function(b){this.mapContainer=b.data.mapContainer;this.afterMapContainerRender(b)},_onAfterMapReset:function(b){this.map=b.data.map;if(!this.mapContainer){this._onAfterMapContainerRender(b)}this.afterMapReset(b);this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.beforeMapReset(b);this.manageEventConfirmation(b)},getUserRole:function(o,g){var h=null;for(var b=0;b<o.links.length;b++){if(o.links[b].child_type_internal_name=="role"&&o.links[b].child_uuid==g){h=o.links[b];break}}return h},hasUserRole:function(o,h){var g=Array.isArray(h)?h:[h];for(var b=0;b<o.links.length;b++){if(o.links[b].child_type_internal_name=="role"&&g.includes(o.links[b].child_uuid)){return true;break}}return false},reportEvent:function(b,g,h){this.dispatchEvent({evtInitiatingModule:this,evtName:b,callback:Ext.isFunction(g)?g:h,data:Ext.isFunction(g)?null:g})}});Ext.define("Client.module.lang.Navigation",{strings:{zoom_in:{en:"Zoom in",nb:"Zoom in",nn:"Zoom in"},zoom_out:{en:"Zoom out",nb:"Zoom ut",nn:"Zoom ut"},home:{en:"Zoom to home extent",nb:"Zoom til startskjerm",nn:"Zoom til startskjerm"},locate:{en:"Zoom to your last known position",nb:"Zoom til din siste kjente posisjon",nn:"Zoom til din siste kjente posisjon"}},errCodes:{}});Ext.define("Client.module.map.Navigation",{extend:Client.module.Generic,bind:false,internal_name:"av_nav",disableZoomToPosition:false,toolsPanelWidth:0,dataViewPanelHeight:0,navStyle:{fillColor:"#000",fillOpacity:0.1,strokeWidth:0},geolocationOptions:{enableHighAccuracy:true,maximumAge:0,timeout:7000},constructor:function(b){Ext.apply(this,b);this.callParent([b]);
1this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.Navigation");this.buildGui();this.view=this.naviContainer},setLocateController:function(){this.geolocate=new OpenLayers.Control.Geolocate({bind:this.bind,geolocationOptions:this.geolocationOptions});this.geolocate.events.register("locationupdated",this,this.onLocationUpdated);this.map.addControl(this.geolocate)},buildGui:function(){var b=this;this.btnZoomIn=Ext.create("Ext.button.Button",{cls:"a3-zoom-in-btn a3-map-btn",tooltip:this.lang.getString("zoom_in"),tooltipType:"title"});this.btnZoomIn.on("click",this.onBtnZoomInClick,this);this.btnZoomOut=Ext.create("Ext.button.Button",{cls:"a3-zoom-out-btn a3-map-btn",tooltip:this.lang.getString("zoom_out"),tooltipType:"title"});this.btnZoomOut.on("click",this.onBtnZoomOutClick,this);this.btnHome=Ext.create("Ext.button.Button",{cls:"a3-home-btn a3-map-btn",tooltip:this.lang.getString("home"),tooltipType:"title"});this.btnHome.on("click",this.onBtnHomeClick,this);this.btnLocate=Ext.create("Ext.button.Button",{cls:"a3-locate-btn a3-map-btn",itemId:"mapZoomToLocation",tooltip:this.lang.getString("locate"),tooltipType:"title",listeners:{scope:b,render:function(){if(b.disableZoomToPosition){b.btnLocate.el.hide()}}}});this.btnLocate.on("click",this.onBtnLocateClick,this);this.naviContainer=Ext.create("Ext.container.Container",{cls:"a3-navi-container",itemId:"mapNavigationContainer",layout:{type:"table",columns:2},defaults:{width:44,height:44},width:94,height:94,items:[this.btnLocate,this.btnZoomIn,this.btnHome,this.btnZoomOut]})},onBtnZoomInClick:function(b){this.map.zoomIn()},onBtnZoomOutClick:function(b){this.map.zoomOut()},onBtnHomeClick:function(b){this.map.zoomToExtent(this.map.initialExtent)},onBtnLocateClick:function(b){this.toogleLocate()},toogleLocate:function(){if(this.navLayer){this.geolocate.deactivate();this.navLayer.removeAllFeatures();this.map.removeLayer(this.navLayer);this.navLayer=null}else{this.navLayer=new OpenLayers.Layer.Vector("navlayer");this.map.addLayer(this.navLayer);this.geolocate.activate()}},onLocationUpdated:function(g){var b=new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon(new OpenLayers.Geometry.Point(g.point.x,g.point.y),g.position.coords.accuracy/2,40,0),{},this.navStyle);this.navLayer.addFeatures([new OpenLayers.Feature.Vector(g.point,{},{graphicName:"cross",strokeColor:"#f00",strokeWidth:2,fillOpacity:0,pointRadius:10}),b]);this.map.zoomToExtent(this.navLayer.getDataExtent());this.pulsate(b,this.navLayer)},pulsate:function(q,o){var g=q.geometry.getCentroid(),z=q.geometry.getBounds(),b=Math.abs((z.right-z.left)/2),w=0,A="up";var h=function(){if(w>16){clearInterval(window.resizeInterval)}var B=b*0.03;var C=B/b;switch(w){case 4:case 12:A="down";break;case 8:A="up";break}if(A!=="up"){C=-Math.abs(C)}q.geometry.resize(1+C,g);o.drawFeature(q);w++};window.resizeInterval=window.setInterval(h,50,g,b)},_setActive:function(b){if(this.view){this.view.setVisible(b)}},afterMapContainerRender:function(b){this.mapContainer.add(this.naviContainer);this.callToolPanelForPositionUpdate()},afterMapReset:function(b){this.setLocateController()},beforeMapReset:function(b){},callToolPanelForPositionUpdate:function(){var b={evtName:"updateToolPanelPositionRequest",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})}});Ext.define("Client.module.lang.GoToCoordinate",{strings:{goToCoordinateBtn:{en:"Go to",nb:"GÃ¥ til",nn:"GÃ¥ til"},hideBtn:{en:"Hide",nb:"Skjul",nn:"Skjul"}},errCodes:{}});Ext.define("Adaptive.ux.lang.PlotCoordinate",{strings:{northValue:{en:"North",nb:"Nord",nn:"Nord"},eastValue:{en:"East",nb:"Ãst",nn:"Aust"},zValue:{en:"Height",nb:"Høyde",nn:"Høgde"},northDegValue:{en:"° north ",nb:"° nord",nn:"° nord"},northMinValue:{en:"' north",nb:"' nord",nn:"' nord"},eastDegValue:{en:"° east ",nb:"° øst",nn:"° aust"},eastMinValue:{en:"' east",nb:"' øst",nn:"' aust"},northSecValue:{en:"'' north",nb:"'' nord",nn:"'' nord"},eastSecValue:{en:"'' east",nb:"'' øst",nn:"'' aust"},toManyVertices:{en:"It is not possible to enter or edit coordinates for a geometry with more than 20 vertices.",nb:"Kan ikke redigere koordinater for en geometri med mer enn 20 noder."},createVertice:{en:"Add",nb:"Legg til"},updateVertice:{en:"Update",nb:"Oppdater"},cancelVertice:{en:"Cancel",nb:"Angre"}},errCodes:{}});Ext.define("Adaptive.utils.Proj",{singleton:true,transformUrl:"WebServices/generic/SpatialOperations.asmx/TransformWkt",transformPoint:function(b,g,o){if(b instanceof Proj4js.Point){b=Ext.clone(b)}else{if(b instanceof OpenLayers.LonLat){b=new Proj4js.Point(b.lon,b.lat)}else{if(b instanceof OpenLayers.Geometry.Point||(b.x&&b.y)){b=new Proj4js.Point(b.x,b.y)}else{throw"Only Proj4js Point, OpenLayers LonLat or Point, or object with x and y are supported."}}}if(g!=o){var h=new Proj4js.Proj(g),q=new Proj4js.Proj(o);Proj4js.transform(h,q,b)}return b},transformFeatureAsync:function(g,o,z,w){var h=this;if(g instanceof Proj4js.Point){g=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(g.x,g.y,g.z))}else{if(g instanceof OpenLayers.LonLat){g=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(g.lon,g.lat,g.z))}else{if(!(g instanceof OpenLayers.Feature.Vector)){w(false);return}}}
1var b=new OpenLayers.Format.WKT().write(g),q={wkt:b,fromEpsg:o.split(":")[1],toEpsg:z.split(":")[1]};if(q.fromEpsg==q.toEpsg){w(true,b,g);return}Ext.Ajax.request({url:h.transformUrl,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(q),success:function(A){A=Ext.JSON.decode(A.responseText).d;var C=Adaptive.utils.Config.getConfig(A.data,"wkt"),B=C&&new OpenLayers.Format.WKT().read(C);if(C&&B){w(true,C,B)}else{w(false)}},failure:function(){w(false)}})},toLonLat:function(b,g){var h=Adaptive.utils.Proj.transformPoint(b,g,"EPSG:4326");return{lon:h.x,lat:h.y}},toDDMM:function(h,b){var g=(h%1)*60;return Math.floor(h)+"°"+g.toFixed(b===undefined?3:b)+"'"},toDDMMSS:function(o,b){var g=(o%1)*60,h=(g%1)*60;return Math.floor(o)+"°"+Math.floor(g)+"'"+h.toFixed(b===undefined?2:b)+"''"},formatXY:function(A,h,o,B){var z=this,C="e",w="n",D,b,q,g;if(h){if(typeof h==="string"){h=new OpenLayers.Projection(h)}D=h.coordinateFormat;if(h.projConfig){b=h.projConfig.absoluteValues,q=h.projConfig.xLabel||null,g=h.projConfig.yLabel||null}h=h.proj}if(A instanceof OpenLayers.LonLat){A=new Proj4js.Point(A.lon,A.lat)}if(!Ext.isNumber(A.x)||!Ext.isNumber(A.y)){throw"Only Proj4js Point, OpenLayers LonLat or Point, or object with x and y are supported."}if(!o){o=h&&h.defData.indexOf("longlat")>-1?"5":"0"}if(B&&b){C=A.x<0?"w":"e";w=A.y<0?"s":"n";A.x=Math.abs(A.x);A.y=Math.abs(A.y)}C=q?q:C;w=g?g:w;if(D&&D!="regular"){return{x:z.decimalToDMS(A.x,D),y:z.decimalToDMS(A.y,D),x_label:C,y_label:w}}else{return{x:A.x.toFixed(o),y:A.y.toFixed(o),x_label:C,y_label:w}}},decimalToDMS:function(q,g){var o=parseInt(q),b=Math.abs(q-o)*60,h=(b-parseInt(b))*60;if(q<0&&q>-1){o="-"+o}if(g=="DD MM.MMM"){return o+"° "+(b<10?"0":"")+b.toFixed(3)+"'"}else{if(g=="DD MM SS.S"){return o+"° "+(b<10?"0":"")+parseInt(b)+"' "+(h<10?"0":"")+h.toFixed(2)+'"'}}},addCoordinateformats:function(g){var b=[],h=[];Ext.each(g,function(o,w){if(o.value==4326||o.value==4258||o.value==4230){var q;if(o.value==4326){q="WGS 84"}else{if(o.value==4258){q="ETRS 89"}else{if(o.value==4230){q="ED 50"}}}b.push({value:o.value,description:o.value+" - "+q+" DD MM.MMM",coordinateFormat:"DD MM.MMM",projConfig:o.projConfig});b.push({value:o.value,description:o.value+" - "+q+" DD MM SS.S",coordinateFormat:"DD MM SS.S",projConfig:o.projConfig})}});g=Ext.Array.merge(g,b);g=Ext.Array.sort(g,function(q,o){return q.value-o.value});Ext.each(g,function(o,q){h.push(Ext.apply({id:q+1},o))});return h}});Ext.define("Adaptive.ux.PlotCoordinate",{extend:Ext.container.Container,alias:"widget.a3-plotcoordinate",projections:null,config:{updateDelay:10,displayProjection:null,readOnly:false,showZ:false},constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.PlotCoordinate");g.projections=Adaptive.utils.Proj.addCoordinateformats(g.initialProjections);g.reportCurrentPositionTask=new Ext.util.DelayedTask(g.showCoordinate,g);g.buildGui();g.callParent(arguments);if(g.displayProjection){g.setMapProjection(g.displayProjection)}},buildGui:function(){var g=this,b={keyup:function(q,o){if(!o.isNavKeyPress()&&!o.hasModifier()&&!o.isSpecialKey()){g.reportCurrentPositionTask.delay(g.updateDelay)}},change:function(){if(g.updatingCoords){return}g.reportCurrentPositionTask.delay(g.updateDelay)},keydown:g.trapEnter,scope:g},h={disabled:g.readOnly,hideLabel:true,hideTrigger:true,enableKeyEvents:true};g.projectionCombo=Ext.create("Ext.form.ComboBox",{allowBlank:false,editable:false,store:new Ext.data.Store({fields:["id","value","description","coordinateFormat"],data:g.projections}),valueField:"id",displayField:"description",listeners:{scope:g,select:g.projectionChanged},mode:"local"});g.utm=Ext.create("Ext.container.Container",{itemId:"regular",layout:"column",defaults:h,items:[{xtype:"numberfield",itemId:"northValue",decimalPrecision:5,columnWidth:1,emptyText:g.lang.getString("northValue"),listeners:b},{xtype:"numberfield",itemId:"eastValue",labelWidth:10,decimalPrecision:5,columnWidth:1,emptyText:g.lang.getString("eastValue"),listeners:b},{xtype:"numberfield",itemId:"zValue",decimalPrecision:2,columnWidth:1,hidden:!g.showZ,emptyText:g.lang.getString("zValue"),listeners:b}]});g.ddmmmmm=Ext.create("Ext.container.Container",{itemId:"DD MM.MMM",layout:"column",defaults:h,items:[{xtype:"textfield",itemId:"northDegValueDM",columnWidth:0.5,emptyText:g.lang.getString("northDegValue"),listeners:b,validator:g.validateNorthDegValue},{xtype:"numberfield",itemId:"northMinValueDM",minValue:0,maxValue:59.999999,decimalPrecision:3,columnWidth:0.5,emptyText:g.lang.getString("northMinValue"),listeners:b},{xtype:"textfield",itemId:"eastDegValueDM",columnWidth:0.5,emptyText:g.lang.getString("eastDegValue"),listeners:b,validator:g.validateEastDegValue},{xtype:"numberfield",itemId:"eastMinValueDM",minValue:0,maxValue:59.999999,decimalPrecision:3,columnWidth:0.5,emptyText:g.lang.getString("eastMinValue"),listeners:b},{xtype:"numberfield",itemId:"zValue",decimalPrecision:2,columnWidth:0.5,hidden:!g.showZ,emptyText:g.lang.getString("zValue"),listeners:b}]});g.ddmmsss=Ext.create("Ext.container.Container",{itemId:"DD MM SS.S",layout:"column",defaults:h,items:[{xtype:"textfield",itemId:"northDegValueDMS",columnWidth:0.33,emptyText:g.lang.getString("northDegValue"),listeners:b,validator:g.validateNorthDegValue},{xtype:"numberfield",itemId:"northMinValueDMS",minValue:0,maxValue:59,decimalPrecision:0,columnWidth:0.33,emptyText:g.lang.getString("northMinValue"),listeners:b},{xtype:"numberfield",itemId:"northSecValueDMS",minValue:0,maxValue:59.999999,decimalPrecision:1,columnWidth:0.33,emptyText:g.lang.getString("northSecValue"),listeners:b},{xtype:"textfield",itemId:"eastDegValueDMS",columnWidth:0.33,emptyText:g.lang.getString("eastDegValue"),listeners:b,validator:g.validateEastDegValue},{xtype:"numberfield",itemId:"eastMinValueDMS",minValue:0,maxValue:59,decimalPrecision:0,columnWidth:0.33,emptyText:g.lang.getString("eastMinValue"),listeners:b},{xtype:"numberfield",itemId:"eastSecValueDMS",minValue:0,maxValue:59.999999,decimalPrecision:1,columnWidth:0.33,emptyText:g.lang.getString("eastSecValue"),listeners:b},{xtype:"numberfield",itemId:"zValue",decimalPrecision:2,columnWidth:0.33,hidden:!g.showZ,emptyText:g.lang.getString("zValue"),listeners:b}]});g.cardContainer=Ext.create("Ext.container.Container",{layout:"card",items:[g.utm,g.ddmmmmm,g.ddmmsss]});g.items=[g.projectionCombo,g.cardContainer]},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.fireEvent("enter")}},projectionChanged:function(w,b,h){var q=this,g=b[0].data.coordinateFormat||"regular";if(q.displayProjection){var o=q.computeCoordinate(q.coordinateFormat);q.updateCard(o,q.displayProjection)}q.displayProjection=new OpenLayers.Projection("EPSG:"+b[0].data.value);q.coordinateFormat=g;q.cardContainer.getLayout().setActiveItem(g);q.showCoordinate()},showCoordinate:function(o){var g=this,q;if(g.updatingCoords){return}q=g.computeCoordinate(g.coordinateFormat||"regular");g.addedByMe=true;if(q&&g.displayProjection){var b=new OpenLayers.LonLat(q.e,q.n),h={point:b,projection:g.displayProjection,centerMap:o};g.fireEvent("goToPosition",h)}else{g.fireEvent("invalidCoordinate")}g.addedByMe=false},computeCoordinate:function(g){var q=this,b,A=null,o=null,z;switch(g){case"DD MM.MMM":b=parseFloat(q.ddmmmmm.down("#northDegValueDM").value);A=(Math.abs(b)+parseFloat(q.ddmmmmm.down("#northMinValueDM").value/60));if(q.ddmmmmm.down("#northDegValueDM").value&&q.ddmmmmm.down("#northDegValueDM").value.length>0&&q.ddmmmmm.down("#northDegValueDM").value.lastIndexOf("-",0)===0){A=A*-1}b=parseFloat(q.ddmmmmm.down("#eastDegValueDM").value);o=(Math.abs(b)+parseFloat(q.ddmmmmm.down("#eastMinValueDM").value/60));if(q.ddmmmmm.down("#eastDegValueDM").value&&q.ddmmmmm.down("#eastDegValueDM").value.length>0&&q.ddmmmmm.down("#eastDegValueDM").value.lastIndexOf("-",0)===0){o=o*-1}z=q.ddmmmmm.down("#zValue").value;break;case"DD MM SS.S":b=parseFloat(q.ddmmsss.down("#northDegValueDMS").value);A=(Math.abs(b)+parseFloat(q.ddmmsss.down("#northMinValueDMS").value/60)+parseFloat(q.ddmmsss.down("#northSecValueDMS").value/3600));if(q.ddmmsss.down("#northDegValueDMS").value&&q.ddmmsss.down("#northDegValueDMS").value.length>0&&q.ddmmsss.down("#northDegValueDMS").value.lastIndexOf("-",0)===0){A=A*-1}b=parseFloat(q.ddmmsss.down("#eastDegValueDMS").value);o=(Math.abs(b)+parseFloat(q.ddmmsss.down("#eastMinValueDMS").value/60)+parseFloat(q.ddmmsss.down("#eastSecValueDMS").value/3600));if(q.ddmmsss.down("#eastDegValueDMS").value&&q.ddmmsss.down("#eastDegValueDMS").value.length>0&&q.ddmmsss.down("#eastDegValueDMS").value.lastIndexOf("-",0)===0){o=o*-1}z=q.ddmmsss.down("#zValue").value;break;default:var h=q.utm.down("#northValue"),w=q.utm.down("#eastValue"),B=q.utm.down("#zValue");A=h&&h.value;o=w&&w.value;z=B&&B.value}if(A!==null&&o!==null&&!isNaN(A)&&!isNaN(o)){return{n:A,e:o,z:z}}return null},getProjectionComboValue:function(){var g=this,b=g.projectionCombo,h=g.projectionCombo.getValue();if(!h){g.setMapProjection(g.displayProjection||new OpenLayers.Projection("EPSG:4326"));return g.projectionCombo.getValue()}return h},updateCard:function(B,A){var w=this,q=w.projectionCombo.findRecordByValue(w.getProjectionComboValue()),z=q&&q.get("value"),C=q&&q.get("coordinateFormat");if(B){w.updatingCoords=true;var h=Adaptive.utils.Proj.transformPoint(new OpenLayers.LonLat(B.e,B.n),A.projCode,"EPSG:"+z);if(C){var o=parseInt(h.y.toFixed(8)),g=parseFloat((Math.abs(h.y-o)*60).toFixed(8)),b=(g-parseInt(g.toFixed(8)))*60;lonDegrees=parseInt(h.x.toFixed(8)),lonMinutes=parseFloat((Math.abs(h.x-lonDegrees)*60).toFixed(8)),lonSeconds=(lonMinutes-parseInt(lonMinutes.toFixed(8)))*60;if(C=="DD MM.MMM"){if(lonMinutes.toFixed(3).indexOf("60")==0){lonDegrees+=1;lonMinutes=0}if(g.toFixed(3).indexOf("60")==0){o+=1;g=0}if(h.y<0&&h.y>-1){o="-"+o}w.ddmmmmm.down("#northDegValueDM").setValue(o);w.ddmmmmm.down("#northMinValueDM").setValue(g.toFixed(3));if(h.x<0&&h.x>-1){lonDegrees="-"+lonDegrees}w.ddmmmmm.down("#eastDegValueDM").setValue(lonDegrees);w.ddmmmmm.down("#eastMinValueDM").setValue(lonMinutes.toFixed(3))}else{if(C=="DD MM SS.S"){if(b.toFixed(2).indexOf("60")==0){g+=1;b=0}if(g>60){o+=1;g-=60}if(h.y<0&&h.y>-1){o="-"+o}w.ddmmsss.down("#northDegValueDMS").setValue(o);w.ddmmsss.down("#northMinValueDMS").setValue(parseInt(g));w.ddmmsss.down("#northSecValueDMS").setValue(b.toFixed(2));if(lonSeconds.toFixed(2).indexOf("60")==0){lonMinutes+=1;lonSeconds=0}if(lonMinutes>60){lonDegrees+=1;lonMinutes-=60}if(h.x<0&&h.x>-1){lonDegrees="-"+lonDegrees}w.ddmmsss.down("#eastDegValueDMS").setValue(lonDegrees);w.ddmmsss.down("#eastMinValueDMS").setValue(parseInt(lonMinutes));w.ddmmsss.down("#eastSecValueDMS").setValue(lonSeconds.toFixed(2))}}}else{w.utm.down("#northValue").setValue(h.y);w.utm.down("#eastValue").setValue(h.x)}if(w.editZ){w.utm.down("#zValue").setValue(B.z)}w.updatingCoords=false}},updateCoords:function(h,w,g){var q=this,z={n:null,e:null};if(h){h=new OpenLayers.Feature.Vector(h.geometry.clone());var o=w.proj?w.proj.srsProjNumber:w,b=g.proj?g.proj.srsProjNumber:g;if(o!=b){h.geometry.transform(w,g)}z.n=h.geometry.y;z.e=h.geometry.x}if(!q.displayProjection||!q.projectionCombo.getValue()){q.setMapProjection(g)}if(q.displayProjection){q.updateCard(z,g)}},clearCoords:function(){var g=this,b=g.query("field");b.forEach(function(h){h.setValue("")})},setMapProjection:function(w){var z=this,g=[],q=w.proj?w.proj.srsProjNumber:w,h=w.proj?w.coordinateFormat:null,b=null,A=null;if(Ext.isString(q)&&q.indexOf(":")!=-1){q=parseInt(q.split(":")[1])}for(var o=0;o<z.projections.length;o++){if(z.projections[o].value==q){b=z.projections[o].id;if(z.projections[o].coordinateFormat==h){A=z.projections[o].id}}}if(!A){A=b}if(A){z.projectionCombo.setValue(A);g.push(z.projectionCombo.findRecord("id",A));z.projectionChanged(z.projectionCombo,g,0)}},validateNorthDegValue:function(b){if(!b){return true}if(!/^-?[0-9]+$/.test(b)){return false}if(!(parseInt(b)>=-90&&parseInt(b)<=90)){return false}return true},validateEastDegValue:function(b){if(!b){return true}if(!/^-?[0-9]+$/.test(b)){return false}if(!(parseInt(b)>=-180&&parseInt(b)<=180)){return false}return true},setReadOnly:function(g){var b=this;b.query("textfield:not(combobox), numberfield").forEach(function(h){if(h.setReadOnly){h.setReadOnly(g)}})}});Ext.define("Client.module.map.GoToCoordinate",{extend:Client.module.Generic,projections:null,displayProjection:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.GoToCoordinate");g.buildGui()},buildGui:function(){var b=this;b.plotCoordinate=Ext.create("Adaptive.ux.PlotCoordinate",{initialProjections:GeoMind.utils.DictionaryManager.getDictionary("projections"),layout:{type:"vbox",align:"stretch"},map:b.map});b.plotCoordinate.on("goToPosition",function(g){b.fireEvent("goToPosition",g)});b.plotCoordinate.on("enter",function(){b.plotCoordinate.showCoordinate(true)});b.view=Ext.create("Ext.panel.Panel",{layout:{type:"vbox",align:"stretch"},hidden:true,cls:"a3-go-to-coord a3-border-box a3-padded-box",width:300,items:b.plotCoordinate,buttons:[{cls:"a3-submit-btn",text:b.lang.getString("goToCoordinateBtn"),listeners:{click:function(){b.plotCoordinate.showCoordinate(true)}}},{text:b.lang.getString("hideBtn"),listeners:{click:function(){b.view.hide()}}}],listeners:{show:function(){b.plotCoordinate.showCoordinate()}}})},setMapProjection:function(b,g){this.plotCoordinate.setMapProjection(b,g)}});Ext.define("Client.module.lang.Position",{strings:{scale:{en:"Scale",nb:"MÃ¥lestokk",nn:"MÃ¥lestokk"},n:{en:"N",nb:"N",nn:"N"},e:{en:"E",nb:"Ã",nn:"Ã"},s:{en:"S",nb:"S",nn:"S"},w:{en:"W",nb:"V",nn:"V"}},errCodes:{}});Ext.define("Client.module.map.layerManager.lang.Standard",{strings:{baseLayers:{en:"Basemaps",nb:"Bakgrunns- kart",nn:"Bakgrunns- kart"},baseLayers_tip:{en:"A map with fundamental information, used as a base upon which additional data of specialized nature are compiled or overprinted.",nb:"Bakgrunnskart, ogsÃ¥ kalt grunnkart, inneholder basis informasjon tematiske kart legges oppÃ¥.",nn:"Bakgrunnskart, ogsÃ¥ kalt grunnkart, inneholder basis informasjon tematiske kart legges oppÃ¥."},categories:{en:"Thematic maps",nb:"Temakart",nn:"Temakart"},categories_tip:{en:'A thematic map is a type of map especially designed to show a particular theme connected with a specific geographic area. These maps "can portray physical, social, political, cultural, economic, sociological, agricultural, or any other aspects of a city, state, region, nation, or continent."',nb:"Et temakart er en samling datasett som representerer en kategori, en samling informasjon knyttet til et tematisk omrÃ¥de. Temakart legges over bakgrunnskart",nn:"Et temakart er en samling datasett som representerer en kategori, en samling informasjon knyttet til et tematisk omrÃ¥de. Temakart legges over bakgrunnskart"},not_in_scale:{en:" (not in scale)",nb:" (ikke innenfor mÃ¥lestokken)",nn:" (ikkje innafor mÃ¥lestokk)"},in_scale:{en:"",nb:"",nn:""}},errCodes:{}});Ext.define("Client.module.map.Position",{extend:Client.module.Generic,view:null,internal_name:"av_mouse_coords",projections:null,displayProjection:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.Position");this.projections=Adaptive.utils.Proj.addCoordinateformats(this.projections);this.buildGui()},buildGui:function(){var b=this;b.projectionSwitcher=Ext.create("Ext.button.Button",{minWidth:80,hidden:true,cls:"a3-proj-switcher",menu:b.buildMenuItemsProjection()});b.scaleSwitcher=Ext.create("Ext.button.Button",{minWidth:100,cls:"a3-scale-switcher",menu:[]});b.coordinatesTpl=new Ext.XTemplate("{y_label}: {y} {x_label}: {x}");b.coordinatesTpl.compile();b.coordinatesPanel=Ext.create("Ext.button.Button",{hidden:true,cls:"a3-coord-panel",minWidth:200,listeners:{click:b.toggleCoordinateInput,scope:b},menu:[]});b.scaleTpl=new Ext.XTemplate(b.lang.getString("scale")+" 1 : {scale}");b.scaleTpl.compile();b.view=Ext.create("Ext.container.Container",{cls:"a3-statusbar",itemId:"statusbar",layout:{type:"hbox",align:"stretch"},height:20,items:[b.projectionSwitcher,b.coordinatesPanel,b.scaleSwitcher]});b.goToCoord=Ext.create("Client.module.map.GoToCoordinate",{projections:b.projections,delta:{x:90,y:-b.view.height}});b.goToCoord.on("goToPosition",function(q){if(b.map){var g=q.point,w=b.map.getProjection(),o=q.projection.projCode;g=Adaptive.utils.Proj.transformPoint(g,o,w);g=new OpenLayers.Geometry.Point(g.x,g.y);if(b.navLayer){b.navLayer.removeAllFeatures()}else{b.navLayer=new OpenLayers.Layer.Vector("goToCoordLayer");b.map.addLayer(b.navLayer)}var h=new OpenLayers.Feature.Vector(g,{}
1,{graphicName:"cross",strokeColor:"#00f",strokeWidth:2,fillOpacity:0,pointRadius:10});b.navLayer.addFeatures(h);if(q.centerMap){b.map.setCenter(new OpenLayers.LonLat(g.x,g.y),b.map.getZoom())}}});b.goToCoord.view.on("hide",function(){if(b.navLayer){b.navLayer.removeAllFeatures()}})},buildMenuItemsProjection:function(){var b=[];var h=this.projections.length;for(var g=0;g<h;g++){b.push(Ext.create("Ext.menu.Item",{text:this.projections[g].description,srid:this.projections[g].value,coordinateFormat:this.projections[g].coordinateFormat,iconCls:"icon-proj-default",listeners:{scope:this,click:this.switchProjection}}))}return b},addMenuItemsScale:function(){var h=this;if(h.map==null||h.map.baseLayer==null){return}var o=h.map.baseLayer.scales;if(o==null){return}var g=o.length;h.scaleSwitcher.menu.removeAll();for(var b=0;b<g;b++){h.scaleSwitcher.menu.add(Ext.create("Ext.menu.Item",{text:"1 : "+h.formatNumber(o[b]),scale:o[b],listeners:{scope:h,click:h.onScaleClicked}}))}},formatNumber:function(g){var h=Ext.util.Format.thousandSeparator;Ext.util.Format.thousandSeparator=" ";g=Math.round(g);var o=1;switch(g.toString().length){case 0:case 1:case 2:case 3:break;case 4:o=10;break;case 5:o=100;break;case 6:o=1000;break;case 7:o=10000;break;default:o=100000;break}var b=Math.round(g/o);g=Ext.util.Format.number(b*o,"0,000");Ext.util.Format.thousandSeparator=h;return g},onScaleClicked:function(b){this.switchScale(b.scale)},_setActive:function(b){if(!this.map){return}if(this.view){this.view.setVisible(b);if(b){this.activate()}else{this.deactivate()}}},switchProjection:function(o){var h=this,g=new OpenLayers.Projection("EPSG:"+o.srid);h.highlightProjection(o.srid,o.coordinateFormat);if(o.coordinateFormat){g.coordinateFormat=o.coordinateFormat}g.projConfig=h.getProjectionConfig(o.srid);h.displayProjection=g;h.projectionSwitcher.setText("EPSG:"+o.srid);h.projectionSwitcher.show();h.updateCoords(h.lastPosition);h.map.displayProjection=h.displayProjection;h.reportEvent("setNewProjection",{proj:g});var b=Ext.Date.add(new Date(),Ext.Date.YEAR,10);Ext.util.Cookies.set("coordinateFormat",o.coordinateFormat,b);Ext.util.Cookies.set("displayProjection",o.srid,b)},updateMapCoords:function(b){var g=this;if(g.hasMouse){return}g.updateCoords(g.map.getCenter())},updateMouseCoords:function(b){var h=this,g,o=b.xy;h.hasMouse=true;if(!o){return}if(!h.lastXy||Math.abs(o.x-h.lastXy.x)>h.granularity||Math.abs(o.y-h.lastXy.y)>h.granularity){h.lastXy=o;return}g=h.map.getLonLatFromPixel(o);h.updateCoords(g);h.lastXy=o},highlightProjection:function(b,g){this.projectionSwitcher.menu.items.each(function(h){if(h.srid==b&&(h.coordinateFormat||"")==(g||"")){h.setIconCls("icon-proj-selected")}else{h.setIconCls("icon-proj-default")}})},updateCoords:function(o){var q=this;if(!o||(o.lon==0&&o.lat==0)){return}q.lastPosition=o;var g=q.map.getProjection(),h=q.displayProjection.projCode,b=Adaptive.utils.Proj.transformPoint(o,g,h),w=Adaptive.utils.Proj.formatXY(b,q.displayProjection,null,true);w.y_label=q.lang.getString(w.y_label);w.x_label=q.lang.getString(w.x_label);q.coordinatesPanel.el.update(q.coordinatesTpl.apply(w));q.coordinatesPanel.show();q.projectionSwitcher.show()},switchScale:function(b){this.map.zoomToScale(b-1)},updateScalePanel:function(){var b=this;b.scaleSwitcher.setText(b.scaleTpl.apply({scale:b.formatNumber(b.map.getScale())}))},bindMapEvts:function(b){b.events.register("mousemove",this,this.updateMouseCoords);b.events.register("mouseout",this,this.resetCoords);b.events.register("changebaselayer",this,this.addMenuItemsScale);b.events.register("zoomend",this,this.updateScalePanel);b.events.register("move",this,this.updateMapCoords);b.events.register("moveend",this,this.updateMapCoords)},unbindMapEvts:function(b){b.events.unregister("mousemove",this,this.updateMouseCoords);b.events.unregister("mouseout",this,this.resetCoords);b.events.unregister("changebaselayer",this,this.addMenuItemsScale);b.events.unregister("zoomend",this,this.updateScalePanel);b.events.unregister("move",this,this.updateMapCoords);b.events.unregister("moveend",this,this.updateMapCoords)},afterMapContainerRender:function(g){var b=this;b.mapContainer.add(b.view);b.mapContainer.add(b.goToCoord.view)},afterMapReset:function(o){var h=this,g=Ext.util.Cookies.get("coordinateFormat"),q=Ext.util.Cookies.get("displayProjection"),b=q?"EPSG:"+q:(h.display_epsg?"EPSG:"+h.display_epsg.epsg:h.map.getProjection());if(!h.displayProjection){h.displayProjection=new OpenLayers.Projection(b);if(h.display_epsg){h.displayProjection.coordinateFormat=h.display_epsg.coordinateFormat}if(g!="undefined"){h.displayProjection.coordinateFormat=g}h.displayProjection.projConfig=h.getProjectionConfig(q||(h.display_epsg&&h.display_epsg.epsg)||h.map.getProjectionObject().proj.srsProjNumber)}h.highlightProjection(h.displayProjection.proj.srsProjNumber,h.displayProjection.coordinateFormat);h.projectionSwitcher.setText(b);h.projectionSwitcher.show();h.map.displayProjection=h.displayProjection;h.reportEvent("setNewProjection",{proj:h.displayProjection});h.bindMapEvts(h.map);h.addMenuItemsScale();h.updateScalePanel()},beforeMapReset:function(g){var b=this;if(b.map){b.unbindMapEvts(b.map);if(b.navLayer){b.navLayer.destroy();delete b.navLayer}}},toggleCoordinateInput:function(){var b=this;if(b.goToCoord.view.hidden){var g={n:b.map.getCenter().lat,e:map.getCenter().lat};b.goToCoord.setMapProjection(b.displayProjection,g);b.goToCoord.view.show()}else{b.goToCoord.view.hide()}},getProjectionConfig:function(b){var g=this,h;
1g.projections.some(function(o){if(o.value===b){h=o.projConfig;return true}});return h}});Ext.define("Client.module.map.search.Layer",{_onSearchResultLoaded:function(D){var A=this,o=D.data;if(!A.displayLayer){A.addLayers()}if(A.displayLayer.map==null){A.map.addLayer(A.displayLayer)}if(o.operation=="new"||o.operation=="clear"){A.displayLayer.removeAllFeatures();A.highlightLayer.removeAllFeatures();A.searchItemSelectedLayer.removeAllFeatures()}if(o==null||!Ext.isArray(o.records)){return}var b=o.records.length,C=new OpenLayers.Format.WKT(),g=[];for(var q=0;q<b;q++){var h=o.records[q],B=h.get("geom");if(B==null){continue}var z=o.records[q].data.uid;if(A.displayLayer.getFeaturesByAttribute("uid",z).length==0){var w=C.read(B);if(o.projection&&o.projection!=A.map.getProjection()){w.geometry.transform(o.projection,A.map.getProjectionObject())}w.uid=z;g.push(w)}}A.displayLayer.addFeatures(g)},removeAllFeatures:function(){var b=this;if(b.displayLayer&&b.displayLayer.map){b.displayLayer.removeAllFeatures()}if(b.highlightLayer&&b.highlightLayer.map){b.highlightLayer.removeAllFeatures()}if(b.searchItemSelectedLayer&&b.searchItemSelectedLayer.map){b.searchItemSelectedLayer.removeAllFeatures()}},getLayerThemeUuid:function(b){var h=Client.AppLogic.getLayerRecordById(b),g=Adaptive.utils.Config.getThemeData(h);if(g){return g.theme_uuid}},_onSearchResultSelected:function(g){var h=g.data,b=this;b.searchItemSelectedLayer.removeAllFeatures();b.activateLayer(h.elementType=="theme"?h.uid:b.getLayerThemeUuid(h.layerId));b.selectFeature(h.fullGeom||h.geom)},_onStandardSearchMouseover:function(g){var b=this;if(!g.data){b.unHighlightFeature()}else{b.highlightFeature(g.data.fullGeom||g.data.geom,g.data.srid)}},activateLayer:function(b){var g=this;if(!b){return}g.reportEvent("activateThemes",{themes:[b],append:true})},unHighlightFeature:function(){if(this.highlightLayer.map){this.highlightLayer.removeAllFeatures()}},highlightFeature:function(o,b){var h=this;if(o==null){return}if(h.highlightLayer.map==null){h.map.addLayer(h.highlightLayer)}h.highlightLayer.removeAllFeatures();var g=new OpenLayers.Format.WKT(),q=g.read(o);if(b&&!isNaN(parseInt(b))){b="EPSG:"+parseInt(b)}if(b&&b.projCode!=h.map.getProjectionObject().projCode){q.geometry.transform(b,h.map.getProjectionObject())}h.highlightLayer.addFeatures([q]);h.highlightLayer.drawFeature(q)},selectFeature:function(h){var g=this,b,o;if(!h){return}if(!g.searchItemSelectedLayer.map){g.map.addLayer(g.searchItemSelectedLayer)}
1b=new OpenLayers.Format.WKT().read(h);o=b.geometry;g.searchItemSelectedLayer.addFeatures(b);if(o.CLASS_NAME==="OpenLayers.Geometry.Point"){g.map.setCenter(new OpenLayers.LonLat(o.x,o.y),g.defaultZoomLevel)}else{g.map.zoomToExtent(o.getBounds().scale(2))}},addLayers:function(){var b=this;b.displayLayer=new OpenLayers.Layer.Vector(b._id+"_searchresult",{styleMap:new OpenLayers.StyleMap({strokeWidth:0.2,pointRadius:5,fillOpacity:0.9,fillColor:"#FF0808",graphicZIndex:1}),rendererOptions:{zIndexing:true},group:90});b.highlightLayer=new OpenLayers.Layer.Vector(b._id+"_searchresultHighlight",{styleMap:new OpenLayers.StyleMap({strokeWidth:4,strokeColor:"#FF9900",strokeOpacity:0.7,pointRadius:7,fillOpacity:0.7,fillColor:"#FF9900",graphicZIndex:2}),rendererOptions:{zIndexing:true},group:90});b.searchItemSelectedLayer=new OpenLayers.Layer.Vector(b._id+"_searchItemSelected",{styleMap:new OpenLayers.StyleMap({strokeWidth:4,strokeColor:"#3330FF",strokeOpacity:0.7,pointRadius:7,fillOpacity:0.7,fillColor:"#3330FF",graphicZIndex:2}),rendererOptions:{zIndexing:true},group:90})}});Ext.define("Client.module.map.search.Standard",{extend:Client.module.Generic,requires:[],mixins:{layer:Client.module.map.search.Layer},internal_name:"av_search",agents:[],searchIconSvg:'<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="44" height="44"><g><path d="m 23.180466,21.848095 c 0.242848,-0.306199 0.469858,-0.622958 0.675751,-0.955555 -0.0264,0.01056 -0.05279,0.02112 -0.07391,0.03695 -0.137262,0.06335 -0.300922,0.126704 -0.506815,0.126704 -0.279803,0 -0.665192,-0.110866 -0.913319,-0.644077 l -0.03695,-0.08447 c -0.02112,-0.04223 -0.03695,-0.07919 -0.05807,-0.121425 -1.494044,2.227868 -4.028112,3.690237 -6.910615,3.690237 -4.592997,0 -8.3149095,-3.721911 -8.3149095,-8.31491 0,-4.592998 3.7219125,-8.3149099 8.3149095,-8.3149099 0.316759,0 0.633517,0.015838 0.944997,0.052793 -0.03695,-0.2111724 -0.0052,-0.3853895 0.04224,-0.5068136 C 16.40711,6.6331241 16.554937,6.3902761 16.887533,6.2318968 17.177898,6.0946386 17.468259,5.9626559 17.758622,5.825394 16.824183,5.5931044 15.852791,5.4927975 14.86556,5.5403113 14.115898,5.5772665 13.360958,5.6881319 12.606017,5.9045835 8.9632938,6.9393279 6.3605949,9.8640646 5.5528609,13.316732 c -0.2481275,1.071699 -0.3167586,2.196192 -0.1953345,3.325964 0.058072,0.559607 0.1583793,1.124493 0.3167585,1.684099 0.5701653,2.016696 1.7263337,3.716633 3.2309366,4.967829 0.3114791,0.258686 0.6387962,0.490975 0.9713926,0.707428 1.4782069,0.955554 3.1939819,1.530998 4.9889459,1.615467 1.061141,0.05279 2.148678,-0.05807 3.230937,-0.364271 0.490976,-0.137262 0.950275,-0.322038 1.404296,-0.527931 l 4.418781,6.145114 3.405154,-2.396806 -4.471575,-6.208466 c 0.121425,-0.131983 0.216452,-0.279804 0.327317,-0.417065 z" class="a3-search-glass" /><path d="m 26.342772,12.281989 1.953344,-1.129772 C 28.132457,10.59789 27.905447,10.06468 27.620364,9.5631454 L 25.450569,10.180824 C 25.112693,9.710966 24.695628,9.2939007 24.204651,8.956025 L 24.785375,6.7756708 C 24.537248,6.6384087 24.273283,6.5117054 24.004038,6.4008398 23.734794,6.2899744 23.460269,6.2002262 23.185745,6.1263158 l -1.098095,1.969182 c -0.580724,-0.084469 -1.172008,-0.07919 -1.742172,0.026396 l -1.129772,-1.953344 c -0.554327,0.1583793 -1.087538,0.3853895 -1.589072,0.6704721 l 0.617679,2.1697956 c -0.469858,0.3378758 -0.886924,0.7549411 -1.230078,1.2459165 -0.7655,-0.205893 -1.520441,-0.4065064 -2.180355,-0.5807236 -0.137262,0.2534067 -0.263966,0.5120926 -0.374831,0.7866166 -0.110865,0.269245 -0.195334,0.538489 -0.274524,0.813014 0.596562,0.332596 1.277592,0.712706 1.969182,1.098096 -0.100306,0.591282 -0.08975,1.182565 0.01055,1.75273 -0.68631,0.395948 -1.362061,0.786617 -1.953344,1.129773 0.163658,0.554326 0.38539,1.082257 0.670472,1.583791 0.654634,-0.184776 1.404296,-0.401228 2.169796,-0.617679 0.337876,0.475137 0.76022,0.892203 1.256475,1.235357 l -0.586003,2.175077 c 0.248128,0.137262 0.506814,0.263966 0.781338,0.369551 0.269244,0.110865 0.543769,0.200614 0.818293,0.274524 0.332595,-0.596562 0.707426,-1.277592 1.098095,-1.974462 0.591283,0.100308 1.187845,0.08975 1.75801,-0.01584 l 1.129772,1.953345 c 0.554327,-0.163659 1.087538,-0.385389 1.583793,-0.675751 -0.184776,-0.654635 -0.401228,-1.404296 -0.61768,-2.169796 0.469859,-0.337875 0.886923,-0.760221 1.230079,-1.251196 l 2.180355,0.580724 c 0.137261,-0.248127 0.258686,-0.506814 0.369551,-0.776058 0.110866,-0.274525 0.200613,-0.549049 0.274524,-0.823572 L 26.363884,14.02944 c 0.09503,-0.586003 0.08447,-1.177285 -0.02112,-1.74745 z m -2.850826,1.826641 c -0.501536,1.230078 -1.900552,1.82664 -3.13063,1.325105 -1.23008,-0.496254 -1.826641,-1.90055 -1.325107,-3.130629 0.496255,-1.230079 1.900552,-1.82664 3.130629,-1.325106 1.224801,0.496255 1.821363,1.895271 1.325108,3.13063 z" class="a3-search-wheel" /></g></svg>',constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.mixins.layer.constructor.call(g,b);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.view=Ext.create("Ext.container.Container",{layout:"auto",cls:"a3-search-container",itemId:"searchContainer",items:[{xtype:"container",dataIndex:"searchagents",cls:"a3-search-agents",layout:"card",height:44},{xtype:"button",dataIndex:"searchbutton",cls:"a3-search",tooltip:g.lang.getString("btnSources"),text:g.searchIconSvg,width:48,height:44,menu:{plain:true,cls:"a3-search-agent-menu",items:[],listeners:{beforeshow:function(o){var h="a3-search-agent-menu-no-choice";g.hasSingleAgent?o.removeCls(h):o.addCls(h)}}}}]})},_onSearch:function(g){var b=this;if(b.currentAgent){b.currentAgent.view.setValue(g.data.query)}else{if(b.multiAgentView){b.multiAgentView.setValue(g.data.query)}}},addAgent:function(o){var q=this,w=q.view.query("[dataIndex=searchagents]")[0],h=this.view.query("[dataIndex=searchbutton]")[0];if(o.agentType=="multi"){if(!q.multiAgentView){q.multiAgentView=Ext.create("Client.module.map.search.MultiAgentView",{defaultZoomLevel:q.defaultZoomLevel,groupId:"a3-search-agent-radio-"+q.view.id,listeners:{activateagent:function(){if(q.currentAgent!=null){q.activateAgent()}}}});w.add(q.multiAgentView);q.multiAgentView.menuItem.setChecked(q.agents.length==0);h.menu.add(q.multiAgentView.menuItem)}q.multiAgentView.addAgent(o);o.isEnabled=true;o.menuItem=Ext.create("Ext.menu.CheckItem",{cls:"a3-search-agent-menu-item-multi",agentType:"multi",text:o.menuItemText,checked:true,listeners:{scope:o,click:function(){if(q.currentAgent!=null){q.activateAgent()}},beforecheckchange:function(){return !q.currentAgent},checkchange:function(A,z){this.setEnabled(z);q.multiAgentView.performQuery(true)}}});var b=h.menu.items.length-1;for(var g=b;g>=0;--g){if(h.menu.items.getAt(g).agentType==="multi"){b=g;break}}h.menu.insert(b+1,o.menuItem)}else{w.add(o.view);o.view.agent=o;o.menuItem=Ext.create("Ext.menu.CheckItem",{cls:"a3-search-agent-menu-item-single",text:o.menuItemText,group:"a3-search-agent-radio-"+q.view.id,checked:q.agents.length==0,listeners:{scope:o,click:o.menuItemClicked}});h.menu.add(o.menuItem);q.hasSingleAgent=true}q.agents.push(o);o.active=true;if(q.agents.length>1){q.view.addCls("a3-search-multi-agent")}},removeAll:function(){var h=this,o=h.view.query("[dataIndex=searchagents]")[0],g=h.view.query("[dataIndex=searchbutton]")[0];for(var b=0;b<h.agents.length;b++){h.agents[b].active=false}o.removeAll(false);g.menu.removeAll();h.agents=[];h.hasSingleAgent=false;h.view.removeCls("a3-search-multi-agent");if(h.multiAgentView){delete h.multiAgentView}},_onSearchAgentSelected:function(b){this.activateAgent(b.data.agent);this.removeAllFeatures()},activateAgent:function(g){var h=this,o=h.view.query("[dataIndex=searchagents]")[0].getLayout(),b=h.view.query("[dataIndex=searchbutton]")[0];if(g===h.currentAgent||!h.currentAgent&&g.agentType=="multi"){return}if(h.currentAgent){b.getEl().removeCls(h.currentAgent.view.buttonCls);if(h.currentAgent.onClear){h.currentAgent.onClear()}h.currentAgent.menuItem.setChecked(false)}if(!g||g.agentType=="multi"){o.setActiveItem(h.multiAgentView);h.currentAgent=null;h.multiAgentView.setEnabled(true)}else{if(h.multiAgentView){h.multiAgentView.setEnabled(false)}b.getEl().addCls(g.view.buttonCls);o.setActiveItem(g.view);h.currentAgent=g}},afterMapContainerRender:function(){this.mapContainer.add(this.view)},afterMapReset:function(q){var o=this,w=o.view.query("[dataIndex=searchagents]")[0].getLayout(),z=w.getActiveItem(),g=o.view.query("[dataIndex=searchbutton]")[0];if(z==null){o.view.hide();return}else{if(o.view.hidden){o.view.show()}}if(o.multiAgentView){o.multiAgentView.map=o.map}o.currentAgent=z.agent;if(o.agents.length<=1){g.menu.remove(g.menu.items.getAt(0),false);g.getEl().addCls("a3-search-btn-standard-no-menu")}else{g.getEl().removeCls("a3-search-btn-standard-no-menu");g.getEl().addCls(z.buttonCls)}if(o.currentAgent&&!o.currentAgent.active){var h=o.agents.length;for(var b=0;b<h;b++){if(o.agents[b].active){o.activateAgent(o.agents[b]);return}}o.view.hide()}if(o.addLayers){o.addLayers()}},beforeMapReset:function(b){if(this.removeLayers){this.removeLayers()}}});Ext.define("Client.data.model.search.Standard",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/Standard.asmx/FindElements",type:"aja
1x",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},paramsAsJson:true},fields:[{name:"name"},{name:"description"},{name:"wkt"},{name:"srid"}],config:{fields:this.fields}});Ext.define("Client.module.map.search.lang.Standard",{strings:{btnSources:{en:"Pick sources",nb:"Velg kilder",nn:"Vel kjeldar"},loadingText:{en:"Searching...",nb:"Søker...",nn:"Søkjer..."},moreResults:{en:"More results available. Please refine your search.",nb:"Flere resultater finnes. Vennligst spesifiser søket ditt."},emptyText_boundlist:{en:"No matching posts found.",nb:"Ingen treff",nn:"Ingen treff"},emptyText_municipalityCombo:{en:"All of Norway",nb:"Hele landet",nn:"Heile landet"},emptyText_municipalityCombo_property:{en:"Municipality",nb:"Kommune",nn:"Kommune"},emptyText_multi:{en:"Search for content in selected sources",nb:"Søk etter innhold i valgte kilder",nn:"Søk etter innhald i valde kjeldar"},emptyText_adaptive:{en:"Search content or add map",nb:"Søk etter innhold eller legg til et kartlag",nn:"Søk etter innhold eller legg til et kartlag"},emptyText_adaptive_nothemes:{en:"Search for address- or placenames",nb:"Søk etter stedsnavn og adresser",nn:"Søk etter stedsnavn og adresser"},emptyText_adaptive_themes:{en:"Search theme content or add map",nb:"Søk etter innhold i tema eller legg til et kartlag",nn:"Søk etter innhold i tema eller legg til et kartlag"},menuItemText_multi:{en:"Selected sources:",nb:"Valgte kilder:",nn:"Valde kjeldar:"},menuItemText_adaptive:{en:"Address, street, map data",nb:"Adresser, gatenavn, kartinnhold",nn:"Adresser, gatenavn, kartinnhald"},menuItemText_adaptive_nothemes:{en:"Address, street",nb:"Adresser, gatenavn",nn:"Adresser, gatenavn"},menuItemText_themeData:{en:"Map data",nb:"Kartinnhold",nn:"Kartinnhald"},emptyText_themeData:{en:"Search for map data",nb:"Søk etter kartinnhold",nn:"Søk etter kartinnhald"},menuItemText_themeMeta:{en:"Map layers",nb:"Temalag",nn:"Temalag"},emptyText_themeMeta:{en:"Search for map layers",nb:"Søk etter temalag",nn:"Søk etter temalag"},menuItemText_names:{en:"Place names",nb:"Stedsnavn",nn:"Stedsnamn"},emptyText_names:{en:"Search for places",nb:"Søk etter stedsnavn",nn:"Søk etter stedsnamn"},menuItemText_addresses:{en:"Addresses",nb:"Adresser",nn:"Adresser"},emptyText_addresses:{en:"Search for addresses",nb:"Søk etter adresser",nn:"Søk etter adresser"},menuItemText_owner:{en:"Property by owner",nb:"Eiendommer etter eier",nn:"Eigedomar etter eigar"},emptyText_owner:{en:"Last name first name",nb:"Etternavn fornavn",nn:"Etternamn førenamn"},menuItemText_property:{en:"Property by number",nb:"Eiendommer etter gnr/bnr",nn:"Eigedomar etter gnr/bnr"},emptyText_property:{en:"Last name first name",nb:"Etternavn fornavn",nn:"Etternamn førenamn"},menuItemText_building:{en:"Property by building number",nb:"Eiendommer etter bygningsnummer"},emptyText_building:{en:"Bulding numbers (separate by comma)",nb:"Bygningsnummer (søk etter flere med komma)"},buildingnr:{en:"Building no.",nb:"Bygningsnr"},emptyText_articleGeneric:{en:"Search for articles",nb:"Søk etter artikler"},menuItemText_articleGeneric:{en:"Article search",nb:"Artikkelsøk"},menuItemText_suggest:{en:"Suggestions",nb:"Søkeforslag"},titleText_suggest:{en:"Did you mean",nb:"Mente du"},showMoreResults:{en:"Show more results",nb:"Vis flere treff"},showLessResults:{en:"Show less results",nb:"Vis færre treff"},hideMoreResults:{en:"Go back",nb:"Gå tilbake"}},errCodes:{}});Ext.define("Client.module.map.search.MultiAgent",{extend:Client.module.Generic,store:null,tpl:null,menuItemText:null,agentType:"multi",constructor:function(b){var g=this;b=b||{};if(!g.lang){g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard")}Ext.apply(g,b);g.callParent([b]);g.view=Ext.create("Ext.view.BoundList",{cls:"a3-search-list a3-search-list-multi",store:g.store,itemSelector:".x-boundlist-item",loadMask:false,overItemCls:".x-boundlist-item-mouseover",tpl:g.tpl,selModel:{enableKeyNav:false},listeners:{scope:g,containerclick:function(h,q,o){if(q.target.className.contains("a3-show-more")){q.preventDefault();g.showMore=!g.showMore;h.refresh()}},containerkeydown:function(h,q,o){if(q.target.className.contains("a3-show-more")){switch(q.getKey()){case Ext.EventObject.SPACE:case Ext.EventObject.ENTER:g.showMore=!g.showMore;h.refresh();case Ext.EventObject.DOWN:q.preventDefault();setTimeout(function(){g.view.focus();g.highlightAt(0)},0);break;case Ext.EventObject.UP:q.preventDefault();g.fireEvent("highlightPrevView",g);break}}else{if(q.getKey()==Ext.EventObject.TAB){g.view.clearHighlight()}}},itemclick:g.onItemSelect,beforeselect:function(o,h){g.onItemSelect(o,h);return false},highlightitem:g.onHighlight,boxready:function(){g.keyNav=new Ext.view.BoundListKeyNav(g.view.el,{boundList:g.view,forceKeyDown:true,up:function(){var q=this,o=q.boundList,w=o.all,z=o.highlightedItem,h=z?o.indexOf(z):-1;if(h>0){g.highlightAt(h-1)}else{if(z){o.clearHighlight();if(!g.isOnlyAgent&&g.store.totalCount>4){var A=g.view.el.dom.getElementsByClassName("a3-show-more");if(A&&A.length>0){A[0].focus();return}}g.fireEvent("highlightPrevView",g)}}},down:function(){var q=this,o=q.boundList,w=o.all,z=o.highlightedItem,h=z?o.indexOf(z):-1;if(h<w.getCount()-1){g.highlightAt(h+1)}else{o.clearHighlight();g.fireEvent("highlightNextView",g)}}})}}})},setEnabled:function(b){var g=this;g.isEnabled=b;if(g.view){g.view.setVisible(b)}},hasResults:function(){return this.view.all.getCount()>0},onQueryChange:function(g,b){},highlightAt:function(g){var o=this,b=o.view,h=b.all.item(g==-1?b.all.getCount()-1:g);
1if(h){b.highlightItem(h.dom);h.scrollIntoView(o.view.up().getTargetEl(),false)}},onHighlight:function(h,q){var o=this,b=o.store.findExact("uid",q.getAttribute("data-uid")),g=b!=-1&&o.store.getAt(b);if(g){o.standardSearchMouseover(g)}},onItemSelect:function(g,b){this.searchResultSelected(b)},searchResultSelected:function(b){var g=this;g.view.refresh();g.reportEvent("searchResultSelected",b.data)},standardSearchMouseover:function(b){this.reportEvent("standardSearchMouseover",b.data)}});Ext.define("Client.module.map.search.agents.Standard",{extend:Client.module.map.search.MultiAgent,config:{searchItems:"AdaptiveThemes,AdaptiveNames,AdaptiveAddresses",pageSize:100,searchThemes:true,searchThemesFixed:[]},constructor:function(g){var h=this,o="emptyText_adaptive",b="menuItemText_adaptive";g=g||{};h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");h.displayField="name";h.buttonCls="a3-search-btn-standard";h.loadingText=h.lang.getString("loadingText");h.emptyTextList=h.lang.getString("emptyText_boundlist");h.emptyText=g.lang?g.lang.getString(o):h.lang.getString(o);h.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.Standard",proxy:Ext.create("Client.data.model.search.StandardProxy"),pageSize:h.pageSize,clearOnPageLoad:false});h.store.mon(h.store,"beforeload",h.onBeforeLoad,h);h.store.mon(h.store,"load",h.onLoad,h);h.store.mon(h.store,"clear",h.onClear,h);h.tpl=new Ext.XTemplate('<tpl if="this.getTotal() > 4 && !this.isOnlyAgent()">','<a class="a3-show-more a3-link" tabindex="0">','<tpl if="this.shouldExpand()">',h.lang.getString("showLessResults"),"<tpl else>",h.lang.getString("showMoreResults"),"</tpl>","</a>","</tpl>",'<h2 class="a3-search-list-title">',h.menuItemText,'<tpl if="this.isLoading()">','<span class="loading-dots"><span></span><span></span><span></span></span>',"<tpl else>"," ({[this.getTotalString()]})","</tpl>","</h2>",'<tpl for=".">','<div class="x-boundlist-item {[this.getClass(values)]}" data-uid="{uid}">',h.itemTpl||("{[this.getIcon(values)]}<h3>{[this.getName(values)]}</h3>{[this.getDesc(values)]}"),"</div>","{% if (!this.shouldExpand() && xindex > 3) break; %}","</tpl>",'<tpl if="this.tooMany() && this.shouldExpand()"><div class="a3-more-results-item">',h.lang.getString("moreResults"),"</div></tpl>",{getClass:function(q){if(q.elementType=="theme"&&!h.listOfThemes[q.uid]){return"hide"}return""},isOnlyAgent:function(){return h.isOnlyAgent},shouldExpand:function(){return h.isOnlyAgent||h.showMore},isLoading:function(){return h.store.isLoading()},tooMany:function(){return h.store.proxy.totalCount>h.store.getCount()},getTotal:function(){return h.store.proxy.totalCount||0},getTotalString:function(){return h.store.proxy.totalCount==1000?">1000":h.store.proxy.totalCount},getIcon:function(q){if(q.elementType=="theme"){return'<span class="a3-icon a3-checkbox '+(h.map.isThemeVisible(q.uid)?"a3-checkbox-checked":"")+'"></span>'}},getName:function(q){if(q.elementType=="theme"&&h.listOfThemes[q.uid]&&h.listOfThemes[q.uid].length>0){return h.listOfThemes[q.uid][0].themeName}else{return q.name}},getDesc:function(q){var w=q.uid,z=h.listOfThemes||{},A="";if(q.elementType=="theme"){if(z[w]){z[w].forEach(function(B){A+="<span>"+B.catName+"</span>"});if(A){return'<p class="a3-search-cat">'+A+"</p>"}}}else{A="<p>"+q.description+"</p>";if(q.layerName&&q.layerId&&q.layerId!="AdaptiveNames"&&q.layerId!="AdaptiveAddresses"){A+="<p><i>"+h.listOfLayers[q.layerId]+"</i></p>"}return A}}});Ext.apply(h,g);h.callParent([g])},bindMapEvents:function(){var b=this;if(!b.mapEventsBinded){b.map.events.register("moveend",b,b.onMapMove);b.mapEventsBinded=true}},unbindMapEvents:function(){var b=this;b.map.events.unregister("moveend",b,b.onMapMove);b.mapEventsBinded=false},onMapMove:function(){var b=this;b.standardSearchMouseover({});if(b.shouldPerformLoad(b.lastQuery)){b.store.load({params:{query:b.lastQuery}})}b.view.refresh()},shouldPerformLoad:function(b){return b.length>1},onQueryChange:function(h,b){var g=this;g.isOnlyAgent=b;if(h!=g.lastQuery){g.clearResults();g.lastQuery=h;if(g.shouldPerformLoad(h)){g.bindMapEvents();g.store.load({params:{query:h}})}}g.view.refresh()},onBeforeLoad:function(H,B){var F=this,E=F.map.getExtent(),h=F.searchThemesFixed||[],g;if(F.searchThemes){var C=F.map.getLayers();for(var D=0;D<C.length;D++){var z=C[D];if(z.record&&z.record.data.is_internal){var w=z&&Adaptive.utils.Config.getThemeData(z.record),o=w&&Adaptive.utils.Config.getBooleanConfig(w,"text_search_disabled",fal
1se);if(!o){h.push(z.record.data.id)}if(z.record.dataviewFilter&&z.record.dataviewFilter.filterColumns){var G={};z.record.dataviewFilter.filterColumns.forEach(function(q){G[q.name]=q.value.toString()});if(!g){g={}}g[z.record.data.id.toString()]=G}}}}h=Ext.Array.merge(h,F.searchItems.split(","));var b=B.params.query.trim(),A={request:{q:b+"*",srsid:F.map.getProjectionObject().proj.srsProjNumber,start:0,limit:B.limit,bbox:{bottom:E.bottom,left:E.left,top:E.top,right:E.right},layers:h.join(","),dimensionFilters:g&&Ext.JSON.encode(g)}};H.getProxy().extraParams=A;return true},onClear:function(){var b=this;b.lastQuery=null;b.unbindMapEvents();b.clearResults()},clearResults:function(){var b=this;b.reportEvent("searchResultLoaded",{operation:"clear",records:[]});b.view.refresh()},onLoad:function(g,b,q,h){var o=this;if(!o.lastQuery){return}g.totalCount=g.getProxy().totalCount;o.reportEvent("searchResultLoaded",{operation:"append",records:b})},beforeMapReset:function(){if(this.map){this.unbindMapEvents()}},afterMapReset:function(h){var g=this,b={},o={};g.map=h.data.map;g.unifiedMapCfg=h.data.unifiedMapCfg;g.map.getLayers().forEach(function(A){if(!A.record){return}var q=Adaptive.utils.Config.getThemeData(A.record).theme_uuid,w=A.record.get("id"),z=A.record.get("catName"),B=A.record.get("name");b[w]=B;if(!o[q]){o[q]=[]}if(z){o[q].push({themeName:B,catName:z})}});g.listOfLayers=b;g.listOfThemes=o;g.store.getProxy().getReader().listOfThemes=o},_onSearchSessionConfigured:function(b){this.store.proxy.url=b.data.url;this.store.proxy.session_id=b.data.session_id}});Ext.define("Client.module.map.search.agents.ThemeData",{extend:Client.module.map.search.agents.Standard,searchItems:"",searchThemes:true,searchThemesFixed:[],searchType:"themes",constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.menuItemText=g.lang.getString("menuItemText_themeData");b.emptyText=g.lang.getString("emptyText_themeData");Ext.apply(g,b);g.callParent([b])}});Ext.define("Client.module.map.search.agents.ThemeMeta",{extend:Client.module.map.search.agents.Standard,searchItems:"AdaptiveThemes",searchThemes:false,searchThemesFixed:[],searchType:"themes",constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.menuItemText=g.lang.getString("menuItemText_themeMeta");b.emptyText=g.lang.getString("emptyText_themeMeta");Ext.apply(g,b);g.callParent([b])},_onLayersVisibilityUpdated:function(){this.view.refresh()}});Ext.define("Client.module.map.search.agents.Names",{extend:Client.module.map.search.agents.Standard,searchItems:"AdaptiveNames",searchThemes:false,searchThemesFixed:[],searchType:"nothemes",constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.menuItemText=g.lang.getString("menuItemText_names");b.emptyText=g.lang.getString("emptyText_names");g.itemTpl='<h3>{name}, <span class="small">{description}</span></h3>';Ext.apply(g,b);g.callParent([b])}});Ext.define("Client.module.map.search.agents.Addresses",{extend:Client.module.map.search.agents.Standard,searchItems:"AdaptiveAddresses",searchThemes:false,searchThemesFixed:[],searchType:"nothemes",constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.menuItemText=g.lang.getString("menuItemText_addresses");b.emptyText=g.lang.getString("emptyText_addresses");g.itemTpl='<h3>{name}, <span class="small">{description}</span></h3>';Ext.apply(g,b);g.callParent([b])}});Ext.define("Client.module.map.search.Scroller",{extend:Ext.form.field.ComboBox,alias:["widget.scroller"],constructor:function(){var b=this;b.callParent(arguments);b.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");b.inited=false;b.store.on("load",function(g){var h=Ext.getElementById(b.picker.id+"-listEl");if(!b.inited){h.setAttribute("data-more-results",b.lang.getString("moreResults"));b.inited=true}h.className=h.className.replace(/\ba3-more-results\b/,"");if(g.getTotalCount()>g.pageSize){h.className+=" a3-more-results"}})},onExpand:function(){var o=this,b=o.listKeyNav,h=o.selectOnTab,g=o.getPicker();if(b){b.enable()}else{b=o.listKeyNav=new Ext.view.BoundListKeyNav(o.inputEl,{boundList:g,forceKeyDown:true,tab:function(q){if(h){this.selectHighlighted(q);o.triggerBlur()}return true},enter:function(z){var q=g.getSelectionModel(),w=q.getCount();this.selectHighlighted(z);if(!o.multiSelect&&w===q.getCount()){o.collapse()}},home:null,end:null})}if(h){o.ignoreMonitorTab=true}Ext.defer(b.enable,1,b);o.inputEl.focus()},collapse:function(){var b=this;if(!b.getStore().loading){b.callParent(arguments)}},onItemClick:function(h,b){var q=this,o=q.picker.getSelectionModel().getSelection(),g=q.valueField;if(!q.multiSelect&&o.length){if(b.get(g)===o[0].get(g)){q.displayTplData=[b.data];q.setRawValue(q.getDisplayValue());q.collapse();q.fireEvent("select",q,[b])}}},doRawQuery:function(){var b=this;b.callParent(arguments)},fieldSubTpl:['<div class="{hiddenDataCls}" role="presentation"></div>','<input id="{id}" type="{type}" role="{role}" {inputAttrTpl} class="{fieldCls} {typeCls} {editableCls}" autocomplete="false"','<tpl if="value"> value="{[Ext.util.Format.htmlEncode(values.value)]}"</tpl>','<tpl if="name"> name="{name}"</tpl>','<tpl if="placeholder"> placeholder="{placeholder}"</tpl>','<tpl if="size"> size="{size}"</tpl>','<tpl if="maxLength !== undefined"> maxlength="{maxLength}"</tpl>','<tpl if="readOnly"> readonly="readonly"</tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','<tpl if="tabIdx"> tabIndex="{tabIdx}"</tpl>','<tpl if="fieldStyle"> style="{fieldStyle}"</tpl>',"/>",{compiled:true,disableFormats:true}]});Ext.define("Client.module.map.search.Agent",{extend:Client.module.Generic,emptyText:null,buttonCls:null,displayField:null,store:null,menuItemText:null,loadingText:null,emptyTextList:null,searchCls:"x-form-clear-trigger-search",queryDelay:null,agentType:"single",constructor:function(b){var g=this;b=b||{};
1if(!g.lang){g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard")}g.queryDelay=400;g.buildView();g.buildMenuItem();g.loadingText=g.lang.getString("loadingText");g.emptyText=g.lang.getString("emptyText_adaptive");g.emptyTextList=g.lang.getString("emptyText_boundlist");Ext.apply(g,b);g.callParent([b])},buildView:function(){var b=this;b.view=Ext.create("Client.module.map.search.Scroller",{cls:"a3-search-agent-scroller",store:b.store,displayField:b.displayField,emptyText:b.emptyText,typeAhead:false,buttonCls:b.buttonCls,queryDelay:b.queryDelay,minChars:1,hideLabel:true,trigger1Cls:b.searchCls+" "+b.searchCls+"-hidden",onTrigger1Click:function(g){b.view.clearValue();b.store.removeAll();b.view.collapse();delete b.view.lastQuery},listeners:{scope:b,select:b.onItemSelect,render:b.onRender,beforequery:b.onBeforeQuery,change:b.onChange},listConfig:{cls:"a3-search-list",loadingText:b.loadingText,emptyText:'<span class="empty">'+b.emptyTextList+"</span>",getInnerTpl:b.prepareHtml},displayTpl:new Ext.XTemplate('<tpl for=".">{[typeof values === "string" ? this.stripHtml(values) : this.stripHtml(values["'+b.displayField+'"])]}<tpl if="xindex < xcount">'+b.delimiter+"</tpl></tpl>",{stripHtml:function(g){return g.replace(/(<([^>]+)>)/ig,"")}})})},buildMenuItem:function(){var b=this;b.menuItem=Ext.create(b.agentType=="multi"?"Ext.menu.CheckItem":"Ext.menu.Item",{text:b.menuItemText,checked:true,listeners:{scope:b,click:b.menuItemClicked}})},onMouseOverStandard:function(g,b){this.standardSearchMouseover(b)},onBeforeQuery:function(b){return true},onChange:function(q,o){var h=this,g=h.searchCls+"-hidden",b=q.triggerEl;if(b&&o==null){b.addCls(g)}else{if(b){b.removeCls(g)}}},onRender:function(g){var b=this;g.getEl().on("click",function(o,h){if(h.className.indexOf("x-form-text")!=-1){if(b.resizePicker){b.resizePicker()}if(g.store.data.length>0){g.expand()}else{g.collapse()}}});g.getPicker().on("itemmouseenter",function(h,o){this.standardSearchMouseover(o)},b)},onItemSelect:function(g,b){this.searchResultSelected(b[0].data)},standardSearchMouseover:function(b){var g={evtName:"standardSearchMouseover",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b.data};this.dispatchEvent(g,{confirmationRequired:false})},searchResultSelected:function(h){var b=this,g={evtName:"searchResultSelected",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,data:h};b.dispatchEvent(g,{confirmationRequired:false})},menuItemClicked:function(){this.searchAgentSelected()},searchAgentSelected:function(){var b=this,g={evtName:"searchAgentSelected",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,data:{agent:b}};b.dispatchEvent(g,{confirmationRequired:false})},prepareHtml:function(b){console.warn("Client.module.map.search.Agent: "+this.$className+" - should have implemented the override for prepareHtml")}});Ext.define("Client.data.model.search.matrikkel.Property",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/Matrikkelsok.asmx/FindPropertiesById",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},doRequest:function(b,z,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),w=o.getMethod(h);if(b.allowWrite()){h=q.write(h)}Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,z,g),method:w,disableCaching:false});h.headers=h.headers||{};h.headers.gm_session_id=GeoMind.utils.SessionManager.ss.sessionId;h.headers["X-Adaptive-Gui"]=__guuid__;if(w.toUpperCase()!=="GET"&&o.paramsAsJson){h=Ext.apply({jsonData:h.params},h);delete h.params}if(!o.connection){o.connection=Ext.create("Ext.data.Connection")}else{o.connection.abortAll()}o.connection.request(h);return h},timeout:60000,paramsAsJson:true},fields:[{name:"adresseIdent",type:"auto",defaultValue:null,useNull:true},{name:"anleggsTypeKode"},{name:"arealkildeKode",type:"auto",defaultValue:null,useNull:true},{name:"avklartAndeler"},{name:"avklartAndelerSpecified"},{name:"avklartEiere"},{name:"avklartEiereSpecified"},{name:"beregnetAreal"},{name:"bruksenhetIdent",type:"auto",defaultValue:null,useNull:true},{name:"bruksnavn"},{name:"eiendomsTypeKode",type:"auto",defaultValue:null,useNull:true},{name:"erSeksjonert"},{name:"etablertDato"},{name:"etablertDatoSpecified"},{name:"festetMatrikkelenhetIdent"},{name:"formalSeksjonKode"},{name:"fristMatrikkelforingsKrav"},{name:"fristMatrikkelforingsKravSpecified"},{name:"fristOppmaling"},{name:"fristOppmalingSpecified"},{name:"harAktiveFestegrunner"},{name:"harAnmerketKlage"},{name:"harGrunnforurensing"},{name:"harKulturminne"},{name:"harRegistrertGrunnerverv"},{name:"harRegistrertJordskifteKrevd"},{name:"inngarISamlaFastEiendom"},{name:"mangelMatrikkelforingsKrav"},{name:"matrikkelenhetIdent",type:"auto",defaultValue:null,useNull:true},{name:"nymatrikulert"},{name:"oppgittAreal"},{name:"oppmalingIkkeFullfort"},{name:"punktfeste"},{name:"punktfesteSpecified"},{name:"representasjonspunkt",type:"auto",defaultValue:null,useNull:true},{name:"sameieBrok"}
1,{name:"seksjonertMatrikkelenhetIdent",type:"auto",defaultValue:null,useNull:true},{name:"tinglyst"},{name:"underSammenslaingBestar"},{name:"underSammenslaingUtgar"},{name:"utgatt"},{name:"versjon"}],config:{fields:this.fields}});Ext.define("Adaptive.data.model.Municipality",{extend:Ext.data.Model,proxy:{url:"WebServices/utils/Municipality.asmx/GetMunicipalityByCountyId",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records"},paramsAsJson:true},fields:[{name:"value"},{name:"text"}],config:{fields:this.fields}});Ext.define("Client.module.map.search.agents.matrikkel.Grid",{requires:[],dataViewRequest:function(b){this.dataViewRequestNeighbor(b,"")},dataViewRequestNeighbor:function(h,o,b){b=b||Ext.id();var g=Ext.create("GeoMind.data.model.Layer",{config:{configs:[{key:"theme_data",value:'{theme_uuid: "'+b+'", theme_type: "av_matrikkel", neighborProperty: "'+o+'"}'},{key:"property_data",value:Ext.isArray(h)?h:[h]}]}});var q={evtName:"dataViewRequest",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{record:g}};this.dispatchEvent(q,{confirmationRequired:false})}});Ext.define("Client.module.map.search.agents.matrikkel.Property",{internal_name:"av_search_matrikkel_property",extend:Client.module.map.search.Agent,mixins:[Client.module.map.search.agents.matrikkel.Grid],constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Property",listeners:{beforeload:g.resizePicker,scope:g}});g.doQueryTask=new Ext.util.DelayedTask(g.doRawQuery,g);g.queryDelay=200;g.municipalityStore=Ext.create("Ext.data.Store",{model:"Adaptive.data.model.Municipality"});g.menuItemText=g.lang.getString("menuItemText_property");g.loadingText=g.lang.getString("loadingText");g.emptyTextList=g.lang.getString("emptyText_boundlist");g.buildView();g.buildMenuItem();Ext.apply(g,b);g.callParent([b])},buildView:function(){var g=this;var b=new Ext.XTemplate('<tpl for=".">','<div class="x-boundlist-item">',"<h3>",'<tpl for="matrikkelenhetIdent">',"{kommunenr}/{gardsnr}/{bruksnr}/{festenr}",'<tpl if="seksjonsnrSpecified >= true">',"/{seksjonsnr}","</tpl>","</tpl>","</h3>","<p>{bruksnavn}</p>","</div>","</tpl>");g.propertyView=Ext.create("Ext.form.field.ComboBox",{flex:1,height:44,store:g.store,displayTpl:Ext.create("Ext.XTemplate",'<tpl for=".">',"{matrikkelenhetIdent.gardsnr}","</tpl>"),emptyText:"Gnr",typeAhead:true,queryDelay:this.queryDelay,minChars:0,hideLabel:true,matchFieldWidth:false,tpl:b,hideTrigger:true,queryParam:"gnr",queryCaching:false,nanText:"{0} is not a valid number",getErrors:g.validateNumber,regex:/^\d{10}$/i,maskRe:/\d/i,listeners:{scope:g,render:g.onRender,beforequery:g.onBeforeQuery,beforeinputfocus:function(){return false},keydown:function(){return false}},listConfig:{cls:"a3-search-list property",loadingText:g.loadingText,emptyText:'<span class="empty">'+g.emptyTextList+"</span>",width:352,listeners:{scope:g,itemclick:g.onItemSelect}},onItemClick:function(q,h){var w=this.picker.getSelectionModel().getSelection(),o=this.valueField;if(!this.multiSelect&&w.length){if(h.get(o)===w[0].get(o)){this.displayTplData=[h.data];this.setRawValue(this.getDisplayValue())}}}});g.municipalityCombo=Ext.create("Ext.form.field.ComboBox",{maxWidth:140,flex:2,store:g.municipalityStore,displayTpl:Ext.create("Ext.XTemplate",'<tpl for=".">',"{text} ({value})","</tpl>"),tpl:Ext.create("Ext.XTemplate",'<tpl for=".">','<div class="x-boundlist-item">{text} ({value})</div>',"</tpl>"),valueField:"value",queryMode:"local",emptyText:g.lang.getString("emptyText_municipalityCombo_property"),typeAhead:true,hideLabel:true,forceSelection:true,hideTrigger:true,listeners:{scope:g,render:g.onRender,select:g.onSelectMunicipality,beforequery:g.municipalityBeforeQuery}});g.view=Ext.create("Ext.container.Container",{layout:"hbox",cls:"a3-property",buttonCls:"a3-search-btn-matr-property",defaults:{height:44},items:[g.municipalityCombo,g.propertyView,{xtype:"numberfield",hideTrigger:true,emptyText:"Bnr",dataIndex:"bnr",flex:1,enableKeyEvents:true,mouseWheelEnabled:false,minValue:0,listeners:{scope:g,keyup:g.onKeyUp,render:g.onRenderProperty}},{xtype:"numberfield",hideTrigger:true,emptyText:"Fnr",dataIndex:"fnr",flex:1,enableKeyEvents:true,mouseWheelEnabled:false,minValue:0,listeners:{scope:g,keyup:g.onKeyUp,render:g.onRenderProperty}}]})},resizePicker:function(){var b=this;b.propertyView.getPicker().setWidth(b.view.up().getWidth())},municipalityBeforeQuery:function(b){var h=this,o=h.municipalityCombo,g=new Ext.util.Filter({filterFn:function(w){if(o.getValue()==null){return true}var z=o.getValue().toString().toLowerCase();var A=w.get("value").toString();var q=w.get("text");return A.toLowerCase().indexOf(z)==0||q.toLowerCase().indexOf(z)==0}});h.municipalityStore.clearFilter();h.municipalityStore.filter(g);return true},onKeyUp:function(o,q,g){var h=this,b=q.getKey();if(!h.addExtraParams()){return}if(!o.readOnly&&!o.disabled&&o.editable){h.lastKey=b;if(!q.isSpecialKey()||b==q.BACKSPACE||b==q.DELETE){h.doQueryTask.delay(h.queryDelay)}}},doRawQuery:function(){var b=this;b.addExtraParams();b.propertyView.doQuery(b.propertyView.getRawValue(),true,true)},onRenderProperty:function(h,b){var g=this;h.getEl().on("click",function(q,o){if(o.className.indexOf("x-form-text")!=-1){g.resizePicker();if(g.store.data.length>0){g.propertyView.expand()}else{g.propertyView.collapse()}h.focus()}},g)}
1,onSelectMunicipality:function(h,b,g){this.store.getProxy().extraParams.municipalityNumber=b[0].data.value;this.doRawQuery()},onBeforeQuery:function(b){if(this.addExtraParams()){return true}else{return false}},addExtraParams:function(){var b=this,g=b.municipalityCombo.value;gnr=b.propertyView.rawValue;bnr=b.view.query("[dataIndex=bnr]")[0].value;fnr=b.view.query("[dataIndex=fnr]")[0].value;b.store.getProxy().extraParams.municipalityNumber=g;b.store.getProxy().extraParams.gnr=gnr;b.store.getProxy().extraParams.bnr=bnr==null?"":bnr;b.store.getProxy().extraParams.fnr=fnr==null?"":fnr;if(g==null||gnr==""||bnr==null){return false}else{return true}},validateNumber:function(h){var g=this,w=[],q=Ext.String.format,b;h=Ext.isDefined(h)?h:g.processRawValue(g.getRawValue());if(h.length<1){return w}if(isNaN(h)){w.push(q(g.nanText,h))}var o=parseFloat(String(h).replace(g.decimalSeparator,"."));b=isNaN(o)?null:o;return w},onItemSelect:function(h,b,g){this.dataViewRequest(b.data)},_onSearchAgentSelected:function(h){var g=this,b=h.data.agent;if(b==g&&g.municipalityStore.data.items.length==0){g.municipalityStore.load()}}});Ext.define("Client.data.model.search.veg.Vegreferanse",{extend:Ext.data.Model,proxy:{url:"WebServices/veg/VegvesenAPI.asmx/VegreferanseSearch",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records"},timeout:60000,paramsAsJson:true},fields:[{name:"kortform",mapping:"vegreferanse.kortform"},{name:"newVegreferanse",mapping:"newVegreferanse"},{name:"wkt",mapping:"geometri.wkt"},{name:"srid",mapping:"geometri.srid"}],config:{fields:this.fields}});Ext.define("Client.data.model.search.veg.Vegsystemreferanse",{extend:Ext.data.Model,proxy:{url:"WebServices/veg/VegvesenAPI.asmx/VegsystemreferanseSearch",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records"},timeout:60000,paramsAsJson:true},fields:[{name:"kortform",mapping:"vegsystemreferanse.kortform"},{name:"oldVegreferanse",mapping:"oldVegreferanse"},{name:"wkt",mapping:"geometri.wkt"},{name:"srid",mapping:"geometri.srid"}],config:{fields:this.fields}});Ext.define("Client.module.map.search.agents.veg.Vegreferanse",{extend:Client.module.map.search.Agent,constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.vegvesenLang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Vegvesen");g.apiVersion=3;g.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.veg.Vegsystemreferanse",listeners:{beforeload:g.resizePicker,scope:g}});g.doQueryTask=new Ext.util.DelayedTask(g.doRawQuery,g);g.queryDelay=200;g.municipalityStore=Ext.create("Ext.data.Store",{model:"Adaptive.data.model.Municipality",autoLoad:true});g.menuItemText=g.vegvesenLang.getString("menuItemText_vegreferanse");g.loadingText=g.lang.getString("loadingText");g.emptyTextList=g.lang.getString("emptyText_boundlist");g.buildView();g.buildMenuItem();Ext.apply(g,b);g.callParent([b])},buildView:function(){var g=this;g.isMunicipalRoad=false;var b=new Ext.XTemplate('<tpl for=".">','<div class="x-boundlist-item">',"<h3>"+g.vegvesenLang.getString("menuItemText_vegreferanse")+": {kortform}</h3><p>"+g.vegvesenLang.getString("menuItemText_vegreferanse_v2")+": {oldVegreferanse}<p/>","</div>","</tpl>");g.propertyView=Ext.create("Ext.form.field.ComboBox",{flex:1,height:44,store:g.store,emptyText:"Vk",typeAhead:true,queryDelay:this.queryDelay,minChars:0,hideLabel:true,matchFieldWidth:false,tpl:b,hideTrigger:true,queryParam:"vkfase",queryCaching:false,listeners:{scope:g,render:g.onRender,beforequery:g.onBeforeQuery,beforeinputfocus:function(){return false},keyup:g.onKeyUp,keydown:function(){return false}},listConfig:{cls:"a3-search-list property",loadingText:g.loadingText,emptyText:'<span class="empty">'+g.emptyTextList+"</span>",width:352,listeners:{scope:g,itemclick:g.onItemSelect}},onItemClick:function(q,h){var w=this.picker.getSelectionModel().getSelection(),o=this.valueField;if(!this.multiSelect&&w.length){if(h.get(o)===w[0].get(o)){this.displayTplData=[h.data];this.setRawValue(this.getDisplayValue())}}}});g.municipalityCombo=Ext.create("Ext.form.field.ComboBox",{maxWidth:140,flex:2,store:g.municipalityStore,displayTpl:Ext.create("Ext.XTemplate",'<tpl for=".">',"{text} ({value})","</tpl>"),tpl:Ext.create("Ext.XTemplate",'<tpl for=".">','<div class="x-boundlist-item">{text} ({value})</div>',"</tpl>"),valueField:"value",queryMode:"local",emptyText:g.lang.getString("emptyText_municipalityCombo_property"),typeAhead:true,hideLabel:true,hidden:!g.isMunicipalRoad,forceSelection:true,hideTrigger:true,listeners:{scope:g,render:g.onRender,select:g.onSelectMu
1nicipality,beforeinputfocus:function(){return false},beforequery:g.municipalityBeforeQuery}});g.view=Ext.create("Ext.container.Container",{layout:"hbox",cls:"a3-property",buttonCls:"a3-search-btn-matr-property",defaults:{height:44},items:[g.propertyView,{xtype:"numberfield",width:60,emptyText:"Nr",dataIndex:"nr",hideTrigger:true,enableKeyEvents:true,keyNavEnabled:false,mouseWheelEnabled:false,listeners:{scope:g,keyup:g.onKeyUp}},{xtype:"numberfield",width:50,emptyText:"Snr",dataIndex:"snr",hideTrigger:true,enableKeyEvents:true,keyNavEnabled:false,mouseWheelEnabled:false,listeners:{scope:g,keyup:g.onKeyUp}},{xtype:"numberfield",width:50,emptyText:"Dnr",dataIndex:"dnr",hideTrigger:true,enableKeyEvents:true,keyNavEnabled:false,mouseWheelEnabled:false,listeners:{scope:g,keyup:g.onKeyUp}},{xtype:"numberfield",flex:1,emptyText:"Meter",dataIndex:"meter",hideTrigger:true,keyNavEnabled:false,enableKeyEvents:true,mouseWheelEnabled:false,minValue:0,listeners:{scope:g,keyup:g.onKeyUp}},g.municipalityCombo,{xtype:"numberfield",width:1,emptyText:"",dataIndex:"dummy",tabIndex:-1,name:"dummy",hidden:false,hideTrigger:true,autocomplete:"new-password",keyNavEnabled:false,enableKeyEvents:false,mouseWheelEnabled:false,minValue:0,listeners:{scope:g}}]})},resizePicker:function(){var b=this;b.propertyView.getPicker().setWidth(b.view.up().getWidth())},municipalityBeforeQuery:function(b){var h=this,o=h.municipalityCombo,g=new Ext.util.Filter({filterFn:function(w){if(o.getValue()==null){return true}var z=o.getValue().toString().toLowerCase();var A=w.get("value").toString();var q=w.get("text");return(A.toLowerCase().indexOf(z)==0||q.toLowerCase().indexOf(z)==0)}});h.municipalityStore.clearFilter();h.municipalityStore.filter(g);return true},onKeyUp:function(o,w,g){var h=this,b=w.getKey();var q=h.propertyView.getRawValue();if(q&&(q[0].toLowerCase()==="k"||q[0].toLowerCase()==="p"||q[0].toLowerCase()==="s")){if(!h.isMunicipalRoad){h.isMunicipalRoad=true;h.municipalityCombo.setVisible(true);h.resizePicker()}}else{if(h.isMunicipalRoad){h.isMunicipalRoad=false;h.municipalityCombo.setVisible(false);h.resizePicker()}}if(!h.addExtraParams()){return}if(!o.readOnly&&!o.disabled&&o.editable){h.lastKey=b;if(!w.isSpecialKey()||b==w.BACKSPACE||b==w.DELETE){h.doQueryTask.delay(h.queryDelay)}}},doRawQuery:function(){var b=this;if(b.addExtraParams()){b.propertyView.doQuery(b.propertyView.getRawValue(),true,true)}},onRenderProperty:function(h,b){var g=this;h.getEl().on("click",function(q,o){if(o.className.indexOf("x-form-text")!=-1){g.resizePicker();if(g.store.data.length>0){g.propertyView.expand()}else{g.propertyView.collapse()}h.focus()}},g)},onSelectMunicipality:function(h,b,g){this.store.getProxy().extraParams.kommune=b[0].data.value;this.doRawQuery()},onBeforeQuery:function(b){if(this.addExtraParams()){return true}else{return false}},addExtraParams:function(){var o=this,g=o.municipalityCombo.value,q=o.view.query("[dataIndex=meter]")[0].value;o.store.getProxy().extraParams.kommune=g;var h=o.view.query("[dataIndex=nr]")[0].value;var w=o.view.query("[dataIndex=snr]")[0].value;var b=o.view.query("[dataIndex=dnr]")[0].value;o.store.getProxy().extraParams.vegnummer=h;o.store.getProxy().extraParams.strekning=w;o.store.getProxy().extraParams.delstrekning=b;o.store.getProxy().extraParams.meterverdi=q;if(h==null||w==undefined||b==null||q==null){return false}else{o.store.getProxy().extraParams.kommune=o.municipalityCombo.value||0;return true}},validateNumber:function(h){var g=this,w=[],q=Ext.String.format,b;h=Ext.isDefined(h)?h:g.processRawValue(g.getRawValue());if(h.length<1){return w}if(isNaN(h)){w.push(q(g.nanText,h))}var o=parseFloat(String(h).replace(g.decimalSeparator,"."));b=isNaN(o)?null:o;return w},onItemSelect:function(z,b,h){var q=this;var o=new OpenLayers.Format.WKT();var w=o.read(b.data.wkt);map.zoomToExtent(w.geometry.getBounds(),(closest=true));var g=map.getLayersByName("drawlayer")[0];g.addFeatures([w]);q.view.query("[dataIndex=nr]")[0].setValue(null);q.view.query("[dataIndex=snr]")[0].setValue(null);q.view.query("[dataIndex=dnr]")[0].setValue(null);q.view.query("[dataIndex=meter]")[0].setValue(null)},_onSearchAgentSelected:function(h){var g=this,b=h.data.agent;if(b===g&&g.municipalityStore.data.items.length===0){g.municipalityStore.load()}},getApiVersion:function(h){var g=this,b=null;Ext.Ajax.request({url:"WebServices/veg/VegvesenAPI.asmx/GetApiVersion",method:"POST",async:false,jsonData:{},success:function(o){o=GeoMind.utils.Ajax.fixResponse(o);if(!o.success){g.mixins.notify.showNotifyError(g.view,"Error!",5000);h("Could not get apiversion!",null);return}else{if(o.data[0].key==="version"){version=o.data[0].value;h(null,version)}return}},failure:function(o){console.log(o);h("Could not get apiversion!",null);return}})}});Ext.define("Client.data.model.search.veg.OldMunicipality",{extend:Ext.data.Model,proxy:{url:"WebServices/veg/VegvesenAPI.asmx/GetOldMunicipalityByOldCountyId",type:"aja
1x",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records"},paramsAsJson:true},fields:[{name:"value"},{name:"text"}],config:{fields:this.fields}});Ext.define("Client.data.model.search.veg.OldCounty",{extend:Ext.data.Model,proxy:{type:"memory",reader:{type:"json",root:"counties"}},fields:[{name:"value"},{name:"text"}],config:{fields:this.fields}});Ext.define("Client.module.map.search.agents.veg.VegreferanseV2",{extend:Client.module.map.search.Agent,constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.vegvesenLang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Vegvesen");g.apiVersion=2;g.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.veg.Vegreferanse",listeners:{beforeload:g.resizePicker,scope:g}});g.doQueryTask=new Ext.util.DelayedTask(g.doRawQuery,g);g.queryDelay=200;g.municipalityStore=Ext.create("Ext.data.Store",{model:"Client.data.model.search.veg.OldMunicipality"});var h=getCounties();g.countyStore=Ext.create("Ext.data.Store",{model:"Client.data.model.search.veg.OldCounty",autoLoad:true,data:h});g.menuItemText=g.vegvesenLang.getString("menuItemText_vegreferanse_v2");g.loadingText=g.lang.getString("loadingText");g.emptyTextList=g.lang.getString("emptyText_boundlist");g.buildView();g.buildMenuItem();Ext.apply(g,b);g.callParent([b])},buildView:function(){var g=this;g.isMunicipalRoad=false;var b=new Ext.XTemplate('<tpl for=".">','<div class="x-boundlist-item">',"<h3>"+g.vegvesenLang.getString("menuItemText_vegreferanse_v2")+": {kortform}</h3><p>"+g.vegvesenLang.getString("menuItemText_vegreferanse")+": {newVegreferanse}<p/>","</div>","</tpl>");g.propertyView=Ext.create("Ext.form.field.ComboBox",{flex:1,height:44,store:g.store,emptyText:"Kat",typeAhead:true,queryDelay:this.queryDelay,minChars:0,hideLabel:true,matchFieldWidth:false,tpl:b,hideTrigger:true,queryParam:"kat",dataIndex:"kat",queryCaching:false,listeners:{scope:g,render:g.onRender,beforequery:g.onBeforeQuery,beforeinputfocus:function(){return false},keydown:function(){return false}},listConfig:{cls:"a3-search-list property",loadingText:g.loadingText,emptyText:'<span class="empty">'+g.emptyTextList+"</span>",width:352,listeners:{scope:g,itemclick:g.onItemSelect}},onItemClick:function(q,h){var w=this.picker.getSelectionModel().getSelection(),o=this.valueField;if(!this.multiSelect&&w.length){if(h.get(o)===w[0].get(o)){this.displayTplData=[h.data];this.setRawValue(this.getDisplayValue())}}}});g.municipalityCombo=Ext.create("Ext.form.field.ComboBox",{maxWidth:140,flex:2,store:g.municipalityStore,displayTpl:Ext.create("Ext.XTemplate",'<tpl for=".">',"{text} ({value})","</tpl>"),tpl:Ext.create("Ext.XTemplate",'<tpl for=".">','<div class="x-boundlist-item">{text} ({value})</div>',"</tpl>"),valueField:"value",queryMode:"local",emptyText:g.lang.getString("emptyText_municipalityCombo_property"),typeAhead:true,hideLabel:true,hidden:!g.isMunicipalRoad,forceSelection:true,hideTrigger:true,listeners:{scope:g,render:g.onRender,select:g.onSelectMunicipality,beforequery:g.municipalityBeforeQuery}});g.countyCombo=Ext.create("Ext.form.field.ComboBox",{maxWidth:140,flex:2,store:g.countyStore,displayTpl:Ext.create("Ext.XTemplate",'<tpl for=".">',"{text} ({value})","</tpl>"),tpl:Ext.create("Ext.XTemplate",'<tpl for=".">','<div class="x-boundlist-item">{text} ({value})</div>',"</tpl>"),valueField:"value",queryMode:"local",emptyText:"Fylke",typeAhead:true,hideLabel:true,hidden:g.isMunicipalRoad,forceSelection:true,hideTrigger:true,listeners:{scope:g,render:g.onRender,select:g.onSelectCounty,beforequery:g.countyBeforeQuery}});g.view=Ext.create("Ext.container.Container",{layout:"hbox",cls:"a3-property",buttonCls:"a3-search-btn-matr-property",defaults:{height:44},items:[g.propertyView,{xtype:"numberfield",width:60,emptyText:"Nr",dataIndex:"nr",hideTrigger:true,enableKeyEvents:true,keyNavEnabled:false,mouseWheelEnabled:false,listeners:{scope:g,keyup:g.onKeyUp}},{xtype:"numberfield",hideTrigger:true,emptyText:"Hp",dataIndex:"hp",flex:1,enableKeyEvents:true,mouseWheelEnabled:false,minValue:0,listeners:{scope:g,keyup:g.onKeyUp}},{xtype:"numberfield",hideTrigger:true,emptyText:"Meter",dataIndex:"meter",flex:1,enableKeyEvents:true,mouseWheelEnabled:false,minValue:0,listeners:{scope:g,keyup:g.onKeyUp}},g.countyCombo,g.municipalityCombo]})},resizePicker:function(){var b=this;b.propertyView.getPicker().setWidth(b.view.up().getWidth())},municipalityBeforeQuery:function(b){var h=this,o=h.municipalityCombo,g=new Ext.util.Filter({filterFn:function(w){if(o.getValue()==null){return true}var z=o.getValue().toString().toLowerCase();var A=w.get("value").toString();var q=w.get("text");return(A.toLowerCase().indexOf(z)==0||q.toLowerCase().indexOf(z)==0)}});h.municipalityStore.clearFilter();h.municipalityStore.filter(g);return true},countyBeforeQuery:function(b){var h=this,o=h.countyCombo,g=new Ext.util.Filter({filterFn:function(z){if(o.getValue()==null){return true}var A=o.getValue().toString().toLowerCase();var q=z.get("value").toString();var w=z.get("text");return(q.toLowerCase().indexOf(A)==0||w.toLowerCase().indexOf(A)==0)}});h.countyStore.clearFilter();h.countyStore.filter(g);return true},onKeyUp:function(o,w,g){var h=this,b=w.getKey();var q=h.propertyView.getRawValue();if(q&&(q[0].toLowerCase()==="k"||q[0].toLowerCase()==="p"||q[0].toLowerCase()==="s")){if(!h.isMunicipalRoad){h.isMunicipalRoad=true;h.municipalityCombo.setVisible(true);h.countyCombo.setVisible(false);h.resizePicker()}}else{if(h.isMunicipalRoad){h.isMunicipalRoad=false;h.municipalityCombo.setVisible(false);h.countyCombo.setVisible(true);h.resizePicker()}}if(!h.addExtraParams()){return}if(!o.readOnly&&!o.disabled&&o.editable){h.lastKey=b;if(!w.isSpecialKey()||b==w.BACKSPACE||b==w.DELETE){h.doQueryTask.delay(h.queryDelay)}}},doRawQuery:function(){var b=this;if(b.addExtraParams()){b.propertyView.doQuery(b.propertyView.getRawValue(),true,true)}},onRenderProperty:function(h,b){var g=this;h.getEl().on("click",function(q,o){if(o.className.indexOf("x-form-text")!=-1){g.resizePicker();if(g.store.data.length>0){g.propertyView.expand()}else{g.propertyView.collapse()}h.focus()}},g)}
1,onSelectMunicipality:function(h,b,g){this.countyCombo.setRawValue(null);this.store.getProxy().extraParams.fylke=null;this.store.getProxy().extraParams.kommune=b[0].data.value;this.doRawQuery()},onSelectCounty:function(h,b,g){this.municipalityCombo.setRawValue(null);this.store.getProxy().extraParams.kommune=0;this.store.getProxy().extraParams.fylke=b[0].data.value;this.doRawQuery()},onBeforeQuery:function(b){if(this.addExtraParams()){return true}else{return false}},addExtraParams:function(){var h=this,b=h.municipalityCombo.value,g=h.countyCombo.value,o=h.view.query("[dataIndex=meter]")[0].value;kat=h.propertyView.rawValue;nr=h.view.query("[dataIndex=nr]")[0].value;hp=h.view.query("[dataIndex=hp]")[0].value;h.store.getProxy().extraParams.kat=kat==null?"":kat;h.store.getProxy().extraParams.nr=nr==null?"":nr;h.store.getProxy().extraParams.hp=hp==null?"":hp;h.store.getProxy().extraParams.meter=o;if(nr==null||hp==null||kat==undefined||o==null){return false}else{if(h.isMunicipalRoad){h.store.getProxy().extraParams.kommune=b;h.store.getProxy().extraParams.fylke=null}else{h.store.getProxy().extraParams.kommune=0;h.store.getProxy().extraParams.fylke=g}return true}},validateNumber:function(h){var g=this,w=[],q=Ext.String.format,b;h=Ext.isDefined(h)?h:g.processRawValue(g.getRawValue());if(h.length<1){return w}if(isNaN(h)){w.push(q(g.nanText,h))}var o=parseFloat(String(h).replace(g.decimalSeparator,"."));b=isNaN(o)?null:o;return w},onItemSelect:function(z,b,h){var q=this;var o=new OpenLayers.Format.WKT();var w=o.read(b.data.wkt);map.zoomToExtent(w.geometry.getBounds(),(closest=true));var g=map.getLayersByName("drawlayer")[0];g.addFeatures([w]);q.view.query("[dataIndex=kat]")[0].setValue(null);q.view.query("[dataIndex=nr]")[0].setValue(null);q.view.query("[dataIndex=hp]")[0].setValue(null);q.view.query("[dataIndex=meter]")[0].setValue(null)},_onSearchAgentSelected:function(h){var g=this,b=h.data.agent;if(b===g&&g.municipalityStore.data.items.length===0){g.municipalityStore.load()}}});function getCounties(){data={counties:[{value:"0100",text:"Ãstfold"},{value:"0200",text:"Akershus"},{value:"0300",text:"Oslo"},{value:"0400",text:"Hedmark"},{value:"0500",text:"Oppland"},{value:"0600",text:"Buskerud"},{value:"0700",text:"Vestfold"},{value:"0800",text:"Telemark"},{value:"0900",text:"Aust-Agder"},{value:"1000",text:"Vest-Agder"},{value:"1100",text:"Rogaland"},{value:"1200",text:"Hordaland"},{value:"1400",text:"Sogn og Fjordane"},{value:"1500",text:"Møre og Romsdal"},{value:"1600",text:"Sør-Trøndelag"},{value:"1700",text:"Nord-Trøndelag"},{value:"1800",text:"Nordland"},{value:"1900",text:"Troms"},{value:"2000",text:"Finmark"}]};return data}Ext.define("Client.data.model.search.matrikkel.Base",{extend:Ext.data.Model,url:null,proxy:{url:this.url,type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},doRequest:function(b,z,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),w=o.getMethod(h);if(b.allowWrite()){h=q.write(h)}Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,z,g),method:w,disableCaching:false});h.headers=h.headers||{};h.headers.gm_session_id=GeoMind.utils.SessionManager.ss.sessionId;h.headers["X-Adaptive-Gui"]=__guuid__;if(w.toUpperCase()!=="GET"&&o.paramsAsJson){h=Ext.apply({jsonData:h.params},h);delete h.params}if(!o.connection){o.connection=Ext.create("Ext.data.Connection")}else{o.connection.abortAll()}o.connection.request(h);return h},timeout:60000,paramsAsJson:true}});Ext.define("Client.data.model.search.matrikkel.Owner",{extend:Client.data.model.search.matrikkel.Base,url:"WebServices/matrikkel/Eierforhold.asmx/FindOwners",fields:[{name:"displayname",mapping:"eiesAv.navn"},{name:"andel",type:"auto",defaultValue:null,useNull:true},{name:"andelsnr"},{name:"datoFra"},{name:"eierforholdKode",type:"auto",defaultValue:null,useNull:true},{name:"eiesAv",type:"auto",defaultValue:null,useNull:true},{name:"matrikkelenhetIdent",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.module.map.search.agents.matrikkel.Owner",{internal_name:"av_search_matrikkel_owner",extend:Client.module.map.search.Agent,mixins:[Client.module.map.search.agents.matrikkel.Grid],findOwnerService:"WebServices/matrikkel/Eierforhold.asmx/FindOwners",constructor:function(b){var g=this;b=b||{};
1this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");this.ownerStore=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Owner",listeners:{beforeload:g.resizePicker,scope:g}});this.ownerStore.getProxy().extraParams.municipalityNumber="";this.municipalityStore=Ext.create("Ext.data.Store",{model:"Adaptive.data.model.Municipality"});this.menuItemText=this.lang.getString("menuItemText_owner");this.buildView();this.buildMenuItem();Ext.apply(this,b);this.callParent([b]);this.ownerStore.getProxy().url=this.findOwnerService},buildView:function(){var b=this;var g=new Ext.XTemplate('<tpl for=".">','<div class="x-boundlist-item">',"<h3>{eiesAv.navn} ({[this.removeXXXXX(values.eiesAv.nr)]})</h3>","<p>{eiesAv.adresse}, {eiesAv.postnr} {eiesAv.poststed} {matrikkelenhetIdent.kommunenr}/{matrikkelenhetIdent.gardsnr}/{matrikkelenhetIdent.bruksnr}/{matrikkelenhetIdent.seksjonsnr}</p>","</div>","</tpl>",{removeXXXXX:function(h){return h.replace("XXXXX","")}});this.ownerView=Ext.create("Ext.form.field.ComboBox",{cls:"a3-search-agent-scroller",flex:1,height:44,store:this.ownerStore,displayField:"displayname",emptyText:this.lang.getString("emptyText_owner"),typeAhead:true,queryDelay:400,queryCaching:false,minChars:1,hideLabel:true,matchFieldWidth:false,tpl:g,scope:this,trigger1Cls:"x-form-clear-trigger "+b.searchCls+"-hidden",onTrigger1Click:function(h){this.clearValue();this.scope.ownerView.collapse();this.scope.ownerStore.data.clear()},listeners:{scope:this,render:this.onRender,beforequery:this.onBeforeQuery,change:b.onChange,expand:b.resizePicker},listConfig:{cls:"a3-search-list property",loadingText:this.lang.getString("loadingText"),emptyText:'<span class="empty">'+b.lang.getString("emptyText_boundlist")+"</span>",width:352,listeners:{scope:b,itemclick:b.onItemSelect}},onItemClick:function(q,h){var w=this.picker.getSelectionModel().getSelection(),o=this.valueField;if(!this.multiSelect&&w.length){if(h.get(o)===w[0].get(o)){this.displayTplData=[h.data];this.setRawValue(this.getDisplayValue())}}}});this.municipalityCombo=Ext.create("Ext.form.field.ComboBox",{cls:"a3-search-agent-scroller",width:140,height:44,store:b.municipalityStore,displayTpl:Ext.create("Ext.XTemplate",'<tpl for=".">',"{text} ({value})","</tpl>"),tpl:Ext.create("Ext.XTemplate",'<tpl for=".">','<div class="x-boundlist-item">{text} ({value})</div>',"</tpl>"),valueField:"value",queryMode:"local",emptyText:b.lang.getString("emptyText_municipalityCombo_property"),typeAhead:true,hideLabel:true,forceSelection:true,trigger1Cls:"x-form-clear-trigger "+b.searchCls+"-hidden",scope:this,onTrigger1Click:function(h){this.clearValue();this.scope.municipalityStore.clearFilter();this.scope.setMunicipalityNumber("")},listeners:{scope:b,render:b.onRender,select:b.onSelectMunicipality,beforequery:b.municipalityBeforeQuery,change:b.onChange}});this.view=Ext.create("Ext.container.Container",{layout:"hbox",buttonCls:"a3-search-btn-matr-owner",items:[b.municipalityCombo,b.ownerView]})},resizePicker:function(){var b=this;b.ownerView.getPicker().setWidth(b.view.up().getWidth())},onBeforeQuery:function(h){var g=this,b=g.ownerStore.getProxy();b.extraParams.municipalityNumber=g.municipalityCombo.getValue();b.url=g.findOwnerService;g.callParent()},municipalityBeforeQuery:function(b){var h=this.municipalityCombo;var g=new Ext.util.Filter({filterFn:function(q){var w=(h.getValue()||"").toString().toLowerCase();var z=q.get("value").toString();var o=q.get("text");return z.toLowerCase().indexOf(w)==0||o.toLowerCase().indexOf(w)==0}});this.municipalityStore.clearFilter();this.municipalityStore.filter(g);return true},onItemSelect:function(h,b,g){this.dataViewRequest(b.data)},onSelectMunicipality:function(h,b,g){this.setMunicipalityNumber(b[0].data.value)},setMunicipalityNumber:function(b){this.ownerStore.getProxy().extraParams.municipalityNumber=b;this.ownerStore.load({params:{query:this.ownerView.rawValue}})},propertySearchResultSelected:function(b){var g={evtName:"propertySearchResultSelected",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b.matrikkelenhetIdent};this.dispatchEvent(g,{confirmationRequired:false})},matrikkelOwnerSelected:function(b){var g={evtName:"matrikkelOwnerSelected",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{data:b}};this.dispatchEvent(g,{confirmationRequired:false})},_onSearchAgentSelected:function(g){var b=g.data.agent;if(b==this&&this.municipalityStore.data.items.length==0){this.municipalityStore.load()}}});Ext.define("Client.data.model.search.matrikkel.Building",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/Bygning.asmx/GetBuilding",type:"aja
1x",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"beskrivelse",mapping:"bygningstype.beskrivelse"},{name:"bygningsnr",mapping:"bygningIdent.bygningsnr"}],config:{fields:this.fields}});Ext.define("Client.module.map.search.agents.matrikkel.Building",{extend:Client.module.map.search.Agent,mixins:[Client.module.map.search.agents.matrikkel.Grid],constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.buildingStore=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Building",listeners:{beforeload:g.resizePicker,scope:g}});g.menuItemText=g.lang.getString("menuItemText_building");g.buildView();g.buildMenuItem();Ext.apply(g,b);g.callParent([b])},buildView:function(){var g=this;var b=new Ext.XTemplate('<tpl for=".">','<div class="x-boundlist-item">',"<h3>"+g.lang.getString("buildingnr")+": {bygningsnr}</h3>","<p>{beskrivelse}</p>","</div>","</tpl>");g.view=Ext.create("Ext.form.field.ComboBox",{cls:"a3-search-agent-scroller",layout:"hbox",buttonCls:"a3-search-btn-matr-building",height:44,store:g.buildingStore,displayField:"displayname",emptyText:g.lang.getString("emptyText_building"),typeAhead:true,queryDelay:500,queryCaching:false,minChars:5,hideLabel:true,matchFieldWidth:false,tpl:b,scope:g,triggerCls:"x-form-clear-trigger "+g.searchCls+"-hidden",onTrigger1Click:function(h){this.clearValue();this.scope.view.collapse();this.scope.buildingStore.data.clear()},listeners:{scope:g,render:this.onRender,beforequery:this.onBeforeQuery,change:this.onChange},listConfig:{cls:"a3-search-list",loadingText:g.lang.getString("loadingText"),emptyText:'<span class="empty">'+g.lang.getString("emptyText_boundlist")+"</span>",width:352,listeners:{scope:g,itemclick:g.onItemSelect}},onItemClick:function(q,h){var w=this.picker.getSelectionModel().getSelection(),o=this.valueField;if(!this.multiSelect&&w.length){if(h.get(o)===w[0].get(o)){this.displayTplData=[h.data];this.setRawValue(this.getDisplayValue())}}}})},resizePicker:function(){var b=this;b.view.getPicker().setWidth(b.view.up().getWidth())},onBeforeQuery:function(g){var b=this,h=b.view.getValue();if(h){b.buildingStore.getProxy().extraParams.buildingId=h.split(/[\s,|;:-]+/).map(function(o){return parseInt(o,10)})}b.callParent()},onItemSelect:function(h,b,g){Ext.Ajax.request({url:"WebServices/matrikkel/Matrikkelenhet.asmx/FindPropertiesByBuilding",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({bygningsnr:b.data.bygningsnr}),scope:this,success:function(o){this.dataViewRequest(Ext.decode(o.responseText).d);this.reportEvent("showBuilding",b.data.bygningsnr)}})}});Ext.define("Client.module.map.layerManager.IScrollPanel",{extend:Ext.container.Container,layout:"border",orientation:null,allowEditing:null,showArrows:null,hScroll:true,vScroll:true,carouselEnable:null,centerItem:null,_viewItems:null,scrollDelta:null,scrollDelay:null,snapEnable:true,border:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.setDefaults();this.view=null;this.draggableCss={};this.registerCss();this.createDivs(this.draggableCss);this.buildPanels();this.on("added",this.onAddedToParent,this)},setDefaults:function(){if(!this.border){this.border=false}if(!this.orientation){this.orientation="horizontal"}if(!this.showArrows){this.showArrows=false}if(!this.bounceLock){this.bounceLock=true}if(!this.allowEditing){this.allowEditing=false}if(!this.scrollDelta){this.scrollDelta=10}if(!this.scrollDelay){this.scrollDelay=50}if(!this.carouselEnable){this.carouselEnable=true}this._viewItems=[]},buildPanels:function(){var g=this;this.centerPanel=Ext.create("Ext.container.Container",{layout:"fit",height:"100%",width:"100%",region:"center",html:this.divsCfg.div});this.centerPanel.on("render",this.onCenterPanelRendered,this);this.centerPanel.on("resize",this.onCenterPanelResized,this);this.add(this.centerPanel);if(this.showArrows){this.btnStart=Ext.create("Ext.button.Button",{direction:"start",iconCls:this.orientation=="horizontal"?"iScroll-medium_btn iScroll-left":"iScroll-medium_btn iScroll-down"});this.btnStart.on("click",this.onBtnStartClicked,this);this.btnEnd=Ext.create("Ext.button.Button",{direction:"end",iconCls:this.orientation=="horizontal"?"iScroll-medium_btn iScroll-right":" iScroll-medium_btn iScroll-up"});this.btnEnd.on("click",this.onBtnEndClicked,this);this.leftPanel=Ext.create("Ext.container.Container",{border:false,layout:"fit",region:this.orientation=="horizontal"?"west":"south",items:[this.btnStart]});this.rightPanel=Ext.create("Ext.container.Container",{border:false,layout:"fit",region:this.orientation=="horizontal"?"east":"north",items:[this.btnEnd]});this.add(this.leftPanel);this.add(this.rightPanel)}var b=this.orientation=="horizontal"?{type:"hbox",align:"stretch"}:{type:"vbox",align:"stretch"};this.view=Ext.create("Ext.container.Container",{layout:b});this.view.on("add",this.onComponentsAdd,this);this.view.on("remove",this.onComponentsRemove,this)}
1,onCenterPanelRendered:function(g){var b=this;Ext.Function.defer(function(){b.createViewPanel()},50)},createViewPanel:function(){this.view.setWidth(this.centerPanel.getWidth());this.view.setHeight(this.centerPanel.getHeight());this.view.render(Ext.get(this.divsCfg.containerDivId));this.scroller=new iScroll(this.divsCfg.wrapperDivId,{onBeforeScrollStart:this.allowEditing?null:function(b){b.preventDefault()},onScrollEnd:Ext.bind(this.onScrollEnd,this),vScroll:this.vScroll==null?true:this.vScroll,hScroll:this.hScroll==null?true:this.hScroll,hScrollbar:false,vScrollbar:false});this.fireEvent("iscrollready",this)},internalScroll:false,onScrollEnd:function(){if(!this.internalScroll){var h={x:this.scroller.x*-1,y:this.scroller.y};if(this._viewItems.length==0){return}this.curentItemInfo=this.getCurrentItemFromPosition(h);this.internalScroll=true;if(this.orientation=="horizontal"&&this.snapEnable){var b=(-1*this.curentItemInfo.position.x)+this.curentItemInfo.item.getWidth();this.scroller.scrollTo(b,0,500)}else{if(this.orientation=="vertical"&&this.snapEnable){var g=(-1*this.curentItemInfo.position.y)+this.curentItemInfo.item.getHeight();this.scroller.scrollTo(0,g,500)}}}else{this.internalScroll=false}},onCenterPanelResized:function(){this.updateViewSize()},curentItemIdx:0,onBtnStartClicked:function(h,b,g){var o=this.calculateDeltaForItemIdx(this.curentItemIdx,"start");if(this.orientation=="horizontal"){this.scroller.scrollTo(o.x*-1,0,300,true)}else{this.scroller.scrollTo(0,o.y*-1,300,true)}if(this.curentItemIdx>1){this.curentItemIdx--}},onBtnEndClicked:function(h,b,g){if(this._viewItems.length+1<this.curentItemIdx){this.curentItemIdx}var o=this.calculateDeltaForItemIdx(this.curentItemIdx,"end");if(this.orientation=="horizontal"){this.scroller.scrollTo(o.x,0,300,true)}else{this.scroller.scrollTo(0,o.y,300,true)}},calculateDeltaForItemIdx:function(b,g){var h={x:this._viewItems[b].getWidth(),y:this._viewItems[b].getHeight()};return h},getCurrentItemFromPosition:function(b){var o={x:0,y:0};var h=0;b.y=b.y*-1;for(var g=0;g<this._viewItems.length;g++){o.x+=this._viewItems[g].getWidth();o.y+=this._viewItems[g].getHeight();if(this.orientation=="horizontal"&&b.x+this._viewItems[g].getWidth()/2<o.x){h=g;break}else{if(this.orientation=="vertical"&&b.y+this._viewItems[g].getHeight()/2<o.y){h=g;break}}}this.curentItemIdx=h;return{position:o,itemIdx:h,item:this._viewItems[h]}},scrollTo:function(b){},onBtnStartToggle:function(g,h,b){if(h){this.intervalScrollExecute("end",this.scrollDelta)}else{if(this.runner){this.runner.stop(this.scrollTask)}}},runner:new Ext.util.TaskRunner(),scrollTask:null,onBtnStartMouseOut:function(b){if(this.runner&&this.scrollTask){this.runner.stop(this.scrollTask);b.toggle(false)}},onBtnEndToggle:function(g,h,b){if(h){this.intervalScrollExecute("start",this.scrollDelta)}else{if(this.runner){this.runner.stop(this.scrollTask)}}},onBtnEndMouseOut:function(b){if(this.runner&&this.scrollTask){this.runner.stop(this.scrollTask);b.toggle(false)}},currentItem:null,intervalScrollExecute:function(h,o){var g=this;var b=function(){g.scrollView(h,o)};this.scrollTask=g.runner.start({run:b,interval:this.scrollDelay})},scrollView:function(b,g){if(!g){g=100}if(this.scroller){switch(b){case"end":if(this.orientation=="horizontal"){this.scroller.scrollTo(g,0,500,true)}else{this.scroller.scrollTo(0,g,500,true)}break;case"start":default:if(this.orientation=="horizontal"){this.scroller.scrollTo(g*-1,0,500,true)}else{this.scroller.scrollTo(0,g*-1,500,true)}break}}},cleanUp:function(){while(this._viewItems.length>0){this.view.remove(this._viewItems[0])}},updateViewSize:function(){if(this.view){var b=this.calculateItemsSize();this.view.setHeight(b.height);this.view.setWidth(b.width);this.view.doLayout();this.updateCssSize()}},calculateItemsSize:function(){var b={width:this.centerPanel.getSize().width,height:this.centerPanel.getSize().height};if(this.view.items&&this.view.items.items&&this.view.items.items.length>0){if(this.orientation=="horizontal"){b.width=0;for(var g=0;g<this.view.items.items.length;g++){if(this.view.items.items[g].rendered){b.width+=this.view.items.items[g].getSize().width}}}else{b.height=0;for(var g=0;g<this.view.items.items.length;g++){if(this.view.items.items[g].rendered){b.height+=this.view.items.items[g].getSize().height}}}}return b},updateCssSize:function(){if(this.scroller){this.scroller.refresh()}},onComponentsAdd:function(b,h,g,o){this._viewItems.push(h);var q=this;Ext.defer(function(){q.updateViewSize()},1000)},onAddedToParent:function(g,b,o,h){b.on("resize",g.updateViewSize,g)},onComponentsRemove:function(b,g,h){var o=this;Ext.Array.remove(this._viewItems,g);Ext.defer(function(){o.updateViewSize()},10)},registerCss:function(){var w=Ext.id();var h=null;var q=null;if(this.orientation=="horizontal"){h="{position:absolute;background:#aaa;z-index:1;top:0;bottom:0;left:0;width:100%;overflow:auto;}"}else{h="{position:absolute; background:#aaa;z-index:1;top:0px; bottom:0px; left:0;height:100%;overflow:auto;}"}q="."+w+h;var o={};if(!Ext.util.CSS.getRule("."+w)){css=Ext.util.CSS.createStyleSheet(q,w);o={cssName:w,cssText:q,css:css};this.draggableCss.wrapper=o}var g=null;if(this.orientation=="horizontal"){g="{height:100%;float:left;padding:0;}"}else{g="{width:100%;float:left;padding:0;}"}var z=Ext.id();var b="."+z+g;o={};if(!Ext.util.CSS.getRule("."+z)){css=Ext.util.CSS.createStyleSheet(b,z);o={cssName:z,cssText:b,css:css};this.draggableCss.scroller=o}return this.draggableCss},createDivs:function(b){this.divsCfg={wrapperDivId:Ext.id(),scrollerDivId:Ext.id(),containerDivId:Ext.id(),div:null};if(!b){b=this.draggableCss}this.divsCfg.div='<div id="'+this.divsCfg.wrapperDivId+'" class="'+b.wrapper.cssName+'"><div id="'+this.divsCfg.scrollerDivId+'" class="'+b.scroller.cssName+'"><div id="'+this.divsCfg.containerDivId+'"></div></div></div>';return this.divsCfg}});Ext.define("Client.module.map.layerManager.Scroller",{extend:GeoMind.base.Module,orientation:null,cfgDataManager:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["itemDblClicked"]);this.initGui()},initGui:function(){this.panel=Ext.create("Client.module.map.layerManager.IScrollPanel",{cls:"a3-layer-container",width:this.width,height:94,orientation:this.orientation,vScroll:false,showArrows:true,allowEditing:false,scrollDelta:5,scrollDelay:50})},addThumbnail:function(b){return this.panel.view.add(b)},getThumbnails:function(){if(!this.panel.view){return[]}return this.panel._viewItems},cleanUp:function(){this.panel.cleanUp()}});Ext.define("Client.module.map.layerManager.Generic",{extend:Client.module.Generic,activeComponentCls:"a3-component_activeCls",orientation:null,thumbnailService:null,changeOnClick:null,maxVisibleContainers:3,minVisibleContainers:1,unifiedMapCfg:null,btn:null,name:null,active:false,position:"bl",scrollerModule:null,activeRecord:null,mapLvlController:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.orientation){this.orientation="horizontal"}this.addEvents([]);this.initGui()},initGui:function(){this.scrollerModule=Ext.create("Client.module.map.layerManager.Scroller",{name:this.name,width:this.scrollerWidth});this.view=this.scrollerModule.panel;
1this.view.on("resize",function(){this.updateScrollerViewSize()},this)},prepareDataForDisplay:function(){console.warn("its indended to be used for data display perparation,and should be implemened individually by each module")},bindClickEvtToThumbnail:function(b){var g=this.changeOnClick?"click":"dblclick";var h={module:this,container:b};b.getEl().on(g,this.onThumbnailClicked,h)},onThumbnailClicked:function(b){this.module.setActiveThumbnail(this.container)},getContainerByItemUuid:function(b){for(i in this.scrollerModule.panel._viewItems){if(this.scrollerModule.panel._viewItems[i].record.get("uuid")==b){return this.scrollerModule.panel._viewItems[i]}}return null},getContainerByItemId:function(g){for(i in this.scrollerModule.panel._viewItems){var b=parseInt(GeoMind.utils.Data.extractConfigObjectByKey(this.scrollerModule.panel._viewItems[i].record.get("config").configs,"parent_id"));if(!isNaN(b)){if(b==g){return this.scrollerModule.panel._viewItems[i]}}}return null},setActiveThumbnail:function(b){if(!b){return}this.markActiveThumbnail(b);this.activeRecord=b.record;this.activeScrollerItem=b;this.onActiveComponentChanged()},markActiveThumbnail:function(b){this.unmarkAllThumbnails();b.addCls(this.activeComponentCls);b.removeCls("a3-base-disabled")},unmarkAllThumbnails:function(){var b=this.scrollerModule.getThumbnails();for(var g=0;g<b.length;g++){b[g].removeCls(this.activeComponentCls)}},onActiveComponentChanged:function(){console.warn("Method should be overriden in "+this.$className)},updateScrollerViewSize:function(){if(!this.scrollerModule.panel.rendered){return}var b=this.scrollerModule.getThumbnails();var h=0;if(b.length<=this.maxVisibleContainers){for(var g=0;g<b.length;g++){h+=b[g].width}this.scrollerModule.panel.setWidth(h);this.scrollerModule.panel.leftPanel.hide();this.scrollerModule.panel.rightPanel.hide()}else{for(var g=0;g<this.maxVisibleContainers;g++){h+=b[g].width}if(this.scrollerModule.panel.showArrows){this.scrollerModule.panel.leftPanel.show();this.scrollerModule.panel.rightPanel.show()}h+=this.scrollerModule.panel.leftPanel.getWidth();h+=this.scrollerModule.panel.rightPanel.getWidth();this.scrollerModule.panel.setWidth(h)}},createThumbnail:function(b){},cleanUpScroller:function(){this.scrollerModule.cleanUp()},activate:function(){this.active=true;this.view.show();this.updateScrollerContainer();this.scrollerModule.panel.updateViewSize();this.scrollerModule.panel.scrollTo(this.activeScrollerItem);if(Ext.isFunction(this.internalActivate)){this.internalActivate()}},deactivate:function(){this.active=false;this.view.hide();if(Ext.isFunction(this.internalDeactivate)){this.internalDeactivate()}},updateScrollerContainer:function(){if(!this.view.rendered){return}this.view.alignTo(this.alingToContainer,"bl-br",[5,0],false)},getThumbnailUrl:function(g){var b=g.get("config").configs;var h=this.noThumbUrl;for(var o=0;o<b.length;o++){if(b[o].key=="thumbnail"){if(b[o].value){h=this.thumbnailService+b[o].value}break}}return h},afterMapContainerRender:function(b){this.mapContainer.add(this.view);this.mapContainer.on("resize",function(){this.updateScrollerContainer()},this);this.view.hide();if(this.internalGuiSetUp){this.internalGuiSetUp()}},afterMapReset:function(b){this.unifiedMapCfg=b.data.unifiedMapCfg;this.prepareDataForDisplay()},beforeMapReset:function(b){this.unifiedMapCfg=null;this.activeScrollerItem=null;this.activeRecord=null}});Ext.define("Client.data.model.NiBLayers",{extend:Ext.data.Model,fields:[{name:"id",defaultValue:null,useNull:true},{name:"text",defaultValue:null,useNull:true}]});Ext.define("Client.module.map.layerManager.lang.NiB",{strings:{not_in_scale_info1:{en:"Not in scale!",nb:"Ikke innenfor målestokk!",nn:"Ikkje innafor målestokk!"},not_in_scale_info2:{en:"should be",nb:"må være",nn:"må være"},loading_projects:{en:"Loading available layers from Norge i Bilder...",nb:"Laster tilgjengelige lag fra Norge i Bilder..."},loading_error:{en:"Error loading layers",nb:"Feil ved lasting av lag"},loading_tiles:{en:"Loading tiles...",nb:"Laster bilder...",nn:"Lastar bilder..."},show_nib_layers:{en:"Show Norge i Bilder layers in this area",nb:"Vis Norge i Bilder-lag i området"}},errCodes:{}});Ext.define("Client.module.map.layerManager.mixins.NiB",{serviceUrl:"WebServices/client/NiB.asmx/GetProjectListByBbox",NiBproject:[],layerName:"NiB layer",layer:null,layerOutline:null,blankTile:"resx/blankTile/blankTile.png",loadingGif:"resx/icons/client/loading.gif",wmsServiceUrl:["https://wms.geonorge.no/skwms1/wms.nib-prosjekter?"],wmsServiceUrlOutline:["https://wms.geonorge.no/skwms1/wms.nib-mosaikk?"],minScale:500000,inAllowedScale:true,isNibLayer:function(b){var h=this;var g=Adaptive.utils.Config.getThemeData(b);if(g&&g.data&&g.data.nib){return g.data.nib}else{return false}},updateNiBProjects:function(){var b=this;b.refreshNiBTree()},hasAllowedScale:function(){var b=this;b.inAllowedScale=b.map.getScale()<b.minScale;b.setContainerTitle(false);return b.inAllowedScale},refreshNiBTree:function(){var g=this;if(!g.hasAllowedScale()){return}
1g.showNiBTreeLoadMask(g.lang.getString("loading_projects"));g.checkedNodes=g.NiBTree.getView().getChecked();var o=[];g.checkedNodes.forEach(function(q){o.push(q.get("name"))});g.NiBTree.setRootNode(null);var b=g.map.getExtent();var h={bbox:b.left+","+b.bottom+","+b.right+","+b.top,srid:g.map.getProjectionObject().proj.srsProjNumber,checkedProjectNames:o};Ext.Ajax.request({url:g.serviceUrl,method:"POST",params:Ext.JSON.encode(h),headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(g.refreshNiBTreeCallbackSuccess,g),failure:Ext.bind(g.refreshNiBTreeCallbackFailure,g)})},refreshNiBTreeCallbackSuccess:function(g,o){var h=this;g=GeoMind.utils.Ajax.fixResponse(g);h.hideNiBTreeLoadMask();if(g.success){var b=GeoMind.utils.Data.extractConfigObjectByKey(g.data,"root");h.NiBTree.setRootNode(b)}else{h.NiBTree.setRootNode({name:h.lang.getString("loading_error")})}},refreshNiBTreeCallbackFailure:function(b,h){var g=this;g.hideNiBTreeLoadMask();g.NiBTree.setRootNode({name:g.lang.getString("loading_error")})},showNiBTreeLoadMask:function(b){this.internalUi.setLoading(b)},hideNiBTreeLoadMask:function(){this.internalUi.setLoading(false)},onTreeCellClick:function(A,b,o,B,h){var z=this;if(o!=0){return}var q=A.getRecord(h);q.set("checked",!q.get("checked"));if(!q.get("checked")){var w=z.NiBproject.indexOf(q.get("name")),g=z.NiBproject.splice(w,1)}else{z.NiBproject.push(q.get("name"))}z.NiBproject.length>0?z.setContainerTitle(true):z.setContainerTitle(false);z.layer.mergeNewParams({layers:z.NiBproject.join()});z.layerOutline.mergeNewParams({layers:z.getOutlineLayersString()});z.layer.setVisibility((z.NiBproject.length>0));z.layerOutline.setVisibility((z.NiBproject.length>0))},getOutlineLayersString:function(){var b=[];Ext.Array.each(this.NiBproject,function(h,g,o){b.push(h+"_4")});return b.join()},createAndAddLayer:function(){var b=this;b.layer=b.createLayer("NiB overlay","proxies/xGetMap.ashx?url="+b.wmsServiceUrl,b.NiBproject.join());b.layerOutline=b.createLayer("NiB overlay outline","proxies/xGetMap.ashx?url="+b.wmsServiceUrlOutline,b.getOutlineLayersString());b.layer.group=10;b.layerOutline.group=10;b.map.addLayer(b.layer,true);b.map.addLayer(b.layerOutline,true);b.registerLoadEvents(b.layer)},createLayer:function(b,o,g){var h=this;return new OpenLayers.Layer.WMS(b,o,{layers:g,transparent:true,version:"1.3.0",wgs84toetrs89:true},{visibility:false,singleTile:true,ratio:1,tileOptions:{eventListeners:{loaderror:function(q){q.object.url=h.blankTile;q.object.imgDiv.src=h.blankTile}}}})},removeLayer:function(){var g=this,b=g.layer,h=g.layerOutline;if(b){b.events.unregister("loadend",g,g.layerLoadEnd);g.map&&g.map.removeLayer(b);b.destroy();delete g.layer}if(h){g.map&&g.map.removeLayer(h);h.destroy();delete g.layerOutline}delete this.preButtonState},layerLoadEnd:function(b){var g=this;g.setContainerTitle(false)},registerLoadEvents:function(b){var g=this;b.events.register("loadend",g,g.layerLoadEnd)},setContainerTitle:function(b){var g=this,h="";if(b){h=" - "+g.lang.getString("loading_tiles")+' <img src="'+g.loadingGif+'" height=12 />'}if(!g.inAllowedScale){h=" - "+g.lang.getString("not_in_scale_info1")+" ("+g.lang.getString("not_in_scale_info2")+" < 1:"+g.minScale+")"}g.activeRecord&&g.baseLayersContainerTitle.update(g.activeRecord.get("name")+h)}});Ext.define("Client.module.map.layerManager.BaseLayers",{extend:Client.module.map.layerManager.Generic,mixins:[Client.module.map.layerManager.mixins.NiB],baseLayerNode:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.layerManager.lang.NiB");g.NiBStore=Ext.create("Ext.data.TreeStore",{fields:["name"]});g.NiBTree=Ext.create("Ext.tree.Panel",{store:g.NiBStore,flex:1,hideHeaders:true,rootVisible:false,useArrows:true,columns:[{xtype:"treecolumn",text:"headertext",sortable:false,dataIndex:"name",flex:1}]});g.NiBTree.on("cellclick",g.onTreeCellClick,g);g.internalUi=Ext.create("Ext.container.Container",{width:400,height:200,layout:{type:"vbox",align:"stretch"},cls:"a3-category-container a3-category-popup",items:[{xtype:"container",layout:"hbox",items:[{xtype:"box",cls:"header",itemId:"baselayerContainerTitle",html:"BaselayerTitle",flex:1}]},g.NiBTree]});g.internalUi.hide();
1g.baseLayersContainerTitle=g.internalUi.query("[itemId=baselayerContainerTitle]")[0];g.view.mon(g.view,"show",g.onCatViewShow,g);g.view.mon(g.view,"beforehide",g.onCatViewBeforeHide,g)},prepareDataForDisplay:function(){for(var o=0;o<this.unifiedMapCfg.childNodes.length;o++){if(this.unifiedMapCfg.childNodes[o].get("recordData").get("name")=="baseLayers"){this.baseLayerNode=this.unifiedMapCfg.childNodes[o];break}}var h=this.baseLayerNode.childNodes;for(var o=0;o<h.length;o++){var b=this.createThumbnail(h[o].get("recordData"));this.scrollerModule.addThumbnail(b)}var g=this.scrollerModule.getThumbnails();this.reportBaseLayerCount(g.length);this.setActiveThumbnail(g[0]);this.updateScrollerViewSize()},reportBaseLayerCount:function(b){var h=true;if(b==1){h=!this.preventHideBaseLayerButton()}var g={evtName:"baseLayerCount",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{blCount:b,canHideButton:h}};this.dispatchEvent(g,{confirmationRequired:false})},preventHideBaseLayerButton:function(){var g=this;var b=Adaptive.utils.Config.getThemeData(g.baseLayerNode.childNodes[0].data.recordData);if(b&&b.data&&b.data.nib){return b.data.nib}else{return false}},createThumbnail:function(g){var o=this.getThumbnailUrl(g);var h;if(this.isNibLayer(g)){h=Ext.create("Ext.button.Button",{tooltip:this.lang.getString("show_nib_layers"),cls:"a3-pencil-viewable a3-layermanager-list",pressed:false,record:g,enableToggle:true,scale:"large"});if(!this.layer){this.createAndAddLayer()}this.buttonBindEvts(h)}var b=Ext.create("Ext.container.Container",{overCls:"a3-component_overCls",cls:"a3-layermanager-item",width:this.btnHeight*2,layout:"absolute",record:g,button:h,items:[{xtype:"image",autoEl:{tag:"div",cls:"a3-thumbnail"},src:o,listeners:{afterrender:function(q){q.getEl().dom.setAttribute("data-qtip",g.get("name"))}}},{xtype:"box",cls:"a3-layermanager-title",html:g.get("name")}]});if(h){b.add(h)}b.on("render",this.bindClickEvtToThumbnail,this);return b},setActiveBaseLayer:function(b){this.setNewBaseLayer(b)},onActiveComponentChanged:function(){this.inActiveBaseLayerChangeProcess=true;this.setActiveBaseLayer(this.activeRecord);this.setContainerTitle();this.processActiveCategory(this.activeRecord,true)},setNewBaseLayer:function(b){var o=this.map.getLayers();var h=[];for(var g=0;g<o.length;g++){if(o[g].record){if(o[g].record.get("uuid")==b.get("uuid")&&o[g].id==b.get("olLayer").id&&o[g].record.get("is_base_layer")){var q={checked:true,recordData:o[g].record};h.push(q)}else{if(o[g].record.get("is_base_layer")){var q={checked:false,recordData:o[g].record};h.push(q)}}}}this.reportLayerVisibilityChange(h);delete this.inActiveBaseLayerChangeProcess},reportLayerVisibilityChange:function(b){if(!Ext.isArray(b)){b=[b]}var g={evtName:"updateMapState",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersVisibilityChanged",records:b}};g.data.group=0;this.dispatchEvent(g,{confirmationRequired:false})},_setActive:function(b){if(!b){this.cleanUpScroller();this.scrollerModule.panel.hide()}},internalActivate:function(){this.updateInternalUiPosition()},internalDeactivate:function(){this.internalUi.hide()},getActiveRecordData:function(){return this.activeRecord.get("uuid")},setActiveRecordData:function(g){var b=this.getContainerByItemUuid(g);if(b){this.setActiveThumbnail(b)}},setActiveRecordDataById:function(g){var b=this.getContainerByItemId(g);if(b){this.setActiveThumbnail(b)}},buttonBindEvts:function(b){var g=this;b.mon(b,"toggle",g.onButtonToggle,g);b.mon(b,"click",function(){g.activeCategoryButton=b},g)},onButtonToggle:function(b,g){if(this.hasActiveCategoryMarked){this.buttonActionOnly=true}else{this.buttonActionOnly=false}if(g){this.internalUi.show();this.updateInternalUiPosition();this.updateNiBProjects()}else{this.internalUi.hide()}},onThumbnailClicked:function(h){var g=this.container;var q=this.module;var o=g.button;var b=g.record;if(q.activeRecord&&q.activeRecord.get("uuid")!=b.get("uuid")){if(q.activeCategoryButton){q.activeCategoryButton.toggle(false)}
1q.setActiveThumbnail(g);return}if(this.module.buttonActionOnly){this.module.buttonActionOnly=false;return}if(!q.activeRecord){q.hasActiveCategoryMarked=true;q.setActiveThumbnail(g)}},onCatViewShow:function(){if(this.preButtonState){this.updateNiBProjects();this.internalUi.show();delete this.preButtonState}},onCatViewBeforeHide:function(){this.preButtonState=null;if(this.activeCategoryButton){this.preButtonState=this.activeCategoryButton.pressed}this.internalUi.hide()},updateInternalUiPosition:function(){var g=this;if(g.view){var b=g.view;g.internalUi.alignTo(b,"bl-tl",[0,-10])}},internalGuiSetUp:function(){this.mapContainer.add(this.internalUi)},processActiveCategory:function(b,g){},beforeMapReset:function(g){var b=this;b.unifiedMapCfg=null;b.activeScrollerItem=null;b.activeRecord=null;b.removeLayer&&b.removeLayer()},_onBaseLayerFallback:function(o){var h=this,q=h.map.getLayers(),g,b;q.forEach(function(w){var A=w.record&&Adaptive.utils.Config.getThemeData(w.record),z=A&&A.theme_uuid;if(z&&z==o.data.fallback_theme){g=w}});if(g&&h.getActiveRecordData()!=g.record.get("uuid")){b=h.getContainerByItemUuid(o.data.failed_layer);if(b){b.addCls("a3-base-disabled")}b=h.getContainerByItemUuid(g.record.get("uuid"));if(b){h.setActiveThumbnail(b)}}},_onInfoClicked:function(){var b=this;b.view.hide();b.internalUi.hide()}});Ext.define("Client.data.model.CategoryLayerFields",{singleton:true,fields:[{name:"uuid",type:"string",defaultValue:null,useNull:null},{name:"resource_type_internal_name",type:"string",defaultValue:null,useNull:true},{name:"name",type:"string",defaultValue:null,useNull:true},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"visibility",type:"boolean",defaultValue:false,useNull:true},{name:"category_uuid",type:"string",defaultValue:false,useNull:null},{name:"user_visibility",type:"boolean",defaultValue:false,useNull:true},{name:"current_visibility",type:"boolean",defaultValue:false,useNull:true},{name:"record",type:"auto",defaultValue:null,useNull:true}]});Ext.define("Client.data.model.CategoryLayer",{extend:Ext.data.Model,fields:Client.data.model.CategoryLayerFields.fields,config:{fields:Client.data.model.CategoryLayerFields.fields}});Ext.define("GeoMind.data.store.Tree",{extend:Ext.data.TreeStore,model:"GeoMind.data.model.Tree",autoLoad:false,config:{model:"GeoMind.data.model.Tree",autoLoad:false},constructor:function(b){Ext.apply(this,b);this.root={expanded:true,children:[]};this.callParent([b])}});Ext.define("GeoMind.desktop.tree.plugins.uxViewDropZone",{extend:Ext.tree.ViewDropZone,handleNodeDrop:function(o,C,q){var E=this,F=E.view,w=C.parentNode,G=F.getStore(),I=[],b,h,B,g,A,D,H,z;if(o.copy){b=o.records;o.records=[];for(h=0,B=b.length;h<B;h++){o.records.push(Ext.apply({},b[h].data))}}E.cancelExpand();if(q=="before"){g=w.insertBefore;A=[null,C];C=w}else{if(q=="after"){if(C.nextSibling){g=w.insertBefore;A=[null,C.nextSibling]}else{g=w.appendChild;A=[null]}C=w}else{if(!C.isExpanded()){D=true}g=C.appendChild;A=[null]}}H=function(){var J;for(h=0,B=o.records.length;h<B;h++){A[0]=o.records[h];J=g.apply(C,A);if(Ext.enableFx&&E.dropHighlight){I.push(F.getNode(J))}}if(Ext.enableFx&&E.dropHighlight){Ext.Array.forEach(I,function(K){if(K){Ext.fly(K.firstChild?K.firstChild:K).highlight(E.dropHighlightColor)}})}};if(D){C.expand(false,H)}else{H()}}});Ext.define("GeoMind.desktop.tree.plugins.TreeViewDragDrop",{alias:"plugin.TreeViewDragDrop",extend:Ext.tree.plugin.TreeViewDragDrop,init:function(b){this.callParent(arguments)},allowParentInsert:false,getCmp:function(){return this.callParent(arguments)},getRowClass:function(b,g,h,o){return b.get("disabled")?this.disabledCls:""},onViewRender:function(b){var g=this;if(g.enableDrag){g.dragZone=Ext.create("Ext.tree.ViewDragZone",{view:b,ddGroup:g.dragGroup||g.ddGroup,dragText:g.dragText,repairHighlightColor:g.nodeHighlightColor,repairHighlight:g.nodeHighlightOnRepair})}if(g.enableDrop){g.dropZone=Ext.create("GeoMind.desktop.tree.plugins.uxViewDropZone",{view:b,ddGroup:g.dropGroup||g.ddGroup,allowContainerDrops:g.allowContainerDrops,appendOnly:g.appendOnly,allowParentInserts:g.allowParentInserts,expandDelay:g.expandDelay,dropHighlightColor:g.no
1deHighlightColor,dropHighlight:g.nodeHighlightOnDrop,isValidDropPoint:function(o,B,G,D,z){if(!o||!z.item){return false}var J=this.view,E=J.getRecord(o),w=z.records,h=w.length,F=w.length,q,A;if(!(E&&B&&h)){return false}for(q=0;q<F;q++){A=w[q];if(A.isNode&&A.contains(E)){return false}}if(B==="append"&&E.get("allowDrop")===false){return false}else{if(B!="append"&&E.parentNode.get("allowDrop")===false){return false}}if(Ext.Array.contains(w,E)){return false}if(!E.get("leaf")&&B=="append"){return false}if(!E.get("leaf")&&B=="before"){return true}var I=w[0];var C=I.get("record");var H=E.get("record");if(!E.previousSibling&&B=="before"&&I.get("type")!=E.get("type")){return true}if(!E.nextSibling&&B=="after"){return true}if(E.nextSibling&&B=="after"){return false}return true}})}}});Ext.define("GeoMind.desktop.tree.plugins.NodeDisabled",{alias:"plugin.dvp_nodedisabled",extend:Ext.AbstractPlugin,mixins:{observable:Ext.util.Observable},disabledCls:"dvp-tree-node-disabled",preventSelection:true,constructor:function(){this.callParent(arguments);this.mixins.observable.constructor.call(this)},registerDisableCss:function(b){var g=".dvp-tree-node-disabled .x-grid-cell {-moz-opacity: 0.5;opacity:.5;filter: alpha(opacity=50);}";Ext.util.CSS.createStyleSheet(g)},init:function(b){this.registerDisableCss();var h=this,g=(b.is("treeview"))?b:b.getView(),o,q;h.callParent(arguments);o=g.getRowClass;if(o){q=g.scope||h;Ext.apply(g,{getRowClass:function(){var z,w;z=o.apply(q,arguments)||"";w=h.getRowClass.apply(h,arguments)||"";return(z&&w)?z+" "+w:z+w}})}else{Ext.apply(g,{getRowClass:Ext.Function.bind(h.getRowClass,h)})}if(h.preventSelection){h.mon(b.getSelectionModel(),"beforeselect",h.onBeforeNodeSelect,h)}b.on("destroy",h.destroy,h,{single:true})},destroy:function(){this.callParent(arguments);this.clearListeners()},getCmp:function(){return this.callParent(arguments)},getRowClass:function(b,g,h,o){return b.get("disabled")?this.disabledCls:""},onBeforeNodeSelect:function(g,b){if(b.get("disabled")){return false}},onCheckChangeInterceptor:function(b){if(b.get("disabled")){return false}}});Ext.define("GeoMind.desktop.tree.plugins.NodeHidden",{alias:"plugin.dvp_nodehidden",extend:Ext.AbstractPlugin,mixins:{observable:Ext.util.Observable},hiddenCls:"dvp-tree-node-hidden",constructor:function(){this.callParent(arguments);this.mixins.observable.constructor.call(this)},registerHiddenCss:function(b){var g=".dvp-tree-node-hidden .x-grid-cell {display: none;}";Ext.util.CSS.createStyleSheet(g)},init:function(b){this.registerHiddenCss();var h=this,g=b.is("treeview")?b:b.getView(),o,q;h.callParent(arguments);o=g.getRowClass;if(o){q=g.scope||h;Ext.apply(g,{getRowClass:function(){var z,w;z=o.apply(q,arguments)||"";w=h.getRowClass.apply(h,arguments)||"";return z&&w?z+" "+w:z+w}})}else{Ext.apply(g,{getRowClass:Ext.Function.bind(h.getRowClass,h)})}b.on("destroy",h.destroy,h,{single:true})},destroy:function(){this.callParent(arguments);this.clearListeners()},getCmp:function(){return this.callParent(arguments)},getRowClass:function(b,g,h,o){return b.get("hidden")?this.hiddenCls:""},onBeforeNodeSelect:function(g,b){if(b.get("hidden")){return false}},onCheckChangeInterceptor:function(b){if(b.get("hidden")){return false}}});Ext.define("GeoMind.desktop.tree.view.Standard",{extend:Ext.tree.Panel,autoLoad:false,model:"GeoMind.data.model.Tree",constructor:function(b){Ext.apply(this,b||{});if(!b.columns){this.columns=[{xtype:"treecolumn",flex:1,sortable:false,dataIndex:"name",renderer:function(B,w,h,g,o,C,z){var q=h.get("recordData");var A=B;if(q){A=q.get("name")}return A}}]}this.callParent([b])}});Ext.define("GeoMind.desktop.tree.lang.Lang",{strings:{lm_contextMenu_btnRemoveLayer_Text:{pl:"UsuÅ warstwÄ",en:"Remove Layer"},lm_contextMenu_btnRemoveLayerGroup_Text:{pl:"UsuÅ grupÄ",en:"Remove Group"},lm_contextMenu_btnZoomToExtent_Text:{pl:"Przybliż do zdefiniowanego zasiÄgu warstwy",en:"Zoom to layer's defined extent"},lm_contextMenu_opacityLabel_Text:{pl:"PrzeźroczystoÅÄ",en:"Opacity"},lm_contextMenu_reloadLabel_Text:{pl:"OdÅwież",en:"Reload"}},errCodes:{}});Ext.define("GeoMind.desktop.tree.Standard",{extend:GeoMind.base.Module,mixins:{}
1,lang:null,view:null,store:null,nodeMap:null,constructor:function(b){Ext.apply(this,b||{});this.callParent([b]);this.addEvents(["updateMapState"]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.tree.lang.Lang");if(!this.store){this.store=Ext.create("GeoMind.data.store.Tree")}if(!this.nodeMap){this.nodeMap=Ext.create("Ext.data.Store",{fields:[{name:"rid",type:"string"},{name:"node",type:"auto"}]})}var g={store:this.store,rootVisible:false};if(b&&b.viewConfig){Ext.apply(g,b.viewConfig)}this.store.on("remove",this.onNodeRemove,this);this.store.on("append",this.onNodeAppend,this);this.store.on("insert",this.onNodeInsert,this);this.view=Ext.create("GeoMind.desktop.tree.view.Standard",g);this.hackTreeView();this.view.getView().on("checkchange",this.onCheckChange,this);this.view.getView().on("drop",this.onDrop,this);if(this.contextMenu){this.contextMenu.bindEvts(this)}if(this.nodeTooltip){this.nodeTooltip.initTooltip(this)}if(this.customBehavior){this.customBehavior.initBehavior(this)}},hackTreeView:function(){this.view.view.onCheckChange=function(b){var g=b.get("checked"),h=b.get("recordData");if(h&&h.get("group_layers")&&g){return}if(Ext.isBoolean(g)){g=!g;b.set("checked",g);this.fireEvent("checkchange",b,g)}},this.view.view.updateColumns=function(o,h,A,g,H){var L=this,B,I,J,w,D=g.length,E,q,b,C,z,G=L.editingPlugin||(L.lockingPartner&&L.ownerCt.ownerLockable.view.editingPlugin),F=G&&G.editing,K=L.getCellSelector();if(h.mergeAttributes){h.mergeAttributes(A,true)}else{B=A.attributes;I=B.length;for(w=0;w<I;w++){J=B[w].name;if(J!=="id"){h.setAttribute(J,B[w].value)}}}for(E=0;E<D;E++){q=g[E];if(L.shouldUpdateCell(o,q,H)){K=L.getCellSelector(q);b=Ext.DomQuery.selectNode(K,h);C=Ext.DomQuery.selectNode(K,A);if(F){Ext.fly(b).syncContent(C)}else{if(b&&b.parentNode&&C){z=b.parentNode;z.insertBefore(C,b);z.removeChild(b)}}}}}},updateNodeMap:function(g,o){for(n in g){var h=g[n].get("recordData");var b=this.nodeMap.findExact("rid",h._uqid);switch(o){case"remove":if(b>-1){this.nodeMap.removeAt(b)}break;case"add":if(b==-1){this.nodeMap.add({rid:h._uqid,node:g[n]})}break}}},getNodeFromNodeMap:function(g){var h=null;var b=this.nodeMap.findExact("rid",g._uqid);if(b>-1){h=this.nodeMap.getAt(b).get("node")}return h},onNodeAppend:function(b,o,g,h){this.updateNodeMap(GeoMind.utils.Tree.getNodes(o),"add")},onNodeInsert:function(g,o,b,h){this.updateNodeMap(GeoMind.utils.Tree.getNodes(o),"add")},onNodeRemove:function(h,q,g,o){if(!g&&!this.duringNewRootNodeSetup){var b=GeoMind.utils.Tree.extractNodeDataToArray(GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.Layer",q),"recordData");this.updateNodeMap(GeoMind.utils.Tree.getNodes(q),"remove");var w={evtName:"updateMapState",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersRemove",records:b}};this.dispatchEvent(w,{confirmationRequired:false})}},onDrop:function(h,q,o,b,g){this.callOrderChange()},callOrderChange:function(){var g=this.store.getRootNode();var b=GeoMind.utils.Tree.extractNodeDataToArray(GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.Layer",g),"recordData");var h={evtName:"updateMapState",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersOrderChanged",records:b}};this.dispatchEvent(h,{confirmationRequired:false})},removeNode:function(b){if(!Ext.isArray(b)){b=[b]}b.forEach(function(o){var h=o.parentNode;h.removeChild(o,false);if(!h.childNodes.length==0){var g=h.parentNode;if(g){g.removeChild(h)}}})},onCheckChange:function(o,h,b){var g=this;if(o.clickHandle){o.clickHandle(o,h)}else{g.checkChange(o,h)}},checkChange:function(h,g,b){this.checkChangeChild(h,g,false);this.checkChangeParent(h);if(!b){this.callCheckChange()}},checkChangeOnlyVisible:function(g,b){this.checkChangeChild(g,b,true);this.checkChangeParent(g);this.callCheckChange()},callCheckChange:function(){var g=this.store.getRootNode();var b=GeoMind.utils.Tree.extractNodeDataToArrayOfObjects(GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.Layer",g),["checked","recordData"]);var h={evtName:"updateMapState",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersVisibilityChanged",records:b}};this.dispatchEvent(h,{confirmationRequired:false})},checkChangeChild:function(q,o,A){var h=this,w;if(!q){return}w=q.get("recordData");function z(B){visibleInParent=A?this.getVisibilityFromLinks(w,B.get("recordData")):true;B.set("checked",o&&visibleInParent);h.checkChangeChild(B,o&&visibleInParent,A)}if(w.$className=="GeoMind.data.model.LayerGroup"&&Adaptive.utils.Config.getBooleanConfig(w,"group_layers",false)){if(q.childNodes&&q.childNodes.length>
10){q.childNodes.forEach(function(B){if(B.get("checked")){B.set("checked",false)}});z(q.childNodes[0])}return}for(var g=0,b=q.childNodes.length;g<b;g++){z(q.childNodes[g])}},getVisibilityFromLinks:function(h,o){var q=false;var b=h.get("links");for(var g=0;g<b.length;g++){if(b[g].child_uuid==o.get("uuid")&&b[g].extended_data&&b[g].extended_data.indexOf("true")>-1){q=true;break}}return q},checkChangeParent:function(q){if(!q){return}var b=q.parentNode;if(!b){return}var g=false;for(var o=0,h=b.childNodes.length;o<h;o++){var w=b.childNodes[o];if(w.get("checked")){g=true;break}}b.set("checked",g);this.checkChangeParent(b)},duringNewRootNodeSetup:false,setNewRootNode:function(q){this.duringNewRootNodeSetup=true;var o=q.copy(Ext.id(),true);Ext.suspendLayouts();var h=this.store.getRootNode();h.removeAll();while(o.childNodes.length>0){var g=h.appendChild(o.getChildAt(0))}Ext.resumeLayouts(false);this.applyDefaultIconClassesForNodes();var b=GeoMind.utils.Tree.extractNodeDataToArray(GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.Layer",q),"recordData");this.updateLoadingFeedback(b);this.duringNewRootNodeSetup=false;var w={evtName:"newRootNodeSet",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{node:h}};this.dispatchEvent(w,{confirmationRequired:false})},onAfterMapReset:function(b){this.setNewRootNode(b.data.unifiedMapCfg)},onLayerVisibilityChanged:function(b){this.updateLoadingFeedback(b.data.records);this.updateCheckedState(b)},onLayersLoadStart:function(b){this.updateLoadingFeedback(b.data.records)},onLayersLoadEnd:function(b){this.updateLoadingFeedback(b.data.records);this.updateInRangeFeedback(b.data.records)},updateCheckedState:function(b){if(this._id==b.evtSuperInitiatingModule._id){return}var g=b.data.records;for(r in g){var h=this.getNodeFromNodeMap(g[r]);if(h){h.set("checked",g[r].get("visibility"))}}},updateLoadingFeedback:function(b){for(r in b){var h=this.getNodeFromNodeMap(b[r]);if(h){var g=b[r].get("isLoading")?"gm-lt-layer_loading":this.getIconClassForNode(h);h.set("iconCls",g)}}},updateInRangeFeedback:function(g){for(r in g){var q=this.getNodeFromNodeMap(g[r]);if(q){var h=g[r].get("isLoading")?"gm-lt-layer_loading":this.getIconClassForNode(q);q.set("iconCls",h);var b=g[r].get("olLayer");if(b){var o=b.calculateInRange();q.set("disabled",!o)}}}},onLayersAdded:function(h){var b=h.data.records;var g=h.data.extraConfig;this.addNode(b,g)},relevantCols:["isActiveInfo"],checkIfColRelevant:function(b){var g=false;for(c in b){if(Ext.Array.contains(this.relevantCols,b[c])){g=true;break}}return g},onLayersRecordUpdated:function(b){if(b.data&&b.data.columns&&this.checkIfColRelevant(b.data.columns)){for(r in b.data.records){var g=this.getNodeFromNodeMap(b.data.records[r]);if(g){g.set("last_updated",new Date().getTime())}}}},applyDefaultIconClassesForNodes:function(){var g=this.store.getRootNode();var b=GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.Layer",g);for(n in b){b[n].set("iconCls",this.getIconClassForNode(b[n]))}},findNodeRelatedToRecord:function(g,b){compare=function(h){return h.get("recordData").internalId==b.internalId};return g.findChildBy(compare,g,true)},getIconClassForNode:function(h){var g=h.get("recordData").get("icon_cls");if(!g){g="gm-generic_layer";var b=h.get("recordData").get("olLayer");if(b){switch(b.CLASS_NAME){case"OpenLayers.Layer.Vector":case"OpenLayers.Layer.Vector4Service":g="gm-generic_layer_vector";if(b.protocol&&b.protocol.format){switch(b.protocol.format.CLASS_NAME){case"OpenLayers.Format.KML":g="gm-generic_layer_kml";break;case"OpenLayers.Format.GPX":g="gm-generic_layer_gpx";break;case"OpenLayers.Format.GML":g="gm-generic_layer_gml";break}}break;case"OpenLayers.Layer.GeoportalARS":g="gm-generic_layer_geoportal";break;case"OpenLayers.Layer.Panoramio":g="gm-generic_layer_panoramio";break;case"OpenLayers.Layer.Wikipedia":g="gm-generic_layer_wiki";break}}}return g},setNodesProperties:function(h,q,o,b,g){for(n in h){if(h[n].get("recordData").get(q)==o){h[n].set(b,g)}}},addNode:function(z,B){if(!z){return}if(!Ext.isArray(z)){z=[z]}B=B||{};var o=B.rootNode||this.store.getRootNode();var q=null;var A=null;var h=null;if(B&&B.createFolder){var b=B.name?B.name:z[0].get("layer_type_value"),w="folderExpanded" in B?!!B.folderExpanded:true;var g=Ext.create("GeoMind.data.model.LayerGroup",{uuid:B.uuid||GeoMind.utils.Generator.getUuid(),name:b,description:B.description?B.description:null,is_expanded:w});if(B.addToExistingFolder){h=this.findNodeBy("name",b);if(h){A=h}}if(!A&&B.createFolder){A=Ext.create("GeoMind.data.model.Tree",{type:"layergroup",model:Ext.ClassManager.getName(g),leaf:false,expandable:true,expanded:w,recordData:g,name:g.get("name"),cls:B.hidden?"x-hidden-node":"",checked:!!B.isFolderChecked,config:B.config})}}for(r in z){var q=z[r],D=Ext.ClassManager.getName(q),C="GeoMind.data.model.Tree";if(D!==C){q=Ext.create(C,{type:"layer",model:D,leaf:true,expandable:true,expanded:true,recordData:q,cls:B.hidden?"x-hidden-node":"",checked:q.get("visibility"),config:B.config})}this.updateNodeMap([q],"add");if(A){A.insertChild(0,q)}else{o.insertChild(0,q)}}if(A){o.insertChild(0,A)}this.updateLoadingFeedback(z);return A},findNodeBy:function(b,h){var g=this.store.getRootNode();compare=function(o){return o.get(b)==h};return g.findChildBy(compare,g,true)},cleanMeUp:function(){if(this.nodeMap){this.nodeMap.loadData([])}},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)},_onAfterMapReset:function(b){this.onAfterMapReset(b);this.manageEventConfirmation(b)},_onMapStateUpdated:function(b){switch(b.data.type){case"layersOrderChanged":break;case"layersVisibilityChanged":this.onLayerVisibilityChanged(b);break;case"layersLoadStart":this.onLayersLoadStart(b);break;case"layersLoadEnd":this.onLayersLoadEnd(b);break;case"layersAdded":this.onLayersAdded(b);break;case"layersRecordUpdated":this.onLayersRecordUpdated(b);break}}});Ext.define("Client.module.map.layerManager.lang.Categories",{strings:{opacity:{en:"Opacity",nb:"Ugjennomsiktighet"},btnShowDC:{en:"Show Dublin Core metadata",nb:"Vis Dublin Core metadata"},btnShowCsw:{en:"Show metadata for layer",nb:"Vis metadata for layer"},btnBack:{en:"Back",nb:"Tilbake"},groupEmptyText:{en:"",nb:"Frittstående temakart"},title:{en:"Thematic maps",nb:"Temakart"},subtitle:{en:"We have gathered information in various thematic maps",nb:"Vi har samlet informasjon i ulike temakart"},info1:{en:"Activate a theme map by clicking on it. Customize your selection by using the theme layer manager on the right side of the screen. Adjust theme layers by adding or removing them, and modify settings such as naming and filtering.",nb:"Klikk på et av temakartene for å aktivere. Et valgt temakart kan om ønskelig finjusteres ved å klikke på temalagsvelgeren på arealverktøyets høyre side. Da kan du legge til og fjerne temalag, samt navnsette, filtrere osv. de enkelte temalag."},info2:{en:'Return to this place anytime by using the "Thematic map" button located in the lower left corner of the map',nb:"Du kan når som helst komme tilbake hit via knappen «Temakart» nede i venstre hjørne av kartet"},showOnStartup:{en:"Show on startup",nb:"Vis ved oppstart"},show_category_layers:{en:"Select layers in this group",nb:"Velg temalag i gruppen"}},errCodes:{}});Ext.define("Client.data.model.ThematicMap",{extend:Ext.data.Model,fields:[{name:"id",type:"int"},{name:"name",type:"string"},{name:"description",type:"string"},{name:"thumbnail",type:"string"},{name:"themes",type:"auto"}]});Ext.define("Adaptive.form.Basic",{extend:Ext.form.Basic,onFieldAdd:function(b){if(b.up("form")==this.owner){this.callParent(arguments)}},onFieldRemove:function(b){if(b.up("form")==this.owner){this.callParent(arguments)}},getFields:function(){var b=this.owner;return this.monitor.getItems().filterBy(function(g){return g.up("form")==b})}});Ext.define("Adaptive.form.Panel",{extend:Ext.form.Panel,restoreScrollAfterLayout:true,createForm:function(){var g={},o=this.basicFormConfigs,b=o.length,h=0,q;for(;h<b;++h){q=o[h];g[q]=this[q]}return new Adaptive.form.Basic(this,g)},onRender:function(){this.callParent(arguments);if(this.restoreScrollAfterLayout){this.mon(this.body,"scroll",this.onScroll,this)}},onScroll:function(h,g,b){this.scroll=this.body.getScroll()},afterLayout:function(){this.callParent(arguments);if(this.restoreScrollAfterLayout&&this.scroll){var g=this.body,b=this.scroll;g.scrollTo("left",b.left);g.scrollTo("top",b.top)}}});Ext.define("Adaptive.form.field.ColorField",{extend:Ext.form.field.Trigger,alias:"widget.a3-colorfield",triggerCls:"a3-color-picker",maskRe:/[ 0-9]/i,regex:/^\d{1,3} \d{1,3} \d{1,3}$/,hexToRgb:function(h){var g=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;h=h.replace(g,function(q,z,w,o){return z+z+w+w+o+o});var b=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(h);return b?parseInt(b[1],16)+" "+parseInt(b[2],16)+" "+parseInt(b[3],16):null},rgbToHex:function(g){var b=function(o){var h=Number(o).toString(16);return h.length==1?"0"+h:h};g=g.split(" ");if(g.length==3){return"#"+b(g[0])+b(g[1])+b(g[2])}},getHexValue:function(){return this.rgbToHex(this.getValue())},setHexValue:function(g){var b;if(g){b=this.hexToRgb(g)}this.setValue(b)},listeners:{blur:function(b){if(!b.isValid()){b.setValue(b.validValue)}},change:function(b,g){if(b.isValid()&&b.triggerEl){b.triggerEl.setStyle({"background-color":b.rgbToHex(g)});b.validValue=g;b.fireEvent("colorchange",b,g)}},render:function(b){if(b.value){b.triggerEl.setStyle({"background-color":b.rgbToHex(b.value)})}}},onTriggerClick:function(){var g=this;if(g.win){g.win.destroy();g.win=null}else{g.win=Ext.create("Ext.window.Window",{header:false,width:g.getWidth(),maxWidth:154,resizable:false,layout:"fit",items:[{xtype:"colorpicker",listeners:{select:function(o,h){h="#"+h;g.validValue=g.hexToRgb(h);g.setValue(g.validValue);g.win.destroy()}}}],listeners:{beforedestroy:function(){g.win.removeAnchor();g.win=null;Ext.getBody().un("click",b)}}}).show();g.win.anchorTo(g.triggerWrap,"tr-br?");var b=function(){g.win.destroy()};setTimeout(function(){Ext.getBody().on("click",b)},1)}}});Ext.define("Adaptive.layer.Layer",{singleton:true,simplifyFeature:function(z,C){var B=this,D=null,C=C||0.5;if(!z){return null}switch(z.geometry.CLASS_NAME){case"OpenLayers.Geometry.MultiPolygon":var A=z.geometry.components,g=A.length,w=[];for(var o=0;o<g;o++){w.push(B.simplifyPolygon(A[o],C))}D=new OpenLayers.Geometry.MultiPolygon(w);break;case"OpenLayers.Geometry.Polygon":D=B.simplifyPolygon(z.geometry,C);break;case"OpenLayers.Geometry.MultiLineString":var A=z.geometry.components,g=A.length,q=[];for(var o=0;o<g;o++){var h=A[o].simplify(C);q.push(new OpenLayers.Geometry.LineString(h.getVertices()))}D=new OpenLayers.Geometry.MultiLineString(q);break;case"OpenLayers.Geometry.LineString":var h=z.geometry.simplify(C);D=new OpenLayers.Geometry.LineString(h.getVertices());break;default:D=z.geometry}var b=new OpenLayers.Feature.Vector(D);b.data=z.data;b.attributes=z.attributes;return b},simplifyPolygon:function(h,B){var A=h.components,g=A.length,o=[],B=B||0.5,b,w=false;for(var z=0;z<g;z++){b=A[z].getArea();if((b<0||w)&&Math.abs(b)<B*B){continue}if(b>0){w=true}var q=A[z].simplify(B);o.push(new OpenLayers.Geometry.LinearRing(q.getVertices()))}return new OpenLayers.Geometry.Polygon(o)}});Ext.define("Adaptive.layer.Select",{selectFeature:function(z,o,b,h,g){var w=this,A;if(w.selectLayer==null){w.createSelectLayer()}if(!b){w.selectLayer.removeAllFeatures()}if(!z){return}if(z instanceof OpenLayers.Feature){A=z.clone()}else{var q=new OpenLayers.Format.WKT();A=q.read(z)}if(!A){return}if(o&&o!==map.getProjectionObject().projCode){A.geometry.transform(o,map.getProjectionObject())}if(h&&map.getProjectionObject().proj.defData.indexOf("longlat")==-1){A=Adaptive.layer.Layer.simplifyFeature(A)}w.selectLayer.addFeatures([A]);if(g){A.attributes=g}return A},removeSelection:function(g){var b=this;if(!b.selectLayer){return}if(g){b.selectLayer.removeFeatures(g)}else{b.selectLayer.removeAllFeatures()}},createSelectLayer:function(g){var b=this;
1g=g||new OpenLayers.StyleMap({strokeWidth:4,strokeColor:b.selectFeatureColor||"#FF9900",strokeOpacity:0.7,pointRadius:7,fillOpacity:0.2,fillColor:b.selectFeatureColor||"#FF9900",graphicZIndex:2});b.selectLayer=new OpenLayers.Layer.Vector(Ext.id()+"_select",{styleMap:g,rendererOptions:{zIndexing:true}});b.map.addLayer(b.selectLayer)},removeSelectLayer:function(){var b=this;if(b.selectLayer){b.selectLayer.destroy()}b.selectLayer=null}});Ext.define("Adaptive.form.field.GeomPicker",{extend:Ext.form.field.Trigger,mixins:[Adaptive.layer.Select],wktReader:new OpenLayers.Format.WKT(),srid:"4326",map:null,editable:false,selectInMap:false,setValue:function(h,b){var g=this;if(!b){if(g.selectInMap){if(h){g.selectFeature(g.wktReader.read(h),g.map.projection.projCode)}else{g.removeSelection()}}if(g.selectLayer&&g.editable){g.addEditControl()}}g.callParent(arguments)},addEditControl:function(b){var g=this;if(g.modifyControl){g.removeEditControl()}g.modifyControl=new OpenLayers.Control.ModifyFeature(g.selectLayer,{clickout:false,toggle:false,vertexRenderIntent:"vertex"});g.map.addControl(g.modifyControl);g.modifyControl.activate();g.selectLayer.events.register("featuremodified",g,g.featureModified)},removeEditControl:function(b){var g=this;g.map.removeControl(g.modifyControl);g.modifyControl.destroy();delete g.modifyControl;g.selectLayer.events.unregister("featuremodified",g,g.featureModified)},onTriggerClick:function(){var b=this;if(b.isPicking){return}b.drawLayer=new OpenLayers.Layer.Vector(Ext.id());b.drawFeature=new OpenLayers.Control.DrawFeature(b.drawLayer,b.handler,{title:"Test"});b.drawFeature.events.register("featureadded",b,b.featureAdded);b.hint=new OpenLayers.Control.MousePosition({prefix:(b.hintPrefix||b.getFieldLabel())+": (",separator:", ",suffix:")",numDigits:2,emptyString:"—"});b.map.addLayer(b.drawLayer);b.map.addControl(b.drawFeature);b.map.addControl(b.hint);b.drawFeature.activate();b.hint.activate();b.map.events.register("mousemove",b,b.repositionHint);b.isPicking=true;b.fireEvent("pickstarted",b)},repositionHint:function(g){var b=this;b.hint.div.style.right="auto";b.hint.div.style.bottom="auto";b.hint.div.style.top=g.y+"px";b.hint.div.style.left=g.x+"px"},featureModified:function(b){var g=this,h=b.feature.clone();g.setValue(g.wktReader.write(h),true)},featureAdded:function(b){var g=this,q=b.feature.clone(),o="EPSG:"+g.srid;if(o!=g.map.projection.projCode){q.geometry.transform(g.map.projection.projCode,o)}var h=g.wktReader.write(q);g.setValue(h);g.map.events.unregister("mousemove",g,g.repositionHint);g.map.removeControl(g.hint);g.map.removeControl(g.drawFeature);g.map.removeLayer(g.drawLayer);g.drawFeature.destroy();g.hint.destroy();g.drawLayer.destroy();g.isPicking=false;g.fireEvent("pickended",g,"SRID="+g.srid+";"+h)},deactivate:function(){var b=this;if(b.selectInMap){b.removeSelectLayer()}}});Ext.define("Adaptive.form.field.PointPicker",{extend:Adaptive.form.field.GeomPicker,xtype:"pointpicker",handler:OpenLayers.Handler.Point,cls:"a3-pointpicker"});Ext.define("Adaptive.form.field.LinePicker",{extend:Adaptive.form.field.GeomPicker,xtype:"linepicker",handler:OpenLayers.Handler.Path,cls:"a3-linepicker"});Ext.define("Adaptive.form.field.PolygonPicker",{extend:Adaptive.form.field.GeomPicker,xtype:"polygonpicker",handler:OpenLayers.Handler.Polygon,cls:"a3-polygonpicker"});Ext.define("Adaptive.utils.Date",{fixDateTimeValue:function(g,w,q){if(!g){return null}var z=function(B){var D=B.getYear()+1900;var A=B.getMonth()+1;var C=B.getDate();return D+"-"+(A<10?"0"+A:A)+"-"+(C<10?"0"+C:C)},o=function(C,E){var H=-(E||new Date()).getTimezoneOffset();var B=Math.floor(Math.abs(H)/60);var A=Math.abs(H)%60;var G=(H==0?"Z":((H>0?"+":"-")+(B<10?"0"+B:B)+":"+(A<10?"0"+A:A)));if(!C){return"00:00:00"+G}var F=C.getHours();var D=C.getMinutes();var I=q?C.getSeconds():0;return(F<10?"0"+F:F)+":"+(D<10?"0"+D:D)+":"+(I<10?"0"+I:I)+G},b=z(g),h=o(w,g);if(typeof w!=="undefined"&&w!==false){return new Date(b+"T"+h)}return new Date(b+"T00:00:00Z")}});Ext.define("Adaptive.mixins.Notify",{showNotify:function(g,q,w,b,A){var o=this,h=Ext.create("Ext.Component",{itemId:"notifyPopup",shadow:false,cls:"a3-notify",style:{position:"absolute"},maxWidth:g.getWidth(),html:q}),z={};if(b){h.addCls(b)}if(!w&&!A){g.add(h);h.alignTo(g,"c-c")}else{h.style={opacity:0}
1;h.floating=true;h.showBy(g,"c-c")}if(!w){h.animate({duration:200,keyframes:{"0":{opacity:0},"100":{opacity:1}}});h.dismiss=function(){h.animate({duration:200,keyframes:{"0":{opacity:1},"100":{opacity:0}},listeners:{afteranimate:function(){Ext.defer(function(){h.destroy()},10)}}})};return h}z[(20000/w).toFixed(0)]={opacity:1};z[(100-100000/w).toFixed(0)]={opacity:1};z["100"]={opacity:0};h.animate({duration:w,keyframes:z,listeners:{afteranimate:function(){Ext.defer(function(){h.destroy()},10)}}})},showClosableNotify:function(g,q,b){var o=this,h=Ext.create("Ext.Component",{itemId:"notifyPopup",shadow:false,cls:"a3-notify",style:{position:"absolute"},maxWidth:g.getWidth()/100*80,html:'<a href="#" class="close icon-close a3-icon"></a>'+q,listeners:{delegate:"a.close",element:"el",click:function(A){A.preventDefault();h.destroy();g.unmask()}}}),z={};function w(){h.destroy();g.unmask();g.un("beforehide",w,o)}g.on("beforehide",w,o);if(b){h.addCls(b)}g.mask();h.floating=true;h.style={opacity:0},h.showBy(g,"c-c");z["100"]={opacity:1};h.animate({duration:200,keyframes:z})},showNotifyError:function(b,g,h){this.showNotify(b,g,h||3000,"a3-failed")},showNotifyWarning:function(b,g,h){this.showNotify(b,g,h||3000,"a3-warning")},showNotifySuccess:function(b,g,h){this.showNotify(b,g,h||2000,"a3-success")},showPermWarning:function(b,g){return this.showNotify(b,g,false,"a3-warning")},showPermError:function(b,g){return this.showNotify(b,g,false,"a3-failed")},showNotifyClosableWarning:function(b,g){return this.showClosableNotify(b,g,"a3-warning")},showNotifyClosableSuccess:function(b,g){return this.showClosableNotify(b,g,"a3-success")},showNotifyClosableError:function(b,g){return this.showClosableNotify(b,g,"a3-failed")}});Ext.define("Adaptive.form.mixins.Generator",{mixins:{date:Adaptive.utils.Date,notify:Adaptive.mixins.Notify},config:{lang:null,fieldLang:null,isDisplayForm:false,showEditButton:false},getFormString:function(b,h){var g=this;return(g.fieldLang&&g.fieldLang.getString(b,true))||(g.lang&&g.lang.getString(b,true))||(h?false:b)},mask:function(g){var b=this;b.formPanel.setLoading({msg:g||b.getFormString("loading")})},unmask:function(){this.formPanel.setLoading(false)},createForm:function(b){var g=this;if(!b){b={}}var o={layout:"form",autoScroll:true,cls:"a3-form "+(g.isDisplayForm?"a3-presentation-form":"a3-edit-form")+(b.noScroll?" a3-form-noscroll":""),trackResetOnLoad:true,defaultType:g.isDisplayForm?"displayfield":"textfield"};o.buttons=(b.buttons&&b.buttons.length)?b.buttons:[];if(!g.isDisplayForm){if(g.showAddNewBtn){o.buttons.push(Ext.apply({xtype:"button",cls:"a3-cancel-btn a3-left",hidden:g.isDisplayForm,text:g.getFormString("btnAddNew"),tooltip:g.getFormString("btnAddNew_tooltip",true)||null,tooltipType:"title",parentScope:g,itemId:"btnAddNew",listeners:{scope:g,click:g.onAddNew}},b.addNewBtnConfig||{}))}if(b.warnBtnConfig!==false){o.buttons.push(Ext.apply({xtype:"button",maxWidth:32,itemId:"btnWarn",cls:"a3-warning-btn",hidden:true,listeners:{scope:g,click:function(q){var w=g.formPanel.getForm().isValid();g.markInvalidFieldSets();if(w){g.onValidityChange(g.formPanel.getForm(),w)}}}},b.warnBtnConfig||{}))}if(b.saveBtnConfig!==false){o.buttons.push(Ext.apply({xtype:"button",cls:"a3-save-btn a3-submit-btn",text:g.getFormString("btnSave"),itemId:"btnSave",tooltip:g.getFormString("btnSave_tooltip",true)||null,tooltipType:"title",disabled:true,parentScope:g,listeners:{scope:g,click:g.onSave}},b.saveBtnConfig||{}))}}else{o.buttons.push({itemId:"historyWarn",xtype:"tbtext",text:g.getFormString("historicalObject"),cls:"a3-warning-label kv-history-label",hidden:true},{xtype:"tbfill"});if(g.showEditButton&&b.editBtnConfig!==false){o.buttons.push(Ext.apply({xtype:"button",cls:"a3-edit-btn a3-submit-btn",text:g.getFormString("btnEdit"),itemId:"btnEdit",tooltip:g.getFormString("btnEdit_tooltip",true)||null,tooltipType:"title",parentScope:g,listeners:{scope:g,click:function(q){g.fireEvent("editForm",g)}}},b.editBtnConfig||{}))}}if(b.tbItems){o.dockedItems=[{xtype:"container",dock:"top",cls:"a3-toolbar",layout:"column",items:b.tbItems}]}if(b.cancelBtnConfig!==false){var h=Ext.apply({xtype:"button",cls:"a3-cancel-btn",text:g.isDisplayForm?g.getFormString("btnReturn"):g.getFormString("btnCancel"),tooltip:g.getFormString("btnCancel_tooltip",true)||null,tooltipType:"title",parentScope:g,itemId:"btnCancel",listeners:{scope:g,click:g.onCancel}},b.cancelBtnConfig||{});if(b.cancelBtnConfig&&b.cancelBtnConfig.leftAlign){h.cls+=" a3-left";o.buttons.unshift(h)}else{o.buttons.push(h)}}Ext.apply(o,b);if(o.buttonsInline){o.cls+=" a3-form-inline";o.buttons.unshift({xtype:"box",flex:1});o.items.push(Ext.create("Ext.container.Container",{layout:"hbox",cls:"a3-inline-buttons",items:o.buttons}));delete o.buttons}g.formPanel=Ext.create("Adaptive.form.Panel",o);g.formPanel.add({xtype:"component",itemId:"notifyPopup",floating:true,shadow:false,style:{opacity:0}
1,cls:"a3-notify a3-success"});g.formPanel.addListener("validitychange",g.onValidityChange,g);g.processForm();setTimeout(function(){g.onDataChanged()},100);return g.formPanel},resetToolbar:function(){},getForm:function(){var b=this;if(b.formPanel&&b.formPanel.getForm){return b.formPanel.getForm()}return null},setHistoryWarning:function(o){var h=this,b=h.getDockedItem("#historyWarn"),g=h.formPanel.down("#btnEdit");if(b){b.setVisible(o)}if(g){g.setVisible(!o)}},setVisibilityAllItems:function(b,o){var h=this;if(!b){b=h.formPanel.items.items}var g=h._getAllItemsInner(b);Ext.Array.forEach(g,function(q){q.setVisible(o)})},_getAllItemsInner:function(h){var g=this,b=[];Ext.Array.forEach(h,function(o){if(!(o instanceof Ext.form.Panel)){b.push(o);if(o instanceof Ext.form.FieldSet||o instanceof Ext.form.FieldContainer||((o instanceof Ext.tab.Panel||o instanceof Ext.panel.Panel)&&o.hasOwnProperty("langContainer"))){b=b.concat(g._getAllItemsInner(o.items.items))}}});return b},getAllItems:function(){return this._getAllItemsInner(this.formPanel.items.items)},getItems:function(b){var h=this,g=[];if(!b){b=h.formPanel.items.items}Ext.Array.forEach(b,function(q){var o={};Ext.apply(o,q);if(q instanceof Ext.form.FieldSet||q instanceof Ext.form.FieldContainer||(q.up("fieldset")&&q.items)){o.items=h.getItems(q.items.items)}g.push(o)});return g},getItem:function(h){var g=this.getAllItems(),b=null;Ext.each(g,function(o){if(o.dataIndex==h){b=o}});return b},queryDockedItems:function(b,q){var o=this,w=o.formPanel.getDockedItems(null,q)||[],h=0,g=[];for(;h<w.length;++h){g=g.concat(w[h].query(b))}return g},getDockedItem:function(b,q){var o=this,w=o.formPanel.getDockedItems(null,q)||[],g=0,h=null;for(;g<w.length;++g){h=w[g].down(b);if(h){break}}if(o.formPanel.buttonsInline&&!h){h=o.formPanel.down(b)}return h},addHelpText:function(b){var g=this;b.mon(b,"afterrender",function(){var o,w,q;if(this instanceof Ext.form.FieldSet){o=this.getEl().down("legend").down("span");q=true}else{if(this.xtype=="checkbox"){o=this.getEl().down("label.x-form-cb-label")}else{o=this.getEl().down("label")}}if(this.cls&&(this.cls.indexOf("a3-step")>-1||this.cls.indexOf("a3-info")>-1)){o=this.getEl();w="padding:1px;top:0px;position:inherit;right:0px;margin-bottom:0px;margin-right:0px;float:right;vertical-align:middle; cursor:"+(b.helpTextCursor||"default")}if(o&&(q||!this.getEl().down(".a3-helpText"))){var h=o.createChild({tag:"img",cls:"a3-helpText",src:"resx/icons/client/help.png",style:w||("margin-bottom: 0; margin-left: 5px; margin-right: 5px; padding: 0; float: right; vertical-align:middle; cursor:"+(b.helpTextCursor||"default"))});h.addListener("click",function(z){z.preventDefault();g.onHelpTextClick(this)},this);Ext.QuickTips.register({target:h,title:"",text:this.helpText,enabled:true,dismissDelay:0,hideDelay:1500})}})},onHelpTextClick:function(b){},processForm:function(){var q=this;q.fields={};q.fieldSets=[];if(q.formPanel.items){var w=[],A=[],z=[],o=q.getAllItems(),g=[];Ext.Array.forEach(o,function(C,B,F){if(C.dataIndex){q.fields[C.dataIndex]=C}if(C.helpText){q.addHelpText(C)}if(C instanceof Ext.form.field.ComboBox){if(C.disabled){C.x_disabled=true}}else{if(C instanceof Ext.form.FieldSet||C instanceof Ext.form.FieldContainer){q.fieldSets.push(C);Ext.each(C.items.items,function(G){G.parent=C})}else{if(C instanceof Adaptive.form.field.PointPicker&&C.hideOnPick){C.mon(C,"pickstarted",function(){q.hide()});C.mon(C,"pickended",function(){q.show()})}}}if(C.dependency){var E=C.dependency.field,D=C.dependency.value;if(Object.prototype.toString.call(E)!=="[object Array]"){E=[E]}if(typeof D==="undefined"){D=[true]}else{if(Object.prototype.toString.call(D)!=="[object Array]"){D=[D]}}w=w.concat(E);C.dependency.field=E;C.dependency.value=D}if(C.parentFilter){g=g.concat([C.parentFilter.field])}if(C.required){A.push(C)}if(C instanceof Ext.form.field.Number){if(C.lessThan||C.greaterThan){z.push(C)}}});q.formHasDependencies=(w.length>0);q.formHasParentFields=(g.length>0);w=w.concat(g);if(w.length>0){Ext.Array.forEach(Ext.Array.unique(w),function(B){var C=q.fields[B];if(C){C.mon(C,"change",q.onDataChanged,q)}})}if(z.length>0){function b(D,B,C){return function(E){if(D.getRawValue()&&B.getRawValue()&&D.getValue()>B.getValue()){return q.getFormString(D.dataIndex+"_range_error",true)}if(C){return C.call(this,E)}return true}}function h(D,B,C){return function(E){if(D.getRawValue()&&B.getRawValue()&&D.getValue()<B.getValue()){return q.getFormString(D.dataIndex+"_range_error",true)}if(C){return C.call(this,E)}return true}}z.forEach(function(C){if(C.lessThan){var B=q.fields[C.lessThan];if(B&&B instanceof Ext.form.field.Number){B.mon(B,"change",function(){this.validate()},C);C.validator=b(C,B,C.validator)}}if(C.greaterThan){var B=q.fields[C.greaterThan];if(B&&B instanceof Ext.form.field.Number){B.mon(B,"change",function(){this.validate()},C);C.validator=h(C,B,C.validator)}}})}if(A.length>0){A.forEach(function(B){if(w.indexOf(B.dataIndex)==-1){B.mon(B,"change",q.updateWarning,q)}})}}},createButton:function(g,h,b){var o=this;if(Ext.isObject(h)){b=h;h=false}b=b||{};if(h){b.cls=(b.cls||"")+" a3-submit-btn"}return Ext.apply({xtype:"button",text:o.getFormString(g),tooltip:o.getFormString(g+"_tooltip",true)||null,tooltipType:"title",parentScope:o,itemId:g},b)},createSet:function(h,g,b){var o=this,q;if(Ext.isArray(g)){b=g;g={}}var w=false;if(g.collapsible!==false||g.wrapper){w=b.some(function(z){return z.required});(g.listeners=g.listeners||{}).expand=Ext.bind(o.scrollElementIntoView,o)}q={xtype:"fieldset",itemId:h,dataIndex:h,title:(g.title||o.getFormString(h))+(w?' <span class="'+(o.isDisplayForm?"a3-asterisk-soft":"a3-asterisk")+'">*</span>':""),collapsible:g.collapsible==null?true:g.collapsible,collapsed:g.collapsed==null?true:g.collapsed,defaultType:o.isDisplayForm?"displayfield":"textfield",layout:"form",items:b,helpText:o.getFormString(h+"_help",true)};if(g.title){delete g.title}if(!q.collapsible){q.collapsed=false}Ext.apply(q,g);return q},createFc:function(h,q,g,b){if(Ext.isArray(g)){b=g;g={}}var o=this;return Ext.apply({xtype:"fieldcontainer",layout:{type:"hbox",align:"stretch"},dataIndex:h,defaultType:o.isDisplayForm?"displayfield":"textfield",defaults:{flex:1},fieldLabel:Ext.isBoolean(q)?(q?o.getFormString(h):""):q,labelAlign:"top",items:b},g)},createField:function(h,g){var q=this;var w={dataIndex:h,name:h,fieldLabel:q.getFormString(h),emptyText:q.getFormString(h+"_emptyText",true)||null,labelAlign:"top",rawxtype:(g&&g.xtype)||"textfield",allowBlank:(!g||!g.required),allowOnlyWhitespace:(!g||!g.required),helpText:q.getFormString(h+"_help",true)};if(g){if(g.dependency){w.hidden=true}if(g.required){w.labelSeparator=(w.labelSeparator?w.labelSeparator:"")+' <sp
1an class="'+(q.isDisplayForm?"a3-asterisk-soft":"a3-asterisk")+'">*</span>'}if(g.hintOnly){if(!w.emptyText&&w.fieldLabel){w.emptyText=w.fieldLabel}w.errorLabel=w.fieldLabel;delete w.fieldLabel}if(g.xtype){switch(g.xtype){case"combobox":case"combo":if(g.codelist){var z=g.codelist,b="key",o="value";if(Ext.isObject(g.codelist)){z=g.codelist.name;b=g.codelist.valueField;o=g.codelist.displayField}w.store=q.getDictionaryStore(z);if(z=="Municipality"){b="value";o="text"}w.valueField=b;w.displayField=o;w.queryMode="local"}else{if(g.store){w.valueField="key";w.displayField="value"}}if(!w.emptyText){w.emptyText=q.getFormString("empty_list",true)}w.submitEmptyText=false;w.forceSelection=true;if(q.isDisplayForm){w.disabled=true}else{if(g.required){w.validator=function(A){return(A==null||A==""||A==w.emptyText)?q.getFormString("empty_required",true)||true:true}}else{q.addClearTrigger(w,g)}}break;case"dt_dictionary":if(q.isDisplayForm){w.readOnly=true}else{if(w.allowBlank){q.addClearTrigger(w,g)}}w.forceSelection=(g&&g.required);break;case"radiofield":case"radio":case"checkboxfield":case"checkbox":w.boxLabel=w.fieldLabel;delete w.fieldLabel;if(q.isDisplayForm){g.xtype="displayfield";w.cls="a3-boolean";w.renderer=function(A){return w.boxLabel+": <span>"+(A?q.getFormString("yes"):q.getFormString("no"))+"</span>"}}else{w.inputValue="true";w.uncheckedValue="false"}break;case"a3-numberfield":case"numberfield":w.mouseWheelEnabled=false;if(q.isDisplayForm){w.disabled=true}break;case"datefield":w.format=q.getFormString("date_format",true)||(q.formatDate&&q.formatDate.getString("date_format",true))||"Y-m-d";if(q.isDisplayForm){w.disabled=true}break;case"timefield":w.format=q.getFormString("time_format",true)||(q.formatDate&&q.formatDate.getString("time_format",true))||"g:i A";if(q.isDisplayForm){w.disabled=true}break;case"textarea":w.rows=3;w.cls="a3-textarea";case"textfield":if(q.isDisplayForm){g.xtype="displayfield"}break;case"pointpicker":case"linepicker":case"polygonpicker":case"parentfield":w.hintPrefix=w.fieldLabel;break;case"richeditor":if(q.isDisplayForm){w.disabled=true}break;default:break}}Ext.apply(w,g)}return w},addClearTrigger:function(g,b){if(b.addClearTrigger===false){return}g.trigger1Cls="x-form-clear-trigger";g.onTrigger1Click=function(){this.clearValue()};g.trigger2Cls="x-form-arrow-trigger"},createTextBox:function(g,h,b){var o=this;if(Ext.isObject(h)){b=h;h="info"}b=b||{};switch(h){case"failed":case"success":case"info":case"warning":case"step1":case"step2":case"step3":case"step4":case"step5":case"step6":case"step7":case"step8":case"step9":break;default:h="info";break}if(h.indexOf("step")==0){h+=" a3-step"}return Ext.create("Ext.Component",Ext.apply({itemId:g,cls:"a3-box a3-"+h+(b.noIcon?" a3-noicon":""),helpText:o.getFormString(g+"_help",true),html:o.getFormString(g,true)},b))},createText:function(g,h,b){var o=this;if(Ext.isObject(h)){b=h;h="info"}switch(h){case"failed":case"success":case"info":case"warning":break;default:h="info";break}return Ext.create("Ext.Component",Ext.apply({itemId:g,cls:"a3-text a3-"+h,html:o.getFormString(g,true)},b))},createLinkBtn:function(g,b){var h=this;return Ext.apply({xtype:"button",cls:"a3-link-btn"+(b&&b.backBtn?" a3-back-btn":""),itemId:g,text:h.getFormString(g),tooltip:h.getFormString(g+"_tooltip",true),tooltipType:"title"},b)},createWrappedField:function(g,b,q){var o=this,h={collapsed:false,collapsible:!!q,printWrapper:true,wrapper:true};if(b){if(b.dependency){h.dependency=b.dependency;delete b.dependency}}else{b={}}if(b.fieldLabel){h.title=b.fieldLabel}b.fieldLabel=null;return o.createSet(g,h,[o.createField(g,b)])},createColorField:function(g,b){return this.createField(g,Ext.apply({xtype:"a3-colorfield"},b))},createDateField:function(D,A,h){if(Ext.isObject(A)){h=A;A=false}if(!h){h={}}var w=this,o={xtype:"datefield",width:140,fieldLabel:w.getFormString(D),emptyText:w.getFormString("empty_date",true)},z={xtype:"timefield",width:100,fieldLabel:null,emptyText:w.getFormString("empty_time",true)},b=h.validator,C={layout:"column",cls:"a3-dateset",collapsible:false,collapsed:false,itemId:D+"_set"};Ext.apply(o,h);if(h.afterDate){var g=function(){try{var F=w.fixDateTimeValue(w.getItem(D).getValue(),h.afterTime&&A?w.getItem(A).getValue():false),G=w.fixDateTimeValue(w.getItem(h.afterDate).getValue(),h.afterTime&&A?w.getItem(h.afterTime).getValue():false);
1if(!F||!G){return true}if(F>=G){return true}return w.getFormString(D+"_range_error",true)}catch(E){return true}},q=true,B=o.listeners&&o.listeners.boxready;(o.listeners=o.listeners||{}).boxready=function(){var F=w.getItem(h.afterDate),E=h.afterTime&&A&&w.getItem(h.afterTime);if(F){F.mon(F,"change",function(){w.getItem(D).validate()})}if(E){E.mon(E,"change",function(){w.getItem(D).validate()})}if(B){B()}};o.validator=function(G){if(A&&q){q=false;w.getItem(A).validate();q=true}if(b){var F=w.fixDateTimeValue(w.getItem(D).getValue(),h.afterTime&&A?w.getItem(A).getValue():false),E=b.call(this,F);if(E!==true){return E}}return g()};z.validator=function(){if(q){q=false;w.getItem(D).validate();q=true}return g()}}else{if(!h.required){z.isValid=function(){return true}}}if(!A){(w.dateFields||(w.dateFields=[])).push(D);return w.createField(D,o)}o.fieldLabel=null;Ext.apply(z,h);Ext.apply(C,h);if(h.dependency){delete o.dependency;delete z.dependency}if(h.required){delete z.required}if(!w.dateTimeMappings){w.dateTimeMappings={}}w.dateTimeMappings[D]=A;return w.createSet(D,C,[w.createField(D,o),w.createField(A,z)])},createGeometryField:function(g,b){var h=this;b=b||{};return h.createSet(g+"_set",{printIgnore:true,title:h.getFormString(g)},[h.createField(g,Ext.apply({xtype:"textfield",fieldLabel:null,renderer:function(q){if(!q){return"-"}var o=q.split(";");return'<div style="font-size: 75%; width: 245px; overflow: hidden; color: #333;"><span style="display: block; color: #999;">'+o[0]+"</span>"+o[1]+"</div>"}},b))])},scrollElementIntoView:function(b){if(b&&b.getEl&&this.formPanel&&this.formPanel.body){b.getEl().scrollIntoView(this.formPanel.body)}},fixDateTimeValues:function(b){var g=this;Ext.Array.each(g.dateFields,function(h){if(b[h]){b[h]=g.fixDateTimeValue(b[h])}});Ext.Object.each(g.dateTimeMappings,function(h,o){if(b[h]){b[h]=g.fixDateTimeValue(b[h],b[o])}});return b},getUpdatedRecord:function(){var q=this,g=q.getForm().getRecord(),w=q.getRawData(),z={},o=0,h,b=g.fields.items;for(;o<b.length;++o){h=b[o].name;if(w.hasOwnProperty(h)){z[h]=w[h]}}q.fixDateTimeValues(z);g.beginEdit();g.set(z);g.endEdit();return g},remapValues:function(g,b){Ext.Array.each(b,function(A){if(A.mapping){var z=A.mapping.split("."),q=z.pop(),h=A.name;if(g.hasOwnProperty(h)){var o=g;while(z.length>0){var w=z.shift();if(!o[w]){o[w]={}}o=o[w]}o[q]=g[h];delete g[h]}}});return g},getRawData:function(){var o=this,h=o.getForm();if(!h.isValid()){return null}var g=h.getRecord();var b=h.getFieldValues();var q;if(g){q=Ext.Object.merge(g.data,b)}else{q=b}return q},getData:function(){var b=this,g=b.getRawData();if(!g){return null}g=b.fixDateTimeValues(g);return g},findInvalid:function(){var b=this.getAllItems(),g=[];Ext.Array.each(b,function(h){if(!(h instanceof Ext.form.FieldSet)&&h.isValid){var o=!Ext.isEmpty(h.getActiveErrors());if(!h.isValid()){g.push(h);if(!o){h.clearInvalid()}}}});return g},markInvalidFieldSets:function(){var b=this;Ext.Array.each(b.fieldSets,function(o){var g=b._getAllItemsInner(o.items.items),h=false;Ext.Array.each(g,function(q){if(q.isValid&&!q.isValid()){h=true}});if(h){o.addCls("x-form-invalid")}})},clearInvalid:function(){var b=this;Ext.Array.each(b.fieldSets,function(g){g.removeCls("x-form-invalid")});b.formPanel&&b.formPanel.getForm().clearInvalid()},resetForm:function(){var b=this;b.formPanel.getForm().reset()},showFormError:function(g){var b=this;b.mixins.notify.showNotifyError(b.formPanel,g)},showFormWarning:function(g){var b=this;b.mixins.notify.showNotifyWarning(b.formPanel,g)},showFormSuccess:function(g){var b=this;b.mixins.notify.showNotifySuccess(b.formPanel,g)},showFormSave:function(){var b=this;b.mixins.notify.showNotifySuccess(b.formPanel,b.getFormString("notifySaved"))},_createWarningString:function(){var g=this,b=g.findInvalid(),h="<b>"+g.getFormString("invalid_fields")+"</b><br>";Ext.Array.each(b,function(z){var q=(z.fieldLabel||z.boxLabel||z.title||z.errorLabel),w=z.parent&&z.parent.title;if(w){var o=w.indexOf("<");h+=(o!=-1?w.substring(0,o):w)}if(w&&q){h+=" - "}if(q){h+=q}if(w||q){h+="<br>"}});return h},updateWarning:function(){var g=this,o=g.getDockedItem("#btnWarn",false);
1if(o){var b=g.findInvalid(),h=g._createWarningString();o.setTooltip(h)}},onValidityChange:function(o,h){var g=this,b=g.getDockedItem("#btnSave",false),q=g.getDockedItem("#btnWarn",false);if(h){g.clearInvalid();if(q){q.hide()}if(b){b.enable()}}else{if(q){g.updateWarning();q.show()}if(b){b.disable()}g.clearInvalid()}},onDataChanged:function(){var h=this;if(h.formPanel&&h.formPanel.items){if(h.formHasDependencies||h.formHasParentFields){var g=h.getAllItems(),b=h.formPanel.getRecord();Ext.Array.forEach(g,function(z){if(z.dependency){var C=z.dependency.field,D=z.dependency.value,E=false;Ext.Array.forEach(C,function(G){if(E){return}var I=h.fields[G];if(I){if((I instanceof Ext.form.field.Checkbox&&I.checked)||(I.rawxtype=="checkbox"&&I.value)||(I instanceof Ext.form.field.Radio&&I.getValue())){E=!!D[0]}else{if(D[0]===true&&I.getValue){var H=I.getValue();if(typeof H==="boolean"){E=H}else{E=H!==""&&H!==null&&H!==undefined}}else{if(I instanceof Ext.form.field.ComboBox||I instanceof Client.module.tool.digiTheme.ux.AclEditor){if(Array.isArray(I.getValue())){I.getValue().forEach(function(J){if(Ext.Array.contains(D,J)){E=true}})}else{if(Ext.Array.contains(D,I.value)){E=true}}}else{if(I.getValue){if(Ext.Array.contains(D,I.getValue())){E=true}}}}}}else{I=b&&b.data[G];if(I&&Ext.Array.contains(D,I)){E=true}}});z.dependencyHidden=!E;if(E){z.show();if(z instanceof Ext.form.ComboBox){if(z.validator&&!z.x_disabled){z.enable()}}else{z.allowBlank=!z.required;if(z.required&&z.getValue&&!z.getValue()){z.wasValid=false}}}else{z.hide();if(z instanceof Ext.form.ComboBox&&z.validator){z.disable()}z.allowBlank=true}}else{if(z instanceof Ext.form.ComboBox){if(z.validator&&!z.x_disabled){z.enable()}}else{z.allowBlank=!z.required}}z.onFormDataChanged&&z.onFormDataChanged();if(z.parentFilter){var B=h.fields[z.parentFilter.field],q=Ext.Array.from(z.getValue()),F;if(B){F=B.getValue()}else{F=b&&b.get(z.parentFilter.field)}if(!F){if(z.currentParentFilter){z.store.clearFilter();z.currentParentFilter=null}return}else{F=Ext.Array.from(F);var w=Ext.Array.from(z.currentParentFilter);var o=(F.some(function(G){return !w.includes(G)})||w.some(function(G){return !F.includes(G)}));if(o){z.currentParentFilter=F;z.store.clearFilter();if(F.length>0){z.store.filter([{filterFn:function(G){var H=Ext.Array.from(G.get(z.parentFilter.filterColumn));return H.some(function(I){return F.some(function(J){return J==I})})}}])}}function A(){var G=q.filter(function(H){return z.store.findExact(z.valueField,H)!==-1});z.setValue(G)}if(q.length>0){if(z.store.isLoaded){A()}else{z.store.on("load",A,this,{single:true})}}}}});Ext.Array.each(h.fieldSets,function(A){if(A.dependency){var o=A.isVisible(),q=A.items.items;for(var w=0;w<q.length;++w){var z=q[w];if(!o){if(z instanceof Ext.form.FieldSet||z instanceof Ext.form.FieldContainer){q=q.concat(z.items.items)}else{if(z.required){if(z instanceof Ext.form.ComboBox){z.disable()}else{z.allowBlank=true}}}}z.dependencyHidden=!o}}else{if(!A.disableAutoShow){var q=A.items.items,o=q.some(function(B){return !B.hidden});A.setVisible(o)}}})}h.clearInvalid();h.formPanel.getForm().checkValidity();h.updateWarning()}},onSave:function(b){},onCancel:function(b){},onAddNew:function(b){}});Ext.define("Client.module.map.layerManager.mixins.LayerManagerTree",{require:["GeoMind.desktop.tree.Standard","Adaptive.ux.Icons","Client.module.map.layerManager.lang.LayerManagerTree","Client.module.map.utils.LayerRefresher"],getString:function(g){var b=this;if(!b.treeLang){b.treeLang=GeoMind.lang.Lang.registerTranslations("Client.module.map.layerManager.lang.LayerManagerTree")}return b.treeLang.getString(g)},onBeforeShowCustomFilter:function(h,g,z,w,A){var q=this,o=g.getStore().getAt(z),b=o.get("recordData");if(h.callback){h.callback(b,A)}if(o.isRadio){q.onCheckChangeRadio(o)}if(o.isSpatial&&!o.get("checked")){o.set("checked",true);q._treeView.checkChange(o,true);q.fireUpdateMapState()}},closePopup:function(h,q){var w=this,o=q.getBoundingClientRect(),g=w.popup.getEl().dom.getBoundingClientRect(),b=!(o.right<g.left||o.left>g.right||o.bottom<g.top||o.top>g.bottom);if(q.className&&q.className.indexOf&&q.className.indexOf("x-boundlist-item")>-1){return}if(!b){w.popup.destroy()}},_getShowDataType:function(h){if(h.childNodes.length==0){var g=h.get("recordData"),o=g&&Adaptive.utils.Config.getThemeData(g),b=!Adaptive.utils.Config.getBooleanConfig(o,"dataview_disabled",fal
1se);if(b&&o&&o.columns&&o.columns.length>0){if(o.editable&&(o.permissions.write||o.permissions.project_write)){return 2}return 1}}return false},hasAutoRefreshChildren:function(o,h){var g=this,b=false;if(h&&o.childNodes.length){return false}o.childNodes.forEach(function(q){if(g._isAutoRefreshLayer(q)){b=true}});return b},allChildrenAutoRefreshing:function(o){var h=this,q=0,b=0,g=true;o.childNodes.forEach(function(w){if(h._isAutoRefreshLayer(w)){++q}if(h._isAutoRefreshing(w)){++b}if(w.childNodes.length){g=h.allChildrenAutoRefreshing(w)}});return q==b&&g},_isAutoRefreshLayer:function(g){var b=g.get("recordData"),h=b&&Adaptive.utils.Config.getThemeData(b);return h&&h.data&&h.data.auto_refresh},_isAutoRefreshing:function(h){var b=h.get("recordData"),g=b&&b.get("olLayer");return !!g&&Client.module.map.utils.LayerRefresher.isLayerRefreshing(g)},createTree:function(w,z){var q=this,h=q.getString("not_in_scale_info"),g=q.getString("not_spatial_info"),b=q.disableDD?[{ptype:"dvp_nodehidden"}]:[{ptype:"dvp_nodehidden"},{ptype:"TreeViewDragDrop"}];var o=Ext.create("Ext.tree.Column",{flex:1,sortable:false,dataIndex:"name",cellTpl:['<div style="line-height: 18px;'+(z?"width:31px;":"")+'">','<tpl for="lines">','<img src="{parent.blankUrl}" class="{parent.childCls} {parent.elbowCls}-img ','{parent.elbowCls}-<tpl if=".">line<tpl else>empty</tpl>" role="presentation"/>',"</tpl>",'<img src="{blankUrl}" class="{childCls} {elbowCls}-img {elbowCls}','<tpl if="isLast">-end</tpl><tpl if="expandable">-plus {expanderCls}</tpl>" role="presentation"/>','<tpl if="this.showRemove()">','<a class="a3-remove a3-category_mgr_icon_size a3-category-remove-icon"" data-qtip="'+q.getString("removeLayer")+'"></a>',"</tpl>",'<tpl if="this.showCheckbox(checked, record)">',"<button {ariaCellCheckboxAttr}",' class="{childCls} {checkboxCls}<tpl if="checked"> {checkboxCls}-checked</tpl>"></button>',"</tpl>",'<tpl if="this.showRadio(checked, record)">',"<button {ariaCellCheckboxAttr}",' class="{childCls} {checkboxCls} radio<tpl if="checked"> checked</tpl>"></button>',"</tpl>",'<img src="{blankUrl}" role="presentation" class="{childCls} {baseIconCls} ','{baseIconCls}-<tpl if="leaf">leaf<tpl else>parent</tpl> {iconCls}"','<tpl if="icon">style="background-image:url({icon})"</tpl>/>',"</div>",'<tpl if="href">','<a href="{href}" role="link" target="{hrefTarget}" class="{textCls} {childCls}">{value}</a>',"<tpl else>",'<span class="{textCls} {childCls}">{value}</span>',"</tpl>",{getCatUuid:function(A){return A.get("recordData").get("catUuid")},showCheckbox:function(C,A){var B=A.get("recordData");return C!==null&&(!q.disableCheckboxes&&(q.categoryCheckboxes||A.data.type!="layergroup")&&!B.get("group_layers"))},showRadio:function(C,A){var B=A.get("recordData");return !w&&B&&B.get("group_layers")},showRemove:function(){return q.enableRemovableLayer}}],renderer:function(L,I,C,A,E,M,J){var F=C.get("recordData"),K=L,O=true,H;C.isSpatial=true;if(F){K=F.get("name");H=F.$className=="GeoMind.data.model.LayerGroup";K='<span class="a3-category_mgr_label-txt'+(C.parentNode.isRoot()?" root":"")+'" '+(K.length>40?'data-qtip="'+K+'"':"")+((H&&q.categoryPageHidden&&F.get("description"))?' title="'+F.get("description")+'"':"")+"> "+K+"</span > ";C.isRadio=!w&&F.get("group_layers");if(F.getLabelHtml){K+=F.getLabelHtml()}else{var N=F.get("olLayer");if(N){O=N.calculateInRange()}if(F.$className=="GeoMind.data.model.Layer"&&!F.isSpatial){K+=' <span class="icon-warning icon-color-warning a3-small-icon" data-qtip="'+g+'"></span>';C.isSpatial=false;I.tdCls+=" a3-no-geom"}if(!O){K+=' <span class="icon-warning icon-color-warning a3-small-icon" data-qtip="'+h+'"></span>'}if(F.get("is_failing")){K+=' <span class="icon-warning icon-color-error a3-small-icon" data-qtip="'+q.getString("is_failing")+'"></span>'}q.reportEvent("getLayerManagerFilter",C,function(P){if(P.className=="a3-dimension-filter-active"){q.addFilter(C,P);K+='<a class="'+P.className+' a3-layer-manager-btn" data-qtip="'+P.qtip+'">'+Adaptive.ux.Icons.filtered+"</a>"}});q.reportEvent("getLayerManagerTimeSlider",C,function(P){if(P.className=="a3-timeslider"){q.addTimeslider(C,P);K+='<a class="'+P.className+' a3-layer-manager-btn" data-qtip="'+P.qtip+'">'+P.icon+"</a>"}});if(!H){K+='<a class="a3-layer-manager-btn a3-layer-submenu" data-qtip="'+q.getString("action_menu_qtip")+'">'+Adaptive.ux.Icons.threeDots+"</a>"}var B=q._isAutoRefreshLayer(C),G=q.hasAutoRefreshChildren(C,w);if(B||G){var D=q._isAutoRefreshing(C);if(G){D=q.allChildrenAutoRefreshing(C);C.isAutoRefreshing=D}K+='<a class="a3-layer-manager-btn a3-data-refresh '+(D?"a3-data-refresh-active ":"")+'" data-qtip="'+(D?q.getString("deactivate_auto_refresh"):q.getString("activate_auto_refresh"))+'">'+Adaptive.ux.Icons.refresh+"</a>"}if(H&&(F.get("description")!=null&&!q.categoryPageHidden)){K+='<a class="a3-layer-manager-btn a3-metadata" data-qtip="'+q.getString(C.childNodes.length>0?"showMetadataCategory":"showMetadata")+'">'+Adaptive.ux.Icons.info+"</a>"}}}return'<div class="a3-category_mgr_label">'+K+"</div>"},showTooltip:true});q._treeView=Ext.create("GeoMind.desktop.tree.Standard",{store:q.treeStore,viewConfig:{cls:"a3-category_mgr_tree",border:false,hideHeaders:true,rootVisible:false,useArrows:true,viewConfig:{plugins:b},listeners:{itemClick:function(A,D,J,I,E){function H(L){var K=L.target;if(K.tagName.toUpperCase()=="INPUT"||K.tagName.toUpperCase()=="BUTTON"){return K}while(K&&K.tagName.toUpperCase()!=="A"){K=K.parentElement}return K}var F=H(E),G=F?F.className:"",C=G.split(" "),B=D.get("recordData");if(!F&&D.data.type=="layergroup"){Ext.get(J).el.down("img.x-tree-expander").dom.click()}if(G&&G.indexOf("x-tree-checkbox radio")>
1-1){q.onCheckChangeRadio(D)}if(B&&B.clickHandle){B.clickHandle(G)}else{if(C.indexOf("a3-layer-submenu")!==-1){q.onShowSubMenu(A,D,I,J,E)}else{if(C.indexOf("a3-data-refresh")!==-1){q.onToggleAutoRefresh(A,I)}else{if(C.indexOf("a3-metadata")!==-1){q.onShowMetadata(A,I,null,J,E,D,E.getTarget(),"beforeShowMetadata")}else{if(C.indexOf("a3-remove")!==-1){q.onRemove(A,I)}else{if(D.filters){Ext.iterate(D.filters,function(K,L){if(C.indexOf(K)!==-1){q.onBeforeShowCustomFilter(L,A,I,J,function(){q.onShowMetadata(A,I,null,J,E,D,E.getTarget(),"beforeShowCustomFilter")})}})}if(D.timesliders){Ext.iterate(D.timesliders,function(K,L){if(C.indexOf(K)!==-1){q.onBeforeShowCustomFilter(L,A,I,J,function(){q.onShowMetadata(A,I,null,J,E,D,E.getTarget(),"beforeShowCustomFilter")})}})}}}}}}}},columns:[o]}});return q._treeView},onShowConfig:function(B,A,b,w,o,h,g,z){var q=this;q.reportEvent(z,{tree:B,row:A,record:h,td:g})},onShowMetadata:function(B,A,b,w,o,h,g,z){var q=this;q.reportEvent(z,{tree:B,row:A,record:h,td:g})},addFilter:function(h,b){var g=this;h.filters=h.filters||{};h.filters[b.className]=b},addTimeslider:function(g,h){var b=this;g.timesliders=g.timesliders||{};g.timesliders[h.className]=h},addAction:function(g,h){var b=this;g.actions=g.actions||{};g.actions[h.className]=h},destroyPopup:function(){var b=this;b.actionMenu&&b.actionMenu.destroy();delete b.actionMenu;Ext.getBody().un("click",b.onBodyClick,b,{single:true})},onShowSubMenu:function(b,o,B,C,q){var z=this,w=[];if(z.actionMenu){z.destroyPopup()}else{var A=75;z.reportEvent("getLayerManagerFilter",o,function(D){z.addFilter(o,D);w.push({text:'<a class="'+D.className+' a3-layer-manager-btn a3-layermanager-menu-popup-item-a" data-qtip="'+D.qtip+'">'+(D.className=="a3-dimension-filter-active"?Adaptive.ux.Icons.filtered:Adaptive.ux.Icons.filterNew)+"</a> "+z.getString("filter"),plain:true,cls:"a3-layermanager-menu-popup-items",handler:function(){if(o.filters){Ext.iterate(o.filters,function(E,F){z.onBeforeShowCustomFilter(F,b,B,C,function(){z.onShowMetadata(b,B,null,C,q,o,q.getTarget(),"beforeShowCustomFilter");z.destroyPopup()})})}}});A+=25});z.reportEvent("getLayerManagerCustomAction",o,function(D){if(!Ext.isArray(D)){D=[D]}D.forEach(function(E){z.addAction(o,E);w.push({text:'<a class="'+E.className+' a3-layer-manager-btn a3-layermanager-menu-popup-item-a" data-qtip="'+E.qtip+'">'+Adaptive.ux.Icons.analysis+"</a> "+E.qtip,plain:true,cls:"a3-layermanager-menu-popup-items",handler:function(){if(o.actions){Ext.iterate(o.actions,function(F,G){G.callback();z.destroyPopup()})}}});A+=25})});var g=z._getShowDataType(o);if(g){w.push({text:'<a class="a3-layer-manager-btn a3-layermanager-menu-popup-item-a a3-dataview'+(g===1?"":"-edit")+'" data-qtip="'+(g===1?z.getString("dataview"):z.getString("dataview_edit"))+'">'+(g===1?Adaptive.ux.Icons.showTable:Adaptive.ux.Icons.dataviewEdit)+"</a> "+z.getString("dataview"),plain:true,cls:"a3-layermanager-menu-popup-items",handler:function(){z.onShowDataView(b,B);z.destroyPopup()}});A+=25}w.push({text:'<a class="a3-layer-manager-btn a3-metadata a3-layermanager-menu-popup-item-a" data-qtip="'+z.getString(o.childNodes.length>0?"showMetadataCategory":"showMetadata")+'">'+Adaptive.ux.Icons.info+"</a> "+z.getString("metadata"),plain:true,cls:"a3-layermanager-menu-popup-items",handler:function(){z.onShowMetadata(b,B,null,C,q,o,q.getTarget(),"beforeShowMetadata");z.destroyPopup()}});w.push({text:'<a class="a3-layer-manager-btn a3-metadata a3-layermanager-menu-popup-item-a" data-qtip="'+z.getString("showConfig")+'">'+Adaptive.ux.Icons.settingsNew+"</a> "+z.getString("config"),plain:true,cls:"a3-layermanager-menu-popup-items",handler:function(){z.onShowConfig(b,B,null,C,q,o,q.getTarget(),"beforeShowConfig");z.destroyPopup()}});z.actionMenu=Ext.create("Ext.Window",{width:240,height:A,autoScroll:false,modal:false,cls:"a3-layermanager-menu-popup",closable:false,header:false,title:z.getString("action_menu_title"),closeAction:"destroy",items:[{xtype:"menu",margin:"0 20 0 0",width:"100%",plain:true,height:"100%",floating:false,items:w}]});var h=q.xy;h[0]=h[0]-230;h[1]=h[1]+20;z.actionMenu.showAt(h);setTimeout(function(){Ext.getBody().on("click",z.onBodyClick,z,{single:true})},10)}},onBodyClick:function(){this.destroyPopup()},onRemove:function(b,o){var h=this,g=b.getStore().getAt(o);h.reportEvent("removeLayerVisibility",g.get("recordData")._uqid)},onShowDataView:function(b,o){var h=this,g=b.getStore().getAt(o);
1if(g.isRadio){h.onCheckChangeRadio(g)}if(g.isSpatial&&!g.get("checked")){g.set("checked",true);h._treeView.checkChange(g,true);h.fireUpdateMapState()}var q={evtName:"dataViewRequest",evtInitiatingModule:h,data:{record:g.get("recordData")}};h.dispatchEvent(q)},onToggleAutoRefresh:function(b,h){var g=b.getStore().getAt(h);if(g.childNodes.length>0){this.updateAutoRefreshChildren(g,g.isAutoRefreshing);return}this.toggleAutoRefreshLayer(g);this.commitParent(g)},updateAutoRefreshChildren:function(h,b){var g=this;h.childNodes.forEach(function(o){if(g._isAutoRefreshLayer(o)&&g._isAutoRefreshing(o)==b){g.toggleAutoRefreshLayer(o)}if(o.childNodes.length>0){g.updateAutoRefreshChildren(o,b)}});h.commit()},toggleAutoRefreshLayer:function(g){var b=g.get("recordData");if(!b){return}this.fireToggleLayerRefresh(b.get("olLayer"));g.commit()},commitParent:function(b){if(b.parentNode){b.parentNode.commit();this.commitParent(b.parentNode)}},fireToggleLayerRefresh:function(b){var g=this;var h={evtName:"toggleLayerRefresh",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:b};g.dispatchEvent(h,{confirmationRequired:false})},_onAutoRefreshChange:function(b){var g=this;if(!g.updateNodesTask){g.updateNodesTask=new Ext.util.DelayedTask(g._updateNodes,g)}g.updateNodesTask.delay(100)},_updateNodes:function(){var b=this._treeView&&this._treeView.view&&this._treeView.view.view&&this._treeView.view.view.getStore();if(b){b.each(function(g){g.commit();g.parentNode.commit()})}}});Ext.define("Client.module.map.layerManager.ThematicMap",{extend:Client.module.map.layerManager.Generic,mixins:[Adaptive.form.mixins.Generator,Client.module.map.layerManager.mixins.LayerManagerTree],lang:null,activeCategoryButton:null,categoriesNodes:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.layerManager.lang.Categories");g.treeStore=Ext.create("GeoMind.data.store.Tree")},showInternalUI:function(){var b=this;b.internalUi=Ext.create("Ext.container.Container",{width:400,height:200,layout:{type:"vbox",align:"stretch"},cls:"a3-category-container a3-category-popup",items:[{xtype:"box",cls:"header",html:b.activeRecord.get("name"),height:30},{xtype:"container",cls:"description",html:b.activeRecord.get("description"),flex:1}]});b.mapContainer.add(b.internalUi);b.updateInternalUiPosition();b.view.mon(b.view,"beforehide",b.onCatViewBeforeHide,b)},afterMapReset:function(h){var g=this,b=GeoMind.utils.Map.flattenUnifiedMapConfig(h.data.unifiedMapCfg);g.layers={};b.layers.forEach(function(q){var o=Adaptive.utils.Config.getThemeData(q);g.layers[o.theme_uuid]=q});g.loadData()},loadData:function(){var b=this,g;Ext.Ajax.request({url:"WebServices/Client/ThematicMap.asmx/Read",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},callback:function(w,A,q){if(A){q=GeoMind.utils.Ajax.fixResponse(q);var o=Ext.decode(GeoMind.utils.Data.extractConfigObjectByKey(q.data,"records"));o=o.array||[];for(var z=0;z<o.length;z++){var h=Ext.create("Client.data.model.ThematicMap",o[z]);container=b.createThumbnail(h);b.scrollerModule.addThumbnail(container)}b.updateScrollerViewSize();b.isLoaded=true;b.fireEvent("showCategory",o.length>0);if(typeof(__shared__)=="undefined"||!__shared__){if(b.shouldSetActiveId){g=b.shouldSetActiveId;delete b.shouldSetActiveId;b.setActiveRecordDataById(g)}}}}})},reportCategoriesCount:function(b){var g={evtName:"categoriesCount",evtInitiatingModule:this,evtSuperInitiatingModule:this,data:b};this.dispatchEvent(g,{confirmationRequired:false})},createThumbnail:function(g){var q=this,w=g.get("thumbnail");var o=w?q.thumbnailService+w:q.noThumbUrl;var h=Ext.create("Ext.button.Button",{tooltip:q.lang.getString("show_category_layers"),cls:"a3-lay-info a3-layermanager-list",pressed:false,record:g,enableToggle:true,scale:"large"});q.buttonBindEvts(h);var b=Ext.create("Ext.container.Container",{overCls:"a3-component_overCls",cls:"a3-layermanager-item",layout:"absolute",width:q.btnHeight*2,record:g,button:h,items:[{xtype:"image",autoEl:{tag:"div",cls:"a3-thumbnail"},src:o,listeners:{afterrender:function(z){z.getEl().dom.setAttribute("data-qtip",g.get("name"))}}},{xtype:"box",cls:"a3-layermanager-title",html:g.get("name")},h]});b.mon(b,"render",q.bindClickEvtToThumbnail,q);return b},clearActiveCategory:function(){var b=this;b.hasActiveCategoryMarked=false;b.activeCategoryButton=null;b.unmarkAllThumbnails();b.activeRecord=null},onThumbnailClicked:function(h){var w=this,g=w.container,q=w.module,o=g.button,b=g.record;if(q.activeRecord&&q.activeRecord.get("id")!=b.get("id")){if(q.activeCategoryButton){q.activeCategoryButton.toggle(false)}
1q.setActiveThumbnail(g);return}if(q.buttonActionOnly){q.buttonActionOnly=false;return}if(q.activeRecord){q.clearActiveCategory();o.toggle(false);q.onActiveComponentChanged()}else{q.hasActiveCategoryMarked=true;q.setActiveThumbnail(g)}},onActiveComponentChanged:function(){var g=this,b=g.activeRecord;g.silent=true;if(b){g.reportEvent("thematicMapActivated",{id:b.get("id"),themes:b.get("themes")})}g.reportEvent("activateThemes",b?b.get("themes"):[]);g.silent=false},_onLayersVisibilityUpdated:function(){var b=this;if(!b.silent){b.activeCategoryButton&&b.activeCategoryButton.toggle(false);b.clearActiveCategory();b.buttonActionOnly=false}},buttonBindEvts:function(b){var g=this;b.on("toggle",g.onButtonToggle,g);b.mon(b,"click",function(){g.activeCategoryButton=b},g)},buttonUnBindEvts:function(b){var g=this;b.un("toggle",g.onButtonToggle,g)},onButtonToggle:function(b,h){var g=this;if(g.hasActiveCategoryMarked){g.buttonActionOnly=true}else{g.buttonActionOnly=false}if(h){g.showInternalUI()}else{g.internalDeactivate()}},updateInternalUiPosition:function(){var g=this;if(g.view&&g.internalUi){var b=g.singleCat?g.alingToContainer:g.view;g.internalUi.alignTo(b,"bl-tl",[0,-10])}},onCatViewBeforeHide:function(){this.internalDeactivate()},refreshTree:function(){var g=new Date().getTime();var b=this.treeStore.getRootNode();b.eachChild(function(h){h.eachChild(function(o){o.set("last_updated",g)})})},internalActivate:function(){var b=this;if(!b.singleCat){b.internalDeactivate()}},internalDeactivate:function(){var b=this;if(b.internalUi){b.internalUi.destroy();delete b.internalUi}if(b.activeCategoryButton){b.activeCategoryButton.toggle(false)}},setActiveRecordData:function(z,D){var w=this,b=w.treeStore.getRootNode(),B=null;w.isShared=true;for(var q=0;q<b.childNodes.length;q++){if(b.childNodes[q].get("recordData").get("uuid")==z){B=b.childNodes[q];break}}if(!B){return}var o=function(F){for(var E=0;E<D.length;E++){if(D[E].uuid==F){return D[E]}}};for(var q=0;q<B.childNodes.length;q++){var h=B.childNodes[q];var g=o(h.get("recordData").get("uuid"));if(!g){h.set("checked",false);if(h.childNodes.length>0){h.childNodes.forEach(function(E){E.set("checked",false)})}continue}h.set("checked",true);if(g.children&&h.childNodes.length>0){for(var C=0;C<h.childNodes.length;C++){var A=h.childNodes[C];if(Ext.Array.contains(g.children,A.get("recordData").get("uuid"))){A.set("checked",true)}}}}w.hasActiveCategoryMarked=true;w.setActiveThumbnail(w.getContainerByItemUuid(z))},_onSetDefaultTheme:function(b){this.setActiveRecordDataById(b.data)},setActiveRecordDataById:function(g){var b=this;if(b.isShared){return}if(!b.isLoaded){b.shouldSetActiveId=g;return}b.scrollerModule.getThumbnails().forEach(function(h){if(h.record.get("id")==g){b.setActiveThumbnail(h)}})},_onInfoClicked:function(){var b=this;b.view.hide();b.internalDeactivate()},_onAutoRefreshStopped:function(){var b=this;b.view.hide();b.internalDeactivate()},_onUserAuthenticated:function(){this.internalActivate()},_onUserSignedOut:function(){this.internalActivate()}});Ext.define("Client.module.map.layerManager.Standard",{extend:Client.module.Generic,internal_name:"av_layer_manager",thumbnailService:"WebServices/generic/GetThumbnail.ashx?f=",noThumbUrl:"resx/no_thumb/no_thumb.png",activeComponentCls:"a3-component_activeCls",showObjectsNumber:3,scrollerWidth:400,btnHeight:44,btnWidth:120,btnPencilCls:"a3-pencil",editBtnHeight:null,editBtnWidth:null,lang:null,changeOnClick:null,dataViewPanelHeight:0,view:null,toogleGroupName:null,isShared:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents([]);if(!this.lang){this.lang="Client.module.map.layerManager.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.editBtnHeight=this.editBtnHeight?this.editBtnHeight:44;this.editBtnWidth=this.editBtnWidth?this.editBtnWidth:44;this.moduleController=Ext.create("GeoMind.base.ModuleController");this.baseLayersModule=Ext.create("Client.module.map.layerManager.BaseLayers",{btnHeight:this.btnHeight,btnWidth:this.btnWidth,editBtnHeight:this.editBtnHeight,editBtnWidth:this.editBtnWidth,scrollerWidth:this.scrollerWidth,changeOnClick:this.changeOnClick,thumbnailService:this.thumbnailService,noThumbUrl:this.noThumbUrl});this.categoriesModule=Ext.create("Client.module.map.layerManager.ThematicMap",{btnHeight:this.btnHeight,btnWidth:this.btnWidth,editBtnHeight:this.editBtnHeight,editBtnWidth:this.editBtnWidth,scrollerWidth:this.scrollerWidth,changeOnClick:this.changeOnClick,thumbnailService:this.thumbnailService,noThumbUrl:this.noThumbUrl});this.categoriesModuleFullsize=Ext.create("Client.module.map.layerManager.ThematicMapFullsize",{btnHeight:this.btnHeight,btnWidth:this.btnWidth,showOnStartupDefault:this.thematicMapShowOnStartup,editBtnHeight:this.editBtnHeight,editBtnWidth:this.editBtnWidth,scrollerWidth:this.scrollerWidth,changeOnClick:this.changeOnClick,thumbnailService:this.thumbnailService,noThumbUrl:this.noThumbUrl});this.categoriesModule.on("activeCategoryChanged",this.onActiveCategoryChanged,this);this.categoriesModule.on("showCategory",this.onShowCategory,this);this.categoriesModuleFullsize.on("resetToggle",this.resetToggle,this);
1this.mapLvlController.registerModule(this.baseLayersModule);this.mapLvlController.registerModule(this.categoriesModule);this.mapLvlController.registerModule(this.categoriesModuleFullsize);this.buildGui()},resetToggle:function(){this.categoriesBtnFullsize.toggle(false)},buildGui:function(){var g=this;if(!this.toogleGroupName){this.toogleGroupName=Ext.id()}this.baseLayersBtn=Ext.create("Ext.button.Button",{cls:"a3-base-btn a3-map-btn",toggleGroup:this.toogleGroupName,text:this.lang.getString("baseLayers"),height:this.btnHeight,module:this.baseLayersModule,tooltip:this.lang.getString("baseLayers_tip"),tooltipType:"title"});this.baseLayersBtn.on("toggle",this.onBtnToggle,this);this.categoriesBtn=Ext.create("Ext.button.Button",{cls:"a3-cat-btn a3-map-btn",toggleGroup:this.toogleGroupName,text:this.lang.getString("categories"),height:this.btnHeight,module:this.categoriesModule,tooltip:this.lang.getString("categories_tip"),tooltipType:"title"});this.categoriesBtn.on("toggle",this.onBtnToggle,this);this.categoriesBtnFullsize=Ext.create("Ext.button.Button",{cls:"a3-cat-btn a3-map-btn",toggleGroup:this.toogleGroupName,text:this.lang.getString("categories"),height:this.btnHeight,module:this.categoriesModuleFullsize,tooltip:this.lang.getString("categories_tip"),tooltipType:"title"});this.categoriesBtnFullsize.on("toggle",this.onBtnToggle,this);var b=[];if(g.thematicMapFullsize){b.push(g.categoriesBtnFullsize)}else{b.push(g.categoriesBtn)}b.push(g.baseLayersBtn);this.view=Ext.create("Ext.container.Container",{cls:"a3-layermanager",layout:{type:"vbox",align:"stretch"},width:this.btnWidth,items:b})},getThematicMaps:function(){var b=this;Ext.Ajax.request({url:"WebServices/client/ThematicMap.ashx/Read",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},scope:b,success:b.refreshSourceTreeCallbackSuccess,failure:b.refreshSourceTreeCallbackFailure})},onActiveCategoryChanged:function(){var b={evtName:"activeCategoryChanged",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})},onBtnToggle:function(g,h,b){if(h){g.module.activate()}else{g.module.deactivate()}},_setActive:function(b){if(this.view){this.view.setVisible(b);this.baseLayersModule._setActive(b);this.categoriesModule._setActive(b)}},updateButtonContainer:function(b){if(!this.dataViewPanelHeight){this.dataViewPanelHeight=0}if(this.categoriesModule.active){this.categoriesModule.updateScrollerContainer();this.categoriesModule.updateInternalUiPosition()}if(this.baseLayersModule.active){this.baseLayersModule.updateScrollerContainer()}},bindMapEvts:function(){if(!this.map){return}this.map.events.register("movestart",this,this.onMapMoveStart)},unbindMapEvts:function(){if(!this.map){return}this.map.events.unregister("movestart",this,this.onMapMoveStart)},onMapMoveStart:function(){this.categoriesBtn.toggle(false);if(!this.baseLayersModule.inActiveBaseLayerChangeProcess){this.baseLayersBtn.toggle(false)}},afterMapContainerRender:function(b){this.mapContainer.add(this.view);this.mapContainer.on("resize",this.updateButtonContainer,this);this.categoriesModule.alingToContainer=this.view;this.baseLayersModule.alingToContainer=this.view},afterMapReset:function(b){this.bindMapEvts()},beforeMapReset:function(b){this.unbindMapEvts();if(this.baseLayersBtn.pressed){this.baseLayersBtn.toggle(false)}else{if(this.categoriesBtn.pressed){this.categoriesBtn.toggle(false)}}},_onGetActiveLayersInfo:function(b){b.data.activeBaseLayerUuid=this.baseLayersModule.getActiveRecordData()},_onSharedActiveLayersInfoRetrieved:function(b){this.baseLayersModule.setActiveRecordData(b.data.activeBaseLayerUuid)},_onUrlApiLayerCommand:function(b){this.baseLayersModule.setActiveRecordDataById(b.data.activeBaseLayerId)},_onBaseLayerCount:function(g){var b=g.data.blCount,h=g.data.canHideButton;if(b==1&&h){this.hideBaseLayerButton()}else{this.showBaseLayerButton()}},hideBaseLayerButton:function(){this.baseLayersBtn.hide();this.updateButtonContainer(this.mapContainer)},showBaseLayerButton:function(){this.baseLayersBtn.show();this.updateButtonContainer(this.mapContainer)},onShowCategory:function(b){var g=this;b?g.showCategoriesButton():g.hideCategoriesButton()},hideCategoriesButton:function(){this.categoriesBtn.hide();this.updateButtonContainer(this.mapContainer)},showCategoriesButton:function(){this.categoriesBtn.show();this.updateButtonContainer(this.mapContainer)}});Ext.define("Adaptive.utils.Dom",{singleton:true,_scrollbarWidth:-1,getScrollbarWidth:function(){if(Adaptive.utils.Dom._scrollbarWidth==-1){var o=document.createElement("div");o.style.visibility="hidden";o.style.width="100px";o.style.msOverflowStyle="scrollbar";document.body.appendChild(o);var g=o.offsetWidth;o.style.overflow="scroll";var b=document.createElement("div");b.style.width="100%";o.appendChild(b);var h=b.offsetWidth;o.parentNode.removeChild(o);Adaptive.utils.Dom._scrollbarWidth=g-h}return Adaptive.utils.Dom._scrollbarWidth}});Ext.define("Client.module.lang.ToolPanel",{strings:{btnCollapse:{en:"Collapse",nb:"Skjul",nn:"Skjul"},btnCollapseTip:{en:"Collapse",nb:"Skjul",nn:"Skjul"}
1,toolActive:{en:"Tool active",nb:"Aktiv funksjon",nn:"Aktiv funksjon"},toggle:{en:"Hide panel",nb:"Skjul panelet",nn:"Skjul panelet"},toggle_show:{en:"Show panel",nb:"Vis panelet",nn:"Vis panelet"}},errCodes:{}});Ext.define("Client.module.ToolPanel",{extend:Client.module.Generic,view:null,leftContainer:null,rightContainer:null,customInfoHeight:200,leftContainerCollapsedWidth:150,leftContainerExpandedWidth:44,scrollbarWidth:18,toggleBtn:null,collapseBtn:null,collapsed:true,tools:null,tool_width:null,hidden:false,minimal:false,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.tool_width=g.tool_width||"440";g.tool_width_in_percentage=g.tool_width.indexOf("%")>-1;if(g.tool_width_in_percentage&&g.tool_width.indexOf("/")>-1){g.max_width=parseInt(g.tool_width.split("/")[1])}g.tool_width=parseInt(g.tool_width);if(isNaN(g.tool_width)){g.tool_width=440}g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.ToolPanel");g.tools=[];g.buildGui();Ext.EventManager.onWindowResize(g.updateToolWidth,g,{buffer:100,delay:10});g.scrollbarWidth=Adaptive.utils.Dom.getScrollbarWidth()},buildGui:function(){this.toggleBtn=Ext.create("Ext.button.Button",{cls:"a3-tools-panel-toggle-btn a3-map-btn",tooltip:this.lang.getString(this.hidden?"toggle_show":"toggle"),tooltipType:"title",hidden:true,itemId:"toolPanelToggleBtn"});this.toggleBtn.on("click",this.onToggleBtnClick,this);this.mapBtnContainer=Ext.create("Ext.container.Container",{cls:"a3-map-btn-container",itemId:"mapBtnContainer",layout:{type:"table",columns:1},defaults:{width:44,height:44},width:44,height:44,items:[this.toggleBtn]});this.logoContainer=Ext.create("Ext.container.Container",{xtype:"image",cls:"tools-panel-left-container-logo",autoEl:{tag:"a",href:this.toolsPanelBottomLogoUrl,target:"_blank"}}),this.btnsContainer=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},minHeight:90,flex:1,width:"100%",autoScroll:true});this.customInfo=Ext.create("Ext.container.Container",{layout:"fit",height:this.customInfoHeight});this.leftContainer=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},width:this.leftContainerCollapsedWidth,items:[this.btnsContainer,this.toolsPanelBottomLogo==null||!this.toolsPanelBottomLogo?this.customInfo:null,this.toolsPanelBottomLogo!=null||this.toolsPanelBottomLogo?this.logoContainer:null],cls:"tools-panel-left-container"});this.toolTitle=Ext.create("Ext.Component",{cls:"a3-tools-title",flex:1});this.collapseBtn=Ext.create("Ext.button.Button",{text:this.lang.getString("btnCollapse"),cls:"a3-modules-collapse"});this.collapseBtn.on("click",this.onBtnCollpaseClick,this);this.rightHeaderToolbar=Ext.create("Ext.container.Container",{dock:"top",height:44,layout:"hbox",items:[this.toolTitle,this.collapseBtn],cls:"tools-panel-toolbar"});this.rightContainerContent=Ext.create("Ext.container.Container",{cls:"tools-panel-right-container",layout:"card",flex:1,items:[{xtype:"box"}]});this.rightContainer=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[this.rightHeaderToolbar,this.rightContainerContent],flex:1});this.view=Ext.create("Ext.panel.Panel",{itemId:"toolPanel",autoScroll:true,cls:"a3-tools-panel",hidden:true,width:this.leftContainerCollapsedWidth,layout:{type:"hbox",align:"stretch"},items:[this.leftContainer,this.rightContainer]})},updateToolWidth:function(){var g=this;if(g.collapsed){g.leftContainer.setWidth(g.leftContainerCollapsedWidth);g.view.setWidth(g.leftContainerCollapsedWidth)}else{var b=g.view.getHeight()<g.tools.filter(function(h){return h.btn.isVisible()}).length*44;g.leftContainer.setWidth(g.leftContainerExpandedWidth+(b?g.scrollbarWidth:0));if(g.tool_width_in_percentage){if(g.max_width){g.view.setWidth(Math.min(g.max_width,Ext.getBody().getWidth()*(g.tool_width/100)))}else{g.view.setWidth(Ext.getBody().getWidth()*(g.tool_width/100))}}else{g.view.setWidth(g.tool_width+(b?g.scrollbarWidth:0))}}},onBtnCollpaseClick:function(){if(this.collapsed){this.expand()}else{if(this.minimal){this.toggleBtn.show();this.view.hide()}else{this.collapse()}}},onToggleBtnClick:function(){var b=this;if(b.view.isVisible()){b.view.hide();b.toggleBtn.setTooltip(b.lang.getString("toggle_show"))}else{if(b.minimal){if(b.activeTool){b.view.show();b.toggleBtn.hide()}else{b.switchTools(b.tools[0])}}else{b.view.show();b.toggleBtn.setTooltip(b.lang.getString("toggle"))}}},collapse:function(){var b=this.checkPreventDeactivate();if(b){var g=this;Ext.Msg.show({title:this.lang.getString("toolActive"),msg:b,buttons:Ext.MessageBox.OKCANCEL,icon:Ext.window.MessageBox.WARNING,fn:function(h){if(h=="ok"){g.collapseInternal()}else{}}})}else{this.collapseInternal()}},collapseInternal:function(){var h=this,g=h.tools.some(function(o){return o.tool.btnHidden===true}),b=h.tools.some(function(o){return o.tool.btnHidden!==true});this.rightContainer.hide();this.view.removeCls("a3-tools-panel-expanded");this.view.addCls("a3-tools-panel-collapsed");this.customInfo.show();this.deactivateAllTools();this.toggleBtnsText(true);this.collapsed=true;if(this.tools.length==0||(g&&!b)){this.view.hide()}this.updateToolWidth()},toggleBtnsText:function(b){for(t in this.tools){if(b){this.tools[t].btn.setText(this.tools[t].btn.btn_text)}else{this.tools[t].btn.setText("")}}},expand:function(){var b=this;b.rightContainer.show();b.view.removeCls("a3-tools-panel-collapsed");b.view.addCls("a3-tools-panel-expanded");b.customInfo.hide();b.toggleBtnsText(false);b.collapsed=false;b.updateToolWidth()},updateCustomInfo:function(b){this.customInfo.update(b)},addTool:function(b){var g={tool:b,btn:this.createToolBtn(b)};b.on("adviseheaderchange",this.onToolAdviseHeaderChange,this);b.on("advisebtntextchange",this.onToolAdviseBtnTextChange,this);this.tools.push(g);this.btnsContainer.add(g.btn);if(b.view){this.rightContainerContent.add(b.view)}if(!this.hidden){this.view.show()}if(!this.minimal||this.hidden){this.toggleBtn.show()}},removeAll:function(){this.deactivateAllTools();for(var b=0;b<this.tools.length;b++){this.rightContainerContent.remove(this.tools[b].tool.view,false);this.btnsContainer.remove(this.tools[b].btn,true);delete this.tools[b].tool;delete this.tools[b].btn;delete this.tools[b]}this.tools=[];this.view.hide();this.toggleBtn.hide()},onToolAdviseBtnTextChange:function(b){var h=this,g=h.getToolByInternalName(b.internal_name);if(g&&g.btn){g.btn.btn_text=b.btnText;g.btn.setText(b.btnText);g.btn.setTooltip(b.btnTip)}},onToolAdviseHeaderChange:function(b){this.toolTitle.update(b)},createToolBtn:function(b){var g=Ext.create("Ext.button.Button",{internal_name:b.internal_name,hidden:b.btnHidden,btn_text:b.btnText,text:b.btnText,tooltip:b.btnTip,tooltipType:"title",enableToggle:true,cls:b.btnCls,height:44,iconHtml:b.iconHtml,glyph:b.glyph});g.on("toggle",this.onToolBtnToggle,this);return g},activeTool:null,deactivateAllTools:function(){var b=this;if(!b.activeTool||!b.activeTool.tool){return}b.activeTool.tool.deactivate();b.activeTool.btn.toggle(false,true);b.activeTool=null},checkPreventDeactivate:function(){var b=false;for(t in this.tools){b=this.tools[t].tool.checkPreventDeactivate();if(b){return b}}return b},onToolBtnToggle:function(h,o,g){if(!o){h.toggle(true,true);return}var b=this.getToolByInternalName(h.internal_name);if(!b){return}this.checkPreventAndswitchTools(b)},checkPreventAndswitchTools:function(g){var b=this.checkPreventDeactivate();if(b){var h=this;Ext.Msg.show({title:this.lang.getString("toolActive"),msg:b,buttons:Ext.MessageBox.OKCANCEL,icon:Ext.window.MessageBox.WARNING,fn:function(o){if
1(o=="ok"){h.switchTools(g)}else{g.btn.toggle(false,true)}}})}else{this.switchTools(g)}},switchTools:function(b){var g=this;if(b.btn==null){b=g.getToolByInternalName(b.internal_name)}if(g.activeTool&&g.activeTool.tool&&g.activeTool.tool._id==b.tool._id){return}if(g.isChangingTools||b.tool.beforeActivate&&!b.tool.beforeActivate()){if(b.btn.pressed){b.btn.toggle(false,true)}return}if(!b.btn.pressed){b.btn.toggle(true,true)}g.deactivateAllTools();g.activeTool=b;b.tool.activate();g.changeCard(b.tool.view);g.toolTitle.update(b.tool.headerText);if(!g.view.isVisible()){g.view.show()}if(g.minimal){g.toggleBtn.hide();g.toggleBtn.setTooltip(g.lang.getString("toggle_show"))}g.expand()},getToolByInternalName:function(g){for(var b in this.tools){if(this.tools[b].tool.internal_name==g){return this.tools[b]}}return null},reactivateTool:function(){var h=this,g=h.rightContainerContent.getLayout(),b=g.getActiveItem();if(b){h.tools.some(function(o){if(o.tool.view===b){o.btn.toggle(true,true);o.tool.activate();h.activeTool=o;return true}})}},changeCard:function(b){var o=this,h=o.rightContainerContent.getLayout(),g=h.getActiveItem();if(g&&g!=b){o.isChangingTools=true;g.getEl().fadeOut({duration:50,callback:function(){h.setActiveItem(b);o.isChangingTools=false;b.getEl().fadeIn()}})}},_onSwitchTools:function(b){this.checkPreventAndswitchTools(b.data)},afterMapContainerRender:function(b){this.mapContainer.add(this.mapBtnContainer)},_onRequestToolPanelCollapse:function(b){this.collapse();if(b.data.originalEvt){this.manageEventConfirmation(b.data.originalEvt)}},_onHideToolButton:function(g){var b=g.data.internal_name;if(b){this.getToolByInternalName(b).btn.hide()}},_onShowToolButton:function(g){var b=g.data.internal_name;if(b){this.getToolByInternalName(b).btn.show()}}});Ext.define("Client.module.ToolGeneric",{extend:Client.module.Generic,requires:[],btnCls:null,btnText:null,btnTip:null,headerText:null,internal_name:null,view:null,constructor:function(h){Ext.apply(this,h);this.callParent([h]);var g=this.activate;var b=this;this.activate=function(){b._reportActivate();g.apply(this)};var o=this.deactivate;this.deactivate=function(){b._reportDeactivate();o.apply(this)}},_reportActivate:function(){var b={evtName:"toolactivated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{tool:this,internal_name:this.internal_name}};this.dispatchEvent(b,{confirmationRequired:false})},_reportDeactivate:function(){var b={evtName:"tooldeactivated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{tool:this,internal_name:this.internal_name}};this.dispatchEvent(b,{confirmationRequired:false})},buildGui:function(){this.view=Ext.create("Ext.panel.Panel",{html:"This is a default view and should be ovewritten in the inheriting class!"})},activate:function(){this._reportActivate()},deactivate:function(){this._reportDeactivate()},adviseHeaderChange:function(b){this.fireEvent("adviseheaderchange",b)},adviseBtnTextChange:function(){this.fireEvent("advisebtntextchange",this)},checkPreventDeactivate:function(){return false}});Ext.define("Client.module.lang.Legend",{strings:{mainBtnText:{en:"Legend",nb:"Tegn- forklaring",nn:"Tekn- forklaring"},mainBtnTip:{en:"Legend for active thematic maps",nb:"Tegnforklaring for aktive temakart",nn:"Teknforklaring for aktive temakart"},headerText:{en:"Legend",nb:"Tegnforklaring",nn:"Teknforklaring"},noitems:{en:"No active thematic layer. Try to turn one on!",nb:"Ingen aktive temalag. Prøv å skru på ett!"}},errCodes:{}});Ext.define("Client.module.tool.Legend",{extend:Client.module.ToolGeneric,btnCls:"a3-legend_module",btnText:"Legend",btnTip:"Show legend for map layers",internal_name:"av_legend",headerText:"Legend",tplFunctions:{getCaption:function(b){if(!b.caption||b.disable_name_in_legend){return""}return"<h4>"+b.caption+"</h4>"},visibilityCache:{},warnedLayers:{},getImgId:function(g){var h=this,b=h.visibilityCache,o="legend-img-"+(g.uuid||Ext.id());Ext.defer(function(){var A=document.getElementById(o),B=A&&A.getElementsByTagName("img")[0],z=function(){A.style.display="none";g.uuid&&(b[g.uuid]="none")},w=function(){A.style.display="block";g.uuid&&(b[g.uuid]="block")},q=function(){if(B.width<10||B.height<10){z()}else{w()}};if(B){if(B.complete){q()}B.onload=function(){q()};B.onerror=function(){z();if(!h.warnedLayers[o]){console.warn("Legend image failed, hidden for layer",g.uuid,g.caption||g.name);h.warnedLayers[o]=true}}}},10);return o},getStyle:function(g){if(g.uuid){var b=this.visibilityCache[g.uuid];if(b){return"display: "+b}}return""}},constructor:function(b){this.lang=GeoMind.lang.Lang.registerTranslations("
1Client.module.lang.Legend");this.btnText=this.lang.getString("mainBtnText");this.btnTip=this.lang.getString("mainBtnTip");this.headerText=this.lang.getString("headerText");Ext.apply(this,b);this.callParent([b]);this.tplFunctions.visibilityCache={}},getUqid:function(b){return b.data.recordData._uqid},addToStore:function(B,G,E){var D=this,w=D.map.wmsLayersVisible,z,q,h,A,F,H,C,g,o,b;for(z=0;z<w.length;z++){q=w[z];h=q.record;if(h&&h._uqid===D.getUqid(B)&&q.calculateInRange()){A=D.legendStore.findRecord("uuid",E);if(Adaptive.utils.Config.getBooleanConfig(h,"disable_legend",false)){continue}H=q.name;g=B.data&&B.data.recordData;o=Adaptive.utils.Config.getThemeData(g);C=Adaptive.utils.Config.getConfig(o,"legend_dimension_caption");if(C){b=g&&g.data.dimensions;if(b&&b.dimensions){b=b.dimensions}if(b&&b.length>0&&b[0].selectedValues&&b[0].selectedValues.length>0){H+=C.replace("##VALUE##",b[0].selectedValues[0].replace("/","-"))}}F={uuid:q.record&&q.record.get("uuid"),src:D.map.getLegendUrls(q,D.contentDependentLegend),is_internal:q.record&&q.record.get("is_internal"),disable_name_in_legend:Adaptive.utils.Config.getBooleanConfig(h,"disable_name_in_legend",false)||Adaptive.utils.Config.getBooleanConfig(h,"name_in_legend"),caption:H,captions:Adaptive.utils.Config.getBooleanConfig(h,"legend_print_selected_layers")?q.params.LAYERS.split(",").map(function(I){return H+"/r/n"+I}):[],content_dependent_legend:D.contentDependentLegend};if(q.CLASS_NAME==="OpenLayers.Layer.WMS"&&q.options&&q.options.dimensions&&q.options.dimensions.time){F.time=q.params.TIME}else{F.time=""}if(Adaptive.utils.Config.getBooleanConfig(g,"wms_statistical_theme")){F.wms_statistical_theme=true}if(!A){A=D.legendStore.add({uuid:E,name:G,layers:[F]})}else{var w=A.get("layers");w.push(F);A.set("layers",w)}}}},queueRefresh:function(){var b=this;if(!b.refreshTask){b.refreshTask=new Ext.util.DelayedTask(function(){b.doRefresh()})}b.refreshTask.delay(500)},doRefresh:function(){var b=this;Ext.suspendLayouts();b.legendStore.removeAll();if(b.showCategoryName){b.unifiedMapCfg.childNodes.forEach(function(g){var o=g.get("recordData"),h=o.get("name"),q=o.get("uuid");if(h!="baseLayers"){var z=[];function w(A){A.forEach(function(B){if(B.data.recordData.isSpatial){b.addToStore(B,h,q)}if(B.childNodes){w(B.childNodes)}})}w(g.childNodes)}})}else{Ext.each(b.map.wmsLayersVisible,function(g){if(g.calculateInRange()&&!Adaptive.utils.Config.getBooleanConfig(g.record,"disable_legend",false)){b.legendStore.add({uuid:g.record&&g.record.get("uuid"),src:b.map.getLegendUrls(g,b.contentDependentLegend),disable_name_in_legend:Adaptive.utils.Config.getBooleanConfig(g.record,"disable_name_in_legend",false)||Adaptive.utils.Config.getBooleanConfig(g.record,"name_in_legend"),caption:g.name,captions:Adaptive.utils.Config.getBooleanConfig(g.record,"legend_print_selected_layers")?g.params.LAYERS.split(",").map(function(h){return g.name+"\r\n"+h}):[],content_dependent_legend:b.contentDependentLegend})}},b,true)}b.processExternalData();Ext.resumeLayouts(true);b.view.refresh()},beforeMapReset:function(){this.isResetting=true},processExternalData:function(){var g=this,b=[];g.reportEvent("setLegendData",b);if(g.showCategoryName){b.forEach(function(o){var h=g.legendStore.findRecord("uuid",o.uuid);if(!h){h=g.legendStore.add({uuid:o.uuid,name:o.name,layers:o.layers})}else{var q=h.get("layers");q=q.concat(o.layers);h.set("layers",q)}})}else{b.forEach(function(h){h.layers.forEach(function(o){var q=Ext.clone(o);delete q.disable_name_in_legend;delete q.content_dependent_legend;g.legendStore.add(q)})})}},afterMapReset:function(g){var b=this;b.isResetting=false;b.unifiedMapCfg=g.data.unifiedMapCfg},activate:function(){var b=this;b.active=true;if(!b.view){b.buildGui()}else{b.doRefresh()}b.bindMapEvts()},deactivate:function(){var b=this;b.active=false;b.unbindMapEvts()},buildGui:function(){var g=this,b;if(g.showCategoryName){g.legendStore=Ext.create("Ext.data.Store",{fields:["uuid","name",{name:"layers",type:"auto"}],data:[]});b=new Ext.XTemplate('<tpl for=".">','<div class="a3-legend">','<h3 class="a3-legend-header">{name}</h3>','<tpl for="layers">','<div class="a3-legend-body" id="{[this.getImgId(values)]}
1" style="{[this.getStyle(values)]}">',"{[this.getCaption(values)]}",'<tpl for="src">','<img src="{.}" />',"</tpl>","</div>","</tpl>","</div>","</tpl>",g.tplFunctions)}else{g.legendStore=Ext.create("Ext.data.Store",{fields:["uuid",{name:"src",type:"auto"},{name:"disable_name_in_legend",type:"bool"},{name:"content_dependent_legend",type:"bool"},"caption","captions"],data:[]});b=new Ext.XTemplate('<tpl for=".">','<div class="a3-legend">','<div class="a3-legend-body" id="{[this.getImgId(values)]}" style="{[this.getStyle(values)]}">',"{[this.getCaption(values)]}",'<tpl for="src">','<img src="{.}"/>',"</tpl>","</div>","</div>","</tpl>",g.tplFunctions)}g.view=Ext.create("Ext.view.View",{cls:"a3-modules-body a3-legend-module",autoScroll:true,store:g.legendStore,tpl:b,itemSelector:"div.a3-legend",emptyText:g.lang.getString("noitems"),listeners:{render:function(){g.doRefresh()},scope:g}})},_onGetLegend:function(g){var b=this;if(b.isResetting){g.data.legendData=[]}else{if(!b.view){b.buildGui()}b.doRefresh();g.data.legendData=Ext.pluck(b.legendStore.data.items,"data");g.data.showCategoryName=b.showCategoryName}},bindMapEvts:function(){var b=this;b.map.events.on({changelayer:b.queueRefresh,moveend:b.queueRefresh,scope:b})},unbindMapEvts:function(){var b=this;if(!b.map){return}b.map.events.un({changelayer:b.queueRefresh,moveend:b.queueRefresh,scope:b})}});Ext.define("Client.data.model.UserDataFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"wkt",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"category",type:"string"},{name:"tag",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"style",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"show_measurement",type:"boolean",defaultValue:false,useNull:false},{name:"show_label",type:"boolean",defaultValue:false,useNull:false},{name:"feature",type:"auto",defaultValue:null,useNull:true},{name:"visible",type:"boolean",defaultValue:true,useNull:true},{name:"show_coords",type:"boolean",defaultValue:false,useNull:false}]});Ext.define("Client.data.model.UserData",{extend:GeoMind.data.model.Base,fields:Client.data.model.UserDataFields.fields,config:{fields:Client.data.model.UserDataFields.fields}});Ext.define("GeoMind.data.DataFilter",{filterColumns:null,sortColumns:null,greedy:true,defaultFilter:null,constructor:function(b){this.filterColumns=[];this.sortColumns=[];this.secondFilter=[];this.defaultFilter=[];Ext.apply(this,b);this.callParent([b])},addFilterColumn:function(b){if(!b.name||b.name==""){return}if(!b.netType){b.netType="String"}if(!b.comparisonOperator&&b.netType!="String"){b.comparisonOperator="="}if(!b.logicalOperator){b.logicalOperator="OR"}this.filterColumns.push(b)},addSecondFilter:function(b){if(!b.name||b.name==""){return}if(!b.netType){b.netType="String"}if(!b.comparisonOperator&&b.netType!="String"){b.comparisonOperator="="}if(!b.logicalOperator){b.logicalOperator="OR"}this.secondFilter.push(b)},clearSecondFilter:function(){this.secondFilter=[]},addDefaultFilter:function(b){this.defaultFilter=b},removeFilterColumn:function(g){var b=this.getFilterColIdx(g);if(b!=null){this.filterColumns.splice(b,1)}},removeAllFilterColumns:function(){while(this.filterColumns.length>0){this.filterColumns.splice(0,1)}this.filterColumns=[]},addSortColumn:function(b){if(!b.name||b.name==""){return}var g=this.getSortCol(b.name);if(!g){this.sortColumns.push(b)}},removeSortColumn:function(g){var b=this.getSortColIdx(g);if(b!=null){this.sortColumns.splice(b,1)}},removeAllSortColumns:function(){while(this.sortColumns.length>0){this.sortColumns.splice(0,1)}this.sortColumns=[]},updateFilterValue:function(b){var g=this.getFilterCol(b.name);if(g){g.value=b.value}else{this.addFilterColumn(b)}},updateFilter:function(b){this.removeAllFilterColumns();this.removeAllSortColumns();for(f in b.filterColumns){this.addFilterColumn(b.filterColumns[f])}for(f in b.sortColumns){this.addSortColumn(b.sortColumns[f])}},getFilterCol:function(b){var g=null;for(c in this.filterColumns){if(this.filterColumns[c].name==b){g=this.filterColumns[c];break}}return g},getFilterColIdx:function(g){var b=null;var h=this.filterColumns.length;for(c=0;c<h;c++){if(this.filterColumns[c].name==g){b=c;break}}return b},getSortCol:function(b){var g=null;for(c in this.sortColumns){if(this.sortColumns[c].name==b){g=this.sortColumns[c];break}}return g},getSortColIdx:function(g){var b=null;var h=this.sortColumns.length;for(c=0;c<h;c++){if(this.sortColumns[c].name==g){b=c;break}}return b},getFilterObject:function(){return{distinctColumns:this.distinctColumns,filterColumns:this.filterColumns,sortColumns:this.sortColumns,defaultFilter:this.defaultFilter,secondFilter:this.secondFilter,greedy:this.greedy}}});Ext.define("Client.module.tool.digitisedObjects.lang.Edit",{strings:{confirm_delete_header:{en:"Delete object",nb:"Slette objekt",nn:"Slette objekt"},confirm_delete_text:{en:"Are you sure you want to delete that object?",nb:"Er du sikker på at du vil slette dette objektet?",nn:"Er du sikker på at du vil slette dette objektet?"},confirm_delete_cat_header:{en:"Delete category",nb:"Slette kategori"},confirm_delete_cat_text:{en:"Are you sure you want to delete all objects belonging to this category?",nb:"Er du sikker på at du vil slette alle data tilordnet denne kategorien?"},headerText:{en:"Draw & Measure",nb:"Tegn og mål",nn:"Tegn og mål"},btnText:{en:"Draw & Measure",nb:"Tegn og mål",nn:"Tegn og mål"}
1,btnText_tip:{en:"Show Edit & Measure tools",nb:"Vis tegne- og mÃ¥leverktøy",nn:"Vis tegne- og mÃ¥leverktøy"},fs_quota:{en:"Your usage",nb:"Ditt forbruk"},quota_info:{en:"<p>The available storage space for your objects is limited. Usage depends on the number and complexity of your stored objects.",nb:"<p>Den tilgjengelige lagringsplassen for dine objekter er begrenset. Forbruk avhenger av antall og kompleksistet pÃ¥ dine lagrede objekter."},quota_extended:{en:"<p>You have extended storage. Beware that a high number or complex objects may reduce performance of the entire application.",nb:"<p>Du har utvidet lagringsplass. Vær obs pÃ¥ at et høyt antall eller komplekse objekter kan redusere ytelsen i applikasjonen."},quota_exceeded:{en:"Your storage space is full. Please delete some objects before creating new objects, or contact the administrator to see if there are alternative solutions available.",nb:"Din lagringsplass er brukt opp. Vennligst slett noen objekter før du lager nye, eller kontakt administrator for Ã¥ se om det finnes alternative løsninger."},storage_full:{en:"Your storage space is full. Please delete some objects and try again.",nb:"Din lagringsplass er brukt opp. Vennligst slett noen objekter og prøv igjen."},too_large_object:{en:"The geometry you tried to edit is too complex.",nb:"Geometrien du prøvde Ã¥ redigere er for kompleks."},actionZoomTo_tip_text:{en:"Zoom to",nb:"GÃ¥ til",nn:"GÃ¥ til"},actionEdit_tip_text:{en:"Edit",nb:"Rediger",nn:"Rediger"},actionDelete_tip_text:{en:"Delete",nb:"Slett",nn:"Slett"},exportTooltip:{en:"Your data will be exported to the file format ## using the projection",nb:"Dine data vil bli eksportert til filformatet ## i projeksjonen"},exportTooltipChange:{en:"You can change projection by selecting a different one in the lower left map corner.",nb:"Du kan endre projeksjon ved Ã¥ velge en annen nederst til venstre i kartet."},howto:{en:"Create a new object by selecting a geometry type.",nb:"Start Ã¥ tegne ved Ã¥ velge en geometritype under.",nn:"Start Ã¥ tegne ved Ã¥ velge ein geometritype under."},grid_header:{en:"Your created objects",nb:"Dine tegnede objekter",nn:"Dine tegnede objekter"},name:{pl:"Nazwa obiektu",en:"Text / title",nb:"Tekst / tittel",nn:"Tekst / tittel"},symboltype:{en:"Symbol type:",nb:"Symboltype:",nn:"Symboltype:"},category:{pl:"Kategoria",en:"Category",nb:"Kategori",nn:"Kategori"},uncategorized:{en:"Uncategorized",nb:"Ukategorisert"},sharedWithYou:{en:"Shared with you",nb:"Delt med deg"},length:{pl:"DÅugoÅÄ",en:"Length",nb:"Lengde",nn:"Lengde"},area:{pl:"Powierzchnia",en:"Area",nb:"Areal",nn:"Areal"},wkt:{pl:"Geometria (WKT)",en:"Geometry (WKT)",nb:"Geometri (WKT)",nn:"Geometri (WKT)"},point:{pl:"punkt",en:"point",nb:"punkt",nn:"punkt"},line:{pl:"linia",en:"line",nb:"linje",nn:"linje"},polygon:{pl:"poligon",en:"polygon",nb:"polygon",nn:"polygon"},text:{pl:"tekst",en:"text",nb:"tekst",nn:"tekst"},length_area:{pl:"Pokaż dÅugoÅÄ",en:"Display length in meters",nb:"Vis lengde i meter",nn:"Vis lengde i meter"},cbx_area:{en:"Show area",nb:"Vis areal"},snap:{pl:"WÅÄ
cz snapowanie",en:"Enable snapping",nb:"Aktiver snapping",nn:"Aktiver snapping"},wkt_failed:{en:"Failed to read the wkt. Either string was incorrect or you tried a unsupported geometry type.",nb:"Greide ikke å lese angitte wkt. Teksten var enten feil eller du forsøkte en geometrytype som ikke er støttet."},outlinecolor:{en:"Line color",nb:"Linjefarge"},size_point:{en:"Size",nb:"Størrelse"},size_line:{en:"Line thickness",nb:"Linjetykkelse"},color:{en:"Color",nb:"Farge"},visiblity:{en:"Opacity",nb:"Ugjennomsiktighet"},fill_50:{en:"Fill (standard)",nb:"Heldekkende (standard)"},fill_20:{en:"Fill (more transparent)",nb:"Heldekkende (mer gjennomsiktig)"},fill_0:{en:"Outline",nb:"Omriss"},hash:{en:"Dashed fill",nb:"Stiplet fyll"},dot:{en:"Dotted line",nb:"Prikka linje"},dash:{en:"Dashed linje",nb:"Stipla linje"},dashdot:{en:"Dashed dotted line",nb:"Stipla prikka linje"},longdash:{en:"Long dashed line",nb:"Lange stiplinger"},longdashdot:{en:"Long dashed and dotted line",nb:"Lange stiplinger og prikka linje"},solid:{en:"Solid line",nb:"Gjennomgående linje"},circle:{en:"Circle",nb:"Sirkel"},pin_green:{en:"Green pin",nb:"Grønn pinne"},pin_red:{en:"Red pill",nb:"Rød pinne"},pin_blue:{en:"Blue pill",nb:"Blå pinne"},arrow_green:{en:"Green arrow",nb:"Grønn pil"},arrow_red:{en:"Red arrow",nb:"Rød pil"},arrow_blue:{en:"Blue arrow",nb:"Blå pil"},flower_green:{en:"Green flower",nb:"Grønn blomst"},flower_red:{en:"Red flower",nb:"Rød blomst"},flower_blue:{en:"Blue flower",nb:"Blå blomst"},flag_green:{en:"Green flag",nb:"Grønt flag"},flag_red:{en:"Red flag",nb:"Rødt flagg"},flag_blue:{en:"Blue flag",nb:"Blått flagg"},star_green:{en:"Green star",nb:"Grønn stjerne"},star_red:{en:"Red star",nb:"Rød stjerne"},star_blue:{en:"Blue star",nb:"Blå stjerne"},buffer_failed:{en:"Failed to buffer the object. Please try again or c
1ontact support",nb:"Greide ikke Ã¥ lage buffer. Prøv igjen eller kontakt support"},fs_buffer:{en:"Buffer",nb:"Buffer"},buffer_tip:{en:"Create a buffer of the current object. Select buffer size in meters and click create buffer.",nb:"Lag et buffer av nÃ¥værende objekt. Oppgi størrelse i meter og klikk pÃ¥ lag buffer."},buffer_create:{en:"Create buffer",nb:"Lag buffer"},buffer_create_tip:{en:"Create a buffer of the current object",nb:"Lag et buffer av nÃ¥værende objekt"},blue:{pl:"niebieski",en:"blue",nb:"blÃ¥",nn:"blÃ¥"},purple:{pl:"purpurowy",en:"purple",nb:"lilla",nn:"lilla"},green:{pl:"zielony",en:"green",nb:"grønn",nn:"grønn"},red:{pl:"czerwony",en:"red",nb:"rød",nn:"rød"},fs_thickness:{pl:"GruboÅÄ linii",en:"Line thickness",nb:"Linje tykkelse",nn:"Linje tykkelse"},light:{pl:"lekka",en:"light",nb:"enkel",nn:"enkel"},regular:{pl:"standardowa",en:"regular",nb:"vanlig",nn:"vanleg"},bold:{pl:"pogrubiona",en:"bold",nb:"uthevet",nn:"uthevet"},extra_bold:{pl:"gruba",en:"extra bold",nb:"ekstra uthevet",nn:"ekstra uthevet"},l_info1:{pl:"Podwójnie kliknij, aby zakoÅczyÄ. NastÄpnie możesz zapisaÄ oraz edytowaÄ obiekt.",en:"Finish by double clicking/tapping. All objects are saved automatically.",nb:"Dobbeltklikk/dobbelttrykk for Ã¥ avslutte. Alle objekter blir lagret automatisk.",nn:"Dobbeltklikk/dobbelttrykk for Ã¥ avslutte. Alle objekter blir lagret automatisk."},saveUserObjects_title:{en:"Info",nb:"Info"},saveUserObjects_msg:{en:"There are unsaved user objects. Do you want to add them to your list of objects?",nb:"Du har tegnet objekter som ikke er lagret. Vil du lagre dem og legge dem til din liste over tegnede objekter?",nn:"Du har tegnet objekter som ikkje er lagret. Vil du lagre dei og legge dei til din liste over tegnede objekter?"},grid_visible:{pl:"Widoczna",en:"Visible",nb:"Synlig",nn:"Synlig"},grid_category:{pl:"Kategoria",en:"category",nb:"Kategori",nn:"Kategori"},grid_delete:{pl:"UsuÅ",en:"Remove",nb:"Fjern",nn:"Fjern"},nautical:{en:"Nautical Miles",nb:"Nautiske mil"},nauticalCB:{en:"Show length in Nautical Miles",nb:"Vis lengde i nautiske mil"},label:{en:"Show label in map",nb:"Vis etikett i kart"},showLabels:{en:"Show labels",nb:"Vis etiketter"},show_coords:{en:"Show coordinates in map",nb:"Vis koordinater i kart"},fs_geom_edit:{en:"Edit geometry",nb:"Rediger geometri"},headerLegend:{en:"User defined data",nb:"Brukerdefinerte data"},rotateCB:{en:"Enable rotation",nb:"Aktiver rotering"},dragCB:{en:"Enable move",nb:"Aktiver flytting"}},errCodes:{}});Ext.define("Client.module.tool.digitisedObjects.DataManager",{extend:Client.module.ToolGeneric,active:false,serviceUrl:null,serviceMethods:null,wgs84:new OpenLayers.Projection("EPSG:4326"),wktReader:new OpenLayers.Format.WKT(),lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.digitisedObjects.lang.Edit"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.store=Ext.create("Ext.data.Store",{model:"Client.data.model.UserData",groupField:"category",data:[]});this.bindStoreEvents();if(!this.serviceUrl){this.serviceUrl="WebServices/client/UserData.asmx/"}if(!this.serviceMethods){this.serviceMethods={create:"Create",read:"Read",update:"Update",destroy:"Destroy"}}},bindStoreEvents:function(){this.store.on("add",this.onStoreAdd,this);this.store.on("update",this.onStoreUpdate,this);this.store.on("remove",this.onStoreRemove,this)},onStoreAdd:function(g,b,h,o){this.reportRecordsAdded(b)},onStoreUpdate:function(h,b,g,q,o){this.reportRecordUpdated(b,q)},onStoreRemove:function(h,b,o,g,q){this.reportRecordDeleted(b)},saveUnsavedObjects:function(){if(this.recordsToBeSaved.length>0){var b=this;Ext.MessageBox.show({title:this.lang.getString("saveUserObjects_title"),msg:this.lang.getString("saveUserObjects_msg"),buttons:Ext.MessageBox.YESNO,icon:Ext.MessageBox.QUESTION,fn:function(g){if(g=="yes"){b.saveUserObject(b.recordsToBeSaved,true)}else{b.readUserObjects()}}})}else{this.readUserObjects()}},enqueueSaveUserObject:function(b,h){var g=this;if(!g.saveUserObjectTask){g.queuedObjects=[];g.saveUserObjectTask=new Ext.util.DelayedTask(function(){var o=g.queuedObjects,w=function(){o.forEach(function(z){z.fallback()})},q=[];g.queuedObjects=[];o.forEach(function(A){var z=A.record;if(!z.get("uuid")||!q.find(function(B){return B.get("uuid")===z.get("uuid")})){q.push(z)}});if(q.length){g.saveUserObject(q,false,w)}})}g.queuedObjects.push({record:b,fallback:h});g.saveUserObjectTask.delay(200)},saveUserObject:function(g,w,A){var q=[];var h=[];if(!Ext.isArray(g)){g=[g]}for(r in g){var z=g[r].getData();delete z.feature;q.push(g[r].get("feature"));h.push(z)}var o={me:this,features:q,records:g,reloadAfterSave:w,fallback:A};var b=g[0].get("uuid")?"update":"create";Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods[b],method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:h,extraParams:[]}
1),callback:Ext.bind(this.saveCallback,o)})},saveCallback:function(g,B,w){var A=this.me,o=this.records,h=B&&GeoMind.utils.Ajax.fixResponse(w);if(h&&h.success){for(var z=0;z<o.length;z++){var q=o[z],b=h.records[z].uuid;if(q.get("uuid")==b){q.commit()}else{q.set(h.records[z]);A.store.add(q)}}if(this.reloadAfterSave){A.readUserObjects()}A.fireEvent("saveUserObjectSuccess");A.reportEvent("updateDigitisedObjectsQuota")}else{if(h&&h.sessionExpired){delete GeoMind.utils.SessionManager.ss.sessionId}if(Ext.isFunction(this.fallback)){this.fallback()}}},readUserObjects:function(){var b=this;if(!GeoMind.utils.SessionManager.ss.sessionId){return}var g={};if(!this.serverFilter){this.serverFilter=Ext.create("GeoMind.data.DataFilter")}g.limit=1000;g.page=1;g.start=0;g.filter=this.serverFilter.getFilterObject();g.extraParams=[];Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.read,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(g),success:Ext.bind(this.readCallbackSuccess,this),failure:Ext.bind(this.readCallbackFailure,this)})},readCallbackSuccess:function(g,z){var w=this;if(w.firstLoadCompleted){while(this.store.getCount()>0){this.store.removeAt(0)}}w.firstLoadCompleted=true;g=GeoMind.utils.Ajax.fixResponse(g);if(g.success){var h=g.records;var b=[];for(var o=0;o<h.length;o++){var A=h[o];if(A&&A.wkt){var q=this.prepareRecord(h[o]);if(q){b.push(q)}}}this.store.add(b)}else{this.store.removeAll()}this.reportEvent("updateDigitisedObjectsQuota")},readCallbackFailure:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);console.warn("readCallbackFailure",b)},prepareRecord:function(z){var q=this,g=q.wgs84;var b=Ext.JSON.decode(z.style);z.visible=false;var o=Ext.create("Client.data.model.UserData",z),h=o.get("wkt");if(h.contains("SRID")){h=h.split(";");g=new OpenLayers.Projection("EPSG:"+h[0].replace("SRID=",""));h=h[1]}var w=q.wktReader.read(h);if(w&&Ext.isArray(w)&&w.length==1){w=w[0]}if(!w||!w.geometry||!w.attributes){return}w.attributes.color=b.color;w.attributes.thickness=b.thickness;w.attributes.name=o.get("name");w.attributes.category=o.get("category");w.attributes.tag=o.get("tag");w.attributes.hidden=!z.visible;w.attributes._size=b._size;w.attributes._symbol=b._symbol;if(!z.visible){w.style={display:"none"}}w.record=o;o.set("feature",w);return o},deleteUserObject:function(b){if(!Ext.isArray(b)){b=[b]}var g={me:this,records:b};Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.destroy,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({uuids:b.map(function(h){return h.get("uuid")}),extraParams:[]}
1),success:Ext.bind(this.deleteCallbackSuccess,g),failure:Ext.bind(this.deleteCallbackFailure,g)})},deleteCallbackSuccess:function(g,h){var b=this.records;g=GeoMind.utils.Ajax.fixResponse(g);if(g.success){this.me.store.remove(b);this.me.reportEvent("updateDigitisedObjectsQuota")}else{console.warn("failed to remove record server side, restore featrue")}},deleteCallbackFailure:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);console.warn("deleteCallbackFailure - should restroe record",b)},activate:function(b){this.active=true},deactivate:function(){this.active=false},reportRecordsAdded:function(b){var g=[];for(r in b){g.push(b[r].get("feature"))}var h={evtName:"recordsAdded",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{records:b,features:g}};this.dispatchEvent(h,{confirmationRequired:false})},reportRecordUpdated:function(b,g){var h={evtName:"recordUpdated",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{record:b,feature:b.get("feature"),modifiedFieldNames:g}};this.dispatchEvent(h,{confirmationRequired:false})},reportRecordDeleted:function(b){var g={evtName:"recordDeleted",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{record:b,feature:b.get("feature")}};this.dispatchEvent(g,{confirmationRequired:false})},getStyleFromFeature:function(g){var b=Ext.JSON.encode({color:g.attributes.fillColor,thickness:g.attributes.strokeWidth,hidden:g.attributes.hidden,_size:g.attributes._size,_symbol:g.attributes._symbol});return b},beforeMapReset:function(g){var b=this;this.recordsToBeSaved=[];if(!b.resetAppOperation){this.store.each(function(h){if(!h.get("uuid")){b.recordsToBeSaved.push(h)}})}this.store.removeAll()},afterMapReset:function(b){if(GeoMind.utils.SessionManager.ss.sessionId){this.saveUnsavedObjects()}},_onFeatureAdded:function(o){var h=this;var b=o.data;if(b.record&&b.record.get("uuid")){return}var q=b.clone();var g=Ext.create("Client.data.model.UserData",{name:b.attributes.name,category:b.attributes.category,wkt:"SRID="+h.map.getProjectionObject().proj.srsProjNumber+";"+h.wktReader.write(q),tag:b.attributes.tag,style:h.getStyleFromFeature(b),feature:b,show_measurement:b.attributes.show_measurement,show_label:b.attributes.show_label,show_coords:b.attributes.show_coords});b.record=g;var w=function(){h.store.add(g)};if(!GeoMind.utils.SessionManager.ss.sessionId){w()}else{h.saveUserObject(g,false,w)}},_onUpdateUserObjects:function(q){var o=this,b=q.data,w=b.clone();if(!w.geometry){return}var h="SRID="+o.map.getProjectionObject().proj.srsProjNumber+";"+o.wktReader.write(w),g=o.getStyleFromFeature(b);b.record.set({name:b.attributes.name,category:b.attributes.category,wkt:h,tag:b.attributes.tag,style:g,show_measurement:b.attributes.show_measurement,show_label:b.attributes.show_label,show_coords:b.attributes.show_coords});var z=function(){b.record.commit()};if(!GeoMind.utils.SessionManager.ss.sessionId){z()}else{o.enqueueSaveUserObject(b.record,z)}},_onRecordDelete:function(b){if(!GeoMind.utils.SessionManager.ss.sessionId){this.store.remove(b.data)}else{this.deleteUserObject(b.data)}}});Ext.define("Client.module.map.dataView.lang.Exporter",{strings:{exceptionTitle:{en:"Info",nb:"Info",nn:"Info"},nothingToExport:{en:"Nothing to export",nb:"Ingenting å eksportere",nn:"Ingenting å eksportere"},invalidGpxData:{en:"GPX exporter can only export lines and points. Polygons are not supported.",nb:"Kan kun eksportere linjer og punkter som GPX",nn:"Kan kun eksportere linjer og punkter som GPX"},callbackFailure_Msg1_part1:{en:"The server returned the following error: ",nb:"Serveren returnerte følgende feil: ",nn:"Serveren returnerte følgjende feil: "},callbackFailure_Msg1_part2:{en:" Please try again or contact the system administrator.",nb:" Vennligst prøv igjen eller kontakt systemets administrator",nn:" Vennligst prøv igjen eller kontakt systemets administrator"},callbackFailure_Msg2:{en:"Server communication error. Please try again or contact the system administrator.",nb:"Server kommunikasjonsfeil. Vennligst prøv igjen eller kontakt systemets administrator",nn:"Server kommunikasjonsfeil. Vennligst prøv igjen eller kontakt systemets administrator"},exportCanceled:{en:"Export canceled by user!",nb:"Eksport ble avbrutt av bruker!",nn:"Eksport ble avbrutt av bruker!"},exportWarningTitle:{en:"Export",nb:"Eksport",nn:"Eksport"},exportWarning:{en:"Export of this amount of properties takes a while. Do you want to continue?",nb:"Eksport av mange eiendommer kan ta lang tid. Vil du fortsette?",nn:"Eksport av mange eiendommer kan ta lang tid. Vil du fortsette?"},exportPdfSelectionRequired:{en:"Please select at least one row to export.",nb:"Vennligst velg minst én rad å eksportere."},exportRtzSelectionRequired:{en:"Please select at least one row to export.",nb:"Vennligst velg minst én rad å eksportere."},propertyPromptTitle:{en:"Report title",nb:"Navn på rapporten"}
1,propertyPromptLabel:{en:"Choose a optional report header",nb:"Skriv inn en valgfri navn på rapporten"},pdfChild:{en:"PDF (with children)",nb:"PDF (med barn)"},media:{en:"Media files (zip)",nb:"Media filer (zip)"},media_tooltip:{en:"Export all media for the selected rows.",nb:"Eksporter alle media tilknyttet de valgte radene."},propertyExportTitle:{en:"Export",nb:"Eksport"},propertyExportMsg:{en:"Export has started. A download link will be sent to you by email when it is ready",nb:"Generering av eksportfil har startet. Du vil motta en epost med link for å laste ned filen når den er klar"}},errCodes:{perm_denied:{en:"Permission denied.",nb:"Ingen tilgang til tema."},server_error:{en:"An error occured while exporting.",nb:"En feil oppstod ved eksport."}}});Ext.define("Client.module.tool.digitisedObjects.Exporter",{extend:GeoMind.base.Module,exportFormats:["SHP","GML","KML","GPX","GeoJSON","XLSX","CSV","HTML","TXT"],exportFormatsNoGpx:["SHP","GML","KML","GeoJSON","XLSX","CSV","HTML","TXT"],exportFormatsNonSpatial:["XLSX","CSV","HTML","TXT"],serviceUrl:"WebServices/client/DataViewExport.asmx/ExportUserObjects",lang:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);if(!g.lang){g.lang="Client.module.map.dataView.lang.Exporter"}g.lang=GeoMind.lang.Lang.registerTranslations(g.lang);g.addEvents(["exportfinished"])},doExport:function(o,h){var b=this;if(!h.data||h.data.length==0){b.fireEvent("exportfinished",{success:false,msgTitle:b.lang.getString("exceptionTitle"),msg:b.lang.getString("nothingToExport")});return}o=o.toLowerCase();if(o=="gpx"){var g=h.data.some(function(q){return q.geom_wkt.indexOf("POLYGON")>-1});if(g){b.fireEvent("notifyUser",b.lang.getString("invalidGpxData")+" - polygon konverteres til linje",6000)}}if(h.prj){h.projEpsg=h.prj.projCode}delete h.prj;if(b.displayProjection){h.displayEpsg=b.displayProjection.projCode}Ext.Ajax.request({url:b.serviceUrl,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{format:o,data:h},success:Ext.bind(b.onExportCallbackSuccess,b),failure:Ext.bind(b.onExportCallbackFailure,b)})},onExportCallbackSuccess:function(b,o){var h=this;b=GeoMind.utils.Ajax.fixResponse(b);var g;if(b.success){g={success:true,url:GeoMind.utils.Data.extractConfigObjectByKey(b.data,"download_url")}}else{g={success:false,msgTitle:h.lang.getString("exceptionTitle"),msg:b.exception?h.lang.getString("callbackFailure_Msg1_part1")+b.exception.msg+"</br>"+h.lang.getString("callbackFailure_Msg1_part2"):h.lang.getString("callbackFailure_Msg2")}}h.fireEvent("exportfinished",g)},onExportCallbackFailure:function(b){var g=this;g.fireEvent("exportfinished",{success:false,msgTitle:g.lang.getString("exceptionTitle"),msg:g.lang.getString("callbackFailure_Msg2")})}});Ext.define("Client.module.map.dataView.lang.Standard",{strings:{exportLoadMaskMsg:{en:"Exporting data...",nb:"Eksporterer data...",nn:"Eksporterer data..."},export_btn_text:{en:"Export",nb:"Eksport",nn:"Eksport"},export_btn_text_tip:{en:"Export selected rows to file",nb:"Eksporter valgte rader til fil",nn:"Eksporter valgte rader til fil"},exportTooltip:{en:"Your data will be exported to the file format ## using the projection",nb:"Dine data vil bli eksportert til filformatet ## i projeksjonen"},exportTooltipChange:{en:"You can change projection by selecting a different one in the lower left map corner.",nb:"Du kan endre projeksjon ved å velge en annen nederst til venstre i kartet."},exportPropertyEmailPopupHeading:{en:"Email",nb:"Epost"},exportPropertyEmailPopupText:{en:"The export will be sent to provided email address",nb:"Eksportfilen vil bli sendt til denne epostadressen"},exportPropertyEmailWarning:{en:"Valid email has to be filled inn",nb:"Du må fylle inn en epost"},exportPropertyEmailWarningHeader:{en:"Email missing",nb:"Manglende epost"},import_btn_text:{en:"Import",nb:"Import",nn:"Import"},import_btn_text_tip:{en:"Import data from file",nb:"Importer data fra fil",nn:"Importer data fra fil"},import_title:{en:"Import",nb:"Importer"},imported_n_rows:{en:"Imported {0} row(s)",nb:"Importerte {0} rad(er)"}
1,collapse_btn_text:{en:"Collapse",nb:"Minimer",nn:"Minimer"},collapse_btn_text_tip:{en:"Collapse the grid. You can still get it back!",nb:"Minimer tabellen. Du kan fremdeles hente den opp igjen senere!",nn:"Minimer tabellen. Du kan fremdeles hente den opp igjen senere!"},expand_btn_text:{en:"Expand",nb:"Bring tilbake",nn:"Bring tilbake"},expand_btn_text_tip:{en:"Show the grid",nb:"Vis tabellen igjen",nn:"Vis tabellen igjen"},reset_filter_item_text:{en:"Reset selection",nb:"Nullstill utvalg"},reset_filter_item_tip:{en:"Remove filter and selections and restore table to its initial state",nb:"Fjern utvalg og markeringer og last inn samtlige data på nytt"},filter_area_item_text:{en:"Select in map",nb:"Lag utvalg i kart"},filter_area_item_tip:{en:"Select and filter records by drawing a polygon in the map",nb:"Tegn et område i kartet for å velge og filtrere objekter"},themeSelection_prefix:{en:"Select by ",nb:"Lag utvalg med "},themeSelection_tip:{en:"Select and filter all objects intersecting the selected records in this theme",nb:"Velg og filtrer alle objekter som overlapper utvalget i dette temalaget"},add_to_filter_area_item_text:{en:"Add to selection in map",nb:"Legg til utvalg i kart"},add_to_filter_area_item_tip:{en:"Draw a polygon in the map to add objects to the current selection",nb:"Tegn et område i kartet for å legge objekter til utvalget"},edit_btn:{en:"Create new",nb:"Tegn ny"},edit_btn_tip:{en:"Create new object",nb:"Tegn et nytt objekt"},intersect_dig_obj_item_txt:{en:"Select by drawn polygon",nb:"Lag utvalg med tegnet polygon"},intersect_dig_obj_item_tip:{en:"Select and filter by shown drawn polygons (from Draw & Measure)",nb:"Velg og filtrer med påslåtte tegnede polygoner (fra Tegn og mål)"},intersect_my_data:{en:"Select by my data",nb:"Lag utvalg med mine data"},intersect_my_data_tip:{en:"Select and filter by shown uploaded data (from My data)",nb:"Velg og filtrer med påslåtte opplastede data (fra Mine data)"},export_pdf:{en:"Export to PDF",nb:"Eksporter til PDF"},export_property_list:{en:"Property list",nb:"Eiendomsliste"}
1,export_property_list_acos:{en:"Property list to ACOS Eiendom",nb:"Eiendomsliste til ACOS Eiendom"},export_detailed_info:{en:"Detailed info",nb:"Detaljert info"},filter_btn_text:{en:"Selection",nb:"Utvalg"},filter_btn_tip:{en:"Only show rows selected in table",nb:"Gjør utvalg i tabell"},add_selection_to_filter_btn_text:{en:"Show selected records",nb:"Vis bare valgte rader"},add_selection_to_filter_btn_tip:{en:"Filter selected records in table and map",nb:"Filtrer de markerte objektene i tabellen og kartet"},select_all_item_text:{en:"Select all",nb:"Marker alle"},select_all_item_tip:{en:"Select all records",nb:"Marker alle objecter"},selectall_btn_text:{en:"Select all",nb:"Velg alle",nn:"Velg alle"},selectall_btn_text_tip:{en:"Select all records in the table",nb:"Velg alle radene i tabellen",nn:"Velg alle radene i tabellen"},exported_feature_count:{en:"Exported {0} of {1} rows",nb:"Eksportert {0} av {1} rader",nn:"Eksportert {0} av {1} rader"},batch_edit_btn_text_many:{en:"Edit {0} records",nb:"Rediger {0} rader"},batch_edit_btn_text_one:{en:"Edit record",nb:"Rediger rad"},batch_edit_btn_tip:{en:"Edit up to 1000 selected or filtered records",nb:"Rediger opptil 1000 valgte eller filtrerte rader"},batch_delete_btn_text_one:{en:"Delete record",nb:"Slett rad"},batch_delete_btn_text_many:{en:"Delete {0} records",nb:"Slett {0} rader"},batch_delete_btn_text_tip:{en:"Delete up to 1000 selected or filtered records",nb:"Slett opptil 1000 valgte eller filtrerte rader"},statistic_btn_text_many:{en:"Statistic {0} records",nb:"Statistikk {0} rader"},statistic_btn_text_one:{en:"Statistic one record",nb:"Statistikk en rad"},statistic_btn_text_tip:{en:"Statistic for selected or filtered records",nb:"Statistikk for valgte eller filtrerte rader"},exportRtzTitle:{en:"<b>Export status</b>",nb:"<b>Eksport status</b>"},exportRtzText:{en:'Here you can change the status of exported routes. Leave it set to "Original" for unchanged status.',nb:'Her kan du endre status for eksporterte ruter. La den stå på "Original" for uendret status.'},exportRtzStatusLabel:{en:"Select status",nb:"Velg status"},exportRtzCancelLabel:{en:"Cancel",nb:"Avbryt"},exportRtzOkLabel:{en:"Ok",nb:"Ok"}},errCodes:{}});Ext.define("Client.module.tool.digitisedObjects.FeaturesGrid",{extend:Client.module.ToolGeneric,mixins:[Adaptive.mixins.Notify],lang:null,langExp:null,wktFormat:new OpenLayers.Format.WKT(),isFeatureSelected:false,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){var b=this;if(!this.lang){this.lang="Client.module.tool.digitisedObjects.lang.Edit"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.langExp=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.lang.Standard");this.exporter=Ext.create("Client.module.tool.digitisedObjects.Exporter",{displayProjection:b.displayProjection});this.exporter.on("exportfinished",this.onExportFinished,this);this.exporter.on("notifyUser",this.onNotifyUser,this);this.store.on("datachanged",this.onStoreDataChanged,this);if(!this.columns){this.columns=[{xtype:"templatecolumn",tpl:'<span class="grid-draw-measure-collapsible"></span>',width:16},{xtype:"checkcolumn",dataIndex:"visible",hideable:false,width:25,listeners:{scope:this,checkchange:this.onCheckChange}},{dataIndex:"name",flex:1},{text:this.lang.getString("grid_category"),dataIndex:"category",hidden:true}]}this.columns.push({xtype:"actioncolumn",hideable:false,items:[{iconCls:"icon-search",tooltip:this.lang.getString("actionZoomTo_tip_text"),tooltipType:"title",handler:Ext.bind(this.onRecordOpen,this)},{icon:"resx/icons/client/edit.png",tooltip:this.lang.getString("actionEdit_tip_text"),tooltipType:"title",handler:Ext.bind(this.onRecordEdit,this)},{icon:"resx/icons/client/delete.png",tooltip:this.lang.getString("actionDelete_tip_text"),tooltipType:"title",handler:Ext.bind(this.onRecordDelete,this)}]});this.addEvents(["recordDelete","recordSelected"])},getExportMenuText:function(g,b){var h=g;switch(g){case"KML":case"GPX":return g+" <small>(EPSG:4326)</small>";default:return g+" <small>("+b+")</small>"}},getExportMenuTooltip:function(h,b){var g=this;switch(h){case"KML":case"GPX":return g.lang.getString("exportTooltip").replace("##",h)+" EPSG:4326.";default:return g.lang.getString("exportTooltip").replace("##",h)+" "+b+".<br>"+g.lang.getString("exportTooltipChange")}},buildGui:function(){var h=this,b=h.displayProjection?h.displayProjection.projCode:map.projection.projCode;
1h.exportMenu=Ext.create("Ext.menu.Menu",{cls:"a3-menu-no-icon",showSeparator:false});for(var g=0;g<this.exporter.exportFormats.length;g++){h.exportMenu.add(Ext.create("Ext.menu.Item",{text:h.getExportMenuText(this.exporter.exportFormats[g],b),tooltip:h.getExportMenuTooltip(this.exporter.exportFormats[g],b),tooltipType:"qtip",format:this.exporter.exportFormats[g],handler:Ext.bind(this.onExportFormatClick,this)}))}this.exportBtn=Ext.create("Ext.button.Split",{text:this.langExp.getString("export_btn_text"),tooltip:this.langExp.getString("export_btn_text_tip"),tooltipType:"title",cls:"a3-dataview_btn_export",menu:h.exportMenu});this.exportBtn.on("click",function(o){o.showMenu()});this.view=Ext.create("Ext.grid.Panel",{hidden:true,hideHeaders:true,title:this.lang.getString("grid_header"),multiSelect:true,selModel:{allowDeselect:true},viewConfig:{markDirty:false},features:[{ftype:"grouping",startCollapsed:true,groupHeaderTpl:['<span class="grid-draw-measure-collapsible"></span>','<span class="{children:this.getClass}" style="display:inline-block;margin:2px 8px -2px 2px;"></span>',"{name:this.formatName}",'<span class="a3-userobjects-delete"></span>',{getClass:function(q){var o="x-grid-checkcolumn",z="x-grid-checkcolumn-checked",w=q.some(function(A){return A.data.visible});return w?o+" "+z:o},formatName:function(o){if(o==="__shared__"){return h.lang.getString("sharedWithYou")}return o?Ext.String.trim(o):h.lang.getString("uncategorized")}}],onGroupClick:function(E,A,G,D){var z=this,w=z.groupCache,C=!z.isExpanded(G),B;if(D.getTarget().className=="a3-userobjects-delete"){Ext.Msg.confirm(h.lang.getString("confirm_delete_cat_header"),h.lang.getString("confirm_delete_cat_text"),function(H){if(H==="yes"){h.deleteByCategory(G)}},this)}else{if(D.getTarget().className.contains("x-grid-checkcolumn")){var q=D.getTarget(),o="x-grid-checkcolumn-checked",F=q.className.contains(o)?true:false;h.setCatVisibility(!F,G)}else{if(z.collapsible){if(D.ctrlKey){Ext.suspendLayouts();for(B in w){if(B===G){if(C){z.expand(G)}}else{z.doCollapseExpand(true,B,false)}}Ext.resumeLayouts(true);return}if(C){z.expand(G)}else{z.collapse(G)}}}}}}],columns:this.columns,store:this.store,tbar:{cls:"a3-tbar",itemId:"digitisedObjectsTopToolbar",items:[{xtype:"tbfill"},this.exportBtn]}})},onStoreDataChanged:function(){var b=this.store;if(b.getCount()==0){this.view.hide()}else{this.view.show()}},onExportFormatClick:function(b,g){this.showLoadMask();this.exporter.doExport(b.format,this.collectSelectedData())},collectSelectedData:function(){var q=this.store.getRange();var o=[];for(var g=0;g<q.length;g++){if(q[g].get("visible")){var b=q[g].getData();o.push({name:b.name,attributes:b.feature.attributes,geom_wkt:this.wktFormat.write(b.feature),category:b.category})}}var h={name:"digi_objects",description:"user objects",data:o,prj:this.prj};return h},onExportFinished:function(b){this.hideLoadMask();if(!b.success){Ext.Msg.show({title:b.msgTitle,msg:b.msg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}else{document.getElementById("file_download_iframe").src=b.url}},onNotifyUser:function(g,b){this.showNotifyWarning(this.view.getEl(),g,b)},setMap:function(b){this.map=b;this.prj=this.map.getProjectionObject()},loadMask:null,showLoadMask:function(){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:this.langExp.getString("exportLoadMaskMsg")})}this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},setCatVisibility:function(g,h){var b=this;b.store.each(function(q,o){if(q.data.category==h){q.set("visible",g);b.reportEvent("visibilityChanged",{feature:q.get("feature"),visible:g})}})},onCheckChange:function(o,q,h){var g=this,b=g.store.getAt(q);this.reportEvent("visibilityChanged",{feature:b.get("feature"),visible:h})},onRecordOpen:function(h,o,g){var b=h.getStore().getAt(o);this.reportEvent("recordZoomTo",{record:b,feature:b.get("feature")})},deleteByCategory:function(g){var h=this,b=[];h.store.data.items.forEach(function(o){if(o.get("category")===g){b.push(o)}});h.reportRecordDelete(b);h.hideShowTitle()},onRecordDelete:function(h,o,g){var b=h.getStore().getAt(o);Ext.Msg.confirm(this.lang.getString("confirm_delete_header"),this.lang.getString("confirm_delete_text"),function(w){if(w==="yes"){var q=h.getStore().getAt(o);this.reportRecordDelete(q);this.hideShowTitle()}},this)},activate:function(g){var b=this;if(!b.view){b.init();b.buildGui()}b.hideShowTitle();b.onStoreDataChanged()},hideShowTitle:function(){if(this.view.getStore().getCount()==0){this.view.setTitle("")}else{this.view.setTitle(this.lang.getString("grid_header"))}},reportRecordDelete:function(b){var g={evtName:"recordDelete",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},onRecordEdit:function(h,o,g){var b=h.getStore().getAt(o);if(!b.get("visible")){b.set("visible",true);this.reportEvent("visibilityChanged",{feature:b.get("feature"),visible:true})}this.reportEvent("recordSelected",{record:b,feature:b.get("feature")})},highlightRecord:function(b,g){this.view.getSelectionModel().select([b],false,g)},_onFeatureSelected:function(b){this.isFeatureSelected=true;if(!(b.data&&b.data.record)){return}this.highlightRecord(b.data.record,true)},_onEndDraw:function(g){var b=this;b.isFeatureSelected=false;if(b.view){b.view.getSelectionModel().deselectAll(true);
1b.hideShowTitle()}},_onSetNewProjection:function(g){var b=this;b.displayProjection=g.data.proj;if(b.exporter){b.exporter.displayProjection=b.displayProjection}if(b.exportMenu){b.exportMenu.items.each(function(h){h.setText(b.getExportMenuText(h.format,b.displayProjection.projCode));h.setTooltip(b.getExportMenuTooltip(h.format,b.displayProjection.projCode))})}},_onFeatureModificationEnd:function(b){if(!this.view){return}this.isFeatureSelected=false;this.view.getSelectionModel().deselectAll(true)},_onAddDigitisedObjectsExportTool:function(h){var g=this,b;if(!g.view){g.init();g.buildGui()}b=g.view.down("[itemId=digitisedObjectsTopToolbar]");h.data.createButton(g,b)}});Ext.define("Client.module.tool.digitisedObjects.Settings",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],config:{btnsArray:[]},mode:null,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.digitisedObjects.lang.Edit"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.addEvents(["settingsChanged"]);g.doUpdateWkt=new Ext.util.DelayedTask(function(h){if(this.wkt&&h.geometry){this.wkt.setRawValue(new OpenLayers.Format.WKT().write(h))}},g);g.doUpdateGeometryPlotter=new Ext.util.DelayedTask(function(h){if(g.plotGeometry&&h.geometry){g.plotGeometry.updateCoords(h,g.map.getProjectionObject())}},g);g.dataStore.on("datachanged",g.onDataStoreLoad,g);g.dataStore.on("update",g.onDataStoreUpdate,g);g.categoryStore=Ext.create("Ext.data.Store",{fields:["key","name"]})},buildGui:function(){var b=this;b.fieldLang=b.lang;b.view=b.createForm({noScroll:true,buttons:[],items:[b.createTextBox("howto","info",{html:"<p>"+b.lang.getString("howto")+"</p><p>"+b.lang.getString("l_info1")+"</p>"}),b.createSet("fs_object",{title:"",collapsible:false,layout:{type:"column"},defaults:{xtype:"button",columnWidth:0.3333,toggleGroup:"geomTypeButtons",scale:"medium",listeners:{click:b.onGeomChange,scope:b}}},[{dataIndex:"point",text:b.lang.getString("point"),cls:"a3-draw-point"},{dataIndex:"line",text:b.lang.getString("line"),cls:"a3-draw-line"}
1,{dataIndex:"polygon",text:b.lang.getString("polygon"),cls:"a3-draw-polygon"}]),b.createField("snap",{xtype:"checkbox",inputValue:false}),b.createField("showLabels",{xtype:"checkbox",value:true}),b.createSet("dimensions",{title:"",collapsible:false,hidden:true,itemId:"dimensions"},[b.createField("length_area",{xtype:"checkbox",inputValue:false}),b.createField("nauticalCB",{xtype:"checkbox",inputValue:false}),b.createFc("length",true,{collapsible:false},[b.createField("length_km",{fieldLabel:"",xtype:"displayfield",width:"50%"}),b.createField("length_nm",{fieldLabel:"",xtype:"displayfield",width:"50%"})]),b.createField("area",{xtype:"displayfield"})]),b.createSet("fs_name_color_geom",{title:"",collapsible:false,hidden:true,itemId:"fs_name_color_geom"},[b.createField("name"),b.createField("label",{xtype:"checkbox",inputValue:false}),b.createField("category",{xtype:"combo",valueField:"key",displayField:"name",store:b.categoryStore,queryMode:"local"}),b.createFc("symboltype",false,{layout:{type:"column"},defaults:{xtype:"button",columnWidth:0.175,toggleGroup:"colorButtons",scale:"medium",allowDepress:false,listeners:{toggle:function(g,h){if(h){b.setColor(g.dataIndex)}},scope:b}}},[{dataIndex:"blue",cls:"a3-draw-blue",pressed:true},{dataIndex:"green",cls:"a3-draw-green"},{dataIndex:"purple",cls:"a3-draw-purple"},{dataIndex:"red",cls:"a3-draw-red"}])]),b.createQuotaFieldSet()]});b.color="blue";b.btnsArray=[b.view.down("[dataIndex=point]"),b.view.down("[dataIndex=line]"),b.view.down("[dataIndex=polygon]")];b.btnsArray[0].setIconHtml(Adaptive.ux.Icons.drawPoint);b.btnsArray[1].setIconHtml(Adaptive.ux.Icons.drawLine);b.btnsArray[2].setIconHtml(Adaptive.ux.Icons.drawPolygon);b.setInternalRefs()},createQuotaFieldSet:function(){var b=this;return b.createSet("fs_quota",{collapsible:false,hidden:!b.quotaData},[b.createText("quota_info"),b.createText("quota_extended",{hidden:!b.quotaData||!b.quotaData.isExtended}),{xtype:"box",itemId:"quota",tpl:new Ext.XTemplate('<div class="a3-quota {[this.getWarningLevel(values)]}">
1','<div class="a3-quota-engraved" style="width: {usage}%"></div>','<span class="a3-quota-percent">{usage:number(0.0)}%</span>',"</div>",{getWarningLevel:function(g){if(g.isExceeded){return"full"}if(g.usage>80){return"warning"}return""}}),data:b.quotaData||{usage:0}},b.createTextBox("quota_exceeded",{hidden:!b.quotaData||!b.quotaData.isExceeded})])},updateQuota:function(){var b=this;Ext.Ajax.request({url:"WebServices/client/UserData.asmx/QuotaStatus",jsonData:{},callback:function(h,q,g){var o=q&&GeoMind.utils.Ajax.fixResponse(g);if(o&&o.success){b.setQuotaData(o.records)}}})},setQuotaData:function(w){var h=this,b=h.view&&h.view.down("#fs_quota"),g=h.view&&h.view.down("#quota"),q=h.view&&h.view.down("#quota_extended"),o=h.view&&h.view.down("#quota_exceeded");h.quotaData=w;if(g){g.update(w);if(b){b.setVisible(!!w)}q.setVisible(w&&w.isExtended);o.setVisible(w&&w.isExceeded);h.btnsArray.forEach(function(z){z.setDisabled(w&&w.isExceeded)})}},showQuotaExceededNotify:function(){var b=this;b.fireEvent("notifyError",b.lang.getString("storage_full"))},setColor:function(b){var g=this;g.color=b;g.reportSettingsChanged()},setInternalRefs:function(){var b=this;this.dimensionsContainer=this.view.query("#dimensions")[0];this.measureCBox=this.view.query("[dataIndex=length_area]")[0];this.measureCBox.on("change",this.onMeasureCBoxChange,this);this.snapCBox=this.view.query("[dataIndex=snap]")[0];this.snapCBox.on("change",this.onSnapCBoxChange,this);b.showLabelsCBox=b.getItem("showLabels");b.showLabelsCBox.on("change",b.onShowLabelsCBoxChange,b);b.nauticalCBox=this.view.query("[dataIndex=nauticalCB]")[0];b.nauticalCBox.on("change",b.onNauticalCBoxChange,b);if(!b.showNauticalDistance){b.nauticalCBox.hide()}this.txtName=this.view.query("[dataIndex=name]")[0];this.txtName.on("change",this.onTxtNameChange,this);this.labelCBox=b.getItem("label");this.labelCBox.on("change",b.onLabelCBoxChange,b);this.txtCategory=this.view.query("[dataIndex=category]")[0];this.txtCategory.on("change",this.onTxtCategoryChange,this);this.area=this.view.query("[dataIndex=area]")[0];b.length=b.getItem("length_km");b.nautical=b.getItem("length_nm");this.wkt=this.view.down("[dataIndex=wkt]");b.plotGeometry=this.view.down("[itemId=plotGeometry]")},onGeomChange:function(g){var h=this,b=h.view.down("[dataIndex=fs_geom_edit]");h.reportEndDraw();h.silent=true;h.txtName.reset();h.txtCategory.reset();h.silent=false;h.geomType=g.dataIndex;h.displayDimensionsFields();if(h.plotGeometry){h.plotGeometry.setSpatialType(h.geomType)}if(g.pressed){this.reportStartDraw();this.view.down("#fs_name_color_geom").show();if(b){b.show()}this.reportEvent("mapPopupHide")}else{this.view.down("#fs_name_color_geom").hide();if(b){b.hide()}this.disableSelected();this.reportEvent("digiToolDisabled")}},displayDimensionsFields:function(){var b=this;switch(b.geomType){case"point":b.dimensionsContainer.hide();break;case"line":b.area.hide();b.length.show();b.nautical.setVisible(b.showNauticalDistance);b.dimensionsContainer.show();break;case"polygon":b.area.show();b.length.show();b.nautical.setVisible(b.showNauticalDistance);b.dimensionsContainer.show();break}},onTxtNameChange:function(){this.reportSettingsChanged()},onTxtCategoryChange:function(o,h,b,g){this.reportSettingsChanged()},onMeasureCBoxChange:function(){this.reportMeasureChanged()},onSnapCBoxChange:function(g,o,b,h){this.reportSnapChanged()},onNauticalCBoxChange:function(g,q,b,h){var o=this;o.showNauticalDistance=q;if(q){switch(o.geomType){case"line":case"polygon":o.nautical.show();break}}else{o.nautical.hide()}o.reportNauticalChanged()},onShowLabelsCBoxChange:function(o,q,b,g){var h=this;h.reportEvent("switchLabelVisibilityState",q)},onLabelCBoxChange:function(o,q,b,g){var h=this;h.reportSettingsChanged()},onRadioColorChange:function(){this.reportSettingsChanged()},onRadioThicknessChange:function(){this.reportSettingsChanged()},collectSettings:function(){return{color:this.color,thickness:"regular",name:this.txtName.getValue(),category:this.txtCategory.getValue(),show_measurement:this.measureCBox.getValue(),show_label:this.labelCBox.getValue()}},reportSettingsChanged:function(){var b=this;if(!b.silent){b.reportEvent("settingsChanged",b.collectSettings())}},reportSnapChanged:function(){var b=this;b.reportEvent("snapChanged",b.snapCBox.getValue())},reportMeasureChanged:function(){var b=this;b.reportEvent("measureChanged",b.measureCBox.getValue())},reportNauticalChanged:function(){var b=this;b.reportEvent("nauticalChange",b.nauticalCBox.getValue())},reportStartDraw:function(){var b=this;b.reportEvent("startDraw",{geomtype:b.geomType,settings:b.collectSettings()})},reportEndDraw:function(){var b=this;b.reportEvent("endDraw",b.geomType)},deactivate:function(){this.resetDescription();this.resetButtons()},activate:function(b){var g=this;if(!g.view){g.buildGui()}},resetButtons:function(){var b=this.btnsArray.length;for(var g=0;g<b;g++){this.btnsArray[g].toggle(false,true)}this.reportEndDraw()},resetDescription:function(){var b=this;if(!b.view){return}b.silent=true;b.txtCategory.setValue(null);b.txtName.setValue(null);if(b.wkt){b.wkt.setValue(null)}if(b.plotGeometry){b.plotGeometry.clearCoordCards();b.plotGeometry.clearCoordStore()}b.length.setValue(null);b.area.setValue(null);b.nautical.setValue(null);b.labelCBox.setValue(null);b.silent=false},enableSelected:function(g){var b=this.getGeomType(g);if(b!="point"){this.dimensionsContainer.show();this.length.show();if(b=="polygon"){this.area.show()}else{this.area.hide()}}else{this.dimensionsContainer.hide()}},getGeomType:function(g){var b=null;if(g){var h=g.geometry.CLASS_NAME;if(g.geometry.CLASS_NAME.indexOf("Polygon")>-1){b="polygon"}else{if(g.geometry.CLASS_NAME.indexOf("Line")>-1){b="line"}else{b="point"}}}else{b=this.geomType}return b},disableSelected:function(){var g=this;if(!g.view){return}g.dimensionsContainer.hide();g.view.down("#fs_name_color_geom").hide();var b=g.view.down("[dataIndex=fs_geom_edit]");if(b){b.hide()}},_onUserSignedOut:function(){this.setQuotaData(null)},_onFeatureSelected:function(q){var o=this,h=q.data.settings,g=q.data.feature;o.silent=true;o.geomType=o.getGeomType(g);var b=o.view.down("[dataIndex="+h.fillColor+"]");
1if(b&&!b.pressed){b.toggle()}o.txtCategory.setValue(h.category);o.txtName.setValue(h.name);o.view.down("#fs_name_color_geom").show();o.view.down("[dataIndex=length_area]").setValue(h.show_measurement);o.labelCBox.setValue(h.show_label);o.displayDimensionsFields();o.enableSelected(q.data.feature);o.silent=false},_onFeatureModificationEnd:function(b){this.resetDescription();this.disableSelected()},_onFeatureAdded:function(b){this.resetButtons();this.resetDescription()},_onRecordDeleted:function(b){this.resetButtons();this.resetDescription();this.disableSelected()},_onFeatureGeomChanged:function(D){var A=this,z=D.data,h=A.length,g=A.area,q=A.nautical;if(!h||!g||!q){return}var B=h.getEl(),E=g.getEl(),b=q.getEl(),w=A.formatLength(z.length),C=A.formatArea(z.area),o=A.formatNauticalMiles(z.length);if(B){B.down(".x-form-display-field").update(w)}else{h.on("render",function(){h.setValue(w)},A,{single:true})}if(E){E.down(".x-form-display-field").update(C)}else{g.on("render",function(){g.setValue(C)},A,{single:true})}if(b){b.down(".x-form-display-field").update(o)}else{q.on("render",function(){q.setValue(o)},A,{single:true})}if(A.wkt){A.doUpdateWkt.delay(75,null,A,[z.feature])}if(A.plotGeometry){A.doUpdateGeometryPlotter.delay(75,null,A,[z.feature,A.map.getProjectionObject()])}},_onUpdateDigitisedObjectsQuota:function(){var b=this;if(!b.updateQuotaTask){b.updateQuotaTask=new Ext.util.DelayedTask(b.updateQuota,b)}b.updateQuotaTask.delay(500)},_onConfirmCreateDigiObject:function(h){var g=this,b=0;b=h.data.features.reduce(function(q,o){return q+o.geometry.getVertices().length},0);if(b>1000){setTimeout(function(){g.mixins.notify.showNotifyError(g.view,g.lang.getString("too_large_object"))},500)}else{if(g.quotaData&&g.quotaData.isExceeded){setTimeout(function(){g.showQuotaExceededNotify()},500)}else{h.callback()}}},formatArea:function(h){var g=this,b=Ext.util.Format.thousandSeparator;Ext.util.Format.thousandSeparator=" ";if(g.showHectare){return Ext.util.Format.number(h/10000,"0,000.00")+" ha"}else{if(h>1000000){return Ext.util.Format.number(h/1000000,"0,000.00")+" km<sup>2</sup>"}else{if(h>1000){return Ext.util.Format.number(h,"0,000")+" m<sup>2</sup>"}else{return Ext.util.Format.number(h,"0,000.00")+" m<sup>2</sup>"}}}Ext.util.Format.thousandSeparator=b},formatLength:function(b){if(b>1000){return Ext.util.Format.number(b/1000,"0,000.00")+" km"}else{return Ext.util.Format.number(b,"0,000.00")+" m"}},formatNauticalMiles:function(h){var g=this,b=1852;return Ext.util.Format.number(h/b,"0,000.00")+" nm"},onDataStoreLoad:function(g,b){var h=this;h.addCategoriesToStore(g)},onDataStoreUpdate:function(g,b){var h=this;h.addCategoriesToStore(g)},addCategoriesToStore:function(g){var h=this,b=g.getGroups();b=b.filter(function(o){return !!o.name}).map(function(q){var o=q.name;if(q.name==="__shared__"){o=h.lang.getString("sharedWithYou")}return{key:q.name,name:o}});h.categoryStore.loadData(b,false)}});Ext.define("Client.module.tool.digitisedObjects.SettingsPro",{extend:Client.module.tool.digitisedObjects.Settings,mixins:[Adaptive.form.mixins.Generator],config:{markers:{point:["circle","pin_green","pin_red","pin_blue","arrow_green","arrow_red","arrow_blue","flower_green","flower_red","flower_blue","flag_green","flag_red","flag_blue","star_green","star_red","star_blue"],line:["dot","dash","dashdot","longdash","longdashdot","solid"],polygon:["fill_0","fill_20","fill_50"]}},buildGui:function(){var g=this,b;g.fieldLang=g.lang;g.symbolType=Ext.create("Ext.data.Store",{fields:["key","value"]});b=Ext.create("Ext.data.ArrayStore",{fields:["text","value"],data:[["m",1],["km",1000],["nm",1852]]});g.bufferFailedPanel=g.createTextBox("buffer_failed","failed",{hidden:true});g.wktFailedPanel=g.createTextBox("wkt_failed","failed",{hidden:true});g.geomEditor=Ext.create("Adaptive.ux.PlotGeometry",{itemId:"plotGeometry",map:g.map,displayProjection:g.map.getDisplayProjection(),initialProjections:GeoMind.utils.DictionaryManager.getDictionary("projections"),updateDelay:500,layout:{type:"vbox",align:"stretch"},listeners:{geomUpdated:function(h){g.reportEvent("GeometryPlotterUpdated",h)}}});g.view=g.createForm({noScroll:true,buttons:[],items:[g.createTextBox("howto","info",{html:"<p>"+g.lang.getString("howto")+"</p><p>"+g.lang.getString("l_info1")+"</p>"}),g.createSet("fs_object",{title:"",collapsible:false,layout:{type:"column"},defaults:{xtype:"button",columnWidth:0.3333,toggleGroup:"geomTypeButtons",scale:"medium",listeners:{click:g.onGeomChange,scope:g}}},[{dataIndex:"point",text:g.lang.getString("point"),cls:"a3-draw-point"},{dataIndex:"line",text:g.lang.getString("line"),cls:"a3-draw-line"}
1,{dataIndex:"polygon",text:g.lang.getString("polygon"),cls:"a3-draw-polygon"}]),g.createFc("","",{title:"",collapsible:false},[g.createFc("",null,{layout:"vbox"},[g.createField("snap",{xtype:"checkbox",inputValue:false}),g.createField("showLabels",{xtype:"checkbox",value:true})]),g.createFc("",null,{layout:"vbox"},[g.createField("dragCB",{xtype:"checkbox",value:false}),g.createField("rotateCB",{xtype:"checkbox",value:false})])]),g.createSet("dimensions",{title:"",collapsible:false,hidden:true,itemId:"dimensions"},[g.createField("length_area",{xtype:"checkbox",inputValue:false}),g.createField("nauticalCB",{xtype:"checkbox",inputValue:false}),g.createFc("length",true,{collapsible:false},[g.createField("length_km",{fieldLabel:"",xtype:"displayfield",width:"50%"}),g.createField("length_nm",{fieldLabel:"",xtype:"displayfield",width:"50%"})]),g.createField("area",{xtype:"displayfield"})]),g.createSet("fs_name_color_geom",{title:"",collapsible:false,hidden:true,itemId:"fs_name_color_geom"},[g.createField("name"),g.createField("label",{xtype:"checkbox",inputValue:false}),g.createField("category",{xtype:"combo",valueField:"key",displayField:"name",store:g.categoryStore,queryMode:"local"}),g.createField("size",{xtype:"numberfield",minValue:1,maxValue:100,value:3}),g.createColorField("color",{value:"0 153 204"}),g.createField("symboltype",{xtype:"combo",store:g.symbolType,editable:false,lastQuery:"",addClearTrigger:false})]),g.createSet("fs_geom_edit",{collapsible:false,hidden:true},[g.createField("show_coords",{xtype:"checkbox",inputValue:false}),g.geomEditor,g.createGeometryField("wkt",{listeners:{scope:g,change:g.onGeometryFieldChange}}),g.wktFailedPanel]),g.createSet("fs_buffer",{html:"<p>"+g.lang.getString("buffer_tip"),collapsible:false,hidden:true},[{xtype:"container",layout:"hbox",items:[g.createField("field_buffer",{xtype:"numberfield",allowBlank:false,fieldLabel:"",flex:1}),g.createField("buffer_unit",{xtype:"combo",store:b,editable:false,allowBlank:false,fieldLabel:"",flex:1,value:1,valueField:"value",displayField:"text"})]},{xtype:"button",cls:"a3-save-btn a3-submit-btn a3-right",text:g.lang.getString("buffer_create"),itemId:"btnSave",tooltip:g.lang.getString("buffer_create_tip"),tooltipType:"title",listeners:{scope:g,click:g.onBuffer}}]),g.bufferFailedPanel,g.createQuotaFieldSet()]});g.setInternalRefs();g.color.mon(g.color,"colorchange",g.reportSettingsChanged,g);g.size.mon(g.size,"change",g.reportSettingsChanged,g);g.symbol.mon(g.symbol,"change",g.symbolchange,g);g.btnsArray=[g.view.down("[dataIndex=point]"),g.view.down("[dataIndex=line]"),g.view.down("[dataIndex=polygon]")];g.btnsArray[0].setIconHtml(Adaptive.ux.Icons.drawPoint);g.btnsArray[1].setIconHtml(Adaptive.ux.Icons.drawLine);g.btnsArray[2].setIconHtml(Adaptive.ux.Icons.drawPolygon)},onBuffer:function(){var q=this,A=q.view.down("[dataIndex=field_buffer]"),w=q.view.down("[dataIndex=buffer_unit]"),o=q.txtCategory.getValue(),b=q.view.down("[dataIndex=name]").getValue(),z,g,h;if(q.quotaData&&q.quotaData.isExceeded){q.showQuotaExceededNotify();return}if(A.isValid()){z=A.getValue();h=w.getDisplayValue();g=w.getValue();q.reportEvent("bufferFeature",{wkt:q.view.down("[dataIndex=wkt]").getValue(),distance:z*g,name:b+" ("+z+" "+h+")",category:o})}},onGeometryFieldChange:function(h,g){var b=this;b.wktFailedPanel.hide();b.reportEvent("wktFieldUpdated",g)},setInternalRefs:function(){var g=this,b=g.view.down("#fs_name_color_geom");g.color=b.down("[name=color]"),g.size=b.down("[name=size]"),g.symbol=b.down("[name=symboltype]");g.showCoordsCBox=g.view.down("[dataIndex=show_coords]");g.showCoordsCBox.on("change",g.onShowCoordsCBoxChange,g);g.dragCBox=g.view.down("[dataIndex=dragCB]");g.dragCBox.on("change",g.reportDragChanged,g);g.rotateCBox=g.view.down("[dataIndex=rotateCB]");g.rotateCBox.on("change",g.reportRotateChanged,g);g.callParent(arguments)},onShowCoordsCBoxChange:function(){var b=this;b.reportEvent("showCoordsChanged",b.showCoordsCBox.getValue())},onGeomChange:function(b){var g=this;g.callParent(arguments);g.view.down("#fs_buffer").hide();g.updateSymbols();g.setDefaults()},setDefaults:function(){var b=this;switch(b.geomType){case"polygon":b.symbol.setValue("fill_50");b.size.setValue(3);break;case"line":b.symbol.setValue("solid");b.size.setValue(3);break;case"point":b.symbol.setValue("circle");b.size.setValue(5);break}},updateSymbols:function(){var b=this,g=function(h){h.forEach(function(o){b.symbolType.add({key:o,value:b.lang.getString(o)})})};b.symbolType.removeAll();g(b.markers[b.geomType]);switch(b.geomType){case"polygon":b.size.setFieldLabel(b.lang.getString("size_line"));break;case"line":b.size.setFieldLabel(b.lang.getString("size_line"));break;case"point":b.size.setFieldLabel(b.lang.getString("size_point"));break}},symbolchange:function(){var g=this,q=g.symbol.getValue(),b=q.split("_"),o=3,h=true;if(b.length>1){switch(b[1]){case"red":h=false;g.color.setValue("255 0 0");break;case"green":h=false;g.color.setValue("150 200 0");break;case"blue":h=false;g.color.setValue("0 200 255");break}}if(Ext.Array.contains(g.markers.point,q)){if(q=="circle"){o=5}else{o=false;o=32}}g.size.setValue(o);g.color.setVisible(h);g.reportSettingsChanged()},collectSettings:function(){var b=this;return{color:b.color.getHexValue(),name:b.txtName.getValue(),category:b.txtCategory.getValue(),show_measurement:b.measureCBox.getValue(),thickness:b.size.getValue(),_symbol:b.symbol.getValue(),_size:b.size.getValue(),show_label:b.labelCBox.getValue(),showCoords:b.showCoordsCBox.getValue()}},disableSelected:function(){var b=this;b.callParent();if(b.view){b.view.down("#fs_buffer").hide()}},reportDragChanged:function(){var b=this;b.reportEvent("dragChanged",b.dragCBox.getValue())},reportRotateChanged:function(){var b=this;b.reportEvent("rotateChanged",b.rotateCBox.getValue())},_onFeatureSelected:function(q){var o=this,h=q.data.settings,g=q.data.feature,b=g.attributes;o.silent=true;o.geomType=o.getGeomType(g);o.updateSymbols();o.txtCategory.setValue(h.category);o.txtName.setValue(h.name);o.view.down("#fs_name_color_geom").show();o.view.down("[dataIndex=fs_geom_edit]").show();o.view.down("#fs_buffer").show();o.view.down("[dataIndex=length_area]").setValue(h.show_measurement);o.view.down("[dataIndex=show_coords]").setValue(h.show_coords);o.labelCBox.setValue(h.show_label);o.displayDimensionsFields();o.color.setHexValue(b._color);if(!b._symbol||!b._size){o.setDefaults()}else{o.symbol.setValue(b._symbol);o.size.setValue(b._size)}o.enableSelected(g);o.silent=false},_onBufferFailed:function(){var b=this.bufferFailedPanel;b.show();setTimeout(function(){b.hide()},10000)},_onWktFailed:function(){var b=this.wktFailedPanel;b.show();setTimeout(function(){b.hide()},10000)}});Ext.define("Client.module.tool.digitisedObjects.mixins.OLSettings",{showLabels:true,thickness:{light:1,regular:3,bold:3,extra_bold:4},color:{blue:"#0099cc",purple:"#800080",green:"#00cc00",red:"#C20000"},labelSettings:{fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2,pointerEvents:"none",labelXOffset:0,labelYOffset:20,strokeWidth:1,pointRadius:5},vertexRadius:10,pointRadius:5,fillOpacity:0.5,getThickness:function(b){if(Ext.isNumeric(b)){return b}return this.thickness[b]},getColor:function(b){if(b&&b.charAt(0)==="#"){return b}return this.color[b]},bindOlStyles:function(o,q){var w=this,h="resx/icons/client/",b=o.attributes;b.geomtype=null;switch(q._symbol){case"fill_50":b.opacity=50;b.geomtype="polygon";q.fillOpacity=0.5;break;case"fill_20":b.opacity=20;b.geomtype="polygon";q.fillOpacity=0.2;break;case"fill_0":b.opacity=1;b.geomtype="polygon";q.fillOpacity=0.01;break;case"dot":case"dash":case"dashdot":case"longdash":case"longdashdot":case"solid":b.geomtype="line";q.strokeDashstyle=q._symbol;break;case"circle":b.geomtype="point";q.fillOpacity=0.5;q.pointRadius=q._size;q.thickness="regular";b.externalGraphic=null;break;case"pin_green":q.externalGraphic=h+"routing_start.png";break;case"pin_red":q.externalGraphic=h+"routing_end.png";break;case"pin_blue":q.externalGraphic=h+"routing_via.png";break;case"arrow_green":q.externalGraphic=h+"markers/angled_green.png";break;case"arrow_red":q.externalGraphic=h+"markers/angled_red.png";break;case"arrow_blue":q.externalGraphic=h+"markers/angled_blue.png";break;case"flower_green":q.externalGraphic=h+"markers/flower_green.png";break;case"flower_red":q.externalGraphic=h+"markers/flower_red.png";break;case"flower_blue":q.externalGraphic=h+"markers/flower_blue.png";break;case"flag_green":q.externalGraphic=h+"markers/pennant_green.png";break;case"flag_red":q.externalGraphic=h+"markers/pennant_red.png";break;case"flag_blue":q.externalGraphic=h+"markers/pennant_blue.png";break;case"star_green":q.externalGraphic=h+"markers/star_green.png";break;case"star_red":q.externalGraphic=h+"markers/star_red.png";break;case"star_blue":q.externalGraphic=h+"markers/star_blue.png";break;default:b.geomtype="point";break}switch(q._symbol){case"pin_green":case"pin_red":case"pin_blue":case"arrow_green":case"arrow_red":case"arrow_blue":case"flower_green":case"flower_red":case"flower_blue":case"flag_green":case"flag_red":case"flag_blue":case"star_green":case"star_red":case"star_blue":var g=q._size;q.graphicYOffset=-g;q.graphicHeight=g;q.graphicWidth=g;q.fillOpacity=1;break}q.color=q.color||w.color.blue;b.pointRadius=q.pointRadius||w.pointRadius;b.strokeWidth=q.thickness||w.thickness.regular;b.strokeColor=q.color;b.fillColor=q.color;b._color=w.getColor(q.color);delete q.thickness;delete q.color;Ext.apply(b,q)},getLineLabelOffset:function(q,w){var z=this,g=q.getBounds().getCenterPixel(),b=z.map.getPixelFromLonLat(new OpenLayers.LonLat(g.x,g.y)),h=q.getVertices(),o=z.map.getPixelFromLonLat(new OpenLayers.LonLat(h[0].x,h[0].y));return w?b.x-o.x:o.y-b.y},getLayerStyle:function(){var b=this,g=new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"${getStrokeColor}",strokeWidth:"${getStrokeWidth}",strokeOpacity:"${getStrokeOpacity}",strokeDashstyle:"${getStrokeDashstyle}",fillColor:"${getFillColor}",fillOpacity:"${getFillOpacity}",pointRadius:"${getRadius}",fontSize:b.labelSettings.fontSize,fontColor:b.labelSettings.fontColor,fontFamily:b.labelSettings.fontFamily,labelAlign:this.labelSettings.labelAlign,labelXOffset:"${getLableOffsetX}",labelYOffset:"${getLableOffsetY}",labelOutlineColor:this.labelSettings.labelOutlineColor,labelOutlineWidth:this.labelSettings.labelOutlineWidth,label:"${getLabel}",externalGraphic:"${getExternalGraphic}",graphicYOffset:"${getGraphicYOffset}",graphicWidth:"${getGraphicWidth}",graphicHeight:"${getGraphicHeight}",graphicZIndex:"${getZIndex}"},OpenLayers.Feature.Vector.style["default"]),{context:{getStrokeColor:function(h){return b.getColor(h.attributes.strokeColor)},getStrokeOpacity:function(h){return h.attributes.strokeOpacity||1},getStrokeDashstyle:function(h){return h.attributes.strokeDashstyle||""},getFillColor:function(h){return b.getColor(h.attributes.fillColor)},getFillOpacity:function(h){if(h.attributes.radiusHandle||h.attributes.dragHandle){return 0.9}return h.attributes.fillOpacity||b.fillOpacity},getStrokeWidth:function(h){if(h.geometry&&h.geometry.CLASS_NAME=="OpenLayers.Geometry.LineString"){return b.getThickness(h.attributes.strokeWidth)*2}return b.getThickness(h.attributes.strokeWidth)},getRadius:function(h){if(h.attributes.radiusHandle||h.attributes.dragHandle){return 18}return h.attributes.pointRadius||b.vertexRadius},getLabel:function(h){if(h.attributes.show_label&&b.showLabels){return h.attributes.name?h.attributes.name:""}return""},getLableOffsetX:function(h){if(h.geometry instanceof OpenLayers.Geometry.LineString){return b.getLineLabelOffset(h.geometry,true)}else{if(h.geometry instanceof OpenLayers.Geometry.Point){return b.labelSettings.labelXOffset}}return 0},getLableOffsetY:function(h){if(h.geometry instanceof OpenLayers.Geometry.LineString){return b.getLineLabelOffset(h.geometry,false)}else{if(h.geometry instanceof OpenLayers.Geometry.Point){return b.labelSettings.labelYOffset}}return 0},getExternalGraphic:function(h){if(h.attributes.radiusHandle){return"resx/icons/client/rotate_bg.svg"}if(h.attributes.dragHandle){return"resx/icons/client/move_bg.svg"}return h.attributes.externalGraphic||""},getGraphicYOffset:function(h){return h.attributes.graphicYOffset||0},getGraphicHeight:function(h){return h.attributes.graphicHeight||0},getGraphicWidth:function(h){return h.attributes.graphicWidth||0},getZIndex:function(h){if(h.geometry){if(h.geometry.CLASS_NAME=="OpenLayers.Geometry.Polygon"){return 0}else{if(h.geometry.CLASS_NAME=="OpenLayers.Geometry.LineString"){return 50}else{return 100}}}}}});return new OpenLayers.StyleMap({"default":g,select:g})}});Ext.define("Adaptive.mixins.OLMeasure",{measurementStyle:{label:"",fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2},drawMeasurementForFeature:function(E,h,w){var B=this,q=E.geometry.getVertices(),C,D,g,A,b;B.clearupFeatureMeasurements(E);if(q.length<=1){return}b=E&&E.geometry&&(E.geometry instanceof OpenLayers.Handler.Polygon||E.geometry.CLASS_NAME=="OpenLayers.Geometry.Polygon");
1if(h!==false){for(var o=1;o<q.length;o++){C=new OpenLayers.Geometry.Point(q[o-1].x,q[o-1].y);D=new OpenLayers.Geometry.Point(q[o].x,q[o].y);g=B.createTextNode(C,D);if(g){g.attributes.ignore=true;B.drawLayer.addFeatures([g]);E.textNodes.push(g)}}if(b){C=new OpenLayers.Geometry.Point(q[0].x,q[0].y);D=new OpenLayers.Geometry.Point(q[q.length-1].x,q[q.length-1].y);g=B.createTextNode(C,D);if(g){g.attributes.ignore=true;B.drawLayer.addFeatures([g]);E.textNodes.push(g)}}}if(w&&b){A=this.createTotalAreaTextNode(E.geometry);if(A){A.attributes.ignore=true;try{B.drawLayer.addFeatures([A]);E.textNodes.push(A)}catch(z){}}}},clearupFeatureMeasurements:function(g){if(!g){return}if(g.textNodes&&g.textNodes.length>0&&g.textNodes[0].layer){var b=g.textNodes[0].layer;b.removeFeatures(g.textNodes)}g.textNodes=[]},createTextNode:function(B,C){var w=this,g=new OpenLayers.Geometry.LineString([B,C]),q=g.getGeodesicLength(w.map.getProjection()),h=1852,b;if(q==0){return}var o=g.getCentroid(),A=Ext.Number.toFixed(q,1),z=Ext.Number.toFixed(q/h,2);if(w.showMeasurement&&w.showNauticalDistance){b=A+" m / "+z+" nm"}else{if(w.showMeasurement){b=A+" m"}else{if(w.showNauticalDistance){b=z+" nm"}}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point((B.x+C.x)/2,(B.y+C.y)/2),{show_label:true,name:b,labelStyle:"small"},{label:b,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})},createTotalAreaTextNode:function(A){var z=this,o=A.getVertices(),w=A.getGeodesicArea(z.map.getProjection()),q=A.getCentroid(),g,b,h;if(o.length<=2){return}if(w/1000000>=1){g=Ext.Number.toFixed(w/1000000,2);b="km2"}else{if(w/10000>=1){g=Ext.util.Format.number(w,"0,0");b="m2"}else{g=Ext.Number.toFixed(w,1);b="m2"}}h=g+" "+b;return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(q.x,q.y),{show_label:true,name:g+" "+b,labelStyle:"small"},{label:h,labelYOffset:15,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})},createAreaTextNode:function(g){var b=this,o;o=g.geometry.getCentroid(),textNode=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(o.x,o.y),{},b.measurementStyle);var h="0"+Ext.util.Format.decimalSeparator+"00";textNode.style.label=Ext.util.Format.number(g.geometry.getGeodesicArea(b.map.getProjection())/1000000,h);return textNode}});Ext.define("Client.module.tool.digitisedObjects.mixins.OLCoords",{coordStyle:{label:"",fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2},drawCoordsForFeature:function(g){var h=this,b,o;h.clearupFeatureCoords(g);Adaptive.utils.Proj.transformFeatureAsync(g,h.map.getProjection(),h.displayProjection.projCode,function(D,A,w){if(!D){return}b=g.geometry.getVertices();o=w.geometry.getVertices();for(var z=0;z<o.length;z++){var q=o[z],C=h.createCoordNode(q,b[z]);if(C){C.attributes.ignore=true;try{h.drawLayer.addFeatures([C]);g.coordNodes.push(C)}catch(B){console.warn(B)}}}})},clearupFeatureCoords:function(g){if(!g){return}if(g.coordNodes&&g.coordNodes.length>0&&g.coordNodes[0].layer){var b=g.coordNodes[0].layer;b.removeFeatures(g.coordNodes)}g.coordNodes=[]},createCoordNode:function(b,o){var q=this,h=q.displayProjection,g;b=Adaptive.utils.Proj.formatXY(b,h);g=b.y+", "+b.x;g=g.replace(/°/g,"º");return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(o.x,o.y),{show_label:true,name:g,labelStyle:"small"},{label:g,fontSize:"14px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2,pointerEvents:"none"})}});Ext.define("Client.module.tool.digitisedObjects.DrawControls",{extend:Client.module.ToolGeneric,mixins:[Client.module.tool.digitisedObjects.mixins.OLSettings,Adaptive.mixins.OLMeasure,Client.module.tool.digitisedObjects.mixins.OLCoords],clickout:true,activate:function(){var b=this;b.map.setGroup(b.drawLayer,500);b.createControls()},deactivate:function(){var b=this;if(b.drawLayer){b.map.setGroup(b.drawLayer,100)}if(b.selectControl.layer&&b.selectControl.layer.map){b.selectControl.deactivate()}b.removeMapCtr(b.selectControl);b.removeMapCtr(b.snapControl);b.removeMapCtr(b.drawControl);delete b.selectControl;delete b.snapControl;delete b.drawControl;delete b.currentSettings},createLayer:function(){var b=this;if(b.drawLayer){b.drawLayer.destroyFeatures();return}b.drawLayer=new OpenLayers.Layer.Vector("drawlayer",{styleMap:b.getLayerStyle(),rendererOptions:{zIndexing:true}});b.drawLayer.events.on({beforefeatureadded:b.onBeforefeatureadded,beforefeaturemodified:b.onBeforefeaturemodified,sketchmodified:b.onSketchmodified,sketchcomplete:b.onSketchcomplete,vertexmodified:b.onVertexmodified,vertexremoved:b.onVertexmodified,afterfeaturemodified:b.onAfterfeaturemodified,featuremodified:b.onFeatureModified,scope:b});b.map.addLayer(b.drawLayer)},removeLayer:function(){var b=this;if(b.drawLayer){b.drawLayer.events.un({beforefeatureadded:b.onBeforefeatureadded,beforefeaturemodified:b.onBeforefeaturemodified,sketchmodified:b.onSketchmodified,sketchcomplete:b.onSketchcomplete,vertexmodified:b.onVertexmodified,vertexremoved:b.onVertexmodified,afterfeaturemodified:b.onAfterfeaturemodified,featuremodified:b.onFeatureModified,scope:b});b.drawLayer.destroy();delete b.drawLayer}},removeMapCtr:function(b){if(b){b.destroy()}},createControls:function(){var b=this;b.selectControl=new OpenLayers.Control.ModifyFeature(b.drawLayer,{clickout:b.clickout,toggle:b.clickout,mode:Ope
1nLayers.Control.ModifyFeature.RESHAPE});b.selectControl.virtualStyle.graphicZIndex=100;b.snapControl=new OpenLayers.Control.Snapping({layer:b.drawLayer});b.map.addControl(b.selectControl);b.map.addControl(b.snapControl);b.selectControl.activate()},onBeforefeaturemodified:function(b){var h=this,g=b.feature;setTimeout(function(){h.activeFeature=g;h.reportGeomChanged(g);h.reportEvent("featureSelected",{feature:g,record:g.record,settings:g.attributes})},1)},onSketchmodified:function(b){var g=this;g.sketchFeature=b.feature;g.reportGeomChanged(g.sketchFeature);if(g.currentSettings.show_measurement||g.showNauticalDistance||g.currentSettings.show_measurement_area){g.drawMeasurementForFeature(g.sketchFeature,g.currentSettings.show_measurement||g.showNauticalDistance,g.showMeasurementArea)}},onSketchcomplete:function(){var b=this;if(b.sketchFeature){b.clearupFeatureMeasurements(b.sketchFeature)}delete b.sketchFeature},onAfterfeaturemodified:function(b){var g=this;g.reportEvent("updateUserObjects",b.feature);g.reportEvent("featureModificationEnd")},onFeatureModified:function(b){var g=this;if(b.feature&&b.feature.attributes&&b.feature.attributes.show_coords){g.drawCoordsForFeature(b.feature)}},onBeforefeatureadded:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}if(h.currentSettings){h.bindOlStyles(g,h.currentSettings);g.attributes.show_label=true;if(h.currentSettings.show_measurement||h.currentSettings.show_measurement_area){h.drawMeasurementForFeature(g,h.currentSettings.show_measurement,h.currentSettings.show_measurement_area)}if(h.currentSettings.show_coords){h.drawCoordsForFeature(g)}}h.activeFeature=g;h.reportEvent("featureAdded",g);h.reportEvent("featureModificationEnd");h.reportGeomChanged(g);if(!h.silent){setTimeout(function(){h.reactivateSelect();if(h.selectControl){h.selectControl.selectFeature(g)}},1)}},reactivateSelect:function(){var b=this;b.removeMapCtr(b.drawControl);delete b.drawControl;b.onSketchcomplete();if(b.selectControl){b.selectControl.activate()}},onVertexmodified:function(b){var g=this;g.reportGeomChanged(b.feature);if(g.activeFeature.attributes.show_measurement||g.activeFeature.attributes.show_measurement_area){g.drawMeasurementForFeature(b.feature,g.activeFeature.attributes.show_measurement,g.activeFeature.attributes.show_measurement_area)}},_onStartDraw:function(h){var g=this,o=h.data,b;delete g.activeFeature;if(g.drawControl){g.drawControl.deactivate();g.drawControl.destroy();g.onSketchcomplete()}switch(o.geomtype){case"polygon":b=OpenLayers.Handler.Polygon;break;case"line":b=OpenLayers.Handler.Path;break;case"point":b=OpenLayers.Handler.Point;break}g.selectControl.deactivate();g.drawControl=new OpenLayers.Control.DrawFeature(g.drawLayer,b);g.map.addControl(g.drawControl);g.drawControl.activate();g.currentSettings=o.settings},getUserObjects:function(o,h,b){var w=this,q=[];if(!o){o=w.map.getExtent().toGeometry()}if(!h){h=OpenLayers.Filter.Spatial.INTERSECTS}var z=new OpenLayers.Filter.Spatial({type:h,value:o});if(w.drawLayer){w.drawLayer.features.forEach(function(g){if(g.getVisibility()&&(b||z.evaluate(g))){q.push(g)}})}return q},updateFeatureData:function(g){var b=this;b.currentSettings=g;if(b.activeFeature){b.bindOlStyles(b.activeFeature,g);b.reportEvent("updateUserObjects",b.activeFeature)}},reportGeomChanged:function(b){var g=this;if(!b||!b.geometry){return}g.reportEvent("featureGeomChanged",{length:b.geometry.getGeodesicLength(g.map.getProjection()),area:b.geometry.getGeodesicArea(g.map.getProjection()),feature:b})},bufferFeature:function(o,q,b,h){var g=this;Ext.Ajax.request({url:"WebServices/client/UserData.asmx/Buffer",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({wkt:o,distance:q}),success:Ext.bind(g.bufferSuccess,{scope:g,name:b,category:h}),failure:function(){g.reportEvent("bufferFailed")}})},bufferSuccess:function(b){var h=this.scope,g;b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){g=new OpenLayers.Format.WKT().read(GeoMind.utils.Data.extractConfigObjectByKey(b.data,"wkt"));if(g){h.createNewFeature(g,this.name,this.category)}}if(!g){h.reportEvent("bufferFailed")}},createNewFeature:function(g,b,o){var h=this;delete h.currentSettings;h.bindOlStyles(g,{name:b,category:o,color:"#64C8FF"});h.drawLayer.addFeatures(g)},beforeMapReset:function(b){this.removeLayer()},afterMapReset:function(b){this.createLayer()},_onFlushDigiLayer:function(){var b=this;delete b.currentSettings;b.createLayer();b.reactivateSelect()},_onSettingsChanged:function(g){var b=this;b.updateFeatureData(g.data);b.drawLayer.redraw()},_onSnapChanged:function(g){var b=this;if(g.data){b.snapControl.activate()}else{b.snapControl.deactivate()}},_onDragChanged:function(h){var g=this,b=g.selectControl.feature;g.dragActive=h.data;setTimeout(function(){g.setControlModes(b)},1)},_onRotateChanged:function(h){var g=this,b=g.selectControl.feature;g.rotateActive=h.data;setTimeout(function(){g.setControlModes(b)},1)},setControlModes:function(g){var b=this,h=OpenLayers.Control.ModifyFeature.RESHAPE;b.selectControl.deactivate();if(b.dragActive&&!b.rotateActive){h=OpenLayers.Control.ModifyFeature.RESHAPE|OpenLayers.Control.ModifyFeature.DRAG}if(b.rotateActive&&!b.dragActive){h=OpenLayers.Control.ModifyFeature.RESHAPE|OpenLayers.Control.ModifyFeature.ROTATE}if(b.rotateActive&&b.dragActive){h=OpenLayers.Control.ModifyFeature.RESHAPE|OpenLayers.Control.ModifyFeature.ROTATE|OpenLayers.Control.ModifyFeature.DRAG}b.selectControl.mode=h;b.selectControl.activate();
1if(g){b.selectControl.selectFeature(g)}},_onVisibilityChanged:function(h){var g=this,o=h.data,b=o.feature,q=o.visible;if(q){b.style=null;b.attributes.hidden=false}else{b.style={display:"none"};b.attributes.hidden=true;g.clearupFeatureMeasurements(b);g.clearupFeatureCoords(b)}if(g.selectControl&&g.selectControl.feature){g.selectControl.unselectFeature(g.selectControl.feature)}else{g.reportEvent("updateUserObjects",b)}b.layer.redraw();if(q&&(b.attributes.show_measurement||b.attributes.show_measurement_area)){g.drawMeasurementForFeature(b,b.attributes.show_measurement,b.attributes.show_measurement_area)}if(q&&b.attributes.show_coords){g.drawCoordsForFeature(b)}},_onWktFieldUpdated:function(q){var o=this,h=q.data,g=o.selectControl&&o.selectControl.feature,b;if(!h){return}b=new OpenLayers.Format.WKT().read(h);if(!o.updateFeature(b,g)){o.reportEvent("wktFailed")}},_onGeometryPlotterUpdated:function(o){var h=this,b=o.data.feature,g=h.selectControl&&h.selectControl.feature;h.updateFeature(b,g)},updateFeature:function(b,h){var g=this;if(h&&b){if(b&&b.geometry&&b.geometry.CLASS_NAME===h.geometry.CLASS_NAME){if(b.geometry.toString()!==h.geometry.toString()){g.drawLayer.removeFeatures([h],{silent:true});h.geometry=b.geometry;g.drawLayer.addFeatures([h],{silent:true});g.selectControl.resetVertices();g.selectControl.setFeatureState();g.selectControl.onModification(h);g.drawLayer.events.triggerEvent("featuremodified",{feature:h});g.reportGeomChanged(h)}}else{return false}}else{if(b){g.drawLayer.addFeatures([b],{silent:true});g.onBeforefeatureadded({feature:b})}}return true},_onGetUserObjects:function(g){var b=this;g.data={features:g.data&&g.data.noFilter?b.getUserObjects(null,null,true):b.getUserObjects()};b.manageEventConfirmation(g)},_onGetStorableData:function(h){var g=this,o=g.getUserObjects(),b=[];o.forEach(function(q){if(q.record){var w=q.record.getData();delete w.feature;b.push(w)}});h.data.sharedUserObjects=b},_onRestoreStorableData:function(g){var b=this;if(g.data.sharedUserObjects){b.loadSharedUserObjects(g.data.sharedUserObjects)}},_onShowCoordsChanged:function(g){var b=this;b.show_coords=g.data;if(b.currentSettings){b.currentSettings.show_coords=b.show_coords}if(b.activeFeature){b.activeFeature.attributes.show_coords=b.show_coords;if(b.show_coords){b.drawCoordsForFeature(b.activeFeature)}else{b.clearupFeatureCoords(b.activeFeature)}}},loadSharedUserObjects:function(b){var o=this,h=new OpenLayers.Format.WKT(),g=new OpenLayers.Projection("EPSG:4326"),q=o.map.getProjectionObject();b.forEach(function(B){var A=B.wkt,z=Ext.JSON.decode(B.style),w;if(A.contains("SRID")){A=A.split(";");g=new OpenLayers.Projection("EPSG:"+A[0].replace("SRID=",""));A=A[1]}w=h.read(A),B.creator_uuid=null;B.uuid=null;o.bindOlStyles(w,z);w.attributes.show_label=B.show_label;w.attributes.show_measurement=B.show_measurement;w.attributes.show_measurement_area=B.show_measurement_area;w.attributes.show_coords=B.show_coords;w.attributes.name=B.name;w.attributes.category="__shared__";o.drawLayer.addFeatures([w]);if(!w.attributes.hidden&&(w.attributes.show_measurement||w.attributes.show_measurement_area)){o.drawMeasurementForFeature(w,w.attributes.show_measurement,w.attributes.show_measurement_area)}if(!w.attributes.hidden&&w.attributes.show_coords){o.drawCoordsForFeature(w)}})},drawMeasurementsActiveFeature:function(){var b=this;if(b.activeFeature){if(b.showMeasurement||b.showMeasurementArea||b.showNauticalDistance){b.drawMeasurementForFeature(b.activeFeature,b.showMeasurement||b.showNauticalDistance,b.showMeasurementArea)}else{b.clearupFeatureMeasurements(b.activeFeature)}}},_onMeasureChanged:function(g){var b=this,h=g.data;console.log("_onMeasureChanged",h);b.showMeasurement=h;b.activeFeature.attributes.show_measurement=h;if(b.currentSettings){b.currentSettings.show_measurement=h}if(b.activeFeature){b.activeFeature.attributes.show_measurement=h;
1b.drawMeasurementsActiveFeature()}},_onMeasureAreaChanged:function(g){var b=this,h=g.data;b.showMeasurementArea=h;if(b.currentSettings){b.currentSettings.show_measurement_area=h}if(b.activeFeature){b.activeFeature.attributes.show_measurement_area=h;b.drawMeasurementsActiveFeature()}},_onSharedUserObjectsRetrieved:function(g){var b=this;if(g.data){b.loadSharedUserObjects(g.data)}},_onRecordsAdded:function(h){var g=this,b=h.data.features;g.silent=true;h.data.features.forEach(function(o){if(!o.layer){o.attributes.show_label=o.record.get("show_label");o.attributes.show_measurement=o.record.get("show_measurement");o.attributes.show_measurement_area=o.record.get("show_measurement_area");o.attributes.show_coords=o.record.get("show_coords");g.bindOlStyles(o,o.attributes);g.drawLayer.addFeatures([o]);if(!o.attributes.hidden){g.showMeasurement=o.attributes.show_measurement;g.showMeasurementArea=o.attributes.show_measurement_area}if(!o.attributes.hidden&&(o.attributes.show_measurement||o.attributes.show_measurement_area)){g.drawMeasurementForFeature(o,o.attributes.show_measurement,o.attributes.show_measurement_area)}if(!o.attributes.hidden&&o.attributes.show_coords){g.drawCoordsForFeature(o)}}});g.silent=false},_onRecordDeleted:function(h){var g=this,b=h.data.feature,o=g.selectControl;delete g.activeFeature;if(o&&o.feature){o.unselectFeature(b)}g.clearupFeatureMeasurements(b);g.clearupFeatureCoords(b);g.drawLayer.removeFeatures([b])},_onRecordZoomTo:function(b){this.map.zoomToExtent(b.data.feature.geometry.getBounds(),false)},_onRecordSelected:function(h){var g=this,b=h.data.feature;if(b.layer){if(g.selectControl.feature){g.selectControl.unselectFeature(g.selectControl.feature)}g.selectControl.activate();g.selectControl.selectFeature(b)}},_onDigiToolDisabled:function(b){this.reactivateSelect()},_onBufferFeature:function(g){var b=this,h=g.data;b.bufferFeature(h.wkt,h.distance,h.name,h.category)},_onCreateDigiObject:function(h){var g=this,o=h.data,b=o.feature;if(!Ext.isArray(b)){b=[b]}g.reportEvent("confirmCreateDigiObject",{features:b},function(){g.silent=true;for(var q=0;q<b.length;q++){g.createNewFeature(b[q].clone(),o.name,o.category)}g.silent=false})},_onElevationProfileStart:function(){var b=this;if(b.selectControl){b.selectControl.deactivate()}},_onNauticalChange:function(g){var b=this;b.showNauticalDistance=g.data;
1b.drawMeasurementsActiveFeature()},_onSwitchLabelVisibilityState:function(g){var b=this;b.showLabels=g.data;b.drawLayer.redraw()},_onSetNewProjection:function(g){var b=this;b.displayProjection=g.data.proj;if(!b.drawLayer){return}b.drawLayer.features.forEach(function(h){if(h.attributes.show_coords&&(!h.record||h.record.get("visible"))){b.drawCoordsForFeature(h)}})}});Ext.define("Client.module.tool.digitisedObjects.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.mixins.Notify],config:{btnCls:"a3-edit_btn",btnText:null,btnTip:null,internal_name:"av_digitised_objects",headerText:null,serviceUrl:null,serviceMethods:null,parentController:null,showHectare:false,showNauticalDistance:true,advanced:false},constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digitisedObjects.lang.Edit");this.btnText=this.lang.getString("btnText");this.btnTip=this.lang.getString("btnText_tip");this.headerText=this.lang.getString("headerText");this.dataManager=Ext.create("Client.module.tool.digitisedObjects.DataManager",{serviceUrl:"WebServices/client/UserData.asmx/"});g.parentController.registerModule(g.dataManager);g.settingsModule=Ext.create(g.advanced?"Client.module.tool.digitisedObjects.SettingsPro":"Client.module.tool.digitisedObjects.Settings",{dataStore:this.dataManager.store});g.settingsModule.on("notifyError",function(h){if(g.view){g.showNotifyError(g.view,h)}});g.settingsModule.showNauticalDistance=g.showNauticalDistance;g.settingsModule.showHectare=g.showHectare;g.parentController.registerModule(g.settingsModule);this.featuresGridModule=Ext.create("Client.module.tool.digitisedObjects.FeaturesGrid",{store:this.dataManager.store});g.parentController.registerModule(g.featuresGridModule);g.olFeaturesModule=Ext.create("Client.module.tool.digitisedObjects.DrawControls");g.parentController.registerModule(g.olFeaturesModule)},buidGui:function(){this.view=Ext.create("Ext.container.Container",{layout:{type:"anchor",reserveScrollbar:true},autoScroll:true,cls:"a3-modules-body",items:[this.settingsModule.view,this.featuresGridModule.view]})},activate:function(){this.active=true;if(!this.map){return}this.olFeaturesModule.activate();this.settingsModule.activate();this.featuresGridModule.activate();this.featuresGridModule.setMap(this.map);if(!this.view){this.buidGui()}},deactivate:function(){this.active=false;if(!this.map){return}this.olFeaturesModule.deactivate();this.settingsModule.deactivate();this.featuresGridModule.deactivate()},_onUserAuthenticated:function(b){if(b&&b.data&&b.data.resetApp){this.dataManager.resetAppOperation=true}else{delete this.dataManager.resetAppOperation}if(this.active){}},_onUserSignedOut:function(){if(this.active){this.dataManager.store.removeAll()}},_onRequestDataViewExpand:function(g){var b=this;if(!b.active){b.manageEventConfirmation(g);return}var h={evtName:"requestToolPanelCollapse",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:Ext.bind(b.confirmDataViewExpand,b),data:{tool:b.internal_name,originalEvt:g}};this.dispatchEvent(h,{confirmationRequired:false})},_onCreateDigiObject:function(g){var b=this;if(!b.active){b.reportEvent("switchTools",b)}},_onSetLegendData:function(g){var b=this,h=b.getActiveFeatureStyle();if(h.length>0){g.data.push({uuid:"99b5f1e8-ac3f-4b48-8ae2-f5619d250ab1",name:b.lang.getString("headerLegend"),layers:h})}},getActiveFeatureStyle:function(){var g=this,b=[];var h=g.featuresGridModule.collectSelectedData().data;if(!h.length){return[]}h.forEach(function(o){b.push(g.map.generateLegendUrl(o.name||"",o.attributes._color.replace("#",""),o.attributes._color.replace("#",""),o.attributes.geomtype||o.attributes._symbol,o.attributes.opacity))});return[{caption:g.lang.getString("headerLegend"),disable_name_in_legend:true,src:b}]}});Ext.define("Client.module.tool.authentication.lang.Standard",{strings:{header_main:{en:"Login",nb:"Innlogging",nn:"Innlogging"},mainBtnText:{en:"Login",nb:"Logg inn",nn:"Logg inn"},mainBtnTip:{en:"Log into the application",nb:"Logg inn i applikasjonen",nn:"Logg inn i applikasjonen"},profileBtnText:{en:"Profile",nb:"Min side",nn:"Min side"},profileBtnTip:{en:"View and edit your profile data",nb:"Se og endre dine profildata",nn:"Sjå og endre dine profildata"},loggedInAs:{en:"Logged in as",nb:"Logget inn som",nn:"Logga inn som"},langSwitcherText:{en:"Set language",nb:"Velg språk",nn:"Velj språk"},btnBackToMain:{en:"Back to main page",nb:"Tilbake til hovedsiden",nn:"Tilbake til hovedsiden "},btnBackToMain_tooltip:{en:"Cancel and go back to the main page",nb:"Avbryt og gå tilbake til hovedsiden",nn:"Avbryt og gå tilbake til hovedsiden"},login:{en:"Login",nb:"Logg inn",nn:"Logg inn"},loginData:{en:"Credentials",nb:"Innlogging",nn:"Innlogging"},reset:{en:"Reset password",nb:"Gjenopprett passord",nn:"Gjenopprett passord"},profile:{en:"Profile",nb:"Profil",nn:"Profil"},btnSave:{en:"Save",nb:"Lagre",nn:"Lagre"},btnCancel:{en:"Cancel",nb:"Avbryt",nn:"Avbryt"},first_name:{en:"First name",nb:"Fornavn",nn:"Førenamn "},first_name_emptyText:{en:"No first name registered",nb:"Ingen fornavn registrert",nn:"Ingen fornavn registrert"},last_name:{en:"Surname",nb:"Etternavn",nn:"Etternamn "},last_name_emptyText:{en:"No surname registered",nb:"Ingen etternavn registrert",nn:"Ingen etternavn registrert"},middle_name:{en:"Middle name",nb:"Mellomnavn",nn:"Mellomnamn "},mobile:{en:"Mobile phone number",nb:"Mobilnummer"},mobile_emptyText:{en:"No mobile phone number registered",nb:"Ingen mobilnummer registrert"},phone:{en:"Phone number",nb:"Telefonnummer"},phone_emptyText:{en:"No phone number registered",nb:"Ingen telefonnummer registrert"}
1,company:{en:"Company/organization",nb:"Bedrift/organisasjon"},company_emptyText:{en:"No company/organization registered",nb:"Ingen bedrift/organisasjon registrert"},held_position:{en:"Job title/position",nb:"Stillingsbeskrivelse"},held_position_emptyText:{en:"No position/job title registered",nb:"Ingen stillingsbeskrivelse registrert"},description:{en:"Additional info",nb:"Tilleggsinformasjon"},description_emptyText:{en:"No additional info registered",nb:"Ingen tilleggsinformasjon registrert"},nick_name:{en:"Nick name",nb:"Kallenavn"},www:{en:"Web address",nb:"Nettadresse"},profile:{en:"Profile",nb:"Profil"},address_street:{en:"Street address",nb:"Gateadresse"},address_house_no:{en:"House no.",nb:"Husnr"},address_flat_no:{en:"Apt. no.",nb:"Leil.nr."},address_post_code:{en:"Post area code",nb:"Postnr."},address_city:{en:"City",nb:"By"},address_country:{en:"Country",nb:"Land"},department:{en:"Department",nb:"Avdeling"},address_post_code_area_name:{en:"Post area",nb:"Poststed"},pass:{en:"Password",nb:"Passord",nn:"Passord"},password:{en:"Password",nb:"Passord",nn:"Passord"},password2:{en:"Repeat Password",nb:"Gjenta passord",nn:"Gjenta passord"},currentPass:{en:"Current password",nb:"NÃ¥værende passord",nn:"NÃ¥værande passord"},newPass:{en:"New password",nb:"Nytt passord",nn:"Nytt passord"},email:{en:"Email",nb:"Epost",nn:"Epost"},remember:{en:"Remember me",nb:"Husk meg",nn:"Husk meg"},password_not_match:{en:"Passwords do not match",nb:"Passordene er ikke like",nn:"Passordene er ikkje like"},loading:{en:"Loading...",nb:"Laster..."}},errCodes:{auth_1:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukarnamn eller passord."},auth_2:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukarnamn eller passord."},auth_3:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukarnamn eller passord."},auth_5:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukarnamn eller passord."},auth_11:{en:"Account is locked. Please try again later.",nb:"Kontoen er lÃ¥st. Vennligst prøv igjen senere."}}});Ext.define("Client.module.tool.authentication.lang.Login",{strings:{header_login:{en:"Login",nb:"Innlogging",nn:"Innlogging"},btnShowResetPanel:{en:"Forgotten password?",nb:"Glemt passord?",nn:"Gløymt passord?"},btnShowResetPanel_tooltip:{en:"Go here have another one sent to you",nb:"GÃ¥ hit for Ã¥ fÃ¥ et nytt tilsendt",nn:"GÃ¥ hit for Ã¥ fÃ¥ eit nytt tilsend"},btnShowRegisterUserPanel:{en:"Register a new user account?",nb:"Registrere ny bruker?",nn:"Vil dykkar oppretta ein ny brukar?"},btnShowRegisterUserPanel_tooltip:{en:"Go here to create a new user account",nb:"GÃ¥ hit for Ã¥ opprette en ny brukerkonto",nn:"GÃ¥ hit for Ã¥ opprette ein ny brukarkonto"},btnShowAboutPanel:{en:"About Adaptive 3",nb:"Om kartløsningen"},btnShowAboutPanel_tooltip:{en:"Map solution: Adaptive from Asplan Viak AS",nb:"Kartløsning: Adaptive fra Asplan Viak AS"},btnSave:{en:"Log in",nb:"Logg inn",nn:"Logg inn"},btnSignOut:{en:"Log out",nb:"Logg ut",nn:"Logg ut"},auth_failed:{en:"Either password is wrong or there is no user registered with that email, please double check your information and try again.",nb:"Enten er passordet feil eller sÃ¥ finnes det ingen bruker registrert med den oppgitte epostadressen. Vennligst se gjennom oppgitt informasjon og prøv igjen.",nn:"Enten er passordet feil eller sÃ¥ finns ikkje nokon brukar registrert med den oppgitte epostadressen. Ver venleg og sjÃ¥ gjennom oppgitt informasjon og prøv igjen."},pass_expired:{en:"Password has expired. Please reset your password via the forgotten password option below.",nb:"Passordet er utløpt. Vennligst tilbakestill passordet via glemt passord-valget nedenfor.",nn:"Passordet er gÃ¥tt ut. Ver venleg og tilbakestill passordet med gløymt passord-valet nedanfor."},account_locked:{en:"Account is locked due to too many login attempts. Please wait 10 minutes and try again. If you did not perform the login attempts, please contact the system administrator.",nb:"Kontoen er lÃ¥st pga. for mange innloggingsforsøk. Vennligst prøv igjen om 10 minutter. Hvis du ikke gjennomførte innloggingsforsøkene selv, vennligst kontakt systemadministrator."},sessionTimeout:{en:"Session expired",nb:"Innlogging utløpt"},sessionTimeoutMsg:{en:"Your login session has expired. Please log in again.",nb:"Din innloggingssesjon har utløpt. Vennligst logg inn igjen."}}});
1Ext.define("GeoMind.lang.switcher.lang.Standard",{strings:{lang:{pl:"JÄzyk: ",en:"Language: "}},errCodes:{}});Ext.define("GeoMind.ux.IconCombo",{extend:Ext.form.field.ComboBox,alias:"widget.iconcombo",initComponent:function(){var b=this;var g=Ext.clone(b.fieldSubTpl);g.push('<div class="ux-icon-combo-icon"></div>');Ext.apply(b,{scope:b,tpl:Ext.create("Ext.XTemplate",'<tpl for=".">','<div class="x-boundlist-item ux-icon-combo-item {'+b.iconClsField+'}" style="background-image: url(\'{'+b.iconUrlField+"}')\">","{"+b.displayField+"}","</div>","</tpl>"),beforeSubTpl:'<div class="ux-icon-combo-wrap">',fieldSubTpl:g,afterSubTpl:"</div>",renderSelectors:{iconClsEl:".ux-icon-combo-icon"}});b.callParent(arguments)},setIconCls:function(){var g=this;if(g.rendered){var h=g.store.findRecord(g.valueField,g.getValue());if(h){var b=h.get(g.iconClsField);g.iconClsEl.replaceCls(g.oldIconCls,b);g.iconClsEl.setStyle("background-image","url('"+h.get(g.iconUrlField)+"')");g.oldIconCls=b}}else{g.on("render",g.setIconCls,g,{single:true})}},setValue:function(b){this.callParent(arguments);this.setIconCls()}});Ext.define("GeoMind.lang.switcher.Standard",{extend:GeoMind.base.Module,combo:null,label:null,flagIconTemplate:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.lang.switcher.lang.Standard");this.label=Ext.create("Ext.toolbar.TextItem",{text:"<b>"+this.lang.getString("lang")+"</b>"});this.createSwitcher()},createSwitcher:function(){var g=GeoMind.lang.Lang.supportedLangs.getSupportedLangs().slice(0);for(l in g){g[l].icon="gm-flag_"+g[l].code;if(this.flagIconTemplate){g[l].iconUrl=this.flagIconTemplate.replace("{0}",g[l].code)}}var b=Ext.create("Ext.data.Store",{fields:["code","name","icon","iconUrl"],data:g});this.combo=Ext.create("GeoMind.ux.IconCombo",{displayField:"name",valueField:"code",iconClsField:"icon",iconUrlField:"iconUrl",queryMode:"local",triggerAction:"all",editable:false,store:b,width:110});this.combo.setValue(GeoMind.lang.Lang.langCode);this.combo.on("select",this.onComboSelect,this)},onComboSelect:function(h,b,g){GeoMind.lang.Lang.changeLang(h.getValue())}});Ext.define("Client.module.tool.authentication.lang.LangSwitcher",{strings:{confirmTitle:{en:"Change language",nb:"Bytt sprÃ¥k",nn:"Bytt sprÃ¥k"},confirmMsg:{en:"You are about to change the language of the application. This will reload the page. Continue?",nb:"Du ønsker Ã¥ bytte sprÃ¥k, dette vil laste kartløsningen pÃ¥ nytt, vil du fortsette?",nn:"Du ønsker Ã¥ bytte sprÃ¥k, dette vil laste kartløsningen pÃ¥ nytt, vil du fortsette?"}},errCodes:{}});Ext.define("Client.module.tool.authentication.LangSwitcher",{extend:GeoMind.lang.switcher.Standard,flagIconTemplate:"resx/icons/flags/{0}.png",constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.LangSwitcher")},onComboSelect:function(h,b,g){Ext.Msg.show({title:this.lang.getString("confirmTitle"),msg:this.lang.getString("confirmMsg"),buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.WARNING,fn:function(o){if(o=="ok"){GeoMind.lang.Lang.changeLang(h.getValue())}else{h.setValue(GeoMind.lang.Lang.langCode)}}})}});Ext.define("Client.module.tool.authentication.Login",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Login");g.buildGui();g.callParent(arguments);g.rememberSession=!!GeoMind.utils.SessionManager.ss.sessionId},buildGui:function(){var g=this,b=g.login_text&&g.login_text.lang&&(g.login_text.lang[GeoMind.lang.Lang.langCode]||g.login_text.lang[GeoMind.lang.Lang.defaultLangCode]);g.authFailedPanel=g.createTextBox("auth_failed","failed",{hidden:true});g.passExpiredPanel=g.createTextBox("pass_expired","failed",{hidden:true});g.accountLockedPanel=g.createTextBox("account_locked","failed",{hidden:true});g.langSwitcher=Ext.create("Client.module.tool.authentication.LangSwitcher");if(b){g.loginTextBox=g.createTextBox("customLoginInfo","info",{html:b})}g.view=Ext.create("Ext.container.Container",{header:g.fieldLang.getString("header_login"),layout:{type:"vbox",align:"stretch"},autoScroll:true,items:[g.createForm({noScroll:true,items:[g.authFailedPanel,g.passExpiredPanel,g.accountLockedPanel,g.createSet("langSwitcherText",{collapsible:false},[g.langSwitcher.combo]),g.loginTextBox&&!g.login_text.below?g.loginTextBox:null,g.createSet("login",{collapsible:false},[g.createField("email",{required:true,enableKeyEvents:true,vtype:"email",listeners:{scope:g,keydown:g.trapEnter,afterrender:function(h){h.inputEl.set({autocomplete:"on"})}}}),g.createField("password",{required:true,inputType:"password",enableKeyEvents:true,listeners:{scope:g,keydown:g.trapEnter}}),g.createField("remember",{xtype:"checkboxfield",checked:true}),g.createLinkBtn("btnShowResetPanel",{listeners:{scope:g,click:g.showResetPanel}}),g.createLinkBtn("btnShowRegisterUserPanel",{hidden:g.registrationDisabled||g.requireRegistrationToken,listeners:{scope:g,click:g.showRegisterUserPanel}}),g.createLinkBtn("btnShowAboutPanel",{listeners:{scope:g,click:g.showAboutPanel}})])],cancelBtnConfig:false,warnBtnConfig:false}),g.loginTextBox&&g.login_text.below?g.loginTextBox:null,{xtype:"box",flex:1}]})},showSessionTimeoutPopup:function(){var b=this;b.sessionTimeoutWnd=Ext.create("Ext.window.Window",{title:b.fieldLang.getString("sessionTimeout"),width:400,bodyPadding:10,layout:"form",modal:true,closable:false,items:[b.createTextBox("sessionTimeoutMsg","warning"),b.createTextBox("auth_failed","failed",{hidden:true}),b.createTextBox("pass_expired","failed",{hidden:true}),b.createTextBox("account_locked","failed",{hidden:true}),b.createField("password",{xtype:"textfield",required:true,inputType:"password",enableKeyEvents:true,listeners:{scope:b,keydown:b.trapEnter}}),{xtype:"container",layout:"hbox",padding:"5 0 0 0",items:[b.createLinkBtn("btnSignOut",{handler:function(){b.sessionTimeoutWnd.close();delete b.sessionTimeoutWnd;b.reportEvent("signOutUser")}}),{xtype:"box",flex:1},b.createButton("btnSave",true,{handler:function(){b.sessionTimeoutWnd.signIn()}})]}
1],listeners:{show:function(){this.down("[dataIndex=password]").focus()}},signIn:function(){this.mask();this.down("#pass_expired").hide();this.down("#auth_failed").hide();this.down("#account_locked").hide();b.authenticateUser(b.userEmail,this.down("[dataIndex=password]").value,b.rememberSession,true)},signInFailed:function(g){this.unmask();if(g==="auth_9"){this.down("#pass_expired").show()}else{if(g==="auth_11"){this.down("#account_locked").show()}else{this.down("#auth_failed").show()}}}});b.sessionTimeoutWnd.show()},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onSave()}},onSave:function(){var h=this,g=h.getForm();if(h.sessionTimeoutWnd){h.sessionTimeoutWnd.signIn();return}h.authFailedPanel.hide();h.passExpiredPanel.hide();h.accountLockedPanel.hide();if(!g.isValid()){return}var b=g.getValues();h.mask();h.rememberSession=b.remember;h.authenticateUser(b.email,b.password,b.remember)},showResetPanel:function(){var b=this,g={evtName:"showResetPanel",evtInitiatingModule:b};b.dispatchEvent(g)},showRegisterUserPanel:function(){var b=this,g={evtName:"showRegisterUserPanel",evtInitiatingModule:b};b.dispatchEvent(g)},showAboutPanel:function(){var b=this,g={evtName:"showAboutPanel",evtInitiatingModule:b,data:{backBtn:b.showLoginPanel}};b.dispatchEvent(g)},showLoginPanel:function(){var b=this,g={evtName:"showLoginPanel",evtInitiatingModule:b};b.dispatchEvent(g)},authenticateUser:function(h,g,w,b){var o=this,q={evtName:"authenticateUser",evtInitiatingModule:o,data:{email:h,pass:g,remember:w,noConfigReload:b}};o.dispatchEvent(q)},_onUserAuthenticationFailed:function(g){var b=this;if(b.sessionTimeoutWnd){b.sessionTimeoutWnd.signInFailed(g.data.exception&&g.data.exception.code);return}if(g.data.exception&&g.data.exception.code=="auth_9"){b.passExpiredPanel.show()}else{if(g.data.exception&&g.data.exception.code=="auth_11"){b.accountLockedPanel.show()}else{b.authFailedPanel.show()}}b.unmask()},_onShowLoginPanel:function(b){this.authFailedPanel.hide();this.passExpiredPanel.hide();this.accountLockedPanel.hide();this.unmask()},_onUserDetailsRetrieved:function(g){var b=this;b.userEmail=g.data.data[0].value.email},_onUserAuthenticated:function(g){var b=this;if(b.sessionTimeoutWnd){b.sessionTimeoutWnd.close();delete b.sessionTimeoutWnd;return}b.getItem("email").setValue("");b.getItem("password").setValue("");this.unmask()}});Ext.define("Client.module.tool.authentication.lang.ResetPass",{strings:{header_resetpass:{en:"Forgotten password",nb:"Glemt passord",nn:"Gløymt passord"},btnSave:{en:"Submit",nb:"Send",nn:"Send"},btnSave_tooltip:{en:"Make a request to reset your password",nb:"Send en forespørsel om å tilbakestille passordet ditt",nn:"Send ein forespørsel om å tilbakestille passordet ditt"},invalid_fields:{en:"Missing fields",nb:"Manglende felter"},reset_text:{en:"<p>Did you forget your password?<p>Please fill in your email below and you will recieve an email with instructions on how to have it reset.",nb:"<p>Har du glemt passordet ditt?<p>Vennligst fyll ut epostadressen din og du vil få en epost med informasjon om hvordan du kan tilbakestille passordet ditt.",nn:"<p>Har du gløymt passordet?<p>Vær vennleg å fyll ut dykkar epostadresse og du vil få informasjon om hvordan du kan tilbakestille passordet."},reset_text_complete1:{en:"Your request to reset your password has been submitted. You will shortly receive an email with instructions on how to have it reset.",nb:"Din forespørsel om å tilbakestille passordet har blitt sendt. Du vil snart motta en epost med instruksjoner om hvordan du går videre for å tilbakestille passordet.",nn:"Din forespørsel om å tilbakestille passordet har blitt sendt. Du vil snart motta en epost med instruksjoner om hvordan du går videre for å tilbakestille passordet."},reset_text_complete2:{en:"Should you not receive any emails (please check your spam folder), please contact the administrator.",nb:"Dersom du ikke skulle motta en epost (vennligst sjekk spam-katalogen), kontakt administrator.",nn:"Hvis du ikkje mottar ein epost (venlegst sjekk spam-katalogen), kontakt administrator."},reset_fail:{en:"Password reset failed. Please contact the administrator.",nb:"Generering av nytt passord feilet. Vennligst kontakt administrator.",nn:"Generering av nytt passord gjekk feil. Venlegst kontakt administrator."}}});Ext.define("Client.module.tool.authentication.ResetPass",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],constructor:function(b){var g=this;Ext.apply(g,b);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.ResetPass");g.buildGui();g.callParent([b])},buildGui:function(){var b=this;b.resetFailedPanel=b.createTextBox("reset_fail","failed",{hidden:true});b.createForm({noScroll:true,cancelBtnConfig:false,items:[b.resetFailedPanel,b.createText("reset_text","info"),b.createSet("reset",{collapsible:false},[b.createField("email",{required:true,enableKeyEvents:true,vtype:"email",listeners:{scope:b,keydown:b.trapEnter}})])]});b.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},header:b.fieldLang.getString("header_resetpass"),autoScroll:true,items:[b.createLinkBtn("btnBackToMain",{backBtn:true,listeners:{scope:b,click:b.onCancel}}),{xtype:"container",layout:"card",itemId:"cards",items:[b.formPanel,b.createTextBox("reset_complete","success",{html:"<p>"+b.fieldLang.getString("reset_text_complete1")+"</p><p>"+b.fieldLang.getString("reset_text_complete2")+"</p>"})]},{xtype:"box",flex:1}]})},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onSave()}},onCancel:function(){var b=this,g={evtName:"showLoginPanel",evtInitiatingModule:b};b.resetForm();b.dispatchEvent(g)},onSave:function(){var g=this.getForm();if(!g.isValid()){return}var b=g.getValues();this.mask();this.resetUserPass(b.email)},resetUserPass:function(b){var g=this,h={evtName:"resetPass",evtInitiatingModule:g,data:{email:b}};g.dispatchEvent(h)},_onPassReset:function(b){this.view.down("#cards").getLayout().setActiveItem(1);this.unmask()},_onPassResetFailed:function(b){this.resetFailedPanel.show();this.unmask()},_onShowResetPanel:function(b){this.resetForm();this.resetFailedPanel.hide();this.view.down("#cards").getLayout().setActiveItem(0)}});Ext.define("Client.module.tool.authentication.lang.RegisterUser",{strings:{header_registeruser:{en:"Register a new user",nb:"Opprett en ny bruker",nn:"Opprett ein brukar"},other_company:{en:"Other",nb:"Annet"},btnSave:{en:"Register",nb:"Opprett",nn:"Opprett "},btnSave_tooltip:{en:"This will register a new user",nb:"Dette vil opprette en ny bruker",nn:"Dette vil opprette ein ny brukar "},register_text_complete1:{en:"Your account has been registered. You will receive an email confirming your account.",nb:"Din konto har blitt registrert. Du vil snarest motta en epost som bekrefter kontoen.",nn:"Dykkar konto har blitt registret. Du vil snart motta ein epost som bekreftar kontoen."},register_text_complete2:{en:"Should you not receive any emails (please check your spam folder), or if you have any questions regarding the registration, please contact the administrator.",nb:"Dersom du ikke skulle motta en epost (vennligst sjekk spam katalogen), eller har spørsmÃ¥l i forbindelse med brukerregistreringen, kontakt administrator.",nn:"Hvis du ikkje mottar ein epost (venlegst sjekk søppel-epost katalogen), eller har spørsmÃ¥l i forbindelse med brukarregistreringen, kontakt administrator."},register_fail:{en:"User registration failed. The email you provided might already be registered. Please check your data and try again. If the problem continues, please contact the administrator.",nb:"Brukerregistreringen feilet. Det kan hende eposten du oppga allerede er registrert. Vennligst kontroller dine oppgitte data og prøv igjen. Dersom problemet vedvarer, vennligst kontakt administrator.",nn:"Brukerregistreringen feilet. Det kan hende eposten du oppga allerede er registrert. Vær venleg Ã¥ kontrolere dine oppgitte data og prøv igjen. Dersom problemet vedvar, vennligst kontakt administrator."},invalid_fields:{en:"Please complete the required fields:",nb:"Vennligst fyll ut de pÃ¥krevde feltene:"},privacy:{en:"Privacy Policy",nb:"Personvernerklæring"},show_privacy:{en:"Open Privacy Policy",nb:"Ã
pne personvernerklæring"},privacy_accepted:{en:"I have read and accept that my personal data is treated in accordance with the privacy policy.",nb:"Jeg har lest og godtar at mine personlige data behandles i samsvar med personvernerklæringen."},privacy_accept_required:{en:"Reading and agreeing to the privacy policy is required to register.",nb:"Ã
lese og godta personvernerklæringen er påkrevd for å registrere seg."}}});Ext.define("Adaptive.data.proxy.Crud",{extend:Ext.data.proxy.Ajax,alias:"proxy.crud",config:{url:null},paramsAsJson:true,actionMethods:{create:"POST",read:"POST",update:"POST",destroy:"POST"},headers:{"Content-type":"application/json; charset=utf-8"},reader:{type:"json",root:"d.records",successProperty:"d.success",totalProperty:"d.total"},emptyFilter:{defaultFilter:[],filterColumns:[],greedy:true,sortColumns:[],distinctColumns:[]},pageParam:null,constructor:function(b){var g=this;g.params={};if(!b.url&&!b.api){throw"Cannot create a CRUD proxy with no URL"}if(b.url){g.api={create:b.url+"Create",read:b.url+"Read",update:b.url+"Update",destroy:b.url+"Destroy"}}Ext.apply(g,b);g.callParent(arguments)},doRequest:function(b,w,g){var o=this,h=o.buildRequest(b),q=Ext.clone(o.params),q=Ext.merge(q,h.params);if(!q.extraParams){q.extraParams=(o.extraParams&&GeoMind.utils.Data.convertObjectToKeyValArray(o.extraParams))||[]}if(b.allowWrite()){h=o.getWriter().write(h);if(b.action=="destroy"){q.uuid=h.jsonData.uuid}else{q.data=h.jsonData}}
1else{if(!q.filter){q.filter=g.proxyFilter||o.emptyFilter}if(q.id){q.start=0;q.limit=1;q.extraParams.push({key:"id",value:q.id});delete q.id}if(q.uuid){q.start=0;q.limit=1;q.extraParams.push({key:"uuid",value:q.uuid});delete q.uuid}}Ext.apply(h,{headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,w,g),method:o.getMethod(h),jsonData:q,params:{}});Ext.Ajax.request(h);return h},setParams:function(g){var b=this;b.params=Ext.merge(b.params,g)},statics:{getResponse:function(b){var h=b.response,g=h&&h.responseText&&Ext.JSON.decode(h.responseText,true);return g&&(g.d||g)},setFilter:function(g,b){if(b){if(b.greedy===undefined){b.greedy=true}b.defaultFilter=b.defaultFilter||[];b.filterColumns=b.filterColumns||[];b.sortColumns=b.sortColumns||[];b.distinctColumns=b.distinctColumns||[]}g.proxyFilter=b}}});Ext.define("Client.data.model.Role",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string"},{name:"name",type:"string"}],proxy:{type:"crud",url:"WebServices/generic/Role.asmx/"},statics:{getGroupRoleStore:function(g){var b=Ext.create("Ext.data.Store",{model:"Client.data.model.Role",pageSize:10000,autoLoad:g});Adaptive.data.proxy.Crud.setFilter(b,{filterColumns:[{name:"role_type",value:2,comparisonOperator:"="}],sortColumns:[{name:"name"}]});return b}}});Ext.define("Client.module.tool.authentication.lang.PrivacyPolicy",{strings:{privacy_new_tab:{en:"Open in new tab",nb:"Ã
pne i ny fane"},privacy_policy:{en:"Privacy policy",nb:"Personvernerklæring"},data_processor:{en:"Data processor",nb:"Databehandler"},privacy_policy_accept:{en:"<h3>Privacy policy</h3><p>To continue, please read and accept that your usage of this solution is subject to the terms and conditions in our privacy policy.",nb:"<h3>Personvernerklæring</h3><p>For å fortsette, vennligst les og godta at din bruk av denne løsningen omfattes av betingelsene i vår personvernerklæring."},accept:{en:"Accept",nb:"Godta"}}});Ext.define("Client.module.tool.authentication.mixin.PrivacyPolicy",{ensurePrivacyLang:function(){var b=this;if(!b.privacyLang){b.privacyLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.PrivacyPolicy")}},getPrivacyConfig:function(b){Ext.Ajax.request({url:"WebServices/generic/Privacy.asmx/Config",jsonData:{},callback:function(h,q,g){if(q){var o=Ext.JSON.decode(g.responseText).d;if(o.success&&o.records){b(o.records,true);return}}b(null,false)}})},verifyConsent:function(){var b=this;b.getPrivacyConfig(function(h,o){if(h){var g=h.privacy_policy_version;if(g>0){Ext.Ajax.request({url:"WebServices/generic/Privacy.asmx/Consents",jsonData:{},callback:function(z,B,w){if(B){var A=Ext.JSON.decode(w.responseText).d;if(A.success){var q=false;A.records.forEach(function(C){if(C.category=="privacy"&&C.accepted_version>=g){q=true}});if(!q){b.showShortPrivacy(h)}}}}})}}})},getShortPrivacy:function(b){var h=this,g=GeoMind.lang.Lang.langCode;h.ensurePrivacyLang();return{xtype:"container",width:"100%",items:[{xtype:"box",cls:"a3-privacy-msg",flex:1,html:b["privacy_short_enabled_"+g]?b["privacy_short_"+g].replace(/(\s*<\/?p>)+$/g,""):h.privacyLang.getString("privacy_policy_accept")},{xtype:"box",cls:"a3-privacy-msg",hidden:!b.data_processor,html:h.privacyLang.getString("data_processor")+": "+b.data_processor+(b.data_processor_email?" ("+b.data_processor_email+")":"")},{xtype:"button",cls:"a3-link-btn",iconCls:"icon-open",style:{margin:"10px"},text:h.privacyLang.getString("privacy_policy"),tooltip:h.privacyLang.getString("privacy_new_tab"),handler:function(){h.openPrivacyPolicy()}}]}},showShortPrivacy:function(b){var g=this;if(g.acceptWnd){return}g.ensurePrivacyLang();g.acceptWnd=new Ext.container.Container({layout:"absolute",floating:true,cls:"a3-privacy-popup a3-privacy-short a3-hidden a3-animate",items:[{xtype:"container",cls:"a3-popup",layout:{type:"vbox",align:"right"},width:400,items:[g.getShortPrivacy(b),{xtype:"button",cls:"a3-submit-btn",iconCls:"icon-check",text:g.privacyLang.getString("accept"),height:36,style:{margin:"-34px 0 0 0"},handler:function(){Ext.Ajax.request({url:"WebServices/generic/Privacy.asmx/Accept",jsonData:{version:b.privacy_policy_version,category:"privacy"}});
1g.acceptWnd.dismiss()}}]}],dismiss:function(){g.acceptWnd.addCls("a3-hidden");setTimeout(function(){g.acceptWnd.destroy();delete g.acceptWnd},250)},listeners:{afterrender:function(){setTimeout(function(){g.acceptWnd.removeCls("a3-hidden")},0)}}});g.acceptWnd.show()},openPrivacyPolicy:function(){window.open("WebServices/generic/Privacy.asmx/Open?lang="+GeoMind.lang.Lang.langCode)}});Ext.define("Adaptive.utils.Diacritics",{singleton:true,defaultDiacriticsRemovalMap:[{base:"A",letters:"Aâ¶ï¼¡ÃÃÃẦẤẪẨÃÄÄáº°áº®áº´áº²È¦Ç ÃÇẢÃ
ǺÇÈÈẠẬẶá¸ÄȺⱯ"},{base:"AA",letters:"ê²"},{base:"AE",letters:"ÃǼǢ"},{base:"AO",letters:"ê´"},{base:"AU",letters:"ê¶"},{base:"AV",letters:"ê¸êº"},{base:"AY",letters:"ê¼"},{base:"B",letters:"Bâ·ï¼¢á¸á¸á¸ÉÆÆ"},{base:"C",letters:"Câ¸ï¼£ÄÄÄÄÃá¸ÆÈ»ê¾"},{base:"D",letters:"Dâ¹ï¼¤á¸Äá¸á¸á¸á¸ÄÆÆÆê¹Ã"},{base:"DZ",letters:"DZÇ"},{base:"Dz",letters:"DzÇ
"},{base:"E",letters:"Eâºï¼¥ÃÃÃá»áº¾á»á»áº¼Äá¸á¸ÄÄÃẺÄÈÈẸá»È¨á¸Äá¸á¸ÆÆ"},{base:"F",letters:"Fâ»ï¼¦á¸Æê»"},{base:"G",letters:"Gâ¼ï¼§Ç´ÄḠÄÄ Ç¦Ä¢Ç¤Æê ê½ê¾"},{base:"H",letters:"Hâ½ï¼¨Ä¤á¸¢á¸¦ÈḤḨḪĦⱧⱵê"},{base:"I",letters:"Iâ¾ï¼©ÃÃÃĨĪĬİÃḮá»ÇÈÈá»Ä®á¸¬Æ"},{base:"J",letters:"Jâ¿ï¼ªÄ´É"},{base:"K",letters:"KâKḰǨḲĶḴÆâ±©êêêê¢"},{base:"L",letters:"LâLĿĹĽḶḸĻḼḺÅȽⱢⱠêêê"},{base:"LJ",letters:"Ç"},{base:"Lj",letters:"Ç"},{base:"M",letters:"Mâï¼á¸¾á¹á¹â±®Æ"},{base:"N",letters:"NâNǸÅÃá¹Åá¹Å
á¹á¹È Æêê¤"},{base:"NJ",letters:"Ç"},{base:"Nj",letters:"Ç"},{base:"O",letters:"OâOÃÃÃá»á»á»á»Ãá¹È¬á¹Åá¹á¹ÅȮȰÃȪá»ÅÇÈÈÆ á»á»á» á»á»¢á»á»ÇªÇ¬ÃÇ¾ÆÆêê"},{base:"OI",letters:"Æ¢"},{base:"OO",letters:"ê"},{base:"OU",letters:"È¢"},{base:"OE",letters:"ÂÅ"},{base:"oe",letters:"ÂÅ"},{base:"P",letters:"Pâ
ï¼°á¹á¹Æ¤â±£êêê"},{base:"Q",letters:"Qâï¼±êêÉ"},{base:"R",letters:"Râï¼²Åá¹ÅÈÈá¹á¹Åá¹ÉⱤêê¦ê"},{base:"S",letters:"Sâï¼³áºÅṤÅṠŠṦṢṨÈÅâ±¾ê¨ê"},{base:"T",letters:"TâTṪŤṬÈŢṰṮŦƬƮȾê"},{base:"TZ",letters:"ê¨"},{base:"U",letters:"Uâï¼µÃÃÃŨṸŪṺŬÃÇÇÇÇỦŮŰÇÈÈÆ¯á»ªá»¨á»®á»¬á»°á»¤á¹²Å²á¹¶á¹´É"},{base:"V",letters:"VâVṼṾƲêÉ
"},{base:"VY",letters:"ê "},{base:"W",letters:"Wâï¼·áºáºÅ´áºáºáºâ±²"},{base:"X",letters:"XâXáºáº"},{base:"Y",letters:"YâYỲÃŶỸȲáºÅ¸á»¶á»´Æ³ÉỾ"},{base:"Z",letters:"ZâZŹáºÅ»Å½áºáºÆµÈ¤â±¿â±«ê¢"},{base:"a",letters:"aâï½áºÃ áâầấẫẩãÄÄằắẵẳȧǡäÇảåǻÇÈÈạáºáº·á¸Ä
â±¥É"},{base:"aa",letters:"ê³"},{base:"ae",letters:"æǽǣ"},{base:"ao",letters:"êµ"},{base:"au",letters:"ê·"},{base:"av",letters:"ê¹ê»"},{base:"ay",letters:"ê½"},{base:"b",letters:"bâï½á¸á¸
á¸ÆÆÉ"},{base:"c",letters:"câï½ÄÄÄÄÃ§á¸ÆÈ¼ê¿â"},{base:"d",letters:"dâï½á¸Äá¸á¸á¸á¸ÄÆÉÉêº"},{base:"dz",letters:"dzÇ"},{base:"e",letters:"eâï½
èéêá»áº¿á»
á»áº½Äá¸á¸ÄÄëẻÄÈ
Èẹá»È©á¸Äá¸á¸ÉÉÇ"},{base:"f",letters:"fâï½á¸Æê¼"},{base:"g",letters:"gâï½ÇµÄḡÄÄ¡Ç§Ä£Ç¥É ê¡áµ¹ê¿"},{base:"h",letters:"hâï½Ä¥á¸£á¸§ÈḥḩḫáºÄ§â±¨â±¶É¥"},{base:"hv",letters:"Æ"},{base:"i",letters:"iâï½Ã¬ÃîĩīÄïḯá»ÇÈÈá»Ä¯á¸É¨Ä±"},{base:"j",letters:"jâï½ÄµÇ°É"},{base:"k",letters:"kâï½á¸±Ç©á¸³Ä·á¸µÆâ±ªêêê
ê£"},{base:"l",letters:"lâï½ÅÄºÄ¾á¸·á¸¹Ä¼á¸½á¸»Å¿ÅÆÉ«â±¡êêê"},{base:"lj",letters:"Ç"},{base:"m",letters:"mâï½á¸¿á¹á¹É±É¯"},{base:"n",letters:"nâï½Ç¹Åñá¹
Åá¹Åá¹á¹ÆÉ²Åêê¥"},{base:"nj",letters:"Ç"},{base:"o",letters:"oâï½Ã²Ã³Ã´á»á»á»á»Ãµá¹Èá¹Åá¹á¹Åȯȱöȫá»ÅÇÈÈÆ¡á»á»á»¡á»á»£á»á»Ç«ÇøǿÉêêɵ"},{base:"oi",letters:"Æ£"},{base:"ou",letters:"È£"},{base:"oo",letters:"ê"},{base:"p",letters:"pâï½á¹á¹Æ¥áµ½êêê"},{base:"q",letters:"qâ ï½Éêê"},{base:"r",letters:"râ¡ï½Åá¹ÅÈÈá¹á¹Åá¹Éɽêê§ê"},{base:"s",letters:"sâ¢ï½ÃÅá¹¥ÅṡšṧṣṩÈÅÈ¿ê©ê
áº"},{base:"t",letters:"tâ£ï½á¹«áºÅ¥á¹ÈţṱṯŧÆÊⱦê"},{base:"tz",letters:"ê©"},{base:"u",letters:"uâ¤ï½Ã¹ÃºÃ»Å©á¹¹Å«á¹»ÅüÇÇÇÇủůűÇÈÈÆ°á»«á»©á»¯á»á»±á»¥á¹³Å³á¹·á¹µÊ"},{base:"v",letters:"vâ¥ï½á¹½á¹¿ÊêÊ"},{base:"vy",letters:"ê¡"},{base:"w",letters:"wâ¦ï½áºáºÅµáºáº
áºáºâ±³"},{base:"x",letters:"xâ§ï½áºáº"},{base:"y",letters:"yâ¨ï½á»³Ã½Å·á»¹È³áºÃ¿á»·áºá»µÆ´Éỿ"},{base:"z",letters:"zâ©ï½ÅºáºÅ¼Å¾áºáºÆ¶È¥Éⱬê£"}],diacriticsMap:{},setDiacriticsMap:function(){var h=this;for(var g=0;g<h.defaultDiacriticsRemovalMap.length;g++){var o=h.defaultDiacriticsRemovalMap[g].letters;for(var b=0;b<o.length;b++){h.diacriticsMap[o[b]]=h.defaultDiacriticsRemovalMap[g].base}}},removeDiacritics:function(g){var b=this;b.setDiacriticsMap();
1return g.replace(/[^\u0000-\u007E]/g,function(h){return b.diacriticsMap[h]||h})}});Ext.define("Client.module.tool.authentication.lang.Password",{strings:{length_req_fail:{en:"Minimum characters used for password is ",nb:"Minste antall tegn et passord kan være er "},policy_fail:{en:"Password does not meet password policy.",nb:"Passord følger ikke passordregler for løsningen."},policy_1:{en:"Must contain at least three of the following five character types: lower case, upper case, numeric, common symbol, special character.",nb:"Må inneholde minst tre av følgende fem tegntyper: liten bokstav, stor bokstav, tall, vanlig symbol, spesialtegn."},pass_contain_email:{en:"Password contains parts of email.",nb:"Passord inneholder deler av epostadressen."},pass_contain_firstname:{en:"Password contains parts of firstname.",nb:"Passord inneholder deler av fornavn."},pass_contain_surname:{en:"Password contains parts of surname.",nb:"Passord inneholder deler av etternavn."}}});Ext.define("Client.module.tool.authentication.mixin.Password",{passwordMinimumLength:3,passwordValidationLevel:0,initPasswordPolicies:function(){var b=this;b.pwLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Password");if(b.passwordPolicies){b.passwordMinimumLength=b.passwordPolicies.password_minimum_length||b.passwordMinimumLength;b.passwordValidationLevel=b.passwordPolicies.password_validation_level||b.passwordValidationLevel}},validatePassword:function(g){var b=this;if(g.length<b.passwordMinimumLength){return b.pwLang.getString("length_req_fail")+b.passwordMinimumLength}return(b.passwordValidationLevel===0)?true:b.complexityValidator1(g)},complexityValidator1:function(g){var b=this,h=0;g=Adaptive.utils.Diacritics.removeDiacritics(g);h+=/[a-z]/.test(g)?1:0;h+=/[A-Z]/.test(g)?1:0;h+=/[0-9]/.test(g)?1:0;h+=/[~!@#$%^&*_\-+=`|\\(){}\[\]:;"'<>,.?/]/.test(g)?1:0;h+=/[^a-zA-Z0-9~!@#$%^&*_\-+=`|\\(){}\[\]:;"'<>,.?/]/.test(g)?1:0;return(h>=3)||("<p>"+b.pwLang.getString("policy_fail")+"<p>"+b.pwLang.getString("policy_1"))},containsToken:function(o,b){var w=o.split(/[,.\-_\s#\t]+/),q=w.length,h=false;for(var g=0;g<q;g++){if(w[g].length<3){continue}var z=b.toLowerCase().indexOf(w[g].toLowerCase());if(z>-1){h=true;break}}return h}});Ext.define("Client.module.tool.authentication.RegisterUser",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator,Client.module.tool.authentication.mixin.PrivacyPolicy,Client.module.tool.authentication.mixin.Password],constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.RegisterUser");g.initPasswordPolicies();g.buildGui();g.callParent([b])},buildGui:function(){var o=this,g=o.register_text&&o.register_text.lang&&(o.register_text.lang[GeoMind.lang.Lang.langCode]||o.register_text.lang[GeoMind.lang.Lang.defaultLangCode]),h=o.registrationExtraFields||{},b;o.registerFailedPanel=o.createTextBox("register_fail","failed",{hidden:true});b=[o.createField("first_name",{enableKeyEvents:true,required:o.registrationNameRequired,listeners:{scope:o,keydown:o.trapEnter}}),o.createField("last_name",{enableKeyEvents:true,required:o.registrationNameRequired,listeners:{scope:o,keydown:o.trapEnter}})];if(h.mobile>0){b.push(o.createField("mobile",{enableKeyEvents:true,required:h.mobile>1,listeners:{scope:o,keydown:o.trapEnter}}))}if(h.company>0){b.push(o.createField("company",{xtype:h.companyFromGroupRoles?"combo":"textfield",store:h.companyFromGroupRoles&&o.getGroupRolesStore(),displayField:"name",valueField:"name",editable:false,enableKeyEvents:true,pageSize:10,required:h.company>1,listeners:{scope:o,keydown:o.trapEnter}}))}if(h.held_position>0){b.push(o.createField("held_position",{enableKeyEvents:true,required:h.held_position>1,listeners:{scope:o,keydown:o.trapEnter}}))}if(h.description>0){b.push(o.createField("description",{xtype:"textarea",enableKeyEvents:true,required:h.description>1,listeners:{scope:o,keydown:o.trapEnter}}))}o.createForm({noScroll:true,cancelBtnConfig:false,items:[o.registerFailedPanel,g&&o.createTextBox("customRegistrationInfo","info",{html:g}),o.createSet("loginData",{collapsible:false},[o.createField("email",{required:true,enableKeyEvents:true,vtype:"email",listeners:{scope:o,key
1down:o.trapEnter}}),o.createField("pass",{required:true,inputType:"password",enableKeyEvents:true,validator:function(q){return o.validatePassword(q)},listeners:{scope:o,keydown:o.trapEnter}}),o.createField("password2",{required:true,inputType:"password",enableKeyEvents:true,validator:function(q){var w=this.previousSibling("[name=pass]");return(q&&q===w.getValue())||o.lang.getString("password_not_match")},listeners:{scope:o,keydown:o.trapEnter}})]),o.createSet("profile",{collapsible:false},b),o.createSet("privacy",{collapsible:false,layout:"anchor",hidden:true},[o.createField("privacy_accepted",{xtype:"checkbox",required:true})])]});o.getPrivacyConfig(function(q){if(q&&q.privacy_policy_version>0){o.acceptRequired=true;var w=o.formPanel.down("fieldset[dataIndex=privacy]");w.insert(0,Ext.widget(o.getShortPrivacy(q)));w.show()}});o.view=Ext.create("Ext.container.Container",{layout:"anchor",header:o.fieldLang.getString("header_registeruser"),autoScroll:true,items:[o.createLinkBtn("btnBackToMain",{backBtn:true,listeners:{scope:o,click:o.onCancel}}),{xtype:"container",layout:"card",itemId:"cards",items:[o.formPanel,o.createTextBox("register_complete","success",{html:"<p>"+o.fieldLang.getString("register_text_complete1")+"</p><p>"+o.fieldLang.getString("register_text_complete2")+"</p>"})]},{xtype:"box",flex:1}]})},getGroupRolesStore:function(){var g=this,b=new Ext.data.Store({model:"Client.data.model.Role",pageSize:10,listeners:{load:function(h){h.add({name:g.fieldLang.getString("other_company")})}}});Adaptive.data.proxy.Crud.setFilter(b,{filterColumns:[{name:"role_type",value:2}]});return b},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onSave()}},onCancel:function(){var b=this,g={evtName:"showLoginPanel",evtInitiatingModule:b};b.dispatchEvent(g);b.formPanel.getForm().reset()},onSave:function(){var h=this,g=h.getForm();if(!g.isValid()){return}if(h.acceptRequired&&!h.view.down("[dataIndex=privacy_accepted]").getValue()){h.showFormError(h.fieldLang.getString("privacy_accept_required"));return}var b=g.getValues();if(h.passwordValidationLevel===1){if(h.containsToken(b.email.split(/[@]/)[0],b.pass)){h.showFormError(h.pwLang.getString("pass_contain_email"));return}if(h.containsToken(b.firstname,b.pass)){h.showFormError(h.pwLang.getString("pass_contain_firstname"));return}if(h.containsToken(b.surname,b.pass)){h.showFormError(h.pwLang.getString("pass_contain_surname"));return}}this.mask();delete b.password2;this.reportEvent("registerUser",b)},_onUserRegistered:function(b){this.unmask();this.registerFailedPanel.hide();this.view.down("#cards").getLayout().setActiveItem(1);this.formPanel.getForm().reset()},_onUserRegisteredFailed:function(b){this.unmask();this.registerFailedPanel.show();this.view.el.dom.scrollTop=0},_onShowRegisterUserPanel:function(b){this.registerFailedPanel.hide();this.view.down("#cards").getLayout().setActiveItem(0)}});Ext.define("Client.module.tool.authentication.lang.LoggedIn",{strings:{work:{en:"Work",nb:"Arbeidssted"},contact:{en:"Contact details",nb:"Kontaktinfo"},address:{en:"Address",nb:"Adresse"},additional:{en:"Other",nb:"Annet"},privacy_policy:{en:"Privacy Policy",nb:"Personvernerklæring"},invalid_fields:{en:"Missing fields",nb:"Manglende felter"},btnChangePass:{en:"Change password?",nb:"Endre passord?",nn:"Endre passord?"},btnChangePass_tooltip:{en:"Go here to change your current password",nb:"GÃ¥ hit for Ã¥ endre ditt nÃ¥værende passord",nn:"GÃ¥ hit for Ã¥ endre ditt nÃ¥værande passord"},btnSave:{en:"Save changes",nb:"Lagre endringer",nn:"Lagre endringer"},btnSave_tooltip:{en:"This will update any changes to your name and email",nb:"Dette vil lagre evt. endringer i navn og epost",nn:"Dette vil lagre evt. endringer i navn og epost"},btnCancel:{en:"Log out",nb:"Logg ut",nn:"Logg ut"},btnCancel_tooltip:{en:"Log out of the application",nb:"Logger ut av applikasjonen",nn:"Logger ut av applikasjonen"},save_profile_fail:{en:"Save failed. Please contact the administrator.",nb:"Lagring av brukerdata feilet. Vennligst kontakt administrator",nn:"Lagring av brukerdata feilet. Vennligst kontakt administrator"},header_loggedin:{en:"Profile",nb:"Min side",nn:"Min side"},notifySaved:{en:"Profile data saved",nb:"Profildata lagret",nn:"Profildata lagra"},btnShowAboutPanel:{en:"About Adaptive III",nb:"Om kartløsningen"},btnShowAboutPanel_tooltip:{en:"Map solution: Adaptive from Asplan Viak AS",nb:"Kartløsning: Adaptive fra Asplan Viak AS"}},errCodes:{auth_1:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukernavn eller passord."},auth_2:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukernavn eller passord."},auth_3:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukernavn eller passord."},auth_5:{pl:"Niepoprawny login lub hasÅo.",en:"Invalid user name or password.",nb:"Feil brukernavn eller passord.",nn:"Feil brukernavn eller passord."},auth_11:{en:"Account is locked. Please try again later.",nb:"Kontoen er lÃ¥st. Vennligst prøv senere."}}});Ext.define("Client.module.tool.authentication.LoggedIn",{extend:Client.module.Generic,mixins:[Client.module.tool.authentication.mixin.PrivacyPolicy,Adaptive.form.mixins.Generator],disableChangePassword:null,constructor:function(b){var g=this;Ext.define("UserMetaData",{extend:Ext.data.Model,fields:["first_name","middle_name","last_name","nick_name","www","phone","mobile","company","profile","description","address_street","address_house_no","address_flat_no","address_post_code","address_city","address_country","department","held_position","address_post_code_area_name"]});Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.LoggedIn");g.buildGui();g.callParent(arguments)},buildGui:function(){var g=this,b=g.registrationExtraFields;g.saveProfileFailedPanel=g.createTextBox("save_profile_fail","failed",{hidden:true});g.langSwitcher=Ext.create("Client.module.tool.authentication.LangSwitcher");g.view=g.createForm({headerText:g.fieldLang.getString("header_loggedin"),items:[g.saveProfileFailedPanel,g.createSet("langSwitcherText",{collapsible:false},[g.langSwitcher.combo]),g.createSet("profile",{collapsible:false},[g.createField("email",{required:true}),g.createField("first_name"),g.createField("middle_name",{hideIfEmpty:true,hidden:true}),g.createField("last_name"),g.createField("nick_name",{hideIfEmpty:true,hidden:true}),g.disableChangePassword?undefined:g.createLinkBtn("btnChangePass",{handler:g.showChangePassPanel,scope:g}),g.createLinkBtn("privacy_policy",{handler:g.openPrivacyPolicy,scope:g}),g.createLinkBtn("btnShowAboutPanel",{handler:g.showAboutPanel,scope:g})]),g.createSet("address",{collapsible:false},[g.createField("address_street",{hideIfEmpty:true,hidden:true}),g.createField("address_house_no",{hideIfEmpty:true,hidden:true}),g.createField("address_flat_no",{hideIfEmpty:true,hidden:true}),g.createField("address_post_code",{hideIfEmpty:true,hidden:true}),g.createField("address_post_code_area_name",{hideIfEmpty:true,hidden:true}),g.createField("address_city",{hideIfEmpty:true,hidden:true}),g.createField("address_country",{hideIfEmpty:true,hidden:true})]),g.createSet("contact",{collapsible:false},[g.createField("www",{hideIfEmpty:true,hidden:true}),g.createField("phone",{hideIfEmpty:true,hidden:true}),g.createField("mobile",{hideIfEmpty:!b.mobile,required:b.mobile>1})]),g.createSet("work",{collapsible:false},[g.createField("company",{hideIfEmpty:!b.company,required:!b.companyFromGroupRoles&&b.company>1,disabled:b.companyFromGroupRoles}),g.createField("department",{hideIfEmpty:true,hidden:true}),g.createField("held_position",{hideIfEmpty:!b.held_position,required:b.held_position>1})]),g.createSet("additional",{collapsible:false},[g.createField("profile",{hideIfEmpty:true,hidden:true}),g.createField("description",{hideIfEmpty:!b.description,required:b.description>1,xtype:"textarea"})])]})},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onSave()}},showChangePassPanel:function(){var b=this,g={evtName:"showChangePassPanel",evtInitiatingModule:b};b.dispatchEvent(g)},onSave:function(){var g=this.getForm();if(!g.isValid()){return}this.mask();var b=g.getValues();this.updateUserDetails(b.email,b.firstname,b.surname)},onCancel:function(){var b=this;
1b.getAllItems().forEach(function(g){g.setValue&&g.setValue(null)});b.signOut()},signOut:function(){var b=this,g={evtName:"signOutUser",evtInitiatingModule:b};b.dispatchEvent(g)},updateUserDetails:function(){var b=this,g=b.getData(),h={evtName:"updateUserDetails",evtInitiatingModule:b,data:g};b.dispatchEvent(h)},showAboutPanel:function(){var b=this,g={evtName:"showAboutPanel",evtInitiatingModule:b,data:{backBtn:b.showLoggedInPanel}};b.dispatchEvent(g)},showLoggedInPanel:function(){var b=this,g={evtName:"showLoggedInPanel",evtInitiatingModule:b};b.dispatchEvent(g)},_onSaveProfileFailed:function(b){this.saveProfileFailedPanel.show();this.unmask()},_onUserDetailsRetrieved:function(o){var h=this,b=h.getAllItems(),g=h.view.query("fieldset"),q=GeoMind.utils.Data.extractConfigObjectByKey(o.data.data,"record");g.forEach(function(w){w.show()});b.forEach(function(w){if(w.hideIfEmpty){w.hide()}});h.getForm().loadRecord(Ext.create("UserMetaData",q.user_data));h.getItem("email").setValue(q.email);b.forEach(function(w){if(w.hideIfEmpty&&w.getValue()){w.show()}});g.forEach(function(w){var z=w.query("field"),A=false;z.forEach(function(B){if(B.isVisible()){A=true}});if(!A){w.hide()}});h.unmask()},_onUserDetailsUpdated:function(b){this.unmask();this.showFormSave();this.saveProfileFailedPanel.hide()},_onUserDetailsUpdatedFailed:function(b){this.unmask();this.saveProfileFailedPanel.show()}});Ext.define("Client.module.tool.authentication.lang.ChangePass",{strings:{change_pass_text:{en:"This will change your current password",nb:"Dette vil endre ditt nåværende passord.",nn:"Dette vil endre ditt nåværande passord."},change_pass_fail:{en:"Update password failed. Please check that your current password are correct and try again. If the problem continues, please contact the map administrator.",nb:"Oppdatering av passord feilet, kontroller at ditt nåværende passord er riktig og prøv igjen. Dersom du fortsatt har problemer, vennligst kontakt administrator.",nn:"Oppdatering av passord feilet, kontroller at ditt nåværende passord er riktig og prøv igjen. Dersom du fortsatt har problemer, vennligst kontakt administrator."},reuse_pass_fail:{en:"Update password failed. Password has been used before and cannot be reused due to security policy set by this
1site's administrator.",nb:"Oppdatering av passord feilet. Passordet har vært brukt tidligere og gjenbruk er ikke tillatt av denne sidens administrator.",nn:"Oppdatering av passord feilet. Passordet har vært brukt tidligere og gjenbruk er ikke tillatt av denne sidens administrator."},change_pass_complete:{en:"Your password has been successfully updated.",nb:"Ditt passord har blitt oppdatert.",nn:"Ditt passord har blitt oppdatert."},btnSave:{en:"Update password",nb:"Oppdater passord",nn:"Oppdater passord"},btnSave_tooltip:{en:"Update your current password",nb:"Oppdater nåværende passord",nn:"Oppdater nåværende passord"},invalid_fields:{en:"Missing fields",nb:"Manglende felter"},header_changepass:{en:"Change password",nb:"Endre passord",nn:"Endre passord"}}});Ext.define("Client.module.tool.authentication.ChangePass",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator,Client.module.tool.authentication.mixin.Password],userEmail:"",userFirstName:"",userSurName:"",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.ChangePass");g.initPasswordPolicies();g.buildGui();g.callParent(arguments)},buildGui:function(){var b=this;b.changeFailedPanel=b.createTextBox("change_pass_fail","failed",{hidden:true});b.reuseFailedPanel=b.createTextBox("reuse_pass_fail","failed",{hidden:true});b.createForm({noScroll:true,cancelBtnConfig:false,items:[b.changeFailedPanel,b.reuseFailedPanel,b.createSet("changepass",{collapsible:false,title:""},[b.createField("currentPass",{required:true,inputType:"password",enableKeyEvents:true,listeners:{scope:b,keydown:b.trapEnter}}),b.createField("newPass",{required:true,inputType:"password",enableKeyEvents:true,validator:function(g){return b.validatePassword(g)},listeners:{scope:b,keydown:b.trapEnter}}),b.createField("password2",{required:true,inputType:"password",enableKeyEvents:true,validator:function(g){var h=b.getItem("newPass");return(g&&g===h.getValue())||b.lang.getString("password_not_match")},listeners:{scope:b,keydown:b.trapEnter}})])]});b.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},header:b.fieldLang.getString("header_changepass"),autoScroll:true,items:[b.createLinkBtn("btnBackToMain",{backBtn:true,listeners:{scope:b,click:b.onCancel}}),{xtype:"container",layout:"card",itemId:"cards",items:[b.formPanel,b.createTextBox("change_pass_complete","success")]},{xtype:"box",flex:1}]})},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onSave()}},onCancel:function(){var b=this,g={evtName:"showLoggedInPanel",evtInitiatingModule:b};b.view.down("#cards").getLayout().setActiveItem(0);b.resetForm();b.dispatchEvent(g)},onSave:function(){var h=this,g=this.getForm();if(!g.isValid()){return}var b=g.getValues();if(h.passwordValidationLevel===1){if(h.containsToken(h.userEmail.split(/[@]/)[0],b.newPass)){h.showFormError(h.pwLang.getString("pass_contain_email"));return}if(h.containsToken(h.userFirstName,b.newPass)){h.showFormError(h.pwLang.getString("pass_contain_firstname"));return}if(h.containsToken(h.userSurName,b.newPass)){h.showFormError(h.pwLang.getString("pass_contain_surname"));return}}this.mask();this.changePass(b.currentPass,b.newPass)},changePass:function(g,b){var h=this,o={evtName:"changePass",evtInitiatingModule:h,data:{currentPass:g,newPass:b}};h.dispatchEvent(o)},_onPassChanged:function(b){this.view.down("#cards").getLayout().setActiveItem(1);this.unmask()},_onPassChangeFailed:function(b){if(b.data.exception&&b.data.exception.code=="password_reuse"){this.reuseFailedPanel.show()}else{this.changeFailedPanel.show()}this.unmask()},_onShowPassChangePanel:function(b){this.reuseFailedPanel.hide();this.changeFailedPanel.hide()},_onUserDetailsRetrieved:function(g){var b=this,h=GeoMind.utils.Data.extractConfigObjectByKey(g.data.data,"record");b.userEmail=h.email;b.userFirstName=h.user_data.first_name;b.userSurName=h.user_data.last_name}});Ext.define("Client.module.tool.authentication.lang.About",{strings:{about_text:{en:'This site is run by Adaptive 3, a flexible web map solution from Asplan Viak AS. Feel free to check us out on <a href="https://www.avinet.no" target="_blank">our home page</a>',nb:'Denne nettsiden drives av Adaptive 3, en fleksibel kartløsning fra Asplan Viak AS. Besøk oss gjerne på <a href="https://www.avinet.no" target="_blank"">vår hjemmeside</a>.'},privacy_text:{en:'<p>This site stores certain information on your device (e.g. cookies) to enable the functionality on the site and improve user experience.<p>We save login session token if you check "Remember me" when logging in, as well as language, map extent and certain functional settings. These are not used for profiling purposes.',nb:'<p>Denne nettsiden lagrer noe informasjon på din enhet (f.eks. informasjonskaplser/cookies) for å tilby funksjonalitet og forbedre brukeropplevelsen på siden.<p>Vi lagrer innloggingssesjon hvis du velger "Husk meg" ved innlogging, samt informasjon om valgt språk, kartutsnitt og enkelte funksjonelle innstillinger. Disse brukes ikke i profileringssammenheng.'},privacy_text_ga:{en:"This site collects information about usage (thematic maps, basemaps and pages in use). All information is anonymized.",nb:"Tjenesten samler inn informasjon om bruk av løsningen og dets innhold (temakart, bakgrunnskart og sider i bruk) for å kunne forbedre løsningen. All informasjon er anonymisert."},disable_ga:{en:"Disable analytics",nb:"Deaktiver statistikk"},header_about:{en:"About Adaptive 3",nb:"Om Adaptive 3"}}});Ext.define("Client.module.tool.authentication.About",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],backBtn:null,constructor:function(b){var g=this;Ext.apply(g,b);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.About");g.buildGui();g.callParent([b])},buildGui:function(){var g=this,b=typeof(ga)==="undefined"||Ext.util.Cookies.get("no_ga")=="true";g.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},cls:"a3-form",header:g.fieldLang.getString("header_about"),autoScroll:true,items:[g.createLinkBtn("btnBackToMain",{backBtn:true,listeners:{scope:g,click:g.onCancel}}),g.createSet("",{collapsible:false},[g.createText("about_text","info"),g.createText("privacy_text","info"),g.createText("privacy_text_ga","info",{hidden:b}),g.createButton("disable_ga",{hidden:b,handler:function(){g.reportEvent("activateGA",{status:false});g.view.down("#privacy_text_ga").hide();this.hide()}})])]})},onCancel:function(){var b=this;if(Ext.isFunction(b.backBtn)){b.backBtn.call(b)}}});Ext.define("Client.module.tool.authentication.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.mixins.Notify,Client.module.tool.authentication.mixin.PrivacyPolicy],btnCls:"a3-login",btnText:null,btnTip:null,headerText:null,name:"Login Module",description:"Login description for Login Module",internal_name:"av_auth",txtWidth:150,registrationDisabled:false,requireRegistrationToken:false,parentController:null,crypto:null,openIdLoginEnabled:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");this.btnText=this.lang.getString("mainBtnText");this.btnTip=this.lang.getString("mainBtnTip");this.headerText=this.lang.getString("header_main");this.btnWidth=this.btnWidth?this.btnWidth:44;this.btnHeight=this.btnHeight?this.btnHeight:44;this.txtWidth=this.txtWidth?this.txtWidth:this.btnWidth;this.height=this.height?this.height:this.btnHeight;this.addEvents(["authenticateUser"]);this.buildGui()},buildGui:function(){this.loginForm=Ext.create("Client.module.tool.authentication.Login",{crypto:this.crypto,registrationDisabled:this.registrationDisabled,requireRegistrationToken:this.requireRegistrationToken,login_text:this.login_text});this.openIdLoginForm=Ext.create("Client.module.tool.authentication.OpenIdLogin",{});this.resetForm=Ext.create("Client.module.tool.authentication.ResetPass");this.loggedInForm=Ext.create("Client.module.tool.authentication.LoggedIn",{registrationExtraFields:this.registrationExtraFields,disableChangePassword:this.openIdLoginEnabled});this.changePassForm=Ext.create("Client.module.tool.authentication.ChangePass",{passwordPolicies:this.passwordPolicies});this.aboutForm=Ext.create("Client.module.tool.authentication.About");this.parentController.registerModule(this.openIdLoginForm);this.parentController.registerModule(this.loginForm);this.parentController.registerModule(this.resetForm);this.parentController.registerModule(this.loggedInForm);this.parentController.registerModule(this.changePassForm);this.parentController.registerModule(this.aboutForm);this.view=Ext.create("Ext.panel.Panel",{layout:"card",cls:"a3-modules-body",items:[this.loginForm.view,this.openIdLoginForm.view,this.resetForm.view,this.loggedInForm.view,this.changePassForm.view,this.aboutForm.view]});if(!this.registrationDisabled&&!this.requireRegistrationToken){this.registerUserForm=Ext.create("Client.module.tool.authentication.RegisterUser",{registrationNameRequired:this.registrationNameRequired,registrationExtraFields:this.registrationExtraFields,register_text:this.register_text,passwordPolicies:this.passwordPolicies});this.parentController.registerModule(this.registerUserForm);this.view.add(this.registerUserForm.view)}this._onShowLoginPanel()},setHeader:function(){if(!this.view.isVisible()){return}var b=this.view.getLayout().getActiveItem();this.headerText=b.headerText||b.header;this.adviseHeaderChange(this.headerText)},_onShowLoginPanel:function(b){if(this.openIdLoginEnabled){this.view.getLayout().setActiveItem(this.openIdLoginForm.view);this.loginForm.view.hide()}else{this.view.getLayout().setActiveItem(this.loginForm.view);this.openIdLoginForm.view.hide()}this.setHeader()},_onShowResetPanel:function(b){this.view.getLayout().setActiveItem(this.resetForm.view);this.setHeader()},_onShowRegisterUserPanel:function(b){if(this.registerUserForm){this.view.getLayout().setActiveItem(this.registerUserForm.view);this.setHeader()}},_onShowAboutPanel:function(g){var b=this;b.aboutForm.backBtn=g.data.backBtn;b.view.getLayout().setActiveItem(b.aboutForm.view);b.setHeader()},_onShowChangePassPanel:function(b){this.view.getLayout().setActiveItem(this.changePassForm.view);this.setHeader()},_onUserAuthenticated:function(g){var b=this;b.view.getLayout().setActiveItem(b.loggedInForm.view);b.setHeader();b.btnText=b.lang.getString("profileBtnText");b.btnTip=b.lang.getString("profileBtnTip");b.adviseBtnTextChange();b.verifyConsent();if(!b.authMonitorTask){b.authMonitorTask=new Ext.util.DelayedTask(b.checkAuth,b)}b.authMonitorTask.delay(15000)},checkAuth:function(){var b=this;Ext.Ajax.request({url:"WebServices/generic/Authentication.asmx/VerifySession",method:"POST",jsonData:{},callback:function(o,z,h){var w=z&&Ext.JSON.decode(h.responseText).d,q=30000;if(w&&w.sessionExpired){if(b.openIdLoginEnabled){b.openIdLoginForm.showSessionTimeoutPopup()}else{b.loginForm.showSessionTimeoutPopup()}return}if(w){var g=Adaptive.utils.Config.getConfig(w.data,"expires");if(g){g*=1000;q=Math.min(600000,(g-new Date().getTime())+10000);if(q<10000){q=10000}}}b.authMonitorTask.delay(q)}})},_onUserDetailsRetrieved:function(g){if(!this.mapContainer){return}var h=GeoMind.utils.Data.extractConfigObjectByKey(g.data.data,"record"),b=this.mapContainer.down("#loggedInAs");if(b){b.update(h)}},afterMapContainerRender:function(){var g=this,b=g.mapContainer.down("#statusbar");if(b){b.add(Ext.create("Ext.Component",{cls:"loggedInAs",tpl:new Ext.XTemplate('<tpl if="email"><span class="a3-icon icon-user" data-qtip="'+g.lang.getString("loggedInAs")+'"></span> {[this.getName(values.email, values.user_data.last_name, values.user_data.first_name)]}</tpl>',{getName:function(o,h,q){if(h&&q){return q+" "+h}return h||q||o}}),data:{},itemId:"loggedInAs"}))}},_onShowLoggedInPanel:function(b){this._onUserAuthenticated(b)},_onSignOutUser:function(){var g=this,b=g.mapContainer.down("#loggedInAs");g._onShowLoginPanel();g.setHeader();g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.adviseBtnTextChange();if(b){b.update({})}if(g.authMonitorTask){g.authMonitorTask.cancel();delete g.authMonitorTask}g.reportEvent("switchTools",g)}});Ext.define("Adaptive.utils.CadasterWfs",{singleton:true,config:{serviceUrl:"WebServices/matrikkelWfs.ashx"},getProperty:function(o,b,w){var h=this,q=new OpenLayers.Protocol.WFS.v1_1_0({url:h.serviceUrl,featureType:"TEIGWFS",featurePrefix:"matrikkel",featureNS:"",srsName:b,headers:{gm_session_id:GeoMind.utils.SessionManager.ss.sessionId,"X-Adaptive-Gui":__guuid__}}
1),g=[new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"KOMMUNENR",value:o.kommunenr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"GARDSNR",value:o.gardsnr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"BRUKSNR",value:o.bruksnr})];if(o.festenr){g.push(new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"FESTENR",value:o.festenr}))}if(o.seksjonsnr){g.push(new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"SEKSJONSNR ",value:o.seksjonsnr}))}q.read({filter:new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:g}),callback:function(z){if(z.features){w(z.features)}else{w({error:z})}}})},getBuilding:function(o,b,w){var h=this,q=new OpenLayers.Protocol.WFS.v1_1_0({url:h.serviceUrl,featureType:"BYGNINGWFS",featurePrefix:"matrikkel",featureNS:"",srsName:b,headers:{gm_session_id:GeoMind.utils.SessionManager.ss.sessionId,"X-Adaptive-Gui":__guuid__}}),g=[];if(!Ext.isArray(o)){o=[o]}o.forEach(function(z){var A=[new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"BYGNINGSNR",value:z.bygningsnr})];if(z.kommunenr){A.push(new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"KOMMUNENR",value:z.kommunenr}))}g.push(new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:A}))});q.read({filter:new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.OR,filters:g}),callback:function(z){if(z.features){w(z.features)}else{w({error:z})}}})}});Ext.define("Client.module.tool.matrikkel.lang.Standard",{strings:{header_main:{en:"Property",nb:"Matrikkel",nn:"Matrikkel"},mainBtnText:{en:"Property",nb:"Matrikkel",nn:"Matrikkel"},mainBtnTip:{en:"Show property search results",nb:"Viser informasjon fra Matrikkelsøk",nn:"Viser informasjon fra Matrikkelsøk"},loadMaskMsg:{en:"Loading data...",nb:"Laster data...",nn:"Laster data..."},yes:{en:"Yes",nb:"Ja",nn:"Ja"},no:{en:"No",nb:"Nei",nn:"Nei"},defaultInfo:{en:"This panel is used to display details on properties",nb:"Søk etter eiendom ved hjelp av gårds- og bruksnr via søkefeltet til venstre (velg pil ned) eller finn eiendom ved å klikke i kartet. Opplysninger om eiendommen du har valgt vil bli vist i dette vinduet og en samlet oversikt over eiendommer du velger blir gitt i tabellen under. Du kan fjerne eiendommer fra lista ved å klikke på de igjen.",nn:"Søk etter eiendom ved hjelp av gårds- og bruksnr via søkefeltet til venstre (velg pil ned) eller finn eiendom ved å klikke i kartet. Opplysninger om eiendommen du har valgt vil bli vist i dette vinduet og en samlet oversikt over eiendommer du velger blir gitt i tabellen under. Du kan fjerne eiendommer fra lista ved å klikke på de igjen."},defaultInfo2:{en:"To perform a property search use...",nb:"Du kan lage nabolister for en gitt eiendom, denne blir da presentert som egen fane. Her kan du også legge til og fjerne eiendommer. Merk at naboliste lages i utgangspunktet for alle teiger som tilhører en eiendom.",nn:"Du kan lage nabolister for en gitt eiendom, denne blir da presentert som egen fane. Her kan du også legge til og fjerne eiendommer. Merk at naboliste lages i utgangspunktet for alle teiger som tilhører en eiendom."}
1,btnCreateNeighborList:{en:"Create neighborlist for property",nb:"Lag naboliste for eiendommen",nn:"Lag naboliste for eiendommen"},btnGetProceedingsList:{en:"Proceedings",nb:"Forretninger",nn:"Forretninger"},btnGetBuildingList:{en:"Buildings",nb:"Bygninger",nn:"Bygninger"},btnGetTeigList:{en:"Teiger",nb:"Teiger",nn:"Teiger"},btnGetOwnerList:{en:"Owners",nb:"Eiere",nn:"Eiere"},btnGetAddressList:{en:"Addresses",nb:"Adresser",nn:"Adresser"},fsAdresseInfoTitle:{en:"Address information",nb:"Adresseinformasjon",nn:"Adresseinformasjon"},fsAdresseInfoAddress:{en:"Address",nb:"Adresse",nn:"Adresse"},fsAdresseInfoNrPlace:{en:"Zip code/name",nb:"Postnr/sted",nn:"Postnr/sted"},fsAdresseInfoAdditionalName:{en:"Additional name",nb:"Tilleggsnavn",nn:"Tilleggsnavn"},building:{en:"Building",nb:"Bygg"},zoomToBuilding:{en:"Show building on map",nb:"Vis bygget på kartet"},fsBuildingInfoTitle:{en:"Building information",nb:"Bygningsinformasjon",nn:"Bygningsinformasjon"},fsBuildingInfoBuildingNr:{en:"Building number",nb:"Bygningsnr",nn:"Bygningsnr"},fsBuildingInfoType:{en:"Type",nb:"Type",nn:"Type"},fsBuildingInfoStatus:{en:"Status",nb:"Status",nn:"Status"},fsBuildingInfoDateInUse:{en:"Date in use",nb:"Dato tatt i bruk",nn:"Dato tatt i bruk"},fsBuildingInfoDateGeneralPermission:{en:"Date general permission",nb:"Dato rammetilattelse",nn:"Dato rammetilattelse"},fsBuildingInfoDateProjectStartupPermission:{en:"Date project start-up permission",nb:"Dato igangsettelsestillatelse",nn:"Dato igangsettelsestillatelse"},fsBuildingInfoDateProvisonalPermissionToUse:{en:"Date provisional permission to use",nb:"Dato midlertidig brukstillatelse",nn:"Dato midlertidig brukstillatelse"},fsBuildingInfoDateCertificateOfCompletion:{en:"Date certificate of completion",nb:"Dato ferdigattest",nn:"Dato ferdigattest"},fsBuildingInfoSefrak:{en:"Sefrak",nb:"Sefrak",nn:"Sefrak"},fsBuildingInfoCulturalHeritage:{en:"Cultural heritage",nb:"Kulturminne",nn:"Kulturminne"},fsBuildingInfoIndustryGroup:{en:"Industry group",nb:"Næringsgruppe",nn:"Næringsgruppe"},fsBuildingInfoBuildingChanges:{en:"Building changes",nb:"Bygningsendring",nn:"Bygningsendring"},fsTeigInfoTitle:{en:"Plot information",nb:"Teiginformasjon",nn:"Teiginformasjon"},fsTeigInfoType:{en:"Type",nb:"Type",nn:"Type"},fsTeigInfoCoordinates:{en:"Coordinates",nb:"Koordinater",nn:"Koordinater"},fsTeigInfoPlotArea:{en:"Plot area",nb:"Teigareal",nn:"Teigareal"},fsEtableringsdato:{en:"Date established",nb:"Etableringsdato",nn:"Etableringsdato"},fsTeigInfoMainPlot:{en:"Main plot",nb:"Hovedteig",nn:"Hovedteig"},fsTeigInfoComments:{en:"Comments",nb:"Merknad",nn:"Merknad"},fsPropertyInfoTitle:{en:"Property information",nb:"Matrikkelenhetsinformasjon",nn:"Matrikkelenhetsinformasjon"},fsPropertyInfoParcelName:{en:"Parcel name",nb:"Bruksnavn",nn:"Bruksnavn"},fsPropertyInfoMunicipality:{en:"Municipality",nb:"Kommune",nn:"Kommune"},fsPropertyInfoGnr:{en:"Lot",nb:"Gårdsnr",nn:"Gårdsnr"},fsPropertyInfoBnr:{en:"Parcel",nb:"Bruksnr",nn:"Bruksnr"},fsPropertyInfoFnr:{en:"Lease",nb:"Festenr",nn:"Festenr"},fsPropertyInfoSnr:{en:"Section number",nb:"Seksjonsnr",nn:"Seksjonsnr"},fsPropertyInfoUnitType:{en:"Unit type",nb:"Enhetstype",nn:"Enhetstype"},fsPropertyInfoArea:{en:"Historic Area",nb:"Historisk areal",nn:"Historisk areal"},fsPropertyInfoAreaCalculated:{en:"Calculated Area",nb:"Beregnet areal",nn:"Beregnet areal"},fsOwnerInfoTitle:{en:"Owner information",nb:"Eierinformasjon",nn:"Eigarinformasjon"},btnActivateMatrikkel:{en:"Activate matrikkel module",nb:"Aktiver matrikkelmodul",nn:"Aktiver matrikkelmodul"},linkShowGrunnbok:{en:"Show property register",nb:"Vis grunnboksinformasjon"},linkShowGrunnboksUtskrift:{en:"Confirmed basic printing for property",nb:"Bekreftet grunnboksutskrift for fast eiendom"},fsForretningType:{en:"Type",nb:"Type",nn:"Type"},fsForretningDato:{en:"Date",nb:"Dato",nn:"Dato"},fsForretningInfoTitle:{en:"Proceedings",nb:"Forretninger"},fsForretningLopenummer:{en:"Serial number",nb:"Løpenummer",nn:"Løpenummer"},fsForretningArealendring:{en:"Areachange",nb:"Arealendring",nn:"Arealendring"},fsForretningOmfordelingFra:{en:"From (gnr/bnr/fnr/snr)",nb:"Fra (gnr/bnr/fnr/snr)",nn:"Fra (gnr/bnr/fnr/snr)"},fsForretningOmfordelingTil:{en:"To (gnr/bnr/fnr/snr)",nb:"Til (gnr/bnr/fnr/snr)",nn:"Til (gnr/bnr/fnr/snr)"},fsForretningTinglysning:{en:"Registration status",nb:"Tinglysningsstatus",nn:"Tinglysningsstatus"}
1,forretningerList:{en:"Overview over all proceedings",nb:"Oversikt over alle forretninger tilhørende valgte matrikkelenhet"},bygningsListe:{en:"Overview over all buildings",nb:"Oversikt over alle bygninger tilhørende valgte matrikkelenhet"},teigList:{en:"Overview",nb:"Oversikt over alle teiger tilhørende valgte matrikkelenhet"},ownerList:{en:"List of owners",nb:"Oversikt over alle eiere tilhørende valgte matrikkelenhet"},addressList:{en:"List of addresses",nb:"Oversikt over alle adresser tilhørende valgte matrikkelenhet"}}});Ext.define("Client.data.model.search.matrikkel.PropertyNeighbor",{extend:Client.data.model.search.matrikkel.Property,proxy:{url:"WebServices/matrikkel/Matrikkelenhet.asmx/FindNeighborPropertiesById",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true}});Ext.define("Client.data.model.search.matrikkel.PropertyDetails",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/SeEiendom.asmx/Eiendomsinfo",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"hasAccess"},{name:"merBygningsinfoUrl"},{name:"matrikkelenheter",type:"auto",defaultValue:null,useNull:true},{name:"teiger",type:"auto",defaultValue:null,useNull:true},{name:"adresser",type:"auto",defaultValue:null,useNull:true},{name:"bygninger",type:"auto",defaultValue:null,useNull:true},{name:"eiere",type:"auto",defaultValue:null,useNull:true},{name:"kretstyper",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.matrikkel.Proceedings",{extend:Client.data.model.search.matrikkel.Base,url:"WebServices/matrikkel/SeEiendom.asmx/FindProceedings",fields:[{name:"typeNavn",type:"auto",defaultValue:null,useNull:true},{name:"typeKode",type:"auto",defaultValue:null,useNull:true},{name:"forretningsdokumentdato",type:"auto",defaultValue:null,useNull:true},{name:"lopenummer",type:"auto",defaultValue:null,useNull:true},{name:"tinglysningsstatus",type:"auto",defaultValue:null,useNull:true},{name:"arealendring",type:"auto",defaultValue:null,useNull:true},{name:"omfordelingFra",type:"auto",defaultValue:null,useNull:true},{name:"omfordelingTil",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.matrikkel.Buildings",{extend:Client.data.model.search.matrikkel.Base,url:"WebServices/matrikkel/SeEiendom.asmx/FindBygninger/",fields:[{name:"bygningsnr",type:"auto",defaultValue:null,useNull:true},{name:"bygningstype",type:"auto",defaultValue:null,useNull:true},{name:"bygningStatus",type:"auto",defaultValue:null,useNull:true},{name:"harSefrakminne",type:"auto",defaultValue:null,useNull:true},{name:"harKulturminne",type:"auto",defaultValue:null,useNull:true},{name:"naringsgruppe",type:"auto",defaultValue:null,useNull:true},{name:"bygningsEndring",type:"auto",defaultValue:null,useNull:true},{name:"bygningStatusKode",type:"auto",defaultValue:null,useNull:true},{name:"rammetillatelse",type:"auto",defaultValue:null,useNull:true},{name:"igangsettelsestillatelse",type:"auto",defaultValue:null,useNull:true},{name:"midlertidigBrukstillatelse",type:"auto",defaultValue:null,useNull:true},{name:"ferdigattest",type:"auto",defaultValue:null,useNull:true},{name:"bygningTattIBruk",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.matrikkel.Teig",{extend:Client.data.model.search.matrikkel.Base,url:"WebServices/matrikkel/SeEiendom.asmx/FindTeiger",fields:[{name:"type",type:"auto",defaultValue:null,useNull:true},{name:"koordinater",type:"auto",defaultValue:null,useNull:true},{name:"areal",type:"auto",defaultValue:null,useNull:true},{name:"hovedteig",type:"auto",defaultValue:null,useNull:true},{name:"merknad",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.matrikkel.Addresses",{extend:Client.data.model.search.matrikkel.Base,url:"WebServices/matrikkel/SeEiendom.asmx/GetAdresser",fields:[{name:"adresse",type:"auto",defaultValue:null,useNull:true},{name:"postnr",type:"auto",defaultValue:null,useNull:true},{name:"poststed",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Adaptive.layer.Highlight",{highlightFeature:function(w,h,g,b,A){var q=this;if(q.highlightLayer==null){q.createhighlightLayer()}q.highlightLayer.removeAllFeatures();if(!w){q.highlightLayer.setVisibility(false);return}if(!b){q.map.raiseLayer(q.highlightLayer,q.map.layers.length)}q.highlightLayer.setVisibility(true);if(w instanceof OpenLayers.Geometry){q.highlightLayer.addFeatures(new OpenLayers.Feature.Vector(w));return}else{if(w instanceof OpenLayers.Feature){q.highlightLayer.addFeatures([w]);return}else{if(Ext.isArray(w)&&w.length>0&&(w[0] instanceof OpenLayers.Feature||w[0] instanceof OpenLayers.Geometry)){q.highlightLayer.addFeatures(w);return}}}if(!Ext.isArray(w)){w=[w]}var o=new OpenLayers.Format.WKT(),z=[];Ext.each(w,function(C){var B=o.read(C);if(B){if(Array.isArray(B)){Ext.each(B,function(D){if(g&&map.getProjectionObject().proj.defData.indexOf("longlat")==-1){D=Adaptive.layer.Layer.simplifyFeature(D)}z.push(D)})}else{if(g&&map.getProjectionObject().proj.defData.indexOf("longlat")==-1){B=Adaptive.layer.Layer.simplifyFeature(B)}z.push(B)}}});if(z.length<1){return}q.highlightLayer.addFeatures(z);if(A){q.unHighlightTask=q.unHighlightTask||new Ext.util.DelayedTask(function(){q.removeHighlight()});q.unHighlightTask.delay(A)}},removeHighlight:function(){var b=this;if(b.highlightLayer){b.highlightLayer.removeAllFeatures();b.highlightLayer.setVisibility(false)}},createhighlightLayer:function(g){var b=this;
1g=g||new OpenLayers.StyleMap({strokeWidth:4,strokeColor:"#FF9900",strokeOpacity:0.7,pointRadius:7,fillOpacity:0.7,fillColor:"#FF9900"});b.highlightLayer=new OpenLayers.Layer.Vector(Ext.id()+"_highlight",{styleMap:g,rendererOptions:{zIndexing:true}});b.map.addLayer(b.highlightLayer)},removehighlightLayer:function(){var b=this;if(b.highlightLayer){b.highlightLayer.destroy()}b.highlightLayer=null}});Ext.define("Client.module.tool.matrikkel.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.layer.Highlight,Adaptive.layer.Select,Client.module.map.search.agents.matrikkel.Grid,Adaptive.form.mixins.Generator],btnCls:"a3-matrikkel",btnText:null,btnTip:null,headerText:null,name:"Matrikkel Module",description:"Property information for Matrikkel Module",internal_name:"av_matrikkel_panel",loadMask:null,parentController:null,findOwnerService:"WebServices/matrikkel/Eierforhold.asmx/FindOwnersForProperty",findProceedingsService:"WebServices/matrikkel/SeEiendom.asmx/FindProceedings",findBuildingsService:"WebServices/matrikkel/SeEiendom.asmx/FindBygninger",findTeigService:"WebServices/matrikkel/SeEiendom.asmx/FindTeiger",findAdressesService:"WebServices/matrikkel/SeEiendom.asmx/GetAdresser",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.matrikkel.lang.Standard");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("header_main");g.yes=g.lang.getString("yes");g.no=g.lang.getString("no");g.buildGui()},_onUserDetailsRetrieved:function(g){var b=this;b.userDetails=GeoMind.utils.Data.extractConfigObjectByKey(g.data.data,"record")},buildGui:function(){var g=this,b={type:"vbox",align:"stretch",pack:"start"};g.defaultInfo=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"component",html:"<p>"+g.lang.getString("defaultInfo")+"</p>"},{xtype:"component",html:"<p>"+g.lang.getString("defaultInfo2")+"</p>"}]});g.teigView=Ext.create("Ext.container.Container",{layout:b});g.bygningView=Ext.create("Ext.container.Container",{layout:b});g.adresseView=Ext.create("Ext.container.Container",{layout:b});g.matrikkelView=Ext.create("Ext.container.Container",{layout:b});g.ownerView=Ext.create("Ext.container.Container",{layout:b});g.btnGetProceedingsList=Ext.create("Ext.button.Button",{maxWidth:125,margin:"0 0 0 5",text:g.lang.getString("btnGetProceedingsList")});g.btnGetProceedingsList.mon(g.btnGetProceedingsList,"click",g.createProceedingsList,g);g.btnGetProceedingsList.hide();g.btnGetBuildingList=Ext.create("Ext.button.Button",{maxWidth:125,margin:"0 0 0 5",text:g.lang.getString("btnGetBuildingList")});g.btnGetBuildingList.mon(g.btnGetBuildingList,"click",g.createBuildingList,g);g.btnGetBuildingList.hide();g.btnGetTeigList=Ext.create("Ext.button.Button",{maxWidth:125,margin:"0 0 0 5",text:g.lang.getString("btnGetTeigList")});g.btnGetTeigList.mon(g.btnGetTeigList,"click",g.createTeigList,g);g.btnGetTeigList.hide();g.btnGetOwenrList=Ext.create("Ext.button.Button",{maxWidth:125,margin:"0 0 0 5",text:g.lang.getString("btnGetOwnerList")});g.btnGetOwenrList.mon(g.btnGetOwenrList,"click",g.createOwnerList,g);g.btnGetOwenrList.hide();g.btnGetAddressList=Ext.create("Ext.button.Button",{maxWidth:125,margin:"0 0 0 5",text:g.lang.getString("btnGetAddressList")});g.btnGetAddressList.mon(g.btnGetAddressList,"click",g.createAddressList,g);g.btnGetAddressList.hide();g.btnCreateNeighborList=Ext.create("Ext.button.Button",{maxWidth:250,text:g.lang.getString("btnCreateNeighborList")});g.btnCreateNeighborList.mon(g.btnCreateNeighborList,"click",g.createNeighborList,g);g.btnCreateNeighborList.hide();g.btnActivateProperty=Ext.create("Ext.button.Button",{maxWidth:250,text:g.lang.getString("btnActivateMatrikkel")});g.btnActivateProperty.mon(g.btnActivateProperty,"click",g.activatePropertyModule,g);g.btnActivateProperty.hide();g.view=Ext.create("Ext.panel.Panel",{autoScroll:true,layout:"anchor",defaults:{anchor:"100%"},cls:"a3-modules-body",items:[g.defaultInfo,g.btnCreateNeighborList,g.btnActivateProperty,g.matrikkelView,{xtype:"container",padding:"0 0 5 0",defaults:{width:125},items:[g.btnGetBuildingList,g.btnGetAddressList,g.btnGetTeigList]},{xtype:"container",padding:"0 0 5 0",defaults:{width:125},items:[g.btnGetTeigList,g.btnGetOwenrList]},{xtype:"container",padding:"0 0 5 0",defaults:{width:125},items:[g.btnGetProceedingsList]}]})},_onMatrikkelGridClose:function(g){var b=this;b.showDefaultInfo();b.clearViews();b.btnCreateNeighborList.hide();b.btnActivateProperty.hide();b.propertiesSelected=false;Ext.defer(function(){var h={evtName:"requestToolPanelCollapse",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:{tool:b.internal_name,originalEvt:g}};b.dispatchEvent(h,{confirmationRequired:false})},20)},_onShowBuilding:function(b){this.selectedBuilding=b.data},_onMatrikkelPropertySelected:function(g){if(g.data){var b=this,h=g.data.data;b.propertiesSelected=true;b.lastActiveGridSelected=g.data.theme_uuid;b.featInfo=g.data.featInfo;if(b.featInfo){b.btnActivateProperty.show();b.btnCreateNeighborList.hide()}else{b.btnActivateProperty.hide();b.btnCreateNeighborList.show()}b.switchTools();b.btnGetProceedingsList.hide();b.btnGetBuildingList.hide();b.btnGetTeigList.hide();b.btnGetOwenrList.hide();b.btnGetAddressList.hide();b.clearViews();b.teig=h;b.hideDefaultInfo();b.setHeader();b.getPropertyInfo()}},getPropertyIdentString:function(){var b=this.teig;return b.KOMMUNENR+"/"+b.GARDSNR+(b.BRUKSNR==null?"":"/"+b.BRUKSNR)+(b.FESTENR==null?"":"/"+b.FESTENR)+(b.SEKSJO
1NSNR==null?"":"/"+b.SEKSJONSNR)},showDefaultInfo:function(){this.defaultInfo.show();this.adviseHeaderChange(this.lang.getString("header_main"))},hideDefaultInfo:function(){this.defaultInfo.hide()},setHeader:function(){var b=this.getPropertyIdentString();this.adviseHeaderChange(this.lang.getString("header_main")+" "+b)},showLoadMask:function(){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.view,{msg:this.lang.getString("loadMaskMsg")})}this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},activatePropertyModule:function(){var h=this,q=h.activeMatrikkelEnhetIdenter,o=[];h.showLoadMask();if(!Ext.isArray(q)){q=[q]}var b=q.length;for(var g=0;g<b;g++){o.push({matrikkelenhetIdent:q[g]})}h.dataViewRequest(o)},createBuildingList:function(){var q=this,h=q.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Buildings"}),g=b.getProxy(),o;g.url=q.findBuildingsService;g.timeout=300000;g.extraParams.municipalityNumber=h.KOMMUNENR;g.extraParams.gnr=h.GARDSNR;g.extraParams.bnr=h.BRUKSNR==null?"":h.BRUKSNR;g.extraParams.fnr=h.FESTENR==null?"":h.FESTENR;g.extraParams.snr=h.SEKSJONSNR==null?"":h.SEKSJONSNR;b.load();o=Ext.create("Ext.window.Window",{width:500,maxHeight:Ext.getBody().getHeight()-50,height:Math.max(Math.min(Ext.getBody().getHeight()-100,600),100),title:q.lang.getString("fsBuildingInfoTitle"),layout:{type:"vbox",align:"stretch"},autoScroll:true,modal:true,bodyPadding:"0 10 5 10",items:[q.createTextBox("bygningsListe"),{xtype:"dataview",flex:1,cls:"matrikkelFieldset",store:b,itemSelector:"ul",autoScroll:true,tpl:new Ext.XTemplate('<tpl for=".">',"<p><h4>"+q.lang.getString("fsBuildingInfoBuildingNr")+": {bygningsnr}</h4></p>","<p>"+q.lang.getString("fsBuildingInfoType")+": {bygningstype}</p>","<p>"+q.lang.getString("fsBuildingInfoStatus")+": {bygningStatus}</p>","<p>"+q.lang.getString("fsBuildingInfoDateGeneralPermission")+": {rammetillatelse}</p>","<p>"+q.lang.getString("fsBuildingInfoDateProjectStartupPermission")+": {igangsettelsestillatelse}</p>","<p>"+q.lang.getString("fsBuildingInfoDateProvisonalPermissionToUse")+": {midlertidigBrukstillatelse}</p>","<p>"+q.lang.getString("fsBuildingInfoDateCertificateOfCompletion")+": {ferdigattest}</p>","<p>"+q.lang.getString("fsBuildingInfoDateInUse")+": {bygningTattIBruk}</p>","<p>"+q.lang.getString("fsBuildingInfoSefrak")+': {[values.harSefrakminne ? "'+q.yes+'" : "'+q.no+'"]}</p>',"<p>"+q.lang.getString("fsBuildingInfoCulturalHeritage")+': {[values.harKulturminne ? "'+q.yes+'" : "'+q.no+'"]}</p>',"<p>"+q.lang.getString("fsBuildingInfoIndustryGroup")+": {naringsgruppe}</p>","<p>"+q.lang.getString("fsBuildingInfoBuildingChanges")+": {bygningsEndring}</p>",'<a href="javascript:void(0)" class="{bygningsnr}"><p>'+q.lang.getString("zoomToBuilding")+"</a></p>","<hr>","</tpl>"),listeners:{expand:function(w){w.focus()},click:{element:"el",delegate:"a",fn:function(w,z){q.zoomToBuilding(z.className)}}}}]});o.show()},createProceedingsList:function(){var q=this,h=q.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Proceedings"}),g=b.getProxy(),o;g.url=q.findProceedingsService;g.extraParams.municipalityNumber=h.KOMMUNENR;g.extraParams.gnr=h.GARDSNR;g.extraParams.bnr=h.BRUKSNR==null?"":h.BRUKSNR;g.extraParams.fnr=h.FESTENR==null?"":h.FESTENR;g.extraParams.snr=h.SEKSJONSNR==null?"":h.SEKSJONSNR;b.load();o=Ext.create("Ext.window.Window",{width:500,maxHeight:Ext.getBody().getHeight()-50,height:Math.max(Math.min(Ext.getBody().getHeight()-100,600),100),title:q.lang.getString("fsForretningInfoTitle"),layout:{type:"vbox",align:"stretch"},autoScroll:true,modal:true,bodyPadding:"0 10 5 10",items:[q.createTextBox("forretningerList"),{xtype:"dataview",flex:1,cls:"matrikkelFieldset",store:b,itemSelector:"ul",autoScroll:true,tpl:new Ext.XTemplate('<tpl for=".">',"<p><h4>"+q.lang.getString("fsForretningType")+":{typeKode} - {typeNavn}</h4></p>","<p>"+q.lang.getString("fsForretningDato")+":{forretningsdokumentdato}</p>","<p>"+q.lang.getString("fsForretningLopenummer")+": {lopenummer}</p>","<p>"+q.lang.getString("fsForretningTinglysning")+": {tinglysningsstatus}</p>","<p>"+q.lang.getString("fsForretningArealendring")+": {arealendring}</p>","<p>"+q.lang.getString("fsForretningOmfordelingFra")+": {omfordelingFra}</p>","<p>"+q.lang.getString("fsForretningOmfordelingTil")+": {omfordelingTil}</p>","<hr>","</tpl>")}]});o.show()},createTeigList:function(){var q=this,h=q.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Teig"}),g=b.getProxy(),o;g.url=q.findTeigService;g.extraParams.municipalityNumber=h.KOMMUNENR;g.extraParams.gnr=h.GARDSNR;g.extraParams.bnr=h.BRUKSNR==null?"":h.BRUKSNR;g.extraParams.fnr=h.FESTENR==null?"":h.FESTENR;g.extraParams.snr=h.SEKSJONSNR==null?"":h.SEKSJONSNR;b.load();o=Ext.create("Ext.window.Window",{width:500,maxHeight:Ext.getBody().getHeight()-50,height:Math.max(Math.min(Ext.getBody().getHeight()-100,600),100),title:q.lang.getString("fsTeigInfoTitle"),layout:{type:"vbox",align:"stretch"},autoScroll:true,modal:true,bodyPadding:"0 10 5 10",items:[q.createTextBox("teigList"),{xtype:"dataview",flex:1,cls:"matrikkelFieldset",store:b,itemSelector:"ul",autoScroll:true,tpl:new Ext.XTemplate('<tpl for=".">',"<p><h4>"+q.lang.getString("fsTeigInfoType")+": {type}</h4></p>","<p>"+q.lang.getString("fsTeigInfoCoordinates")+": {koordinater}</p>","<p>"+q.lang.getString("fsTeigInfoPlotArea")+": {areal} m<sup>2</sup></p>","<p>"+q.lang.getString("fsTeigInfoMainPlot")+': {[values.hovedteig ? "'+q.yes+'" : "'+q.no+'"]}</p>',"<p>"+q.lang.getString("fsTeigInfoComments")+": {merknad}</p>","<hr>","</tpl>")}]});o.show()},createOwnerList:function(){var q=this,h=q.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Owner"}),g=b.getProxy(),o;g.url=q.findOwnerService;g.extraParams.municipalityNumber=h.KOMMUNENR;g.extraParams.gnr=h.GARDSNR;g.extraParams.bnr=h.BRUKSNR==null?"":h.BRUKSNR;g.extraParams.fnr=h.FESTENR==null?"":h.FESTENR;g.extraParams.snr=h.SEKSJONSNR==null?"":h.SEKSJONSNR;b.load();o=Ext.create("Ext.window.Window",{width:500,maxHeight:Ext.getBody().getHeight()-50,height:Math.max(Math.min(Ext.getBody().getHeight()-100,600),100),title:q.lang.getString("fsOwnerInfoTitle"),layout:{type:"vbox",align:"stretch"},autoScroll:true,modal:true,bodyPadding:"0 10 5 10",items:[q.createTextBox("ownerList"),{xtype:"dataview",flex:1,cls:"matrikkelFieldset",store:b,itemSelector:"ul",autoScroll:true,tpl:new Ext.XTemplate('<tpl for=".">',"<p><h4>Navn: {eiesAv.navn}</h4></p>","<tpl><p>Nr: {eiesAv.nr}</p>","<p>Adresse: {eiesAv.adresse}, {eiesAv.poststed} {eiesAv.postnr}</p></tpl>",'<p if="this.exists(andel)">',"<p>Andel: {andel.teller}/{andel.nevner}</p>","<p>Tinglyst: {andel.dato}</p>","</p>","<p>Eierforhold: {eierforholdKode.beskrivelse}</p>","<hr>","</tpl>")}]});o.show()},createAddressList:function(){var q=this,h=q.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Addresses"}),g=b.getProxy(),o;g.url=q.findAdressesService;g.extraParams.municipalityNumber=h.KOMMUNENR;g.extraParams.gnr=h.GARDSNR;g.extraParams.bnr=h.BRUKSNR==null?"":h.BRUKSNR;g.extraParams.fnr=h.FESTENR==null?"":h.FESTENR;g.extraParams.snr=h.SEKSJONSNR==null?"":h.SEKSJONSNR;b.load();o=Ext.create("Ext.window.Window",{width:500,maxHeight:Ext.getBody().getHeight()-50,height:Math.max(Math.min(Ext.getBody().getHeight()-100,600),100),title:q.lang.getString("fsAdresseInfoTitle"),layout:{type:"vbox",align:"stretch"},autoScroll:true,modal:true,bodyPadding:"0 10 5 10",items:[q.createTextBox("addressList"),{xtype:"dataview",flex:1,cls:"matrikkelFieldset",store:b,itemSelector:"ul",autoScroll:true,tpl:new Ext.XTemplate('<tpl for=".">',"<p><h4>"+q.lang.getString("fsAdresseInfoAddress")+": {adresse}</h4></p>","<p>"+q.lang.getString("fsAdresseInfoNrPlace")+": {postnr} {poststed}</p>","<hr>","</tpl>")}]});o.show()},createNeighborList:function(){var o=this;o.showLoadMask();var h=o.teig;var g=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.PropertyNeighbor"});g.getProxy().extraParams.municipalityNumber=h.KOMMUNENR;g.getProxy().extraParams.gnr=h.GARDSNR;g.getProxy().extraParams.bnr=h.BRUKSNR==null?"":h.BRUKSNR;g.getProxy().extraParams.fnr=h.FESTENR==null?"":h.FESTENR;g.getProxy().extraParams.snr=h.SEKSJONSNR==null?"":h.SEKSJONSNR;var b=this.getPropertyIdentString();g.load({scope:this,callback:function(w,q,B){var z=new Array();for(var A=0;A<w.length;A++){z[A]=w[A].data}this.hideLoadMask();this.dataViewRequestNeighbor(z,b)}})},getPropertyInfo:function(){var h=this,g=h.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.PropertyDetails"});h.showLoadMask();b.getProxy().extraParams.knr=parseInt(g.KOMMUNENR,10);b.getProxy().extraParams.gnr=parseInt(g.GARDSNR);b.getProxy().extraParams.bnr=parseInt(g.BRUKSNR);b.getProxy().extraParams.fnr=parseInt(g.FESTENR);
1b.getProxy().extraParams.snr=parseInt(g.SEKSJONSNR);b.load({scope:h,callback:function(q,o,z){this.hideLoadMask();if(!Ext.isArray(q)){return}var w=q[0].data;h.view.suspendLayout=true;if(w.adresser){this.viewAdresse(w.adresser)}if(w.bygninger){this.viewBygning(w.bygninger)}if(w.matrikkelenheter){h.activeMatrikkelEnhetIdenter=w.matrikkelenheter;this.viewProperty(w.matrikkelenheter)}if(w.teiger){this.viewTeig(w.teiger)}if(h.parentController.isModulePresent("av_search_matrikkel_owner")){h.btnGetProceedingsList.show();h.btnGetBuildingList.show();h.btnGetOwenrList.show()}h.btnGetTeigList.show();h.btnGetAddressList.show();h.view.suspendLayout=false;h.view.doLayout()}})},findOwners:function(){var h=this,g=h.teig,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Owner"});b.getProxy().url=h.findOwnerService;b.getProxy().extraParams.municipalityNumber=g.KOMMUNENR;b.getProxy().extraParams.gnr=g.GARDSNR;b.getProxy().extraParams.bnr=g.BRUKSNR==null?"":g.BRUKSNR;b.getProxy().extraParams.fnr=g.FESTENR==null?"":g.FESTENR;b.getProxy().extraParams.snr=g.SEKSJONSNR==null?"":g.SEKSJONSNR;b.load({scope:h,callback:function(q,o,w){data=[];Ext.each(q,function(z){data.push(z.data)});h.viewOwner(data)}})},clearViews:function(){this.matrikkelView.removeAll()},viewAdresse:function(A){if(!Ext.isArray(A)){A=[A]}var w=this,o=[];w.adresseView.removeAll();w.adresseView.setVisible(false);var g=A.length;for(var h=0;h<g;h++){var z={adresse:A[h]};if(z==null){continue}var q=g>1?" ("+(h+1)+"/"+g+")":"";var b=Ext.create("Ext.form.FieldSet",{title:w.lang.getString("fsAdresseInfoTitle")+q,collapsible:true,collapsed:true,cls:"matrikkelFieldset",listeners:{expand:function(B){B.focus()}},tpl:['<tpl for="adresse">',"<tpl><p>"+w.lang.getString("fsAdresseInfoAddress")+": {adresse}</p></tpl>","<tpl><p>"+w.lang.getString("fsAdresseInfoNrPlace")+": {postnr} {poststed}</p></tpl>","<tpl><p>"+w.lang.getString("fsAdresseInfoAdditionalName")+": {tilleggsnavn}</p></tpl>",'<tpl for="kretser">',"<tpl><p>{type}: {navn} ({kretsnr})</p></tpl>","</tpl>","</tpl>"]});b.update(z);o.push(b)}w.adresseView.add(o);w.adresseView.setVisible(true)},viewBygning:function(b){var g=this;Adaptive.utils.CadasterWfs.getBuilding(b,g.map.projection.projCode,function(h){if(h.length>0){g.highlightFeature(h);if(g.selectedBuilding){g.zoomToBuilding(g.selectedBuilding);delete g.selectedBuilding}}else{if(g.highlightLayer){g.highlightLayer.removeAllFeatures()}}})},_onPropertyRemoved:function(){var b=this;if(b.highlightLayer){b.highlightLayer.removeAllFeatures()}},filterBygning:function(b){return b=="FA"||b=="IG"||b=="MB"||b=="MF"||b=="MT"||b=="RA"||b=="TB"},zoomToBuilding:function(g){var h=this,b;if(!h.highlightLayer){return}b=h.highlightLayer.features.filter(function(o){return o.data.BYGNINGSNR==g});if(b.length>0){b=b[0];if(h.popup){h.popup.destroy()}h.setSelectedColor(b);h.map.setCenter(new OpenLayers.LonLat(b.geometry.x,b.geometry.y),h.defaultZoomLevel)}},createSelectControl:function(){var b=this;b.createhighlightLayer(new OpenLayers.StyleMap());b.selectControl=new OpenLayers.Control.SelectFeature(b.highlightLayer,{hover:true,clickFeature:function(g){b.setSelectedColor(g)},onSelect:function(g){b.displayPointMsg(g.data);b.setSelectedColor()},onUnselect:function(g){if((b.stickyFeature!=g)&&b.popup){b.setSelectedColor();b.popup.destroy();delete b.stickyFeature}else{b.setSelectedColor(g)}}});b.map.addControl(b.selectControl);b.selectControl.activate()},setSelectedColor:function(b){var g=this;if(g.stickyFeature&&g.stickyFeature.layer){g.stickyFeature.layer.drawFeature(g.stickyFeature,"default")}if(b){b.layer.drawFeature(b,"select");g.stickyFeature=b}},displayPointMsg:function(g){var b=this;if(b.popup){b.popup.destroy()}b.popup=Ext.create("Ext.window.Window",{cls:"a3-geoint-popup",header:true,closable:true,anchorPosition:"auto",autoScroll:true,width:250,title:b.lang.getString("building"),tpl:['<tpl for=".">',"<dl>","<dt>"+b.lang.getString("fsPropertyInfoMunicipality")+":</dt><dd>{KOMMUNENR}</dd>","<dt>"+b.lang.getString("building")+":</dt><dd>{BYGNINGSNR}</dd>","<dl>","</tpl>"],data:g,padding:5,listeners:{close:b.closePopup,scope:b}});b.popup.showAt(b.mapContainer.getWidth()/2+50,b.mapContainer.getHeight()/2+50)},closePopup:function(){var b=this;b.popup.destroy();delete b.popup;b.selectControl.unselectAll()},viewTeig:function(A){if(!Ext.isArray(A)){A=[A]}var w=this,o=[];w.teigView.removeAll();w.teigView.setVisible(false);var g=A.length;for(var h=0;h<g;h++){var z={teig:A[h]};if(z==null){continue}var q=g>1?" ("+(h+1)+"/"+g+")":"";var b=Ext.create("Ext.form.FieldSet",{title:w.lang.getString("fsTeigInfoTitle")+q,collapsible:true,collapsed:true,cls:"matrikkelFieldset",listeners:{expand:function(B){B.focus()}},tpl:['<tpl for="teig">',"<tpl><p>"+w.lang.getString("fsTeigInfoType")+": {type}</p></tpl>","<tpl><p>"+w.lang.getString("fsTeigInfoCoordinates")+": {koordinater}</p></tpl>","<tpl><p>"+w.lang.getString("fsTeigInfoPlotArea")+": {areal} m<sup>2</sup></p></tpl>","<tpl><p>"+w.lang.getString("fsTeigInfoMainPlot")+': {[values.hovedteig ? "'+w.yes+'" : "'+w.no+'"]}</p></tpl>',"<tpl><p>"+w.lang.getString("fsTeigInfoComments")+": {merknad}</p></tpl>","</tpl>"]});b.update(z);o.push(b)}w.teigView.add(o);w.teigView.setVisible(true)},viewProperty:function(A){if(!Ext.isArray(A)){A=[A]}var w=this,o=[];w.matrikkelView.removeAll();w.matrikkelView.setVisible(false);var g=A.length;for(var h=0;h<g;h++){var z={matrikkelenhetIdent:A[h]};if(z==null){continue}z.matrikkelenhetIdent.festenr=z.matrikkelenhetIdent.festenr||0;z.matrikkelenhetIdent.seksjonsnr=z.matrikkelenhetIdent.seksjonsnr||0;var q=g>1?" ("+(h+1)+"/"+g+")":"";var b=Ext.create("Ext.form.FieldSet",{title:w.lang.getString("fsPropertyInfoTitle")+q,collapsible:true,cls:"matrikkelFieldset",listeners:{expand:function(B){B.focus()}},tpl:['<tpl for="matrikkelenhetIdent">',"<tpl><p>"+w.lang.getString("fsPropertyInfoParcelName")+": {bruksnavn}</p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoMunicipality")+": {kommunenr} {kommunenavn}</p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoGnr")+": {gardsnr}</p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoBnr")+": {bruksnr}</p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoFnr")+": {festenr}</p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoSnr")+": {seksjonsnr}</p></tpl>","<tpl><p>
1"+w.lang.getString("fsPropertyInfoUnitType")+": {enhetstype}</p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoArea")+": {historiskAreal} m<sup>2</sup></p></tpl>","<tpl><p>"+w.lang.getString("fsPropertyInfoAreaCalculated")+": {beregnetAreal} m<sup>2</sup></p></tpl>",'<tpl><p><a href="https://seeiendom.kartverket.no/eiendom/{kommunenr}/{gardsnr}/{bruksnr}/{festenr}/{seksjonsnr}" target="_blank">'+w.lang.getString("linkShowGrunnbok")+"</a></p></tpl>",'<tpl><p><a href="https://ehandel.statkart.no/EHWeb/hand1/main.zul" target="_blank">'+w.lang.getString("linkShowGrunnboksUtskrift")+"</a></p></tpl>","</tpl>"]});b.update(z);o.push(b)}w.matrikkelView.add(o);w.matrikkelView.setVisible(true)},viewOwner:function(A){if(!Ext.isArray(A)){A=[A]}var w=this,o=[],g=A.length;w.ownerView.removeAll();w.ownerView.setVisible(false);for(var h=0;h<g;h++){var z={eierInfo:A[h]};if(z==null){continue}var q=g>1?" ("+(h+1)+"/"+g+")":"";var b=Ext.create("Ext.form.FieldSet",{title:w.lang.getString("fsOwnerInfoTitle")+q,collapsible:true,collapsed:true,cls:"matrikkelFieldset",listeners:{expand:function(B){B.focus()}},tpl:['<tpl for="eierInfo">',"<tpl><p>Navn: {eiesAv.navn}</p></tpl>","<tpl><p>Nr: {eiesAv.nr}</p></tpl>","<tpl><p>Adresse: {eiesAv.adresse}, {eiesAv.poststed} {eiesAv.postnr}</p></tpl>",'<tpl if="this.exists(andel)">',"<tpl><p>Andel: {andel.teller}/{andel.nevner}</p></tpl>","<tpl><p>Tinglyst: {andel.dato}</p></tpl>","</tpl>","<tpl><p>Eierforhold: {eierforholdKode.beskrivelse}</p></tpl>",'<tpl if="this.exists(eiesAv.bruksenhetsnr)">',"<tpl><p>Bruksenhetsnr: {eiesAv.bruksenhetsnr}</p></tpl>","</tpl>",'<tpl if="this.exists(eiesAv.personKategoriKode.beskrivelse)">',"<tpl><p>Kategori: {eiesAv.personKategoriKode.beskrivelse}</p></tpl>","</tpl>",'<tpl if="this.exists(eiesAv.personStatusKode.beskrivelse)">',"<tpl><p>Status: {eiesAv.personStatusKode.beskrivelse}</p></tpl>","</tpl>","</tpl></p>",{exists:function(B){return typeof B!="undefined"&&B!=null&&B!=""}}]});b.update(z);o.push(b)}w.ownerView.add(o);w.ownerView.setVisible(true)},switchTools:function(){var b=this;if(b.active){return}var g={evtName:"switchTools",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:b};b.dispatchEvent(g,{confirmationRequired:false})},activate:function(){var b=this;b.active=true;if(!b.view){b.buildGui()}if(!b.selectControl){b.createSelectControl()}b.featInfo=false;b.clearViews();if(b.lastActiveGridSelected!="namesadresses"){b.dataViewRequestNeighbor([],"",b.lastActiveGridSelected)}else{b.lastActiveGridSelected=null}},deactivate:function(){var b=this;b.active=false;b.beforeMapReset()},beforeMapReset:function(){var b=this;if(b.selectControl){b.selectControl.destroy();delete b.selectControl}b.removehighlightLayer();delete b.stickyFeature},_onRequestDataViewExpand:function(b){if(b.data.internal_name=="av_matrikkel_grid"){this.lastActiveGridSelected=b.data.theme_uuid}}});Ext.define("Client.module.tool.share.lang.Standard",{strings:{mainBtnText:{en:"Share",nb:"Del",nn:"Del"},mainBtnTip:{en:"Download or share a map view",nb:"Last ned eller del et kartutsnitt"},mainBtnTipShare:{en:"Share map",nb:"Del kart"},headerText:{en:"Download or share map",nb:"Last ned eller del kart"},headerTextShare:{en:"Share map",nb:"Del kart"}},errCodes:{}});Ext.define("Client.module.tool.share.lang.Print",{strings:{headerTextFile:{en:"Download map for print",nb:"Last ned kart"},headerTextEmail:{en:"Send map via email",nb:"Send kart via epost"},headerTextGeoJpeg:{en:"Download georeferenced jpeg",nb:"Last ned georeferert jpeg"},shareBtn:{en:"Back to main page",nb:"Tilbake til hovedsiden",nn:"Tilbake til hovedsiden "},shareBtn_tooltip:{en:"Cancel and go back to the main page",nb:"Avbryt og gå tilbake til hovedsiden",nn:"Avbryt og gå tilbake til hovedsiden"},printInfoLbl:{en:"Once downloaded, the map may be printed, shared or used in a presentation.",nb:"Når du har lastet ned kartet kan du senere skrive ut, dele eller bruke dette i andre dokumenter."},emailInfoLbl:{en:"The map will be generated in the format specified and then sent to a reciepient as a downloadable link through email. The link is valid for one week.",nb:"Kartet vil bli laget på det formatet du spesifiserer og sendt på epost som en nedlastbar lenke. Lenken er gyldig i en uke."},geoJpegInfoLbl:{en:"The map will be available as a zip archive containing a jpeg file and a jgw georeference file (world file).",nb:"Kartet vil bli tilgjengelig som en zip-fil som inneholder en jpeg-fil og en jgw-georeferansefil (world file)."}
1,printExtentInfoLbl:{en:"Click and drag the print extent preview to move it.",nb:"Klikk og dra i rektangelet for Ã¥ plassere utsnittet.",nn:"Klikk og dra i rektangelet for Ã¥ plassere utsnittet."},printArea:{en:"Print area",nb:"UtskriftsomrÃ¥de"},printAreaEmpty:{en:"Custom",nb:"Egendefinert"},empty:{en:"Not selected",nb:"Ikke valgt"},printGrid:{en:"Map grid",nb:"Rutenett"},grid_longlat:{en:"Geographic",nb:"Geografisk"},grid_merc:{en:"Mercator",nb:"Mercator"},grid_tmerc:{en:"Transverse Mercator",nb:"Transversal Mercator"},grid_utm:{en:"UTM",nb:"UTM"},grid_laea:{en:"Polar stereographic",nb:"Polarstereografisk"},btnPrint:{en:"Download",nb:"Last ned"},btnEmail:{en:"Send email",nb:"Send e-post"},btnGeoJpeg:{en:"Download map",nb:"Last ned kart"},btnCancel:{en:"Cancel",nb:"Avbryt",nn:"Avbryt"},advanced:{en:"Advanced print options",nb:"Flere utskriftsmuligheter",nn:"Flere utskriftsmuligheter"},printoutTitleLbl:{en:"Map title",nb:"Tittel",nn:"Tittel"},printoutDescriptionLbl:{en:"Map description",nb:"Beskrivelse",nn:"Beskrivelse"},printoutTitleEmptyText:{en:"Printout title",nb:"Tittel pÃ¥ utskrift",nn:"Tittel pÃ¥ utskrift"},printoutDescriptionEmptyText:{en:"Printout description",nb:"Beskrivelse pÃ¥ utskrift",nn:"Beskrivelse pÃ¥ utskrift"},printoutSignatureEmptyText:{en:"Printout signature",nb:"Signatur pÃ¥ utskrift",nn:"Signatur pÃ¥ utskrift"},btnScale_text:{en:"Scale",nb:"MÃ¥lestokk",nn:"MÃ¥lestokk"},btnPaperSize_text:{en:"Paper size",nb:"Papirstørrelse",nn:"Papirstøttelse"},btnRotation_text:{en:"Rotation",nb:"Rotasjon",nn:"Rotasjon"},btnLayout_text:{en:"Print layout",nb:"Utskriftsmal",nn:"Utskriftsmal"},btnResolution_text:{en:"Resolution",nb:"Oppløsning",nn:"Oppløsning"},btnPaperFormat_text:{en:"File format",nb:"Filformat",nn:"Filformat"},printoutSignatureLbl:{en:"Signature",nb:"Signatur",nn:"Signatur"},none:{en:"Not selected",nb:"Ikke valgt"},legend_map_lower_left:{en:"Lower left",nb:"Nedre venstre"},legend_map_upper_left:{en:"Top left",nb:"Ãvre venstre"},legend_map_lower_right:{en:"Lower right",nb:"Nedre høyre"},legend_map_upper_right:{en:"Top right",nb:"Ãvre høyre"},legend_separate:{en:"Separate page",nb:"PÃ¥ egen side"},legend_header_position:{en:"Position",nb:"Plassering"},legend_categories:{en:"Include category names",nb:"Inkluder kategorinavn"},legend_header:{en:"Legend",nb:"Tegnforklaring",nn:"Tegnforklaring"},themepicker_help:{en:"Configure legend",nb:"Tilpass tegnforklaring"},themepickerList_title:{en:"Configure legend",nb:"Tilpass tegnforklaring"},themepickerList_help:{en:"Select what you want to include in the printed legend. You may edit the legend text for some layers",nb:"Velg hva du vil vise i tegnforklaringen. Det er mulig Ã¥ editere teksten i tegnforklaringen for noen av lagene"},themepickerList_done:{en:"Apply",nb:"Ferdig"},themepickerList_disbled:{en:"The theme does not have a editable header text",nb:"Temalaget har ikke en redigerbar overskrift"},north:{en:"N",nb:"N",nn:"N"},east:{en:"E",nb:"Ã",nn:"Ã"},emailSendLbl:{en:"Send map",nb:"Send kart",nn:"Send kart"},emailRecipientEmptyText:{en:"Recipient email address",nb:"Mottakers epostadresse",nn:"Mottakars epostadresse"},emailSenderEmptyText:{en:"Your email address",nb:"Din epostadresse",nn:"Din epostadresse"},emailSubjectLbl:{en:"Email subject",nb:"Epostemne",nn:"Epostemne"},emailSubjectEmptyText:{en:"Email subject",nb:"Epostemne",nn:"Epostemne"},emailMessageLbl:{en:"Message",nb:"Beskjed",nn:"Beskjed"},emailMessageEmptyText:{en:"Write your custom message here",nb:"Skriv din beskjed her",nn:"Skriv din beskjed her"},layout_minimal:{en:"Map elements (north arrow and scale line)",nb:"Kartelementer (nordpil og mÃ¥lestokk)",nn:"Kartelementer (nordpil og mÃ¥lestokk)"},layout_minimal_no_arrow:{en:"Map elements (scale line)",nb:"Kartelementer (mÃ¥lestokk)",nn:"Kartelementer (mÃ¥lestokk)"},layout_minimal_with_title:{en:"Map elements and title",nb:"Kartelementer og tittel",nn:"Kartelementer og tittel"},layout_advanced:{en:"Map elements and textual information",nb:"Kartelementer og tekstlig informasjon",nn:"Kartelementer og tekstlig informasjon"},textual:{en:"Textual information",nb:"Tekstlig informasjon"},layout_default:{en:"Only map",nb:"Bare kartet",nn:"Bare kartet"},layout_location_map:{en:"Location map",nb:"Situasjonskart",nn:"Situasjonskart"},landscape:{en:"Landscape",nb:"Liggende",nn:"Liggende"},portrait:{en:"Portrait",nb:"StÃ¥ende",nn:"StÃ¥ende"},sendEmailMsg:{en:"Sending printout as email\u2026",nb:"Forbereder fil og sender lenke til denne som epost\u2026",nn:"Forbereder fil og sender lenke til denne som epost\u2026"},printToFileMsg:{en:"Your printout is being prepared\u2026",nb:"Forbereder fil for utskrift og nedlasting\u2026",nn:"Forbereder fil for utskrift og nedlasting\u2026"},printToGeoJpegMsg:{en:"Your geojpeg is being prepared\u2026",nb:"Oppretter en geojpeg\u2026",nn:"Oppretter en geojpeg\u2026"},configurationFailed_MsgTitle:{en:"Warning",nb:"Advarsel",nn:"Advarsel"},configurationFailed_Msg:{en:"Printing module configuration has failed.",nb:"Utskriftsparameterne er feil.",nn:"Utskriftsparameterne er feil."},callbackFailure_MsgTitle:{en:"Warning",nb:"Advarsel",nn:"Advarsel"},callbackFailure_Msg1_part1:{en:"The server returned the following error: ",nb:"Serveren returnerte følgende feilmelding: ",nn:"Serveren returnerte følgende feilmelding: "}
1,callbackFailure_Msg1_part2:{en:"Please try again or contact the system administrator.",nb:"Vennligst prøv igjen eller kontakt administrator.",nn:"Vennligst prøv igjen eller kontakt administrator."},callbackFailure_Msg2:{en:"Server communication error. Please try again or contact the system administrator.",nb:"Feil ved kommunikasjon med server. Vennligst prøv igjen eller kontakt administrator.",nn:"Feil ved kommunikasjon med server. Vennligst prøv igjen eller kontakt administrator."},layoutFailure_Warning:{en:"Warning",nb:"Advarsel",nn:"Advarsel"},layoutFailure_Msg_part1:{en:"Print layout has been reseted to default settings. The server returned the following error: ",nb:"Print layout har blitt tilbakestilt til standard oppsett. Serveren returnerte følgende feilmelding: ",nn:"Print layout har blitt tilbakestilt til standard oppsett. Serveren returnerte følgende feilmelding: "},layoutFailure_Msg_part2:{en:"Please try again or contact the system administrator.",nb:"Vennligst prøv igjen eller kontakt administrator.",nn:"Vennligst prøv igjen eller kontakt administrator."},callbackSuccess_MsgTitleFile:{en:"Printout ready",nb:"Utskrift / fil er ferdig!",nn:"Utskrift / fil er ferdig!"},callbackSuccess_MsgTitleEmail:{en:"Email sent",nb:"Epost sendt",nn:"Epost sendt"},callbackSuccess_MsgFile:{en:"Printout ready - the download process should start automatically.",nb:"Utskrift / fil er ferdig - nedlasting skal starte automatisk.",nn:"Utskrift / fil er ferdig - nedlasting skal starte automatisk."},callbackSuccess_MsgEmail:{en:"Your email has been sent.",nb:"Din epost har blitt sendt.",nn:"Din epost har blitt sendt."},invalidEmail_Title:{en:"Invalid email",nb:"Feil epost",nn:"Feil epost"},invalidEmail_Msg:{en:"Either the recipient or the sender email is invalid.",nb:"Feil ved enten avsender eller mottaker sin epost.",nn:"Feil ved enten avsender eller mottaker sin epost."},overview_map:{en:"Overview map",nb:"Oversiktskart"},overview_map_combo:{en:"Overview map ratio",nb:"Oversiktskart størrelsesforhold"},overview_map_combo_empty:{en:"Overview map not selected",nb:"Oversiktskart ikke valgt"}},errCodes:{}});Ext.define("GeoMind.utils.lang.Exceptions",{strings:{excMsg:{pl:"TreÅÄ wyjÄ
tku: ",en:"Exception message: "},excCode:{pl:"Kod wyjÄ
tku: ",en:"Exception code: "}},errCodes:{}});Ext.define("GeoMind.utils.Exceptions",{extend:GeoMind.base.Module,singleton:true,constructor:function(){this.registerDefaultLang()},registerDefaultLang:function(){if(GeoMind.lang.Lang==undefined){var b=this;setTimeout(function(){b.registerDefaultLang()},250)}else{this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.utils.lang.Exceptions")}},getMsg:function(b,q){var o="",g=function(z){var w;if(z.code){w=(q?q.getError(z.code):z.msg)+" ("+z.code+")"}else{w=z.msg}return"<span>"+w+"</span>"},h=(b.exceptions||[]).slice();if(b.exception){h.unshift(b.exception)}if(!h.length){return""}return'<div class="geomind-exceptions">'+h.map(g).join("<br><br>")+"</div>"}});Ext.define("GeoMind.utils.Validation",{singleton:true,validateExtent:function(h,g,q,o,z){var w=false;if(h!=null||g!=null||q!=null||o!=null){if(h!=null&&g!=null&&q!=null&&o!=null){if(h<q&&g<o){w=true}}}else{if(!z){w=true}}return w},validateEmail:function(b){var g=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return g.test(b)}});Ext.define("GeoMind.print.Utils",{singleton:true,getMapUnitScaleAgainstMM:function(b){switch(b.getUnits()){case"mm":return 1;break;case"cm":return 10;break;case"m":return 1000;break;case"km":return 1000000;break}},getStyle:function(o,q,g,w){var b=null;if(g[q]){b=g[q];if(b.indexOf&&b.indexOf("${")>-1){var h=b.substring(2,b.length-1);b=w[h](o)}}return b},collectVectorData:function(L,D,A){var C=[];for(var I=0;I<L.features.length;I++){var z=L.features[I];if(!z.getVisibility()){continue}var E=z.style;var g=null;if(!E){var w=L.styleMap.styles[z.renderIntent]||L.styleMap.styles["default"];E=w.defaultStyle;g=w.context}var B=null,b=null,K={};if(z.attributes&&z.attributes.show_label){B=z.attributes.name||z.attributes.label;b=z.attributes.labelStyle;K.labelXOffset=this.getStyle(L.features[I],"labelXOffset",E,g);K.labelYOffset=this.getStyle(L.features[I],"labelYOffset",E,g)}var G={externalGraphic:this.getStyle(L.features[I],"externalGraphic",E,g),pointRadius:this.getStyle(L.features[I],"pointRadius",E,g),fillColor:this.getStyle(L.features[I],"fillColor",E,g),fillOpacity:L.opacity*this.getStyle(L.features[I],"fillOpacity",E,g),strokeWidth:this.getStyle(L.features[I],"strokeWidth",E,g),strokeColor:this.getStyle(L.features[I],"strokeColor",E,g),strokeOpacity:L.opacity*this.getStyle(L.features[I],"strokeOpacity",E,g),strokeDashstyle:this.getStyle(L.features[I],"strokeDashstyle",E,g),width:this.getStyle(L.features[I],"graphicWidth",E,g),height:this.getStyle(L.features[I],"graphicHeight",E,g),offsetX:this.getStyle(L.features[I],"graphicXOffset",E,g),offsetY:this.getStyle(L.features[I],"graphicYOffset",E,g)};function q(N){var P=[];for(var Q=0;Q<N.components.length;Q++){var M=N.components[Q].getVertices();var O=[];for(v=0;v<M.length;v++){O[v]={pixX:Math.ceil((M[v].x-D.left)/A),pixY:Math.ceil((D.top-M[v].y)/A)}}P.push(O)}return P}function F(N){var M=N.getVertices();var O=[];for(v=0;v<M.length;v++){O[v]={pixX:Math.ceil((M[v].x-D.left)/A),pixY:Math.ceil((D.top-M[v].y)/A)}}return O}function o(M){C.push({point:[{pixX:Math.ceil((z.geometry.x-D.left)/A),pixY:Math.ceil((D.top-z.geometry.y)/A)}],style:G,label:B,labelAttrs:K,labelStyle:b})}if(z.geometry instanceof OpenLayers.Geometry.MultiPolygon){var h=[];for(var J=0;J<z.geometry.components.length;J++){h=h.concat(q(z.geometry.components[J]))}C.push({areaRings:h,style:G,label:B,labelAttrs:K,labelStyle:b})}else{if(z.geometry instanceof OpenLayers.Geometry.Polygon){C.push({areaRings:q(z.geometry),style:G,label:B,labelAttrs:K,labelStyle:b})}else{if(z.geometry instanceof OpenLayers.Geometry.MultiLineString){var H=[];for(var J=0;J<z.geometry.components.length;J++){H.push(F(z.geometry.components[J]))}C.push({lineRings:H,style:G,label:B,labelAttrs:K,labelStyle:b})}else{if(z.geometry instanceof OpenLayers.Geometry.LineString){C.push({lineRings:[F(z.geometry)],style:G,label:B,labelAttrs:K,labelStyle:b})}else{if(z.geometry instanceof OpenLayers.Geometry.MultiPoint){for(var J=0;J<z.geometry.components.length;J++){o(z.geometry.components[J])}}else{if(z.geometry instanceof OpenLayers.Geometry.Point){o(z.geometry)}}}}}}}return C},collectLayerSingleTileData:function(z,w,g,q){var h=w.scale(1);var B=new OpenLayers.Size(Math.round((h.right-h.left)/q),Math.round((h.top-h.bottom)/q));if(z.gutter){z.gutter=0;z.setTileSize()}var b=z.getURL(h);if(b.contains("url=")){var A=b.split("url="),o=A[1];o=GeoMind.utils.Url.setUrlParam(o,"WIDTH",B.w);o=GeoMind.utils.Url.setUrlParam(o,"HEIGHT",B.h);b=A[0]+"url="+o}else{b=GeoMind.utils.Url.setUrlParam(b,"WIDTH",B.w);b=GeoMind.utils.Url.setUrlParam(b,"HEIGHT",B.h)}return[{url:b,x:0,y:0,tileSizeW:B.w,tileSizeH:B.h,left:h.left,right:h.right,top:h.top,bottom:h.bottom}]},collectLayerTileData:function(h,ac,L,H){var X=0;var z=ac.scale(1);var o=new OpenLayers.Size(Math.round((z.right-z.left)/H),Math.round((z.to
1p-z.bottom)/H));var q=Math.ceil(o.h/h.tileSize.h)+Math.max(1,2*X);var I=Math.ceil(o.w/h.tileSize.w)+Math.max(1,2*X);var W=h.getTileOrigin();if(h.gutter){h.gutter=0;h.setTileSize()}if(OpenLayers.VERSION_NUMBER.indexOf("2.13")>-1){var M=h.calculateGridLayout(z,W,H);h.gridLayout=M;var G=M.tilelon;var b=M.tilelat;var D=h.map.layerContainerOriginPx.x;var J=h.map.layerContainerOriginPx.y;var O=h.getTileBoundsForGridIndex(0,0);var N=h.map.getViewPortPxFromLonLat(new OpenLayers.LonLat(O.left,O.top));N.x=Math.round(N.x)-D;N.y=Math.round(N.y)-J;var B=0;var Y=[];do{var C=h.grid[B];if(!C){C=[]}Y.push(C);var ad=0;do{O=h.getTileBoundsForGridIndex(B,ad);var A=N.clone();A.x=A.x+ad*Math.round(h.tileSize.w);A.y=A.y+B*Math.round(h.tileSize.h);var w=C[ad];if(!w){w=h.addTile(O,A);C.push(w)}else{w.moveTo(O,A,false)}var g=O.getCenterLonLat();ad+=1}while((O.right<=z.right+G*X)||ad<I);B+=1}while((O.bottom>=z.bottom-b*X)||B<q)}else{var M=h.calculateGridLayout(z,W,H);var U=Math.round(M.tileoffsetx);var S=Math.round(M.tileoffsety);var aa=M.tileoffsetlon;var F=M.tileoffsetlat;var G=M.tilelon;var b=M.tilelat;h.origin=new OpenLayers.Pixel(U,S);var E=U;var K=aa;var B=0;var D=parseInt(h.map.layerContainerDiv.style.left);var J=parseInt(h.map.layerContainerDiv.style.top);var Y=[];do{var C=h.grid[B++];if(!C){C=[]}Y.push(C);aa=K;U=E;var ad=0;do{var O=new OpenLayers.Bounds(aa,F,aa+G,F+b);var R=U;R-=D;var Q=S;Q-=J;var A=new OpenLayers.Pixel(R,Q);var w=C[ad++];if(!w){w=h.addTile(O,A);C.push(w)}else{w.moveTo(O,A,false)}aa+=G;U+=h.tileSize.w}while((aa<=z.right+G*X)||ad<I);F-=b;S+=h.tileSize.h}while((F>=z.bottom-b*X)||B<q)}var P=[];for(var V=0;V<Y.length;V++){for(var T=0;T<Y[V].length;T++){var w=Y[V][T];if(L.intersects(w.bounds.toGeometry())){var ab=Math.ceil((w.bounds.left-z.left)/H);var Z=Math.ceil((z.top-w.bounds.top)/H);P.push({url:h.getURL(w.bounds),x:ab,y:Z,tileSizeW:h.tileSize.w,tileSizeH:h.tileSize.h,left:w.bounds.left,right:w.bounds.right,top:w.bounds.top,bottom:w.bounds.bottom})}}}return P}});Ext.define("GeoMind.print.proxy.Standard",{mixins:[Ext.util.Observable],serviceUrl:"",serviceMethods:null,_serviceMethods:{config:"GetPrinterConfig",print:"Print"},constructor:function(b){Ext.apply(this,b);this.mixins["Ext.util.Observable"].constructor.call(this,b);if(!this.serviceMethods){this.serviceMethods=this._serviceMethods}this.addEvents(["configReady","printingFinished"])},pullPrintConfig:function(b){Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.config,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(this.pullPrintConfigCallbackSuccess,this),failure:Ext.bind(this.pullPrintConfigCallbackFailure,this)})},pullPrintConfigCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);this.fireEvent("configReady",b)},pullPrintConfigCallbackFailure:function(b,g){var h={success:false};this.fireEvent("configReady",h)},printRequest:null,print:function(o,h,g,b){this.printRequest=Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.print,method:"POST",timeout:120000,headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:Ext.apply({printData:{paperConfig:o,gui:__guuid__,printoutConfig:h.printoutConfig,overviewConfig:h.overviewConfig,layerData:h.layerData,dynamicData:g}},b),success:Ext.bind(this.printCallbackSuccess,this),failure:Ext.bind(this.printCallbackFailure,this)})},forcePrintRequestAbort:false,abortPrint:function(){if(this.printRequest){this.forcePrintRequestAbort=true;Ext.Ajax.abort(this.printRequest);this.printRequest=null}},printCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);var h={success:b.success,fileLocation:b.printoutFileLocation,aborted:false,exception:b.exception};this.fireEvent("printingFinished",h)},printCallbackFailure:function(b,g){var h={success:false,fileLocation:null,aborted:false,exception:null};if(this.forcePrintRequestAbort){this.forcePrintRequestAbort=false;h.aborted=true}this.fireEvent("printingFinished",h)}});Ext.define("GeoMind.print.Generic",{doPrintNonMergedLayers:null,paperConfig:null,dynamicData:null,serviceUrl:null,serviceMethods:null,printProxy:null,printAll:false,printConfig:null,configurationFinished:false,hasPrintConfig:false,canPrint:false,_styleSettings:{fillColorPreview:"#31468C",fillOpacityPreview:0.2,strokeColorPreview:"#31468C",strokeWidthPreview:1,strokeOpacityPreview:1,fillColorGhost:"White",fillOpacityGhost:1,strokeColorGhost:"#31468C",strokeWidthGhost:2,strokeOpacityGhost:1,cornerNodeRadius:0,edgeNodeRadius:5,rotationNodeRadius:5,rotationNodeFillColor:"#31468C",rotationNodeFillOpacity:1,rotationNodeStrokeColor:"#31468C",rotationNodeStrokeOpacity:1,rotationNodeStrokeWidth:2,rotationNodeCursor:"pointer"},translateSettings:null,translateLang:null,map:null,config:{enableRotation:true},initLogic:function(){this.addEvents(["printEngine_ConfigReady","printEngine_PrintingFinished","printEngine_PrintoutScalesChanged","printEngine_PrintExtentUpdated"]);if(!this.dynamicData){this.dynamicData={}}if(!this.styleSettings){this.styleSettings=this._styleSettings}if(!this.printProxy){this.printProxy=Ext.create("GeoMind.print.proxy.Standard",{serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods})}this.printProxy.on("configReady",this.onConfigReady,this);this.printProxy.on("printingFinished",this.onPrintingFinished,this)},pullPrintConfig:function(){this.printProxy.pullPrintConfig()},onConfigReady:function(h){this.configurationFinished=true;if(h.success){if(h.resolutions.length>0&&h.paperSizes.length>0&&h.printoutFormats.length>0&&h.printoutLayouts.length>0){var o=["resolutions","paperSizes","printoutFormats","printoutLayouts"];for(var q=0;q<o.length;q++){for(p in h[o[q]]){h[o[q]][p].display=h[o[q]][p].name}}for(var g=0;g<h.printoutLayouts.length;){if(h.printoutLayouts[g].hidden){h.printoutLayouts.splice(g,1)}else{++g}}if(this.translateSettings!=null&&this.translateSettings.length>0){for(var g=0;g<this.translateSettings.length;g++){for(p in h[this.translateSettings[g]]){if(h[this.translateSettings[g]][p].display!=null&&h[this.translateSettings[g]][p].display!=""){h[this.translateSettings[g]][p].display=this.translateLang.getString(h[this.translateSettings[g]][p].display)}if(h[this.translateSettings[g]][p].description!=null&&h[this.translateSettings[g]][p].description!=""){h[this.translateSettings[g]][p].description=this.translateLang.getString(h[this.translateSettings[g]][p].description)}}}}this.printConfig=h;this.hasPrintConfig=true;this.setUp()}else{return}var b={evtName:"printEngine_ConfigReady",evtInitiatingModule:this,evtBroadcastingController:null,data:{printConfig:this.printConfig,printEngine:this}};this.dispatchEvent(b,{confirmationRequired:false})}},onPrintingFinished:function(g){var b={evtName:"printEngine_PrintingFinished",evtInitiatingModule:this,evtBroadcastingController:null,callback:Ext.bind(this._activate,this),data:g};this.dispatchEvent(b,{confirmationRequired:false})},onMapBaseLayerChange:function(o){var g=this.paperConfig.scale;var h=this.getPrintoutScales();this.getMapScales();var b={evtName:"printEngine_PrintoutScalesChanged",evtInitiatingModule:this,evtBroadcastingController:null,callback:Ext.bind(this._activate,this),data:{printoutScales:h}};this.dispatchEvent(b,{confirmationRequired:false});if(this.isActive()&&!Ext.Array.contains(g)){var q=this.getClosestScale(g);this.updatePrintExtent(this.paperConfig.angle,q);this.activatePrintPreviewExtent()}},isActive:function(){var b=false;if(this.printPreviewLayer&&this.printPreviewLayer.getVisibility()){b=true}return b},setMap:function(b){this.map=b;this.setUp()},setUp:function(){if(!this.canPrint&&this.configurationFinished&&this.hasPrintConfig&&this.map){this.map.events.register("changebaselayer",this,this.onMapBaseLayerChange);var b=(this.map.getZoom()+3>this.map.getNumZoomLevels()-1)?this.map.getNumZoomLevels()-1:this.map.getZoom()+3;var g=Math.round(this.getMapScaleForZoom(b));g=this.getSnappedScale(g);this.paperConfig={layoutName:this.printConfig.printoutLayouts[0].name,size:this.printConfig.paperSizes[0].name,resolution:this.printConfig.resolutions[0].name,format:this.printConfig.printoutFormats[0].name,landscape:true,scale:g,angle:0};this.map.events.register("addlayer",this,this.schedulePrintPreviewLayerReset);this.map.events.register("removelayer",this,this.schedulePrintPreviewLayerReset);this.map.events.register("changelayer",this,this.schedulePrintPreviewLayerReset);this.configurePrintPreviewLayers();this.canPrint=true}},cleanUp:function(){if(this.canPrint){this.canPrint=false;this.printProxy.abortPrint();if(this.map){this.map.events.unregister("addlayer",this,this.schedulePrintPreviewLayerReset);this.map.events.unregister("removelayer",this,this.schedulePrintPreviewLayerReset);this.map.events.unregister("changelayer",this,this.schedulePrintPreviewLayerReset);this.map.events.unregister("changebaselayer",this,this.onMapBaseLayerChange)}this.destroyTransformFeatureControl();this.printPreviewLayer=null;this.printPreviewGhostLayer=null;this.map=null}},_activate:function(){var b;if(this.map.getZoom()+3>this.map.getNumZoomLevels()-1){b=this.map.getNumZoomLevels()-1}else{b=this.map.getZoom()+3}var g=this.getMapScaleForZoom(b);this.updatePrintExtent(0,g);this.resetPrintPreviewLayer();this.printPreviewLayer.setVisibility(true);this.printPreviewGhostLayer.setVisibility(true)},_deactivate:function(){this.printProxy.abortPrint();if(this.printPreviewLayer){this.printPreviewLayer.setVisibility(false);this.printPreviewLayer.removeAllFeatures()}if(this.printPreviewGhostLayer){this.printPreviewGhostLayer.setVisibility(false);this.printPreviewGhostLayer.removeAllFeatures()}this.printPreviewExtent=null},configurePrintPreviewLayers:function(){if(!this.printPreviewLayer){this.printPreviewLayer=new OpenLayers.Layer.Vector("PrintPreviewLayer"+this._id,{group:300,isBaseLayer:false,isVector:true,visibility:false,styleMap:new OpenLayers.StyleMap({"default":new OpenLayers.Style(OpenLayers.Util.applyDefaults({fillColor:this.styleSettings.fillColorPreview,fillOpacity:this.styleSettings.fillOpacityPreview,strokeColor:this.styleSettings.strokeColorPreview},OpenLayers.Feature.Vector.style["default"]))})});var g=this;var b={getRadius:function(o){var h=OpenLayers.Util.indexOf(g.transformFeatureControl.handles,o);var q=1;if(h!==-1){if((h%2)>0){q=g.styleSettings.edgeNodeRadius}else{q=g.styleSettings.cornerNodeRadius}}return q}};this.printPreviewGhostLayer=new OpenLayers.Layer.Vector("PrintPreviewGhostLayer"+this._id,{group:300,isBaseLayer:false,isVector:true,visibility:false,styleMap:new OpenLayers.StyleMap({"default":new OpenLayers.Style(OpenLayers.Util.applyDefaults({fillColor:this.styleSettings.fillColorGhost,fillOpacity:0,strokeWidth:this.styleSettings.strokeWidthGhost,strokeColor:this.styleSettings.strokeColorGhost},OpenLayers.Feature.Vector.style["default"])),transform:new OpenLayers.Style(OpenLayers.Util.applyDefaults({pointRadius:"${getRadius}",fillColor:this.styleSettings.fillColorGhost,fillOpacity:this.styleSettings.fillOpacityGhost,strokeColor:this.styleSettings.strokeColorGhost},OpenLayers.Feature.Vector.style.transform),{context:b})})});this.map.addLayers([this.printPreviewLayer,this.printPreviewGhostLayer])}},printPreviewLayerResetSchedule:null,schedulePrintPreviewLayerReset:function(b){if(this.active){if(this.printPreviewLayer&&this.printPreviewGhostLayer){if(this.map.getLayerIndex(this.printPreviewGhostLayer)!==this.map.getNumLayers()-1){if(this.printPreviewLayer&&this.printPreviewGhostLayer){if(b.layer.name!==this.printPreviewLayer.name){var g=this;clearTimeout(this.printPreviewLayerResetSchedule);this.printPreviewLayerResetSchedule=setTimeout(function(){g.resetPrintPreviewLayer()},1000)}}}}}},resetPrintPreviewLayer:function(){if(this.printPreviewLayer&&this.printPreviewGhostLayer){if(this.map.getLayerIndex(this.printPreviewGhostLayer)!==this.map.getNumLayers()-1){this.map.removeLayer(this.printPreviewLayer);this.map.removeLayer(this.printPreviewGhostLayer);this.map.addLayers([this.printPreviewLayer,this.printPreviewGhostLayer]);this.map.resetLayersZIndex()}this.activatePrintPreviewExtent()}},createTransformFeatureControl:function(){this.transformFeatureControl=new OpenLayers.Control.TransformFeature
1(this.printPreviewGhostLayer,{renderIntent:"transform",preserveAspectRatio:true,rotate:this.enableRotation,paperConfig:Ext.clone(this.paperConfig),rotationHandleSymbolizer:{pointRadius:this.styleSettings.rotationNodeRadius,fillColor:this.styleSettings.rotationNodeFillColor,fillOpacity:this.styleSettings.rotationNodeFillOpacity,strokeColor:this.styleSettings.rotationNodeStrokeColor,strokeWidth:this.styleSettings.rotationNodeStrokeWidth,strokeOpacity:this.styleSettings.rotationNodeStrokeOpacity,cursor:this.styleSettings.rotationNodeCursor}});this.map.addControl(this.transformFeatureControl);this.transformFeatureControl.events.register("transform",this,this.featureTransformCallback);this.transformFeatureControl.events.register("transformcomplete",this,this.featureTransformCompleteCallback);this.transformFeatureControl.activate()},destroyTransformFeatureControl:function(){if(this.transformFeatureControl!=null){if(this.transformFeatureControl.events){this.transformFeatureControl.events.unregister("transform",this,this.featureTransformCallback);this.transformFeatureControl.events.unregister("transformcomplete",this,this.featureTransformCompleteCallback)}this.transformFeatureControl.deactivate();this.map.removeControl(this.transformFeatureControl);this.transformFeatureControl.destroy();this.transformFeatureControl=null}},featureTransformCompleteCallback:function(b){var h=this.calculateNewPrintPreviewAngle(b);var g=this.transformFeatureControl.paperConfig.scale*b.object.scale;this.updatePrintExtent(h,g);this.activatePrintPreviewExtent()},updatePrintExtent:function(h,g){g=this.getSnappedScale(g);this.paperConfig.scale=g;this.paperConfig.angle=h;var b={evtName:"printEngine_PrintExtentUpdated",evtInitiatingModule:this,evtBroadcastingController:null,data:{paperConfig:this.paperConfig}};this.dispatchEvent(b,{confirmationRequired:false})},calculateNewPrintPreviewAngle:function(b){var g=0;if(b.object.rotation<-180||b.object.rotation>180){g=(b.object.rotation<0)?-180-(b.object.rotation%180):180+(b.object.rotation%180)}else{g=0-b.object.rotation}return g},printoutScales:null,mapScales:null,getPrintoutScales:function(){this.printoutScales=[];if(this.printConfig.printoutScales&&this.printConfig.printoutScales.length>0){var g=Math.round(GeoMind.utils.Map.getMapScaleForZoom(this.map,this.map.numZoomLevels-1));for(var b in this.printConfig.printoutScales){if((this.map.baseLayer.record&&this.map.baseLayer.record.get("print_url"))||this.printConfig.printoutScales[b].value>=g&&(!this.minMapScale||this.printConfig.printoutScales[b].value<=this.minMapScale)){this.printoutScales.push(this.printConfig.printoutScales[b].value)}}this.printoutScales.sort(function(o,h){return h-o})}else{if(!this.mapScales){this.getMapScales()}this.printoutScales=this.mapScales}return this.printoutScales},getOverviewMapRatios:function(){this.overviewMapRatios=[];if(this.printConfig.overviewMapRatios&&this.printConfig.overviewMapRatios.length>0){for(var b in this.printConfig.overviewMapRatios){this.overviewMapRatios.push(this.printConfig.overviewMapRatios[b].value)}this.overviewMapRatios.sort(function(h,g){return g-h})}return this.overviewMapRatios},getMapScales:function(){this.mapScales=[];var g=this.map.getNumZoomLevels();for(var b=0;b<g;b++){this.mapScales.push(this.getMapScaleForZoom(b))}},getMapScaleForZoom:function(b){return GeoMind.utils.Map.getMapScaleForZoom(this.map,b)},getSnappedScale:function(g,b){var h=Math.round(this.getClosestScale(g,b));return h},getClosestScale:function(h,b){if(this.printoutScales==null){this.getPrintoutScales()}if(h>=this.printoutScales[0]){return this.printoutScales[0]}if(h<=this.printoutScales[this.printoutScales.length-1]){return(this.printoutScales[this.printoutScales.length-1])}for(var g=0;g<this.printoutScales.length;g++){if(h<this.printoutScales[g]&&h>=this.printoutScales[g+1]){if(b){return h==this.printoutScales[g+1]?this.printoutScales[g+1]:this.printoutScales[g]}return(this.printoutScales[g]-h>h-this.printoutScales[g+1])?this.printoutScales[g+1]:this.printoutScales[g]}}},getClosestZoomLevelForScale:function(g){if(this.mapScales==null){this.getMapScales()}if(g>=this.mapScales[0]){return 0}if(g<=this.mapScales[this.mapScales.length-1]){return(this.mapScales.length-1)}for(var b=0;b<this.mapScales.length;b++){if(g<this.mapScales[b]&&g>=this.mapScales[b+1]){return(this.mapScales[b]-g>g-this.mapScales[b+1])?b+1:b}}},featureTransformControlUpdate:false,featureTransformCallback:function(b){var h=this.calculateNewPrintPreviewAngle(b);var g=this.transformFeatureControl.paperConfig.scale*b.object.scale;this.featureTransformControlUpdate=true;this.updatePrintExtent(h,g);this.featureTransformControlUpdate=false;this.updatePrintPreviewExtent()},printPreviewExtent:null,printPreviewExtentGhost:null,activatePrintPreviewExtent:function(){var B=GeoMind.print.Utils;if(!this.featureTransformControlUpdate){this.destroyTransformFeatureControl();var g;if(this.printPreviewExtent==null||this.printPreviewExtent.geometry==null){g={x:this.map.center.lon,y:this.map.center.lat}}else{var w=this.printPreviewExtent.geometry.getCentroid();g={x:w.x,y:w.y}}var o=this.getPaperSizeInMM(this.paperConfig.size);var z=B.getMapUnitScaleAgainstMM(this.map);var q=(this.paperConfig.landscape?o.height:o.width)/z;var b=(this.paperConfig.landscape?o.width:o.height)/z;var C=q*this.paperConfig.scale;var A=b*this.paperConfig.scale;this.printPreviewExtent=new OpenLayers.Feature.Vector(new OpenLayers.Bounds(g.x-(C/2),g.y-(A/2),g.x+(C/2),g.y+(A/2)).toGeometry());var h=isNaN(parseInt(this.paperConfig.angle))?0:this.paperConfig.angle;this.printPreviewExtent.geometry.rotate(0-h,new OpenLayers.Geometry.Point(g.x,g.y));this.printPreviewExtentGhost=this.printPreviewExtent.clone();this.printPreviewLayer.removeAllFeatures();this.printPreviewLayer.addFeatures([this.printPreviewExtent]);this.printPreviewGhostLayer.removeAllFeatures();this.printPreviewGhostLayer.addFeatures([this.printPreviewExtentGhost]);if(GeoMind.utils.Data.extractConfigObjectByKey(this.dynamicData,"overviewMap")){this.printPreviewLayer.addFeatures([this.calculateOverviewMapExtent()])}this.createTransformFeatureControl();this.transformFeatureControl.setFeature(this.printPreviewExtentGhost,{rotation:0-h})}},updatePrintPreviewExtent:function(){var z=GeoMind.print.Utils;var o=this.printPreviewExtentGhost.geometry.getCentroid();var A=this.getPaperSizeInMM(this.paperConfig.size);var q=z.getMapUnitScaleAgainstMM(this.map);var w=(this.paperConfig.landscape?A.height:A.width)/q;var b=(this.paperConfig.landscape?A.width:A.height)/q;var h=w*this.paperConfig.scale;var g=b*this.paperConfig.scale;this.printPreviewExtent=new OpenLayers.Feature.Vector(new OpenLayers.Bounds(o.x-(h/2),o.y-(g/2),o.x+(h/2),o.y+(g/2)).toGeometry());this.printPreviewExtent.geometry.rotate(0-this.paperConfig.angle,new OpenLayers.Geometry.Point(o.x,o.y));this.printPreviewLayer.removeAllFeatures();this.printPreviewLayer.addFeatures([this.printPreviewExtent]);if(GeoMind.utils.Data.extractConfigObjectByKey(this.dynamicData,"overviewMap")){this.printPreviewLayer.addFeatures([this.calculateOverviewMapExtent()])}},getPaperSizeInMM:function(h){var b;for(var g=0;g<this.printConfig.paperSizes.length;g++){if(this.printConfig.paperSizes[g].name===h){b={width:this.printConfig.paperSizes[g].widthMM,height:this.printConfig.paperSizes[g].heightMM};break}}return b},collectDataForPrintout:function(){var Q=this;var M=GeoMind.print.Utils;var F=this.printPreviewExtent.geometry.getBounds();var J=this.printPreviewExtent.geometry;var g=this.getClosestZoomLevelForScale(this.paperConfig.scale);var h=this.getMapScaleForZoom(g);var A=this.map.getResolutionForZoom(g);var b=this.printPreviewExtent.geometry.getCentroid();var H=b.clone().transform(this.map.getProjectionObject(),new OpenLayers.Projection("EPSG:4326"));var D=J.getVertices(),C,B,L,I;C=D[0].x-D[1].x;B=D[0].y-D[1].y;L=Math.sqrt(C*C+B*B);C=D[0].x-D[3].x;B=D[0].y-D[3].y;I=Math.sqrt(C*C+B*B);var q={printoutCenterX:b.x,printoutCenterY:b.y,printoutCenterLon:H.x,printoutCenterLat:H.y,printoutBasePixWidth:Math.round((F.right-F.left)/A),printoutBasePixHeight:Math.round((F.top-F.bottom)/A),printoutBoundsRight:F.right,printoutBoundsLeft:F.left,printoutBoundsTop:F.top,printoutBoundsBottom:F.bottom,printoutPixWidth:Math.round(L/A),printoutPixHeight:Math.round(I/A),printoutScale:this.paperConfig.scale};var P=[];var N=this.map.getZoom();var E=this.map.getCenter();this.map.setCenter(F.getCenterLonLat(),g,false,false);
1var K=this.map.getPrintLayers(this.doPrintNonMergedLayers);var z=this.includedLayers?this.includedLayers.slice():[];var o=null;function O(V){if(!V.getVisibility()){return}if(!V.calculateInRange()){return}var X={};if(V.renderer){X={name:V.name,opacity:V.opacity?parseInt(100*V.opacity):100,vectorData:M.collectVectorData(V,F,A)}}if(V.grid){if(!o){o=V}X={name:V.name,opacity:V.opacity?parseInt(100*V.opacity):100,tileData:V.singleTile?M.collectLayerSingleTileData(V,F,J,A):M.collectLayerTileData(V,F,J,A)}}else{if(V.CLASS_NAME=="OpenLayers.Layer.Image"){X={name:V.name,opacity:V.opacity?parseInt(100*V.opacity):100,tileData:[{bottom:V.extent.bottom,left:V.extent.left,right:V.extent.right,top:V.extent.top,tileSizeH:parseInt(V.tileSize.h),tileSizeW:parseInt(V.tileSize.w),url:V.url,x:Math.round((V.extent.left-F.left)/((V.extent.right-V.extent.left)/parseInt(V.tileSize.w))),y:Math.round((V.extent.top-F.top)/((V.extent.bottom-V.extent.top)/parseInt(V.tileSize.h)))}]}}}if(V.record){var T=V.record;X.layer_type_value=T.get("layer_type_value");X.print_url=T.get("print_url");X.legend_url=V.legend_data&&Ext.encode(V.legend_data);X.is_base_layer=T.get("is_base_layer");X.id=T.get("id");if(T.get("opacity")){X.opacity=T.get("opacity")}if(V.CLASS_NAME==="OpenLayers.Layer.WMS"){var W;for(var U=0;U<V.record.data.config.configs.length;U++){if(V.record.data.config.configs[U].key==="legend_print_selected_layers"){W=V.record.data.config.configs[U];break}}if(W&&W.value==="True"){X.LAYERS=V.params&&V.params.LAYERS;X.printLAYERS=true}else{X.LAYERS="";X.printLAYERS=false}}X.epsg=this.map.getProjectionObject().proj.srsProjNumber}P.push(X)}for(var G=0;G<K.length;G++){var R=K[G];if(R==this.printPreviewLayer||R==this.printPreviewGhostLayer){continue}if(!this.printAll){if(!R.record||!R.record.get("isActivePrintableLayer")){continue}}if(R.name=="fake"){continue}if(this.includedLayers&&!Ext.Array.contains(this.includedLayers,R)){continue}Ext.Array.remove(z,R);O(R)}z.forEach(function(T){O(T)});this.map.setCenter(E,N,false,false);var w={printoutConfig:q,layerData:P};var S={};Client.AppLogic.dispatchEvent("getLegendFiltered",S);Object.keys(S).forEach(function(T){Q.dynamicData.push({key:T,value:S[T]})});Q.dynamicData.push({key:"lang",value:GeoMind.lang.Lang.langCode});if(GeoMind.utils.Data.extractConfigObjectByKey(Q.dynamicData,"overviewMap")){w.overviewConfig=Q.createOverviewConfig(M,F,b,H)}return w},createOverviewConfig:function(J,F,g,H){var L=this,z=L.calculateOverviewMapExtent().geometry,h=z.getBounds(),w=GeoMind.utils.Data.extractConfigObjectByKey(L.dynamicData,"overviewMapRatio"),C=4,A=this.paperConfig.scale*w*C,I=this.getClosestZoomLevelForScale(A),K=this.map.getResolutionForZoom(I),N=L.map.baseLayer;var o=z.getVertices(),q=o[0].x-o[1].x,E=o[0].y-o[1].y,B=Math.sqrt(q*q+E*E),D=o[0].x-o[3].x,M=o[0].y-o[3].y,b=Math.sqrt(D*D+M*M);this.map.setCenter(F.getCenterLonLat(),I,false,false);var G={printoutCenterX:g.x,printoutCenterY:g.y,printoutCenterLon:H.x,printoutCenterLat:H.y,printoutBasePixWidth:Math.round((h.right-h.left)/K),printoutBasePixHeight:Math.round((h.top-h.bottom)/K),printoutBoundsRight:h.right,printoutBoundsLeft:h.left,printoutBoundsTop:h.top,printoutBoundsBottom:h.bottom,printoutPixWidth:Math.round(B/K),printoutPixHeight:Math.round(b/K),printoutScale:A,overviewLayer:{tileData:J.collectLayerTileData(N,h,z,K),layer_type_value:N.record.get("layer_type_value"),print_url:N.record.get("print_url"),legend_url:Ext.encode(N.legend_data),is_base_layer:N.record.get("is_base_layer"),epsg:this.map.getProjectionObject().proj.srsProjNumber,vectorData:[{areaRings:this.processPolygon(this.printPreviewExtent.geometry,h,K)}]}};return G},processPolygon:function(h,q,g){var w=[];for(var z=0;z<h.components.length;z++){var b=h.components[z].getVertices();var o=[];for(v=0;v<b.length;v++){o[v]={pixX:Math.ceil((b[v].x-q.left)/g),pixY:Math.ceil((q.top-b[v].y)/g)}}w.push(o)}return w},calculateOverviewMapExtent:function(){var z=this,D=GeoMind.print.Utils,w=GeoMind.utils.Data.extractConfigObjectByKey(z.dynamicData,"overviewMapRatio");var g=z.printPreviewExtentGhost.geometry.getCentroid();var A=D.getMapUnitScaleAgainstMM(z.map);var o=z.getPaperSizeInMM(z.paperConfig.size);var B=o.width/A;var q=o.height/A;var C=B*z.paperConfig.scale;var b=q*z.paperConfig.scale;var h=new OpenLayers.Feature.Vector(new OpenLayers.Bounds(g.x-(C/2*w),g.y-(b/2*w),g.x+(C/2*w),g.y+(b/2*w)).toGeometry());return h},onPrintSettingsUpdated:function(b){if(b.paperConfig){for(key in b.paperConfig){this.paperConfig[key]=b.paperConfig[key]}}if(b.dynamicData){this.dynamicData=Ext.clone(b.dynamicData)}this.activatePrintPreviewExtent()},print:function(b){this.printProxy.print(this.paperConfig,this.collectDataForPrintout(),this.dynamicData,b)},_onPrintSettingsUpdated:function(b){this.onPrintSettingsUpdated(b.data)},_onPrintRequest:function(b){this.print()}});Ext.define("GeoMind.print.Standard",{extend:GeoMind.base.Module,mixins:[GeoMind.print.Generic],constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.initLogic()}});Ext.define("Client.module.tool.share.Print",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],mode:null,backButton:true,printEngine:null,serviceUrl:null,serviceMethods:null,printProxy:null,printAll:true,translateSettings:null,translateLang:null,printAreaData:null,coordsPrj:null,modeControls:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.share.lang.Print"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.translateLang=this.lang;this.translateSettings=["printoutLayouts"];this.legendTranslations={}},init:function(){var b=this;b.themePickerStore=Ext.create("Ext.data.Store",{fields:["name","uuid",{name:"layers",type:"auto"}]});b.refreshThemePickerStore();b.printEngine=Ext.create("GeoMind.print.Standard",{serviceUrl:b.serviceUrl,serviceMethods:b.serviceMethods,printProxy:b.printProxy,printAll:b.printAll,enableRotation:false,doPrintNonMergedLayers:true,translateSettings:b.translateSettings,translateLang:b.translateLang,styleSettings:b.styleSettings});b.printEngine.on("printEngine_PrintingFinished",b.onPrintFinished,b);b.printEngine.on("printEngine_ConfigReady",b.onPrintConfigReady,b);b.printEngine.on("printEngine_PrintExtentUpdated",b.onPrintExtentUpdated,b);b.printEngine.on("printEngine_PrintoutScalesChanged",b.onPrintoutScalesChanged,b);b.printEngine.pullPrintConfig()},buildGui:function(){var w=this;var z=Ext.create("Ext.button.Button",{cls:"a3-link-btn a3-back-btn",text:w.lang.getString("shareBtn"),tooltip:w.lang.getString("shareBtn_tooltip"),tooltipType:"title",hidden:!w.backButton,listeners:{click:w.onCancel,scope:w}});var A=w.createTextBox("printInfoLbl");var h=w.createTextBox("emailInfoLbl","warning");var q=w.createTextBox("geoJpegInfoLbl");var o=w.createTextBox("printExtentInfoLbl");w.printAreaData&&w.printAreaData.forEach(function(C,B){C.id=B});w.printArea=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:w.lang.getString("printArea"),emptyText:w.lang.getString("printAreaEmpty"),editable:false,queryMode:"local",displayField:"name",valueField:"id",flex:1,hidden:true,store:Ext.create("Ext.data.Store",{fields:["id","name","center","epsg","scale"],data:w.printAreaData}),listeners:{scope:w,change:w.onChangePrintArea}});w.printGridStore=Ext.create("Ext.data.Store",{fields:["epsg","name"]});w.printGrid=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:w.lang.getString("printGrid"),editable:false,queryMode:"local",displayField:"name",valueField:"epsg",flex:1,hidden:true,store:w.printGridStore,listeners:{scope:w,change:w.onChangePrintGrid}});this.settingsScales=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:this.lang.getString("btnScale_text"),editable:false,queryMode:"local",displayField:"display",valueField:"value",flex:1,store:Ext.create("Ext.data.Store",{fields:["display","value"],data:[]})});this.settingsPaperSize=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:this.lang.getString("btnPaperSize_text"),editable:false,queryMode:"local",displayField:"display",valueField:"id",flex:1,store:Ext.create("Ext.data.Store",{fields:["id","display","name","landscape"],data:[]})});this.settingsOutputFormat=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:this.lang.getString("btnPaperFormat_text"),editable:false,queryMode:"local",displayField:"display",valueField:"name",flex:1,store:Ext.create("Ext.data.Store",{fields:["display","name"],data:[]})});this.settingsResolution=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:this.lang.getString("btnResolution_text"),editable:false,queryMode:"local",displayField:"display",valueField:"name",flex:1,store:Ext.create("Ext.data.Store",{fields:["display","name"],data:[]})});this.settingsAngle=Ext.create("Ext.form.field.Number",{labelAlign:"top",fieldLabel:this.lang.getString("btnRotation_text"),flex:1,value:0,allowDecimals:false,maxValue:180,minValue:-180});this.settingsLayout=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",editable:false,queryMode:"local",displayField:"display",valueField:"name",flex:1,store:Ext.create("Ext.data.Store",{fields:["display","name"],data:[]}),listeners:{change:function(H,G,D,E){var B,F=false,C=w.printEngine.printConfig.printoutLayouts;F=C.some(function(J,I){B=I;
1return J.name===G});w.clearDefaults();if(F&&C[B].defaults){w.setupDefaults(C[B].defaults)}},scope:this}});w.settingsLegend=Ext.create("Ext.form.ComboBox",{valueField:"value",editable:false,value:"none",flex:1,store:{xtype:"store",fields:["value","text"],data:[{value:"none",text:w.lang.getString("none")},{value:"lower_left",text:w.lang.getString("legend_map_lower_left")},{value:"upper_left",text:w.lang.getString("legend_map_upper_left")},{value:"lower_right",text:w.lang.getString("legend_map_lower_right")},{value:"upper_right",text:w.lang.getString("legend_map_upper_right")},{value:"separate",text:w.lang.getString("legend_separate")}]},listeners:{change:function(){w.enableThemePicker()},scope:w},queryMode:"local"});w.overviewMapCombo=Ext.create("Ext.form.field.ComboBox",{labelAlign:"top",fieldLabel:w.lang.getString("overview_map"),editable:false,queryMode:"local",displayField:"display",valueField:"value",emptyText:w.lang.getString("overview_map_combo_empty"),store:Ext.create("Ext.data.Store",{fields:["display","value"],data:[]}),listeners:{scope:w,select:w.onOverMapSelect}});this.printoutTitle=Ext.create("Ext.form.field.Text",{labelAlign:"top",fieldLabel:this.lang.getString("printoutTitleLbl"),emptyText:this.lang.getString("printoutTitleEmptyText"),cls:"a3-share-tool-extent-info"});this.printoutDescription=Ext.create("Ext.form.field.TextArea",{labelAlign:"top",fieldLabel:this.lang.getString("printoutDescriptionLbl"),emptyText:this.lang.getString("printoutDescriptionEmptyText")});w.printoutSignature=Ext.create("Ext.form.field.Text",{labelAlign:"top",fieldLabel:w.lang.getString("printoutSignatureLbl"),emptyText:w.lang.getString("printoutSignatureEmptyText")});w.printoutSet=Ext.create("Ext.form.FieldSet",{title:w.lang.getString("textual"),layout:"form",items:[this.printoutTitle,this.printoutDescription,this.printoutSignature]});var b=Ext.create("Ext.form.FieldContainer",{layout:"hbox",columnWidth:1,items:[this.settingsScales,this.settingsPaperSize]});w.layoutSet=Ext.create("Ext.form.FieldSet",{layout:"form",title:w.lang.getString("btnLayout_text"),items:[w.settingsLayout]});w.themePicker=Ext.create("Ext.button.Button",{cls:"a3-print-themepicker-btn",tooltip:w.lang.getString("themepicker_help"),tooltipType:"title",height:34,width:34,scope:w,disabled:true,handler:w.showThemePicker});w.legendSet=Ext.create("Ext.form.FieldSet",{layout:"form",title:w.lang.getString("legend_header"),items:[{xtype:"fieldcontainer",fieldLabel:w.lang.getString("legend_header_position"),labelAlign:"top",layout:"hbox",items:[w.settingsLegend,w.themePicker]}]});w.printSet=Ext.create("Ext.form.FieldSet",{title:w.lang.getString("advanced"),layout:"column",defaults:{columnWidth:0.5},items:[b,w.settingsAngle,w.settingsResolution,w.settingsOutputFormat,w.legendSet,w.printArea,w.printGrid,w.overviewMapCombo]});this.emailRecipient=Ext.create("Ext.form.field.Text",{emptyText:this.lang.getString("emailRecipientEmptyText")});this.emailSender=Ext.create("Ext.form.field.Text",{emptyText:this.lang.getString("emailSenderEmptyText")});w.emailSubject=Ext.create("Ext.form.field.Text",{labelAlign:"top",fieldLabel:w.lang.getString("emailSubjectLbl"),emptyText:w.lang.getString("emailSubjectEmptyText")});w.emailMessage=Ext.create("Ext.form.field.TextArea",{labelAlign:"top",fieldLabel:w.lang.getString("emailMessageLbl"),emptyText:w.lang.getString("emailMessageEmptyText")});var g=Ext.create("Ext.form.FieldSet",{title:w.getFormString("emailSendLbl"),layout:"form",items:[w.emailRecipient,w.emailSender,w.emailSubject,w.emailMessage]});w.modeControls={};w.modeControls.standard=[A,o,b,w.layoutSet,w.printSet];w.modeControls.email=[h,o,b,w.layoutSet,w.printSet,g];w.modeControls.geojpeg=[q,o,b];w.view=w.createForm({buttonsInline:true,cancelBtnConfig:false,items:[z,A,h,q,o,w.layoutSet,w.printSet,w.legendSet,w.printoutSet,g]})},refreshThemePickerStore:function(){var b=this,g={};b.reportEvent("getLegend",g);b.groupLegendByCategory=g.showCategoryName;b.themePickerStore.loadData(g.showCategoryName?g.legendData:[{layers:g.legendData}]);b.translateThemeNames()},translateThemeNames:function(){var h=this,o,b,g;Ext.iterate(h.legendTranslations,function(q){g=map.getLayerByLayerUuid(q);if(!g.getVisibility()){delete h.legendTranslations[q]}});h.themePickerStore.each(function(q){o=q.get("layers");o.forEach(function(w){b=h.legendTranslations[w.uuid];if(b){w.caption=b}}
1);q.set("layers",o)})},setLegendFilter:function(b){var g=this;if(b&&b.length>0){g.settingsLegend.store.filter([{filterFn:function(h){return Ext.Array.contains(b,h.get("value"))}}])}else{g.settingsLegend.store.clearFilter()}},onOverMapSelect:function(h,b){var g=this;if(b[0].get("value")!="none"){if(g.settingsLegend.getValue()=="lower_left"){g.settingsLegend.setValue("none")}g.setLegendFilter(Ext.Array.remove(g.legend_position,"lower_left"))}else{g.setLegendFilter()}},enableThemePicker:function(){var g=this;function b(){switch(g.settingsLegend.getValue()){case"lower_left":case"upper_left":case"lower_right":case"upper_right":case"separate":return true;default:return false}}g.themePicker&&g.themePicker.setDisabled(!(b()&&g.themePickerStore.data.items.length>0))},_onLayersVisibilityUpdated:function(){var b=this;if(b.themePickerStore){b.refreshThemePickerStore();b.enableThemePicker()}},_onGetLegendFiltered:function(B){var z=this,q={},h=[],w=0,C=0,o=[],D,b,g,A;if(!z.active){return}z.reportEvent("getLegend",q);b=Ext.clone(q.legendData);if(z.filteredThemes&&z.filteredThemes.length>0){if(q.showCategoryName){for(w;w<b.length;w++){g=b[w];D=[];for(C=0;C<g.layers.length;C++){layer=g.layers[C];if(Ext.Array.contains(z.filteredThemes,layer.uuid)){D.push(layer)}}D.forEach(function(E){Ext.Array.remove(g.layers,E)});if(g.layers.length==0){o.push(g)}}o.forEach(function(E){Ext.Array.remove(b,E)})}else{b=b.filter(function(E){return !Ext.Array.contains(z.filteredThemes,E.uuid)})}}if(q.showCategoryName){for(w;w<b.length;w++){g=b[w];for(C=0;C<g.layers.length;C++){layer=g.layers[C];A=z.legendTranslations[layer.uuid];if(A){layer.caption=A;layer.captions=[A]}}}}else{for(w;w<b.length;w++){layer=b[w];A=z.legendTranslations[layer.uuid];if(A){layer.caption=A;layer.captions=[A]}}}B.data.legendHideCatName=!!z.legendHideCatName;B.data.legendData=b},showThemePicker:function(){var g=this,b;g.filteredThemes=g.filteredThemes||[];g.refreshThemePickerStore();b=Ext.create("Ext.window.Window",{width:g.view.getWidth()-10,height:Math.max(Math.min(Ext.getBody().getHeight()-100,600),100),title:g.lang.getString("themepickerList_title"),layout:{type:"vbox",align:"stretch"},modal:true,bodyPadding:"0 10 5 10",items:[g.createTextBox("themepickerList_help"),{xtype:"dataview",flex:1,cls:"a3-print-themepicker-list",store:g.themePickerStore,itemSelector:"h3",autoScroll:true,tpl:new Ext.XTemplate('<tpl if="this.groupByCategory()">','<label class="catName">','<input type="checkbox" data-uuid="useCatName" class="theme-sel" <tpl if="this.getCheckedUseCatName()">checked="checked"</tpl>>',"{[this.getLangUseCatName()]}","</label>","<hr>","</tpl>",'<tpl for=".">',"<h3>{name}</h3>","<ul>",'<tpl for="layers">',"<li>",'<div class="a3-print-layer-container">','<input type="checkbox" data-uuid="{uuid}" class="theme-sel" <tpl if="this.getChecked({uuid})">checked="checked"</tpl>>','<input type="text" data-uuid="{uuid}" class="a3-print-layer" value="{caption}" <tpl if= "this.getIsDisabled(values)">disabled title="{[this.getDisabledText()]}
1"</tpl>>',"</div>","</li>","</tpl>","</ul>","</tpl>",{getChecked:function(h){return !Ext.Array.contains(g.filteredThemes,h.uuid)},getCheckedUseCatName:function(){return !g.legendHideCatName},groupByCategory:function(){return g.groupLegendByCategory},getLangUseCatName:function(){return g.lang.getString("legend_categories")},getIsDisabled:function(h){return h.disable_name_in_legend},getDisabledText:function(){return g.lang.getString("themepickerList_disbled")}}),listeners:{click:{element:"el",delegate:"input.theme-sel",fn:function(q,o){var h=o.getAttribute("data-uuid");if(h=="useCatName"){g.legendHideCatName=!o.checked;return}Ext.Array.remove(g.filteredThemes,h);if(!o.checked){g.filteredThemes.push(h)}}},input:{element:"el",delegate:"input.a3-print-layer",fn:function(q,o){var h=o.getAttribute("data-uuid");g.legendTranslations[h]=o.value}},scope:g}},g.createButton("themepickerList_done",true,{handler:function(){b.close()}})]});b.showBy(g.view.up(),"c-c")},fromWkt:function(h,o,q){var g=this,b=h?new OpenLayers.Format.WKT().read(h):null;if(b&&g.map.getProjection()!=o){Adaptive.utils.Proj.transformFeatureAsync(b,o,g.map.getProjection(),function(A,z,w){q(A,w)})}else{q(true,b)}},onChangePrintArea:function(g,B){var z=this,w=g.store.getAt(B),E=z.printEngine,A=E.printPreviewLayer,D=E.printPreviewGhostLayer,b=w&&A.features[0].geometry.clone().getCentroid(),q,o,C,h;if(!w){return}h=w.get("scale");z.fromWkt(w.get("center"),"EPSG:"+w.get("epsg"),function(H,F){if(H){function G(I){I.geometry.move(q,o)}q=F.geometry.x-b.x;o=F.geometry.y-b.y;G(A.features[0]);G(D.features[0]);G(D.features[1]);z.silentInternalUpdatePrintArea=true;if(z.settingsAngle.getValue()!=0){z.settingsAngle.setValue(0)}if(z.settingsScales.getValue()!=h){z.settingsScales.setValue(h)}else{A.redraw();D.redraw()}z.silentInternalUpdatePrintArea=false;z.map.zoomToExtent(A.features[0].geometry.getBounds())}})},onChangePrintGrid:function(w,q,g){var o=this,b=o.gridLayers[g],h=o.gridLayers[q];b&&b.setVisibility(false);h&&h.setVisibility(true)},destroyGridLayers:function(){var b=this;Ext.iterate(b.gridLayers,function(h,g){g.destroy()});b.gridLayers={};b.printGrid.clearValue()},createGridLayer:function(b){var g=this;g.gridLayers=g.gridLayers||{};g.gridLayers[b]=new OpenLayers.Layer.WMS("share_grid_"+b,g.gridWmsUrl,{layers:b,transparent:true,version:"1.3.0",singleTile:true},{visibility:false,ratio:1,singleTile:true});g.gridLayers[b].record=Ext.create("GeoMind.data.model.Layer",{layer_type:GeoMind.utils.DictionaryManager.getDictionaryUuid("layer_types","WMS"),layer_type_value:"WMS",legend_url:g.gridWmsUrl});map.addLayer(g.gridLayers[b],true)},setTextDisabled:function(b){var g=this;if(b){g.printoutSet.hide()}else{g.printoutSet.show()}},setDescriptionDisabled:function(b){var g=this;if(b){g.printoutDescription.hide()}else{g.printoutDescription.show()}},setSinatureEnabled:function(b){var g=this;if(b){g.printoutSignature.show()}else{g.printoutSignature.hide()}},setLegendEnabled:function(b){var g=this;if(b){g.legendSet.show()}else{g.settingsLegend.setValue("none");g.legendSet.hide()}},setOverviewMapEnabled:function(b){var g=this;if(b){g.overviewMapCombo.show()}else{g.overviewMapCombo.setValue("none");g.overviewMapCombo.hide()}},onSave:function(){switch(this.mode){case"email":if(!GeoMind.utils.Validation.validateEmail(this.emailSender.getValue())||!GeoMind.utils.Validation.validateEmail(this.emailRecipient.getValue())){Ext.Msg.show({title:this.lang.getString("invalidEmail_Title"),msg:this.lang.getString("invalidEmail_Msg"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING});return}this.showLoadMask(this.lang.getString("sendEmailMsg"));break;case"geojpeg":this.showLoadMask(this.lang.getString("printToGeoJpegMsg"));break;default:this.showLoadMask(this.lang.getString("printToFileMsg"));break}this.notifyPaperConfigChange();this.printEngine.print()},onPrintFinished:function(g){this.hideLoadMask();if(g.success){var b;var h="";if(g.exception){h="<br/><br/><b>"+this.lang.getString("layoutFailure_Warning")+"</b><br/>"+this.lang.getString("layoutFailure_Msg_part1")+'<span style="color: red;">'+g.exception.msg+"</span>"+this.lang.getString("layoutFailure_Msg_part2")}if(this.mode=="email"){b=this.lang.getString("callbackSuccess_MsgTitleEmail");h=this.lang.getString("callbackSuccess_MsgEmail")+h}else{if(h!=""){b=this.lang.getString("callbackSuccess_MsgTitleFile");h=this.lang.getString("callbackSuccess_MsgFile")+h}document.getElementById("file_download_iframe").src=g.fileLocation}if(h!=""){Ext.Msg.show({title:b,msg:h,buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})}}else{if(!g.aborted){var o=GeoMind.utils.Exceptions.getMsg(g,this.lang);if(o.length>0){Ext.Msg.show({title:this.lang.getString("callbackFailure_MsgTitle"),msg:this.lang.getString("callbackFailure_Msg1_part1")+o+this.lang.getString("callbackFailure_Msg1_part2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}else{Ext.Msg.show({title:this.lang.getString("callbackFailure_MsgTitle"),msg:this.lang.getString("callbackFailure_Msg2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}}}},loadMask:null,showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:b})}this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},onCancel:function(){this.fireEvent("shareassocial")},setMode:function(h){var b=this;b.mode=h;if(b.mode=="geojpeg"){b.settingsLayout.setValue("layout_default");b.setLegendEnabled(false);
1b.settingsOutputFormat.setValue(b.settingsOutputFormat.store.getAt(b.settingsOutputFormat.store.findExact("name","jpg")));b.settingsOutputFormat.disable()}else{b.settingsOutputFormat.enable()}var g;for(m in this.modeControls){if(m==h){g=this.modeControls[m]}else{this.modeControls[m].forEach(function(o){if(o.isVisible()){o.hide()}})}}g.forEach(function(o){o.show()});switch(h){case"email":this.view.down("#btnSave").setText(this.getFormString("btnEmail"));break;case"geojpeg":this.view.down("#btnSave").setText(this.getFormString("btnGeoJpeg"));break;default:this.view.down("#btnSave").setText(this.getFormString("btnPrint"));break}},getHeader:function(){switch(this.mode){case"email":return this.lang.getString("headerTextEmail");break;case"geojpeg":return this.lang.getString("headerTextGeoJpeg");break;default:return this.lang.getString("headerTextFile");break}},getPrintoutScales:function(){var b=[];var g=this.printEngine.getPrintoutScales();for(s in g){b.push({value:g[s],display:"1:"+Ext.util.Format.number(g[s],"0,0")})}return b},getOverviewRatios:function(){var g=[{display:this.lang.getString("none"),value:"none"}],b=this.printEngine.getOverviewMapRatios();for(s in b){g.push({value:b[s],display:"* "+b[s]})}return g},grabPaperConfig:function(){var b=this.settingsPaperSize.store.getAt(this.settingsPaperSize.store.findExact("id",this.settingsPaperSize.getValue()));return{layoutName:this.settingsLayout.getValue(),size:b.get("name"),resolution:this.settingsResolution.getValue(),format:this.settingsOutputFormat.getValue(),landscape:b.get("landscape"),scale:this.settingsScales.getValue(),angle:this.settingsAngle.getValue()||0}},getDynamicData:function(){var q=this,w=GeoMind.utils.DictionaryManager.getDictionary("configs"),g;w.forEach(function(z){switch(z.key){case"legend_category":g=!!z.value;break}});var b=this.getCorners();var o=this.map.getProjectionObject();var h=q.overviewMapCombo.getValue();return[{key:"printoutTitle",value:this.printoutTitle.getValue()},{key:"printoutDescription",value:this.printoutDescription.getValue()},{key:"printedBy",value:this.printoutSignature.getValue()},{key:"cornerTopRight",value:b.topRigth},{key:"cornerBottomLeft",value:b.bottomLeft},{key:"print_extent",value:b.print_extent},{key:"projection_info",value:{name:o.toString(),def:o.proj.defData}},{key:"mode",value:this.mode},{key:"emailRecipient",value:this.emailRecipient.getValue()},{key:"emailSender",value:this.emailSender.getValue()},{key:"emailSubject",value:this.emailSubject.getValue()},{key:"emailMessage",value:this.emailMessage.getValue()},{key:"printLegend",value:q.settingsLegend.getValue()},{key:"legendHeader",value:this.lang.getString("legend_header")},{key:"showCategoryName",value:g},{key:"overviewMap",value:h&&h!="none"},{key:"overviewMapRatio",value:h}]},getCorners:function(C){C=C||0.005;var P=this,E=P.settingsScales.getValue()*C,B=P.settingsAngle.getValue()*-1,J=P.printEngine.printPreviewLayer.features[0].geometry.clone(),g=(P.coordsPrj&&P.coordsPrj.proj.defData.indexOf("longlat")>-1)?5:0,O=P.lang.getString("north"),L=P.lang.getString("east"),D=J.getVertices();var I=D[2].x,w=D[2].y,G=D[0].x,o=D[0].y,N=Math.PI*(B/180),h=Math.cos(N),b=Math.sin(N),H=I-E*(h-b),F=w-E*(h+b),M=G-E*(b-h),K=o+E*(h+b);if(P.coordsPrj){var A=new OpenLayers.Geometry.Point(H,F),q=new OpenLayers.Geometry.Point(M,K),z=P.map.getProjectionObject();if(z.getCode()!=P.coordsPrj.getCode()){A.transform(z,P.coordsPrj);q.transform(z,P.coordsPrj)}H=A.x;F=A.y;M=q.x;K=q.y}return{topRigth:O+F.toFixed(g)+", "+L+H.toFixed(g),bottomLeft:O+K.toFixed(g)+", "+L+M.toFixed(g),print_extent:{x1:D[3].x,y1:D[3].y,x2:D[2].x,y2:D[2].y,x3:D[1].x,y3:D[1].y,x4:D[0].x,y4:D[0].y}}},silentInternalUpdate:false,notifyPaperConfigChange:function(){var g=this,b;if(!g.silentInternalUpdate){b=g.grabPaperConfig();g.printEngine.onPrintSettingsUpdated({paperConfig:b,dynamicData:g.getDynamicData()});if(!g.silentInternalUpdatePrintArea){g.printArea.reset()}if(b.size==="A2"){g.settingsResolution.store.loadData(g.settingsResolution.store.data.items.slice(0,2));g.settingsResolution.setValue(g.settingsResolution.store.data.items[0])}else{g.settingsResolution.store.loadData(g.printEngine.printConfig.resolutions)}}},onPrintoutScalesChanged:function(b){this.settingsScales.store.loadData(this.getPrintoutScales());this.overviewMapCombo.store.loadData(this.getOverviewRatios())},onPrintExtentUpdated:function(g){var b=this;this.silentInternalUpdate=true;this.settingsAngle.setValue(g.paperConfig.angle);this.settingsScales.setValue(g.paperConfig.scale);b.printArea.reset();this.silentInternalUpdate=false},deactivate:function(){var b=this;if(!b.view){return}b.printEngine._deactivate();b.cleanMeUp();b.active=false},activate:function(){var b=this;if(!b.view){b.init();return}b.printEngine.setMap(b.map);b.setMeUp();b.printEngine._activate();if(b.printAreaData){b.printArea.reset();b.printArea.show()}else{b.printArea.hide()}if(!b.settingsLayout.getValue()){b.settingsLayout.setValue(b.default_layout)}b.notifyPaperConfigChange();b.active=true;b.fireEvent("ready")},onPrintConfigReady:function(g){var b=this;if(!g.printConfig.success){Ext.Msg.show({title:this.lang.getString("configurationFailed_MsgTitle"),msg:this.lang.getString("configurationFailed_Msg"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}b.buildGui();b.activate()},setMeUp:function(){var h=this;if(!this.printEngine.canPrint){return}this.settingsScales.store.loadData(this.getPrintoutScales(0));this.overviewMapCombo.store.loadData(this.getOverviewRatios());this.settingsOutputFormat.store.loadData(this.printEngine.printConfig.printoutFormats);this.settingsResolution.store.loadData(this.printEngine.printConfig.resolutions);this.settingsLayout.store.loadData(this.printEngine.printConfig.printoutLayouts);
1h.printEngine.printConfig.printoutLayouts.forEach(function(q){if(q.default_layout){h.default_layout=q.name}});var g=[];var b=this.lang.getString("landscape");var o=this.lang.getString("portrait");for(ps in this.printEngine.printConfig.paperSizes){if(this.printEngine.printConfig.paperSizes[ps].hidden){continue}g.push({id:this.printEngine.printConfig.paperSizes[ps].name+o,name:this.printEngine.printConfig.paperSizes[ps].name,display:this.printEngine.printConfig.paperSizes[ps].display+" "+o,landscape:false});g.push({id:this.printEngine.printConfig.paperSizes[ps].name+b,name:this.printEngine.printConfig.paperSizes[ps].name,display:this.printEngine.printConfig.paperSizes[ps].display+" "+b,landscape:true})}this.settingsPaperSize.store.loadData(g);this.settingsPaperSize.on("change",this.notifyPaperConfigChange,this);this.settingsScales.on("change",this.notifyPaperConfigChange,this);this.overviewMapCombo.on("change",this.notifyPaperConfigChange,this);this.settingsAngle.on("change",this.notifyPaperConfigChange,this);this.settingsAngle.on("validitychange",this.validateAngle,this);this.enable()},validateAngle:function(h,g,b){if(!g){if(h.getValue()>h.maxValue){h.setValue(h.maxValue)}if(h.getValue()<h.minValue){h.setValue(h.minValue)}}},cleanMeUp:function(){var b=this;b.destroyGridLayers();b.printEngine.cleanUp();b.settingsPaperSize.un("change",b.notifyPaperConfigChange,b);b.settingsScales.un("change",b.notifyPaperConfigChange,b);b.overviewMapCombo.un("change",b.notifyPaperConfigChange,b);b.settingsAngle.un("change",b.notifyPaperConfigChange,b);b.settingsAngle.un("validitychange",b.validateAngle,b)},enable:function(){this.view.enable()},_onSetNewProjection:function(b){this.coordsPrj=b.data.proj},setupDefaults:function(z){var w=this,b=z.default_paper_size,g=0;if(z.supported_paper_size){var q=z.supported_paper_size.split(",");w.settingsPaperSize.store.clearFilter(true);w.settingsPaperSize.store.filter([{filterFn:function(A){return q.some(function(B){return B==A.get("name")})}}]);if(b){g=w.settingsPaperSize.store.findExact("name",b)}w.settingsPaperSize.setValue(w.settingsPaperSize.store.getAt(g))}if(z.supported_scale){var h=z.supported_scale.split(",");w.settingsScales.store.clearFilter(true);w.settingsScales.store.filter([{filterFn:function(A){return h.some(function(B){return B==A.get("value")})}}]);w.settingsScales.setValue(w.settingsScales.store.getAt(0))}w.printGrid.clearValue();w.printGridStore.clearData();w.destroyGridLayers();function o(A){var B=new Proj4js.Proj("EPSG:"+A);return w.lang.getString("grid_"+B.projName)}if(z.supported_grid){w.printGridStore.add(w.printGridStore.create({epsg:-1,name:w.lang.getString("empty")}));z.supported_grid.split(",").forEach(function(A){w.createGridLayer(A);w.printGridStore.add(w.printGridStore.create({epsg:A,name:w.lang.getString("grid_"+A,true)||(o(A)+" (EPSG:"+A+")")}));w.printGrid.show()})}else{w.printGrid.hide()}if(z.title){w.printoutTitle.setValue(z.title)}w.setLegendEnabled(!!z.enable_legend);w.legend_position=z.legend_position?Ext.Array.merge(z.legend_position.split(","),"none"):[];w.setLegendFilter(w.legend_position);w.setOverviewMapEnabled(!!z.enable_overview_map);w.setSinatureEnabled(!!z.enable_signature);w.setDescriptionDisabled(z.disable_description);w.setTextDisabled(!z.enable_text)},clearDefaults:function(){var b=this;b.settingsScales.store.clearFilter();b.settingsPaperSize.store.clearFilter();b.settingsLegend.setValue("none");b.overviewMapCombo.reset();b.printoutTitle.reset();b.printoutDescription.reset();b.printoutSignature.reset();b.settingsOutputFormat.setValue(b.settingsOutputFormat.store.getAt(0));b.settingsResolution.setValue(b.settingsResolution.store.getAt(0));b.settingsAngle.setValue(0)}});Ext.define("Client.module.tool.share.lang.Social",{strings:{headerText:{en:"Download or share map",nb:"Last ned eller del kart"},shareLbl:{en:"Share on:",nb:"Del via:",nn:"Del via:"},copyUrlLbl:{en:"Share via URL",nb:"Del via lenke",nn:"Del via lenke"},urlBoxHeader:{en:"Copy URL",nb:"Kopier lenke",nn:"Kopier lenke"},urlBoxInfo:{en:"Copy below address and paste it where you want to share it.",nb:"Kopier lenke nedenfor og lim den inn der du ønsker å dele den.",nn:"Kopier lenka under og lim den inn der du ynskjer å dele den."},btnShareSocial:{en:"Generate a link that can be shared with others containing map extent and active layers",nb:"Genererer en lenke som inneholder kartutsnitt og aktive temalag, som du kan dele med andre."},sendAsEmailBtn:{en:"Send map via email",nb:"Send kart via epost"},sendAsEmailLbl:{en:"Send a map view as a downloadable link via email to a reciepient of your choice. The link is valid for one week.",nb:"Send et kartutsnitt som en nedlastbar lenke via e-post til en valgfri mottaker. Lenken er gyldig i en uke."},downloadBtn:{en:"Download map",nb:"Last ned kart"},downloadLbl:{en:"Download a map view that you may print, share or use in other documents. Different file formats are available.",nb:"Last ned et kartutsnitt som du deretter kan skrive ut, dele eller bruke i andre dokumenter. En rekke filformater er tilgjengelig."},downloadGeoJpegBtn:{en:"Download georeferenced jpeg",nb:"Last ned georeferert jpeg"},downloadGeoJpegLbl:{en:"A georeferenced map image includes information on where the image is located in physical space and may be used as background for overlaying other map data in GIS software.",nb:"Et georeferert kartbilde inneholder informasjon om hvordan det ligger i det virkelige terrenget, og kan benyttes som underlag i programvare som støtter dette."},btnEmbedded:{en:"Embedded map",nb:"Kart for nettsider"},btnEmbeddedLbl:{en:"Get an embed code for your website or blog. Generates HTML with your custom objects and thematic maps included.",nb:"Generér en HTML-kode for visning av kartutsnittet på eksternt nettsted eller blogg. Temalag og andre tilpassede elementer blir inkludert."},layerProActive:{en:"Some features are missing when layer manager PRO is active (embedded maps).<p>Click on thematic maps on the lower left to enable all functionality.",nb:"Noe funksjonalitet er ikke tilgjengelig når avansert temavelger er aktiv (lag kart for nettsider).<p>
1Trykk på temakart nede til venstre for å få tilgang til all funksjonalitet."}},errCodes:{}});Ext.define("Client.module.tool.share.Social",{extend:Client.module.Generic,serviceUrl:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.share.lang.Social"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.buildGui()},buildGui:function(){var B=this;B.shareLbl=Ext.create("Ext.container.Container",{hidden:B.simplifyShare||B.hideShare,html:this.lang.getString("shareLbl")});var A=Ext.create("Ext.button.Button",{cls:"a3-share-tool-facebook-btn a3-social-btn",shareon:"facebook",width:40,height:40,tooltip:"Facebook",listeners:{click:this.onShareBtnClick,scope:this}});var z=Ext.create("Ext.button.Button",{cls:"a3-share-tool-twitter-btn a3-social-btn",shareon:"twitter",width:40,height:40,tooltip:"Twitter",listeners:{click:this.onShareBtnClick,scope:this}});var w=Ext.create("Ext.button.Button",{cls:"a3-share-tool-linkedin-btn a3-social-btn",shareon:"linkedin",width:40,height:40,tooltip:"LinkedIn",listeners:{click:this.onShareBtnClick,scope:this}});var q=Ext.create("Ext.button.Button",{cls:"a3-share-tool-url-btn a3-social-btn",shareon:"url",width:40,height:40,tooltip:B.lang.getString("copyUrlLbl"),listeners:{click:this.onShareBtnClick,scope:this}});var g=Ext.create("Ext.button.Button",{mode:"email",hidden:B.hideEmail,text:this.lang.getString("sendAsEmailBtn"),cls:"a3-share-tool-email-btn a3-link-btn",listeners:{click:this.onPrintToFileClick,scope:this}});var C=Ext.create("Ext.button.Button",{mode:"standard",hidden:B.hidePrint,text:this.lang.getString("downloadBtn"),cls:"a3-share-tool-download-btn a3-link-btn",listeners:{click:this.onPrintToFileClick,scope:this}});var o=Ext.create("Ext.button.Button",{mode:"geojpeg",hidden:B.hideGeojpeg,text:this.lang.getString("downloadGeoJpegBtn"),cls:"a3-share-tool-download-geojpeg-btn a3-link-btn",listeners:{click:this.onPrintToFileClick,scope:this}});B.btnEmbedded=Ext.create("Ext.button.Button",{mode:"embedded",hidden:B.hideShare,text:this.lang.getString("btnEmbedded"),cls:"a3-share-tool-download-embedded-btn a3-link-btn",listeners:{click:this.onEmbeddedClick,scope:this}});var h=Ext.create("Ext.Component",{cls:"a3-info a3-text",hidden:B.hideEmail,html:this.lang.getString("sendAsEmailLbl")});var b=Ext.create("Ext.Component",{cls:"a3-info a3-text",hidden:B.hidePrint,html:this.lang.getString("downloadLbl")});var D=Ext.create("Ext.Component",{cls:"a3-info a3-text",hidden:B.hideGeojpeg,html:this.lang.getString("downloadGeoJpegLbl")});B.btnEmbeddedLbl=Ext.create("Ext.Component",{cls:"a3-info a3-text",hidden:B.hideShare,html:this.lang.getString("btnEmbeddedLbl")});if(B.simplifyShare){B.socialBtns=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"button",cls:"a3-share-tool-url-link a3-link-btn",shareon:"url",text:B.lang.getString("copyUrlLbl"),listeners:{click:this.onShareBtnClick,scope:this}},{xtype:"container",cls:"a3-info a3-text",html:B.lang.getString("btnShareSocial")}]})}else{B.socialBtns=Ext.create("Ext.form.FieldContainer",{hidden:B.hideShare,layout:{type:"hbox",align:"left"},items:[A,z,w,q]})}this.view=Ext.create("Ext.form.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[B.shareLbl,B.socialBtns,C,b,o,D,B.btnEmbedded,B.btnEmbeddedLbl]})},getHeader:function(){return this.lang.getString("headerText")},onShareBtnClick:function(b){var g=this,h=g.generateShareUrl(),o="Adaptive3 shared map";switch(b.shareon){case"facebook":h="https://www.facebook.com/sharer.php?u="+h;break;case"twitter":h="https://twitter.com/share?url="+h+"&"+Ext.urlEncode({text:o});break;case"google":h="https://plus.google.com/share?url="+h;break;case"linkedin":h="https://www.linkedin.com/shareArticle?mini=true&url="+h;break;case"url":Ext.create("Ext.window.Window",{title:g.lang.getString("urlBoxHeader"),width:400,modal:true,layout:{type:"vbox",align:"stretch",pack:"start",padding:5},items:[{xtype:"component",cls:"a3-info a3-text",html:g.lang.getString("urlBoxInfo")},{xtype:"textfield",value:h,listeners:{afterrender:function(){Ext.defer(function(){this.focus(true)},10,this)}}}]}).show();return}window.open(h,"_blank","noopener,noreferrer")},onPrintToFileClick:function(b){this.fireEvent("shareasprint",b.mode)},onEmbeddedClick:function(b){this.fireEvent("shareasembedded")},generateShareUrl:function(){var h=this,g=GeoMind.utils.Generator.getShortUuid(),b=__pageurl__.replace(/[^\/]+$/,""),o=b+"share/"+g;h.collectSharedData(g);return o}
1,collectSharedData:function(b){var g=this;var h={fname:b,guuid:__guuid__,mapExtent:g.map.getExtent().toString(),mapCenter:g.getMapCenter(),mapZoomLvl:g.map.getZoom()};g.reportEvent("getActiveLayersInfo",h);g.getStorableData(h)},getMapCenter:function(){var b=this.map.getCenter();return b.lon+","+b.lat},getStorableData:function(g){var b=this;g.storableData=g.storableData||{};b.reportEvent("getStorableData",g.storableData);b.saveShareData(g)},saveShareData:function(b){Ext.Ajax.request({url:this.serviceUrl+"Save",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:b}),success:Ext.emptyFn,failure:Ext.emptyFn})},_onGenerateShareUrlRequest:function(b){b.callback(this.generateShareUrl())}});Ext.define("Client.module.tool.share.lang.Embedded",{strings:{headerTextEmbedded:{en:"Embedded maps",nb:"Kart for nettside"},shareBtn:{en:"Back to main page",nb:"Tilbake til hovedsiden",nn:"Tilbake til hovedsiden "},shareBtn_tooltip:{en:"Cancel and go back to the main page",nb:"Avbryt og gå tilbake til hovedsiden",nn:"Avbryt og gå tilbake til hovedsiden"},btnSave:{en:"Generate HTML",nb:"Generer HTML "},filtered_layers_warning:{en:"<p>Filtered layers is not supported in the exported snippet. Any active filters will be removed.</p>",nb:"<p>Filtering av data støttes ikke i det genererte kartet. Aktive filtre vil bli fjernet.</p>"},embeddedInfo1:{en:"<p>Hold and drag to place the preview rectangle, use the controls below to adjust the size of your map.</p>",nb:"<p>Klikk og dra i rektangelet for å plassere utsnittet, og bruk kontrollerne nedenfor for å justere størrelsen.</p>"},embeddedInfo2:{en:"<p>Choose a default basemap. Only the basemaps below are available for embedding.</p>",nb:"<p>Velg et bakgrunnskart. Kun de viste kartene er tilgjengelige for bruk på eksterne nettsteder.</p>"},embeddedInfo3:{en:"<p>Finalize the look of your map, note that active thematic maps and custom objects are included with the embed code. You may add, edit or delete drawings using the Draw & Measure feature.</p>",nb:'<p>Alle aktiverte temalag og tegninger vil komme med. Du kan legge til, endre eller fjerne tegninger under "Tegn og Mål" .</p>'},embeddedInfoVisibleBtns:{en:"<p>Choose which buttons should be visible in the map.</p>",nb:"<p>Velg hvilke knapper som skal være synlige i kartet.</p>"},embeddedInfo4:{en:'<p>Click "Generate HTML", then copy the HTML and paste the code into the source code of your website or blog.</p>',nb:'<p>Klikk "Generer HTML", kopier så koden og lim den inn i kildekoden/HTML-visning på ditt nettsted.</p>'},embeddedFail:{en:"It was not possible to generate HTML",nb:"Det gikk ikke an å lage HTML"},embBoxHeader:{en:"Embedded code generated",nb:"HTML-kode for eksternt nettsted"},embBoxInfo:{en:"Copy the code below and paste into the source code of your website. If you paste into a blog entry, HTML view must be enabled.",nb:"Kopiér koden nedenfor og lim den inn i kildekoden på ditt nettsted. Dersom du limer inn i et blogginnlegg må HTML-visning være aktivert."},btnCancel:{en:"Cancel",nb:"Avbryt",nn:"Avbryt"},height:{en:"Height",nb:"Høyde"},width:{en:"Width",nb:"Bredde"},embeddedText:{en:"Generated HTML",nb:"Autogenerert HTML"},showZoomBtn:{en:"Zoom buttons",nb:"Zoomknapper"},showLayerBtn:{en:"Layerswitcher",nb:"Temalagsvelger"}},errCodes:{}});Ext.define("Client.module.tool.share.Embedded",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.share.lang.Embedded");g.buildGui()},buildGui:function(){var z=this;z=this;z.filteredLayersWarning=z.createTextBox("filtered_layers_warning","warning");var A=Ext.create("Ext.button.Button",{cls:"a3-link-btn a3-back-btn",text:z.lang.getString("shareBtn"),tooltip:z.lang.getString("shareBtn_tooltip"),tooltipType:"title",listeners:{click:z.onCancel,scope:z}});z.embeddedHeight=Ext.create("Ext.form.field.Number",{flex:1,labelAlign:"top",minValue:50,maxValue:9999,fieldLabel:this.lang.getString("height"),value:400,cls:"a3-share-tool-extent-info",listeners:{scope:z,change:z.onEmbeddedChange}});z.embeddedWidth=Ext.create("Ext.form.field.Number",{flex:1,labelAlign:"top",minValue:50,maxValue:9999,fieldLabel:this.lang.getString("width"),value:400,cls:"a3-share-tool-extent-info",listeners:{scope:z,change:z.onEmbeddedChange}});var h=Ext.create("Ext.container.Container",{layout:"hbox",items:[z.embeddedHeight,z.embeddedWidth]});z.chkShowZoomBtn=Ext.create("Ext.form.field.Checkbox",{boxLabel:z.lang.getString("showZoomBtn"),checked:true});z.chkShowLayerBtn=Ext.create("Ext.form.field.Checkbox",{boxLabel:z.lang.getString("showLayerBtn"),checked:true});z.createThumbs();
1var w=z.createTextBox("embeddedInfo1","step1"),q=z.createTextBox("embeddedInfo2","step2"),o=z.createTextBox("embeddedInfo3","step3"),g=z.createTextBox("embeddedInfoVisibleBtns","step4"),b=z.createTextBox("embeddedInfo4","step5");z.embeddedThumbs=Ext.create("Ext.view.View",{store:z.thumbStore,tpl:new Ext.XTemplate('<ul class="links media embedded">','<tpl for=".">','<li <tpl if="selected">class="current"</tpl> >','<div class="preview-img"><img src="{url}" title="{name}" class="previewImg"></div>',"</li>","</tpl>","</ul>"),cls:"a3-nomargin",overItemCls:"x-item-over",itemSelector:"li"});z.view=z.createForm({buttonsInline:true,cancelBtnConfig:false,items:[A,w,z.filteredLayersWarning,h,q,z.embeddedThumbs,o,g,z.chkShowZoomBtn,z.chkShowLayerBtn,b]})},onEmbeddedChange:function(){var b=this;b.resizeEmbedded(b.embeddedHeight.getValue(),b.embeddedWidth.getValue())},createThumbs:function(){var b=this;b.thumbStore=Ext.create("Ext.data.Store",{fields:["id","name","url"],proxy:{url:"WebServices/client/Embedded.asmx/GetThumbs",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records"},paramsAsJson:true}})},activate:function(){var b=this;b.getUserData();b.map.events.register("moveend",b,b.getUserData);b.map.events.register("zoomend",b,b.onEmbeddedChange);b.thumbStore.load({scope:b,callback:function(){var g=this;if(g.embeddedThumbs.selModel.getSelection().length==0){g.embeddedThumbs.select(0)}}});b.setupEmbedded();b.onEmbeddedChange();b.filteredLayersWarning.hide();b.map.wmsLayersVisible.forEach(function(g){if(g.av_filter&&g.av_filter.filter_id!=-1){b.filteredLayersWarning.show()}})},deactivate:function(){var b=this;b.map.events.unregister("moveend",b,b.getUserData);b.map.events.unregister("zoomend",b,b.onEmbeddedChange);b.destroyEmbedded()},setupEmbedded:function(){var b=this,g={fillColor:"#31468C",fillOpacity:0.2,strokeColor:"#31468C"};b.embeddedLayer=new OpenLayers.Layer.Vector("EmbeddedPreviewLayer",{styleMap:new OpenLayers.StyleMap({"default":new OpenLayers.Style(OpenLayers.Util.applyDefaults(g,OpenLayers.Feature.Vector.style["default"]))})});b.embeddedControl=new OpenLayers.Control.DragFeature(b.embeddedLayer);b.map.addLayer(b.embeddedLayer);map.addControl(b.embeddedControl);b.embeddedControl.activate()},destroyEmbedded:function(){var b=this;if(b.embeddedControl){b.embeddedControl.destroy()}if(b.embeddedLayer){b.embeddedLayer.destroy()}},resizeEmbedded:function(b,q){var z=this,g;if(z.embeddedLayer.features.length>0){var A=z.embeddedLayer.features[0].geometry.getCentroid(),o=new OpenLayers.LonLat(A.x,A.y),w=z.map.getPixelFromLonLat(o);if(w.x>0&&w.x<z.map.parentView.getWidth()&&w.y>0&&w.y<z.map.parentView.getHeight()){g={x:A.x,y:A.y}}}if(!g){g={x:z.map.center.lon,y:z.map.center.lat}}var h=new OpenLayers.Feature.Vector(new OpenLayers.Bounds(g.x-map.resolution*q/2,g.y-map.resolution*b/2,g.x+map.resolution*q/2,g.y+map.resolution*b/2).toGeometry());z.embeddedLayer.removeAllFeatures();z.embeddedLayer.addFeatures([h])},getEmbeddedLayers:function(){var b=this,g=[];Ext.each(b.map.wmsLayersVisible,function(q){if(q.url==null){return}var h=Adaptive.utils.Config.getThemeData(q.record),o=(q.record&&q.record.data&&q.record.data.opacity)||100,w={};w.name=q.name;w.url=q.url[0];w.options={layers:q.params.LAYERS,format:q.params.FORMAT,transparent:q.params.TRANSPARENT,version:q.params.VERSION,singleTile:q.singleTile,gui:q.params.GUI,time:q.params.TIME,sld:q.params.SLD,opacity:o/100,dimensions:b.getLayerDimensions(q.params)};if(h){w.id=h.theme_id;w.is_digi_theme=h.is_digi_theme}g.push(w)},b,true);return g},getLayerDimensions:function(h){var b={};for(var g in h){if(h.hasOwnProperty(g)&&(g.substring(0,4)=="DIM_")){b[g]=h[g]}}return b},getUserData:function(){var b=this;b.reportEvent("getUserObjects",{},Ext.bind(b.setUserData,b))},setUserData:function(b){this.userData=b.data},onCancel:function(){this.fireEvent("shareassocial")},onSave:function(){var w=this,g=w.embeddedLayer.features[0].geometry.getCentroid(),o=w.map.getProjectionObject(),h=o.getCode(),q="EPSG:4326",b=[],z=new OpenLayers.Format.GeoJSON();w.userData=w.userData||{features:[]};
1w.userData.features.forEach(function(A){var B=Ext.decode(z.write(A));delete B.properties.wkt;b.push(B)});g=Adaptive.utils.Proj.transformPoint(g,h,q);w.reportEvent("generateShareUrlRequest",function(B){var A={defaultBaseMap:w.embeddedThumbs.selModel.getSelection()[0].data.id,map:{center:[g.y,g.x],zoom:w.map.getZoom(),config:{showZoomBtn:w.chkShowZoomBtn.getValue(),showLayerBtn:w.chkShowLayerBtn.getValue()}},overlayMaps:w.getEmbeddedLayers(),userData:{features:b,color:w.userData.color,projDef:{epsg:h,def:o.proj.defData}},appUrl:B};Ext.Ajax.request({url:"WebServices/client/Embedded.asmx/Create",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:A}),success:w.createEmbeddedSuccess,failure:w.createEmbeddedFailure,scope:w})})},createEmbeddedSuccess:function(g){var w=this;g=GeoMind.utils.Ajax.fixResponse(g);if(g.success){var o=GeoMind.utils.Data.extractConfigObjectByKey(g.data,"uuid");if(!o){w.createEmbeddedFailure();return}var h=w.combinePath(__siteurl__,"embedded/"+o),b='<iframe name="embedMap" title="Adaptive EmbedMap" scrolling="no" frameborder="0" width="'+w.embeddedWidth.getValue()+'px" height="'+w.embeddedHeight.getValue()+'px" src="'+h+'" ></iframe>',q=[];if(window.clipboardData&&clipboardData.setData){q=[{xtype:"button",text:"copy to clipboard",handler:function(){window.clipboardData.setData("text",b)}}]}Ext.create("Ext.window.Window",{title:w.lang.getString("embBoxHeader"),height:300,width:400,modal:true,layout:{type:"vbox",align:"stretch",pack:"start",padding:5},items:[{xtype:"component",cls:"a3-info a3-text",html:w.lang.getString("embBoxInfo"),height:50},{xtype:"textarea",flex:1,value:b,listeners:{afterrender:function(){Ext.defer(function(){this.focus(true)},10,this)}}}],buttons:q}).show()}else{w.createEmbeddedFailure()}},createEmbeddedFailure:function(){Ext.Msg.show({msg:this.lang.getString("embeddedFail"),buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})},getHeader:function(){return this.lang.getString("headerTextEmbedded")},combinePath:function(g,h){var b=g.charCodeAt(g.length-1);if(b==47||b==92){g+=h}else{g+="/"+h}return g}});Ext.define("Client.module.tool.share.Standard",{extend:Client.module.ToolGeneric,btnCls:"a3-share-tool-main-btn",btnText:null,btnTip:null,internal_name:"av_share",headerText:null,printServiceUrl:null,shareServiceUrl:null,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.share.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.btnText=this.lang.getString("mainBtnText");if(g.simplifyPrint){g.btnTip=g.lang.getString("mainBtnTipShare");g.headerText=g.lang.getString("headerTextShare")}else{g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText")}this.buildGui()},buildGui:function(){var b=this;this.sharePrint=Ext.create("Client.module.tool.share.Print",{serviceUrl:b.printServiceUrl,gridWmsUrl:b.gridWmsUrl,printAreaData:b.printAreaData});this.shareSocial=Ext.create("Client.module.tool.share.Social",{serviceUrl:b.shareServiceUrl,hidePrint:b.simplifyPrint,hideEmail:b.simplifyEmail,hideGeojpeg:b.simplifyGeojpeg,simplifyShare:b.simplifyShare});b.embedded=Ext.create("Client.module.tool.share.Embedded");b.shareSocial.on("shareasprint",b.onShareAsPrint,b);b.shareSocial.on("shareasembedded",b.onShareAsEmbedded,b);b.sharePrint.on("shareassocial",b.onShareAsSocial,b);b.embedded.on("shareassocial",b.onShareAsSocial,b);this.mapLvlController.registerModule(this.sharePrint);this.mapLvlController.registerModule(this.shareSocial);b.mapLvlController.registerModule(b.embedded);this.view=Ext.create("Ext.container.Container",{layout:"card",cls:"a3-modules-body",items:[this.shareSocial.view,this.sharePrint.view,b.embedded.view]})},onShareAsPrint:function(g){var b=this;b.sharePrint.on("ready",function(){b.switchCards(b.sharePrint.view);b.sharePrint.setMode(g);b.adviseHeaderChange(b.sharePrint.getHeader())},b,{single:true});this.shareSocial.deactivate();this.sharePrint.activate();this.embedded.deactivate()},onShareAsSocial:function(){this.switchCards(this.shareSocial.view);this.adviseHeaderChange(this.shareSocial.getHeader());this.shareSocial.activate();this.sharePrint.deactivate();this.embedded.deactivate()},onShareAsEmbedded:function(){var b=this;b.switchCards(b.embedded.view);b.adviseHeaderChange(b.embedded.getHeader());b.embedded.activate();b.shareSocial.deactivate();b.sharePrint.deactivate()},switchCards:function(b){this.view.getLayout().setActiveItem(b)},deactivate:function(){var b=this;b.shareSocial.deactivate();b.sharePrint.deactivate();b.embedded.deactivate()},activate:function(){this.onShareAsSocial()}});Ext.define("Client.module.tool.share.Loader",{extend:Client.module.Generic,requires:[],constructor:function(b){Ext.apply(this,b);this.callParent([b])},afterMapContainerRender:function(b){},applySharedSettings:function(){var b=this;if(typeof(__shared__)=="undefined"||!__shared__){this.notifySharedSettingsApplied();return}setTimeout(function(){b.map.setCenter(OpenLayers.LonLat.fromString(__shared__.mapCenter),__shared__.mapZo
1omLvl,true,true)},15);b.reportEvent("sharedActiveLayersInfoRetrieved",{layerManager:__shared__.layerManager,activeCategoryUuid:__shared__.activeCategoryUuid,visibleThemes:__shared__.visibleThemes,activeBaseLayerUuid:__shared__.activeBaseLayerUuid,storableData:__shared__.storableData});if(__shared__.layerManager==="pro"){b.reportEvent("sharedActiveLayersInfoProRetrieved",{visibleThemesPro:__shared__.visibleThemesPro,storableData:__shared__.storableData})}var g={evtName:"sharedUserObjectsRetrieved",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:__shared__.sharedUserObjects};this.dispatchEvent(g,{confirmationRequired:false});this.notifySharedSettingsApplied()},notifySharedSettingsApplied:function(){var b={evtName:"sharedSettingsApplied",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})},afterMapReset:function(b){this.applySharedSettings()},beforeMapReset:function(b){}});Ext.define("Adaptive.ux.Icons",{singleton:true,layers:'<svg viewBox="0 0 26 32"><path fill="currentColor" d="m 11.976748,3.9999363 a 1.0000912,1.0000912 0 0 0 -0.648533,0.25993 L 0.3284651,14.259686 a 1.0000912,1.0000912 0 0 0 0.53122907,1.730628 l 2.64787713,0.378269 -3.18013974,2.891271 a 1.0000912,1.0000912 0 0 0 0.53122908,1.730111 L 3.508088,21.36875 0.32743156,24.260017 a 1.0000912,1.0000912 0 0 0 0.53122908,1.73012 l 14.00005736,1.99986 a 1.0000912,1.0000912 0 0 0 0.881592,-0.31729 l 9.999819,-10.999753 a 1.0000912,1.0000912 0 0 0 -0.66352,-1.669651 l -2.209665,-0.170014 2.873185,-3.160503 a 1.0000912,1.0000912 0 0 0 -0.66352,-1.66965 L 22.866427,9.8331205 25.740129,6.6721015 A 1.0000912,1.0000912 0 0 0 25.076092,5.0040003 l -12.999609,-0.99993 a 1.0000912,1.0000912 0 0 0 -0.09973,-0.0041 z m 0.377235,2.0293152 10.533115,0.810797 -2.854581,3.139316 a 1.0000912,1.0000912 0 0 0 -0.02067,0.02119 L 14.616875,15.935024 5.894486,14.689116 A 1.0000912,1.0000912 0 0 0 5.888286,14.6886 L 3.244543,14.310848 Z m 8.809204,5.6786745 1.721844,0.132291 -2.866467,3.153268 a 1.0000912,1.0000912 0 0 0 -0.0067,0.0072 l -5.394972,5.93447 -8.7218723,-1.246425 a 1.0000912,1.0000912 0 0 0 -0.00568,-5.17e-4 l -2.643743,-0.377751 2.8318437,-2.575014 4.6534226,0.66507 4.127878,0.589623 h 10e-4 a 1.0000912,1.0000912 0 0 0 0.09922,0.0093 1.0000912,1.0000912 0 0 0 0.341061,-0.04651 1.0000912,1.0000912 0 0 0 0.05064,-0.01602 1.0000912,1.0000912 0 0 0 10e-4,-5.17e-4 1.0000912,1.0000912 0 0 0 0.09095,-0.03927 1.0000912,1.0000912 0 0 0 5.17e-4,-5.17e-4 1.0000912,1.0000912 0 0 0 0.297137,-0.223757 z m 0,5.000168 1.721327,0.13229 -8.26764,9.094453 -11.3712998,-1.62417 2.8318437,-2.575017 8.7813001,1.254697 a 1.0000912,1.0000912 0 0 0 0.881592,-0.31729 z" /></svg>',layersActive:'<svg viewBox="0 0 26 32"><path fill="currentColor" d="m 11.976748,3.9999363 c -0.240397,0.00586 -0.470635,0.098136 -0.648533,0.25993 L 0.3284651,14.259686 c -0.62700804,0.569138 -0.30711205,1.611289 0.53122907,1.730628 l 2.64787713,0.378269 -3.18013974,2.891271 c -0.62622771,0.56919 -0.30651489,1.610433 0.53122908,1.730111 L 3.508088,21.36875 0.32743156,24.260017 c -0.62624129,0.569189 -0.30652528,1.610448 0.53122908,1.73012 l 14.00005736,1.99986 c 0.328295,0.04695 0.658512,-0.0719 0.881592,-0.31729 l 9.999819,-10.999753 c 0.55953,-0.615866 0.166114,-1.605839 -0.66352,-1.669651 l -2.209665,-0.170014 2.873185,-3.160503 c 0.559528,-0.615866 0.166113,-1.605838 -0.66352,-1.66965 L 22.866427,9.8331205 25.740129,6.6721015 C 26.297541,6.0560892 25.904363,5.0684006 25.076092,5.0040003 l -12.999609,-0.99993 c -0.03315,-0.00303 -0.06644,-0.00439 -0.09973,-0.0041 z m 9.186439,7.7079897 1.721844,0.132291 -2.866467,3.153268 c -0.0022,0.0024 -0.0045,0.0048 -0.0067,0.0072 l -5.394972,5.93447 -8.7218723,-1.246425 c -0.00189,-1.78e-4 -0.00379,-3.5e-4 -0.00568,-5.17e-4 l -2.643743,-0.377751 2.8318437,-2.575014 4.6534226,0.66507 4.127878,0.589623 h 10e-4 c 0.0329,0.0047 0.06601,0.0079 0.09922,0.0093 0.115521,0.0043 0.230917,-0.01141 0.341061,-0.04651 0.01702,-0.0049 0.0339,-0.01023 0.05064,-0.01602 l 10e-4,-5.17e-4 c 0.03095,-0.01158 0.0613,-0.02469 0.09095,-0.03927 l 5.17e-4,-5.17e-4 c 0.112167,-0.05535 0.212955,-0.131246 0.297137,-0.223757 z m 0,5.000168 1.721327,0.13229 -8.26764,9.094453 -11.3712998,-1.62417 2.8318437,-2.575017 8.7813001,1.254697 c 0.328295,0.04695 0.658512,-0.0719 0.881592,-0.31729 z" /></svg>',settings:'<svg viewBox="0 0 32 32">
1<path fill="currentColor" d="m 13.871919,0.28365211 c -0.581469,0 -1.049572,0.468112 -1.049572,1.04957199 v 3.331437 c -0.924618,0.255297 -1.814391,0.621937 -2.64954,1.09177 L 7.9591511,3.5012871 C 7.5518249,3.0863341 6.8899067,3.0801931 6.4749459,3.4880571 l -2.846294,2.793895 C 3.2136911,6.6892896 3.20747,7.3512909 3.6148569,7.766263 l 2.2166073,2.258073 C 5.3051681,10.910625 4.8987095,11.862013 4.6225931,12.853911 H 1.3797464 c -0.5814693,0 -1.049572,0.468112 -1.049572,1.049572 v 3.988392 c 0,0.581479 0.4681027,1.049667 1.049572,1.049667 h 3.2356052 c 0.2692608,1.008092 0.6728082,1.975907 1.1999325,2.877761 l -2.2977765,2.255484 c -0.4149608,0.407339 -0.4210912,1.069339 -0.013795,1.484292 l 3.0900729,3.148017 c 0.4073243,0.414953 1.0693332,0.421078 1.4842921,0.01323 l 2.4576124,-2.41237 c 0.717604,0.373561 1.472056,0.672553 2.251381,0.892231 v 3.46659 c 0,0.581481 0.468192,1.049572 1.049661,1.049572 h 4.411132 c 0.581469,0 1.049571,-0.468093 1.049571,-1.049572 V 27.16273 c 0.949046,-0.278788 1.85897,-0.675333 2.708272,-1.180267 l 2.25898,2.30135 c 0.407324,0.414972 1.069242,0.421093 1.484203,0.01323 l 2.846296,-2.793916 c 0.414961,-0.407318 0.42118,-1.069337 0.0138,-1.48429 L 26.26267,21.628538 c 0.473885,-0.838528 0.842039,-1.731894 1.096145,-2.659912 h 3.26144 c 0.581469,0 1.049572,-0.468093 1.049572,-1.049572 v -3.988491 c 0,-0.581459 -0.468103,-1.049553 -1.049572,-1.049553 h -3.274759 c -0.230607,-0.859755 -0.559043,-1.690582 -0.97895,-2.476396 L 28.729311,8.0853886 C 29.14427,7.67807 29.150402,7.0161442 28.743101,6.601191 L 25.653119,3.4531741 c -0.407324,-0.414953 -1.069333,-0.42117 -1.484292,-0.01323 L 21.800428,5.7648199 C 21.020844,5.3220912 20.192897,4.9694025 19.332715,4.7136231 v -3.380325 c 0,-0.58145999 -0.468102,-1.04957199 -1.04957,-1.04957199 z M 16.013983,10.816551 c 2.837008,1.8e-5 5.136846,2.192712 5.136844,4.897529 3e-6,2.704817 -2.299836,4.897512 -5.136844,4.89753 -2.837052,4.3e-5 -5.136961,-2.19267 -5.136958,-4.89753 -2e-6,-2.70486 2.299906,-4.897572 5.136958,-4.897529 z" /></svg>',dataview:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="m 2.2029094,3.2674423 c -0.6965407,0 -1.1854573,0.604017 -1.1854573,1.2423015 v 1.2459187 21.7051345 0.02946 c 0,0.638289 0.4889231,1.242301 1.1854573,1.242301 H 29.796574 c 0.696534,0 1.185974,-0.604012 1.185974,-1.242301 V 26.500132 5.7556625 4.5097438 c 0,-0.6383014 -0.489432,-1.2423015 -1.185974,-1.2423015 z m 2.221053,3.7305218 H 27.521261 V 10.595161 H 4.4239624 Z m 0,7.6031539 h 9.9058546 v 3.552238 H 4.4239624 Z m 13.2849776,0 h 9.812321 v 3.552238 H 17.70894 Z M 4.4239624,21.705593 h 9.9058546 v 3.552238 H 4.4239624 Z m 13.2849776,0 h 9.812321 v 3.552238 H 17.70894 Z" /></svg>',dataviewEdit:'<svg viewBox="0 0 32 32" fill="currentColor"><path d="M 8.3261719 12.349609 C 5.6935771 12.349609 3.8457031 14.632508 3.8457031 17.044922 L 3.8457031 21.753906 L 3.8457031 103.78906 L 3.8457031 103.90039 C 3.8457031 106.31282 5.6936017 108.5957 8.3261719 108.5957 L 61.925781 108.5957 C 64.695782 108.5957 66.925781 106.3657 66.925781 103.5957 L 66.925781 55.181641 L 112.09961 55.181641 C 114.86961 55.181641 117.09961 52.951641 117.09961 50.181641 L 117.09961 21.753906 L 117.09961 17.044922 C 117.09961 14.632444 115.24979 12.349609 112.61719 12.349609 L 8.3261719 12.349609 z M 16.720703 26.449219 L 104.01758 26.449219 L 104.01758 40.044922 L 16.720703 40.044922 L 16.720703 26.449219 z M 16.720703 55.185547 L 54.160156 55.185547 L 54.160156 68.611328 L 16.720703 68.611328 L 16.720703 55.185547 z M 16.720703 82.037109 L 54.160156 82.037109 L 54.160156 95.462891 L 16.720703 95.462891 L 16.720703 82.037109 z "transform="scale(0.26458333)"/><path d="m 23.318552,17.14916 v 3.919399 h -3.920004 v 3.744654 h 3.920004 v 3.919399 h 3.744049 v -3.919399 h 3.920004 V 21.068559 H 27.062601 V 17.14916 Z"/></svg>',refresh:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="m 14.103081,4.2827931 v 0.468417 2.7814377 h 0.470839 c 4.673857,0 8.416761,3.4895622 8.994382,7.9984502 H 19.401473 L 25.199768,23.238907 31,15.531098 H 26.841892 C 26.243767,9.247822 21.00745,4.2827931 14.57392,4.2827931 Z M 6.8002326,8.7610919 6.4248208,9.25712 0.99999997,16.468416 H 5.1581089 c 0.5981256,6.283278 5.8344431,11.248791 12.2679721,11.248791 h 0.470355 v -3.249856 h -0.470355 c -4.673857,0
1-8.4172446,-3.490044 -8.9948659,-7.998935 h 4.1673129 z" /></svg>',searchByMap:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="M 27.945312 24.132812 C 27.207031 24.132812 26.535156 24.40625 26.019531 24.851562 L 20.859375 22.851562 L 17.3125 11.332031 L 23.253906 7.605469 C 23.621094 7.773438 24.035156 7.867188 24.464844 7.867188 C 26.09375 7.867188 27.414062 6.546875 27.414062 4.921875 C 27.414062 3.292969 26.09375 1.972656 24.464844 1.972656 C 22.839844 1.972656 21.519531 3.292969 21.519531 4.921875 C 21.519531 5.09375 21.535156 5.265625 21.558594 5.433594 L 5.671875 15.398438 C 5.207031 15.09375 4.652344 14.921875 4.054688 14.921875 C 2.425781 14.921875 1.105469 16.238281 1.105469 17.867188 C 1.105469 19.492188 2.425781 20.8125 4.054688 20.8125 C 4.820312 20.8125 5.507812 20.527344 6.035156 20.046875 L 25.011719 27.398438 C 25.171875 28.875 26.425781 30.019531 27.941406 30.019531 C 29.566406 30.019531 30.886719 28.699219 30.886719 27.074219 C 30.894531 25.445312 29.574219 24.132812 27.945312 24.132812 Z M 19.179688 22.199219 L 18.839844 22.066406 L 18.132812 21.800781 L 15.300781 12.601562 L 15.820312 12.273438 L 16.59375 11.792969 L 19.886719 22.488281 Z M 7.921875 17.839844 L 7.3125 17.605469 L 7.761719 17.328125 L 8.011719 17.167969 L 8.535156 16.839844 L 8.964844 18.246094 L 8.261719 17.972656 Z M 10.652344 18.898438 L 9.945312 18.625 L 9.261719 16.386719 L 9.78125 16.058594 L 10.035156 15.898438 L 10.554688 15.574219 L 11.707031 19.300781 L 10.992188 19.027344 Z M 13.375 19.953125 L 12.667969 19.679688 L 11.265625 15.125 L 11.785156 14.800781 L 12.039062 14.640625 L 12.558594 14.3125 L 14.425781 20.359375 L 13.714844 20.085938 Z M 16.105469 21.011719 L 15.394531 20.738281 L 13.28125 13.867188 L 13.800781 13.539062 L 14.054688 13.378906 L 14.566406 13.058594 L 17.140625 21.421875 L 16.445312 21.152344 Z M 16.105469 21.011719"/></svg >',drawPoint:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="M 16 13 C 14.300781 13 13 14.398438 13 16 C 13 17.601562 14.398438 19 16 19 C 17.601562 19 19 17.601562 19 16 C 19 14.398438 17.699219 13 16 13 Z M 17.898438 16 C 17.898438 17 17.101562 17.898438 16 17.898438 C 14.898438 17.898438 14.101562 17 14.101562 16 C 14.101562 15 14.898438 14.101562 16 14.101562 C 17.101562 14.101562 17.898438 15 17.898438 16 Z M 17.898438 16"/></svg >',drawLine:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="M 24.800781 6.699219 C 24.5 6.300781 23.898438 6 23.398438 6 C 22.800781 6 22.300781 6.199219 21.898438 6.5 C 21.101562 7.199219 21 8.398438 21.601562 9.300781 C 21.601562 9.398438 21.699219 9.398438 21.699219 9.5 C 21.898438 9.699219 22 9.800781 22.300781 9.898438 C 22.300781 9.898438 22.398438 9.898438 22.398438 9.898438 L 21.699219 15.898438 C 21.300781 16 21 16.101562 20.699219 16.398438 C 20.398438 16.699219 20.199219 17 20.101562 17.398438 L 16.5 17.699219 C 16.398438 17.5 16.300781 17.398438 16.199219 17.199219 C 15.398438 16.300781 14.101562 16.199219 13.199219 17 C 12.5 17.601562 12.300781 18.601562 12.699219 19.5 L 10 21.898438 C 9.699219 21.699219 9.398438 21.601562 9.101562 21.601562 C 8.5 21.601562 8 21.800781 7.601562 22.101562 C 7.199219 22.5 6.898438 23 6.898438 23.601562 C 6.898438 24.199219 7.101562 24.699219 7.398438 25.101562 C 7.5 25.699219 8.101562 26 8.601562 26 C 8.601562 26 8.699219 26 8.699219 26 C 9.199219 26 9.699219 25.800781 10.101562 25.5 C 10.800781 24.898438 11 24 10.699219 23.101562 L 13.398438 20.699219 C 14.199219 21.101562 15.101562 21 15.800781 20.398438 C 16.199219 20.101562 16.398438 19.699219 16.5 19.199219 L 20 18.898438 C 20.101562 19.101562 20.199219 19.300781 20.398438 19.5 C 21.199219 20.398438 22.5 20.5 23.398438 19.699219 C 24.300781 18.898438 24.398438 17.601562 23.601562 16.699219 C 23.398438 16.5 23.199219 16.300781 23 16.199219 L 23.699219 10.199219 C 24.101562 10.101562 24.398438 10 24.699219 9.699219 C 25.101562 9.300781 25.398438 8.800781 25.398438 8.199219 C 25.398438 7.699219 25.199219 7.101562 24.800781 6.699219 Z M 22.800781 19 C 22.601562 19.199219 22.300781 19.300781 21.898438 19.300781 C 21.601562 19.300781 21.300781 19.101562 21.101562 18.898438 C 21 18.800781 20.898438 18.699219 20.898438 18.5 C 20.800781 18.300781 20.800781 18 20.898438 17.800781 C 21 17.601562 21.101562 17.398438 21.300781 17.199219 C 21.5 17 21.699219 17 21.898438 16.898438 C 22 16.898438 22 16.898438 22.101562 16.898438 C 22.300781 16.898438 22.398438 16.898438 22.601562 17 C 22.699219 17.101562 22.898438 17.199219 23 17.300781 C 23.300781 17.800781 23.300781 18.5 22.800781 19 Z M 22.398438 8.898438 C 22.398438 8.898438 22.300781 8.800781 22.300781 8.800781 C 22 8.300781 22 7.601562 22.5 7.199219 C 22.699219 7 23 6.898438 23.300781 6.898438 C 23.300781 6.898438 23.300781 6.898438 23.398438 6.898438 C 23.699219 6.898438 24 7.101562 24.199219 7.300781 C 24.601562 7.800781 24.5 8.601562 24 9 C 23.800781 9.101
1562 23.601562 9.199219 23.398438 9.300781 C 23 9.300781 22.601562 9.199219 22.398438 8.898438 Z M 15.5 18.300781 C 15.601562 18.5 15.601562 18.699219 15.601562 19 C 15.601562 19.300781 15.398438 19.5 15.199219 19.699219 C 14.800781 20 14.300781 20.101562 13.800781 19.800781 C 13.699219 19.699219 13.601562 19.699219 13.5 19.601562 C 13.398438 19.5 13.398438 19.5 13.300781 19.300781 C 13.101562 18.800781 13.199219 18.199219 13.601562 17.898438 C 13.800781 17.699219 14.101562 17.601562 14.398438 17.601562 C 14.699219 17.601562 15 17.699219 15.300781 18 C 15.398438 18.101562 15.398438 18.199219 15.5 18.300781 Z M 9.5 24.800781 C 9 25.199219 8.300781 25.199219 7.800781 24.699219 C 7.601562 24.5 7.5 24.199219 7.5 23.800781 C 7.5 23.5 7.699219 23.199219 7.898438 23 C 8.101562 22.800781 8.398438 22.699219 8.699219 22.699219 C 9 22.699219 9.398438 22.800781 9.601562 23.101562 C 9.699219 23.199219 9.699219 23.300781 9.800781 23.398438 C 10 23.898438 9.898438 24.398438 9.5 24.800781 Z M 9.5 24.800781"/></svg >',drawPolygon:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="M 27.300781 16.898438 C 27.199219 16.101562 26.601562 15.398438 25.800781 15.199219 L 25.699219 9.199219 C 26.101562 9.101562 26.398438 8.898438 26.601562 8.601562 C 27 8.199219 27.101562 7.601562 27.101562 7 C 27.101562 6.398438 26.800781 5.898438 26.398438 5.5 C 26 5.101562 25.398438 5 24.800781 5 C 24.199219 5 23.699219 5.300781 23.300781 5.699219 C 23 6.101562 22.800781 6.601562 22.800781 7 L 13.300781 9.601562 C 13.101562 9.300781 12.699219 9 12.300781 8.800781 C 12 8.699219 11.601562 8.601562 11.199219 8.699219 C 11.101562 8.699219 11 8.699219 10.898438 8.800781 C 9.898438 9.101562 9.199219 10.101562 9.398438 11.199219 C 9.398438 11.5 9.601562 11.800781 9.699219 12.101562 L 7.398438 14.699219 C 7.199219 14.601562 7 14.5 6.699219 14.5 C 5.5 14.398438 4.5 15.300781 4.398438 16.5 C 4.300781 17.699219 5.199219 18.699219 6.398438 18.800781 C 6.699219 18.800781 6.898438 18.800781 7.199219 18.699219 L 10.898438 23.398438 C 10.601562 23.800781 10.5 24.398438 10.5 24.898438 C 10.699219 26.101562 11.800781 26.898438 12.898438 26.699219 C 14.101562 26.5 14.898438 25.398438 14.699219 24.300781 C 14.699219 24.199219 14.699219 24.101562 14.699219 24.101562 L 23.5 18.699219 C 24 19.101562 24.601562 19.300781 25.199219 19.199219 C 26.699219 19.199219 27.5 18.101562 27.300781 16.898438 Z M 24.898438 6 C 25.601562 5.898438 26.199219 6.398438 26.300781 7.101562 C 26.398438 7.800781 25.898438 8.398438 25.199219 8.5 C 24.898438 8.5 24.601562 8.5 24.300781 8.300781 C 24 8.101562 23.800781 7.800781 23.800781 7.398438 C 23.800781 7.199219 23.800781 7.101562 23.800781 6.898438 C 24 6.398438 24.398438 6 24.898438 6 Z M 11.5 9.800781 C 11.800781 9.800781 12.199219 9.800781 12.398438 10 C 12.699219 10.199219 12.800781 10.5 12.898438 10.800781 C 12.898438 11 12.898438 11.199219 12.898438 11.300781 C 12.800781 11.699219 12.398438 12.101562 11.898438 12.199219 C 11.199219 12.300781 10.601562 11.800781 10.5 11.101562 C 10.398438 10.398438 10.800781 9.898438 11.5 9.800781 Z M 7 18 C 6.300781 18.101562 5.699219 17.601562 5.601562 16.898438 C 5.5 16.199219 6 15.601562 6.699219 15.5 C 7.398438 15.398438 8 15.898438 8.101562 16.601562 C 8.101562 17.300781 7.601562 17.898438 7 18 Z M 13 26 C 12.300781 26.101562 11.699219 25.601562 11.601562 24.898438 C 11.5 24.199219 12 23.601562 12.699219 23.5 C 13.398438 23.398438 14 23.898438 14.101562 24.601562 C 14.199219 25.300781 13.699219 25.898438 13 26 Z M 23 17 C 23 17.199219 23 17.398438 23 17.601562 C 23 17.601562 23 17.699219 23 17.699219 L 21 18.898438 L 19.800781 19.699219 L 17.398438 21.199219 L 16.398438 21.800781 L 14.101562 23.199219 C 14 23.101562 13.800781 23 13.601562 22.898438 C 13.199219 22.699219 12.898438 22.699219 12.5 22.699219 C 12.398438 22.699219 12.300781 22.699219 12.101562 22.800781 L 8.5 18 C 8.699219 17.699219 8.898438 17.300781 8.898438 16.898438 C 8.898438 16.5 8.800781 16.101562 8.601562 15.699219 L 11 13 C 11.300781 13.101562 11.699219 13.101562 12 13.101562 C 13 13 13.800781 12.101562 13.898438 11.101562 L 23.398438 8.5 C 23.398438 8.5 23.5 8.601562 23.5 8.601562 C 23.601
1562 8.699219 23.601562 8.699219 23.699219 8.800781 C 23.800781 9 24 9.101562 24.300781 9.199219 C 24.300781 9.199219 24.398438 9.199219 24.398438 9.199219 L 24.5 15.199219 C 23.699219 15.5 23.101562 16.199219 23 17 Z M 25.300781 18.5 C 24.601562 18.601562 24 18.101562 23.898438 17.398438 C 23.800781 16.699219 24.300781 16.101562 25 16 C 25.699219 15.898438 26.300781 16.398438 26.398438 17.101562 C 26.5 17.699219 26 18.398438 25.300781 18.5 Z M 25.300781 18.5" /></svg >',filter:'<svg viewBox="0 0 26 22"><path fill="currentColor" d="M 3.999261,3.9980796 C 3.1678343,3.9988484 2.7002816,4.9547749 3.2100941,5.6115566 l 6.789832,8.7309654 v 8.657245 c 8.79e-5,0.265192 0.1054889,0.519493 0.2930299,0.70699 l 4.000099,4.0001 c 0.62999,0.630189 1.707415,0.184091 1.707536,-0.70699 V 14.342522 l 6.789315,-8.7309654 c 0.509812,-0.6567813 0.04226,-1.6127074 -0.789166,-1.613477 z m 2.0007388,2.001921 H 19.999999 L 14.2114,13.385392 c -0.136486,0.17538 -0.210675,0.391221 -0.210858,0.613452 v 10.587003 l -2.000567,-2.00056 v -8.586443 c -1.83e-4,-0.222231 -0.07437,-0.438072 -0.210858,-0.613452 z" /></svg>',filterNew:'<svg viewBox="0 0 26 22"><path fill="none" d="M1 2.6C1 2.03995 1 1.75992 1.10899 1.54601C1.20487 1.35785 1.35785 1.20487 1.54601 1.10899C1.75992 1 2.03995 1 2.6 1H19.4C19.9601 1 20.2401 1 20.454 1.10899C20.6422 1.20487 20.7951 1.35785 20.891 1.54601C21 1.75992 21 2.03995 21 2.6V3.26939C21 3.53819 21 3.67259 20.9672 3.79756C20.938 3.90831 20.8901 4.01323 20.8255 4.10776C20.7526 4.21443 20.651 4.30245 20.4479 4.4785L14.0521 10.0215C13.849 10.1975 13.7474 10.2856 13.6745 10.3922C13.6099 10.4868 13.562 10.5917 13.5328 10.7024C13.5 10.8274 13.5 10.9618 13.5 11.2306V16.4584C13.5 16.6539 13.5 16.7517 13.4685 16.8363C13.4406 16.911 13.3953 16.9779 13.3363 17.0315C13.2695 17.0922 13.1787 17.1285 12.9971 17.2012L9.59711 18.5612C9.22957 18.7082 9.0458 18.7817 8.89827 18.751C8.76927 18.7242 8.65605 18.6476 8.58325 18.5377C8.5 18.4122 8.5 18.2142 8.5 17.8184V11.2306C8.5 10.9618 8.5 10.8274 8.46715 10.7024C8.43805 10.5917 8.39014 10.4868 8.32551 10.3922C8.25258 10.2856 8.15102 10.1975 7.94789 10.0215L1.55211 4.4785C1.34898 4.30245 1.24742 4.21443 1.17449 4.10776C1.10986 4.01323 1.06195 3.90831 1.03285 3.79756C1 3.67259 1 3.53819 1 3.26939V2.6Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>',filtered:'<svg viewBox="0 0 26 22"><path d="M1 2.6C1 2.03995 1 1.75992 1.10899 1.54601C1.20487 1.35785 1.35785 1.20487 1.54601 1.10899C1.75992 1 2.03995 1 2.6 1H19.4C19.9601 1 20.2401 1 20.454 1.10899C20.6422 1.20487 20.7951 1.35785 20.891 1.54601C21 1.75992 21 2.03995 21 2.6V3.26939C21 3.53819 21 3.67259 20.9672 3.79756C20.938 3.90831 20.8901 4.01323 20.8255 4.10776C20.7526 4.21443 20.651 4.30245 20.4479 4.4785L14.0521 10.0215C13.849 10.1975 13.7474 10.2856 13.6745 10.3922C13.6099 10.4868 13.562 10.5917 13.5328 10.7024C13.5 10.8274 13.5 10.9618 13.5 11.2306V16.4584C13.5 16.6539 13.5 16.7517 13.4685 16.8363C13.4406 16.911 13.3953 16.9779 13.3363 17.0315C13.2695 17.0922 13.1787 17.1285 12.9971 17.2012L9.59711 18.5612C9.22957 18.7082 9.0458 18.7817 8.89827 18.751C8.76927 18.7242 8.65605 18.6476 8.58325 18.5377C8.5 18.4122 8.5 18.2142 8.5 17.8184V11.2306C8.5 10.9618 8.5 10.8274 8.46715 10.7024C8.43805 10.5917 8.39014 10.4868 8.32551 10.3922C8.25258 10.2856 8.15102 10.1975 7.94789 10.0215L1.55211 4.4785C1.34898 4.30245 1.24742 4.21443 1.17449 4.10776C1.10986 4.01323 1.06195 3.90831 1.03285 3.79756C1 3.67259 1 3.53819 1 3.26939V2.6Z" fill="#212121" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /></svg>',analysis:'<svg viewBox="0 0 32 32"><path fill="currentColor" d="M1 0C1.55228 0 2 0.447715 2 1V21.5C2 22.8807 3.11929 24 4.5 24H25C25.5523 24 26 24.4477 26 25C26 25.5523 25.5523 26 25 26H4.5C2.01472 26 0 23.9853 0 21.5V1C0 0.447715 0.447715 0 1 0ZM16 5C16 4.44772 16.4477 4 17 4H24C24.5523 4 25 4.44772 25 5V12C25 12.5523 24.5523 13 24 13C23.4477 13 23 12.5523 23 12V7.41421L15.7071 14.7071C15.3166 15.0976 14.6834 15.0976 14.2929 14.7071L11 11.4142L5.70711 16.7071C5.31658 17.0976 4.68342 17.0976 4.29289 16.7071C3.90237 16.3166 3.90237 15.6834 4.29289 15.2929L10.2929 9.29289C10.6834 8.90237 11.3166 8.90237 11.7071 9.29289L15 12.5858L21.5858 6H17C16.4477 6 16 5.55228 16 5Z" fill="#212121"/></svg>',settingsNew:'<svg viewBox="0 0 32 32">
1<path fill="currentColor" d="M14.001 9.99924C11.2396 9.99924 9.00098 12.2378 9.00098 14.9992C9.00098 17.7607 11.2396 19.9992 14.001 19.9992C16.7624 19.9992 19.001 17.7607 19.001 14.9992C19.001 12.2378 16.7624 9.99924 14.001 9.99924ZM11.001 14.9992C11.001 13.3424 12.3441 11.9992 14.001 11.9992C15.6578 11.9992 17.001 13.3424 17.001 14.9992C17.001 16.6561 15.6578 17.9992 14.001 17.9992C12.3441 17.9992 11.001 16.6561 11.001 14.9992ZM10.8412 28.6272C11.8764 28.8745 12.937 28.9994 14.0012 28.9992C15.0643 28.9976 16.1234 28.8718 17.1572 28.6242C17.4541 28.5541 17.7219 28.3937 17.9241 28.1653C18.1262 27.9368 18.2527 27.6514 18.2862 27.3482L18.5212 25.2182C18.5548 24.8673 18.7133 24.54 18.9678 24.2961C19.2224 24.0522 19.5561 23.9078 19.9082 23.8892C20.1414 23.8794 20.3736 23.9233 20.5872 24.0172L22.5422 24.8742C22.729 24.9563 22.9307 24.9987 23.1347 24.9987C23.3387 24.9987 23.5405 24.9563 23.7272 24.8742C23.9114 24.7941 24.0769 24.6766 24.2132 24.5292C25.6578 22.9728 26.736 21.1131 27.3692 19.0862C27.4598 18.7931 27.457 18.4789 27.3612 18.1874C27.2653 17.8959 27.0812 17.6414 26.8342 17.4592L25.1052 16.1842C24.8206 15.9771 24.619 15.6752 24.5367 15.3329C24.4544 14.9906 24.4968 14.6301 24.6562 14.3162C24.7631 14.107 24.918 13.9261 25.1082 13.7882L26.8282 12.5172C27.0767 12.3356 27.2621 12.0808 27.3584 11.7885C27.4547 11.4961 27.4571 11.181 27.3652 10.8872C26.733 8.86 25.6542 7.00035 24.2082 5.44522C23.9991 5.22166 23.7259 5.06844 23.4261 5.00665C23.1263 4.94487 22.8147 4.97755 22.5342 5.10022L20.5882 5.95624C20.3749 6.04921 20.1428 6.09069 19.9105 6.07733C19.6782 6.06397 19.4523 5.99612 19.251 5.8793C19.0498 5.76248 18.8789 5.59995 18.7521 5.40485C18.6253 5.20975 18.5462 4.98755 18.5212 4.75623L18.2852 2.63623C18.2522 2.32929 18.1238 2.04042 17.9181 1.81027C17.7123 1.58012 17.4396 1.42028 17.1382 1.35324C16.1114 1.1238 15.0633 1.00214 14.0112 0.990234C12.9529 1.00276 11.8986 1.12441 10.8652 1.35324C10.5633 1.4196 10.29 1.57953 10.0842 1.81024C9.87803 2.0388 9.74982 2.32703 9.71821 2.63324L9.48121 4.75522C9.45532 4.9869 9.37556 5.2093 9.24827 5.4046C9.12099 5.59991 8.94974 5.76269 8.74824 5.87991C8.54674 5.99714 8.32058 6.06556 8.08789 6.07968C7.8552 6.0938 7.62243 6.05325 7.40823 5.96124L5.46223 5.10422C5.27712 5.0253 5.07795 4.98465 4.87672 4.98465C4.67549 4.98465 4.47634 5.0253 4.29123 5.10422C4.10148 5.18385 3.93099 5.30319 3.79123 5.45422C2.34522 7.01123 1.26587 8.87201 0.63223 10.9002C0.542004 11.1932 0.545122 11.507 0.641156 11.7982C0.73719 12.0893 0.921382 12.3434 1.16823 12.5252L2.89323 13.7972C3.17673 14.0058 3.3771 14.3082 3.45875 14.6505C3.54041 14.9929 3.49806 15.3531 3.33923 15.6672C3.23438 15.8757 3.08152 16.0564 2.89323 16.1942L1.16823 17.4692C0.920648 17.6514 0.736048 17.9062 0.640149 18.1982C0.54425 18.4901 0.541827 18.8048 0.633221 19.0982C1.26656 21.1278 2.34594 22.9899 3.79223 24.5482C3.92894 24.6947 4.09438 24.8115 4.27823 24.8912C4.465 24.9719 4.66629 25.0135 4.86973 25.0135C5.07317 25.0135 5.27446 24.9719 5.46122 24.8912L7.41623 24.0322C7.62946 23.9401 7.86134 23.8993 8.09321 23.913C8.32509 23.9268 8.55052 23.9948 8.75136 24.1115C8.95219 24.2282 9.12285 24.3904 9.24962 24.585C9.37638 24.7797 9.45569 25.0014 9.48121 25.2322L9.71623 27.3582C9.75055 27.6598 9.87698 27.9434 10.0783 28.1704C10.2796 28.3975 10.546 28.557 10.8412 28.6272ZM16.3422 26.7612C14.7993 27.0777 13.2082 27.0777 11.6652 26.7612L11.4702 25.0212C11.375 24.17 10.9691 23.3838 10.3302 22.8132C9.83009 22.3729 9.21567 22.0829 8.55781 21.9767C7.89996 21.8706 7.22548 21.9525 6.61223 22.2132L5.00622 22.9132C3.97021 21.7269 3.17297 20.3517 2.65823 18.8632L4.08223 17.8112C4.52217 17.487 4.87978 17.064 5.12623 16.5763C5.37269 16.0885 5.5011 15.5497 5.5011 15.0032C5.5011 14.4568 5.37269 13.9179 5.12623 13.4302C4.87978 12.9424 4.52217 12.5194 4.08223 12.1952L2.66023 11.1462C3.17557 9.65919 3.97278 8.28544 5.00822 7.10022L6.60823 7.80023C7.04923 7.99497 7.52614 8.09513 8.00822 8.09424C8.86671 8.09155 9.69427 7.77343 10.3335 7.20038C10.9727 6.62733 11.3791 5.83933 11.4752 4.98624L11.6692 3.23923C12.4429 3.08967 13.2283 3.00936 14.0162 2.99924C14.7981 3.00916 15.5776 3.08913 16.3452 3.23822L16.5322 4.97824C16.6246 5.83224 17.0296 6.62187 17.6692 7.19522C18.1697 7.63818 18.7858 7.92978 19.4457 8.03601C20.1055 8.14224 20.782 8.05873 21.3962 7.79523L22.9962 7.09525C24.0328 8.28023 24.8304 9.65445 25.3452 11.1422L23.9232 12.1882C23.481 12.5113 23.1213 12.9342 22.8733 13.4224C22.6254 13.9107 22.4961 14.4506 22.4961 14.9982C22.4961 15.5459 22.6254 16.0858 22.8733 16.574C23.1213 17.0623 23.481 17.4852 23.9232 17.8082L25.3452 18.8572C24.8301 20.3429 24.0344 21.7158 23.0012 22.9012L21.4012 22.2012C20.9006 21.9784 20.3544 21.8772 19.8072 21.9059C19.26 21.9346 18.7273 22.0924 18.2528 22.3664C17.7
1782 22.6403 17.3752 23.0227 17.0767 23.4822C16.7782 23.9417 16.5927 24.4653 16.5352 25.0102L16.3422 26.7612Z" fill="#212121"/></svg>',showTable:'<svg viewBox="0 0 26 22"><path fill="currentColor" d="M0.75 0C0.335787 0 0 0.335786 0 0.75C0 1.16421 0.335787 1.5 0.75 1.5H21.25C21.6642 1.5 22 1.16421 22 0.75C22 0.335786 21.6642 0 21.25 0H0.75ZM18.25 22C20.3211 22 22 20.3211 22 18.25V7.5C22 6.94772 21.5523 6.5 21 6.5H1C0.447715 6.5 0 6.94771 0 7.5V18.25C0 20.3211 1.67893 22 3.75 22H18.25ZM6.5 8L6.5 14H1.5L1.5 8L6.5 8ZM8 14L8 8H14L14 14L8 14ZM6.5 15.5V20.5H3.75C2.50736 20.5 1.5 19.4926 1.5 18.25L1.5 15.5H6.5ZM8 20.5L8 15.5L14 15.5L14 20.5H8ZM18.25 20.5H15.5L15.5 15.5H20.5V18.25C20.5 19.4926 19.4926 20.5 18.25 20.5ZM20.5 14H15.5L15.5 8L20.5 8V14Z" fill="#212121"/></svg>',bwFilter:'<svg viewBox="0 0 32 32"><g fill="currentColor" transform="matrix(.689073 0 0 .962376 3.903234 -257.839899)"><path d="M29.388 271.757l-15.24 16.302 2.015 2.52h.06l15.208-16.268z"/><path d="M21.815 270.92l10.335 11.863V270.92zm-11.738 11.618l-.02.022h.04zm-.024 1.06zm.001.003H9.98c-.034.048-.08.058-.147 0H9.78l-.27.018-.025-.002-.158.003c-.033.01-.062.01-.084-.002l-.084-.005-8.355 9.62 2.418 2.642 9.274-10.696-1.445-1.58h-.997z"/><path d="M10.275 282.537l-.02.022h.044zm-.222 1.06zm.001.003H9.98c-.034.048-.08.058-.147 0H9.78l-.27.018-.025-.002-.158.003c-.03.008-.055.008-.076 0l-1.062 1.12 5.872 5.84h2.14l1.05-1.107-5.906-5.873h-1.3zm-7.704 8.688a1.753 1.894 0 0 0-1.753 1.894 1.753 1.894 0 0 0 1.753 1.893 1.753 1.894 0 0 0 1.072-.396l.4-.488a1.753 1.894 0 0 0 .272-1.009 1.753 1.894 0 0 0-1.753-1.894z"/><ellipse ry="1.671" rx="1.734" cy="289.28" cx="15.137"/><ellipse ry="1.819" rx="1.501" cy="284.894" cx="10.234"/></g><path d="M.224 2.878h2.16v29.01H.224z"/><path d="M1.865 29.616h24.147v2.273H1.865z"/></svg>',arrow:'<svg viewBox="0 0 926.000000 757.000000"><g transform="translate(0.000000,757.000000) scale(0.100000,-0.100000)" fill="currentColor" stroke="none"><path d="M4807 7086 c-93 -27 -160 -68 -232 -140 -176 -178 -215 -438 -101 -665 41 -80 -7 -28 1028 -1131 l774 -825 -2545 -5 c-2088 -4 -2553 -8 -2586 -19 -182 -61 -315 -199 -371 -387 -26 -86 -24 -229 4 -319 56 -182 181 -310 362 -371 53 -18 148 -19 2593 -22 1396 -1 2537 -6 2535 -10 -2 -5 -392 -423 -868 -930 -476 -508 -881 -947 -901 -978 -106 -161 -117 -385 -27 -571 42 -86 151 -199 228 -236 169 -81 358 -71 504 26 29 19 581 600 1402 1475 1241 1323 1357 1450 1389 1515 88 181 88 353 -1 534 -32 67 -142 187 -1393 1520 -1425 1520 -1391 1485 -1516 1529 -66 22 -215 28 -278 10z"/></g></svg>',compare:'<svg viewBox="0 0 16 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.7824 0.219653L15.2774 4.71441C15.5435 4.98047 15.5679 5.39676 15.3505 5.69038L15.278 5.77451L10.783 10.2794C10.4904 10.5726 10.0155 10.5731 9.72233 10.2805C9.45577 10.0145 9.43111 9.59791 9.64865 9.30406L9.72117 9.21986L12.938 5.997L1.24219 5.99766C0.862492 5.99766 0.548697 5.71551 0.499034 5.34943L0.492188 5.24766C0.492188 4.86797 0.774342 4.55417 1.14042 4.50451L1.24219 4.49766L12.94 4.497L9.72177 1.28035C9.45549 1.01409 9.43127 0.597427 9.64912 0.303808L9.72173 0.219687C9.98799 -0.046588 10.4047 -0.0708077 10.6983 0.147037L10.7824 0.219653L15.2774 4.71441L10.7824 0.219653ZM15.5002 14.6491L15.507 14.7509C15.507 15.1306 15.2249 15.4444 14.8588 15.494L14.757 15.5009L3.06103 15.5L6.28219 18.7194C6.54857 18.9856 6.57295 19.4023 6.35521 19.696L6.28263 19.7801C6.01648 20.0465 5.59982 20.0709 5.30612 19.8531L5.22197 19.7806L0.721972 15.2843C0.455594 15.0182 0.431213 14.6015 0.648945 14.3078L0.721528 14.2237L5.22153 9.71989C5.5143 9.42688 5.98917 9.42668 6.28219 9.71945C6.54857 9.9856 6.57295 10.4023 6.35521 10.696L6.28263 10.7801L3.06503 14L14.757 14.0009C15.1367 14.0009 15.4505 14.283 15.5002 14.6491L15.507 14.7509L15.5002 14.6491Z"/></svg>',timeSlider:'<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 10.75C13.5 10.8716 13.4122 10.9741 13.2966 10.9957L13.2332 11H9.25C9.12836 11 9.02593 10.9122 9.00427 10.7966L9 10.7332V4.75C9 4.61214 9.11214 4.5 9.25 4.5C9.37164 4.5 9.47407 4.58779 9.49573 4.70335L9.5 4.76681V10V10.5H10H13.25C13.3879 10.5 13.5 10.6121 13.5 10.75ZM10 0.5C15.2468 0.5 19.5 4.75411 19.5 10C19.5 15.2459 15.2468 19.5 10 19.5C4.75318 19.5 0.5 15.2459 0.5 10C0.5 4.75411 4.75318 0.5 10 0.5ZM10 1.167C5.12886 1.167 1.167 5.12886 1.167 10C1.167 14.8711 5.12886 18.833 10 18.833C14.8711 18.833 18.833 14.8711 18.833 10C18.833 5.12886 14.8711 1.167 10 1.167Z" fill="#616161" stroke="black"/></svg>',label:'<svg viewBox="0 0 32 32">
1<path fill="currentColor" d="m 20.522567,8.0334009 a 0.0803675,0.0803675 0 0 0 -0.0262,0.005 0.0803675,0.0803675 0 0 0 -0.0321,0.0204 l -0.18179,0.14608 a 0.0803675,0.0803675 0 0 0 -0.009,0.009 l -0.0254,0.028 a 0.0803675,0.0803675 0 0 0 -0.004,0.005 l -4.22557,5.4697901 -4.212351,-5.4527201 a 0.0803675,0.0803675 0 0 0 -0.0138,-0.0139 l -0.0919,-0.0725 a 0.0803675,0.0803675 0 0 0 -0.007,-0.005 l -0.17496,-0.10857 a 0.0803675,0.0803675 0 0 0 -0.0424,-0.0121 H 0.27543635 a 0.0803675,0.0803675 0 0 0 -0.0568,0.0235 l -0.1950299,0.19503 a 0.0803675,0.0803675 0 0 0 -0.0235,0.0568 v 1.45668 a 0.0803675,0.0803675 0 0 0 0.0235,0.0568 l 0.19503,0.1950301 a 0.0803675,0.0803675 0 0 0 0.0568,0.0235 H 4.1819466 v 13.6213 a 0.0803675,0.0803675 0 0 0 0.0235,0.0568 l 0.1950299,0.19502 a 0.0803675,0.0803675 0 0 0 0.0568,0.0235 h 2.25854 a 0.0803675,0.0803675 0 0 0 0.0568,-0.0235 l 0.1950302,-0.19502 a 0.0803675,0.0803675 0 0 0 0.0235,-0.0568 v -13.6213 h 2.54864 l 4.6523093,6.02219 -4.7717894,6.17687 a 0.0803675,0.0803675 0 0 0 -0.0142,0.029 l -0.0425,0.16403 a 0.0803675,0.0803675 0 0 0 0.011499,0.0656 l 0.0959,0.13973 a 0.0803675,0.0803675 0 0 0 0.023201,0.0224 l 1.9287794,1.2241 a 0.0803675,0.0803675 0 0 0 0.028,0.0111 l 0.17764,0.0339 a 0.0803675,0.0803675 0 0 0 0.0561,-0.01 l 0.15549,-0.0923 a 0.0803675,0.0803675 0 0 0 0.0226,-0.02 l 4.15611,-5.379908 4.1693,5.39698 a 0.0803675,0.0803675 0 0 0 0.0226,0.02 l 0.15549,0.0923 a 0.0803675,0.0803675 0 0 0 0.0561,0.01 l 0.177639,-0.0339 a 0.0803675,0.0803675 0 0 0 0.028,-0.0111 l 1.92878,-1.22409 a 0.0803675,0.0803675 0 0 0 0.0232,-0.0224 l 0.0959,-0.13973 a 0.0803675,0.0803675 0 0 0 0.0115,-0.0656 l -0.0426,-0.16402 a 0.0803675,0.0803675 0 0 0 -0.0142,-0.029 l -4.784978,-6.193942 4.66547,-6.0392 h 2.3081 v 13.63831 a 0.0803675,0.0803675 0 0 0 0.0235,0.0568 l 0.195029,0.19502 a 0.0803675,0.0803675 0 0 0 0.0568,0.0235 h 2.331459 a 0.0803675,0.0803675 0 0 0 0.0568,-0.0235 l 0.19503,-0.19502 a 0.0803675,0.0803675 0 0 0 0.0235,-0.0568 v -13.63831 h 4.023219 a 0.0803675,0.0803675 0 0 0 0.0568,-0.0235 l 0.19503,-0.1950301 a 0.0803675,0.0803675 0 0 0 0.0235,-0.0568 v -1.45668 a 0.0803675,0.0803675 0 0 0 -0.0235,-0.0568 l -0.195026,-0.19503 a 0.0803675,0.0803675 0 0 0 -0.0568,-0.0235 H 20.534747 a 0.0803675,0.0803675 0 0 0 -0.0116,-7e-4 z" /></svg>',threeDots:'<svg viewBox="0 0 16 16"><path d="M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z"/></svg>',info:'<svg viewBox="0 0 26 26"><path d="M13 6C13 6.55228 12.5523 7 12 7C11.4477 7 11 6.55228 11 6C11 5.44772 11.4477 5 12 5C12.5523 5 13 5.44772 13 6ZM11.25 9.75L11.25 17.25C11.25 17.6642 11.5858 18 12 18C12.4142 18 12.75 17.6642 12.75 17.25L12.75 9.75C12.75 9.33579 12.4142 9 12 9C11.5858 9 11.25 9.33579 11.25 9.75ZM0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12ZM12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5Z" fill="#212121"/></svg>'});Ext.define("Client.module.map.dataView.grid.GridUtils",{dataEditable:function(){var g=this,b=Adaptive.utils.Config.getConfig(g.theme_data,"parent_themes"),h=Adaptive.utils.Config.getBooleanConfig(g.theme_data,"only_metadata_edit");return(g.theme_data.editable&&(g.theme_data.permissions.write||g.theme_data.permissions.project_write)&&((!g.childrenOf&&!b)||(g.childrenOf&&b))&&!h)},shouldHideCreateNew:function(){var b=this;return Adaptive.utils.Config.getBooleanConfig(b.theme_data,"dw_hide_create_new",false)},scrollToRecord:function(w,h){var q=this,o=q.grid||q.view,g=o.getView(),b=o.store.indexOf(w);if(g.bufferedRenderer){g.bufferedRenderer.scrollTo(b)}else{g.focusRow(b)}if(h){g.highlightItem(g.getNode(w))}},showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:this.lang.getString("loadMaskMsg")})}if(b){this.loadMask.msg=b}this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},onGridItemSelect:function(g,h,A,o){var q=this,B=this.theme_data;if(q.selectionStore){var C=h.get(q.idColumn),z=q.selectionStore.findExact("id",C);if(z==-1){var w={id:C,geom_wkt:h.get("geom_wkt"),_editable:h.get("_editable")};if(q.idColumn!=q.theme_data.id_column){w.record_id=h.get(q.theme_data.id_column)}q.selectionStore.add(w)}else{var b=q.selectionStore.getAt(z);if(b.get("geom_wkt")!=h.get("geom_wkt")){if(q.idColumn!=q.theme_data.id_column){b.set("record_id",h.get(q.theme_data.id_column))}q.removeSelection(b.get("feature"));b.set("geom_wkt",h.get("geom_wkt"));
1b.set("feature",q.selectFeature(b.get("geom_wkt"),null,true,null,{id:b.get("id")}))}}}if(q.theme_data.is_digi_theme||Adaptive.utils.Config.getBooleanConfig(q.theme_data,"veg")){q.reportEvent("gridItemSelect",{record:h.data,theme_data:B})}},onGridSelectionChange:function(h,o,g){var q=this;if(!o||o.length==0){return}if(q.hierarchyStore){var w,b=o[o.length-1];if(q.hooks&&q.hooks.beforeShowNavTree){w=q.hooks.beforeShowNavTree(b);q.dtNavTree.setVisible(w);if(!w){return}}w=!b.get("_historical");q.dtNavTree.setVisible(w);if(!w){return}q.hierarchyStore.load({params:{request:{theme_uuid:q.theme_data.theme_uuid,object_id:b.get("id")}}})}},onGridItemDeSelect:function(h,b){var o=this,g=this.theme_data;if(o.selectionStore){o.selectionStore.removeAt(o.selectionStore.findExact("id",b.get(o.idColumn)))}if(o.theme_data.is_digi_theme||Adaptive.utils.Config.getBooleanConfig(o.theme_data,"veg")){o.reportEvent("gridItemDeSelect",{record:b.data,theme_data:g})}},getExportCount:function(){var z=this,w=z.grid,o=w.getStore(),h=w.getSelectionModel(),g=o.unfilteredCount||o.getTotalCount(),b=o.getTotalCount(),q=z.selectionStore?z.selectionStore.count():h.getCount();return(q>0)?q:b||g},setBbarCount:function(){if(!this.view){return}var z=this,b=z.grid,o=b.down("#countInfo"),A=b.getStore(),q=b.getSelectionModel(),C=A.unfilteredCount||A.getTotalCount(),w=A.getTotalCount(),h=z.selectionStore?z.selectionStore.count():q.getCount(),g=z.getFilterIconCls(),B=[];B.push(Ext.String.format(z.lang.getString("feature_total_count")+" {0}",C));if(A.unfilteredCount&&w!=C){B.push(Ext.String.format(z.lang.getString("feature_filtered_count")+" {0}",w))}B.push(Ext.String.format(z.lang.getString("feature_selected_count")+" {0}",h));o.setText(B.join(", "));if(z.filterIcon!=g){z.view.setIconCls(g);z.filterIcon=g;z.view.tab.setIconHtml(g?Adaptive.ux.Icons.filter:"")}},readGeometry:function(b,o){var h=this,g=b.get("feature");if(g){h.onReadGeometry(b,b.get("feature"),o);return}g=h.wktReader.read(b.get("geom_wkt"));if(g){if(h.prj.projCode!=h.map.getProjection()&&!h.is_transformed){g.geometry.transform(h.prj,h.map.getProjectionObject())}b.set("feature",g);h.onReadGeometry(b,g,o)}},onReadGeometry:function(b,g,o){var h=this;if(!h.selectionStore){h.selectedFeatures=h.selectedFeature||[];if(b.get("select_feature")){h.removeSelection(b.get("select_feature"))}}if(o){h.zoomToGeometry(g.geometry)}},getFilterIconCls:function(){var b=this,g=b.view.grid_module;if(b.readFilter){return"a3-dimension-filter-active"}if(g.layer_record&&g.layer_record.get("dimensions")){return"a3-dimension-filter"}return""},showError:function(b,h){var g=this,o;if(b){if(b.exception&&b.exception.code){o=g.lang.getError(b.exception.code)}else{if(b.exception&&b.exception.msg){o=g.lang.getString("serviceErrorMsgPart1")+b.exception.msg}else{o=g.lang.getString("serviceErrorMsgPart1")+g.lang.getString("serviceErrorUnknown")}o+=g.lang.getString("serviceErrorMsgPart2")}}else{o=g.lang.getString("serviceErrorMsgPart1")+g.lang.getString("serviceErrorUnknown")}Ext.Msg.show({title:g.lang.getString("errorTitle"),msg:(h?h+"<br><br>":"")+o,icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK})},onSelectionStoreAdd:function(h,g,b){var o=this;g.forEach(function(q){var w=o.grid.store.findRecord(o.idColumn,q.get("id"));q.set("feature",o.selectFeature(q.get("geom_wkt"),o.is_transformed?null:o.prj.projCode,true,null,{id:q.get("id")}));if(w&&w>-1){o.grid.getSelectionModel().select(w,true)}})},onSelectionStoreRemove:function(o,h,g){var q=this,b=q.grid.store.findExact(q.idColumn,h.get("id"));q.removeSelection(h.get("feature"));if(b>-1){q.grid.getSelectionModel().deselect(b)}},onSelectionStoreRemoveAll:function(b){var g=this;g.removeSelection();g.grid.getSelectionModel().deselectAll()},updateSelectionModel:function(){var b=this,g=b.idColumn;b.selectTask=b.selectTask||new Ext.util.DelayedTask(function(){var q=b.grid.getSelectionModel(),o=b.grid.getView().getViewRange(),h=[];q.deselectAll(true);o&&b.selectionStore.each(function(z){var w=o.find(function(A){return A.get(g)===z.get("id")});if(w){h.push(w)}});if(h.length>0){q.select(h,true,true)}});b.selectTask.delay(50)}
1,onGridItemClick:function(o,b,w,g,z,h){var q=this;if(!z.ctrlKey){if(q.selectionStore.count()==1&&q.selectionStore.findExact("id",b.get(q.idColumn))!=-1&&z.target.className.indexOf("x-action-col")==-1){q.selectionStore.removeAll();return false}q.selectionStore.removeAll()}if(z.shiftKey){z.shiftKey=false}},addRecordsToSelectionStore:function(g){var h=this,b=[];g.forEach(function(o){if(h.selectionStore.findExact("id",o[h.idColumn])==-1){b.push({id:o[h.idColumn],geom_wkt:o.geom_wkt,_editable:o._editable})}});h.selectionStore.add(b)},canDoBatchOperations:function(){var q=this,b=1000,h=q.selectionStore.getCount(),g=q.grid.store.getTotalCount(),o=q.grid.store.getCount();return o>0&&((h>0&&h<=b)||g<=b)},batchOperationsAllowed:function(){var b=this;return(b.theme_data.is_digi_theme&&(b.theme_data.permissions.admin||b.theme_data.permissions.write||b.theme_data.permissions.project_write))},selectionStoreRemoveByIds:function(b){var g=this;b.forEach(function(h){g.selectionStore.removeAt(g.selectionStore.findExact("id",h))})}});Ext.define("Adaptive.map.ClickControl",{singleton:true,getClickControl:function(h,b){var g=this;b=b||{};b=Ext.merge({delay:0,single:true,"double":false,pixelTolerance:g.getClickTolerance(),stopSingle:false,stopDouble:false,handleRightClicks:true},b);return OpenLayers.Class(OpenLayers.Control,{defaultHandlerOptions:Ext.merge({delay:0,single:true,"double":false,pixelTolerance:0,stopSingle:false,stopDouble:false,handleRightClicks:true},b),initialize:function(o){this.handlerOptions=OpenLayers.Util.extend({},this.defaultHandlerOptions);OpenLayers.Control.prototype.initialize.apply(this,arguments);this.handler=new OpenLayers.Handler.Click(this,{click:this.onClick},this.handlerOptions)},onClick:h})},getClickTolerance:function(){if(navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/iPad/i)){return 20}else{return 0}}});Ext.define("Client.module.map.dataView.grid.GridMap",{performOlSetup:function(){var b=this;if(b.theme_data.data_source_projection&&b.theme_data.data_source_projection.epsg&&b.theme_data.data_source_projection.proj4j){GeoMind.utils.Map.createProjectionDef(b.theme_data.data_source_projection.epsg,b.theme_data.data_source_projection.proj4j);b.prj=new OpenLayers.Projection("EPSG:"+b.theme_data.data_source_projection.epsg)}else{b.prj=new OpenLayers.Projection(b.map.getProjection())}b.wktReader=new OpenLayers.Format.WKT()},wireUpOlEvents:function(){var b=this;if(!b.clickControl){b.clickControl=Adaptive.map.ClickControl.getClickControl(Ext.bind(b.onMapMouseClick,b))}b.infoControl=new b.clickControl();b.map.addControl(b.infoControl);b.infoControl.activate();b.updateExtentFilterTask=new Ext.util.DelayedTask(b.updateExtentFilter,b)},cleanUpOlEvents:function(){var b=this;if(b.infoControl){b.infoControl.deactivate();b.infoControl.destroy()}b.map.events.unregister("move",b,b.onMapMove)},extentFilterActivate:function(b){var g=this;if(b){g.map.events.register("move",g,g.onMapMove)}else{g.map.events.unregister("move",g,g.onMapMove)}Client.AppLogic.dispatchEvent("extentFilterActivate",{activate:b,theme_data:g.theme_data})},onMapMove:function(){var b=this;if(b.map){b.updateExtentFilterTask.delay(100)}},onMapMouseClick:function(A){var K=this,L=K.idColumn,E=K.map.getLonLatFromPixel(A.xy),F=new OpenLayers.Geometry.Point(E.lon,E.lat),D=K.selectLayer&&K.selectLayer.features,q=new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon(F,K.mouseIntersectCircleSize*K.map.resolution,10,0)),h,G,b=K.grid,w=b.store,H,C,z=q.geometry,B=false,M={theme_uuid:K.theme_data.theme_uuid};var o=K.map.layers.find(function(g){return g.name&&g.name.toLowerCase().substr(0,14)==="geometrypicker"});if(o){return}if(K.parent.disableMapSelection||A.shiftKey){return}Client.AppLogic.dispatchEvent("mapPopupHide");Client.AppLogic.dispatchEvent("disableInfoTool");z.calculateBounds();C=z.getBounds();if(D&&D.length>0){D.forEach(function(g){H=g.geometry;if(H.getBounds().intersectsBounds(C)&&H.intersects(z)){K.selectionStore.removeAt(K.selectionStore.findExact("id",g.attributes.id));B=true}});if(K.selectionStore.count()===0||(B&&A.ctrlKey)){return}}var I=null;G=K.map.getProjectionObject().proj.srsProjNumber;h=K.getServerFilter(K.grid.store);h.addSecondFilter({name:K.theme_data.geom_column,comparisonOperator:"ST_INTERSECTS",value:"SRID="+G+";
1"+q.geometry.toString(),netType:"geometry",logicalOperator:"AND"});var J={theme_uuid:K.theme_data.theme_uuid,columns:[L],filter:h.getFilterObject()};K.reportEvent("getServerFilter",M);Ext.merge(J,M.filters);Ext.Ajax.request({url:K.serviceUrl+K.serviceMethods.read,method:"POST",jsonData:{request:J},callback:function(N,O,g){I.then(function(P){g=GeoMind.utils.Ajax.fixResponse(g);if(g.success&&g.records.length>0){K.addRecordsToSelectionStore(g.records)}else{Client.AppLogic.dispatchEvent("triggerInfoTool",A)}})}});if(!A.ctrlKey){I=new Promise(function(N,g){K.selectionStore.removeAll();N()})}else{I=Promise.resolve()}},updateExtentFilter:function(){var b=this;if(b.view&&!b.initialLoad){b.read()}},setSecondFilter:function(B,A){var w=this,g=w.grid,z=g.store,h=w.idColumn,q=w.grid.getSelectionModel().getSelection().map(function(C){return C.get(h)});var b=Ext.Array.merge(B,q);g.secondFilters=[];if(b.length>0){var o=Ext.isNumber(b[0])?"int[]":"string[]";switch(w.idColumnDataType){case"uuid":o="Guid[]";break;default:break}g.secondFilters.push({name:h,value:b,logicalOperator:"AND",comparisonOperator:"ANY",netType:o})}w.grid.store.removeAll();w.grid.store.load({scope:w,callback:function(D,C,E){if(A){A(D)}}})},getExtentFilter:function(){var g=this,h=g.map.getExtent(),b=g.map.getMaxExtent();h.left=Math.max(h.left,b.left);h.bottom=Math.max(h.bottom,b.bottom);h.right=Math.min(h.right,b.right);h.top=Math.min(h.top,b.top);return{name:g.theme_data.geom_column,comparisonOperator:"ST_INTERSECTS",value:"SRID="+g.map.getProjectionObject().proj.srsProjNumber+";"+h.toGeometry().toString(),netType:"geometry",logicalOperator:"AND"}}});Ext.define("Adaptive.mixins.Dataview",{getThemeEnvelope:function(b,h){var g=this,o={theme_uuid:b,object_id:h,epsg:g.map.getProjectionObject().proj.srsProjNumber};Ext.Ajax.request({url:"WebServices/client/Dataview.asmx/GetThemeEnvelope",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(o),success:g.onGetEnvelopeSuccess,failure:g.onGetEnvelopeFailure,scope:g})},getChildThemesEnvelope:function(b,h){var g=this,o={theme_uuid:b,object_id:h,epsg:g.map.getProjectionObject().proj.srsProjNumber};Ext.Ajax.request({url:"WebServices/client/Dataview.asmx/GetChildThemesEnvelope",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(o),success:g.onGetEnvelopeSuccess,failure:g.onGetEnvelopeFailure,scope:g})},zoomToGeometry:function(h){var g=this,b;if(Ext.isArray(h)){b=new OpenLayers.Bounds();h.forEach(function(o){b.extend(o.getBounds())});g.map.zoomToExtent(b.scale(2))}else{if(h.CLASS_NAME==="OpenLayers.Geometry.Point"){g.map.setCenter(new OpenLayers.LonLat(h.x,h.y),g.defaultZoomLevel)}else{g.map.zoomToExtent(h.getBounds().scale(2))}}},onGetEnvelopeSuccess:function(b){var o=this;b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){var h=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"envelope"),g=OpenLayers.Geometry.fromWKT(h);if(g){o.zoomToGeometry(g)}}else{o.onGetEnvelopeFailure()}},onGetEnvelopeFailure:function(){}});Ext.define("Adaptive.mixins.ColumnLang",{getLangNameColumnDict:function(g,b,h){return this.getLangGroupDictPropItem(g,"name_columns",b,h)},getLangDescriptionColumnDict:function(b,h,g){return this.getLangGroupDictPropItem(b,"description_columns",h,g)},getLangValueColumnDict:function(g,b,h){return this.getLangGroupDictPropItem(g,"value_columns",b,h)},getLangGroupDictPropItem:function(h,o,g,q){var w=g,z=Adaptive.utils.Config.getJsonConfig(h,"lang_group_dict");if(z&&z.lang_codes&&z[o]){var b=z.lang_codes.indexOf(q);if(b!=-1&&b<z[o].length){w=z[o][b]}}return w},getLangTitleSeparator:function(h,b,g){return this.getLangGroupSeparatorPropItem(h,"titles",b,g)},getLangDescriptionSeparator:function(h,g,b){return this.getLangGroupSeparatorPropItem(h,"descriptions",g,b)},getLangGroupSeparatorPropItem:function(z,h,g,o){var w=g,q=z.lang_group_separator;if(q&&q.lang_codes&&q[h]){var b=q.lang_codes.indexOf(o);if(b!=-1&&b<q[h].length){w=q[h][b]}}return w},getLangGroupProp:function(b,g){var h=null,o=Adaptive.utils.Config.getJsonConfig(b,"lang_group");if(o&&o[g]){h=o[g]}return h},getLangGroupDictProp:function(b,g){var h=null,o=Adaptive.utils.Config.getJsonConfig(b,"lang_group_dict");if(o&&o[g]){h=o[g]}return h},isLangChildColumn:function(b){var o=this.getLangGroupProp(b,"uuid"),g=this.getLangGroupProp(b,"is_parent"),h=!g&&!!o;return h},isLangParentColumn:function(b){var g=!!this.getLangGroupProp(b,"is_parent");return g},hasLangConfig:function(b){var h=Adaptive.utils.Config.getJsonConfig(b,"lang_group"),g=Adaptive.utils.Config.getJsonConfig(b,"lang_group_dict");return !!h||!!g},hasLangGroupConfig:function(b){var g=Adaptive.utils.Config.getJsonConfig(b,"lang_group");return !!g},hasLangGroupSeparatorConfig:function(b){var g=Adaptive.utils.Config.getJsonConfig(b,"lang_group_separator");return !!g},isLangColumn:function(b){var h=["dee25205-d3a3-42a5-870f-8d673491b2cf","22f04234-0055-4e74-aa50-98f89cddc080","63fe55ef-0a0b-47c3-9027-d98ad885d1f1","92f9c7c3-90b3-41f9-bb4b-e37cc681db68","70a9e6e4-665b-405b-8bf9-75d5ad149d89","ab306a41-79c3-44b3-ba59-0791be20889f"],g=b instanceof Ext.data.Model?b.get("data_type"):b.data_type;return h.indexOf(g)!=-1},isDictColumn:function(b){var h=["70a9e6e4-665b-405b-8bf9-75d5ad149d89","ab306a41-79c3-44b3-ba59-0791be20889f"],g=b instanceof Ext.data.Model?b.get("data_type"):b.data_type;return h.indexOf(g)!=-1}});
1Ext.define("Client.module.map.dataView.grid.lang.Standard",{strings:{emptyGrid:{en:"No data.",nb:"Ingen data.",nn:"Ingen data."},loadMaskMsg:{en:"Loading...",nb:"Laster..."},panelTitle:{en:"Property",nb:"Eiendom",nn:"Eiendom"},children:{en:"(children)",nb:"(barn)"},children_of:{en:"connected to",nb:"tilknyttet"},historical:{en:"(historical)",nb:"(historisk)"},prefixNeighborTitle:{en:"Neighbors for ",nb:"Naboliste for ",nn:"Naboliste for "},tooltipZoomToProperty:{en:"Zoom to property",nb:"Zoom til teig",nn:"Zoom til teig"},tooltipZoomTo:{en:"Zoom to object",nb:"Zoom til objekt",nn:"Zoom til objekt"},tooltipZoomToParent:{en:"Zoom to parent",nb:"Zoom til forelder",nn:"Zoom til forelder"},tooltipZoomToChild:{en:"Zoom to children",nb:"Zoom til barn",nn:"Zoom til barn"},tooltipShowForm:{en:"Open form",nb:"Vis skjema"},tooltipEditForm:{en:"Edit",nb:"Rediger"},tooltipShowConnectedForm:{en:"Open form for connected",nb:"Vis skjema for tilknyttet"},tooltipEditConnectedForm:{en:"Edit connected",nb:"Rediger tilknyttet"},tooltipDelete:{en:"Delete",nb:"Slett"},tooltipRemove:{en:"Delete property from selection",nb:"Slett eiendom fra utvalg",nn:"Slett eiendom fra utvalg"},tooltipShowMedia:{en:"Show media",nb:"Vis media",nn:"Vis media"},tooltipMediaCount:{en:"Media count",nb:"Antall media"},noGeomTitle:{en:"Info",nb:"Info",nn:"Info"},noGeomMsg:{en:"No geometry has been digitised!",nb:"Ingen geometri har blitt digitalisert!",nn:"Ingen geometri har blitt digitalisert!"},saveBtnText:{en:"Save",nb:"Lagre",nn:"Lagre"},cancelBtnText:{en:"Cancel",nb:"Avbryt",nn:"Avbryt"},deleteBtnText:{en:"Delete",nb:"Slett",nn:"Slett"},saveMsg:{en:"Saving...",nb:"Lagrer...",nn:"Lagrer..."},deleteMsg:{en:"Deleting...",nb:"Sletter...",nn:"Sletter..."},reqFieldsTitle:{en:"Required fields missing",nb:"Obligatorisk felt mangler",nn:"Obligatorisk felt mangler"},reqFieldsMsgPart1:{en:"The field(s) <b>",nb:"Felt(ene) <b>",nn:"Felt(ene) <b>"},reqFieldsMsgPart2:{en:"</b> are required. Please fill them before saving the record.",nb:"</b> er obilgatoriske. Vennligst fyll disse før du lagrer.",nn:"</b> er obilgatoriske. Vennligst fyll disse før du lagrer."},errorTitle:{en:"Error",nb:"Feil",nn:"Feil"},deleteConfirmTitle:{en:"Confirm delete",nb:"Bekreft sletting"},deleteConfirmMsg:{en:"Do you really want to delete this record?",nb:"Vil du virkelig slette denne raden?"},deleteMultipleConfirmMsg:{en:"Do you really want to delete these {0} records?",nb:"Vil du virkelig slette disse {0} radene?"},deleteRecordError:{en:"Could not delete the record.",nb:"Kunne ikke utføre sletting."},serviceUnavailableMsg:{en:"There was a problem contacting the server.",nb:"Det er problemer med kontakten mot server.",nn:"Det er problemer med kontakten mot server."},serviceErrorMsgPart1:{en:"Server returned the following error: ",nb:"Serveren ga følgende feilmelding; ",nn:"Serveren ga følgjande feilmelding; "},serviceErrorMsgPart2:{en:". Please try again or contact the administrator.",nb:". Vennligst prøv igjen eller kontakt administrator.",nn:". Vennligst prøv igjen eller kontakt administrator."},serviceErrorUnknown:{en:"Unknown exception",nb:"Ukjent feil",nn:"Ukjent feil"},yes:{en:"Yes",nb:"Ja",nn:"Ja"},no:{en:"No",nb:"Nei",nn:"Nei"},filtered:{en:"Filtered",nb:"Filtrert",nn:"Filtrert"},intersectLoading:{en:"Loading properties, please wait\u2026",nb:"Laster eiendommer, vennligst vent\u2026"},error_intersection:{en:"Property loading was stopped due to too many properties intersecting one or more drawn objects, please reduce the size or number of features.",nb:"Henting av eiendommer ble stoppet på grunn av for mange eiendommer i et eller flere tegnede objekter, vennligst reduser størrelse eller antall objekter."},error_select_by_area_large:{en:"You have selected more than fifty objects. Try limit your search.",nb:"Du har valgt mer enn femti objekter. Prøv å begrense utvalget."},error_select_by_area_no_hits:{en:"No features found within the area you have drawn or you are trying to select outside the areas you already have selected for.",nb:"Det finnes ingen objekter i området du har tegnet eller du er utenfor området du har filtrert et utvalg."},error_select_by_area:{en:"Server error while selecting.",nb:"Server feil ved seleksjon."},error_zoom_to:{en:"Could not zoom to object. Access denied",nb:"Kan ikke zoome til objekt. Ingen tilgang"},feature_total_count:{en:"Total:",nb:"Totalt:"},feature_filtered_count:{en:"Filtered:",nb:"Filtrert:"},feature_selected_count:{en:"Selected:",nb:"Valgte:"},show_hierarchy:{en:"Explore hierarchy",nb:"Utforsk hierarki"},cb_filter_on_extent:{en:"Show only features visible in map",nb:"Vis kun objekter synlig i kart"},on_read_callback_failure:{en:"An error occurred while reading data!",nb:"Det skjedde en feil ved lesing av data!"},json_to_much_data:{en:"There might be too much data!",nb:"Det kan være at datamengden er for stor!"},apply_extent_filter_lead:{en:"You could try to turn on",nb:"Du kan forsøke å slå på"},remove_extent_filter_lead:{en:"You could try to turn off",nb:"Du kan forsøke å slå av"},error_msg_lead:{en:"Error message: ",nb:"Feilmelding: "},filter_btn_text:{en:"Filter",nb:"Utvalg"}},errCodes:{perm_denied:{en:"Permission denied",nb:"Ikke tillatt"},auth_4:{en:"Sessions expired. Please sign back into the application and try again.",nb:"Det ser ut til at sesjonen din er utløpt. Logg deg inn og prøv igjen."}}});Ext.define("Client.lang.DateFormat",{strings:{date_format:{en:"m/d/Y",nb:"d.m.Y",nn:"d.m.Y",pl:"Y-m-d"},time_format:{en:"g:i A",nb:"H:i",nn:"H:i",pl:"H:i"},time_sec_format:{en:"g:i:s A",nb:"H:i:s",nn:"H:i:s",pl:"H:i:s"}}});Ext.define("Ext.ux.grid.FiltersFeature",{extend:Ext.grid.feature.Feature,alias:"feature.filters",autoReload:true,filterCls:"ux-filtered-column",local:false,menuFilterText:"Filters",paramPrefix:"filter",showMenu:true,stateId:undefined,updateBuffer:500,hasFeatureEvent:false,constructor:function(b){var g=this;g.callParent(arguments);g.deferredUpdate=Ext.create("Ext.util.DelayedTask",g.reload,g);g.filters=g.createFiltersCollection();g.filterConfigs=b.filters},init:function(g){var h=this,b=h.view,o=b.headerCt;h.bindStore(b.getStore(),true);o.on("menucreate",h.onMenuCreate,h);b.on("refresh",h.onRefresh,h);g.on({scope:h,beforestaterestore:h.applyState,beforestatesave:h.saveState,beforedestroy:h.destroy});g.filters=h;g.addEvents("filterupdate");h.createFilters()},createFiltersCollection:function(){return Ext.create("Ext.util.MixedCollection",false,function(b){return b?b.dataIndex:null})},createFilters:function(){var A=this,z=A.filters.getCount(),b=A.getGridPanel(),o=A.createFiltersCollection(),q=b.store.model,w=q.prototype.fields,B,h,g;if(z){g={};A.saveState(null,g)}function C(E,D,F){if(E&&(F||D)){B=w.get(E);h={dataIndex:E,type:(B&&B.type&&B.type.type)||"auto"};
1if(Ext.isObject(D)){Ext.apply(h,D)}o.replace(h)}}Ext.Array.each(A.filterConfigs,function(D){C(D.dataIndex,D)});Ext.Array.each(b.columnManager.getColumns(),function(D){if(D.filterable===false){o.removeAtKey(D.dataIndex)}else{C(D.dataIndex,D.filter,D.filterable)}});A.removeAll();if(o.items){A.initializeFilters(o.items)}if(z){A.applyState(null,g)}},initializeFilters:function(q){var o=this,w=q.length,g,h,b;for(g=0;g<w;g++){h=q[g];if(h){b=o.getFilterClass(h.type);h=h.menu?h:new b(Ext.apply({grid:o.grid},h));o.filters.add(h);Ext.util.Observable.capture(h,o.onStateChange,o)}}},onMenuCreate:function(h,g){var b=this;if(b.filtersNeedReCreating){b.createFilters();b.filtersNeedReCreating=false}g.on({beforeshow:b.onMenuBeforeShow,destroy:b.onMenuDestroy,scope:b})},onMenuDestroy:function(){this.filtersNeedReCreating=true},onMenuBeforeShow:function(o){var h=this,g,b;if(h.showMenu){g=h.menuItem;if(!g||g.isDestroyed){h.createMenuItem(o);g=h.menuItem}b=h.getMenuFilter();if(b){g.setMenu(b.menu,false);g.setChecked(b.active);g.setDisabled(b.disabled===true)}g.setVisible(!!b);h.sep.setVisible(!!b)}},createMenuItem:function(g){var b=this;b.sep=g.add("-");b.menuItem=g.add({checked:false,itemId:"filters",text:b.menuFilterText,listeners:{scope:b,checkchange:b.onCheckChange,beforecheckchange:b.onBeforeCheck}})},getGridPanel:function(){return this.grid},applyState:function(g,q){var o=this,b,h;o.applyingState=true;o.clearFilters();if(q.filters){for(b in q.filters){if(q.filters.hasOwnProperty(b)){h=o.filters.get(b);if(h){h.setValue(q.filters[b]);h.setActive(true)}}}}o.deferredUpdate.cancel();if(o.local){o.reload()}delete o.applyingState;delete q.filters},saveState:function(b,h){var g={};this.filters.each(function(o){if(o.active){g[o.dataIndex]=o.getValue()}});return(h.filters=g)},destroy:function(){var b=this;Ext.destroyMembers(b,"menuItem","sep");b.removeAll();b.clearListeners()},removeAll:function(){if(this.filters){Ext.destroy.apply(Ext,this.filters.items);this.filters.clear()}},bindStore:function(b){var g=this;if(g.store&&g.storeListeners){g.store.un(g.storeListeners)}if(b){g.storeListeners={scope:g};if(g.local){g.storeListeners.load=g.onLoad}else{g.storeListeners["before"+(b.buffered?"prefetch":"load")]=g.onBeforeLoad}b.on(g.storeListeners)}else{delete g.storeListeners}g.store=b},getMenuFilter:function(){var b=this.view.headerCt.getMenu().activeHeader;return b?this.filters.get(b.dataIndex):null},onCheckChange:function(b,g){this.getMenuFilter().setActive(g)},onBeforeCheck:function(b,g){return !g||this.getMenuFilter().isActivatable()},onStateChange:function(o,g){if(o!=="serialize"){var h=this,b=h.getGridPanel();if(g==h.getMenuFilter()){h.menuItem.setChecked(g.active,false)}if((h.autoReload||h.local)&&!h.applyingState){h.deferredUpdate.delay(h.updateBuffer)}h.updateColumnHeadings();if(!h.applyingState){b.saveState()}b.fireEvent("filterupdate",h,g)}},onBeforeLoad:function(b,g){var h;g.params=g.params||{};this.cleanParams(g.params);h=this.buildQuery(this.getFilterData());if(b.getProxy().isSynchronous&&this.hasActiveFilter()){g.filters=[new Ext.util.Filter({filterFn:this.getRecordFilter()})]}Ext.apply(g.params,h)},onLoad:function(b){if(this.filters.length){b.filterBy(this.getRecordFilter())}},onRefresh:function(){this.updateColumnHeadings()},updateColumnHeadings:function(){var b=this,g=b.view.headerCt;if(g){g.items.each(function(o){var h=b.getFilter(o.dataIndex);o[h&&h.active?"addCls":"removeCls"](b.filterCls)})}},reload:function(){var g=this,b=g.view.getStore();if(g.local){b.clearFilter(true);b.filterBy(g.getRecordFilter());b.sort()}else{g.deferredUpdate.cancel();if(b.buffered){b.data.clear()}b.loadPage(1)}},getRecordFilter:function(){var o=[],b,g,h=this.lockingPartner;this.filters.each(function(q){if(q.active){o.push(q)}});if(h){h.filters.each(function(q){if(q.active){o.push(q)}})}b=o.length;return function(q){for(g=0;g<b;
1g++){if(!o[g].validateRecord(q)){return false}}return true}},hasActiveFilter:function(){var b=false;this.filters.each(function(g){if(g.active){b=true;return false}});return b},addFilter:function(b){var w=this,h=w.getGridPanel().columnManager.getColumns(),g,A,q,z,o;for(g=0,A=h.length;g<A;g++){q=h[g];if(q.dataIndex===b.dataIndex){q.filter=b}}if(w.view.headerCt.menu){w.createFilters()}else{w.view.headerCt.getMenu()}for(g=0,z=w.filters.items.length;g<z;g++){o=w.filters.items[g];if(o.dataIndex===b.dataIndex){return o}}},addFilters:function(h){if(h){var g=this,b,o;for(b=0,o=h.length;b<o;b++){g.addFilter(h[b])}}},getFilter:function(b){return this.filters.get(b)},clearFilters:function(){this.filters.each(function(b){b.setActive(false)})},getFilterItems:function(){var b=this;if(b.lockingPartner){return b.filters.items.concat(b.lockingPartner.filters.items)}return b.filters.items},getFilterData:function(){var h=this.getFilterItems(),w=[],A,g,q,z,o,b;for(A=0,g=h.length;A<g;A++){q=h[A];if(q.active){z=[].concat(q.serialize());for(o=0,b=z.length;o<b;o++){w.push({field:q.dataIndex,data:z[o]})}}}return w},buildQuery:function(g){var b={},h,z,A,q,B,o,w=g.length;if(!this.encode){for(h=0;h<w;h++){z=g[h];A=[this.paramPrefix,"[",h,"]"].join("");b[A+"[field]"]=z.field;q=A+"[data]";for(B in z.data){b[[q,"[",B,"]"].join("")]=z.data[B]}}}else{o=[];for(h=0;h<w;h++){z=g[h];o.push(Ext.apply({},{field:z.field},z.data))}if(o.length>0){b[this.paramPrefix]=Ext.JSON.encode(o)}}return b},cleanParams:function(h){if(this.encode){delete h[this.paramPrefix]}else{var g,b;g=new RegExp("^"+this.paramPrefix+"[[0-9]+]");for(b in h){if(g.test(b)){delete h[b]}}}},getFilterClass:function(b){switch(b){case"auto":b="string";break;case"int":case"float":b="numeric";break;case"bool":b="boolean";break}return Ext.ClassManager.getByAlias("gridfilter."+b)}});Ext.define("Adaptive.utils.Theme",{singleton:true,getConnectedTheme:function(g){var b=Adaptive.utils.Config.getJsonConfig(g,"connected_themes");if(b&&Ext.isArray(b)){b=b[0]}return b},getFormThemeData:function(b){var g=Adaptive.utils.Theme.getConnectedTheme(b);if(g){return Client.AppLogic.getThemeData(g.theme_uuid)}if(b.is_digi_theme){return b}return false},getFormIdColumn:function(b){var g=Adaptive.utils.Theme.getConnectedTheme(b);if(g){return g.id_column}if(b.is_digi_theme){return"id"}return false}});Ext.define("Ext.ux.grid.filter.Filter",{extend:Ext.util.Observable,active:false,dataIndex:null,menu:null,updateBuffer:500,constructor:function(b){Ext.apply(this,b);this.addEvents("activate","deactivate","serialize","update");Ext.ux.grid.filter.Filter.superclass.constructor.call(this);this.menu=this.createMenu(b);this.init(b);if(b&&b.value){this.setValue(b.value);this.setActive(b.active!==false,true);delete b.value}},destroy:function(){if(this.menu){this.menu.destroy()}this.clearListeners()},init:Ext.emptyFn,createMenu:function(b){b.plain=true;return Ext.create("Ext.menu.Menu",b)},getValue:Ext.emptyFn,setValue:Ext.emptyFn,isActivatable:function(){return true},getSerialArgs:Ext.emptyFn,validateRecord:function(){return true},serialize:function(){var b=this.getSerialArgs();this.fireEvent("serialize",b,this);return b},fireUpdate:function(){if(this.active){this.fireEvent("update",this)}this.setActive(this.isActivatable())},setActive:function(g,b){if(this.active!=g){this.active=g;if(b!==true){this.fireEvent(g?"activate":"deactivate",this)}}}});Ext.define("Ext.ux.grid.filter.ListFilter",{extend:Ext.ux.grid.filter.Filter,alias:"gridfilter.list",phpMode:false,init:function(b){this.dt=Ext.create("Ext.util.DelayedTask",this.fireUpdate,this)},createMenu:function(b){var g=Ext.create("Ext.ux.grid.menu.ListMenu",b);g.on("checkchange",this.onCheckChange,this);return g},getValue:function(){return this.menu.getSelected()},setValue:function(b){this.menu.setSelected(b);this.fireEvent("update",this)},isActivatable:function(){return this.getValue().length>0},getSerialArgs:function(){return{type:"list",value:this.phpMode?this.getValue().join(","):this.getValue()}},onCheckChange:function(){this.dt.delay(this.updateBuffer)},validateRecord:function(b){var g=this.getValue();return Ext.Array.indexOf(g,b.get(this.dataIndex))>-1}});Ext.define("Adaptive.ux.ListFilterMulti",{extend:Ext.ux.grid.filter.ListFilter,alias:"gridfilter.listmulti",validateRecord:function(b){var g=this.getValue(),o=b.get(this.dataIndex),q=false;if(!o){return false}var h=o.split(",");Ext.each(g,function(w){if(h.indexOf(w)>-1){q=true;return false}});return q},getSerialArgs:function(){return{type:"listmulti",value:this.phpMode?this.getValue().join(","):this.getValue()}}});Ext.define("Adaptive.ux.IntersectFilter",{extend:Ext.ux.grid.filter.Filter,alias:"gridfilter.intersectfilter",validateRecord:function(b){var h=this,g=h.getValue(),o=b.get(h.dataIndex);if(!g||!(g instanceof OpenLayers.Feature)){return false}g.geometry.calculateBounds();return o&&o.geometry.getBounds().intersectsBounds(g.geometry.getBounds())&&o.geometry.intersects(g.geometry)},getValue:function(){return this.value},getWKTValue:function(){var g=this;if(g.value instanceof OpenLayers.Feature){var b=new OpenLayers.Format.WKT();return b.write(g.value)}else{return null}},setValue:function(h){var g=this;if(h instanceof OpenLayers.Feature){g.value=h.clone()}else{var b=new OpenLayers.Format.WKT();g.value=b.read(h)}g.fireEvent("update",this)},isActivatable:function(){return(this.value instanceof OpenLayers.Feature)},getSerialArgs:function(){return{type:"intersectfilter",value:this.getWKTValue()}}});Ext.define("Adaptive.data.proxy.AjaxRead",{extend:Ext.data.proxy.Ajax,alias:"proxy.ajaxread",config:{url:null,usePost:true},paramsAsJson:true,actionMethods:{read:"POST"},headers:{"Content-type":"application/json; charset=utf-8"},reader:{type:"json",root:"d.records",successProperty:"d.success",totalProperty:"d.total"},emptyFilter:{defaultFilter:[],filterColumns:[],greedy:true,sortColumns:[],distinctColumns:[]},pageParam:null,constructor:function(b){var g=this;g.params={};if(!b.url&&!b.api){throw"Cannot create an AjaxRead proxy with no URL"}Ext.apply(g,b);g.callParent(arguments);if(!g.usePost){g.actionMethods.read="GET"}},doRequest:function(h,B,C){var z=this,o=z.buildRequest(h),b=h.params.filter,g=Ext.clone(z.params);g=Ext.merge(g,o.params);function A(D,E){switch(D){case"boolean":return"bool";case"date":return"DateTime";case"numeric":if(E%1!=0){return"Double"}return"Int32";case"string":return"String";case"listmulti":return"listmulti";case"list":return"string[]";default:console.warn("nettype missing translation",D)}}function w(E,D){if(D=="string"){return"LIKE"}else{if(D=="list"){return"ANY"}else{if(D=="listmulti"){return"&&"}}}switch(E){case"gt":return">";case"lt":return"<";default:return"="}}g.filter=C.proxyFilter||z.emptyFilter;if(b){b=Ext.decode(b);b.forEach(function(D){var E=D.value;if(D.type=="string"){E+="%"}g.filter.addFilterColumn({name:D.field,value:E,comparisonOperator:w(D.comparison,D.type),netType:A(D.type,D.value),logicalOperator:"AN
1D"})})}z.lastFilter=g.filter;if(!g.extraParams){g.extraParams=(z.extraParams&&GeoMind.utils.Data.convertObjectToKeyValArray(z.extraParams))||[]}g.limit=h.limit;g.start=(h.page-1)*h.limit;if(z.wrapperObject){var q={};q[z.wrapperObject]=g;g=q}Ext.apply(o,{headers:z.headers,timeout:z.timeout,scope:z,callback:z.createRequestCallback(o,h,B,C),method:z.getMethod(o),jsonData:g,params:{}});Ext.Ajax.request(o);return o},setParams:function(g){var b=this;b.params=Ext.merge(b.params,g)},statics:{getResponse:function(b){var h=b.response,g=h&&h.responseText&&Ext.JSON.decode(h.responseText,true);return g&&(g.d||g)},setFilter:function(g,b){if(b){if(b.greedy===undefined){b.greedy=true}b.defaultFilter=b.defaultFilter||[];b.filterColumns=b.filterColumns||[];b.sortColumns=b.sortColumns||[];b.distinctColumns=b.distinctColumns||[]}g.proxyFilter=b}}});Ext.define("Client.module.map.dataView.grid.Grid",{extend:Client.module.Generic,mixins:[Client.module.map.dataView.grid.GridUtils,Client.module.map.dataView.grid.GridMap,Adaptive.layer.Select,Adaptive.mixins.Notify,Adaptive.mixins.Dataview,Adaptive.mixins.ColumnLang],theme_data:null,idColumn:null,idColumnDataType:null,read_filter:null,layer_record:null,validDataTypes:["boolean","decimal","integer","single","double","text","rich_text","text_area","serial","uuid","foreign_key","date","time","datetime","list","multiselect_list","editable_list","url","uuid[]","dictionary","media","multiselect_dictionary"],serviceUrl:null,serviceMethods:{read:"ReadAny",save:"Save",del:"Delete"},modelClassName:null,mouseStopTimeout:250,granularity:5,mouseIntersectCircleSize:10,ctrlDrawFeature:null,ctrlModifyFeature:null,selectFeatureColor:"#0000ee",dataViewSelectAllHidden:true,constructor:function(b){var o=this;Ext.apply(o,b);o.callParent([b]);o.idColumn=o.theme_data.id_column;if(o.theme_data.data_source_type=="621c5c1c-8c39-435c-9b2c-a826f858d375"){o.idColumn="_ogr_fid"}if(!o.lang){o.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.grid.lang.Standard")}o.columnLang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.ColumnNames");o.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");o.selLang=o.lang.l.langCode;o.features=[];o.selectedFeatures=[];o.isPostgis=false;switch(o.theme_data.data_source_type){case"19e6b756-3bb3-4513-ab35-c47bf0e2b47e":case"77abb6eb-40d6-4854-bcfe-e43d95e27159":o.isPostgis=true;break;default:break}var h=Adaptive.utils.Config.getBooleanConfig(o.theme_data,"disable_filter_by_extent",false);o.filterOnExtentEnabled=o.isPostgis&&o.isSpatial&&!h;o.filterOnExtent=false;o.initialLoad=true;o.groupRoleStore=Client.data.model.Role.getGroupRoleStore(true);o.groupRoleStore.on("load",function(){if(o.grid&&o.grid.view){o.grid.view.refresh()}},{single:true});var g=Adaptive.utils.Config.getConfig(o.theme_data,"clientHooks");if(g){o.hooks=Ext.create(g)}o.performOlSetup();o.createGui()},collectExportFilters:function(){var h=this,g=null,b=h.grid.store.proxy.lastFilter||h.getServerFilter(h.grid.store),z=h.theme_data.data_source_type=="621c5c1c-8c39-435c-9b2c-a826f858d375"||h.theme_data.id_column===h.idColumn?"id":"record_id",q={theme_uuid:h.theme_data.theme_uuid};if(h.selectionStore&&h.selectionStore.count()>0){g=[];h.selectionStore.each(function(A){g.push(A.get(z))})}var o=h.getConfiguredColumns();var w={ids:g,srid:parseInt(h.map.getProjectionObject().proj.srsProjNumber),columnOrder:o,filter:b};h.reportEvent("getServerFilter",q);Ext.merge(w,q.filters);h.applyChildFilters(w);return w},collectSelectedData:function(){var h=this,z=h.grid.getSelectionModel().getSelection(),w=[];if(z.length==0){z=h.grid.getStore().data.items}for(var g=0;g<z.length;g++){var b=z[g].getData();if(b._acl){b._acl=b._acl.map(function(A){return h.groupRoleStore.findRecord("uuid",A).get("name")}).join(", ")}delete b.feature;if(!h.isSpatial){delete b.geom;delete b.geom_wkt}var q=h.getConfiguredColumns();Object.getOwnPropertyNames(b).forEach(function(A){if(A!="geom_wkt"&&!Ext.Array.contains(q,A)){delete b[A]}else{if(Array.isArray(b[A])){b[A]=b[A].toString()}}});w.push(b)}var o={data:w,srid:parseInt(h.map.getProjectionObject().proj.srsProjNumber)};return o},createGui:function(){var L=this,o=GeoMind.utils.DictionaryManager,b=[],g=Adaptive.utils.Config.getJsonConfig(L.theme_data,"parent_themes");var K=0,C=this.theme_data.columns.length;L.columnTypeMap={};L.readColumns=[];for(K;K<C;K++){var h=o.getDictionaryValue("data_column_types",this.theme_data.columns[K].data_type);if(this.validateDataType(h)){var G=this.theme_data.columns[K],q=Client.data.model.ThemeRecord.mapDataType(h),E=G.visible_dataview,D=L.getLangGroupProp(G,"lang_code");if(D&&D!=L.selLang){E=false}
1L.columnTypeMap[G.column_name]=h;if(G.column_name==L.idColumn||G.column_name==L.theme_data.id_column||E==="show_hidden"||E==="show"){var H=function(O,Q){var P={value_formatter:O.value_formatter,data_type:h,tdCls:"a3-datatype-"+h,dataIndex:O.column_name,maxWidth:h==="media"?220:undefined,text:O.name,flex:1,col_def:O,filter:L.getFilter(h,O),hidden:E!=="show",decimals:Adaptive.utils.Config.getConfig(O,"decimals")||2};if(h==="dictionary"||h==="multiselect_dictionary"){P.text=L.getLangNameColumnDict(O,O.name,L.selLang);var N=Adaptive.utils.Config.getConfig(O,"dict_visible_items")||"key";switch(N){case"key":break;case"value":P.dataIndex+="/value";P.sortable=false;break;case"key_value":if(!Q){H(O,true);P.dataIndex+="/value";P.sortable=false}break}}if(h==="foreign_key"){P.dataIndex+="/value"}var R=Adaptive.utils.Config.getConfig(O.config.configs,"custom_grid_column");if(R){h="custom"}switch(h){case"media":case"multiselect_list":case"uuid[]":P.sortable=false;break;default:break}if(h==="media"||(O.value_formatter&&O.value_formatter!="<br>"&&O.value_formatter!="##VALUE##")){if(q=="date"){P.xtype="gridcolumn"}P.renderer=function(V,T,S){var U=T.column;if(!V||!U){return V}return Client.data.model.ThemeRecord.formatColumnValue(V,U.value_formatter,U.data_type,L.formatDate.getString("date_format"),L.formatDate.getString("time_format"),P.decimals,S)}}else{switch(h){case"date":P.format=L.formatDate.getString("date_format");P.xtype="datecolumn";break;case"datetime":P.format=L.formatDate.getString("date_format")+" "+L.formatDate.getString("time_format");P.xtype="datecolumn";break;case"time":P.format=L.formatDate.getString("time_format");P.xtype="datecolumn";break;case"decimal":case"single":case"double":P.xtype="numbercolumn";P.format="0."+Array(parseInt(P.decimals)+1).join("#");break;case"boolean":P.renderer=function(S){if(S){return L.columnLang.getString("yes")}if(S===null){return L.columnLang.getString("bool_null_value",true)||""}return L.columnLang.getString("no")};break;case"url":P.renderer=function(S){return S?'<a href="'+S+'" target="_blank" rel="noreferrer noopener">'+S+"</a>":null};break;case"uuid[]":P.renderer=function(S){return(S||[]).map(function(T){var U=L.groupRoleStore.findRecord("uuid",T);return U?U.get("name"):T}).join(", ")};P.tdCls+=" a3-grid-cell-hover-expand";break;case"text_area":case"rich_text":P.tdCls+=" a3-grid-cell-hover-expand";break;case"custom":P=Ext.create(R,Object.assign({},P,{grid:L}));break}}b.push(P);if(!Q){L.readColumns.push(O.column_name)}};H(G)}}}if(b.length==0){var G=this.theme_data.columns[0];var w={dataIndex:G.column_name,text:G.name,flex:1,editor:null,col_def:G};b.push(w);L.readColumns.push(G.column_name)}var I=Adaptive.utils.Config.getConfig(L.theme_data,"class_column");if(I){var J=L.map.getLegendUrlByThemeUuid(L.theme_data.theme_uuid);if(J){b.push({dataIndex:"class_column",width:30,renderer:function(T,P,O,S,Q,N){var R=(L.theme_data.is_digi_theme?"layer_digi_":"layer_")+L.theme_data.theme_id;return'<div class="valign-middle"><img title="Map symbol" src="'+J+"&RULE="+O.get(I)+'"></div>'},sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true})}}var B=Adaptive.utils.Config.getBooleanConfig(L.theme_data,"disable_media",false);if(L.theme_data.is_digi_theme&&!B){b.push({dataIndex:"media_files",width:50,renderer:function(S,P,O,R,Q,N){if(L.checkIfRecordEditable(O)||O.get("media_files")>0){return'<div class="cursor-pointer valign-middle"><div class="x-action-col-icon icon-media" style="float:left; margin-right:5px" data-qtip="'+L.lang.getString("tooltipShowMedia")+'"></div><div data-qtip="'+L.lang.getString("tooltipMediaCount")+'">'+O.get("media_files")+"</div></div>"}return""},sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,tooltipType:"title",tooltip:L.lang.getString("tooltipShowMedia"),listeners:{click:function(R,S,T,P,O,Q){var N=R.getStore().getAt(T);if(L.checkIfRecordEditable(N)||N.get("media_files")>0){L.openMedia(N)}}}})}var A=Adaptive.utils.Theme.getFormThemeData(L.theme_data);b.push({xtype:"actioncolumn",dataIndex:"form_edit",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,items:[{getClass:function(O,P,N){if((A&&A!==L.theme_data&&A.permissions.admin)||L.checkIfRecordEditable(N)){return"icon-form-edit"}return"icon-form-view"},tooltipType:"title",getTip:function(O,P,N){if(A&&A!==L.theme_data){if(A.permissions.admin||L.checkIfRecordEditable(N)){return L.lang.getString("tooltipEditConnectedForm")+" "+A.name}return L.lang.getString("tooltipShowConnectedForm")+" "+A.name}if(L.checkIfRecordEditable(N)){return L.lang.getString("tooltipEditForm")}return L.lang.getString("tooltipShowForm")},handler:function(O,P){var N=O.getStore().getAt(P);if(((A&&A.is_digi_theme)||L.theme_data.is_digi_theme)&&L.parent.parentController.isModulePresent("av_digi_theme_form")){L.requestOpenRecord(N)}else{L.requestOpenReadOnlyRecord(N)}}}]});if(L.theme_data.is_digi_theme&&!Adaptive.utils.Config.getBooleanConfig(L.theme_data,"disable_delete",false)&&(L.theme_data.permissions.admin||L.theme_data.permissions.write||L.theme_data.permissions.project_write)){b.push({xtype:"actioncolumn",dataIndex:"delete",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,items:[{getClass:function(P,Q,O){var N="icon-delete";if(!L.checkIfRecordEditable(O)){N+=" cursor-default"}return N},tooltipType:"title",tooltip:L.lang.getString("tooltipDelete"),isDisabled:function(O,Q,R,P,N){return !L.checkIfRecordEditable(N)},handler:function(O,P){var N=O.getStore().getAt(P);L.deleteRecord(N)}}]})}if(L.theme_data.spatial_data_type==="no_geom"){if(g&&g.length>0){b.push({xtype:"actioncolumn",dataIndex:"zoom_to_parent",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,tooltipType:"title",filter:L.getFilter("intersectfilter",{column_name:"feature"}),items:[{icon:"resx/icons/client/search_black.png",tooltip:L.lang.getString("tooltipZoomToParent"),scope:L,handler:function(Q,S,P){var O=Q.getStore().getAt(S),R,N;g.forEach(function(U){var T=O.get(U.fk_column);if(T){N=U.theme_uuid;R=T}});if(N){L.getThemeEnvelope(N,R)}}}]})}if(L.theme_data.child_themes&&L.theme_data.child_themes.length>0){b.push({xtype:"actioncolumn",dataIndex:"zoom_to_child",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,tooltipType:"title",filter:L.getFilter("intersectfilter",{column_name:"feature"}),items:[{icon:"resx/icons/client/search_black.png",tooltip:L.lang.getString("tooltipZoomToChild"),scope:L,handler:function(O,Q,N){var P=O.getStore().getAt(Q);L.getChildThemesEnvelope(L.theme_data.theme_uuid,P.get(L.idColumn))},isDisabled:function(O,R,P,Q,N){return !L.theme_data.child_themes.some(function(S){return N.data[S.theme_uuid+"_count"]})}}]})}}if(L.isSpatial){b.push({xtype:"actioncolumn",dataIndex:"zoom_to",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,tooltipType:"title",filter:L.getFilter("intersectfilter",{column_name:"feature"}),items:[{icon:"resx/icons/client/search_black.png",tooltip:this.lang.getString("tooltipZoomTo"),scope:this,handler:function(O,Q,N){var P=O.getStore().getAt(Q);if(L.hooks&&L.hooks.beforeZoomTo){if(L.hooks.beforeZoomTo(L,P)===false){return}}L.readGeometry(P,true)},isDisabled:function(O,R,P,Q,N){if(L.hooks&&L.hooks.beforeZoomToIsDisabled){return L.hooks.beforeZoomToIsDisabled(L,N)}return !N.get("geom_wkt")}}]})}this.modelClassName=Client.data.model.ThemeRecord.getModel(L.theme_data);var M=this.layer_record.get("name");if(L.childrenOf){if(L.childrenOf.name){M+=" "+L.lang.getString("children_of")+" "+L.childrenOf.name+" "+L.childrenOf.id}else{M+=" "+L.lang.getString("children")}if(L.childrenOf.record.get("_historical")){M+=" "+L.lang.getString("historical")}}if(L.filters){M+=" ("+L.lang.getString("filtered")+")";L.applyReadFilters()}var F=[];this.grid=Ext.create("Ext.grid.Panel",{region:"center",emptyText:this.lang.getString("emptyGrid"),store:Ext.create("Ext.data.Store",{model:this.modelClassName,buffered:true,remoteFilter:true,remoteSort:true,sorters:L.sorters||[],pageSize:100,trailingBufferZone:20,leadingBufferZone:30,listeners:{refresh:L.onStoreRefresh,beforeload:L.onStoreBeforeLo
1ad,beforeprefetch:L.onStoreBeforeLoad,load:L.onStoreLoad,scope:this},proxy:{type:"ajaxread",url:this.serviceUrl+"ReadAny",wrapperObject:"request"}}),columns:b,selModel:{pruneRemoved:false},features:[{ftype:"filters",encode:true}],plugins:[{ptype:"bufferedrenderer"}],multiSelect:true,viewConfig:{trackOver:false,enableTextSelection:true},bbar:[{xtype:"checkboxfield",boxLabel:L.lang.getString("cb_filter_on_extent"),checked:L.filterOnExtent,hidden:!L.filterOnExtentEnabled,handler:function(O,N){L.filterOnExtent=N;L.extentFilterActivate(N);L.read()}},"->",{xtype:"tbtext",itemId:"countInfo"}]});L.createSelectionStore();F.push(this.grid);var z=Adaptive.utils.Config.getBooleanConfig(L.theme_data,"hide_dataview_hierarchy",false);if(!z&&((g&&g.length>0)||(L.theme_data.child_themes&&L.theme_data.child_themes.length>0))){Ext.define("DtNavTreeModel",{extend:Ext.data.Model,fields:[{name:"text",type:"string"},{name:"media_files",type:"int"},{name:"has_geom",type:"bool"}]});Ext.data.NodeInterface.decorate("DtNavTreeModel");L.hierarchyStore=Ext.create("Ext.data.TreeStore",{model:"DtNavTreeModel",proxy:{actionMethods:{read:"POST"},type:"ajax",url:"WebServices/client/Dataview.asmx/GetHierarchy",reader:{getData:function(N){return N.d.records},type:"json"},paramsAsJson:true},listeners:{beforeload:function(O){var N=O.getRootNode();N.data.leaf=false},load:function(R){var O=R.getRootNode(),Q=L.grid.getSelectionModel().selected,T=Q.getAt(0),S,N,P;O.expand();if(!T){return}S=T.get("id");N=R.getNodeById(L.theme_data.theme_uuid+"_"+S);P=L.dtNavTree.getSelectionModel();P.select(N,false,true);P.setLastFocused(N)},scope:L},root:{expanded:true,leaf:true}});L.dtNavTree=Ext.create("Ext.tree.Panel",{region:"east",store:L.hierarchyStore,width:350,collapsible:true,split:true,hidden:true,header:false,hideHeaders:true,title:L.lang.getString("show_hierarchy"),rootVisible:false,useArrows:true,listeners:{cellclick:function(Q,P,T,R){if(R.raw.object_id==0){return}var S=R.raw.theme_uuid,V=Client.AppLogic.getThemeData(S),U=R.raw.object_id,N=R.raw.uuid,O=Client.data.model.ThemeRecord.createRecord(V,{id:U,uuid:N});if(T==0){L.requestOpenRecord(O,null,V);return}else{if(T==1&&(R.get("media_files")>0)){L.openMedia(O,V);return}}}},columns:[{xtype:"treecolumn",text:"Task",flex:2,sortable:true,dataIndex:"text"},{text:"MediaCount",width:50,sortable:true,dataIndex:"media_files",renderer:function(P,O,N){if(N.get("media_files")>0){return'<div class="cursor-pointer valign-middle"><div class="x-action-col-icon icon-media" style="float:left; margin-right:5px"></div>'+N.get("media_files")+"</div>"}return""},sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,tooltipType:"title",tooltip:L.lang.getString("tooltipShowMedia")},{xtype:"actioncolumn",dataIndex:"zoom_to",width:30,items:[{tooltip:this.lang.getString("tooltipZoomTo"),scope:this,handler:function(P,Q,O){var N=P.getStore().getAt(Q);L.getThemeEnvelope(N.raw.theme_uuid,N.raw.object_id)},getClass:function(P,N,O){var Q="";if(O.raw.uuid){Q+="a3-user-data-tree_zoomTo"}if(!O.get("has_geom")){Q+=" cursor-default"}return Q},isDisabled:function(O,R,P,Q,N){return !N.get("has_geom")}}]}]});F.push(L.dtNavTree)}this.view=Ext.create("Ext.panel.Panel",{title:M,iconCls:"",closable:Adaptive.utils.Config.getBooleanConfig(L.theme_data,"dataview_closable",true),layout:"border",items:F});this.view.grid_module=this;this.wireUpGridEvents();this.onViewActivate()},applyFilters:function(){var g=this,b=g.grid.filters;b.clearFilters();Ext.each(g.filters,function(o){if(!o.readFilter){var h=b.getFilter(o.dataIndex);if(!h){return}h.setValue(o.data);h.setActive(true)}})},applyReadFilters:function(){var b=this;Ext.each(b.filters,function(g){if(g.readFilter){b.readFilter=g.readFilter}})},updateReadFilters:function(g,b){var h=this;if(g){h.readFilter=g;h.selectionStore.removeAll();h.read()}},onViewActivate:function(){var g=this,b;if(!this.map||this.active){return}Client.AppLogic.dispatchEvent("disableInfoTool");if(g.displayLayer){this.map.addLayer(this.displayLayer)}this.map.layers.forEach(function(h){if(h.name&&h.name.indexOf("GeometryPicker")>=0){this.map.raiseLayer(h,1)}});if(this.ctrlDrawFeature){this.map.addControl(this.ctrlDrawFeature);this.map.addControl(this.ctrlModifyFeature)}this.scheduleFilterChangeNotification();this.wireUpOlEvents();if(g.refreshNavTreeOnActivate){delete g.refreshNavTreeOnActivate;g.hierarchyStore.reload()}if(g.selectionStore){g.selectionStore.each(function(h){feature=g.wktReader.read(h.get("geom_wkt"));
1if(feature){if(g.prj.projCode!=g.map.getProjection()&&!g.is_transformed){feature.geometry.transform(g.prj,g.map.getProjectionObject())}g.features.push(feature);h.set("feature",g.selectFeature(feature,null,true,null,{id:h.get("id")}))}})}this.active=true;if(g.filterOnExtent&&g.map){g.updateExtentFilterTask.delay(100)}g.reportEvent("dataViewGridActivate",{inEvtObj:g.layer_record.theme_data})},onViewDeactivate:function(){var b=this;if(!b.map){return}Client.AppLogic.dispatchEvent("enableInfoTool");if(b.displayLayer){b.map.removeLayer(b.displayLayer)}b.removeSelectLayer();if(b.ctrlDrawFeature){b.map.removeControl(b.ctrlDrawFeature);b.map.removeControl(b.ctrlModifyFeature)}b.scheduleFilterChangeNotification();b.cleanUpOlEvents();b.active=false},validateDataType:function(b){return Ext.Array.contains(this.validDataTypes,b)},getFilter:function(z,o){var b=null;switch(z){case"boolean":b={type:"boolean",defaultValue:null};break;case"serial":case"decimal":case"integer":b={type:"numeric"};break;case"text":b={type:"string"};break;case"date":case"datetime":case"time":b={type:"date"};break;case"list":case"editable_list":case"multiselect_list":var h=[],q=Adaptive.utils.Config.getConfig(o,"list_separator")||",",A=o.raw_dictionary.split(q),B,g;for(B in A){g=A[B].trim();h.push({id:g,text:g})}var w=Ext.create("Ext.data.Store",{fields:["id","text"],data:h});b={type:z=="multiselect_list"?"listmulti":"list",store:w};break;case"intersectfilter":b={type:"intersectfilter"};break}if(b){b.dataIndex=o.column_name}return b},wireUpGridEvents:function(){var b=this;b.view.on("close",b.onViewClose,b);b.view.on("render",b.pullData,b);b.view.on("activate",b.onViewActivate,b);b.view.on("deactivate",b.onViewDeactivate,b);b.grid.on("select",b.onGridItemSelect,b);b.grid.on("deselect",b.onGridItemDeSelect,b);b.grid.on("selectionchange",b.setBbarCount,b);b.grid.on("selectionchange",b.onGridSelectionChange,b);b.grid.on("itemclick",b.onGridItemClick,b);b.grid.store.data.on("pageAdded",b.updateSelectionModel,b);b.grid.getView().on("bodyscroll",b.updateSelectionModel,b)},cleanUpGridEvents:function(){var b=this;b.view.un("close",b.onViewClose,b);b.view.un("render",b.pullData,b);b.view.un("activate",b.onViewActivate,b);b.view.un("deactivate",b.onViewDeactivate,b);b.grid.un("select",b.onGridItemSelect,b);b.grid.un("deselect",b.onGridItemDeSelect,b);b.grid.un("selectionchange",b.setBbarCount,b);b.grid.un("selectionchange",b.onGridSelectionChange,b);b.grid.un("itemclick",b.onGridItemClick,b);b.grid.store.data.un("pageAdded",b.updateSelectionModel,b)},onViewClose:function(){var b=this;this.fireEvent("dataViewGridClose",{theme_uuid:b.dataview_id})},destroy:function(){var b=this;Client.AppLogic.dispatchEvent("enableInfoTool");if(b.ctrlDrawFeature){b.ctrlDrawFeature.destroy();b.ctrlModifyFeature.destroy()}b.scheduleFilterChangeNotification();b.cleanUpGridEvents();b.cleanUpOlEvents();b.removeSelectLayer();b.view.destroy();delete b.view;delete this},pullData:function(){var b=this;if(b.layer_record.dataviewFilter){b.readFilter=b.layer_record.dataviewFilter}b.read()},getConfiguredColumns:function(){var g=this,h=g.readColumns.slice(0),b=Adaptive.utils.Config.getJsonConfig(g.theme_data,"parent_themes");if(g.theme_data.is_digi_theme&&b&&b.length>0){b.forEach(function(o){h.push(o.fk_column)})}return h},getServerFilter:function(b){var h=this,o=new GeoMind.data.DataFilter({defaultFilter:h.readFilter&&h.readFilter.defaultFilter?h.readFilter.defaultFilter.slice():[],filterColumns:h.readFilter&&h.readFilter.filterColumns?h.readFilter.filterColumns.slice():[],secondFilter:h.readFilter&&h.readFilter.secondFilter?h.readFilter.secondFilter.slice():[]}),g;if(h.grid.defaultFilter){h.grid.defaultFilter.forEach(function(q){o.addDefaultFilter(q)})}if(h.grid.secondFilters){h.grid.secondFilters.forEach(function(q){o.addSecondFilter(q)})}o.defaultFilter=(h.filterOnExtent&&h.map)?[h.getExtentFilter()]:[];o.removeAllSortColumns();if(b.sorters.items&&b.sorters.items.length>0){b.sorters.items.forEach(function(q){o.addSortColumn({name:q.property,sortDesc:q.direction=="DESC"})})}return o},applyChildFilters:function(h){var g=this;if(g.childrenOf){var b=!!g.childrenOf.record.get("_historical");h.fk_column=g.childrenOf.column;h.fk_column_id=g.childrenOf.id;if(b){h.history=true;h.parent_version_id=g.childrenOf.record.get("_version_id")}else{h.fk_column=g.childrenOf.column;h.fk_column_id=g.childrenOf.id}}}
1,onStoreBeforeLoad:function(g,b,h){var o=this,z={srid:o.map.getProjectionObject().proj.srsProjNumber,theme_uuid:o.theme_data.theme_uuid,columns:o.getConfiguredColumns(),map_dictionaries:true},w=o.getServerFilter(g),q={theme_uuid:o.theme_data.theme_uuid};o.reportEvent("getServerFilter",q);Ext.merge(z,q.filters);o.applyChildFilters(z);o.grid.getSelectionModel().deselectAll(true);Adaptive.data.proxy.AjaxRead.setFilter(g,w);b.params=z},onStoreLoad:function(h,g,w,o){var q=this,b=w&&h.proxy.reader.jsonData.d;if(w){q.is_transformed=Adaptive.utils.Config.getConfig(b.data,"is_transformed");q.grid.store.unfilteredCount=Adaptive.utils.Config.getConfig(b.data,"unfilteredCount");q.updateEmptyText(null,false);q.updateSelectionModel();q.setBbarCount()}else{q.updateEmptyText(q.lang.getString("on_read_callback_failure")+((b.exception&&b.exception.msg)?"<br/>"+(q.lang.getString("error_msg_lead")+b.exception.msg):""),true)}},reload:function(g){var b=this;b.grid.store.reload({callback:function(){b.grid.view.loadMask.hide();Ext.defer(function(){b.grid.view.refresh()},250);if(g){g()}}})},read:function(){var b=this;while(b.selectedFeatures.length>0){b.unselectFeature(b.selectedFeatures[0])}b.grid.store.removeAll();b.grid.store.loadPage(1);b.initialLoad=false},updateEmptyText:function(o,g){var h=this,b=o||(h.lang.getString("emptyGrid")+((h.filterOnExtent&&h.isPostgis&&h.grid.getStore().unfilteredCount)?"<br/>"+h.lang.getString("remove_extent_filter_lead")+': "'+h.lang.getString("cb_filter_on_extent")+'"':""));h.grid.getView().emptyText='<div class="x-grid-empty">'+b+"</div>";if(g){h.grid.getView().refresh()}},updateSelectionOnFilterAllied:function(){var h=[];var q=0,g=this.selectedFeatures.length;for(q;q<g;q++){var o=this.selectedFeatures[q];var b=true;this.grid.store.each(function(w){if(w.get("feature").id==o.id){b=false;return false}});if(b){h.push(o)}}var q=0,g=h.length;for(q;q<g;q++){this.unselectFeature(h[q])}},onStoreRefresh:function(b,g){if(b.snapshot&&b.snapshot.length!=b.data.length){this.filterApplied=true;this.updateSelectionOnFilterAllied()}else{this.filterApplied=false}this.scheduleFilterChangeNotification();this.setBbarCount()},scheduleFilterChangeNotification:function(){clearTimeout(this.filterChangeNotificationSchedule);var b=this;this.filterChangeNotificationSchedule=setTimeout(function(){b.notifyFilterChange()},250)},notifyFilterChange:function(){this.fireEvent("filterapplied",this.filterApplied)},toggleFilter:function(){if(this.filterApplied){this.grid.filters.clearFilters()}else{Ext.each(this.grid.filters.filters.items,function(o){var g=true;var b=o.getValue();if(typeof(b)==="object"){var h=0;for(k in b){h++}if(h==0){g=false}}o.setActive(g)})}},getLayerStyleMap:function(){var b=new OpenLayers.StyleMap({select_over:new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#00FFFF",fillColor:"#00FFFF"},OpenLayers.Feature.Vector.style.select)),listed:new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#00FF00",fillColor:"#00FF00"},OpenLayers.Feature.Vector.style.select))});return b},selectByAreaTheme:function(b){this.selectByArea(b)},selectByArea:function(g){var h=this,o=Ext.apply({},h.grid.store.proxy.lastFilter||h.getServerFilter(h.grid.store)),b=h.map.getProjectionObject().proj.srsProjNumber;if(!Ext.isArray(g)){g=[g]}o.secondFilter=[];g.forEach(function(q){var w=typeof q=="string"?q:q.geometry.toString();o.addSecondFilter({name:h.theme_data.geom_column,comparisonOperator:"ST_INTERSECTS",value:"SRID="+b+";"+w,netType:"geometry",logicalOperator:"OR"})});this.doIntersectFilter(o)},addToSelectionByArea:function(g){var h=this,o=Ext.apply({},h.grid.store.proxy.lastFilter||h.getServerFilter(h.grid.store)),b=h.map.getProjectionObject().proj.srsProjNumber;o.secondFilter=Ext.Array.clone(o.secondFilter||[]);if(o.secondFilter){o.secondFilter.map(function(q){if(q.name===h.idColumn){q.logicalOperator="OR"}return q})}o.addSecondFilter({name:h.theme_data.geom_column,comparisonOperator:"ST_INTERSECTS",value:"SRID="+b+";"+g.geometry.toString(),netType:"geometry",logicalOperator:"OR"});this.doIntersectFilter(o)},refresh:function(b){var g=this;if(g.grid.store.loading){return}if(!b){g.reload();return}if(b instanceof Client.data.model.search.InternalSearch){g.pullData();return}if(g.childrenOf){if(b.get(g.childrenOf.column)!=g.childrenOf.id){return}}g.reload(function(){if(g.selectionStore){var o=b.get(g.idColumn),q=g.selectionStore.findExact("id",o);if(q>-1){var h=g.selectionStore.getAt(q);if(h.get("geom_wkt")!=b.get("geom_wkt")){g.removeSelection(h.get("feature"));h.set("geom_wkt",b.get("geom_wkt"));
1h.set("feature",g.selectFeature(h.get("geom_wkt"),null,true,null,{id:h.get("id")}))}}}})},refreshAll:function(){var b=this;b.read()},checkIfRecordEditable:function(b){return this.theme_data.is_digi_theme&&(this.theme_data.permissions.admin||b.get("_editable"))},openMedia:function(b,g){var h=this;Client.AppLogic.dispatchEvent("gridItemViewMedia",{record:b,theme_data:g||h.theme_data,isEditable:h.checkIfRecordEditable(b),userCanEditTheme:h.theme_data.editable&&(h.theme_data.permissions.write||h.theme_data.permissions.project_write)})},requestOpenReadOnlyRecord:function(b){this.requestOpenRecord(b,true)},requestOpenRecord:function(b,q,g){var h=this;var o={evtName:"requestShowDigiRecord",evtInitiatingModule:h,evtSuperInitiatingModule:h,evtBroadcastingController:null,callback:Ext.bind(h.openRecord,{scope:h,record:b,theme_data:g||h.theme_data}),data:{record:b,theme_data:g||h.theme_data,readOnly:q||false}};h.dispatchEvent(o,{confirmationRequired:true})},openRecord:function(){var q=this.scope,b=this.record,h=this.theme_data,o=Adaptive.utils.Theme.getFormThemeData(h),g=Adaptive.utils.Theme.getFormIdColumn(h);if(o){q.reportEvent("digiRecordSelected",{record:{id:b.get(g)},theme_data:o,parent:q.childrenOf})}else{h.columns.forEach(function(w){w.visible_editor=w.visible_info,w.editable=false});if(q.dataviewInfoAsPopup){q.reportEvent("themeRecordSelected",{record:b.data,theme_data:h});return}Adaptive.utils.Config.updateConfig(h,"digitheme_geometry_picker","Adaptive.ux.ReadOnlyGeometryPicker");q.reportEvent("digiRecordSelected",{record:b.data,theme_data:h,displayOnly:true})}},deleteRecord:function(b){var h=this;if(h.hooks&&h.hooks.beforeDelete){var g=h.hooks.beforeDelete(b,this.theme_data);if(g!==undefined&&typeof g.then==="function"){g.then(function(){h._promptDeleteRecord(b)},function(){})}else{if(typeof g==="boolean"){if(g){h._promptDeleteRecord(b)}return}else{h._promptDeleteRecord(b)}}}else{h._promptDeleteRecord(b)}},_promptDeleteRecord:function(b){var g=this;Ext.Msg.show({title:g.lang.getString("deleteConfirmTitle"),msg:g.lang.getString("deleteConfirmMsg"),buttons:Ext.Msg.YESNO,fn:function(h){if(h=="yes"){g._deleteRecord(b)}}})},_deleteRecord:function(b){var g=this;g.showLoadMask(g.lang.getString("deleteMsg"));Ext.Ajax.request({url:g.serviceUrl+g.serviceMethods.del,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({theme_uuid:g.theme_data.theme_uuid,id:b.get(g.idColumn)}),success:function(h){h=GeoMind.utils.Ajax.fixResponse(h);if(h.success){if(g.isSpatial&&b.get("feature")){Ext.Array.remove(g.features,b.get("feature"))}g.grid.getSelectionModel().deselect(b);g.layer_record.get("olLayer").redraw(true);Client.AppLogic.dispatchEvent("digiRecordDeleted",{record:b,theme_data:g.theme_data});Client.AppLogic.dispatchEvent("refreshActiveLayers")}else{g.showError(h,g.lang.getString("deleteRecordError"))}g.hideLoadMask()},failure:function(){g.showError(null,g.lang.getString("deleteRecordError"));g.hideLoadMask()}})},createRecord:function(){var b=this;var g={evtName:"digiRecordCreateCustomForm",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:Ext.bind(b.createRecordCallBack,{scope:b}),data:{theme_data:b.theme_data}};b.dispatchEvent(g,{confirmationRequired:true})},createRecordCallBack:function(){var b=this.scope;Client.AppLogic.dispatchEvent("digiRecordCreate",{theme_data:b.theme_data,parent:b.childrenOf})},onGetEnvelopeFailure:function(){var b=this;b.showNotifyError(b.view,b.lang.getString("error_zoom_to"))},displayReadOnlyFormOnSelect:function(){return Adaptive.utils.Config.getBooleanConfig(this.theme_data.config.configs,"displayonselect")},setDataviewFilter:function(b){var g=this;g.readFilter=b;if(g.selectLayer){g.selectLayer.removeAllFeatures()}g.selectionStore.removeAll();g.selectionStore.fireEvent("datachanged",g.selectionStore);g.read()},refreshNavTree:function(){var g=this,b;if(g.dtNavTree&&!g.dtNavTree.isVisible()){return}if(!g.hierarchyStore){return}b=g.grid.getSelectionModel().selected;if(g.active&&b&&b.getCount()>0){g.hierarchyStore.reload()}else{if(b&&b.getCount()==0){g.dtNavTree.hide()}else{g.refreshNavTreeOnActivate=true}}},_onDigiRecordDeleted:function(){this.refreshNavTree()},_onDigiRecordsDeleted:function(){this.refreshNavTree()},_onGetExistingDigitisedObjects:function(){var b=this,g={evtName:"getUserObjects",evtInitiatingModule:b,callback:Ext.bind(b.setDigitisedObjects,this),data:{noFilter:true}};b.dispatchEvent(g)},_onGetExistingMyData:function(){var b=this,g={evtName:"getMyData",evtInitiatingModule:b,callback:Ext.bind(b.setMyData,this),data:{noFilter:true}};b.dispatchEvent(g)},setDigitisedObjects:function(g){var b=this;b.digObjects=g.data.features;if(b.digObjects.length<1){b.reportEvent("deactivateFilterIntersectDigOb
1jBtn")}else{b.reportEvent("activateFilterIntersectDigObjBtn")}},setMyData:function(g){var b=this;b.myDataObjects=g.data.features;if(b.myDataObjects.length<1){b.reportEvent("deactivateFilterIntersectMyData")}else{b.reportEvent("activateFilterIntersectMyData")}},getSelectedIds:function(){var g=this,b=[];if(g.selectionStore){g.selectionStore.each(function(h){b.push(h.get("id"))})}return b},addSelectionToFilter:function(){var b=this;b.setSecondFilter(b.getSelectedIds())},filterByIntersectDigObj:function(){var b=this;b.filterByIntersect(b.digObjects)},filterByIntersectMyData:function(){var b=this;b.filterByIntersect(b.myDataObjects)},filterByIntersect:function(g){var h=this,b=new OpenLayers.Format.WKT(),o=h.getServerFilter(h.grid.store);g.forEach(function(w){var q=h.map.getProjectionObject().proj.srsProjNumber,z="SRID="+q+";"+w.geometry.toString();o.addSecondFilter({name:h.theme_data.geom_column,comparisonOperator:"ST_INTERSECTS",value:z,netType:"geometry",logicalOperator:"OR"})});h.doIntersectFilter(o)},doIntersectFilter:function(w){var g=this,b=g.map.getProjectionObject().proj.srsProjNumber,q={theme_uuid:g.theme_data.theme_uuid,columns:[g.idColumn],filter:w.getFilterObject()},h={theme_uuid:g.theme_data.theme_uuid},o;g.reportEvent("getServerFilter",h);Ext.merge(q,h.filters);g.applyChildFilters(q);g.showLoadMask(g.lang.getString("loadMaskMsg"));Ext.Ajax.request({url:g.serviceUrl+g.serviceMethods.read,method:"POST",jsonData:{request:q},callback:function(A,B,z){o.then(function(D){z=GeoMind.utils.Ajax.fixResponse(z);g.hideLoadMask();if(z.success){var C=z.total;if(g.selectionStore){g.selectionStore.removeAll()}if(C==0){g.showNotifyWarning(g.grid,g.lang.getString("error_select_by_area_no_hits"),10000);g.setSecondFilter([-1])}else{if(C>0){if(g.selectionStore){g.addRecordsToSelectionStore(z.records)}g.setSecondFilter(z.records.map(function(E){return E[g.idColumn]}))}}}else{g.showNotifyError(g.grid,g.lang.getString("error_select_by_area"),5000)}})}});o=new Promise(function(A,z){g.grid.store.removeAll();A()})},createSelectionStore:function(){var b=this;b.selectionStore=Ext.create("Ext.data.Store",{fields:["id","geom_wkt","feature","record_id","_editable"],listeners:{scope:b,add:b.onSelectionStoreAdd,remove:b.onSelectionStoreRemove,clear:b.onSelectionStoreRemoveAll}})}});Ext.define("Client.module.map.dataView.grid.GridUtilsDefault",{onGridItemMouseEnterDefault:function(o,b,q,g,z,h){if(this.view.grid_module.parent.selectActive){return}if(this.duringEdit){return}var w=b.get("feature");if(w){this.unhighlightFeaturesDefault(w.layer);this.highlightFeatureDefault(w)}},onGridItemMouseLeaveDefault:function(o,b,q,g,z,h){if(this.view.grid_module.parent.selectActive){return}if(this.duringEdit){return}var w=b.get("feature");if(w){this.unhighlightFeaturesDefault(w.layer)}},highlightFeatureDefault:function(g){var b=this;b.unhighlightFeaturesDefault();if(g.renderIntent=="select"){b.displayLayer.drawFeature(g,g.layer.styleMap.styles.select_over.defaultStyle)}else{if(b.defaultRenderIntent){b.displayLayer.drawFeature(g,g.layer.styleMap.styles["default"].defaultStyle)}else{b.displayLayer.addFeatures([g])}}b.highlightedFeatures.push(g)},unhighlightFeaturesDefault:function(){var h=this,o=0,b=h.highlightedFeatures.length;for(o;o<b;o++){var g=h.highlightedFeatures[o];if(g.renderIntent!="select_over"&&g.renderIntent!="select"){if(h.defaultRenderIntent&&g.layer){h.displayLayer.drawFeature(g,g.layer.styleMap.styles[h.defaultRenderIntent].defaultStyle)}else{h.displayLayer.removeFeatures([g])}}else{h.displayLayer.drawFeature(g,g.layer.styleMap.styles.select.defaultStyle)}}h.highlightedFeatures=[]},onGridItemSelectDefault:function(o,b,g,h){var q=this;if(this.duringEdit){return}var w=b.get("feature");if(w){this.selectFeatureDefault(w)}},onGridItemDeSelectDefault:function(o,b,g,h){if(this.duringEdit){return}var q=b.get("feature");if(q){this.unselectFeatureDefault(q)}},onMapMouseClickDefault:function(b){var h=this,g;if(h.parent.disableMapSelection){return}Client.AppLogic.dispatchEvent("mapPopupHide");Client.AppLogic.dispatchEvent("disableInfoTool");g=h.findFeature(h.map.getLonLatFromPixel(b.xy));if(g){if(g.renderIntent=="default"||g.renderIntent=="listed"){if(b.ctrlKey||b.shiftKey){h.grid.getSelectionModel().select(g.record,true)}else{h.grid.getSelectionModel().select(g.record)}h.scrollToRecordDefault(g.record)}else{if(b.ctrlKey||b.shiftKey){h.grid.getSelectionModel().deselect(g.record)}else{h.grid.getSelectionModel().deselectAll()}}}else{var o=h.duringEdit;if(!b.ctrlKey||b.shiftKey){if(h.grid.getSelectionModel().getCount()>0){o=true}h.grid.getSelectionModel().deselectAll()}if(!o){Client.AppLogic.dispatchEvent("triggerInfoTool",b)}}},findFeature:function(w){if(!w){return}var A=this,q,z,h,C=A.features.length,B=new OpenLayers.Geometry.Point(w.lon,w.lat),g=new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon(B,A.mouseIntersectCircleSize*A.map.resolution,10,0)),o,b=g.geometry;b.calculateBounds();o=b.getBounds();if(A.lastFoundFeature&&A.lastFoundFeature.geometry&&A.lastFoundFeature.geometry.getBounds().intersectsBounds(o)&&A.lastFoundFeature.geometry.intersects(b)){return A.lastFoundFeature}for(q=0;q<C;q++){z=A.features[q];h=z.geometry.getBounds();if(h.intersectsBounds(o)&&z.geometry.intersects(b)){if(A.filterApplied&&A.grid.store.findBy(function(D){return D.get("feature").id==z.id})==-1){continue}A.lastFoundFeature=z;return z}}},selectFeatureDefault:function(g){var b=this;g.renderIntent="select";if(b.defaultRenderIntent){b.displayLayer.drawFeature(g,g.layer.styleMap.styles.select.defaultStyle)}else{b.displayLayer.addFeatures([g])}b.selectedFeatures.push(g)},unselectFeatureDefault:function(g){var b=this;g.renderIntent=b.defaultRenderIntent||"default";if(b.defaultRenderIntent&&g.layer){b.displayLayer.drawFeature(g,g.layer.styleMap.styles[b.defaultRenderIntent].defaultStyle)}else{b.displayLayer.removeFeatures([g])}b.selectedFeatures.splice(this.selectedFeatures.indexOf(g),1);b.unhighlightFeaturesDefault()},scrollToRecordDefault:function(w,h){var q=this,o=q.grid||q.view,g=o.getView(),b=o.store.indexOf(w);if(g.bufferedRenderer){g.bufferedRenderer.scrollTo(b)}
1else{g.focusRow(b)}if(h){g.highlightItem(g.getNode(w))}}});Ext.define("Client.module.map.dataView.grid.matrikkel.Property",{extend:GeoMind.base.Module,mixins:[Client.module.map.search.agents.matrikkel.Grid,Client.module.map.dataView.grid.GridUtils,Client.module.map.dataView.grid.GridUtilsDefault,Adaptive.mixins.Notify],internal_name:"av_matrikkel_grid",vectorLayer:null,property_data:null,panelTitle:"Property",view:null,lang:null,map:null,mouseStopTimeout:75,cleanTimeout:1500,theme_uuid:null,neighborProperty:"",boundsScaleRatio:2,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.map.dataView.grid.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.performOlSetup();this.createGui();this.selectedFeatures=[];g.doQueryWFSTask=new Ext.util.DelayedTask(g.selectOnMap,g);g.doCleanWFSTask=new Ext.util.DelayedTask(g.cleanWfsLayer,g)},simplifyPolygonFeature:function(B,C){var o=B.geometry.components.length,q=[],C=C||0.5;for(var A=0;A<o;A++){var h=new OpenLayers.Geometry.LinearRing(B.geometry.components[A].components);var z=new OpenLayers.Geometry.LineString(h.components);var w=z.simplify(C);q.push(new OpenLayers.Geometry.LinearRing(w.getVertices()))}var g=new OpenLayers.Geometry.Polygon(q);var b=new OpenLayers.Feature.Vector(g);b.data=B.data;return b},createPropertyHighlightLayer:function(){var b=new OpenLayers.Strategy.Refresh({force:true,active:true});this.propertyHighlightLayer=new OpenLayers.Layer.Vector("WFS_property_highlight",{strategies:[new OpenLayers.Strategy.Fixed(),b],protocol:this.getWFSLayerProtocol(),autoLoad:false,styleMap:this.getLayerStyleMap()})},createPropertyLayer:function(){var b=this;b.propertyLayer=new OpenLayers.Layer.Vector("WFS_property",{styleMap:b.getLayerStyleMap()});b.map.addLayer(b.propertyLayer);b.propertyLayer.events.register("featureout",b,b.propertyLayerFeatureout)},getWFSLayerProtocol:function(){return new OpenLayers.Protocol.WFS.v1_1_0({url:"WebServices/matrikkelWfs.ashx",featureType:"TEIGWFS",featurePrefix:"matrikkel",featureNS:"",srsName:this.map.projection.projCode,headers:{gm_session_id:GeoMind.utils.SessionManager.ss.sessionId,"X-Adaptive-Gui":__guuid__}})},createTemporaryPropertyLayer:function(){var b=new OpenLayers.Strategy.Refresh({force:true,active:true});this.propertyLayerTemp=new OpenLayers.Layer.Vector("WFS_property_temp",{strategies:[new OpenLayers.Strategy.Fixed(),b],protocol:this.getWFSLayerProtocol(),autoLoad:false})},propertyLayerTempLoadend:function(A){var w=this;if(!(A.response&&A.response.features&&A.response.features.length>0)){if(--w.pendingRequests==0){w.hideLoadMask()}return}var C=A.response.features[0],h,B;var z=A.response.features.length;if(z>500){w.failedToManyProperties();w.hideLoadMask();--w.pendingRequests;return false}else{w.showLoadMask();for(B=0;B<z;B++){C=A.response.features[B];h=C.data;if(h==null){continue}var g=w.view.store.findBy(function(D,E){return D.data.TEIGID==h.TEIGID&&D.data.GARDSNR==h.GARDSNR&&D.data.BRUKSNR==h.BRUKSNR&&D.data.FESTENR==h.FESTENR});if(g>-1){w.removePropertyByRecord(w.view.store.getByInternalId(g));continue}var q=C.clone();var b=w.simplifyPolygonFeature(q);b.renderIntent="select";w.propertyLayer.addFeatures(b);var o=Ext.create(w.view.store.model,{KOMMUNENR:b.data.KOMMUNENR,GARDSNR:b.data.GARDSNR,BRUKSNR:b.data.BRUKSNR,FESTENR:b.data.FESTENR,SEKSJONSNR:b.data.SEKSJONSNR,TEIGID:b.data.TEIGID,HOVEDTEIG:b.data.HOVEDTEIG,EIENDOMSTYPE:b.data.EIENDOMSTYPE,AREAL:b.data.AREAL,feature:b});w.view.store.add(o);if(w.propertiesAdded==0&&B==0){w.lastSelectedRec=o;w.view.getSelectionModel().select(o)}}w.propertiesAdded++;if(w.neighborProperty==""&&w.first_run&&w.propertiesToAdd<=w.propertiesAdded){w.zoomToResultExtent();w.first_run=false}w.propertyLayerTemp.removeAllFeatures();w.propertyHighlightLayer.removeAllFeatures();if(--w.pendingRequests==0){w.hideLoadMask()}}},removePropertyByRecord:function(b){var g=this;g.propertyLayer.features.forEach(function(h){if(b.data.TEIGID==h.data.TEIGID){g.propertyLayer.removeFeatures(h)}});Client.AppLogic.dispatchEvent("propertyRemoved");g.view.store.remove(b)},simplifyBeforefeatureadded:function(b){var h=b.features.length,o=[];for(var g=0;g<h;g++){o.push(this.simplifyPolygonFeature(b.features[g]))}b.features=o;return true},propertyHighlightLayerLoadend:function(b){if(!(b.response&&b.response.features&&b.response.features.length>0)){return}var h=this,o=[],g=b.response.features[0];h.view.store.each(function(w,q){if(g.data.TEIGID==w.data.TEIGID){h.scrollToRecord(w,true);var z=w.get("feature");h.propertyHighlightLayer.removeAllFeatures();h.unhighlightFeatures(z.layer);
1h.highlightFeature(z);return false}})},updatePropertyFilter:function(g){var b=[new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"KOMMUNENR",value:g.kommunenr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"GARDSNR",value:g.gardsnr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"BRUKSNR",value:g.bruksnr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"FESTENR",value:g.festenr})];if(g.seksjonsnrSpecified){b.push(new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:"SEKSJONSNR",value:g.seksjonsnr}))}this.propertyLayerTemp.filter=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:b});this.refreshPropertyLayerTemp()},createPointOnMapFilter:function(b){var g=[new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.DWITHIN,property:"FLATE",value:b,distance:1}),new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:"FLATE",value:b})];return new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:g})},highlightProperty:function(b){var g=this;this.propertyHighlightLayer.filter=this.createPointOnMapFilter(b);if(!this.propertyHighlightLayer.map){this.map.addLayer(this.propertyHighlightLayer);this.propertyHighlightLayer.events.register("featureout",this,this.propertyHighlightLayerFeatureout);this.propertyHighlightLayer.events.register("loadend",this,this.propertyHighlightLayerLoadend);this.propertyHighlightLayer.events.register("beforefeaturesadded",this,this.simplifyBeforefeatureadded)}else{this.propertyHighlightLayer.refresh()}g.doCleanWFSTask.delay(g.cleanTimeout,null,g)},propertyHighlightLayerFeatureout:function(b){this.propertyHighlightLayer.removeFeatures(b.feature)},propertyLayerFeatureout:function(b){var h=this;var g=this.view.getSelectionModel().getSelection();if(!(g.length==1&&g[0].get("feature")==b.feature)){h.unhighlightFeature(b.feature)}},performOlSetup:function(){var b=this;b.prj=new OpenLayers.Projection(b.map.projection.projCode);b.wktReader=new OpenLayers.Format.WKT();b.displayLayer=new OpenLayers.Layer.Vector(b._id+"_display",{styleMap:b.getLayerStyleMap()})},removeLayers:function(){var b=this;b.propertyLayer.destroy();b.propertyHighlightLayer.destroy();b.propertyLayerTemp.destroy();delete b.propertyLayer;delete b.propertyHighlightLayer;delete b.propertyLayerTemp},addMapListeners:function(){var b=this;b.map.events.register("mousemove",b,b.onMapMouseMove);if(!b.clickControl){b.clickControl=Adaptive.map.ClickControl.getClickControl(Ext.bind(b.onPropertyClickBefore,b))}b.infoControl=new b.clickControl();b.map.addControl(b.infoControl);b.infoControl.activate()},cleanUpOlEvents:function(){var b=this;if(b.propertyLayerTemp){b.propertyLayerTemp.events.unregister("loadend",b,b.propertyLayerTempLoadend)}if(b.propertyHighlightLayer){b.propertyHighlightLayer.events.un({featureout:b.propertyHighlightLayerFeatureout,loadend:b.propertyHighlightLayerLoadend,beforefeaturesadded:b.simplifyBeforefeatureadded,scope:b})}if(b.propertyLayer){b.propertyLayer.events.unregister("featureout",b,b.propertyLayerFeatureout)}},removeMapListeners:function(){var b=this;b.map.events.un({mousemove:b.onMapMouseMove,scope:b});if(b.infoControl){b.infoControl.deactivate();b.infoControl.destroy()}},onMapMouseMove:function(b){var g=this;if(b.movementX!=0||b.movementY!=0){g.doQueryWFSTask.delay(g.mouseStopTimeout,null,g,[b])}},refreshPropertyLayerTemp:function(){var b=this;b.pendingRequests=(b.pendingRequests||0)+1;if(!b.propertyLayerTemp.map){b.map.addLayer(this.propertyLayerTemp);b.propertyLayerTemp.events.register("loadend",b,b.propertyLayerTempLoadend)}else{b.propertyLayerTemp.refresh()}},onPropertyClickBefore:function(b){var h=this.map.getLonLatFromPixel(b.xy);if(!h){return}var g=new OpenLayers.Geometry.Point(h.lon,h.lat);if(g){var o=this.createPointOnMapFilter(g);this.propertyLayerTemp.filter=o;this.propertiesAdded=0;this.propertiesToAdd=1;this.refreshPropertyLayerTemp()}},lastMapSelectedFeature:null,cleanWfsLayer:function(){var b=this;b.propertyHighlightLayer.removeAllFeatures()},selectOnMap:function(b){var o=this;var h=o.map.getLonLatFromPixel(b.xy);if(!h){return}var g=new OpenLayers.Geometry.Point(h.lon,h.lat);if(g&&!o.intersectsProperty(g)){o.highlightProperty(g)}},intersectsProperty:function(b){var h=this,g=false;h.view.store.each(function(q,o){var w=q.get("feature");g=w.geometry.intersects(b);if(g){h.scrollToRecord(q,true);h.unhighlightFeatures(w.layer);
1h.highlightFeature(w);return false}});return g},createGui:function(){this.panelTitle=this.neighborProperty==""?this.lang.getString("panelTitle"):this.lang.getString("prefixNeighborTitle")+this.neighborProperty;this.view=Ext.create("Ext.grid.Panel",{title:this.panelTitle,closable:true,emptyText:this.lang.getString("emptyGrid"),store:Ext.data.Store({fields:[{name:"KOMMUNENR",type:"string"},{name:"GARDSNR",type:"string"},{name:"BRUKSNR",type:"string"},{name:"FESTENR",type:"string"},{name:"SEKSJONSNR",type:"string"},{name:"TEIGID",type:"int"},{name:"HOVEDTEIG",type:"string"},{name:"EIENDOMSTYPE",type:"string"},{name:"AREAL",type:"float"},{name:"feature",type:"auto"}]}),columns:{items:[{header:"KOMMUNENR",dataIndex:"KOMMUNENR"},{header:"GARDSNR",dataIndex:"GARDSNR",flex:2},{header:"BRUKSNR",dataIndex:"BRUKSNR",flex:2},{header:"FESTENR",dataIndex:"FESTENR",flex:2},{header:"SEKSJONSNR",dataIndex:"SEKSJONSNR",flex:2},{header:"TEIGID",dataIndex:"TEIGID"},{header:"HOVEDTEIG",dataIndex:"HOVEDTEIG",flex:2},{header:"EIENDOMSTYPE",dataIndex:"EIENDOMSTYPE"},{header:"Areal (m<sup>2</sup>)",dataIndex:"AREAL"},{xtype:"actioncolumn",width:50,flex:0,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,items:[{icon:"resx/icons/client/search_black.png",tooltip:this.lang.getString("tooltipZoomToProperty"),tooltipType:"title",scope:this,handler:function(h,q,b){var o=h.getStore().getAt(q);var g=o.get("feature");this.map.zoomToExtent(g.geometry.getBounds().scale(this.boundsScaleRatio))}},{icon:"resx/icons/client/delete.png",tooltip:this.lang.getString("tooltipRemove"),tooltipType:"title",scope:this,handler:function(g,q,b){var o=g.getStore().getAt(q);var h=o.get("TEIGID");this.removePropertyByRecord(o)}}]}],defaults:{flex:3}}});this.view.grid_module=this;this.wireUpGridEvents();this.onViewActivate()},wireUpGridEvents:function(){this.view.on("close",this.onViewClose,this);this.view.on("activate",this.onViewActivate,this);this.view.on("deactivate",this.onViewDeactivate,this);this.view.on("select",this.onGridItemSelect,this);this.view.on("deselect",this.onGridItemDeSelect,this);this.view.on("itemmouseenter",this.onGridItemMouseEnter,this);this.view.on("itemmouseleave",this.onGridItemMouseLeave,this)},cleanUpGridEvents:function(){this.view.un("close",this.onViewClose,this);this.view.un("activate",this.onViewActivate,this);this.view.un("deactivate",this.onViewDeactivate,this);this.view.un("select",this.onGridItemSelect,this);this.view.un("deselect",this.onGridItemDeSelect,this);this.view.un("itemmouseenter",this.onGridItemMouseEnter,this);this.view.un("itemmouseleave",this.onGridItemMouseLeave,this)},onGridItemSelect:function(o,b,g,h){var q=this;if(this.duringEdit){return}var w=b.get("feature");if(w){this.selectFeature(w)}},onGridItemDeSelect:function(o,b,g,h){if(this.duringEdit){return}var q=b.get("feature");if(q){this.unselectFeature(q)}},unselectFeature:function(b){this.selectedFeatures.pop(b);if(b.layer){this.unhighlightFeatures(b.layer);b.layer.drawFeature(b,b.layer.styleMap.styles.select.defaultStyle)}},selectFeature:function(h){var b=h.layer,g=this;if(b){this.selectedFeatures=[];b.drawFeature(h,"select_selected");this.selectedFeatures.push(h);g.lastSelectedRec=g.findRecordByFeature(h)}},findRecordByFeature:function(h){var g=this,b;g.view.store.each(function(q,o){if(h.data.TEIGID==q.data.TEIGID){b=q;return false}});return b},unhighlightFeatures:function(o){var w=this,z=0,g=o.features.length;for(z;z<g;z++){var q=o.features[z];if(q.renderIntent=="select_over"){o.drawFeature(q,o.styleMap.styles.select.defaultStyle)}}var b=w.selectedFeatures.length;for(var h=0;h<b;h++){w.selectFeature(w.selectedFeatures[h])}w.highlightedFeatures=[]},unhighlightFeature:function(g){var b=g.layer;if(b){b.drawFeature(g,"select")}},highlightFeature:function(h){var g=this,b=h.layer;if(b){b.drawFeature(h,"select_over");g.doCleanWFSTask.delay(g.cleanTimeout,null,g)}},createDataArray:function(b){var h=b.length;var o=[];for(var g=0;g<h;g++){o.push(b[g].data)}return o},active:null,hidden:null,onViewActivate:function(){var g=this;if(!g.map){return}Client.AppLogic.dispatchEvent("disableInfoTool");if(g.hidden){g.addMapListeners();g.setLayerVisibility(true);g.hidden=false;g.active=true}if(g.active||g.hidden){if(g.lastSelectedRec){g.view.getSelectionModel().deselectAll();g.view.getSelectionModel().select(g.lastSelectedRec)}return}g.first_run=true;if(!g.propertyLayerTemp){g.createTemporaryPropertyLayer()}if(!g.propertyHighlightLayer){g.createPropertyHighlightLayer()}if(!g.propertyLayer){g.createPropertyLayer()}g.addMapListeners();g.active=true;if(g.view.store.getCount()==0){if(g.property_data){g.propertiesAdded=0;g.propertiesToAdd=g.property_data.length;for(var b=0;b<g.property_data.length;b++){g.updatePropertyFilter(g.property_data[b].matrikkelenhetIdent)}}}else{g.zoomToResultExtent();this.view.getSelectionModel().deselectAll()}},zoomToResultExtent:function(){var g=this,b=g.propertyLayer.getDataExtent();if(b){g.map.zoomToExtent(b.scale(g.boundsScaleRatio))}},setLayerVisibility:function(b){var g=this;g.propertyLayerTemp.setVisibility(b);g.propertyHighlightLayer.setVisibility(b);g.propertyLayer.setVisibility(b)},onViewDeactivate:function(){var b=this;Client.AppLogic.dispatchEvent("enableInfoTool");b.removeMapListeners();b.setLayerVisibility(false);b.hidden=true},onViewClose:function(){this.doQueryWFSTask.cancel();this.doCleanWFSTask.cancel();Client.AppLogic.dispatchEvent("enableInfoTool");this.fireEvent("dataViewGridClose",{theme_uuid:this.theme_uuid});this.destroy()},destroy:function(){this.cleanUpGridEvents();this.removeMapListeners();this.cleanUpOlEvents();this.removeLayers();this.view.destroy();delete this},beforeMapReset:function(b){this.destroy()},getLayerStyleMap:function(){var b=new OpenLayers.StyleMap({select_over:new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#ff8000",fillColor:"#ff8000"},OpenLayers.Feature.Vector.style.select)),select_selected:new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#00FFFF",fillColor:"#00FFFF"},OpenLayers.Feature.Vector.style.select))});return b},collectSelectedData:function(){var o=this.view.getStore().data.items;var h=[];for(var g=0;g<o.length;g++){var b=o[g].getData();delete b.feature;h.push(b)}var q=[];return{data:h,title:this.panelTitle}}
1,filterByIntersectDigObj:function(){var b=this;b.filterByIntersect(b.digObjects)},filterByIntersectMyData:function(){var b=this;b.filterByIntersect(b.myDataOjects)},selectByAreaTheme:function(b){var o=this,h=new OpenLayers.Format.WKT(),g=[];b.forEach(function(q){if(typeof q=="string"){g.push(h.read(q))}});o.filterByIntersect(g)},filterByIntersect:function(b){var g=this;g.propertyLayer.removeAllFeatures();g.propertyLayerTemp.removeAllFeatures();g.propertyHighlightLayer.removeAllFeatures();g.view.store.removeAll();Ext.each(b,function(o,h){g.listIntersectedProperties(o.geometry)})},listIntersectedProperties:function(h){var g=this;g.showLoadMask(g.lang.getString("intersectLoading"));var b=[new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.DWITHIN,property:"FLATE",value:h,distance:1}),new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:"FLATE",value:h})];g.propertyLayerTemp.filter=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:b});g.refreshPropertyLayerTemp()},failedToManyProperties:function(){var b=this;b.showNotifyError(b.view,b.lang.getString("error_intersection"));b.clearProperties()},_onGetExistingDigitisedObjects:function(){var b=this,g={evtName:"getUserObjects",evtInitiatingModule:b,callback:Ext.bind(b.setDigitisedObjects,this),data:{noFilter:true}};b.dispatchEvent(g)},_onGetExistingMyData:function(){var b=this,g={evtName:"getMyData",evtInitiatingModule:b,callback:Ext.bind(b.setMyData,this),data:{noFilter:true}};b.dispatchEvent(g)},setDigitisedObjects:function(g){var b=this;b.digObjects=g.data.features;var h={evtName:(b.digObjects.length<1)?"deactivateFilterIntersectDigObjBtn":"activateFilterIntersectDigObjBtn",evtInitiatingModule:b,data:null};b.dispatchEvent(h)},setMyData:function(g){var b=this;b.myDataOjects=g.data.features;var h={evtName:(b.myDataOjects.length<1)?"deactivateFilterIntersectMyData":"activateFilterIntersectMyData",evtInitiatingModule:b,data:null};b.dispatchEvent(h)},getIntersectPropertyList:function(){var b=this,g={evtName:"getIntersectPropertyList",evtInitiatingModule:b,data:{digObj:b.digObjects}};b.dispatchEvent(g)},selectByArea:function(b){var g=this;g.clearProperties();g.listIntersectedProperties(b.geometry);g.addMapListeners()},clearProperties:function(){var b=this;b.propertyLayer.removeAllFeatures();b.propertyLayerTemp.removeAllFeatures();b.propertyHighlightLayer.removeAllFeatures();b.view.store.removeAll()},onGridItemMouseEnter:function(o,b,q,g,z,h){if(this.view.grid_module.parent.selectActive){return}if(this.duringEdit){return}var w=b.get("feature");if(w){this.unhighlightFeatures(w.layer);this.highlightFeature(w)}},onGridItemMouseLeave:function(o,b,q,g,z,h){if(this.view.grid_module.parent.selectActive){return}if(this.duringEdit){return}var w=b.get("feature");if(w){this.unhighlightFeatures(w.layer)}}});Ext.define("Client.module.map.dataView.lang.DownloadItem",{strings:{downloadItemText:{en:"is getting prepared and will be downloaded when ready",nb:"forberedes og blir lastet ned når den er ferdig"},downloadItemTextFailed:{en:"failed. Please try again",nb:"feilet. Vennligst prøv igjen"},browserNotSupported:{en:"Your browser does not support this functions",nb:"Din nettleser støtter ikke denne funksjonen"}},errCodes:{}});Ext.define("Client.module.map.dataView.DownloadItem",{extend:Ext.container.Container,cls:"a3-notification-panel-info",constructor:function(o){var q=this;Ext.apply(q,o);var h=GeoMind.utils.Url,b=h.getUrlParams(q.downloadUrl),z=Adaptive.utils.Diacritics.removeDiacritics(q.themeName.toLowerCase()),w=q.downloadUrl,g;q.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.lang.DownloadItem");g=b.f.split(".").slice(-1)[0];if(!("download_name" in b)){z=z+"."+g;w=h.setUrlParam(w,"download_name",z);filename=z}else{filename=b.download_name}q.buildGui(filename);q.monitorStatus(w,filename);q.callParent(arguments)},buildGui:function(b){var g=this;g.layout={type:"hbox",align:"middle",padding:"0 4"};g.items=[{xtype:"box",cls:"a3-icon icon-download",width:25},{xtype:"box",itemId:"downloadItemText",html:"<i>"+b+"</i> "+g.lang.getString("downloadItemText"),flex:1,padding:"0 8 0 8"},{xtype:"button",itemId:"downloadItemFailed",iconCls:"icon-remove",hidden:true,handler:function(){g.destroy()}},{xtype:"box",itemId:"downloadItemLoading",cls:"loading-dots",html:"<span></span><span></span><span></span>",margin:0}]},monitorStatus:function(q,b){var h=this,g="WebServices/client/TaskStatus.asmx/MonitorStatus";try{g=__baseurl__.replace(/^http/,"ws")+g;h.updateSocket=new WebSocket(g+"?ids="+h.taskId);h.updateSocket.onmessage=function(z){var w=JSON.parse(z.data);if(w[h.taskId]==="finished"){document.getElementById("file_download_iframe").src=q;h.hide()}else{if(w[h.taskId]==="failed"){h.showFailed(b)}}};h.updateSocket.onopen=function(){h.updateSocket.send("Hello")};h.updateSocket.onclose=function(){delete h.updateSocket;if(h.webSocketError){return}h.destroy()};
1h.updateSocket.onerror=function(){h.webSocketError=true;h.task=Ext.TaskManager.start({run:function(){Ext.Ajax.request({url:"WebServices/client/TaskStatus.asmx/PollStatus",jsonData:{id:h.taskId},callback:function(z,A,w){w=Ext.JSON.decode(w.responseText).d;if(w==="finished"){h.destroy();document.getElementById("file_download_iframe").src=q}else{if(w==="failed"){h.showFailed(b)}}if(w!=="running"){Ext.TaskManager.stop(h.task);h.task=null;delete h.task}}})},interval:5000})}}catch(o){console.warn(o);h.down("[itemId=downloadItemFailed]").setVisible(true);h.down("[itemId=downloadItemLoading]").setVisible(false);h.removeCls("a3-notification-panel-info");h.addCls("a3-notification-panel-error");h.down("[itemId=downloadItemText]").update(h.lang.getString("browserNotSupported"))}},showFailed:function(b){var g=this;g.down("[itemId=downloadItemFailed]").setVisible(true);g.down("[itemId=downloadItemLoading]").setVisible(false);g.removeCls("a3-notification-panel-info");g.addCls("a3-notification-panel-error");g.down("[itemId=downloadItemText]").update("<i>"+b+"</i> "+g.lang.getString("downloadItemTextFailed"))}});Ext.define("Client.module.map.dataView.Exporter",{extend:GeoMind.base.Module,mixins:[Adaptive.utils.LightModule],exportFormats:["SHP","GML","KML","GPX","GeoJSON","XLSX","CSV","HTML","TXT","PDF","RTZ"],exportFormatsNoGpx:["SHP","GML","KML","GeoJSON","XLSX","CSV","HTML","TXT","PDF"],exportFormatsNonSpatial:["XLSX","CSV","HTML","TXT","PDF"],parentChildFormats:{PDF:{langKey:"pdfChild",format:"PDF(child)"}},serviceUrl:"WebServices/client/DataViewExport.asmx/",propertyServiceUrl:"webservices/matrikkel/exporter.asmx/",serviceMethods:{userDataExport:"ExportUserData","export":"Export",propertyExport:"PropertyExport"},lang:null,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.map.dataView.lang.Exporter"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.addEvents(["exportfinished"])},doExport:function(q,z,o,B){var w=this,h=Ext.Object.merge({theme_uuid:q,format:z},o),g=Client.AppLogic.getThemeData(q);if(z==="PDF"||z==="PDF(child)"){var A=Adaptive.utils.Config.getBooleanConfig(g,"allow_multiple_pdf_download",false);if(!A&&(!h.ids||!h.ids.length)){w.fireEvent("exportfinished",{success:false,msgTitle:w.lang.getString("exceptionTitle"),msg:w.lang.getString("exportPdfSelectionRequired")});return}Ext.Ajax.request({url:"WebServices/generic/Printing.asmx/QueueExportThemeDataToPdf",jsonData:{theme_uuid:h.theme_uuid,gui_uuid:__guuid__,ids:h.ids,includeChildren:z==="PDF(child)"},callback:function(D,H,C){var G=H&&GeoMind.utils.Ajax.fixResponse(C);if(G&&G.success){var F=GeoMind.utils.Data.extractConfigObjectByKey(G.data,"printoutFileLocation"),E=GeoMind.utils.Data.extractConfigObjectByKey(G.data,"taskId");w._doExport(E,F,g.name)}else{}}});return}if(z==="RTZ"){if(!(h.ids&&h.ids.length>0)&&!h.filter){w.fireEvent("exportfinished",{success:false,msgTitle:w.lang.getString("exceptionTitle"),msg:w.lang.getString("exportRtzSelectionRequired")});return}Ext.Ajax.request({url:"api/kystverket/routes/QueueRtzDownload",jsonData:{ids:h.ids,filter:h.filter,status:h.status},callback:function(E,H,D){var G=H&&GeoMind.utils.Ajax.fixResponse(D);if(G&&H){var C=G.downloadPath,F=G.taskId,I=G.fileName;w._doExport(F,C,I)}else{}}});return}if(z==="media"){Ext.Ajax.request({url:"WebServices/client/DataViewExport.asmx/ExportMedia",jsonData:{request:h},callback:function(E,H,D){var G=H&&GeoMind.utils.Ajax.fixResponse(D);if(H&&G&&G.success){var C=GeoMind.utils.Data.extractConfigObjectByKey(G.data,"downloadPath"),F=GeoMind.utils.Data.extractConfigObjectByKey(G.data,"taskId"),I=Client.AppLogic.getThemeData(q);w._doExport(F,C,I.name+" media")}else{w.fireEvent("exportfinished",{success:false,msgTitle:w.lang.getString("exceptionTitle"),msg:w.lang.getError(G.exception.code||"server_error")})}}});return}if(this.displayProjection){h.sridTo=this.displayProjection.proj.srsProjNumber}var b=Ext.Ajax.request({timeout:120000,url:(B||this.serviceUrl)+this.serviceMethods["export"],method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{request:h},success:Ext.bind(this.onExportCallbackSuccess,this),failure:Ext.bind(this.onExportCallbackFailure,this)})},doUserDataExport:function(o,h){var g=this;if(!h||h.data.length==0){this.fireEvent("exportfinished",{success:false,msgTitle:this.lang.getString("exceptionTitle"),msg:this.lang.getString("nothingToExport")});return}var b=Ext.Object.merge({format:o},h);Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.userDataExport,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{userDataExportRequest:b},success:Ext.bind(this.onExportCallbackSuccess,this),failure:Ext.bind(this.onExportCallbackFailure,this)})},doPropertyExport:function(w,o,b){var h=this;o.exportEmail=b;if(!o||o.length==0){this.fireEvent("exportfinished",{success:false,msgTitle:this.lang.getString("exceptionTitle"),msg:this.lang.getString("nothingToExport")});return}w=w.toLowerCase();function g(){if(w==="propertyneighborpdf"){Ext.Msg.prompt(h.lang.getString("propertyPromptTitle"),h.lang.getString("propertyPromptLabel"),function(z,A){if(z=="ok"){o.title=A;
1h.doPropertyExportRequest(w,o)}else{this.fireEvent("exportfinished",{success:true})}},h,false,o.title)}else{h.doPropertyExportRequest(w,o)}}var q=(w=="propertydetails"&&o.length>25)||(w=="propertyneighbor"&&o.length>100)||(w=="propertyneighborpdf"&&o.length>100);if(q){Ext.Msg.show({title:this.lang.getString("exportWarningTitle"),msg:this.lang.getString("exportWarning"),buttons:Ext.Msg.YESNO,icon:Ext.Msg.WARNING,closable:false,scope:this,fn:function(z){if(z=="yes"){g()}else{this.fireEvent("exportfinished",{success:false,msgTitle:this.lang.getString("exceptionTitle"),msg:this.lang.getString("exportCanceled")});return}}})}else{g()}},doPropertyExportRequest:function(g,b){Ext.Ajax.request({url:this.propertyServiceUrl+this.serviceMethods.propertyExport,method:"POST",timeout:120000,headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({gui_uuid:__guuid__,format:g,data:b}),success:Ext.bind(this.onPropertyExportCallback,this),failure:Ext.bind(this.onPropertyExportCallback,this)})},onPropertyExportCallback:function(b,h){b=GeoMind.utils.Ajax.fixResponse(b);var g;if(b.success){g={success:true};Ext.Msg.show({title:this.lang.getString("propertyExportTitle"),msg:this.lang.getString("propertyExportMsg"),buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR})}else{g={success:false,msgTitle:this.lang.getString("exceptionTitle"),msg:b.exception?this.lang.getString("callbackFailure_Msg1_part1")+b.exception.msg+"</br>"+this.lang.getString("callbackFailure_Msg1_part2"):this.lang.getString("callbackFailure_Msg2")}}this.fireEvent("propertyexportfinished",g)},onExportCallbackSuccess:function(b,h){b=GeoMind.utils.Ajax.fixResponse(b);var g;if(b.success){g={success:true,url:GeoMind.utils.Data.extractConfigObjectByKey(b.data,"download_url"),featureCount:GeoMind.utils.Data.extractConfigObjectByKey(b.data,"featureCount")}}else{g={success:false,msgTitle:this.lang.getString("exceptionTitle"),msg:b.exception?this.lang.getString("callbackFailure_Msg1_part1")+b.exception.msg+"</br>"+this.lang.getString("callbackFailure_Msg1_part2"):this.lang.getString("callbackFailure_Msg2")}}this.fireEvent("exportfinished",g)},onExportCallbackFailure:function(b){this.fireEvent("exportfinished",{success:false,msgTitle:this.lang.getString("exceptionTitle"),msg:this.lang.getString("callbackFailure_Msg2")})},_doExport:function(b,q,o){var h=this,g=Ext.create("Client.module.map.dataView.DownloadItem",{themeName:o,taskId:b,downloadUrl:q});h.reportEvent("addNotification",{item:g})}});Ext.define("Adaptive.layer.DrawInMap",{addDrawControl:function(b,h){var g=this;g.reportEvent("deactivateDrawControls",{activeCallerId:g._id});if(g.drawControl){g.removeDrawControl()}if(!g.drawingLayer){g.createDrawingLayer()}switch(b.toLowerCase()){case"polygon":g.drawControl=new OpenLayers.Control.DrawFeature(g.drawingLayer,OpenLayers.Handler.Polygon,{controlName:"polygon",stopDown:true,stopUp:true});break;case"point":g.drawControl=new OpenLayers.Control.DrawFeature(g.drawingLayer,OpenLayers.Handler.Point,{controlName:"point"});break;case"line":g.drawControl=new OpenLayers.Control.DrawFeature(g.drawingLayer,OpenLayers.Handler.Path,{controlName:"line"});break;default:throw"Missing control type";break}g.map.addControl(g.drawControl);g.drawControl.activate();if(h){var o=g.map.getViewPortPxFromLonLat(h);g.drawControl.handler.modifyFeature(o,true);g.drawControl.handler.addPoint(o)}g.selectActive=true},removeDrawControl:function(){var b=this;if(b.drawControl){b.drawControl.destroy();delete b.drawControl}if(b.drawingLayer){b.removeDrawingLayer()}},createDrawingLayer:function(){var b=this;if(b.drawingLayer){return}b.drawingLayer=new OpenLayers.Layer.Vector("drawInMap_"+Ext.id(),{styleMap:b.getDrawingLayerStyle()});b.map.addLayer(b.drawingLayer);b.bindDrawingLayerEvents()},removeDrawingLayer:function(){var b=this;b.unbindDrawingLayerEvents();b.drawingLayer.destroy();delete b.drawingLayer},bindDrawingLayerEvents:function(){var b=this;b.drawingLayer.events.register("featureadded",b,b.onFeatureAdded);b.drawingLayer.events.register("beforefeatureadded",b,b.onBeforeFeatureAdded);b.drawingLayer.events.register("sketchmodified",b,b.onSketchModified)},unbindDrawingLayerEvents:function(){var b=this;b.drawingLayer.events.unregister("featureadded",b,b.onFeatureAdded);b.drawingLayer.events.unregister("beforefeatureadded",b,b.onBeforeFeatureAdded);b.drawingLayer.events.unregister("sketchmodified",b,b.onSketchModified)},removeDrawnFeatures:function(){if(this.drawingLayer.features){this.drawingLayer.removeAllFeatures()}},onFeatureAdded:function(b){},onSketchModified:function(b){},onBeforeFeatureAdded:function(b){this.removeDrawnFeatures()},getDrawingLayerStyle:function(){var g=this;var h=new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"blue",strokeWidth:"4",strokeOpacity:"0.5",fillColor:"blue",fillOpacity:"0.2",cursor:"pointer"},OpenLayers.Feature.Vector.style["default"]));var b=new OpenLayers.StyleMap({"default":h,select:h});return b},_onDeactivateDrawControls:function(h){var g=this,b=h.data.activeCallerId;if(b!==g._id&&g.selectActive){g.deactivateSelect()}},deactivateSelect:function(){var b=this;b.removeDrawControl();b.selectActive=false}});Ext.define("Client.module.map.dataView.DataView",{extend:Client.module.Generic,mixins:[Adaptive.layer.DrawInMap,Adaptive.mixins.Notify],internal_name:"av_data_view",dataViews:null,height:null,mapMinHeight:330,gridMinHeight:100,collapsedHeight:25,collapsed:false,serviceUrl:null,exporter:null,shouldDeactivateFor:null,lang:null,parentController:null,statics:{selectionStyle:{fill:true,fillColor:"#00ffd9",pointRadius:10,fillOpacity:0.4,strokeColor:"#00ffd9",strokeOpacity:0.6}},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.dataViews={};if(!g.lang){g.lang="Client.module.map.dataView.lang.Standard"}g.lang=GeoMind.lang.Lang.registerTranslations(g.lang);g.exporter=Ext.create("Client.module.map.dataView.Exporter");g.exporter.on("exportfinished",g.onExportFinished,g);g.exporter.on("propertyexportfinished",g.onPropertyExportFinished,g);g.parentController.registerModule(g.exporter)},buildGui:function(){var b=this;this.height=this.height||this.mapContainer.getHeight()*0.3;this.collapseBtn=Ext.create("Ext.button.Button",{text:this.lang.getString("collapse_btn_text"),tooltip:this.lang.getString("collapse_btn_text_tip"),tooltipType:"title",cls:"a3-dataview_btn_collapse",listeners:{scope:this,click:function(){if(this.collapsed){this.expandInternal();this.requestDataViewExpand()}else{this.collapse()}}}});
1b.exportMenu=Ext.create("Ext.menu.Menu",{items:[],cls:"a3-menu-no-icon",showSeparator:false,listeners:{click:this.onExportFormatClick,scope:this}});b.exportBtn=Ext.create("Ext.button.Button",{text:b.lang.getString("export_btn_text"),tooltip:b.lang.getString("export_btn_text_tip"),tooltipType:"title",cls:"a3-dataview_btn_export",menu:b.exportMenu});b.importBtn=Ext.create("Ext.button.Button",{text:b.lang.getString("import_btn_text"),tooltip:b.lang.getString("import_btn_text_tip"),tooltipType:"title",cls:"a3-dataview_btn_import",handler:function(){var o=b.view.getActiveTab().grid_module,z=Adaptive.utils.Config.getConfig(o.theme_data,"custom_dataview_import"),h,q;var w={theme_data:o.theme_data,constantData:{}};Client.AppLogic.dispatchEvent("getDigiThemeImportConstantData",w);h=w.constantData;q=Ext.create("Adaptive.ux.ReactComponent",{name:z||"digithemeImport",parentController:b.moduleController,props:{digiThemeUuid:o.theme_data.theme_uuid,themeData:o.theme_data,lang:GeoMind.utils.SessionManager.ss.langCode,constantData:h,callback:function(B,A){wnd.close();b.showNotifySuccess(b.view,Ext.String.format(b.lang.getString("imported_n_rows"),B));o.refresh();var C={evtName:"digithemeImportCompleted",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:{rows:B,digithemeUuid:A}};b.dispatchEvent(C,{confirmationRequired:false})},loadingCallback:function(A){wnd.setLoading(A)}}}),wnd=Ext.create("Ext.window.Window",{title:b.lang.getString("import_title"),layout:"fit",width:Math.min(Ext.getBody().getWidth()*0.8,600),height:Math.min(Ext.getBody().getHeight()*0.8,600),items:q});wnd.show()}});b.propertyExportAcos=Ext.widget({xtype:"menuitem",hidden:true,text:b.lang.getString("export_property_list_acos"),format:"propertyneighboracos"});var g=[{text:b.lang.getString("export_pdf"),format:"propertyneighborpdf"},{text:b.lang.getString("export_property_list"),format:"propertyneighbor"},b.propertyExportAcos,{text:b.lang.getString("export_detailed_info"),format:"propertydetails"}];this.propertyExportBtn=Ext.create("Ext.button.Button",{text:this.lang.getString("export_btn_text"),tooltip:this.lang.getString("export_btn_text_tip"),tooltipType:"title",cls:"a3-dataview_btn_export",menu:{items:g,listeners:{click:this.onExportFormatClick,scope:this}}});b.filterByAreaItem=Ext.create("Ext.menu.Item",{text:b.lang.getString("filter_area_item_text"),tooltip:b.lang.getString("filter_area_item_tip"),tooltipType:"title",handler:function(){b.onFilterByAreaItemClick(false)},scope:b});b.addToFilterByAreaItem=Ext.create("Ext.menu.Item",{text:b.lang.getString("add_to_filter_area_item_text"),tooltip:b.lang.getString("add_to_filter_area_item_tip"),tooltipType:"title",handler:function(){b.onFilterByAreaItemClick(true)},scope:b});b.filterByIntersectDigObjItem=Ext.create("Ext.menu.Item",{text:b.lang.getString("intersect_dig_obj_item_txt"),tooltip:b.lang.getString("intersect_dig_obj_item_tip"),tooltipType:"title",handler:b.onFilterByIntersectDigObjItemClick,scope:b});b.filterByIntersectMyData=Ext.create("Ext.menu.Item",{text:b.lang.getString("intersect_my_data"),tooltip:b.lang.getString("intersect_my_data_tip"),tooltipType:"title",handler:b.onFilterByIntersectMyDataClick,scope:b});b.resetFilterItem=Ext.create("Ext.menu.Item",{text:b.lang.getString("reset_filter_item_text"),tooltip:b.lang.getString("reset_filter_item_tip"),tooltipType:"title",handler:b.onResetFilterItemClick,disabled:true,scope:b});b.addSelectionToFilterItem=Ext.create("Ext.menu.Item",{text:b.lang.getString("add_selection_to_filter_btn_text"),tooltip:b.lang.getString("add_selection_to_filter_btn_tip"),handler:b.onAddSelectionToFilterItemClick,scope:b,disabled:true});b.filterMenuHorLine=Ext.create("Ext.menu.Separator");b.filterMenuHorLine2=Ext.create("Ext.menu.Separator");b.filterMenuHorLine3=Ext.create("Ext.menu.Separator");b.batchEditBtn=Ext.create("Ext.menu.Item",{text:b.lang.getString("batch_edit_btn_text_one"),tooltip:b.lang.getString("batch_edit_btn_tip"),handler:b.onBatchEditBtnClick,scope:b});b.batchDeleteBtn=Ext.create("Ext.menu.Item",{text:b.lang.getString("batch_delete_btn_text_one"),tooltip:b.lang.getString("batch_delete_btn_text_tip"),tooltipType:"title",handler:b.onBatchDeleteClick,scope:b});b.statisticBtn=Ext.create("Ext.menu.Item",{text:b.lang.getString("statistic_btn_text_one"),tooltip:b.lang.getString("statistic_btn_text_tip"),tooltipType:"title",handler:b.onStatisticBtnClick,scope:b});b.filterAndSelectionMenu=Ext.create("Ext.menu.Menu",{cls:"a3-menu
1-no-icon",showSeparator:false,items:[b.filterByAreaItem,b.filterByIntersectDigObjItem,b.filterByIntersectMyData,b.filterMenuHorLine,b.addToFilterByAreaItem,b.addSelectionToFilterItem,b.filterMenuHorLine3,b.batchEditBtn,b.batchDeleteBtn,b.statisticBtn,b.filterMenuHorLine2,b.resetFilterItem],listeners:{scope:b,show:b.showFilterAndSelectionMenu}});b.filterAndSelectionBtn=Ext.create("Ext.button.Button",{text:b.lang.getString("filter_btn_text"),tooltip:b.lang.getString("filter_btn_tip"),iconCls:"a3-dataview_filter_btn",menu:b.filterAndSelectionMenu});this.view=Ext.create("Ext.tab.Panel",{cls:"a3-dataview-panel",region:"south",split:{collapseOnDblClick:false},preventHeader:true,height:this.height,maxHeight:this.mapContainer.getHeight()-this.mapMinHeight,tabBar:{items:[{xtype:"tbfill"},{xtype:"tbspacer"},b.filterAndSelectionBtn,b.importBtn,b.exportBtn,b.propertyExportBtn,b.collapseBtn]}});b.propertyExportBtn.hide();b.view.on("remove",b.onRemoveTab,b);b.view.on("beforetabchange",this.onBeforeTabChange,b);b.view.on("resize",this.onViewResize,b);b.map.parentView.on("resize",this.enforceMapHeight,b)},enforcedHidden:null,enforceMapHeight:function(){var b=this;b.view.maxHeight=b.map.parentView.getHeight()-b.mapMinHeight;if(b.view.maxHeight<b.gridMinHeight){b.enforcedHidden=true;b.view.hide()}else{if(b.enforcedHidden&&b.view.hidden){b.enforcedHidden=false;b.view.show()}if(b.view.getHeight()>b.view.maxHeight){b.view.setHeight(b.view.maxHeight)}}},selectActive:null,onFilterByAreaItemClick:function(h){var g=this,b=g.view.getActiveTab().grid_module;g.subscribeToSelectionUpdates(b);
1if(g.selectActive){g.deactivateSelect();return}g.addDrawControl("polygon");g.selectActive=true;if(b&&Ext.isFunction(b.removeMapListeners)){b.removeMapListeners()}g.selectionMode=h?"add":"new"},createNewFeature:function(){var b=this;if(b.selectActive){b.deactivateSelect()}if(b.view.activeTab&&b.view.activeTab.grid_module&&b.view.activeTab.grid_module.createRecord){b.view.activeTab.grid_module.createRecord()}},onFeatureAdded:function(b){var o=this,h=o.view.getActiveTab().grid_module,g=b.feature.clone();if(o.selectActive){if(h&&Ext.isFunction(h.selectByArea)){if(o.selectionMode&&o.selectionMode==="add"){h.addToSelectionByArea(g)}else{h.selectByArea(g)}}Ext.defer(function(){this.deactivateSelect()},1,o)}},deactivateSelect:function(){var b=this;b.removeDrawControl();b.selectActive=false},onResetFilterItemClick:function(){var g=this,b=g.view.activeTab.grid_module.grid,h=g.view.activeTab.grid_module;if(h.selectionStore){h.selectionStore.removeAll()}b.getSelectionModel().deselectAll();b.selectLayer&&b.selectLayer.removeAllFeatures();g.selection_viz_layer&&g.selection_viz_layer.removeAllFeatures();if(b.secondFilters&&b.secondFilters.length>0){b.secondFilters=[]}b.store.sorters.clear();if(!b.filters.hasActiveFilter()){b.store.read();return}b.filters.clearFilters()},firePropertyClicked:function(o,A,g,b,q,z,w,h){if(w.target.getAttribute("role")==="button"){return false}},firePropertySelected:function(h,b){var o=this.scope,g=this.dv;var q={evtName:"matrikkelPropertySelected",evtInitiatingModule:o,evtSuperInitiatingModule:o,evtBroadcastingController:null,callback:null,data:{data:b.data,theme_uuid:g.theme_uuid}};o.dispatchEvent(q,{confirmationRequired:false})},fireMatrikkelGridClose:function(){var b=this,h=false;Object.keys(b.dataViews).forEach(function(o){try{if(b.dataViews[o].view.grid_module.internal_name==="av_matrikkel_grid"){h=true}}catch(q){}});if(h){return}var g={evtName:"matrikkelGridClose",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(g,{confirmationRequired:false})},onExportFormatClick:function(h,D,w){var A=this;if(this.view.activeTab.grid_module.internal_name=="av_matrikkel_grid"){A.showLoadMask();var o="";Ext.Msg.prompt(A.lang.getString("exportPropertyEmailPopupHeading"),A.lang.getString("exportPropertyEmailPopupText"),function(F,E){if(F=="ok"){o=E;if(o==null||o==""){A.onPropertyExportFinished({msgTitle:A.lang.getString("exportPropertyEmailWarningHeader"),msg:A.lang.getString("exportPropertyEmailWarning")})}else{A.exporter.doPropertyExport(D.format,A.view.activeTab.grid_module.collectSelectedData(),o)}}else{A.hideLoadMask()}},A,false,A.loggedInUserEmail)}else{if(this.view.activeTab.grid_module.theme_data.theme_type=="av_user_data"){this.showLoadMask();this.exporter.doUserDataExport(D.format,this.view.activeTab.grid_module.collectSelectedData())}else{if(D.format==="RTZ"){var b,g=300,C=200;var q=Ext.create("Ext.form.ComboBox",{fieldLabel:A.lang.getString("exportRtzStatusLabel"),store:[["orig","Original"],["P","P"],["Q","Q"]],queryMode:"local",editable:false,allowBlank:false,value:"orig"});var B=Ext.create("Ext.Button",{text:A.lang.getString("exportRtzCancelLabel"),handler:function(){b.close()}});var z=Ext.create("Ext.Button",{text:A.lang.getString("exportRtzOkLabel"),handler:function(){var E=A.view.activeTab.grid_module.collectExportFilters();E=Ext.Object.merge({status:q.getValue()},E);A.showLoadMask();A.exporter.doExport(A.view.activeTab.grid_module.theme_data.theme_uuid,D.format,E,A.view.activeTab.grid_module.exportServiceUrl);A.hideLoadMask();b.close()}});var b=Ext.create("Ext.window.Window",{title:A.lang.getString("exportRtzTitle"),width:Math.min(Ext.getBody().getWidth()*0.8,g),height:Math.min(Ext.getBody().getHeight()*0.8,C),modal:true,layout:{type:"vbox",align:"stretch"},bodyPadding:"0 10 5 10",buttons:[z,B],items:[{xtype:"label",text:A.lang.getString("exportRtzText"),margin:"0 0 10 0"}]});b.add([q]);b.showAt((A.mapContainer.getWidth()-g)/2,(A.mapContainer.getHeight()-C)/2)}else{this.exporter.doExport(A.view.activeTab.grid_module.theme_data.theme_uuid,D.format,A.view.activeTab.grid_module.collectExportFilters(),A.view.activeTab.grid_module.exportServiceUrl)}}}},onPropertyExportFinished:function(b){var g=this;g.hideLoadMask();if(!b.success){Ext.Msg.show({title:b.msgTitle,msg:b.msg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},onExportFinished:function(b){var h=this;h.hideLoadMask();if(!b.success){Ext.Msg.show({title:b.msgTitle,msg:b.msg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}else{if(b.featureCount){var g=h.view.activeTab.grid_module.getExportCount();h.showNotify(h.view,Ext.String.format(h.lang.getString("exported_feature_count"),b.featureCount,g),5000,(b.featureCount==g?"a3-success":"a3-warning"))}if(b.url){document.getElementById("file_download_iframe").src=b.url}}},loadMask:null,showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:this.lang.getString("exportLoadMaskMsg")})}this.loadMask.msg=b||this.lang.getString("exportLoadMaskMsg");this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},onViewResize:function(g,b){var h=this;if(h.view.getHeight()>h.collapsedHeight){h.height=h.view.getHeight();if(h.collapsed){h.expandInternal()}}},collapse:function(){this.view.setHeight(this.collapsedHeight);this.collapsed=true;this.collapseBtn.setText(this.lang.getString("expand_btn_text"));this.collapseBtn.setTooltip(this.lang.getString("expand_btn_text_tip"));this.collapseBtn.removeCls("a3-dataview_btn_collapse");this.collapseBtn.addCls("a3-dataview_btn_expand");this.hideBtnTools();this.deactivateSelect();this.view.activeTab.grid_module.onViewDeactivate();var b={evtName:"dataViewCollapsed",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})},expand:function(){var b=this;if(!b.view){b.buildGui();b.map.parentView.add(b.view)}else{b.view.setHeight(b.height)}},expandInternal:function(){var b=this;if(b.collapsed){b.view.setHeight(b.height)}b.collapsed=false;b.collapseBtn.setText(b.lang.getString("collapse_btn_text"));b.collapseBtn.setTooltip(b.lang.getString("collapse_btn_text_tip"));b.collapseBtn.removeCls("a3-dataview_btn_expand");b.collapseBtn.addCls("a3-dataview_btn_collapse");b.showBtnTools(b.view.activeTab.grid_module.internal_name,b.view.activeTab.grid_module);b.view.activeTab.grid_module.onViewActivate()},requestDataViewExpand:function(){var b=this;var g={evtName:"requestDataViewExpand",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:Ext.bind(b.expandInternal,this),data:b.view.activeTab.grid_module};b.dispatchEvent(g,{confirmationRequired:false})},_onToolactivated:function(g){var b=this;if(b.view&&!b.view.hidden&&!this.collapsed&&b.shouldDeactivateFor.indexOf(g.data.internal_name)>-1){b.collapse()}},_onTriggerDataViewCollapse:function(g){var b=this;if(b.view&&!b.view.hidden&&!b.collapsed){b.collapse()}},_onTriggerDataViewExpand:function(g){var b=this,h=g.data&&g.data.id;if(!b.view){b.buildGui();b.map.parentView.add(b.view);b.activateTab(h)}else{if(!b.view.hidden){b.activateTab(h)}}},_onUserDetailsRetrieved:function(g){var b=this,h=GeoMind.utils.Data.extractConfigObjectByKey(g.data.data,"record"),o=b.getUserRole(h,"ef47e12d-b3d1-432c-81e7-87c10526cec0");b.showPropertyExportAcos=!!o;b.loggedInUserEmail=h.email||""},_onSignOutUser:function(){var b=this;b.showPropertyExportAcos=false;b.loggedInUserEmail=""},checkIfDataExportable:function(b){return b&&!Adaptive.utils.Config.getBooleanConfig(b,"dataview_download_disabled",fal
1se)},checkIfDataImport:function(b){var g=this,h=Adaptive.utils.Config.getConfig(b,"custom_dataview_import");if(!!h){return true}if(!g.parentController.isModulePresent("av_digitheme_dataview_import")){return false}if(Adaptive.utils.Config.getBooleanConfig(b,"dataview_import_disabled")){return false}return b&&b.spatial_data_type!=="no_geom"&&b.editable&&(b.permissions.write||b.permissions.project_write)},getExportMenuText:function(h,b){var g=this,o=h;switch(h){case"RTZ":return h;case"PDF":return h;case"PDF(child)":return g.exporter.lang.getString("pdfChild");case"KML":case"GPX":case"GeoJSON":return h+" <small>(EPSG:4326)</small>";case"media":return g.exporter.lang.getString("media");default:return h+" <small>("+b+")</small>"}},getExportMenuTooltip:function(h,b){var g=this;switch(h){case"PDF":case"PDF(child)":case"RTZ":return"";case"KML":case"GPX":case"GeoJSON":return g.lang.getString("exportTooltip").replace("##",h)+" EPSG:4326.";case"media":return g.exporter.lang.getString("media_tooltip");default:return g.lang.getString("exportTooltip").replace("##",h)+" "+b+".<br>"+g.lang.getString("exportTooltipChange")}},setExportMenu:function(D,o,w,G){var B=this,b=[],z=B.displayProjection?B.displayProjection.projCode:map.projection.projCode,C=(D)?(!o||o.indexOf("polygon")===-1?B.exporter.exportFormats:B.exporter.exportFormatsNoGpx):B.exporter.exportFormatsNonSpatial,F=B.exporter.parentChildFormats,h=G.data&&G.data.route_info_type&&G.data.route_info_type=="route_info";for(var q=0;q<C.length;q++){var E=C[q];if(E=="RTZ"&&!h){continue}b.push({text:B.getExportMenuText(E,z),format:E,tooltip:B.getExportMenuTooltip(E,z),tooltipType:"qtip"});if(w&&E in F){var g=F[E];b.push({text:B.getExportMenuText(g.format,z),format:g.format,tooltip:B.getExportMenuTooltip(g.format,z),tooltipType:"qtip"})}}var A=!!G.editable&&(!Adaptive.utils.Config.getBooleanConfig(G,"disable_media",true)||G.columns.findIndex(function(H){return H.data_type==="76c2a3d6-4e46-4d23-b444-256fc2c8bd5a"})!==-1);if(A){b.push({text:B.getExportMenuText("media"),format:"media",tooltip:B.getExportMenuTooltip("media"),tooltipType:"qtip"})}B.exportMenu.removeAll();B.exportMenu.add(b)},_onDataviewFilterUpdate:function(b){Ext.Object.each(this.dataViews,function(h,g){if(h.indexOf(b.data.theme_uuid)!==-1&&Ext.isFunction(g.setDataviewFilter)){g.setDataviewFilter(b.data.dataviewFilter)}})},_onSetNewProjection:function(g){var b=this;b.displayProjection=g.data.proj;if(b.exporter){b.exporter.displayProjection=b.displayProjection}if(b.exportMenu){b.exportMenu.items.each(function(h){h.setText(b.getExportMenuText(h.format,b.displayProjection.projCode));h.setTooltip(b.getExportMenuTooltip(h.format,b.displayProjection.projCode))})}},_onDataViewRequest:function(o){var h=this,b=o.data.record||Client.AppLogic.getThemeLayerRecord(o.data.theme_uuid),z=o.data.childrenOf,A=Adaptive.utils.Config.getThemeData(b),w=A&&A.theme_uuid||b.id,g=o.data.filters,q=o.data.sorters;if(g){w+="_filtered"}if(z){w+="_childrenOf_"+z.column+"_"+z.id;if(z.record.get("_historical")){w+="_historical"}}if(!h.dataViews[w]){if(A&&b.get){A.name=b.get("name");A.description=b.get("description")}if(!h.createDataView(b,A,g,z,q)){return}}h.activateTab(w,g);h.requestDataViewExpand();if(o.data.createNew){h.createNewFeature()}},_onDataViewDestroy:function(h){var g=this,b=h.data.themes;if(!b){return}if(!Array.isArray(b)){b=[b]}b.forEach(function(o){g.onDataViewClose({theme_uuid:o})})},activateTab:function(q,h){var g=this,b=q&&g.dataViews[q],o=b&&b.view.grid_module;if(g.selectByThemeMenuItems){g.selectByThemeMenuItems.forEach(function(w){w.destroy()})}if(b){if(h){b.filters=h;b.applyFilters()}g.view.setActiveTab(b.view);if(g.collapsed){g.expandInternal();g.requestDataViewExpand()}}},createDataView:function(q,B,g,A,w){var z=this,b,h;if(!z.view){z.buildGui();z.map.parentView.add(z.view)}if(B&&B.data&&B.data.custom_dataview===true){return}if(B){if(B.theme_type=="av_matrikkel"){var C=GeoMind.utils.Data.extractConfigObjectByKey(q.get("config").configs,"property_data");b=Ext.create("Client.module.map.dataView.grid.matrikkel.Property",{property_data:C,theme_uuid:B.theme_uuid,neighborProperty:B.neighborProperty?B.neighborProperty:"",map:z.map,parent:z});z.parentController.registerModule(b);h=b.view.id=B.theme_uuid;b.view.mon(b.view,"close",z.fireMatrikkelGridClose,z);b.view.mon(b.view,"select",z.firePropertySelected,{scope:z,dv:b});b.view.mon(b.view,"beforecellclick",z.firePropertyClicked,z)}else{if(B.theme_type=="av_user_data"){b=Ext.create("Client.module.map.dataView.grid.userData.UserData",{layer_record:q,data:q.layer.features,title:q.layer.featureInfoLayerTitle||q.layer.name,map:z.map,parent:z,dataview_id:B.theme_uuid});h=b.view.id=B.theme_uuid}else{var o=Adaptive.utils.Config.getJsonConfig(B,"dataview_initial_sort");if(!B.columns||B.columns.length==0){return}h=B.theme_uuid;if(A){h+="_childrenOf_"+A.column+"_"+A.id;if(A.record.get("_historical")){h+="_historical"}}if(g){h+="_filtered"}if(!w&&o){w=o}b=Ext.create("Client.module.map.dataView.grid.Grid",{layer_record:q,filters:g,theme_data:B,childrenOf:A,serviceUrl:z.serviceUrl,map:z.map,parent:z,dataview_id:h,defaultZoomLevel:z.defaultZoomLevel,dataviewInfoAsPopup:z.dataviewInfoAsPopup,isSpatial:(B.spatial_data_type!=="no_geom"),sorters:w});z.parentController.registerModule(b);b.selectionStore.mon(b.selectionStore,"datachanged",z.onSelectionStoreDataChanged,z);b.grid.store.mon(b.grid.store,"load",z.onGridStoreDataLoad,z)}}b.mon(b,"dataViewGridClose",z.onDataViewClose,z)}else{if(q.view){b={view:q.view};h=q.id;b.view.grid_module.parent=z;b.view.grid_module.mon(b.view.grid_module,"dataViewGridClose",z.onDataViewClose,z)}}z.view.add(b.view);b.view.tab.mon(b.view.tab,"click",z.onTabClick,z);z.dataViews[h]=b;return b},onBeforeTabChange:function(o,b,h,g){if(b.grid_module.internal_name=="av_matrikkel_grid"){this.showBtnTools("av_matrikkel_grid",b.grid_module)}else{this.showBtnTools("default",b.grid_module)}this.addThemeSelectionFilter(b.grid_module)},onRemoveTab:function(){var h=this,b=h.view.getActiveTab(),g=b&&b.grid_module;if(g){h.addThemeSelectionFilter(g)}},addThemeSelectionFilter:function(b){var g=this;
1g.selectByThemeMenuItems&&g.selectByThemeMenuItems.forEach(function(h){g.filterAndSelectionMenu.remove(h)});g.selectByThemeMenuItems=[];if((!b.isPostgis||!b.isSpatial)&&b.internal_name!=="av_matrikkel_grid"){return}Ext.iterate(g.dataViews,function(q,h){if(b==h){return}if(h.internal_name=="av_matrikkel_grid"){if(h.propertyLayer.features.length==0){return}}else{if(!h.isSpatial){return}if(!h.selectionStore){return}if(h.selectionStore.data.items.length==0){return}}var o=Ext.create("Ext.menu.Item",{text:g.lang.getString("themeSelection_prefix")+h.view.title,tooltip:g.lang.getString("themeSelection_tip"),handler:g.onThemeFilterItemClick,dataview:h,scope:g});g.filterAndSelectionMenu.insert(3,o);g.selectByThemeMenuItems.push(o)})},showBtnTools:function(g,b){var h=this;h.hideBtnTools();h.removeSelectionVizLayer();switch(g){case"av_matrikkel_grid":h.propertyExportBtn.setVisible(h.parentController.isModulePresent("av_search_matrikkel_property"));h.propertyExportAcos.setVisible(h.showPropertyExportAcos);h.filterAndSelectionBtn.show();h.filterByAreaItem.show();if(h.parentController.isModulePresent("av_digitised_objects")||h.parentController.isModulePresent("av_digitised_objects_pro")){h.filterByIntersectDigObjItem.show();h.filterByIntersectDigObjItem.disable()}if(h.parentController.isModulePresent("av_user_data")){h.filterByIntersectMyData.show();h.filterByIntersectMyData.disable()}h.getDigitisedObjects();break;case"elevation_profile":break;default:if(h.checkIfDataExportable(b.theme_data)){h.setExportMenu(b.isSpatial,b.theme_data.spatial_data_type,!!b.theme_data.child_themes,b.theme_data);h.exportBtn.show()}if(h.checkIfDataImport(b.theme_data)){h.importBtn.show()}if(b.isPostgis){if(b.isSpatial){if(h.parentController.isModulePresent("av_digitised_objects")||h.parentController.isModulePresent("av_digitised_objects_pro")){h.filterByIntersectDigObjItem.show();h.filterByIntersectDigObjItem.disable()}if(h.parentController.isModulePresent("av_user_data")){h.filterByIntersectMyData.show();h.filterByIntersectMyData.disable()}h.addToFilterByAreaItem.show();if((!h.selection_viz_layer||!h.selection_viz_layer.features.length)||!b.selectionStore.data.items.length){h.addToFilterByAreaItem.disable()}h.addSelectionToFilterItem.show();h.filterByAreaItem.show();h.resetFilterItem.show();h.filterMenuHorLine.show();h.filterMenuHorLine2.show();h.getDigitisedObjects();h.filterAndSelectionBtn.show();if(h.isVizLayerEnabled(b.theme_data)){h.addSelectionVizLayer()}}if(b.batchOperationsAllowed&&b.batchOperationsAllowed()){if(h.isBatchEditEnabled(b.theme_data)){if(b.isSpatial){h.filterMenuHorLine3.show()}h.batchEditBtn.show();h.batchEditBtn.setDisabled(!b.canDoBatchOperations());h.filterAndSelectionBtn.show()}if(h.isBatchDeleteEnabled(b.theme_data)){if(b.isSpatial){h.filterMenuHorLine3.show()}h.batchDeleteBtn.show();h.batchDeleteBtn.setDisabled(!b.canDoBatchOperations());h.filterAndSelectionBtn.show()}}if(h.isStatisticEnabled(b.theme_data)){h.statisticBtn.show()}}break}},hideBtnTools:function(){var b=this;b.propertyExportBtn.hide();b.exportBtn.hide();b.importBtn.hide();b.filterByAreaItem.hide();b.filterAndSelectionBtn.hide();b.filterByIntersectDigObjItem.hide();b.filterByIntersectMyData.hide();b.addSelectionToFilterItem.hide();b.addToFilterByAreaItem.hide();b.resetFilterItem.hide();b.filterMenuHorLine.hide();b.filterMenuHorLine2.hide();b.filterMenuHorLine3.hide();b.batchDeleteBtn.hide();b.batchEditBtn.hide();b.statisticBtn.hide()},onTabClick:function(b){var g=this;if(g.collapsed||!b.active){g.requestDataViewExpand()}},onDataViewClose:function(h){var b=this.dataViews[h.theme_uuid];if(!b){return}if(b instanceof Client.module.map.dataView.grid.Grid){this.parentController.unregisterModule(b);b.destroy()}else{if(b instanceof Client.module.map.dataView.grid.matrikkel.Property){this.parentController.unregisterModule(b)}}delete this.dataViews[h.theme_uuid];this.removeSelectionVizLayer();var g=0;for(k in this.dataViews){g++;break}if(g===0){this.collapsed=false;this.map.parentView.remove(this.view);this.map.parentView.un("resize",this.enforceMapHeight,this);this.view.destroy();this.deactivateSelect();delete this.view;if(this.loadMask){this.loadMask.destroy()}delete this.loadMask}}
1,_setActive:function(b){if(!b){for(dv in this.dataViews){this.dataViews[dv].view.close()}}},_onRefreshActiveLayers:function(g){var b=this,h=g.data;Object.keys(this.dataViews).forEach(function(w){var q=b.dataViews[w],o=q.theme_data&&q.theme_data.theme_uuid;if(h&&h.theme_uuids&&(!o||h.theme_uuids.indexOf(o)===-1)){return}if(Ext.isFunction(q.refresh)){q.refresh()}})},_onThemeDataUpdated:function(b){Ext.Object.each(this.dataViews,function(h,g){if(h.indexOf(b.data.theme_uuid)!==-1&&Ext.isFunction(g.refresh)){g.refresh(b.data.record)}if(g.refreshNavTree){g.refreshNavTree()}})},_onEnableDataviewMapSelection:function(b){this.disableMapSelection=false},_onDisableDataviewMapSelection:function(b){this.disableMapSelection=true},_onActivateFilterIntersectDigObjBtn:function(b){this.filterByIntersectDigObjItem.enable()},_onDeactivateFilterIntersectDigObjBtn:function(b){this.filterByIntersectDigObjItem.disable()},_onActivateFilterIntersectMyData:function(b){this.filterByIntersectMyData.enable()},_onDeactivateFilterIntersectMyData:function(b){this.filterByIntersectMyData.disable()},showFilterAndSelectionMenu:function(){var g=this;if(g.view.activeTab.grid_module&&g.view.activeTab.grid_module.selectionStore&&g.view.activeTab.grid_module.getExportCount){var b=g.view.activeTab.grid_module.getExportCount();if(b===1){g.batchEditBtn.setText(g.lang.getString("batch_edit_btn_text_one"));g.batchDeleteBtn.setText(g.lang.getString("batch_delete_btn_text_one"));g.statisticBtn.setText(g.lang.getString("statistic_btn_text_one"))}else{g.batchEditBtn.setText(g.lang.getString("batch_edit_btn_text_many").replace("{0}",b));g.batchDeleteBtn.setText(g.lang.getString("batch_delete_btn_text_many").replace("{0}",b));g.statisticBtn.setText(g.lang.getString("statistic_btn_text_many").replace("{0}",b))}}this.reportEvent("getExistingMyData")},getDigitisedObjects:function(){this.reportEvent("getExistingDigitisedObjects")},displayAddFromMapBtn:function(b){return b&&Adaptive.utils.Config.getBooleanConfig(b.config.configs,"melding")},isBatchEditEnabled:function(b){return b&&Adaptive.utils.Config.getBooleanConfig(b.config.configs,"batch_edit_enabled")},isBatchDeleteEnabled:function(b){return b&&Adaptive.utils.Config.getBooleanConfig(b.config.configs,"batch_delete_enabled")},isStatisticEnabled:function(b){return b&&Adaptive.utils.Config.getBooleanConfig(b.config.configs,"statistic_enabled")},isVizLayerEnabled:function(b){return b&&Adaptive.utils.Config.getBooleanConfig(b.config.configs,"viz_layer_enabled")},onSelectionStoreDataChanged:function(b){var q=this,w=b.count(),h=q.view.activeTab&&q.view.activeTab.grid_module&&q.view.activeTab.grid_module.grid,o=(h&&h.secondFilters)||[],g=q.view.getActiveTab().grid_module;if((q.selection_viz_layer&&q.selection_viz_layer.features.length>0)||w>0||o.length>0){q.addToFilterByAreaItem.enable();q.resetFilterItem.enable()}else{q.addToFilterByAreaItem.disable();q.resetFilterItem.disable()}q.addSelectionToFilterItem.setDisabled(!w);if(q.isBatchEditEnabled(g.theme_data)&&g.canDoBatchOperations){q.batchEditBtn.setDisabled(!g.canDoBatchOperations());q.batchDeleteBtn.setDisabled(!g.canDoBatchOperations())}if(!q.isStatisticEnabled(g.theme_data)){q.statisticBtn.setDisabled()}},onGridStoreDataLoad:function(g,b){var o=this,h=o.view.getActiveTab().grid_module;if(o.isBatchEditEnabled(h.theme_data)&&h.canDoBatchOperations){o.batchEditBtn.setDisabled(!h.canDoBatchOperations());o.batchDeleteBtn.setDisabled(!h.canDoBatchOperations())}if(h.getExportCount){o.exportBtn.setDisabled(!(h.getExportCount()>0))}if(o.isStatisticEnabled(h.theme_data)){o.statisticBtn.setVisible(true)}},addFeaturesToSelectionVizLayer:function(b){me=this;if(!me.selection_viz_layer){return}me.selection_viz_layer.removeAllFeatures();me.selection_viz_layer.addFeatures(b)},onAddSelectionToFilterItemClick:function(){var g=this,b=g.view.getActiveTab().grid_module;if(b&&Ext.isFunction(b.addSelectionToFilter)){g.updateSelectionVisualization();b.addSelectionToFilter()}},updateSelectionVisualization:function(){var q=this,h=q.view.getActiveTab().grid_module;if(!q.selection_viz_layer){return}var b=[];q.selection_viz_layer.metadata.current_theme_uuid=h.layer_record.theme_data.theme_uuid;for(var g=0;g<h.selectionStore.data.items.length;g++){var o=h.selectionStore.data.items[g];b.push(o.data.feature.clone())}q.addFeaturesToSelectionVizLayer(b)},removeFeatureFromVizLayer:function(g){var h=this,b=[];if(h.selection_viz_layer){g.forEach(function(q){var o=h.selection_viz_layer.getFeaturesByAttribute("id",q);if(o&&o[0]){b.push(o[0])}});h.selection_viz_layer.destroyFeatures(b)}}
1,onFilterByIntersectDigObjItemClick:function(){var g=this,b=g.view.getActiveTab().grid_module;g.subscribeToSelectionUpdates(b);if(b&&Ext.isFunction(b.filterByIntersectDigObj)){b.filterByIntersectDigObj.call(b)}},onFilterByIntersectMyDataClick:function(){var g=this,b=g.view.getActiveTab().grid_module;g.subscribeToSelectionUpdates(b);if(b&&Ext.isFunction(b.filterByIntersectMyData)){b.filterByIntersectMyData.call(b)}},subscribeToSelectionUpdates:function(b){var h=this;if(b.selectionStore){var g=b.selectionStore.addListener("datachanged",function(o){if(b.selectionStore.data.items.length>0){h.updateSelectionVisualization();Ext.destroy(g)}},h,{destroyable:true})}},addSelectionVizLayer:function(){var b=this;if(!b.selection_viz_layer){b.selection_viz_layer=new OpenLayers.Layer.Vector("selection_viz_layer",{style:Client.module.map.dataView.DataView.selectionStyle});b.map.addLayer(b.selection_viz_layer)}},removeSelectionVizLayer:function(){var b=this;if(b.selection_viz_layer){b.selection_viz_layer.destroy();b.selection_viz_layer=null}},afterMapReset:function(){var b=this;b.removeSelectionVizLayer()},onThemeFilterItemClick:function(h){var o=this,g=o.view.getActiveTab().grid_module,b=h.dataview;o.selection_viz_layer&&o.selection_viz_layer.removeAllFeatures();o.subscribeToSelectionUpdates(g);g.selectByAreaTheme(b.internal_name=="av_matrikkel_grid"?b.propertyLayer.features:b.selectionStore.data.items.map(function(q){return q.get("geom_wkt")}))},onBatchEditBtnClick:function(){var h=this,g=h.view.activeTab.grid_module.collectExportFilters(),b=h.view.activeTab.grid_module.theme_data;h.reportEvent("requestBatchEdit",{ids:g.ids,filter:g.filter,filter_id:g.filter_id,theme_data:b,userCanEditTheme:b.editable&&b.permissions.write})},onBatchDeleteClick:function(){var o=this,h=o.view.activeTab.grid_module.collectExportFilters(),g=o.view.activeTab.grid_module,b=g.theme_data;o.reportEvent("requestBatchDelete",{ids:h.ids,filter:h.filter,filter_id:h.filter_id,theme_data:b,userCanEditTheme:b.editable&&b.permissions.write})},onStatisticBtnClick:function(){var h=this,g=h.view.activeTab.grid_module.collectExportFilters(),b=h.view.activeTab.grid_module.theme_data;
1h.reportEvent("requestDoStatistic",{ids:g.ids,filter:g.filter,filter_id:g.filter_id,theme_data:b})},_onShowDataViewLoadMask:function(b){var g=b.data.msg;this.showLoadMask(g)},_onHideDataViewLoadMask:function(){this.hideLoadMask()},_onStatisticSuccess:function(b){this.showNotifySuccess(this.view,b.data.msg)},_onStatisticFailure:function(b){this.showNotifyError(this.view,b.data.msg)},_onBatchSaveSuccess:function(b){this.showNotifySuccess(this.view,b.data.msg)},_onBatchOperationFailure:function(b){this.showNotifyError(this.view,b.data.msg)},_onBatchDeleteSuccess:function(o){var h=this,g=o.data.ids,b=h.view.activeTab.grid_module;Client.AppLogic.dispatchEvent("digiRecordsDeleted",{ids:g,theme_data:b.theme_data});Client.AppLogic.dispatchEvent("refreshActiveLayers");b.selectionStoreRemoveByIds(g);h.removeFeatureFromVizLayer(g)},_onDigiRecordDeleted:function(o){var h=this,b=o.data.record,g=o.data.theme_data;var q=b.get(g.id_column);h.removeFeatureFromVizLayer([q])}});Ext.define("Client.module.map.info.MapInput",{extend:Client.module.Generic,disableOnce:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["infoClicked"])},onInfoClicked:function(b){var g=this;if(!g.disabled){g.infoClicked(b)}if(g.disableOnce){g.disabled=false;g.disableOnce=false}},infoClicked:function(b){var o=this,g=o.map.getLonLatFromPixel(b.xy),q=o.map.getProjection();var h={evt:b,local:g,mapProjection:o.map.getProjectionObject(),displayProjection:o.displayProjection};o.reportEvent("infoClicked",h)},_onSetNewProjection:function(b){this.displayProjection=b.data.proj},_onTriggerInfoTool:function(b){this.infoClicked(b.data)},_onDisableInfoTool:function(g){var b=this;if(!b.disabled||b.disableOnce){b.disableOnce=g.data&&g.data.single;b.disabled=true}},_onEnableInfoTool:function(b){this.disabled=false;this.disableOnce=false},afterMapReset:function(h){var g=this,b=g.display_epsg?"EPSG:"+g.display_epsg.epsg:g.map.getProjection();if(!g.displayProjection){g.displayProjection=new OpenLayers.Projection(b);if(g.display_epsg){g.displayProjection.coordinateFormat=g.display_epsg.coordinateFormat}}if(!g.clickControl){g.clickControl=Adaptive.map.ClickControl.getClickControl(Ext.bind(g.onInfoClicked,g))}g.infoControl=new g.clickControl();g.map.addControl(g.infoControl);g.infoControl.activate()},beforeMapReset:function(){var b=this;if(b.infoControl){b.infoControl.deactivate();b.infoControl.destroy()}}});Ext.define("Client.module.map.info.lang.Agent",{strings:{loading:{en:"Searching...",nb:"Søker...",nn:"Søker..."},btnCloseInfo_text:{en:"Close",nb:"Lukk",nn:"Lukk"},btnCloseInfo_tip_text:{en:"Close info window",nb:"Lukk søkeresultatet",nn:"Lukk søkeresultatet"},y:{en:"N",nb:"N",nn:"N"},x:{en:"E",nb:"Ã",nn:"Ã"},z:{en:"H",nb:"H",nn:"H"},z_metric:{en:"m.a.s.l.",nb:"m.o.h.",nn:"m.o.h."},z_feet:{en:"feet",nb:"fot",nn:"fot"},n:{en:"N",nb:"N",nn:"N"},e:{en:"E",nb:"Ã",nn:"Ã"},s:{en:"S",nb:"S",nn:"S"},w:{en:"W",nb:"V",nn:"V"},ext_wms_title:{en:"External WMS",nb:"Ekstern WMS",nn:"Ekstern WMS"},internal_search_title:{en:"Internal seach results",nb:"Resultater fra løsningens egne data",nn:"Resultater fra løsningens egne data"},osm_results_title:{en:"OSM geocoding results",nb:"OSM geokode resultater",nn:"OSM geokode resultater"},nib_Coverageno:{en:"Coverage number",nb:"Dekningsnummer",nn:"Dekningsnummer"},nib_Photodate:{en:"Photo date",nb:"Fotodato",nn:"Fotodato"},nib_Pixelsize:{en:"Pixel size",nb:"Pixelstørrelse",nn:"Pixelstørrelse"},nib_Stripenummer:{en:"Stripenummer",nb:"Stripenummer",nn:"Stripenummer"},nib_Bildenummer:{en:"Picture number",nb:"Bildenummer",nn:"Bildenummer"},nib_Ortofototype:{en:"Ortophoto type",nb:"Ortofototype",nn:"Ortofototype"},nib_Flyfirma:{en:"Aircraft firm",nb:"Flyfirma",nn:"Flyfirma"},nib_Produsent:{en:"Producer",nb:"Produsent",nn:"Produsent"},MoreText:{en:"more",nb:"mer",nn:"mer"},zoomTo:{en:"Zoom to",nb:"Zoom til"},print:{en:"Download PDF",nb:"Last ned PDF"},error_title:{en:"Communication Error",nb:"Kommunikasjonsfeil"},error_body:{en:"Could not load data. Please try again.",nb:"Kunne ikke laste data. Vennligst prøv igjen."},btnPropertyDesc:{en:"Display more information on property",nb:"Vis mer informasjon om eiendom"},edit:{en:"Edit",nb:"Rediger"},openDiary:{en:"Open diary",nb:"Ã
pne dagbok"},copyVref:{en:"Copy roadreference",nb:"Kopier vegreferanse"},viewForm:{en:"Open form",nb:"Ã
pne skjema"},copy_qtip:{en:"Copy the selected feature to draw and measure for further editing",nb:"Kopier valge objekt til tegn og mål for videre redigering"},searchable_layers:{en:"Hits",nb:"Treff"},active_wms_layers:{en:"Hits from external sources",nb:"Treff fra eksterne kilder"}
1,heightinfo_tip:{en:"Height info\n - Datasource: [ds] ([ds_desc])\n - Terrain: [terrain]",nb:"Høydeinformasjon\n - Datakilde: [ds] ([ds_desc])\n - Terreng: [terrain]"},dtm1_desc:{en:"Digital terrain model with 1 meter resolution",nb:"Digital terrengmodell med 1 meters oppløsning"},dom1_desc:{en:"Digital surface model with 1 meter resolution",nb:"Digital overflatemodell med 1 meters oppløsning"},dybdekurver_desc:{en:"The depths are calculated using an interpolation of depth points and depth curves. The depths are not suitable for navigation",nb:"Dybdene utregnes vha en interpolasjon av dybdepunkt og dybdekurver. Dybdene er ikke egnet til navigasjon"},hoydekurver_desc:{en:"The heights are calculated using an interpolation of height points and height curves",nb:"Høydene utregnes vha en interpolasjon av høydepunkter og høydekurver"},innsjohoyde_desc:{en:"Heights to lake surfaces",nb:"Høyder til innsjøoverflater"}},errCodes:{}});Ext.define("Client.data.model.search.InternalSearch",{extend:Ext.data.Model,fields:[{name:"uid"},{name:"title",defaultValue:null,useNull:true},{name:"desc",defaultValue:null,useNull:true},{name:"geom",defaultValue:null,useNull:true},{name:"fullGeom",defaultValue:null,useNull:true},{name:"layerName",defaultValue:null,useNull:true},{name:"layerId",defaultValue:null,useNull:true},{name:"values",defaultValue:null,useNull:true},{name:"elementType",defaultValue:null,useNull:true},{name:"html",defaultValue:null,useNull:true}]});Ext.define("Client.module.map.info.MapOutput",{extend:GeoMind.base.Module,wgs84:new OpenLayers.Projection("EPSG:4326"),map:null,active:true,uuid:null,infoLayer:null,toolPanelWidth:0,popupWidth:320,popupHeight:320,ancWidth:15,ancHeight:15,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.uuid=GeoMind.utils.Generator.getUuid();g.unitHeight=g.unitHeight||"meter";g.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},autoScroll:true,width:g.popupWidth,maxHeight:g.popupHeight});g.tools=[];g.toolsConfig={xtype:"container",cls:"info-tools-container",itemId:"popupToolbar",disabled:true,layout:{type:"hbox",align:"stretch"},items:[]}},clearFeatures:function(){this.h=null;if(this.infoLayer){this.infoLayer.removeAllFeatures();this.infoLayer.setVisibility(false)}},createFeature:function(q){var o=this,b=q.local,w=new OpenLayers.Geometry.Point(b.lon,b.lat),h={strokeColor:"#ff0000",strokeOpacity:0.7,strokeWidth:2,fillColor:"yellow",pointRadius:7,externalGraphic:"resx/icons/client/pin.png",graphicYOffset:-32,graphicWidth:32,graphicHeight:32,fillOpacity:1},g=new OpenLayers.Feature.Vector(w,null,h);o.infoLayer.addFeatures([g]);o.infoLayer.setVisibility(true)},format:function(g){var b=Array.prototype.slice.call(arguments,1);return g.replace(/{(\d+)}/g,function(h,o){return typeof b[o]!="undefined"?b[o]:h})},updateToolCoord:function(h){var g=this,b=g.popup.down("#popupToolbar");Ext.each(g.tools,function(o){o.setInfoCoords(h)});if(b){b.setDisabled(!h.lonlat)}},createPopup:function(w){var A=this,D,h=w.evt.xy,C=A.popupWidth,o=50;if(w.mapProjection.projCode!=w.displayProjection.projCode){Adaptive.utils.Proj.transformFeatureAsync(w.local,w.mapProjection.projCode,w.displayProjection.projCode,function(G,E,F){if(G){var F=new OpenLayers.LonLat(F.geometry.x,F.geometry.y);D=Adaptive.utils.Proj.formatXY(F,w.displayProjection,null,true);w.display=F;A.popup.setTitle(D);A.doHeightSearch(D,w)}})}else{D=Adaptive.utils.Proj.formatXY(w.local,w.displayProjection,null,true);w.display=w.local;A.doHeightSearch(D,w)}var z=(A.mapContainer.getWidth()/2<h.x&&h.x>=C+o)?-C-o:o,q=-60,B=Ext.getBody().getWidth(),g=h.x+z,b=h.y+q;Client.AppLogic.resizePopupWidth(A.view,A.popupWidth);if((g+A.view.width)>B){g=(B-A.view.width)/2}if(!A.popup){A.titleBox=Ext.widget({xtype:"box",cls:"popup-title",flex:1,tpl:new Ext.XTemplate('<tpl if="values.x && values.y">',"<label>{[this.getLangString(values.y_label)]}:</label> {y} ","<label>{[this.getLangString(values.x_label)]}:</label> {x} ",'<tpl if="values.z">',"<label>"+A.lang.getString("z")+":</label> {z} ",'<tpl if="values.tip">','<img class="a3-helpText" src="resx/icons/client/help.png" title="{tip}">',"</tpl>","</tpl>","</tpl>",{getLangString:function(E){return A.lang.getString(E,true)||""}}),itemId:"popup-title"});A.popup=Ext.create("Ext.container.Container",{cls:"a3-mapinfo-popup",floating:true,constrain:true,padding:0,resizable:false,draggable:A.draggableFeatureInfo,style:A.draggableFeatureInfo?{cursor:"move"}:{},closeAction:"hide",maximizable:false,collapsible:false,layout:{type:"vbox",align:"stretch"},items:[{xtype:"container",cls:"popup-header",layout:"hbox",height:36,items:[A.titleBox,{xtype:"button",cls:"a3-no-btn a3-close",handler:function(){A.popup.hide()},width:36,height:36}]},A.view,A.toolsConfig],setTitle:function(E){A.titleBox.update(E)},listeners:{afterrender:function(){A.popup.setTitle(D);A.popup.showAt(g,b)}}});A.popup.show();A.popup.on("hide",A.closePopup,A)}else{A.popup.showAt(g,b);A.popup.setTitle(D)}},doHeightSearch:function(h,g){var b=this,o="EPSG:4326";if(g.mapProjection.projCode==o){g.lonlat=g.local}else{if(g.displayProjection.projCode==o){g.lonlat=g.display}}if(!g.lonlat){Adaptive.utils.Proj.transformFeatureAsync(g.local,g.mapProjection.projCode,o,function(A,w,q){if(A){var z=new OpenLayers.LonLat(q.geometry.x,q.geometry.y);g.lonlat=z;b.doHeightSearch(h,g);b.updateToolCoord(g)}});return}b.updateToolCoord(g);if(!b.isNorwegianInstance){return}if(!b.connection){b.connection=Ext.create("Ext.data.Connection",{cors:Ext.isIE9,disableCachingParam:false})}else{b.connection.abortAll()}b.connection.request({url:"https://ws.geonorge.no/hoydedata/v1/punkt?koordsys=4326&nord="+g.lonlat.lat+"&ost="+g.lonlat.lon,success:function(w){
1w=Ext.JSON.decode(w.responseText);var q=w.punkter[0];if(q.z){b.h=Math.round(q.z);b.datasource=q.datakilde;b.terrain=q.terreng;if(b.popup){var z=b.getFormattedHeight();h.z=z;h.tip=b.getFormattedTip();b.popup.setTitle(h)}}b.getPlaceName(g.lonlat);Ext.each(b.tools,function(A){A.setPointInfo(q)})}})},getFormattedTip:function(){var b=this;return b.lang.getString("heightinfo_tip").replace("[ds]",b.datasource).replace("[ds_desc]",b.lang.getString(b.datasource+"_desc")).replace("[terrain]",b.terrain)},getPlaceName:function(g){var b=this;Ext.Ajax.request({url:"WebServices/weather/WeatherSearcher.asmx/FindUrl",headers:{"Content-Type":"application/json"},params:Ext.JSON.encode({lat:g.lat,lon:g.lon}),callback:function(o,z,h){if(z){var w=JSON.parse(h.responseText);var q=w.d.records;Ext.each(b.tools,function(A){A.setPlaceName(q)})}else{Ext.each(b.tools,function(A){A.setPlaceName()})}}})},getFormattedHeight:function(){var g=this,b;if(isNaN(g.h)){return null}switch(g.unitHeight){case"all":return g.h+" "+g.lang.getString("z_metric")+" ("+Math.round(g.h*3.2808399)+" "+g.lang.getString("z_feet")+")";case"feet":return Math.round(g.h*3.2808399)+" "+g.lang.getString("z_feet");case"meter":return g.h+" "+g.lang.getString("z_metric")}},closePopup:function(){var b=this;if(!b.popup){return}b.clearFeatures();b.fireEvent("mapInfoClosed")},setupInfoLayer:function(){this.infoLayer=new OpenLayers.Layer.Vector("infoLayer",{group:200});this.map.addLayers([this.infoLayer]);this.infoLayer.setVisibility(false)},bindMapEvents:function(){this.map.events.register("movestart",this,this.onMapMoveStart)},unbindMapEvents:function(){this.map.events.unregister("movestart",this,this.onMapMoveStart)},onMapMoveStart:function(){if(this.popup&&this.popup.isVisible()){this.popup.hide()}},setUp:function(b){this.map=b;if(this.map){if(!this.infoLayer){this.setupInfoLayer()}this.bindMapEvents()}},cleanUp:function(){if(!this.map){return}if(this.infoLayer&&this.infoLayer.map){this.clearFeatures();if(this.popup){this.popup.hide()}this.infoLayer.map.removeLayer(this.infoLayer)}this.unbindMapEvents();this.infoLayer=null},activate:function(){if(this.map){this.setUp(this.map)}this.active=true},deactivate:function(){this.active=false;if(!this.map){return}this.cleanUp()},setMapContainer:function(b){this.mapContainer=b},_onMapPopupHide:function(b){this.closePopup()},_onInfoClicked:function(g){var b=this,h=g.data;if(!this.active){return}b.local=g.data.local;b.clearFeatures();b.createPopup(h);b.createFeature(h)},_onSetNewProjection:function(h){var g=this;if(g.local&&g.popup&&g.popup.isVisible()){var o=g.map.getProjection(),b=h.data.proj;Adaptive.utils.Proj.transformFeatureAsync(g.local,o,b.getCode(),function(z,q,w){if(z){xy=Adaptive.utils.Proj.formatXY(w.geometry,b,null,true);xy.z=g.getFormattedHeight();g.popup.setTitle(xy)}})}},_onRegisterMapInfoTool:function(g){var b=this;b.tools.push(g.data);b.toolsConfig.items.push(g.data.view);if(b.popup){b.popup.down("#popupToolbar").add(g.data.view)}},_onUnregisterMapInfoTool:function(h){var g=this,b=g.tools.indexOf(h.data);if(b!=-1){g.tools.splice(b,1)}b=g.toolsConfig.items.indexOf(h.data.view);if(b!=-1){g.toolsConfig.items.splice(b,1)}if(g.popup){g.popup.down("#popupToolbar").remove(h.data.view,false)}}});Ext.define("Client.module.map.info.Agent",{extend:Client.module.Generic,wktReader:new OpenLayers.Format.WKT(),uuid:null,name:null,active:false,serviceUrl:null,config:{stdAgent:false},constructor:function(b){this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(this,b);this.callParent([b]);this.uuid=GeoMind.utils.Generator.getUuid()},hidePopup:function(){var b=this;if(b.infoWindow){b.infoWindow.hide()}},calcPopupPosition:function(h,g){var o=this,b=o.mapContainer.getWidth()/2-h/2,q=o.mapContainer.getHeight()/2-g/2;if(b<10){b=10}if(q<10){q=10}return{x:b,y:q}},executeSearchRequest:function(h){var g=this,b=g.searchUrl,o={"Content-Type":"application/json; charset=utf-8"};if(!g.connection){g.connection=Ext.create("Ext.data.Connection",{disableCachingParam:false})}else{g.connection.abortAll()}o.gm_session_id=GeoMind.utils.SessionManager.ss.sessionId;o.gm_lang_code=GeoMind.utils.SessionManager.ss.langCode;o["X-Adaptive-Gui"]=__guuid__;g.connection.request(Ext.apply({url:b,method:"POST",headers:o},h))}
1,_onInfoClicked:function(b){this.onInfoClicked(b.data)},_onSearchSessionConfigured:function(g){var b=this;b.searchSession=g.data.session_id;b.searchUrl=g.data.url}});Ext.define("GeoMind.data.model.WmsFeatureInfoFeature",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string",convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layer",type:"auto"},{name:"layerName",type:"string",convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"url",type:"string",convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"feature",type:"auto"},{name:"infoFormat",type:"string",convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"visible",type:"boolean"}],config:this.fields});Ext.define("GeoMind.utils.Html",{singleton:true,extractTagContent:function(w,h){w=w.replace(/(\r\n|\n|\r)/gm,"");w=w.toLowerCase();var q=w.indexOf("<"+h);var z=w.indexOf(">",q);var o=w.indexOf("</"+h+">");var g=w.substring(z+1,o);return g}});Ext.define("Client.module.map.info.mixin.RoadInfo",{promptForRoadImage:function(h){var z=this,q=h.get("layer"),b=q.record,o;var w=b.get("get_feature_info_url")?b.get("get_feature_info_url"):b.get("url");if(Ext.isArray(w)){w=w[0]}var g=z.wmsControl.buildWMSOptions(w,[q],z.gfiEvt.xy,q.params.FORMAT);if(typeof __baat__!=="undefined"){g.params.GKT=__baat__}if(typeof __geoid__!="undefined"&&Adaptive.utils.Config.getBooleanConfig(q.record,"use_geoid",false)){g.params("Token",__geoid__)}g.params.INFO_FORMAT="text/xml";if(!z.connection){z.connection=Ext.create("Ext.data.Connection",{cors:Ext.isIE9,disableCachingParam:false})}z.connection.request({url:g.url,method:"GET",params:g.params,headers:{"Content-Type":"application/json; charset=utf-8"},callback:function(O,L,F){if(L&&/^[\s\n\r]*</.test(F.responseText)){var G=new DOMParser(),P=G.parseFromString(F.responseText,"text/xml");var E=F.responseText.substring(F.responseText.indexOf("fid=")+5);E=E.substring(0,E.indexOf(">")-1);var I=F.responseText.substring(F.responseText.indexOf("AAR")+4);I=I.substring(0,I.indexOf("<"));var J=F.responseText.substring(0,F.responseText.lastIndexOf("gml:coordinates")+-2);J=J.substring(J.lastIndexOf(">")+1);var A=J.split(",");var D=new OpenLayers.Geometry.Point(A[0],A[1]).transform(map.getProjectionObject(),"EPSG:4326");var B="https://vegbilder.atlas.vegvesen.no/?year="+I+"&lat="+D.y+"&lng="+D.x+"&zoom=15&view=image&imageId="+E;var K=window.innerHeight-200;var C=window.innerWidth-200;var M=50;var N=50;var H=window.open(B,"_blank","toolbar=yes,scrollbars=yes,resizable=yes,top="+M+",left="+N+",width="+C+",height="+K);H.focus()}else{if(!F.aborted){console.warn("Failed to load get feature info GML",g.url,g.params)}}}})}});Ext.define("Client.module.map.info.agents.Wms",{extend:Client.module.map.info.Agent,mixins:[Client.module.map.info.mixin.RoadInfo],name:null,wmsProxyUrl:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);var g=this;g.store=Ext.create("Ext.data.Store",{model:"GeoMind.data.model.WmsFeatureInfoFeature",data:[]});g.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",width:500,height:300,layout:"fit",items:[]});g.view=Ext.create("Ext.view.View",{cls:"wms mapinfo",store:g.store,tpl:['<tpl if="length > 0">','<h4 class="a3-map-search-agent-category-header">',g.lang.getString("active_wms_layers")+" ({length})",'<tpl if="this.isLoading()">','<span class="loading-dots"><span></span><span></span><span></span></span>',"</tpl>","</h4>",'<ul class="links">','<tpl for=".">',"<li>{layerName} (WMS)",'<tpl if="this.isVegbilde({layer})"><a class="a3-right a3-icon a3-icon-fi icon-open-vegbilde" data-qtip="'+g.lang.getString("edit")+'"></a></tpl>',"</li>","</tpl>","</ul>","</tpl>",{isLoading:function(){return g.loadingLayers>0},isVegbilde:function(h){isVegbilde=Adaptive.utils.Config.getBooleanConfig(h.layer.record.theme_data.config.configs,"vegbilder");return isVegbilde}}],listeners:{refresh:function(h){Ext.each(h.store.data.items,function(o){if(Ext.isFunction(o.data.refresh)){o.data.refresh(h,o,h.getNode(o))}});g.addAllButtonListeners(h)},itemadd:g.addButtonListeners,itemupdate:g.addButtonListeners},itemSelector:"li",selectedItemCls:""});g.view.mon(g.view,"itemclick",g.onItemClick,g);g.name="Wms"},addAllButtonListeners:function(o){var h=this,g=o.getNodes(),b=o.getRecords(g);h.addButtonListeners(b,0,g)},addButtonListeners:function(g,h,b){var q=this,o=0,w;if(!Ext.isArray(g)){g=[g]}if(!Ext.isArray(b)){b=[b]}function z(A,B){return function(C){C.preventDefault();C.stopPropagation();Ext.callback(B,q,[A])}}for(;o<g.length;++o){if(b[o].getAttribute("data-listeners-created")==="true"){continue}w=b[o].getElementsByClassName("icon-open-vegbilde")[0];if(w){w.addEventListener("click",z(g[o],q.promptForRoadImage))}}},doSearch:function(o){var w=this,q=o.get("layer"),h=q.record,z,A,B,g,b;if(!w.gfiEvt||!h.get("queryable")||!q.params||!q.params.QUERYABLE||h.get("is_internal")){return}z=h.get("get_feature_info_url")?h.get("get_feature_info_url"):h.get("url");
1if(Ext.isArray(z)){z=z[0]}A=Adaptive.utils.Config.getThemeData(h);B=w.wmsControl.buildWMSOptions(z,[q],w.gfiEvt.xy,q.params.FORMAT);g=h.get("proxy_type");if(q.params.TIME){B.params.TIME=q.params.TIME}if(g==="mapserver"){B.params.GUI=__gui_id__}if(A&&!g){B.url=w.wmsProxyUrl;if(A){B.params.uuid=A.theme_uuid}}B.params.INFO_FORMAT="application/vnd.ogc.gml";w.loadingLayers++;if(!w.connection){w.connection=Ext.create("Ext.data.Connection",{cors:Ext.isIE9,disableCachingParam:false})}w.connection.request({url:B.url,method:"GET",params:B.params,headers:{"Content-Type":"application/json; charset=utf-8"},callback:function(F,G,D){w.loadingLayers--;if(G&&/^[\s\n\r]*</.test(D.responseText)){var C=new DOMParser(),E=C.parseFromString(D.responseText,"text/xml");if((D.responseText&&(D.responseText.contains("ServiceException")||D.responseText.contains("<html>")))||(E.firstChild&&E.firstChild.firstChild&&E.firstChild.firstChild.nextSibling)){w.store.add(o)}}else{if(!D.aborted){w.store.add(o);console.warn("Failed to load get feature info GML",B.url,B.params)}}w.view.refresh()}})},onItemClick:function(A,o){var w=this,q=o.get("layer"),h=q.record,E,B=Ext.getBody().getWidth(),z=w.calcPopupPosition(500,300);Client.AppLogic.resizePopupWidth(w.infoWindow,400);if((z.x+w.infoWindow.width)>B){z.x=0}var C=w.infoWindow.getDockedItems('toolbar[dock="bottom"]');C.forEach(function(G){w.infoWindow.removeDocked(G)});if(!q.params.LAYERS){q.params.LAYERS=q.layer}q.params.INFO_FORMAT=q.params.INFOFORMAT;var D=h.get("get_feature_info_url")?h.get("get_feature_info_url"):h.get("url");if(Ext.isArray(D)){D=D[0]}if(w.gfiOutputContainer){w.infoWindow.remove(w.gfiOutputContainer);w.gfiOutputContainer=null}E=Adaptive.utils.Config.getThemeData(h);var F=w.wmsControl.buildWMSOptions(D,[q],w.gfiEvt.xy,q.params.FORMAT),g=h.get("proxy_type"),b;if(q.params.TIME){F.params.TIME=q.params.TIME}if(g&&g==="mapserver"){F.params.GUI=__gui_id__}if(typeof __baat__!="undefined"){F.params.GKT=__baat__}if(typeof __geoid__!="undefined"&&Adaptive.utils.Config.getBooleanConfig(q.record,"use_geoid",false)){F.params.TOKEN=__geoid__}OpenLayers.Util.applyDefaults(F.params,q.vendorParams);b=OpenLayers.Util.urlAppend(F.url,OpenLayers.Util.getParameterString(F.params||{}));w.reportEvent("showWmsFeatureInfo",{infoWindow:w.infoWindow,themeData:E,url:b,geom:w.geom});w.infoWindow.setTitle(o.get("layerName")+" (WMS)");w.infoWindow.showAt(z.x,z.y);w.gfiOutputContainer=Ext.create("Ext.Component",{autoEl:{tag:"iframe",frameborder:"0",src:b},listeners:{render:function(){w.gfiOutputContainer.el.dom.onload=function(){w.gfiOutputContainer.setLoading(false)};w.gfiOutputContainer.setLoading(true)}}});w.infoWindow.add(w.gfiOutputContainer)},hidePopup:function(){var b=this;b.abortRequests();if(b.infoWindow){b.infoWindow.hide()}},abortRequests:function(){var b=this;b.connection&&b.connection.abortAll()},bindMapEvents:function(){this.map.events.register("addlayer",this,this.onMapAddLayer);this.map.events.register("preremovelayer",this,this.onMapRemoveLayer)},unbindMapEvents:function(){this.map.events.unregister("addlayer",this,this.onMapAddLayer);this.map.events.unregister("preremovelayer",this,this.onMapRemoveLayer)},onMapAddLayer:function(g){var b=g.layer;if(b.record&&b.CLASS_NAME=="OpenLayers.Layer.WMS"&&!b.isBaseLayer&&b.record.get("queryable")&&!b.is_internal&&b.getVisibility()){var h=b.record;var o=Ext.create("GeoMind.data.model.WmsFeatureInfoFeature",{uuid:h.get("uuid"),layer:b,layerName:h.get("name"),url:h.get("url"),feature:null,infoFormat:h.get("info_format_value"),visible:h.get("visibility")});this.store.add(o)}},onMapRemoveLayer:function(h){var g=h.layer;if(g.record){var b=this.store.find("uuid",g.record.get("uuid"));if(b>-1){this.store.removeAt(b)}}},setUp:function(g){var b=this;b.map=g;b.prepareWmsLayers();
1b.bindMapEvents();b.wmsControl=new OpenLayers.Control.WMSGetFeatureInfo({maxFeatures:50,map:b.map})},prepareWmsLayers:function(){var q=this,w,g=[];if(!q.map){return}q.loadingLayers=0;w=q.map.wmsLayersVisible;for(var h=0;h<w.length;h++){var b=w[h];if(b.record&&b.record.get("queryable")){var o=b.record;var z=Ext.create("GeoMind.data.model.WmsFeatureInfoFeature",{uuid:o.get("uuid"),layer:b,layerName:o.get("name"),url:o.get("url"),feature:null,infoFormat:o.get("info_format_value"),visible:b.getVisibility()});q.doSearch(z)}}},addBaseLayer:function(){var w=this,A=w.map.baseLayer.clone(),h=A.record,C=Adaptive.utils.Config.getThemeData(h),B=C&&Adaptive.utils.Config.getBooleanConfig(C,"featureinfo"),q=C&&Adaptive.utils.Config.getConfig(C,"featureinfo_url"),z=C&&Adaptive.utils.Config.getConfig(C,"featureinfo_layers"),g=(C&&Adaptive.utils.Config.getConfig(C,"featureinfo_format"))||"text/html";if(B){var b=q||(Ext.isArray(A.url)?map.baseLayer.url[0]:map.baseLayer.url);A.record.set("get_feature_info_url",b);A.params=A.params||{};if(z){A.layer=z;A.params.LAYERS=z}A.params.INFOFORMAT=g;var o=Ext.create("GeoMind.data.model.WmsFeatureInfoFeature",{uuid:h.get("uuid"),layer:A,layerName:h.get("name"),url:b,feature:null,infoFormat:g,visible:true});if(!A.reverseAxisOrder){A.reverseAxisOrder=function(){return false}}w.store.add(o)}},beforeMapReset:function(){var b=this;if(b.map){b.unbindMapEvents();b.abortRequests()}},onInfoClicked:function(g){var b=this;b.geom="SRID="+g.mapProjection.proj.srsProjNumber+";POINT("+g.local.lon+" "+g.local.lat+")";b.infoWindow.hide();b.gfiEvt=g.evt;b.store.removeAll();b.abortRequests();b.prepareWmsLayers();b.addBaseLayer()}});Ext.define("Client.module.map.info.agents.NamesAddresses",{extend:Client.module.map.info.Agent,uuid:null,name:null,active:false,coordsPrj:null,serviceUrlWFS:"WebServices/matrikkelWfs.ashx",parentController:null,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.name="NamesAddresses";g.uuid=GeoMind.utils.Generator.getUuid();g.view=Ext.create("Ext.Component",{cls:"a3-location-info mapinfo",tpl:new Ext.XTemplate('<tpl if="name"><p class="a3-name">{name}</p></tpl>','<tpl if="address"><p class="a3-address">{address}</p></tpl>','<tpl foreach="property">','<p class="a3-property">','<a href="javascript:void(0)" id={$}>{[this.formatProperty(values)]}</a>',"</p>","</tpl>",{formatProperty:function(h){return h.KOMMUNENR+"/"+h.GARDSNR+"/"+h.BRUKSNR+"/"+h.FESTENR+"/"+h.SEKSJONSNR}}),listeners:{click:{element:"el",fn:function(h,q){if(g.hasMatrikkelAccess()){var o=g.a_property[q.id];if(o){g.showMatrikkel(o)}}}}}})},showMatrikkel:function(g){var b=this;b.reportEvent("matrikkelPropertySelected",{data:g,theme_uuid:"namesadresses",featInfo:true})},processResponse:function(g){var q=this,o=g.records,b=o.length;for(var h=0;h<b;h++){if(o[h].layerId=="AdaptiveNames"){q.a_name=o[h].title;break}}for(var h=0;h<b;h++){if(o[h].layerId=="AdaptiveAddresses"){q.a_address=o[h].title;break}}this.updateView();q.reportEvent("namesAddressResponse",g)},updateView:function(){var g=this,b={name:g.a_name,address:g.a_address,property:g.a_property};g.view.update(b)},doSearch:function(g){var h=this,b=75,o={request:{srsid:g.mapProjection.proj.srsProjNumber,st:"circle",s:g.local.lon+","+g.local.lat+","+b,layers:"AdaptiveNames,AdaptiveAddresses",start:0,limit:10}};h.executeSearchRequest({params:Ext.JSON.encode(o),success:Ext.bind(h.searchCallbackSuccess,h)})},searchCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.processResponse(b)}},setUp:function(b){this.map=b}
1,onInfoClicked:function(g){var b=this;b.h=null;b.a_name=null;b.a_address=null;b.a_property=null;b.updateView();b.doSearch(g);if(b.parentController&&b.parentController.isModulePresent("av_search_matrikkel_property")){b.doPropSearch(g)}},_onSetNewProjection:function(b){this.coordsPrj=b.data.proj},doPropSearch:function(b){var o=this,q=new OpenLayers.Protocol.WFS.v1_1_0({url:o.serviceUrlWFS,featureType:"TEIGWFS",featurePrefix:"matrikkel",srsName:o.map.projection.projCode,headers:{gm_session_id:GeoMind.utils.SessionManager.ss.sessionId,"X-Adaptive-Gui":__guuid__}});var g=new OpenLayers.Geometry.Point(b.local.lon,b.local.lat);if(g){var h=o.createClickOnMapFilter(g);q.defaultFilter=h;q.read({scope:o,callback:o.processWFSResponse})}},createClickOnMapFilter:function(b){var g=[new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.DWITHIN,property:"FLATE",value:b,distance:1}),new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:"FLATE",value:b})];return new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:g})},processWFSResponse:function(b){var g=this,b=GeoMind.utils.Ajax.fixResponse(b);if(b&&b.features&&b.features.length>0){g.a_property=[];b.features.forEach(function(h){g.a_property.push(h.data)});g.updateView()}},hasMatrikkelAccess:function(){return Ext.Array.contains(GeoMind.utils.DictionaryManager.getDictionary("modules"),"av_search_matrikkel_property")||Ext.Array.contains(GeoMind.utils.DictionaryManager.getDictionary("modules"),"av_search_matrikkel_owner")}});Ext.define("Client.module.lang.ColumnNames",{strings:{id:{en:"Id",nb:"Id"},objectid:{en:"Object id",nb:"Objekt id"},date_created:{en:"Created",nb:"Opprettet"},date_modified:{en:"Last modified",nb:"Sist endret"},yes:{en:"Yes",nb:"Ja",nn:"Ja"},no:{en:"No",nb:"Nei",nn:"Nei"},bool_null_value:{en:null,nb:null,nn:null}}});Ext.define("Adaptive.ux.MediaPreview",{extend:Ext.view.View,autoScroll:true,itemSelector:"div.thumb-wrap",constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.MediaPreview");g.store=Ext.create("Ext.data.Store",{model:"Client.module.tool.digiTheme.model.Media",sorters:[{sorterFn:function(q,o){var h=function(z){var w=z.get("mime")||"";if(w.indexOf("image")>-1){return 1}else{if(w.indexOf("video")>-1){return 2}else{return 3}}};rank1=h(q),rank2=h(o);if(rank1===rank2){return 0}return rank1<rank2?-1:1}},{property:"create_date",direction:"DESC"}]});g.tpl=new Ext.XTemplate('<tpl if="length > 0">','<h4 style="margin: 5px 8px 3px;">'+g.lang.getString("attachedMedia")+" ({length})</h4>",'<div style="overflow-x: auto; overflow-y: hidden;">','<tpl for=".">','<div style="margin: 5px; height: 133px; width: 100px; display: inline-block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; text-align: center;">','<a href="{[this.url(values)]}" title={name} style="max-width: 100%; display:inline-block;text-align:center; overflow:hidden; white-space:nowrap; text-overflow:ellipsis;" target="_blank">','<span style="width:75px;height:75px;margin-bottom:3px;position:relative;display:inline-block;overflow:hidden;border-radius:45px;border:1px solid #ccc;background:#fff">','<img src="{[this.url(values, \'small\')]}" style="position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:none" width="150">',"</span><br>{name}","</a>","</div>","</tpl>","</div>","</tpl>",{url:function(o,h){return g.mediaBaseUrl+"WebServices/generic/Media.asmx/Download?uuid="+o.uuid+(h?"&thumbnail_size="+h:"")+(g.isDigiTheme?"&gm_session_id="+GeoMind.utils.SessionManager.ss.sessionId:"")}});this.callParent([b])},loadMedia:function(q,b,w,g){var h=this;h.mediaBaseUrl=g||__baseurl__;h.isDigiTheme=!!q;var o={gm_lang_code:GeoMind.utils.SessionManager.ss.langCode};if(q){o.gm_session_id=GeoMind.utils.SessionManager.ss.sessionId}if(!h.connection){h.connection=new Ext.data.Connection({useDefaultXhrHeader:false,cors:true,autoAbort:true})}h.store.removeAll();h.connection.request({url:h.mediaBaseUrl+"WebServices/generic/Media.asmx/Read",headers:o,jsonData:{limit:25,page:1,start:0,filter:{filterColumns:[{name:"file_complete",value:true,netType:"bool",comparisonOperator:"=",logicalOperator:"AN
1D"}],sortColumns:[],defaultFilter:[],secondFilter:[],greedy:true},extraParams:[{key:"parent_object_type",value:"digi_theme"},{key:"parent_object_uuid",value:b},{key:"owner_uuid",value:w}]},callback:function(A,B,z){z=B&&GeoMind.utils.Ajax.fixResponse(z);if(z.success){h.store.loadData(z.records)}}})}});Ext.define("Adaptive.utils.ExportToPdf",{config:{themeDataUrl:"WebServices/generic/Printing.asmx/QueueExportThemeDataToPdf",pdfExportFailedMsg:"Export failed",pdfExportFailedHeader:"Export failed"},abortExport:function(){var b=this;if(b.pdfExpConn){b.pdfExpConn.abortAll()}},exportThemeDataToPdf:function(g,h,b){var o=this;Ext.Ajax.request({url:o.themeDataUrl,method:"POST",timeout:60000,params:Ext.JSON.encode({theme_uuid:g,gui_uuid:__guuid__,ids:h,includeChildren:b}),headers:{"Content-Type":"application/json; charset=utf-8"},scope:o,callback:function(w,C,q){var B=C&&GeoMind.utils.Ajax.fixResponse(q);if(B&&B.success){var A=GeoMind.utils.Data.extractConfigObjectByKey(B.data,"printoutFileLocation"),z=GeoMind.utils.Data.extractConfigObjectByKey(B.data,"taskId"),D=Client.AppLogic.getThemeData(g);o.doPdfExport(z,A,D.name)}else{}}})},doPdfExport:function(b,q,o){var h=this,g=Ext.create("Client.module.map.dataView.DownloadItem",{themeName:o,taskId:b,downloadUrl:q});Client.AppLogic.dispatchEvent("addNotification",{item:g})}});Ext.define("Client.module.map.info.agents.InternalSearchService",{extend:Client.module.map.info.Agent,mixins:[Adaptive.utils.ExportToPdf,Adaptive.layer.Highlight,Adaptive.layer.Select],enableCopy:null,disableFeatureCopy:false,uuid:null,name:null,active:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);var g=this;g.enableCopy=g.shouldUseCopy();g.name="InternalSearchService";g.uuid=GeoMind.utils.Generator.getUuid();g.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");g.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.InternalSearch",data:[],proxy:{type:"memory",reader:{type:"json",root:"records"}}});g.dataStore=Ext.create("Ext.data.Store",{fields:["name","value","value_formatter","visible","data_type","decimals"]});g.groupRoleStore=Client.data.model.Role.getGroupRoleStore(true);g.columnNameLang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.ColumnNames");g.editBtn=Ext.create("Ext.button.Button",{cls:"a3-info-edit",text:g.lang.getString("edit"),hidden:true,scope:g,handler:g.onEdit});g.viewFormBtn=Ext.create("Ext.button.Button",{text:g.lang.getString("viewForm"),hidden:true,scope:g,handler:g.onEdit});g.mediaPreview=Ext.create("Adaptive.ux.MediaPreview",{flex:1});g.infoWindow=Ext.create("Ext.window.Window",{width:Math.min(Ext.getBody().getWidth(),460),height:Math.min(window.innerHeight-80,400),layout:{type:"anchor"},defaults:{anchor:"100%"},autoScroll:true,closeAction:"hide",buttons:[g.editBtn,g.viewFormBtn,{xtype:"button",cls:"a3-info-print",text:g.lang.getString("print"),hidden:!g.showPdfExport,handler:function(){g.pdfExportFailedHeader=g.lang.getString("error_title");g.pdfExportFailedMsg=g.lang.getString("error_body");g.exportBtn=this;var h=Client.data.model.ThemeRecord.createRecord(g.theme_data,g.recObject);g.exportThemeDataToPdf(g.theme_data.theme_uuid,[h.get(g.theme_data.id_column)],false)}},{xtype:"button",cls:"a3-info-zoom",text:g.lang.getString("zoomTo"),handler:function(){var h=g.selectLayer.features;if(h&&h.length>0){var o=h[0].geometry;if(o.CLASS_NAME==="OpenLayers.Geometry.Point"){g.map.setCenter(new OpenLayers.LonLat(o.x,o.y),g.defaultZoomLevel)}else{g.map.zoomToExtent(o.getBounds().scale(1.2))}}}}],items:[{xtype:"dataview",cls:"a3-mapinfo-details",store:g.dataStore,itemSelector:"nothing",autoScroll:true,tpl:new Ext.XTemplate("<ul>",'<tpl for=".">','<tpl if="values.visible == true && this.showColumn(values.value)">','<li class="viewItem">',"<h4>{[this.translate(values.name, values)]}</h4>",'<div class="value-wrapper {data_type}">{[this.format(values.value, values)]}</div>',"</li>","</tpl>","</tpl>","</ul>",{showColumn:function(h){return g.showNoDataColumns?true:h},translate:function(o,h){switch(o){case"id":case"objectid":case"date_created":case"date_modified":return g.columnNameLang.getString(o)}return o},format:function(o,h){return g.format(o,h)}})},g.mediaPreview]});g.on("exportFinished",function(){if(g.exportBtn){g.exportBtn.enable()}});g.infoWindow.on("hide",g.onInfoWindowClose,g);g.createMapInfo()},createMapInfo:function(){var b=this;b.view=Ext.create("Ext.view.View",{cls:"internalsearch mapinfo",store:b.store,tpl:new Ext.XTemplate('<tpl if="length > 0"><h4 class="a3-map-search-agent-category-header">'+b.lang.getString("searchable_layers")+' ({[this.getTotal()]})</h4><ul class="links"><tpl for="."><li class="{[this.getClass(values)]}">',"{[this.getContents(values)]}<br><i>{[this.getLayerName(values)]}</i>",'<tpl if="this.copyVref(layerId)"><a class="a3-right a3-icon a3-icon-fi icon-open-vref" data-qtip="'+b.lang.getString("copyVref")+'"></a></tpl>','<tpl if="this.useDiary(layerId)"><a class="a3-right a3-icon a3-icon-fi icon-open-diary" data-qtip="'+b.lang.getString("openDiary")+'"></a></tpl>','<tpl if="this.canEdit(layerId)"><a class="a3-right a3-icon a3-icon-fi icon-form-edit" data-qtip="'+b.lang.getString("edit")+'"></a></tpl>',b.enableCopy?'<tpl if="this.canCopy(elementType)"><a class="a3-right a3-icon icon-copy" data-qtip="'+b.lang.getString("copy_qtip")+'"></a></tpl>':"","</li></tpl></ul></tpl>",{canCopy:function(g){return g!="scat.Media"},useDiary:function(g){var o=b.getLayerByLayerId(g),q=o&&Adaptive.utils.Config.getThemeData(o.record),h=Adaptive.utils.Config.getBooleanConfig(q,"veg");return h&&q.editable&&q.permissions&&q.permissions.write},copyVref:function(g){var o=b.getLayerByLayerId(g),q=o&&Adaptive.utils.Config.getThemeData(o.record),h=Adaptive.utils.Config.getBooleanConfig(q,"veg");return h&&q.editable&&q.permissions&&q.permissions.write},canEdit:function(g){var o=b.getLayerByLayerId(g),q=o&&Adaptive.utils.Config.getThemeData(o.record),h=Adaptive.utils.Config.getBooleanConfig(q,"enable_map_info_edit");return h&&q.editable&&q.permissions&&(q.permissions.write||q.permissions.project_write)},getContents:function(g){g.id=g.uid.replace(/^.*?\..*?\./,"");if(Ext.isFunction(g.renderer)){return g.renderer(g)}return g.title||"—"},getClass:function(g){var h=b.getLayerByLayerId(g.layerId);if(h==null||Adaptive.utils.Config.getBooleanConfig(h.record,"no_info",fal
1se)){return"no-info"}return""},getLayerName:function(g){var h=b.getLayerByLayerId(g.layerId);if(h){return h.record.get("name")}else{return g.layerName}},getTotal:function(){return b.total}}),listeners:{refresh:function(g){Ext.each(g.store.data.items,function(h){if(Ext.isFunction(h.data.refresh)){h.data.refresh(g,h,g.getNode(h))}});b.addAllButtonListeners(g)},itemadd:b.addButtonListeners,itemupdate:b.addButtonListeners},itemSelector:"li",selectedItemCls:""});b.view.on("itemclick",b.onItemClick,b);b.view.on("itemmouseenter",b.onMouseEnter,b);b.view.on("itemmouseleave",b.onMouseLeave,b)},isEditable:function(b){return b._editable},isFormViewable:function(b){return !!Adaptive.utils.Theme.getFormThemeData(this.theme_data)},onEdit:function(){var g=this,h=Client.data.model.ThemeRecord.createRecord(g.theme_data,g.recObject),b=Adaptive.utils.Theme.getFormIdColumn(g.theme_data);if(Adaptive.utils.Config.getBooleanConfig(g.theme_data,"use_custom_form",false)){var o={evtName:"requestShowDigiRecord",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:{record:h,theme_data:g.theme_data}};g.dispatchEvent(o,{confirmationRequired:true})}else{g.reportEvent("digiRecordSelected",{record:{id:h.get(b)},theme_data:Adaptive.utils.Theme.getFormThemeData(g.theme_data)})}g.removeHighlight()},format:function(o,b){var g=this,h=Client.data.model.ThemeRecord.formatColumnValue(o,b.value_formatter,b.data_type,g.formatDate.getString("date_format"),g.formatDate.getString("time_format"),b.decimals,g.recObject,g.groupRoleStore);return h},shouldUseCopy:function(){return Ext.Array.contains(GeoMind.utils.DictionaryManager.getDictionary("modules"),"av_digitised_objects_pro")&&!this.disableFeatureCopy},addAllButtonListeners:function(o){var h=this,g=o.getNodes(),b=o.getRecords(g);h.addButtonListeners(b,0,g)},addButtonListeners:function(h,A,b){var C=this,q=0,B;if(!Ext.isArray(h)){h=[h]}if(!Ext.isArray(b)){b=[b]}function w(E){C.reportEvent("createDigiObject",{feature:new OpenLayers.Format.WKT().read(E.get("fullGeom")),name:E.get("title")});C.removeHighlight()}function g(E){var F=C.getLayerByLayerId(E.get("layerId")),H=F&&Adaptive.utils.Config.getThemeData(F.record);if(Adaptive.utils.Config.getBooleanConfig(H,"use_custom_form",false)){var G={evtName:"requestShowDigiRecord",evtInitiatingModule:C,evtSuperInitiatingModule:C,evtBroadcastingController:null,callback:null,data:{record:E,theme_data:H||C.theme_data}};C.dispatchEvent(G,{confirmationRequired:true})}else{C.reportEvent("digiRecordSelected",{record:{id:E.get("id")},theme_data:H,columns:C.getConfiguredColumns(H,true),userCanEditTheme:true,confirmationRequired:true})}C.removeHighlight()}function z(E){var F=C.getLayerByLayerId(E.get("layerId")),G=F&&Adaptive.utils.Config.getThemeData(F.record);C.reportEvent("showDiary",{record:{id:E.get("id")},theme_data:G,columns:C.getConfiguredColumns(G,true),userCanEditTheme:true});C.removeHighlight()}function D(E){var F=C.getLayerByLayerId(E.get("layerId")),G=F&&Adaptive.utils.Config.getThemeData(F.record);C.reportEvent("showVref",{record:{id:E.get("id")},theme_data:G,columns:C.getConfiguredColumns(G,true),userCanEditTheme:true});C.removeHighlight()}function o(E,F){return function(G){G.preventDefault();G.stopPropagation();F(E)}}for(;q<h.length;++q){if(b[q].getAttribute("data-listeners-created")==="true"){continue}B=b[q].getElementsByClassName("icon-copy")[0];if(B){B.addEventListener("click",o(h[q],w))}B=b[q].getElementsByClassName("icon-form-edit")[0];if(B){B.addEventListener("click",o(h[q],g))}B=b[q].getElementsByClassName("icon-open-diary")[0];if(B){B.addEventListener("click",o(h[q],z))}B=b[q].getElementsByClassName("icon-open-vref")[0];if(B){B.addEventListener("click",o(h[q],D))}}},hidePopup:function(){var b=this;if(b.infoWindow){b.infoWindow.hide()}b.removeHighlight();b.requestHideDetailedFeatureInfo()},onInfoWindowClose:function(){var b=this;b.removeSelection();b.abortExport()},onMouseEnter:function(g,b){this.highlightFeature(b.get("fullGeom"),null,false)},onMouseLeave:function(){this.removeHighlight()},getLayerByLayerId:function(g){var o=this,q=o.map.getLayers();if(!g){return}for(var h=0;h<q.length;h++){var b=q[h];if(b.record&&b.record.get("id")==g){return b}}},onItemClick:function(A,o,C,w,B){var z=this,q=z.getLayerByLayerId(o.get("layerId")),h=q&&Adaptive.utils.Config.getThemeData(q.record),b=h&&Adaptive.utils.Config.getBooleanConfig(h,"dataview_disabled",fal
1se),g=h&&Adaptive.utils.Config.getBooleanConfig(h,"dataview_download_disabled",false),D=h&&Adaptive.utils.Config.getBooleanConfig(h,"feature_info_disabled",b);if(q==null||D||Adaptive.utils.Config.getBooleanConfig(q.record,"no_info",false)){return}z.record=o;z.removeSelection();z.requestShowDetailedFeatureInfo(o,q)},requestShowDetailedFeatureInfo:function(b,g){var h=this;var o={evtName:"requestShowDetailedFeatureInfo",evtInitiatingModule:h,evtSuperInitiatingModule:h,evtBroadcastingController:null,callback:Ext.bind(h.showDetailedFeatureInfo,{scope:h,record:b,layer:g}),data:{record:b,layer:g}};h.dispatchEvent(o,{confirmationRequired:true})},requestHideDetailedFeatureInfo:function(b,g){this.reportEvent("requestHideDetailedFeatureInfo")},showDetailedFeatureInfo:function(){var h=this.scope,g=this.layer,q=this.record.get("id"),b=Ext.getBody().getWidth(),w=h.calcPopupPosition(400,300);Client.AppLogic.resizePopupWidth(h.infoWindow,400);if((w.x+h.infoWindow.width)>b){w.x=0}h.theme_data=Adaptive.utils.Config.getThemeData(g.record);h.selectFeature(this.record.get("fullGeom"),null,false);h.dataStore.removeAll();h.mediaPreview.store.removeAll();h.infoWindow.setTitle(g.name);h.infoWindow.showAt(w.x,w.y);h.infoWindow.down("dataview").setLoading(true);h.viewFormBtn.hide();h.editBtn.hide();var o=h.getConfiguredColumns(h.theme_data,true);if(h.showMediaPreview()){o=Ext.Array.merge(o,["uuid"])}Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{request:{editable:false,theme_uuid:h.theme_data.theme_uuid,columns:o,object_id:q,map_dictionaries:true}},success:Ext.bind(h.onReadCallbackSuccess,h),error:Ext.bind(h.onError,h)})},getConfiguredColumns:function(o,h){var b=this,g=[];o.columns.forEach(function(q){if(((h&&q.column_name===o.id_column)||q.visible_info==="show")&&g.indexOf(q.column_name)===-1){g.push(q.column_name)}q.value_formatter&&q.value_formatter.replace(/##VALUE\((.*?)\)##/g,function(z,w){if(g.indexOf(w)===-1){g.push(w)}})});return g},getColumn:function(g,h){var b;Ext.each(g,function(o){if(o.column_name==h){b=o;return false}});return b},onReadCallbackSuccess:function(g,w){g=GeoMind.utils.Ajax.fixResponse(g);if(g.success){var q=this,z=g.records[0],b=q.dataStore,A=q.getConfiguredColumns(q.theme_data,false);q.recObject=z;b.removeAll();var h=Adaptive.utils.Config.getConfig(q.theme_data,"media_base_url"),o=Adaptive.utils.Config.getConfig(q.theme_data,"media_digi_theme_uuid");if(q.showMediaPreview()){q.mediaPreview.loadMedia(q.theme_data.editable,o||q.theme_data.theme_uuid,q.recObject.uuid,h)}if(q.isEditable(z)){q.editBtn.show()}else{if(q.isFormViewable(z)){q.viewFormBtn.show()}}Ext.iterate(z,function(C){var B=function(G,I){if(C=="geom_wkt"){return}var G=q.getColumn(q.theme_data.columns,C),F=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",G&&G.data_type),H=Ext.Array.contains(A,C),E;if(F==="dictionary"||F==="multiselect_dictionary"){var D=Adaptive.utils.Config.getConfig(G,"dict_visible_items")||"key";switch(D){case"key":break;case"value":C+="/value";break;case"key_value":if(!I){C+="/value"}break}}E=G&&Ext.create(b.model,{name:G.name,value:z[C],value_formatter:G.value_formatter,visible:H,data_type:F,decimals:Adaptive.utils.Config.getConfig(G,"decimals")});if(E){b.add(E)}};B(C)});q.infoWindow.down("dataview").setLoading(false)}else{this.onError()}},onError:function(){var b=this;b.infoWindow.down("dataview").setLoading(false);Ext.Msg.show({title:b.lang.getString("error_title"),msg:b.lang.getString("error_body"),buttons:Ext.Msg.OK,fn:Ext.bind(b.infoWindow.close,b.infoWindow)})},processResponse:function(b){var o=[];if(b&&b.records&&b.records.length>0){var q=b.records;for(var g=0;g<q.length;g++){var h=Ext.create("Client.data.model.search.InternalSearch",q[g]);o.push(h)}}return o},getSearchRadius:function(){var g=this,b=11*g.map.getResolution();if(b<12){b=12}return b},doSearch:function(g){var h=this,b=h.getSearchRadius();var o={request:{srsid:g.mapProjection.proj.srsProjNumber,st:"circle",s:g.local.lon+","+g.local.lat+","+b,start:0,limit:100}};h._doSearch(g,o)},doMapSearch:function(b){var g=this;var h={request:{srsid:b.mapProjection.proj.srsProjNumber,st:"intersect_light",wkt:b.wkt,start:0,limit:100}};g._doSearch(b,h)},_doSearch:function(E,q){var B=this,g="",w=B.map.getLayers(),b;B.evt=E;B.store.removeAll();B.selectionPromise=new Promise(function(G,F){B.resolvePromise=G});B.total=0;for(var z=0;z<w.length;z++){var o=w[z];if(!o.isBaseLayer&&o.getVisibility()&&o.calculateInRange()&&o.record&&o.record.data.is_internal){var h=o&&Adaptive.utils.Config.getThemeData(o.record),A=h&&Adaptive.utils.Config.getBooleanConfig(h,"map_search_disabled",fal
1se),D=h&&Adaptive.utils.Config.getBooleanConfig(h,"custom_map_search",false);if(o.record.dataviewFilter&&o.record.dataviewFilter.filterColumns){var C={};o.record.dataviewFilter.filterColumns.forEach(function(F){C[F.name]=F.value.toString()});if(!b){b={}}b[o.record.data.id.toString()]=C}if(!A&&!D){if(!h.is_indexed||(o.av_filter&&o.av_filter.filter_id&&o.av_filter.filter_id!=-1)){B.doMapSearchDataviewReadAny(o)}else{if(!(h&&h.data&&h.data.scat_object&&!h.data.scat_public)){g+=o.record.data.id+","}}}}}if(b){q.request.dimensionFilters=Ext.JSON.encode(b)}if(g==""){B.resolvePromise();return}q.request.layers=g;B.executeSearchRequest({params:Ext.JSON.encode(q),success:Ext.bind(B.searchCallbackSuccess,B),failure:Ext.bind(B.searchCallbackFailure,B)})},doMapSearchDataviewReadAny:function(z){var B=this,o=Adaptive.utils.Config.getThemeData(z.record),q=o.query_title_fields.split(","),b=B.getSearchRadius(),A=B.evt.local,C=new OpenLayers.Geometry.Point(A.lon,A.lat),g=new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon(C,b,10,0)),D=B.evt.mapProjection.proj.srsProjNumber,h=new GeoMind.data.DataFilter(),w;if(z.record&&z.record.dataviewFilter){z.record.dataviewFilter.filterColumns.forEach(function(E){h.addSecondFilter(E)})}h.addSecondFilter({name:o.geom_column,comparisonOperator:"ST_INTERSECTS",value:"SRID="+D+";"+g.geometry.toString(),netType:"geometry",logicalOperator:"AND"});q.unshift(o.id_column);w={theme_uuid:o.theme_uuid,columns:q,filter:h.getFilterObject()};if(z.av_filter){w.filter_id=z.av_filter.filter_id}Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",jsonData:{request:w},callback:function(F,G,E){B.selectionPromise.then(function(M){E=GeoMind.utils.Ajax.fixResponse(E);B.total+=E.total;var I=[];if(E&&E.records&&E.records.length>0){var N=E.records;for(var J=0;J<N.length;J++){var L=N[J],H=z.record.get("id"),K=Ext.create("Client.data.model.search.InternalSearch",{uid:"1."+H+"."+L[o.id_column],title:B.buildTitleFromQuery(o.query_title_format,o.query_title_fields,L),elementType:"theme",geom:L.geom_wkt,fullGeom:L.geom_wkt,layerId:H,layerName:o.name});I.push(K)}B.store.loadRawData(I,true)}})}})},buildTitleFromQuery:function(g,q,h){var o=[g],b=q.split(",");b.forEach(function(w){o.push(h[w]||"")});return Ext.String.format.apply(null,o)},searchCallbackSuccess:function(g,o){var h=this,b,q;g=GeoMind.utils.Ajax.fixResponse(g);if(!g.success){h.fireEvent("searchFailed",g);return}h.total=g.total;b=h.processResponse(g);h.resolvePromise();q={evtName:"requestProcessFeatureInfoRecords",evtInitiatingModule:h,evtSuperInitiatingModule:h,evtBroadcastingController:null,callback:Ext.bind(h.processFeatureInfoRecords,{scope:h,records:b}),data:{records:b}};h.dispatchEvent(q,{confirmationRequired:true})},processFeatureInfoRecords:function(){var g=this.scope,b=this.records;g.store.loadRawData(b);g.view.setLoading(false)},searchCallbackFailure:function(b,h){var g=this;g.view.setLoading(false);b=GeoMind.utils.Ajax.fixResponse(b);g.fireEvent("searchFailed",b)},setUp:function(g){var b=this;b.map=g;b.createhighlightLayer();b.createSelectLayer()},onInfoClicked:function(b){this.doSearch(b)},showMediaPreview:function(){var g=this,b=Adaptive.utils.Config.getConfig(g.theme_data,"media_digi_theme_uuid");return(g.theme_data.editable&&!Adaptive.utils.Config.getBooleanConfig(g.theme_data,"disable_media",true))||(b)}});Ext.define("Client.data.model.search.NiB",{extend:Ext.data.Model,fields:[{name:"title",convert:function(b){return b+" (NiB)"}},"objectid","nib_project_id","prosjektnavn","objtype","stripenummer","bildenummer","fotodato","dekningsnummer","eier","prosjektstart",{name:"ortofototype",defaultValue:null,useNull:true,convert:function(b){switch(b){case"1":return"Ortofoto 10";break;case"2":return"Ortofoto 20";break;case"3":return"Ortofoto 50";break;case"4":return"Ortofoto N50";break;case"5":return"Ortofoto Skog";break;case"6":return"Satellittbilde";break;case"7":return"Infrarødt";break;case"8":return"Rektifiserte flybilder";break;default:return b;break}}},"pixelstorrelse","bilde_bit_pixel","opptaksmetode","bildekategori","opprinneligbildesys","opprinneligbildeformat","orienteringsmetode","produksjonsrapportlink","flyfirma","produsent","produkstspesifikasjonslink","ref","publishing_state","created_by","changed_by","created_date","changed_date","fotodato_date","rapporter","in_cache","st_area(shape)","st_length(shape)"]});Ext.define("Client.module.map.info.agents.NiB",{extend:Client.module.map.info.Agent,uuid:null,name:null,active:false,serviceUrl:"WebServices/client/NiB.asmx/getNiBProjectByPoint",constructor:function(b){Ext.apply(this,b);this.callParent([b]);var g=this;g.name="NiBSearchService";g.uuid=GeoMind.utils.Generator.getUuid();g.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.NiB",data:[]});g.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",width:300,height:270,layout:"fit",autoScroll:true,items:[]});g.view=Ext.create("Ext.view.View",{cls:"nib mapinfo",store:g.store,tpl:'<tpl if="length > 0"><ul class="links"><tpl for="."><li>{title}</li></tpl></ul></tpl>',itemSelector:"li",selectedItemCls:""});g.view.mon(g.view,"itemclick",g.onItemClick,g)},onItemClick:function(o,h,z,q,g){var w=this,b=Ext.getBody().getWidth(),A=w.calcPopupPosition(300,270);Client.AppLogic.resizePopupWidth(w.infoWindow,400);if((A.x+w.infoWindow.width)>b){A.x=0}w.infoWindow.setTitle(h.get("prosjektnavn"));w.infoWindow.update("<p><b>"+w.lang.getString("nib_Coverageno")+":</b> "+h.get("dekningsnummer")+"</p><p><b>"+w.lang.getString("nib_Photodate")+":</b> "+h.get("fotodato_date")+"</p><p><b>"+w.lang.getString("nib_Pixelsize")+":</b> "+h.get("pixelstorrelse")+"</p><p><b>"+w.lang.getString("nib_Stripenummer")+":</b> "+h.get("stripenummer")+"</p><p><b>"+w.lang.getString("nib_Bildenummer")+":</b> "+h.get("bildenummer")+"</p><p><b>"+w.lang.getString("nib_Ortofototype")+":</b> "+h.get("ortofototype")+"</p><p><b>"+w.lang.getString("nib_Flyfirma")+":</b> "+h.get("flyfirma")+"</p><p><b>"+w.lang.getString("nib_Produsent")+":</b> "+h.get("produsent")+"</p>");w.infoWindow.showAt(A.x,A.y)},processResponse:function(b){var o=[];if(b&&b.project&&b.project.length>0){var q=b.project;for(var g=0;g<q.length;g++){q[g].properties.title=q[g].properties.prosjektnavn;var h=Ext.create("Client.data.model.search.NiB",q[g].properties);o.push(h)}}return o},getActiveNiBProjects:function(){var b=this,g="";Ext.Array.each(b.map.getLayers(),function(o,h,q){if(o.name=="NiB overlay"){g=o.params.LAYERS;return false}});return g},doSearch:function(b){var h=this,g=h.getActiveNiBProjects();if(g==""){return}var o={point:b.local.lon+","+b.local.lat,projects:g,srid:h.map.getProjectionObject().proj.srsProjNumber};Ext.Ajax.request({url:h.serviceUrl,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(o),success:Ext.bind(h.searchCallbackSuccess,h),failure:Ext.bind(h.searchCallbackFailure,h)})},searchCallbackSuccess:function(b,h){var g=this;b=GeoMind.utils.Ajax.fixResponse(b);g.store.loadRecords(g.processResponse(b));
1g.view.setLoading(false)},searchCallbackFailure:function(b,g){this.view.setLoading(false);b=GeoMind.utils.Ajax.fixResponse(b)},setUp:function(b){this.map=b},onInfoClicked:function(g){var b=this;b.store.removeAll();if(b.shouldPerformSearch()){b.doSearch(g)}},shouldPerformSearch:function(){var g=this;if(!g.map.baseLayer.record){return false}var b=Adaptive.utils.Config.getThemeData(g.map.baseLayer.record);if(b&&b.data&&b.data.nib){return b.data.nib}else{return false}}});Ext.define("Client.data.model.search.VectorLayer",{extend:Ext.data.Model,fields:[{name:"name",defaultValue:null,useNull:true},{name:"geom",defaultValue:null,useNull:true},{name:"data",defaultValue:null,useNull:true}]});Ext.define("Client.module.map.info.agents.VectorLayer",{extend:Client.module.map.info.Agent,mixins:[Adaptive.layer.Highlight],name:null,proxyUrl:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.store=Ext.create("Ext.data.Store",{model:"Client.data.model.search.VectorLayer",data:[]});g.dataStore=Ext.create("Ext.data.Store",{fields:["name","value"]});g.infoWindow=Ext.create("Ext.window.Window",{title:g.title,closeAction:"hide",width:400,height:300,layout:"fit",items:[{xtype:"dataview",cls:"a3-mapinfo-details",store:g.dataStore,itemSelector:"li.viewItem",autoScroll:true,tpl:new Ext.XTemplate("<ul>",'<tpl for=".">','<li class="viewItem">',"<h4>{name}</h4>",'<div class="value-wrapper">{value}</div>',"</li>","</tpl>","</ul>")}]});g.view=Ext.create("Ext.view.View",{cls:"mapinfo",store:g.store,tpl:'<tpl if="length > 0"><ul class="links"><tpl for="."><li>{name}</li></tpl></ul></tpl>',itemSelector:"li",selectedItemCls:""});g.view.mon(g.view,"itemclick",g.onItemClick,g);g.view.mon(g.view,"itemmouseenter",g.onItemMouseEnter,g);g.view.mon(g.view,"itemmouseleave",g.onItemMouseLeave,g);g.name="MyData"},onItemClick:function(C,q,G,w,F){var z=this,h=q.get("data"),o,D=z.dataStore,g
1=["styleUrl"],B=Ext.getBody().getWidth(),A=z.calcPopupPosition(400,300);Client.AppLogic.resizePopupWidth(z.infoWindow,400);if((A.x+z.infoWindow.width)>B){A.x=0}z.infoWindow.setTitle(q.get("name"));D.removeAll();for(var E in h){if(h.hasOwnProperty(E)&&g.indexOf(E)==-1){var b=Ext.create(D.model,{name:E,value:h[E]});D.add(b)}}z.infoWindow.showAt(A.x,A.y)},onItemMouseEnter:function(g,b){this.highlightFeature(b.get("geom"),null,false)},onItemMouseLeave:function(h,g,q,o,b){this.removeHighlight()},setUp:function(b){this.map=b},onInfoClicked:function(b){this.doSearch(b)},doSearch:function(w){var q=this,h={},g=new OpenLayers.Geometry.Point(w.local.lon,w.local.lat),z=new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon(g,8*q.map.resolution,10,0)),b,o=z.geometry;o.calculateBounds();b=o.getBounds();q.map.layers.forEach(function(A){if(!A instanceof OpenLayers.Layer.Vector||!A.features||!A.isFeatureInfoLayer||!A.getVisibility()){return}A.features.forEach(function(B){fb=B.geometry.getBounds();if(fb.intersectsBounds(b)&&B.geometry.intersects(o)){if(!h[A.id]){h[A.id]={name:A.featureInfoLayerTitle||A.name||A.id,features:[]}}h[A.id].features.push(B)}})});q.onReadFeaturesCallback(null,true,h)},onReadFeaturesCallback:function(h,w,g){var o=this,b,q;b=o.processResponse(g);q={evtName:"requestProcessFeatureInfoRecords",evtInitiatingModule:o,evtSuperInitiatingModule:o,evtBroadcastingController:null,callback:Ext.bind(o.processFeatureInfoRecords,{scope:o,records:b}),data:{records:b}};o.dispatchEvent(q,{confirmationRequired:true})},processFeatureInfoRecords:function(){var g=this.scope,b=this.records;g.store.loadRecords(b);g.view.setLoading(false)},processResponse:function(o){var h=[];for(var g in o){if(o.hasOwnProperty(g)){var b=o[g].name;o[g].features.forEach(function(w){var A=Ext.apply({},w.attributes),q=w.data.name||w.data.title||"";q+=q?" ("+b+")":b;delete A.feature;delete A.trackId;delete A.balloonVisibility;var z=Ext.create("Client.data.model.search.VectorLayer",{name:q,geom:w.geometry.clone(),data:A});h.push(z)})}}return h}});Ext.define("Client.module.map.info.Standard",{extend:Client.module.ToolGeneric,internal_name:"av_map_info",map:null,agents:null,active:false,shouldDeactivateFor:null,_shouldActivate:true,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);if(!this.shouldDeactivateFor){this.shouldDeactivateFor=[]}this.mapInputModule=Ext.create("Client.module.map.info.MapInput",{display_epsg:this.display_epsg});this.internalPlaceNameSearchService=Ext.create("Client.module.map.info.agents.NamesAddresses",{serviceUrl:"WebServices/search/Searcher.asmx/Search",parentController:this.parentController,stdAgent:true});this.wmsInfoModule=Ext.create("Client.module.map.info.agents.Wms",{wmsProxyUrl:g.wmsProxyUrl,stdAgent:true});this.internalSearchService=Ext.create("Client.module.map.info.agents.InternalSearchService",{serviceUrl:"WebServices/search/Searcher.asmx/Search",stdAgent:true,disableFeatureCopy:this.disableFeatureCopy,showPdfExport:g.showPdfExport,showNoDataColumns:g.showNoDataColumns,defaultZoomLevel:g.defaultZoomLevel});this.NiBSearchService=Ext.create("Client.module.map.info.agents.NiB",{stdAgent:true});this.vectorLayer=Ext.create("Client.module.map.info.agents.VectorLayer",{stdAgent:true});this.mapOutputModule=Ext.create("Client.module.map.info.MapOutput",{draggableFeatureInfo:!!g.draggableFeatureInfo,unitHeight:g.unitHeight,isNorwegianInstance:g.isNorwegianInstance});this.mapOutputModule.mon(this.mapOutputModule,"mapInfoClosed",this.mapInfoClosed,this);this.mapOutputModule.view.add(this.internalPlaceNameSearchService.view);this.mapOutputModule.view.add(this.internalSearchService.view);this.mapOutputModule.view.add(this.wmsInfoModule.view);this.mapOutputModule.view.add(this.NiBSearchService.view);this.mapOutputModule.view.add(this.vectorLayer.view);this.parentController.registerModule(this.mapInputModule);this.parentController.registerModule(this.internalPlaceNameSearchService);this.parentController.registerModule(this.wmsInfoModule);this.parentController.registerModule(this.internalSearchService);this.parentController.registerModule(this.mapOutputModule);this.parentController.registerModule(this.NiBSearchService);this.parentController.registerModule(this.vectorLayer);
1this.agents=[this.internalPlaceNameSearchService,this.vectorLayer,this.internalSearchService,this.wmsInfoModule,this.NiBSearchService]},activate:function(){if(this.active){return}if(this._shouldActivate){this.mapOutputModule.map=this.map;this.mapOutputModule.activate();this.active=true;for(var b=0;b<this.agents.length;b++){this.agents[b].activate()}}},deactivate:function(){if(!this.active){return}this.mapOutputModule.deactivate();this.active=false;for(var b=0;b<this.agents.length;b++){this.agents[b].deactivate()}},shouldDeactivate:function(b){return Ext.Array.contains(this.shouldDeactivateFor,b)},mapInfoClosed:function(){var b=this;Ext.each(b.agents,function(g){g.hidePopup()})},_setActive:function(b){this._shouldActivate=b;if(b){this.activate()}else{this.deactivate()}},afterMapContainerRender:function(b){for(a in this.agents){if(Ext.isFunction(this.agents[a].setMapContainer)){this.agents[a].setMapContainer(this.mapContainer)}}this.mapOutputModule.setMapContainer(this.mapContainer)},afterMapReset:function(g){for(var b=0;b<this.agents.length;b++){this.agents[b].setUp(this.map)}this.activate()},beforeMapReset:function(b){this.deactivate()},_onToolactivated:function(b){if(b.data.internal_name=="av_map_info"){return}if(this.shouldDeactivate(b.data.internal_name)){this.deactivate()}else{this.activate()}},_onThemeRecordSelected:function(w){var q=this,z=w.data,h=z.theme_data,g=z.record[h.id_column],o,b;o=q.map.getLayerByThemeUuid(h.theme_uuid);b=Ext.create("Client.data.model.search.InternalSearch",{id:g,elementType:"theme",fullGeom:z.record[h.geom_column+"_wkt"],layerName:h.name});Ext.bind(q.internalSearchService.showDetailedFeatureInfo,{scope:q.internalSearchService,record:b,layer:o}).call()},_onTooldeactivated:function(b){if(b.data.internal_name=="av_map_info"){return}this.activate()},_onActiveCategoryChanged:function(g){var b=this.mapOutputModule.popup;if(b&&b.isVisible()){b.hide()}},addAgent:function(b,h){var g=this;if(h){g.mapOutputModule.view.insert(1,b.view)}else{g.mapOutputModule.view.add(b.view)}g.agents.push(b)},resetAgents:function(){this.agents=this.agents.filter(function(b){return b.stdAgent})},removeAgent:function(b){b.deactivate();Ext.Array.remove(this.agents,b)}});Ext.define("Client.module.tool.userData.lang.Standard",{strings:{mainBtnText:{en:"My Data",nb:"Mine data"},mainBtnTip:{en:"User defined data",nb:"Brukerdefinerte data"},backBtn:{en:"Back to main page",nb:"Tilbake til hovedsiden",nn:"Tilbake til hovedsiden "},backBtn_tooltip:{en:"Cancel and go back to the main page",nb:"Avbryt og gå tilbake til hovedsiden",nn:"Avbryt og gå tilbake til hovedsiden"},headerText:{en:"My data",nb:"Mine data"},headerFile:{en:"Add KML, GPX or SOSI",nb:"Legg til KML, GPX eller SOSI"},headerLegend:{en:"User defined data",nb:"Brukerdefinerte data"},layerTitle:{en:"User defined data",nb:"Brukerdefinerte data"},headerWms:{en:"Add WMS",nb:"Legg til WMS"},headerSingleFileUpload:{en:"Add single file data",nb:"Legg til data fra fil"},headerShape:{en:"Add shape",nb:"Legg til Shape"},headerRaster:{en:"Add raster",nb:"Legg til raster"},headerCatalog:{en:"Catalog Web Services",nb:"WMS fra GeoNorge katalog"},opacity:{en:"Opacity",nb:"Gjennomsiktighet"},btnWMS:{en:"Add WMS",nb:"Legg til WMS"},descriptionWMS:{en:"Discover available layers for given WMS Service URL, and add selected layers to the map",nb:"Finn tema for en gitt WMS og vis de på kartet"},btnSingleFileUpload:{en:"Add single file data",nb:"Legg til data fra fil"},descriptionSingleFileUpload:{en:"Upload KML, GPX, SOSI, XLSX, CSV, GeoJSON, DXF eller GML files and show them on the map",nb:"Last opp KML-, GPX-, SOSI-, XLSX-, CSV-, GeoJSON-, DXF- eller GML-filer og vis dem på kartet"},fileUnsupportedSingleFileUpload:{en:"Unsupported file type",nb:"Filtypen støttes ikke"},fileUploadFailureSingleFileUpload:{en:"Unable to upload file",nb:"Kunne ikke laste fil"},btnRasterUpload:{en:"Add raster file",nb:"Legg til raster"},nameImage:{en:"Image file (jpeg, tiff)",nb:"Bilde (jpeg, tiff)"},nameWorld:{en:"World file",nb:"World-fil"},info:{en:"<p>Choose a georeferenced image and an optional world file. The coordinate system of the image must be ##AV_MAP_PROJ##. Data might be drawn in the wrong place if you upload an image with a different c
1oordinate system.</p><p>Max file size is 15 MB.</p>",nb:"<p>Velg et georeferert bilde samt tilhørende world-fil (valgfritt). Koordinatsystemet pÃ¥ bildet mÃ¥ være ##AV_MAP_PROJ##. Dataene kan bli tegnet pÃ¥ feil sted i kartet dersom bildet du laster opp er i et annet koordinatsystem.</p><p>Maks filstørrelse er 15 MB.</p>"},descriptionRasterUpload:{en:"Upload georeferenced TIF OR PNG files and show them on the map",nb:"Last opp georefererte TIF eller PNG-filer og vis dem i kartet"},rasterMissingProjection:{en:"The image file you uploaded do not appear to be a georeferenced image. Try upload a world file if you believe this is incorrect.",nb:"Bildet du lastet opp ser ikke ut til Ã¥ være georeferert. Prøv Ã¥ laste opp en world-fil dersom du tror dette er feil."},btnShape:{en:"Add shape file",nb:"Legg til Shape-fil"},nameShp:{en:"Shp file",nb:"Shp-fil"},nameShx:{en:"Shx file",nb:"Shx-fil"},nameDbf:{en:"Dbf file",nb:"Dbf-fil"},descriptionShape:{en:"Upload Shape files and show them on the map",nb:"Last opp Shape-filer og vis dem pÃ¥ kartet"},shape_info:{en:"Drag and drop the shape file into the drag and drop area. Feel free to add the belonging .prj file to make sure geometries are placed correctly in the map.",nb:"Dra og slipp shape filen du ønsker Ã¥ laste opp inn i det stiplede omrÃ¥de. Ta gjerne med den tilhørende .prj filen sÃ¥ blir geometriene plassert riktig i kartet."},projEmpty:{en:"Not sure",nb:"Vet ikke"},pickProj:{en:"Coordinate system for your file",nb:"Filens koordinatsystem"},pickShape:{en:"Shape file and its corresponding shx- and dbf file",nb:"Shape-fil og tilhørende shx- og dbf-fil"},btnCsw:{en:"Add WMS from catalog",nb:"Legg til WMS fra katalog"},descriptionCsw:{en:"Find WMS services from Catalog, based on your criteria",nb:"Søk etter WMS fra GeoNorge katalog og vis valgte tema pÃ¥ kartet"},saveUserObjects_title:{en:"Info"},saveUserObjects_msg:{en:"There are unsaved user defined data. Do you want to add them to your list of objects?",nb:"Du har brukerdefinerte data som ikke er lagret. Vil du lagre dem og legge dem til din liste med brukerdefinerte data?",nn:"Du har brukerdefinerte data som ikkje er lagret. Vil du lagre dei og legge dei til din liste med brukerdefinerte data?"},fileUploadFailed:{en:"Could not read uploaded file! Try with another file",nb:"Kunne ikke lese filen. Forsøk igjen med en annen fil."},copy_qtip:{en:"Copy the selected feature to draw and measure for further editing",nb:"Kopier valgte objekt til tegn og mÃ¥l for videre redigering"},copy_disabled_qtip:{en:"The geometry is too complex and cannot be copied to draw and measure.",nb:"Geometrien er for kompleks og kan ikke kopieres til tegn og mÃ¥l."},color_qtip:{en:"Change color",nb:"Endre farge"},delete_qtip:{en:"Delete and remove from map",nb:"Slett og fjern fra kartet"},dataview_qtip:{en:"Open table view",nb:"Ã
pne tabell"},zoom_qtip:{en:"Zoom to extent",nb:"Zoom til utstrekning"},complex_warning_title:{en:"Complex geometry",nb:"Kompleks geometri"},complex_warning_msg:{en:"The geometry contains many nodes and can be slow to edit. Continue anyway?",nb:"Geometrien har mange noder og redigering kan gjøre løsningen treg. Fortsett likevel?"},acceptedFileStr:{nb:"Shape (.shp, .dbf og .shx er påkrevd, ta med .prj og .cpg om mulig)",en:"Shape (.shp, .dbf og .shx is mandatory, add .prj and .cpg if possible)"},fileUpload:{en:"Drag and drop files here, or click to explore",nb:"Dra og slipp filer her, eller klikk for å utforske"},fileUploadLoading:{en:"Uploading shape-file, please wait...",nb:"Laster opp shapefiler, vennligst vent..."},rasterUploadFailure:{en:"File upload failed. Check file size and format.",nb:"Filopplasting feilet. Sjekk filstørrelse og format."},retry:{en:"Please try again",nb:"Vennligst prøv igjen"},missingPrj:{en:"Missing .prj file. Add .prj file or select projection",nb:"Mangler -prj fil. Legg ved .prj fil eller velg koordinatsystem under"},missingDbf:{en:"Missing .dbf file",nb:"Mangler .dbf fil"},missingShx:{en:"Missing .shx file",nb:"Mangler .shx fil"},missingShp:{en:"Missing .shp file",nb:"Mangler .shp fil"}},errCodes:{generic:{en:"Could not read uploaded file! Try with another file",nb:"Kunne ikke lese filen. Forsøk igjen med en annen fil."},fup_0:{en:"Something went wrong during upload.",nb:"Noe gikk galt under oppplasting."},fup_1:{en:"Something went wrong during upload.",nb:"Noe gikk galt under oppplasting."},fup_2:{en:"No data uploaded.",nb:"Ingen data lastet opp."},fup_3:{en:"One or more invalid files",nb:"En eller flere filer har ugyldig format."},fup_4:{en:"One or more of the required files are missing.",nb:"En eller flere obligatoriske filer mangler."}}});Ext.define("Underscore.underscore",{_:null,constructor:function(){var b={_:null};(function(){var ak=this,ae=ak._,ag={},au=Array.prototype,ad=Object.prototype,ap=Function.prototype,ay=au.push,aj=au.slice,aw=au.concat,am=ad.toString,at=ad.hasOwnProperty,af=au.forEach,ai=au.map,aq=au.reduce,ac=au.reduceRight,ar=au.filter,av=au.every,al=au.some,Z=au.indexOf,ax=au.lastIndexOf,aa=Array.isArray,ab=Object.keys,az=ap.bind,ao=function(g){return g instanceof ao?g:this instanceof ao?(this._wrapped=g,void 0):new ao(g)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=ao),exports._=ao):ak._=ao,ao.VERSION="1.5.2";
1var X=ao.each=ao.forEach=function(z,q,w){if(null!=z){if(af&&z.forEach===af){z.forEach(q,w)}else{if(z.length===+z.length){for(var h=0,o=z.length;o>h;h++){if(q.call(w,z[h],h,z)===ag){return}}}else{for(var g=ao.keys(z),h=0,o=g.length;o>h;h++){if(q.call(w,z[g[h]],g[h],z)===ag){return}}}}}};ao.map=ao.collect=function(q,g,h){var o=[];return null==q?o:ai&&q.map===ai?q.map(g,h):(X(q,function(A,w,z){o.push(g.call(h,A,w,z))}),o)};var U="Reduce of empty array with no initial value";ao.reduce=ao.foldl=ao.inject=function(w,h,o,q){var g=arguments.length>2;if(null==w&&(w=[]),aq&&w.reduce===aq){return q&&(h=ao.bind(h,q)),g?w.reduce(h,o):w.reduce(h)}if(X(w,function(B,A,z){g?o=h.call(q,o,B,A,z):(o=B,g=!0)}),!g){throw new TypeError(U)}return o},ao.reduceRight=ao.foldr=function(A,q,w,z){var h=arguments.length>2;if(null==A&&(A=[]),ac&&A.reduceRight===ac){return z&&(q=ao.bind(q,z)),h?A.reduceRight(q,w):A.reduceRight(q)}var o=A.length;if(o!==+o){var g=ao.keys(A);o=g.length}if(X(A,function(D,E,B){E=g?g[--o]:--o,h?w=q.call(z,w,A[E],E,B):(w=A[E],h=!0)}),!h){throw new TypeError(U)}return w},ao.find=ao.detect=function(q,g,h){var o;return J(q,function(A,w,z){return g.call(h,A,w,z)?(o=A,!0):void 0}),o},ao.filter=ao.select=function(q,g,h){var o=[];return null==q?o:ar&&q.filter===ar?q.filter(g,h):(X(q,function(A,w,z){g.call(h,A,w,z)&&o.push(A)}),o)},ao.reject=function(o,g,h){return ao.filter(o,function(z,w,q){return !g.call(h,z,w,q)},h)},ao.every=ao.all=function(q,h,o){h||(h=ao.identity);var g=!0;return null==q?g:av&&q.every===av?q.every(h,o):(X(q,function(A,z,w){return(g=g&&h.call(o,A,z,w))?void 0:ag}),!!g)};var J=ao.some=ao.any=function(q,h,o){h||(h=ao.identity);var g=!1;return null==q?g:al&&q.some===al?q.some(h,o):(X(q,function(A,z,w){return g||(g=h.call(o,A,z,w))?ag:void 0}),!!g)};ao.contains=ao.include=function(h,g){return null==h?!1:Z&&h.indexOf===Z?h.indexOf(g)!=-1:J(h,function(o){return o===g})},ao.invoke=function(q,g){var h=aj.call(arguments,2),o=ao.isFunction(g);return ao.map(q,function(w){return(o?g:w[g]).apply(w,h)})},ao.pluck=function(h,g){return ao.map(h,function(o){return o[g]})},ao.where=function(o,g,h){return ao.isEmpty(g)?h?void 0:[]:ao[h?"find":"filter"](o,function(w){for(var q in g){if(g[q]!==w[q]){return !1}}return !0})},ao.findWhere=function(h,g){return ao.where(h,g,!0)},ao.max=function(q,g,h){if(!g&&ao.isArray(q)&&q[0]===+q[0]&&q.length<65535){return Math.max.apply(Math,q)}if(!g&&ao.isEmpty(q)){return -1/0}var o={computed:-1/0,value:-1/0};return X(q,function(B,z,A){var w=g?g.call(h,B,z,A):B;w>o.computed&&(o={value:B,computed:w})}),o.value},ao.min=function(q,g,h){if(!g&&ao.isArray(q)&&q[0]===+q[0]&&q.length<65535){return Math.min.apply(Math,q)}if(!g&&ao.isEmpty(q)){return 1/0}var o={computed:1/0,value:1/0};return X(q,function(B,z,A){var w=g?g.call(h,B,z,A):B;w<o.computed&&(o={value:B,computed:w})}),o.value},ao.shuffle=function(q){var g,h=0,o=[];return X(q,function(w){g=ao.random(h++),o[h-1]=o[g],o[g]=w}),o},ao.sample=function(o,g,h){return arguments.length<2||h?o[ao.random(o.length-1)]:ao.shuffle(o).slice(0,Math.max(0,g))};var an=function(g){return ao.isFunction(g)?g:function(h){return h[g]}};ao.sortBy=function(q,g,h){var o=an(g);return ao.pluck(ao.map(q,function(A,z,w){return{value:A,index:z,criteria:o.call(h,A,z,w)}}).sort(function(B,w){var z=B.criteria,A=w.criteria;if(z!==A){if(z>A||z===void 0){return 1}if(A>z||A===void 0){return -1}}return B.index-w.index}),"value")};var Q=function(g){return function(q,w,z){var h={},o=null==w?ao.identity:an(w);return X(q,function(B,A){var D=o.call(z,B,A,q);g(h,D,B)}),h}};ao.groupBy=Q(function(o,g,h){(ao.has(o,g)?o[g]:o[g]=[]).push(h)}),ao.indexBy=Q(function(o,g,h){o[g]=h}),ao.countBy=Q(function(h,g){ao.has(h,g)?h[g]++:h[g]=1}),ao.sortedIndex=function(D,w,z,A){z=null==z?ao.identity:an(z);for(var h=z.call(A,w),q=0,g=D.length;g>q;){var B=q+g>>>1;z.call(A,D[B])<h?q=B+1:g=B}return q},ao.toArray=function(g){return g?ao.isArray(g)?aj.call(g):g.length===+g.length?ao.map(g,ao.identity):ao.values(g):[]},ao.size=function(g){return null==g?0:g.length===+g.length?g.length:ao.keys(g).length},ao.first=ao.head=ao.take=function(o,g,h){return null==o?void 0:null==g||h?o[0]:aj.call(o,0,g)},ao.initial=function(o,g,h){return aj.call(o,0,o.length-(null==g||h?1:g))},ao.last=function(o,g,h){return null==o?void 0:null==g||h?o[o.length-1]:aj.call(o,Math.max(o.length-g,0))},ao.rest=ao.tail=ao.drop=function(o,g,h){return aj.call(o,null==g||h?1:g)},ao.compact=function(g){return ao.filter(g,ao.identity)};var L=function(o,g,h){return g&&ao.every(o,ao.isArray)?aw.apply(h,o):(X(o,function(q){ao.isArray(q)||ao.isArguments(q)?g?ay.apply(h,q):L(q,g,h):h.push(q)}),h)};ao.flatten=function(h,g){return L(h,g,[])},ao.without=function(g){return ao.difference(g,aj.call(arguments,1
1))},ao.uniq=ao.unique=function(A,q,w,z){ao.isFunction(q)&&(z=w,w=q,q=!1);var h=w?ao.map(A,w,z):A,o=[],g=[];return X(h,function(B,D){(q?D&&g[g.length-1]===B:ao.contains(g,B))||(g.push(B),o.push(A[D]))}),o},ao.union=function(){return ao.uniq(ao.flatten(arguments,!0))},ao.intersection=function(h){var g=aj.call(arguments,1);return ao.filter(ao.uniq(h),function(o){return ao.every(g,function(q){return ao.indexOf(q,o)>=0})})},ao.difference=function(h){var g=aw.apply(au,aj.call(arguments,1));return ao.filter(h,function(o){return !ao.contains(g,o)})},ao.zip=function(){for(var o=ao.max(ao.pluck(arguments,"length").concat(0)),g=new Array(o),h=0;o>h;h++){g[h]=ao.pluck(arguments,""+h)}return g},ao.object=function(w,h){if(null==w){return{}}for(var o={},q=0,g=w.length;g>q;q++){h?o[w[q]]=h[q]:o[w[q][0]]=w[q][1]}return o},ao.indexOf=function(w,h,o){if(null==w){return -1}var q=0,g=w.length;if(o){if("number"!=typeof o){return q=ao.sortedIndex(w,h),w[q]===h?q:-1}q=0>o?Math.max(0,g+o):o}if(Z&&w.indexOf===Z){return w.indexOf(h,o)}for(;g>q;q++){if(w[q]===h){return q}}return -1},ao.lastIndexOf=function(w,h,o){if(null==w){return -1}var q=null!=o;if(ax&&w.lastIndexOf===ax){return q?w.lastIndexOf(h,o):w.lastIndexOf(h)}for(var g=q?o:w.length;g--;){if(w[g]===h){return g}}return -1},ao.range=function(z,o,q){arguments.length<=1&&(o=z||0,z=0),q=arguments[2]||1;for(var w=Math.max(Math.ceil((o-z)/q),0),g=0,h=new Array(w);w>g;){h[g++]=z,z+=q}return h};var H=function(){};ao.bind=function(q,g){var h,o;if(az&&q.bind===az){return az.apply(q,aj.call(arguments,1))}if(!ao.isFunction(q)){throw new TypeError()}return h=aj.call(arguments,2),o=function(){if(!(this instanceof o)){return q.apply(g,h.concat(aj.call(arguments)))}H.prototype=q.prototype;var w=new H();H.prototype=null;var z=q.apply(w,h.concat(aj.call(arguments)));return Object(z)===z?z:w}},ao.partial=function(h){var g=aj.call(arguments,1);return function(){return h.apply(this,g.concat(aj.call(arguments)))}},ao.bindAll=function(h){var g=aj.call(arguments,1);if(0===g.length){throw new Error("bindAll must be passed function names")}return X(g,function(o){h[o]=ao.bind(h[o],h)}),h},ao.memoize=function(o,g){var h={};return g||(g=ao.identity),function(){var q=g.apply(this,arguments);return ao.has(h,q)?h[q]:h[q]=o.apply(this,arguments)}},ao.delay=function(o,g){var h=aj.call(arguments,2);return setTimeout(function(){return o.apply(null,h)},g)},ao.defer=function(g){return ao.delay.apply(ao,[g,1].concat(aj.call(arguments,1)))},ao.throttle=function(q,E,g){var z,D,w,B=null,h=0;g||(g={});var A=function(){h=g.leading===!1?0:new Date(),B=null,w=q.apply(z,D)};return function(){var o=new Date();h||g.leading!==!1||(h=o);var F=E-(o-h);return z=this,D=arguments,0>=F?(clearTimeout(B),B=null,h=o,w=q.apply(z,D)):B||g.trailing===!1||(B=setTimeout(A,F)),w}},ao.debounce=function(D,w,z){var A,h,q,g,B;return function(){q=this,h=arguments,g=new Date();var E=function(){var F=new Date()-g;w>F?A=setTimeout(E,w-F):(A=null,z||(B=D.apply(q,h)))},o=z&&!A;return A||(A=setTimeout(E,w)),o&&(B=D.apply(q,h)),B}},ao.once=function(o){var g,h=!1;return function(){return h?g:(h=!0,g=o.apply(this,arguments),o=null,g)}},ao.wrap=function(h,g){return function(){var o=[h];return ay.apply(o,arguments),g.apply(this,o)}},ao.compose=function(){var g=arguments;return function(){for(var h=arguments,o=g.length-1;o>=0;o--){h=[g[o].apply(this,h)]}return h[0]}},ao.after=function(h,g){return function(){return --h<1?g.apply(this,arguments):void 0}},ao.keys=ab||function(o){if(o!==Object(o)){throw new TypeError("Invalid object")}var g=[];for(var h in o){ao.has(o,h)&&g.push(h)}return g},ao.values=function(w){for(var h=ao.keys(w),o=h.length,q=new Array(o),g=0;o>g;g++){q[g]=w[h[g]]}return q},ao.pairs=function(w){for(var h=ao.keys(w),o=h.length,q=new Array(o),g=0;o>g;g++){q[g]=[h[g],w[h[g]]]}return q},ao.invert=function(w){for(var h={},o=ao.keys(w),q=0,g=o.length;g>q;q++){h[w[o[q]]]=o[q]}return h},ao.functions=ao.methods=function(o){var g=[];for(var h in o){ao.isFunction(o[h])&&g.push(h)}return g.sort()},ao.extend=function(g){return X(aj.call(arguments,1),function(h){if(h){for(var o in h){g[o]=h[o]}}}),g},ao.pick=function(o){var g={}
1,h=aw.apply(au,aj.call(arguments,1));return X(h,function(q){q in o&&(g[q]=o[q])}),g},ao.omit=function(q){var h={},o=aw.apply(au,aj.call(arguments,1));for(var g in q){ao.contains(o,g)||(h[g]=q[g])}return h},ao.defaults=function(g){return X(aj.call(arguments,1),function(h){if(h){for(var o in h){g[o]===void 0&&(g[o]=h[o])}}}),g},ao.clone=function(g){return ao.isObject(g)?ao.isArray(g)?g.slice():ao.extend({},g):g},ao.tap=function(h,g){return g(h),h};var G=function(q,F,g,A){if(q===F){return 0!==q||1/q==1/F}if(null==q||null==F){return q===F}q instanceof ao&&(q=q._wrapped),F instanceof ao&&(F=F._wrapped);var E=am.call(q);if(E!=am.call(F)){return !1}switch(E){case"[object String]":return q==String(F);case"[object Number]":return q!=+q?F!=+F:0==q?1/q==1/F:q==+F;case"[object Date]":case"[object Boolean]":return +q==+F;case"[object RegExp]":return q.source==F.source&&q.global==F.global&&q.multiline==F.multiline&&q.ignoreCase==F.ignoreCase}if("object"!=typeof q||"object"!=typeof F){return !1}for(var w=g.length;w--;){if(g[w]==q){return A[w]==F}}var D=q.constructor,h=F.constructor;if(D!==h&&!(ao.isFunction(D)&&D instanceof D&&ao.isFunction(h)&&h instanceof h)){return !1}g.push(q),A.push(F);var B=0,z=!0;if("[object Array]"==E){if(B=q.length,z=B==F.length){for(;B--&&(z=G(q[B],F[B],g,A));){}}}else{for(var I in q){if(ao.has(q,I)&&(B++,!(z=ao.has(F,I)&&G(q[I],F[I],g,A)))){break}}if(z){for(I in F){if(ao.has(F,I)&&!B--){break}}z=!B}}return g.pop(),A.pop(),z};ao.isEqual=function(h,g){return G(h,g,[],[])},ao.isEmpty=function(h){if(null==h){return !0}if(ao.isArray(h)||ao.isString(h)){return 0===h.length}for(var g in h){if(ao.has(h,g)){return !1}}return !0},ao.isElement=function(g){return !(!g||1!==g.nodeType)},ao.isArray=aa||function(g){return"[object Array]"==am.call(g)},ao.isObject=function(g){return g===Object(g)},X(["Arguments","Function","String","Number","Date","RegExp"],function(g){ao["is"+g]=function(h){return am.call(h)=="[object "+g+"]"}}),ao.isArguments(arguments)||(ao.isArguments=function(g){return !(!g||!ao.has(g,"callee"))}),"function"!=typeof/ . /&&(ao.isFunction=function(g){return"function"==typeof g}),ao.isFinite=function(g){return isFinite(g)&&!isNaN(parseFloat(g))},ao.isNaN=function(g){return ao.isNumber(g)&&g!=+g},ao.isBoolean=function(g){return g===!0||g===!1||"[object Boolean]"==am.call(g)},ao.isNull=function(g){return null===g},ao.isUndefined=function(g){return g===void 0},ao.has=function(h,g){return at.call(h,g)},ao.noConflict=function(){return ak._=ae,this},ao.identity=function(g){return g},ao.times=function(w,h,o){for(var q=Array(Math.max(0,w)),g=0;w>g;g++){q[g]=h.call(o,g)}return q},ao.random=function(h,g){return null==g&&(g=h,h=0),h+Math.floor(Math.random()*(g-h+1))};var P={escape:{"&":"&","<":"<",">":">",'"':""","'":"'"}};P.unescape=ao.invert(P.escape);var C={escape:new RegExp("["+ao.keys(P.escape).join("")+"]","g"),unescape:new RegExp("("+ao.keys(P.unescape).join("|")+")","g")};ao.each(["escape","unescape"],function(g){ao[g]=function(h){return null==h?"":(""+h).replace(C[g],function(o){return P[g][o]})}}),ao.result=function(o,g){if(null==o){return void 0}var h=o[g];return ao.isFunction(h)?h.call(o):h},ao.mixin=function(g){X(ao.functions(g),function(h){var o=ao[h]=g[h];ao.prototype[h]=function(){var q=[this._wrapped];return ay.apply(q,arguments),Y.call(this,o.apply(ao,q))}})};var K=0;ao.uniqueId=function(h){var g=++K+"";return h?h+g:g},ao.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var ah=/(.)^/,W={"'":"'","\\":"\\","\r":"r","\n":"n","\t":"t","\u2028":"u2028","\u2029":"u2029"},V=/\\|'|\r|\n|\t|\u2028|\u2029/g;ao.template=function(q,E,g){var z;g=ao.defaults({},g,ao.templateSettings);var D=new RegExp([(g.escape||ah).source,(g.interpolate||ah).source,(g.evaluate||ah).source].join("|")+"|$","g"),w=0,B="__p+='";q.replace(D,function(I,M,N,F,O){return B+=q.slice(w,O).replace(V,function(o){return"\\"+W[o]}),M&&(B+="'+\n((__t=("+M+"))==null?'':_.escape(__t))+\n'"),N&&(B+="'+\n((__t=("+N+"))==null?'':__t)+\n'"),F&&(B+="';\n"+F+"\n__p+='"),w=O+I.length,I}),B+="';\n",g.variable||(B="with(obj||{}){\n"+B+"}\n"),B="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+B+"return __p;\n";try{z=new Function(g.variable||"obj","_",B)}catch(h){throw h.source=B,h}if(E){return z(E,ao)}var A=function(o){return z.call(this,o,ao)};
1return A.source="function("+(g.variable||"obj")+"){\n"+B+"}",A},ao.chain=function(g){return ao(g).chain()};var Y=function(g){return this._chain?ao(g).chain():g};ao.mixin(ao),X(["pop","push","reverse","shift","sort","splice","unshift"],function(h){var g=au[h];ao.prototype[h]=function(){var o=this._wrapped;return g.apply(o,arguments),"shift"!=h&&"splice"!=h||0!==o.length||delete o[0],Y.call(this,o)}}),X(["concat","join","slice"],function(h){var g=au[h];ao.prototype[h]=function(){return Y.call(this,g.apply(this._wrapped,arguments))}}),ao.extend(ao.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}).call(b);this._=b._}});Ext.define("Sosijs.SOSI_lite",{underscore:null,SOSI:{},constructor:function(){this.underscore=Ext.create("Underscore.underscore");var C=this.underscore._;var q=this.SOSI;(function(D,E){D.Base=function(){this.initialize.apply(this,arguments)};C.extend(D.Base.prototype,{initialize:function(){}});D.Base.extend=function(F,H){var G=this;var J;if(F&&C.has(F,"constructor")){J=F.constructor}else{J=function(){return G.apply(this,arguments)}}C.extend(J,G,H);var I=function(){this.constructor=J};I.prototype=G.prototype;J.prototype=new I();if(F){C.extend(J.prototype,F)}J.__super__=G.prototype;return J}}(q));(function(P,H){function M(U){return C.rest(U.split(" ")).join(" ").trim()}function T(U){return new Array(U+1).join(".")}function E(U){if(U.indexOf(":")!==-1){return C.first(U.split(":")).trim()}return C.first(U.split(" ")).trim()}function D(U){if(U.indexOf("!")!==-1){U=U.substring(0,U.indexOf("!"))}return U.replace(/\s+$/,"")}function O(U,V){return D(E(U.replace(T(V),"")))}function R(V,U){if(!C.isArray(V.objects[V.key])){V.objects[V.key]=[]}V.objects[V.key].push(U)}function J(V){var U=V.substr(0,C.lastIndexOf(V,".")+1);if(C.every(U,function(W){return(W===".")})){return U.length}return 0}function G(V){var U=C.find(V,function(W){return(W!==".")});if(U){V=V.substr(0,C.indexOf(V,U))}if(C.every(V,function(W){return(W===".")})){return V.length}return 0}function L(U,V){return(G(U)===V)}function K(U){return U===""}function Q(U,V){return C.reduce(C.reject(U,K),function(X,W){W=D(W);if(L(W,V)){X.key=O(W,V);W=M(W)}if(!K(W)){R(X,W)}return X},{objects:{}}).objects}function F(U,W){if(!P.types){return W}var V=C.isArray(U)?U:q.types[U];if(V){if(!C.isObject(V[0])){if(V[1]==="Integer"){return parseInt(W,10)}else{if(V[1]==="Real"){return parseFloat(W)}else{if(V[1]==="Date"){if(W.length===8){return new Date(parseInt(W.substring(0,4),10),parseInt(W.substring(4,6),10)-1,parseInt(W.substring(6,8),10))}else{if(W.length===14){return new Date(parseInt(W.substring(0,4),10),parseInt(W.substring(4,6),10)-1,parseInt(W.substring(6,8),10),parseInt(W.substring(8,10),10),parseInt(W.substring(10,12),10),parseInt(W.substring(12,14),10))}}}else{if(C.isString(V[1])){if(W[0]==='"'||W[0]==="'"){return W.substring(1,W.length-1)}return W}}}}}}return W}function N(V,U){return function(W){if(!W){return null}if(C.isObject(W)){return W}if(C.isString(W)){return C.reduce(W.match(/"[^"]*"|'[^']*'|\S+/g),function(Z,X,Y){Z[U[Y][0]]=F(U[Y],X);return Z},{})}}}function I(U){if(P.types&&P.types[U]){var V=P.types[U];return !!V&&V[0]||U}return U}function S(U){return C.reduce(Q(U,3),function(W,X,V){W[I(V)]=F(V,X[0]);return W},{})}P.util={parseTree:Q,cleanupLine:D,getLongname:I,parseFromLevel2:function(U){return C.reduce(Q(U,2),function(X,V,W){if(V.length){if(V[0][0]==="."){X[I(W)]=S(V)}else{if(V.length>1){X[I(W)]=C.map(V,function(Y){return F(W,Y)})}else{X[I(W)]=F(W,V[0])}}}return X},{})},specialAttributes:(function(){if(!!q.types){return C.reduce(q.types,function(U,W,V){if(C.isObject(W[1])){U[W[0]]={name:W[0],createFunction:N(V,W[1])}}return U},{})}}()),round:function(W,U){var V=Math.pow(10,U);return Math.round(W*V)/V}};P.geosysMap={2:{srid:"EPSG:4326",def:"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs "}};P.koordsysMap={1:{srid:"EPSG:27391",def:"+proj=tmerc +lat_0=58 +lon_0=-4.666666666666667 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},2:{srid:"EPSG:27392",def:"+proj=tmerc +lat_0=58 +lon_0=-2.333333333333333 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},3:{srid:"EPSG:27393",def:"+proj=tmerc +lat_0=58 +lon_0=0 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},4:{srid:"EPSG:27394",def:"+proj=tmerc +lat_0=58 +lon_0=2.5 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},5:{srid:"EPSG:27395",def:"+proj=tmerc +lat_0=58 +lon_0=6.166666666666667 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},6:{srid:"EPSG:27396",def:"+proj=tmerc +lat_0=58 +lon_0=10.16666666666667 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},7:{srid:"EPSG:27397",def:"+proj=tmerc +lat_0=58 +lon_0=14.16666666666667 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},8:{srid:"EPSG:27398",def:"+proj=tmerc +lat_0=58 +lon_0=18.33333333333333 +k=1 +x_0=0 +y_0=0 +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +pm=oslo +units=m +no_defs"},9:{srid:"EPSG:4273",def:"+proj=longlat +a=6377492.018 +b=6356173.508712696 +towgs84=278.3,93,474.5,7.889,0.05,-6.61,6.21 +no_defs"},21:{srid:"EPSG:32631",def:"+proj=utm +zone=31 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"},22:{srid:"EPSG:32632",def:"+proj=utm +zone=32 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"}
1,23:{srid:"EPSG:32633",def:"+proj=utm +zone=33 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"},24:{srid:"EPSG:32634",def:"+proj=utm +zone=34 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"},25:{srid:"EPSG:32635",def:"+proj=utm +zone=35 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"},26:{srid:"EPSG:32636",def:"+proj=utm +zone=35 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"},31:{srid:"EPSG:23031",def:"+proj=utm +zone=31 +ellps=intl +units=m +no_defs"},32:{srid:"EPSG:23032",def:"+proj=utm +zone=32 +ellps=intl +units=m +no_defs"},33:{srid:"EPSG:23033",def:"+proj=utm +zone=33 +ellps=intl +units=m +no_defs"},34:{srid:"EPSG:23034",def:"+proj=utm +zone=34 +ellps=intl +units=m +no_defs"},35:{srid:"EPSG:23035",def:"+proj=utm +zone=35 +ellps=intl +units=m +no_defs"},36:{srid:"EPSG:23036",def:"+proj=utm +zone=36 +ellps=intl +units=m +no_defs"},50:{srid:"EPSG:4230",def:"+proj=longlat +ellps=intl +no_defs"},72:{srid:"EPSG:4322",def:"+proj=longlat +ellps=WGS72 +no_defs "},84:{srid:"EPSG:4258",def:"+proj=longlat +ellps=GRS80 +no_defs"},87:{srid:"EPSG:4231",def:"+proj=longlat +ellps=intl +no_defs "},205:{srid:"EPSG:5105",def:"+proj=tmerc +lat_0=58 +lon_0=5.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},206:{srid:"EPSG:5106",def:"+proj=tmerc +lat_0=58 +lon_0=6.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},207:{srid:"EPSG:5107",def:"+proj=tmerc +lat_0=58 +lon_0=7.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},208:{srid:"EPSG:5108",def:"+proj=tmerc +lat_0=58 +lon_0=8.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},209:{srid:"EPSG:5109",def:"+proj=tmerc +lat_0=58 +lon_0=9.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},210:{srid:"EPSG:5110",def:"+proj=tmerc +lat_0=58 +lon_0=10.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},211:{srid:"EPSG:5111",def:"+proj=tmerc +lat_0=58 +lon_0=11.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},212:{srid:"EPSG:5112",def:"+proj=tmerc +lat_0=58 +lon_0=12.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},213:{srid:"EPSG:5113",def:"+proj=tmerc +lat_0=58 +lon_0=13.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},214:{srid:"EPSG:5114",def:"+proj=tmerc +lat_0=58 +lon_0=14.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},215:{srid:"EPSG:5115",def:"+proj=tmerc +lat_0=58 +lon_0=15.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},216:{srid:"EPSG:5116",def:"+proj=tmerc +lat_0=58 +lon_0=16.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},217:{srid:"EPSG:5117",def:"+proj=tmerc +lat_0=58 +lon_0=17.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},218:{srid:"EPSG:5118",def:"+proj=tmerc +lat_0=58 +lon_0=18.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},219:{srid:"EPSG:5119",def:"+proj=tmerc +lat_0=58 +lon_0=19.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},220:{srid:"EPSG:5120",def:"+proj=tmerc +lat_0=58 +lon_0=20.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},221:{srid:"EPSG:5121",def:"+proj=tmerc +lat_0=58 +lon_0=21.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},222:{srid:"EPSG:5122",def:"+proj=tmerc +lat_0=58 +lon_0=22.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},223:{srid:"EPSG:5123",def:"+proj=tmerc +lat_0=58 +lon_0=23.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},224:{srid:"EPSG:5124",def:"+proj=tmerc +lat_0=58 +lon_0=24.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},225:{srid:"EPSG:5125",def:"+proj=tmerc +lat_0=58 +lon_0=25.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},226:{srid:"EPSG:5126",def:"+proj=tmerc +lat_0=58 +lon_0=26.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},227:{srid:"EPSG:5127",def:"+proj=tmerc +lat_0=58 +lon_0=27.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},228:{srid:"EPSG:5128",def:"+proj=tmerc +lat_0=58 +lon_0=28.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},239:{srid:"EPSG:5129",def:"+proj=tmerc +lat_0=58 +lon_0=29.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"},230:{srid:"EPSG:5130",def:"+proj=tmerc +lat_0=58 +lon_0=30.5 +k=1 +x_0=100000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"}};Proj4js.defs["EPSG:4258"]=P.koordsysMap["84"].def}(q));(function(I,F){function E(N,M){var O=N[M]||"";return O.replace(/"/g,"")}function L(N,M){return parseFloat(N[M])}function K(M){M=parseInt(M,10);
1if(I.koordsysMap[M]){return I.koordsysMap[M].srid}}function D(M){if(C.isArray(M)){throw new Error("GEOSYS cannot be parsed in uncompacted form yet.")}else{M=M.split(/\s+/)}if(I.geosysMap[M[0]]){return I.geosysMap[M[0]].srid}throw new Error("GEOSYS = "+M+" not found!")}function J(M){var N=M["MIN-NÃ"].split(/\s+/);var O=M["MAX-NÃ"].split(/\s+/);return[parseFloat(N[1]),parseFloat(N[0]),parseFloat(O[1]),parseFloat(O[0])]}function G(M){M=C.filter(M.split(/\s+/),function(N){return N!==""});return{x:parseFloat(M[1]),y:parseFloat(M[0])}}function H(M){if(M.TRANSPAR.enhet){return parseFloat(M.TRANSPAR.enhet)}return parseFloat(M.TRANSPAR.ENHET)}I.Head=I.Base.extend({initialize:function(M){this.setData(M)},parse:function(M){return I.util.parseFromLevel2(M)},setData:function(M){M=this.parse(M);this.eier=E(M,I.util.getLongname("EIER"));this.produsent=E(M,I.util.getLongname("PRODUSENT"));this.objektkatalog=E(M,"OBJEKTKATALOG");this.verifiseringsdato=M[I.util.getLongname("VERIFISERINGSDATO")];this.version=L(M,I.util.getLongname("SOSI-VERSJON"));this.level=L(M,I.util.getLongname("SOSI-NIVÃ
"));if(!!q.types){this.kvalitet=I.util.specialAttributes[I.util.getLongname("KVALITET")].createFunction(M[I.util.getLongname("KVALITET")])}else{this.kvalitet=E(M,I.util.getLongname("KVALITET"))}this.bbox=J(M["OMRÃ
DE"]);this.origo=G(M.TRANSPAR["ORIGO-NÃ"]);this.enhet=H(M);this.vertdatum=E(M.TRANSPAR,"VERT-DATUM");if(M.TRANSPAR["KOORDSYS"]){this.srid=K(M.TRANSPAR["KOORDSYS"])}else{this.srid=D(M.TRANSPAR["GEOSYS"])}}})}(q));(function(E,G){E.Point=E.Base.extend({knutepunkt:false,initialize:function(I,M,K){if(C.isNumber(I)){this.x=I;this.y=M;return}if(C.isArray(I)){I=I[1]}var L=I.split(/\s+/);var J=0;if(K<1){J=-Math.floor(Math.log(K)/Math.LN10)}this.y=E.util.round((parseInt(L[0],10)*K)+M.y,J);this.x=E.util.round((parseInt(L[1],10)*K)+M.x,J);if(L[2]&&!isNaN(L[2])){this.z=E.util.round(parseInt(L[2],10)*K,J)}if(I.indexOf(".KP")!==-1){this.setTiepoint(I.substring(I.indexOf(".KP"),I.length).split(" ")[1])}},setTiepoint:function(I){this.has_tiepoint=true;this.knutepunktkode=parseInt(I,10)}});E.LineString=E.Base.extend({initialize:function(I,K,J){this.kurve=C.compact(C.map(I,function(L){if(L.indexOf("NÃ")===-1){return new E.Point(L,K,J)}}));this.knutepunkter=C.filter(this.kurve,function(L){return L.has_tiepoint})}});function H(I){return C.filter(I,function(J){return(J.indexOf("NÃ")===-1)})}E.LineStringFromArc=E.LineString.extend({initialize:function(J,L,V){var aa=C.map(H(J),function(af){return new E.Point(af,L,V)});if(aa.length!==3){throw new Error("BUEP er ikke definert med 3 punkter")}var O=aa[0].x,N=aa[1].x,M=aa[2].x;var R=aa[0].y,Q=aa[1].y,P=aa[2].y;var Y=(O*O-N*N+R*R-Q*Q)/2;var W=(O*O-M*M+R*R-P*P)/2;var ae=O-N,ac=O-M,ad=R-Q,ab=R-P;var K=(ab*Y-ad*W)/(ae*ab-ad*ac);var I=(ac*Y-ae*W)/(ad*ac-ae*ab);var X=Math.sqrt(Math.pow(O-K,2)+Math.pow(R-I,2));var U=Math.atan2(R-I,O-K);var S=Math.atan2(P-I,M-K);var Z=S-U;if(Z<0){Z+=2*Math.PI}if(Z>Math.PI){Z=-2*Math.PI+Z}var T=Math.floor(32*Z/2*Math.PI);if(T<0){T=-T}if(T<3){T=3}Z=Z/(T-1);this.kurve=C.map(C.range(T),function(ag){var af=K+X*Math.cos(U+Z*ag);
1var ah=I+X*Math.sin(U+Z*ag);if(isNaN(af)){throw new Error("BUEP: Interpolated "+af+" for point "+ag+" of "+T+" in curve.")}return new E.Point(af,ah)});this.knutepunkter=C.filter(aa,function(af){return af.has_tiepoint})}});function D(I,J){var K=C.flatten(C.map(I,function(N){var O=Math.abs(N);var L=J.getById(O);if(!L){throw new Error("Fant ikke KURVE "+O+" for FLATE")}var M=L.geometry.kurve;if(N<0){M=C.clone(M).reverse()}return C.initial(M)}));K.push(K[0]);return K}function F(I){return C.map(I.trim().split(" "),function(J){return parseInt(J.replace(":",""),10)})}E.Polygon=E.Base.extend({initialize:function(J,M){var L=J;var I=[];var K=J.indexOf("(");if(K!==-1){L=J.substr(0,K);I=J.substr(K,J.length)}L=F(L);I=C.map(C.reduce(I,function(N,O){if(O==="("){N.push("")}else{if(O!==")"&&O!==""){N[N.length-1]+=O}}return N},[]),F);this.flate=D(L,M);this.holes=C.map(I,function(O){if(O.length===1){var N=M.getById(Math.abs(O[0]));if(N.geometryType==="FLATE"){return N.geometry.flate}}return D(O,M)});this.shellRefs=L;this.holeRefs=I}})}(q));(function(E,G){var F={PUNKT:E.Point,TEKST:E.Point,KURVE:E.LineString,BUEP:E.LineStringFromArc,LINJE:E.LineString,FLATE:E.Polygon};function D(H,I,K,J){if(!F[H]){throw new Error("GeometryType "+H+" is not handled (yet..?)")}return new F[H](I,K,J)}E.Feature=E.Base.extend({initialize:function(J,K,I,H){if(J.id===G||J.id===null){throw new Error("Feature must have ID!")}this.id=J.id;this.parseData(J,K,I,H);this.geometryType=J.geometryType},parseData:function(J,K,I){var H=C.reduce(J.lines,function(M,L){if(L.indexOf("..NÃ")!==-1){M.foundGeom=true}if(M.foundGeom){M.geom.push(L)}else{if(L.indexOf("..REF")!==-1){M.foundRef=true;L=L.replace("..REF","")}if(M.foundRef){if(L[0]==="."){M.foundRef=false}else{M.refs.push(L)}}else{M.attributes.push(L)}}return M},{attributes:[],geom:[],refs:[],foundGeom:false,foundRef:false});this.attributes=E.util.parseFromLevel2(H.attributes);this.attributes=C.reduce(this.attributes,function(L,N,M){if(!!E.util.specialAttributes&&E.util.specialAttributes[M]){L[M]=E.util.specialAttributes[M].createFunction(N)}else{L[M]=N}return L},{});if(H.refs.length>0){this.attributes.REF=H.refs.join(" ")}if(this.attributes.ENHET){I=parseFloat(this.attributes.ENHET)}this.raw_data={geometryType:J.geometryType,geometry:H.geom,origo:K,unit:I}},buildGeometry:function(H){if(this.raw_data.geometryType==="FLATE"){this.geometry=new E.Polygon(this.attributes.REF,H);this.geometry.center=new E.Point(this.raw_data.geometry,this.raw_data.origo,this.raw_data.unit);this.attributes=C.omit(this.attributes,"REF")}else{this.geometry=D(this.raw_data.geometryType,this.raw_data.geometry,this.raw_data.origo,this.raw_data.unit)}this.raw_data=null}});E.Features=E.Base.extend({initialize:function(I,H){this.head=H;this.index=[];this.features=C.object(C.filter(C.map(I,function(L,J){J=J.replace(":","").split(/\s+/);var K={id:parseInt(J[1],10),geometryType:J[0],lines:C.rest(L)};this.index.push(K.id);return[K.id,new E.Feature(K,H.origo,H.enhet)]},this),function(J){return !!F[J[1].geometryType]}))},ensureGeom:function(H){if(H&&!H.geometry){H.buildGeometry(this)}return H},length:function(){return C.size(this.features)},at:function(H){return this.getById(this.index[H])},getById:function(H){return this.ensureGeom(this.features[H])},all:function(H){if(H){return C.map(this.index,this.getById,this)}else{return C.map(this.features,this.ensureGeom,this)}}})}(q));(function(E,G){function D(H){return[H.x,H.y]}E.Sosi2GeoJSON=E.Base.extend({initialize:function(H){this.sosidata=H},dumps:function(){return{type:"FeatureCollection",features:this.getFeatures(),crs:this.writeCrs()}},getFeatures:function(){return C.map(this.sosidata.features.all(),this.createGeoJsonFeature,this)},createGeoJsonFeature:function(H){return{type:"Feature",id:H.id,properties:H.attributes,geometry:this.writeGeometry(H.geometry)}},writeGeometry:function(J){if(J instanceof E.Point){return{type:"Point",coordinates:D(J)}}if(J instanceof E.LineString){return{type:"LineString",coordinates:C.map(J.kurve,D)}}if(J instanceof E.Polygon){var I=C.map(J.flate,D);var H=C.map(J.holes,function(K){return C.map(K,D)});return{type:"Polygon",coordinates:[I].concat(H)}}throw new Error("cannot write geometry!")},writeCrs:function(){return{type:"name",properties:{name:this.sosidata.hode.srid}}}});function F(I,H){return C.map(I,function(K){var J=H[Math.abs(K)].index;if(K>0){return J}else{return -(Math.abs(J)+1)}})}E.Sosi2TopoJSON=E.Base.extend({initialize:function(H){this.sosidata=H},dumps:function(J){var L=this.getPoints();var I=this.getLines();var H=this.getPolygons(I);var K=L.concat(C.map(I,function(O){return O.geometry})).concat(H);var N={type:"Topology",objects:{}}
1;N.objects[J]={type:"GeometryCollection",geometries:K};var M=C.map(C.sortBy(I,function(O){return O.index}),function(O){return O.arc});if(M.length){N.arcs=M}return N},getByType:function(H){return C.filter(this.sosidata.features.all(),function(I){return(I.geometry instanceof H)})},getPoints:function(){var H=this.getByType(E.Point);return C.map(H,function(I){var J=C.clone(I.attributes);J.id=I.id;return{type:"Point",properties:J,coordinates:D(I.geometry)}})},getLines:function(){var H=this.getByType(E.LineString);return C.reduce(H,function(L,I,J){var K=C.clone(I.attributes);K.id=I.id;L[I.id]={geometry:{type:"LineString",properties:K,arcs:[J]},arc:C.map(I.geometry.kurve,D),index:J};return L},{})},getPolygons:function(I){var H=this.getByType(E.Polygon);return C.map(H,function(K){var J=C.clone(K.attributes);J.id=K.id;var L=[F(K.geometry.shellRefs,I)];L=L.concat(C.map(K.geometry.holeRefs,function(N){if(N.length===1){var M=this.sosidata.features.getById(Math.abs(N[0]));if(M.geometry instanceof E.Polygon){return F(M.geometry.shellRefs,I)}}return F(N,I)},this));return{type:"Polygon",properties:J,arcs:L}},this)}})}(q));(function(G,J){var F=G.Base.extend({});var E=G.Base.extend({});var H={geojson:G.Sosi2GeoJSON,topojson:G.Sosi2TopoJSON};var D=G.Base.extend({initialize:function(K){this.hode=new G.Head(K.HODE||K["HODE 0"]);this.def=new F(K.DEF);this.objdef=new E(K.OBJDEF);this.features=new G.Features(C.omit(K,["HODE","HODE 0","DEF","OBJDEF","SLUTT"]),this.hode)},dumps:function(K){if(H[K]){return new H[K](this).dumps(C.rest(arguments))}throw new Error("Outputformat "+K+" is not supported!")}});function I(K){return C.map(K.split("\n"),function(L){if(L.indexOf("!")!==0){L=L.split("!")[0]}return L.replace(/^\s+|\s+$/g,"")})}G.Parser=G.Base.extend({parse:function(K){return new D(G.util.parseTree(I(K),1))},getFormats:function(){return C.keys(H)}})}(q));var g=new q.Parser();if(!(typeof require=="undefined")){var w=require("fs");var o=require("util");var g=new q.Parser();if(process.argv.length<4){o.print("\nusage: nodejs SOSI.js.js format infile.sos > outfile\n\nwhere: format : one of ["+g.getFormats()+"]\n infile.sos : a file in SOSI format\n outfile : an output file name, omit for stdout\n\n");process.exit(1)}var B=process.argv[2],b=process.argv[3];function A(D,E){json=g.parse(D).dumps(E);return JSON.stringify(json)}data=w.readFileSync(b,"utf8");var h=data.substring(0,500).match(/TEGNSETT.*/).toString();h=h.split(/\s+/)[1].match(/\S+/).toString();if(h&&h!="UTF8"){var z=require("iconv").Iconv;converter=new z(h,"UTF-8");data=w.readFileSync(b,h=null);data=converter.convert(data).toString()}o.print(A(data,B))}}});Ext.define("Client.module.tool.layerManagerPro.ExternalCategory",{mixins:{observable:Ext.util.Observable},config:{recordIdField:"id",parentNode:null,categoryTitle:"",hidden:false,nodeIdentifier:null,defaultExpanded:true},constructor:function(b){var g=this;Ext.apply(g,b);if(!g.nodeIdentifier){g.nodeIdentifier=Ext.id()}g.hasOwnParentNode=!g.parentNode;g.nodes=[];g.mixins.observable.constructor.call(g,b);g.addEvents("checkchangepro")},isProPresent:function(){var b=this;if(b._isProPresent===undefined){b._isProPresent=Client.AppLogic.moduleController.isModulePresent("av_layer_manager_pro")}return b._isProPresent},addNodes:function(h){var q=this,g=[],o=[];if(!q.isProPresent()){return}q.nodes.forEach(function(A){if(h.findExact(q.recordIdField,A.get("recordData").get(q.recordIdField))==-1){o.push(A)}});h.each(function(B){var A=q.addNode(B);if(A){g.push(A)}else{q.updateNode(B)}});o.forEach(function(A){A.remove();q.nodes.splice(q.nodes.indexOf(A),1)});if(g.length>0){var b=q.parentNode;if(Ext.isString(b)){var z={uuid:b};Client.AppLogic.dispatchEvent("layerManagerResolveNode",z);q.parentNode=b=z.node}var w={config:{name:q.categoryTitle,createFolder:!b,rootNode:b,hidden:q.hidden,uuid:q.uuid,isFolderChecked:q.checked,folderExpanded:q.defaultExpanded},records:g.reverse()};
1Client.AppLogic.dispatchEvent("layerManagerAddNodes",w);if(!q.parentNode){q.parentNode=w.parentNode}if(!q.parentNode.clickHandle){q.parentNode.clickHandle=Ext.bind(q.onCheckChangeParent,q)}}else{if(o.length>0){Client.AppLogic.dispatchEvent("layerManagerRefresh")}}},removeNodes:function(){var b=this;if(!b.parentNode){return}Client.AppLogic.dispatchEvent("layerManagerRemoveNodes",b.parentNode);b.nodes=[];b.parentNode=null},getNode:function(g){var b=this;return b.nodes.find(function(h){return h.get("recordData").get(b.recordIdField)==g})},addNode:function(b){var h=this,o=b.get(h.recordIdField),g=h.getNode(o);if(g){g.set("checked",b.get("visible"))}else{g=Ext.create("GeoMind.data.model.Tree",{type:"layer",model:Ext.ClassManager.getName(b),leaf:true,expandable:true,cls:h.hidden?"x-hidden-node":"",expanded:true,recordData:b,checked:b.get("visible")});g.set(h.nodeIdentifier,true);g.clickHandle=Ext.bind(h.onCheckChangePRO,h);h.nodes.push(g);return g}},updateNode:function(b){var h=this,o=b.get(h.recordIdField),g=h.getNode(o);if(g){g.set("recordData",b)}return g||false},toggleNode:function(o,h){var g=this,b=g.getNode(o);if(b){b.set("checked",h);g.onCheckChangePRO(b,h)}},removeNode:function(h){var g=this,b=h instanceof GeoMind.data.model.Tree?h:g.getNode(h);if(!b){return false}g.removeLayer(b.get("recordData").get("olLayer"));b.remove();g.nodes.splice(g.nodes.indexOf(b),1);if(g.hasOwnParentNode&&g.parentNode&&g.parentNode.childNodes.length==0&&g.nodes.length==0){g.parentNode.remove();g.parentNode=null}return true},removeOldNodes:function(b){var h=this,g=[];h.nodes.forEach(function(o){if(b.findExact(h.recordIdField,o.get("recordData").get(h.recordIdField))==-1){g.push(o)}});g.forEach(function(o){h.removeNode(o)})},removeLayer:function(b){if(b&&b.map){b.map.removeLayer(b)}},onCheckChangeParent:function(h,g){var b=this;h.childNodes.forEach(function(o){o.set("checked",g);b.onCheckChangePRO(o,g)})},onCheckChangePRO:function(g,b){this.fireEvent("checkchangepro",g,b)},cleanUpLayers:function(){var b=this;b.nodes.forEach(function(h){try{b.removeLayer(h.get("recordData").get("olLayer"));h.remove()}catch(g){}});b.nodes=[];if(b.hasOwnParentNode&&b.parentNode&&b.parentNode.childNodes.length==0){b.parentNode.remove();b.parentNode=null}},isProActive:function(){var b=this,g={};Client.AppLogic.dispatchEvent("layerManagerProIsActive",g);return g.active},getGroup:function(g){var b=this;g=g||0;return b.isProActive()?20:75+g}});Ext.define("Client.module.map.dataView.grid.userData.UserData",{extend:Client.module.map.dataView.grid.Grid,mixins:[Client.module.map.dataView.grid.GridUtilsDefault],dataViewFilterHidden:true,dataViewSelectionHidden:true,dataViewSelectAllHidden:false,constructor:function(b){var g=this;g.theme_data={theme_type:"av_user_data"};Ext.apply(g,b);g.callParent([b]);g.highlightedFeatures=[];g.selectedFeatures=[]},createGui:function(){var o=this,g=[],w=[],q=[],h=["feature","styleUrl"];o.data.forEach(function(A){for(var z in A.data){if(A.data.hasOwnProperty(z)&&h.indexOf(z)==-1&&w.indexOf(z)==-1){g.push({text:z,dataIndex:z,flex:1,renderer:Ext.util.Format.htmlEncode});w.push(z)}}A.data.feature=A;q.push(A.data)});w.push("feature");var b=Ext.create("Ext.data.Store",{fields:w,data:q});b.data.items.forEach(function(z){z.data.feature.record=z});g.push({xtype:"actioncolumn",dataIndex:"zoom_to",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,tooltipType:"title",filter:o.getFilter("intersectfilter",{column_name:"feature"}),items:[{icon:"resx/icons/client/search_black.png",tooltip:o.lang.getString("tooltipZoomTo"),scope:o,handler:function(B,D,z){var C=B.getStore().getAt(D);var A=C.get("feature");if(A){this.map.zoomToExtent(A.geometry.getBounds().scale(2))}},isDisabled:function(A,D,B,C,z){return !z.get("feature")}}]});o.view=Ext.create("Ext.grid.Panel",{title:o.title,closable:true,store:b,columns:g,multiSelect:true,bbar:["->",{xtype:"tbtext",itemId:"countInfo"}]});o.grid=o.view;o.view.grid_module=o;o.wireUpGridEvents();o.onViewActivate()},read:function(){this.features=this.data},wireUpGridEvents:function(){this.view.on("close",this.onViewClose,this);this.view.on("render",this.pullData,this);this.grid.on("activate",this.onViewActivate,this);this.grid.on("deactivate",this.onViewDeactivate,this);this.grid.on("select",this.onGridItemSelectDefault,this);this.grid.on("deselect",this.onGridItemDeSelectDefault,this);this.grid.on("selectionchange",this.setBbarCount,this);this.grid.on("selectionchange",this.onGridSelectionChange,this);this.grid.on("itemmouseenter",this.onGridItemMouseEnterDefault,this);this.grid.on("itemmouseleave",this.onGridItemMouseLeaveDefault,this)},cleanUpGridEvents:function(){this.view.un("close",this.onViewClose,this);this.view.un("render",this.pullData,this);this.grid.un("activate",this.onViewActivate,this);this.grid.un("deactivate",this.onViewDeactivate,this);this.grid.un("select",this.onGridItemSelectDefault,this);this.grid.un("deselect",this.onGridItemDeSelectDefault,this);this.grid.un("selectionchange",this.setBbarCount,this);this.grid.un("selectionchange",this.onGridSelectionChange,this);this.grid.on("itemmouseenter",this.onGridItemMouseEnterDefault,this);this.grid.on("itemmouseleave",this.onGridItemMouseLeaveDefault,this)},performOlSetup:function(){var b=this;if(b.theme_data.data_source_projection&&b.theme_data.data_source_projection.epsg&&b.theme_data.data_source_projection.proj4j){GeoMind.utils.Map.createProjectionDef(b.theme_data.data_source_projection.epsg,b.theme_data.data_source_projection.proj4j);b.prj=new OpenLayers.Projection("EPSG:"+b.theme_data.data_source_projection.epsg)}else{b.prj=new OpenLayers.Projection(b.map.getProjection())}b.wktReader=new OpenLayers.Format.WKT();b.displayLayer=new OpenLayers.Layer.Vector(b._id+"_display",{styleMap:b.getLayerStyleMap()})},wireUpOlEvents:function(){var b=this;
1if(!b.clickControl){b.clickControl=Adaptive.map.ClickControl.getClickControl(Ext.bind(b.onMapMouseClickDefault,b))}b.infoControl=new b.clickControl();b.map.addControl(b.infoControl);b.infoControl.activate();b.updateExtentFilterTask=new Ext.util.DelayedTask(b.updateExtentFilter,b)},cleanUpOlEvents:function(){var b=this;if(b.infoControl){b.infoControl.deactivate();b.infoControl.destroy()}b.map.events.unregister("move",b,b.onMapMove)}});Ext.define("Client.module.tool.userData.LayerManager",{extend:Client.module.ToolGeneric,btnCls:"a3-share-tool-main-btn",deleteDataColumnCls:"a3-user-data-tree_delete",zoomToDataColumnCls:"a3-user-data-tree_zoomTo",copyDataColumnCls:"a3-user-data-tree_copy",btnText:null,btnTip:null,internal_name:"av_user_data",headerText:null,serviceUrl:"webservices/client/UserDataConfig.asmx/",serviceMethod:{read:"Read",save:"Save"},defaultGpxDataColor:"FFFF00",mapLvlController:null,treeModule:null,constructor:function(g){Ext.apply(this,g);this.callParent([g]);if(!this.lang){this.lang="Client.module.tool.userData.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);var q=this;var w=Ext.create("Ext.grid.column.Column",{width:24,dataIndex:"zoomToDataColumn",text:"rem",renderer:function(C,A,B){if(!q.mayZoom(B)){return""}return'<div class="'+q.zoomToDataColumnCls+'" title="'+q.lang.getString("zoom_qtip")+'"></div>'}});w.mon(w,"click",this.onZoomToColumnClick,{col:w,that:this});var z=Ext.create("Ext.grid.column.Column",{width:24,dataIndex:"deleteDataColumn",text:"rem",renderer:function(){return'<div class="'+q.deleteDataColumnCls+'" title="'+q.lang.getString("delete_qtip")+'"></div>'}});z.mon(z,"click",this.onGridColumnClick,{col:z,that:this});var o=Ext.create("Ext.grid.column.Action",{width:24,getClass:function(B,D,C){var A=C.get("recordData").get("layer_type_value");switch(A){case"GPX":case"KML":case"SOS":case"WKT":case"GEOJSON":return"a3-data_view"}return""},getTip:function(){return q.lang.getString("dataview_qtip")},handler:function(D,H,B,F,G,E){var A=E.get("recordData").get("layer_type_value");switch(A){case"GPX":case"KML":case"SOS":case"WKT":case"GEOJSON":var C=E.get("recordData").get("olLayer").clone();q.fireEvent("dataViewRequested",C);break}}});var b=Ext.create("Ext.grid.column.Column",{width:24,dataIndex:"colorDataColumn",text:"rem",renderer:function(I,G,D,B,E,J,H){var F=D.get("recordData").get("layer_type_value");if(F=="GPX"||F=="SOS"||F=="WKT"||F=="GEOJSON"){var A=Ext.id();D._divColorId=A;var C=D.get("config");if(D.get("recordData").get("layerColor")){C.layerColor=D.get("recordData").get("layerColor")}if(!C.layerColor){C.layerColor=q.defaultGpxDataColor}return'<div class="color-picker_gridColumn" title="'+q.lang.getString("color_qtip")+'"><div id='+A+' style="height:100%;width:100%;background-color:#'+C.layerColor+';position:relative;"></div></div>'}}});b.mon(b,"click",this.onGridColorColumnClick,this,[b]);var h=[{xtype:"treecolumn",flex:1,sortable:false,dataIndex:"name",editor:{xtype:"textfield",allowBlank:false,allowOnlyWhitespace:false},renderer:function(G,D,F,E,H,C,B){var A=F.get("recordData");if(A){if(!F.get("name")){F.set("name",A.get("name"));F.commit()}}D.tdAttr='data-qtip="'+F.get("name")+'"';return F.get("name")},showTooltip:true}];h.push({xtype:"gridcolumn",width:24,dataIndex:"copyColumnCollaboration",text:"rem",renderer:function(D,B,C){var A="";q.parentModule.reportEvent("getUserDataCollaboration",C,function(E){A=E.cls});return A},listeners:{scope:q,click:q.onCopyCollaboration}});h.push({xtype:"gridcolumn",width:24,dataIndex:"copyColumn",text:"rem",renderer:function(D,A,C){var B="",E="";switch(q.getCopyState(C)){case 0:case 1:B=q.copyDataColumnCls;E=q.lang.getString("copy_qtip");break;case 2:B=q.copyDataColumnCls+" disabled";E=q.lang.getString("copy_disabled_qtip");break}return'<div class="'+B+'" title="'+E+'"></div>'},listeners:{scope:q,click:q.onCopyColumn}});h.push(b);h.push(w);h.push(o);h.push(z);this.treeModule=Ext.create("GeoMind.desktop.tree.Standard",{viewConfig:{border:false,hideHeaders:true,rootVisible:false,useArrows:true,width:"97%",plugins:[Ext.create("Ext.grid.plugin.CellEditing",{clicksToEdit:2,listeners:{edit:function(A,B){B.record.data.recordData.set("name",B.record.data.name);B.record.commit();q.saveUserConfig()}}})],viewConfig:{plugins:[{ptype:"TreeViewDragDrop"}]},columns:h}});this.treeModule.on("updateMapState",this.onUpdateMapState,this);q.externalCategory=Ext.create("Client.module.tool.layerManagerPro.ExternalCategory",{categoryTitle:q.lang.getString("layerTitle"),hidden:true,recordIdField:"uuid"});q.externalStore=Ext.create("Ext.data.Store",{model:"GeoMind.data.model.Layer"});this.buildGui()},buildGui:function(){this.view=this.treeModule.view},shouldUseCopy:function(){return Ext.Array.contains(GeoMind.utils.DictionaryManager.getDictionary("modules"),"av_digitised_objects_pro")||Ext.Array.contains(GeoMind.utils.DictionaryManager.getDictionary("modules"),"av_digitised_objects")},onGridColumnClick:function(h,b,q,w,g,o){this.that.removeLayer(o)},onZoomToColumnClick:function(h,b,w,z,g,q){var o=this.that;if(o.mayZoom(q)){this.that.zoomToLayer(q.get("recordData"))}},mayZoom:function(g){var b=g.get("recordData").get("layer_type_value");var h=["GPX","KML","SOS","WKT","GEOJSON"];return(b&&Ext.Array.contains(h,b))},onCopyColumn:function(h,b,z,A,g,w){var q=this,o=w.get("name");switch(q.getCopyState(w)){case 1:q.createDigiObject(w,o);break;case 0:Ext.Msg.confirm(q.lang.getString("complex_warning_title"),q.lang.getString("complex_warning_msg"),function(B){if(B=="yes"){q.createDigiObject(w,o)}});break}},activate:function(){var b=this;if(b.treeModule){b.treeModule.view.getView().refresh()}},onCopyCollaboration:function(w,o,h,z,E,q){var B=this,g=q.get("recordData"),A=g.get("olLayer"),C=B.treeModule.view.getRootNode(),b=g.get(B.externalCategory.recordIdField),D=B.findNode(C,b);
1if(!E.target.className.contains("a3-user-data-collaboration")){return}D.set("checked",false);B.treeModule.checkChange(D,false);if(A instanceof OpenLayers.Layer.Image){Client.AppLogic.dispatchEvent("copyRasterToCollaboration",{name:g.get("name"),url:A.url,tileSize:A.tileSize,extent:A.extent,opacity:A.opacity})}else{Client.AppLogic.dispatchEvent("copyToCollaboration",{name:g.get("name"),features:A.features,layerColor:g.get("layerColor"),opacity:A.opacity})}},createDigiObject:function(g,b){Client.AppLogic.dispatchEvent("createDigiObject",{feature:g.get("recordData").get("olLayer").features,name:b,category:b})},getCopyState:function(w){var q=this,b,z,o;if(!q.shouldUseCopy()){return -1}b=w.get("recordData");z=b.get("olLayer");o=z&&z.features&&z.features.length;try{if(o){var g=z.features.reduce(function(B,A){return B+A.geometry.getVertices().length},0);if(g>1000){return 2}if(g>100){return 0}return 1}}catch(h){console.error("Cannot count geometry vertices",h)}return -1},onGridColorColumnClick:function(w,h,g,C,G,q,o){var F=this,B=q._divColorId,A=Ext.get(B).dom;if(B){var H=Ext.create("Ext.tip.ToolTip",{width:155,height:150,target:h,trackMouse:false,anchor:"top",autoHide:false,autoShow:false,items:[]});var b=Ext.create("Ext.picker.Color",{value:"000000",listeners:{scope:this,select:function(K,J){A.style.setProperty("background-color","#"+J);H.hide();var I=q.get("config");I.layerColor=J;q.set("config",I);F.setLayerColor(q.get("recordData").get("olLayer"),J);F.saveUserConfig()}}});if(!q.get("checked")){setTimeout(function(){q.set("checked",true);F.treeModule.callCheckChange()},100)}var D=q.get("recordData").get("olLayer");var E=D.record.get("opacity");var z=Ext.create("Ext.slider.Single",{fieldLabel:F.lang.getString("opacity"),labelAlign:"top",padding:"10 0 0 0",width:140,value:E,increment:1,minValue:0,maxValue:100,listeners:{scope:F,change:Ext.bind(F.opacityChange,F,[q,D],true)}});H.add(b);H.add(z);H.show();H.on("hide",function(){Ext.destroy(b);Ext.destroy(H)})}},opacityChange:function(z,A,g,w,q,h){d;var o=this,b=q.get("config");b.opacity=A;q.set("config",b);h.record.set("opacity",A);h.setOpacity(A/100)},findNode:function(g,o){var h=this,b;Ext.each(g.childNodes,function(q){b=h.findNode(q,o);if(b){return false}if(q.get("recordData").get(h.externalCategory.recordIdField)==o){b=q;return false}});return b},onLayerVisibilityRemoved:function(){var g=this,b=g.treeModule.view.getRootNode();g.externalCategory.nodes.forEach(function(o){if(!o.get("checked")){var h=o.get("recordData").get(g.externalCategory.recordIdField),q=g.findNode(b,h);q.set("checked",false);g.treeModule.checkChange(q,false)}})},onUpdateMapState:function(g){var b=this;if(g.type=="layersRemove"||g.type=="layersOrderChanged"){b.saveUserConfig()}if(g.type=="layersOrderChanged"){b.externalStore.removeAll();g.records.forEach(function(h){if(h.data.olLayer.visibility){b.externalStore.add(h)}})}else{if(g.records){b.externalStore.removeAll();g.records.forEach(function(h){if(h.checked){h.recordData.set("visible",true);b.externalStore.add(h.recordData)}else{if(h.recordData&&h.recordData.data.olLayer){h.recordData.data.olLayer.setVisibility(false)}}});b.externalCategory.addNodes(b.externalStore)}}},setLayerColor:function(g,b){var h=new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#"+b,strokeWidth:3,fillColor:"#"+b,fillOpacity:1,pointRadius:4},OpenLayers.Feature.Vector.style["default"]));g.styleMap=new OpenLayers.StyleMap({"default":h});g.redraw();g.record.set("layerColor",b)},zoomToLayer:function(b){var o=GeoMind.utils.Clipboard.getData("mapPanel"),h=b.get("olLayer"),g=h&&h.getDataExtent();if(g){o.map.zoomToExtent(g.scale(1.1))}},reportFileToBeRemoved:function(g){if(!g){return}var b={evtName:"removeFileRequest",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{fileName:g}};this.dispatchEvent(b,{confirmationRequired:false})},setUserDataCategoryAsRoot:function(g){var b=this.treeModule.store.getRootNode();for(var h=0;h<b.childNodes.length;h++){if(b.childNodes[h].get("recordData").get("name")=="user_defined_layers"){this.treeModule.setNewRootNode(b.childNodes[h])}}},removeLayer:function(h){var g=h.parentNode,o=h.data.recordData;g.removeChild(h,false);this.filesToBeRemoved=[h.get("recordData").get("serviceFileName")];this.reportFileToBeRemoved(this.filesToBeRemoved[0]);this.treeModule.store.suspendEvents();if(g.childNodes.length==0){var b=g.parentNode;if(b){b.removeChild(g)}}this.treeModule.store.resumeEvents()},createSosilayer:function(b,h,g){var o=this;Ext.Ajax.request({url:b.url,method:"GET",scope:{scope:o,config:g,layerCfg:b,extraConfig:h},success:o.createSosiSuccess,failure:function(){o.fireEvent("fileUploadFailed")}})},createSosiSuccess:function(A){var G=this.scope,o=this.config,B=this.layerCfg,E=this.extraConfig,H=Ext.create("Sosijs.SOSI_lite"),D=new OpenLayers.Format.GeoJSON(),z=GeoMind.utils.Clipboard.getData("mapPanel"),g=z.map,F=[],b,w,h;try{parser=new H.SOSI.Parser();b=parser.parse(A.responseText);h=D.read(b.dumps("geojson"))}catch(q){G.fireEvent("fileUploadFailed");return}if(b.hode&&b.hode.srid&&b.hode.srid!=g.getProjection()){w=new OpenLayers.Projection(b.hode.srid)}
1h.forEach(function(I){if(w){I.geometry.transform(w,g.getProjectionObject())}var J=g.getProjectionObject().proj.defData.indexOf("longlat")==-1?Adaptive.layer.Layer.simplifyFeature(I):I.clone();F.push(J)});var C=new OpenLayers.Layer.Vector();C.setOpacity(0.8);C.addFeatures(F);G.createRecord(G.createGMLayer(C,B,E,o),o)},createRasterlayer:function(h,q,b){var A=this,w=b.fileInfo.config&&b.fileInfo.config.configs,B=(b.fileInfo.data&&b.fileInfo.data.bounds)||Adaptive.utils.Config.getConfig(w,"extent"),C=(b.fileInfo.data&&b.fileInfo.data.size)||Adaptive.utils.Config.getConfig(w,"size"),z=new OpenLayers.Bounds(B.left,B.bottom,B.right,B.top),g=new OpenLayers.Size(C.width,C.height),o=new OpenLayers.Layer.Image(h.name,h.url,z,g,{group:20,singleTile:true,visible:true,isBaseLayer:false,alwaysInRange:true});o.events.register("loadend",A,function(){OpenLayers.Element.addClass(o.tile.getImage(),"a3TileOutline")});h.extent=B;h.size=C;o.getDataExtent=function(){return new OpenLayers.Bounds(B.left,B.bottom,B.right,B.top)};A.createRecord(A.createGMLayer(o,h,q,b),b)},createGMLayer:function(w,b,h,g){var z=GeoMind.utils.Clipboard.getData("mapPanel"),o=z.addLayers(w,h),q=o.records[0];q.set("layer_type_value",b.layer_type_value);q.set("name",b.name);q.set("o_visibility",b.o_visibility);q.set("visibility",b.visibility);q.set("printable",b.printable);q.set("queryable",b.queryable);if(b.layer_type_value=="RASTER"){q.set("extent",b.extent);q.set("size",b.size);Adaptive.utils.Config._set(q.data.config.configs,"extent",b.extent);Adaptive.utils.Config._set(q.data.config.configs,"size",b.size)}w.name=b.name;w.setVisibility(b.visibility);if(g.zoomTo){w.map.zoomToExtent(w.getDataExtent());g.zoomTo=false}return o},createWktlayer:function(b,h,g){var o=this;Ext.Ajax.request({url:b.url,method:"GET",scope:{scope:o,config:g,layerCfg:b,extraConfig:h},success:o.createWktSuccess,failure:o.createWktFailure})},createWktSuccess:function(z){var G=this.scope,o=this.config,B=this.layerCfg,E=this.extraConfig,D=new OpenLayers.Format.WKT(),z=Ext.decode(z.responseText),A=z.data,w=GeoMind.utils.Clipboard.getData("mapPanel"),g=w.map,F=[],b,q,h;if(!z.success){G.createWktFailure();return}if(A.epsg!=g.getProjection()){q=new OpenLayers.Projection(A.epsg)}A.wkts.forEach(function(I){var H=D.read(I);if(H){F.push(g.getProjectionObject().proj.defData.indexOf("longlat")==-1?Adaptive.layer.Layer.simplifyFeature(H):H.clone())}});var C=new OpenLayers.Layer.Vector();C.group=20;C.addFeatures(F);C.setOpacity(0.8);G.createRecord(G.createGMLayer(C,B,E,o),o)},createWktFailure:function(b){var g=this;g.fireEvent("fileUploadFailed")},addLayerFromFile:function(h){var B=this,o=GeoMind.utils.Clipboard.getData("mapPanel");var C=this.treeModule.store.getRootNode();var g=h.fileInfo.fileNames?h.fileInfo.fileNames[0]:h.fileInfo.serviceFileName;h.sn=g;var D=this.checkIfFileLayerExtists(C,g);if(D){return}var b="webservices/client/GetGeoFile.ashx?f="+g+"&s="+GeoMind.utils.SessionManager.ss.sessionId+"&epsg="+GeoMind.utils.Clipboard.getData("mapPanel").map.getProjectionObject().proj.srsProjNumber;var A=h.layer_type_value||this.getExtension(g).toUpperCase();if(h.fileInfo.fileType=="raster"){A="RASTER"}var w={uuid:h.fileInfo.uuid,layer_type_value:A,name:h.name,url:b,o_visibility:h.fileInfo.o_visibility,visibility:Ext.isBoolean(h.fileInfo.visibility)?h.fileInfo.visibility:true,printable:true,queryable:true};var z={createFolder:false,addToExistingFolder:true,name:w.layer_type_value,group:20,config:h.parentNode?h.parentNode.get("config"):{isUserData:true}};if(A=="RASTER"){layer=B.createRasterlayer(w,z,h);return}if(A=="SOS"){layer=this.createSosilayer(w,z,h);return}if(A=="WKT"){layer=this.createWktlayer(w,z,h);return}w.preload=B.preloadGeojson===true;var q=o.addLayers([w],z);B.createRecord(q,h);B.treeModule.callCheckChange()},refresh:function(){this.view.getView().refresh()},createRecord:function(w,o){var q=this,g=w.records[0],b=g.get("layer_type_value"),z=g.get("olLayer");z.featureInfoLayerTitle=q.lang.getString("headerText")+": "+z.name;z.isFeatureInfoLayer=true;z.events.register("featuresadded",q,q.refresh);if(b!="WMS"&&b!="RASTER"){if(o.zoomTo){g.get("olLayer").events.register("loadend",q,q.onVectorLayerLoaded)}}if(b=="GPX"||b=="SOS"||b=="WKT"||b=="GEOJSON"){g.set("layerColor",o.layerColor);q.setLayerColor(z,o.layerColor?o.layerColor:this.defaultGpxDataColor)}z.record.set("opacity",80);z.setOpacity(0.8);g.set("serviceFileName",o.sn);if(o.parentNode){var h=q.getNodeFromRecord(g);if(h.parentNode){h.parentNode.set("name",o.parentNode.get("name"));h.parentNode.set("checked",o.parentNode.get("checked"));h.parentNode.commit()}}q.treeModule.addNode(g,w.extraConfig);q.treeModule.callCheckChange();if(o.save){if(this.fileUploadInprocess){this.saveUserConfig();delete this.fileUploadInprocess}}},onVectorLayerLoaded:function(b){var g=b.object;g.events.unregister("loadend",this,this.onVectorLayerLoaded);g.map.zoomToExtent(g.getDataExtent());this.view.getView().refresh()},addLayersFromWmsCapabilities:function(q){var o=this,z=GeoMind.utils.Clipboard.getData("mapPanel");var g={createFolder:true,isFolderChecked:true,name:q.data.groupConfig.name,addToExistingFolder:true,description:q.data.groupConfig.description,config:{isUserData:true,disable_legend:true},group:20};var h=q.data.layerConfigs.length;for(var b=0;b<h;b++){q.data.layerConfigs[b].single_tile=true;var w=q.data.layerConfigs[b].url.split(/[/\?]+/);if(w[1].indexOf(":")>-1&&w[1].indexOf("@")>-1){q.data.layerConfigs[b].url="proxies/xGetMap.ashx?url="+q.data.layerConfigs[b].url}}z.on("mapStateUpdated",o.onLayersAdded,o,{single:true});z.addLayers(q.data.layerConfigs,g);o.treeModule.callCheckChange()},onLayersRestored:function(o){var g=o.records,h=o.extraConfig,b={type:"layersOrderChanged"};this.treeModule.addNode(g,h)},beforeUpdateMapState:function(g){var b=this;
1b.externalCategory.nodes.forEach(function(o){var h=g.data.records.findIndex(function(q){return q.recordData==o.data.recordData});if(h==-1){g.data.records.push(o.data)}})},onLayersAdded:function(o){if(o.type=="layersAdded"){var g=o.records,h=o.extraConfig,b={type:"layersOrderChanged"};this.treeModule.addNode(g,h)}},addLayersFromWmsRestore:function(w,b){if(b&&!b.parentNode){var g=this.treeModule.store.getRootNode();g.appendChild(b)}var A=GeoMind.utils.Clipboard.getData("mapPanel");var o={createFolder:b?true:false,addToExistingFolder:true,name:b?b.get("name"):w.name,group:20,config:{isUserData:true,disable_legend:true}};var q=w.recordData.length;for(var h=0;h<q;h++){w.recordData[h].single_tile=true;var z=w.recordData[h].url.split(/[/\?]+/);if(z[1].indexOf(":")>-1&&z[1].indexOf("@")>-1){w.recordData[h].url="proxies/xGetMap.ashx?url="+w.recordData[h].url}}w.recordData.visibility=false;A.on("mapStateUpdated",this.onLayersRestored,this,{single:true});A.addLayers(w.recordData,o)},checkIfFileLayerExtists:function(g,h){var b=g.get("recordData");if(!b||!b.isModel){return false}if(b&&b.get("serviceFileName")&&b.get("serviceFileName")==h){return true}for(n in g.childNodes){return this.checkIfFileLayerExtists(g.childNodes[n],h)}return false},onFileUploaded:function(o){var g=o.result.originalFileNames[0];var h=o.result;if(h.success){var b={name:g,zoomTo:true,save:true,fileInfo:h,parentNode:null,layerColor:null};this.addLayerFromFile(b)}},initSaveSchedule:null,saveUserConfig:function(){var g=this;if(!GeoMind.utils.SessionManager.ss.sessionId){return}var b=g.collectUserData();if(b.filesToBeKeept.length==0&&b.filesToBeRemoved.length==0&&b.nodes.length==0){return}if(g.lastSave&&g.lastSave==JSON.stringify(b)){return}Ext.defer(function(){g.saveFile(b);g.lastSave=JSON.stringify(b)},100,this);this.filesToBeRemoved=[]},collectUserData:function(){var b=this.treeModule.store.getRootNode();var o=[];var g={nodes:[],filesToBeRemoved:this.filesToBeRemoved||[],filesToBeKeept:o};for(var h=0;h<b.childNodes.length;h++){g.nodes.push(this.getNodeData(b.childNodes[h],o))}return g},getNodeData:function(g,h){var b=g.getData();delete b.recordData;b.recordData=g.get("recordData").getData();b.recordData.serviceFileName=g.get("recordData").get("serviceFileName");b.recordData.olLayer=null;if(!b.name){b.name=b.recordData.name}if(b.recordData.serviceFileName){h.push(b.recordData.serviceFileName)}b.childNodes=[];for(c in g.childNodes){b.childNodes.push(this.getNodeData(g.childNodes[c],h))}return b},getNodeFromRecord:function(o){var h=this.treeModule.store.getRootNode();var g=GeoMind.utils.Tree.getNodesForType(o.modelName,h);var b=g.length;for(i=0;i<b;i++){if(g[i].get("recordData").id==o.id){return g[i]}}return null},getExtension:function(b){return b.split(".")[1]},getUserConfig:function(){params={guuid:__guuid__};Ext.Ajax.request({url:this.serviceUrl+this.serviceMethod.read,method:"POST",params:Ext.JSON.encode(params),headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(this.getFileCallbackSuccess,this),failure:Ext.bind(this.getFileCallbackFailure,this)})},getFileCallbackSuccess:function(g){g=GeoMind.utils.Ajax.fixResponse(g);var b=null;for(k in g.data){if(g.data[k].key=="user_defined_layers"){b=Ext.JSON.decode(g.data[k].value);this.restoreUserProfileData(b);break}}this.filesToBeRemoved=[];if(this.inMemoryConfig&&this.inMemoryConfig.nodes.length>0){var h=this;Ext.MessageBox.show({title:this.lang.getString("saveUserObjects_title"),msg:this.lang.getString("saveUserObjects_msg"),buttons:Ext.MessageBox.YESNO,icon:Ext.MessageBox.QUESTION,fn:function(o){if(o=="yes"){h.restoreUserProfileData(h.inMemoryConfig);h.saveUserConfig();h.inMemoryConfig=null}else{h.inMemoryConfig=null}}})}this.fireEvent("restoredData")},getFileCallbackFailure:function(b){b=GeoMind.utils.Ajax.fixResponse(b)},restoreUserProfileData:function(z){z.nodes.reverse();for(var q=0;q<z.nodes.length;q++){var h=0;z.nodes[q].checked=false;z.nodes[q].recordData.visibility=false;var b=this.recreateParentNode(z.nodes[q]);var w=z.nodes[q];if(!w.config){w.config={}}w.config.isUserData=true;if(w.recordData.serviceFileName){var g={name:w.name,zoomTo:false,layer_type_value:w.recordData&&w.recordData.layer_type_value,fileInfo:w.recordData,parentNode:null,layerColor:w.config.layerColor?w.config.layerColor:null};this.addLayerFromFile(g)}else{if(w.recordData.layer_type_value=="WMS"){this.addLayersFromWmsRestore(w,null)}}var o=z.nodes[q].childNodes.length;if(!z.nodes[q].config){z.nodes[q].config={}}z.nodes[q].config.isUserData=true;for(h;h<o;h++){var A=z.nodes[q].childNodes[h];if(!A.config){A.config={}}A.config.isUserData=true;if(A.recordData.serviceFileName){var g={name:A.name,zoomTo:false,fileInfo:A.recordData,parentNode:null,layerColor:A.config.layerColor?A.config.layerColor:null};this.addLayerFromFile(g)}else{if(A.recordData.layer_type_value=="WMS"){this.addLayersFromWmsRestore(A,b)}}}}},recreateParentNode:function(g){var b=this.treeModule.store.getRootNode();var o=Ext.clone(g);o.childNodes=[];var h=b.createNode(o);if(!h.childNodes){h.childNodes=[]}h.set("recordData",Ext.create("GeoMind.data.model.LayerGroup",o.recordData));return h},saveFile:function(b){params={guuid:__guuid__,config:JSON.stringify(b)};Ext.Ajax.request({url:this.serviceUrl+this.serviceMethod.save,method:"POST",params:Ext.JSON.encode(params),headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(this.saveFileCallbackSuccess,this),failure:Ext.bind(this.saveFileCallbackFailure,this)})},saveFileCallbackSuccess:function(b){b=GeoMind.utils.Ajax.fixResponse(b)},saveFileCallbackFailure:function(b){b=GeoMind.utils.Ajax.fixResponse(b)},afterMapReset:function(b){this.setUserDataCategoryAsRoot();if(GeoMind.utils.SessionManager.ss.sessionId){this.getUserConfig()}},beforeMapReset:function(){this.treeModule.store.getRootNode().removeAll()},userAuthenticated:function(b){if(!(b&&b.data&&b.data.resetApp)){this.inMemoryConfig=this.collectUserData()}},userSignedOut:function(){this.inMemoryConfig=null},_onUploadsuccess:function(b){this.fileUploadInprocess=true;this.onFileUploaded(b.data);this.saveUserConfig()},_onAddWmsLayersFromWmsCapabilities:function(b){if(b.data.layerConfigs.length>0){this.addLayersFromWmsCapabilities(b);this.saveUserConfig()}}});Ext.define("GeoMind.wms.lang.Capabilities",{strings:{no_data_available:{pl:"Nie pobrano danych, lub odpytany serwis nie zwróciÅ danych",en:"None request have been made, or no data have been returned from requested service"},error_msg:{pl:'Nie powiodÅo siÄ odczytanie dokumentu "Capabilities" serwera WMS. ',en:'It was not possible to retrieve the "Capabilities" document of the WMS server. '},error_msg_exception:{pl:"Serwer zwróciÅ nastÄpujÄ
ce wyjÄ
tki: ",en:"Server returned the following exceptions: "},error_msg_exception_empty:{pl:"Serwer nie zwróciÅ opisu wyjÄ
tku.",en:"Server did not return a description of the exception."},error_msg_service_not_available:{pl:"Serwis nie jest dostÄpny.",en:"Service is not available."}},errCodes:{}});Ext.define("GeoMind.wms.Capabilities",{extend:GeoMind.base.Module,lang:null,proxy:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.wms.lang.Capabilities");this.addEvents=["getCapabilitiesStarted","getCapabilitiesFinished"]},requestCapabilities:function(g,z,h){var q={},B,o,w;if(g.indexOf("?")==-1){g+="?"}Ext.each(g.split("?")[1].split("&"),function(D){var C=D.split("=")[0].toLowerCase();if(C.indexOf("service")!=-1){B=true}if(C.indexOf("request")!=-1){o=true}if(C.indexOf("version")!=-1){w=true}});if(!B){q.SERVICE="WMS"}if(!o){q.REQUEST="GetCapabilities"}if(!w){q.VERSION=z||"1.1.1"}var b={evtName:"getCapabilitiesStarted",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(b,{confirmationRequired:false});var A={capabilitiesUrl:g,predefinedServiceName:h};OpenLayers.Request.GET({url:this.proxy+g,params:q,success:Ext.bind(this.getCapabilitiesSuccess,this,A,true),failure:Ext.bind(this.getCapabilitiesFailure,this)})},getCapabilitiesSuccess:function(q,o){var A=false;var w=new OpenLayers.Format.WMSCapabilities({});var b=q.responseText;b=b.replace(/\uffff/g,"");var h=w.read(b);if(h){if(!h.error){A=true}}if(!A&&o.capabilitiesUrl.toLowerCase().indexOf("version")==-1){var g=o.capabilitiesUrl+"&VERSION=1.3.0";this.requestCapabilities(g,undefined,o.predefinedServiceName);return}var z={evtName:"getCapabilitiesFinished",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:A,capabilities:h,capabilitiesUrl:o.capabilitiesUrl,predefinedServiceName:o.predefinedServiceName,exceptionMsg:A==true?null:this.extractExceptionMsg(q.responseText,h)}};this.dispatchEvent(z,{confirmationRequired:false})},extractExceptionMsg:function(g,b){var q=this.lang.getString("error_msg");var o="";if(b.error&&b.error.exceptionReport){var h=b.error.exceptionReport.exceptions;for(d in h){if(o.length>0){o+=", "}if(h[d].code){o+=h[d].code}if(h[d].text){if(h[d].code){o+=" ("+h[d].text+")"}else{o+=h[d].text}}}}else{if(g.toLowerCase().indexOf("html")>-1){o=GeoMind.utils.Html.extractTagContent(g,"body")}else{}}if(o.length>0){q+=this.lang.getString("error_msg_exception")+o}else{q+=this.lang.getString("error_msg_exception_empty")}return q},getCapabilitiesFailure:function(){var b={evtName:"getCapabilitiesFinished",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:false,exceptionMsg:this.lang.getString("error_msg")+" "+this.lang.getString("error_msg_service_not_available")}};this.dispatchEvent(b,{confirmationRequired:false})},activate:function(){},deactivate:function(){},_onRequestCapabilitiesForUrl:function(b){if(b.data.url){this.requestCapabilities(b.data.url,b.data.version?b.data.version:null,b.data.name?b.data.name:null)}}});Ext.define("Client.module.tool.userData.wms.Ui",{extend:Ext.panel.Panel,layout:{type:"vbox",align:"stretch"},cls:"a3-form a3-form-noscroll",defaultLabelWidth:60,initComponent:function(){Ext.apply(this,arguments);Ext.applyIf(this,{items:[{xtype:"container",itemId:"error_container",hidden:true,cls:"a3-box a3-failed"},{xtype:"fieldset",layout:"form",items:[{xtype:"trigger",triggerCls:"icon-go",itemId:"txtUrl",onTriggerClick:Ext.bind(function(){this.fireEvent("wmsLoad")},this),enableKeyEvents:true,listeners:{scope:this,keydown:function(g,b){if(b.getKey()==b.ENTER){this.fireEvent("wmsLoad")}}}},{xtype:"fieldset",layout:"form",items:[{xtype:"checkbox",itemId:"credentials"},{xtype:"textfield",itemId:"user_name",emptyText:"user name",disabled:true},{xtype:"textfield",itemId:"user_password",emptyText:"user password",inputType:"password",disabled:true}]}]},{flex:1,xtype:"container",layout:{type:"vbox",align:"stretch"},itemId:"wms_output"},{xtype:"container",itemId:"after_create_info",cls:"a3-text-info"}],buttons:[{xtype:"button",cls:"a3-submit-btn",itemId:"btn_create",disabled:true}]});this.callParent(arguments)}});
1Ext.define("Client.module.tool.userData.wms.lang.Standard",{strings:{title:{pl:"WMS",en:"WMS",nb:"WMS"},wms_emptyText:{pl:"Podaj URL do serwisu WMS",en:"Enter URL to WMS Service",nb:"Skriv inn URL til WMS-tjenesten"},credentials:{pl:"Autentykacja",en:"Credentials",nb:"Autentisering"},btn_create:{pl:"Utwórz",en:"Add WMS",nb:"Legg til WMS"},user_name_empty:{pl:"Nazwa użytkownika",en:"User name",nb:"Brukernavn"},user_password_empty:{pl:"HasÅo użytkownika",en:"User password",nb:"Passord"},after_create_info:{en:"Name can be changed by clicking on layer name.",nb:"Du kan endre pÃ¥ navnet ved Ã¥ klikke pÃ¥ det"}},errCodes:{}});Ext.define("Client.module.tool.userData.wms.View",{extend:Client.module.tool.userData.wms.Ui,lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.userData.wms.lang.Standard");this.txtUrl=this.query("[itemId=txtUrl]")[0];this.txtUrl.emptyText=this.lang.getString("wms_emptyText");this.txtUserName=this.query("[itemId=user_name]")[0];this.txtUserName.emptyText=this.lang.getString("user_name_empty");this.txtUserPassword=this.query("[itemId=user_password]")[0];this.txtUserPassword.emptyText=this.lang.getString("user_password_empty");this.cboxCredentials=this.query("[itemId=credentials]")[0];this.cboxCredentials.boxLabel=this.lang.getString("credentials");this.btnCreate=this.query("[itemId=btn_create]")[0];this.btnCreate.setText(this.lang.getString("btn_create"));this.wmsOutputContainer=this.query("[itemId=wms_output]")[0];this.cboxCredentials.on("change",this.onCBoxCredentialsChange,this);this.errorContainer=this.query("[itemId=error_container]")[0]},onCBoxCredentialsChange:function(h,o,b,g){if(o){this.txtUserName.enable();this.txtUserPassword.enable()}else{this.txtUserName.disable();this.txtUserPassword.disable()}}});Ext.define("Client.module.tool.userData.capabilities.output.lang.Standard",{strings:{layer:{pl:"Warstwa",en:"Add one or many layers to the map",nb:"Legg til ett eller flere tema",nn:"Legg til eit eller flere tema"},btnAddSelected_Text:{pl:"Dodaj",en:"Add",nb:"Legg til",nn:"Legg til"},btnAddSelected_Tip:{pl:"Dodaje zaznaczone warstwy do mapy",en:"Adds seleceted layers to a map",nb:"Legg til utvalgte lag til kartet",nn:"Legg til utvalgte lag til kartet"},btnGroupLayers_Text:{pl:"Grupuj",en:"Group",nb:"Grupper",nn:"Grupper"},btnGroupLayers_Tip:{pl:"Grupuje dodawane warstwy jako jednÄ
warstwÄ",en:"Groups layers being added as one layer",nb:"Grupperte lag legges til som et tema",nn:"Grupperte lag legges til som et tema"},filter:{en:"Filter layer list",nb:"Filtrer lagliste"},getCapabilitiesRequestStarted:{pl:"Pobieranie danych",en:"Getting capabilities",nb:"Henter mulige tjenester (getCapabilities)",nn:"Henter mulige tjenester (getCapabilities)"},nodata:{pl:"Brak danych",en:"No data",nb:"Ingen data",nn:"Ingen data"},error_msg_title:{pl:"BÅÄ
d",en:"Error",nb:"Feil",nn:"Feil"}},errCodes:{}});Ext.define("Client.module.tool.userData.capabilities.output.Standard",{extend:GeoMind.base.Module,lang:null,view:null,store:null,currentMapEpsg:null,showGroupLayersBtn:false,serviceCredentials:null,constructor:function(h){Ext.apply(this,h);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.userData.capabilities.output.lang.Standard");this.callParent([h]);var b=[{name:"name",type:"string",defaultValue:null,useNull:true},{name:"rawlayerdata",type:"auto",defaultValue:null,useNull:true},{name:"rawcapabilitiesdata",type:"auto",defaultValue:null,useNull:true},{name:"capabilitiesurl",type:"string",defaultValue:null,useNull:true},{name:"predefinedservicename",type:"string",defaultValue:null,useNull:true}];var g=Ext.define("wmsCap-"+Ext.id(),{extend:"Ext.data.Model",fields:b});this.store=Ext.create("Ext.data.Store",{model:g,data:[]});this.createGui()},createGui:function(){var b=this,g=Ext.create("Ext.selection.CheckboxModel",{mode:"SIMPLE"});this.view=Ext.create("Ext.grid.Panel",{store:this.store,selModel:g,sortableColumns:false,enableColumnHide:false,enableColumnMove:false,enableColumnResize:false,autoScroll:true,flex:1,columns:[{header:this.lang.getString("layer"),dataIndex:"name",flex:1}],viewConfig:{emptyText:this.lang.getString("nodata")}});g.on("selectionchange",this.onGridSelectionChange,this);b.filterView=Ext.widget({xtype:"fieldset",layout:"form",title:b.lang.getString("filter"),items:[{xtype:"trigger",triggerCls:"x-form-clear-trigger",onTriggerClick:function(){this.setValue("");b.store.clearFilter()},itemId:"wms_output_filter",listeners:{change:{buffer:250,fn:function(o,h){b.store.clearFilter();b.store.filter(function(q){return q.get("name").toLowerCase().indexOf(h.toLowerCase())>=0})}}}}]})},setCurrentMapEpsgCode:function(b){this.currentMapEpsg=b}
1,onBtnAddSelected:function(h,b,g){this.getSelectedLayers()},getSelectedLayers:function(){var h=this.view.getSelectionModel().getSelection();if(h.length>0){var w=[];var q=h[0].get("rawcapabilitiesdata");var b=h[0].get("predefinedservicename");var z=h[0].get("capabilitiesurl");for(r in h){var g=h[r].get("rawlayerdata");w.push({name:g.title?g.title:g.name,description:g["abstract"]!=""?g["abstract"]:null,p_projection_epsg:this.currentMapEpsg?this.currentMapEpsg.replace("EPSG:",""):null,url:this.getServiceUrl(q,z),layers:g.name,queryable:g.queryable,query_layers:g.queryable?g.name:null,get_feature_info_url:g.queryable?this.getFeatureInfoUrl(q,z):null,is_base_layer:false,transitionEffect:"resize",transparent:this.getImageFormat(g).indexOf("png")>-1?true:false,info_format_value:this.getInfoFormat(g),image_format_value:this.getImageFormat(g),version_value:q.version,exception_format_value:this.getExceptionFormat(q),attribution:g.attribution,dimensions:g.dimensions,max_extent:this.getMaxExtent(g,q),ll_bbox:this.getLlBbox(g,q),o_buffer:0,o_visibility:true,opacity:100,layer_type_value:"WMS"})}var o={name:this.getGroupTitle(q,b),description:q.service["abstract"],is_expanded:true};return{layerConfigs:this.qGisServerFix(w),groupConfig:o,selected:h}}},onGridSelectionChange:function(){var b={evtName:"capabilitiesGridSelectionChange",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:this.getSelectedLayers()};this.dispatchEvent(b,{confirmationRequired:false})},getLlBbox:function(g,h){var b=null;if(g.llbbox&&g.llbbox.length==4){b=g.llbbox[0]+","+g.llbbox[1]+","+g.llbbox[2]+","+g.llbbox[3]}return b},getMaxExtent:function(b,g){return null},getGroupTitle:function(h,b){var g=b;if(h.service.title!=""&&h.service.title!=null&&h.service.title!=undefined){g=h.service.title}return g},getServiceUrl:function(q,w){var b="";try{b=q.capability.request.getmap.href}catch(o){}if(b==""){try{b=q.service.href}catch(o){}}if(b==""||b==null||b==undefined){b=w}if(b.indexOf("?")==-1){b+="?"}else{var g=b.substring(b.length-1);if(g!="&"){b+="&"}}if(this.serviceCredentials){var z=b.split("://");var h=this.getCredentials();b=z[0]+h+z[1]}return b},getFeatureInfoUrl:function(q,w){var b="";try{b=q.capability.request.getfeatureinfo.href}catch(o){}if(b==""){try{b=q.service.href}catch(o){}}if(b==""||b==null||b==undefined){b=w}if(b.indexOf("?")==-1){b+="?"}else{var g=b.substring(b.length-1);if(g!="&"){b+="&"}}if(this.serviceCredentials){var z=b.split("://");var h=this.getCredentials();b=z[0]+h+z[1]}return b},qGisServerFix:function(b){for(l in b){if(b[l].url.indexOf(".qgs")>-1){b[l].p_version_value="1.1.1"}}return b},getImageFormat:function(g){var h="";var b=["image/png","image/jpg","image/gif","png","jpg","gif"];for(f in b){if(Ext.Array.contains(g.formats,b[f])){h=b[f];break}}return h},getExceptionFormat:function(h){var b="";var g=["application/vnd.ogc.se_inimage","application/vnd.ogc.se_xml","INIMAGE","XML","BLANK"];for(ef in g){if(Ext.Array.contains(h.capability.exception.formats,g[ef])){b=g[ef];break}}if(b==""){b="application/vnd.ogc.se_xml"}return b},getInfoFormat:function(g){if(!g.infoFormats&&g.queryable){g.infoFormats=["text/html"]}var o="";if(g.queryable){var h=["text/html","text/plain","application/vnd.ogc.gml"];for(var b=0;b<h.length;b++){if(Ext.Array.contains(g.infoFormats,h[b])){o=h[b];break}}}return o},loadMask:null,showLoadMask:function(b){if(!this.loadMask){if(!this.view.getEl()){return}this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},getCredentials:function(){var b=this.serviceCredentials.userName;var g=this.serviceCredentials.password;if(!b||!g||b.length==0||g.length==0){return""}return"://"+b+":"+g+"@"},setCredentials:function(b){this.serviceCredentials=b},_onGetCapabilitiesStarted:function(b){this.showLoadMask(this.lang.getString("getCapabilitiesRequestStarted"));this.filterView.down("#wms_output_filter").setValue("")},_onGetCapabilitiesFinished:function(o){this.hideLoadMask();this.store.removeAll();this.onGridSelectionChange();if(o.data.success){var q=[];var g=o.data.capabilities.capability.layers;for(l in g){var b=false;if(!this.currentMapEpsg){b=true}else{var h=g[l].srs;for(p in h){if(p==this.currentMapEpsg&&h[p]){b=true;break}}}if(b){q.push({name:g[l].title!=""?g[l].title:g[l].name,rawlayerdata:g[l],rawcapabilitiesdata:o.data.capabilities,capabilitiesurl:o.data.capabilitiesUrl,predefinedservicename:o.data.predefinedServiceName})}}this.store.loadData(q)}else{}},_onGetSelectedWmsLayers:function(b){var g=this.getSelectedLayers();if(Ext.isFunction(b.callback)){b.callback(g)}}});Ext.define("Client.module.tool.userData.Wms",{extend:Client.module.Generic,proxy:"proxies/xGetCapabilities.ashx?url=",capabilitiesLayersConfig:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.userData.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.moduleController=Ext.create("GeoMind.base.ModuleController");this.wmsCaps=Ext.create("GeoMind.wms.Capabilities",{proxy:this.proxy,showGroupLayersBtn:true});this.moduleController.registerModule(this.wmsCaps);this.wmsCaps.on("getCapabilitiesFinished",this.onGetCapabilities,this);this.wmsCapsOutput=Ext.create("Client.module.tool.userData.capabilities.output.Standard");this.moduleController.registerModule(this.wmsCapsOutput);this.wmsCapsOutput.on("capabilitiesGridSelectionChange",this.onCapabilitiesGridSelectionChange,this);this.buildGui()},buildGui:function(){this.btnNavBack=Ext.create("Ext.button.Button",{cls:"a3-back-btn a3-link-btn",text:this.lang.getString("backBtn"),tooltip:this.lang.getString("backBtn_tooltip"),tooltipType:"title"});this.wmsView=Ext.create("Client.module.tool.userData.wms.View",{flex:1});this.wmsView.on("wmsLoad",this.onBtnGetCapabilitiesClick,this);this.wmsView.txtUrl.on("change",this.resetErrorMsg,this);this.wmsView.wmsOutputContainer.add(this.wmsCapsOutput.filterView);
1this.wmsView.wmsOutputContainer.add(this.wmsCapsOutput.view);this.wmsView.txtUserName.on("change",this.onServiceCredentialsChange,this);this.wmsView.txtUserPassword.on("change",this.onServiceCredentialsChange,this);this.wmsView.cboxCredentials.on("change",this.onServiceCredentialsChange,this);this.wmsView.btnCreate.on("click",this.onBtnCreateClick,this);this.view=Ext.create("Ext.form.Panel",{layout:{type:"vbox",align:"stretch"},autoScroll:true,items:[this.btnNavBack,this.wmsView]})},getHeader:function(){return this.lang.getString("headerWms")},resetErrorMsg:function(){this.wmsView.errorContainer.update("");this.wmsView.errorContainer.hide()},onBtnGetCapabilitiesClick:function(){this.resetErrorMsg();var b=this.wmsView.txtUrl.getValue();if(!b||b.length==0){return}if(b.indexOf("http")){b="http://"+b}this.wmsCapsOutput.setCredentials(this.serviceCredentials);if(this.serviceCredentials){var h=b.split("://");var g=this.getCredentials();b=h[0]+g+h[1]}this.wmsCaps.requestCapabilities(b)},onBtnCreateClick:function(){if(!this.capabilitiesLayersConfig){return}var b=this.capabilitiesLayersConfig.selected;delete this.capabilitiesLayersConfig.selected;var g={evtName:"addWmsLayersFromWmsCapabilities",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:this.capabilitiesLayersConfig};this.dispatchEvent(g,{confirmationRequired:false});this.wmsCapsOutput.view.selModel.deselectAll()},onServiceCredentialsChange:function(){this.serviceCredentials=null;if(this.wmsView.cboxCredentials.getValue()){this.serviceCredentials={userName:this.wmsView.txtUserName.getValue(),password:this.wmsView.txtUserPassword.getValue()}}},onCapabilitiesGridSelectionChange:function(b){if(!b){this.capabilitiesLayersConfig=null;this.wmsView.btnCreate.setDisabled(true);return}this.wmsView.btnCreate.setDisabled(b.layerConfigs.length==0);this.capabilitiesLayersConfig=b},onGetCapabilities:function(b){if(!b.success){this.wmsView.errorContainer.show();this.wmsView.errorContainer.update(b.exceptionMsg)}else{this.wmsView.errorContainer.hide();this.wmsView.errorContainer.update("")}},getCredentials:function(){var b=this.serviceCredentials.userName;var g=this.serviceCredentials.password;if(!b||!g||b.length==0||g.length==0){return""}return"://"+b+":"+g+"@"}});Ext.define("Adaptive.ux.SingleFileUpload",{extend:Ext.form.Panel,require:["Adaptive.ux.lang.SingleFileUpload","Adaptive.utils.Lang","Adaptive.utils.File"],mixins:[Adaptive.form.mixins.Generator],config:{serviceUrl:null,validExtensions:null,projExtensions:null,xyExtensions:null,inputLang:null},constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.SingleFileUpload");g.projectionCombo=Ext.create("Ext.form.ComboBox",{itemId:"projectionCombo",emptyText:g.lang.getString("projEmpty"),anchor:"100%",editable:false,store:Ext.create("Ext.data.Store",{fields:["value","description"],data:g.projections||GeoMind.utils.DictionaryManager.getDictionary("projections")}),valueField:"value",displayField:"description",mode:"local",hidden:true,trigger1Cls:"x-form-clear-trigger",onTrigger1Click:function(h){this.clearValue()},trigger2Cls:"x-form-arrow-trigger"});g.xCoordField=Ext.create("Ext.form.field.Text",{name:"xCoordField",hidden:true,itemId:"xCoordField",fieldLabel:"X-field:",labelAlign:"top",allowBlank:false,cls:"a3-text",anchor:"100%"});g.yCoordField=Ext.create("Ext.form.field.Text",{name:"yCoordField",hidden:true,itemId:"yCoordField",fieldLabel:"Y-field:",labelAlign:"top",allowBlank:false,cls:"a3-text",anchor:"100%"});g.items=[g.createTextBox("info","step1",{html:Adaptive.utils.Lang.getString("info",g.lang,g.inputLang)}),{xtype:"fileuploadfield",hideLabel:true,allowBlank:false,itemId:"fileUploadField",buttonText:"",buttonConfig:{iconCls:"a3-upload-icon"},anchor:"100%",listeners:{change:g.validateFileExtension,scope:g}},{name:"xtraDataField",xtype:"textfield",hidden:true,itemId:"xtraDataField",value:Ext.JSON.encode(GeoMind.utils.SessionManager.ss.sessionId)},g.createTextBox("pickProj","step2",{hidden:true,itemId:"projectionInfo"}),g.projectionCombo,g.xCoordField,g.yCoordField];g.buttons=[{xtype:"button",cls:"a3-submit-btn",itemId:"btnUpload",disabled:true,handler:g.uploadFile,text:g.lang.getString("btnUpload"),scope:g}];Adaptive.utils.File.getMaxUploadSize(g.serviceUrl,function(q,o){var h=g.down("#info");h.update(Adaptive.utils.Lang.getString("info",g.lang,g.inputLang)+"<p>"+g.lang.getString("info_file_size")+o/1024+" MB<p>")});g.callParent([b])},validateFileExtension:function(w){var o=this,h=[],q=w.getValue().lastIndexOf(".");o.onValidateExtension();o.uploadedExtension=w.getValue().substr(q+1,w.getValue().length-q).toLowerCase();if(!Ext.Array.contains(o.validExtensions,o.uploadedExtension)){o.fireEvent("unsupportedFile");o.down("#btnUpload").disable();return}o.down("#projectionCombo").setVisible(o.uploadedExtension==="dxf");o.down("#projectionInfo").setVisible(o.uploadedExtension==="dxf");o.projExtensions=o.projExtensions?o.projExtensions:[];var g=Ext.Array.contains(o.projExtensions,o.uploadedExtension);o.down("#projectionCombo").setVisible(g);o.down("#projectionInfo").setVisible(g);o.xyExtensions=o.xyExtensions?o.xyExtensions:[];var b=Ext.Array.contains(o.xyExtensions,o.uploadedExtension);o.xCoordField.setVisible(b);o.yCoordField.setVisible(b);o.xCoordField.setDisabled(!b);o.yCoordField.setDisabled(!b);o.fireEvent("projVisibleChange");o.down("#btnUpload").enable()},uploadFile:function(){var h=this,b=null,g;if(h.projectionCombo.isVisible()){b=h.projectionCombo.getValue()?"EPSG:"+h.projectionCombo.getValue():GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection()}var o={sid:GeoMind.utils.SessionManager.ss.sessionId,epsg:b,dstEpsg:GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection(),xCoordField:h.xCoordField.getValue(),yCoordField:h.yCoordField.getValue()};h.down("#xtraDataField").setValue(Ext.JSON.encode(o));g=h.getForm();if(g.isValid()){h.setLoading(h.lang.getString("loadMaskMsg"));g.submit({scope:h,url:h.getServiceUrl(),success:h.onUploadSuccess,failure:h.onUploadFailure})}},onUploadSuccess:function(g,h){var b=this;b.setLoading(false);b.fireEvent("fileUploadSuccess",h);b.reset()},onUploadFailure:function(g,h){var b=this;b.setLoading(false);b.reset();b.fireEvent("fileUploadFailure",h)},onValidateExtension:function(){this.fireEvent("validateExtension")},reset:function(){var g=this,b=g.down("#projectionCombo");delete g.uploadedExtension;g.down("#fileUploadField").reset();g.down("#xtraDataField").reset();b.setVisible(false);b.reset();g.down("#projectionInfo").setVisible(false);g.xCoordField.setVisible(false);g.xCoordField.reset();g.yCoordField.setVisible(false);g.yCoordField.reset()}});Ext.define("Client.module.tool.userData.download.Standard",{extend:Client.module.ToolGeneric,serviceUrl:"webservices/client/GetFile.ashx",xtraData:null,lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.xtraData){this.xtraData={sid:GeoMind.utils.SessionManager.ss.sessionId}}this.addEvents(["filedownloaded","filedownloadfailed"])},getFile:function(g){var h="";if(Ext.isObject(g)){h=g.fileNames[0]}var b={fileNames:g.fileNames,originalFileNames:g.originalFileNames,self:this};Ext.Ajax.request({url:this.serviceUrl+"?f="+h+"&s="+this.xtraData.sid,method:"GET",headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(this.getFileCallbackSuccess,b),failure:Ext.bind(this.getFileCallbackFailure,b)})},getFileCallbackSuccess:function(b){console.warn("file back",b,this);var g={evtName:"filedownloaded",evtInitiatingModule:this.self,evtSuperInitiatingModule:this.self,evtBroadcastingController:null,callback:null,data:b};
1this.self.dispatchEvent(g,{confirmationRequired:false})},getFileCallbackFailure:function(b){var g={evtName:"filedownloadfailed",evtInitiatingModule:this.self,evtSuperInitiatingModule:this.self,evtBroadcastingController:null,callback:null,data:b};this.self.dispatchEvent(g,{confirmationRequired:false})}});Ext.define("Client.module.tool.userData.remove.Standard",{extend:Client.module.ToolGeneric,serviceUrl:"webservices/client/RemoveFile.ashx",xtraData:null,lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.xtraData){this.xtraData={sid:GeoMind.utils.SessionManager.ss.sessionId}}this.addEvents(["fileremoved","fileremovefailed"])},removeFile:function(g){var b={fileName:g,self:this};Ext.Ajax.request({url:this.serviceUrl+"?f="+g+"&s="+this.xtraData.sid,method:"GET",headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(this.removeFileCallbackSuccess,b),failure:Ext.bind(this.removeFileCallbackFailure,b)})},removeFileCallbackSuccess:function(b){var g={evtName:"fileremoved",evtInitiatingModule:this.self,evtSuperInitiatingModule:this.self,evtBroadcastingController:null,callback:null,data:b};this.self.dispatchEvent(g,{confirmationRequired:false})},removeFileCallbackFailure:function(b){var g={evtName:"fileremovefailed",evtInitiatingModule:this.self,evtSuperInitiatingModule:this.self,evtBroadcastingController:null,callback:null,data:b};this.self.dispatchEvent(g,{confirmationRequired:false})},_onRemoveFileRequest:function(b){this.removeFile(b.data.fileName)}});Ext.define("Client.module.tool.userData.SingleFileUpload",{extend:Client.module.Generic,mixins:[Adaptive.mixins.Notify],serviceUrl:"webservices/client/fileupload.ashx",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);if(!g.lang){g.lang="Client.module.tool.userData.lang.Standard"}g.lang=GeoMind.lang.Lang.registerTranslations(g.lang);g.moduleController=Ext.create("GeoMind.base.ModuleController");g.fileRemoveModule=Ext.create("Client.module.tool.userData.remove.Standard");g.moduleController.registerModule(g.fileRemoveModule);g.uploadFileView=Ext.create("Adaptive.ux.SingleFileUpload",{validExtensions:["xlsx","csv","geojson","gml","dxf","kml","gpx","sos","tif","tiff"],projExtensions:["xlsx","csv","geojson","gml","dxf"],xyExtensions:["xlsx","csv"],serviceUrl:g.serviceUrl,inputLang:GeoMind.lang.Lang.registerTranslations("Client.module.tool.userData.lang.SingleFileUpload"),projections:g.projections});g.mon(g.uploadFileView,"fileUploadFailure",g.onFileUploadFailure,g);g.mon(g.uploadFileView,"fileUploadSuccess",g.onSingleFileUploaded,g);g.mon(g.uploadFileView,"projVisibleChange",g.scrollToContainer,g);g.mon(g.uploadFileView,"unsupportedFile",g.onUnsupportedFile,g);g.mon(g.uploadFileView,"validateExtension",g.onValidateExtension,g);g.buildGui()},onValidateExtension:function(){this.clearErrorMsg()},onFileUploadFailure:function(){var b=this;b.setErrorMsg(b.lang.getString("fileUploadFailureSingleFileUpload"))},onSingleFileUploaded:function(b){var g=this,h={result:b.result},q=b.response;if(!q||!q.responseText){g.onFileUploadFailure();return}var o={evtName:"uploadsuccess",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:h};this.dispatchEvent(o,{confirmationRequired:false})},scrollToContainer:function(){try{this.getEl().scrollIntoView(this.up().body)}catch(b){}},onUnsupportedFile:function(){var b=this;b.setErrorMsg(b.lang.getString("fileUnsupportedSingleFileUpload"))},setErrorMsg:function(b){this.errorContainer.update("<p>"+b+"</p>");this.errorContainer.show()},clearErrorMsg:function(){this.errorContainer.update("");this.errorContainer.hide()},buildGui:function(){this.btnNavBack=Ext.create("Ext.button.Button",{cls:"a3-back-btn a3-link-btn",text:this.lang.getString("backBtn"),tooltip:this.lang.getString("backBtn_tooltip"),tooltipType:"title"});this.errorContainer=Ext.create("Ext.container.Container",{itemId:"error_container",hidden:true,cls:"a3-box a3-failed"});this.view=Ext.create("Ext.form.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[this.btnNavBack,this.errorContainer,this.uploadFileView]})},onFileUploaded:function(b){var g={evtName:"uploadsuccess",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},getHeader:function(){return this.lang.getString("headerSingleFileUpload")}});Ext.define("Adaptive.form.upload.lang.Multi",{strings:{fileWindowTitle:{pl:"Zapisywanie plików",en:"File upload",nb:"Velg en fil..."},fileEmptyText:{pl:"Wybierz plik...",en:"Select your file...",nb:"Velg en fil..."},fileLoadMask:{pl:"Zapisywanie...",en:"Uploading your file...",nb:"Laster opp data..."},browseBtnText:{pl:"",en:"",nb:""},btnSave:{pl:"Zapisz",en:"Upload",nb:"Last opp"},btnCancel:{pl:"Anuluj",en:"Cancel",nb:"Avbryt"},uploadFeedback_ok:{pl:"Plik(i) zapisane",en:"File(s) saved",nb:"Fil(er) lagret"},callbackFailure_Msg1_part1:{pl:"Server zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"The server returned the following error: ",nb:"Serveren returnerte følgende feil: "},callbackFailure_Msg1_part2:{pl:"Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Please try again or c
1ontact the system administrator.",nb:"Vennligst prøv igjen eller kontakt administrator."},fileExtension_notAllowed_mgs:{pl:"ModuÅ nie obsÅuguje wybranego pliku, dozwolone rozszerzenia: ",en:"The field does not support the selected file, allowed extensions are: ",nb:"Feltet støtter ikke filtypen, tillatte filtyper er: "},fileExtension_notAllowed_error_mgs:{pl:"Nie obsÅugiwany typ pliku",en:"File extension not supported",nb:"Filtypen støttes ikke"}},errCodes:{fup_0:{pl:"Niepoprawna konfiguracja serwisu",en:"Invalid service config",nb:"Ugyldig konfigurasjon av tjenesten"},fup_1:{pl:"Plik przekroczyÅ dozwolony rozmiar",en:"File too large",nb:"Filen er for stor"},fup_2:{pl:"Zapisanie pliku nie powiodÅo siÄ",en:"Failed to save the file",nb:"Klarte ikke Ã¥ lagre fil"},fup_3:{pl:"Nie dozwolony typ pliku",en:"File type not supported",nb:"Filen støttes ikke"}}});Ext.define("Adaptive.form.upload.Multi",{extend:GeoMind.base.Module,serviceUrl:null,uploadMsg:null,title:null,uploadFieldsCfg:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Adaptive.form.upload.lang.Multi"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.createGUI()},createGUI:function(){var g=this;var b=[];this.uploadFields=[];for(f in this.uploadFieldsCfg){var h=Ext.create("Ext.form.field.File",{emptyText:this.uploadFieldsCfg[f].blankText?this.uploadFieldsCfg[f].blankText:this.lang.getString("fileEmptyText"),buttonText:this.uploadFieldsCfg[f].buttonText?this.uploadFieldsCfg[f].buttonText:this.lang.getString("browseBtnText"),buttonConfig:this.uploadFieldsCfg[f].buttonConfig,accept:this.uploadFieldsCfg[f].accept?this.uploadFieldsCfg[f].accept:[],hideLabel:true,allowBlank:this.uploadFieldsCfg[f].allowBlank,anchor:"100%"});if(h.accept.length>0){h.on("change",this.validateFileExtension,this)}this.uploadFields.push(h);b.push(h)}this.btnSave=Ext.create("Ext.button.Button",{text:this.lang.getString("btnSave"),cls:"a3-submit-btn"});this.btnSave.on("click",this.onBtnSaveClick,this);g.extraField=Ext.create("Ext.form.field.Text",{name:"xtraDataField",hidden:true});this.uploadForm=Ext.create("Ext.form.Panel",{fileUpload:true,autoScroll:true,layout:"anchor",defaults:{anchor:"100%"},items:b,fbar:[this.btnSave,this.extraField]});if(this.uploadMsg){this.uploadForm.insert(0,{xtype:"container",html:this.uploadMsg,cls:"a3-text-info",anchor:"100%"})}this.view=this.uploadForm},validateFileExtension:function(o){var h=o.getValue().lastIndexOf(".");var b=o.getValue().substr(h+1,o.getValue().length-h);var g=[];for(x in o.accept){g.push(o.accept[x].toLowerCase())}if(!Ext.Array.contains(g,b.toLowerCase())){o.setActiveError(this.lang.getString("fileExtension_notAllowed_error_mgs"));Ext.MessageBox.show({title:this.lang.getString("fileExtension_notAllowed_error_mgs"),msg:this.lang.getString("fileExtension_notAllowed_mgs")+g.join(),buttons:Ext.Msg.OK,icon:Ext.Msg.INFO});o.setRawValue(null)}},setExtraData:function(b){this.extraField.setValue(Ext.JSON.encode(b))},validate:function(){return true},onBtnSaveClick:function(){var b=this.uploadForm.getForm();if(b.isValid()&this.validate()){this.showLoadMask();b.submit({url:this.serviceUrl,success:Ext.bind(this.success,this),failure:Ext.bind(this.failure,this)})}},success:function(b,g){this.fireEvent("fileUploaded",g.result);this.hideLoadMask()},failure:function(b,g){this.hideLoadMask();var h=GeoMind.utils.Exceptions.getMsg(g.result,this.lang);Ext.Msg.alert("info",this.lang.getString("callbackFailure_Msg1_part1")+h+this.lang.getString("callbackFailure_Msg1_part2"))},loadMask:null,showLoadMask:function(){if(this.loadMask==null){this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:this.lang.getString("fileLoadMask")})}this.loadMask.show()},hideLoadMask:function(){this.loadMask.hide()}});Ext.define("Client.module.tool.userData.RasterUpload",{extend:Client.module.Generic,mixins:[Adaptive.mixins.Notify],serviceUrl:"webservices/client/RasterUpload.ashx",constructor:function(g){var h=this;Ext.apply(h,g);h.callParent([g]);h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.userData.lang.Standard");var b=function(o){return h.lang.getString(o)};h.btnNavBack=Ext.create("Ext.button.Button",{cls:"a3-back-btn a3-link-btn",text:h.lang.getString("backBtn"),tooltip:h.lang.getString("backBtn_tooltip"),tooltipType:"title"});h.uploadForm=Ext.create("Adaptive.form.upload.Multi",{serviceUrl:h.serviceUrl,validate:Ext.bind(h.validateProjection,h),failure:function(o,q){this.hideLoadMask();h.onFileUploadFailure(o,q)},uploadFieldsCfg:[{blankText:b("nameImage"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["jpg","jpeg","tif","tiff"]},{blankText:b("nameWorld"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["jgw","jpgw","jpegw","tfw","tifw"],allowBlank:true}]});h.uploadForm.on("fileUploaded",h.onRasterUploaded,h);h.errorContainer=Ext.create("Ext.container.Container",{itemId:"error_container",hidden:true,cls:"a3-box a3-failed"});h.infoText=Ext.create("Ext.container.Container",{itemId:"info",cls:"a3-box a3-info",html:""});h.view=Ext.create("Ext.form.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[h.btnNavBack,h.errorContainer,h.infoText,h.uploadForm.view]});h.view.on("show",h.onInfoShow,h)},onInfoShow:function(){var b=this;b.infoText.update(b.lang.getString("info").replace("##AV_MAP_PROJ##",b.map.projection.getCode()))},onFileUploadFailure:function(g,h){var b=this;if(!h.response.responseText){return}b.setErrorMsg(b.lang.getString("fileUploadFailureSingleFileUpload"))},validateProjection:function(){var b=this;b.uploadForm.setExtraData({sid:GeoMind.utils.SessionManager.ss.sessionId,epsg:b.map.getProjection(),dstEpsg:b.map.getProjection()});return true},onRasterUploaded:function(q,b){var o=this,h=q.data.bounds,g=q.data.size;o.clearErrorMsg();if(h.bottom==g.height&&h.top==0&&h.right==g.width&&h.left==0){o.setErrorMsg(o.lang.getString("rasterMissingProjection"));return}o.fileType="raster";o.rasterFileName=q.fileNames[0];o.rasterDisplayName=q.originalFileNames[0];o.rasterBounds=h;o.rasterMime=q.data.mime;o.rasterSize=q.data.size;q.fileType="raster";q.bounds=o.bounds;q.epsg=b;var w={evtName:"uploadsuccess",evtInitiatingModule:o,evtSuperInitiatingModule:o,evtBroadcastingController:null,callback:null,data:{result:q}};o.dispatchEvent(w,{confirmationRequired:false})},setErrorMsg:function(b){this.errorContainer.update("<p>"+b+"</p>");this.errorContainer.show()},clearErrorMsg:function(){this.errorContainer.update("");this.errorContainer.hide()},getHeader:function(){return this.lang.getString("headerRaster")}});Ext.define("Adaptive.utils.React",{singleton:true,baseUrl:window.__react_base_url__||"",path:"apps/react/",assets:window.__react_assets__||undefined,pathTo:function(b,h){var o=this,g=b+"."+(h||"js");if(o.assets&&o.assets[g]){g=o.assets[g]}return o.baseUrl+(o.path+g).replace(/\/\//,"/")},loadComponent:function(b,h){var g=this;if(!g.reactVendorIncluded){g.reactVendorIncluded=true;
1Adaptive.utils.File._inject(g.pathTo("vendor"),function(o){if(o){g._waitForWebpack(b,h)}else{g.reactVendorIncluded=false;h(false)}})}else{g._waitForWebpack(b,h)}},_waitForWebpack:function(b,w){var o=this;if(typeof a3ReactJsonp!=="undefined"){var q=o.pathTo(b),g=o.pathTo(b,"css");Adaptive.utils.File._inject(q,w);if(g){var h=document.createElement("link");h.rel="stylesheet";h.href=g;document.head.appendChild(h)}return}setTimeout(function(){o._waitForWebpack(b,w)},100)}});Ext.define("Adaptive.ux.ReactComponent",{extend:Ext.Component,cls:"a3-react-component",config:{name:null,props:null},html:'<div class="loading-dots" style="padding: 20px;"><span></span><span></span><span></span></div>',constructor:function(){var b=this;b.callParent(arguments);b.on("afterrender",function(){b.checkInit()},b,{single:true});Adaptive.utils.React.loadComponent(b.name,function(g){if(g){b.checkInit()}else{b.update("<p style='padding: 20px'>Could not load module '<b>"+b.name+"</b>' from "+(window.__react_assets__?"compiled sources (has it been built?)":"development server (is it running?)</p>"))}})},destroy:function(){var g=this,b=g.getEl();if(g.isInitialized){AdaptiveReact.modules[g.name].unmount({targetNode:b.dom});g.isInitialized=false}},checkInit:function(){var g=this,b=g.getEl();if(!g.isInitialized&&window.AdaptiveReact&&AdaptiveReact.modules[g.name]&&b&&b.dom){g.isInitialized=true;AdaptiveReact.modules[g.name].mount({targetNode:b.dom,props:g.props,backendUrl:window.__debug_baseurl__||__siteurl__,adaptiveSession:GeoMind.utils.SessionManager.ss.sessionId,reportEvent:function(h,o,q){g.parentController.broadcast({evtName:h,data:o,callback:q})}})}}});Ext.define("Client.module.tool.userData.Shape",{extend:Client.module.Generic,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent(arguments);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.userData.lang.Standard");g.stdError=g.lang.getString("fileUploadFailed");g.btnNavBack=Ext.create("Ext.button.Button",{cls:"a3-back-btn a3-link-btn",text:g.lang.getString("backBtn"),tooltip:g.lang.getString("backBtn_tooltip"),tooltipType:"title"});g.buildGui()},buildGui:function(){var b=this;function g(h){return h.replace(/(<([^>]+)>)/ig,"")}b.shapeUpload=Ext.create("Adaptive.ux.ReactComponent",{name:"shapeImport",parentController:b.moduleController,props:{lang:{fileUploadInfo:g(b.lang.getString("shape_info")),acceptedFilesStr:b.lang.getString("acceptedFileStr"),fileUpload:b.lang.getString("fileUpload"),projectionPlaceholder:b.lang.getString("projEmpty"),projectionLabel:b.lang.getString("pickProj"),fileUploadLoading:b.lang.getString("fileUploadLoading"),retry:b.lang.getString("retry"),missingPrj:b.lang.getString("missingPrj"),missingShp:b.lang.getString("missingShp"),missingDbf:b.lang.getString("missingDbf"),missingShx:b.lang.getString("missingShx"),fileUploadLoading:b.lang.getString("fileUploadLoading"),uploadError:{generic:b.lang.getError("genericUpload"),fup_0:b.lang.getError("fup_0"),fup_1:b.lang.getError("fup_1"),fup_2:b.lang.getError("fup_2"),fup_3:b.lang.getError("fup_3"),fup_4:b.lang.getError("fup_4")}},onShapeFileUploaded:Ext.bind(b.onShapeFileUploaded,this),projections:b.projections}});b.view=Ext.create("Ext.panel.Panel",{items:[b.btnNavBack,b.shapeUpload]})},onShapeFileUploaded:function(g){var b=this;b.reportEvent("uploadsuccess",{result:g});b.fireEvent("uploadsuccess")}});Ext.define("Client.module.tool.userData.catalog.lang.Standard",{strings:{btn_create:{pl:"Dodaj",en:"Add WMS",nb:"Legg til WMS",nn:"Legg til WMS"},empty_text:{pl:"ProszÄ poda fraze wyszukiwania...",en:"Enter search phrase...",nb:"Søk i katalog",nn:"Søk i katalog"},loadingText:{en:"Searching...",pl:"Wyszukiwanie...",nb:"Søker...",nn:"Søker..."},emptyTextList:{en:"No data returned...",pl:"Nie znaleziono danych",nb:"Fant ikke noe data...",nn:"Fant ikke noe data..."},credentials:{en:"Credentials",nb:"Autentisering"},user_name_empty:{en:"User name",nb:"Brukernavn"},user_password_empty:{en:"User password",nb:"Passord"},mainBtnText:{en:"Back to main page",nb:"Tilbake til hovedsiden",nn:"Tilbake til hovedsiden "},mainBtnText_tooltip:{en:"Cancel and go back to the main page",nb:"Avbryt og gÃ¥ tilbake til hovedsiden",nn:"Avbryt og gÃ¥ tilbake til hovedsiden"},headerCatalog:{en:"Add WMS from katalog",nb:"Legg til WMS fra katalog",nn:"Legg til WMS fra katalog"},invalid_capabilities_output:{en:'It was not possible to retrieve valid "Capabilities" document of the WMS server',nb:'Kunne ikke hente "Capabilities" fra valgte WMS. Tjenesten er kanskje ikke en WMS',nn:'Kunne ikke hente "Capabilities" fra valgte WMS. Tjenesten er kanskje ikke en WMS'}},errCodes:{}});Ext.define("Adaptive.data.model.CswMetadataFields",{singleton:true,fields:[{name:"title",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"source",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"creator",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"uri",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("Adaptive.data.model.CswMetadata",{extend:Ext.data.Model,fields:Adaptive.data.model.CswMetadataFields.fields,config:{fields:Adaptive.data.model.CswMetadataFields.fields}});Ext.define("Client.module.tool.userData.catalog.Ui",{extend:Ext.panel.Panel,layout:{type:"vbox",align:"stretch"},cls:"a3-form a3-form-noscroll",defaultLabelWidth:60,initComponent:function(){Ext.apply(this,arguments);Ext.applyIf(this,{items:[{xtype:"container",itemId:"error_container",cls:"auth-failed",hidden:true},{xtype:"container",itemId:"catalog_output",cls:"a3-catalog",layout:"fit"},{xtype:"fieldset",layout:"form",items:[{xtype:"checkbox",itemId:"credentials"},{xtype:"textfield",itemId:"user_name",emptyText:"user name",disabled:true},{xtype:"textfield",itemId:"user_password",emptyText:"user password",inputType:"password",disabled:true}]},{flex:1,xtype:"container",itemId:"layers_output",layout:{type:"vbox",align:"stretch"}}],buttons:[{xtype:"button",cls:"a3-submit-btn",itemId:"btn_create",disabled:true}]});this.callParent(arguments)}});Ext.define("Client.module.tool.userData.catalog.View",{extend:Client.module.tool.userData.catalog.Ui,lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);
1this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.userData.catalog.lang.Standard");this.cswCBoxContainer=this.query("[itemId=catalog_output]")[0];this.txtUserName=this.query("[itemId=user_name]")[0];this.txtUserName.emptyText=this.lang.getString("user_name_empty");this.txtUserPassword=this.query("[itemId=user_password]")[0];this.txtUserPassword.emptyText=this.lang.getString("user_password_empty");this.cboxCredentials=this.query("[itemId=credentials]")[0];this.cboxCredentials.boxLabel=this.lang.getString("credentials");this.wmsCapabilitiesGridContainer=this.query("[itemId=layers_output]")[0];this.btnCreate=this.query("[itemId=btn_create]")[0];this.btnCreate.setText(this.lang.getString("btn_create"));this.errorContainer=this.query("[itemId=error_container]")[0];this.cboxCredentials.on("change",this.onCBoxCredentialsChange,this)},onCBoxCredentialsChange:function(h,o,b,g){if(o){this.txtUserName.enable();this.txtUserPassword.enable()}else{this.txtUserName.disable();this.txtUserPassword.disable()}}});Ext.define("Client.module.tool.userData.Catalog",{extend:Client.module.Generic,cswType:"geonorge",proxy:"proxies/xGetCapabilities.ashx?url=",serviceUrlGeoNorge:"WebServices/client/Csw.asmx/SearchGeoNorge",serviceUrlDublinCore:"WebServices/client/Csw.asmx/SearchDublinCore",serviceMethod:"Search",keyInDelay:500,cswStore:null,cswCBox:null,displayField:"title",gridTooltip:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.userData.catalog.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.moduleController=Ext.create("GeoMind.base.ModuleController");this.wmsCaps=Ext.create("GeoMind.wms.Capabilities",{proxy:this.proxy,showGroupLayersBtn:true});this.moduleController.registerModule(this.wmsCaps);this.wmsCaps.on("getCapabilitiesFinished",this.onGetCapabilities,this);this.wmsCapsOutput=Ext.create("Client.module.tool.userData.capabilities.output.Standard");this.moduleController.registerModule(this.wmsCapsOutput);this.wmsCapsOutput.on("capabilitiesGridSelectionChange",this.onCapabilitiesGridSelectionChange,this);this.buildGui()},buildGui:function(){var b=this;this.buildCswComponents();this.btnNavBack=Ext.create("Ext.button.Button",{cls:"a3-back-btn a3-link-btn",text:this.lang.getString("mainBtnText"),tooltip:this.lang.getString("mainBtnText_tooltip"),tooltipType:"title"});this.catalogView=Ext.create("Client.module.tool.userData.catalog.View",{flex:1});this.catalogView.cswCBoxContainer.add(this.cswCBox);this.catalogView.wmsCapabilitiesGridContainer.add(this.wmsCapsOutput.filterView);this.catalogView.wmsCapabilitiesGridContainer.add(this.wmsCapsOutput.view
1);this.catalogView.btnCreate.on("click",this.onBtnCreateClick,this);b.catalogView.txtUserName.on("change",b.onServiceCredentialsChange,b);b.catalogView.txtUserPassword.on("change",b.onServiceCredentialsChange,b);b.catalogView.cboxCredentials.on("change",b.onServiceCredentialsChange,b);this.view=Ext.create("Ext.form.Panel",{layout:{type:"vbox",align:"stretch"},defaults:{anchor:"100%"},items:[this.btnNavBack,this.catalogView]})},getServiceUrl:function(){var b=this;return b.cswType=="geonorge"?b.serviceUrlGeoNorge:b.serviceUrlDublinCore},buildCswComponents:function(){this.cswStore=Ext.create("Ext.data.Store",{model:"Adaptive.data.model.CswMetadata",proxy:{url:this.getServiceUrl(),type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},doRequest:function(b,z,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),w=o.getMethod(h);if(b.allowWrite()){h=q.write(h)}Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,z,g),method:w,disableCaching:false});if(w.toUpperCase()!=="GET"&&o.paramsAsJson){h=Ext.apply({jsonData:h.params},h);delete h.params}if(!o.connection){o.connection=Ext.create("Ext.data.Connection")}else{o.connection.abortAll()}o.connection.request(h);return h},paramsAsJson:true},data:[]});this.cswCBox=Ext.create("Ext.form.field.ComboBox",{store:this.cswStore,displayField:this.displayField,emptyText:this.lang.getString("empty_text"),typeAhead:true,queryDelay:this.keyInDelay,minChars:1,hideLabel:true,hideTrigger:true,onListSelectionChange:this.onListSelectionChange,listeners:{scope:this,select:this.onItemSelect,render:this.onRender,beforequery:this.onBeforeQuery},listConfig:{cls:"a3-search-list",loadingText:this.lang.getString("loadingText"),emptyText:this.lang.getString("emptyTextList"),getInnerTpl:this.prepareHtml}})},onServiceCredentialsChange:function(){var b=this;b.serviceCredentials=null;if(b.catalogView.cboxCredentials.getValue()){b.serviceCredentials={userName:b.catalogView.txtUserName.getValue(),password:b.catalogView.txtUserPassword.getValue()}}},getCredentials:function(){var g=this;var b=g.serviceCredentials.userName;var h=g.serviceCredentials.password;if(!b||!h||b.length==0||h.length==0){return""}return"://"+b+":"+h+"@"},onListSelectionChange:function(g,o){var b=this,q=b.multiSelect,h=o.length>0;if(!b.ignoreSelection&&b.isExpanded){if(q||h){b.setValue(o,false)}if(h){b.fireEvent("select",b,o)}b.inputEl.focus()}},onItemSelect:function(q,b,h){this.clearErrorMsg();if(b.length==1){var g=b[0].get("uri");if(this.serviceCredentials){var w=g.split("://");var o=this.getCredentials();g=w[0]+o+w[1]}this.wmsCaps.requestCapabilities(g);q.collapse()}},onRender:function(g,b){g.getEl().on("click",function(o,h){if(g.store.data.length>0){g.expand()}else{g.collapse()}})},onBeforeQuery:function(b){this.clearErrorMsg();return true},prepareHtml:function(b){return"<h3>{title}</h3><p>{description}</p>"},clearErrorMsg:function(){this.catalogView.errorContainer.hide();this.catalogView.errorContainer.update("")},onGetCapabilities:function(b){if(!b.success){this.catalogView.errorContainer.show();if(b.exceptionMsg.indexOf("script")==-1){this.catalogView.errorContainer.update(b.exceptionMsg)}else{this.catalogView.errorContainer.update(this.lang.getString("invalid_capabilities_output"))}this.wmsCapsOutput.store.removeAll()}else{this.clearErrorMsg()}},onCapabilitiesGridSelectionChange:function(b){if(!b){this.capabilitiesLayersConfig=null;this.catalogView.btnCreate.setDisabled(true);return}this.catalogView.btnCreate.setDisabled(b.layerConfigs.length==0);this.capabilitiesLayersConfig=b},onBtnCreateClick:function(){if(!this.capabilitiesLayersConfig){return}var b=this.capabilitiesLayersConfig.selected;delete this.capabilitiesLayersConfig.selected;var g={evtName:"addWmsLayersFromWmsCapabilities",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:this.capabilitiesLayersConfig};this.dispatchEvent(g,{confirmationRequired:false});this.wmsCapsOutput.view.selModel.deselectAll()},getHeader:function(){return this.lang.getString("headerCatalog")}});Ext.define("Client.module.tool.userData.Standard",{extend:Client.module.ToolGeneric,btnCls:"a3-user-data-tool-main-btn",btnText:null,btnTip:null,internal_name:"av_user_data",headerText:null,mapLvlController:null,shareServiceUrl:null,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="Client.module.tool.userData.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.btnText=this.lang.getString("mainBtnText");this.btnTip=this.lang.getString("mainBtnTip");this.headerText=this.lang.getString("headerText");this.moduleController=Ext.create("GeoMind.base.ModuleController");this.layerManagerModule=Ext.create("Client.module.tool.userData.LayerManager",{preloadGeojson:g.preloadGeojson,parentModule:g,mapLvlController:this.mapLvlC
1ontroller});this.layerManagerModule.on("fileUploadFailed",this._onFileUploadFailed,this);g.layerManagerModule.on("dataViewRequested",g.onDataViewRequested,g);this.moduleController.registerModule(this.layerManagerModule);this.wmsModule=Ext.create("Client.module.tool.userData.Wms");this.moduleController.registerModule(this.wmsModule);g.singleFileUpload=Ext.create("Client.module.tool.userData.SingleFileUpload",{projections:g.projections});g.moduleController.registerModule(g.singleFileUpload);g.singleFileUpload.on("uploadsuccess",g.setStandardView,g);g.rasterUpload=Ext.create("Client.module.tool.userData.RasterUpload",{projections:g.projections});g.moduleController.registerModule(g.rasterUpload);g.rasterUpload.on("uploadsuccess",g.setStandardView,g);g.rasterUpload.btnNavBack.on("click",g.setStandardView,g);g.shapeModule=Ext.create("Client.module.tool.userData.Shape",{projections:g.projections,moduleController:g.moduleController,reportEvent:g.reportEvent});g.moduleController.registerModule(g.shapeModule);g.shapeModule.on("uploadsuccess",g.setStandardView,g);g.cswModule=Ext.create("Client.module.tool.userData.Catalog",{cswType:g.cswType});this.moduleController.registerModule(this.cswModule);this.buildGui()},buildGui:function(){var g=this;this.wmsDescription=Ext.create("Ext.Component",{cls:"a3-info a3-text",html:this.lang.getString("descriptionWMS")});this.btnWms=Ext.create("Ext.button.Button",{text:this.lang.getString("btnWMS"),cls:"a3-data-wmw-btn a3-link-btn",listeners:{click:this.onBtnWmsClick,scope:this}});this.wmsModule.btnNavBack.on("click",this.setStandardView,this);this.wmsModule.on("addWmsLayersFromWmsCapabilities",this.setStandardView,this);g.singleFileUploadDescription=Ext.create("Ext.Component",{cls:"a3-info a3-text",html:g.lang.getString("descriptionSingleFileUpload")});g.btnSingleFileUpload=Ext.create("Ext.button.Button",{text:g.lang.getString("btnSingleFileUpload"),cls:"a3-data-vector-btn a3-link-btn",listeners:{click:g.onBtnSingleFileUploadClick,scope:g}});g.btnRasterUpload=Ext.create("Ext.button.Button",{text:g.lang.getString("btnRasterUpload"),cls:"a3-data-vector-btn a3-link-btn",listeners:{click:g.onBtnRasterUploadClick,scope:g}});g.rasterUploadDescription=Ext.create("Ext.Component",{cls:"a3-info a3-text",html:g.lang.getString("descriptionRasterUpload")});g.singleFileUpload.btnNavBack.on("click",g.setStandardView,g);g.btnShape=Ext.create("Ext.button.Button",{text:g.lang.getString("btnShape"),cls:"a3-data-vector-btn a3-link-btn",listeners:{click:g.onBtnShapeClick,scope:g}});g.shapeModule.btnNavBack.on("click",g.setStandardView,g);this.cswDescription=Ext.create("Ext.Component",{cls:"a3-info a3-text",html:this.lang.getString("descriptionCsw"),hidden:!g.cswType});this.btnCsw=Ext.create("Ext.button.Button",{text:this.lang.getString("btnCsw"),cls:"a3-data-csw-btn a3-link-btn",hidden:!g.cswType,listeners:{click:this.onBtnCswClick,scope:this}});this.cswModule.btnNavBack.on("click",this.setStandardView,this);this.cswModule.on("addWmsLayersFromWmsCapabilities",this.setStandardView,this);this.errorPanel=Ext.create("Ext.Component",{xtype:"container",itemId:"error_container",hidden:true,cls:"a3-box a3-failed"});this.standardView=Ext.create("Ext.panel.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[this.errorPanel,this.btnCsw,this.cswDescription,this.btnWms,this.wmsDescription,g.btnSingleFileUpload,g.singleFileUploadDescription,g.btnRasterUpload,g.rasterUploadDescription,g.btnShape,{xtype:"component",cls:"a3-info a3-text",html:g.lang.getString("descriptionShape")},this.layerManagerModule.treeModule.view],listeners:{scope:this,show:function(){this.errorPanel.hide()}}});var b=[g.standardView,g.cswModule.view,g.wmsModule.view,g.singleFileUpload.view,g.shapeModule.view];this.view=Ext.create("Ext.panel.Panel",{cls:"a3-modules-body",layout:"card",items:b})},onBtnWmsClick:function(){this.adviseHeaderChange(this.wmsModule.getHeader());this.switchCards(this.wmsModule.view)},onBtnSingleFileUploadClick:function(){this.adviseHeaderChange(this.singleFileUpload.getHeader());this.switchCards(this.singleFileUpload.view)},onBtnRasterUploadClick:function(){var b=this;b.adviseHeaderChange(b.rasterUpload.getHeader());b.switchCards(b.rasterUpload.view)},onBtnShapeClick:function(){var b=this;b.adviseHeaderChange(b.lang.getString("headerShape"));b.switchCards(b.shapeModule.view)},onBtnCswClick:function(){this.adviseHeaderChange(this.cswModule.getHeader());this.switchCards(this.cswModule.view)},setStandardView:function(){this.adviseHeaderChange(this.getHeader());this.switchCards(this.standardView)},switchCards:function(b){this.view.getLayout().setActiveItem(b)},getHeader:function(){return this.lang.getString("headerText")},deactivate:function(){this.active=false},activate:function(){this.active=true;this.view.show();this.layerManagerModule.activate()},afterMapReset:function(b){this.layerManagerModule.afterMapReset(b);this.rasterUpload.map=this.map},beforeMapReset:function(b){this.layerManagerModule.beforeMapReset(b)},_onUserAuthenticated:function(b){this.layerManagerModule.userAuthenticated(b)},_onUserSignedOut:function(){this.layerManagerModule.userSignedOut()},_onGetMyData:function(g){var b=this,h=g.data;g.data.features=b.getMyData(h);b.manageEventConfirmation(g)},getMyData:function(A){var w=this,o=A.filter,h=A.noFilter,B=A.merge,z=A.includeNotVisible,q=[];
1o=o||new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,value:w.map.getExtent().toGeometry()});function b(g){g.childNodes.forEach(function(D){if(D.get("leaf")){if((z||D.get("checked"))){var C=D.get("recordData"),F=C.get("olLayer"),E=[];F&&F.features&&F.features.forEach(function(G){if((z||G.getVisibility())&&(h||o.evaluate(G))){E.push(G)}});if(E.length>0){if(B){q.push({name:F.name,features:E})}else{q=Ext.Array.merge(q,E)}}}}else{b(D)}})}b(w.layerManagerModule.treeModule.store.getRootNode());return q},getLayers:function(){var g=this,h=[];function b(o){o.childNodes.forEach(function(w){if(w.get("leaf")){if(w.get("checked")){var q=w.get("recordData");h.push({uuid:q.get("uuid"),caption:q.get("name"),disable_name_in_legend:true,src:[g.map.getLegendUrl(q.get("olLayer"))]})}}else{b(w)}})}b(g.layerManagerModule.treeModule.store.getRootNode());return h},activateNode:function(h,g){var b=this;h.set("checked",g);b.layerManagerModule.view.getView().fireEvent("checkchange",h,g)},_onBeforeUpdateMapState:function(g){var b=this;b.layerManagerModule.beforeUpdateMapState(g)},_onSetLegendData:function(g){var b=this,h=b.getLayers();if(h.length>0){g.data.push({uuid:"99b5f1e8-ac3f-4b48-8ae2-f5619d250ab1",name:b.lang.getString("headerLegend"),layers:h})}},_onGetStorableData:function(h){var g=this,o=g.layerManagerModule.collectUserData(),b=[];function q(z,w){z.forEach(function(A){if(A.leaf&&A.checked){w.push(A)}if(!A.leaf){q(A.childNodes,w)}})}q(o.nodes,b);h.data.userData=b},_onRestoreStorableData:function(g){var b=this;if(!GeoMind.utils.SessionManager.ss.sessionId){b.restoreStorableData(g)}else{b.layerManagerModule.on("restoredData",Ext.bind(b.restoreStorableData,b,[g]),b)}},restoreStorableData:function(h){var g=this;layersToBeAdded=(h.data.userData||[]).slice();function b(q,o){o.childNodes.forEach(function(A){if(A.get("leaf")){var w=A.get("recordData");var z=q.find(function(B){return B.recordData.uuid==w.get("uuid")});if(z){g.activateNode(A,true);Ext.Array.remove(layersToBeAdded,z)}}else{b(q,A)}})}if(layersToBeAdded.length>0){b(layersToBeAdded,g.layerManagerModule.treeModule.store.getRootNode());if(layersToBeAdded.length>0){g.layerManagerModule.restoreUserProfileData({nodes:layersToBeAdded},true);Ext.defer(function(){b(layersToBeAdded,g.layerManagerModule.treeModule.store.getRootNode())},100)}}},_onFileUploadFailed:function(){var b=this;Ext.defer(function(){b.errorPanel.show();b.errorPanel.update(b.lang.getString("fileUploadFailed"))},1)},_onLayerVisibilityRemoved:function(g){var b=this;b.layerManagerModule.onLayerVisibilityRemoved(g)},onDataViewRequested:function(b){this.reportEvent("dataViewRequest",{record:{theme_data:{theme_uuid:b.id,theme_type:"av_user_data"},layer:b,get:function(g){switch(g){case"name":return this.layer.featureInfoLayerTitle||this.layer.name;default:return null}}}})}});Ext.define("Client.module.map.Attribution",{extend:Client.module.Generic,internal_name:"av_attribution",href:'<a href="https://www.avinet.no" target="_blank">Avinet AS</a>',lang_en:"Developed by ",lang_nb:"Utviklet av ",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.view=Ext.create("Ext.Component",{cls:"a3-attribution",html:(GeoMind.lang.Lang.langCode=="nb"?g.lang_nb:g.lang_en)+g.href});g.basemapView=Ext.create("Ext.Component",{cls:"a3-basemap-attribution",html:""})},_setActive:function(b){this.view.setVisible(b);this.basemapView.setVisible(b);if(b){this.activate()}else{this.deactivate()}},updateAttribution:function(){if(this.lastAttribution!==this.map.baseLayer.attribution){this.lastAttribution=this.map.baseLayer.attribution;this.basemapView.update(this.lastAttribution)}},wireUpOlEvents:function(){this.map.events.register("changebaselayer",this,this.updateAttribution)},cleanUpOlEvents:function(){if(!this.map){return}this.map.events.unregister("changebaselayer",this,this.updateAttribution)},afterMapContainerRender:function(b){this.mapContainer.add(this.view);this.mapContainer.add(this.basemapView)},afterMapReset:function(b){this.wireUpOlEvents();this.updateAttribution()},beforeMapReset:function(b){this.cleanUpOlEvents()}});Ext.define("Client.module.tool.layerManagerPro.lang.Standard",{str
1ings:{not_in_scale_info:{en:"Not in scale",nb:"Ikke innenfor målestokken",nn:"Ikkje innafor målestokk"},mainBtnText:{en:"Layer Manager",nb:"Temalag",nn:"Temalag"},mainBtnTip:{en:"Manage layers and categories",nb:"Håndter temalag og kategorier individuelt",nn:"Handter temalag og kategoriar einskild"},headerText:{en:"Layer Manager",nb:"Temalagsvelger",nn:"Temalagsvelger"},tabTitle:{en:"All layers",nb:"Alle temalag"},tabTip:{en:"Manage layers and categories",nb:"Håndter temalag og kategorier individuelt",nn:"Handter temalag og kategoriar einskild"},unMaskBtn:{en:"Activate",nb:"Aktiver",nn:"Aktiver"},unMaskBtnTip:{en:"Activates layer manager",nb:"Aktiver individuell håndtering av temalag og kategorier",nn:"Aktiver einskild handtering av temalag og kategoriar"},metafieldDesc:{en:"Description",nb:"Beskrivelse"},metafield:{en:"Metadata",nb:"Metadata"},settingsfield:{en:"Map display options ",nb:"Visning i kart"},layerLabel:{en:"This label support labels",nb:"Dette temalaget støtter tekst i kart"},layerLabelActive:{en:"This label has labels",nb:"Dette temalaget har tekst i kart"},labelField:{en:"Turn on label",nb:"Slå på tekst"},labelField_help:{en:"Choose a column for rendering labels on map",nb:"Velg en kolonne for å vise tekst i kart."},labelFieldEmptyText:{en:"None selected",nb:"Ingen valgte"},altStyleField:{en:"Style with unique colors",nb:"Style med unike farger"},opacityField:{en:"Map layer opacity",nb:"Gjennomsiktighet i kartet"},opacityField_help:{en:"Pull the slider to set layer visibility.",nb:"Dra i spaken for å justere gjennomsiktighet på dette temalaget."},layerVisible:{en:"Show layer in map",nb:"Vis temalag i kart"},btnShowDC:{en:"Show Dublin Core metadata",nb:"Vis Dublin Core metadata"},btnShowCsw:{en:"Show metadata",nb:"Vis metadata"},btnCompare:{en:"Compare data",nb:"Sammenlikne data"},btnZoomTo:{en:"Zoom to extent",nb:"Zoom til utstrekning"},btnBack:{en:"Back",nb:"Tilbake"}},errCodes:{zoom_to_envelope_no_geom:{en:"No layer extent could be found.",nb:"Temalagets utstrekning kunne ikke hentes."},zoom_to_envelope_error:{en:"Error when getting layer extent.",nb:"Feil under uthenting av temalagets utstrekning."}}});Ext.define("Client.module.map.layerManager.lang.Metadata",{strings:{basicDataFrmTitle:{en:"Metadata DC"},dc_coverage:{en:"Coverage",nb:"Dekning"},dc_creator:{en:"Creator",nb:"Opphavsmann"},dc_date:{en:"Date",nb:"Dato"},dc_description:{en:"Description",nb:"Beskrivelse"},dc_format:{en:"Format",nb:"Format"},dc_identifier:{en:"Identifier",nb:"Identifikator"},dc_language:{en:"Language",nb:"Språk"},dc_publisher:{en:"Publisher",nb:"Utgiver"},dc_relation:{en:"Relation",nb:"Relasjon"},dc_rights:{en:"Rights",nb:"Opphavsrett"},dc_source:{en:"Source",nb:"Kilde"},dc_subject:{en:"Subject",nb:"Emne"},dc_title:{en:"Title",nb:"Tittel"},dc_type:{en:"Type",nb:"Type"},dc_coverage_tip:{en:"Coverage"},dc_coverage_tip_text:{en:"The spatial or temporal topic of the resource, the spatial applicability of the resource, or the jurisdiction under which the resource is relevant.",nb:"Det geografiske eller tidsmessige emnet til ressursen, den geografiske anvendeligheten eller den myndighet / jurisdiksjon ressursen er underlagt."},dc_creator_tip:{en:"Creator"},dc_creator_tip_text:{en:"An entity primarily responsible for making the resource.",nb:"En enhet som er hovedansvarlig for ressursen. Eksempler på en opphavsmann er en person, en organisasjon eller en tjeneste."},dc_date_tip:{en:"Date"},dc_date_tip_text:{en:"A point of time associated with an event in the lifecycle of the resource.",nb:"Et tidspunkt som er knyttet til ressursens tilgjengeliggjøring."},dc_description_tip:{en:"Description"},dc_description_tip_text:{en:"An account of the resource, may include but is not limited to: an abstract, a table of contents, a graphical representation, or a free-text account of the resource.",nb:"Tekstlig beskrivelse av ressursens innhold"},dc_format_tip:{en:"Format"},dc_format_tip_text:{en:"The file format, physical medium, or dimensions of the resource. Recommended best practice is to use a controlled vocabulary such as the list of Internet Media Types [MIME].",nb:"Filformatet på ressursen"},dc_identifier_tip:{en:"Identifier"}
1,dc_identifier_tip_text:{en:"An unambiguous reference to the resource within a given context, best practice is to identify the resource by means of a string conforming to a formal identification system.",nb:"En entydig henvisning til ressursen i en gitt kontekst."},dc_language_tip:{en:"Language"},dc_language_tip_text:{en:"A language of the resource, best practice is to use a controlled vocabulary such as RFC 4646.",nb:"Ressursens språk."},dc_publisher_tip:{en:"Publisher"},dc_publisher_tip_text:{en:"An entity responsible for making the resource available.",nb:"En enhet som er ansvarlig for å ha gjort ressursen tilgjengelig."},dc_relation_tip:{en:"Relation"},dc_relation_tip_text:{en:"A related resource, best practice is to identify the related resource by means of a string conforming to a formal identification system.",nb:"En beslektet ressurs."},dc_rights_tip:{en:"Rights"},dc_rights_tip_text:{en:"Information about rights held in and over the resource. Typically includes a statement about various property rights associated with the resource, including intellectual property rights.",nb:"Informasjon om rettigheter knyttet til ressursen og ressursens tilgjengelighet."},dc_source_tip:{en:"Source"},dc_source_tip_text:{en:"A related resource from which the described resource is derived.",nb:"En relatert ressurs som den beskrevne ressurs er utledet fra."},dc_subject_tip:{en:"Subject"},dc_subject_tip_text:{en:"The topic of the resource. Recommended best practice is to use a controlled vocabulary.",nb:"Ressursens emne."},dc_title_tip:{en:"Title"},dc_title_tip_text:{en:"A name given to the resource.",nb:"Ressursens tittel"},dc_type_tip:{en:"Type"},dc_type_tip_text:{en:"The nature or genre of the resource. Best practice is to use a controlled vocabulary such as the DCMI Type Vocabulary",nb:"En egenskap ved ressursen eller en betegnelse som beskriver ressursen."}},errCodes:{}});Ext.define("Client.module.map.layerManager.mixins.Metadata",{onShowMetadata:function(D,C,b,A,w,o,g){var z=this,h=D.store.getAt(C),B=h.get("recordData"),q=h.get("type")=="layergroup";z.showMetadata(B,q,h,g)},showMetadata:function(G,A,h,z){var C=this,E=[],q=G.get("description"),w=G.get("config").configs,F=Adaptive.utils.Config.getConfig(w,"csw_url"),B=Adaptive.utils.Config.getBooleanConfig(w,"no_csw"),g=Adaptive.utils.Config.getThemeData(G),D=g&&Ext.create("Client.data.model.MetaDataDc",g.metadata);if(C.internalUiMetadata){C.internalUiMetadata.destroy()}C.opacitySlider=Ext.create("Ext.slider.Single",{hidden:A,width:200,value:G.get("opacity"),increment:1,minValue:0,maxValue:100,labelAlign:"top",fieldLabel:C.lang.getString("opacity")});C.opacitySlider.mon(C.opacitySlider,"change",C.opacityChange,C);C.opacitySlider.record=h;if(F&&!B){if(!Ext.isArray(F)){F=[F]}for(var o=0;o<F.length;o++){var b=F[o];E.push(C.createLinkBtn("btnShowDC"+o,{text:C.lang.getString("btnShowCsw"),listeners:{click:function(){window.open(b,"_blank","noopener,noreferrer")}}}))}}else{E=C.createLinkBtn("btnShowDC",{hidden:A,listeners:{click:function(){C.setMetadataContent("#metadataDC")}}})}C.metaContent=Ext.create("Ext.container.Container",{layout:"card",flex:1,items:[{xtype:"container",cls:"content",itemId:"settings",layout:{type:"vbox",align:"stretch"},items:Ext.Array.merge([{xtype:"box",flex:1,autoScroll:true,html:q},C.opacitySlider],E)},{xtype:"container",cls:"content",itemId:"metadataDC",layout:{type:"vbox",align:"stretch"},items:[{xtype:"box",flex:1,autoScroll:true,html:C.prepareMetadataHtml(D)},C.createLinkBtn("btnBack",{listeners:{click:function(){C.setMetadataContent("#settings")}}})]}]});C.internalUiMetadata=Ext.create("Ext.window.Window",{width:C.metadataWidth,height:200,baseCls:"a3-custom-window",cls:"a3-category-metadata a3-category-popup",resizable:false,draggable:false,layout:{type:"vbox",align:"stretch"},header:false,items:[{layout:"hbox",items:[{xtype:"box",cls:"header",html:G.get("name"),flex:1},{xtype:"button",cls:"a3-close-btn",listeners:{click:function(){C.internalUiMetadata.destroy()}}}]},C.metaContent],listeners:{afterrender:function(){Ext.defer(function(){Ext.getBody().on("click",C.closeMetadata,C)},10)},destroy:function(){Ext.getBody().un("click",C.closeMetadata,C);delete C.internalUiMetadata}}});C.internalUiMetadata.show();if(Ext.isFunction(C.alignMetadata)){C.alignMetadata()}else{C.internalUiMetadata.alignTo(z)}},setMetadataContent:function(g){var b=this;Ext.getBody().un("click",b.closeMetadata,b);b.metaContent.getLayout().setActiveItem(b.internalUiMetadata.down(g));Ext.defer(function(){var h=this;Ext.getBody().on("click",h.closeMetadata,h)},10,this)},closeMetadata:function(h,q){var w=this,o=q.getBoundingClientRect(),g=w.internalUiMetadata.getEl().dom.getBoundingClientRect(),b=!(o.right<g.left||o.left>g.right||o.bottom<g.top||o.top>g.bottom);if(!b){w.internalUiMetadata.destroy()}},opacityChange:function(g,o){var b=this,q=g.record,h=q.get("recordData");h.set("opacity",o);q.set("checked",true);b.fireUpdateMapState()}
1,prepareMetadataHtml:function(o){if(!o){return null}var h=this,g="",b=o.getFields().keys;b.forEach(function(z){var w=z.toLowerCase();if(w!="id"&&w!="dc_identifier"){var q=o.get(z);if(q&&q.length>0){g+="<p><b>"+this.metaDataLang.getString(z)+": </b>"+q+"</p>"}}},h);return g}});Ext.define("Client.module.tool.layerManagerPro.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Client.module.map.layerManager.mixins.LayerManagerTree,Client.module.map.layerManager.mixins.Metadata],btnCls:"a3-layer-manager-pro-tool-main-btn",btnText:null,btnTip:null,internal_name:"av_layer_manager_pro",headerText:null,active:false,categoryCheckboxes:true,categoryPageHidden:false,enableActive:false,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerManagerPro.lang.Standard");g.metaDataLang=GeoMind.lang.Lang.registerTranslations("Client.module.map.layerManager.lang.Metadata");g.disableDD=g.enableActive;this.btnText=this.lang.getString("mainBtnText");this.btnTip=this.lang.getString("mainBtnTip");this.headerText=this.lang.getString("headerText");g.iconHtml=Adaptive.ux.Icons.layers;this.buildGui()},buildGui:function(){var b=this;b.addAfterMapResetContainer=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[]});this.layerTree=b.createTree();b.layerTree.on("updateMapState",b.onLayerTreeUpdateMapState,b);b.layerTree.view.on("cellclick",b.onTreeCellClick,b);b.layerTree.view.padding=0;b.layerView=Ext.create("Ext.tab.Panel",{tabBar:{hidden:true},items:[{xtype:"panel",cls:"a3-modules-body",autoScroll:true,overflowY:"scroll",title:b.lang.getString("tabTitle"),tooltip:b.lang.getString("tabTip"),layout:{type:"vbox",align:"stretch"},items:[b.addAfterMapResetContainer,b.layerTree.view]}],listeners:{scope:b,tabchange:function(){b.refresh()}}});b.labelfieldStore=Ext.create("Ext.data.Store",{fields:["column_name","name"]});b.labelField=Ext.widget(b.createField("labelField",{xtype:"combo",valueField:"column_name",displayField:"name",editable:false,store:b.labelfieldStore,queryMode:"local",emptyText:b.lang.getString("labelFieldEmptyText"),listeners:{scope:b,change:b.onLabelChange}}));b.opacityField=Ext.widget(b.createField("opacityField",{xtype:"slider",value:100,increment:1,minValue:0,maxValue:100,listeners:{scope:b,change:b.opacityChange}}));b.metaDesc=Ext.create("Ext.container.Container",{});b.metaContent=Ext.create("Ext.container.Container",{});b.metaLink=Ext.widget(b.createLinkBtn("btnShowDC",{text:b.lang.getString("btnShowCsw"),listeners:{click:function(){window.open(this.url,"_blank","noopener,noreferrer")}}}));b.extraFilters=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[]});b.compareBtn=Ext.widget(b.createButton("btnCompare",{handler:function(){var g=Adaptive.utils.Config.getThemeData(b.activeMetaRecordData);Ext.create("Adaptive.ux.SwipeMap",{themeData:g,useDynamicTime:Adaptive.utils.Config.getBooleanConfig(b.activeMetaRecordData,"use_dynamic_time"),autoUpdateTime:Adaptive.utils.Config.getBooleanConfig(b.activeMetaRecordData,"auto_update_time"),map:b.map})},scope:b}));b.formPanel=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},cls:"a3-modules-body a3-form",header:b.lang.getString("metadata_header"),autoScroll:true,items:[b.createLinkBtn("btnBack",{backBtn:true,listeners:{scope:b,click:function(){b.showCardFrontpage()}}}),b.createSet("metafieldDesc",{title:"",collapsible:false,collapsed:false,style:{border:"none",background:"none"}},[b.metaDesc,b.metaLink]),b.createSet("metafield",{collapsible:false,collapsed:false},[b.metaContent]),{xtype:"box",margin:"5 0 0 0"},b.createSet("settingsfield",{layout:{type:"vbox",align:"stretch"},collapsible:false},[{xtype:"container",cls:"a3-toolbar",layout:"hbox",items:[b.createField("layerVisible",{xtype:"checkbox",handler:b.toggleLayer,scope:b}),{xtype:"box",flex:1},b.createButton("btnZoomTo",{glyph:"xe622",handler:b.onZoomTo,scope:b}),b.compareBtn]},{xtype:"box",margin:"5 0 0 0"},b.opacityField,{xtype:"box",margin:"5 0 0 0"},b.labelField,{xtype:"box",itemId:"altStyleSpacing",margin:"5 0 0 0"},b.createField("altStyleField",{xtype:"checkbox",handler:b.handleAltStyle,scope:b})]),{xtype:"box",margin:"5 0 0 0"},b.extraFilters]});b.btnZoomTo=b.formPanel.down("#btnZoomTo");b.view=Ext.create("Ext.container.Container",{layout:"card",items:[b.layerView,b.formPanel]});
1b.processForm()},toggleLayer:function(b,h){var g=this;if(h){g.showLayer(g.activeMetaRecord)}else{g.hideLayer(g.activeMetaRecord)}},handleAltStyle:function(b,q){var o=this,w=o.activeMetaRecordData,g=w.get("olLayer"),z={STYLES:""};g.PREVENT_MERGE=q;if(q){z.STYLES="alt_style"}g.mergeNewParams(z);var h=o.getLayersVisibilityEvtData();o.reportEvent("beforeUpdateMapState",h);o.fireUpdateMapState(h)},showLayer:function(h,o){var g=this;if(!h.get("checked")){if(g.activeMetaRecord.isRadio){g.onCheckChangeRadio(g.activeMetaRecord)}h.set("checked",true);o=true}if(o){var b=g.getLayersVisibilityEvtData();g.reportEvent("beforeUpdateMapState",b);g.fireUpdateMapState(b)}},hideLayer:function(h){var g=this;if(h.get("checked")){h.set("checked",false);var b=g.getLayersVisibilityEvtData();g.reportEvent("beforeUpdateMapState",b);g.fireUpdateMapState(b)}},canZoomTo:function(b,g){if(!Adaptive.utils.Config.getBooleanConfig(b.data,"zoom_to",true)){return false}return g.data_source_type==="19e6b756-3bb3-4513-ab35-c47bf0e2b47e"||g.data_source_type==="77abb6eb-40d6-4854-bcfe-e43d95e27159"},getLayerFilters:function(b){var g=this,h={theme_uuid:b};g.reportEvent("getLayerDimensionFilter",h);return h.filters||[]},onZoomTo:function(){var g=this,w=Adaptive.utils.Config.getThemeData(g.activeMetaRecordData),b=g.getLayerFilters(w.theme_uuid),q=b.map(function(A){var z=A.filterOptions||{};return{name:A.name,value:A.value,comparisonOperator:z.comparisonOperator||"ANY",netType:z.netType||"string[]",logicalOperator:z.logicalOperator||"AND"}}),h={theme_uuid:w.theme_uuid},o={theme_uuid:w.theme_uuid,epsg:g.map.getProjection().split(":")[1],buffer:250,filter:{filterColumns:q}};g.showLayer(g.activeMetaRecord);g.btnZoomTo.disable();g.reportEvent("getServerFilter",h);Ext.merge(o,h.filters);Ext.Ajax.request({url:"WebServices/client/Dataview.asmx/GetFilteredThemeEnvelope",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{request:o},callback:function(A,E,z){g.btnZoomTo.enable();var D=E&&GeoMind.utils.Ajax.fixResponse(z);if(D&&D.success){var C=Adaptive.utils.Config.getConfig(D.data,"envelope"),B=C&&OpenLayers.Geometry.fromWKT(C);if(B){g.map.zoomToExtent(B.getBounds())}else{g.mixins.notify.showNotifyError(g.view,g.lang.getError("zoom_to_envelope_no_geom"))}}else{g.mixins.notify.showNotifyError(g.view,g.lang.getError("zoom_to_envelope_error"))}},scope:g})},_onLayerManagerAddTab:function(g){var b=this;b.layerView.add(g.data);if(b.layerView.tabBar.isHidden()){b.layerView.tabBar.show()}},fireUpdateMapState:function(g){var b=this,g=g||b.getLayersVisibilityEvtData();if(Ext.isArray(g.records)){var h={evtName:"updateMapState",evtInitiatingModule:b,callback:null,data:g};h.data.group=20;b.dispatchEvent(h)}},_onBeforeShowMetadata:function(g){var b=this,h=g.data;b.showCard(h.tree,h.row,h.td,b.showMetadata)},_onBeforeShowConfig:function(g){var b=this,h=g.data;b.showCard(h.tree,h.row,h.td,b.showConfig)},_onBeforeShowCustomFilter:function(g){var b=this,h=g.data;b.showCard(h.tree,h.row,h.td,b.showCustomFilter)},showCardFrontpage:function(){var b=this;b.view.getLayout().setActiveItem(b.layerView);if(b.view.isVisible()){b.adviseHeaderChange(b.headerText)}b.refresh()},showCard:function(b,w,A,z){var h=this,q=b.store.getAt(w),o=q.get("recordData"),g=q.get("type")=="layergroup";h.view.getLayout().setActiveItem(h.formPanel);h.adviseHeaderChange(o.get("name"));Ext.callback(z,h,[o,g,q,A])},_onUpdateMapState:function(){var g=this;if(g.activeMetaRecord){var b=g.view.down("[dataIndex=layerVisible]");if(b.isVisible()){b.setValue(g.activeMetaRecord.get("checked"))}}},addUuid:function(g,h){var b=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(g.slice(-36));if(b){return g}return g+h},showCustomFilter:function(C,A,o,z){var B=this,g=B.view.down("#metafield"),w=B.view.down("#metafieldDesc"),b=B.view.down("#settingsfield"),h=Adaptive.utils.Config.getThemeData(C);Ext.suspendLayouts();g.hide();w.hide();b.hide();B.extraFilters.removeAll(true);if(h){var q={record:o,recordData:C,theme_data:h,items:[]};B.reportEvent("showCustomFilter",q);if(q.extrafilter){B.extraFilters.add(q.extrafilter)}}Ext.resumeLayouts(true)},showConfig:function(H,g,z,q){var J=this,o=[],F=J.view.down("#metafield"),G=J.view.down("#metafieldDesc"),b=J.view.down("[dataIndex=layerVisible]"),C=J.view.down("#settingsfield"),w=J.view.down("#altStyleSpacing"),I=J.view.down("[dataIndex=altStyleField]"),E=H.get("config").configs,h=Adaptive.utils.Config.getBooleanConfig(E,"alt_styling",false),A=Adaptive.utils.Config.getThemeData(H),D=A&&J.getVisibleLabelColumns(A);Ext.suspendLayouts();J.activeMetaRecordData=H;J.activeMetaRecord=z;J.extraFilters.removeAll(true);F.hide();G.hide();J.btnZoomTo.hide();b.hide();C.hide();J.labelField.hide();J.opacityField.show();if(!A||A.spatial_data_type!=="no_geom"){C.show();if(A){b.show();b.setValue(z.get("checked"));if(J.canZoomTo(H,A)){J.btnZoomTo.show()}}if(!D||D.length==0){J.labelField.hide()}else{J.labelField.show();J.labelfieldStore.loadData(D);J.labelField.setValue(H.get("label"))}J.opacityField.setValue(H.get("opacity"));w.setVisible(h);I.setVisible(h)}if(A){var K={record:z,recordData:H,theme_data:A,items:[]}}var B=Adaptive.utils.Config.getBooleanConfig(H,"use_time")===true;J.compareBtn.setVisible(B);Ext.resumeLayouts(true)},showMetadata:function(K,g,A,q){var N=this,o=[],b=N.view.down("[dataIndex=layerVisible]"),H=N.view.down("#metafield"),I=N.view.down("#metafieldDesc"),C=N.view.down("#settingsfield"),E=K.get("config").configs,h=Adaptive.utils.Config.getConfig(E,"csw_url"),G=Adaptive.utils.Config.getConfig(E,"csw_uuid"),F=Adaptive.utils.Config.getBooleanConfig(E,"no_csw"),B=Adaptive.utils.Config.getThemeData(K),D=B&&N.getVisibleLabelColumns(B),L=B&&Ext.create("Client.data.model.MetaDataDc",B.metadata),M=K.get("description");Ext.suspendLayouts();N.activeMetaRecordData=K;N.activeMetaRecord=A;C.hide();N.extraFilters.removeAll(true);N.metaLink.show();if(g){N.metaLink.hide()}else{if(h&&!F){if(!Ext.isArray(h)){h=[h]}for(var J=0;J<h.length;J++){var w=h[J];N.metaLink.url=N.addUuid(w,G);N.metaLink.show()}if(M&&M.length>500){M=M.substring(0,499)+"..."}}else{N.metaLink.hide()}}N.metaDesc.update(M);if(!N.metaLink.isVisible()&&!M){I.hide()}else{I.show()}if(!N.metaLink.isVisible()){var z=N.getDCMetadata(L);if(!z){H.hide()}else{N.metaContent.update(z);H.show()}}else{H.hide()}Ext.resumeLayouts(true)},getVisibleLabelColumns:function(h){var b=this,g=[];
1h.columns.forEach(function(o){if(o.visible_label==="show"){g.push({column_name:o.column_name,name:o.name})}});return g},getDCMetadata:function(q){var h=this,o=h.activeMetaRecordData,w=o.get("description"),b=q&&q.getFields().keys;if(b&&b.length>0){var g="";b.forEach(function(A){switch(A.toLowerCase()){case"id":case"dc_title":case"dc_identifier":case"dc_description":break;default:var z=q.get(A);if(z&&z.length>0){g+="<p><b>"+this.metaDataLang.getString(A)+": </b>"+z+"</p>"}}},h);if(g){return'<div class="a3-metadata-content">'+g+"</div>"}}},onLabelChange:function(h,g){var A=this,w=A.activeMetaRecord,B=A.activeMetaRecordData,z=B.data.olLayer,o=Adaptive.utils.Config.getThemeData(B),b=(o.is_digi_theme?"LAYER_DIGI_":"LAYER_")+o.theme_id+"_LABEL",q={};A.activeMetaRecordData.set("label",g);if(g){g="["+g+"]";A.activeMetaRecordData.hasLabel=true}else{A.activeMetaRecordData.hasLabel=false}q[b]=g;z.mergeNewParams(q);A.showLayer(w)},_onSetActiveLabel:function(g){var b=this,o=g.data.visible,h=g.data.themes;h.forEach(function(q){if(o){b.setActiveLabel(q)}else{b.removeActiveLabel(q)}})},setActiveLabel:function(z){var B=this,A=B.map.getLayerByThemeUuid(z),w=A.record,o=Adaptive.utils.Config.getThemeData(w),C=o&&B.getVisibleLabelColumns(o),b=w.get("label"),h=b||(C&&C.length>0&&C[0].column_name),g=(o.is_digi_theme?"LAYER_DIGI_":"LAYER_")+o.theme_id+"_LABEL",q={};w.set("label",h);if(h){h="["+h+"]";w.hasLabel=true}else{w.hasLabel=false}q[g]=h;A.mergeNewParams(q)},removeActiveLabel:function(b){var o=this,h=o.map.getLayerByThemeUuid(b),g=h.record,z=Adaptive.utils.Config.getThemeData(g),w=(z.is_digi_theme?"LAYER_DIGI_":"LAYER_")+z.theme_id+"_LABEL",q={};g.set("label",null);g.hasLabel=false;q[w]=null;h.mergeNewParams(q)},_onGetStorableData:function(q){var o=this,h=[],g,b,w;o.map.getLayers().forEach(function(z){g=z.record;b=g&&g.data;if(g&&g.hasLabel){w=Adaptive.utils.Config.getThemeData(b);h.push({uuid:w.theme_uuid,column:b.label})}});q.data.labelLayers=h},_onRestoreStorableData:function(q){var o=this,h=q.data.labelLayers||[],g,z,w,b;h.forEach(function(A){g=o.map.getLayerByThemeUuid(A.uuid);b=g.record;z=Adaptive.utils.Config.getThemeData(b);layerParamName=(z.is_digi_theme?"LAYER_DIGI_":"LAYER_")+z.theme_id+"_LABEL";w={};b.set("label",A.column);b.set("hasLabel",true);w[layerParamName]="["+A.column+"]";g.mergeNewParams(w);o.activeMetaRecord=b;o.showLayer(b)})},opacityChange:function(h,o){var g=this,b=g.activeMetaRecordData.get("olLayer");g.activeMetaRecordData.set("opacity",o);if(b instanceof OpenLayers.Layer.Vector||b instanceof OpenLayers.Layer.Image){b.setOpacity(o/100)}else{g.showLayer(g.activeMetaRecord,true)}},onLayerTreeUpdateMapState:function(g){var b=this;if(!b.active||b.silent){return}if(g.type=="layersVisibilityChanged"||g.type=="layersOrderChanged"){g=b.getLayersVisibilityEvtData();b.reportEvent("beforeUpdateMapState",g)}var h={evtName:"updateMapState",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:g};h.data.group=20;this.dispatchEvent(h,{confirmationRequired:false})},prepareDataForDisplay:function(){var q=this;this.layerTree.setNewRootNode(this.unifiedMapCfg);var g=this.layerTree.store.getRootNode();q.removeNodeVisibility(g);var b=[];for(var h=0;h<g.childNodes.length;h++){var w=g.childNodes[h].get("recordData"),o=w.get("name");if(o=="baseLayers"||o=="user_defined_layers"){b.push(g.childNodes[h]);continue}else{q.handleHiddenLayers(g.childNodes[h])}}for(var h=0;h<b.length;h++){g.removeChild(b[h])}},handleHiddenLayers:function(q,h){var o=this;q.childNodes.forEach(function(A){o.handleHiddenLayers(A,q)});var z=q.get("recordData"),b=z&&Adaptive.utils.Config.getThemeData(z);if(b){var g=Adaptive.utils.Config.getBooleanConfig(b,"hide_in_layermanager",false),w=Adaptive.utils.Config.getConfig(b,"mask_layer_group");if((g||(parseInt(w)>0))&&h){h.removeChild(q)}}},beforeMapReset:function(o){var h=this,g=h.layerTree.store.getRootNode(),b;h.removeNodeVisibility(g);b=h.getLayersVisibilityEvtData();h.reportEvent("beforeUpdateMapState",b);h.fireUpdateMapState(b);h.map&&h.map.events.unregister("changelayer",h,h.onLayerChange);h.silent=true},afterMapReset:function(g){var b=this;b.unifiedMapCfg=g.data.unifiedMapCfg;b.prepareDataForDisplay();b.active=true;b.silent=false;b.map.events.register("changelayer",b,b.onLayerChange)},activate:function(){var g=this,b=[];Ext.suspendLayouts();g.addAfterMapResetContainer.removeAll();g.reportEvent("addLayerManagerComponents",b);b.forEach(function(h){g.addAfterMapResetContainer.add(h)});Ext.resumeLayouts(true);g.refresh();g.map.events.register("moveend",g,g.onMapMoveZoomEnd);g.reportEvent("layerManagerActivate")},deactivate:function(){var b=this;b.map.events.unregister("moveend",b,b.onMapMoveZoomEnd);b.reportEvent("layerManagerDeactivate")},refresh:function(){var b=this,g;if(b.layerTree.view.isVisible()){g=b.view.el.cacheScrollValues();b.layerTree.view.getView().refresh();g()}else{b.reportEvent("layerManagerRefreshView")}},onMapMoveZoomEnd:function(){this.refresh()},_onAutoRefreshStopped:function(){this.refresh()},_onLayerIsFailing:function(){this.refresh()},_onShowLayerManager:function(){var b=this;b.reportEvent("switchTools",b)},_onDataviewFilterUpdate:function(){this.refresh()},_onRemoveLayerVisibility:function(o){var h=this,b=h.layerTree.store.getRootNode(),g=h.findLeafByUqid(b,o.data);g.set("checked",false);h._treeView.checkChange(g,false);h.reportEvent("layerVisibilityRemoved",g)},getLayersVisibilityEvtData:function(){var g=this;var b={type:"layersVisibilityChanged",records:[]};var h=this.layerTree.store.getRootNode();if(h){b.records=g.getRecords(h)}
1b.records.reverse();return b},getRecords:function(q,g){var o=this,g=g||[];if(q.get("type")=="layer"){var b=q.get("recordData"),h=q.get("checked"),w=q.get("hidden");if(h&&!w){g.push({checked:h,recordData:b})}}else{if(q.childNodes.length>0){q.childNodes.forEach(function(z){o.getRecords(z,g)})}}return g},getNodeVisibility:function(h,o){var g=this,b=h.get("recordData"),q={uuid:b.get("uuid"),opacity:b.get("opacity")};if(!h.get("checked")){return}if(h.childNodes.length){q.children=[];h.childNodes.forEach(function(w){g.getNodeVisibility(w,q.children)})}o.push(q)},_onGetActiveLayersInfo:function(h){var g=this,o=g.layerTree.store.getRootNode(),b=[];o.childNodes.forEach(function(q){g.getNodeVisibility(q,b)});h.data.layerManager="pro";h.data.visibleThemesPro=b.reverse()},restoreNodeVisibility:function(g,h){var b=this;h.forEach(function(o){g.childNodes.forEach(function(w){var q=w.get("recordData");if(q.get("uuid")==o.uuid){w.set("checked",true);if(o.opacity){q.set("opacity",o.opacity)}if(o.children){b.restoreNodeVisibility(w,o.children)}}})})},restoreCategoryVisibilityById:function(h,b){var g=this;h.childNodes.forEach(function(o){if(o.data.model=="GeoMind.data.model.LayerGroup"){if(Ext.Array.contains(b,o.get("recordData").get("id"))){o.set("checked",true);g.layerTree.view.getView().fireEvent("checkchange",o,true)}g.restoreCategoryVisibilityById(o,b)}})},restoreRadioVisibility:function(h,b){var g=this;g.silent=true;h.childNodes.forEach(function(o){if(o.childNodes.length>0){g.restoreRadioVisibility(o,b)}else{if(o.isRadio){g.onCheckChangeRadio(o)}}});g.silent=false},restoreThemeVisibility:function(q,g){var o=this,h,b;o.silent=true;q.childNodes.forEach(function(w){if(w.childNodes.length>0){o.restoreThemeVisibility(w,g)}else{h=w.get("recordData");b=Adaptive.utils.Config.getThemeData(h);if((b&&Ext.Array.contains(g,b.theme_uuid))||(h.get("uuid")&&Ext.Array.contains(g,h.get("uuid")))){w.set("checked",true);o._treeView.checkChange(w,true,true)}}});o.silent=false},restoreThemeVisibilityByLayerUuid:function(h,b){var g=this;g.silent=true;h.childNodes.forEach(function(o){if(o.childNodes.length>0){g.restoreThemeVisibilityByLayerUuid(o,b)}else{if(Ext.Array.contains(b,o.get("recordData").get("uuid"))){o.set("checked",true);g._treeView.checkChange(o,true)}}});g.silent=false},restoreThemeVisibilityById:function(o,g){var h=this,b;o.childNodes.forEach(function(q){if(q.data.model=="GeoMind.data.model.Layer"){g.forEach(function(w){b=Adaptive.utils.Config.getThemeData(q.get("recordData"));if(w.id==b.theme_id){if((w.isTheme&&!b.is_digi_theme)||(!w.isTheme&&b.is_digi_theme)){q.set("checked",true);h._treeView.checkChange(q,true)}}})}else{h.restoreThemeVisibilityById(q,g)}})},removeNodeVisibility:function(g){var b=this;g.childNodes.forEach(function(h){h.set("checked",false);b.removeNodeVisibility(h)})},onCheckChangeRadio:function(b){var g=this;if(b.get("checked")){setTimeout(function(){g.fireUpdateMapState()},10)}b.parentNode.childNodes.forEach(function(h){if(h.data.model=="GeoMind.data.model.Layer"&&h.get("checked")){h.set("checked",false)}})},_onLayerManagerResolveNode:function(g){var b=this;g.data.node=b.findLeaf(b.layerTree.store.getRootNode(),g.data.uuid)},_onLayerManagerAddNodes:function(g){var b=this,h=g.data;g.data.parentNode=b.layerTree.addNode(h.records,h.config);g=b.getLayersVisibilityEvtData();b.reportEvent("beforeUpdateMapState",g);b.fireUpdateMapState(g);b.showCardFrontpage()},_onLayerManagerRefresh:function(){var g=this,b=g.getLayersVisibilityEvtData();g.reportEvent("beforeUpdateMapState",b);g.fireUpdateMapState(b)},_onLayerManagerRemoveNodes:function(g){var b=this;b.layerTree.removeNode(g.data);b.fireUpdateMapState()},_onSharedActiveLayersInfoRetrieved:function(q){var o=this,w=q.data,g=w.storableData,h=o.layerTree.store.getRootNode(),b=[];w.visibleThemes&&w.visibleThemes.forEach(function(z){z.children&&z.children.forEach(function(A){b.push(A)});b.push(z.uuid)});if(w.layerManager!="pro"){o.removeNodeVisibility(h);o.restoreThemeVisibilityByLayerUuid(h,b);o.reportEvent("beforeUpdateMapState",o.getLayersVisibilityEvtData());if(g){o.reportEvent("restoreStorableData",g)}o.fireUpdateMapState()}},_onSharedActiveLayersInfoProRetrieved:function(B){var o=this,A=o.layerTree.store.getRootNode(),w=B.data.visibleThemesPro,g=B.data.storableData,z=(g&&g.sortedThemes)||[],b=[],q,h;o.removeNodeVisibility(A);o.reportEvent("beforeUpdateMapState",{records:[]});o.restoreNodeVisibility(A,w);q=o.getLayersVisibilityEvtData();if(o.enableActive&&z.length>0){for(h=0;h<z.length;h++){q.records.forEach(function(C){var D=C.recordData.theme_data;
1if((D&&D.theme_uuid==z[h])||(!D&&C.recordData.get("uuid")==z[h])){b.push(C)}})}q.records=b}o.reportEvent("beforeUpdateMapState",q);if(g){o.reportEvent("restoreStorableData",g)}o.fireUpdateMapState(q)},_onUrlApiLayerCommand:function(o){var h=this,q=o.data.activeCategoryId,g=o.data.visibleThemes,b=h.layerTree.store.getRootNode();if(q){if(!Ext.isArray(q)){q=[q]}h.restoreCategoryVisibilityById(b,q)}if(g){h.restoreThemeVisibilityById(b,g);h.fireUpdateMapState()}},_onLayerManagerProSetActiveLayers:function(b){console.warn("_onLayerManagerProSetActiveLayers is a deprecated event handler. Please use _onActivateThemes");this._onSharedActiveLayersInfoProRetrieved(b)},findLeaf:function(g,h){var o=this,b;Ext.each(g.childNodes,function(q){if(h==q.get("recordData").get("uuid")){b=q}if(!b&&q.childNodes){b=o.findLeaf(q,h)}if(b){return false}});return b},findLeafByUqid:function(g,o){var h=this,b;Ext.each(g.childNodes,function(q){if(o==q.get("recordData")._uqid){b=q}if(!b&&q.childNodes){b=h.findLeafByUqid(q,o)}if(b){return false}});return b},_onActivateTheme:function(q){var o=this,h=q.data.checked,b,g;g=o.findLeaf(o.layerTree.store.getRootNode(),q.data.category);b=o.findLeaf(g,q.data.layer);if(b){b.set("checked",h);o.layerTree.view.getView().fireEvent("checkchange",b,h);o.fireUpdateMapState()}},_onMergeNewParams:function(q){var o=this,z=OpenLayers.Util.upperCaseObject(q.data.params),g,h;h=o.findLeaf(o.layerTree.store.getRootNode(),q.data.category);g=o.findLeaf(h,q.data.layer);if(g){var w=g.get("recordData");var A=Adaptive.utils.Config.getThemeData(w);var b=A.theme_uuid;if(z.LAYERS){w.get("olLayer").PREVENT_MERGE=true}o.map.wmsLayers.forEach(function(B){var C=B.record&&Adaptive.utils.Config.getThemeData(B.record);if(C&&C.theme_uuid==b){B.mergeNewParams(z)}})}},_onActivateThemes:function(A){var z=this,o=z.layerTree.store.getRootNode(),g=A.data.themes||A.data,b=A.data.append,q=[],h,w;if(!b){z.removeNodeVisibility(o);z.reportEvent("beforeUpdateMapState",{records:[]})}z.restoreRadioVisibility(o,g);z.restoreThemeVisibility(o,g);h=z.getLayersVisibilityEvtData();if(z.enableActive){for(w=g.length-1;w>=0;--w){h.records.forEach(function(B){var C=B.recordData.theme_data;if((C&&C.theme_uuid==g[w])||(!C&&B.recordData.get("uuid")==g[w])){q.push(B)}})}h.records=q}if(b){h.append=true}z.reportEvent("beforeUpdateMapState",h);z.fireUpdateMapState(h)},_onDeactivateThemes:function(q){var o=this,h=o.layerTree.store.getRootNode(),b=q.data.themes||q.data,g;function w(z){z.childNodes.forEach(function(B){if(B.get("leaf")){var A=B.data.recordData.theme_data;if(A&&b.indexOf(A.theme_uuid)>-1){B.set("checked",false)}}else{w(B)}})}w(h);g=o.getLayersVisibilityEvtData();o.reportEvent("beforeUpdateMapState",g);o.fireUpdateMapState(g)}
1,onTreeCellClick:function(B,g,o,D,h,b,w){var A=this,z=w.target.className,q=B.getRecord(h),C=!q.get("checked");if((A.categoryCheckboxes||q.data.model=="GeoMind.data.model.Layer")&&z=="a3-category_mgr_label-txt"&&q.isSpatial&&o==0){var E=q.get("recordData");if(E&&E.get("group_layers")){if(q.get("checked")){setTimeout(function(){A.fireUpdateMapState()},10)}q.parentNode.childNodes.forEach(function(F){if(F.data.model=="GeoMind.data.model.Layer"&&F.get("checked")){F.set("checked",false)}})}q.set("checked",C);A.layerTree.view.getView().fireEvent("checkchange",q,C);if(C&&A._isAutoRefreshLayer(q)){setTimeout(function(){if(q.childNodes.length==0&&!A._isAutoRefreshing(q)){A.toggleAutoRefreshLayer(q)}},50)}}},_onDestroyLayerNode:function(o){var h=this,b=h.layerTree.store.getRootNode(),g=h.findLeaf(b,o.data.layerUuid);if(g){g.destroy()}},_onRefreshActiveLayers:function(){var b=this;Ext.Array.each(b.map.layers,function(h,g){if(h.getVisibility()&&h.url&&h.record&&!h.record.get("is_base_layer")){h.redraw(true)}})},_onLayerManagerShowThemes:function(A){var z=this,o=z.layerTree.store.getRootNode(),g=A.data.themes||A.data,b=A.data.append,q=[],h,w;if(!b){z.layerManagerHideThemes(o);z.reportEvent("beforeUpdateMapState",{records:[]})}z.layerManagerShowThemes(o,g);h=z.getLayersVisibilityEvtData();if(z.enableActive&&g.length==h.records.length){for(w=g.length-1;w>=0;--w){h.records.forEach(function(B){if(B.recordData.theme_data.theme_uuid==g[w].uuid){q.push(B)}})}h.records=q}if(b){h.append=true}z.reportEvent("beforeUpdateMapState",h);z.fireUpdateMapState(h)},_onLayerManagerHideThemes:function(q){var o=this,h=o.layerTree.store.getRootNode(),b=q.data.themes||q.data,g;function w(z){z.childNodes.forEach(function(A){if(A.get("leaf")){if(b.map(function(B){return B.uuid}).indexOf(A.get("recordData").get("uuid"))>-1){A.set("hidden",true);A.set("checked",false)}}else{w(A)}})}w(h);g=o.getLayersVisibilityEvtData();o.reportEvent("beforeUpdateMapState",g);o.fireUpdateMapState(g)},layerManagerShowThemes:function(q,g){var o=this,h,b;o.silent=true;q.childNodes.forEach(function(w){if(w.childNodes.length>0){o.layerManagerShowThemes(w,g)}else{h=w.get("recordData");b=Adaptive.utils.Config.getThemeData(h);g.forEach(function(z){if((b&&z.uuid==b.theme_uuid)||(h.get("uuid")&&z.uuid==h.get("uuid"))){w.set("hidden",false);w.set("checked",!z.options||z.options.visible!==false);o.hideShowParent(w)}})}});o.silent=false},layerManagerHideThemes:function(g){var b=this;g.childNodes.forEach(function(h){h.set("hidden",true);h.set("checked",false);b.layerManagerHideThemes(h)})},hideShowParent:function(w){if(!w){return}var b=w.parentNode;if(!b){return}var o=true,g=false;for(var q=0,h=b.childNodes.length;q<h;q++){var z=b.childNodes[q];if(!z.get("hidden")){g=g||z.get("checked");o=false;break}}b.set("hidden",o);b.set("checked",g);this.hideShowParent(b)},onLayerChange:function(g){var o=this;if(g.property==="visibility"&&g.layer.getVisibility()){var b=g.layer.record,h=Adaptive.utils.Config.getBooleanConfig(b,"dataview_default_active",false);if(h){var q=Adaptive.utils.Config.getThemeData(b);o.reportEvent("dataViewRequest",{theme_uuid:q.theme_uuid})}}}});Ext.define("Client.module.tool.workspace.lang.Standard",{strings:{mainBtnText:{en:"Bookmarks",nb:"Bokmerker",nn:"Bokmerker"},mainBtnTip:{en:"User bookmarks",nb:"Brukers bokmerker",nn:"Bokmerker til brukaren"},headerText:{en:"Bookmarks",nb:"Bokmerker",nn:"Bokmerker"},txtBookmarkName_empty:{en:"Bookmark name",nb:"Navn på bokmerke",nn:"Namn på bokmerke"},fsActiveBookmark_text:{en:"Active bookmark",nb:"Aktivt bokmerke",nn:"Aktivt bokmerke"},fsAddBookmark_text:{en:"Add Bookmark",nb:"Legg til bokmerke",nn:"Legg til bokmerke"},btnSaveBookmark_text:{en:"Save",nb:"Lagre",nn:"Lagre"},btnSaveBookmark_tip_text:{en:"Save current map extent",nb:"Lagre nåværende kartutstnitt",nn:"Lagre nåværande kartutstnitt"},btnUpdateBookmark_text:{en:"Update",nb:"Oppdater",nn:"Oppdater"},btnUpdateBookmark_tip_text:{en:"Update active bookmark",nb:"Oppdater aktivt bokmerke",nn:"Oppdater aktivt bokmerke"},actionZoomTo_tip_text:{en:"Load bookmark",nb:"Last inn bokmerke",nn:"Last inn bokmerke"},actionDelete_tip_text:{en:"Delete bookmark",nb:"Slett bokmerke",nn:"Slett bokmerke"},saved_bookmarks:{en:"Saved bookmarks",nb:"Lagrede bokmerker",nn:"Lagra bokmerker"},monitor_info:{en:"Check if this module should monitor map change and auto save changes",nb:"Merk av om denne modulen skal overvåke kart-endringer og auto-lagre disse",nn:"Merk av om denne modulen skal overvåke kart-endringer og auto-lagre dei"},unAuth_info:{en:"Bookmarks to be saved on the system, requires that user is logged in. Un authenticated user might work with bookmarks, but bookmarks will not be saved.",nb:"For å lagre bokmerker må du være logget inn. Du kan gjerne bruke bokmerker men disse vil ikke bli lagret.",nn:"For å lagre bokmerker må du være logget inn. Du kan gjerne bruke bokmerker men dei vil ikkje bli lagret."},saveFail_title:{en:"Bookmark save failed",nb:"Lagring av bokmerker feilet"},saveFail_msg:{en:"Could not save bookmarks. Recent changes may not be preserved.",nb:"Kunne ikke lagre bokmerker. Nylige endringer kan ha gått tapt."},saveUserObjects_title:{en:"Bookmarks Info",nb:"Informasjon om bokmerke",nn:"Informasjon om bokmerke"},saveUserObjects_msg:{en:"There are unsaved bookmarks. Do you want to add them to your list of bookmarks?",nb:"Det er bokmerker som ikke er lagret, ønsker du å legge disse til din bruker?",nn:"Det er bokmerker som ikkje er lagret, ønskker du å legje disse til din bruker?"}}
1,errCodes:{}});Ext.define("Client.data.model.BookmarkFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data",type:"auto",defaultValue:null,useNull:true},{name:"is_active",type:"boolean",defaultValue:false,useNull:true}]});Ext.define("Client.data.model.Bookmark",{extend:Ext.data.Model,fields:Client.data.model.BookmarkFields.fields,config:{fields:Client.data.model.BookmarkFields.fields}});Ext.define("Client.module.tool.workspace.Standard",{extend:Client.module.ToolGeneric,btnCls:"a3-user-workspace-tool-main-btn",btnText:null,btnTip:null,internal_name:"av_user_workspace",headerText:null,serviceUrl:null,serviceMethods:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);if(!g.lang){g.lang="Client.module.tool.workspace.lang.Standard"}g.lang=GeoMind.lang.Lang.registerTranslations(g.lang);g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText");g.buildGui()},buildGui:function(){var b=this;b.createBookmarkForm=Ext.create("Ext.form.Panel",{layout:"form",cls:"a3-form a3-form-noscroll",items:[{xtype:"fieldset",layout:"form",title:b.lang.getString("fsAddBookmark_text"),collapsible:false,items:[{xtype:"trigger",itemId:"txtNewBookmarkName",cls:"a3-trigger-save",emptyText:b.lang.getString("txtBookmarkName_empty"),onTriggerClick:Ext.bind(b.createBookmarkRecord,b)}]}]});b.store=Ext.create("Ext.data.Store",{model:"Client.data.model.Bookmark",data:[],listeners:{add:b.saveUserConfig,remove:b.saveUserConfig,scope:b}});b.columns=[{text:b.lang.getString("txtBookmarkName_empty"),dataIndex:"name",hideable:false,flex:2,editor:{xtype:"textfield",allowBlank:true}},{xtype:"actioncolumn",width:50,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,items:[{iconCls:"icon-open",tooltip:b.lang.getString("actionZoomTo_tip_text"),tooltipType:"title",handler:function(w,z,h,o,q,g){b.restoreBookmark(g)}},{iconCls:"icon-delete",tooltip:b.lang.getString("actionDelete_tip_text"),tooltipType:"title",handler:function(w,z,h,o,q,g){g.store.remove(g)}}]}];b.bookmarksGrid=Ext.create("Ext.grid.Panel",{title:b.lang.getString("saved_bookmarks"),store:b.store,columns:b.columns});b.unAuthenticateInfo=Ext.create("Ext.Component",{cls:"a3-box a3-info",html:b.lang.getString("unAuth_info")});b.view=Ext.create("Ext.panel.Panel",{cls:"a3-modules-body",items:[b.unAuthenticateInfo,b.createBookmarkForm,b.bookmarksGrid]})},getUserConfig:function(){var b=this;Ext.Ajax.request({url:b.serviceUrl+b.serviceMethods.read,method:"POST",jsonData:{guuid:__guuid__},callback:function(h,w,g){g=w&&JSON.parse(g.responseText).d;if(g&&g.success){for(var o=0;o<g.data.length;o++){if(g.data[o].key=="user_profiles"){var q=JSON.parse(g.data[o].value);b.restoreBookmarks(q);break}}}}})},restoreBookmarks:function(g){var b=this;if(g){b.isRestoring=true;b.store.add(g);b.isRestoring=false}if(b.inMemoryBookmarks&&b.inMemoryBookmarks.length>0){Ext.MessageBox.show({title:b.lang.getString("saveUserObjects_title"),msg:b.lang.getString("saveUserObjects_msg"),buttons:Ext.MessageBox.YESNO,icon:Ext.MessageBox.QUESTION,fn:function(h){if(h==="yes"){b.isRestoring=true;b.store.add(b.inMemoryBookmarks);b.isRestoring=false}delete b.inMemoryBookmarks}})}},saveUserConfig:function(){var b=this;if(b.isRestoring||b.unAuthenticateInfo.isVisible()){return}if(!b.saveTask){b.saveTask=new Ext.util.DelayedTask(function(){var g=[],o,h;b.store.each(function(q){g.push(q.data)});o={guuid:__guuid__,bookmarks:JSON.stringify(g)};h=JSON.stringify(o);if(b.lastSave&&b.lastSave==h){return}Ext.Ajax.request({url:b.serviceUrl+b.serviceMethods.write,method:"POST",jsonData:o,callback:function(w,z,q){if(!z||!JSON.parse(q.responseText).d.success){b.saveFailCount=(b.saveFailCount||0)+1;if(b.saveFailCount<10){b.saveUserConfig()}else{Ext.Msg.alert(b.lang.getString("saveFail_title"),b.lang.getString("saveFail_msg"))}}else{b.saveFailCount=0;b.lastSave=h}}})})}b.saveTask.delay(250)},getExternalData:function(g){var h=this,b={};h.reportEvent("getActiveLayersInfo",b);g.get("data").external_data=b;h.getStorableData(g)},getStorableData:function(b){var g=this,h={};g.reportEvent("getStorableData",h);b.data.data.storableData=h;g.store.add(b)},restoreBookmark:function(b){if(b){var h=this,o=b.get("data"),g=o.external_data;h.map.zoomToExtent(OpenLayers.Bounds.fromString(o.map_extent),true);h.reportEvent("sharedActiveLayersInfoRetrieved",{layerManager:g.layerManager,activeCategoryUuid:g.activeCategoryUuid,visibleThemes:g.visibleThemes,activeBaseLayerUuid:g.activeBaseLayerUuid});if(g.layerManager==="pro"){h.reportEvent("sharedActiveLayersInfoProRetrieved",{visibleThemesPro:g.visibleThemesPro,storableData:o.storableData})}else{if(o.storableData){h.reportEvent("restoreStorableData",o.storableData)}}}},createBookmarkRecord:function(){var o=this,g=o.view.down("#txtNewBookmarkName"),h={name:g.getValue(),data:{guuid:__guuid__,map_extent:o.map.getExtent().toString()}},b=Ext.create("Client.data.model.Bookmark",h);o.getExternalData(b);g.setValue("")},getHeader:function(){return this.lang.getString("headerText")},afterMapReset:function(b){if(GeoMind.utils.SessionManager.ss.sessionId){this.getUserConfig()}},beforeMapReset:function(g){this.inMemoryBookmarks=[];if(!this.resetAppOperation){for(var b=0;b<this.store.getRange().length;b++){this.inMemoryBookmarks.push(this.store.getAt(b).getData())}}this.store.removeAll()},_onUserAuthenticated:function(b){if(b&&b.data&&b.data.resetApp){this.resetAppOperation=true}else{delete this.resetAppOperation}this.unAuthenticateInfo.hide()},_onUserSignedOut:function(){this.unAuthenticateInfo.show()}});Ext.define("Client.module.tool.collaboration.form.lang.Map",{strings:{map:{en:"Map",nb:"Kart"},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"},createSuccess:{en:"Successfully created a new map!",nb:"Nytt kart opprettet!"},createError:{en:"Error while creating a map!",nb:"Feil ved opprettelse av nytt kart!"},deleteSuccess:{en:"Successfully delete map!",nb:"Kart slettet!"},deleteError:{en:"Error while deleting map!",nb:"Feil ved sletting av kart"},deleteActiveError:{en:"Active map cannot be deleted! To delete this map, please set another map active.",nb:"Aktive kart kan ikke slettes. For å slette dette kartet, sett først et annet kart aktivt"},tooltipDelete:{en:"Delete map",nb:"Slett kart"},deleteTitle:{en:"Delete map",nb:"Slett kart"},deleteMsg:{en:"Are you sure you want to delete this map? You cannot undo this action.",nb:"Er du sikker på at du ønsker å slette dette kartet? Denne handlingen kan ikke angres."},setActiveSuccess:{en:"New map set active!",nb:"Nytt kart satt aktiv!"},setActiveError:{en:"Error while changing map!",nb:"Feil ved endring av kart!"},readError:{en:"Error while reading map!",nb:"Feil ved lesing av kart!"},new_text:{en:"<p>Click to save the existing map, including extent, scale and visible thematic maps",nb:"<p>Klikk for å lagre det eksisterende kartet, inkludert valgt område, målestokk og synlige temalag"},edit_text:{en:"Show other versions of the map",nb:"Vis andre versjoner av kartet"},mapWindowTitle:{en:"Version manager",nb:"Versjonsbehandling"},active:{en:"Active",nb:"Aktiv"},create_date:{en:"Date",nb:"Dato"}
1,author:{en:"Created by",nb:"Opprettet av"}}});Ext.define("Client.module.tool.collaboration.mixin.FormGeneric",{createGrid:function(g,b){var h=this,o={hideHeaders:true,columns:g,viewConfig:{markDirty:false,disableSelection:true,trackOver:false},store:{autoLoad:false,proxy:{type:"ajaxread",url:h.serviceUrl+"Read"},fields:["id","uuid","creator_uuid","create_date","active","collaboration_id","name","type","data","geom","author","email","admin"]}};if(h.columnToggle){g.unshift({xtype:"checkcolumn",dataIndex:"active",width:30,listeners:{scope:h,checkchange:function(w,A,z){var q=h.grid.getStore().getAt(A);h.setActive(q,z)}}})}if(h.columnRadio){g.unshift({xtype:"checkcolumn",dataIndex:"active",width:30,renderer:function(q){return'<span class="x-tree-checkbox radio '+(q?"checked":"")+'"></span>'},listeners:{scope:h,checkchange:function(w,A,z){var q=h.grid.getStore().getAt(A);h.setActive(q,z)}}})}if(h.columnEditable){g.push({xtype:"actioncolumn",dataIndex:"form_edit",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,items:[{getClass:function(){return"icon-form-edit"},tooltipType:"title",tooltip:h.lang.getString("tooltipShowForm"),handler:function(w,z){var q=w.getStore().getAt(z);h.openRecord(q)}}]})}if(h.columDownloadable){g.push({xtype:"actioncolumn",dataIndex:"uuid",width:30,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,renderer:function(q){var w=Ext.Ajax.defaultHeaders.gm_session_id;return'<a class="x-action-col-icon icon-download" href="'+h.uploadUrl+"Download?uuid="+q+"&gm_session_id="+w+'" data-qtip="'+h.lang.getString("tooltipDownload")+'" target="_blank"></a>'}})}if(h.columnColor){g.push({xtype:"gridcolumn",dataIndex:"colorDataColumn",text:"rem",width:24,renderer:function(z,q,w){var A=Ext.id();w._divColorId=A;return'<div class="color-picker_gridColumn" title="'+h.lang.getString("color_qtip")+'"><div id='+A+' style="height:100%;width:100%;background-color:#'+(w.get("layerColor")||"FFFF00")+';position:relative;"></div></div>'},listeners:{scope:h,click:function(B,z,w,C,E,A){var D=A._divColorId;if(D){var F=Ext.create("Ext.tip.ToolTip",{width:100,height:100,target:z,trackMouse:false,anchor:"top",autoHide:false,autoShow:false,items:[]});var q=Ext.create("Ext.picker.Color",{value:"000000",listeners:{scope:this,select:function(H,G){Ext.get(D).dom.style.setProperty("background-color","#"+G);F.hide();A.set("layerColor",G);h.fireEvent("layerColorRequested",A)}}});F.add(q);F.show();F.on("hide",function(){Ext.destroy(q);Ext.destroy(F)})}}}})}if(h.columnZoomTo){g.push({xtype:"actioncolumn",width:24,dataIndex:"zoomToDataColumn",getClass:function(q,z,w){return"a3-user-data-tree_zoomTo"},getTip:function(){return h.lang.getString("zoom_qtip")},handler:function(w,C,q,A,B,z){h.fireEvent("zoomToRequested",z)}})}if(h.columnDataview){g.push({xtype:"actioncolumn",width:24,dataIndex:"dataview",getClass:function(q,z,w){return"a3-data_view"},getTip:function(){return h.lang.getString("dataview_qtip")},handler:function(w,C,q,A,B,z){h.fireEvent("dataViewRequested",z)}})}if(h.columDeletable){g.push({xtype:"actioncolumn",dataIndex:"delete",width:24,sortable:false,draggable:false,enableColumnHide:false,resizable:false,hideable:false,menuDisabled:true,items:[{getClass:function(){return"icon-delete"},tooltipType:"title",tooltip:h.lang.getString("tooltipDelete"),handler:function(w,z){var q=w.getStore().getAt(z);h.deleteRecord(q)}}]})}h.grid=Ext.create("Ext.grid.Panel",Ext.apply(o,b));h.grid.store.on("beforeload",h.onBeforeLoad,h);h.grid.store.on("load",h.onLoad,h)},newActions:function(g){var b=this;b.grid&&b.grid.store.load()},onBeforeLoad:function(){},onLoad:function(){},deleteRecord:function(b){var g=this;if(g.warnDeleteActive&&b.get("active")){Ext.Msg.alert(g.lang.getString("deleteTitle"),g.lang.getString("deleteActiveError"));return}Ext.Msg.confirm(g.lang.getString("deleteTitle"),g.lang.getString("deleteMsg"),function(h){if(h=="yes"){Ext.Ajax.request({url:g.serviceUrl+"Destroy",method:"POST",jsonData:{uuid:b.get("uuid")},callback:function(q,w,o){o=w&&JSON.parse(o.responseText).d;g.fireEvent("dataChanged");g.onDeleteCallback(o&&o.success,o)}})}},g)},setFkRecord:function(h,b){var g=this;g.fkRecord=h;g.fkName=b;if(g.grid){g.setDefaultFilter(g.grid.store);g.grid.store.load()}},formatDate:function(b){var g=this;
1return Ext.Date.format(GeoMind.utils.Date.fixDate(b),g.lang.getString("timeFormat"))},clearFkRecord:function(){},beforeMapReset:function(b){},afterMapReset:function(b){},setDefaultFilter:function(b){var g=this;b.proxy.setParams({type:g.serviceType,collaboration_id:g.fkRecord})}});Ext.define("Client.module.tool.collaboration.mixin.Map",{getExternalData:function(g){var h=this,b={};h.reportEvent("getActiveLayersInfo",b);g.external_data=b},getStorableData:function(g){var h=this,b={};h.reportEvent("getStorableData",b);g.storableData=b},restoreMap:function(h){var g=this,b=h.external_data;g.map.zoomToExtent(OpenLayers.Bounds.fromString(h.map_extent),true);g.reportEvent("sharedActiveLayersInfoRetrieved",{layerManager:b.layerManager,activeCategoryUuid:b.activeCategoryUuid,visibleThemes:b.visibleThemes,activeBaseLayerUuid:b.activeBaseLayerUuid});g.reportEvent("restoreSharedUserObjects",{userObjects:h.userObjects,title:name});var o={evtName:"collaborationRestoreMap",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:Ext.bind(function(){g.reportEvent("sharedActiveLayersInfoProRetrieved",{visibleThemesPro:b.visibleThemesPro||[],storableData:h.storableData})},g),data:{}};g.dispatchEvent(o,{confirmationRequired:false})}});Ext.define("Client.module.tool.collaboration.form.Map",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Client.module.tool.collaboration.mixin.Map,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],serviceUrl:"webservices/collaboration/Data.asmx/",serviceType:"map",config:{gridCfg:{sortableColumns:false,enableColumnResize:false,enableColumnMove:false,enableColumnHide:false,hideHeaders:false},columDeletable:true,warnDeleteActive:true},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Map")},buildGui:function(){var b=this;b.editBtn=Ext.create("Ext.button.Button",{cls:"a3-collaboration-edit-btn",height:32,width:32,scope:b,handler:b.onEdit});b.createBtn=Ext.create("Ext.button.Button",{cls:"a3-collaboration-create-btn",height:32,width:32,scope:b,handler:b.onCreate});b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"container",layout:"hbox",items:[b.createBtn,{xtype:"component",width:10},{xtype:"component",html:b.lang.getString("new_text"),flex:1}]},{xtype:"component",height:5},{xtype:"container",layout:"hbox",items:[b.editBtn,{xtype:"component",width:10},{xtype:"component",html:b.lang.getString("edit_text"),flex:1}]}]})},setActive:function(b){var g=this;Ext.Ajax.request({url:g.serviceUrl+"SetActive",method:"POST",jsonData:{uuid:b.get("uuid")},callback:function(o,q,h){h=q&&JSON.parse(h.responseText).d;if(h&&h.success){g.fireEvent("dataChanged");g.showNotifySuccess(g.window,g.lang.getString("setActiveSuccess"));g.grid.store.load();g.loadMap()}else{g.showNotifyError(g.window,g.lang.getString("setActiveError"))}}})},onCreate:function(){var b=this;b.saveMap(b.fkRecord,true)},onEdit:function(){var q=this,g=Ext.getBody(),o=g.getWidth(),b=g.getHeight(),h=[{xtype:"checkcolumn",dataIndex:"active",text:q.lang.getString("active"),width:60,renderer:function(w){return'<span class="x-tree-checkbox radio '+(w?"checked":"")+'"></span>'},listeners:{scope:q,beforecheckchange:function(w,A,z){return z},checkchange:function(z,A){var w=q.grid.getStore().getAt(A);q.setActive(w)}}},{text:q.lang.getString("create_date"),dataIndex:"create_date",width:120,renderer:function(z){var w=Ext.Date.format(GeoMind.utils.Date.fixDate(z),"m/d/Y H:i");return w}},{text:q.lang.getString("author"),dataIndex:"author",flex:1}];q.createGrid(h,q.gridCfg);q.setDefaultFilter(q.grid.store);q.window=Ext.create("Ext.window.Window",{cls:"a3-modules-body",overflowY:"auto",title:q.lang.getString("mapWindowTitle"),width:400,height:Math.min(b-50,400),layout:"fit",defaults:{anchor:"100%"},items:[q.grid]});q.grid.store.load(function(){q.grid.selModel.select(q.grid.store.findRecord("active",true))});q.window.showAt(o-700,25)},saveMap:function(b,o,q){var g=this,h={map_extent:g.map.getExtent().toString()};g.getExternalData(h);g.getStorableData(h);Ext.Ajax.request({url:g.serviceUrl+"Create",method:"POST",jsonData:{data:{collaboration_id:b,type:g.serviceType,data:Ext.JSON.encode(h)}},callback:function(z,A,w){w=A&&JSON.parse(w.responseText).d;if(w&&w.success){if(o){g.fireEvent("dataChanged");g.showNotifySuccess(g.view,g.lang.getString("createSuccess"));g.loadMap()}if(q){q()}}else{g.showNotifyError(g.view,g.lang.getString("createError"))}}})},onDeleteCallback:function(g){var b=this;if(g){b.showNotifySuccess(b.window,b.lang.getString("deleteSuccess"));b.grid.store.load()}else{b.showNotifyError(b.window,b.lang.getString("deleteError"))}},loadMap:function(){var b=this;Ext.Ajax.request({url:b.serviceUrl+"ReadActive",method:"POST",jsonData:{collaboration_id:b.fkRecord,type:b.serviceType},callback:function(h,o,g){g=o&&JSON.parse(g.responseText).d;if(g&&g.success){b.restoreMap(Ext.JSON.decode(g.records[0].data))}else{b.showNotifyError(b.view,b.lang.getString("readError"))}}})},activate:function(){var b=this;if(!b.view){b.buildGui()}},setFkRecord:function(g){var b=this;b.fkRecord=g;b.loadMap()},_onCategoryLayerManagerActivate:function(){this.activeLayerManager="standard"},_onLayerManagerProActivate:function(){this.activeLayerManager="pro"}});Ext.define("Client.module.tool.collaboration.form.lang.Comment",{strings:{addBtn:{en:"Add",nb:"Legg til"},info:{en:"Comments added here will be visible for all users with access to the case. Once a comment has been added it cannot be deleted.",nb:"Kommentarer som skrives inn her vil være synlige for alle brukere med tilgang til saken. Stedfest kommentaren ved først å klikke på knappen, deretter i kartet. Når kommentaren først er lagt inn kan de
1n ikke slettes."},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"}}});Ext.define("Adaptive.comment.lang.Comment",{strings:{loadMaskMsg:{en:"Please wait",nb:"Vennligst vent"},btnSave:{en:"Save comment",nb:"Lagre kommentar"},orderBy:{en:"Newest first",nb:"Nyeste først"},geotag:{en:"Geotag comment",nb:"Stedfest kommentar"},geotagCancel:{en:"Cancel geotag",nb:"Angre stedfesting"},notifySaved:{en:"Comment saved",nb:"Kommentar lagret"},commentSaveError:{en:"Not able to save comment, please try again",nb:"Kunne ikke lagre kommentar, vennligst prøv igjen"},flagComment:{en:"Flag comment as inappropriate or offensive.",nb:"Merk kommentar som upassende eller støtende."},flagCommentError:{en:"Not able to flag comment, please try again",nb:"Kunne ikke flagge kommentar, vennligst prøv igjen"},flagCommentSuccess:{en:"Comment flagged",nb:"Kommentar flagget"},moderateComment:{en:"Moderate comment. Comment will be hidden for regular users.",nb:"Moderer kommentar. Kommentaren vil bli skjult for vanlige brukere."},moderateCommentError:{en:"Not able to moderate comment, please try again",nb:"Kunne ikke moderere kommentar, vennligst prøv igjen"},moderateCommentSuccess:{en:"Comment moderated",nb:"Kommenter moderert"},invalid_fields:{en:"Invalid fields",nb:"Ugyldige felt"},articleComment:{en:"Comment",nb:"Kommentar"},comment_emptyText:{en:"Write a comment...",nb:"Skriv en kommentar..."},comments:{en:"Comments",nb:"Kommentarer"},newComment:{en:"New comment",nb:"Ny kommentar"},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"},savingComment:{en:"Saving comment, please wait",nb:"Lagrer kommentar, vennligst vent"}}});Ext.define("Adaptive.comment.model.Comment",{extend:Ext.data.Model,fields:[{name:"id",type:"integer"},{name:"create_date",type:"date",convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"modify_date",type:"date",convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"comment",type:"text"},{name:"isOwner",type:"boolean"}]});Ext.define("Adaptive.ux.lang.Snapping",{strings:{lblSnap:{en:"Snap geometry",nb:"Snap geometri"},lblSnapToEndpoint:{en:"Snap to endpoints",nb:"Snap til endepunkter"}}});Ext.define("Adaptive.ux.Snapping",{extend:Ext.form.FieldSet,mixins:[Adaptive.form.mixins.Generator],layout:{type:"vbox",align:"stretch"},snappingUrl:"WebServices/Generic/SpatialOperations.asmx/CheckForSnapGeometry",configs:{snappingEnabled:false,snapToEndpointUrl:null},constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.Snapping");g.items=[];g.snapRadius=g.snapRadius||25;g.wktReader=new OpenLayers.Format.WKT();if(g.snappingEnabled){g.snapGeometry=Ext.widget(g.createField("lblSnap",{xtype:"checkbox"}));g.items.push(g.snapGeometry)}if(g.snapToEndpointUrl){g.snapToEndpoint=Ext.widget(g.createField("lblSnapToEndpoint",{xtype:"checkbox",scope:g,handler:g.onSetSnapToEndpoints}));g.items.push(g.snapToEndpoint)}g.callParent(arguments)},onGeometryChanged:function(G,E){var K=this,F=G.toLowerCase(),b=(F.indexOf("point")>=0)&&(F.indexOf("multipoint")<0),C=(F.indexOf("linestring")>=0)&&(F.indexOf("multilinestring")<0),D,w;if(!K.snappingEnabled||!K.snapGeometry.checked){K.fireEvent("snapped",null);return}if(!C&&!b){K.fireEvent("snapped",null);return}D=G.substring(0,G.length-1).split("(");w=D[1];if(b){K.runCheckForSnapGeometryRequest(G,E,function(O,P,N){N=GeoMind.utils.Ajax.fixResponse(N);if(P&&N.success){var M=GeoMind.utils.Data.extractConfigObjectByKey(N.data,"closestpoint");if(M&&M!==G){console.log("snapping point to ",M);K.fireEvent("snapped",M);return}else{console.error("Error occured when checking for snap geometry");K.fireEvent("snapped",null);return}}else{console.error("Error occured when checking for snap geometry");K.fireEvent("snapped",null);return}})}else{if(C){var J=w.split(",");var I=J[0].split(" ")[0];var H=J[0].split(" ")[1];var h=J[J.length-1].split(" ")[0];var g=J[J.length-1].split(" ")[1];var o="POINT("+I+" "+H+")";var B="POINT("+h+" "+g+")";var L=J[0];var q=J[J.length-1];var A,z;K.runCheckForSnapGeometryRequest(o,E,function(N,O,M){M=GeoMind.utils.Ajax.fixResponse(M);if(O&&M.success){A=GeoMind.utils.Data.extractConfigObjectByKey(M.data,"closestpoint");if(A){z=A.substring(0,A.length-1).split("(");if(z[1]!=q){L=z[1]}}K.runCheckForSnapGeometryRequest(B,E,function(R,S,Q){Q=GeoMind.utils.Ajax.fixResponse(Q);if(S&&Q.success){A=GeoMind.utils.Data.extractConfigObjectByKey(Q.data,"closestpoint");if(A&&A!=L){z=A.substring(0,A.length-1).split("(");if(z[1]!=L){q=z[1]}}var T=[L];if(J.length>2){T=T.concat(J.slice(1,J.length-1))}T=T.concat(q);var P="LINESTRING("+T.join(",")+")";K.fireEvent("snapped",P)}else{console.error("Error occured when checking for snap geometry");K.fireEvent("snapped",null);return}})}else{console.error("Error occured when checking for snap geometry");K.fireEvent("snapped",null);return}})}}},runCheckForSnapGeometryRequest:function(g,b,o){var h=this;if(!h.snapConnection){h.snapConnection=Ext.create("Ext.data.Connection",{autoAbort:true,defaultHeaders:Ext.Ajax.defaultHeaders})}h.snapConnection.request({method:"POST",url:h.snappingUrl,jsonData:{point:g,theme_uuid:b,radius:h.snapRadius},callback:o})},activate:function(){var b=this;b.onSetSnapToEndpoints()},deactivate:function(){var b=this;b.setSnapToEndpoints(false)},initSnapControl:function(g){var b=this;if(g){if(!b.snapTarget){b.snapTarget=new OpenLayers.Layer.Vector("snapTarget",{style:{fill:true,fillColor:"#00ffd9",pointRadius:5,fillOpacity:0.4,strokeColor:"#00ffd9",strokeOpacity:0.6}});b.map.addLayer(b.snapTarget)}if(!b.snapControl){b.snapControl=new OpenLayers.Control.Snapping({layer:b.drawLayer,targets:[{layer:b.snapTarget,tolerance:20}]});b.map.addControl(b.snapControl);b.snapControl.activate()}}else{if(b.snapControl){b.snapControl.destroy();delete b.snapControl}if(b.snapTarget){b.snapTarget.destroy();delete b.snapTarget}}},onSetSnapToEndpoints:function(h,g){var b=this;if(g==null){g=b.checkedSnapToEndpoints}else{b.checkedSnapToEndpoints=g}b.setSnapToEndpoints(g)},setSnapToEndpoints:function(g){var b=this;b.initSnapControl(g);if(g){b.requestSnapToEndpoints();map.events.register("moveend",b,b.requestSnapToEndpoints)}else{map.events.unregister("moveend",b,b.requestSnapToEndpoints)}},requestSnapToEndpoints:function(){var b=this;if(!b.snapEndPointsConnection){b.snapEndPointsConnection=Ext.create("Ext.data.Connection",{defaultHeaders:Ext.Ajax.defaultHeaders})}else{b.snapEndPointsConnection.abortAll()}b.snapEndPointsConnection.request({method:"POST",url:b.snapToEndpointUrl,jsonData:{extent:b.map.getExtent().toGeometry().toString()},callback:function(h,w,g){g=w&&GeoMind.utils.Ajax.fixResponse(g);if(b.snapTarget&&g&&g.success){var q=GeoMind.utils.Data.extractConfigObjectByKey(g.data,"data");var o=q.map(function(z){return b.wktReader.read(z)});b.snapTarget.addFeatures(o)}}})}});Ext.define("Adaptive.ux.lang.GeometryPicker",{strings:{geometry:{en:"Geometry",nb:"Geometri"},add_multipolygon:{en:"Add polygon",nb:"Legg til polygon"},add_multipoint:{en:"Add point",nb:"Legg til punkt"},add_multiline:{en:"Add line",nb:"Legg til linje"},cancel_add_multipolygon:{en:"Cancel add polygon",nb:"Avbryt legg til polygon"}
1,cancel_add_multipoint:{en:"Cancel add point",nb:"Avbryt legg til punkt"},cancel_add_multiline:{en:"Cancel add line",nb:"Avbryt legg til linje"},delete_multipolygon:{en:"Delete polygon",nb:"Slett polygon"},delete_multipoint:{en:"Delete point",nb:"Slett punkt"},delete_multiline:{en:"Delete line",nb:"Slett linje"},add_from_cadastre:{en:"Add from cadastre",nb:"Legg til fra matrikkel"},cancel_add_from_cadastre:{en:"Cancel add from cadastre",nb:"Avbryt legg til fra matrikkel"},intersect_polygon:{en:"Intersect",nb:"Klipp"},cancel_intersect_polygon:{en:"Cancel intersect",nb:"Avbryt klipping"},error_intersection:{en:"Intersection failed",nb:"Klipping feilet"},confirm_selection:{en:"Confirm selection",nb:"Bekreft"},confirm_selection_info:{en:"Select geometry in map",nb:"Velg ønsket geometri i kartet"},cancel_selection:{en:"Cancel selection",nb:"Avbryt"},file_upload_failure:{en:"Could not read uploaded file! Try with another file",nb:"Kunne ikke lese filen. Forsøk igjen med en annen fil"},file_unsupported:{en:"Usupported file type. Please choose a valid format..",nb:"Ugyldig filtype. Velg et gyldig format.."},no_valid_geoms_point:{en:"No points in file",nb:"Ingen punkter i fil"},no_valid_geoms_line:{en:"No lines in file",nb:"Ingen linjer i fil"},no_valid_geoms_polygon:{en:"No polygons in file",nb:"Ingen polygoner i fil"},no_valid_geoms_multipolygon:{en:"No polygons in file",nb:"Ingen polygoner i fil"},invalid_wkt_header:{en:"Invalid WKT",nb:"Ugyldig WKT"},invalid_wkt_body:{en:"Please correct WKT or cancel...",nb:"Vennligst rett opp WKT eller avbryt..."},btn_edit_wkt:{en:"Edit WKT",nb:"Rediger WKT"},btn_set_wkt:{en:"Set WKT",nb:"Sett WKT"},btn_cancel_wkt:{en:"Cancel",nb:"Avbryt"},btn_show_wkt:{en:"Show WKT",nb:"Vis WKT"},add_from_file:{en:"Add from file",nb:"Legg til fra fil"},cancel_add_from_file:{en:"Cancel add from file",nb:"Avbryt legg til fil"},singleFileTitle:{en:"GPX",nb:"GPX"},shapeFileTitle:{en:"Shape",nb:"Shape"}}});Ext.define("Adaptive.mixins.GeometryPickerTemplate",{config:{map:null,data_source_projection:null,spatial_data_type:null},geomPickerBaseSetup:function(){var b=this;if(b.data_source_projection){b.sourceProj=new OpenLayers.Projection("EPSG:"+b.data_source_projection.epsg)}else{b.sourceProj=new OpenLayers.Projection(b.map_projection)}},getStyleMap:function(){return new OpenLayers.StyleMap({"default":{pointRadius:7,strokeColor:"#f90",strokeOpacity:0.9,fillColor:"#f90",fillOpacity:0.4},select:{pointRadius:7,strokeColor:"#93f",strokeOpacity:0.9,fillColor:"#93f",fillOpacity:0.4}})},initLayer:function(g){var b=this;if(b.drawLayer){return}b.drawLayer=new OpenLayers.Layer.Vector("GeometryPicker_"+Ext.id(),{group:501,rendererOptions:{zIndexing:true},styleMap:b.getStyleMap()});b.map.addLayer(b.drawLayer);b.modifyControl=new OpenLayers.Control.ModifyFeature(b.drawLayer,g);b.map.addControl(b.modifyControl)},destroyLayer:function(){var b=this;if(b.modifyControl){b.modifyControl.destroy();delete b.modifyControl}if(b.drawLayer){b.drawLayer.destroy();delete b.drawLayer}},toWkt:function(b,h){var g=this;if(b&&g.map.getProjection()!=g.sourceProj.projCode){Adaptive.utils.Proj.transformFeatureAsync(b,g.map.getProjection(),g.sourceProj.projCode,function(w,q,o){h(w,q)})}else{if(b){h(true,new OpenLayers.Format.WKT().write(b))}else{h(false)}}},fromWkt:function(h,o){var g=this,b=h?new OpenLayers.Format.WKT().read(h):null;if(b&&g.map.getProjection()!=g.sourceProj.projCode){Adaptive.utils.Proj.transformFeatureAsync(b,g.sourceProj.projCode,g.map.getProjection(),function(z,w,q){o(z,q)})}else{o(true,b)}},roundCoordinate:function(g){try{switch(this.sourceProj.projCode){case"EPSG:4326":case"EPSG:4230":case"EPSG:4258":return parseFloat(g).toFixed(4);default:return parseInt(g)}}catch(b){return"N/A"}},setGeometry:function(b){},startPicker:function(){},stopPicker:function(){},onCancel:function(){},setDefaultZ:function(g){var b=this;if(g instanceof OpenLayers.Geometry.Point){g.z=g.z||0}else{g.components.forEach(function(h){b.setDefaultZ(h)})}},showDrawLayer:function(){var b=this;b.map.addLayer(b.drawLayer)},hideDrawLayer:function(){var b=this;b.map.removeLayer(b.drawLayer)},getProjection:function(){var b=this;return b.autoSetProjection?b.map.getDisplayProjection():b.map.getProjection()},getProjectionObject:function(){var b=this;return b.autoSetProjection?b.map.getDisplayProjectionObject():b.map.getProjectionObject()}});Ext.define("Adaptive.ux.GeometryPicker",{extend:Ext.form.FieldSet,mixins:[Adaptive.mixins.GeometryPickerTemplate,Adaptive.mixins.OLMeasure],hidden:true,collapsible:true,collapsed:true,layout:"form",hasPointPlotter:true,constructor:function(b){var g=this;Ext.apply(g,b);g.items=[];g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.GeometryPicker");g.title=g.lang.getString("geometry");g.geomPickerBaseSetup();if(g.snappingEnabled||g.snapToEndpointUrl){g.snappingCmp=Ext.create("Adaptive.ux.Snapping",{map:g.map,snappingEnabled:g.snappingEnabled,snapToEndpointUrl:g.snapToEndpointUrl});g.items.push(g.snappingCmp)}if(g.spatial_data_type=="polygon"||g.spatial_data_type=="line"||g.spatial_data_type=="point"){g.hidden=false;g.addGeometryPlotter()}if(g.editableWkt){g.hidden=false;g.addWktField()}g.callParent(arguments);g.initLayer({clickout:false,toggle:false});if(g.snappingCmp){g.snappingCmp.drawLayer=g.drawLayer}g.drawLayer.events.on({beforefeatureadded:g.onFeatureAdded,featuremodified:g.onFeatureModified,sketchmodified:g.onSketchmodified,sketchcomplete:g.onSketchcomplete,vertexmodified:g.onVertexmodified,scope:g})},updateProjection:function(){var b=this;if(b.plotGeometry){b.plotGeometry.setMapProjection(b.getProjectionObject())}if(b.plotCoordinate){b.plotCoordinate.setMapProjection(b.getProjectionObject())}},onCancel:function(){var b=this;if(b.plotGeometry){b.plotGeometry.clearCoordStore();b.plotGeometry.removeColoredFeatureLayer();b.plotGeometry.feature=null}if(b.plotCoordinate){b.plotCoordinate.clearCoords()}},addGeometryPlotter:function(){var b=this;b.plotGeometry=Ext.create("Adaptive.ux.PlotGeometry",{map:b.map,spatialDataType:b.spatial_data_type,displayProjection:b.getProjectionObject(),readOnly:b.readOnly,initialProjections:GeoMind.utils.DictionaryManager.getDictionary("projections"),updateDelay:500,editZ:b.editZ,layout:{type:"vbox",align:"stretch"}});b._updatePlotCoordinate(null);b.plotGeometry.on("geomUpdated",function(q){if(b.map){b.fireEvent("setLoadingO
1n");var g=q.point,w=b.map.getProjection(),o=q.projection.projCode,h=q.feature;Adaptive.utils.Proj.transformFeatureAsync(h,o,w,function(B,A,z){if(B){b.setGeometry(A);if(q.centerMap){b.map.setCenter(new OpenLayers.LonLat(z.geometry.x,z.geometry.y),b.map.getZoom())}b.fireEvent("setLoadingOff")}else{b.fireEvent("transformationFailed");b.fireEvent("setLoadingOff")}})}});b.plotGeometry.on("invalidCoordinate",function(){if(b.map){b.setGeometry(null)}});b.items.push(b.plotGeometry)},addWktField:function(){var b=this;b.items.push({xtype:"button",text:b.readOnly?b.lang.getString("btn_show_wkt"):b.lang.getString("btn_edit_wkt"),handler:function(){if(!b.editWindow){b.editWindow=new Ext.Window({modal:true,header:false,width:240,layout:"fit",items:[{xtype:"textarea",value:b.currentFeature&&new OpenLayers.Format.WKT().write(b.currentFeature),readOnly:b.readOnly}],buttons:[{text:b.lang.getString("btn_set_wkt"),cls:"a3-submit-btn",hidden:b.readOnly,handler:function(){if(b.validateWkt()){b.applyWkt();b.editWindow.close();delete b.editWindow}else{Ext.Msg.alert(b.lang.getString("invalid_wkt_header"),b.lang.getString("invalid_wkt_body"))}}},{text:b.lang.getString("btn_cancel_wkt"),handler:function(){b.editWindow.close();delete b.editWindow}}]})}var h=Ext.getBody().getWidth(),g=Ext.getBody().getHeight();b.editWindow.setSize(Math.min(Math.max(400,h/2),h),Math.min(Math.max(300,g/2),g));b.editWindow.showBy(Ext.getBody(),"c-c")}})},validateWkt:function(){var h=this,g=new OpenLayers.Format.WKT(),o=h.editWindow.query("textarea")[0].getValue(),b=g.read(o);return b&&b.geometry instanceof h.getOlGeometryType()},applyWkt:function(){var g=this,b=g.editWindow.query("textarea")[0].getValue();g.setGeometry(b)},destroy:function(){var b=this;b.destroyLayer();b.callParent()},getOlDrawHandler:function(){switch(this.spatial_data_type){case"point":return OpenLayers.Handler.Point;case"line":return OpenLayers.Handler.Path;case"polygon":return OpenLayers.Handler.Polygon}},getOlGeometryType:function(){switch(this.spatial_data_type){case"point":return OpenLayers.Geometry.Point;case"line":return OpenLayers.Geometry.LineString;case"polygon":return OpenLayers.Geometry.Polygon}},setGeometry:function(h,b){var g=this;g.drawLayer&&g.drawLayer.destroyFeatures();delete g.currentFeature;if(h){g.fireEvent("setLoadingOn");g.fromWkt(h,function(q,o){if(q){g.silent=b;g.drawLayer&&g.drawLayer.addFeatures(o);g.currentFeature=o;if(g.silent){g._updatePlotCoordinate(g.currentFeature)}g.fireEvent("setLoadingOff");g.silent=false}else{g.fireEvent("setGeometryFailed");g._updatePlotCoordinate(null);g.fireEvent("setLoadingOff")}})}else{g.onCancel()}},reportGeometryChanged:function(){var b=this;if(b.silent){return}b.fireEvent("setLoadingOn");b.toWkt(b.currentFeature,function(o,h,g){if(o){var q=function(w){if(w&&w!=h){b.setGeometry(w,true)}b.fireEvent("geometryChanged",w||h);b._updatePlotCoordinate(b.currentFeature);b.fireEvent("setLoadingOff")};if(b.snappingCmp){b.snappingCmp.on("snapped",q,b,{single:true});b.snappingCmp.onGeometryChanged(h,b.theme_uuid)}else{q()}}else{b.fireEvent("geometryChangedFailed");b._updatePlotCoordinate(null);b.fireEvent("setLoadingOff")}})},_updatePlotCoordinate:function(b){var g=this;if(g.plotCoordinate&&!g.plotCoordinate.addedByMe){g.plotCoordinate.updateCoords(b,g.map.getProjectionObject(),g.sourceProj)}if(g.plotGeometry&&!g.plotGeometry.addedByMe){g.plotGeometry.updateCoords(b,g.map.getProjectionObject())}},onFeatureAdded:function(b){var g=this;if(b.feature&&b.feature.attributes.ignore){return}g.currentFeature=b.feature;if(g.editZ){g.setDefaultZ(g.currentFeature.geometry)}if(!g.silent){g.reportGeometryChanged()}if(g.isStarted){g._deactivateDrawControl();g._activateModifyControl()}if(g.showMeasurement||g.showNauticalDistance){g.drawMeasurementForFeature(b.feature)}},onFeatureModified:function(b){var g=this;if(g.editZ){g.setDefaultZ(b.feature.geometry)}if(g.showMeasurement||g.showNauticalDistance){g.drawMeasurementForFeature(b.feature)}if(!g.silent){g.reportGeometryChanged()}},startPicker:function(){var b=this;if(b.autoSetProjection){if(b.plotGeometry){b.plotGeometry.setMapProjection(b.getProjectionObject())}if(b.plotCoordinate){b.plotCoordinate.setMapProjection(b.getProjectionObject())}}if(b.snappingCmp){b.snappingCmp.activate()}b.isStarted=true;if(b.currentFeature){b._activateModifyControl()}else{b._activateDrawControl()}},stopPicker:function(){var b=this;b._deactivateDrawControl();b._deactivateModifyControl();if(b.snappingCmp){b.snappingCmp.deactivate()}b.isStarted=false},_activateDrawControl:function(){var b=this;
1if(!b.drawControl){b.drawControl=new OpenLayers.Control.DrawFeature(b.drawLayer,b.getOlDrawHandler());b.map.addControl(b.drawControl)}if(!b.drawControl.active){b.drawControl.activate()}},_deactivateDrawControl:function(){var b=this;if(b.drawControl&&b.drawControl.active){b.drawControl.deactivate()}},_activateModifyControl:function(){var b=this;if(!b.modifyControl.active){b.modifyControl.activate()}if(b.currentFeature){b.modifyControl.selectFeature(b.currentFeature)}},_deactivateModifyControl:function(){var b=this;if(b.modifyControl.active){b.modifyControl.deactivate()}},onVertexmodified:function(g){var b=this;if(b.showMeasurement||b.showNauticalDistance){b.drawMeasurementForFeature(g.feature)}},onSketchmodified:function(g){var b=this;b.sketchFeature=g.feature;if(b.showMeasurement||b.showNauticalDistance){b.drawMeasurementForFeature(g.feature)}},onSketchcomplete:function(){var b=this;if(b.sketchFeature){b.clearupFeatureMeasurements(b.sketchFeature)}delete b.sketchFeature}});Ext.define("Adaptive.comment.Comment",{extend:Ext.container.Container,mixins:[Adaptive.form.mixins.Generator],cls:"a3-comment-container",config:{fieldType:"textarea",model:"Adaptive.comment.model.Comment",fkProperty:null,commentProperty:"name",pageSize:10,paging:false,geotag:false,commentTpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-comment"><div class="commentMeta"><span class="author">{author}</span><span class="date">{[this.formatDate(values.create_date)]}</span>',"</div>",'<div class="comment">{comment}</div></div></tpl></div>',{formatDate:function(b){return Ext.Date.format(b,"H:i j.n.Y")}}),listeners:{},itemSelector:""},constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.comment.lang.Comment");g.buildGui();g.callParent(arguments)},createItems:function(){var h=this,g=[h.createButton("btnSave",true,{cls:"a3-save-btn",listeners:{scope:h,click:h.onSave}})];if(h.geotag){h.pointPickerBtn=Ext.create("Ext.button.Button",{text:h.lang.getString("geotag"),icon:"resx/icons/client/default/comment-map-icon.png",enableToggle:true,listeners:{scope:h,toggle:h.onGeotagToggle}});g.push(h.pointPickerBtn)}var b=[h.createField(h.commentProperty,{xtype:h.fieldType,allowBlank:false,fieldLabel:false,grow:true}),{xtype:"container",layout:"hbox",items:[{xtype:"box",flex:1},{xtype:"container",layout:"hbox",cls:"a3-inline-buttons",items:g}]},h.pointPicker];return b},buildGui:function(){var g=this,b=g.createItems();g.commentForm=Ext.widget({xtype:"container",layout:{type:"vbox",align:"stretch"},items:g.createItems()});g.commentStore=Ext.create("Ext.data.Store",{model:g.model,autoLoad:false,pageSize:g.pageSize,listeners:{load:function(o,h,w,q){g.commentForm.unmask();if(h&&h.length>0){g.commentList.show();if(g.paging){g.pagingBar.show()}}else{g.commentList.hide();if(g.paging){g.pagingBar.hide()}}g.fireEvent("setCommentCount",o.totalCount)}}});if(g.geotag){g.commentStore.on("load",g.plotComments,g)}g.commentList=Ext.widget(g.createField("dvComments",{xtype:"dataview",cls:"a3-comments-list-view",store:g.commentStore,tpl:g.commentTpl,itemSelector:g.itemSelector,selModel:g.selModel||{},listeners:g.listeners}));g.items=[g.commentForm,g.commentList]},onOrderBy:function(){},onSave:function(){var b=this,g=b.down("[dataIndex="+b.commentProperty+"]"),h;if(!g.isValid()){return}h=b.prepareComment();b.commentForm.mask(b.lang.getString("savingComment"));if(b.fireEvent("",h)!==false){h.save({callback:Ext.bind(b.recordSaved,b)})}},recordSaved:function(b,g,o){var h=this;if(o){h.fireEvent("commentSaved");h.showFormSave();
1h.clearCommentForm();h.loadComments()}else{h.commentForm.unmask();h.showFormError(h.lang.getString("commentSaveError"))}},resetForm:function(){var b=this;b.commentForm.down("[dataIndex="+b.commentProperty+"]").reset()},showFormError:function(g){var b=this;b.mixins.notify.showNotifyError(b.commentForm,g)},showFormWarning:function(g){var b=this;b.mixins.notify.showNotifyWarning(b.commentForm,g)},showFormSave:function(){var b=this;b.mixins.notify.showNotifySuccess(b.commentForm,b.getFormString("notifySaved"))},prepareComment:function(){var o=this,b=o.openRecord,w={name:o.down("[dataIndex="+o.commentProperty+"]").getValue()},g=new OpenLayers.Format.WKT(),q=map.getProjectionObject().proj.srsProjNumber,h=Ext.create(o.model,w);if(o.pointPicker&&o.pointPicker.currentFeature){h.set("geom","SRID="+q+";"+g.write(o.pointPicker.currentFeature))}if(o.fkProperty&&o.fkRecord){h.set(o.fkProperty,o.fkRecord)}return h},clearCommentForm:function(){var b=this;b.resetForm();if(b.pointPicker&&b.pointPickerBtn.pressed){b.pointPickerBtn.toggle()}},loadComments:function(){var g=this,b=[];if(g.fkProperty&&g.fkRecord){b.push({name:g.fkProperty,value:g.fkRecord,comparisonOperator:"="})}Adaptive.data.proxy.Crud.setFilter(g.commentStore,{greedy:true,filterColumns:b,sortColumns:[{name:"create_date",sortDesc:true}]});g.commentStore.load()},setOpenRecord:function(b){this.openRecord=b;this.commentStore.currentPage=1},isCommentAdmin:function(){return(this.permission=="write"||this.permission=="admin")},setFkRecord:function(g){var b=this;if(g){b.fkRecord=g;b.loadComments();if(b.geotag){b.mountLayer()}}},afterMapReset:function(g){var b=this,h=g.data;b.map=h.map;b.mapContainer=h.mapContainer;b.mountLayer()},beforeMapReset:function(){this.clearFkRecord()},clearFkRecord:function(){var b=this;b.commentStore.removeAll();b.commentList.hide();
1b.clearCommentForm();if(b.paging){b.pagingBar.hide()}delete b.fkRecord;if(b.geotag){b.unmountLayer()}b.destroyPointpicker()},destroyPointpicker:function(){var b=this;if(b.pointPicker){b.pointPicker.destroyLayer();delete b.pointPicker}},saveExternalComment:function(g){var b=this;b.setLoading(true);g.save({callback:Ext.bind(b.recordSaved,b)})},getStore:function(){return this.commentStore},onGeotagToggle:function(b,h){var g=this;if(h){b.setText(g.lang.getString("geotagCancel"));g.pointPicker=Ext.create("Adaptive.ux.GeometryPicker",{map:g.map,mapContainer:g.mapContainer,spatial_data_type:"point",map_projection:g.map.getProjection(),readOnly:false,editeableWkt:false,hasPointPlotter:false});g.pointPicker.startPicker()}else{b.setText(g.lang.getString("geotag"));g.pointPicker.stopPicker();g.destroyPointpicker()}},plotComments:function(h,g){var q=this,b=new OpenLayers.Format.WKT(),o=[];g&&g.forEach(function(z){var w=z.get("geom");if(w){var A=b.read(w);z.feature=A;A.select=Ext.bind(q.selectFeature,q,[A]);A.attributes.record=z;o.push(A)}});if(o.length>0){q.commentLayer.addFeatures(o)}},deselectFeatures:function(){var b=this;b.selectControl.unselectAll()},selectFeature:function(g){var h=this,o=h.selectControl,b=g.layer;b.selectedFeatures.push(g);o.highlight(g);if(!o.handlers.feature.lastFeature){o.handlers.feature.lastFeature=b.selectedFeatures[0]}},onFeatureSelected:function(g){var h=this,b=g.feature.attributes.record;h.commentList.select(b,true);h.fireEvent("featureselected",{record:b,el:h.commentList.getNode(h.commentList.getSelectionModel().getSelection()[0].index)})},onFeatureUnselected:function(g){var h=this,b=g.feature.attributes.record;h.commentList.deselect(b)},mountLayer:function(){var b=this;if(b.commentLayer){b.unmountLayer()}b.commentLayer=new OpenLayers.Layer.Vector("commentLayer"+Ext.id(),{group:120,styleMap:new OpenLayers.StyleMap({"default":{externalGraphic:"resx/icons/client/default/comment-map-icon.png",graphicHeight:30,graphicWidth:30,graphicXOffset:-15,graphicYOffset:-30,fillOpacity:0.9},select:{graphicHeight:36,graphicWidth:36,graphicXOffset:-18,graphicYOffset:-36,fillOpacity:1}})});b.commentLayer.events.on({featureselected:b.onFeatureSelected,featureunselected:b.onFeatureUnselected,scope:b});b.map.addLayer(b.commentLayer);b.selectControl=new OpenLayers.Control.SelectFeature(b.commentLayer,{toggle:true});b.map.addControl(b.selectControl);b.selectControl.activate()},unmountLayer:function(){var b=this;if(b.selectControl){b.selectControl.destroy();delete b.selectControl}if(b.commentLayer){try{b.commentLayer.destroy()}catch(g){console.warn(g)}
1delete b.commentLayer}}});Ext.define("Client.module.tool.collaboration.form.CommentView",{extend:Adaptive.comment.Comment,loadComments:function(b){var g=this;g.commentStore.proxy.setParams({collaboration_id:g.fkRecord,type:"comment"});g.commentStore.load()},onOrderBy:function(b){this.loadComments(b.pressed)},activate:function(){var b=this;if(b.commentLayer){b.commentLayer.setVisibility(true)}},deactivate:function(){var b=this;if(b.pointPickerBtn.pressed){b.pointPickerBtn.toggle()}if(b.commentLayer){b.commentLayer.setVisibility(false)}}});Ext.define("Client.module.tool.collaboration.model.Comment",{extend:Adaptive.comment.model.Comment,fkProperty:"collaboration_id",fields:["collaboration_id","author","name",{name:"type",convert:function(){return"comment"}},{name:"data",type:"auto",convert:function(b){if(b&&!Ext.isObject(b)){return Ext.decode(b)}else{return b}}},"geom"],proxy:{type:"crud",url:"WebServices/collaboration/Data.asmx/",writer:{type:"json",getRecordData:function(b){b.data.config=Ext.encode(b.data.config);return b.data}}}});Ext.define("Client.module.tool.collaboration.form.Comment",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],serviceUrl:"webservices/collaboration/Data.asmx/",serviceType:"comment",config:{columns:[{text:"name",dataIndex:"name",flex:1}]},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Comment")},buildGui:function(){var b=this;b.commentView=Ext.create("Client.module.tool.collaboration.form.CommentView",{model:"Client.module.tool.collaboration.model.Comment",map:b.map,mapContainer:b.mapContainer,requireRecord:true,fkProperty:"collaboration_id",hidden:true,geotag:true,commentTpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-comment"><div class="commentMeta"><span class="author">{author}</span><span class="date">{[this.formatDate(values.create_date)]}</span>','<tpl if="!!values.geom">','<span class="geotag"></span>',"</tpl>","</div>",'<div class="comment">',"{[this.formatComment(values.name)]}","</div>","</div></tpl></div>",{formatComment:function(h){var g=/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/i;return h.replace(g,"<a href='$1' target='_blank' rel='noopener'>$1</a>")},formatDate:function(g){return Ext.Date.format(g,b.lang.getString("timeFormat"))}}),itemSelector:"div.a3-article-comment",selModel:{allowDeselect:true,mode:"SINGLE"},listeners:{beforeselect:function(){b.commentView.deselectFeatures()},commentSaved:function(){b.fireEvent("dataChanged")},select:function(h,g){if(g.feature){g.feature.select();b.map.panTo(g.feature.geometry.getBounds().getCenterLonLat())}},deselect:function(){b.commentView.deselectFeatures()},featureselected:function(g){if(g.el){b.commentView.scrollBy(0,-300000);b.commentView.scrollBy(0,600+g.el.offsetTop)}}}});b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[b.createTextBox("info"),b.commentView]})},setFkRecord:function(b){this.commentView.setFkRecord(b)},afterMapReset:function(g){var b=this;if(b.commentView){b.commentView.afterMapReset(g)}},beforeMapReset:function(g){var b=this;if(b.commentView){b.commentView.beforeMapReset(g)}},clearFkRecord:function(){var b=this;delete b.fkRecord;b.commentView.clearFkRecord()},newActions:function(){var b=this;b.commentView.commentStore.load()},activate:function(){var b=this;if(!b.view){b.buildGui();b.view.show();b.commentView.show()}else{b.commentView.activate()}},deactivate:function(){var b=this;if(b.commentView){b.commentView.deactivate()}}});Ext.define("Client.module.tool.collaboration.form.lang.Document",{strings:{addBtn:{en:"Add",nb:"Last opp"},info:{en:"Documents uploaded here will be visible for all users with access to this case.",nb:"Last opp dokumenter til saken her. De vil bli tilgjengelige for alle med tilgang til saken."},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"},tooltipDownload:{en:"Download document",nb:"Last ned dokument"},tooltipDelete:{en:"Delete document",nb:"Slett dokument"},deleteTitle:{en:"Delete document",nb:"Slett dokument"},deleteMsg:{en:"Are you sure you want to delete this document? You cannot undo this action.",nb:"Er du sikker på at du ønsker å slette dette dokumentet? Denne handlingen kan ikke angres."},deleteSuccess:{en:"Document deleted!",nb:"Dokumentet er slettet!"},deleteError:{en:"Error while deleting document!",nb:"Feil ved sletting av dokument!"},saveSuccess:{en:"Document uploaded!",nb:"Dokument lastet opp!"},saveError:{en:"Error while uploading document!",nb:"Feil ved opplasting av dokument!"}}});Ext.define("Client.module.tool.collaboration.form.Document",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],config:{columDeletable:true,columDownloadable:true,uploadUrl:"webservices/collaboration/IO.asmx/",serviceUrl:"webservices/collaboration/Data.asmx/",serviceType:"document"},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Document")},buildGui:function(){var b=this;b.createGrid([{xtype:"templatecolumn",dataIndex:"name",flex:1,tpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-other"><div class="commentMeta"><span class="author">{author}</span><span class="date">{[this.formatDate(values.create_date)]}</span>',"</div>",'<div class="comment">',"{name}","</div>","</div></tpl></div>",{formatDate:function(g){return Ext.Date.format(GeoMind.utils.Date.fixDate(g),b.lang.getString("timeFormat"))}})}]);b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"form",items:[b.createTextBox("info"),{xtype:"fieldcontainer",layout:"hbox",items:[{xtype:"box",flex:1},b.createField("uploadFile",{xtype:"filefield",required:true,hideLabel:true,buttonOnly:true,buttonText:b.lang.getString("addBtn"),buttonConfig:{cls:"a3-submit-btn"},listeners:{scope:b,change:b.uploadFile}})]}]},b.grid]})},uploadFile:function(E,D,B){var C=this,o=C.view.down("form"),z=Ext.Ajax.defaultHeaders.gm_session_id,A=o.down("[dataIndex=uploadFile]"),h=A&&A.getValue(),w=A&&A.getEl(),F=w&&Ext.getDom(w).getElementsByClassName("x-form-file-input"),q=F&&F[0]&&F[0].files[0],g;if(q){if(h){if((idx=h.lastIndexOf("/"))!=-1){h=h.substring(idx+1)}if((idx=h.lastIndexOf("\\"))!=-1){h=h.substring(idx+1)}}g=q.type}o.submit({url:C.uploadUrl+"Upload?collaboration_id="+C.fkRecord+"&gm_session_id="+z+"&mime="+g+"&name="+h,success:Ext.bind(C.onUploaded,C),failure:Ext.bind(C.onError,C)})},onUploaded:function(){var b=this;b.showNotifySuccess(b.view,b.lang.getString("saveSuccess"));b.fireEvent("dataChanged");b.grid.store.load()},onError:function(){var b=this;b.showNotifyError(b.view,b.lang.getString("saveError"));b.grid.store.load()},onDeleteCallback:function(g){var b=this;if(g){b.showNotifySuccess(b.view,b.lang.getString("deleteSuccess"));b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("deleteError"))}},activate:function(){var b=this;if(!b.view){b.buildGui()}}});Ext.define("Client.module.tool.collaboration.form.lang.Image",{strings:{addBtn:{en:"Add screenshot",nb:"Ta skjermbilde"},layerTitle:{en:"Collaborating screenshots",nb:"Skjermbilder fra samhandling"},metadataDesc:{en:"Snapshot {0} created of {1} the {2} in the case {3}.",nb:"Skjermbildet {0} opprettet av {1} den {2} i saken {3}."},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"},info:{en:"A screenshot is a saved picture of the active layers at the time of the snapshot. You may use it together with other themes.",nb:"Med skjermbilde menes lagring av påslåtte lag i «knipse»-øyeblikket. Dette kan så brukes videre som et eget lag i temalagslisten.."},newImageLabel:{en:"Name of the snapshot",nb:"Navn på skjermbildet"},saveSuccess:{en:"Snapshot created!",nb:"Skjermbilde opprettet!"},saveError:{en:"Error while creating snapshot!",nb:"Feil ved opprettelse av skjermbilde!"},tooltipDelete:{en:"Delete screenshot",nb:"Slett skjermbilde"},deleteTitle:{en:"Delete screenshot",nb:"Slett skjermbilde"},deleteMsg:{en:"Are you sure you want to delete this screenshot? You cannot undo this action.",nb:"Er du sikker på at du ønsker å slette dette skjermbildet? Denne handlingen kan ikke angres."},deleteSuccess:{en:"Screenshot deleted!",nb:"Skjermbildet er slettet!"},deleteError:{en:"Error while deleting screenshot!",nb:"Feil ved sletting av skjermbilde!"}}});Ext.define("Client.module.tool.collaboration.mixin.Print",{activePrintLayers:{},initPrint:function(){var b=this;b.printEngine=Ext.create("GeoMind.print.Standard",{serviceUrl:"WebServices/collaboration/Printing.asmx/",doPrintNonMergedLayers:true,activatePrintPreviewExtent:function(){b.updatePrintExtent()}});b.printEngine.on("printEngine_PrintingFinished",b.onPrintFinished,b);b.printEngine.on("printEngine_ConfigReady",b.onPrintConfigReady,b);b.printEngine.printAll=true;b.printEngine.pullPrintConfig()},updatePrintExtent:function(){var b=this;b.printEngine.printPreviewExtent=new OpenLayers.Feature.Vector(b.map.getExtent().toGeometry())},print:function(g){var b=this;b.updatePrintExtent();b.onPrintConfigReady();b.printEngine.print(g)},onPrintConfigReady:function(){var g=this,b=g.mapContainer;g.printIsReady=true;g.printEngine.setMap(g.map);g.printEngine._activate();g.printEngine.onPrintSettingsUpdated({paperConfig:{layoutName:"default",size:"dynamic",widthPx:b.getWidth()*5,heightPx:b.getHeight()*5,resolution:"300",format:"jpg",landscape:false,scale:g.map.getScale(),angle:0},dynamicData:g.getDynamicData()})},getDynamicData:function(){var h=this;var b=h.getCorners();var g=h.map.getProjectionObject();return[{key:"print_extent",value:b.print_extent},{key:"projection_info",value:{name:g.toString(),def:g.proj.defData}},{key:"mode",value:"geojpeg_nowrap"}]},getCorners:function(){var g=this,b=g.map.getExtent();return{print_extent:{x1:b.left,y1:b.bottom,x2:b.left,y2:b.top,x3:b.right,y3:b.top,x4:b.right,y4:b.bottom}}},restorePrint:function(b){var h=this,o=b.get("id"),g=b.get("olLayer");if(!g){h._restorePrint(o,b)}},_restorePrint:function(h,q){var z=this,h=q.get("id"),b=q.get("uuid"),o=Ext.JSON.decode(q.get("data")),A=o.extent,B=o.size,g=z.printoutUrl,w=new OpenLayers.Layer.Image("snapshot",g+"uuid="+b+"&gm_session_id="+GeoMind.utils.SessionManager.ss.sessionId,new OpenLayers.Bounds(A.left,A.bottom,A.right,A.top),new OpenLayers.Size(B.w,B.h),{group:20,visible:true,isBaseLayer:false,alwaysInRange:true});w.events.register("loadend",z,function(){OpenLayers.Element.addClass(w.tile.getImage(),"a3TileOutline")});q._uqid=b;q.set("olLayer",w);q.set("config",{});q.set("opacity",100);q.isSpatial=true;w.record=q;z.map.addLayer(w)}});Ext.define("Client.module.tool.collaboration.form.Image",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Client.module.tool.collaboration.mixin.Print,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],config:{columnRadio:true,columDeletable:true,serviceUrl:"webservices/collaboration/Data.asmx/",printoutUrl:"webservices/collaboration/Printout.ashx?",serviceType:"image"},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Image");g.externalCategory=Ext.create("Client.module.tool.layerManagerPro.ExternalCategory",{categoryTitle:g.lang.getString("layerTitle"),hidden:true,recordIdField:"uuid"})},buildGui:function(){var b=this;b.createGrid([{xtype:"templatecolumn",dataIndex:"name",flex:1,tpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-other"><div class="commentMeta"><span class="author">{author}</span><span class="date">{[this.formatDate(values.create_date)]}</span>',"</div>",'<div class="comment">',"{name}","</div>","</div></tpl></div>",{formatDate:function(g){return b.formatDate(g)}})}]);b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[b.createTextBox("info"),{xtype:"fieldcontainer",layout:"hbox",labelAlign:"top",fieldLabel:b.lang.getString("newImageLabel"),items:[{xtype:"textfield",dataIndex:"name",allowBlank:false,flex:1},b.createButton("addBtn",true,{cls:"a3-save-btn",scope:b,handler:b.onSnapshot})]},b.grid]})},newActions:function(h){var g=this,b=false;h.forEach(function(o){if(o.action=="DELETE"||(o.action=="INSERT"&&g.grid.store.findExact("id",o.data_id)==-1)){b=true}});if(b){g.grid.store.load()}},setFkRecord:function(h,b){var g=this;g.fkRecord=h;g.fkName=b;if(g.grid){g.setDefaultFilter(g.grid.store);Ext.defer(function(){this.grid.store.load()},200,this)}},onLoad:function(g,b){var h=this;h.grid.store.un("update",h.onStoreUpdate,h);Client.AppLogic.dispatchEvent("layerManagerRefresh");g.each(function(o){o.isSpatial=true;if(o.get("active")){o.set("visible",true);o.set("checked",true);o.set("description",h.getDescription(o));h.restorePrint(o)}});h.externalCategory.addNodes(g);h.grid.store.on("update",h.onStoreUpdate,h)},setActive:function(b,h){var g=this;g.externalCategory.removeNodes();Ext.Ajax.request({url:g.serviceUrl+(h?"SetActive":"SetVisibility"),method:"POST",jsonData:{uuid:b.get("uuid"),visible:h},callback:function(q,w,o){g.fireEvent("dataChanged");o=w&&JSON.parse(o.responseText).d;g.grid.store.load()}})},onSnapshot:function(){var g=this,b=g.mapContainer,h=g.view.down("[dataIndex=name]");if(!h.isValid()){return}g.view.setLoading(true);g.printOptions={extent:g.map.getExtent().clone(),size:new OpenLayers.Size(b.getWidth(),b.getHeight())};var o={extraParams:[{key:"collaboration_id",value:g.fkRecord},{key:"name",value:h.getValue()},{key:"config",value:g.printOptions}]};g.print(o)},onDeleteCallback:function(g){var b=this;if(g){b.showNotifySuccess(b.view,b.lang.getString("deleteSuccess"));b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("deleteError"))}},onPrintFinished:function(b){var g=this,h=g.view.down("[dataIndex=name]");g.view.setLoading(false);if(b.success){h.reset();g.fireEvent("dataChanged");g.showNotifySuccess(g.view,g.lang.getString("saveSuccess"))}else{g.showNotifyError(g.view,g.lang.getString("saveError"))}g.grid.store.load()},onStoreUpdate:function(q,b,g){var z=this,h=b.get("opacity"),o=b.get("olLayer"),w=o&&o.opacity*100;if(o&&h!=w){o.setOpacity(h/100)}},getDescription:function(b){var g=this,h=g.lang.getString("metadataDesc");if(b){return h.replace("{0}",b.get("name")).replace("{1}",b.get("author")).replace("{2}",g.formatDate(b.get("create_date"))).replace("{3}",g.fkName)}},_onCollaborationRestoreMap:function(){var b=this;if(b.externalCategory.parentNode){b.externalCategory.removeNodes();b.grid.store.load()}},_onLayerVisibilityRemoved:function(g){var b=this;b.grid&&b.grid.store.each(function(h){if(h.get("active")){var o=h.get("olLayer");if(o&&!o.getVisibility()){b.setActive(h,false)}}})},beforeMapReset:function(b){this.onBeforeLoad()},onBeforeLoad:function(){var b=this,g;b.grid&&b.grid.store.data.items.forEach(function(h){g=h.get("olLayer");if(g&&g.map){b.map.removeLayer(g);g.destroy();h.set("olLayer",null)}});b.externalCategory.removeNodes()},activate:function(){var b=this;if(!b.view){b.buildGui();b.initPrint()}}});Ext.define("Client.module.tool.collaboration.draw.lang.Settings",{strings:{btnSave:{en:"Save",nb:"Lagre"},btnCancel:{en:"Cancel",nb:"Avbryt"}}});Ext.define("Client.module.tool.collaboration.draw.Settings",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],config:{btnsArray:[]},mode:null,constructor:function(b){var g=this;Ext.apply(this,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digitisedObjects.lang.Edit");g.customLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.draw.lang.Settings");g.buildGui()},buildGui:function(){var b=this;b.fieldLang=b.lang;b.saveButton=Ext.widget(b.createButton("btnSave",true,{cls:"a3-save-btn",text:b.customLang.getString("btnSave"),hidden:true,scope:b,handler:b.onSave}));b.cancelButton=Ext.widget(b.createButton("btnCancel",false,{cls:"a3-cancel-btn",text:b.customLang.getString("btnCancel"),hidden:true,scope:b,handler:b.onCancel}));b.view=b.createForm({noScroll:true,buttons:[],layout:"anchor",defaults:{anchor:"100%"},items:[b.createSet("fs_object",{title:"",collapsible:false,layout:{type:"column"},defaults:{xtype:"button",columnWidth:0.3333,toggleGroup:"geomTypeButtons",scale:"medium",listeners:{click:b.onGeomChange,scope:b}}},[{dataIndex:"point",cls:"a3-draw-point"},{dataIndex:"line",cls:"a3-draw-line"},{dataIndex:"polygon",cls:"a3-draw-polygon"}]),b.createSet("dimensions",{title:"",collapsible:false,hidden:true,itemId:"dimensions",cls:"a3-collaboration-draw-dimension"},[b.createField("cbx_area",{xtype:"checkbox",inputValue:false}),b.createField("length_area",{xtype:"checkbox",inputValue:false}),b.createFc("length",true,{collapsible:false},[b.createField("length_km",{fieldLabel:"",xtype:"displayfield",width:"50%"}),b.createField("length_nm",{fieldLabel:"",xtype:"displayfield",width:"50%"})]),b.createField("area",{xtype:"displayfield"})]),b.createSet("fs_name_color_geom",{title:"",collapsible:false,hidden:true,itemId:"fs_name_color_geom",cls:"a3-collaboration-draw-geompicker"},[b.createField("name"),b.createField("label",{xtype:"checkbox",inputValue:false}),b.createFc("symboltype",false,{layout:{type:"column"},defaults:{xtype:"button",columnWidth:0.175,toggleGroup:"colorButtons",scale:"medium",allowDepress:false,listeners:{toggle:function(g,h){if(h){b.setColor(g.dataIndex)}},scope:b}}},[{dataIndex:"blue",cls:"a3-draw-blue",pressed:true},{dataIndex:"green",cls:"a3-draw-green"},{dataIndex:"purple",cls:"a3-draw-purple"},{dataIndex:"red",cls:"a3-draw-red"}])]),{xtype:"container",layout:"hbox",items:[{xtype:"box",flex:1},{xtype:"container",layout:"hbox",cls:"a3-inline-buttons",items:[b.saveButton,b.cancelButton]}]}],saveBtnConfig:false,cancelBtnConfig:false});b.color="blue";b.btnsArray=[b.view.down("[dataIndex=point]"),b.view.down("[dataIndex=line]"),b.view.down("[dataIndex=polygon]")];b.btnsArray[0].setIconHtml(Adaptive.ux.Icons.drawPoint);b.btnsArray[1].setIconHtml(Adaptive.ux.Icons.drawLine);b.btnsArray[2].setIconHtml(Adaptive.ux.Icons.drawPolygon);b.setInternalRefs()},setColor:function(b){var g=this;g.color=b;g.reportSettingsChanged()},setInternalRefs:function(){var b=this;b.dimensionsContainer=b.view.down("[dataIndex=dimensions]");b.measureCBox=b.view.down("[dataIndex=length_area]");b.measureCBox.on("change",b.onMeasureCBoxChange,b);b.measureAreaCBox=b.view.down("[dataIndex=cbx_area]");b.measureAreaCBox.setValue(true);b.measureAreaCBox.on("change",b.onMeasureAreaCBoxChange,b);b.area=b.view.query("[dataIndex=area]")[0];b.length=b.getItem("length_km");b.txtName=b.view.down("[dataIndex=name]");b.txtName.on("change",b.onTxtNameChange,b);b.labelCBox=b.getItem("label");b.labelCBox.on("change",b.onLabelCBoxChange,b);b.wkt=b.view.down("[dataIndex=wkt]");b.plotGeometry=b.view.down("[itemId=plotGeometry]")},onGeomChange:function(b){var g=this;g.reportEndDraw();g.silent=true;g.txtName.reset();g.silent=false;g.geomType=b.dataIndex;g.displayDimensionsFields();if(g.plotGeometry){g.plotGeometry.setSpatialType(g.geomType)}if(b.pressed){g.reportStartDraw();g.setButtonVisiblity(true);g.reportEvent("mapPopupHide")}else{g.disableSelected();g.reportEvent("digiToolDisabled")}},displayDimensionsFields:function(){var b=this;switch(b.geomType){case"point":b.dimensionsContainer.hide();break;case"line":b.area.hide();b.measureAreaCBox.hide();b.length.show();b.dimensionsContainer.show();break;case"polygon":b.area.show();b.length.show();b.dimensionsContainer.show();break}},onMeasureCBoxChange:function(){var b=this;b.reportEvent("measureChanged",b.measureCBox.getValue())},onMeasureAreaCBoxChange:function(){var b=this;b.reportEvent("measureAreaChanged",b.measureAreaCBox.getValue())},onTxtNameChange:function(){this.reportSettingsChanged()},onShowLabelsCBoxChange:function(o,q,b,g){var h=this;h.reportEvent("switchLabelVisibilityState",q)},onLabelCBoxChange:function(o,q,b,g){var h=this;h.reportSettingsChanged()},collectSettings:function(){var b=this;return{color:b.color,thickness:"regular",name:b.txtName.getValue(),show_measurement:b.measureCBox.getValue(),show_measurement_area:b.measureAreaCBox.getValue(),show_label:b.labelCBox.getValue()}},reportSettingsChanged:function(){var b=this;if(!b.silent){b.reportEvent("settingsChanged",b.collectSettings())}},reportStartDraw:function(){var b=this;b.setButtonVisiblity(true);b.reportEvent("startDraw",{geomtype:b.geomType,settings:b.collectSettings()})},reportEndDraw:function(){var b=this;b.reportEvent("endDraw",b.geomType)},onSave:function(){var b=this;b.reportEvent("saveFeature",{feature:b.feature,settings:b.collectSettings()})},onCancel:function(){var b=this;b.reportEvent("recordDeleted",{feature:b.feature})},deactivate:function(){var b=this;b.resetDescription();b.resetButtons()},resetButtons:function(){var h=this,g=0,b=h.btnsArray.length;for(;g<b;++g){h.btnsArray[g].toggle(false,true)}h.reportEndDraw()},resetDescription:function(){var b=this;if(!b.view){return}b.silent=true;b.txtName.setValue(null);if(b.wkt){b.wkt.setValue(null)}if(b.plotGeometry){b.plotGeometry.clearCoordCards();b.plotGeometry.clearCoordStore()}b.labelCBox.setValue(null);b.silent=false},enableSelected:function(g){var h=this,b=h.getGeomType(g);if(b!="point"){h.dimensionsContainer.show();h.length.show();if(b=="polygon"){h.area.show();h.measureAreaCBox.show()}else{h.area.hide();h.measureAreaCBox.hide()}}else{h.dimensionsContainer.hide()}},getGeomType:function(g){var b=null;if(g){var h=g.geometry.CLASS_NAME;if(g.geometry.CLASS_NAME.indexOf("Polygon")>-1){b="polygon"}else{if(g.geometry.CLASS_NAME.indexOf("Line")>-1){b="line"}else{b="point"}}}else{b=this.geomType}return b},disableSelected:function(){var b=this;if(!b.view){return}b.setButtonVisiblity();b.dimensionsContainer.hide()},setButtonVisiblity:function(h){var g=this,b=g.view.down("#fs_name_color_geom");if(h){g.saveButton.show();g.cancelButton.show();b.show()}else{g.saveButton.hide();g.cancelButton.hide();b.hide()}},_onFeatureGeomChanged:function(A){var q=this,o=A.data,g=q.length,b=q.area,w=g.getEl(),B=b.getEl(),h=q.formatLength(o.length),z=q.formatArea(o.area);if(w){w.down(".x-form-display-field").update(h)}else{g.on("render",function(){g.setValue(h)},q,{single:true})}if(B){B.down(".x-form-display-field").update(z)}else{b.on("render",function(){b.setValue(z)},q,{single:true})}this.feature=A.data.feature},_onFeatureSelected:function(q){var o=this,h=q.data.settings,g=q.data.feature;o.silent=true;o.geomType=o.getGeomType(g);var b=o.view.down("[dataIndex="+h.fillColor+"]");
1if(b&&!b.pressed){b.toggle()}o.txtName.setValue(h.name);o.labelCBox.setValue(h.show_label);o.measureCBox.setValue(h.show_measurement);o.measureAreaCBox.setValue(h.show_measurement_area);o.displayDimensionsFields();o.enableSelected(q.data.feature);o.setButtonVisiblity(true);o.silent=false},formatArea:function(h){var g=this,b=Ext.util.Format.thousandSeparator;Ext.util.Format.thousandSeparator=" ";if(g.showHectare){return Ext.util.Format.number(h/10000,"0,000.00")+" ha"}else{if(h>1000000){return Ext.util.Format.number(h/1000000,"0,000.00")+" km<sup>2</sup>"}else{if(h>1000){return Ext.util.Format.number(h,"0,000")+" m<sup>2</sup>"}else{return Ext.util.Format.number(h,"0,000.00")+" m<sup>2</sup>"}}}Ext.util.Format.thousandSeparator=b},formatLength:function(b){if(b>1000){return Ext.util.Format.number(b/1000,"0,000.00")+" km"}else{return Ext.util.Format.number(b,"0,000.00")+" m"}},_onFeatureModificationEnd:function(g){var b=this;b.resetDescription();b.disableSelected()},_onFeatureAdded:function(g){var b=this;b.resetButtons();b.resetDescription()},_onRecordDeleted:function(g){var b=this;b.resetButtons();b.resetDescription();b.disableSelected();b.setButtonVisiblity()}});Ext.define("Client.module.tool.collaboration.draw.Control",{extend:Client.module.ToolGeneric,onLoad:function(b){var o=this,h=[];o.wktReader=o.wktReader||new OpenLayers.Format.WKT();for(var g=0;g<b.length;g++){h.push(o.prepareFeature(b[g]))}o.reportEvent("flushDigiLayer");o.reportEvent("recordsAdded",{features:h})},prepareFeature:function(b){var q=this,o=Ext.JSON.decode(b.get("data")),h=b.get("geom"),g;if(h.contains("SRID")){h=h.split(";");h=new OpenLayers.Projection("EPSG:"+h[0].replace("SRID=",""));h=h[1]}g=q.wktReader.read(h);if(!b.get("active")){o.hidden=true;g.style={display:"none"}}b.set("show_label",o.show_label);b.set("show_measurement",o.show_measurement);b.set("show_measurement_area",o.show_measurement_area);g.attributes=o;g.record=b;b.set("feature",g);return g},openRecord:function(b){var g=this;if(!b.get("active")){b.set("active",true);g.reportEvent("visibilityChanged",{feature:b.get("feature"),visible:true})}g.reportEvent("recordSelected",{record:b,feature:b.get("feature")})},setActive:function(b,h){var g=this;g.reportEvent("visibilityChanged",{feature:b.get("feature"),visible:h});Ext.Ajax.request({url:g.serviceUrl+"SetVisibility",method:"POST",jsonData:{uuid:b.get("uuid"),visible:h},callback:function(q,w,o){o=w&&JSON.parse(o.responseText).d;g.fireEvent("featureActivated",o&&o.success)}})},_onSaveFeature:function(o){var h=this,w=o.data,g=w.feature,b=g.record,q=b&&b.get("uuid")?"Update":"Create";Ext.Ajax.request({url:h.serviceUrl+q,method:"POST",jsonData:{data:{id:b&&b.get("id"),uuid:b&&b.get("uuid"),active:true,collaboration_id:h.fkRecord,type:"draw",name:g.attributes.name,geom:"SRID="+h.map.getProjectionObject().proj.srsProjNumber+";"+h.wktReader.write(g),data:Ext.JSON.encode(w.settings)}},callback:function(A,B,z){z=B&&JSON.parse(z.responseText).d;h.fireEvent("featureSaved",z&&z.success)}})},_onRecordDeleted:function(){this.fireEvent("featureDeleted",true)}});Ext.define("Client.module.tool.collaboration.form.lang.Draw",{strings:{addBtn:{en:"Draw new",nb:"Tegn ny"},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"},shareWindowTitle:{en:"Draw or modify objekt",nb:"Tegn eller endre objekt"},saveError:{en:"Error while saving object!",nb:"Feil ved lagring av objekt!"},deleteError:{en:"Error while deleting objekt!",nb:"Feil ved sletting av objekt!"},deleteSuccess:{en:"Object deleted!",nb:"Objektet er slettet!"},info:{en:"Create a new object by selecting a geometry type. Finish by double clicking/tapping.",nb:"Start å tegne ved å velge en geometritype under. Dobbeltklikk/ dobbelttrykk for å avslutte."},tooltipDelete:{en:"Delete object",nb:"Slett objekt"},tooltipShowForm:{en:"Edit object",nb:"Rediger objekt"},deleteTitle:{en:"Delete object",nb:"Slett objekt"},deleteMsg:{en:"Are you sure you want to delete this object? You cannot undo this action.",nb:"Er du sikker på at du ønsker å slette dette objektet? Denne handlingen kan ikke angres."}}});Ext.define("Client.module.tool.collaboration.form.Draw",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],config:{columnEditable:true,columnToggle:true,columDeletable:true,serviceUrl:"webservices/collaboration/Data.asmx/",serviceType:"draw"},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Draw");g.langExp=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.lang.Standard");g.exporter=Ext.create("Client.module.tool.digitisedObjects.Exporter",{displayProjection:g.displayProjection});g.exporter.on("exportfinished",g.onExportFinished,g);g.exporter.on("notifyUser",g.onNotifyUser,g)},init:function(){var b=this;b.moduleController=Ext.create("GeoMind.base.ModuleController");b.settingsModule=Ext.create("Client.module.tool.collaboration.draw.Settings",{map:b.map});b.moduleController.registerModule(b.settingsModule);b.olFeaturesModule=Ext.create("Client.module.tool.digitisedObjects.DrawControls",{clickout:false,map:b.map});b.moduleController.registerModule(b.olFeaturesModule);b.drawControl=Ext.create("Client.module.tool.collaboration.draw.Control",{map:b.map,serviceUrl:b.serviceUrl,listeners:{scope:b,featureSaved:b.featureSaved,featureDeleted:b.featureDeleted}});b.moduleController.registerModule(b.drawControl)},buildGui:function(){var h=this,b=h.map.projection.projCode;h.exportMenu=Ext.create("Ext.menu.Menu",{cls:"a3-menu-no-icon",showSeparator:false});for(var g=0;g<h.exporter.exportFormats.length;g++){h.exportMenu.add(Ext.create("Ext.menu.Item",{text:h.getExportMenuText(h.exporter.exportFormats[g],b),tooltip:h.getExportMenuTooltip(h.exporter.exportFormats[g],b),tooltipType:"qtip",format:h.exporter.exportFormats[g],handler:Ext.bind(h.onExportFormatClick,h)}))}h.exportBtn=Ext.create("Ext.button.Split",{text:h.langExp.getString("export_btn_text"),tooltip:h.langExp.getString("export_btn_text_tip"),tooltipType:"title",cls:"a3-dataview_btn_export",menu:h.exportMenu});h.exportBtn.on("click",function(o){o.showMenu()});h.createGrid([{xtype:"templatecolumn",dataIndex:"name",flex:1,tpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-other"><div class="commentMeta"><span class="author">{author}</span><span class="date">{[this.formatDate(values.create_date)]}</span>',"</div>",'<div class="comment">',"{name}","</div>","</div></tpl></div>",{formatDate:function(o){return Ext.Date.format(GeoMind.utils.Date.fixDate(o),h.lang.getString("timeFormat"))}})}],{tbar:{cls:"a3-tbar",itemId:"digitisedObjectsTopToolbar",items:[{xtype:"tbfill"},h.exportBtn]}});h.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[h.createTextBox("info"),h.settingsModule.view,h.grid]})},getExportMenuText:function(g,b){var h=g;switch(g){case"KML":case"GPX":return g+" <small>(EPSG:4326)</small>";default:return g+" <small>("+b+")</small>"}},getExportMenuTooltip:function(h,b){var g=this;switch(h){case"KML":case"GPX":return g.lang.getString("exportTooltip").replace("##",h)+" EPSG:4326.";default:return g.lang.getString("exportTooltip").replace("##",h)+" "+b+".<br>"+g.lang.getString("exportTooltipChange")}},onExportFormatClick:function(g,h){var b=this;b.grid.view.loadMask.show();b.exporter.doExport(g.format,b.collectSelectedData())},collectSelectedData:function(){var o=this,b=o.map.getProjectionObject(),w=o.grid.store.getRange(),q=[];for(var h=0;h<w.length;h++){if(w[h].get("active")){var g=w[h].getData();q.push({name:g.name,category:"",attributes:JSON.parse(g.data),geom_wkt:g.geom})}}return{name:"digi_objects",description:"user objects",data:q,prj:b}},onExportFinished:function(b){var g=this;g.grid.view.loadMask.hide();if(!b.success){Ext.Msg.show({title:b.msgTitle,msg:b.msg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}else{document.getElementById("file_download_iframe").src=b.url}},onNotifyUser:function(g,b){this.showNotifyWarning(this.view.getEl(),g,b)},onLoad:function(g,b){var h=this;h.olFeaturesModule.silent=true;this.drawControl.onLoad(b);h.olFeaturesModule.silent=false},onDeleteCallback:function(g){var b=this;if(g){b.showNotifySuccess(b.view,b.lang.getString("deleteSuccess"));b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("deleteError"))}},openRecord:function(b){this.drawControl.openRecord(b)},setActive:function(b,h){var g=this;g.drawControl.setActive(b,h)},featureSaved:function(g){var b=this;
1if(g){b.fireEvent("dataChanged");b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("saveError"))}},featureDeleted:function(g){var b=this;if(g){b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("deleteError"))}},setFkRecord:function(g){var b=this;b.fkRecord=g;b.drawControl.fkRecord=g;if(b.grid){b.setDefaultFilter(b.grid.store);b.grid.store.load()}},newActions:function(){var b=this;if(!b.settingsModule.saveButton.isVisible()){b.grid.store.load()}},clearFkRecord:function(){var b=this;delete b.fkRecord;b.deactivate()},activate:function(){var b=this;if(!b.view){b.init();b.buildGui()}b.settingsModule.activate()},expand:function(){var b=this;b.olFeaturesModule.activate();b.olFeaturesModule.reactivateSelect()},collapse:function(){var b=this;b.olFeaturesModule.deactivate()},beforeMapReset:function(){var b=this;if(b.olFeaturesModule){b.olFeaturesModule.beforeMapReset()}}});Ext.define("Client.module.tool.collaboration.form.lang.Feature",{strings:{info:{en:'Data copied from "User defined data" are shown here. Once copied, the data will be visible for all users granted access to this case',nb:"Data kopiert fra «Brukerdefinerte data» vises her. De vil være tilgjengelige for alle med tilgang til saken."},tooltipDelete:{en:"Delete and remove from map",nb:"Slett og fjern fra kartet"},deleteTitle:{en:"Delete layer",nb:"Slett lag"},deleteMsg:{en:"Are you sure you want to delete this layer? You cannot undo this action.",nb:"Er du sikker pÃ¥ at du ønsker Ã¥ slette dette laget? Denne handlingen kan ikke angres."},deleteSuccess:{en:"Layer deleted!",nb:"Laget er slettet!"},deleteError:{en:"Error while deleting layer!",nb:"Feil ved sletting av lag!"},metadataDesc:{en:"Layer {0} created of {1} the {2} in the case {3}.",nb:"Temalaget {0} opprettet av {1} den {2} i saken {3}."},timeFormat:{en:"m/d/Y H:i",nb:"d.m.Y H.i"},headerLegend:{en:"Data from collaboration",nb:"Data fra samhandling"},copy_qtip:{en:"Copy object to selected case in collaboration module",nb:"Kopier objektet til valgt sak i samhandlingsmodulen"},color_qtip:{en:"Change color",nb:"Endre farge"},dataview_qtip:{en:"Open table view",nb:"Ã
pne tabell"},zoom_qtip:{en:"Zoom to extent",nb:"Zoom til utstrekning"},createSuccess:{en:"Object created",nb:"Objekt opprettet"},createError:{en:"Fail while creating object",nb:"Feil ved opprettelse av objekt"}}});Ext.define("Client.module.tool.collaboration.form.Feature",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],config:{columDeletable:true,columnToggle:true,columnColor:true,columnDataview:true,columnZoomTo:true,serviceUrl:"webservices/collaboration/Data.asmx/",serviceType:"feature"},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Feature");g.on("layerColorRequested",g.onLayerColorRequested,g);g.on("dataViewRequested",g.onDataViewRequested,g);g.on("zoomToRequested",g.onZoomTo,g)},buildGui:function(){var b=this;b.info=b.createTextBox("info");b.externalCategory=Ext.create("Client.module.tool.layerManagerPro.ExternalCategory",{categoryTitle:"Shared data in collaboration",hidden:true,checked:true,uuid:"eck425fc-4e0b-45bb-bc35-8af82ed6c16b",recordIdField:"uuid"});b.createGrid([{xtype:"templatecolumn",dataIndex:"name",flex:1,tpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-other"><div class="commentMeta"><span class="author">{author}</span><span class="date">{[this.formatDate(values.create_date)]}</span>',"</div>",'<div class="comment">',"{name}","</div>","</div></tpl></div>",{formatDate:function(g){return b.formatDate(g)}})}]);b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[b.info,b.grid]})},onBeforeLoad:function(){var b=this;b.removeLayers();b.externalCategory.removeNodes();b.grid.store.removeAll()},onLoad:function(g,b){var h=this;h.grid.store.un("update",h.onStoreUpdate,h);Client.AppLogic.dispatchEvent("layerManagerRefresh");g.each(function(o){o.isSpatial=true;var q=Ext.decode(o.get("data"));o.set("data",q);o.set("layerColor",q.layerColor);if(o.get("active")){o.set("visible",true);o.set("checked",true);o.set("description",h.getDescription(o));h.createLayer(o)}});h.externalCategory.addNodes(g);h.grid.store.on("update",h.onStoreUpdate,h)},onStoreUpdate:function(q,b,g){var z=this,h=b.get("opacity"),o=b.get("olLayer"),w=o&&o.opacity*100;if(o&&o.map&&h!=w){o.setOpacity(h/100);z.updateDataObject(b)}},onDataViewRequested:function(b){var h=this,g=b.get("olLayer").clone();Client.AppLogic.dispatchEvent("dataViewRequest",{record:{theme_data:{theme_uuid:g.id,theme_type:"av_user_data"},layer:g,get:function(o){switch(o){case"name":return b.get("name");default:return null}}}})},onZoomTo:function(b){var o=GeoMind.utils.Clipboard.getData("mapPanel"),h=b.get("olLayer"),g=h&&h.getDataExtent();if(g){o.map.zoomToExtent(g.scale(1.1))}},onLayerColorRequested:function(g){var b=this;b.updateColor(g);b.updateDataObject(g)},disable:function(){var b=this;b.removeLayers()},removeLayers:function(){var b=this;b.grid.store.each(function(g){var h=g.get("olLayer");if(h&&h.map){b.map.removeLayer(h)}})},activate:function(){var b=this;if(!b.view){b.buildGui()}},setFkRecord:function(h,b){var g=this;g.fkRecord=h;g.fkName=b;if(g.grid){g.setDefaultFilter(g.grid.store)}},getDescription:function(b){var g=this,h=g.lang.getString("metadataDesc");if(b){return h.replace("{0}",b.get("name")).replace("{1}",b.get("author")).replace("{2}",g.formatDate(b.get("create_date"))).replace("{3}",g.fkName)}},clearFkRecord:function(){var b=this;delete b.fkRecord;b.deactivate()},setActive:function(b,h){var g=this;Ext.Ajax.request({url:g.serviceUrl+"SetVisibility",method:"POST",jsonData:{uuid:b.get("uuid"),visible:h},callback:function(q,w,o){g.fireEvent("dataChanged");o=w&&JSON.parse(o.responseText).d;g.grid.store.load()}})},onDeleteCallback:function(g){var b=this;if(g){b.showNotifySuccess(b.view,b.lang.getString("deleteSuccess"));b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("deleteError"))}},createLayer:function(b){var h=this,w=b.get("id"),g=b.get("olLayer"),o=b.get("data"),q=o.type=="raster";if(!g){if(q){h._createRasterlayer(w,b)}else{h._createLayer(w,b)}}},_createLayer:function(A,g){var w=this,q=g.get("uuid"),z=g.get("data"),b=new OpenLayers.Format.WKT(),h=new OpenLayers.Layer.Vector("collaboration_"+g.get("name")),o=[];z.geom.forEach(function(C){var B=b.read(C.wkt);B.attributes=C.attributes;o.push(B)});h.group=20;h.featureInfoLayerTitle=g.get("name");h.isFeatureInfoLayer=true;h.addFeatures(o);g._uqid=q;g.set("olLayer",h);g.set("layerColor",z.layerColor);g.set("config",{});g.set("opacity",z.opacity);g.isSpatial=true;h.record=g;w.updateColor(g);h.setOpacity(z.opacity/100);w.map.addLayer(h);setTimeout(function(){h.setVisibility(true)},100)},_createRasterlayer:function(h,w){var B=this,b=w.get("uuid"),g=w.get("name"),q=w.get("data"),C=q.extent,D=q.tileSize,A=new OpenLayers.Bounds(C.left,C.bottom,C.right,C.top),o=new OpenLayers.Size(D.width,D.height),z=new OpenLayers.Layer.Image("collaboration_"+g,"webservices/collaboration/Data.asmx/ReadRaster?collaboration_id="+B.fkRecord+"&uuid="+b,A,o,{group:20,singleTile:true,visible:true,isBaseLayer:false,alwaysInRange:true});q.opacity=q.opacity||80;z.group=20;z.featureInfoLayerTitle=w.get("name");z.isFeatureInfoLayer=true;z.setOpacity(q.opacity/100);w._uqid=b;w.set("olLayer",z);w.set("config",{});w.set("opacity",q.opacity);w.isSpatial=true;z.record=w;z.events.register("loadend",B,function(){OpenLayers.Element.addClass(z.tile.getImage(),"a3TileOutline")});z.getDataExtent=function(){return new OpenLayers.Bounds(C.left,C.bottom,C.right,C.top)};B.map.addLayer(z);setTimeout(function(){z.setVisibility(true)},100)},updateColor:function(b){var q=this,o=b.get("olLayer"),g=b.get("layerColor"),h=b.get("opacity"),z=new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#"+g,strokeWidth:3,fillColor:"#"+g,fillOpacity:1,pointRadius:4},OpenLayers.Feature.Vector.style["default"]));o.styleMap=new OpenLayers.StyleMap({"default":z});o.redraw();var w=b.get("data");w.layerColor=g;w.opacity=h;b.set("data",w)},updateDataObject:function(b){var g=this;Ext.Ajax.request({url:g.serviceUrl+"UpdateData",method:"POST",jsonData:{uuid:b.get("uuid"),data:Ext.encode(b.get("data"))}})},getLayers:function(){var b=this,g=[];
1b.grid&&b.grid.store.data.items.forEach(function(o){var h=o.get("olLayer");if(h&&o.get("active")){g.push({uuid:o.get("uuid"),caption:o.get("name"),disable_name_in_legend:true,src:[b.map.getLegendUrl(h)]})}});return g},_onCollaborationRestoreMap:function(g){var b=this;if(b.externalCategory.parentNode){b.externalCategory.removeNodes()}b.grid.store.on("load",function(){b.manageEventConfirmation(g)},b,{single:true});b.grid.store.load()},_onSetLegendData:function(g){var b=this,h=b.getLayers();if(h.length>0){g.data.push({uuid:"474cffa3-e365-4a13-b03c-187d996d9e08",name:b.lang.getString("headerLegend"),layers:h})}},_onLayerVisibilityRemoved:function(g){var b=this;b.grid&&b.grid.store.each(function(h){if(h.get("active")){var o=h.get("olLayer");if(o&&!o.getVisibility()){b.setActive(h,false)}}})},_onGetUserDataCollaboration:function(o){var h=this,g=o.data,z=g.get("recordData").get("layer_type_value"),b=z=="GPX"||z=="SOS"||z=="WKT"||z=="GEOJSON",w=z=="RASTER",q=h.lang.getString("copy_qtip");if(h.fkRecord&&(b&&h.getCopyState(g))||w){o.callback({cls:'<div class="a3-user-data-collaboration" title="'+q+'"></div>'})}},getCopyState:function(w){var q=this,b=w.get("recordData"),z=b.get("olLayer"),o=z&&z.features&&z.features.length;try{if(o){var g=z.features.reduce(function(B,A){return B+A.geometry.getVertices().length},0);return true}}catch(h){console.error("Cannot count geometry vertices",h)}return false},_onCopyRasterToCollaboration:function(g){var b=this,h=g.data;b.fireEvent("setActive",b);Ext.Ajax.request({url:b.serviceUrl+"CreateRaster",method:"POST",jsonData:{data:{collaboration_id:b.fkRecord,active:true,name:h.name,type:b.serviceType,geom:h.url,data:Ext.JSON.encode({type:"raster",tileSize:h.tileSize,extent:h.extent})}},callback:function(q,w,o){o=w&&JSON.parse(o.responseText).d;if(o&&o.success){b.fireEvent("dataChanged");b.showNotifySuccess(b.view,b.lang.getString("createSuccess"));b.grid.store.load()}else{b.showNotifyError(b.view,b.lang.getString("createError"))}}})},_onCopyToCollaboration:function(h){var g=this,o=h.data,b=o.features.map(function(q){return{attributes:q.attributes,wkt:q.geometry.toString()}});g.fireEvent("setActive",g);Ext.Ajax.request({url:g.serviceUrl+"Create",method:"POST",jsonData:{data:{collaboration_id:g.fkRecord,active:true,name:o.name,type:g.serviceType,data:Ext.JSON.encode({geom:b,layerColor:o.layerColor,opacity:o.opacity*100})}},callback:function(w,z,q){q=z&&JSON.parse(q.responseText).d;if(q&&q.success){g.fireEvent("dataChanged");g.showNotifySuccess(g.view,g.lang.getString("createSuccess"));g.grid.store.load()}else{g.showNotifyError(g.view,g.lang.getString("createError"))}}})}});Ext.define("Client.module.tool.collaboration.form.lang.User",{strings:{addBtn:{en:"Add",nb:"Legg til"},admin:{en:"admin",nb:"admin"},newUserLabel:{en:"The participants email",nb:"Deltakerens epostadresse"},newUserSuccess:{en:"User created!",nb:"Bruker opprettet!"},newUserError:{en:"Error while creating new participant",nb:"Feil ved opprettelse av ny deltaker"},tooltipDelete:{en:"Remove user",nb:"Fjern bruker"},deleteTitle:{en:"Remove user",nb:"Fjern bruker"},deleteMsg:{en:"Are you sure you want to remove this user from this case? You cannot undo this action.",nb:"Er du sikker på at du ønsker å fjerne denne brukeren fra denne saken? Denne handlingen kan ikke angres."},deleteSuccess:{en:"User removed!",nb:"Bruker er fjernet!"},deleteError:{en:"Error while removing user!",nb:"Feil ved fjerning av bruker!"}},errCodes:{admin:{en:"Cannot delete admin user!",nb:"Kan ikke slette admin bruker!"},self:{en:"Cannot delete yourself!",nb:"Kan ikke slette deg selv!"}}});Ext.define("Client.module.tool.collaboration.form.User",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],config:{columDeletable:true,serviceUrl:"webservices/collaboration/User.asmx/",serviceType:"user"},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.User")},buildGui:function(){var b=this;b.createGrid([{text:"author",dataIndex:"author",flex:1,renderer:function(w,h,g){var q=g.get("email"),o=w?(w+" ("+q+")"):q;return g.get("admin")?("<b>"+o+" ("+b.lang.getString("admin")+") </b>"):o}}]);b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"fieldcontainer",layout:"hbox",labelAlign:"top",fieldLabel:b.lang.getString("newUserLabel"),items:[{xtype:"textfield",vtype:"email",dataIndex:"email",allowBlank:false,flex:1},b.createButton("addBtn",true,{handler:function(){b.onCreateUser()},scope:b})]},b.grid]})},onCreateUser:function(){var b=this,g=b.view.down("[dataIndex=email]");if(!g.isValid()){return}Ext.Ajax.request({url:b.serviceUrl+"Create",method:"POST",jsonData:{collaboration_id:b.fkRecord,email:g.getValue().toLocaleLowerCase()},callback:function(o,q,h){h=q&&JSON.parse(h.responseText).d;if(h&&h.success){g.reset();b.showNotifySuccess(b.view,b.lang.getString("newUserSuccess"))}else{b.showNotifyError(b.view,b.lang.getString("newUserError"))}b.grid.store.load()}})},onDeleteCallback:function(o,b){var g=this,h;if(o){g.showNotifySuccess(g.view,g.lang.getString("deleteSuccess"));g.grid.store.load()}else{g.showNotifyError(g.view,g.lang.getError(b.exception&&b.exception.code)||g.lang.getString("deleteError"))}},activate:function(){var b=this;if(!b.view){b.buildGui()}},setDefaultFilter:function(b){var g=this;b.proxy.setParams({collaboration_id:g.fkRecord})}});Ext.define("Client.module.tool.collaboration.form.lang.Settings",{strings:{addBtn:{en:"Add",nb:"Legg til"},subscribe:{en:"Get email notifications on changes",nb:"Få e-postvarsel om endringer"},deleteWarning:{en:"<h3>Delete the case?</h3>All data regarding this case will be deleted, included data collected by any collaborating user(s) granted access to this case. There is no going back after deleting this case.",nb:"<h3>Slette saken?</h3><p>Dersom du sletter saken vil alle opplysninger i saken bli borte for godt, inkludert data lagt til av eventuelle deltakere i saken. Det er ikke mulig å angre dette."},cancel:{en:"Cancel",nb:"Avbryt"},subscribeError:{en:"Error while subscribing to the case!",nb:"Feil opprettelse av varsler i saken!"},showDeleteCaseBtn:{en:"Delete this case",nb:"Slett denne saken"}
1,deleteCaseChk:{en:"Yes, delete this case",nb:"Ja slett denne saken"},deleteCaseBtn:{en:"Delete this case",nb:"Slett denne saken"},deleteCase:{en:"Delete case",nb:"Slett sak"},deleteCaseMsg:{en:"Are you sure you want to delete this case. Once deleted there is no going back.",nb:"Er du sikker på at du ønsker å slette denne saken. Når den er sletter er det ingen vei tilbake"},deleteCaseError:{en:"Error while deleting case!",nb:"Feil ved sletting av saken!"},deleteCaseHasUsers:{en:"This case has more than one users collaboration. By pressing continue you are deleting the case for all collaborating users",nb:"Denne saken har mer enn en bruker. Ved å trykke fortsett sletter du saken for alle deltakere."}}});Ext.define("Client.module.tool.collaboration.form.Settings",{extend:Client.module.Generic,mixins:[Client.module.tool.collaboration.mixin.FormGeneric,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],config:{serviceUrl:"webservices/collaboration/User.asmx/",serviceType:"settings"},constructor:function(b){var g=this;Ext.apply(g,b);g.initConfig(b);g.callParent(arguments);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.form.lang.Settings");g.buildGui()},buildGui:function(){var b=this;b.deleteCaseBtn=Ext.widget(b.createButton("deleteCaseBtn",true,{disabled:true,scope:b,handler:b.deleteCase}));b.deleteCaseChk=Ext.widget(b.createField("deleteCaseChk",{xtype:"checkbox",allowBlank:false,handler:function(h,g){b.deleteCaseBtn.setDisabled(!g)}}));b.adminConfig=Ext.widget({xtype:"container",cls:"a3-collaboration-delete",hidden:true,layout:{type:"vbox",align:"stretch",pack:"start"},items:[{xtype:"component",flex:1,html:b.lang.getString("deleteWarning")},{xtype:"container",layout:{type:"hbox",align:"bottom"},items:[b.deleteCaseChk,b.deleteCaseBtn]}]});b.showDeleteCaseBtn=Ext.widget(b.createLinkBtn("showDeleteCaseBtn",{cls:"a3-link-btn a3-delete-btn",scope:b,handler:function(){b.showDeleteCaseBtn.hide();b.adminConfig.show()}}));b.view=Ext.create("Ext.container.Container",{layout:"anchor",defaults:{anchor:"100%"},items:[b.createField("subscribe",{xtype:"checkbox",listeners:{scope:b,change:b.onSubscribe}}),b.showDeleteCaseBtn,b.adminConfig]})},onSubscribe:function(h,g){var b=this;Ext.Ajax.request({url:b.serviceUrl+"Subscribe",method:"POST",jsonData:{collaboration_id:b.fkRecord,subscribe:g},callback:function(q,w,o){o=w&&JSON.parse(o.responseText).d;if(!w||!o.success){b.showNotifyError(b.view,b.lang.getString("subscribeError"))}}})},onDeleteCase:function(){var g=this,b={title:g.lang.getString("deleteCase"),scope:g,icon:Ext.window.MessageBox.WARNING,buttons:Ext.Msg.YESNO,buttonText:{yes:g.lang.getString("deleteCaseBtn"),no:g.lang.getString("cancel")}};Ext.Msg.show(Ext.apply({msg:g.lang.getString("deleteCaseMsg"),fn:function(h){if(h=="yes"){Ext.Ajax.request({url:g.serviceUrl+"Read",method:"POST",jsonData:{collaboration_id:g.fkRecord},callback:function(q,w,o){o=w&&JSON.parse(o.responseText).d;if(o&&o.success){if(o.records.length>1){Ext.Msg.show(Ext.apply({msg:g.lang.getString("deleteCaseHasUsers"),fn:function(z){if(z=="yes"){g.deleteCase()}}},b))}else{g.deleteCase()}}else{g.showNotifyError(g.view,g.lang.getString("deleteCaseError"))}}})}}},b))},deleteCase:function(){var b=this;Ext.Ajax.request({url:"webservices/collaboration/Collaboration.asmx/Destroy",method:"POST",jsonData:{collaboration_id:b.fkRecord},callback:function(h,o,g){g=o&&JSON.parse(g.responseText).d;if(g&&g.success){b.fireEvent("caseDeleted")}else{b.showNotifyError(b.view,b.lang.getString("deleteCaseError"))}}})},setFkRecord:function(g){var b=this;b.fkRecord=g;Ext.Ajax.request({url:b.serviceUrl+"IsAdmin",method:"POST",jsonData:{collaboration_id:b.fkRecord},callback:function(o,q,h){h=q&&JSON.parse(h.responseText).d;if(h&&h.success&&h.data[0].value){b.showDeleteCaseBtn.show()}else{b.showDeleteCaseBtn.hide()}}})},disable:function(){var b=this;b.deleteCaseChk.setValue(false);b.adminConfig.hide()},activate:function(){var b=this;if(!b.view){b.buildGui()}}});Ext.define("Client.module.tool.collaboration.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],btnCls:"a3-collaboration-tool-main-btn",internal_name:"av_collaboration",serviceUrl:"webservices/collaboration/Collaboration.asmx/",constructor:function(b){var g=this;Ext.apply(this,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.collaboration.lang.Standard");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText");g.forms={map:Ext.create("Client.module.tool.collaboration.form.Map"),image:Ext.create("Client.module.tool.collaboration.form.Image"),draw:Ext.create("Client.module.tool.collaboration.form.Draw"),feature:Ext.create("Client.module.tool.collaboration.form.Feature"),comment:Ext.create("Client.module.tool.collaboration.form.Comment"),document:Ext.create("Client.module.tool.collaboration.form.Document"),user:Ext.create("Client.module.tool.collaboration.form.User"),settings:Ext.create("Client.module.tool.collaboration.form.Settings")};g.forms.settings.on("caseDeleted",g.onCaseDeleted,g);Ext.iterate(g.forms,function(h,o){g.parentController.registerModule(o)})},buildGui:function(){var b=this;b.sets=[];b.issuesCombo=Ext.widget(b.createField("issueCbx",{xtype:"combo",addClearTrigger:false,hintOnly:true,editable:false,valueField:"id",displayField:"name",flex:1,disabled:true,store:{xtype:"store",autoLoad:true,proxy:{url:b.serviceUrl+"Read",type:"ajaxread",reader:{getData:function(g){g.d.records.forEach(function(h){h.name+=" ("+Ext.Date.format(GeoMind.utils.Date.fixDate(h.update_date),"Y-m-d)")});return g.d.records}}},fields:["id","name","version"],listeners:{scope:b,load:b.onLoadIssue}},listeners:{scope:b,change:b.onChangeIssue}}));Ext.iterate(b.forms,function(h,o){var g={collapsed:true,form:o,listeners:{scope:b,beforeexpand:function(){b.collapseAll();o.expand&&o.expand();setTimeout(function(){},10)},beforecollapse:function(){o.collapse&&o.collapse()}}};switch(h){case"map":Ext.merge(g,{collapsible:false,collapsed:false});break}o.on("dataChanged",b.onDataChanged,b);o.on("setActive",b.setActiveForm,b);b.sets.push(Ext.widget(b.createSet(h+"Set",g,[o.view])))});b.cardView=Ext.create("Ext.container.Container",{hidden:true,layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"container",layout:{type:"vbox",align:"stretch"},items:b.sets}]});b.refreshBtn=Ext.create("Ext.button.Button",{cls:"a3-collaboration-refresh-btn",tooltip:b.lang.getString("refreshTooltip"),tooltipType:"title",disabled:true,height:34,width:34,scope:b,handler:b.onRefresh});b.infoBox=b.createTextBox("infoEmpty");b.infoGuest=b.createTextBox("infoGuest","warning");b.closeIssueBtn=Ext.create("Ext.button.Button",{cls:"a3-link-btn a3-back-btn",text:b.lang.getString("issueCloseBtn"),hidden:true,handler:b.onCloseIssue,scope:b});b.createIssueView=Ext.widget({xtype:"container",layout:"hbox",disabled:true,items:[{xtype:"box",flex:1},b.createButton("issueCreateBtn",true,{handler:b.onCreateIssue,scope:b})]});b.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body a3-form a3-collaboration",overflowY:"auto",overflowX:"hidden",layout:{type:"vbox",align:"stretch"},items:[b.closeIssueBtn,b.createIssueView,b.createSet("setIssue",{collapsible:false,layout:"hbox"},[b.issuesCombo,b.refreshBtn]),b.infoBox,b.infoGuest,b.cardView]})},onDataChanged:function(){this.issuesCombo.store.load()},setActiveForm:function(g){var b=this;b.reportEvent("switchTools",b);b.sets.forEach(function(h){if(h.form==g){h.expand()}})},collapseAll:function(){var b=this;b.sets.forEach(function(g){if(!g.collapsed){g.collapsible&&g.collapse()}})},onChangeIssue:function(h,g){var b=this;if(g){b.cardView.show();b.collaboration_id=g;b.version=h.store.getById(g).get("version");b.onRefresh();b.monitorStatus();b.infoBox.hide()}},onLoadIssue:function(){var b=this;if(b.view){setTimeout(function(){b.view.setLoading(false)},200)}},onRefresh:function(){var o=this;o.issuesCombo.store.load();o.view.setLoading(true);if(o.collaboration_id){var b=o.issuesCombo.store.getById(o.collaboration_id);var g=b.get("admin");var h=b.get("name");Ext.iterate(o.forms,function(q,w){w.setFkRecord(o.collaboration_id,h);w.isAdmin=g;o.closeIssueBtn.show();o.createIssueView.hide()})}},onCreateIssue:function(){var b=this;Ext.Msg.prompt(b.lang.getString("newIssueTitle"),b.lang.getString("newIssueLabel"),function(g,h){if(g=="ok"){if(h){b.createIssue(h)}else{b.onCreateIssue()}}},b)},createIssue:function(b){var g=this;Ext.Ajax.request({url:g.serviceUrl+"Create",method:"POST",jsonData:{name:b},callback:function(o,w,h){h=w&&JSON.parse(h.responseText).d;if(h&&h.success){var q=GeoMind.utils.Data.extractConfigObjectByKey(h.data,"record");g.forms.map.saveMap(q.id,false,function(){g.issuesCombo.store.load(function(){g.issuesCombo.setValue(q.id)})})}else{g.showNotifyError(g.view,g.lang.getString("createError"))}}})},monitorStatus:function(){var b=this,h="webservices/collaboration/TaskStatus.asmx/MonitorStatus?collaboration_id="+b.collaboration_id+"&version="+b.version;try{url=__baseurl__.replace(/^http/,"ws")+h;b.updateSocket=new WebSocket(url);b.updateSocket.onmessage=function(q){var w=JSON.parse(q.data),o={};
1w.forEach(function(z){if(!o[z.type]){o[z.type]=[]}o[z.type].push(z)});Ext.iterate(o,function(z,A){b.forms[z].newActions(A)})};b.updateSocket.onopen=function(){b.updateSocket.send("hello")};b.updateSocket.onclose=function(){delete b.updateSocket}}catch(g){console.warn(g)}},activate:function(){var g=this,b=g.view,h;Ext.iterate(g.forms,function(o,q){q.activate()});if(!b){g.buildGui()}else{g.issuesCombo.store.load()}},deactivate:function(){var b=this;if(b.view){Ext.iterate(b.forms,function(g,h){h.deactivate&&h.deactivate()});b.collapseAll()}},onCloseIssue:function(){var b=this;b.onCaseDeleted();Ext.iterate(b.forms,function(g,h){h.clearFkRecord&&h.clearFkRecord()});b.reportEvent("activateThemes",[])},onCaseDeleted:function(){var b=this;b.beforeMapReset();b.onRefresh();b.collapseAll();if(b.view){Ext.iterate(b.forms,function(g,h){h.disable&&h.disable()})}},_onUserAuthenticated:function(h){var g=this;g.userIsAuthenticated=true;function b(){if(!g.infoGuest){setTimeout(function(){b()},100);return}g.infoGuest.hide();g.issuesCombo.enable();g.refreshBtn.enable();g.createIssueView.enable()}b()},_onUserSignedOut:function(g){var b=this;b.infoGuest.show();b.issuesCombo.disable();b.refreshBtn.disable();b.createIssueView.disable()},beforeMapReset:function(g){var b=this;Ext.iterate(b.forms,function(h,o){o.beforeMapReset&&o.beforeMapReset(g)});if(b.view){b.issuesCombo.clearValue();b.cardView.hide();delete b.collaboration_id;b.infoBox.show();b.closeIssueBtn.hide();b.createIssueView.show()}}});Ext.define("Client.module.tool.forum.lang.Lang",{strings:{header_main:{en:"Riders Comments",nb:"Riders Comments",nn:"Riders Comments"},mainBtnText:{en:"Riders Comments",nb:"Riders Comments",nn:"Riders Comments"},mainBtnTip:{en:"Discuss stuff",nb:"Diskuter saker og ting"},loadMaskMsg:{en:"Loading data...",nb:"Laster data...",nn:"Laster data..."},fsCreate:{en:"Add new comment",nb:"Legg til nytt innlegg",nn:"Legg til nytt innlegg"},btnNewComment_text:{en:"Add new comment",nb:"Lag ny kommentar"},btnNewComment_tip_text:{en:"Create a new comment in the forum",nb:"Opprett et nytt innlegg i forumet"},author:{en:"Name",nb:"Navn",nn:"Navn"},title:{en:"Title",nb:"Tittel",nn:"Tittel"},comment:{en:"Comment",nb:"Kommentar"},c_delete:{en:"Delete",nb:"Slett",nn:"Slett"},sf_empty:{en:"Search in forum",nb:"Søk i forum",nn:"Søk i forum"},forum_header:{en:"What do YOU think about the North Sea Cycle Route? On this page you can share your cycling experience with other cyclists."}}});Ext.define("Adaptive.form.field.TinyMceField",{extend:Ext.form.field.TextArea,alias:"widget.tinymce",editorConfig:undefined,afterRender:function(){var q=this,w=q.inputEl.id,b=[],g=document.head.getElementsByTagName("link"),h=0;q.callParent(arguments);for(;h<g.length;++h){var o=g[h];if(o.type=="text/css"){b.push(o.href)}}q.editor=tinymce.createEditor(w,Ext.apply({selector:"#"+w,resize:false,height:q.height,width:q.width,menubar:false,statusbar:false,content_css:b,language:q.getLangCode(q.language)},q.editorConfig));q.on("resize",function(B,A,z){if(!q.noWysiwyg&&!q.wysiwygIntialized){q.initEditor(z)}else{q.syncEditorHeight(z)}},q);q.editor.on("init",function(){q.editor.setContent(q.value||"");q.wysiwygIntialized=true;q.intializationInProgress=false});q.editor.on("change",function(B){var z=q.editor.getContent(),A=q.previousContent;if(z!==A){q.previousContent=z;q.fireEvent("change",q,z,A)}});q.editor.render()},initEditor:function(b){var g=this;if(b){setTimeout(function(){g.syncEditorHeight(b)},300)}},syncEditorHeight:function(B){var w=this;if(w.labelAlign=="top"){B=B-(w.labelEl.getHeight()+3)}w.lastHeight=B;if(!w.wysiwygIntialized||!w.rendered){return}var q=tinymce.get(w.getInputId());if(q.isHidden()){return}var z=Ext.get(w.getInputId()+"_ifr");var A=z.up(".mce-edit-area");A=A.up(".mce-container-body");var g=B;var h=A.down(".mce-toolbar-grp");if(h){g-=h.getHeight()}var b=A.down(".mce-menubar");if(b){g-=b.getHeight()}var o=A.down(".mce-statusbar");if(o){g-=o.getHeight()}w.lastFrameHeight=g-3;z.setHeight(g-3);return g-3},getRawValue:function(){var b=this.editor,g=b&&b.initialized?b.getContent():Ext.value(this.rawValue,"");this.rawValue=g;return g},setRawValue:function(g){this.callParent(arguments);var b=this.editor;if(b&&b.initialized){b.setContent(g)}return this},getLangCode:function(b){switch(b){case"nb":return"nb_NO";break;case"nn":return"nb_NO";break;default:return null}}});Ext.define("Client.module.tool.forum.Create",{extend:Client.module.Generic,editorToolbar:["undo redo | styleselect bold italic | bullist numlist outde
1nt indent | table | link"],constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.forum.lang.Lang");this.buildGui();this.callParent(arguments)},buildGui:function(){var b=this;b.view=Ext.create("Ext.form.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[{xtype:"textfield",fieldLabel:b.lang.getString("title"),name:"title",allowBlank:false,labelAlign:"top"},{xtype:"textfield",fieldLabel:b.lang.getString("author"),name:"author",allowBlank:false,labelAlign:"top"},{xtype:"tinymce",fieldLabel:b.lang.getString("comment"),name:"comment",allowBlank:false,labelAlign:"top",language:b.lang.l.langCode,editorConfig:{toolbar:b.editorToolbar}},{xtype:"button",cls:"a3-forum-create-comment-btn",text:b.lang.getString("btnNewComment_text"),tooltip:b.lang.getString("btnNewComment_tip_text"),tooltipType:"title",listeners:{scope:b,click:b.onBtnCreateClick}}]})},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onBtnCreateClick(g)}},onBtnCreateClick:function(g){var h=g.findParentByType("form");if(!h.isValid()){return}var b=h.getValues();var o={data:b,extraParams:[]};Ext.Ajax.request({url:"WebServices/forum/Forum.asmx/Create",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(o),success:Ext.bind(this.createCommentCallbackSuccess,this),failure:Ext.bind(this.createCommentCallbackFailure,this)})},createCommentCallbackSuccess:function(b,h){var g=this;b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){g.view.getForm().reset();g.forumCommentCreated()}else{Ext.Msg.show({title:"Connection Error",msg:"It was not possible to connecto to a database. Please make sure connection details are valid.",buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})}},createCommentCallbackFailure:function(b,g){Ext.Msg.show({title:"Connection Error",msg:"It was not possible to connecto to a database. Please make sure connection details are valid.",buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})},forumCommentCreated:function(){var b={evtName:"forumCommentCreated",evtInitiatingModule:this,evtSuperInitiatingModule:this};this.dispatchEvent(b,{confirmationRequired:false})}});Ext.define("Client.data.model.Forum",{extend:Ext.data.Model,proxy:{url:"WebServices/forum/Forum.asmx/Read",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records",totalProperty:"d.total",successProperty:"d.success"},paramsAsJson:true},fields:[{name:"uuid"},{name:"title"},{name:"author"},{name:"comment"},{name:"image",type:"auto"},{name:"geom",type:"auto"},{name:"create_date",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}}],config:{fields:this.fields}});Ext.define("Client.module.tool.forum.Comments",{extend:Client.module.Generic,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.forum.lang.Lang");g.create=Ext.create("Client.module.tool.forum.Create");g.parentController.registerModule(g.create);g.buildGui();g.callParent(arguments)},buildGui:function(){var b=this;b.searchfield=Ext.create("Ext.form.field.Text",{cls:"a3-forum-searchfield",emptyText:b.lang.getString("sf_empty")});b.searchfield.mon(b.searchfield,"change",b.onTextFieldChange,b,{buffer:500});b.store=Ext.create("Ext.data.Store",{model:"Client.data.model.Forum",data:[],buffered:true,leadingBufferZone:40,pageSize:40});b.store.mon(b.store,"beforeload",b.onBeforeLoad,b);b.grid=Ext.create("Ext.grid.Panel",{hideHeaders:true,store:b.store,selModel:{pruneRemoved:false},multiSelect:true,viewConfig:{trackOver:false,enableTextSelection:true},flex:1,columns:[{dataIndex:"comment",flex:1,renderer:b.commentsRenderer},{xtype:"actioncolumn",flex:0.5,hidden:true,items:[{icon:"resx/icons/client/x_delete.png",tooltip:b.lang.getString("c_delete"),tooltipType:"title",scope:b,handler:function(h,o,g){b.destroyComments(h.getStore().getAt(o).get("uuid"))}}]}]});b.view=Ext.create("Ext.container.Container",{cls:"a3-forum-content",layout:{type:"vbox",align:"stretch"},items:[{xtype:"container",html:'<p class="a3-forum-header">'+this.lang.getString("forum_header")+"</p>"},b.searchfield,{xtype:"fieldset",dataIndex:"comments",layout:"fit",height:375,title:b.lang.getString("fsCreate"),collapsible:true,collapsed:true,items:[b.create.view]},b.grid]})},onTextFieldChange:function(){var b=this;b.store.load();b.searchfield.focus()},commentsRenderer:function(h,g,b){var o=b.get("create_date");if(o){o=o.toLocaleDateString()}return'<p class="a3-forum-title">'+b.get("title")+'</p><p class="a3-forum-author">'+b.get("author")+" - "+o+'</p>
1<div style="white-space:normal !important;">'+h+"</div>"},destroyComments:function(b){var g={uuids:Ext.isArray(b)?b:[b],extraParams:[]};Ext.Ajax.request({url:"WebServices/forum/Forum.asmx/Destroy",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(g),success:Ext.bind(this._onRefreshForum,this),failure:Ext.bind(this._onRefreshForum,this)})},onBeforeLoad:function(g,b){var o=this,q=o.searchfield.getValue();if(o.searchValue!==null){var h=Ext.create("GeoMind.data.DataFilter");var w={extraParams:[{key:"q",value:q}],filter:h};g.getProxy().extraParams=w}return true},_onRefreshForum:function(b){this.store.load()},_onForumCommentCreated:function(g){var b=this,h=b.view.query("[dataIndex=comments]")[0];h.collapse();b.store.load()}});Ext.define("Client.module.tool.forum.Forum",{extend:Client.module.ToolGeneric,btnCls:"a3-forum",btnText:null,btnTip:null,headerText:null,name:"Forum module",description:"Create, view and moderate discussions",internal_name:"av_forum",parentController:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.forum.lang.Lang");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("header_main");g.buildGui()},buildGui:function(){var b=this;b.comments=Ext.create("Client.module.tool.forum.Comments",{isAdmin:b.isAdmin,parentController:b.parentController});b.parentController.registerModule(b.comments);b.view=b.comments.view;b.view.cls="a3-modules-body a3-forum-body"},activate:function(){this.refreshForum()},refreshForum:function(){var b={evtName:"refreshForum",evtInitiatingModule:this,evtSuperInitiatingModule:this};this.dispatchEvent(b,{confirmationRequired:false})},setAdmin:function(b){var g=this.comments.grid.columns[1];if(b){g.show()}else{g.hide()}}});Ext.define("Adaptive.ux.MediaLightbox",{extend:Ext.container.Container,floating:true,shadow:false,container:null,cls:"a3-animate a3-hidden a3-lightbox",config:{videoPlayerUrl:"proxies/MediaPlayer.aspx?video=",audioPlayerUrl:"proxies/AudioPlayer.aspx?audio=",url:null,title:null,mime:"image/*",currentIdx:0},constructor:function(b){var g=this;Ext.apply(g,b);if(g.url instanceof Array){if(g.url.length>1){g.isArray=true}g.title=g.url[g.currentIdx].text}g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.MediaLightbox");g.buildGui();g.callParent(arguments);if(g.url instanceof Array&&g.url.length===1){g.mime=g.url[0].mime;g.url=g.url[0].url}g.on("afterrender",function(){g.previewFrame=g.down("#previewFrame");g.previewFrameDom=Ext.getDom(g.previewFrame.getEl()).getElementsByTagName("iframe")[0];g.previewImg=g.down("#previewImage");g.noPreview=g.down("#noPreview");g.setPreview()});g.container=g.container||g.mapContainer||Ext.getBody();g.container.on("resize",g.resize,g);g.resize();g.on("boxready",function(){g.getEl().on("click",g.fadeOut,g);Ext.defer(function(){g.down("button").focus()},100)});Ext.getBody().on(Ext.EventManager.getKeyEvent(),g.onKeyDown,g);g.on("hide",g.destroy,g)},onKeyDown:function(g){var b=this;if(g.getCharCode()==27){b.fadeOut()}else{if(g.getCharCode()==39){b.nextMedia()}else{if(g.getCharCode()==37){b.prevMedia()}}}},show:function(){var b=this;b.callParent(arguments);b.removeCls("a3-hidden")},fadeOut:function(g){var b=this;b.addCls("a3-hidden");setTimeout(function(){b.hide()},250)},buildGui:function(){var b=this;b.layout={type:"absolute"};b.items=[{xtype:"box",anchor:"-120 -40",html:'<iframe width="100%" height="100%" frameborder="0"></iframe>',itemId:"previewFrame",hidden:true},{xtype:"box",cls:"a3-box a3-center-box a3-noicon",style:{width:"320px",height:"75px"},tpl:'<p class="no-preview-text">'+b.lang.getString("noPreview")+'</p><a href="{url}" target="_blank" rel="noopener noreferrer">'+b.lang.getString("openOrDownload")+"</a>",itemId:"noPreview",hidden:true},{xtype:"image",anchor:"100% 100%",itemId:"previewImage",autoEl:"div",cls:"media-lightbox-img",hidden:true},{xtype:"box",anchor:"100%",style:{background:"rgba(0,0,0,.8)",color:"#fff",bottom:0,height:"20px","text-align":"center"},hidden:!b.title,html:b.title,itemId:"titleBar"},{xtype:"button",cls:"a3-floating-btn",iconCls:"icon-chevron-forward",width:44,height:44,style:{right:"10px",top:"50%"},handler:Ext.bind(b.nextMedia,b),hidden:!b.isArray},{xtype:"button",cls:"a3-floating-btn",iconCls:"icon-chevron-backward",width:44,height:44,style:{left:"10px",top:"50%"},handler:Ext.bind(b.prevMedia,b),hidden:!b.isArray},{xtype:"button",cls:"a3-floating-btn a3-hide-btn",width:44,height:44,style:{right:"10px",top:"10px"},handler:Ext.bind(b.fadeOut,b)}]},resize:function(){var h=this,b=Ext.getBody().getHeight(),g=Ext.getBody().getWidth();h.setPosition(0,0);h.setSize(g,b)},setPreview:function(){var o=this,q,g;if(!o.previewFrame){return}if(o.isArray){g=o.url[o.currentIdx].url||o.url;q=o.url[o.currentIdx].mime||o.mime;var b=o.down("#titleBar");b.update(o.url[o.currentIdx].text);b.setVisible(!!o.url[o.currentIdx].text)}else{q=o.mime,g=o.url}if(g){var h=g.indexOf("WebServices/generic/Media.asmx/Download")!==-1;if(q==="auto"&&h){o.pendingUrl=g;Ext.Ajax.request({url:g.replace("/Download","/Mime"),method:"GET",callback:function(A,B,w){if
1(o.pendingUrl===g){var z=B&&Ext.JSON.decode(w.responseText);o._setPreview(g,z&&z.mime||"",true)}}})}else{o._setPreview(g,q,h)}}},_setPreview:function(b,o,g){var h=this;if(o.indexOf("image/")==0){h.previewFrame.hide();h.previewImg.setSrc(b);h.previewImg.show()}else{if(o=="application/pdf"||o=="text/plain"||o=="text/html"||o=="text/xml"||o=="application/xml"){h.previewImg.hide();h.previewFrameDom.src=b;h.previewFrame.show()}else{if(o.indexOf("video/")==0){h.previewImg.hide();h.previewFrameDom.src=h.videoPlayerUrl+b;h.previewFrame.show()}else{if(o.indexOf("audio/")==0){h.previewImg.hide();h.previewFrameDom.src=h.audioPlayerUrl+b;h.previewFrame.show()}else{h.previewFrame.hide();h.previewImg.hide();h.noPreview.show();h.noPreview.update({url:b+(g?"&download=1":"")})}}}}h.resize()},destroy:function(){var b=this;Ext.getBody().un(Ext.EventManager.getKeyEvent(),b.onKeyDown,b);b.container.un("resize",b.resize,b);b.callParent()},statics:{show:function(b,o,q,g){var h=Ext.create("Adaptive.ux.MediaLightbox",{mime:o||"image/*",url:b,title:q,currentIdx:g||0});h.show();return h},showHtml:function(b){var g=Ext.create("Adaptive.ux.MediaLightbox");g.show();g.previewFrame.update(b);g.previewFrame.show();return g}},nextMedia:function(b,o){if(o){o.stopPropagation()}var g=this,h=g.currentIdx+1;g.currentIdx=h>g.url.length-1?0:h;g.setPreview();g.resize()},prevMedia:function(b,o){if(o){o.stopPropagation()}var g=this,h=g.currentIdx-1;g.currentIdx=h<0?g.url.length-1:h;g.setPreview();g.resize()}});Ext.define("Client.module.tool.digiTheme.ux.lang.Media",{strings:{btnBackToMain:{en:"Form",nb:"Skjema",nn:"Skjema"},btnBackToMain_tooltip:{en:"Cancel and go back to the form",nb:"Avbryt og gå tilbake til skjema",nn:"Avbryt og gå tilbake til skjema"},noMedia:{en:"No media avaiable",nb:"Ingen mediefiler",nn:"Ingen mediefiler"},noPreview:{en:"No preview available",nb:"Ingen forhåndsvisning tilgjengelig",nn:"Ingen forhåndsvisning tilgjengelig"},previewEmpty:{en:"Select media to preview",nb:"Velg media for forhåndsvisning",nn:"Velg media for forhåndsvisning"},download:{en:"Download media",nb:"Last ned media",nn:"Last ned media"},btnUpload:{en:"Upload media",nb:"Last opp media",nn:"Last opp media"},deleteMedia:{en:"Delete media",nb:"Slett media",nn:"Slett media"},viewMedia:{en:"View media",nb:"Vis media",nn:"Vis media"},viewMediaComment:{en:"Show comment",nb:"Vis kommentar",nn:"Vis kommentar"},editMedia:{en:"Edit media",nb:"Rediger media"},imagesHeader:{en:"Images",nb:"Bilder"},videosHeader:{en:"Videos",nb:"Videoer"},otherHeader:{en:"Other",nb:"Andre"}},errCodes:{}});Ext.define("Client.module.tool.digiTheme.ux.Media",{extend:Ext.panel.Panel,layout:{type:"vbox",align:"stretch"},map:null,mapContainer:null,constructor:function(b){var g=this;Ext.apply(g,b);g.store=g.mediaStore;g.tagStore=Ext.create("Ext.data.Store",{fields:[{name:"tag"},{name:"count"},{name:"toggled"}]});g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.Media");g.buildGui();g.store.on("load",g.onImageLoad,g);g.callParent(arguments)},buildGui:function(){var b=this;b.backToMain=Ext.create("Ext.button.Button",{iconCls:"icon-back",text:b.lang.getString("btnBackToMain"),tooltip:b.lang.getString("btnBackToMain_tooltip"),tooltipType:"title",listeners:{click:function(){b.fireEvent("cancel")}}});b.btnUploadImage=Ext.create("Ext.button.Button",{text:b.lang.getString("btnUpload"),cls:"a3-submit-btn",iconCls:"icon-add",scope:b,handler:b.uploadBtnClicked});b.tagsView=Ext.create("Ext.view.View",{store:b.tagStore,tpl:new Ext.XTemplate('<tpl for=".">','<button class="{[this.isPressed(values)]}">{tag}</button>',"</tpl>",{isPressed:function(g){var h="a3-media-tag-toggle-btn";if(g.toggled){h+=" tag-btn-pressed"}return h}}),itemSelector:"button",listeners:{scope:b,itemclick:function(h,g){var o=!g.get("toggled");g.set("toggled",o);if(o){if(!b.activeTags){b.activeTags=[]}b.activeTags.push(g.get("tag"))}else{b.activeTags.splice(b.activeTags.indexOf(g.get("tag")),1)}b.store.filterBy(function(w){if(b.activeTags.length===0){return true}var q=JSON.parse(w.get("data"));return q&&q.tags&&q.tags.some(function(z){return b.activeTags.indexOf(z)!==-1})})}}});b.mediaView=Ext.create("Client.module.tool.digiTheme.ux.MediaView",{store:b.store,flex:1,isEditable:b.isEditable,showHeaders:true,emptyText:b.lang.getString("noMedia"),listeners:{scope:b,itemmouseenter:function(h,g,o){b.selectFeature
1(g)},itemmouseleave:function(h,g,o){b.selectFeature(null)},deleteMedia:function(h,g){b.deleteMedia(g.data.uuid)},selectMedia:function(h,g){b.selectFeature(g)},editMedia:function(h,g){b.fireEvent("mediaEditForm",g,true)}}});b.items=[b.tagsView,b.mediaView];b.tbar={cls:"a3-toolbar",items:[b.backToMain,b.btnUploadImage]}},deactivate:function(){if(this.featureLayer){this.featureLayer.destroyFeatures()}},uploadBtnClicked:function(){this.fireEvent("mediaUpload")},toggleEditable:function(b,h){var g=this;g.isEditable=b;g.mediaView.isEditable=b;g.userCanEditTheme=h;g.btnUploadImage.setVisible(b)},onImageLoad:function(g,b){var q=this;if(!q.featureLayer){var o=new OpenLayers.Style({graphicWidth:21,graphicHeight:25,graphicYOffset:-28},{rules:[new OpenLayers.Rule({filter:new OpenLayers.Filter.Function({evaluate:function(w){return w.selected}}),symbolizer:{externalGraphic:"./resx/icons/client/media_selected.png"}}),new OpenLayers.Rule({filter:new OpenLayers.Filter.Function({evaluate:function(w){return w.mime&&w.mime.lastIndexOf("image/",0)===0&&w.selected}}),symbolizer:{externalGraphic:"./resx/icons/client/photo_selected.png"}}),new OpenLayers.Rule({filter:new OpenLayers.Filter.Function({evaluate:function(w){return w.mime&&w.mime.lastIndexOf("video/",0)===0&&w.selected}}),symbolizer:{externalGraphic:"./resx/icons/client/video_selected.png"}}),new OpenLayers.Rule({filter:new OpenLayers.Filter.Function({evaluate:function(w){return w.mime&&w.mime.lastIndexOf("image/",0)===0&&!w.selected}}),symbolizer:{externalGraphic:"./resx/icons/client/photo.png"}}),new OpenLayers.Rule({filter:new OpenLayers.Filter.Function({evaluate:function(w){return w.mime&&w.mime.lastIndexOf("video/",0)===0&&!w.selected}}),symbolizer:{externalGraphic:"./resx/icons/client/video.png"}}),new OpenLayers.Rule({elseFilter:true,symbolizer:{externalGraphic:"./resx/icons/client/media.png"}})]});q.featureLayer=new OpenLayers.Layer.Vector("digiThemeMediaLayer",{styleMap:new OpenLayers.StyleMap(o)});q.map.addLayer(q.featureLayer)}else{q.featureLayer.removeAllFeatures()}if(b&&b.length>0){if(q.map){var h=[];q.store.data.items.forEach(function(A){if(A.data.the_geom){var z=A.data.the_geom.substring(A.data.the_geom.indexOf(";")+1,A.data.the_geom.length),w=new OpenLayers.Feature.Vector(OpenLayers.Geometry.fromWKT(z),{mime:A.data.mime,selected:false});A.data.feature=w;h.push(w)}});q.featureLayer.addFeatures(h)}}q.extractTags(b)},extractTags:function(b){var h=this,g=b.reduce(function(z,q){var w=JSON.parse(q.get("data"));if(!(w&&w.tags&&w.tags.length>0)){return z}
1w.tags.forEach(function(A){if(!z[A]){z[A]=1}else{z[A]++}});return z},{});var o=Object.keys(g).map(function(q){return{tag:q,count:g[q],toggled:false}});h.tagStore.loadData(o)},destroy:function(){var b=this;if(b.store){b.store.un("load",b.onImageLoad,b)}if(b.featureLayer){b.featureLayer.destroy();delete b.featureLayer}b.callParent()},deleteMedia:function(b){var g=this;g.fireEvent("deleteMedia",b)},showFullVersion:function(){Ext.create("Client.module.tool.digiTheme.ux.MediaLightbox",{mapContainer:me.mapContainer,mime:record.data.mime,url:me.mediaDownloadUrl+record.data.uuid}).show()},selectFeature:function(b){var g=this;g.store.data.items.forEach(function(h){h.isSelected=false;if(h.data.feature&&h.data.feature.attributes){h.data.feature.attributes.selected=false}});if(b&&b.data&&b.data.feature&&b.data.feature.attributes){b.isSelected=true;b.data.feature.attributes.selected=true}if(g.featureLayer){g.featureLayer.redraw(true)}},addLayer:function(){var b=this;if(b.featureLayer){b.map.addLayer(b.featureLayer)}},removeLayer:function(){var b=this;if(b.featureLayer&&b.map.getLayer(b.featureLayer.id)){b.map.removeLayer(b.featureLayer)}}});Ext.define("Client.module.tool.digiTheme.ux.MediaUploadBase",{extend:Ext.util.Observable,mixins:[Adaptive.form.mixins.Generator],owner_uuid:null,imageUrl:"WebServices/generic/Media.asmx/Download?thumbnail_size=medium&uuid=",record:null,constructor:function(b){var g=this;if(!g.lang){g.lang="Client.module.tool.digiTheme.ux.lang.MediaUpload"}if(typeof g.lang==="string"){g.lang=GeoMind.lang.Lang.registerTranslations(g.lang)}g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.MediaUpload");Ext.apply(g,b);g.buildGui();g.callParent(arguments)},onCreated:function(o){var z=this,g=z.view.down("[dataIndex=uploadFile]"),b=g&&g.down("filefield").fileInputEl,w=z.view,q=Ext.Ajax.defaultHeaders.gm_session_id;if(g){z.uuid=o;try{z.fileSize=b.dom.files[0].size}catch(h){}w.submit({url:z.serviceUrl+"Upload?uuid="+o+"&gm_session_id="+q,success:Ext.bind(z.mediaUploaded,z),failure:Ext.bind(z.onError,z)})}else{if(z.uuid){z.mediaUploaded()}}},onError:function(){var b=this,g="<p>"+(b.record&&b.record.get("uuid")?b.lang.getString("updateMediaErrorBody"):b.lang.getString("uploadMediaErrorBody"));Ext.Ajax.request({url:"WebServices/generic/Upload.asmx/GetMaxUploadSize",method:"POST",jsonData:{endpoint:b.serviceUrl.slice(0,-1)},callback:function(o,w,h){var z=0;if(w){try{z=Ext.JSON.decode(h.responseText).d*1024}catch(q){}}if(z&&b.fileSize&&z<b.fileSize){g+="<p>"+Ext.String.format(b.lang.getString("tooLarge"),Ext.util.Format.fileSize(z),Ext.util.Format.fileSize(b.fileSize))}Ext.Msg.show({title:b.lang.getString("uploadMediaErrorHeader"),msg:g});b.unmask();b.view.down("#btnSave").enable()}})}});Ext.define("Client.module.tool.digiTheme.ux.MediaTags",{extend:Ext.form.FieldSet,mixins:{field:Ext.form.field.Field},alias:"widget.mediatags",cls:"a3-mediatag a3-toolbar",layout:"form",initComponent:function(){var b=this;b.tagStore=Ext.create("Ext.data.Store",{fields:[{name:"tag",type:"string"}]});b.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.MediaTags");b.title=b.lang.getString("title"),b.items=[{xtype:"dataview",flex:1,padding:5,itemSelector:".mediatag",tpl:new Ext.XTemplate('<tpl for=".">','<span class="mediatag">{tag}<span class="a3-icon icon-remove" data-qtip="'+b.lang.getString("removeTag")+'"></span></span>',"</tpl>",'<tpl if="this.emptyStore()">',"<span>"+b.lang.getString("emptyStore")+"</span>","</tpl>",{emptyStore:function(){return b.tagStore.getCount()===0}}),store:b.tagStore,listeners:{itemclick:function(o,g,q,h,w){if(w.target.classList.contains("icon-remove")){b.tagStore.remove(g);b.setDirty()}},scope:b}},{xtype:"triggerfield",triggerCls:"icon-add",onTriggerClick:function(){var g=this.getValue().toLowerCase();if(g&&b.tagStore.find("tag",g)===-1){b.tagStore.add({tag:g});b.setDirty()}this.setValue(null)}}];b.callParent(arguments)},clearDirty:function(){var b=this;if(b._isDirty){b._isDirty=false;b.fireEvent("dirtychanged",false)}b.fireEvent("validitychange",b.isValid())},setDirty:function(){var b=this;if(!b._isDirty){b._isDirty=true;b.fireEvent("dirtychanged",true)}b.fireEvent("validitychange",b.isValid())},setValue:function(h){var b=this,g=(h||[]).map(function(o){return{tag:o}});b.tagStore.loadData(g);b.clearDirty()},getValue:function(){var g=this,b=[];g.tagStore.each(function(h){b.push(h.get("tag"))});return b}});Ext.define("Client.module.tool.digiTheme.ux.MediaUpload",{extend:Client.module.tool.digiTheme.ux.MediaUploadBase,editing:false,buildGui:function(){var g=this,b=[];b.push(g.createSet("uploadFile",{collapsible:false,items:[g.createField("uploadFile",{itemId:"uploadFileField",xtype:"filefield",required:true,hideLabel:true,buttonText:"",buttonConfig:{iconCls:"a3-upload-icon"},listeners:{change:function(q,o){var h=o.split(".").pop().toLowerCase();g.formPanel.down("#commentWrap").show();g.formPanel.down("#geomWrap").show();if(h==="jpg"){g.formPanel.down("#jpgNote").show()}else{g.formPanel.down("#jpgNote").hide()}}}})]}));b.push(g.createSet("mediaView",{title:"",collapsible:false,cls:"a3-media-view",hidden:true,items:[{itemId:"mediaPanel",xtype:"panel",html:"<div></div>"}]}));b.push(g.createSet("details",{itemId:"commentWrap",collapsible:false,items:[g.createField("author",{xtype:"textfield"}),g.createField("comment",{xtype:"textarea",grow:true,growMax:500}),g.createField("isPublic",{xtype:"checkbox"})]}),g.createField("tags",{xtype:"mediatags"}),g.createSet("the_geom",{itemId:"geomWrap",collapsible:false,items:[g.createField("the_geom",{xtype:"pointpicker",selectInMap:true,hideOnPick:false,emptyText:g.lang.getString("no_location"),map:g.map,srid:g.srid,fieldLabel:null}),{xtype:"box",cls:"a3-note",itemId:"jpgNote",html:g.lang.getString("jpgNote"),hidden:true}]}));g.fieldLang=g.lang;g.view=g.createForm({itemId:"uploadForm",cls:"a3-form a3-edit-form a3-content-alternate",items:b});g.view.on("deactivate",function(){g.getItem("the_geom").deactivate()})},onSave:function(){var A=this,g=A.getForm(),w=A.getItem("uploadFile"),b=w&&w.getValue(),o=w&&w.getEl(),D=o&&Ext.getDom(o).getElementsByClassName("x-form-file-input"),q=D&&D[0]&&D[0].files[0],B=-1,z;if(A.editing){A.onUpdate();return}if(!A.uuid&&!q){return}A.mask();var h=g.getRecord();var C=g.getFieldValues();if(h){z=Ext.Object.merge(h.getData(),C)}else{z=C}if(z.author||z.tags){z.data=JSON.stringify({author:z.author,tags:z.tags});delete z.author;delete z.tags}Adaptive.utils.Config.updateConfig(z,"isPublic",z.isPublic);delete z.isPublic;
1if(q){if(b){if((B=b.lastIndexOf("/"))!=-1){b=b.substring(B+1)}if((B=b.lastIndexOf("\\"))!=-1){b=b.substring(B+1)}}z.name=b;z.mime=q.type;z.file_size=q.size}z.the_geom=z.the_geom||null;Ext.applyIf(z,A.data);z.owner_uuid=A.owner_uuid;z.parent_object_uuid=A.parent_object_uuid;z.parent_object_type=A.parent_object_type;A.saveRecord(z);A.view.down("#btnSave").disable()},onUpdate:function(){var b=this,g=b.getData();b.mask();g.data=JSON.stringify(Object.assign((g.data?JSON.parse(g.data):{}),{author:g.author,tags:g.tags}));g.the_geom=g.the_geom||null;Adaptive.utils.Config.updateConfig(g,"isPublic",g.isPublic);b.updateRecord(g);b.view.down("#btnSave").disable()},onCancel:function(){var b=this;if(b.view.isDirty()){Ext.MessageBox.confirm(b.lang.getString("cancelUploadHeader"),b.editing?b.lang.getString("cancelUpdateBody"):b.lang.getString("cancelUploadBody"),function(g){if(g==="yes"){b.fireEvent("navigateBack");b.clearForm();b.onValidityChange(b.getForm().isValid());b.showUploadField()}})}else{b.fireEvent("navigateBack");b.clearForm();b.onValidityChange(b.getForm().isValid());b.showUploadField()}},mediaUploaded:function(){var b=this;b.unmask();b.clearForm();b.onValidityChange(b.getForm().isValid());b.fireEvent("mediaUploaded");b.fireEvent("navigateBack")},saveRecord:function(g){var b=this;Ext.Ajax.request({url:b.serviceUrl+"Create",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:g,extraParams:[]}),success:Ext.bind(b.onSuccess,b),failure:Ext.bind(b.onError,b)})},updateRecord:function(g){var b=this;Ext.Ajax.request({url:b.serviceUrl+"update",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:g,extraParams:[]}),success:Ext.bind(b.onUpdateSuccess,b),failure:Ext.bind(b.onUpdateError,b)})},onUpdateSuccess:function(b){var g=this,b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){g.unmask();g.clearForm();g.onValidityChange(g.getForm().isValid());g.editing=false;g.fireEvent("navigateBack");return}g.onUpdateError()},onUpdateError:function(){var b=this;Ext.Msg.show({title:b.lang.getString("updateMediaErrorHeader"),msg:b.lang.getString("updateMediaErrorBody")});b.unmask();b.view.down("#btnSave").enable()},onSuccess:function(b){var h=this,b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){var g=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"uuid");h.onCreated(g)}else{h.onError()}},setParent:function(g,b){var h=this;h.parent_object_uuid=g;h.owner_uuid=b},loadRecord:function(g,b){var h=this;h.editing=b;if(b){h.hideUploadField()}h.getForm().loadRecord(g);if(g.get("uuid")){h.loadImage(g)}},loadImage:function(b){var h=this,g=h.view.down("#mediaPanel"),o=GeoMind.utils.SessionManager.ss.sessionId;g.update('<div class="thumb {[this.getMediaClass(values.mime)]} thumb-no-pointer"><img class="thumb-img" src="'+h.imageUrl+b.get("uuid")+"&gm_session_id="+o+'"></div>')},getMediaClass:function(b){if(b&&b.indexOf("video/")==0){return"thumb-video"}if(b&&b.indexOf("image/")==0){return"thumb-image"}return""},hideMediaView:function(){var b=this,g=b.view.down("#mediaView");g.hide()},showMediaView:function(){var b=this,g=b.view.down("#mediaView");g.show()},showUploadField:function(){var h=this,g=h.view.down("#uploadFile"),b=h.view.down("#uploadFileField");g.enable();g.show();b.allowBlank=false;h.onValidityChange(h.getForm().isValid());h.hideMediaView()},hideUploadField:function(){var h=this,g=h.view.down("#uploadFile"),b=h.view.down("#uploadFileField");g.hide();g.disable();b.allowBlank=true;h.onValidityChange(h.getForm().isValid());h.showMediaView()},clearForm:function(){var b=this;b.getForm().reset();b.editing=false;b.showUploadField()}});Ext.define("Client.module.tool.digiTheme.model.Media",{extend:GeoMind.data.model.Base,fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"owner_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"parent_object_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"the_geom",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"file_size",type:"integer",defaultValue:null,useNull:true},{name:"file_complete",type:"boolean",defaultValue:false},{name:"mime",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"comment",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"create_date",type:"date",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixD
1ate(b)}},{name:"create_time",type:"date",useNull:true,convert:function(b,g){return g.data.create_date}},{name:"date_taken",type:"date",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"data",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"author",type:"string",defaultValue:null,useNull:true,mapping:"data",convert:function(h,o){var g=GeoMind.utils.String.fixNullString(h);if(g){try{g=JSON.parse(g);return g.author||null}catch(b){console.warn("Failed to parse media data object")}}}},{name:"tags",type:"string",defaultValue:null,useNull:true,mapping:"data",convert:function(h,o){var g=GeoMind.utils.String.fixNullString(h);if(g){try{g=JSON.parse(g);return g.tags||null}catch(b){console.warn("Failed to parse media data object")}}}},{name:"isPublic",type:"boolean",defaultValue:false,mapping:"config",convert:function(g,h){if(h){try{return Adaptive.utils.Config.getBooleanConfig(h,"isPublic")}catch(b){console.warn("Failed to parse media data object")}}}}],constructor:function(){this.callParent(arguments);this.data.is_active=true}});Ext.define("Client.module.tool.digiTheme.plugin.Media",{extend:Client.module.Generic,internal_name:"av_digi_theme_media",serviceUrl:"WebServices/generic/Media.asmx/",init:function(){var g=this,b=[];g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.lang.DigiTheme");g.mediaStore=Ext.create("GeoMind.data.store.DataView",{model:"Client.module.tool.digiTheme.model.Media",serviceUrl:g.serviceUrl,serviceMethods:{read:"Read"},pageSize:0,sorters:[{sorterFn:function(q,o){var h=function(z){var w=z.get("mime")||"";if(w.indexOf("image")>-1){return 1}else{if(w.indexOf("video")>-1){return 2}else{return 3}}};rank1=h(q),rank2=h(o);if(rank1===rank2){return 0}return rank1<rank2?-1:1}},{property:"create_date",direction:"DESC"}]});g.mediaPage=Ext.create("Client.module.tool.digiTheme.ux.Media",{mediaStore:g.mediaStore,owner_uuid:g.owner_uuid,map:g.map,mapContainer:g.mapContainer,headerText:g.theme_data&&g.theme_data.name});b.push(g.mediaPage);g.uploadMedia=Ext.create("Client.module.tool.digiTheme.ux.MediaUpload",{map:g.map,serviceUrl:g.serviceUrl,owner_uuid:g.owner_uuid,parent_object_uuid:g.parent_object_uuid,parent_object_type:"digi_theme"});b.push(g.uploadMedia.view);g.mediaPage.mon(g.mediaPage,"cancel",function(){if(g.parentController.isModulePresent("av_digi_theme_form")){Client.AppLogic.dispatchEvent("digiRecordSelected",{record:g.record,theme_data:g.theme_data,userCanEditTheme:g.userCanEditTheme})}else{delete g.record;g.fireEvent("cancel")}},g);g.mediaPage.mon(g.mediaPage,"mediaUpload",function(){g.uploadMedia.loadRecord(Ext.create("Client.module.tool.digiTheme.model.Media"));g.fireEvent("setActiveItem",g.uploadMedia.view)},g);g.mediaPage.mon(g.mediaPage,"deleteMedia",g.deleteMedia,g);g.mediaPage.mon(g.mediaPage,"deactivate",function(){g.mediaPage.deactivate()},g);g.uploadMedia.mon(g.uploadMedia,"navigateBack",function(){g.fireEvent("setActiveItem",g.mediaPage);g.loadMedia()},g);g.uploadMedia.mon(g.uploadMedia,"mediaUploaded",function(){if(g.record){g.record.set("media_files",(g.record.get("media_files")||0)+1);g.record.commit()}},g);g.mediaPage.mon(g.mediaPage,"mediaEditForm",function(h){g.uploadMedia.loadRecord(h,true);g.fireEvent("setActiveItem",g.uploadMedia.view)},g);g.uploadMedia.mon(g.uploadMedia,"mediaUpdated",function(){g.mediaStore.load()});return b},activate:function(){if(this.mediaPage){this.mediaPage.addLayer()}this.active=true},deactivate:function(){if(this.mediaPage){this.mediaPage.removeLayer()}this.active=false},_setActive:function(g){if(g){return}var b=this;if(b.mediaPage){b.mediaPage.destroy();delete b.mediaPage}if(b.uploadMedia){b.uploadMedia.destroy();delete b.uploadMedia}},_onGridItemViewMedia:function(h){var g=this,o=h.data.record,b=o.get("uuid"),q=o.get("_version_id");g.isEditable=h.data.isEditable;g.userCanEditTheme=h.data.userCanEditTheme;g.theme_data=h.data.theme_data;if(g.mediaPage){g.mediaPage.headerText=g.theme_data.name}if(b!=g.owner_uuid||q!=g.versionId){g.owner_uuid=b;g.versionId=q;g.record=o;g.parent_object_uuid=g.theme_data.theme_uuid;if(g.uploadMedia){g.uploadMedia.setParent(g.parent_object_uuid,g.owner_uuid)}}if(!g.active){g.fireEvent("switchTool")}g.loadMedia(h.data.record.get("_version_id"));g.activateMediaCard()},loadMedia:function(g){var b=this;if(b.owner_uuid){b.mediaStore.addXtraParam("owner_uuid",b.owner_uuid)}Adaptive.data.proxy.Crud.setFilter(b.mediaStore,{greedy:true,filterColumns:[{name:"file_complete",value:true,netType:"bool",comparisonOperator:"=",logicalOperator:"AN
1D"}]});b.mediaStore.addXtraParam("historical",g);b.mediaStore.addXtraParam("parent_object_type","digi_theme");b.mediaStore.addXtraParam("parent_object_uuid",b.parent_object_uuid);b.mediaStore.load()},activateMediaCard:function(){var b=this;b.fireEvent("setActiveItem",b.mediaPage);b.mediaPage.toggleEditable(b.isEditable,b.userCanEditTheme)},deleteMedia:function(g){var b=this;Ext.MessageBox.confirm(b.lang.getString("deleteMediaHeader"),b.lang.getString("deleteMediaBody"),function(h){if(h==="yes"){Ext.Ajax.request({url:b.serviceUrl+"Destroy",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({uuid:g,extraParams:[]}),success:Ext.bind(b.deleteMediaSuccess,b),failure:Ext.bind(b.deleteMediaFailure,b)})}})},deleteMediaSuccess:function(b){var g=this,b=GeoMind.utils.Ajax.fixResponse(b);if(!b.success){g.deleteMediaFailure()}else{g.mediaStore.load()}},deleteMediaFailure:function(g){var b=this;Ext.Msg.show({title:b.lang.getString("errorHeader"),msg:b.lang.getString("deleteMediaErrorBody")})},afterMapReset:function(){var b=this;if(b.mediaPage){b.mediaPage.map=b.map}},_onDigiRecordDeleted:function(b){this.handleRecordsDeleted(b.data.theme_data.theme_uuid,[b.data.record.get("id")])},_onDigiRecordsDeleted:function(b){this.handleRecordsDeleted(b.data.theme_data.theme_uuid,b.data.ids)},handleRecordsDeleted:function(b,g){var h=this;if(h.active&&h.theme_data&&h.record&&h.theme_data.theme_uuid==b&&g.indexOf(h.record.get("id"))!==-1){h.fireEvent("cancel")}}});Ext.define("Client.module.tool.digiTheme.DigiTheme",{extend:Client.module.ToolGeneric,internal_name:"av_digi_theme",btnCls:"a3-digi-theme",btnHidden:true,parentController:null,plugins:{},_pluginMap:{media:"Client.module.tool.digiTheme.plugin.Media",form:"Client.module.tool.digiTheme.plugin.Form"},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.lang.DigiTheme");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText")},registerPlugin:function(g){var b=this;b.plugins[g]=Ext.create(b._pluginMap[g],{parentController:b.parentController});b.parentController.registerModule(b.plugins[g]);b.plugins[g].on("cancel",b.cancel,b);b.plugins[g].on("switchTool",b.switchTool,b);b.plugins[g].on("setActiveItem",b.setActiveItem,b);b.plugins[g].on("setHeaderText",b.adviseHeaderChange,b)},unregisterPlugin:function(g){var b=this;b.parentController.unregisterModule(b.plugins[g]);b.plugins[g].un("cancel",b.cancel,b);b.plugins[g].un("switchTool",b.switchTool,b);b.plugins[g].un("setActiveItem",b.setActiveItem,b)},hasPlugin:function(b){return !!this.plugins[b]},buildGui:function(){var q=this,h=[];for(var o in q.plugins){var b=q.plugins[o];if(b.init){var g=b.init();if(Ext.isArray(g)){h=h.concat(g)}else{if(g){h.push(g)}}}}q.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body",layout:"card",items:h})},activate:function(){var h=this;h.callParent(arguments);if(!h.view){h.buildGui()}for(var g in h.plugins){var b=h.plugins[g];if(b.activate){b.activate()}}h.active=true;h.forceDeactivate=false;h.reportEvent("showToolButton",h)},deactivate:function(){var h=this;h.callParent(arguments);for(var g in h.plugins){var b=h.plugins[g];if(b.deactivate){b.deactivate()}}h.active=false},_setActive:function(o){var h=this;h.callParent(arguments);for(var g in h.plugins){var b=h.plugins[g];if(b._setActive){b._setActive(o)}if(!o){h.unregisterPlugin(g)}}if(!o){h.plugins={};if(h.view){h.view.destroy();h.view=null}}},switchTool:function(){var b=this;if(b.active){return}b.reportEvent("switchTools",b)},cancel:function(){var b=this;b.reportEvent("requestToolPanelCollapse",{});b.reportEvent("hideToolButton",b)},setActiveItem:function(b){var g=this;if(g.view&&b){if(!b.isDescendantOf(g.view)){g.view.add(b)}if(g.view.getLayout().getActiveItem()==b||g.view.getLayout().setActiveItem(b)){if(b.headerText){g.adviseHeaderChange(b.headerText)}else{g.adviseHeaderChange(g.headerText)}}}},checkPreventDeactivate:function(){var g=this,b=false;if(!g.forceDeactivate&&g.plugins.form.active&&g.plugins.form.formPage&&g.plugins.form.formPage.isDirty()){b
1=g.plugins.form.formPage.lang.getString("unsavedChangesSwitchToolMsg")}return b},_onBeforeResetApp:function(){var b=this;if(b.active){b.forceDeactivate=true;b.cancel()}}});Ext.define("Client.module.tool.rogalandfk.nscr.articles.lang.Lang",{strings:{header_main:{en:"Articles",nb:"Artikler",nn:"Artikler"},mainBtnText:{en:"Articles",nb:"Artikler",nn:"Artikler"},mainBtnTip:{en:"View articles and stuff",nb:"Se artikler og ting"},btnBackToMain_text:{en:"Back to main page",nb:"Tilbake til hovedsiden",nn:"Tilbake til hovedsiden "},btnBackToMain_tip_text:{en:"Close the article and go back to the main page",nb:"Lukk artikkelen og gå tilbake til hovedsiden",nn:"Lukk artikkelen og gå tilbake til hovedsiden"},articles_help_text:{en:"Show all articles within current map extent. Pan and zoom to show more articles!",nb:"Vise alle artikler for gjeldende kartutsnitt. Panorer og zoom i kartet for å vise flere artikler!"},emptyText:{en:"No articles for current map extent",nb:"Ingen artikler for gjeldende kartutsnitt"}}});Ext.define("Client.module.tool.rogalandfk.nscr.articles.Model",{extend:Ext.data.Model,fields:[{name:"uid"},{name:"title",defaultValue:null,useNull:true},{name:"desc",defaultValue:null,useNull:true},{name:"geom",defaultValue:null,useNull:true},{name:"layerName",defaultValue:null,useNull:true},{name:"layerId",defaultValue:null,useNull:true},{name:"values",defaultValue:null,useNull:true},{name:"category",defaultValue:null,useNull:true},{name:"elementType",defaultValue:null,useNull:true},{name:"html",defaultValue:null,useNull:true}]});Ext.define("Client.module.tool.rogalandfk.nscr.articles.Grid",{extend:Client.module.Generic,mixins:[Adaptive.layer.Highlight],parentController:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.rogalandfk.nscr.articles.lang.Lang");g.buildGui()},buildGui:function(){var b=this;b.store=Ext.create("Ext.data.Store",{model:"Client.module.tool.rogalandfk.nscr.articles.Model",data:[],groupField:"category"});b.grid=Ext.create("Ext.grid.Panel",{flex:1,autoScroll:true,hideHeaders:true,store:b.store,emptyText:b.lang.getString("emptyText"),columns:[{dataIndex:"title",flex:1},{dataIndex:"category",flex:1}],features:[{ftype:"grouping",groupHeaderTpl:"{name}",hideGroupedHeader:true}]});b.grid.mon(b.grid,"itemmouseenter",b.onCellMouseEnter,b);b.grid.mon(b.grid,"itemmouseleave",b.onCellMouseLeave,b);b.grid.mon(b.grid,"cellclick",b.onCellClick,b);b.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[{xtype:"container",html:"<p>"+b.lang.getString("articles_help_text")+"</p>"},b.grid]})},onCellMouseEnter:function(g,b){this.highlightFeature(b.get("geom"))},onCellMouseLeave:function(){this.removeHighlight()},onCellClick:function(z,h,B,A,o){var w=this,q=z.getRecord(o),g=Ext.JSON.decode(q.get("values")).id;var b={evtName:"requestArticleNorthsea",evtInitiatingModule:w,evtSuperInitiatingModule:w,evtBroadcastingController:null,data:{articleId:g,title:q.get("title")}};w.dispatchEvent(b,{confirmationRequired:false});Ext.defer(function(){w.highlightFeature(q.get("geom"))},100)},_onRequestArticleNorthsea:function(h){var g=this,b=h.data.geom;if(b){g.highlightFeature(b)}},doSearch:function(){var z=this,w=z.map.getExtent();var C=new Proj4js.Point(w.left,w.bottom),B=new Proj4js.Point(w.right,w.top),q=z.map.getProjectionObject().getCode(),g="EPSG:4326",b=new Proj4js.Proj(q),A=new Proj4js.Proj(g);if(q!=g){Proj4js.transform(b,A,C);Proj4js.transform(b,A,B)}var h={request:{srsid:"4326",st:"bbox",layers:[z.layer.record.get("id")],start:0,limit:100,bbox:{bottom:C.y,left:C.x,top:B.y,right:B.x}}},o={url:z.search_url,method:"POST",jsonData:h,success:Ext.bind(z.searchCallbackSuccess,z)};if(!z.connection){z.connection=Ext.create("Ext.data.Connection",{cors:Ext.isIE9,disableCachingParam:false})}else{z.connection.abortAll()}if(Ext.isIE9){o.url=Ext.String.urlAppend(o.url,"session="+z.session_id)}else{(o.headers||(o.headers={}))["X-Adaptive-Search-Session"]=z.session_id}z.connection.request(o)},_onSearchSessionConfigured:function(g){var b=this,h=g.data;b.search_url=h.url;b.session_id=h.session_id},searchCallbackSuccess:function(b,h){var g=this,o=[];b=GeoMind.utils.Ajax.fixResponse(b);if(b.success&&Ext.isArray(b.records)){b.records.forEach(function(q){q.category=Ext.decode(q.values).name_uk;o.push(Ext.create("Client.module.tool.rogalandfk.nscr.articles.Model",q))});g.store.loadRecords(o)}},afterMapReset:function(){this.findLayer()},findLayer:function(){var b=this;
1b.map.getLayers().forEach(function(h){if(h.record){var g=Adaptive.utils.Config.getThemeData(h.record);if(g&&g.data&&g.data.nscr_articles){b.layer=h;return}}})},bindMapEvts:function(){var b=this;b.map.events.register("moveend",b,b.doSearch)},unbindMapEvts:function(){var b=this;b.map.events.unregister("moveend",b,b.doSearch)},activate:function(){var g=this,b=false;Ext.each(g.map.events.listeners.moveend,function(h){if(h.func==g.doSearch){b=true;return false}});if(b){return}g.createhighlightLayer();g.bindMapEvts();Ext.defer(function(){g.doSearch();g.layer.setVisibility(true)},100)},deactivate:function(){this.removehighlightLayer();this.unbindMapEvts()}});Ext.define("Client.module.tool.rogalandfk.nscr.articles.Northsea",{extend:Client.module.Generic,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.rogalandfk.nscr.articles.lang.Lang");g.buildGui()},buildGui:function(){var b=this;b.iframe=Ext.create("Ext.container.Container",{layout:"fit",flex:1});b.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[{xtype:"button",cls:"a3-auth-backtomain-btn",text:b.lang.getString("btnBackToMain_text"),tooltip:b.lang.getString("btnBackToMain_tip_text"),tooltipType:"title",listeners:{scope:b,click:b.backToArticles}},b.iframe]})},backToArticles:function(){var b=this,g={evtName:"requestArticleMain",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,data:null};b.dispatchEvent(g,{confirmationRequired:false})},_onRequestArticleNorthsea:function(g){var b=this,h=g.data;b.iframe.removeAll();b.iframe.add([{autoScroll:true,xtype:"box",layout:"fit",autoEl:{tag:"iframe",frameborder:"0",src:"http://northsea-cycle.avinet.no/kdb_api/show_single_article.php?article_id="+h.articleId}}]);b.view.header=h.title},_onSearchResultSelected:function(g){var b=this,h=g.data;if(h.elementType=="nscr_articles"){var o={evtName:"requestArticleNorthsea",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,data:{articleId:Ext.JSON.decode(h.values).id,title:h.title,geom:h.geom}};b.dispatchEvent(o,{confirmationRequired:false})}},_onRequestShowDetailedFeatureInfo:function(h){var g=this,b=h.data.record;if(b.get("elementType")!="nscr_articles"){g.manageEventConfirmation(h);return}var o={evtName:"requestArticleNorthsea",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,data:{articleId:Ext.JSON.decode(b.get("values")).id,title:b.get("title"),geom:b.get("geom")}};g.dispatchEvent(o,{confirmationRequired:false})}});Ext.define("Client.module.tool.rogalandfk.nscr.articles.Articles",{extend:Client.module.ToolGeneric,btnCls:"a3-nscr-articles",name:"Articles",description:"View articles",internal_name:"av_nscr_articles",parentController:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.rogalandfk.nscr.articles.lang.Lang");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("header_main");g.buildGui()},buildGui:function(){var b=this;b.grid=Ext.create("Client.module.tool.rogalandfk.nscr.articles.Grid");b.northsea=Ext.create("Client.module.tool.rogalandfk.nscr.articles.Northsea");b.parentController.registerModule(b.grid);b.parentController.registerModule(b.northsea);b.view=Ext.create("Ext.panel.Panel",{layout:"card",autoScroll:true,cls:"a3-modules-body",items:[b.grid.view,b.northsea.view]})},setHeader:function(){var g=this,b=g.view.getLayout().getActiveItem();g.adviseHeaderChange(b.header||g.lang.getString("header_main"))},_onRequestArticleMain:function(b){this.view.getLayout().setActiveItem(this.grid.view);this.setHeader()},_onRequestArticleNorthsea:function(g){var b=this;b.view.getLayout().setActiveItem(b.northsea.view);b.setHeader();if(!b.active){b.switchTools()}},activate:function(){this.grid.activate()},deactivate:function(){this.grid.deactivate()},switchTools:function(){var b=this;if(b.active){return}var g={evtName:"switchTools",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:b};b.dispatchEvent(g,{confirmationRequired:false})}});Ext.define("Client.module.tool.rogalandfk.nscr.ididit.lang.Lang",{strings:{header_main:{en:"I did it",nb:"Jeg gjorde det",nn:"Eg gjorde det"},mainBtnText:{en:"I did it",nb:"Jeg gjorde det",nn:"Eg gjorde det"},mainBtnTip:{en:"I did it",nb:"Jeg gjorde det",nn:"Eg gjorde det"},btnEditPage:{en:"Edit content",nb:"Rediger innhold",nn:"Rediger innhold"},btnStandardPage:{en:"Back",nb:"Tilbake",nn:"Tilbake"},btnSavePage:{en:"Save",nb:"Lagre",nn:"Lagre"}}});Ext.define("Client.module.tool.rogalandfk.nscr.ididit.Ididit",{extend:Client.module.ToolGeneric,btnCls:"a3-nscr-ididit",name:"I did it",description:"I did it",internal_name:"av_nscr_ididit",isAdmin:true,pageContent:"Sidens innhold",btnSaveContentName:"btnSaveContent",editorPlugins:["preview table fullscreen image"],editorToolbar:["undo redo | format | bold italic | alignleft aligncenter alignright al
1ignjustify | bullist numlist outdent indent | image | table | preview"],parentController:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.rogalandfk.nscr.ididit.lang.Lang");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("header_main")},buildGui:function(){var b=this;b.editorToolbar[0]+=" | "+b.btnSaveContentName;b.standardPage=Ext.create("Ext.container.Container",{html:b.pageContent});b.btnEdit=Ext.create("Ext.button.Button",{text:b.lang.getString("btnEditPage"),listeners:{click:b.onBtnEditClick,scope:b}});b.btnStandard=Ext.create("Ext.button.Button",{text:b.lang.getString("btnStandardPage"),listeners:{click:b.onBtnStandardClick,scope:b}});b.standardView=Ext.create("Ext.form.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[b.btnEdit,b.standardPage]});if(b.isAdmin){b.btnEdit.show()}else{b.btnEdit.hide()}b.editView=Ext.create("Ext.form.Panel",{layout:"vbox",defaults:{height:30,width:"100%",flex:0},autoScroll:true,items:[{xtype:"container",items:[b.btnStandard]},{xtype:"container",flex:1,layout:"fit",items:[{xtype:"tinymce",dataIndex:"tinyEditor",layout:"fit",language:b.getLangCode(b.lang.l.langCode),editorConfig:{plugins:b.editorPlugins,toolbar:b.editorToolbar,setup:function(g){g.addButton(b.btnSaveContentName,{text:b.lang.getString("btnSavePage"),icon:false,onclick:function(){b.onBtnSaveClick(g)}})}},value:b.pageContent}]}]});b.view=Ext.create("Ext.panel.Panel",{cls:"a3-modules-body",layout:"card",items:[b.standardView,b.editView]})},getLangCode:function(b){switch(b){case"nb":return"nb_NO";break;case"nn":return"nb_NO";break;default:return null}},onBtnEditClick:function(){this.adviseHeaderChange(this.getHeader()+"(Edit)");this.switchCards(this.editView)},onBtnStandardClick:function(){this.adviseHeaderChange(this.getHeader());this.standardPage.update(this.pageContent);this.switchCards(this.standardView)},onBtnSaveClick:function(){var b=this.view.query("[dataIndex=tinyEditor]")[0];this.pageContent=b.getValue()},getHeader:function(){return this.lang.getString("header_main")},switchCards:function(b){this.view.getLayout().setActiveItem(b)},activate:function(){var b=this;if(!b.view){b.buildGui()}}});Ext.define("Client.module.tool.toolPage.lang.Lang",{strings:{header_main:{en:"Editable page",nb:"Redigerbar side",nn:"Redigerbar side"},mainBtnText:{en:"Editable page",nb:"Redigerbar side",nn:"Redigerbar side"},mainBtnTip:{en:"Editable page",nb:"Redigerbar side",nn:"Redigerbar side"},btnEditPage:{en:"Edit content",nb:"Rediger innhold",nn:"Rediger innhold"},editTitle:{en:"Edit",nb:"Rediger",nn:"Rediger"},btnCancel:{en:"Back",nb:"Tilbake",nn:"Tilbake"},btnSave:{en:"Save",nb:"Lagre",nn:"Lagre"},notifySaved:{en:"Saved",nb:"Lagret",nn:"Lagra"},imgUploadTitle:{en:"Add image",nb:"Legg til bilde",nn:"Legg til bilde"},imgUploadText:{en:"Please select the image you wish to add",nb:"Vennligst velg bilde som du ønsker å legge til",nn:"Vennligst velg bilde som du ønsker å legge til"},imgUploadBlankText:{en:"img file...",nb:"bildefil...",nn:"bildefil..."},btnAddImage:{en:"Add image",nb:"Legg til bilde",nn:"Legg til bilde"}}});Ext.define("Client.module.tool.toolPage.ToolPage",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],name:"Tool page",description:"Tool page is an editable page",internal_name:"av_toolpage",pageContent:"Default page content",btnImgUploadName:"btnImgUpload",editorPlugins:["preview table fullscreen link image"],editorToolbar:["undo redo | styleselect bold italic | bullist numlist outdent indent | table | preview | link | btnImgUpload"],uploadServiceUrl:"WebServices/generic/ImageUploaderToolPage.ashx",imageServiceUrl:"WebServices/generic/GetThumbnail.ashx",serviceUrl:"WebServices/toolPage/ToolPage.asmx/",isAdmin:null,parentController:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.toolPage.lang.Lang");g.btnText=g.getLang("mainBtnText")||g.lang.getString("mainBtnText");g.btnTip=g.getLang("mainBtnTip")||g.lang.getString("mainBtnTip");g.headerText=g.getLang("header_main")||g.lang.getString("header_main");g.pageid=g.extended_data.pageid;g.glyph=g.extended_data.glyph},buildGui:function(){var b=this;if(!b.pageStore){b.pageStore=Ext.create("Client.module.tool.toolPage.data.store.ToolPage",{});b.pageStore.addListener("load",this.recordLoaded,this);b.pageStore.addListener("write",this.recordSaved,this)}b.loadRecord(b.pageid);b.imgUploadForm=Ext.create("Adaptive.form.upload.Multi",{serviceUrl:b.uploadServiceUrl,uploadMsg:"<p>"+b.lang.getString("imgUploadText")+"</p>",uploadFieldsCfg:[{blankText:b.lang.getString("imgUploadBlankText"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["jpg","png","gif"]}]});b.imgUploadForm.on("fileUploaded",b.onImgFileUploaded,b);b.standardPage=Ext.create("Ext.Component",{cls:"a3-toolpage-content",html:b.pageContent});var g=false;if(b.isAdmin){g={cls:"a3-toolbar",items:["->",{iconCls:"icon-edit",text:b.getFormString("btnEditPage"),listeners:{click:b.onBtnEditClick,scope:b}}]}}b.standardView=Ext.create("Ext.form.Panel",{layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,items:[b.standardPage],tbar:g});b.view=Ext.create("Ext.panel.Panel",{cls:"a3-modules-body",layout:"card",items:[b.standardView]});if(b.isAdmin){b.imgUploadWindow=Ext.create("Ext.window.Window",{closeAction:"hide",defaults:{style:{padding:"2px 10px 2px 10px"},cls:"kystverket-havbase-reportpanel"},modal:true,width:300,height:200,layout:{type:"vbox",align:"stretch"},title:b.lang.getString("imgUploadTitle"),items:[b.imgUploadForm.view]});b.editView=b.createForm({layout:"fit",noScroll:true,items:[{xtype:"tinymce",dataIndex:"tinyEditor",language:b.lang.l.langCode,editorConfig:{plugins:b.editorPlugins,toolbar:b.editorToolbar,setup:function(h){h.addButton(b.btnImgUploadName,{text:b.lang.getString("btnAddImage"),icon:false,onclick:function(){b.imgUploadWindow.show()}})}},value:b.pageContent}]});b.view.add(b.editView)}b.editor=b.view.query("[dataIndex=tinyEditor]")[0]},onImgFileUploaded:function(h){var g=this;if(h.success){var o=h.fileNames[0];var b=h.originalFileNames[0];g.editor.editor.insertContent('<img src="'+g.imageServiceUrl+"?f="+o+'" alt="'+b+'"></img>');g.imgUploadWindow.close()}},getLang:function(b){var g=this,h=g.extended_data.lang;if(!h){return}if(typeof h=="string"||h instanceof String){g.extended_data.lang=Ext.JSON.decode(h)}if(g.extended_data.lang[b]){return g.extended_data.lang[b][g.lang.l.langCode]}else{return null}},onBtnEditClick:function(){var b=this;b.adviseHeaderChange(b.getHeader()+" ("+b.getFormString("editTitle")+")");b.switchCards(b.editView)},onCancel:function(){var b=this;if(b.hasChanged()){Ext.MessageBox.confirm("Innhold endret","Vil du lagre endringene?",function(g){if(g==="yes"){b.saveContent();b.setStandardView()}else{b.setStandardView()}},b)}else{b.setStandardView()}},setStandardView:function(){var b=this;b.adviseHeaderChange(b.getHeader());b.setContent();b.switchCards(b.standardView)},hasChanged:function(){var b=this;
1if(b.noData){return true}else{return(b.editor.getValue()!==b.pageStore.getAt(0).get("content"))}},onSave:function(){var b=this;if(b.hasChanged()){b.saveContent()}else{b.showFormSave()}},saveContent:function(){var b=this;if(b.noData){console.warn("Cant save! No connected page found...")}else{b.pageContent=b.editor.getValue();b.pageStore.getAt(0).set("content",b.pageContent);b.pageStore.sync()}},setContent:function(){var b=this;b.standardPage.update(b.pageContent)},getHeader:function(){return this.lang.getString("header_main")},switchCards:function(b){if(this.editView==b){this.editor.setValue(this.pageContent)}this.view.getLayout().setActiveItem(b)},activate:function(){var b=this;if(!b.view){b.buildGui()}},loadRecord:function(b){this.pageStore.getProxy().extraParams={extraParams:[{key:"id",value:parseInt(b)}],filter:{}};this.pageStore.load()},recordLoaded:function(){var b=this;if(b.pageStore.count()>0){b.pageContent=b.pageStore.getAt(0).get("content")}else{console.warn("Error when loading! Cant find specified page...");b.noData=true}b.setContent()},recordSaved:function(h,g){var b=Ext.JSON.decode(g.response.responseText).d;if(!b.success){console.warn("Error when saving!")}else{this.showFormSave()}},cleanUp:function(h,g){var b=tinymce.editors.length;for(var o=0;o<b;o++){tinymce.editors.pop()}}});Ext.define("Client.module.map.lang.UrlApi",{strings:{btnCloseInfo_text:{en:"Close",nb:"Lukk",nn:"Lukk"},btnCloseInfo_tip_text:{en:"Close info window",nb:"Lukk søkeresultatet",nn:"Lukk søkeresultatet"}},errCodes:{}});Ext.define("Client.mixins.UrlApi",{mixins:[Adaptive.mixins.Dataview],triggeredConfig:null,triggeredData:null,handleUrlApiConfig:function(){var b=this;if(b.urlApiConfig){if(!Ext.isArray(b.urlApiConfig)){b.urlApiConfig=[b.urlApiConfig]}b.urlApiConfig.some(function(h){var g=GeoMind.utils.Url;h.urlParamValue=g.getUrlParam(h.urlParam);if(h.urlParam&&h.urlParamValue){if(g.getUrlParam("zoomchildren")){h.zoomChildren=g.getUrlParam("zoomchildren")==="true"}h.theme_data=Client.AppLogic.getThemeData(h.themeUuid);if(h.theme_data){b.triggeredConfig=h;b.triggeredData=b.triggeredConfig.commandData;b.triggeredData.td={paramValue:h.urlParamValue,theme_uuid:h.themeUuid};b.setFilterAndRead();return true}}})}if(!b.triggeredData&&b.takeCareOfLayersAndCats){b.takeCareOfLayersAndCats()}},setFilterAndRead:function(){var g=this,h=g.triggeredConfig.urlParamValue;if(g.triggeredConfig.netType=="string[]"){h=h.split(",")}if(g.triggeredConfig.netType=="int[]"){h=h.split(",");for(a in h){h[a]=parseInt(h[a],10)}}if(g.triggeredConfig.urlParamValue){var b={filterColumns:[{name:g.triggeredConfig.filterColumn,value:h,comparisonOperator:g.triggeredConfig.comparisonOperator||"=",netType:g.triggeredConfig.netType||"string",logicalOperator:g.triggeredConfig.logicalOperator||"AND"}]};g.read(b)}},read:function(b){var h=this,g="WebServices/client/DataView.asmx/ReadAny",o={request:{theme_uuid:h.triggeredConfig.theme_data.theme_uuid,columns:[h.triggeredConfig.theme_data.id_column,h.triggeredConfig.filterColumn],filter:b}};Ext.Ajax.request({url:g,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},timeout:120000,params:Ext.JSON.encode(o),success:Ext.bind(h.onReadCallbackSuccess,h),failure:Ext.bind(h.onReadCallbackFailure,h)})},onReadCallbackSuccess:function(b,h){var g=this;b=GeoMind.utils.Ajax.fixResponse(b);g.triggeredConfig.selectedGeom=null;if(b.records&&b.records.length>0){g.triggeredConfig.selectedRecord=b.records[0];g.triggeredData.td.selectedRecord=g.triggeredConfig.selectedRecord;g.triggeredData.td.filterColumn=g.triggeredConfig.filterColumn;g.triggeredConfig.zoomChildren=!g.triggeredConfig.selectedRecord.geom_wkt;if(b.records.length==1){g.triggeredConfig.selectedGeom=OpenLayers.Geometry.fromWKT(g.triggeredConfig.selectedRecord.geom_wkt)}else{g.triggeredConfig.selectedGeom=[];b.records.forEach(function(q){if(q.geom_wkt){g.triggeredConfig.selectedGeom.push(OpenLayers.Geometry.fromWKT(q.geom_wkt))}})}}g.takeCareOfLayersAndCats(g.triggeredData);if(g.triggeredConfig.zoomChildren&&g.triggeredConfig.selectedRecord){var o=b.records[0][g.triggeredConfig.theme_data.id_column];g.getChildThemesEnvelope(g.triggeredConfig.themeUuid,o)}else{if(g.triggeredConfig.selectedGeom){g.zoomToGeometry(g.triggeredConfig.selectedGeom)}}},onReadCallbackFailure:function(b,h){var g=this;g.takeCareOfLayersAndCats(g.triggeredData)},onGetEnvelopeSuccess:function(b){var o=this;b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){var h=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"envelope"),g=OpenLayers.Geometry.fromWKT(h);if(g){o.zoomToGeometry(g)}else{if(o.triggeredConfig.selectedGeom){o.zoomToGeometry(o.triggeredConfig.selectedGeom)}}}else{o.onGetEnvelopeFailure()}}});Ext.define("Adaptive.layer.Colored",{addColoredFeature:function(z,o,h,g){var w=this,A;if(w.coloredFeatureLayer==null){w.createColoredFeatureLayer()}if(h){w.coloredFeatureLayer.removeAllFeatures()}if(!z){return}if(z instanceof OpenLayers.Feature){A=z.clone()}else{var q=new OpenLayers.Format.WKT();A=q.read(z)}if(!A){return}var b=w.map.getProjectionObject();o=new OpenLayers.Projection(o||"EPSG:4326");if(o.projCode!=b){A.geometry.transform(o,b)}if(g&&map.getProjectionObject().proj.defData.indexOf("longlat")==-1){A=Adaptive.layer.Layer.simplifyFeature(A)}w.coloredFeatureLayer.addFeatures([A]);return A},removeColoredFeatures:function(g){var b=this;if(!b.coloredFeatureLayer){return}if(g){b.coloredFeatureLayer.removeFeatures(g)}else{b.coloredFeatureLayer.removeAllFeatures()}},redrawColoredLayer:function(){var b=this;if(b.coloredFeatureLayer){b.coloredFeatureLayer.redraw()}},showColoredLayer:function(){var b=this;if(b.coloredFeatureLayer){b.coloredFeatureLayer.setVisibility(true)}},hideColoredLayer:function(){var b=this;if(b.coloredFeatureLayer){b.coloredFeatureLayer.setVisibility(false)}},createColoredFeatureLayer:function(g){var b=this;
1g=g||new OpenLayers.StyleMap(new OpenLayers.Style({strokeWidth:"${getStrokeWidth}",strokeColor:"${getStrokeColor}",strokeOpacity:"${getStrokeOpacity}",pointRadius:"${getPointRadius}",fillOpacity:"${getFillOpacity}",fillColor:"${getColor}",graphicZIndex:2,label:"${getLabel}",labelOutlineColor:"#ffffff",labelOutlineWidth:3,labelOutlineOpacity:0.7,fontColor:"#000000",fontSize:"12px",fontWeight:"600"},{context:{getColor:function(h){return h.attributes.fillColor||h.attributes.color||"#FF9900"},getFillOpacity:function(h){return h.attributes.fillOpacity||h.attributes.opacity||0.7},getStrokeColor:function(h){return h.attributes.strokeColor||h.attributes.color||"#FF9900"},getStrokeOpacity:function(h){return h.attributes.strokeOpacity||h.attributes.opacity||0.7},getStrokeWidth:function(h){return h.attributes.strokeWidth||6},getLabel:function(h){return h.attributes.label||""},getPointRadius:function(h){return h.attributes.pointRadius||7}}}));b.coloredFeatureLayer=new OpenLayers.Layer.Vector(Ext.id()+"_colored",{styleMap:g,rendererOptions:{zIndexing:true},group:b.coloredLayerGroup});b.map.addLayer(b.coloredFeatureLayer)},removeColoredFeatureLayer:function(){var b=this;b.removeColoredFeatures();if(b.coloredFeatureLayer){b.coloredFeatureLayer.destroy()}b.coloredFeatureLayer=null}});Ext.define("Client.mixins.UrlApiDraw",{mixins:[Adaptive.layer.Colored],drawGeom:function(q,o){var h=this,b=GeoMind.utils.Url,g=b.getUrlParam(q||"draw-geom");if(!g){return}if(o){g=o}else{g=Ext.JSON.decode(unescape(g))}if(!g||!g instanceof Array||g.length==0){return}g.forEach(function(w){h.addColoredFeature(w.wkt,"EPSG:"+w.srid)});if(h.coloredFeatureLayer.features.length==1&&h.coloredFeatureLayer.features[0].geometry instanceof OpenLayers.Geometry.Point){setTimeout(function(){h.map.setCenter(new OpenLayers.LonLat(h.coloredFeatureLayer.features[0].geometry.x,h.coloredFeatureLayer.features[0].geometry.y),h.defaultZoomLevel)},20)}else{setTimeout(function(){h.map.zoomToExtent(h.coloredFeatureLayer.getDataExtent())},20)}}});Ext.define("Client.module.map.UrlApi",{extend:Client.module.Generic,mixins:[Client.mixins.UrlApi,Client.mixins.UrlApiDraw],internal_name:"av_url_api",layers:null,cat:null,basemap:null,zoombox:null,zoompoint:null,displayLayer:null,popupWidth:300,popupHeight:100,constructor:function(g){var w=this;Ext.apply(w,g);w.callParent([g]);w.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.lang.UrlApi");var o=GeoMind.utils.Url;function q(A){A=o.getUrlParam(A);return A&&parseInt(A)||null}function b(A){A=o.getUrlParam(A);return A?A.split(",").reduce(function(C,B){B=parseInt(B);if(!isNaN(B)){C.push(B)}return C},[]):[]}w.basemap=q("basemap");w.cat=b("cat");w.layers=b("themes").map(function(A){return{id:A,isTheme:true}});w.layers=w.layers.concat(b("digithemes").map(function(A){return{id:A,isDigiTheme:true}}));var z=(o.getUrlParam("zoombox")||"").split(",");if(z.length==5){z={l:parseFloat(z[0]),b:parseFloat(z[1]),r:parseFloat(z[2]),t:parseFloat(z[3]),epsg:parseInt(z[4])};if(!(isNaN(z.l)||isNaN(z.b)||isNaN(z.r)||isNaN(z.t)||isNaN(z.epsg))){this.zoombox=z}}var h=(o.getUrlParam("zoompoint")||"").split(",");if(h.length>=4){h={x:parseFloat(h[0]),y:parseFloat(h[1]),epsg:parseInt(h[2]),scale:parseFloat(h[3]),msg:h.length>4?h.slice(4).join(","):null};if(!(isNaN(h.x)||isNaN(h.y)||isNaN(h.epsg)||isNaN(h.scale))){this.zoompoint=h}}},applyUrlCommands:function(){this.handleUrlApiConfig();this.drawGeom();if(this.zoompoint){this.zoomToPoint()}else{if(this.zoombox){this.zoomToBbox()}}},takeCareOfLayersAndCats:function(h){var b=this,g=Ext.merge({activeBaseLayerId:b.basemap,activeCategoryId:b.cat.length>0?b.cat:null,visibleThemes:b.layers.length>0?b.layers:null},h);b.reportEvent("urlApiLayerCommand",g)},zoomToBbox:function(){var h=this;if(!h.zoombox){return}var b=h.getProjection(h.zoombox.epsg);if(!b){return}var g=new OpenLayers.Bounds(h.zoombox.l,h.zoombox.b,h.zoombox.r,h.zoombox.t);if(b.projCode!=h.map.projCode){g.transform(b,h.map.getProjectionObject())}setTimeout(function(){h.map.zoomToExtent(g)},20)},zoomToPoint:function(){var g=this;if(!g.zoompoint){return}var b=g.getProjection(g.zoompoint.epsg);if(!b){return}var h=new OpenLayers.LonLat(g.zoompoint.x,g.zoompoint.y);if(b.projCode!=g.map.projCode){h.transform(b,g.map.getProjectionObject())}setTimeout(function(){g.map.setCenter(h,g.zoompoint.scale)},20);if(g.zoompoint.msg!="hidepoint"){setTimeout(function(){g.displayPointMsg(h,Ext.urlDecode("msg="+g.zoompoint.msg).msg)}
1,250)}},displayPointMsg:function(o,q){var h=this,g=h.map.getLayerPxFromLonLat(o),b=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(o.lon,o.lat),null,{externalGraphic:"resx/icons/client/pin.png",graphicYOffset:-32,graphicWidth:32,graphicHeight:32});h.createDisplayLayer();h.displayLayer.addFeatures([b]);if(!h.popup&&q!="null"){h.popup=Ext.create("Ext.window.Window",{header:false,closable:false,width:h.popupWidth,height:h.popupHeight,anchorPosition:"auto",autoScroll:true,html:q,padding:5,buttons:[{xtype:"button",cls:"a3-info-close-btn",text:h.lang.getString("btnCloseInfo_text"),tooltip:h.lang.getString("btnCloseInfo_tip_text"),tooltipType:"title",listeners:{scope:h,click:h.closePopup}}]});h.popup.showAt(h.mapContainer.getWidth()/2+50,h.mapContainer.getHeight()/2+50)}},closePopup:function(){this.popup.destroy();delete this.popup;this.displayLayer.removeAllFeatures()},getProjection:function(b){var g=null;if(Proj4js.defs["EPSG:"+b]!=undefined){g=new OpenLayers.Projection("EPSG:"+b)}return g},createDisplayLayer:function(){var b=this;b.displayLayer=new OpenLayers.Layer.Vector("urlapi_display_layer",{group:140});b.map.addLayers([b.displayLayer])},removeDisplayLayer:function(){var b=this;if(b.displayLayer){b.map.removeLayer(b.displayLayer);b.displayLayer.destroy()}},beforeMapReset:function(b){this.removeDisplayLayer()},_onSharedSettingsApplied:function(b){this.applyUrlCommands()}});Ext.define("Client.module.map.info.tools.lang.Generic",{strings:{error_title:{en:"Communication Error",nb:"Kommunikasjonsfeil"},error_data:{en:"Something went wrong while fetching data",nb:"Noe gikk galt under henting av data"}},errCodes:{}});Ext.define("Client.module.map.info.tools.Generic",{extend:Client.module.Generic,constructor:function(b){var g=this;g.callParent(arguments);g.genericLang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Generic");g.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat")},hidePopup:function(){var b=this;if(b.infoWindow){b.infoWindow.hide()}},register:function(){var b=this,g={evtName:"registerMapInfoTool",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null};if(!b.view){b.view=Ext.create("Ext.button.Button",b.viewConfig)}g.data=b;b.dispatchEvent(g,{confirmationRequired:false})},unregister:function(){var b=this,g={evtName:"unregisterMapInfoTool",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:b};b.dispatchEvent(g,{confirmationRequired:false})},setInfoCoords:function(g){var b=this;b.lonlat=g.lonlat;b.point=g.local;b.display=g.display;b.displayProjection=g.displayProjection},setPointInfo:function(b){},setPlaceName:function(b){var g=this;if(b){g.placename=b.placename+" ("+b.placeType+"), "+(b.countryCode=="NO"?b.municipality:b.country)}else{g.placename=""}},failed:function(){var b=this;Ext.Msg.show({title:b.genericLang.getString("error_title"),msg:b.genericLang.getString("error_data")});if(b.dataPanel){b.dataPanel.setLoading(false)}}});Ext.define("Client.module.map.info.tools.lang.Lovdata",{strings:{title:{en:"Lovdata",nb:"Lovdata",nn:"Lovdata"},no_lovdata_found:{en:"No data found for this location",nb:"Ingen lovdata funnet for denne lokasjonen"}},errCodes:{}});Ext.define("Client.module.map.info.tools.Lovdata",{extend:Client.module.map.info.tools.Generic,targetProjCode:"EPSG:32633",constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Lovdata");Ext.define("Lovdata",{extend:Ext.data.Model,fields:[{name:"legalArea",type:"string"},{name:"ministry",type:"string"},{name:"shortTitle",type:"string"},{name:"title",type:"string"},{name:"url",type:"string"}]});g.lovdataStore=Ext.create("Ext.data.Store",{model:"Lovdata",proxy:{type:"memory",reader:{type:"xml",model:"Lovdata",record:"geoResultDocuments",root:"geoResultList"}}});g.dataPanel=Ext.create("Ext.view.View",{store:g.lovdataStore,cls:"a3-lovdata-view",tpl:'<ul><tpl for="."><li><a href="{url}" target="_blank">{title}</a><br><small>{legalArea}</small></li></tpl></ul>',itemSelector:"p",overflowX:"hidden",overflowY:"scroll"});g.noDataMessage=Ext.create("Ext.Component",{html:"<p>"+g.lang.getString("no_lovdata_found")+"</p>",hidden:true});g.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",constrain:true,width:500,minWidth:300,height:500,layout:"fit",title:g.lang.getString("title"),items:[g.dataPanel,g.noDataMessage]});g.viewConfig={cls:"a3-legal",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:function(){g.infoWindow.show();g.getLovdata()}}}},getLovdata:function(){var g=this;g.noDataMessage.hide();g.lovdataStore.removeAll();g.dataPanel.show();g.dataPanel.setLoading(true);var b=Adaptive.utils.Proj.transformPoint(g.point,g.map.getProjection(),"EPSG:32633");Ext.Ajax.request({url:"proxies/xLovdataProxy.ashx",method:"GET",disableCaching:false,params:{x:b.x.toFixed(0),y:b.y.toFixed(0),epsg:"32633"},callback:function(o,z,h){if(z){var w=h.responseXML;var q=Ext.DomQuery.selectNode("geoResultList/numberOfHits",w);if(q.innerHTML!=0){g.lovdataStore.loadRawData(w)}else{g.dataPanel.hide();g.noDataMessage.show()}g.dataPanel.setLoading(false)}else{g.failed()}}});g.infoWindow.show()}});Ext.define("Client.module.map.info.tools.lang.SunTimes",{strings:{title:{en:"Sunset/sunrise",nb:"Solnedgang/soloppgang",nn:"Solnedgang/soloppgang"}
1,btnCloseInfo_text:{en:"Close",nb:"Lukk",nn:"Lukk"},btnCloseInfo_tip_text:{en:"Close info window",nb:"Lukk søkeresultatet",nn:"Lukk søkeresultatet"},Sunrise:{en:"Sunrise",nb:"Soloppgang",nn:"Soloppgang"},Sunset:{en:"Sunset",nb:"Solnedgang",nn:"Solnedgang"},Today:{en:"Today",nb:"I dag",nn:"I dag"},Date:{en:"Pick date",nb:"Velg dato",nn:"Vel dato"},Sun:{en:"Sun",nb:"Sol",nn:"Sol"},Moon:{en:"Moon",nb:"Måne",nn:"Måne"},Moon_phase:{en:"Moon Phase",nb:"Månefase",nn:"Månefase"},Moonrise:{en:"Moonrise",nb:"Måneoppgang",nn:"Måneoppgang"},Moonset:{en:"Moonset",nb:"Månenedgang",nn:"Månenedgang"},Midnight_sun:{en:"Midnight sun",nb:"Midnattssol",nn:"Midnattssol"},Polar_night:{en:"Polar night",nb:"Polarnatt",nn:"Polarnatt"},Yes:{en:"Yes",nb:"Ja",nn:"Ja"},No:{en:"No",nb:"Nei",nn:"Nei"},New_moon:{en:"New moon",nb:"Ny måne",nn:"Ny måne"},Waxing_crescent:{en:"Waxing crescent",nb:"Voksende halvmåne",nn:"Voksende halvmåne"},First_quarter:{en:"First quarter",nb:"Første kvartal",nn:"Første kvartal"},Waxing_gibbous:{en:"Waxing gibbous",nb:"Voksende fullmåne",nn:"Voksende fullmåne"},Full_moon:{en:"Full moon",nb:"Full måne",nn:"Full måne"},Third_quarter:{en:"Third quarter",nb:"Tredje kvartal",nn:"Tredje kvartal"},Waning_crescent:{en:"Waning crescent",nb:"Avtagende halvmåne",nn:"Avtagende halvmåne"},Waning_gibbous:{en:"Waning gibbous",nb:"Avtagende fullmåne",nn:"Avtagende fullmåne"},CivilTwilightBegin:{en:"Civil dawn",nb:"Sivil demring"},CivilTwilightEnd:{en:"Civil dusk",nb:"Sivil skumring"},NauticalTwilightBegin:{en:"Nautical dawn",nb:"Nautisk demring"},NauticalTwilightEnd:{en:"Nautical dusk",nb:"Nautisk skumring"},Attribution:{en:'Data sources: <a href="http://www.yr.no/">yr.no</a> and <a href="http://sunrise-sunset.org/">Sunrise Sunset</a>',nb:'Datakilder: <a href="http://www.yr.no/">yr.no</a> og <a href="http://sunrise-sunset.org/">Sunrise Sunset</a>'}},errCodes:{}});Ext.define("Client.module.map.info.tools.SunTimes",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var h=this;Ext.apply(h,b);h.callParent([b]);h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.SunTimes");h.dateFormat=h.formatDate.getString("date_format");h.timeFormat=h.formatDate.getString("time_format");Ext.define("sunTimesModel",{extend:Ext.data.Model,fields:[{name:"date",type:"string"},{name:"sunrise",type:"string"},{name:"sunset",type:"string"},{name:"solarmidnight",type:"boolean"},{name:"solarnoon",type:"boolean"},{name:"moonphase",type:"number"},{name:"moonrise",type:"string"},{name:"moonset",type:"string"},{name:"civil_twilight_begin",type:"string"},{name:"civil_twilight_end",type:"string"},{name:"nautical_twilight_begin",type:"string"},{name:"nautical_twilight_end",type:"string"}]});h.sunTimesStore=Ext.create("Ext.data.Store",{model:"sunTimesModel",proxy:{type:"memory",reader:{type:"json",root:"properties"}},listeners:{refresh:function(o){},load:function(q,o){},scope:h}});var g=new Ext.form.field.Date({allowBlank:false,labelAlign:"top",value:new Date(),maxWidth:200,format:h.dateFormat});g.on("change",function(){h.selectedDate=new Date(g.getValue());h.getNauticalTwilight(h.selectedDate);h.getMoonTimes(h.selectedDate);h.getSunTimes(h.selectedDate)});h.dataPanel=Ext.create("Ext.view.View",{store:h.sunTimesStore,flex:1,cls:"a3-suntimes",tpl:new Ext.XTemplate('<tpl for=".">','<div class="sunDetails">','<h4><img src="https://symbol.yr.no/grafikk/sym/b38/01d.png">'+h.lang.getString("Sun")+"</h4>","<dl>","<dt>"+h.lang.getString("Sunrise")+"</dt><dd>{[this.getDate(values.sunrise)]}</dd>","<dt>"+h.lang.getString("Sunset")+"</dt><dd>{[this.getDate(values.sunset)]}</dd>","<dt>"+h.lang.getString("CivilTwilightBegin")+"</dt><dd>{[this.getDateNauticalTwilight(values.civil_twilight_begin)]}</dd>","<dt>"+h.lang.getString("CivilTwilightEnd")+"</dt><dd>{[this.getDateNauticalTwilight(values.civil_twilight_end)]}</dd>","<dt>"+h.lang.getString("NauticalTwilightBegin")+"</dt><dd>{[this.getDateNauticalTwilight(values.nautical_twilight_begin)]}</dd>","<dt>"+h.lang.getString("NauticalTwilightEnd")+"</dt><dd>{[this.getDateNauticalTwilight(values.nautical_twilight_end)]}</dd>","<dt>"+h.lang.getString("Midnight_sun")+"</dt><dd>{[this.isTrue(values.solarmidnight)]}</dd>","<dt>"+h.lang.getString("Polar_night")+"</dt><dd>{[this.isTrue(!values.solarnoon)]}</dd>","</dl>","</div>
1",'<div class="moonDetails">','<h4><img src="https://symbol.yr.no/grafikk/sym/b38/mf/01n.50.png">'+h.lang.getString("Moon")+"</h4>","<dl>","<dt>"+h.lang.getString("Moonrise")+"</dt><dd>{[this.getDate(values.moonrise)]}</dd>","<dt>"+h.lang.getString("Moonset")+"</dt><dd>{[this.getDate(values.moonset)]}</dd>","<dt>"+h.lang.getString("Moon_phase")+'</dt><dd title="{[values.moonphase.toFixed(1)]}">{[this.getPhase(values.moonphase)]}</dd>',"</dl>","</div>","</tpl>",{isSelectedDate:function(o){return o==Ext.Date.format(h.selectedDate,"Y-m-d")},isTrue:function(o){return o?h.lang.getString("Yes"):h.lang.getString("No")},getPhase:function(o){var q;if(o<=3.6||o>=356.4){q="New_moon"}else{if(o<86.4){q="Waxing_crescent"}else{if(o<=93.6){q="First_quarter"}else{if(o<176.4){q="Waxing_gibbous"}else{if(o<=183.6){q="Full_moon"}else{if(o<266.4){q="Waning_gibbous"}else{if(o<273.6){q="Third_quarter"}else{q="Waning_crescent"}}}}}}}return h.lang.getString(q)},getDate:function(o){var o=new Date(o);if(!isNaN(Ext.Date.format(o,"H"))){return Ext.Date.format(o,h.timeFormat)}else{return"- : -"}},getDateNauticalTwilight:function(o){var o=new Date(o);if(o.getTime()<10000){return"- : -"}else{if(!isNaN(Ext.Date.format(o,"H"))){return Ext.Date.format(o,h.timeFormat)}else{return"N/A"}}}}),itemSelector:"p",overflowY:"auto",overflowX:"hidden"});h.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",resizable:false,constrain:true,width:500,height:380,title:h.lang.getString("title"),cls:"a3-modules-body",layout:"fit",items:[h.dataPanel],buttons:[g,{xtype:"tbfill"},{xtype:"label",html:h.lang.getString("Attribution")}]});h.viewConfig={cls:"a3-sunrise",tooltip:h.lang.getString("title"),tooltipType:"title",listeners:{scope:h,click:function(){h.infoWindow.showWithin(500);h.selectedDate=new Date();h.getNauticalTwilight(h.selectedDate);h.getMoonTimes(h.selectedDate);h.getSunTimes(h.selectedDate)}}}},getSunTimes:function(b){var g=this,o=b.getTimezoneOffset(),h=(o>0?"-":"+")+Ext.util.Format.leftPad(Math.floor(Math.abs(o)/60),2,"0")+":"+Ext.util.Format.leftPad(o%60,2,"0");g.sunrise=null;g.sunset=null;g.solarmidnight=null;g.solarnoon=null;g.sunTimesConn=new Ext.data.Connection({useDefaultXhrHeader:false,cors:true,autoAbort:true});g.dataPanel.setLoading(true);g.sunTimesConn.request({url:"proxies/xApiMetNoProxy.ashx",method:"GET",disableCaching:false,params:{url:"/weatherapi/sunrise/3.0/sun",lat:g.lonlat.lat,lon:g.lonlat.lon,date:Ext.Date.format(b,"Y-m-d"),offset:h},callback:function(w,B,q){if(B){var A=Ext.JSON.decode(q.responseText),z=A&&A.properties;if(q.status!=200){return}g.sunrise=z.sunrise.time;g.sunset=z.sunset.time;g.solarmidnight=z.solarmidnight.visible;g.solarnoon=z.solarnoon.visible;if(g.nauticalTwilightLoaded){g.appendNauticalTwilight()}if(g.moonTimesLoaded){g.appendMoonTimes()}if(!g.sunTimesStore.isLoading()){g.appendSunTimes()}g.dataPanel.setLoading(false)}else{g.failed();g.dataPanel.setLoading(false)}}})},appendSunTimes:function(){var g=this,b=g.sunTimesStore.data.getAt(0);if(!b){g.sunTimesStore.loadData([{sunrise:g.sunrise,sunset:g.sunset,solarmidnight:g.solarmidnight,solarnoon:g.solarnoon}]);g.sunTimesLoaded=true}else{b.set("sunrise",g.sunrise);b.set("sunset",g.sunset);b.set("solarmidnight",g.solarmidnight);b.set("solarnoon",g.solarnoon)}g.dataPanel.refreshView()},getMoonTimes:function(b){var g=this,o=b.getTimezoneOffset(),h=(o>0?"-":"+")+Ext.util.Format.leftPad(Math.floor(Math.abs(o)/60),2,"0")+":"+Ext.util.Format.leftPad(o%60,2,"0");g.moonTimesLoaded=false;g.moonrise=null;g.moonset=null;g.moonphase=null;g.moonTimesConn=new Ext.data.Connection({useDefaultXhrHeader:false,cors:true,autoAbort:true});g.moonTimesConn.request({url:"proxies/xApiMetNoProxy.ashx",method:"GET",disableCaching:false,params:{url:"/weatherapi/sunrise/3.0/moon",lat:g.lonlat.lat,lon:g.lonlat.lon,date:Ext.Date.format(b,"Y-m-d"),offset:h},callback:function(w,B,q){if(B){var A=Ext.JSON.decode(q.responseText),z=A&&A.properties;if(q.status!=200){return}g.moonrise=z.moonrise.time;g.moonset=z.moonset.time;g.moonphase=z.moonphase;if(!g.sunTimesStore.isLoading()){g.appendMoonTimes()}}}})},appendMoonTimes:function(){var g=this,b=g.sunTimesStore.data.getAt(0);if(!b){g.sunTimesStore.loadData([{moonrise:g.moonrise,moonset:g.moonset,moonphase:g.moonphase}]);g.moonTimesLoaded=true}else{b.set("moonrise",g.moonrise);b.set("moonset",g.moonset);b.set("moonphase",g.moonphase)}g.dataPanel.refreshView()},getNauticalTwilight:function(b){var g=this;g.nauticalTwilightLoaded=false;g.civil_twilight_begin=null;g.civil_twilight_end=null;g.nautical_twilight_begin=null;g.nautical_twilight_end=null;
1g.nauticalTwilightConn=new Ext.data.Connection({useDefaultXhrHeader:false,cors:true,autoAbort:true});g.nauticalTwilightConn.request({url:"proxies/xSunriseSunset.ashx?lat="+g.lonlat.lat+"&lng="+g.lonlat.lon+"&date="+Ext.Date.format(b,"Y-m-d")+"&formatted=0",callback:function(o,z,h){if(z){var w=Ext.JSON.decode(h.responseText),q=w&&w.results;if(w.status!="OK"){return}g.civil_twilight_begin=q.civil_twilight_begin;g.civil_twilight_end=q.civil_twilight_end;g.nautical_twilight_begin=q.nautical_twilight_begin;g.nautical_twilight_end=q.nautical_twilight_end;if(!g.sunTimesStore.isLoading()){g.appendNauticalTwilight()}}}})},appendNauticalTwilight:function(){var g=this,b=g.sunTimesStore.data.getAt(0);if(!b){g.sunTimesStore.loadData([{civil_twilight_begin:g.civil_twilight_begin,civil_twilight_end:g.civil_twilight_end,nautical_twilight_begin:g.nautical_twilight_begin,nautical_twilight_end:g.nautical_twilight_end}]);g.nauticalTwilightLoaded=true}else{b.set("civil_twilight_begin",g.civil_twilight_begin);b.set("civil_twilight_end",g.civil_twilight_end);b.set("nautical_twilight_begin",g.nautical_twilight_begin);b.set("nautical_twilight_end",g.nautical_twilight_end)}g.dataPanel.refreshView()}});Ext.define("Client.module.map.info.tools.lang.Weather",{strings:{title:{en:"Weather Forecast",nb:"Værmelding",nn:"Vermelding"},today:{en:"Today",nb:"I dag",nn:"I dag"},tomorrow:{en:"Tomorrow",nb:"I morgen",nn:"I morgon"},btnCloseInfo_text:{en:"Close",nb:"Lukk",nn:"Lukk"},Sunday:{en:"Sunday",nb:"Søndag",nn:"Sundag"},Monday:{en:"Monday",nb:"Mandag",nn:"Måndag"},Tuesday:{en:"Tuesday",nb:"Tirsdag",nn:"Tysdag"},Wednesday:{en:"Wednesday",nb:"Onsdag",nn:"Onsdag"},Thursday:{en:"Thursday",nb:"Torsdag",nn:"Torsdag"},Friday:{en:"Friday",nb:"Fredag",nn:"Fredag"},Saturday:{en:"Saturday",nb:"Lørdag",nn:"Laurdag"},Time:{en:"Time",nb:"Tid",nn:"Tid"},Forecast:{en:"Forecast",nb:"Varsel",nn:"Varsel"},Temp:{en:"Temp",nb:"Temp",nn:"Temp"},Precipitation:{en:"Precipitation",nb:"Nedbør",nn:"Nedbør"},Wind:{en:"Wind",nb:"Vind",nn:"Vind"},Sunrise:{en:"Sunrise",nb:"Soloppgang",nn:"Soloppgang"},Sunset:{en:"Sunset",nb:"Solnedgang",nn:"Solnedgang"},from:{en:"from",nb:"fra",nn:"fra"}},errCodes:{}});var iconMappings={sleetandthunder:{variants:null,old_id:"23",desc_nb:"Sludd og torden",desc_en:"Sleet and thunder",desc_nn:"Sludd og torevêr"},heavyrainshowersandthunder:{old_id:"25",desc_nb:"Kraftige regnbyger og torden",variants:["day","night","polartwilight"],desc_nn:"Kraftige regnbyer og torevêr",desc_en:"Heavy rain showers and thunder"},heavysnowandthunder:{variants:null,desc_nb:"Kraftig snø og torden",old_id:"34",desc_en:"Heavy snow and thunder",desc_nn:"Kraftig snø og torevêr"},lightsleet:{desc_en:"Light sleet",desc_nn:"Lett sludd",variants:null,desc_nb:"Lett sludd",old_id:"47"},sleetshowers:{old_id:"7",desc_nb:"Sluddbyger",variants:["day","night","polartwilight"],desc_nn:"Sluddbyer",desc_en:"Sleet showers"},lightssnowshowersandthunder:{desc_en:"Light snow showers and thunder",desc_nn:"Lette snøbyer og torevêr",variants:["day","night","polartwilight"],old_id:"28",desc_nb:"Lette snøbyger og torden"},heavysleetshowers:{old_id:"43",desc_nb:"Kraftige sluddbyger",variants:["day","night","polartwilight"],desc_nn:"Kraftige sluddbyer",desc_en:"Heavy sleet showers"},heavysnow:{old_id:"50",desc_nb:"Kraftig snø",variants:null,desc_nn:"Kraftig snø",desc_en:"Heavy snow"},lightsnow:{variants:null,desc_nb:"Lett snø",old_id:"49",desc_en:"Light snow",desc_nn:"Lett snø"},snowshowers:{desc_nb:"Snøbyger",old_id:"8",variants:["day","night","polartwilight"],desc_nn:"Snøbyer",desc_en:"Snow showers"},rainshowers:{desc_en:"Rain showers",desc_nn:"Regnbyer",variants:["day","night","polartwilight"],old_id:"5",desc_nb:"Regnbyger"},heavysleetandthunder:{desc_en:"Heavy sleet and thunder",desc_nn:"Kraftig sludd og torevêr",variants:null,old_id:"32",desc_nb:"Kraftig sludd og torden"},heavyrain:{variants:null,desc_nb:"Kraftig regn",old_id:"10",desc_en:"Heavy rain",desc_nn:"Kraftig regn"},fog:{desc_nn:"Skodde",desc_en:"Fog",desc_nb:"Tåke",old_id:"15",variants:null},lightsnowandthunder:{desc_nb:"Lett snø og torden",old_id:"33",variants:null,desc_nn:"Lett snø og torevêr",desc_en:"Light snow and thunder"}
1,rainandthunder:{desc_nn:"Regn og torevêr",desc_en:"Rain and thunder",old_id:"22",desc_nb:"Regn og torden",variants:null},snowandthunder:{variants:null,old_id:"14",desc_nb:"Snø og torden",desc_en:"Snow and thunder",desc_nn:"Snø og torevêr"},sleet:{desc_en:"Sleet",desc_nn:"Sludd",variants:null,old_id:"12",desc_nb:"Sludd"},heavysnowshowers:{desc_nn:"Kraftige snøbyer",desc_en:"Heavy snow showers",desc_nb:"Kraftige snøbyger",old_id:"45",variants:["day","night","polartwilight"]},rain:{desc_nn:"Regn",desc_en:"Rain",desc_nb:"Regn",old_id:"9",variants:null},heavysnowshowersandthunder:{desc_nn:"Kraftige snøbyer og torevêr",desc_en:"Heavy snow showers and thunder",desc_nb:"Kraftige snøbyger og torden",old_id:"29",variants:["day","night","polartwilight"]},partlycloudy:{desc_en:"Partly cloudy",desc_nn:"Delvis skya",variants:["day","night","polartwilight"],old_id:"3",desc_nb:"Delvis skyet"},sleetshowersandthunder:{old_id:"20",desc_nb:"Sluddbyger og torden",variants:["day","night","polartwilight"],desc_nn:"Sluddbyer og torevêr",desc_en:"Sleet showers and thunder"},lightrainshowersandthunder:{desc_en:"Light rain showers and thunder",desc_nn:"Lette regnbyer og torevêr",variants:["day","night","polartwilight"],old_id:"24",desc_nb:"Lette regnbyger og torden"},snowshowersandthunder:{desc_nn:"Snøbyer og torevêr",desc_en:"Snow showers and thunder",desc_nb:"Snøbyger og torden",old_id:"21",variants:["day","night","polartwilight"]},clearsky:{variants:["day","night","polartwilight"],old_id:"1",desc_nb:"Klarvær",desc_en:"Clear sky",desc_nn:"Klårvêr"},lightrainshowers:{desc_nn:"Lette regnbyer",desc_en:"Light rain showers",old_id:"40",desc_nb:"Lette regnbyger",variants:["day","night","polartwilight"]},fair:{variants:["day","night","polartwilight"],old_id:"2",desc_nb:"Lettskyet",desc_en:"Fair",desc_nn:"Lettskya"},lightssleetshowersandthunder:{desc_en:"Light sleet showers and thunder",desc_nn:"Lette sluddbyer og torevêr",variants:["day","night","polartwilight"],desc_nb:"Lette sluddbyger og torden",old_id:"26"},lightrain:{variants:null,old_id:"46",desc_nb:"Lett regn",desc_en:"Light rain",desc_nn:"Lett regn"},lightsleetandthunder:{desc_nn:"Lett sludd og torevêr",desc_en:"Light sleet and thunder",desc_nb:"Lett sludd og torden",old_id:"31",variants:null},heavyrainandthunder:{variants:null,old_id:"11",desc_nb:"Kraftig regn og torden",desc_en:"Heavy rain and thunder",desc_nn:"Kraftig regn og torevêr"},lightrainandthunder:{variants:null,old_id:"30",desc_nb:"Lett regn og torden",desc_en:"Light rain and thunder",desc_nn:"Lett regn og torevêr"},rainshowersandthunder:{desc_nn:"Regnbyer og torevêr",desc_en:"Rain showers and thunder",old_id:"6",desc_nb:"Regnbyger og torden",variants:["day","night","polartwilight"]},snow:{desc_en:"Snow",desc_nn:"Snø",variants:null,desc_nb:"Snø",old_id:"13"},heavyrainshowers:{variants:["day","night","polartwilight"],old_id:"41",desc_nb:"Kraftige regnbyger",desc_en:"Heavy rain showers",desc_nn:"Kraftige regnbyer"},heavysleet:{desc_en:"Heavy sleet",desc_nn:"Kraftig sludd",variants:null,desc_nb:"Kraftig sludd",old_id:"48"},lightsnowshowers:{desc_nb:"Lette snøbyger",old_id:"44",variants:["day","night","polartwilight"],desc_nn:"Lette snøbyer",desc_en:"Light snow showers"},lightsleetshowers:{desc_en:"Light sleet showers",desc_nn:"Lette sluddbyer",variants:["day","night","polartwilight"],desc_nb:"Lette sluddbyger",old_id:"42"},heavysleetshowersandthunder:{desc_nn:"Kraftige sluddbyer og torevêr",desc_en:"Heavy sleet showers and thunder",old_id:"27",desc_nb:"Kraftige sluddbyger og torden",variants:["day","night","polartwilight"]},cloudy:{desc_nn:"Skya",desc_en:"Cloudy",desc_nb:"Skyet",old_id:"4",variants:null}};Ext.define("Client.module.map.info.tools.Weather",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Weather");g.dateFormat=g.formatDate.getString("date_format");g.timeFormat=g.formatDate.getString("time_format");Ext.define("forecastModel",{extend:Ext.data.Model,fields:[{name:"from",type:"datetime",mapping:"@from",convert:function(h){return Ext.Date.parse(h,"Y-m-dTH:i:s")}},{name:"to",type:"datetime",mapping:"@to",convert:function(h){return Ext.Date.parse(h,"Y-m-dTH:i:s")}},{name:"symbol",type:"string",mapping:"symbol > @var"},{name:"symbolName",type:"string",mapping:"symbol > @name"},{name:"precipitation",type:"double",mapping:"precipitation > @value"},{name:"precipitationMin",type:"double",mapping:"precipitation > @minvalue"},{name:"precipitationMax",type:"double",mapping:"precipitation > @maxvalue"},{name:"windDirectionDeg",type:"integer",mapping:"windDirection > @deg"},{name:"windDirectionCode",type:"string",mapping:"windDirection > @code"},{name:"windDirectionName",type:"string",mapping:"windDirection > @name"},{name:"windSpeed",type:"double",mapping:"windSpeed > @mps"},{name:"windSpeedName",type:"string",mapping:"windSpeed > @name"},{name:"temperature",type:"double",mapping:"temperature > @value"},{name:"pressure",type:"auto",mapping:"pressure > @value"}],belongsTo:"forecastPlaceModel",proxy:{type:"memory",reader:{type:"xml",root:"forecast",record:"tabular > time"}}});Ext.define("forecastTimeModel",{extend:Ext.data.Model,fields:[{name:"from",type:"datetime",mapping:"@from",convert:function(h){return Ext.Date.parse(h,"c")}},{name:"to",type:"datetime",mapping:"@to",convert:function(h){return Ext.Date.parse(h,"c")}},{name:"symbolId",type:"string",mapping:"location > symbol > @number"},{name:"symbolName",type:"string",mapping:"location > symbol > @name"},{name:"precipitation",type:"double",mapping:"precipitation > @value"},{name:"precipitationMin",type:"double",mapping:"precipitation > @minvalue"},{name:"precipitationMax",type:"double",mapping:"precipitation > @maxvalue"},{name:"windDirectionDeg",type:"integer",mapping:"windDirection > @deg"},{name:"windDirectionCode",type:"string",mapping:"windDirection > @id"},{name:"windDirectionName",type:"string",mapping:"windDirection > @name"},{name:"windSpeed",type:"double",mapping:"windSpeed > @mps"},{name:"windSpeedName",type:"string",mapping:"windSpeed > @name"},{name:"temperature",type:"double",mapping:"temperature > @value"},{name:"pressure",type:"auto",mapping:"pressure > @value"}],belongsTo:"forecastPlaceModel",proxy:{type:"memory",reader:{type:"xml",root:"product",record:"time"}}});Ext.define("forecastPlaceModel",{extend:Ext.data.Model,fields:[{name:"name",type:"string",mapping:"location > name"},{name:"type",type:"string",mapping:"location > type"},{name:"country",type:"string",mapping:"location > country"},{name:"urlText",type:"string",mapping:"credit > link> @text"},{name:"url",type:"string",mapping:"credit > link > @url"},{name:"offset",type:"int",mapping:"location > timezone > @utcoffsetMinutes"}],hasMany:[{associationKey:"forecast",model:"forecastModel",name:"forecasts"},{associationKey:"product",model:"forecastTimeModel",name:"times"}]});g.forecastPlaceStore=Ext.create("Ext.data.Store",{model:"forecastPlaceModel",proxy:{type:"memory",reader:{type:"xml",root:"weatherdata",record:"weatherdata"}}});g.dataPanel=Ext.create("Ext.view.View",{store:g.forecastPlaceStore,cls:"a3-weather-view",overflowX:"hidden",overflowY:"scroll",tpl:new Ext.XTemplate('<tpl for=".">',"<ul>",'<tpl for="this.entries(values)">','<tpl if="this.newDay(values.from, parent.offset)">','<li class="dayName"><strong>{[this.findDay(values.from, parent.offset)]}</strong>, {[this.getDate(values.from, parent.offset)]}</li>',"</tpl>",'<li class="forecastItem">','<span class="timeItem">{[this.getHour(values.from, parent.offset)]}<tpl if="values.to && values.to.getTime() != values.from.getTime()"> - {[this.getHour(values.to, parent.offset)]}</tpl></span>
1',"{[this.getSymbol(values)]}",'<span class="tempItem <tpl if="this.isPlus(temperature)">plus<tpl else>minus</tpl>">{temperature}º</span>','<tpl if="this.hasPercipitation(values)">','<tpl if="this.hasPercipitationSingle(values)">','<span class="percipitationItem">{precipitation} mm</span>',"<tpl else>",'<span class="percipitationItem">{precipitationMin} - {precipitationMax} mm</span>',"</tpl>","</tpl>",'<tpl if="this.hasWind(values)">','<span class="windSymbolItem"><img src="{[this.roundSpeedDeg(values.windSpeed, values.windDirectionDeg)]}"></span>','<span class="windDescItem">{windSpeedName}, {windSpeed} m/s '+g.lang.getString("from")+" {windDirectionName}</span>","</tpl>","</li>","</tpl>","</ul>",'<div class="forecastFooterDiv"><a class="weatherUrl" href="{url}" target="_blank">{urlText}</a></div>',"</tpl>",{entries:function(o){if(o.forecasts&&o.forecasts.length){return o.forecasts}if(o.times&&o.times.length){var h=[];for(var q=0;q<o.times.length;++q){var z=o.times[q];if(z.temperature){if(!z.symbolId&&q+1<o.times.length){var w=o.times[q+1];for(var A in w){if(w.hasOwnProperty(A)&&w[A]&&!z[A]){z[A]=w[A]}}}h.push(z)}}return h}return[]},getSymbol:function(o){var q=function(w){for(var z in iconMappings){if(iconMappings[z].old_id===w&&iconMappings[z].variants===null){return z}else{if(iconMappings[z].old_id===w){return z+"_day"}}}return null};if(o.symbol){return'<img src="https://symbol.yr.no/grafikk/sym/b38/'+o.symbol+'.png">'}else{if(o.symbolId){var h=q(o.symbolId);return'<img src="https://api.met.no/images/weathericons/png/'+h+'.png" ;content_type=image/png">'}}},hasWind:function(h){return !!h.windSpeed},isPlus:function(h){return h>0},isToday:function(o){if(!o){return false}var h=new Date();return(o.getMonth()==h.getMonth()&&o.getDate()==h.getDate())},isTomorrow:function(o){if(!o){return false}var h=new Date();return(o.getMonth()==h.getMonth()&&o.getDate()==h.getDate()+1)},hasPercipitation:function(h){return h.precipitation||h.precipitationMin||h.precipitationMax},hasPercipitationSingle:function(h){return h.precipitation&&(!h.precipitationMin||h.precipitationMin==h.precipitationMax)},getHour:function(h,o){return Ext.Date.format(h,g.timeFormat)},roundSpeedDeg:function(w,q){var o=5*Math.round(q/5);var h=2.5*Math.round(w/2.5);var A=h.toFixed(1);var z=A.toString().replace(/\./g,"");if(z.length==2){z="00"+z}else{if(z.length==3){z="0"+z}}if(o==360){o="000"}else{if(o.toString().length==1){o="00"+o}else{if(o.toString().length==2){o="0"+o}}}url="https://fil.nrk.no/yr/grafikk/vindpiler/32/vindpil."+z+"."+o+".png";return url},findDay:function(h,q){if(!h){return""}var o=new Array(7);o[0]="Sunday";o[1]="Monday";o[2]="Tuesday";o[3]="Wednesday";o[4]="Thursday";o[5]="Friday";o[6]="Saturday";if(this.isToday(h)){return g.lang.getString("today")}else{if(this.isTomorrow(h)){return g.lang.getString("tomorrow")}else{return g.lang.getString(o[h.getDay()])}}},newDay:function(h,o){if(!h){return false}if(g.oldDate==null){g.oldDate=h;return true}else{if(g.oldDate.getDay()!=h.getDay()){g.oldDate=h;return true}else{return false}}},getDate:function(h,o){return Ext.Date.format(h,g.dateFormat)}}),itemSelector:"p"});g.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",constrain:true,width:550,minWidth:200,height:500,layout:"fit",items:[g.dataPanel]});g.viewConfig={cls:"a3-weather",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:function(){g.forecastPlaceStore.removeAll();g.getPlaceData();g.infoWindow.showWithin(550);g.dataPanel.setLoading(true)}}}}
1,getWeatherForecast:function(h){var b=this,g=h.d.records;b.infoWindow.setTitle(g.placename+" ("+g.placeType+"), "+(g.countryCode=="NO"?g.municipality:g.country));Ext.Ajax.request({url:"WebServices/weather/WeatherSearcher.asmx/GetWeatherForecast",params:{url:h.d.records.url},callback:function(q,w,o){if(w){b.forecastPlaceStore.loadRawData(o.responseXML);b.dataPanel.setLoading(false)}else{b.failed()}}})},getPlaceData:function(){var b=this;b.infoWindow.setTitle("...");Ext.Ajax.request({url:"WebServices/weather/WeatherSearcher.asmx/FindUrl",headers:{"Content-Type":"application/json"},params:Ext.JSON.encode({lat:b.lonlat.lat,lon:b.lonlat.lon}),callback:function(h,q,g){if(q){var o=JSON.parse(g.responseText);b.getWeatherForecast(o)}else{b.failed()}}})}});Ext.define("Client.module.map.utils.lang.LayerRefresher",{strings:{stopRefreshTooltip:{en:"Click to stop automatically refreshing these layers",nb:"Trykk for å stoppe automatisk oppdatering av disse lagene"},stopRefreshTooltipCount:{en:" layer(s) are automatically refreshed.",nb:" lag oppdateres automatisk."}}});Ext.define("Client.module.map.utils.LayerRefresher",{extend:Client.module.Generic,statics:{_refreshLayers:[],isLayerRefreshing:function(b){return Ext.Array.contains(Client.module.map.utils.LayerRefresher._refreshLayers,b)}},internal_name:"av_layer_refresher",layerRefreshInterval:20,internalLayerUpdateMultiplier:1,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);if(!g.layerRefreshInterval){g.layerRefreshInterval=20}if(!g.internalLayerUpdateMultiplier||g.internalLayerUpdateMultiplier<1){g.internalLayerUpdateMultiplier=1}g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.utils.lang.LayerRefresher")},_onToggleLayerRefresh:function(w){var q=this,g=w.data,h=false,o=null,b=false;if(q.removeLayer(g)){return}q.refreshLayer(g)},refreshLayer:function(g){var h=this,b=Client.module.map.utils.LayerRefresher._refreshLayers;if(Ext.Array.contains(b,g)){return}if(g.getVisibility()){Client.module.map.utils.LayerRefresher._refreshLayers.push(g);if(!h.task){h.startRefresh()}}h._updateTooltip();h.reportEvent("autoRefreshChange",g)},_updateTooltip:function(){var b=this;if(b.refreshStatus){b.refreshStatus.setTooltip(Client.module.map.utils.LayerRefresher._refreshLayers.length+" "+b.lang.getString("stopRefreshTooltipCount")+"<p>"+b.lang.getString("stopRefreshTooltip"))}},isInternal:function(b){return b.record&&b.record.data.is_internal},startRefresh:function(){var b=this;b.intervalsToInternalUpdate=b.internalLayerUpdateMultiplier;b.task=Ext.TaskManager.start({run:function(){var g=Client.module.map.utils.LayerRefresher._refreshLayers,h=--b.intervalsToInternalUpdate==0,z=[],w=[],q;if(h){b.intervalsToInternalUpdate=b.internalLayerUpdateMultiplier}for(var o=0;o<g.length;o++){if(!h&&b.isInternal(g[o])){continue}var A=Adaptive.utils.Config.getThemeData(g[o].record);q=g[o]._ghost_layer||g[o];if(z.indexOf(q)==-1){z.push(q)}if(w.indexOf(A.theme_uuid)==-1){w.push(A.theme_uuid)}}for(var o=0;o<z.length;o++){z[o].redraw(true)}b.reportEvent("refreshActiveLayers",{theme_uuids:w})},interval:b.layerRefreshInterval*1000});if(b.mapContainer){if(!b.refreshStatus){b.refreshStatus=Ext.create("Ext.button.Button",{cls:"a3-floating-btn a3-refresh-activity",tooltip:b.lang.getString("stopRefreshTooltip"),listeners:{click:b.stopAll,scope:b},width:44,height:44});b.mapContainer.add(b.refreshStatus)}else{b.refreshStatus.show()}b.updatePosition()}},updatePosition:function(){var h=this;if(h.refreshStatus){var b=h.mapContainer.down('[cls="a3-layermanager"]'),g=[0,-8],o="bl-tl";if(!b){b=h.mapContainer.down("#statusbar")||h.mapContainer.down('[cls="a3-dataview-panel"]');g=[20,-8];if(!b){b=h.mapContainer;o="bl-bl"}}h.refreshStatus.alignTo(b,o,g)}},removeLayer:function(g){var h=this,b=Client.module.map.utils.LayerRefresher._refreshLayers;if(Ext.Array.contains(b,g)){Ext.Array.remove(b,g);if(b.length==0){h.stopRefresh()}return true}return false},stopAll:function(){var b=this;b.stopRefresh();Client.module.map.utils.LayerRefresher._refreshLayers=[];b.refreshStatus=null;b.reportEvent("autoRefreshStopped")},stopRefresh:function(){var b=this;if(b.task){Ext.TaskManager.stop(b.task);b.task=null;if(b.refreshStatus){b.refreshStatus.hide()}}},onLayerChange:function(g){var h=this;if(!h.checkVisibilityTask){h.checkVisibilityTask=new Ext.util.DelayedTask(function(){var q=Client.module.map.utils.LayerRefresher._refreshLayers.slice(0);q.forEach(function(w){if(!w.getVisibility()){h.removeLayer(w);h.reportEvent("autoRefreshChange",w)}})})}h.checkVisibilityTask.delay(500);if(g.property==="visibility"&&g.layer.getVisibility()){var b=g.layer.record,o=Adaptive.utils.Config.getThemeData(b);if(o&&o.data&&o.data.auto_refresh&&o.data.auto_refresh_default_on){h.refreshLayer(g.layer)}}},afterMapReset:function(g){var b=this;if(!this.map){return}b.stopAll();b.map.events.register("changelayer",b,b.onLayerChange)},afterMapContainerRender:function(){this.mapContainer.on("resize",this.updatePosition,this)},beforeMapReset:function(g){var b=this;if(!b.map){return}b.map.events.unregister("changelayer",b,b.onLayerChange)},_setActive:function(b){if(!b){this.stopAll()}}});Ext.define("Client.module.map.utils.DigitizeButton",{extend:Client.module.Generic,internal_name:"av_digitize_button",activeThemeDigitizeButton:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent(arguments);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.utils.lang.DigitizeButton");g.digitizeBtn=Ext.create("Ext.button.Button",{cls:"a3-digitize-btn a3-floating-btn",height:44,width:44,hidden:true,tooltip:g.lang.getString("digitizeBtnTooltip"),tooltipType:"title",enableToggle:true,listeners:{toggle:function(h,o){if(o){if(g.activeDigithemes.length===1){h.toggle();g.startDigitize(g.activeDigithemes[0])}else{g.digitizeMenu.showBy(h,"br-bl")}}else{g.digitizeMenu.hide()}}}});g.digitizeMenu=Ext.create("Ext.menu.Menu");g.digitizeMenu.on("hide",function(){g.digitizeBtn.toggle(false)},{delay:10});g.digitizeMenu.on("beforeshow",function(){g.digitizeMenu.maxHeight=Ext.getBody().getHeight()-126})},doUpdateLayers:function(){var b=this;b.activeDigithemes=[];b.map.wmsLayers.forEach(function(h){var w=Adaptive.utils.Config.getThemeData(h.record),g=Adaptive.utils.Config.getConfig(w,"parent_themes"),o=Adaptive.utils.Config.getBooleanConfig(w,"rel_optional"),q=Adaptive.utils.Config.getBooleanConfig(w,"only_metadata_edit");if(w&&w.is_digi_theme&&!b.activeDigithemes.some(function(z){return z.td.theme_uuid===w.theme_uuid})&&(w.permissions.write||w.permissions.project_write)&&!q&&(!g||o)){if(b.activeThemeDigitizeButton&&h.record.isSpatial&&!h.getVisibility()){return}b.activeDigithemes.push({iconCls:"icon-edit",text:w.name,td:w,layer:h,handler:b.startDigitize,scope:b})}});if(b.activeDigithemes.length>0){b.activeDigithemes.sort(function(h,g){try{return h.text.localeCompare(g.text,GeoMind.lang.Lang.langCode,{numeric:true})}catch(o){return h.text.localeCompare(g.text)}});b.digitizeMenu.removeAll();b.digitizeMenu.add(b.activeDigithemes);b.digitizeBtn.show();b.updatePosition()}else{if(b.activeThemeDigitizeButton===true){b.digitizeMenu.removeAll()}b.digitizeBtn.hide()}},_onUpdateMapState:function(g){var b=this;if(b.map&&b.activeThemeDigitizeButton){b.doUpdateLayers()}},startDigitize:function(g){var b=this;var h={evtName:"digiRecordCreateCustomForm",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:Ext.bind(b.createRecordCallBack,b,[g.td,g.layer]),data:{layer:g.layer,theme_data:g.td}};b.dispatchEvent(h,{confirmationRequired:true})},createRecordCallBack:function(g,h){var o=this,b=h.record;if(!h.getVisibility()){h.setVisibility(true);o.reportEvent("activateTheme",{checked:true,category:b.get("catUuid"),layer:b.get("uuid")})}o.reportEvent("digiRecordCreate",{theme_data:g,parent:o.childrenOf})},updatePosition:function(){var g=this,b=g.mapContainer.down("#mapNavigationContainer");if(!g.digitizeBtn.getEl()){return}if(b){g.digitizeBtn.alignTo(b,"br-tr",[0,-7])}else{g.digitizeBtn.alignTo(g.mapContainer,"br-br",[-21,-26])}},afterMapReset:function(b){this.doUpdateLayers()},afterMapContainerRender:function(g){var b=this;b.mapContainer.add(b.digitizeBtn);b.mapContainer.on("resize",b.updatePosition,b)},_onLayerManagerShowThemes:function(o){var h=this,b=o.data.themes||o.data,g=[];b.forEach(function(q){if(!q.options||q.options.visible!==false){g.push(q.uuid)}});h.digitizeMenu.hide();h.doUpdateLayers(g)}});Ext.define("Client.module.map.timeslider.lang.TimeSlider",{strings:{current_time:{en:"Showing time",nb:"Viser tidspunkt"},btnPlayMode_tooltip:{en:"Player mode",nb:"Avspillingsmodus"},btnAnalyzeMode_tooltip:{en:"Analyze mode",nb:"Analysemodus"}}});Ext.define("Client.module.map.timeslider.mixins.Date",{convertToEpoch:function(b,g){return Math.round(Ext.Date.parse(b,g).getTime()/1000)},convertFromEpoch:function(b){return Ext.Date.parse(b,"U")},convertUnixToIsoString:function(b){return this.convertFromEpoch(b).toISOString()},createSnappedDate:function(q,w,g,b,o,z){if(w==1&&g>28){if(new Date(q,1,29).getMonth()==1){g=29}else{g=28}}if(g>30){switch(w){case 3:case 5:case 8:case 10:g=30;break}}var h=new Date(q,w,g);h.setHours(b);h.setMinutes(o);h.setSeconds(z);return h}});Ext.define("Client.module.map.timeslider.Layer",{mixins:[Client.module.map.timeslider.mixins.Date,Ext.util.Observable],config:{layerId:null,theme_uuid:null,data:null,type:null},constructor:function(b){var g=this;g.id=Ext.id();g.mixins["Ext.util.Observable"].constructor.call(g,b);Ext.apply(g,b);g.callParent([b]);g.getMinMax()},getMinMax:function(){var b=this;if(b.type==="scatHistorical"){b.returnMinMaxOnOutOfRange=true;b.minutePeriod=1;if(b.operation_geosync_id){if(b.minDateLocked&&b.maxDateLocked){b.fireEvent("dateRangeLoaded",b);return}Ext.Ajax.request({url:"WebServices/kystverket/scat/HistoricalData.asmx/getDateRange",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({scatObjectType:b.objtype+(b.objtype=="media"&&b.parentType&&b.parentType!=="*"?"."+b.parentType:""),mime:b.mime,operation_geosync_id:b.operation_geosync_id}),success:function(h){var g=Ext.JSON.decode(h.responseText);g=g&&g.d;if(g&&g.success){b.minDate=b.maxDate=null;if(!b.minDateLocked){var o;if(!g.records){o=GeoMind.utils.Data.extractConfigObjectByKey(g.data,"minDate")}else{if(g.records.length>0){o=g.records[0].from_time}}
1if(o){b.minDate=Math.round(GeoMind.utils.Date.fixDate(o).getTime()/1000)}}if(!b.maxDateLocked){var o;if(!g.records){o=GeoMind.utils.Data.extractConfigObjectByKey(g.data,"maxDate")}else{if(g.records.length>0){o=g.records[g.records.length-1].to_time}}if(o&&o!=="infinity"){b.maxDate=Math.round(GeoMind.utils.Date.fixDate(o).getTime()/1000)}else{b.maxDate="infinity"}}b.dateRange=g.records.map(function(q){var w=q.to_time==="infinity"?"infinity":Math.round(GeoMind.utils.Date.fixDate(q.to_time).getTime()/1000);return[Math.round(GeoMind.utils.Date.fixDate(q.from_time).getTime()/1000),w]});b.fireEvent("dateRangeLoaded",b)}},failure:function(){console.warn("Could not get date range for SCAT layer")}})}}else{if(b.auto_update_time){b.loadDynamicTimeRangeDirect()}else{if(b.dynamic){b.loadDynamicTimeRange()}else{if(b.data.values.length===1){b.processExtent(b.data.values[0])}else{b.values=Ext.Array.sort(b.data.values,function(h,g){return new Date(h)-new Date(g)});if(!b.minDateLocked){b.minDate=b.convertToEpoch(b.values[0],"c")}if(!b.maxDateLocked){b.maxDate=b.convertToEpoch(b.values[b.values.length-1],"c")}if(b.dynamic_max_value){b.maxDate=Math.round(Date.now()/1000)}b.fireEvent("dateRangeLoaded",b)}}}}},queueLoad:function(){var b=this;if(b.deferredLoad){clearTimeout(b.deferredLoad)}if(!b.dynamic_refresh){return}b.deferredLoad=Ext.defer(function(){b.loadDynamicTimeRange()},30000)},loadDynamicTimeRangeDirect:function(){var b=this,g=Ext.JSON.encode({url:b.getCapabilitiesUrl,layers:null,username:null,password:null,precreated:true}),h="GetWmsTimeRangeDirect";if(b.getCapabilitiesUrl){h="GetInternalWmsTimeRange";g=null}b.loadDynamicTimeRange(h,g)},loadDynamicTimeRange:function(h,g){var b=this;if(b.isDestroyed){return}h=h||"GetWmsTimeRange";g=g||Ext.JSON.encode({uuid:b.theme_uuid});if(b.minDateLocked&&b.maxDateLocked&&b.periodFormatLocked){return}Ext.Ajax.request({url:"WebServices/generic/Theme.asmx/"+h,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:g,success:function(w){if(b.isDestroyed){return}var o=Ext.JSON.decode(w.responseText);o=o&&o.d;if(o&&o.success){var q=GeoMind.utils.Data.extractConfigObjectByKey(o.data,"extent");b.processExtent(q);b.fireEvent("dateRangeLoaded",b);b.queueLoad()}},failure:function(){console.warn("Could not get date range for dynamic WMS TIME layer");b.queueLoad()}})},destroy:function(){var b=this;b.isDestroyed=true;if(b.deferredLoad){clearTimeout(b.deferredLoad)}},processPeriod:function(){var g=this,b=/PT(\d+)(\w)/.exec(g.periodFormat),h;delete g.minutePeriod;delete g.dayPeriod;delete g.monthPeriod;delete g.yearPeriod;if(b&&b.length>=3){h=parseInt(b[1]);switch(b[2]){case"M":g.minutePeriod=h;break;case"H":g.minutePeriod=h*60;break}return}b=/P(\d+)(\w)/.exec(g.periodFormat);if(b&&b.length>=3){h=parseInt(b[1]);switch(b[2]){case"D":g.dayPeriod=h;break;case"M":g.monthPeriod=h;break;case"Y":g.yearPeriod=h;break}}},processExtent:function(g){if(!g){return}var h=this,w=g.split("/");if(w.length>=2){var q=w[0].trim(),o=w[1].trim();if(q.length>11&&/^\d{4}/.exec(q)&&q.indexOf("Z")==-1){q+="Z"}if(o.length>11&&/^\d{4}/.exec(o)&&o.indexOf("Z")==-1){o+="Z"}if(!h.minDateLocked){h.minDate=h.convertToEpoch(q,"c")}if(!h.maxDateLocked){h.maxDate=h.convertToEpoch(o,"c")}if(h.minDate>h.maxDate){var b=h.minDate;h.minDate=h.maxDate;h.maxDate=b}if(!h.periodFormatLocked){h.periodFormat=(w.length<3)?"PT1M":w[2].trim();h.processPeriod()}}else{w=g.split(",");if(w.length>0&&/^\d{4}/.exec(w[0])){h.values=Ext.Array.sort(w,function(A,z){return new Date(A)-new Date(z)});if(!h.minDateLocked){h.minDate=h.convertToEpoch(h.values[0],"c")}if(!h.maxDateLocked){h.maxDate=h.convertToEpoch(h.values[h.values.length-1],"c")}}}if(h.dynamic_max_value){h.maxDate=Math.round(Date.now()/1000)}},getValidTime:function(h){var g=this;if(g.dynamic_max_value){return g.convertUnixToIsoString(h)}if(g.minDate<=h&&g.maxDate>=h){if(g.data&&g.data.nearestVal||!g.values){return g.convertUnixToIsoString(h)}else{if(g.values){var b=0;Ext.each(g.values,function(q,o){if(g.convertToEpoch(q,"c")>h){return false}b=o});return new Date(g.values[b]).toISOString()}}}else{if(g.returnMinMaxOnOutOfRange){if(g.minDate>h){return g.convertUnixToIsoString(g.minDate)}else{if(g.maxDate<h){return g.convertUnixToIsoString(g.maxDate)}}}}return false}});Ext.define("Client.module.map.timeslider.DateSlider",{extend:Ext.slider.Single,mixins:[Client.module.map.timeslider.mixins.Date],config:{dateFormat:null},constructor:function(b){var g=this;g.minValue=b.minDate&&g.convertToEpoch(b.minDate,"c");g.maxValue=b.maxDate&&g.convertToEpoch(b.maxDate,"c");
1g.tipText=function(h){switch(g.intervalMode){case"yearly":return h.value;case"monthly":date=g.getMonthDate(h.value);break;default:date=g.convertFromEpoch(h.value);break}return Ext.Date.format(date,g.dateFormat)};g.callParent(arguments);g.initConfig(b)},getDayDate:function(h){var g=this,b=g.intervalStartDate;h=g.convertFromEpoch(h);return g.createSnappedDate(h.getFullYear(),h.getMonth(),h.getDate(),b.getHours(),b.getMinutes(),b.getSeconds())},getMonthDate:function(q){var o=this,g=o.intervalStartDate,h=g.getFullYear(),w=g.getMonth(),b=g.getDate();while(q>0){w++;if(w==12){w=0;h++}q--}return o.createSnappedDate(h,w,b,g.getHours(),g.getMinutes(),g.getSeconds())},getYearDate:function(h){var g=this,b=g.intervalStartDate;return g.createSnappedDate(h,b.getMonth(),b.getDate(),b.getHours(),b.getMinutes(),b.getSeconds())},listeners:{change:function(h,o,b,g){this.fireEvent("sliderChanged",o)},changecomplete:function(g,h,b){this.fireEvent("newDateFromSlider",this.getValue())}},setMode:function(h,b){var g=this;g.intervalMode=h;g.intervalStartDate=b},getValue:function(){var b=this,g=b.callParent();switch(b.intervalMode){case"monthly":g=b.getMonthDate(g).getTime()/1000;break;case"yearly":g=b.getYearDate(g).getTime()/1000;break;case"daily":g=b.getDayDate(g).getTime()/1000;break}return g},setValue:function(h){var o=this,b,g;switch(o.intervalMode){case"yearly":if(h>3000){g=o.convertFromEpoch(h);o.callParent([g.getFullYear()]);break}case"monthly":if(h>3000){g=o.convertFromEpoch(h);b=(g.getFullYear()-o.intervalStartDate.getFullYear())*12+(g.getMonth()-o.intervalStartDate.getMonth());o.callParent([b]);break}default:o.callParent(arguments);break}}});Ext.define("Client.module.map.timeslider.ux.Renderer",{extend:Ext.util.Observable,colors:["#090","#096","#009","#0cc","#900","#909"],scatColors:{operation:"#c0c",assessment:"#00c",segment:"#c00",surfaceOiling:"#444",subsurfaceOiling:"#777",pier:"#009",plastic:"#90c",oilSpread:"#c11",oilBoom:"#f90",wasteStation:"#606",ReportedObservation1:"#0c0",ReportedObservation2:"#0c0",ReportedObservation3:"#0c0",ReportedObservation4:"#0c0",ReportedObservation5:"#0c0",ReportedObservation6:"#0c0",advanceDepot:"#660",surveillancePhoto:"#333",surveillancePhotoLand:"#333",surveillancePhotoSea:"#333",media:"#333",stagingArea:"#347B53",helispot:"#000000",icp:"#00468B",jic:"#00468B",incidentTaskForce:"#00468B",rig:"#111",rehabCenter:"#EB8101",hospital:"#EF373E",firstAidStation:"#347B53",camp:"#00468B",toilet:"#EB8101",resourceAtRisk:"#f31",divisionIua:"#09c",fixedWingAircraft:"#53d7fd",helicopter:"#c82a25",drone:"#E1EB01",barge:"#eb8101",workBoat:"#50CD8F",oilRecoveryVessel:"#00468B",osrvOffshore:"#01CBEB",osrvCoastline:"#347B53",shuttleTanker:"#EB8101",vacuumTruck:"#EB8101",drifter:"#000000",otherVessel:"#ef2d00"},timeFormat:{nb:{dateTime:"%a %b %e %X %Y",date:"%m/%d/%Y",time:"%H:%M:%S",periods:["AM","PM"],days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],shortDays:["Sø","Ma","Ti","On","To","Fr","Lø"],months:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],shortMonths:["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Des"]}},margin:{left:0,top:0,bottom:6,right:0},dimensions:{zoomLaneHeight:30,playerLaneHeight:10},constructor:function(h){Ext.apply(this,h);var A=this,b=h.container,g=b.getWidth(),D=b.getHeight(),o=A.margin,C,B,q;A.callParent(arguments);A.id=Ext.id();A.value=new Date();A.today=new Date();if(A.timeFormat[GeoMind.lang.Lang.langCode]){var z=d3.locale(A.timeFormat[GeoMind.lang.Lang.langCode]);A.tickFormat=z.timeFormat.multi([["%H:%M",function(E){return E.getMinutes()}],["%H:%M",function(E){return E.getHours()}],["%a %d",function(E){return E.getDay()&&E.getDate()!=1}],["%b %d",function(E){return E.getDate()!=1}],["%B",function(E){return E.getMonth()}],["%Y",function(){return true}]]);A.timeFormat=z.timeFormat}else{A.timeFormat=d3.time.format}A.formatTimeLabel=A.timeFormat("%c");A.zoom=d3.behavior.zoom().scaleExtent([0.2,3000000]).on("zoom",Ext.bind(A.drawGraph,A));A.brush=d3.svg.brush().on("brushend",function(){var E=A.brush.empty()?A.x.domain():A.brush.extent();
1A.setAnalyzeSpan(E[0],E[1])});A.svg=d3.select("#"+b.id).append("svg").attr("class","timeslider").attr("width",g).attr("height",D);A.width=g=g-o.left-o.right;A.height=D=D-o.top-o.bottom;A.graphHeight=A.height-A.dimensions.zoomLaneHeight-A.dimPlayer();A.root=A.svg.append("rect").attr("class","background").attr("y",o.top).attr("x",o.left).attr("rx",4).attr("ry",4);q=A.svg.append("g").attr("class","wrap").attr("clip-path","url(#"+A.id+"-root-clip)").on("mousedown",function(){if(d3.event.which!=1){return}if(A.isAnalyzeActive){return}A.isDragging=true;A.setValue(A.x.invert(d3.mouse(q.select(".domain").node())[0]));d3.event.preventDefault()}).call(A.zoom);q.on("mousedown.zoom",null);d3.select("body").on("mouseup",Ext.bind(A.onMouseUp,A)).on("mousemove",Ext.bind(A.onMouseMove,A));q.append("rect").attr("x",1).attr("class","zoom-lane").attr("height",A.dimensions.zoomLaneHeight).on("mousedown",function(){d3.event.stopPropagation()}).on("click",function(){d3.event.stopPropagation()}).call(A.zoom);q=q.append("g").attr("transform","translate("+o.left+", "+o.top+")");function w(){A.isPlayerDragging=false;A.setPlayerSpan(A.domainStart,A.domainEnd)}q.append("rect").attr("class","player lane").attr("clip-path","url(#"+A.id+"-root-clip)").attr("width",g).attr("height",A.dimensions.playerLaneHeight).on("dblclick",w).on("mousedown",function(){if(d3.event.which!=1){return}d3.event.stopPropagation();d3.event.preventDefault();A.isPlayerDragging=true;var E=A.x.invert(d3.mouse(q.select(".domain").node())[0]);A.playerDragStartValue=E;if(E<A.playerEnd){A.setPlayerStart(E)}else{A.setPlayerEnd(E)}});q.append("rect").attr("class","pane");A.xAxis=d3.svg.axis().orient("bottom").tickSize(-D,0).tickPadding(6);if(A.tickFormat){A.xAxis.tickFormat(A.tickFormat)}C=A.createX();B=A.createY();A.createClipPaths();q.append("path").attr("class","domain").attr("clip-path","url(#"+A.id+"-clip)");q.append("path").attr("class","player span").attr("clip-path","url(#"+A.id+"-root-clip)");q.append("path").attr("class","incident").append("title");if(A.incidentTime){A.setIncident(A.incidentTime,A.incidentName)}q.append("path").attr("class","today").data([[{date:A.today,value:2}]]);A.xAxisLine=q.append("g").attr("class","x axis");A.drag=d3.behavior.drag().on("dragstart",function(){A.currentDragValue=A.value}).on("drag",function(E){A.currentDragValue=A.x.invert(A.x(A.currentDragValue)+d3.event.dx);A.setValue(A.currentDragValue)});q.append("g").attr("class","layers").attr("clip-path","url(#"+A.id+"-clip)");q.append("path").attr("class","selected").call(A.drag).data([[{date:A.value,value:2}]]);A.dragStart=d3.behavior.drag().on("dragstart",function(){d3.event.sourceEvent.stopPropagation();A.isPlayerBoundaryDragging=true}).on("drag",function(){A.setPlayerStart(A.x.invert(d3.mouse(q.select(".domain").node())[0]));A.drawGraph()});A.dragEnd=d3.behavior.drag().on("dragstart",function(){d3.event.sourceEvent.stopPropagation();A.isPlayerBoundaryDragging=true}).on("drag",function(){A.setPlayerEnd(A.x.invert(d3.mouse(q.select(".domain").node())[0]));A.drawGraph()});q.append("g").attr("class","player boundary start").on("dblclick",w).on("mouseover",function(){A.isPlayerHovered=true;A.drawGraph()}).on("mouseout",function(){A.isPlayerHovered=false;A.drawGraph()}).call(A.dragStart).append("polygon").attr("points","9,0 1,-3 -2,-3 -2,3 1,3");q.append("g").attr("class","player boundary end").on("dblclick",w).on("mouseover",function(){A.isPlayerHovered=true;A.drawGraph()}).on("mouseout",function(){A.isPlayerHovered=false;A.drawGraph()}).call(A.dragEnd).append("polygon").attr("points","-9,0 -1,-3 2,-3 2,3 -1,3");A.root=A.svg.append("rect").attr("class","border").attr("y",A.margin.top).attr("x",A.margin.left+1).attr("rx",4).attr("ry",4);A.svg.append("g").attr("class","labels");A.createLabel("incidentLabel");A.createLabel("todayLabel");A.createLabel("selectedLabel");A.createLabel("playerStartLabel");A.createLabel("playerEndLabel");q.append("g").attr("class","analyze").call(A.brush).selectAll("rect").attr("height",A.graphHeight);A.line=d3.svg.line().interpolate("step-after").x(function(E){return A.x(E.date)}).y(function(E){return A.y((E.index+1)/((A.numLayers||0)+1))});A.area=d3.svg.area().interpolate("step-after").x(function(E){return A.x(E.date)}).y0(A.y(-1)).y1(A.y(1));A.playerArea=d3.svg.area().interpolate("step-after").x(function(E){return A.x(E.date)}).y0(A.y(-1)).y1(function(){return A.y(1)-(A.dimPlayer()/2)});
1A.setDomain(A.value,A.value);b.on("resize",A.resize,A);A.resize();A.addEvents("change","playerSpanChange");A.refreshInterval=setInterval(function(){A.today=new Date();q.select("path.today").data([[{date:A.today,value:2}]]);A.drawGraph()},5000)},destroy:function(){var b=this;if(b.refreshInterval){clearInterval(b.refreshInterval);delete b.refreshInterval}Ext.getBody().un("mouseup",b.onMouseUp);Ext.getBody().un("mousemove",b.onMouseMove)},onMouseUp:function(){if(d3.event.which!=1){return}var b=this;b.isDragging=false;b.isPlayerDragging=false;b.isPlayerBoundaryDragging=false;b.drawGraph()},onMouseMove:function(){var b=this;if(b.isDragging){b.setValue(b.x.invert(d3.mouse(b.svg.select(".domain").node())[0]))}if(b.isPlayerDragging){var g=b.x.invert(d3.mouse(b.svg.select(".domain").node())[0]);if(g>b.playerDragStartValue){b.setPlayerSpan(b.playerDragStartValue,g)}else{b.setPlayerSpan(g,b.playerDragStartValue)}}},createLabel:function(g){var o=this,b=o.svg.select("g.labels"),h,q;h=b.append("rect").attr("id",o.id+"-rect-"+g).attr("class","label");q=b.append("text").attr("y",12).attr("id",o.id+"-text-"+g).attr("class","label "+g)},hideLabel:function(g){var h=this,b=h.svg;b.select("#"+h.id+"-text-"+g).style("visibility","hidden");b.select("#"+h.id+"-rect-"+g).style("visibility","hidden")},showLabel:function(g){var h=this,b=h.svg;b.select("#"+h.id+"-text-"+g).style("visibility","visible");b.select("#"+h.id+"-rect-"+g).style("visibility","visible")},updateLabel:function(g,B,h){var A=this,w=A.svg,o=A.container.getWidth(),b=A.container.getHeight(),q=A.x(B),D=w.select("#"+A.id+"-text-"+g),C,z;h=h||{};if(!h.alwaysShow&&(q<0||q>o)){A.hideLabel(g);return}A.showLabel(g);D.selectAll("*").remove();D.attr("x",q+4+(h.xOffset||0)).attr("y",b-5+(h.yOffset||0));if(h.prefix){D.append("tspan").attr("class","prefix").text(h.prefix+" ")}D.append("tspan").text(A.formatTimeLabel(B));if(h.suffix){D.append("tspan").attr("class","suffix").text(" "+h.suffix)}if(!D.node()){return}C=D.node().getBBox();z=C.x;if(h.left){z-=C.width+8}else{if(!h.right){z-=C.width/2}}if(z<0){z=2}if(z+C.width>o){z=o-C.width-4}D.attr("x",z);w.select("#"+A.id+"-rect-"+g).attr("x",z-2).attr("y",C.y-1).attr("width",C.width+4).attr("height",C.height+2)},createX:function(g){var b=this;b.x=d3.time.scale().range([0,b.width]);if(g){b.domain=g}if(b.domain){b.x.domain(b.domain).nice()}b.xAxis.scale(b.x);var o=b.zoom.scale(),h=b.zoom.translate();b.zoom.x(b.x);b.brush.x(b.x);b.zoom.scale(o);b.zoom.translate(h);return b.x},createY:function(){var b=this;b.y=d3.scale.linear().range([b.graphHeight+b.margin.top+b.dimPlayer(),b.margin.top+b.dimPlayer()]).domain([0,1]);return b.y},createClipPaths:function(){var q=this,b=q.x,w=q.y,g=q.container.getWidth(),h=q.container.getHeight(),o;o=q.svg.select("#"+q.id+"-root-clip rect");if(o.empty()){o=q.svg.append("clipPath").attr("id",q.id+"-root-clip").append("rect")}o.attr("x",0).attr("y",q.margin.top).attr("rx",4).attr("ry",4).attr("width",g-2).attr("height",q.height-2);o=q.svg.select("#"+q.id+"-clip rect");if(o.empty()){o=q.svg.append("clipPath").attr("id",q.id+"-clip").append("rect")}o.attr("x",q.margin.left).attr("y",q.margin.top+1+q.dimPlayer()).attr("width",q.width).attr("height",q.graphHeight)},resize:function(){var o=this,g=o.container,h=g.getWidth(),b=g.getHeight(),q=o.margin;o.width=h-q.left-q.right;o.height=b-q.top-q.bottom;o.graphHeight=o.height-o.dimensions.zoomLaneHeight-o.dimPlayer();o.svg.attr("width",h).attr("height",b);o.svg.select("rect.background").attr("width",o.width).attr("height",o.height);o.svg.select("rect.border").attr("width",o.width-2).attr("height",o.height-2);o.svg.select("rect.pane").attr("y",o.dimPlayer()+q.top).attr("width",o.width).attr("height",o.graphHeight);o.svg.select("rect.zoom-lane").attr("y",o.graphHeight+q.top+o.dimPlayer()).attr("width",h);o.svg.select(".analyze rect.area").attr("x",o.margin.left).attr("y",o.margin.top).attr("height",o.graphHeight).attr("width",h);o.createX();o.createY();o.xAxis.tickSize(-o.graphHeight-o.dimPlayer(),0);o.xAxisLine.attr("transform","translate(0, "+(o.graphHeight+o.dimPlayer())+")");o.createClipPaths();o.drawGraph()},drawGraph:function(){var g=this,b=g.svg;if(!g.container.isVisible()||!g.container.el){return}b.select("g.x.axis").call(g.xAxis);b.select("path.domain").attr("d",g.area);b.selectAll("path.theme").attr("d",g.line);b.select("path.player.span").attr("d",g.playerArea);b.select(".player.start").attr("transform","translate("+g.x(g.playerStart)+", "+(g.dimPlayer()/2)+")");b.select(".player.end").attr("transform","translate("+g.x(g.playerEnd)+", "+(g.dimPlayer()/2)+")");b.select("path.today").attr("d",g.area);b.select("path.selected").attr("d",g.area);if(g.isPlayerActive&&(g.isPlayerDragging||g.isPlayerBoundaryDragging||g.isPlayerHovered)){g.showLabel("playerStartLabel");g.showLabel("playerEndLabel");g.updateLabel("playerStartLabel",g.playerStart,{yOffset:-18,prefix:"â¶",suffix:"â¶",alwaysShow:true});g.updateLabel("playerEndLabel",g.playerEnd,{prefix:"â",suffix:"â",alwaysShow:true})}else{g.hideLabel("playerStartLabel");g.hideLabel("playerEndLabel")}if(g.isAnalyzeActive&&!g.brush.empty()){g.brush.extent([g.analyzeStart,g.analyzeEnd]);g.brush(b.select(".analyze"))}if(g.incidentTime){b.select("path.incident").data([[{date:g.incidentTime,value:2}]]).attr("d",g.area);g.updateLabel("incidentLabel",g.incidentTime,{prefix:"â",suffix:"â"})}g.updateLabel("todayLabel",g.today,{prefix:"â",suffix:"â",yOffset:-18});g.updateLabel("selectedLabel",g.value,{prefix:"⬦",suffix:"⬦",alwaysShow:true})},getValue:function(){return this.value},getNearestMsOffset:function(b,o,h,g){h=Math.round((h.getTime()-o.getTime())/(g*b));return new Date(o.getTime()+h*g*b)},getNearestOffset:function(b,w,o,h){var q,g=w;while(g<o){q=g;g=b(g,h)}if(q&&o.getTime()-q.getTime()<g.getTime()-o.getTime()){return q}return g},getValidValue:function(h,g){var b=this;if(!(h instanceof Date)){h=new Date(h*1000)}if(b.domain){if(!g){if(b.domain[0]>h){h=b.domain[0]}if(b.domain[1]<h){h=b.domain[1]}}if(b.intervalResolution){switch(b.intervalMode){case"minute":h=b.getNearestMsOffset(60000,b.domain[0],h,b.intervalResolution);break;case"hour":h=b.getNearestMsOffset(3600000,b.domain[0],h,b.intervalResolution);break;case"daily":h=b.getNearestOffset(d3.time.day.offset,b.domain[0],h,b.intervalResolution);break;case"monthly":h=b.getNearestOffset(d3.time.month.offset,b.domain[0],h,b.intervalResolution);break;case"yearly":h=b.getNearestOffset(d3.time.year.offset,b.domain[0],h,b.intervalResolution);break}}}return h},setValue:function(h){var g=this,b=g.value;g.value=h=g.getValidValue(h);g.svg.select("path.selected").data([[{date:h,value:2}]]);g.drawGraph();if(g.value.getTime()!==b.getTime()){g.fireEvent("change",g.value)}},resetLayers:function(g){var b=this;b.numLayers=g;b.svg.selectAll("path.theme").remove()},updateLayer:function(w,z,o){var A=this,q=A.svg,h=q.select("#ld-"+w.id);h.remove();if(!o){return}var g=o.reduce(function(D,G,C){var F=G[0] instanceof Date?G[0]:new Date(G[0]*1000);var E=G[1] instanceof Date?G[1]:new Date(G[1]*1000);D.push([{date:F,index:z},{date:E,index:z}]);return D},[]);var b=A.colors[z%A.colors.length];if(w.type==="scatHistorical"){b=A.scatColors[w.objtype]||"#fff"}h=q.select("g.layers").append("g").attr("id","ld-"+w.id);var B=h.selectAll("path").data(g).enter().append("path").attr("class","theme range-"+w.id).style("stroke",b).append("title").text(w.layerName)},setDomain:function(w,g){var q=this,h=true,o=true;if(!(w instanceof Date)){w=new Date(w*1000)}if(!(g instanceof Date)){g=new Date(g*1000)}w.setSeconds(0,0);if(q.domainStart&&q.domainStart.getTime()==w.getTime()&&q.domainEnd&&q.domainEnd.getTime()==g.getTime()){return}try{h=q.playerStart.getTime()==q.domainStart.getTime()&&q.playerEnd.getTime()==q.domainEnd.getTime();
1o=q.analyzeStart.getTime()==q.domainStart.getTime()&&q.analyzeEnd.getTime()==q.domainEnd.getTime()}catch(b){}q.domainStart=w;q.domainEnd=g;q.createX([w,g]);q.svg.select("path.domain").data([[{date:w,value:1},{date:g,value:1}]]);if(h||(!q.playerStart||!q.playerEnd||w>q.playerEnd||g<q.playerStart)){q.setPlayerSpan(w,g)}else{if(q.playerStart<q.domainStart||q.playerEnd>q.domainEnd){q.setPlayerSpan(q.playerStart,q.playerEnd)}}if(o||(!q.analyzeStart||!q.analyzeEnd||w>q.analyzeEnd||g<q.analyzeStart)){q.setAnalyzeSpan(w,g);q.brush.clear()}q.drawGraph()},capToDomain:function(g){var b=this;if(g>b.domainEnd){return b.domainEnd}if(g<b.domainStart){return b.domainStart}return g},setPlayerSpan:function(h,b){var g=this;g.playerStart=h=g.getValidValue(h);g.playerEnd=b=g.getValidValue(b);g.svg.select("path.player.span").data([[{date:h},{date:b}]]);g.drawGraph();g.fireEvent("playerSpanChange",h,b);if(g.value<h){g.setValue(h)}else{if(g.value>b){g.setValue(b)}}},setPlayerStart:function(g){var b=this;g=b.capToDomain(g);if(g>b.playerEnd){g=b.playerEnd}b.setPlayerSpan(g,b.playerEnd)},setPlayerEnd:function(b){var g=this;b=g.capToDomain(b);if(b<g.playerStart){b=g.playerStart}g.setPlayerSpan(g.playerStart,b)},dimPlayer:function(){return this.isPlayerActive?this.dimensions.playerLaneHeight:0},setPlayerActive:function(h){var g=this,b=g.svg;g.isPlayerActive=h;b.selectAll(".player").attr("visibility",h?"visible":"hidden");g.setPlayerSpan(g.playerStart,g.playerEnd);g.resize()},setAnalyzeSpan:function(h,b){var g=this;g.analyzeStart=h=g.getValidValue(h,true);g.analyzeEnd=b=g.getValidValue(b,true);g.drawGraph();g.fireEvent("analyzeSpanChange",h,b)},setAnalyzeActive:function(h){var g=this,b=g.svg;g.isAnalyzeActive=h;b.select(".analyze").style("display",h?"inherit":"none");b.select(".selected").attr("visibility",!h?"visible":"hidden");g.setAnalyzeSpan(g.analyzeStart,g.analyzeEnd);g.resize()},setIncident:function(h,b){var g=this;g.incidentTime=h;g.incidentName=b;g.svg.select(".incident").data([[{date:h,value:2}]]);g.svg.select(".incident title").text(b);g.drawGraph()},setIntervalMode:function(h,b){var g=this;g.intervalMode=h;g.intervalResolution=b;g.setValue(g.value)}});Ext.define("Client.module.map.timeslider.TimeSlider",{extend:Client.module.Generic,mixins:[Client.module.map.timeslider.mixins.Date,Client.module.map.timeslider.ux.Renderer,Adaptive.utils.Date],config:{enableAnalyzeMode:false},view:null,internal_name:"av_time_slider",otherMapElementsWidth:274,position:"br-br",delta:{x:-126,y:-20},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.timeslider.lang.TimeSlider");g.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");g.dateTimeFormat=g.formatDate.getString("date_format")+" "+g.formatDate.getString("time_format");g.dateFormat=g.formatDate.getString("date_format");g.monthFormat="m.Y";g.yearFormat="Y";g.currentFormat=g.dateTimeFormat;g.layerUpdateTask=new Ext.util.DelayedTask(g.updateLayers,g);g.computeMinMaxTask=new Ext.util.DelayedTask(g._computeMinMax,g);g.activeLayers=[];g.activeLayersMap={}},buildGui:function(){var g=this,b=g.mapContainer.getWidth()-g.otherMapElementsWidth;g.view=Ext.create("Ext.container.Container",{width:b,height:100,layout:{type:"hbox",align:"stretch"},items:[{xtype:"box",flex:1,style:{"pointer-events":"none"},listeners:{boxready:function(){g.renderer=Ext.create("Client.module.map.timeslider.ux.Renderer",{container:this,incidentTime:g.incidentTime,incidentName:g.incidentName});g.renderer.mon(g.renderer,"change",function(h){g.processLayers(h)});g.player=Ext.create("Client.module.map.timeslider.ux.Player",{renderer:g.renderer,hidden:true});g.mapContainer.add(g.player);g.analyze=Ext.create("Client.module.map.timeslider.ux.Analyze",{renderer:g.renderer,hidden:true});g.analyze.on("analyzeSpanChange",g.processLayers,g);g.mapContainer.add(g.analyze);g.updateContainerPosition()}}},{xtype:"container",layout:"vbox",width:32,items:[{xtype:"button",cls:"icon",scale:"medium",width:32,height:32,iconCls:"icon-play-forward",tooltip:g.lang.getString("btnPlayMode_tooltip"),toggleGroup:"timesliderState",toggleHandler:function(h,o){if(o){h.addCls("active");g.player.show();g.updateContainerPosition()}else{h.removeCls("active");g.player.hide()}}},{xtype:"button",cls:"icon",scale:"medium",width:32,height:32,iconCls:"icon-eye",hidden:!g.enableAnalyzeMode,tooltip:g.lang.getString("btnAnalyzeMode_tooltip"),toggleGroup:"timesliderState",toggleHandler:function(h,o){if(o){h.addCls("active");g.analyze.show()}else{h.removeCls("active");g.analyze.hide();g.processLayers(g.renderer.getValue())}}},{xtype:"box",height:6}]}]});g.mapContainer.add(g.view);g.mapContainer.on("resize",g.updateContainerPosition,g);g.updateContainerPosition()},destroyGui:function(){var b=this;b.reportEvent("timeSliderTimeSet",{date:null,rangeStart:null,rangeEnd:null});b.mapContainer.un("resize",b.updateContainerPosition,b);b.renderer.destroy();delete b.renderer;b.player.destroy();delete b.player;b.analyze.destroy();
1delete b.analyze;b.view.destroy();delete b.view},afterMapReset:function(g){var b=this;b.bindMapEvts(b.map);if(b.view){b.destroyGui()}},beforeMapReset:function(b){if(this.map){this.unbindMapEvts(this.map)}},_setActive:function(g){var b=this;if(!b.map){return}if(b.view){if(g){b.bindMapEvts(b.map);b.activate()}else{b.activeLayers=[];b.activeLayersMap={};b.unbindMapEvts(b.map);b.deactivate()}}},updateContainerPosition:function(){var h=this;if(!h.view.getEl()){return}var g=h.mapContainer.getWidth()-h.otherMapElementsWidth,o=0,b=0;if(g<300){g=h.mapContainer.getWidth()-44;o=-100;b=104}h.view.setWidth(g);h.view.alignTo(h.mapContainer,h.position,[h.delta.x+b,h.delta.y+o]);if(h.player){h.player.alignTo(h.view,"br-tr")}if(h.analyze){h.analyze.alignTo(h.view,"br-tr")}},bindMapEvts:function(g){var b=this;g.events.register("changelayer",b,b.layerChanged);g.events.register("addlayer",b,b.layerAddOrRemove);g.events.register("removelayer",b,b.layerAddOrRemove)},unbindMapEvts:function(g){var b=this;g.events.unregister("changelayer",b,b.layerChanged);g.events.unregister("addlayer",b,b.layerAddOrRemove);g.events.unregister("removelayer",b,b.layerAddOrRemove)},isRelevantLayer:function(b){var g=this,h=Adaptive.utils.Config.getThemeData(b.record);return g.isTimeDimensionLayer(b)||g.isScatHistoricalLayer(b,h)},layerChanged:function(b){if(b.property==="visibility"&&this.isRelevantLayer(b.layer)){this.layerUpdateTask.delay(250)}},layerAddOrRemove:function(b){if(this.isRelevantLayer(b.layer)){this.layerUpdateTask.delay(250)}},computeMinMax:function(){this.computeMinMaxTask.delay(200)},_computeMinMax:function(){var A=this,w=null,b=null,g=new Date().getTime()/1000,q=-1,z=-1,o=-1,h=-1;if(!A.view){A.buildGui()}A.renderer.resetLayers(A.activeLayers.length);Ext.Array.each(A.activeLayers,function(D,C){if(D.minDate&&D.maxDate){D.maxDate=D.maxDate==="infinity"?g:D.maxDate;if(!w&&!b){w=D.minDate;b=D.maxDate}else{w=D.minDate<w?D.minDate:w;b=D.maxDate>b?D.maxDate:b}if(!D.minutePeriod&&!D.dayPeriod&&!D.monthPeriod&&!D.yearPeriod){q=0}else{if(D.minutePeriod&&(D.minutePeriod<q||q==-1)){q=D.minutePeriod}}if(D.dayPeriod&&(D.dayPeriod<z||z==-1)){z=D.dayPeriod}if(D.monthPeriod&&(D.monthPeriod<o||o==-1)){o=D.monthPeriod}if(D.yearPeriod&&(D.yearPeriod<h||h==-1)){h=D.yearPeriod}var E;if(D.dateRange){E=D.dateRange.map(function(F){return[F[0],F[1]==="infinity"?Math.round(g):F[1]]})}else{E=[[D.minDate,D.maxDate]]}A.renderer.updateLayer(D,C,E)}});if(!w&&!b){w=Math.round(new Date().getTime()/1000)-60;b=Math.round(new Date().getTime()/1000)+60}else{if(!w){w=b}else{if(!b){b=w}else{if(w>b){var B=w;w=b;b=B}}}}A.minDate=Ext.Date.parse(w,"U");A.maxDate=Ext.Date.parse(b,"U");A.renderer.setDomain(w,b);if(!A.renderer.getValue()){A.renderer.setValue(b<g?b:w>g?w:g)}A.player.setDomain(w,b);A.analyze.setDomain(w,b);if(q==-1&&(z>0||o>0||h>0)){if(z>0){A.setMode("daily",z)}else{if(o>0){A.setMode("monthly",o)}else{if(h>0){A.setMode("yearly",h)}}}}else{if(q==-1){q=0}A.setMode("minute",q)}if(A.resetStartValue){A.renderer.setValue(b<g?b:w>g?w:g);A.resetStartValue=false}else{if(A.currentTimeSet){A.updateLayerParams()}}},setMode:function(o,g){var h=this,b;o=o||"minute";h.intervalMode=o;h.intervalResolution=g;h.renderer.setIntervalMode(o,g);h.player.setMode(o,g);switch(o){case"daily":h.currentFormat=h.dateFormat;break;case"monthly":h.currentFormat=h.monthFormat;b=(h.maxDate.getFullYear()-h.minDate.getFullYear())*12+(h.maxDate.getMonth()-h.minDate.getMonth());break;case"yearly":h.currentFormat=h.yearFormat;break;default:h.currentFormat=h.dateTimeFormat;break}},updateLayers:function(){var A=this,o=A.map.getLayers(),h,q,z,b,B,g,w=[];A.resetStartValue=A.activeLayers.length===0;o.forEach(function(C){if(!C.getVisibility()||C.ghost_layer){return}h=Adaptive.utils.Config.getThemeData(C.record);q=h&&h.theme_uuid;z=A.getLayer(C.id);if(!z){var E=Adaptive.utils.Config.getBooleanConfig(C.record,"auto_update_time",false),D=E?C.getFullRequestString({REQUEST:"GetCapabilities",VERSION:"1.1.1"}):null;if(A.isTimeDimensionLayer(C)){z=Ext.create("Client.module.map.timeslider.Layer",{layerId:C.id,layerName:C.name,theme_uuid:q,data:C.options.dimensions.time,dynamic:Adaptive.utils.Config.getConfig(C.record,"use_dynamic_time")==="True",dynamic_refresh:Adaptive.utils.Config.getConfig(C.record,"use_dynamic_refresh_time")==="True",auto_update_time:E,dynamic_max_value:Adaptive.utils.Config.getBooleanConfig(C.record,"dynamic_max_value"),getCapabilitiesUrl:D});b=Adaptive.utils.Config.getConfig(C.record,"wms_time_range_start");if(b){z.minDate=parseInt(b)/1000;z.minDateLocked=true}B=Adaptive.utils.Config.getConfig(C.record,"wms_time_range_end");if(B){z.maxDate=parseInt(B)/1000;z.maxDateLocked=true}g=Adaptive.utils.Config.getConfig(C.record,"wms_time_interval");if(g){z.periodFormat=g;z.periodFormatLocked=true;z.processPeriod()}}else{if(A.isScatHistoricalLayer(C,h)){if(!C.record||!C.record.data){return}if(h&&h.data&&h.data.scat_object){z=Ext.create("Client.module.map.timeslider.L
1ayer",{layerId:C.id,layerName:C.name,data:null,type:"scatHistorical",objtype:h.data.scat_object,parentType:h.data.parent_type,mime:h.data.mime,operation_geosync_id:A.operation_geosync_id})}}}if(z){z.on("dateRangeLoaded",function(F){if(A.activeLayers&&A.activeLayers.length&&F.minDate&&F.maxDate){if(F.minDate==F.maxDate){F.maxDate=F.maxDate+3600}}if(A.activeLayers.some(function(G){return G.minDate||G.maxDate||A.dateRange})){A.computeMinMax()}else{if(A.view){A.destroyGui()}}})}}if(z){w.push(z)}});A.activeLayers.forEach(function(C){if(w.indexOf(C)==-1){C.destroy()}});A.activeLayers=w;A.activeLayersMap=w.reduce(function(D,C){D[C.layerId]=C;return D},{});if(A.activeLayers.some(function(C){return C.minDate||C.maxDate})){A.computeMinMax()}else{if(A.view){A.destroyGui()}}},isTimeDimensionLayer:function(b){if(b.CLASS_NAME==="OpenLayers.Layer.WMS"){return !!(b.options&&b.options.dimensions&&b.options.dimensions.time)}return false},isScatHistoricalLayer:function(b,g){return !!(g&&g.data&&g.data.scat_object&&g.data.scat_historical)},processLayers:function(b){var g=this;if(g.processLayersTimer){clearTimeout(g.processLayersTimer)}g.processLayersTimer=setTimeout(function(){g._processLayers(b)},250)},_processLayers:function(b){var g=this;g.currentTimeSet={date:b instanceof Date?b:null,rangeStart:b.length?b[0]:null,rangeEnd:b.length?b[1]:null};g.reportEvent("timeSliderTimeSet",g.currentTimeSet);g.updateLayerParams()},updateLayerParams:function(){var g=this,b=[],h=g.currentTimeSet.date||g.currentTimeSet.rangeEnd;Ext.Array.each(g.activeLayers,function(o){if(o.type==="scatHistorical"){var w=g.map.getLayer(o.layerId);w.mergeNewParams({operation_geosync_id:g.operation_geosync_id,time:h.toISOString(),range_start:(g.currentTimeSet.rangeStart?g.currentTimeSet.rangeStart.toISOString():"1970-01-01T00:00:00Z")});if(w._ghost_layer){if(b.indexOf(w._ghost_layer)==-1){b.push(w._ghost_layer)}}else{w.redraw(true)}}else{var q=o.getValidTime(Math.floor(h.getTime()/1000));if(q){g.map.getLayer(o.layerId).mergeNewParams({time:q})}}});b.forEach(function(o){o.redraw(true)})},_onScatOperationSelected:function(h){var g=this,b=h.data.start_date;g.operation_geosync_id=h.data.geosync_id;g.incidentTime=typeof b==="string"?GeoMind.utils.Date.fixDate(b):b;g.incidentName=h.data.incident_name;if(g.renderer){g.renderer.setIncident(g.incidentTime,g.incidentName)}Ext.defer(function(){Ext.each(g.activeLayers,function(q,o){if(q.type==="scatHistorical"){if(g.renderer){g.renderer.updateLayer(q,o,null)}q.operation_geosync_id=g.operation_geosync_id;q.getMinMax()}})},500)},_onScatDataUpdated:function(){this.updateScatLayers()},_onScatDataDemobilized:function(){this.updateScatLayers()},_onScatDataDeleted:function(){this.updateScatLayers()},updateScatLayers:function(){var b=this;Ext.each(b.activeLayers,function(h,g){if(h.type==="scatHistorical"){h.getMinMax()}})},_onRefreshActiveLayers:function(){var b=this;b.activeLayers.forEach(function(g){g.getMinMax()})},getLayer:function(b){var g=this;return g.activeLayersMap[b]}});Ext.define("Client.module.map.info.tools.lang.Marinogram",{strings:{title:{en:"Marinogram",nb:"Marinogram",nn:"Marinogram"},no_marinogram_found:{en:"No marinogram found for this location",nb:"Det ble ikke funnet noe marinogram for denne lokasjonen"}},errCodes:{}});Ext.define("Client.module.map.info.tools.Marinogram",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Marinogram");g.viewConfig={cls:"a3-marinogram",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:g.getMarinogram}}},getTitle:function(){var b=this;return b.lang.getString("title")+(b.placename?" ("+b.placename+")":"")},createInfoWindow:function(b){var g=this;g.infoWindow=Ext.create("Ext.window.Window",{constrain:true,autoScroll:true,minWidth:300,width:800,layout:"auto",title:g.getTitle(),items:b,listeners:{close:function(){delete g.infoWindow}},maxHeight:g.mapContainer.getHeight(),maxWidth:g.mapContainer.getWidth()});g.infoWindow.showWithin(300)},getMarinogram:function(){var g=this,h=g.lonlat.lat.toFixed(5),o=g.lonlat.lon.toFixed(5);g.loadingWindow=Ext.create("Ext.window.Window",{constrain:true,width:200,height:200,layout:"fit",title:g.getTitle(),items:[{xtype:"box",itemId:"loadingBox"}]});g.loadingWindow.show();g.loadingWindow.down("#loadingBox").setLoading(true);var b="https://marinogram.vercel.app/?lon="+o+"&lat="+h;g.createInfoWindow([{xtype:"box",layout:"auto",autoEl:{tag:"iframe",src:b,height:480,width:"100%",border:"0",frameborder:"0"}}]);g.loadingWindow.close();delete g.loadingWindow}});Ext.define("Client.module.map.info.tools.lang.ElevationProfile",{strings:{title:{en:"Elevation Profile",nb:"Høydeprofil",nn:"Høydeprofil"},elevation:{en:"Elevation (m)",nb:"Høyde (m)",nn:"Høyde (m)"},distance:{en:"Distance (m)",nb:"Avstand (m)",nn:"Avstand (m)"},length:{en:"Length",nb:"Lengde",nn:"Lengde"},load_changed_elevation_profile:{en:"Reload elevation profile",nb:"Last ny høydeprofil",nn:"Last ny høgdeprofil"},hint:{en:"Double-click to complete line",nb:"Dobbelklikk for å avslutte",nn:"Dobbelklikk for å avslutte"},elevationProfileFailed:{en:"Failed to load elevation profile",nb:"Noe gikk galt under lasting av høydeprofil",nn:"Noe gikk galt under lasting av høydeprofil"}}});Ext.define("Client.module.map.info.tools.mixins.ElevationProfileUtils",{calcCenterPoint:function(A,q){var w=this,h=q/2,C=0,b=null;for(i=0;i<A.length-1;i++){var g=w.calcSegDist(A[i],A[i+1]);C+=g;if(h<=C){var z=A[i],o=A[i+1];restDist=h-(C-g);var B=restDist/g;x=o.x*B+z.x*(1-B);y=o.y*B+z.y*(1-B);b=new OpenLayers.Geometry.Point(x,y);break}}return b},calculatePointsAlongLine:function(b,A){var z=this,h=z.calcNumberOfPoints(A),C=[];for(i=0;i<b.length-1;i++){var g=b[i],B=b[i+1],w=z.calcSegNumPoints(g,B,A,h);for(j=0;j<w;j++){var q=g.x+(B.x-g.x)*(j/w),o=g.y+(B.y-g.y)*(j/w);C.push(new OpenLayers.Geometry.Point(q,o))}}C.push(b[b.length-1]);return C},calcTotalDistance:function(b){var h=this,o=0,g;for(g=0;g<b.length-1;g++){o+=h.calcSegDist(b[g],b[g+1])}return o},calcSegDist:function(h,g){return OpenLayers.Util.distVincenty({lon:h.x,lat:h.y},{lon:g.x,lat:g.y})},calcNumberOfPoints:function(b){return Math.min(Math.floor((b*1000)/20),400)},calcSegNumPoints:function(b,o,h,g){return Math.floor((this.calcSegDist(b,o)*1000/(h*1000))*g)}});Ext.define("Client.module.map.info.tools.ElevationProfile",{extend:Client.module.map.info.tools.Generic,internal_name:"elevation_profile",mixins:[Client.module.map.info.tools.mixins.ElevationProfileUtils,Adaptive.mixins.Notify],config:{serviceUrl:"WebServices/client/ElevationProfile.asmx/",proxy:null},stylePoint:new OpenLayers.StyleMap({"default":new OpenLayers.Style({fill:undefined,fillOpacity:0.5,fillColor:"#333",strokeColor:"#333",stroke:undefined,strokeOpacity:0.5,strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:"none",pointerEvents:"visiblepainted",cursor:"inherit",pointRadius:8})}),labelPoint:new OpenLayers.StyleMap({"default":{fill:undefined,fillOpacity:0,stroke:undefined,strokeOpacity:0,strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:"none",pointerEvents:"visiblepainted",cursor:"inherit",pointRadius:0,label:"${dist}",fontColor:"#000000",fontSize:"12px",fontFamily:"Open Sans, Verdana, Arial, sans-serif",fontWeight:"bold",labelXOffset:"20",labelYOffset:"20",labelOutlineColor:"white",labelOutlineWidth:2}}),styleLine:new OpenLayers.StyleMap({"default":new OpenLayers.Style({strokeColor:"#3f5f7a",strokeWidth:6,fillColor:"#3f5f7a",fillOpacity:1,strokeOpacity:1,pointRadius:8,cursor:"pointer"}),select:new OpenLayers.Style({strokeColor:"#ED66BE",strokeOpacity:0.5,strokeWidth:3,fillColor:"#ED66BE",fillOpacity:0.5,pointRadius:10,cursor:"pointer"})}),styleLineOld:new OpenLayers.StyleMap({"default":new OpenLayers.Style({strokeColor:"#3f5f7a",strokeWidth:3,fillColor:"#3f5f7a",fillOpacity:"0,5",strokeOpacity:1,pointRadius:8,strokeDashstyle:"dash"})}),dataViewExportHidden:true,dataViewFilterHidden:true,dataViewSelectionHidden:true,dataViewSelectAllHidden:true,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.ElevationProfile");Ext.define("elevationModel",{extend:Ext.data.Model,fields:[{name:"distance",mapping:"distance",type:"float",convert:function(h){return h*1000}},{name:"terrain",mapping:"terrain"},{name:"elevation",mapping:"elevation",type:"float",convert:function(o,h){return h.data.terrain=="Havflate"||o===null||isNaN(o)?-1:o}},{name:"name",mapping:"name"},{name:"ssrid",mapping:"ssrid"},{name:"lon",mapping:"lon"},{name:"lat",mapping:"lat"}]});g.viewConfig={cls:"a3-elevation",tooltip:g.lang.getString("title"),listeners:{scope:g,click:function(){var h={evtName:"mapPopupHide",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:null};g.dispatchEvent(h,{confirmationRequired:false});g.startDrawing()}}}},initLayers:function(){var b=this;if(!b.map){return}if(b.drawingLayer||b.oldVectorLayer||b.pointLayer||b.measureLayer){return}b.drawingLayer=new OpenLayers.Layer.Vector(Ext.id(),{styleMap:b.styleLine});b.oldVectorLayer=new OpenLayers.Layer.Vector(Ext.id(),{styleMap:b.styleLineOld});b.pointLayer=new OpenLayers.Layer.Vector("Point Layer",{styleMap:b.stylePoint});b.measureLayer=new OpenLayers.Layer.Vector(Ext.id(),{styleMap:b.labelPoint});b.map.addLayers([b.oldVectorLayer,b.drawingLayer,b.pointLayer,b.measureLayer])},clearLayers:function(){var b=this;if(b.oldVectorLayer){b.oldVectorLayer.destroyFeatures();if(b.oldVectorLayer.map){b.oldVectorLayer.map.removeLayer(b.oldVectorLayer)}delete b.oldVectorLayer}if(b.drawingLayer){b.drawingLayer.destroyFeatures();if(b.drawingLayer.map){b.drawingLayer.map.removeLayer(b.drawingLayer)}delete b.drawingLayer}if(b.pointLayer){b.pointLayer.destroyFeatures();if(b.pointLayer.map){b.pointLayer.map.removeLayer(b.pointLayer)}delete b.pointLayer}if(b.measureLayer){b.measureLayer.destroyFeatures();if(b.measureLayer.map){b.measureLayer.map.removeLayer(b.measureLayer)}delete b.measureLayer}},initControls:function(){var b=this;if(!b.map){return}if(!b.initialized){b.drawControl=new OpenLayers.Control.DrawFeature(b.drawingLayer,OpenLayers.Handler.Path,{controlName:"line"});b.modifyControl=new OpenLayers.Control.ModifyFeature(b.drawingLayer);b.map.addControl(b.drawControl);b.map.addControl(b.modifyControl);b.initialized=true}},clearControls:function(){var b=this;if(!b.map){return}if(b.drawControl){b.drawControl.deactivate();b.map.removeControl(b.drawControl);delete b.drawControl}if(b.modifyControl){b.modifyControl.deactivate();b.map.removeControl(b.modifyControl);delete b.modifyControl}b.initialized=false},bindDrawingLayerEvents:function(){var b=this;if(!b.drawingLayer||b.eventsInitialized){return}b.eventsInitialized=true;b.drawingLayer.events.register("featureadded",b,b.featureAdded);b.drawingLayer.events.register("sketchmodified",b,b.sketchModified);b.drawingLayer.events.register("featuremodified",b,b.featureModified);b.drawingLayer.events.register("vertexmodified",b,b.sketchModified)},unbindDrawingLayerEvents:function(){var b=this;if(!b.drawingLayer||!b.eventsInitialized){return}b.eventsInitialized=false;b.drawingLayer.events.unregister("featureadded",b,b.featureAdded);b.drawingLayer.events.unregister("sketchmodified",b,b.sketchModified);b.drawingLayer.events.unregister("featuremodified",b,b.featureModified);b.drawingLayer.events.unregister("vertexmodified",b,b.sketchModified)},activateElevationProfile:function(){var b=this;b.initLayers();b.initControls();b.bindDrawingLayerEvents()},deactivateElevationProfile:function(){var b=this;b.unbindDrawingLayerEvents();b.clearControls();b.clearLayers()},startDrawing:function(){var b=this;b.reportEvent("elevationProfileStart");if(!b.initialized){b.activateElevationProfile()}b.oldVectorLayer.destroyFeatures();b.drawingLayer.destroyFeatures();b.drawControl.activate();if(b.point){var g=b.map.getViewPortPxFromLonLat(b.point);b.drawControl.handler.modifyFeature(g,true);b.drawControl.handler.addPoint(g)}b.hint=new OpenLayers.Control.MousePosition({prefix:"",separator:", ",suffix:" ("+b.lang.getString("hint")+")",numDigits:2,emptyString:"—"});b.map.addControl(b.hint);b.hint.activate();b.map.events.register("mousemove",b,b.repositionHint)},repositionHint:function(g){var b=this;if(!b.hint){return}b.hint.div.style.right="auto";b.hint.div.style.bottom="auto";b.hint.div.style.top=(g.y-10)+"px";b.hint.div.style.left=(g.x+10)+"px"},sketchModified:function(b){var q=this,o=b.feature,h=o.geometry.getVertices();for(i=0;i<h.length;++i){var g=new OpenLayers.Geometry.Point(h[i].x,h[i].y).transform(q.map.projection,"EPSG:4326");h[i]=g}var w=q.calcTotalDistance(h);if(w>0){q.addLabelToPoint(h,w)}},addLabelToPoint:function(g,q){var o=this;o.measureLayer.removeAllFeatures();var b=o.calcCenterPoint(g,q);q=Math.round(q*1000);b.transform("EPSG:4326",o.map.projection);var h=new OpenLayers.Feature.Vector(b,{dist:Ext.util.Format.number(q,"0,0 m")});o.measureLayer.addFeatures(h)},featureAdded:function(B){var q=this,b=B.feature.geometry.getVertices(),z=new OpenLayers.Geometry.LineString(b),w=new OpenLayers.Feature.Vector(z),A=[];
1if(q.hint){q.map.events.unregister("mousemove",q,q.repositionHint);q.map.removeControl(q.hint);q.hint.destroy();delete q.hint}q.oldVectorLayer.removeAllFeatures();q.oldVectorLayer.addFeatures(B.feature.clone());q.currentFeature=B.feature;q.pointLayer.destroyFeatures();q.drawControl.deactivate();q.modifyControl.activate();q.modifyControl.selectFeature(B.feature);for(i=0;i<b.length;i++){A.push(new OpenLayers.Geometry.Point(b[i].x,b[i].y).transform(q.map.projection,"EPSG:4326"))}var C=q.calcTotalDistance(A);A=q.calculatePointsAlongLine(A,C);var o=new OpenLayers.Geometry.LineString(A),D=new OpenLayers.Feature.Vector(o),g=new OpenLayers.Format.GPX(),h=g.write(D);q.createChart(B.feature,C);q.chart.pointList=A;q.chart.totalDistance=C;q.getElevationProfile(h)},featureModified:function(b){var g=this;g.pendingFeature=b;if(g.dataView){g.dataView.down("#reloadElevationChart").show(true)}},reloadData:function(){var b=this;b.chart.setLoading(true);b.chart.store.removeAll();b.featureAdded(b.pendingFeature)},createChart:function(b,h){var g=this;if(g.dataView){var o={evtName:"triggerDataViewExpand",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:{id:g.dataView.id}};g.dispatchEvent(o,{confirmationRequired:false});return}g.chart=Ext.create("Ext.chart.Chart",{theme:"Blue",anchor:"100% 100%",store:Ext.create("Ext.data.Store",{model:"elevationModel",proxy:{type:"memory",reader:{type:"json"}}}),style:{background:"#fff"},animate:false,shadow:false,axes:[{type:"numeric",position:"left",fields:["elevation"],title:g.lang.getString("elevation"),minorTickSteps:1,majorTickSteps:4,grid:{odd:{opacity:1,fill:"#f0f0f0"}}},{type:"numeric",position:"bottom",fields:["distance"],minorTickSteps:3,title:g.lang.getString("distance")}],series:[{type:"area",highlight:true,axis:"left",smooth:true,fill:true,xField:"distance",yField:"elevation",markerConfig:{type:"circle",size:0,radius:0,"stroke-width":0},renderer:function(z,w,q,A){return Ext.apply(q,{fill:"#36f"})},listeners:{itemmouseover:function(q){g.hoverPoint(q.storeItem)}},tips:{showDelay:0,trackMouse:true,renderer:function(q,w){this.update(Ext.util.Format.number(w.storeItem.data.elevation,"0,0.0 m"))}}}]});g.dataView=Ext.create("Ext.container.Container",{layout:"absolute",title:g.lang.getString("title"),closable:true,grid_module:g,feature:b,listeners:{close:function(q){g.pointLayer.removeAllFeatures();g.drawingLayer.removeFeatures([q.feature]);g.deactivateElevationProfile();g.fireEvent("dataViewGridClose",{theme_uuid:q.id});g.dataView=null;g.chart=null},activate:g.onViewActivate,deactivate:g.onViewDeactivate,scope:g},items:[g.chart,{xtype:"button",text:g.lang.getString("load_changed_elevation_profile"),itemId:"reloadElevationChart",cls:"a3-submit-btn",style:{bottom:"5px",left:"10px"},listeners:{click:function(q){q.hide();g.reloadData()}},hidden:true}]});var o={evtName:"dataViewRequest",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:{record:{view:g.dataView,id:g.dataView.id}}};g.dispatchEvent(o,{confirmationRequired:false});g.chart.setLoading(true)},executeSearchRequest:function(h){var g=this,b=g.searchUrl,o={"Content-Type":"application/json; charset=utf-8"};if(!g.connection){g.connection=Ext.create("Ext.data.Connection",{cors:Ext.isIE9,disableCachingParam:false})}else{g.connection.abortAll()}g.connection.request(Ext.apply({url:(g.proxy||g.serviceUrl)+"Upload",method:"POST",headers:o},h))},getElevationProfile:function(g){var b=this;b.executeSearchRequest({params:Ext.JSON.encode({gpx:Ext.util.Format.htmlEncode(g)}),success:Ext.bind(b.uploadSuccess,b),failure:Ext.bind(b.uploadFailure,b)})},uploadSuccess:function(g){var h=this,o=JSON.parse(g.responseText),b=o&&o.d;if(b){h.getElevationDetails(b)}else{h.elevationDataFetchFailed()}},uploadFailure:function(){this.elevationDataFetchFailed()},elevationDataFetchFailed:function(){var b=this;if(!b.chart){return}b.chart.store.removeAll();b.chart.setLoading(false);b.showNotifyError(b.dataView,b.lang.getString("elevationProfileFailed"))},getElevationDetails:function(b){var w=this,z=Ext.create("Ext.data.Connection",{cors:Ext.isIE9}),B=typeof(__baat__)!=="undefined",D="//wps.geonorge.no";
1D+="/skwms1/wps.elevation2?request=Execute&service=WPS&version=1.0.0&identifier=elevationJSON&datainputs=gpx=%40xlink:href="+(w.proxy?w.proxy.replace("https://","http://"):document.URL+w.serviceUrl)+"Download%3FgpxFile="+b+";places=0";if(!w.chart){return}if((!w.proxy||!B)&&document.URL.indexOf("localhost")!=-1||document.URL.indexOf("127.0.0.1")!=-1){console.log("Elevation: Using emulation data due to local host");var q=[];if(w.chart.pointList){var A=200+Math.random()*400,h=2;Ext.Array.each(w.chart.pointList,function(E,F){q.push({distance:w.chart.totalDistance*F/(w.chart.pointList.length-1),elevation:A,terrain:Math.random()>0.25?"Skog":"Havflate",lon:E.x,lat:E.y,road:""});if(A>100){h+=(Math.random()-0.5)*2}else{h+=Math.random()*2}A+=h})}var o='<?xml version="1.0" encoding="UTF-8"?><wps:ComplexData xmlns:wps="http://www.opengis.net/wps/1.0.0" dataType="string">'+JSON.stringify(q)+"</wps:ComplexData>",C;if(window.DOMParser){var g=new DOMParser();C=g.parseFromString(o,"text/xml")}else{C=new ActiveXObject("Microsoft.XMLDOM");C.async=false;C.loadXML(o)}w.plotChart({responseXML:C})}else{z.useDefaultXhrHeader=false;z.request({url:D,method:"get",timeout:1000000,callback:function(F,G,E){if(G){w.plotChart(E)}else{console.warn("Could not download elevation profile");w.elevationDataFetchFailed()}}})}},plotChart:function(b){var q=this,w=Ext.DomQuery,g=b.responseXML;if(!q.chart){return}if(!g){var z=new DOMParser();g=z.parseFromString(b.responseText,"text/xml")}var o=w.select("wps|ComplexData",g);if(Ext.isArray(o)&&o.length>0){var h=Ext.decode(o[0].textContent);if(h){q.chart.store.loadData(h);q.chart.setLoading(false)}else{console.warn("Invalid data");q.elevationDataFetchFailed()}}},onViewActivate:function(){var b=this;b.initControls();b.modifyControl.activate();b.modifyControl.selectFeature(b.currentFeature);b.map.addLayer(b.drawingLayer)},onViewDeactivate:function(){var b=this;if(b.initialized){b.pointLayer.destroyFeatures();b.map.removeLayer(b.drawingLayer);b.clearControls()}},hoverPoint:function(h){var g=this,w=h.data.lon,q=h.data.lat,b,o;g.pointLayer.destroyFeatures();b=new OpenLayers.Geometry.Point(w,q).transform(new OpenLayers.Projection("EPSG:4326"),g.map.projection);o=new OpenLayers.Feature.Vector(b);g.pointLayer.addFeatures(o)}});Ext.define("Client.module.map.info.tools.lang.SeaLevel",{strings:{title:{en:"Sea Level",nb:"HavnivÃ¥",nn:"HavnivÃ¥"},today:{en:"Today",nb:"I dag",nn:"I dag"},tomorrow:{en:"Tomorrow",nb:"I morgen",nn:"I morgon"},Sunday:{en:"Sunday",nb:"Søndag",nn:"Sundag"},Monday:{en:"Monday",nb:"Mandag",nn:"MÃ¥ndag"},Tuesday:{en:"Tuesday",nb:"Tirsdag",nn:"Tysdag"},Wednesday:{en:"Wednesday",nb:"Onsdag",nn:"Onsdag"},Thursday:{en:"Thursday",nb:"Torsdag",nn:"Torsdag"},Friday:{en:"Friday",nb:"Fredag",nn:"Fredag"},Saturday:{en:"Saturday",nb:"Lørdag",nn:"Laurdag"},from:{en:"from",nb:"fra",nn:"fra"},Attribution:{en:"© Kartverket",nb:"© Kartverket",nn:"© Kartverket"},lat:{en:"N",nb:"N",nn:"N"},lon:{en:"E",nb:"Ã",nn:"Ã"},station:{en:"Station",nb:"MÃ¥lestasjon"},no_sea_level_found:{en:"No sea level information for this location",nb:"Ingen havnivÃ¥informasjon funnet for valgt punkt"},sehavniva_url:{en:"https://kartverket.no/en/at-sea/se-havniva/result?",nb:"https://kartverket.no/til-sjos/se-havniva/resultat?"},sehavniva:{en:"Open in SeHavnivÃ¥ (Kartverket)",nb:"Ã
pne i SeHavnivå (Kartverket)"},errMsgFromService:{en:"Message from service",nb:"Melding fra tjeneste"}},errCodes:{}});Ext.define("Client.module.map.info.tools.SeaLevel",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var h=this;Ext.apply(h,b);h.callParent([b]);h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.SeaLevel");h.dateFormat=h.formatDate.getString("date_format");h.timeFormat=h.formatDate.getString("time_format");Ext.define("waterlevelModel",{extend:Ext.data.Model,fields:[{name:"time",type:"datetime",mapping:"@time",convert:function(o){return Ext.Date.parse(o,"c")}},{name:"symbolName",type:"string",mapping:"@flag"},{name:"seaLevel",type:"double",mapping:"@value"}],belongsTo:"locationModel",proxy:{type:"memory",reader:{type:"xml",root:"data",record:"waterlevel"}}});Ext.define("locationModel",{extend:Ext.data.Model,fields:[{name:"name",type:"string",mapping:"location > @name"}],hasMany:[{associationKey:"data",model:"waterlevelModel",name:"waterlevels"}]});h.locationStore=Ext.create("Ext.data.Store",{model:"locationModel",proxy:{type:"memory",reader:{type:"xml",root:"locationdata",record:"locationdata"}}});var g=new Ext.form.field.Date({allowBlank:false,labelAlign:"top",value:new Date(),maxWidth:200,format:h.dateFormat});g.on("change",function(){var o=new Date(g.getValue());
1h.getTidalForecast(o)});h.dataPanel=Ext.create("Ext.view.View",{store:h.locationStore,cls:"a3-sealevel-view",overflowX:"hidden",overflowY:"scroll",tpl:new Ext.XTemplate('<tpl for=".">','<a class="external-link" style="position: absolute; top: 0; right: 0; z-index: 1000; margin: 10px; display: block;" href="'+h.lang.getString("sehavniva_url")+'longitude={[this.getLon()]}&latitude={[this.getLat()]}" target="_blank" rel="noreferrer">',h.lang.getString("sehavniva"),"</a>","<ul>",'<tpl for="waterlevels">','<tpl if="this.newDay(values.time)">','<li class="dayName"><strong>{[this.findDay(values.time)]}, {[this.getDate(values.time)]}</strong></li>',"</tpl>",'<li class="forecastItem">','<span class="timeItem">{[this.getHour(values.time)]}</span>',"{[this.getSymbol(values.symbolName)]}",'<span class="levelItem">{seaLevel} cm</span>',"</li>","</tpl>","</ul>","</tpl>",{getLon:function(){return h.lonlat.lon},getLat:function(){return h.lonlat.lat},getHour:function(o){return Ext.Date.format(o,h.timeFormat)},getDate:function(o){return Ext.Date.format(o,h.dateFormat)},newDay:function(o){if(!h.oldDate){h.oldDate=o;return true}else{if(h.oldDate.getDay()!=o.getDay()){h.oldDate=o;return true}else{return false}}},isToday:function(q){if(!q){return false}var o=new Date();return(q.getMonth()==o.getMonth()&&q.getDate()==o.getDate())},isTomorrow:function(q){if(!q){return false}var o=new Date();return(q.getMonth()==o.getMonth()&&q.getDate()==o.getDate()+1)},findDay:function(o){if(!o){return""}var q=new Array(7);q[0]="Sunday";q[1]="Monday";q[2]="Tuesday";q[3]="Wednesday";q[4]="Thursday";q[5]="Friday";q[6]="Saturday";if(this.isToday(o)){return h.lang.getString("today")}else{if(this.isTomorrow(o)){return h.lang.getString("tomorrow")}else{return h.lang.getString(q[o.getDay()])}}},getSymbol:function(o){return'<img src="resx/icons/client/sealevel_'+o+'.png">'}}),itemSelector:"p"});h.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",constrain:true,width:550,minWidth:400,height:500,layout:"fit",items:[h.dataPanel],buttons:[g,{xtype:"tbfill"},{xtype:"label",html:h.lang.getString("Attribution")}]});h.viewConfig={cls:"a3-sealevel",tooltip:h.lang.getString("title"),tooltipType:"title",listeners:{scope:h,click:function(){h.locationStore.removeAll();h.getTidalForecast();h.showLoadingWindow()}}}},getTidalForecast:function(g){if(!g){g=new Date();g=new Date(g.getFullYear(),g.getMonth(),g.getDate())}var h=this,b=new Date(g);b.setDate(g.getDate()+4);h.dataPanel.setLoading();Ext.Ajax.request({url:"proxies/xSeHavnivaProxy.ashx",method:"GET",disableCaching:false,params:{lat:h.lonlat.lat,lon:h.lonlat.lon,fromtime:g.toISOString(),totime:b.toISOString(),datatype:"tab",refcode:"cd",tide_request:"locationdata"},callback:function(z,C,q){if(C){var w=q.responseXML,o=w.getElementsByTagName("location")[0];if(!o){var A=w.getElementsByTagName("nodata")[0];var B="<p>"+h.lang.getString("no_sea_level_found")+"<p>";if(A){B+="<p>"+h.lang.getString("errMsgFromService")+":<br>"+A.getAttribute("info")+"</p>"}h.createInfoWindow([{xtype:"box",html:B,padding:20,maxWidth:500}]);h.loadingWindow.close();return}h.dataPanel.setLoading(false);h.loadingWindow.close();h.infoWindow.showWithin(550);name=o.getAttribute("name");delete h.oldDate;h.infoWindow.setTitle(Adaptive.utils.Proj.toDDMM(h.lonlat.lat)+h.lang.getString("lat")+", "+Adaptive.utils.Proj.toDDMM(h.lonlat.lon)+h.lang.getString("lon")+" - "+h.lang.getString("station")+": "+name.charAt(0).toUpperCase()+name.slice(1).toLowerCase());h.locationStore.loadRawData(q.responseXML)}else{h.failed()}}})},createInfoWindow:function(b){var g=this;g.errorWindow=Ext.create("Ext.window.Window",{constrain:true,autoScroll:true,minWidth:300,layout:"auto",title:g.lang.getString("title"),items:b,listeners:{close:function(){delete g.errorWindow}},maxHeight:g.mapContainer.getHeight(),maxWidth:g.mapContainer.getWidth()});g.errorWindow.show()},showLoadingWindow:function(){var b=this;b.loadingWindow=Ext.create("Ext.window.Window",{constrain:true,width:200,height:200,layout:"fit",title:b.lang.getString("title"),items:[{xtype:"box",itemId:"loadingBox"}]});b.loadingWindow.show();b.loadingWindow.down("#loadingBox").setLoading(true)},setInfoCoords:function(){var b=this;if(b.view.getEl()){b.view.enable()}b.callParent(arguments)},setPointInfo:function(b){if(b.terreng&&b.terreng!="Havflate"){this.view.disable()}},hidePopup:function(){var b=this;if(b.errorWindow){b.errorWindow.close()}b.callParent()}});Ext.define("Client.OLMap",{});Client.OLMap=OpenLayers.Class(OpenLayers.Map,{layers:null,_layers:null,wmsLayers:null,wmsLayersVisible:null,_wmsLayersVisible:null,initialize:function(h,b){var g=this;g._layers=[];g._layersSorted=true;g.wmsLayers=[];g.wmsLayersVisible=[];g._wmsLayersVisible=[];OpenLayers.Map.prototype.initialize.apply(g,arguments);g.events.register("changelayer",g,g._layerChanged);g.doFireFallbackTheme=new Ext.util.DelayedTask(g.fireFallbackTheme,g)},getLayers:function(){var b=this;if(!b._layersSorted){b._sortLayers(b._layers);b._layersSorted=true}return b._layers},redrawLayerByThemeUuid:function(b){var g=this;g.wmsLayersVisible.forEach(function(h){var o=h.record&&Adaptive.utils.Config.getThemeData(h.record);if(o&&o.theme_uuid==b){h.redraw(true)}})},isThemeVisible:function(g){var h=this,b=false;h.wmsLayersVisible.forEach(function(o){var q=o.record&&Adaptive.utils.Config.getThemeData(o.record);if(q&&q.theme_uuid==g){b=true}});return b},loopLayersAndExecute:function(b,h){var g=this;Ext.each(g.getLayers(),function(o){var q=o.record&&Adaptive.utils.Config.getThemeData(o.record);if(q&&q.theme_uuid==b){return h(o)}})},getLayerByLayerUuid:function(h){var g=this,b;
1g.wmsLayers.forEach(function(o){if(o.record.data.uuid==h){b=o;return false}});return b},getLayerByThemeUuid:function(b){var h=this,g;h.loopLayersAndExecute(b,function(o){g=o;return});return g},getLegendUrlByThemeUuid:function(b){var h=this,g=h.getLayerByThemeUuid(b);if(!g){return}return h.getLegendUrls(g,false)[0]},getLegendUrls:function(g,h){var o=this,b=g.record&&g.record.get("is_internal"),q=[];g.params&&g.params.LAYERS.split(",").forEach(function(w){if(!b||w.lastIndexOf("_label")==-1){q.push(o.getLegendUrl(g,w,h))}});return q},generateLegendUrl:function(h,b,q,o,g){return"webservices/legend.ashx?name="+h+"&color="+b+(q?("&outlinecolor="+q):"")+(o?("&type="+o):"")+(g?("&opacity="+g):"")},getLegendUrl:function(w,z,o){var E=this,h=w.record,F=h&&Adaptive.utils.Config.getConfig(h,"custom_legend"),A=h&&h.get("layer_type_value"),B=F?F:(h?h.get("get_legend_url"):null),b,D={},q={REQUEST:"GetLegendGraphic",WIDTH:null,HEIGHT:null,LAYER:z||(w.params&&w.params.LAYERS),LAYERS:null,STYLE:null,STYLES:null,SRS:null,SCALE:E.getScale(),SLD_VERSION:"1.1.0",FORMAT:"image/png",LEGEND_OPTIONS:"forceLabels:on"};if(o&&h&&h.get("is_internal")){Ext.merge(q,{CRS:E.getProjection(),BBOX:E.getExtent().toString(),WIDTH:w.tileSize.w,HEIGHT:w.tileSize.h})}if(A!="WMS"){return E.generateLegendUrl(h.get("name"),h.get("layerColor"),null,null,h.get("opacity"))}if(B){var C=B.split("?"),B=C[0],g=C.length>1?C[1]:null;if(g){g.split("&").forEach(function(H){var G=H.split("=");D[G[0].toUpperCase()]=G[1]})}}if(w.params._OLSALT){Ext.merge(D,w.params._OLSALT)}if(h&&h.get("is_internal")&&h.get("proxy_type")!=="qgisserver"){Ext.merge(D,{GUI:__gui_id__,STYLE:GeoMind.lang.Lang.langCode})}if(F){Ext.merge(D,{LANG:GeoMind.lang.Lang.langCode})}Ext.merge(q,D);b=w.getFullRequestString(q);if(B){b=B+"?"+b.split("?")[1]}return b},getPrintLayers:function(q){var g=this,z=null,w=false,b=[],o=[];function h(){if(z&&!w){o.push(z)}else{if(w&&o.length>0){o=o.concat(b)}}z=null;b=[];w=false}g.getLayers().forEach(function(A){if(!A.getVisibility()){return}if(A._ghost_layer){if(A._ghost_layer!=z){h()}z=A._ghost_layer;b.push(A);if(q||A.record&&A.record.get("print_url")){w=true;if(A.record){A.legend_data=[{name:A.name,url:A.record.get("get_legend_url"),layers:A.params.LAYERS}]}}}else{h();o.push(A)}});h();return o},removeWmsLayers:function(q){var o=this,q=q===undefined||q===null?-1:q,g=[],b=[];Ext.each(o._wmsLayersVisible,function(w){if(w.CLASS_NAME=="OpenLayers.Layer.WMS"||w.group){if(q!==-1&&q!==w.group){b.push(w)}else{if(w.ghost_layer||w.is_clone){w.destroy();delete w}}}else{w.setVisibility(false)}});o._wmsLayersVisible=b;if(q==-1){g=o.wmsLayersVisible;o.wmsLayersVisible=[]}else{for(var h=0;h<o.wmsLayersVisible.length;){if(o.wmsLayersVisible[h].group==q){g.push(o.wmsLayersVisible.splice(h,1)[0])}else{++h}}}Ext.each(g,function(w){if(w.CLASS_NAME=="OpenLayers.Layer.WMS"||w.group){o.events.triggerEvent("changelayer",{layer:w,property:"visibility"})}})},onTileLoaded:function(b){if(b.tile.frame&&(!b.tile.imgDiv||!b.tile.imgDiv.className.contains("olImageLoadError"))){b.tile.frame.className=""}},onLoadStart:function(b){var g=b.object;if(!g.ghost_layer&&g.record&&g.record.get("is_failing")){g.record.set("is_failing",false)}else{if(g.layers){g.layers.forEach(function(h){if(h.record&&h.record.get("is_failing")){h.record.set("is_failing",false)}})}}},onLoadEnd:function(b){var g=b.object,h;if(!g.ghost_layer&&g.record&&g.record.get("is_failing")){h=true}else{if(g.layers){g.layers.forEach(function(o){if(o.record&&o.record.get("is_failing")){h=true}})}}if(h){Client.AppLogic.dispatchEvent("layerIsFailing")}},isFallbackUrl:function(g,o){var h=g.split("|"),b=false;h.forEach(function(q){if(o.indexOf(q)==0){b=true}});return b},fireFallbackTheme:function(g,b){Client.AppLogic.dispatchEvent("baseLayerFallback",{failed_layer:g,fallback_theme:b})},onTileError:function(b){var q=this,o=b.tile.layer,g=o.record&&o.record.get("config"),h=g&&GeoMind.utils.Data.extractConfigObjectByKey(g.configs,"fallback_url"),w=g&&GeoMind.utils.Data.extractConfigObjectByKey(g.configs,"fallback_theme");if(h&&!o.tried_fallback_url){o.url=h;o.tried_fallback_url=true;setTimeout(function(){o.redraw()},10);return}
1else{if(w&&(!h||q.isFallbackUrl(h,b.tile.url))){q.doFireFallbackTheme.delay(50,null,q,[o.record.get("uuid"),w])}}if(!o.ghost_layer&&o.record){o.record.set("is_failing",true)}else{if(o.layers){o.layers.forEach(function(z){if(z.record){z.record.set("is_failing",true)}})}}if(b.tile.frame){b.tile.frame.className="olImageLoadErrorWrapper"}},_layerChanged:function(g){var h=g.layer;if(!h.ghost_layer&&h.record&&(g.property=="params"||g.property=="visibility")){h.record.set("is_failing",false)}if(g.property=="params"&&h._ghost_layer){var q={},o=h._ghost_layer.params||{};Ext.apply(q,h.params);if(!h.PREVENT_MERGE){delete q.LAYERS}for(var b in q){if(o[b]&&o[b]==q[b]){delete q[b]}}if(q!={}){h._ghost_layer.mergeNewParams(q)}}},removeParam:function(b,g){delete b.params[g];delete b._ghost_layer.params[g]},_mergeParams:function(h,w,o){var b=OpenLayers.Util.upperCaseObject(w),g=b.LAYERS,q=h.params.LAYERS;if(!o){q=q==g?q:q+","+g;delete b.LAYERS;Ext.apply(h.params,b);h.params.LAYERS=q}else{Ext.apply(h.params,b)}},createGhostLayer:function(b,q,w,h){q.visibility=true;var z=q.olLayer;if(z.map.size.w==0){q.olLayer.map.size.w=256}var o=this,g=GeoMind.utils.Map.createLayer(q);g.events.register("tileerror",o,o.onTileError);g.events.register("loadstart",o,o.onLoadStart);g.events.register("loadend",o,o.onLoadEnd);g.events.register("tileloaded",o,o.onTileLoaded);o._mergeParams(g,b.params,h);g.group=w;g.ghost_layer=true;g.record={get:function(A){switch(A){case"layer_type_value":return"WMS";case"get_legend_url":return Ext.encode(this.data.olLayer.legend_data);
1case"record":return q}return null},data:{olLayer:g}};g.layers=[b];g.legend_data=[{name:q.name,url:q.get_legend_url,layers:q.layers}];return g},moveTo:function(A,g,q){var N=this;if(A!=null&&!(A instanceof OpenLayers.LonLat)){A=new OpenLayers.LonLat(A)}if(!q){q={}}if(g!=null){g=parseFloat(g);if(!this.fractionalZoom){g=Math.round(g)}}var E=g;g=N.adjustZoom(g);if(g!==E){A=N.getCenter()}var H=q.dragging||N.dragging;var C=q.forceZoomChange;if(!N.getCachedCenter()&&!N.isValidLonLat(A)){A=N.maxExtent.getCenterLonLat();N.center=A.clone()}if(N.restrictedExtent!=null){if(A==null){A=N.center}if(g==null){g=N.getZoom()}var I=N.getResolutionForZoom(g);var F=N.calculateBounds(A,I);if(!N.restrictedExtent.containsBounds(F)){var P=N.restrictedExtent.getCenterLonLat();if(F.getWidth()>N.restrictedExtent.getWidth()){A=new OpenLayers.LonLat(P.lon,A.lat)}else{if(F.left<N.restrictedExtent.left){A=A.add(N.restrictedExtent.left-F.left,0)}else{if(F.right>N.restrictedExtent.right){A=A.add(N.restrictedExtent.right-F.right,0)}}}if(F.getHeight()>N.restrictedExtent.getHeight()){A=new OpenLayers.LonLat(A.lon,P.lat)}else{if(F.bottom<N.restrictedExtent.bottom){A=A.add(0,N.restrictedExtent.bottom-F.bottom)}else{if(F.top>N.restrictedExtent.top){A=A.add(0,N.restrictedExtent.top-F.top)}}}}}var D=C||((N.isValidZoomLevel(g))&&(g!=N.getZoom()));var z=(N.isValidLonLat(A))&&(!A.equals(N.center));if(D||z||H){H||N.events.triggerEvent("movestart",{zoomChanged:D});if(z){if(!D&&N.center){N.centerLayerContainer(A)}N.center=A.clone()}var Q=D?N.getResolutionForZoom(g):N.getResolution();if(D||N.layerContainerOrigin==null){N.layerContainerOrigin=N.getCachedCenter();N.layerContainerOriginPx.x=0;N.layerContainerOriginPx.y=0;N.applyTransform();var G=N.getMaxExtent({restricted:true});var o=G.getCenterLonLat();var B=N.center.lon-o.lon;var h=o.lat-N.center.lat;var M=Math.round(G.getWidth()/Q);var L=Math.round(G.getHeight()/Q);N.minPx={x:(N.size.w-M)/2-B/Q,y:(N.size.h-L)/2-h/Q};N.maxPx={x:N.minPx.x+Math.round(G.getWidth()/Q),y:N.minPx.y+Math.round(G.getHeight()/Q)}}if(D){N.zoom=g;N.resolution=Q}var w=N.getExtent();if(N.baseLayer.visibility){N.baseLayer.moveTo(w,D,q.dragging);q.dragging||N.baseLayer.events.triggerEvent("moveend",{zoomChanged:D})}w=N.baseLayer.getExtent();for(var J=N.layers.length-1;J>=0;--J){var O=N.layers[J];if(O!==N.baseLayer&&!O.isBaseLayer){var b=O.calculateInRange();if(O.inRange!=b){O.inRange=b;if(!b){O.display(false)}if(!O.ghost_layer&&!O.is_clone){N.events.triggerEvent("changelayer",{layer:O,property:"visibility"})}}if(b&&O.visibility){O.moveTo(w,D,q.dragging);q.dragging||O.events.triggerEvent("moveend",{zoomChanged:D})}}}N.events.triggerEvent("move");H||N.events.triggerEvent("moveend");if(D){for(var J=0,K=N.popups.length;J<K;J++){N.popups[J].updatePosition()}N.events.triggerEvent("zoomend")}if(D&&N.layersVisibilityChangedEvt){N.layersVisibilityChanged(N.layersVisibilityChangedEvt)}}},layersVisibilityChanged:function(o){var h=this,z=null,w=o.data.group,q=h.getScale(),b=[],g=Ext.Array.clone(h.wmsLayersVisible);h.layersVisibilityChangedEvt=o;if(o.data.records.length>0){if(o.data.records[0].recordData.get("is_base_layer")){h.sortLayers();return}}h.removeWmsLayers(w);Ext.each(o.data.records,function(C){var B=C.recordData.data,A=B.olLayer;if(C.recordData.isSpatial&&A&&C.checked&&!B.is_base_layer){if(!A.calculateInRange()){return}if(A.CLASS_NAME!=="OpenLayers.Layer.WMS"||!(C.recordData instanceof GeoMind.data.model.Layer)){z=null;h._wmsLayersVisible.push(A);A.setVisibility(true)}else{if(z&&!A.PREVENT_MERGE&&z.group==A.group&&z.url[0]==B.url.split("|")[0]&&z.opacity==B.opacity/100){h._mergeParams(z,A.params);z.legend_data.push({name:B.name,url:B.get_legend_url,layers:B.layers});z.layers.push(A)}else{z=h.createGhostLayer(A,B,w,A.PREVENT_MERGE);h._wmsLayersVisible.push(z)}}if(z){h.copyListeners(z,A);A._ghost_layer=z;if(A.PREVENT_MERGE){z=null}}h.wmsLayersVisible.push(A);if(g.indexOf(A)===-1){b.push({layer:A,property:"visibility"})}}});b.forEach(function(A){h.events.triggerEvent("changelayer",A)});Ext.each(h._wmsLayersVisible,function(A){h._addLayer(A)}
1);h._layersSorted=false;h.sortLayers();Client.AppLogic.dispatchEvent("layersVisibilityUpdated")},copyListeners:function(g,b){Ext.iterate(b.events.listeners,function(h,o){o.forEach(function(q){if(!q.obj.CLASS_NAME||!q.obj.CLASS_NAME.contains("OpenLayers")){var w=function(A){if(q.obj.isDestroyed){g.events.unregister(h,q.obj,w);return}var z=A.layer;A.layer=b;q.func.apply(q.obj,[A]);A.layer=z};g.events.register(h,q.obj,w)}},this)},this)},setGroup:function(b,h){var g=this;b.group=h;g.sortLayers()},sortLayers:function(){var b=this;b._sortLayers(b.layers);b.resetLayersZIndex()},_sortLayers:function(q){var o=this,h=o.wmsLayersVisible.length,b,g;q.forEach(function(z,w){b=-1;g=z.record&&(z.record.get("uuid")||(z.record.get("record")&&z.record.get("record").uuid));g&&z.record&&o.wmsLayersVisible.some(function(B,A){if(B.record.get("uuid")==g){b=A;return true}});if(b>-1){z.idx=b}else{z.idx=w+h}});q.sort(function(z,w){if(z.group===w.group){return z.idx-w.idx}if(z.group<w.group){return -1}return 1})},setBaseLayer:function(h){var g=this,b=g.layers.indexOf(h);if(b>0){g.layers.splice(0,0,g.layers.splice(b,1)[0])}OpenLayers.Map.prototype.setBaseLayer.apply(this,arguments)},addLayer:function(h,o){var q=this,g=h.isBaseLayer;if(q.events.triggerEvent("preaddlayer",{layer:h})===false){return false}h.getIndex=function(){return this.map.layers.indexOf(this)};if(!g&&h.record instanceof GeoMind.data.model.Layer&&h.CLASS_NAME=="OpenLayers.Layer.WMS"&&!o){h.setVisibility=function(C){var A=this;if(C==A.getVisibility()){return}if(C){var B=GeoMind.utils.Map.createLayer(A.record.data);B.is_clone=true;B.group=A.group;B.record=A.record;if(A.map._addLayer(B)){A.map.wmsLayersVisible.push(A);A.map._wmsLayersVisible.push(B);OpenLayers.Layer.prototype.setVisibility.apply(B,arguments);A._ghost_layer=B}}else{if(A._ghost_layer&&A._ghost_layer.is_clone){OpenLayers.Map.prototype.removeLayer.apply(A.map,[A._ghost_layer]);OpenLayers.Util.removeItem(A.map.wmsLayersVisible,A);OpenLayers.Util.removeItem(A.map._wmsLayersVisible,A);OpenLayers.Util.removeItem(A.map._wmsLayersVisible,A._ghost_layer);A._ghost_layer.destroy();delete A._ghost_layer}}};h.getVisibility=function(){return this.map.isVisible(this)};h.setMap(q);h.map.record=q.record;var b=h.record&&Adaptive.utils.Config.getThemeData(h.record),w=b&&Adaptive.utils.Config.getConfig(b,"mask_layer_group");if(parseInt(w)>0){h.group=parseInt(w);h.setVisibility(true)}h.group=h.group||20;q.wmsLayers.push(h);q._layers.push(h);q._layersSorted=false;q.events.triggerEvent("addlayer",{layer:h});h.events.triggerEvent("added",{map:q,layer:h});return true}else{h.group=h.group||(g?0:(h.CLASS_NAME=="OpenLayers.Layer.Vector"?100:40));var z=q._addLayer(h);if(z){if(h instanceof OpenLayers.Layer.Grid){h.events.register("tileerror",q,q.onTileError);h.events.register("tileloaded",q,q.onTileLoaded)}q._layers.push(h);q._layersSorted=false}q.events.triggerEvent("addlayer",{layer:h});h.events.triggerEvent("added",{map:q,layer:h});return z}},isVisible:function(b){return this.wmsLayersVisible.indexOf(b)>-1},_addLayer:function(b){var g=this;if(g.layers.indexOf(b)>-1){return}if(g.events.triggerEvent("preaddlayer",{layer:b})===false){return false}if(g.allOverlays){b.isBaseLayer=false}b.div.className="olLayerDiv";b.div.style.overflow="";if(b.isFixed){g.viewPortDiv.appendChild(b.div)}else{g.layerContainerDiv.appendChild(b.div)}g.layers.push(b);g.sortLayers();b.setMap(g);if(b.isBaseLayer||(g.allOverlays&&!g.baseLayer)){if(g.baseLayer==null){g.setBaseLayer(b)}else{b.setVisibility(false)}}else{b.redraw()}g.events.triggerEvent("addlayer",{layer:b});b.events.triggerEvent("added",{map:g,layer:b});b.afterAdd();return true},removeLayer:function(h,w){var q=this;OpenLayers.Util.removeItem(q._layers,h);if(w==null){w=true}if(q.wmsLayers.indexOf(h)!=-1){OpenLayers.Util.removeItem(q.layers,h);OpenLayers.Util.removeItem(q.wmsLayers,h);q.events.triggerEvent("removelayer",{layer:h});h.events.triggerEvent("removed",{map:q,layer:h})}else{if(q.baseLayer==h){q.baseLayer=null;if(w){for(var g=0,b=q.getLayers().length;g<b;g++){var o=q._layers[g];if(o.name=="fake"){q.setBaseLayer(o);break}}}}OpenLayers.Map.prototype.removeLayer.apply(this,arguments)}Ext.defer(function(){if(q.events){Ext.iterate(q.events.listeners,function(A,B){var z=[];B.forEach(function(C){if(typeof(C.obj.map)==="object"&&C.obj.map===null){z.push(C)}});z.forEach(function(C){OpenLayers.Util.removeItem(B,C)})})}},1)},getLayer:function(h){var g=this,b=OpenLayers.Map.prototype.getLayer.apply(this,arguments);if(b){return b}
1Ext.each(g._layers,function(o){if(o.id==h){b=o}});return b},getLayersByName:function(b){var h=this,o=[],g=Ext.isFunction(b.test);Ext.each(h._layers,function(w){var q=false;if(g){q=b.test(w.name)}else{q=w.name===b}if(q){o.push(w)}});return o},getLayersByClass:function(b){var h=this,o=[],g=Ext.isFunction(b.test);Ext.each(h._layers,function(w){var q=false;if(g){q=b.test(w.CLASS_NAME)}else{q=w.CLASS_NAME===b}if(q){o.push(w)}});return o},getDisplayProjection:function(){return this.displayProjection?this.displayProjection.projCode:this.getProjection()},getDisplayProjectionObject:function(){return this.displayProjection||this.getProjectionObject()}});Ext.define("Client.module.map.search.Register",{extend:Client.module.Generic,constructor:function(b){var g=this;g.callParent(arguments);setTimeout(function(){var h=g.useSessionFilter?"WebServices/search/SearchProxy.asmx/SearchSessionFilter":"WebServices/search/SearchProxy.asmx/Search";g.reportEvent("searchSessionConfigured",{url:h,session_id:""})},500)}});Ext.define("Client.module.map.utils.lang.SearchByMap",{strings:{tooltip:{en:"Find content by drawing a polygon",nb:"Finn innhold ved å tegne et polygon"},title:{en:"Feature list active layers",nb:"Treffliste aktive temalag"},error_count:{en:"Unable to get total number of hits",nb:"Kunne ikke hente total antall treff"},error_search:{en:"Something went wrong, please try again",nb:"Noe gikk galt, vennligst prøv igjen"}},errCodes:{timeout:{en:"Search failed due to timeout, please try with a smaller or less complex polygon",nb:"Søk feilet på grunn av tidsavbrudd, vennligst prøv igjen med ett mindre eller mindre komplekst polygon"}}});Ext.define("Client.module.map.utils.SearchByMap",{extend:Client.module.Generic,internal_name:"av_search_by_map",mixins:{layer:Adaptive.layer.DrawInMap,notify:Adaptive.mixins.Notify},delta:{x:-22,y:22},popupWidth:320,popupHeight:320,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.utils.lang.SearchByMap");g.internalSearchService=Ext.create("Client.module.map.info.agents.InternalSearchService",{stdAgent:true,showPdfExport:g.showPdfExport,onInfoClicked:function(){}});g.parentController.registerModule(g.internalSearchService);g.iconHtml=Adaptive.ux.Icons.searchByMap;g.buildGui()},buildGui:function(){var b=this;b.btn=Ext.create("Ext.button.Button",{cls:"a3-search-by-map-btn a3-map-btn",itemId:"searchByMapBtn",disabled:true,tooltip:b.lang.getString("tooltip"),tooltipType:"title",enableToggle:true});b.btn.on("click",b.onBtnClick,b);b.btn.setIconHtml(b.iconHtml);b.internalSearchService.store.on("refresh",function(g,h){if(b.popup){b.popup.setLoading(false);b.popup.setTitle(b.lang.getString("title"))}},this);b.internalSearchService.on("searchFailed",function(g){if(b.popup){b.popup.setLoading(false);if(g.exception.code=="timeout"){b.showNotifyError(b.popup,b.lang.getError(g.exception.code),5000)}else{b.showNotifyError(b.popup,b.lang.getString("error_search"),5000)}}},b)},onBtnClick:function(g,b){var h=this;if(g.pressed){h.addDrawControl("polygon")}else{h.deactivateSelect()}},onFeatureAdded:function(b){var g=this;if(!g.popup){g.popup=Ext.create("Ext.window.Window",{cls:"a3-mapinfo-popup",constrain:true,padding:0,resizable:false,closeAction:"hide",width:g.popupWidth,height:g.popupHeight,maximizable:false,collapsible:false,items:[g.internalSearchService.view],listeners:{afterrender:function(){g.popup.header.titleCmp.textEl.el.dom.setAttribute("unselectable","off")}}});g.popup.on("hide",g.closePopup,g)}g.map.events.register("movestart",g,g.closePopup);g.popup.setTitle(g.lang.getString("title"));g.popup.show();g.internalSearchService.doMapSearch({mapProjection:g.map.getProjectionObject(),wkt:b.feature.geometry.toLocaleString()});g.popup.setLoading(true)},closePopup:function(){var b=this;if(!b.popup){return}b.popup.hide();if(b.btn.pressed){b.btn.toggle()}b.internalSearchService.hidePopup();b.map.events.unregister("movestart",b,b.closePopup);b.deactivateSelect();b.reportEvent("enableInfoTool")},onLayerChanged:function(){var b=this,g;Ext.Array.each(b.map.wmsLayersVisible,function(h){if(h.record&&h.record.get("is_internal")){g=true;return false}});if(g){b.btn.setDisabled(false)}else{b.btn.setDisabled(true)}},afterMapContainerRender:function(h){var g=this,b=g.mapContainer.down("#mapBtnContainer");b.add(g.btn)},afterMapReset:function(g){var b=this;b.internalSearchService.setUp(b.map);b.map.events.register("changelayer",b,b.onLayerChanged)},beforeMapReset:function(g){var b=this;if(b.map){b.map.events.unregister("changelayer",b,b.onLayerChanged)}}});Ext.define("Client.module.tool.directions.lang.Directions",{strings:{mainBtnText:{en:"Directions",nb:"Veibeskrivelse"},mainBtnTip:{en:"Show directions tool",nb:"Vis verktøy for veibeskrivelse"},directions:{en:"Directions",nb:"Veibeskrivelse"},btnGetDirections:{en:"Get directions",nb:"Hent veibeskrivelse"},from:{en:"From",nb:"Fra"},to:{en:"To",nb:"Til"},via:{en:"Via",nb:"Via"},search_emptyText:{en:"Search for a location",nb:"Søk etter en destinasjon"},addViaPoint:{en:"Add middle stop",nb:"Legg til mellomstopp"},removeViaPoint:{en:"Remove stop",nb:"Fjern stopp"},lang:{en:"us-EN",nb:"nb-NO"},displayAlternatives:{en:"Display Alternatives",nb:"Visningsalternativer"},hours:{en:"h",nb:"t"},mins:{en:"min",nb:"min"},withTraffic:{en:"with traffic",nb:"med trafikk"},ferries:{en:"Ferries",nb:"Ferger"},tollRoads:{en:"Toll roads",nb:"Bomstasjoner"},restStop:{en:"Rest stops",nb:"Rasteplasser"},error:{en:"Could not load results",nb:"Kunne ikke hente resultater"},dragndrop:{en:"Drag and drop to reorganize route",nb:"Dra og slipp for å endre rekkefølgen"},loading:{en:"Please wait",nb:"Vennligst vent"},yourLocation:{en:"Your location",nb:"Din posisjon"},stop:{en:"Stop",nb:"Stopp"}
1,car:{en:"Car",nb:"Bil"},routeInformation:{en:"Route information",nb:"Trafikkmeldinger"}},errCodes:{}});Ext.define("Client.module.tool.directions.model.Point",{extend:Ext.data.Model,fields:[{name:"place",type:"string",defaultValue:""},{name:"data",type:"auto"},{name:"editor",type:"auto"},{name:"defaultValue",type:"string"}]});Ext.define("Client.module.tool.directions.model.Values",{extend:Ext.data.Model,fields:[{name:"key",type:"string",mapping:"key"},{name:"value",type:"string",mapping:"value"}]});Ext.define("Client.module.tool.directions.model.Location",{extend:Ext.data.Model,fields:[{name:"easting",type:"string",mapping:"easting"},{name:"northing",type:"string",mapping:"northing"},{name:"srs",type:"string",mapping:"srs"}],belongsTo:"Client.module.tool.directions.model.RoadFeature"});Ext.define("Client.module.tool.directions.model.RoadFeature",{extend:Ext.data.Model,fields:[{name:"attributeType",type:"string",mapping:"attributeType"},{name:"distanceAlongSegment",type:"string",mapping:"distanceAlongSegment"},{name:"id",type:"string",mapping:"id"}],belongsTo:"Client.module.tool.directions.model.Feature",hasMany:[{model:"Client.module.tool.directions.model.Values",name:"values",associationKey:"values",reader:"json"},{model:"Client.module.tool.directions.model.Location",name:"location",associationKey:"location",reader:"json"}]});Ext.define("Client.module.tool.directions.model.Feature",{extend:Ext.data.Model,fields:[{name:"ETA",type:"number",mapping:"attributes.ETA"},{name:"length",type:"number",mapping:"attributes.length"},{name:"maneuverType",type:"string",mapping:"attributes.maneuverType"},{name:"text",type:"string",mapping:"attributes.text"},{name:"time",type:"number",mapping:"attributes.time"},{name:"compressedGeometry",type:"string",mapping:"compressedGeometry"}],belongsTo:"Client.module.tool.directions.model.Directions",hasMany:{model:"Client.module.tool.directions.model.RoadFeature",name:"roadFeatures",associationKey:"attributes.roadFeatures",reader:"json"}});Ext.define("Client.module.tool.directions.model.Directions",{extend:Ext.data.Model,fields:[{name:"routeId",type:"number"},{name:"routeName",type:"string"},{name:"totalDriveTime",type:"number",mapping:"summary.totalDriveTime"},{name:"totalLength",type:"number",mapping:"summary.totalLength"},{name:"totalTime",type:"number",mapping:"summary.totalTime"},{name:"xmax",type:"number",mapping:"summary.envelope.xmax"},{name:"xmin",type:"number",mapping:"summary.envelope.xmin"},{name:"ymax",type:"number",mapping:"summary.envelope.ymax"},{name:"ymin",type:"number",mapping:"summary.envelope.ymin"}],hasMany:[{model:"Client.module.tool.directions.model.Values",name:"statistics",associationKey:"summary.statistics",reader:"json"},{model:"Client.module.tool.directions.model.Feature",name:"features",associationKey:"features",reader:"json"}]});Ext.define("Client.module.tool.directions.Directions",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],configs:{searchThemesFixed:[]},btnCls:"a3-directions",btnText:null,btnTip:null,internal_name:"av_directions",serviceProjCode:"EPSG:32633",startPoint:{fill:undefined,fillOpacity:0.75,fillColor:"#33cc33",strokeColor:"#33cc33",stroke:undefined,strokeOpacity:0.95,strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:"none",pointerEvents:"visiblepainted",cursor:"inherit",pointRadius:8,graphicZIndex:120},viaPoint:{fill:undefined,fillOpacity:0.75,fillColor:"#f60",strokeColor:"#f60",stroke:undefined,strokeOpacity:0.95,strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:"none",pointerEvents:"visiblepainted",cursor:"inherit",pointRadius:8,graphicZIndex:120},stopPoint:{fill:undefined,fillOpacity:0.75,fillColor:"#CC0000",strokeColor:"#CC0000",stroke:undefined,strokeOpacity:0.95,strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:"none",pointerEvents:"visiblepainted",cursor:"inherit",pointRadius:8,graphicZIndex:120},hoverPointStyle:{fill:undefined,fillOpacity:0.5,fillColor:"#3333FF",strokeColor:"#3333FF",strokeOpacity:0.8,strokeLinecap:"round",strokeLinejoin:"round",pointerEvents:"visiblepainted",cursor:"inherit",pointRadius:8,graphicZIndex:125},tollRoadStyle:{externalGraphic:"resx/icons/client/tollroad.png",pointRadius:10,graphicZIndex:110},restStopStyle:{externalGraphic:"resx/icons/client/restStop.png",pointRadius:10,graphicZIndex:100},ferryStyle:{externalGraphic:"resx/icons/client/ferry.png",pointRadius:10,graphicZIndex:105},routeInformationStyle:{externalGraphic:"resx/icons/client/warning.png",pointRadius:10,graphicZIndex:105},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.directions.lang.Directions");g.mc=Ext.create("GeoMind.base.ModuleController");g.mc.registerModule(g);g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("directions")},buildGui:function(){var b=this;b.cellFocusEditor=Ext.create("Ext.grid.plugin.CellEditing",{triggerEvent:"cellfocus",onSpecialKey:function(g,o,h){if(h.getKey()==h.ENTER&&b.pointStore.last()!=b.currentCellRecord){h.keyCode=h.TAB}Ext.grid.plugin.CellEditing.prototype.onSpecialKey.apply(this,[g,o,h])}});b.pointStore=Ext.create("Ext.data.Store",{model:"Client.module.tool.directions.model.Point",data:[{place:"",data:"",editor:null},{place:"",data:"",editor:null}],proxy:{type:"memory",reader:{type:"json",root:"items"}},listeners:{remove:function(){if(b.pathLayer){b.plotPoints();b.getDirections()}}}});b.grid=Ext.create("Ext.grid.Panel",{store:b.pointStore,hideHeaders:true,cls:"a3-directions-grid",columns:[{dataIndex:"place",getEditor:function(g){if(!g.data.editor){g.data.editor=b.createSearchAgent(g)}return Ext.create("Ext.grid.CellEditor",{field:g.data.editor})},renderer:function(o,h,g){if(!o&&(h.rowIndex==0)){return b.getFormString("from")}else{if(!o&&(h.rowIndex==(b.pointStore.count()-1))){return b.getFormString("to")}else{if(!o&&0<h.rowIndex<(b.pointStore.count()-1)){return b.getFormString("via")}else{return o}}}},flex:1},{xtype:"actioncolumn",width:30,sortable:false,hidden:true,menuDisabled:true,items:[{iconCls:"icon-remove",tooltip:b.getFormString("removeViaPoint"),handler:function(h,o,g){b.pointStore.removeAt(o);b.grid.getView().refresh();if(b.pointStore.count()<3){b.grid.columns[1].hide()}}}]}],selModel:Ext.create("Ext.selection.CellModel",{nextSelection:{},getLastFocused:function(){return null}}),plugins:[b.cellFocusEditor],viewConfig:{overItemCls:"a3-directions-grid-over",selectedItemCls:"a3-directions-grid-selected",plugins:{ptype:"gridviewdragdrop",dragText:b.getFormString("dragndrop")},listeners:{drop:function(h,q,o,g){b.closeRouteInformationPopup();b.grid.getSelectionModel().deselectAll();b.plotPoints();b.getDirections();b.grid.view.refresh()}},markDirty:false},bbar:new Ext.Toolbar({cls:"a3-toolbar a3-directions-grid-bbar",height:30,items:["->",{xtype:"button",tooltip:b.getFormString("addViaPoint"),iconCls:"icon-add",scale:"small",cls:"a3-directions-add-btn",handler:Ext.bind(b.addViaPoint,b)}]}),listeners:{beforeedit:b.onBeforeCellEdit,canceledit:b.onCancelCellEdit,edit:b.onCellEdit,scope:b}});b.altRouteView=Ext.create("Ext.view.View",{cls:"a3-directions-route-alternatives",tpl:new Ext.XTemplate("<ul>",'<tpl for=".">','<li class="{itemCls}">','<span class="routeName">{[this.splitName(values.routeName)]}</span>','<div class="routeLengthAndDriveTime"><span class="routeLength">{[this.roundLength(values.totalLength / 1000, 1)]}</span>, <span class="driveTime">{[this.roundTime(values.totalDriveTime)]}</span></div>','<span class="routeStats">','<tpl for="statistics">','<tpl if="key == \'FerryCount\' && value > 0"><span class="icon icon-ferry"></span></tpl>','<tpl if="key == \'TollCount\' && value > 0"><span class="icon icon-toll"></span></tpl>','<tpl if="key == \'toll_small\' && value > 0"><span class="toll-small">{value},-</span></tpl>','<tpl if="key == \'toll_large\' && value > 0"><span class="toll-large">{value},-</span></tpl>',"</tpl>","</span>","</li>","</tpl>","</ul>",{splitName:function(g){return g.replace(/\//g," / ").replace(/vei/g,"­vei").replace(/veg/g,"­veg")},roundLength:b.roundLength,roundTime:Ext.bind(b.roundTime,b)}),listeners:{select:function(h,g){b.selectControl.select(g.feature)},refresh:function(g){if(g.store&&g.store.getCount()>0){g.selModel.select(g.store.getAt(0))}}},itemSelector:"li"});b.routeDirectionsView=Ext.create("Ext.view.View",{cls:"a3-directions-route",tpl:new Ext.XTemplate("<ol>",'<tpl for=".">','<li class="type-{maneuverType}">','<div class="routeExtras">','<tpl for="roadFeatures">',"<tpl if=\"attributeType == 'nvdb:Vegtype'\">",'<tpl for="values"><tpl if="key == \'type\' && value == \'FERGE\'"><span class="icon icon-ferry"></span></tpl></tpl>',"</tpl>","</tpl>","</div>",'<div class="a3-direction-length">','<tpl for="roadFeatures">','<tpl if="this.isRoadreport(attributeType)">','<span class="icon-routeInformation"></span>',"{%break%}","</tpl>","</tpl>
1","{[this.roundLength(values.length, 2)]}","</div>",'<div class="a3-direction-text">{[this.filterText(values.text)]}</div>','<div class="ferryInfo">','<tpl for="roadFeatures">',"<tpl if=\"attributeType == 'nvdb:ferge'\">",'<tpl for="values"><tpl if="key == \'Url\'"><a href="{value}" target="_blank"></tpl></tpl>','<tpl for="values"><tpl if="key == \'Navn\'">{value}</tpl></tpl>','<tpl for="values"><tpl if="key == \'Url\'"></a></tpl></tpl> ',"</tpl>","</div>","</tpl>","</li>","</tpl>","</ol>",{filterText:function(g){return g.substring(g.indexOf("}")+1)},roundTime:Ext.bind(b.roundTime,b),roundLength:b.roundLength,isRoadreport:function(g){if(g.includes("vegloggen")){return true}return false},routeInformationClick:Ext.bind(b.routeclick,b)}),listeners:{itemmouseenter:function(h,o){if(b.hoverPointFeature){b.pathLayer.removeFeatures([b.hoverPointFeature])}var q=b._fromCompressedGeometry(o.get("compressedGeometry"));var g=new OpenLayers.Geometry.Point(q[0][0],q[0][1]);b.hoverPointFeature=new OpenLayers.Feature.Vector(g,null,b.hoverPointStyle);b.pathLayer.addFeatures([b.hoverPointFeature])},itemmouseleave:function(g,h){b.pathLayer.removeFeatures([b.hoverPointFeature])},refresh:b.addButtonEventListeners,scope:b},itemSelector:"li"});b.errorPanel=b.createTextBox("error","failed",{hidden:true});b.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body a3-directions-module",layout:{type:"anchor",reserveScrollbar:true},autoScroll:true,items:[b.createForm({noScroll:true,items:[b.createSet("directions",{collapsed:false},[b.grid,b.createButton("btnGetDirections",true,{handler:Ext.bind(b.getDirections,b),cls:"a3-right",disabled:true})]),b.createSet("displayAlternatives",[b.createField("tollRoads",{xtype:"checkbox",itemId:"tollRoadCheckbox",checked:true,listeners:{change:b.tickedAlternatives,scope:b}}),b.createField("ferries",{xtype:"checkbox",checked:true,itemId:"ferriesCheckbox",listeners:{change:b.tickedAlternatives,scope:b}}),b.createField("restStop",{xtype:"checkbox",checked:true,itemId:"restStopCheckbox",listeners:{change:b.tickedAlternatives,scope:b}}),b.createField("routeInformation",{xtype:"checkbox",checked:true,itemId:"routeInformationCheckbox",listeners:{change:b.tickedAlternatives,scope:b}})])],cancelBtnConfig:false,warnBtnConfig:false,saveBtnConfig:false}),b.errorPanel,b.altRouteView,b.routeDirectionsView]})},buildRouteInformationGui:function(){var b=this;if(b.routeInformationPanel){return}b.routeInformationPanel=Ext.create("Ext.view.View",{cls:"a3-directions-routeInformation-view",tpl:new Ext.XTemplate('<ol class="a3-directions-routeInformation-list">','<tpl for=".">','<tpl if="this.isRoadreport(attributeType)">','<li class="routeInformationItem">','<tpl for="values">',"<tpl if=\"key == 'LOCATION_DESCRIPTION'\">",'<div class="routeInformation-headning">{value}</div>',"{%break%}","</tpl>","</tpl>",'<tpl for="values">',"<tpl if=\"key == 'DESCRIPTION'\">",'<div class="routeInformation-ingress">{value}</div>',"{%break%}","</tpl>","</tpl>",'<div class="routeInformation-timeInfo">','<tpl for="values">',"<tpl if=\"key == 'OVERALL_START_TIME'\">",'<div class="timeInfo-validFrom">Fra: {[this.formatTime(values.value)]}</div>',"{%break%}","</tpl>","</tpl>",'<tpl for="values">',"<tpl if=\"key == 'OVERALL_END_TIME'\">",'<div class="timeInfo-validTo">Til: {[this.formatTime(values.value)]}</div>',"{%break%}","</tpl>","</tpl>","</div>","</li>","</tpl>","</tpl>","</ol>",{isRoadreport:function(g){if(g.includes("vegloggen")){return true}return false},createUrl:function(g){var o,h;Ext.each(g.values,function(w){var q=w.value;switch(w.key){case"roadType":o=q;break;case"roadNumber":h=q;break}});if(o&&h){return"http://www.vegvesen.no/Trafikkinformasjon/Reiseinformasjon/Trafikkmeldinger?type=veg&vegkategorier="+o+"+%2F+Rv&vegnummer="+h}},formatTime:function(h){var o=new Date(h),A=o.getDate(),w=o.getMonth()+1,z=o.getFullYear(),C=o.getHours(),q=o.getMinutes();if(A<10){A="0"+A}if(w<10){w="0"+w}if(C<10){C="0"+C}if(q<10){q="0"+q}var B=A+"."+w+"."+z;var g=C+":"+q;return B+" "+g}}),overflowX:"hidden",overflowY:"scroll",itemSelector:"li"});b.routeInformationPopup=Ext.create("Ext.window.Window",{closeAction:"hide",constrain:true,width:400,minWidth:300,height:400,layout:"fit",title:b.lang.getString("routeInformation"),items:[b.routeInformationPanel]}
1)},roundTime:function(o){var h=this;o=Math.ceil(o);if(o<60){return o+" min"}var b=Math.floor(o/60).toFixed();var g=o%60;return b+" "+h.getFormString("hours")+" "+g+" "+h.getFormString("mins")},roundLength:function(b,g){if(b<1){return(b*1000).toFixed(0)+" m"}return b.toFixed(g)+" km"},createSearchAgent:function(b){var h=this,g=Ext.create("Client.module.map.search.Inline",{isDirectionsSearchAgent:true,parentController:h.parentController,map:h.map,tool_width:0,record:b,agent:Ext.create("Client.module.map.search.agents.Standard",{emptyText:h.lang.getString("search_emptyText"),searchItems:"AdaptiveNames,AdaptiveAddresses",searchThemes:false,searchThemesFixed:h.searchThemesFixed}),listeners:{select:h.onSearchResultSelected,clear:h.onSearchResultCleared,scope:h}});return g},addViaPoint:function(){var g=this,b=Ext.create("Client.module.tool.directions.model.Point");g.pointStore.insert((g.pointStore.count()-1),b);if(g.pointStore.count()>2){g.grid.columns[1].show()}g.validateInput()},initLayers:function(){var g=this,b=new OpenLayers.StyleMap({"default":new OpenLayers.Style({strokeColor:"#666666",strokeOpacity:0.9,strokeWidth:7,cursor:"pointer",graphicZIndex:0}),select:new OpenLayers.Style({strokeColor:"#3333cc",graphicZIndex:100})});g.pathLayer=new OpenLayers.Layer.Vector("Directions layer",{rendererOptions:{zIndexing:true},styleMap:b});g.map.addLayers([g.pathLayer]);g.selectControl=new OpenLayers.Control.SelectFeature(g.pathLayer,{toggle:false,clickout:false,multiple:false,geometryTypes:["OpenLayers.Geometry.LineString"],onBeforeSelect:function(h){this.unselectAll()},onSelect:function(h){g.altRouteView.getSelectionModel().select(h.data.direction);g.setStores(h.data.direction);g.clearAlternatives();g.tickedAlternatives()}});g.modifyControl=new OpenLayers.Control.ModifyFeature(g.pathLayer,{mode:OpenLayers.Control.ModifyFeature.DRAG,geometryTypes:["OpenLayers.Geometry.Point"],toggle:false});g.pathLayer.events.on({beforefeaturemodified:g.onBeforeFeatureModified,scope:g.modifyControl});g.pathLayer.events.on({featuremodified:g.onFeatureModified,scope:g});g.map.addControl(g.selectControl);g.map.addControl(g.modifyControl)},onBeforeFeatureModified:function(g){var b=this;return !g.feature.attributes.nonDrag},destroyLayers:function(){var b=this;if(b.selectControl){if(b.selectControl.map){b.selectControl.map.removeControl(b.selectControl)}delete b.selectControl}if(b.modifyControl){if(b.modifyControl.map){b.modifyControl.map.removeControl(b.modifyControl)}delete b.modifyControl}if(b.pathLayer){if(b.pathLayer.map){b.pathLayer.map.removeLayer(b.pathLayer)}delete b.pathLayer}},clearViewContent:function(){var b=this;b.altRouteView.store.removeAll(true);b.routeDirectionsView.store.removeAll(true);b.altRouteView.refresh();b.routeDirectionsView.refresh()},onBeforeCellEdit:function(b,h){var g=this;g.closeRouteInformationPopup;g.currentCellRecord=h.record;g.validateInput()},onCancelCellEdit:function(b,h){var g=this;delete g.currentCellRecord;if(h.record.isModified("data")){h.record.reject()}g.grid.getSelectionModel().deselectAll()},onCellEdit:function(g,o){var h=this,b=o.record.store.getAt(o.record.store.indexOf(o.record)+1);if(o.record.isModified("data")){o.record.commit();h.plotPoints();if(h.validateInput()){h.getDirections()}h.addMenuOnDirectionsInfoTool()}h.grid.getSelectionModel().deselectAll()},onSearchResultSelected:function(b,h){var g=this;g.currentCellRecord.set("data",h);g.currentCellRecord.set("place",h.name);g.validateInput()},onSearchResultCleared:function(g){var o=this,b=g.record,h=b.data;h.data="";h.place="";b.commit();o.plotPoints();if(o.directionsStore){o.directionsStore.removeAll()}if(o.routeDirectionsView.store){o.routeDirectionsView.store.removeAll(true)}o.validateInput();o.clearViewContent();if(o.isPointStoreEmpty()){o.removeMenuFromDirectionsInfoTool()}},isPointStoreEmpty:function(){var b=this,g=true;b.pointStore.each(function(h){if(h.data.data!=""||h.data.place!=""){g=false}});return g},plotPoints:function(){var b=this;b.pathLayer.destroyFeatures();b.pointStore.each(function(g,h){var o=g.get("data");
1if(o){if(h==0){b.plotPoint(b.createPointFeature(o.geom,b.startPoint,h))}else{if((b.pointStore.count()-1)==h){b.plotPoint(b.createPointFeature(o.geom,b.stopPoint,h))}else{b.plotPoint(b.createPointFeature(o.geom,b.viaPoint,h))}}}})},afterMapReset:function(){var b=this;if(b.pointStore){b.pointStore.each(function(g){if(g.data.editor){g.data.editor.map=b.map}})}b.map.events.register("changebaselayer",b,b.onChangeBaseLayer)},beforeMapReset:function(){var b=this;if(b.map){b.map.events.unregister("changebaselayer",b,b.onChangeBaseLayer)}b.clearAlternatives();b.destroyLayers()},onChangeBaseLayer:function(){var b=this;if(b.selectControl&&b.selectControl.active){b.selectControl.deactivate();Ext.defer(function(){b.selectControl.activate()},10)}},activate:function(){var b=this;if(!b.view){b.buildGui()}if(!b.pathLayer){b.initLayers()}else{b.pathLayer.setVisibility(true)}if(b.selectControl){b.selectControl.activate()}if(!b.isPointStoreEmpty()){b.addMenuOnDirectionsInfoTool()}},deactivate:function(){var b=this;if(b.selectControl){b.selectControl.deactivate()}if(b.pathLayer){b.pathLayer.setVisibility(false)}b.removeMenuFromDirectionsInfoTool()},validateInput:function(){var b=this,g=b.pointStore.findBy(function(h,o){return !h.data.data})==-1;b.view.down("#btnGetDirections").setDisabled(!g);return g},getDirections:function(){var h=this,b=false,g=[];h.modifyControl.deactivate();if(!h.ajax){h.ajax=Ext.create("Ext.data.Connection")}h.ajax.abort();h.clearViewContent();h.pointStore.each(function(q,w){if(q.data.data){var o=h.createPointFeature(q.data.data.geom,null,w,h.serviceProjCode);g.push(o.geometry.x+","+o.geometry.y)}else{b=true}});if(g.length<2||b){return}h.view.down("#btnGetDirections").setDisabled(false);h.mask();h.errorPanel.hide();
1h.ajax.request({method:"GET",url:"proxies/xDirectionsProxy.ashx",params:{barriers:"",format:"json",lang:"nb-no",stops:g.join(";")},success:function(q){h.unmask();if(q.responseText){var o=Ext.JSON.decode(q.responseText);if(o.messages){if(h.directionsStore){h.directionsStore.removeAll()}h.routeDirectionsView.hide();h.pathLayer.destroyFeatures();h.plotPoints();h.errorPanel.show();h.modifyControl.activate()}else{h.resetZoom=true;h.parseJsonResponse(o);h.modifyControl.activate()}}else{h.errorPanel.show()}},failure:function(){h.unmask();h.errorPanel.show()}})},parseJsonResponse:function(b){var g=this;g.clearAlternatives();g.directionsStore=Ext.create("Ext.data.Store",{model:"Client.module.tool.directions.model.Directions",data:b,proxy:{type:"memory",reader:{type:"json",root:"directions"}},autoLoad:true});g.altRouteView.bindStore(g.directionsStore);g.parsePaths()},parsePaths:function(b){var g=this;g.pathLayer.destroyFeatures();g.plotPoints();g.directionsStore.each(function(h){featurePointsArray=[];if(h.featuresStore){h.featuresStore.each(function(o){featurePointsArray=featurePointsArray.concat(g._fromCompressedGeometry(o.get("compressedGeometry")))});g.plotPath(featurePointsArray,h)}})},plotPath:function(w,q){var g=this,h=[];Ext.each(w,function(z){h.push(new OpenLayers.Geometry.Point(z[0],z[1]))});var o=new OpenLayers.Geometry.LineString(h);var b=new OpenLayers.Feature.Vector(o,{direction:q});if(g.serviceProjCode!=g.map.getProjection()){b.geometry.transform(g.serviceProjCode,g.map.getProjection())}q.feature=b;g.pathLayer.addFeatures([b]);if(q.index==0){g.selectControl.select(b)}g.tickedAlternatives()},clearAlternatives:function(){var b=this;if(b.pathLayer){if(b.ferries){b.pathLayer.destroyFeatures(b.ferries)}if(b.tollRoadFeatures){b.pathLayer.destroyFeatures(b.tollRoadFeatures)}if(b.restStops){b.pathLayer.destroyFeatures(b.restStops)}if(b.routeInformations){b.pathLayer.destroyFeatures(b.routeInformations)}}delete b.ferries;delete b.tollRoadFeatures;delete b.restStops;delete b.routeInformations},tickedAlternatives:function(){var o=this,q=o.view.down("#tollRoadCheckbox").getValue(),g=o.view.down("#ferriesCheckbox").getValue(),h=o.view.down("#restStopCheckbox").getValue(),b=o.view.down("#routeInformationCheckbox").getValue();if(!q&&o.tollRoadFeatures){o.pathLayer.destroyFeatures(o.tollRoadFeatures);delete o.tollRoadFeatures}if(q&&!o.tollRoadFeatures){o.tollRoadFeatures=o.plotRoadFeatures("nvdb:bomstasjon",o.tollRoadStyle)}if(!g&&o.ferries){o.pathLayer.destroyFeatures(o.ferries);delete o.ferries}if(g&&!o.ferries){o.ferries=o.plotFerryFeatures("nvdb:ferge",o.ferryStyle)}if(!h&&o.restStops){o.pathLayer.destroyFeatures(o.restStops);delete o.restStops}if(h&&!o.restStops){o.restStops=o.plotRoadFeatures("nvdb:rasteplass",o.restStopStyle)}if(!b&&o.routeInformations){o.pathLayer.destroyFeatures(o.routeInformations);delete o.routeInformations}if(b&&!o.routeInformations){o.routeInformations=o.plotRoadFeatures("vegloggen",o.routeInformationStyle)}},setStores:function(h){var g=this,b=new OpenLayers.Bounds(h.get("xmin"),h.get("ymin"),h.get("xmax"),h.get("ymax"));b=b.transform(g.serviceProjCode,g.map.getProjection());if(g.resetZoom||!g.map.getExtent().containsBounds(b)){g.map.zoomToExtent(b.scale(1.2));g.resetZoom=false}g.routeDirectionsView.bindStore(h.featuresStore);g.routeDirectionsView.show()},addButtonEventListeners:function(){var o=this,q,g=o.routeDirectionsView.getNodes(),b=o.routeDirectionsView.getRecords(g);for(var h=0;h<b.length;++h){q=g[h].getElementsByClassName("icon-routeInformation");q=q.length>0&&q[0];if(q){q.addEventListener("click",function(w){return function(){o.showRouteInformation(event,w)}}(b[h]))}}},showRouteInformation:function(h,b){var g=this,o=b.roadFeaturesStore;g.buildRouteInformationGui();g.routeInformationPanel.bindStore(o);g.routeInformationPopup.show();g.routeInformationPopup.setPagePosition(h.clientX-g.routeInformationPopup.width-50,h.clientY)},closeRouteInformationPopup:function(){var b=this;if(b.routeInformationPopup&&b.routeInformationPopup.isVisible){b.routeInformationPopup.hide()}},createPointFeature:function(g,q,b,o){var w=this,z=OpenLayers.Geometry.fromWKT(g),h=o||w.map.getProjection();if(w.map.getProjection()!=h){z.transform(map.getProjectionObject(),h)}return new OpenLayers.Feature.Vector(z,{storeIdx:b},q)},plotPoint:function(b){var g=this;g.closeRouteInformationPopup();g.pathLayer.addFeatures([b])},plotRoadFeatures:function(g,b){var h=this,o=[];h.routeDirectionsView.getStore().each(function(q){if(q.roadFeaturesStore){q.roadFeaturesStore.each(function(w){if(w.locationStore&&w.get("attributeType").indexOf(g)!=-1){w.locationStore.each(function(z){var A=new OpenLayers.Feature.Vector(new OpenLayers.Projection.transform(new OpenLayers.Geometry.Point(z.get("easting"),z.get("northing")),new OpenLayers.Projection(z.get("srs")),h.map.getProjection()),{nonDrag:true},b);o.push(A);if(g=="vegloggen"){return false}})}})}});h.pathLayer.addFeatures(o);return o},plotFerryFeatures:function(g,b){var h=this,o=[];h.routeDirectionsView.getStore().each(function(q){if(q.roadFeaturesStore){q.roadFeaturesStore.each(function(z){if(z.get("attributeType")==g){var A=h._fromCompressedGeometry(q.get("compressedGeometry"));var w=new OpenLayers.Feature.Vector(new OpenLayers.Projection.transform(new OpenLayers.Geometry.Point(A[0][0],A[0][1]),h.serviceProjCode,h.map.getProjection()),{nonDrag:true},b);o.push(w)}})}});h.pathLayer.addFeatures(o);return o},_fromCompressedGeometry:function(w,b){var q=0,g=0,B=[],A,z,C,h;C=w.match(/((\+|\-)[^\+\-]+)/g);h=parseInt(C[0],32);for(var o=1;o<C.length;o+=2){A=(parseInt(C[o],32)+q);q=A;z=(parseInt(C[o+1],32)+g);g=z;B.push([A/h,z/h])}return B},toPlaceName:function(h){var b=this,g=Adaptive.utils.Proj.transformPoint(h,b.map.getProjection(),"EPSG:4326");return g.x.toFixed(4)+", "+g.y.toFixed(4)},addPointsToStore:function(o){var h=this,z,g,q,w,b;if(o.start!=null){z={place:h.lang.getString("yourLocation"),geom:{geom:"POINT ("+o.start.x+" "+o.start.y+")"}}}if(o.stop.layerId!=null){g={place:o.stop.title,geom:{geom:o.stop.geom}}}else{g={place:h.toPlaceName(o.stop),geom:{geom:"POINT("+o.stop.lon+" "+o.stop.lat+")"}}}h.editStoreRecord(h.pointStore.getCount()-1,g);if(z){h.editStoreRecord(0,z);h.plotPoints();h.getDirections()}else{b=h.grid.store.getAt(0);if(!h.grid.rendered){h.grid.on("viewready",function(){h.grid.getSelectionModel().setCurrentPosition({row:b,column:0})})}else{h.grid.getSelectionModel().setCurrentPosition({row:b,column:0})}h.plotPoints()}},_onRequestDirectionsExpand:function(g){var b=this;if(g.data){coords=g.data}b.switchTool();if(b.pointStore.count()>2){b.pointStore.removeAt(1,b.pointStore.count()-2)}b.addPointsToStore(coords)},switchTool:function(){if(this.active){return}this.reportEvent("switchTools",this)},onFeatureModified:function(b){var h=this,g=b.feature.geometry,o={place:h.toPlaceName(g),geom:{geom:"POINT ("+g.x+" "+g.y+")"}};
1if(h.modifyControl.feature){h.modifyControl.unselectFeature(h.modifyControl.feature)}h.editStoreRecord(b.feature.data.storeIdx,o);h.plotPoints();h.getDirections()},editStoreRecord:function(b,q){var o=this,g=o.pointStore.getAt(b),h=o.createSearchAgent(g);g.beginEdit();g.set("place",q.place);g.set("data",q.geom);g.endEdit();g.data.editor=h;g.data.editor.trigger1Cls="x-form-clear-trigger-search";g.commit();o.addMenuOnDirectionsInfoTool()},_onRequestSetPointInDirectionsModule:function(h){var g=this,o=h.data,b,q,w;if(o.point.layerId!=null){b={place:o.point.title,geom:{geom:o.point.geom}}}else{b={place:g.toPlaceName(o.point),geom:{geom:"POINT("+o.point.lon+" "+o.point.lat+")"}}}if(o.type=="start"){g.editStoreRecord(0,b)}else{if(o.type=="via"){g.addViaPoint();g.editStoreRecord(g.pointStore.getCount()-2,b)}else{g.editStoreRecord(g.pointStore.getCount()-1,b)}}g.plotPoints();g.getDirections()},addMenuOnDirectionsInfoTool:function(){this.reportEvent("addDirectionsMenuOnButton")},removeMenuFromDirectionsInfoTool:function(){this.reportEvent("removeDirectionsMenuFromButton")}});Ext.define("Client.module.map.info.tools.lang.EmergencyPoster",{strings:{title:{en:"Emergency Placard",nb:"Nødplakat"},confirmTitle:{en:"The Emergency Placard in Norgesglasset - Responsibility",nb:"Nødplakaten i Norgesglasset - Ansvar"},resp1:{en:"The Emergency Placard is developed by The Norwegian Mapping Authority in cooperation with the Joint Rescue Coordination Centre and the Rescue Services. The Norwegian Mapping Authority is responsible for place names, maps and the technology behind.",nb:"Nødplakaten er utviklet i samarbeid med Hovedredningsentralene og nødetatene. Statens kartverk er ansvarlig for datagrunnlaget, dvs stedsnavn og kart - samt teknologien bak."},resp2:{en:"It is the users responsibility to check that The Emergency Placard is made correct and displays the right position.",nb:"Det er brukerens ansvar Ã¥ kontrollere at det er korrekt hytte eller sted som vises i plakaten."},resp3:{en:"The Norwegian Mapping Authority take no responsibility for errors made by the user, the data or the technology behind.",nb:"Kartverket tar ikke ansvar for mulige feil som skyldes brukeren, datagrunnlaget eller teknologien bak."},btnSave:{en:"Accept and Continue",nb:"Jeg godtar og fortsetter"},btnCancel:{en:"Decline and Cancel",nb:"Jeg godtar ikke og avbryter"}},errCodes:{}});Ext.define("Client.module.map.info.tools.EmergencyPoster",{extend:Client.module.map.info.tools.Generic,mixins:[Adaptive.form.mixins.Generator],placename:"",url_base:"https://ws.geonorge.no//fop/fop?",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.EmergencyPoster");g.viewConfig={cls:"a3-emergencyPoster",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:function(){g.createInfoWindow()}}}},getAddress:function(q,b,h,o){var g=this;Ext.Ajax.request({url:"WebServices/search/GeoNorgeAddressSearch.ashx",method:"GET",params:{lat:h,lon:o},success:function(A){var C=Ext.JSON.decode(A.responseText),z="",w="";try{w=C.adresse[0].adressetekst.toUpperCase()+" i "+C.adresse[0].kommunenavn}catch(B){}try{z=C.adresse[0].gardsnummer+"/"+C.adresse[0].bruksnummer+(C.adresse[0].festenummer?"/"+C.adresse[0].festenummer:"")+" i "+C.adresse[0].kommunenavn}catch(B){}g.createPoster(b,q,h,o,w,z)},failure:function(){g.createPoster(b,q,h,o,"","")}})},getMapUrl:function(C,q){var B=this,A=B.map.getProjection(),b=(B.map.maxExtent.right-B.map.maxExtent.left)/2,h=0.576419214*b,z,w,o,g;b=b/Math.pow(2,B.map.zoom);h=h/Math.pow(2,B.map.zoom);z=C-b;w=C+b;o=q-h;g=q+h;return"http://openwms.statkart.no/skwms1/wms.topo4?service=WMS&request=GetMap&CRS="+A+"&FORMAT=image/jpeg&BGCOLOR=0xFFFFFF&TRANSPARENT=false&LAYERS=topo4_WMS&VERSION=1.3.0&WIDTH=1145&HEIGHT=660&BBOX="+z+","+o+","+w+","+g},createPoster:function(B,h,z,g,C,b){var A=this,o=A.getMapUrl(B,h);var E,q,F;if(z>64){if(g<6){E="31W";q="EPSG:32631"}else{if(g<12){E="32W";q="EPSG:32632"}else{if(g<18){E="33W";q="EPSG:32633"}else{if(g<24){E="34W";q="EPSG:32634"}else{if(g<30){E="35W";q="EPSG:32635"}else{E="36W";q="EPSG:32636"}}}}}}else{if(g<12){E="32V";q="EPSG:32632"}else{if(g<18){E="33V";q="EPSG:32633"}else{if(g<24){E="34V";q="EPSG:32634"}else{if(g<30){E="35V";q="EPSG:32635"}else{E="36V";q="EPSG:32636"}}}}}var w=Adaptive.utils.Proj.toDDMMSS(z,0).replace("''"," sekunder nord").replace("'"," minutter ").replace("°"," grader ");var D=Adaptive.utils.Proj.toDDMMSS(g,0).replace("''"," sekunder øst").replace("'"," minutter ").replace("°"," grader ");F=Adaptive.utils.Proj.transformPoint({x:B,y:h},A.map.getProjection(),q);window.open(A.url_base+"locationName="+escape(A.placename)+"&place="+escape(A.placename)+"&street="+escape(C)+"&matrikkel="+encodeURIComponent(b)+"&position1="+escape(w)+"&position2="+escape(D)+"&utm="+escape("Sone "+E+" à "+F.x.toFixed(0)+" N "+F.y.toFixed(0))+"&posDez="+escape("N"+z.toFixed(4)+"° - Ã"+g.toFixed(4)+"°")+"&map="+encodeURIComponent(o),"_blank","noopener,noreferrer")},createInfoWindow:function(){var b=this;if(b.infoWindow){return}b.infoWindow=Ext.create("Ext.window.Window",{resizable:false,constrain:true,width:500,height:300,title:b.lang.getString("confirmTitle"),cls:"a3-modules-body",layout:"fit",items:[b.createForm({noScroll:true,items:[{xtype:"dataview",cls:"a3-emergency-confirm-panel",tpl:'<tpl><p class="a3-emergencyPoster-respons">'+b.lang.getString("resp1")+'</p><p class="a3-emergencyPoster-respons">'+b.lang.getString("resp2")+'</p><p class="a3-emergencyPoster-respons">'+b.lang.getString("resp3")+"</p></tpl>",itemSelector:"disabled",overflowY:"auto",overflowX:"hidden"}]})],listeners:{destroy:function(){delete b.infoWindow}}});b.infoWindow.showWithin(500)},hidePopup:function(){var b=this;if(b.infoWindow){b.infoWindow.destroy()}},getEmergencyPoster:function(){var b=this;b.getAddress(b.point.lat,b.point.lon,b.lonlat.lat,b.lonlat.lon)},onSave:function(){var b=this;b.infoWindow.destroy();b.getEmergencyPoster()},onCancel:function(){this.infoWindow.destroy()},setPointInfo:function(b){var g=this;if(b.placename){g.placename=b.placename}else{g.placename=""}if(g.lonlat.lat>56&&g.lonlat.lat<72&&g.lonlat.lon>3&&g.lonlat.lon<32){g.view.enable()}else{g.view.disable()}}});Ext.define("Client.module.map.info.tools.lang.Directions",{strings:{start:{en:"Directions to here",nb:"Veibeskrivelse hit"},setStart:{en:"Set as starting point",nb:"Sett som startsted"},addVia:{en:"Add as via destination",nb:"Legg til som viasted"},setStop:{en:"Set as destination",nb:"Sett som destinasjon"},showMenu:{en:"Use in route as\u2026",nb:"Bruk i rute som\u2026"}},errCodes:{}});Ext.define("Client.module.map.info.tools.Directions",{extend:Client.module.map.info.tools.Generic,internal_name:"av_info_tool_directions",targetProjCode:"EPSG:32633",epsg4326:"EPSG:4326",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent(arguments);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Directions");g.viewConfig={cls:"a3-directions",tooltip:g.lang.getString("start"),tooltipType:"title",listeners:{scope:g,click:g.geoLocation}};g.menu=Ext.create("Ext.menu.Menu",{plain:true,cls:"a3-directions-menu",items:[{text:g.lang.getString("setStart"),handler:function(){g.setClickedPoint("start")}},{text:g.lang.getString("addVia"),handler:function(){g.setClickedPoint("via")}},{text:g.lang.getString("setStop"),handler:function(){g.setClickedPoint("stop")}}]})},_onNamesAddressResponse:function(h){var g=this,b=h.data.records;g.clickedLocation=b[0]},setStartStop:function(g){var b=this;b.reportEvent("requestDirectionsExpand",{start:g&&Adaptive.utils.Proj.transformPoint(new OpenLayers.Geometry.Point(g.longitude,g.latitude),b.epsg4326,b.map.getProjection()),stop:b.clickedLocation||b.point})},geoLocation:function(){var b=this;if(Ext.supports.GeoLocation){navigator.geolocation.getCurrentPosition(function(g){b.setStartStop(g.coords)},function(g){b.setStartStop()})}},_onAddDirectionsMenuOnButton:function(g){var b=this;b.view.menu=b.menu;b.view.setTooltip(b.lang.getString("showMenu"));b.view.un("click",b.geoLocation,b)},_onRemoveDirectionsMenuFromButton:function(g){var b=this;b.view.menu=null;b.view.setTooltip(b.lang.getString("start"));b.view.on("click",b.geoLocation,b)},setPointInDirectionsModule:function(b){this.reportEvent("requestSetPointInDirectionsModule",b)},setClickedPoint:function(b){var g=this;g.reportEvent("mapPopupHide");g.setPointInDirectionsModule({type:b,point:g.clickedLocation||g.point})}});Ext.define("Client.module.tool.article.lang.ArticleGeneric",{strings:{mainBtnText:{en:"Discover Norway",nb:"Opplev Norge"},mainBtnTip:{en:"Start Discover Norway",nb:"Start Opplev Norge"},headerText:{en:"Discover Norway",nb:"Opplev Norge"},Wikipedia:{en:"Wikipedia",nb:"Wikipedia"},panoramio_copyright:{en:"Photos are copyrighted by their owners",nb:"Bilder er beskyttet av opphavsretten til eierne"},photoOwner:{en:"By",nb:"Av"},title:{en:"Title",nb:"Tittel"},loadMaskMsg:{en:"Please wait",nb:"Vennligst vent"},DigitaltFortalt:{en:"Digitalt fortalt",nb:"Digitalt fortalt"},DigitaltMuseum:{en:"Digitalt museum",nb:"Digitalt museum"},IndustriMuseum:{en:"Industrimuseum",nb:"Industrimuseum"},ArkeologiskeFunn:{en:"Arkeologiske funn",nb:"Arkeologiske funn"}
1,Artsdatabanken:{en:"Artsdatabanken",nb:"Artsdatabanken"},Naturbase:{en:"Naturbase",nb:"Naturbase"},no_data_header:{en:"No results found",nb:"Ingen resultater funnet"},no_data_explanation:{en:"Not every source provides results in all areas",nb:"Ikke alle kilder har resultater for alle områder"},no_data_try:{en:"Please try to change your location or chose another dataset",nb:"Prøv en annen lokasjon, annet zoom-nivå eller bytt datasett"},error_loading:{en:"Something went wrong during loading of data, please try again",nb:"Noe gikk galt under lasting av data, vennligst prøv igjen"},source:{en:"Source",nb:"Kilde"},showLegends:{en:"Show legends",nb:"Vis tegnforklaring"},showResults:{en:"Show results",nb:"Vis resultater"},noArticleItems:{en:"No active sources map. Try to turn one on!",nb:"Ingen aktive kilder. Prøv å skru på en!"},point:{en:"Point",nb:"Punkt"},flickrLoadError:{en:"Failed to from Flickr, pleace contact system administrator.",nb:"Kunne ikke laste Flickr, vennligst kontakt systemansvarlig."},useBoundingBoxAsFilter:{en:"Use map as filter",nb:"Bruk kartutsnitt som filter"},sort:{en:"Sort",nb:"Sortering"},sortDistance:{en:"Distance",nb:"Avstand"},sortTitle:{en:"Title",nb:"Tittel"}}});Ext.define("Adaptive.article.model.Attraction",{extend:Ext.data.Model,fields:[{name:"id",type:"string"},{name:"title",type:"string",mapping:"properties.title"},{name:"tags",type:"string",mapping:"properties.tags"},{name:"content",type:"string",mapping:"properties.content"},{name:"contentType",type:"string",mapping:"properties.contentType"},{name:"dataset",type:"string",mapping:"properties.dataset"},{name:"images",type:"auto",mapping:"properties.images",defaultValue:null,convert:function(b){if(Ext.isArray(b)&&b[0].indexOf("?dimension")>0){b[0]=b[0].split("?dimension")[0]}return b}},{name:"image",type:"auto",mapping:"properties.image",defaultValue:null,convert:function(b){if(b!=null&&b.indexOf("?dimension")){b=b.split("?dimension")[0]}return b}},{name:"link",type:"string",mapping:"properties.link"},{name:"provider",type:"string",mapping:"properties.provider",convert:function(o,g,h,b){if(!o){if(g.data.id.substr(0,g.data.id.indexOf("_"))==="flickr"){o="Flickr"}}return o}},{name:"owner",type:"string",mapping:"properties.owner"},{name:"ownername",type:"string",mapping:"properties.ownername"},{name:"creator",type:"string",mapping:"properties.allProps.dc_creator"},{name:"sound",type:"string",mapping:"properties.sound"},{name:"thumbnail",type:"string",mapping:"properties.thumbnail"},{name:"video",type:"string",mapping:"properties.video"},{name:"videoEmbed",type:"string",mapping:"properties.videoEmbed"},{name:"coords",type:"auto",mapping:"geometry.coordinates",convert:function(b){return{lat:b[1],lon:b[0]}}},{name:"sortDistance",type:"number"},{name:"distance",type:"string"},{name:"api",type:"string"},{name:"dataset",type:"string",mapping:"properties.dataset"},{name:"categories",mapping:"properties.categories",convert:function(b){if(Ext.isArray(b)){b.forEach(function(g){var h=g.title.split(":");if(h.length>1){g.title=h[1].toLowerCase()}})}return b}},{name:"showProvider",type:"auto",defaultValue:true}],setApi:function(b){this.set("api",b)},setDataset:function(b){this.set("dataset",b)}});Ext.define("Adaptive.article.model.Panoramio",{extend:Ext.data.Model,fields:[{name:"title",type:"string",mapping:"photo_title"},{name:"image",type:"auto",mapping:"photo_file_url"},{name:"link",type:"string",mapping:"photo_url"},{name:"owner",type:"string",mapping:"owner_name"},{name:"owner_url",type:"string",mapping:"owner_url"},{name:"coords",type:"auto",convert:function(b,g){return{lat:g.raw.latitude,lon:g.raw.longitude}}},{name:"sortDistance",type:"number"},{name:"distance",type:"string"},{name:"api",type:"string"},{name:"dataset",type:"string"}],setApi:function(b){this.set("api",b)},setDataset:function(b){this.set("dataset",b)}});Ext.define("Adaptive.article.model.Cache",{extend:Ext.data.Model,fields:[{name:"title",type:"string"},{name:"tags",type:"string"},{name:"content",type:"string"},{name:"stripped_content",type:"string"},{name:"contentType",type:"string"},{name:"dataset",type:"string"},{name:"images",type:"auto",defaultValue:null},{name:"image",type:"auto",defaultValue:null},{name:"link",type:"string"},{name:"provider",type:"string"},{name:"owner",type:"string"},{name:"creator",type:"string"},{name:"sound",type:"string"},{name:"thumbnail",type:"string"},{name:"video",type:"string"},{name:"videoEmbed",type:"string"},{name:"epsg",convert:function(h,b){var h=b.raw.geom;var g=h.substring(0,h.indexOf(";"));return"EPSG:"+g.substring(g.indexOf("=")+1)}},{name:"geom",type:"string",convert:function(b){return b.substring(b.indexOf(";")+1)}},{name:"sortDistance",type:"number"},{name:"distance",type:"string"},{name:"api",type:"string"},{name:"categories",mapping:"tags",convert:function(b){if(Ext.isArray(b)){b.forEach(function(g){g.title=g.title.split(":")[1].toLowerCase()})}return[b]}}],setApi:function(b){this.set("api",b)},setDataset:function(b){this.set("dataset",b)}});Ext.define("Adaptive.article.model.Dimu",{extend:Ext.data.Model,fields:[{name:"id",type:"string",mapping:"identifier.id",convert:function(b){return"dimu_"+b}},{name:"title",type:"string",mapping:"artifact.ingress.title"},{name:"content",type:"string",mapping:"artifact.ingress.description",convert:function(b){return b}},{name:"tags",type:"string",mapping:"artifact.ingress.subjects"},{name:"images",type:"auto",mapping:"artifact.defaultMediaIdentifier",convert:function(b){var g=["https://mm.dimu.org/image/"+b];if(!b){return}return g}},{name:"link",type:"string",mapping:"artifact.uniqueId",convert:function(g){var b="https://digitaltmuseum.no/";return b+g}},{name:"coords",type:"auto",mapping:"artifact.coordinate",convert:function(b){if(!b.length){return}var g=b.split(",");if(g.length>0){return{lat:g[0].trim(),lon:g[1].trim()}}return}},{name:"image",type:"auto",defaultValue:null},{name:"provider",type:"string"},{name:"owner",type:"string",mapping:"identifier.owner"},{name:"creator",type:"string",mapping:"artifact.ingress.producer"},{name:"thumbnail",type:"string",mapping:"artifact.defaultMediaIdentifier"},{name:"provider",type:"string",defaultValue:"Digitalt museum"},{name:"uniqueId",type:"string",mapping:"artifact.uniqueId"},{name:"isDimu",defaultValue:true}],setApi:function(b){this.set("api",b)},setDataset:function(b){this.set("dataset",b)}});Ext.define("Client.data.model.ThemeRecord",{singleton:true,models:[],ensureLang:function(){if(!this.columnNameLang){this.columnNameLang=GeoMind.lang.Lang.registerTranslations("
1Client.module.lang.ColumnNames")}},mapDataType:function(b){switch(b){case"decimal":case"single":case"double":case"integer":case"serial":case"foreign_key":return"number";case"uuid":case"text":return"string";case"date":case"datetime":case"time":return"date";case"list":case"editable_list":case"multiselect_list":return"auto";case"boolean":return"boolean";default:return"auto"}},getConvertFunction:function(b){switch(b){case"date":return function(h){if(!h||h instanceof Date){return h}var g=GeoMind.utils.Date.fixDate(h);return g?new Date(g.getUTCFullYear(),g.getUTCMonth(),g.getUTCDate()):null};case"time":case"datetime":return GeoMind.utils.Date.fixDate;case"uuid":case"text":return function(g){return g||null};case"list":case"editable_list":return function(g){return g&&g.trim()};case"multiselect_list":return function(g){if(typeof g==="string"){return g.split(",")}return g};case"multiselect_dictionary":return function(g){if(typeof g==="string"){return g.split(",").map(function(h){return parseInt(h)||null})}return g};default:return}},formatColumnValue:function(A,C,B,g,h,o,q,b){var z=this;z.ensureLang();if(C==="##VALUE##"){C=null}switch(B){case"boolean":A=A===null?z.columnNameLang.getString("bool_null_value",true)||A:A?z.columnNameLang.getString("yes"):z.columnNameLang.getString("no");break;case"date":case"datetime":case"time":A=GeoMind.utils.Date.fixDate(A);if(B=="date"){A=Ext.Date.format(A,g)}else{if(B=="datetime"){A=Ext.Date.format(A,g+" "+h)}else{A=Ext.Date.format(A,h)}}break;case"decimal":case"single":case"double":A=(A||A==0)?Number(A).toFixed(o||2):A;break;case"integer":A=(A||A==0)?Number(A).toFixed(0):A;break;case"uuid[]":A=b?(A||[]).map(function(D){return b.findRecord("uuid",D).get("name")}).join(", "):A;break;case"media":if(A&&!C){var w="WebServices/generic/Media.asmx/Download?uuid="+A+"&gm_session_id="+GeoMind.utils.SessionManager.ss.sessionId;return'<a href="'+w+'" onclick="Adaptive.ux.MediaLightbox.show(this.href, \'auto\'); return false;" target="_blank" rel="noopener noreferrer"><img src="'+w+'&thumbnail_size=small"></a>'}break;case"url":if(A&&!C){return'<a href="'+A+'" target="_blank" rel="noopener noreferrer">'+A+"</a>"}break;default:break}if(!A||!C){return A}if(q){C=C.replace(/##VALUE\((.*?)\)##/g,function(E,D){return q.get?q.get(D):q[D]})}return C.replace(/##VALUE##/g,A)},getDefaultValue:function(g,b){if(g=="boolean"){return((b=="true"||b==1)?true:null)}return b||null},getColumns:function(b){var g=[];b.columns.forEach(function(h){g.push(h.column_name)});return g},getModel:function(h){var o=Client.data.model.ThemeRecord,g="Client.data.model.ThemeRecord."+h.theme_uuid,b=[];if(o.models.indexOf(g)==-1){h.columns.forEach(function(q){var A=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",q.data_type),z=o.mapDataType(A),w={name:q.column_name,type:z,useNull:true,defaultValue:o.getDefaultValue(A,q.default_value),convert:o.getConvertFunction(A)};if(z=="string"){w.sortType=function(B){return(B&&String(B).toUpperCase())||""}}b.push(w);if(A==="dictionary"||A==="foreign_key"||A==="multiselect_dictionary"){b.push({name:q.column_name+"/value",type:"string",useNull:true,defaultValue:o.getDefaultValue("text"),convert:o.getConvertFunction("text")})}});b.push({name:"geom_wkt",type:"string"});if(h.is_digi_theme){b.push({name:"media_files",type:"number"});b.push({name:"_editable",type:"bool",defaultValue:false});b.push({name:"_historical",type:"bool",defaultValue:false})}if(h.child_themes){h.child_themes.forEach(function(q){b.push({name:q.theme_uuid+"_count",type:"number"})})}if(h.data_source_type==="621c5c1c-8c39-435c-9b2c-a826f858d375"){b.push({name:"_ogr_fid"})}Ext.define(g,{extend:"Ext.data.Model",theme:h.name,fields:b,idProperty:h.id_column});o.models.push(g)}return g},createRecord:function(g,b){return Ext.create(Client.data.model.ThemeRecord.getModel(g),b||{})}});Ext.define("Adaptive.article.model.Theme",{extend:Ext.data.Model,fields:[{name:"title",type:"string"},{name:"content",type:"string"},{name:"stripped_content",type:"string"},{name:"dataset",type:"string"},{name:"images",type:"auto",defaultValue:null},{name:"image",type:"auto",defaultValue:null},{name:"vimeo",type:"string",defaultValue:null},{name:"link",type:"string"},{name:"provider",type:"string"},{name:"owner",type:"string"},{name:"feature",type:"auto"},{name:"sortDistance",type:"number"},{name:"dataviewsortdistance",type:"number"},{name:"distance",type:"string"},{name:"api",type:"string"},{name:"isTheme",type:"bool"}],setApi:function(b){this.set("api",b)},setDataset:function(b){this.set("dataset",b)}});Ext.define("Client.module.tool.article.mixins.Utils",{useThumbnailProxy:function(b){var g=b.split("_")[0];switch(g){case"norvegiana":case"lokalhistoriewiki":case"fotoapi":case"kulturhistoriskleksikon":case"wikipedia":case"dimu":return true;default:return false}},getDataset:function(b){var g=this,h;
1g.datasets.some(function(o){if(o.dataIndex==b){h=o;return true}});return h},getDatasetBySourceName:function(b){var g;this.datasets.some(function(h){if(h.sourceName==b){g=h;return true}});return g},getShareId:function(o,b){var g=o.substring(o.indexOf("_")+1);var h=b+"_"+g;return h},createLayer:function(g){var w=this;var q=new OpenLayers.Style({},{context:{radius:function(B){return Math.min(B.attributes.count,10)+10},number:function(B){return B.attributes.count==1?"":B.attributes.count},fillColor:function(C){var D="#ff0",B=C.cluster[0].config;if(B.fillColor){D=B.fillColor}return w.rgbToHex(D)},borderColor:function(C){var D="#ff0",B=C.cluster[0].config;if(B.borderColor){D=B.borderColor}return w.rgbToHex(D)},fontColor:function(C){var D="#000",B=C.cluster[0].config;if(B.fontColor){D=B.fontColor}return w.rgbToHex(B.fontColor)},symbol:function(B){if(B.attributes.symbol){return B.attributes.symbol}},symbolSize:function(B){if(B.attributes.symbolSize){return B.attributes.symbolSize}}}});var b=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO,property:"count",value:1});var A=new OpenLayers.Filter({type:OpenLayers.Filter.Function,evaluate:function(B){return !!B.symbol}});var o=new OpenLayers.Rule({filter:new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:[b,A]}),symbolizer:{pointRadius:"${symbolSize}",externalGraphic:"${symbol}"}});var z=new OpenLayers.Rule({elseFilter:true,symbolizer:{pointRadius:"${radius}",fillColor:"${fillColor}",fillOpacity:1,strokeColor:"${borderColor}",strokeWidth:10,strokeOpacity:0.4,strokeLinejoin:"butt",label:"${number}",cursor:"pointer",fontColor:"${fontColor}"}});q.addRules([z,o]);var h=new OpenLayers.Layer.Vector(g,{strategies:[new OpenLayers.Strategy.Cluster({distance:50,shouldCluster:function(F,E){if(F.cluster[0].dataset==E.dataset){var D=w.map.getPixelFromLonLat(new OpenLayers.LonLat(F.geometry.x,F.geometry.y)),C=w.map.getPixelFromLonLat(new OpenLayers.LonLat(E.geometry.x,E.geometry.y)),G=D.distanceTo(C),B=this.distance;if(E.config){B=E.config.clusterDist}return G<B}return false},createCluster:function(C){var B=OpenLayers.Strategy.Cluster.prototype.createCluster.apply(this,[C]);B.attributes.symbol=C.attributes.symbol;B.attributes.symbolSize=C.attributes.symbolSize;return B}})],styleMap:new OpenLayers.StyleMap({"default":q,select:{fillColor:"#0093c0",fillOpacity:1,strokeWidth:10,strokeOpacity:0.4,strokeColor:"#0093c0"},hover:{fillColor:"#0093c0",fillOpacity:1,strokeWidth:10,strokeOpacity:0.4,strokeColor:"#0093c0"}})});return h},createThemeRecord:function(b,h){var z=this,g=Ext.create("Adaptive.article.model.Theme"),B=b.get("feature");if(B){B.dataset=h.dataIndex;B.config=h.config;if(h.config.symbolConfig&&h.config.symbolConfig.length){var w=h.config.symbolConfig;for(var o=0;o<w.length;++o){var A=w[o];if(A.column==null){B.attributes.symbol=z.featureSymbolUrl+A.symbol;B.attributes.symbolSize=A.size;o=w.length}filter=A.value.split([","]).map(function(C){return C.trim()});if(filter.indexOf(b.get(A.column).toString())!=-1){B.attributes.symbol=z.featureSymbolUrl+A.symbol;B.attributes.symbolSize=A.size;o=w.length}B.attributes.isPoint=B.geometry.id.contains("Point")}}}var q={};if(h.config.columns.additionalColumns.length){h.config.columns.additionalColumns.forEach(function(C){q[C]=z.getCompleteColumnComfig(C,h);q[C].value=b.get(C)})}g.set("id",z.createThemeDigithemeId(h,b));g.set("share_id",h.dataIndex+"_"+b.get(h.config.columns.id));g.set("title",b.get(h.config.columns.title));g.set("content",b.get(h.config.columns.content));g.set("distance",b.get("distance"));g.set("sortDistance",b.get("sortDistance"));g.set("dataviewsortdistance",b.get("dataviewsortdistance"));g.set("isTheme",true);g.set("image",b.get(h.config.columns.image));if(h.config.columns.vimeo){g.set("vimeo",b.get(h.config.columns.vimeo))}g.set("feature",B);g.set("dataset",h.dataIndex);g.set("provider",h.text);g.set("ownerUrl",h.config.link);g.set("aCols",q);g.set("showSourceLabel",h.config.showSourceLabel);g.set("onlyDimu",h.config.onlyDimu);g.set("dataIndex",h.dataIndex);return g},getCompleteColumnComfig:function(o,h){var g=this;for(var b=0;b<h.config.theme_data.columns.length;++b){if(h.config.theme_data.columns[b].column_name===o){return{column_name:o,name:h.config.theme_data.columns[b].name,value_formatter:h.config.theme_data.columns[b].value_formatter,data_type:GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",h.config.theme_data.columns[b].data_type)}}}},formatValue:function(o,w,q){var h=this;for(var g=0;g<q.config.theme_data.columns.length;++g){if(q.config.theme_data.columns[g].column_name===w){var z=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",q.config.theme_data.columns[g].data_type),b=q.config.theme_data.columns[g].value_formatter;return Client.data.model.ThemeRecord.formatColumnValue(o,b,z,h.formatDate.getString("date_format"),h.formatDate.getString("time_format"),null)}}},createThemeDigithemeId:function(g,b){var h=g.config.columns.id;
1return g.value.api+"/"+g.value.uuid+"_"+b.get(h)},loadVimeoImage:function(b,h){var o=this,q="https://www.vimeo.com/api/oembed.json",g=q+"?url="+b.vimeo,w=b.id;Ext.data.JsonP.request({url:g,success:function(B,A){if(o.openRecord){o.openRecord.vimeoData=B;o.articlePanel.update(o.openRecord)}else{var z=o.opplevNorgeStore.getAt(o.opplevNorgeStore.findExact("id",w));z.data.vimeoData=B}document.getElementById("vimeo_"+w).src=B.thumbnail_url_with_play_button},failure:function(z){console.warn("Vimeo, load error")}})}});Ext.define("Client.module.tool.article.ArticleGeneric",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Client.module.tool.article.mixins.Utils,Adaptive.mixins.Notify],internal_name:"av_article_generic",serviceProj:"EPSG:4326",cacheServiceUrl:"WebServices/articleComments/Cache.asmx/SpatialTagSearch",themeServiceUrl:"WebServices/client/DataView.asmx/ReadAny",themeImageUrl:"WebServices/generic/Media.asmx/Download?thumbnail_size=small&uuid=",featureSymbolUrl:"WebServices/generic/GetArticleSymbol.ashx?f=",MAX_RADIUS:5000,xThumbnailProxy:"proxies/xThumbnailService.ashx?size=400&url=",dimuThumbnail:"https://mm.dimu.org/image/",xNorvegianaProxy:"proxies/xNorvegiana.ashx",datasets:[],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.article.lang.ArticleGeneric");g.mc=Ext.create("GeoMind.base.ModuleController");g.mc.registerModule(g);g.reloadTask=new Ext.util.DelayedTask(g.onReload,g);g.wktWriter=new OpenLayers.Format.WKT();g.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");g.ignoreBboxFilter=false;g.sortOrder="sortDistance";g.searchUrl="WebServices/search/SearchProxy.asmx/Search"},buildGui:function(){var h=this,b=[];for(var g=0;g<h.datasets.length;++g){if(h.datasets[g].value.api=="flickr"){h.flickrApiKey=h.datasets[g].config.apikey}if(h.datasets[g].value.api=="avdigitheme"||h.datasets[g].value.api=="avtheme"){h.datasets[g].config.theme_data.columns.push({column_name:"dataviewsortdistance"});h.datasets[g].localStore=Ext.create("Ext.data.Store",{model:Client.data.model.ThemeRecord.getModel(h.datasets[g].config.theme_data),dataset:h.datasets[g],proxy:{type:"ajaxread",headers:{"Content-Type":"application/json; charset=utf-8"},params:{theme_uuid:h.datasets[g].value.uuid,columns:Object.keys(h.datasets[g].config.columns).map(function(q,o,w){return h.datasets[g].config.columns[q]}).reduce(function(q,o){q=q instanceof Array?q:[q];o=o instanceof Array?o:[o];return q.concat(o)}).filter(function(o){if(o!=null&&o!="geom"){return o}}),excludeGeometry:h.datasets[g].config.disableClustering?true:false,sortByGeomColumn:"geom",sortByGeomGeometry:h.wktWriter.write(h.getCenterFeature())},wrapperObject:"request",url:h.themeServiceUrl},listeners:{scope:h,load:function(q,o){h.onThemeDataLoad(q,o)}}});h.datasets[g].store=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Theme",autoLoad:false})}else{if(h.datasets[g].value.api.contains("dimu")){h.datasets[g].categoryFilter=h.datasets[g].categories&&h.datasets[g].categories.length>0?"fq=artifact.subjects: ("+h.datasets[g].categories.join(" OR ")+")":null}else{if(!h.datasets[g].value.api.contains("wiki")){h.datasets[g].value.dataset+=h.datasets[g].categories&&h.datasets[g].categories.length>0?" (dc_subject_text:("+h.datasets[g].categories.join(") OR dc_subject_text:(")+")) ":""}}}h.datasets[g].tooltip=h.datasets[g].text}h.selectView=h.createSelectView();h.opplevNorgeStore=h.createArticleStore();h.itemTemplate=h.createItemTemplate();h.resView=h.createResView();h.infoTextContainer=Ext.widget({xtype:"container",cls:"a3-box a3-info",html:h.infoText});h.showLegendsBtn=Ext.widget({xtype:"button",cls:"a3-link-btn",text:h.lang.getString("showLegends"),handler:function(){h.onShowLegendsBtnClick()}});h.backToResViewBtn=Ext.widget({xtype:"button",cls:"a3-link-btn",hidden:true,text:h.lang.getString("showResults"),handler:function(){h.onBackToResViewBtnClick()}});h.bboxFilterCheckContainer=Ext.widget({xtype:"checkboxfield",boxLabel:h.lang.getString("useBoundingBoxAsFilter"),defaultType:"",cls:"a3-link-btn",value:!h.ignoreBboxFilter,listeners:{change:function(w,q,o){h.ignoreBboxFilter=!q;h.loadData()}}});h.sortRadioButtonsContainer=Ext.widget({xtype:"fieldcontainer",fieldLabel:h.lang.getString("sort"),defaultType:"radiofield",defaults:{flex:1},layout:"hbox",items:[{checked:true,boxLabel:h.lang.getString("sortDistance"),name:"sortDistance",inputValue:"sortDistance",id:"radioSortDistance",listeners:{change:function(q,A,o){var z=Ext.getCmp("radioSortDistance");var w=Ext.getCmp("radioTitle");if(z.getValue()){w.setValue(false);h.sortOrder="sortDistance";h.loadData()}}}},{boxLabel:h.lang.getString("sortTitle"),name:"title",inputValue:"title",id:"radioTitle",listeners:{change:function(q,A,o){var z=Ext.getCmp("radioSortDistance");var w=Ext.getCmp("radioTitle");if(w.getValue()){z.setValue(false);h.sortOrder="title";h.loadData()}}}}]});h.legendStore=Ext.create("Ext.data.Store",{fields:[{name:"fillColor",type:"string",mapping:"config.fillColor"},{name:"borderColor",type:"string",mapping:"config.borderColor"},{name:"fontColor",type:"string",mapping:"config.fontColor"},{name:"symbolConfig",type:"auto",mapping:"config.symbolConfig"},{name:"caption",type:"string",mapping:"text"}]});h.legendsView=Ext.create("Ext.view.View",{hidden:true,flex:1,store:h.legendStore,autoScroll:true,itemSelector:"div.thumb
1-wrap",tpl:new Ext.XTemplate('<tpl for=".">','<div style="margin-bottom: 10px;" class="thumb-wrap">','<h4 class="a3-legend-header">{caption}</h4>','<ul class="a3-article-legend-list">','<tpl if="this.hasColors(values)">',"<li>","{[this.clusterRenderer(values.fillColor, values.borderColor, values.fontColor)]}","<span>"+h.lang.getString("point")+"</span>","</li>","</tpl>",'<tpl for="symbolConfig">',"<li>",'<img src="{[this.buildArticleSymbolUrl(values.symbol)]}"} class="a3-legend-symbol">',"<span>{value}</span>","</li>","</tpl>","</ul>","</div>","</tpl>",{hasColors:function(o){if(o.fillColor&&o.borderColor&&o.fontColor){return true}return false},clusterRenderer:function(w,q,o){w="rgb("+w.replace(/\s+/g,",")+")";q="rgb("+q.replace(/\s+/g,",")+")";return'<svg height="40" width="40" class="a3-legend-symbol" ><circle cx="20" cy="20" r="11" fill='+w+" stroke="+q+' stroke-width=10 stroke-opacity=0.4 stroke-linecap="round" stroke-linejoin="round"></circle><text x="20" y="23" text-anchor="middle" fill='+o+">1</text></svg>"},buildArticleSymbolUrl:function(o){return"WebServices/generic/GetArticleSymbol.ashx?f="+o}})});b=[h.backToResViewBtn,h.infoTextContainer,h.showLegendsBtn,h.bboxFilterCheckContainer,h.sortRadioButtonsContainer,h.legendsView,h.selectView,h.resView];if(!h.infoText){Ext.Array.remove(b,h.infoTextContainer)}h.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body",layout:{type:"vbox",align:"stretch",pack:"start"},items:b,listeners:{boxready:function(q,w,o){h.createColTemplate(w)},resize:function(q,w,o){h.createColTemplate(w);h.resView.refresh()}}});h.krapi=new KR.API({flickr:{apikey:h.flickrApiKey||""},base_url:h.xNorvegianaProxy})},onShowLegendsBtnClick:function(){var b=this;b.selectView.hide();b.resView.hide();b.loadActiveDatasetsToLegendsStore();b.legendsView.show();b.legendsViewOn=true;b.showLegendsBtn.hide();b.bboxFilterCheckContainer.hide();b.sortRadioButtonsContainer.hide();b.backToResViewBtn.show()},onBackToResViewBtnClick:function(){var b=this;b.legendsView.hide();b.selectView.show();b.resView.show();b.legendsViewOn=false;b.backToResViewBtn.hide();b.bboxFilterCheckContainer.show();b.sortRadioButtonsContainer.show();b.showLegendsBtn.show()},loadActiveDatasetsToLegendsStore:function(){var g=this,b=[];g.datasets.forEach(function(h){if(h.pressed){b.push(h)}});g.legendStore.loadRawData(b)},createSelectView:function(){var g=this;var b=Ext.create("Ext.view.View",{cls:"a3-article-source-buttons-view",store:g.datasets,itemSelector:"button",tpl:new Ext.XTemplate('<tpl for=".">','<button class="{[this.isPressed(values.field1)]}" style="border-top-color: {[this.setBorderColor(values.field1)]}">{[this.buttonTitle(values.field1)]}</button>',"</tpl>",{buttonTitle:function(h){return h.text},setBorderColor:function(h){return g.rgbSdToRgbCd(h.config.borderColor)},isPressed:function(h){var o="a3-article-toggle-btn";if(h.pressed){o+=" article-btn-pressed"}return o}}),listeners:{scope:g,itemclick:function(o,h,w,q){var z=g.getDataset(h.data.field1.dataIndex);z.pressed=!z.pressed;h.data.field1.pressed=z.pressed;g.onSelectLibraryChange(z.dataIndex,z.pressed);o.refresh()}}});return g.createForm({noScroll:true,buttons:[],items:[g.createSet("fs_object",{title:"",collapsible:false,layout:{type:"column"},items:[b]})]})},createArticleStore:function(){var b=this;return Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Attraction",autoLoad:false,sorters:[{property:"sortDistance",direction:"ASC"}]})},createItemTemplate:function(){var b=this;return new String('<div class="a3-article-item <tpl if="this.isSelected(values)">x-item-selected</tpl>" style="border-top-color: {[this.setBorderColor(values.dataset)]}" data-index="{#}"><tpl if="values.vimeo"><div class="a3-article-image-container"><img class="a3-article-thumbnail" id="vimeo_{id}" src="{[this.getVimeoImage(values)]}"/></div><tpl else><tpl if="this.hasImage(values)"><div class="a3-article-image-container"><img class="a3-article-thumbnail" src="{[this.getImage(values)]}"/></div><tpl if="this.apiIsPanoramio(values.dataset)"><div class="a3-opplev-norge-panoramio-logo-container"><img src="http://www.panoramio.com/img/logo-tos.png"><span>'+b.lang.getString("panoramio_copyright")+'</span></div></tpl></tpl></tpl><h4 class="a3-article-title">{title}</h4><tpl if="stripped_content != null && stripped_content.length > 0"><p class="a3-article-content">{stripped_content}</p><tpl elseif="content != null && content.length > 0"><p class="a3-article-content">{[this.cleanText(values.content)]}</p></tpl><tpl if="tags != null && tags.length > 0"><p class="a3-article-tags">{[this.cleanText(values.tags)]}</p></tpl>'+(b.crossHair?'<p class="a3-article-distance">{distance}</p>':"")+'<p class="a3-article-dataset"><tpl if="owner_url != null"><a href="{owner_url}" target="_blank">Av: {owner}</a><tpl else><span><tpl if="showSourceLabel">'+b.lang.getString("source")+": </tpl>{provider}</span></tpl></p></div>")},createResView:function(){var b=this;return Ext.create("Ext.view.View",{cls:"a3-article-result-view",overflowX:"hidden",autoScroll:true,flex:5,store:b.opplevNorgeStore,preserveScrollOnRefresh:true,selModel:{mode:"MULTI"},deferEmptyText:true,emptyText:'<div class="a3-article-no-data-view-div"><p>'+b.lang.getString("no_data_header")+"</p><p>"+b.lang.getString("no_data_explanation")+"<br><span>"+b.lang.getString("no_data_try")+"</span></p></div>",itemSelector:".a3-article-item",tpl:new Ext.XTemplate(),listeners:{itemmouseenter:function(h,g,w,o){var q=parseInt(w.attributes.getNamedItem("data-index").nodeValue)-1;g=b.opplevNorgeStore.getAt(q);b.hoverPoint(g)},itemmouseleave:function(h,g,q,o){b.hoverControl.unselectAll()},itemclick:function(h,g,w,o){var q=parseInt(w.attributes.getNamedItem("data-index").nodeValue)-1;g=b.opplevNorgeStore.getAt(q);b.showArticle(g)},beforeselect:function(){return false}}})},createColTemplate:function(g){var h=this;if(g<400){cols=1}else{if(g<700){cols=2}else{if(g<900){cols=3}else{if(g<1200){cols=4}else{if(g>1200){cols=5}}}}}var o="";for(var b=1;b<cols;++b){o+=h.createMasonryCol(cols,b)}o+=h.createMasonryCol(cols,0);h.resView.tpl=new Ext.XTemplate(o,{isSelected:function(q){return q.id==h.currentArticle},hasImage:function(q){return !!this.getImage(q)},getImage:function(w){var q=h.useThumbnailProxy(w.id)?h.xThumbnailProxy:"";if(w.isTheme){q=h.themeImageUrl}
1if(w.isDimu&&w.thumbnail){return q+h.dimuThumbnail+w.thumbnail}if(w.images&&w.images.length>0){return q+w.images[0]}if(w.image){return q+w.image}return""},cleanText:function(q){return q.replace(/<\/?[^>]+(>|$)/g,"")},apiIsPanoramio:function(q){return q=="panoramio"},setBorderClass:function(q){return h.getDataset(q).dataIndex.toLocaleLowerCase().replace(/\s/g,"")},setBorderColor:function(q){return h.rgbSdToRgbCd(h.getDataset(q).config.borderColor)},getVimeoImage:function(q){if(q.image){return this.getImage(q)}if(q.vimeoData&&q.vimeoData.thumbnail_url){return q.vimeoData.thumbnail_url}else{h.loadVimeoImage(q);return"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"}}})},rgbSdToRgbCd:function(b){var g=b.split(" ");return"rgb("+g.join(",")+")"},rgbToHex:function(b){if(!b){return"000000"}var g=b.split(" ");return"#"+((1<<24)+(parseInt(g[0])<<16)+(parseInt(g[1])<<8)+parseInt(g[2])).toString(16).slice(1)},hexToRgba:function(z,o){z=z.replace("#","");var w=parseInt(z.substring(0,2),16),q=parseInt(z.substring(2,4),16),h=parseInt(z.substring(4,6),16);result="rgba("+w+","+q+","+h+","+o/100+")";return result},createMasonryCol:function(o,g){var h=this,b=new String('<div class="a3-article-col cols'+o+'"><tpl for="."><tpl if="xindex % '+o+"=="+g+'">'+h.itemTemplate+"</tpl></tpl></div>");return b},activate:function(){var b=this;b.active=true;if(!b.view){b.buildGui()}if(!b.isOpenArticle){b.initLayers();b.plotMapCenter();b.resView.setLoading(true);b.reloadTask.delay(1000)}else{b.showLayers();b.unhoverListItem()}b.reportEvent("disableInfoTool");b.map.events.register("click",b,b.performWmsSearch)},deactivate:function(){var b=this;b.active=false;b.map.events.unregister("click",b,b.performWmsSearch);b.reportEvent("enableInfoTool");if(!b.isOpenArticle){b.removeLayers()}else{b.hideLayers()}},afterMapReset:function(){this.isOpenArticle=false},initLayers:function(){var b=this;b.opplevNorgeLayer=b.createLayer("Article_generic_layer");b.centerMarkerLayer=new OpenLayers.Layer.Markers("Markers");b.map.addLayer(b.opplevNorgeLayer);b.map.addLayer(b.centerMarkerLayer);b.map.events.register("moveend",b,b.mapMoveZoomEnd);b.map.events.register("move",b,b.mapMove);b.hoverControl=new OpenLayers.Control.SelectFeature(b.opplevNorgeLayer,{toggle:false,clickout:false,multiple:false,hover:true,geometryTypes:["OpenLayers.Geometry.Point"],onBeforeSelect:function(g){this.unselectAll()},onUnselect:function(){b.unhoverListItem()},overFeature:function(g){b.hoverControl.select(g);b.hoverListItem(g.cluster)},clickFeature:function(g){b.showClickedFeatureInfo(g)}});b.map.addControl(b.hoverControl);b.hoverControl.activate()},removeLayers:function(){var b=this;b.hoverControl.deactivate();b.map.events.unregister("moveend",b,b.mapMoveZoomEnd);b.map.events.unregister("move",b,b.mapMove);b.map.removeLayer(b.opplevNorgeLayer);b.map.removeLayer(b.centerMarkerLayer)},showLayers:function(){var b=this;b.hoverControl.activate();b.map.events.register("moveend",b,b.mapMoveZoomEnd);b.map.events.register("move",b,b.mapMove);b.opplevNorgeLayer.setVisibility(true);b.centerMarkerLayer.setVisibility(true)},hideLayers:function(){var b=this;b.hoverControl.deactivate();b.map.events.unregister("moveend",b,b.mapMoveZoomEnd);b.map.events.unregister("move",b,b.mapMove);b.opplevNorgeLayer.setVisibility(false);b.centerMarkerLayer.setVisibility(false)},hoverPoint:function(g){var b=this;Ext.each(b.hoverControl.layer.features,function(h){Ext.each(h.cluster,function(o){if(o.article_id==g.data.id){b.hoverControl.select(h);return false}})})},hoverListItem:function(b){var g=this;if(b.length==1){g.currentArticle=b[0].article_id;g.resView.refresh()}},unhoverListItem:function(){var b=this;if(b.currentArticle){delete b.currentArticle;b.resView.refresh()}},showClickedFeatureInfo:function(b){var h=this;var g=Math.max(h.map.getZoom()||0,6);h.map.setCenter(new OpenLayers.LonLat(b.geometry.x,b.geometry.y),g+1)},mapMove:function(){var b=this;if(b.map){b.plotMapCenter();b.reloadTask.cancel()}},mapMoveZoomEnd:function(){var b=this;b.reloadTask.delay(1000)},clearData:function(){var b=this;b.opplevNorgeStore.removeAll();b.clearFeatures();Ext.Array.each(b.datasets,function(g){if(g.config.disableClustering&&(g.value.a
1pi=="avdigitheme"||g.value.api=="avtheme")){b.setWmsLayerVisibility(g.value.layerId,false)}})},onReload:function(){var b=this;if(b.minZoom&&b.map.zoom<b.minZoom){b.clearData();return}b.loadData()},loadData:function(){var g=this,b=g.calculateViewPortRadius();g.lastUsedBbox=g.map.getExtent();g.lastZoom=g.map.getZoom();g.datasets.forEach(function(h){h.loaded=false;if(h.pressed){if(h.cache){g.loadCacheData(h)}else{if(h.value.api=="avdigitheme"||h.value.api=="avtheme"){g.loadThemeData(h)}else{if(h.value.api=="panoramio"){g.loadPanoramio(h)}else{if(h.value.api=="dimu"){g.loadDimuData(h)}else{if(b>g.MAX_RADIUS){g.getWithin(h,g.MAX_RADIUS)}else{g.getBbox(h)}}}}}}})},loadNextPanoramioPage:function(g){var b=this;b.from=b.to;b.to=b.to+100;b.loadPanoramio(g,b.from,b.to,true)},loadPanoramio:function(o,A,z,g){var h=this,w="http://www.panoramio.com/map/get_panoramas.php",b=h.calculateViewPortRadius(),q=h.map.getExtent().transform(h.map.getProjection(),h.serviceProj);if(!(A&&z)){h.from=0;h.to=100}if(b>h.MAX_RADIUS){q=h.calcMaxBbox()}Ext.data.JsonP.request({url:w,params:{set:"full",from:h.from,to:h.to,minx:q.left,miny:q.bottom,maxx:q.right,maxy:q.top,size:"medium"},success:function(B){if(B.has_more){h.loadNextPanoramioPage(o)}if(g){h.handlePanoramioPaginationResponse(o,B)}else{h.handlePanoramioResponse(o,B)}},failure:function(){h.showNotifyError(h.view,h.lang.getString("error_loading"))}})},handlePanoramioResponse:function(o,b){var g=this;var h=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Panoramio",data:b,proxy:{type:"memory",reader:{type:"json",root:"photos"}},autoLoad:false,listeners:{datachanged:function(q){g.calculateDistances(q)}}});g.createFeatures(h,o);o.store=h;g.putDataInOpplevNorgeStore()},handlePanoramioPaginationResponse:function(h,b){var g=this;h.store.loadRawData(b,true);g.createFeatures(h.store,h);g.putDataInOpplevNorgeStore()},loadThemeData:function(g){var b=this;b.resView.setLoading(true);b.beforeThemeDataLoad(g.localStore,g.config.columns.geom);g.localStore.load({page:0,limit:10000,start:0})},beforeThemeDataLoad:function(h,g){var q=this,w=new OpenLayers.Feature.Vector(q.map.getExtent().toGeometry()),b=q.map.getProjectionObject().proj.srsProjNumber,o="SRID="+b+";"+q.wktWriter.write(w);h.getProxy().params.sortByGeomGeometry=q.wktWriter.write(q.getCenterFeature());if(q.ignoreBboxFilter){Adaptive.data.proxy.AjaxRead.setFilter(h,{filterColumns:[]})}else{Adaptive.data.proxy.AjaxRead.setFilter(h,{filterColumns:[{name:g,value:o,comparisonOperator:"ST_INTERSECTS",netType:"geometry"}]})}},onThemeDataLoad:function(h,g){var o=this,b=[],q=h.dataset;o.calculateThemeDistances(h);o.resView.setLoading(false);h.each(function(w){var z=o.createThemeRecord(w,q);b.push(z)});q.store.loadData(b);o.putDataInOpplevNorgeStore()},calculateThemeDistances:function(g){var h=this,b=h.map.getCenter(),o=new OpenLayers.Geometry.Point(b.lon,b.lat).transform(h.map.getProjection(),h.serviceProj);g.each(function(w){if(w.get("geom_wkt")){w.set("feature",h.wktWriter.read(w.get("geom_wkt")));if(w.get("dataviewsortdistance")){var z=w.get("dataviewsortdistance");w.set("sortDistance",z);if(z<1000){z=Math.round(z)+" m"}else{z=Math.round(z)/1000+" km"}w.set("distance",z)}else{var q=w.get("feature").clone().geometry.getCentroid().transform(h.map.getProjection(),h.serviceProj),z=h.calcDist(o,q);w.set("sortDistance",z);if(z<1){z=Math.round(z*1000)+" m"}else{z=Math.round(z*10).toFixed(1)/10+" km"}w.set("distance",z)}}else{if(w.get("dataviewsortdistance")){var z=w.get("dataviewsortdistance");w.set("sortDistance",z);if(z<1000){z=Math.round(z)+" m"}else{z=Math.round(z)/1000+" km"}w.set("distance",z)}else{w.set("distance","-")}}})},loadDimuData:function(h){var g=this,b=["https://api.dimu.org/api/solr/select?q=*","rows=100"],o=g.map.getExtent().transform(g.map.getProjection(),g.serviceProj);if(o){b.push("fq=artifact.coordinate: ["+o.bottom+","+o.left+" TO "+o.top+","+o.right+"]")}if(h.categories.length>0){b.push(h.categoryFilter)}if(h.config.onlyDimu){b.push("dimu_instance=dimu-no prod")}if(h.config.apikey){b.push("wt=json&api.key="+h.config.apikey)}else{b.push("wt=json&api.key=demo")}delete o.centerLonLat;if(!g.ajax){g.ajax=Ext.create("Ext.data.Connection")}g.mask();g.ajax.request({method:"GET",url:b.join("&"),headers:{"Content-Type":"application/json; charset=utf-8"},success:function(w){var q=Ext.JSON.decode(w.responseText);g.handleDimuResponse(q.response.docs,h);g.unmask()},failure:function(){g.unmask();g.showNotifyError(g.view,g.lang.getString("error_loading"))}})},handleDimuResponse:function(g,o){var b=this;
1b.resView.setLoading(false);var h=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Dimu",data:g,proxy:{type:"memory",reader:{type:"json",useSimpleAccessors:true}},autoLoad:false,sorters:[{property:"sortDistance",direction:"ASC"}],listeners:{datachanged:function(q){b.calculateDistances(q);b.setDataIndex(q,o)}}});b.createFeatures(h,o);o.store=h;o.loaded=true;b.putDataInOpplevNorgeStore()},loadCacheData:function(g){var b=this,o=b.cacheServiceUrl,h=b.map.getExtent().transform(b.map.getProjection(),b.serviceProj);h=h.left+","+h.bottom+","+h.right+","+h.top;delete h.centerLonLat;Ext.Ajax.request({url:o,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({start:0,limit:0,bbox:h,tags:g.categories.join(","),datasource_data_index:g.dataIndex}),success:function(q){q=GeoMind.utils.Ajax.fixResponse(q);if(q.success){b.handleCacheResponse(q,g)}else{b.showNotifyError(b.view,b.lang.getString("error_loading"))}},failure:function(){b.showNotifyError(b.view,b.lang.getString("error_loading"))}})},handleCacheResponse:function(g,o){var b=this;b.resView.setLoading(false);var h=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Cache",data:g.records,proxy:{type:"memory"},autoLoad:false,sorters:[{property:"sortDistance",direction:"ASC"}],listeners:{datachanged:function(q){b.calculateDistances(q);b.setDataIndex(q,o)}}});b.createFeatures(h,o);o.store=h;o.loaded=true;b.putDataInOpplevNorgeStore()},getBbox:function(h){var b=this,o=b.map.getExtent().transform(b.map.getProjection(),b.serviceProj).toBBOX();b.resView.setLoading(true);try{b.krapi.getBbox(h.value,o,function(q){b.handleResponse(q,h)},function(q){b.resView.setLoading(false);if(h.sourceName=="Flickr"){b.showNotifyError(b.view,b.lang.getString("flickrLoadError"))}else{b.showNotifyError(b.view,b.lang.getString("error_loading"))}})}catch(g){console.warn(g);b.resView.setLoading(false);b.showNotifyError(b.view,b.lang.getString("error_loading"))}},getWithin:function(o,g){var h=this,b=h.calculateCenter();h.resView.setLoading(true);h.krapi.getWithin(o.value,b,g,function(q){h.handleResponse(q,o)},function(q){console.warn(q);h.resView.setLoading(false);if(o.sourceName=="Flickr"){h.showNotifyError(h.view,h.lang.getString("flickrLoadError"))}else{h.showNotifyError(h.view,h.lang.getString("error_loading"))}})},handleResponse:function(g,w){if(w.value.api=="flickr"){for(var b in g.features){var h=g.features[b].properties;if(h.owner,h.id){h.link="https://www.flickr.com/photos/"+h.owner+"/"+h.id}h.content=h.description._content}}var o=this;o.resView.setLoading(false);var q=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Attraction",data:g,proxy:{type:"memory",reader:{type:"json",root:"features"}},autoLoad:false,sorters:[{property:"sortDistance",direction:"ASC"}],listeners:{datachanged:function(z){o.calculateDistances(z);o.setDataIndex(z,w)}}});o.createFeatures(q,w);w.store=q;w.loaded=true;o.putDataInOpplevNorgeStore()},createFeatures:function(b,h){var g=this,o=new OpenLayers.Format.WKT();b.each(function(q){var w;if(q.data.coords){w=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(q.data.coords.lon,q.data.coords.lat).transform(g.serviceProj,g.map.getProjection()))}else{if(q.data.geom){w=o.read(q.data.geom);if(q.data.epsg!=g.map.getProjection()){w.geometry.transform(q.data.epsg,g.map.getProjection())}}}w.config=h.config;q.set("feature",w)});return b},putDataInOpplevNorgeStore:function(){var b=this;b.tmpDataArr=[];b.addApiToModel();b.datasets.forEach(function(g){if(g.pressed&&g.store){b.tmpDataArr=b.tmpDataArr.concat(g.store.data.items)}});b.opplevNorgeStore.loadData(b.tmpDataArr);b.opplevNorgeStore.sort(b.sortOrder,"ASC");b.plotData()},addApiToModel:function(){var b=this;b.datasets.forEach(function(g){if(g.pressed&&g.store&&!g.theme){g.store.each(function(h){h.setDataset(g.dataIndex)})}})},plotData:function(){var g=this,b=[];Ext.Array.each(g.datasets,function(h){if(h.config.disableClustering&&(h.value.api=="avdigitheme"||h.value.api=="avtheme")){g.setWmsLayerVisibility(h.value.layerId,h.pressed)}});
1g.opplevNorgeStore.each(function(o){if(!o.data.feature){return}var h=o.get("feature");if(h.config.disableClustering){return}h.dataset=o.data.dataset;h.article_id=o.data.id;b.push(h)});g.clearFeatures();if(g.opplevNorgeLayer){g.opplevNorgeLayer.addFeatures(b)}},setWmsLayerVisibility:function(b,o){var g=this,h=g.map?g.map.getLayersByClass("OpenLayers.Layer.WMS"):[];Ext.Array.each(h,function(q){if(q.record&&q.record.get("id")===b){q.setVisibility(o)}})},getLayerByLayerId:function(g){var o=this,q=o.map.getLayers();if(!g){return}for(var h=0;h<q.length;h++){var b=q[h];if(b.record&&b.record.get("id")==g){return b}}},performWmsSearch:function(b){var g=this;var h=g.map.getLonLatFromViewPortPx(b.xy);g=g.doSearch(h)},getSearchRadius:function(){var g=this,b=11*g.map.getResolution();if(b<12){b=12}return b},doSearch:function(o){var g=this,b=g.getSearchRadius();var h={request:{srsid:g.map.projection.proj.srsProjNumber,st:"circle",s:o.lon+","+o.lat+","+b,start:0,limit:100}};g._doSearch(h)},_doSearch:function(q){var B=this,g="",w=B.map.getLayers(),b;for(var z=0;z<w.length;z++){var o=w[z];if(o.getVisibility()&&o.calculateInRange()&&o.record&&o.record.data.is_internal){var h=o&&Adaptive.utils.Config.getThemeData(o.record),A=h&&Adaptive.utils.Config.getBooleanConfig(h,"map_search_disabled",false),D=h&&Adaptive.utils.Config.getBooleanConfig(h,"custom_map_search",false);if(o.record.dataviewFilter&&o.record.dataviewFilter.filterColumns){var C={};o.record.dataviewFilter.filterColumns.forEach(function(E){C[E.name]=E.value.toString()});if(!b){b={}}b[o.record.data.id.toString()]=C}if(o.av_filter&&o.av_filter.filter_id&&o.av_filter.filter_id!=-1){B.doMapSearchForFilteredLayer(o)}else{if(!A&&!D&&!(h&&h.data&&h.data.scat_object&&!h.data.scat_public)){g+=o.record.data.id+","}}}}if(b){q.request.dimensionFilters=Ext.JSON.encode(b)}if(g==""){B.resolvePromise();return}q.request.layers=g;B.executeSearchRequest({params:Ext.JSON.encode(q),success:Ext.bind(B.searchCallbackSuccess,B),failure:Ext.bind(B.searchCallbackFailure,B)})},searchCallbackSuccess:function(g,q){var o=this;g=GeoMind.utils.Ajax.fixResponse(g);if(!g.success){console.error("Article module WMS search failed: ",g);return}if(g.records&&g.records.length){if(!g.records[0].uid.split(".").length===3){return}var z=g.records[0].uid.split(".")[2];var b=g.records[0].layerId;wktFormatter=new OpenLayers.Format.WKT();if(g.records.length>1){var w=new OpenLayers.Geometry.Collection();g.records.forEach(function(A){w.addComponent(wktFormatter.read(A.fullGeom).geometry)});w.calculateBounds();o.map.zoomToExtent(w.bounds,true);return}else{var h=wktFormatter.read(g.records[0].fullGeom).geometry;o.zoomToGeometry(h)}Ext.Array.each(o.datasets,function(C){if(C.value.layerId&&C.value.layerId.toString()===b&&(C.value.api=="avdigitheme"||C.value.api=="avtheme")){var B=C.value.api+"/"+C.value.uuid+"_"+z;var A=o.opplevNorgeStore.findRecord("id",B);if(A){o.showArticle(A)}}})}},zoomToGeometry:function(h){var b=this;var g=b.map.zoom<b.defaultZoomLevel?b.map.zoom+1:b.map.zoom;if(h.CLASS_NAME==="OpenLayers.Geometry.Point"){b.map.setCenter(new OpenLayers.LonLat(h.x,h.y),g)}else{b.map.zoomToExtent(h.getBounds())}},searchCallbackFailure:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);console.error("Article module WMS search failed:",b)},executeSearchRequest:function(h){var g=this,b=g.searchUrl,o={"Content-Type":"application/json; charset=utf-8"};if(!g.connection){g.connection=Ext.create("Ext.data.Connection",{disableCachingParam:false})}else{g.connection.abortAll()}o.gm_session_id=GeoMind.utils.SessionManager.ss.sessionId;o.gm_lang_code=GeoMind.utils.SessionManager.ss.langCode;o["X-Adaptive-Gui"]=__guuid__;g.connection.request(Ext.apply({url:b,method:"POST",headers:o},h))},plotPoint:function(b){var g=this;g.opplevNorgeLayer.addFeatures(b)},clearFeatures:function(){var b=this;if(b.opplevNorgeLayer){b.opplevNorgeLayer.removeAllFeatures()}},calculateCenter:function(o){var h=this;var g=h.map.getCenter().transform(h.map.getProjection(),h.serviceProj);var b={lat:g.lat,lng:g.lon};return b},calculateDistances:function(g){var h=this,b=h.map.getCenter(),q=new OpenLayers.Geometry.Point(b.lon,b.lat).transform(h.map.getProjection(),h.serviceProj),o=new OpenLayers.Format.WKT();g.each(function(z){var w;
1if(z.data.coords){w=new OpenLayers.Geometry.Point(z.data.coords.lon,z.data.coords.lat)}else{if(z.data.geom){w=o.read(z.data.geom).geometry}else{return}}dist=h.calcDist(q,w);z.set("sortDistance",dist);if(dist<1){dist=Math.round(dist*1000)+" m"}else{dist=Math.round(dist*10).toFixed(1)/10+" km"}z.set("distance",dist)})},calcDist:function(h,g){return OpenLayers.Util.distVincenty(new OpenLayers.LonLat(h.x,h.y),new OpenLayers.LonLat(g.x,g.y))},plotMapCenter:function(){var o=this,g,h,b;if(o.crossHair){g=new OpenLayers.Size("50px","50px");h=new OpenLayers.Icon("resx/icons/client/centre-of-gravity.png",g);b=new OpenLayers.Marker(o.map.getCenter(),h);if(o.centerMarkerLayer){o.centerMarkerLayer.clearMarkers();o.centerMarkerLayer.addMarker(b)}}},calculateViewPortRadius:function(){var o=this,z=o.map.getExtent(),g=o.map.getCenter().transform(o.map.getProjection(),o.serviceProj),q=(z.bottom+z.top)/2,w=z.left,h=new OpenLayers.Geometry.Point(w,q).transform(o.map.getProjection(),o.serviceProj),A=new OpenLayers.Geometry.Point(g.lon,g.lat),b=Math.round(o.calcDist(A,h)*1000);return b},calcMaxBbox:function(){var o=this,b=o.map.getCenter(),w=b.lat+o.MAX_RADIUS,g=b.lat-o.MAX_RADIUS,h=(b.lon+o.MAX_RADIUS),q=(b.lon-o.MAX_RADIUS);bbox=new OpenLayers.Bounds(q,g,h,w).transform(o.map.getProjection(),o.serviceProj);return bbox},showArticle:function(b){var g=this;g.isOpenArticle=true;g.reportEvent("openArticle",{data:b.data,dataset:g.getDataset(b.get("dataset"))})},goBackToResView:function(){var b=this;b.selectView.show();b.resView.show()},onSelectLibraryChange:function(b,h){var g=this;if(h!=undefined){g.datasets.forEach(function(o){if(o.dataIndex==b){if((h==false)&&o.store){g.opplevNorgeStore.remove(o.store.data.items);g.plotData();g.resView.refresh()}else{if(h==true&&o.loaded){g.addExistingData(o.store)}else{if(o.cache){g.loadCacheData(o)}else{if(o.value.api=="avdigitheme"||o.value.api=="avtheme"){g.loadThemeData(o)}else{if(o.value.api=="panoramio"){g.loadPanoramio(o)}else{if(o.value.api=="dimu"){g.loadDimuData(o)}else{if(g.calculateViewPortRadius()>g.MAX_RADIUS){g.getWithin(o,g.MAX_RADIUS)}else{g.getBbox(o)}}}}}}}}})}},addExistingData:function(b){var g=this;g.opplevNorgeStore.add(b.data.items);g.opplevNorgeStore.sort(g.sortOrder,"ASC");g.plotData()},setDataIndex:function(b,g){b.each(function(h){h.set("dataIndex",g.dataIndex)})},getCenterFeature:function(){var g=this;var h=new OpenLayers.Geometry.Point(g.map.center.lon,g.map.center.lat);var b=new OpenLayers.Feature.Vector(h);return b}});Ext.define("Client.module.tool.opplevNorge.lang.OpplevNorge",{strings:{mainBtnText:{en:"Discover Norway",nb:"Opplev Norge"},mainBtnTip:{en:"Start Discover Norway",nb:"Start Opplev Norge"},headerText:{en:"Discover Norway",nb:"Opplev Norge"},Wikipedia:{en:"Wikipedia",nb:"Wikipedia"},panoramio_copyright:{en:"Photos are copyrighted by their owners",nb:"Bilder er beskyttet av opphavsretten til eierne"},photoOwner:{en:"By",nb:"Av"},title:{en:"Title",nb:"Tittel"}},errCodes:{}});Ext.define("Client.module.tool.opplevNorge.OpplevNorge",{extend:Client.module.tool.article.ArticleGeneric,config:{datasets:[{dataIndex:"Wikipedia",text:"Wikipedia",value:{api:"wikipedia"},pressed:true,fillColor:"#fefe33"},{dataIndex:"Digitalt fortalt",text:"Digitalt fortalt",value:{api:"norvegiana",dataset:"difo"},fillColor:"#fb9902"},{dataIndex:"DigitaltMuseum",text:"Digitalt museum",value:{api:"norvegiana",dataset:"DiMu"},fillColor:"#fe2712"},{dataIndex:"Industrimuseum",text:"Industrimuseum",value:{api:"norvegiana",dataset:"Industrimuseum"},fillColor:"#8601af",fontColor:"#fff"},{dataIndex:"Musit",text:"Arkeologiske funn",value:{api:"norvegiana",dataset:"MUSIT"},fillColor:"#3d01a4",fontColor:"#fff"},{dataIndex:"Artsdatabanken",text:"Artsdatabanken",value:{api:"norvegiana",dataset:"Artsdatabanken"},fillColor:"#0247fe",fontColor:"#fff"},{dataIndex:"Naturbase",text:"Naturbase",value:{api:"norvegiana",dataset:"Naturbase"},fillColor:"#a7194b",fontColor:"#fff"},{dataIndex:"Panoramio",text:"Panoramio",value:{api:"panoramio"},fillColor:"#0392ce"}],btnCls:"a3-opplevNorge-main-btn",internal_name:"av_opplevNorge"},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.opplevNorge.lang.OpplevNorge");g.mc=Ext.create("GeoMind.base.ModuleController");g.mc.registerModule(g);g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText");g.buildGui()}});Ext.define("Client.module.map.scaleLine.ScaleLine",{extend:Client.module.Generic,internal_name:"av_scale_line",map:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},beforeMapReset:function(){var b=this;if(b.scaleLineController&&b.scaleLineController.map){b.scaleLineController.map.removeControl(b.scaleLineController);delete b.scaleLineController}},afterMapReset:function(){var b=this;b.scaleLineController=new OpenLayers.Control.ScaleLine({bottomOutUnits:"",id:"mapScaleLine",maxWidth:200,geodesic:true});b.map.addControl(b.scaleLineController)}});Ext.define("Client.module.tool.layerDimension.lang.LayerDimension",{strings:{mainBtnText:{en:"Layer filtering",nb:"Temalag filtrering"},mainBtnTip:{en:"Filter layer by WMS dimension parameters",nb:"Filtrer tema med WMS dimension parametere"},headerText:{en:"Layer filtering",nb:"Temafiltrering"},infoText:{en:"All layers with{0} in layer manager may be filtered. Enable filtering by setting the layer visible in the layer manager.",nb:"Utvalgte temalag vist med{0} i temalagvelger kan filtreres under. For å filtrere innhold må temalaget være påslått i temalagvelger."},filter_inactive:{en:"This layer can be filtered",nb:"Dette temalaget kan filtreres"},filter_active:{en:"This layer is filtered.",nb:"Temalaget er filtrert."},shareWindowTitle:{en:"Copy filter URL",nb:"Kopier filter lenke"},shareWindowInfo:{en:"Copy below address and paste it where you want to share it.",nb:"Kopier lenke nedenfor og lim den inn der du ønsker å dele den."},encodedLabel:{en:"URL with encoded filter:",nb:"URL med kodet filter:"},noEncodedLabel:{en:"Filter without URL encoding:",nb:"Filter uten URL koding:"},standardFilter:{en:"Filtering",nb:"Filtrering"},advancedFilter:{en:"Advanced filtering",nb:"Avansert filtrering"}}});Ext.define("Client.module.tool.layerDimension.filter.lang.FilterList",{strings:{header:{en:"Data filtering",nb:"Filtrering av data"},promptRemoveFilterHeader:{en:"Remove filter",nb:"Remove filter"},promptRemoveFilter:{en:"Are you sure?",nb:"Er du sikker på at du vil fjerne dette?"},filterEmptyText:{en:"No filter selected",nb:"Ingen filtre er valgt"},setFilter:{en:"Advanced data filtering",nb:"Avansert filtrering av data"},customFilterSet:{en:"Filter search by",nb:"Filtrer søket etter"},cbxLayer:{en:"Column",nb:"Kolonne"},btnCreate:{en:"Add filter",nb:"Legg til filter"},btnUpdate:{en:"Update filter",nb:"Oppdater filter"},abort:{en:"Abort",nb:"Avbryt"},geometryFilter:{en:"Filter by geometry",nb:"Filtrering på geografisk område"},infoFilter:{en:"Select or draw a geographical area to filter theme, adjust the filter by defining parameters in the property section. ",nb:"Velg eller tegn geografisk område for filtrering av temalag, finjuster eventuelt med parametre i egenskapsseksjonen. Du kan også gå direkte til egenskaper for å gjøre valg der"},infoFilterNoGeom:{en:"Filter theme by defining paramateres in the property section",nb:"Filtrer tema ved å velge parametre i egenskapsseksjonen."},activeFilters:{en:"Active filters",nb:"Aktive filter"},noActiveFilters:{en:"No active filters",nb:"Ingen aktive filter"},geomFilterTitle:{en:"Geographical area",nb:"Geografisk område"},setPredefinedFilter:{en:"Predefined filter",nb:"Forhåndsdefinert filter"},setFilter:{en:"Properties",nb:"Egenskaper"},tooltipEditFilter:{en:"Edit filter",nb:"Rediger filter"},tooltipDeleteFilter:{en:"Delete filter",nb:"Slett filter"}}});Ext.define("Client.module.tool.layerDimension.filter.lang.GeometryFilter",{strings:{filterPolygonButton:{en:"Polygon",nb:"Polygon"},filterPolygonCombo:{en:"Select polygon from list or draw in map",nb:"Velg polygon fra liste eller tegn i kartet"},btnResetGeometry:{en:"Reset geometry",nb:"Nullstill geometri"},mydata:{en:"My data",nb:"Mine data"},predefinedAreaCategory:{en:"Predefined area",nb:"Forhåndsdefinert område"}
1,filterPolygonLabel:{en:"Click button to draw, or select from list",nb:"Klikk knapp for å tegne, eller velg fra listen"},emptyMyData:{en:"No areas available",nb:"Ingen områder lagt til"}}});Ext.define("Client.module.tool.layerDimension.filter.GeometryFilter",{alias:"widget.geometryFilter",extend:Ext.form.FieldSet,mixins:[Adaptive.form.mixins.Generator,Adaptive.layer.DrawInMap,Adaptive.utils.LightModule],constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.filter.lang.GeometryFilter");g.callParent(arguments);g.registerModule()},initComponent:function(){var b=this;b.geomPickerPreset=Ext.widget(b.createField("filterPolygonCombo",{xtype:"combo",hideLabel:true,flex:1,valueField:"id",displayField:"name",editable:false,store:Ext.create("Ext.data.Store",{fields:[{name:"id",type:"number"},"name","category","geom","type"],proxy:{type:"ajax",url:"api/data/predefinedAreas",reader:{getData:function(g){return g.map(function(h){h.type=b.lang.getString("predefinedAreaCategory");return h})},type:"json"}},autoLoad:true,listeners:{scope:b,load:b.getExistingMyData}}),addClearTrigger:false,listConfig:{cls:"grouped-list"},tpl:Ext.create("Ext.XTemplate",'{[this.currentType = null]} <tpl for=".">','<tpl if="this.shouldShowHeader(type)"><div class="group-header">{[this.showHeader(values.type)]}</div></tpl><div class="x-boundlist-item">{name}</div>',"</tpl>",'<tpl if="this.emptyStore()">','<div class="x-boundlist-item">'+b.lang.getString("emptyMyData")+"</div>","</tpl>",{shouldShowHeader:function(g){return this.currentType!=g},showHeader:function(g){this.currentType=g;return g},emptyStore:function(){return b.geomPickerPreset.store.getCount()===0}}),listeners:{select:b.onPresetSelect,scope:b}}));b.items=[{xtype:"fieldcontainer",fieldLabel:b.lang.getString("filterPolygonLabel"),labelAlign:"top",layout:"hbox",items:[b.createButton("filterPolygonButton",false,{text:null,cls:"a3-icon a3-geom-picker-polygon-btn",handler:function(){b.addDrawControl("polygon")},height:34,width:34}),b.geomPickerPreset]}];b.callParent(arguments)},onFeatureAdded:function(b){var h=this;Ext.defer(function(){h.removeDrawControl()},500,this);if(b.feature.geometry&&b.feature.geometry.getArea()>0){var g=new OpenLayers.Format.WKT().write(b.feature);h.handleGeomChange(g)}},onPresetSelect:function(g,b){var o=this,h=b[0].get("geom");o.handleGeomChange(h)},handleGeomChange:function(g){var b=this;b.fireEvent("setGeometryFilter",g)},getExistingMyData:function(){var b=this,g={filter:new OpenLayers.Filter.Function({evaluate:function(h){return h.geometry instanceof OpenLayers.Geometry.Polygon}}),includeNotVisible:true,merge:true};b.reportEvent("getMyData",g);b.setMyData(g.features||[])},setMyData:function(o){var z=this,h=z.geomPickerPreset.store,g=map.projection.proj.srsProjNumber,w=[],b=[],q;h.data.each(function(A){if(A.get("type")==z.lang.getString("mydata")){w.push(A)}});h.remove(w);o.forEach(function(A){q=Ext.create(h.model,{id:Ext.id(),name:A.name,category:"mydata",geom:"SRID="+g+";MULTIPOLYGON("+A.features.map(function(B){return B.geometry.toString().replace("POLYGON","")}).join(",")+")",type:z.lang.getString("mydata")});b.push(q)});h.insert(0,b);z.geomPickerPreset.getPicker().refreshView()},_onLayerManagerActivate:function(){var b=this;b.getExistingMyData()},getDrawingLayerStyle:function(){return new OpenLayers.StyleMap({strokeWidth:4,strokeColor:"black",strokeOpacity:1,pointRadius:2,fillOpacity:0.2,fillColor:"black",graphicZIndex:2,strokeDashstyle:"dash"})},removeAllFilters:function(){var b=this;b.removeDrawControl()},destroy:function(){this.deregisterModule();this.callParent(arguments)}});Ext.define("Client.module.tool.layerDimension.filter.FilterList",{extend:Ext.container.Container,mixins:[Adaptive.form.mixins.Generator,Adaptive.layer.Highlight],layout:{type:"vbox",align:"stretch"},constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.filter.lang.FilterList");Ext.define("langUuidGenerator",{extend:Ext.data.Model,idgen:"uuid"});g.callParent(arguments);g.activate()}
1,initComponent:function(){var b=this;var g=b.filterableColumns.filter(function(h){return h.name!==b.geomColumn});b.filter=Ext.create("Client.module.tool.layerDimension.filter.Filter",{filterableColumns:g,theme_uuid:b.theme_uuid});b.filterStore=Ext.create("Ext.data.Store",{fields:["id","name","logicalOperator","comparisonOperator","value","netType","isArray","valueStore"],data:[]});b.filterList=Ext.widget({xtype:"grid",store:b.filterStore,hideHeaders:true,viewConfig:{stripeRows:true,plugins:{ptype:"gridviewdragdrop",dragText:b.lang.getString("dragAndDrop")}},emptyText:b.lang.getString("noActiveFilters"),columns:[{dataIndex:"expression",flex:1,renderer:function(w,h,q){var o=b.filterableColumns.filter(function(z){return z.column_name==q.get("name")})[0].name;if(o===b.geomColumn){return b.lang.getString("geometryFilter")}return o+" "+q.get("comparisonOperator")+" "+b.getNameFromValue(q.get("value"),q.get("valueStore"),q.get("isArray"))}},{xtype:"actioncolumn",dataIndex:"editFilter",width:25,items:[{icon:"resx/icons/client/edit.png",tooltip:b.lang.getString("tooltipEditFilter"),tooltipType:"title",handler:function(o,q){var h=o.getStore().getAt(q);b.onGridSelect(o,h)}}]},{xtype:"actioncolumn",dataIndex:"deleteFilter",width:25,items:[{icon:"resx/icons/client/delete.png",tooltip:b.lang.getString("tooltipDeleteFilter"),tooltipType:"title",handler:function(o,q){var h=o.getStore().getAt(q);b.filterStore.remove(h);b.onStoreUpdate()}}]}],listeners:{scope:b,itemClick:function(q,h,z,o,w){if(w.target.tagName.toUpperCase()==="SPAN"){return}if(h.data.id===b.geomColumn){b.highlightFeature(h.get("value").split(";")[1],null,true,false,5000);return}}}});b.predefinedFilterStore=Ext.create("Ext.data.Store",{fields:[{name:"id",type:"number"},"name"],proxy:{type:"ajaxread",url:"webservices/filter/FilterContainer.asmx/ReadPredefined",params:{theme_uuid:b.theme_uuid},reader:{getData:function(h){return h.d.records},type:"json"}},autoLoad:false,listeners:{load:b.onPresetLoad,scope:b}});b.predefinedFilter=Ext.widget(b.createField("comboPredefinedFilter",{xtype:"combo",hideLabel:true,flex:1,valueField:"id",displayField:"name",editable:false,addClearTrigger:true,onTrigger1Click:function(){this.clearValue();b.onPresetSelect()},store:b.predefinedFilterStore,listeners:{select:b.onPresetSelect,scope:b}}));b.predefinedFilterSet=Ext.widget(b.createSet("setPredefinedFilter",{hidden:true,layout:{type:"vbox",align:"stretch"},collapsible:false,collapsed:false},[b.predefinedFilter]));b.geometryFilterSet=Ext.create("Client.module.tool.layerDimension.filter.GeometryFilter",{map:b.map,title:b.lang.getString("geomFilterTitle"),listeners:{setGeometryFilter:b.setGeometryFilter,scope:b}});b.items=[b.createTextBox(b.geomColumn?"infoFilter":"infoFilterNoGeom"),b.predefinedFilterSet,b.geomColumn&&b.geometryFilterSet,b.createSet("setFilter",{layout:{type:"vbox",align:"stretch"},collapsible:false,collapsed:false},[b.backButton,b.filter,{xtype:"container",layout:{type:"hbox"},items:[{xtype:"box",flex:1},b.createButton("btnCreate",true,{handler:b.onCreateFilter,scope:b}),b.createButton("btnUpdate",false,{disabled:true,handler:b.onUpdateFilter,scope:b})]}]),b.createSet("activeFilters",{layout:{type:"vbox",align:"stretch"},collapsible:false,collapsed:false},[b.filterList])];b.callParent(arguments)},getNameFromValue:function(o,q,b){if(!b){return o}var h=[],g=b?o.split(","):[o];q.each(function(w){if(Ext.Array.contains(g,w.get("id"))){h.push(w.get("name"))}});return h.join(", ")},removeAllFilters:function(){var b=this;b.geometryFilterSet.removeAllFilters();b.filterStore.removeAll();b.onStoreUpdate()},onCreateFilter:function(){var g=this,b=g.filter.getValues();if(b!==false){b.id=(new langUuidGenerator()).getId();g.filterStore.add(b);g.filter.reset();g.onStoreUpdate()}},onUpdateFilter:function(){var g=this,b=g.filter.getValues();g._onUpdateFilter(b)},_onUpdateFilter:function(g,o){var h=this,b=h.filterStore.getById(g.id);if(b||o){b&&b.destroy();h.filterStore.add(g);h.filter.reset();h.onStoreUpdate()}},_onSetPredefinedFilter:function(g){var b=this;b.predefinedFilter.setValue(g.data.value)},onGridSelect:function(h,g){var o=this,b=o.down("[itemId=btnUpdate]");if(g.get("name")===o.geomColumn){return}o.filter.setValues(g.data);if(g&&o.filterStore.getById(g.get("id"))){b.setDisabled(false)}},onPresetSelect:function(g,b){var h=this;h.predefined_filter=b?b[0].get("id"):null;h.onStoreUpdate()},onPresetLoad:function(g,b,q){var h=this,o=b.length>0;h.predefinedFilterSet.setVisible(o)},isFiltered:function(){return !!this._getFilter()},_getFilter:function(){var g=this,b;g.map.loopLayersAndExecute(g.theme_uuid,function(h){if(h.av_filter){b=h.av_filter.filters;g.predefined_filter=h.av_filter.predefined_filter}});return b},activate:function(){var g=this,o=g.down("[dataIndex=comboPredefinedFilter]");g.predefinedFilterStore.load();function b(){var q=g._getFilter();if(q){q.forEach(function(w){g.filterStore.add(g.filterStore.create(w))});
1g.filter.reset();g.onStoreUpdate();o.setValue(g.predefined_filter)}}function h(){if(g.rendered){g.filterStore.reload();b()}else{setTimeout(function(){h()},100)}}h()},updateFilter:function(h){var g=this,b;g.map.loopLayersAndExecute(g.theme_uuid,function(o){var w={};var q=o.record.get("layers").toUpperCase().split(",");q.forEach(function(z){var A="FID_"+z;w[A]=h;if(o.params[A]!=h){o.mergeNewParams(w);o.av_filter={filter_id:h,filters:Ext.pluck(g.filterStore.data.items,"data"),predefined_filter:g.predefined_filter};o.record.isFiltered=h!=-1;b=true}})});if(b){Client.AppLogic.dispatchEvent("dataviewFilterUpdate",{theme_uuid:g.theme_uuid})}},onStoreUpdate:function(){var h=this,b=h.down("[itemId=btnUpdate]"),g=[];b.setDisabled(true);h.filterStore.each(function(o){_name=o.get("name"),_value=o.get("value"),_comparisonOperator=o.get("comparisonOperator");if(_comparisonOperator=="IN"){_value=_value.join(";")}g.push({name:_name,value:_value,comparisonOperator:_comparisonOperator})});if(g.length==0&&h.predefined_filter==null){h.updateFilter(-1);return}Ext.Ajax.request({url:"webservices/filter/FilterContainer.asmx/Create",method:"POST",jsonData:{theme_uuid:h.theme_uuid,filters:g,predefined_filter:h.predefined_filter!==undefined?h.predefined_filter:null},callback:function(q,w,o){o=w&&JSON.parse(o.responseText).d;if(o&&o.success){h.updateFilter(o.data[0].value)}else{console.error("Last added filter did not validate!");h.filterStore.removeAt(h.filterStore.count()-1)}}})},setGeometryFilter:function(o){var h=this,g=map.projection.proj.srsProjNumber,b=o.toUpperCase().startsWith("SRID=");ewkt=b?o:("SRID="+g+";"+o),geometryFilter={id:h.geomColumn,name:h.geomColumn,value:ewkt,comparisonOperator:"=",netType:"dee25205-d3a3-42a5-870f-8d673491b2cf"};h.highlightFeature(o,null,true,false,5000);h._onUpdateFilter(geometryFilter,true)},createhighlightLayer:function(){var b=this;styleMap=new OpenLayers.StyleMap({strokeWidth:4,strokeColor:"black",strokeOpacity:1,pointRadius:7,fillOpacity:0,strokeDashstyle:"dash"});b.highlightLayer=new OpenLayers.Layer.Vector(Ext.id()+"_highlight",{styleMap:styleMap,rendererOptions:{zIndexing:true}});b.map.addLayer(b.highlightLayer)},deactivate:function(){this.geometryFilterSet.removeDrawControl()}});Ext.define("Client.module.tool.layerDimension.filter.lang.Standard",{strings:{cbxFilter:{en:"Not selected",nb:"Ikke valgt"},info:{en:"",nb:"Velg et forhåndsdefinert filter dersom det finnes eller opprett nye"}}});Ext.define("Client.module.tool.layerDimension.filter.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],filters:[],constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.filter.lang.Standard");g.callParent(arguments)},buildGui:function(b,h){var o=this,g=Adaptive.utils.Config.getThemeData(b);o.filterCombo=Ext.widget(o.createField("cbxFilter",{xtype:"combo",hintOnly:true,editable:false,valueField:"id",displayField:"name",flex:1,addClearTrigger:false,store:{xtype:"store",autoLoad:false,proxy:{url:"WebServices/filter/FilterContainer.asmx/Read",type:"ajaxread"},fields:["id","name"]},listeners:{scope:o,change:o.onChangeFilter}}));o.infoBox=o.createTextBox("info");o.filterList=Ext.create("Client.module.tool.layerDimension.filter.FilterList",{inTab:h,filterableColumns:o.getFilterableColumns(b),map:o.map,theme_uuid:g.theme_uuid,geomColumn:g.spatial_data_type!=="no_geom"&&g.geom_column});return o.filterList},onChangeFilter:function(h,g){var b=this;b.filterList.addFilter(g);b.filterList.show()},onCreateFilter:function(){var b=this;b.filterList.show()},getFilterableColumns:function(g){var h=Adaptive.utils.Config.getThemeData(g),o=!!h&&h.columns,b=[];if(h&&h.data_source_type==="19e6b756-3bb3-4513-ab35-c47bf0e2b47e"&&o){o.forEach(function(w){if(w.visible_filter=="show"){b.push(w)}});if(b.length>0&&h.spatial_data_type!=="no_geom"){var q=o.find(function(w){return w.column_name===h.geom_column});b.push(q)}}return b},isFilterLayer:function(b){var g=this;return g.getFilterableColumns(b).length>0},_onGetServerFilter:function(h){var g=this,o=h.data,b,q;if(o.theme_uuid){b=o.theme_uuid}else{if(o.layer&&o.layer.record){var w=Adaptive.utils.Config.getThemeData(o.layer.record);b=w&&w.theme_uuid}}if(b){g.map.loopLayersAndExecute(b,function(z){if(z.av_filter){q=z.av_filter.filter_id}})}h.data.filters=h.data.filters||{};h.data.filters.filter_id=q},_onGetStorableData:function(h){var g=this,b=[];
1g.map.getLayers().forEach(function(o){if(o.av_filter){var w=Adaptive.utils.Config.getThemeData(o.record);theme_uuid=w&&w.theme_uuid;var q=Ext.clone(o.av_filter);q.filters=o.av_filter.filters.map(function(A){var z=Ext.clone(A);delete z.valueStore;return z});b.push({theme_uuid:theme_uuid,av_filter:q})}});h.data.filters=b},_onRestoreStorableData:function(h){var g=this,b=h.data.filters;b&&b.forEach(function(o){g.map.loopLayersAndExecute(o.theme_uuid,function(q){g.setServerFilter(q,o.av_filter.filters)})});Ext.defer(function(){Client.AppLogic.dispatchEvent("layerManagerRefresh")},500,g)},_onSetPredefinedFilter:function(b){this.filterList.setPredefinedFilter(b)},setServerFilter:function(g,o,q){var h=this,w=Adaptive.utils.Config.getThemeData(g.record),b=w.theme_uuid;Ext.Ajax.request({url:"webservices/filter/FilterContainer.asmx/Create",method:"POST",jsonData:{theme_uuid:b,filters:o,predefined_filter:q||null},callback:function(A,D,z){z=D&&JSON.parse(z.responseText).d;if(z&&z.success){var C=GeoMind.utils.Data.extractConfigObjectByKey(z.data,"id");param={};var B=g.record.get("layers").toUpperCase().split(",");B.forEach(function(E){var F="FID_"+E;param[F]=C;g.mergeNewParams(param)});g.av_filter={filter_id:C,filters:o,predefined_filter:q};g.record.isFiltered=C!=-1;Client.AppLogic.dispatchEvent("dataviewFilterUpdate",{theme_uuid:b})}}})},afterMapReset:function(){var g=this,b,h;Ext.each(g.map.wmsLayers,function(o){b=o.record;if(g.isFilterLayer(b)){h=Adaptive.utils.Config.getThemeData(o.record);var q=Ext.decode(Adaptive.utils.Config.getConfig(h,"default_filter"));if(q){if(!Ext.isNumber(q)){console.warn("Incorrect filter for theme "+h.name,q)}else{Ext.defer(function(){g.setServerFilter(o,[],q)},500,g)}}}})},deactivate:function(){var b=this;b.filterList&&b.filterList.deactivate()}});Ext.define("Client.module.tool.layerDimension.lang.Layer",{strings:{btnApply:{en:"Apply filter",nb:"Sett filter"},btnRemove:{en:"Remove filter",nb:"Nullstill filter"},btnDefault:{en:"Set default values",nb:"Sett standard verdier"},headerText:{en:"Data filtering",nb:"Filtrering av data"},filterInfo:{en:"Filter layer content based on the value selected in the dropdown(s) below.",nb:"Filtrer bort innhold fra temalaget ved å velge en eller flere verdier i nedtrekksmenyen(e) under."},manualPlotRangeLead:{en:"Plot range manually for ",nb:"Sett intervall manuelt for "},layerNamesLead:{en:"Filter for layer(s)",nb:"Filter for temalag"},emptyText:{en:"All",nb:"Alle"},legalRangeLead:{en:"Legal range (min - max)",nb:"Gyldig intervall (min - maks)"},btnShare:{en:"Share filter url",nb:"Del filter lenke"},btnShareTip:{en:"Click to display the url that initiates current filter",nb:"Klikk for å vise lenken som representerer valgte filter"},booleanTrue:{en:"Yes",nb:"Ja"},booleanFalse:{en:"No",nb:"Nei"}}});Ext.define("Client.mixins.WMSDimensionFilter",{addWMSDimensionFilterByUuid:function(b,o,h){var g=this,q=g.getLayersByUuid(b);g.addWMSDimensionFilter(q,o,h)},addWMSDimensionFilter:function(q,o,h){var g=this,w={},b=[];Ext.each(q,function(C){C.record.isFiltered=(o.length>0);var A=C.record.get("proxy_type"),B=[];Ext.each(o,function(E){try{switch(A){case"qgisserver":var I=E.columnName;var H=E.filterOptions.comparisonOperator.toUpperCase();switch(H){case"BETWEEN":var G=E.value.map(function(J){var K=J.split("/");return' ( "'+I+"\" >= '"+K[0]+"' AND \""+I+"\" <= '"+K[1]+"' ) "});B.push("("+G.join("OR")+")");break;case"=":B.push('( "'+I+"\" = '"+E.value+"' )");break;case"ANY":var F=E.value.map(function(J){return" '"+J+"' "}).join(",");B.push('( "'+I+'" IN ('+F+") )");break;default:console.warn("QGIS filter ",H,"not supported")}break;default:C.record.data.dimensions.dimensions.some(function(K){if(E.name&&K.name&&K.name.toUpperCase()==E.name.toUpperCase()){var J=E.name.toUpperCase();J=((J!=="TIME")?"DIM_":"")+J;w[J]=E.value;return true}})}}catch(D){console.error("Could not add dimension filter to layer.",C.name,C,E)}});if(A==="qgisserver"){if(B.length>0){w.FILTER=C.params.LAYERS+":( "+B.join(" AND ")+" )"}else{w.FILTER=null}}C.mergeNewParams(w);C.record.dataviewFilter=g.buildDataFilterFromWmsDimFilter(o,C);var z=g.getThemeUuid(C.record);if(b.indexOf(z)==-1){Client.AppLogic.dispatchEvent("dataviewFilterUpdate",{dataviewFilter:C.record.dataviewFilter,theme_uuid:z});b.push(z)}});if(!h){Client.AppLogic.dispatchEvent("activateThemes",{themes:b,append:true})}},removeWMSDimensionFilterByUuid:function(b,h){var g=this,o=g.getLayersByUuid(b);g.removeWMSDimensionFilter(o,h)},removeWMSDimensionFilter:function(h,g){var b=this;Ext.each(h,function(o){o.record.isFiltered=false;Ext.each(g,function(q){var w=q.name.toUpperCase();w=((w!=="TIME")?"DIM_":"")+w;delete o.params[w];if(o._ghost_layer&&o._ghost_layer.params){delete o._ghost_layer.params[w]}delete o.record.dataviewFilter})})},getThemeUuid:function(g){var b;if(g.data&&g.data.config&&g.data.config.configs){var h=Adaptive.utils.Config.getThemeData(g);b=h&&h.theme_uuid}return b},getLayersByUuid:function(b){var g=this,h=[];Ext.each(g.map.wmsLayers,function(q){var o=q.record;if(o){if(g.getThemeUuid(o)==b){h.push(q)}}});return h},buildDataFilterFromWmsDimFilter:function(o,b){var g=this;var h=[];if(o.length<1){return null}Ext.each(o,function(w){try{b.record.data.dimensions.dimensions.some(function(z){if(w.name&&z.n
1ame&&z.name.toUpperCase()==w.name.toUpperCase()){h.push({name:w.columnName,value:w.value,comparisonOperator:(w.filterOptions&&w.filterOptions.comparisonOperator)?w.filterOptions.comparisonOperator:"ANY",netType:(w.filterOptions&&w.filterOptions.netType)?w.filterOptions.netType:"string[]",logicalOperator:(w.filterOptions&&w.filterOptions.logicalOperator)?w.filterOptions.logicalOperator:"AND"})}})}catch(q){console.error("Could not build data filter for layer",b.name,w)}});return{filterColumns:h}}});Ext.define("Client.module.tool.layerDimension.Layer",{mixins:[Ext.util.Observable,Adaptive.form.mixins.Generator,Adaptive.data.proxy.Crud,Client.mixins.WMSDimensionFilter],config:{layerName:null,theme_uuids:[],theme_ids:[],uuidNames:[],theme_uuids_visible:[],dimensions:[],control:null,dimension_group:null},constructor:function(b){var g=this;g.mixins["Ext.util.Observable"].constructor.call(g,b);Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.lang.Layer")},buildGui:function(A){var w=this,g=[],q=[],z=false,b={layout:{type:"vbox",align:"stretch"},hidden:false,collapsible:false,collapsed:false,width:false,title:""},o=w.dimensions.filter(function(B){return !B.hidden});if(o&&o.length>0){if(!A){Ext.merge(b,{title:w.dimension_group||w.layerName,disableAutoShow:true,collapsible:true,hidden:true})}Ext.each(o,function(I){if((I.name)&&(I.extent)){var D,G=w.getColumn(I),C=(G&&G.data_type)?GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",G.data_type):null,B=w.getRangeObject(I.extent),E=C=="boolean",H=E?false:!I.single_select,F=null;I.isNumber=(C=="integer"||C=="dictionary"||C=="foreign_key");if(C&&I.dict_uuid){D=w.buildDictionaryStore(I,I.isNumber,A,B)}else{if(I.auto_update_extent){D=w.buildUniqueValueStore(I,I.isNumber);F=I.item}else{if(E){D=w.buildBooleanDropdownStore(I)}else{D=w.buildDropdownStore(I.extent,(I.isNumber&&!B.isRange),(I.isNumber&&B.isRange))}}}if(I["default"]){z=!I.hide_default_button;I.defaultSelection=w.splitValues(I["default"],I.isNumber&&!B.isRange)}I.filterOptions=w.getFilterOptions(C,!E,B&&B.isNumeric);if((C&&I.dict_uuid)||(B==null||B.isMultiple||!B.isNumeric)){g.push(w.createField(I.name,{dataIndex:I.name+w.theme_uuids[0],xtype:"combo",editable:!A,fieldLabel:(G&&G.name)?G.name:I.name,helpText:w.getHelpText(I.theme_uuids),emptyText:w.lang.getString("emptyText"),value:I.selectedValues||I.defaultSelection,queryMode:"local",store:D,required:I.is_required,multiSelect:H,parentFilter:I.dict_foreign_column?{field:I.dict_foreign_column+w.theme_uuids[0],filterColumn:I.dict_foreign_column}:null,valueField:I.dict_key_column||F||"key",displayField:I.dict_value_column||F||"value",dimensionDefault:I.defaultSelection,listeners:{scope:w,afterrender:function(J){J.setValue(I.selectedValues)},change:function(K,J){I.selectedValues=J;if(J&&!Ext.isArray(J)){I.selectedValues=[J]}if(w.autoOn){w.applyFilter()}}}}))}else{if(B&&B.isNumeric&&!B.isMultiple){I.hasPostfix=true;if(Ext.isArray(I.defaultSelection)){I.defaultSelection=I.defaultSelection[0]}g.push(w.createField(I.name+"_plottedValue",{hasPostfix:true,dimensionDefault:I.defaultSelection,fieldLabel:w.lang.getString("manualPlotRangeLead")+((G&&G.name)?G.name:I.name),helpText:w.getHelpText(I.theme_uuids,B),listeners:{scope:w,afterrender:function(J){J.setValue(I.selectedValues)},change:function(J){I.selectedValues=J.getValue()}}}))}}}});if(z){g.push(w.createFc("dimensionBTNDefaultContainer"+w.theme_uuids[0],false,{},[w.createButton("dimensionBTNDefault_"+w.theme_uuids[0],false,{text:w.lang.getString("btnDefault"),handler:w.defaultFilter,scope:w})]))}if(!w.autoOn){q.push(w.createButton("dimensionBTNApply_"+w.theme_uuids[0],false,{cls:"a3-submit-btn",text:w.lang.getString("btnApply"),handler:w.applyFilter,scope:w}));q.push(w.createButton("dimensionBTNRemove_"+w.theme_uuids[0],false,{text:w.lang.getString("btnRemove"),handler:w.removeFilter,scope:w}))}g.push(w.createFc("dimensionBTNContainer"+w.theme_uuids[0],false,{padding:"10 0 0 0"},q));if(w.isAdmin){g.push(w.createButton("dimensionBTNShare_"+w.theme_uuids[0],false,{text:w.lang.getString("btnShare"),cls:"a3-link-btn",tooltip:w.lang.getString("btnShareTip"),handler:w.shareFilter,scope:w}))}w.control=Ext.widget(w.createSet("dimensionFS_"+w.theme_uuids[0],b,g));if(A){var h={type:"vbox",align:"stretch"};w.form=w.createForm({noScroll:true,padding:0,layout:h,cancelBtnConfig:false,saveBtnConfig:false,items:[w.control]});w.view=Ext.create("Ext.container.Container",{layout:h,items:[w.createTextBox("filterInfo","info"),w.form]});w.processForm();w.updateLabel();w.control.setTitle(w.dimension_group||w.lang.getString("headerText"))}}},getDictLabel:function(h,b){var g=null;
1b.columnMapping.some(function(o){if(o.Key==h){g=o.Value;return true}});return g},getHelpText:function(o,b){var q=this,w="",h="",g="<br/> - ";o.forEach(function(z){q.uuidNames.forEach(function(A){if(z==A.uuid){w+=g+A.name}})});if(b){h=Ext.String.format("<br/>{0}: {1} - {2}",q.lang.getString("legalRangeLead"),b.min,b.max)}return Ext.String.format("{0}: {1}{2}",q.lang.getString("layerNamesLead"),w,h)},addTheme:function(g,z,q,o){var w=this,h=[],b,A;if(!Ext.Array.contains(w.theme_uuids,g)){Ext.Array.push(w.theme_uuids,g);Ext.Array.push(w.theme_ids,o.theme_id);Ext.Array.push(w.uuidNames,{uuid:g,name:q,td:o});z.forEach(function(B){if(!w.isValid(B)){return}B.item=B.item||B.name;b=true;w.dimensions.some(function(C){A=Ext.clone(C.theme_uuids);delete C.theme_uuids;if(Ext.Object.equals(B,C)){C.theme_uuids=Ext.Array.merge(A,[g]);b=false;return true}C.theme_uuids=A});if(b){B.theme_uuids=[g];Ext.Array.push(h,B)}});w.dimensions=w.dimensions.concat(h)}},isValid:function(b){return(b.name&&b.extent&&b.dict_uuid==null)||(b.name&&b.extent&&b.dict_uuid&&b.dict_key_column&&b.dict_value_column)},updateThemeVisibility:function(){var b=this;b.theme_uuids_visible=[];Ext.each(b.map.wmsLayersVisible,function(h){if(h.CLASS_NAME=="OpenLayers.Layer.WMS"&&h.record){var g=b.getThemeUuid(h.record);if(b.theme_uuids.indexOf(g)>-1){Ext.Array.push(b.theme_uuids_visible,g)}}})},getVisibility:function(){var b=this;return(b.theme_uuids_visible.length>0)},getFilterOptions:function(o,h,g){var b={comparisonOperator:null,netType:null,logicalOperator:"AND",isRangeCapable:g};switch(o){case"foreign_key":case"dictionary":case"integer":if(g){b.netType="string[]";b.comparisonOperator="BETWEEN"}else{b.netType=h?"int[]":"int";b.comparisonOperator=h?"ANY":"="}break;case"text":b.netType=h?"string[]":"string";b.comparisonOperator=h?"ANY":"=";break;case"boolean":b.netType="boolean";b.comparisonOperator="=";break;case"date":case"decimal":return null;break;default:return null}return b},getDimThemeData:function(g){var b=this,h;b.uuidNames.some(function(o){if(Ext.Array.contains(g.theme_uuids,o.uuid)){h=o.td;return true}});return h},getColumn:function(h){var g=this,b=null,o=g.getDimThemeData(h);if(o){o.columns.some(function(q){if(q.column_name==h.item){b=q;return true}})}return b},buildDropdownStore:function(o,h,w){var q=this,b=q.splitValues(o,h),g=[];if(!b){return b}b.forEach(function(A){var z=A,A=w?q.formatRangePresentation(A):A;g.push([z,A])});return Ext.create("Ext.data.ArrayStore",{fields:["key","value"],data:g})},buildBooleanDropdownStore:function(){var b=this;return Ext.create("Ext.data.ArrayStore",{fields:["key","value"],data:[["true",b.lang.getString("booleanTrue")],["false",b.lang.getString("booleanFalse")]]})},formatRangePresentation:function(g){var b=g.split("/");if(b.length==2){return(b[0]==b[1])?b[0]:b[0]+"-"+b[1]}else{return g}},getRangeObject:function(h){var o=this,g=o.splitValues(h),b={isRange:false,isNumeric:null,isMultiple:(g)?g.length>1:false,min:null,max:null};if(!g){return b}g.forEach(function(q){var w=o.getRange(q);if(w.length==2){b.isRange=true;var A=w[0],z=w[1];b.isNumeric=(Ext.isNumeric(A)&&Ext.isNumeric(z));if(b.isNumeric){b.min=Ext.isNumeric(b.min)?Ext.Array.min([b.min,Number(A)]):Number(A);b.max=Ext.isNumeric(b.max)?Ext.Array.max([b.max,Number(z)]):Number(z)}}});return b},getRange:function(b){return b.split("/").map(function(g){return g.trim()})},buildUniqueValueStore:function(w,h){var q=this,g=[],o=[w.name],b=Ext.create("Ext.data.Store",{fields:o,proxy:{api:{read:"WebServices/client/DataView.asmx/ReadFiltered"},type:"crud",params:{theme_uuid:w.theme_uuids[0],columns:o,filter:null}}});Adaptive.data.proxy.Crud.setFilter(b,{greedy:true,filterColumns:(w.auto_update_extent)?[]:[{name:w.name,comparisonOperator:"ANY",value:q.splitValues(w.extent,h),netType:h?"int[]":"string[]",logicalOperator:"AND"}],distinctColumns:[{name:w.name}],sortColumns:[{name:w.name,sortDesc:false}]});b.load();return b},copyModel:function(b){b=Ext.isString(b)?Ext.data.StoreManager.lookup(b):b;return Ext.create(b.$className,{model:b.model})},copyRecords:function(b,g){g.add(Ext.Array.map(b.getRange(),function(h){return h.copy()}))},buildDictionaryStore:function(g,C,w,h){var o=this,z=[],b=g.dict_foreign_column?[g.dict_key_column,g.dict_value_column,g.dict_foreign_column]:[g.dict_key_column,g.dict_value_column],q=null,B=JSON.stringify({dict_uuid:g.dict_uuid,dict_key_column:g.dict_key_column,dict_value_column:g.dict_value_column,dict_foreign_column:g.dict_foreign_column,extent:g.extent,isNumber:C}),A=o.dictionaries[B];if(A!==undefined){var q=o.copyModel(A);A.cloneStores.push(q);q.addListener("cloneload",o.updateLabel,o);if(w){o.copyRecords(A,q);q.columnMapping=A.columnMapping}}if(!q){q=Ext.create("Ext.data.Store",{fields:b,proxy:{api:{read:"WebServices/client/DataView.asmx/ReadFiltered"},type:"crud",params:{theme_uuid:g.dict_uuid,columns:b,filter:null}},listeners:{load:o.onStoreLoad,scope:o},cloneStores:[]});Adaptive.data.proxy.Crud.setFilter(q,{greedy:true,filterColumns:g.auto_update_extent?[]:C&&h&&h.isNumeric&&!h.isMultiple?[{name:g.dict_key_column,comparisonOperator:">
1=",value:h.min,netType:"int",logicalOperator:"AND"},{name:g.dict_key_column,comparisonOperator:"<=",value:h.max,netType:"int",logicalOperator:"AND"}]:[{name:g.dict_key_column,comparisonOperator:"ANY",value:o.splitValues(g.extent,C),netType:C?"int[]":"string[]",logicalOperator:"AND"}],sortColumns:[{name:g.dict_value_column,sortDesc:false}]});o.dictionaries[B]=q;q.load({scope:this,callback:function(E,D,F){E.forEach(function(G){var H=G.get(g.dict_value_column);if(typeof H=="string"){G.set(g.dict_value_column,H.trim())}})}})}return q},onStoreLoad:function(h,g,z,o){var q=this,b=z&&h.proxy.reader.jsonData.d;if(z){var w=Adaptive.utils.Config.getConfig(b.data,"column_mapping");h.columnMapping=w;if(h.columnMapping){q.updateLabel()}h.cloneStores.forEach(function(A){q.copyRecords(h,A);A.columnMapping=w;A.fireEvent("cloneload",A)})}},getDimensionComponents:function(){var b=this;return Ext.Array.merge(b.control.query("combo"),b.control.query("[hasPostfix=true]"))},updateLabel:function(){var b=this;b.getDimensionComponents().forEach(function(o){var g=o.store;if(g&&g.columnMapping){var h=b.getDictLabel(o.displayField,g);o.fieldLabel=h||o.fieldLabel;if(o.rendered){o.labelEl.dom.childNodes["0"].data=h||o.fieldLabel}}})},applyFilter:function(){var b=this;b.fireEvent("updateFilter",{layer:b,type:"applyfilter"})},removeFilter:function(){var b=this;b.dimensions&&b.dimensions.forEach(function(g){g.selectedValues=[]});b.control&&b.control.query("combo").forEach(function(g){g.clearValue()});b.control&&b.control.query("[hasPostfix=true]").forEach(function(g){g.setValue()});b.fireEvent("updateFilter",{layer:b,type:"applyfilter"})},defaultFilter:function(){var b=this;b.getDimensionComponents().forEach(function(g){g.setValue(g.dimensionDefault)});b.dimensions.forEach(function(g){g.selectedValues=g.defaultSelection||[]});b.fireEvent("updateFilter",{layer:b,type:"applyfilter"})},shareFilter:function(){var b=this;b.fireEvent("updateFilter",{layer:b,type:"sharefilter"})},splitValues:function(g,b){if(b){return(g)?g.split(",").map(Number):g}return(g)?g.split(",").map(function(h){return h.trim()}):g}});Ext.define("Client.module.tool.layerDimension.lang.WmsDimension",{strings:{wmsFilterSet:{en:"Data filtering",nb:"Filtrering av data"},wmsFilterInfo:{en:"Filter or add extra layer content based on the value selected in the dropdown(s) below.",nb:"Filtrer bort eller legg til ekstra innhold i temalaget ved å velge en eller flere verdier i nedtrekksmenyen(e) under."},wmsFilterCombo:{en:"Layer name",nb:"Lagnavn"},wmsFilterEmptyText:{en:"None selected",nb:"Ingen valgte"}}});Ext.define("Client.module.tool.layerDimension.WmsDimension",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.lang.WmsDimension")},buildGui:function(b){var o=this,w=b.get("layers").split(","),g=JSON.parse(Adaptive.utils.Config.getConfig(b,"layers_filterable_data")),z=b.get("olLayer"),q=z.params.LAYERS.split(","),h=Adaptive.utils.Config.getConfig(b,"additional_layers"),h=(h?h.split(","):[]);if(g!=null){filterable_layers=g.filter(function(A){return Ext.Array.contains(w,A.name)||Ext.Array.contains(h,A.name)})}else{filterable_layers=null}return o.createSet("wmsFilterSet",{collapsible:false,collapsed:false},[o.createTextBox("wmsFilterInfo","info"),o.createFilterCombo("wmsFilterCombo",filterable_layers,q,b)])},createFilterCombo:function(g,q,o,b){var h=this;return Ext.widget(h.createField(g,{xtype:"combo",editable:false,addClearTrigger:false,multiSelect:!h.isSingleSelect(b),emptyText:h.lang.getString("wmsFilterEmptyText"),value:o,displayField:"title",valueField:"name",store:Ext.create("Ext.data.Store",{fields:["name","title"],data:q}),listeners:{select:function(z,w){h.onFilterSelect(b,w)},change:function(A,z,w){if(z.length==0){A.select(w)}}}}))},onFilterSelect:function(b,g){var h=this,q=b.get("layers").split(","),o=g.map(function(w){return w.get("name")});b.isFiltered=Ext.Array.difference(q,o).length>0;h.reportEvent("activateTheme",{checked:true,category:b.get("catUuid"),layer:b.get("uuid")});h.reportEvent("mergeNewParams",{params:{layers:o.join()},category:b.get("catUuid"),layer:b.get("uuid")})},isWmsDimensionLayer:function(b){return Adaptive.utils.Config.getBooleanConfig(b,"layers_filterable")},isSingleSelect:function(b){return Adaptive.utils.Config.getBooleanConfig(b,"layers_filterable_single")}});Ext.define("Client.module.tool.layerDimension.LayerDimension",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Client.mixins.WMSDimensionFilter],internal_name:"av_layer_dimension",btnCls:"a3-av-layer-dimension",dimensionLayers:[],dictionaries:[],isAdmin:false,activeLayers:[],formItems:[],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.lang.LayerDimension");g.filterModule=Ext.create("Client.module.tool.layerDimension.filter.Standard");g.parentController.registerModule(g.filterModule);g.wmsDimension=Ext.create("Client.module.tool.layerDimension.WmsDimension");g.parentController.registerModule(g.wmsDimension);g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText");g.iconHtml=Adaptive.ux.Icons.filter},buildGui:function(){var h=this,o=h.lang.getString("infoText"),g=h.map.wmsLayers,b={type:"vbox",align:"stretch"};o=o.replace("{0}",'<span style="display:inline-block; width: 14px;">'+Adaptive.ux.Icons.filter+"</span>");h.form=h.createForm({noScroll:true,layout:b,cancelBtnConfig:false,saveBtnConfig:false,items:[h.createTextBox("infoText","info",{html:o})]});h.view=Ext.create("Ext.panel.Panel",{cls:"a3-modules-body",autoScroll:true,layout:b,items:[h.form]});Ext.each(g,function(q){h.setUpLayerControls({layer:q})});Ext.each(h.dimensionLayers,function(q){q.buildGui();h.form.add(q.control)});h.processForm()},activate:function(){var b=this;b.active=true},deactivate:function(){var b=this;b.filterModule.deactivate();b.active=false},_onLayerManagerDeactivate:function(){if(this.hideModule){this.deactivate()}},afterMapReset:function(g){var b=this;if(!b.view){b.setUpControls();b.setUrlParams();if(!b.hideModule){b.buildGui()}b.moduleReady=true}},beforeMapReset:function(g){var b=this;b.moduleReady=false;b.view=null;b.dimensionLayers=[]},isDimensionLayer:function(b){var g=b.data.dimensions&&b.data.dimensions.dimensions;return g&&Adaptive.utils.Config.getBooleanConfig(b.data,"use_dimension",false)},getDimensionGroup:function(b){return Adaptive.utils.Config.getConfig(b.data,"dimension_group")},setLayerPreventMerge:function(b){var g=this,b=g.map.getLayer(b.id);if(b){b.PREVENT_MERGE=true}},_onLayersVisibilityUpdated:function(){var b=this;Ext.each(b.dimensionLayers,function(g){g.updateThemeVisibility();if(b.view){g.control&&g.control.setVisible(g.getVisibility())}})},_onGetLayerManagerFilter:function(q){var o=this,h=q.data,b,w,g;if(h.childNodes.length==0){b=h.get("recordData"),w=b&&Adaptive.utils.Config.getThemeData(b),dimensions=b&&b.data.dimensions&&b.data.dimensions.dimensions,noHiddenDimensions=dimensions&&dimensions.filter(function(z){return !z.hidden}).length>0,isWmsDimensionLayer=o.wmsDimension.isWmsDimensionLayer(b),g=(Adaptive.utils.Config.getBooleanConfig(b,"use_dimension",false)&&noHiddenDimensions)||o.filterModule.isFilterLayer(b)||isWmsDimensionLayer;if(g){q.callback({className:((b.isFiltered||isWmsDimensionLayer)?"a3-dimension-filter-active":"a3-dimension-filter"),icon:Adaptive.ux.Icons.filter,qtip:((b.isFiltered||isWmsDimensionLayer)?o.lang.getString("filter_active"):o.lang.getString("filter_inactive")),callback:Ext.bind(o._showLayerManagerFilter,o)})}}return null},_showLayerManagerFilter:function(b,h){var g=this;if(!g.hideModule){g.switchTool()}else{h()}},_onShowCustomFilter:function(z){var o=this,b=z.data.theme_data,g=z.data.record,B=g.get("recordData"),w,A,h;if(o.hideModule){w=o.getLayerByUuid(b.theme_uuid);dimensions=w&&w.dimensions,noHiddenDimensions=dimensions&&dimensions.filter(function(C){return !C.hidden}).length>0,A=o.filterModule.isFilterLayer(B);if(noHiddenDimensions&&A){w.buildGui(true,true);h=o.filterModule.buildGui(B,true);var q=Ext.create("Ext.tab.Panel",{items:[{title:o.lang.getString("standardFilter"),items:[w.view],advancedView:false},{title:o.lang.getString("advancedFilter"),items:[h],advancedView:true}],listeners:{render:function(){if(h.isFiltered()){q.setActiveTab(1)}},tabchange:function(D,C){if(C.advancedView){w.removeFilter()}else{h.removeAllFilters()}}}});z.data.extrafilter=q}else{if(noHiddenDimensions){w.buildGui(true);z.data.extrafilter=w.view}else{if(A){z.data.extrafilter=o.filterModule.buildGui(B)}else{if(o.wmsDimension.isWmsDimensionLayer(B)){z.data.extrafilter=o.wmsDimension.buildGui(B)}}}}}},switchTool:function(){var b=this;if(b.active){return}b.active=true;b.reportEvent("switchTools",b)},buildFilterObject:function(o,b){var h=this,g={removeFilter:[],addFilter:[]};Ext.each(o.dimensions,function(A){if(Ext.Array.contains(A.theme_uuids,b)){var q=A.name.toUpperCase(),z=A.selectedValues;function B(D){var G=D.replace("-","/").split("/"),F=A.extent.split("/"),E=Number(F[0]),C=Number(F[1]);if(G.length===1){G.push(G[0])}return Math.max(E,Number(G[0]))+"/"+Math.min(C,Number(G[1]))}if(z&&A.hasPostfix){var w=z;if(!Ext.isArray(z)){w=z.split(",")}z=w.map(function(C){return B(C.trim())+""})}if(z&&z.length>0&&Ext.emptyString!=z[0]){if(A.type==="Boolean"){z=z[0]}else{z.forEach(function(E,D,C){if(typeof C[D]=="string"&&A.isNumber){C[D]=C[D].replace("-","/")}})}g.addFilter.push({name:q,columnName:A.item||q,value:z,filterOptions:A.filterOptions})}else{g.removeFilter.push({name:q})}}});return g},mergeSelectedLayerDimensions:function(h,g){var b=this;Ext.each(h.theme_uuids,function(o){filter=b.buildFilterObject(h,o);b.removeWMSDimensionFilterByUuid(o,filter.removeFilter);b.addWMSDimensionFilterByUuid(o,filter.addFilter,g)})},createAndAddDimensionControl:function(b){var h=this;if(b){var g=Ext.create("Client.module.tool.layerDimension.Layer",{layerName:b.name,theme_uuids:[],theme_ids:[],uuidNames:[],dimensions:[],dimension_group:h.getDimensionGroup(b.record),isAdmin:h.isAdmin,autoOn:h.autoOn,map:h.map,dictionaries:h.dictionaries});g.mon(g,"updateFilter",h.updateFilter,h);h.dimensionLayers.push(g)}return g}
1,setUpControls:function(){var b=this;Ext.each(b.map.wmsLayers,function(g){b.setUpLayerControls({layer:g})})},setUpLayerControls:function(B,z){var w=this,o=B.layer,h=(o.record)&&w.getThemeUuid(o.record),q=(o.record)&&w.getDimensionGroup(o.record),g=o.record&&Adaptive.utils.Config.getThemeData(o.record);if(o.ghost_layer){return}if(o.record&&w.isDimensionLayer(o.record)&&h&&g){w.setLayerPreventMerge(o);var A=w.getDimensionLayer(o.record);if(!A){A=w.createAndAddDimensionControl(o)}var b=o.record.data.dimensions&&o.record.data.dimensions.dimensions;A.addTheme(h,b,o.name,g)}},updateFilter:function(b){var h=this,g=!h.hideModule;if(b.type=="applyfilter"){h.mergeSelectedLayerDimensions(b.layer,g)}else{if(b.type=="sharefilter"){h.showUrlFilter(b.layer)}}},getLayerByUuid:function(b){var g=this,h;g.dimensionLayers.some(function(o){if(Ext.Array.contains(o.theme_uuids,b)){h=o;return true}});return h},getLayerByDimensionGroup:function(b){var g=this,h;if(!b){return false}g.dimensionLayers.some(function(o){if(o.dimension_group===b){h=o;return true}});return h},getDimensionLayer:function(b){var g=this,h=g.getLayerByDimensionGroup(g.getDimensionGroup(b));if(!h){h=g.getLayerByUuid(g.getThemeUuid(b))}return h},getLayerById:function(b){var g=this,h;g.dimensionLayers.some(function(o){if(Ext.Array.contains(o.theme_ids,b)){h=o;return true}});return h},setUrlParams:function(){var g=this,h=GeoMind.utils.Url.getUrlParam("av_filter");if(g.sharedDimensionFilter){g.setUrlDimensions(g.sharedDimensionFilter)}if(h){var b=Ext.JSON.decode(h,true);if(b){g.setUrlDimensions(b)}else{console.warn("could not parse filter: "+h)}}},setUrlDimensions:function(b){var g=this,h;Ext.each(b,function(o){h=g.getLayerById(o.t);if(h){Ext.each(h.dimensions,function(q){Ext.each(o.f,function(w){if(q.name==w.k){q.selectedValues=w.v}})});g.mergeSelectedLayerDimensions(h)}})},showUrlFilter:function(o){var g=this,b=[],h;b=g.buildUrlFilter(o,b);h=__pageurl__+"?av_filter="+encodeURIComponent(Ext.JSON.encode(b));Ext.create("Ext.window.Window",{title:g.lang.getString("shareWindowTitle"),width:400,modal:true,layout:{type:"vbox",align:"stretch",pack:"start",padding:5},items:[{xtype:"component",cls:"a3-info a3-text",html:g.lang.getString("shareWindowInfo")},{xtype:"textfield",fieldLabel:g.lang.getString("encodedLabel"),labelAlign:"top",value:h,listeners:{afterrender:function(){Ext.defer(function(){this.focus(true)},10,this)}}},{xtype:"textfield",fieldLabel:g.lang.getString("noEncodedLabel"),labelAlign:"top",value:JSON.stringify(b)}]}).show();return},buildUrlFilter:function(h,b){var g=this;Ext.each(h.uuidNames,function(o){if(Ext.Array.contains(h.theme_uuids_visible,o.uuid)){var q={t:o.td.theme_id,f:[]};Ext.each(h.dimensions,function(A){if(Ext.Array.contains(A.theme_uuids,o.uuid)){var w=A.name,z=A.selectedValues;if(z&&z.length>0&&Ext.emptyString!=z[0]){q.f.push({k:w,v:z})}}});b.push(q)}});return b},_onSetDimensionFilter:function(h){var g=this,b=h.data.themes;if(!Ext.isArray(b)){b=[b]}function o(w,z){var A;map.loopLayersAndExecute(w,function(B){var C=B.record&&Adaptive.utils.Config.getThemeData(B.record);Ext.each(C.columns,function(D){if(z==D.column_name){A=D.data_type;return false}})});return GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",A)}function q(w,D,B){var C=new Client.module.tool.layerDimension.Layer();var A=Ext.isArray(B)&&D.type!=="Boolean";var z=C.getRangeObject(D.extent);var E=o(w,D.item);D.filterOptions=D.filterOptions||{};D.filterOptions=C.getFilterOptions(E,A,((Ext.isArray(B)&&B.length>1)?(z&&z.isNumeric):false))}b.forEach(function(w){var z=g.getLayerByUuid(w);if(z){Ext.each(z.dimensions,function(A){Ext.iterate(h.data.dimension,function(B,C){if(A.name==B){if(!Ext.isArray(C)){C=[C]}q(w,A,C);A.selectedValues=C}})});g.mergeSelectedLayerDimensions(z,true)}})},_onGetLayerDimensionFilter:function(h){var g=this,b=h.data.theme_uuid,q=g.getLayerByUuid(b),o=q&&g.buildFilterObject(q,b);if(o){h.data.filters=o.addFilter}},setPermission:function(b){var g=this;g.isAdmin=(b=="admin")},getSharedFilter:function(){var b=this,g=[];Ext.each(b.dimensionLayers,function(h){if(h.getVisibility()){g=b.buildUrlFilter(h,g)}});return g},_onGetStorableData:function(g){var b=this;g.data.dimensionFilter=b.getSharedFilter()},_onRestoreStorableData:function(g){var b=this;if(g.data.dimensionFilter){b.sharedDimensionFilter=g.data.dimensionFilter;if(b.moduleReady){b.setUrlDimensions(b.sharedDimensionFilter)}}}});Ext.define("Client.module.map.lang.LoadingIndicator",{strings:{loadingTiles_part1:{en:"Loading ",nb:"Laster "},loadingTiles_part2:{en:" layers...",nb:" tema..."}},errCodes:{}});Ext.define("Client.module.map.LoadingIndicator",{extend:Client.module.Generic,mapContainer:null,lang:null,internal_name:"av_loading_indicator",loadingCount:0,contructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b])},buildGui:function(){var b=this;
1b.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.lang.LoadingIndicator");b.loadingPanel=Ext.create("Ext.container.Container",{cls:"a3-loading-indicator",width:170,tpl:'<span class="a3-icon icon-loading"></span>'+b.lang.getString("loadingTiles_part1")+" {count} "+b.lang.getString("loadingTiles_part2")});b.loadingPanel.hide()},beforeMapReset:function(){var b=this;if(b.loadingPanel){b.mapContainer.remove(b.loadingPanel);b.map.events.unregister("preaddlayer",b,b.addLayer);b.map.events.unregister("preremovelayer",b.removeLayer)}},afterMapReset:function(){var b=this;b.loadingCount=0;b.buildGui();b.mapContainer.add(b.loadingPanel);b.map.events.register("preaddlayer",b,b.addLayer);b.map.events.register("preremovelayer",b.removeLayer)},addLayer:function(b){var g=this;if(b.layer.CLASS_NAME=="OpenLayers.Layer.WMS"){g.addLoadingLayerEvents(b.layer)}},removeLayer:function(b){var g=this;if(b.layer.CLASS_NAME=="OpenLayers.Layer.WMS"){g.removeLoadingLayerEvents(b.layer)}},addLoadingLayerEvents:function(b){var g=this;b.events.register("loadstart",g,g.layerLoadStart);b.events.register("loadend",g,g.layerLoadEnd)},removeLoadingLayerEvents:function(b){var g=this;b.events.unregister("loadstart",g,g.layerLoadStart);b.events.unregister("loadend",g,g.layerLoadEnd)},layerLoadStart:function(b){var g=this;g.loadingCount++;if(!g.showTimer&&g.loadingPanel.isHidden()){g.showTimer=setTimeout(function(){delete g.showTimer;if(g.loadingCount){g.loadingPanel.show();g.loadingPanel.update({count:g.loadingCount})}},500)}},layerLoadEnd:function(b){var g=this;g.loadingCount--;g.loadingPanel.update({count:g.loadingCount});if(g.loadingCount==0){g.loadingPanel.hide()}}});Ext.define("Client.module.map.compassRose.lang.CompassRose",{strings:{compassRose:{en:"Compass rose",nb:"Kompass rose"},N:{en:"N",nb:"N"},S:{en:"S",nb:"S"},E:{en:"E",nb:"Ã"},W:{en:"W",nb:"V"},useTrueNorth:{en:"Use true north",nb:"Bruk sann nord"},useGridNorth:{en:"Use north up",nb:"Bruk nord opp"}}});Ext.define("Client.module.map.compassRose.ux.Renderer",{extend:Ext.util.Observable,constructor:function(q){Ext.apply(this,q);var H=this,o=q.container,D,b=150;H.width=o.getWidth();H.height=o.getHeight();if(H.width<1500){b=H.width/10;if(b<75){b=75}}H.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.compassRose.lang.CompassRose");H.svg=d3.select("#"+o.id).append("svg").attr("width",H.width).attr("height",H.height);var g=H.map.getCenter().transform(H.map.getProjection(),"EPSG:4326");var G=new OpenLayers.LonLat(g.lon,g.lat+0.1).transform("EPSG:4326",H.map.getProjection());g=H.map.getCenter();var A=G.lon-g.lon,z=G.lat-g.lat,B;if(A==0){B=0}else{B=Math.atan(z/A)*180/Math.PI;if(B<0){B=B+180}B=90-B}H.g=H.svg.append("g");var h=H.g.append("circle").attr("class","compass-rose-circle").attr("r",b);var I=H.g.append("g").attr("class","compass-rose-main-ticks");I.append("line").attr("x1",-b-20).attr("y1",0).attr("x2",b+20).attr("y2",0);I.append("line").attr("x1",0).attr("y1",-b-20).attr("x2",0).attr("y2",b+20);var E=H.g.append("g").attr("class","compass-rose-main-direction-text");H.appendDirectionText(E,H.lang.getString("N"),0,0,-b-30);H.appendDirectionText(E,H.lang.getString("E"),0,b+30,0);H.appendDirectionText(E,H.lang.getString("S"),0,0,b+30);H.appendDirectionText(E,H.lang.getString("W"),0,-b-30,0);var F=H.g.append("g").attr("class","compass-rose-big-ticks");for(var C=45;C<360;C+=90){F.append("line").attr("x1",-b+20).attr("y1",0).attr("x2",20).attr("y2",0).attr("transform","rotate("+C+") translate("+b+","+0+")")}var J=H.g.append("g").attr("class","compass-rose-medium-ticks");for(var C=22.5;C<360;C+=45){J.append("line").attr("x1",-20).attr("y1",0).attr("x2",15).attr("y2",0).attr("transform","rotate("+C+") translate("+b+","+0+")")}var w=H.g.append("g").attr("class","compass-rose-small-ticks");for(var C=5;C<360;C+=5){if(C%45!=0){w.append("line").attr("x1",-10).attr("y1",0).attr("x2",10).attr("y2",0).attr("transform","rotate("+C+") translate("+b+","+0+")")}}if(H.useTrueNorth){H.rotateCompass();H.addEvents()}else{H.g.attr("transform","translate("+H.width/2+" "+H.height/2+")")}},appendDirectionText:function(g,o,h,b,q){g.append("text").text(o).attr("alignment-baseline","middle").attr("text-anchor","middle").attr("transform","rotate("+h+") translate("+b+","+q+")")},addEvents:function(){var b=this;b.map.events.register("move",b,b.onMapMove)},removeEvents:function(){var b=this;b.map.events.unregister("move",b,b.onMapMove)},onMapMove:function(){var b=this;b.rotateCompass()},rotateCompass:function(){var o=this,b=o.map.getCenter(),g=o.map.getCenter().transform(o.map.getProjection(),"EPSG:4326"),q=ne
1w OpenLayers.LonLat(g.lon,g.lat+0.5).transform("EPSG:4326",o.map.getProjection());var h=q.lon-b.lon,w=q.lat-b.lat,z=h!=0?Math.atan(w/h)*180/Math.PI:0;if(z<0){z=z+180}z=90-z;o.g.attr("transform","translate("+o.width/2+" "+o.height/2+") rotate("+z+")")},destroy:function(){var b=this;b.removeEvents()}});Ext.define("Client.module.map.compassRose.CompassRose",{extend:Client.module.Generic,internal_name:"av_compass_rose",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.compassRose.lang.CompassRose");g.useTrueNorth=true},afterMapContainerRender:function(){var g=this,b=g.mapContainer.down("#statusbar");if(b){b.insert(0,Ext.widget({xtype:"splitbutton",cls:"a3-compass-rose-btn",enableToggle:true,tooltip:g.lang.getString("compassRose"),menu:{items:[{text:g.lang.getString("useTrueNorth"),checked:g.useTrueNorth,group:"north",value:true,handler:function(h){g.northCheckHandler(h)}},{text:g.lang.getString("useGridNorth"),value:false,checked:!g.useTrueNorth,group:"north",handler:function(h){g.northCheckHandler(h)}}]},listeners:{toggle:function(h,o){g.toggleCompassRose(o)},scope:g}}))}},northCheckHandler:function(g){var b=this;b.useTrueNorth=g.value;if(b.toggleState){b.compassBox.destroy();b.mapContainer.add(b.createCompassBox())}},toggleCompassRose:function(g){var b=this;b.toggleState=g;if(g){b.mapContainer.add(b.createCompassBox())}else{b.compassBox.destroy()}},createCompassBox:function(){var b=this;return b.compassBox=Ext.create("Ext.Component",{cls:"a3-compass-rose-box",listeners:{boxready:function(){Ext.create("Client.module.map.compassRose.ux.Renderer",{container:this,map:b.map,useTrueNorth:b.useTrueNorth})}}})}});Ext.define("Client.module.map.grid.Grid",{extend:Client.module.Generic,requiers:["GeoMind.lang.lang","Client.module.map.grid.lang.Grid"],internal_name:"av_map_grid",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.grid.lang.Grid")},afterMapContainerRender:function(){var g=this,b=g.mapContainer.down("#statusbar");if(b){b.insert(0,Ext.widget({xtype:"button",cls:"a3-map-grid-btn",enableToggle:true,tooltip:g.lang.getString("mapGrid"),listeners:{toggle:function(h,o){g.toggleMapGrid(o)},scope:g}}))}},toggleMapGrid:function(g){var b=this;b.reportEvent("toggleMapGrid",g);if(g){b.createMapGrid();return}b.mapGrid.destroy()},createMapGrid:function(){var g=this;
1var b=OpenLayers.Class(OpenLayers.Control.Graticule,{activate:function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){this.map.addLayer(this.gratLayer);this.map.events.register("move",this,this.update);this.update();return true}else{return false}},deactivate:function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.map.events.unregister("move",this,this.update);this.map.removeLayer(this.gratLayer);return true}else{return false}}});g.mapGrid=new OpenLayers.Control.Graticule({targetSize:400,labeled:true,lineSymbolizer:{strokeColor:"#202020",strokeWidth:1,strokeOpacity:0.3},labelSymbolizer:{fontColor:"#202020",labelOutlineColor:"#fff",labelOutlineWidth:2}});g.map.addControl(g.mapGrid)}});Ext.define("Client.module.map.notificationCenter.NotificationCenter",{extend:Client.module.Generic,internal_name:"av_notification_center",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.buildGui()},buildGui:function(){var b=this;b.view=Ext.create("Ext.container.Container",{cls:"a3-notification-panel",height:400,items:[]})},updatePosition:function(){var b=this,g=b.mapContainer.down("#searchContainer");if(!b.view.getEl()){return}if(g.isHidden()){b.view.alignTo(b.mapContainer,"tl",[22,9])}else{b.view.alignTo(g,"bl",[0,9])}},afterMapContainerRender:function(g){var b=this;b.mapContainer.add(b.view);b.mapContainer.on("resize",b.updatePosition,b)},_onAddNotification:function(g){var b=this;b.view.add(g.data.item)}});Ext.define("Client.module.map.utils.AppReset",{extend:Client.module.Generic,internal_name:"av_app_reset",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.utils.lang.AppReset");g.buildGui()},buildGui:function(){var b=this;b.resetBtn=Ext.create("Ext.button.Button",{cls:"a3-data-reset-btn a3-map-btn",itemId:"appResetBtn",tooltip:b.lang.getString("tooltip"),tooltipType:"title"});b.resetBtn.on("click",b.onResetBtnClick,b)},onResetBtnClick:function(){var b=this;b.reportEvent("beforeResetApp");b.reportEvent("resetApp")},afterMapContainerRender:function(h){var g=this,b=g.mapContainer.down("#mapBtnContainer");b.add(g.resetBtn)}});Ext.define("Client.module.map.dataView.batch.BatchBase",{extend:Client.module.Generic,serviceUrl:"WebServices/client/DataView.asmx/",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b])},buildGui:function(){var b=this;b.view=Ext.create("Ext.window.Window",{closeAction:"destroy",constrain:true,width:500,minHeight:200,maxHeight:500,layout:"fit",title:b.lang.getString("batchTitle"),items:[]})},onCancel:function(){var b=this;b.view.hide();b.view.destroy()},createIdsStore:function(){var b=this;b.modelClassName=Client.data.model.ThemeRecord.getModel(b.theme_data);b.idStore=Ext.create("Ext.data.Store",{model:b.modelClassName,autoLoad:false,pageSize:1000,listeners:{scope:b,beforeload:b.onStoreBeforeLoad,load:b.onStoreLoad},proxy:{type:"ajaxread",url:b.serviceUrl+"ReadAny",wrapperObject:"request"}})},loadIds:function(g,b,o){var h=this;if(b&&b.length>0){g={filterColumns:[{name:"id",value:b,comparisonOperator:"ANY",netType:"int[]"}]}}Adaptive.data.proxy.AjaxRead.setFilter(h.idStore,g);h.idStore.load({params:{columns:["id"],theme_uuid:h.theme_data.theme_uuid,srid:h.map.getProjectionObject().proj.srsProjNumber,limit:0,excludeGeometry:true,filter_id:o}})},showDataViewLoadMask:function(b){this.reportEvent("showDataViewLoadMask",{msg:b})},hideDataViewLoadMask:function(){this.reportEvent("hideDataViewLoadMask")},onStoreBeforeLoad:function(){var b=this;b.showDataViewLoadMask(b.lang.getString("loading"))},onStoreLoad:function(g,b){var h=this,o=0;h.hideDataViewLoadMask();b.forEach(function(q){if(!q.get("_editable")){o++}});if(o>0||b.length===0){h.showNoRecordsToBatchOperate(b.length,o);return}h.buildGui();h.createRecordsToEditBox(b.length)}});Ext.define("Client.module.map.dataView.batch.lang.BatchEdit",{strings:{column:{en:"Choose column",nb:"Velg kolonne"},btnSave:{en:"Save",nb:"Lagre"},btnCancel:{en:"Cancel",nb:"Avbryt"},saving:{en:"Saving...",nb:"Lagrer..."},saveSuccess:{en:"Save success",nb:"Lagring vellykket"},saveFailed:{en:"Saving failed.",nb:"Lagring feilet."},recordsToChange:{en:"<p>This function allows you to update <b>{0}</b> rows with a desired value Choose the column you want to update below, then set det desired value.</p> ",nb:"<p>Denne funksjonen lar deg oppdatere <b>{0}</b> valgte rader med angitt verdi.<br>Du velger under kolonnen du ønsker å oppdatere og angir deretter ønsket verdi.</p> "}
1,recordToChange:{en:"<p>This function allows you to update <b>one</b> row with a desired value. Choose the column you want to update below then set the desired value.</p> ",nb:"<p>Denne funksjonen lar deg oppdatere <b>en</b> valgt rad med angitt verdi.<br>Du velger under kolonnen du ønsker å oppdatere og angir deretter ønsket verdi.</p> "},batchTitle:{en:"Edit multiple rows",nb:"Rediger flere rader"},noRecordsToEdit:{en:"<p>Editing multiple rows is not allowed. You lack permissions to edit the selected rows.</p>",nb:"<p>Redigering av flere rader er ikke tilgjengelig fordi du mangler rettigheter til å redigere de valgte radene.</p>"},recordsNotAvailableForEditing:{en:"<p>Editing multiple rows is not allowed. You lack permissions to edit {0} of the selected rows.</p>",nb:"<p>Redigering av flere rader er ikke tilgjengelig. Du mangler rettigheter for å redigere {0} av de valgte radene.</p>"},loading:{en:"Loading...",nb:"Laster..."},batchEditNotAvailableTitle:{en:"Not allowed",nb:"Ikke tilgjengelig "},batch_edit_disclaimer:{en:"<p>Note: When pushing save, the specified changes will be applied to the selected {0} {1}. This action cannot be undone!</p>",nb:"<p>Merk: Når du klikker på lagre vil de oppgitte endringene iverksettes for de valgte {0} {1}. Dette kan ikke angres!</p>"},row:{en:"row",nb:"rad"},rows:{en:"rows",nb:"rader"}}});Ext.define("Adaptive.utils.Form",{mixins:[Adaptive.form.mixins.Generator,Adaptive.mixins.ColumnLang],generateStore:function(g){var h=this,q=Adaptive.utils.Config.getConfig(g,"list_separator")||",",b=g.raw_dictionary.split(q),o=b.map(function(w){return{key:w.trim(),value:w.trim()}});return Ext.create("Ext.data.Store",{fields:["key","value"],data:o})},generateDictStore:function(o){var w=this,g=Adaptive.utils.Config.getConfig(o,"dict_key_column"),B=w.getValueColumn(o),b=Adaptive.utils.Config.getConfig(o,"dict_data_source"),A=Adaptive.utils.Config.getConfig(o,"dict_parent_keys_column"),h=Adaptive.utils.Config.getConfig(o,"dict_sort_column")||B,q=[g,B];w.dictStoresNotLoaded=w.dictStoresNotLoaded||0;w.dictStoresNotLoaded++;if(A){q.push(A)}var z=Ext.create("Ext.data.Store",{fields:q,proxy:{url:"WebServices/client/DataView.asmx/ReadAny",type:"ajaxread",params:{theme_uuid:b,columns:q,filter:{},excludeGeometry:true},wrapperObject:"request",actionMethods:{read:"POST"},paramsAsJson:true},autoLoad:true,pageSize:100000});z.on("load",function(){z.isLoaded=true;this.dictStoresNotLoaded--},w,{single:true});Adaptive.data.proxy.Crud.setFilter(z,{greedy:true,filterColumns:[],sortColumns:[{name:h}]});return z},externalStoresLoaded:function(){var b=this;b.dictStoresNotLoaded=b.dictStoresNotLoaded||0;return b.dictStoresNotLoaded==0},getValueColumn:function(g){var h=this,b=Adaptive.utils.Config.getConfig(g,"dict_value_column");if(h.hasLangConfig(g)){b=h.getLangValueColumnDict(g,b,h.selLang)}return b},processColumn:function(g){if(!g.isInline&&g.visible_editor!="show"){return}var N=this,h=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",g.data_type),b=false,L={fieldLabel:g.name,helpText:g.description,required:g.required},C;if(g.isInline){var E=g.items.map(function(Q){return N.processColumn(Q)});if(g.inlineLabel){return Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},defaults:{flex:1},items:[{xtype:"label",text:g.inlineLabel,margin:2},{xtype:"container",layout:{type:"hbox",align:"stretch"},defaults:{flex:1},items:E}]})}else{return Ext.create("Ext.container.Container",{layout:{type:"hbox",align:"stretch"},defaults:{flex:1},items:E})}}if(g.is_system||g.editable===false){L.disabled=true}switch(g.name){case"id":b=true;L.xtype="displayfield";case"date_created":case"date_modified":if(g.name===g.column_name){delete L.fieldLabel}break;default:break}if(!b){var B=Adaptive.utils.Config.getJsonConfig(g,"dependency"),A=Adaptive.utils.Config.getJsonConfig(g,"custom_field_config"),w=Adaptive.utils.Config.getJsonConfig(g,"custom_column");if(A){Ext.merge(L,A)}if(w){h="custom";if(w.type){h=w.type}}if(B){L.dependency=B}switch(h){case"text_area":L.xtype="textarea";L.grow=true;case"string":case"text":var o=Adaptive.utils.Config.getConfig(g,"regex"),K=Adaptive.utils.Config.getConfig(g,"min_length"),q=Adaptive.utils.Config.getConfig(g,"max_length");if(o){L.regex=new RegExp(o)}if(K){L.minLength=K}if(q){L.maxLength=q}break;case"datetime":L.format=N.formatDate.getString("date_format")+" "+N.formatDate.getString("time_format");case"date":return N.createDateField(g.column_name,L);case"time":return;case"foreign_key":L.disabled=false;L.hidden=N.isDisplayForm||!Adaptive.utils.Config.getBooleanConfig(g,"rel_optional");L.xtype="parentfield";L.map=N.map;L.srid=N.map.projection.proj.srsProjNumber;L.themeData=N.theme_data;break;case"serial":case"integer":L.allowDecimals=false;case"decimal":case"single":case"double":var D=Adaptive.utils.Config.getConfig(g,"min_value"),I=Adaptive.utils.Config.getConfig(g,"max_value"),P=Adaptive.utils.Config.getConfig(g,"decimals");L.xtype="numberfield";L.hideTrigger=true;if(P){L.decimalPrecision=parseInt(P)}if(D){L.minValue=parseFloat(D)}if(I){L.maxValue=parseFloat(I)}break;case"serial_formatted":case"integer_formatted":L.allowDecimals=false;case"decimal_formatted":case"single_formatted":case"double_formatted":L.xtype="a3-numberfield";L.decimalSeparator=N.getFormString("decimalSeparator",true);L.thousandSeparator=N.getFormString("thousandSeparator",true);break;case"list":L.xtype="combo";L.store=N.generateStore(g);L.editable=false;break;case"multiselect_list":L.xtype="combo";L.store=N.generateStore(g);L.editable=false;L.multiSelect=true;break;case"editable_list":L.xtype="combo";L.store=N.generateStore(g);L.editable=true;L.forceSelection=false;L.typeAhead=true;break;case"dictionary":var G=Adaptive.utils.Config.getConfig(g,"dict_key_column"),F=N.getValueColumn(g),H=Adaptive.utils.Config.getConfig(g,"dict_data_source"),J=Adaptive.utils.Config.getConfig(g,"dict_parent_field"),O=Adaptive.utils.Config.getConfig(g,"dict_parent_keys_column");L.xtype="dt_dictionary";L.store=N.generateDictStore(g);
1L.queryMode="local";L.typeAhead=L.editable===false?false:true;L.displayField=F;L.valueField=G;L.zoomToGeom=Adaptive.utils.Config.getBooleanConfig(g,"dict_zoom_to_geom",false);L.copyGeom=Adaptive.utils.Config.getBooleanConfig(g,"dict_copy_geom",false);L.dictUuid=H;L.map=N.map;L.getGeometryPicker=Ext.bind(N.getGeometryPicker,N);L.parentFilter=J&&O&&{filterColumn:O,field:J};break;case"multiselect_dictionary":var G=Adaptive.utils.Config.getConfig(g,"dict_key_column"),F=N.getValueColumn(g),H=Adaptive.utils.Config.getConfig(g,"dict_data_source"),J=Adaptive.utils.Config.getConfig(g,"dict_parent_field"),O=Adaptive.utils.Config.getConfig(g,"dict_parent_keys_column");L.xtype="dt_dictionary";L.store=N.generateDictStore(g);L.queryMode="local";L.multiSelect=true;L.displayField=F;L.valueField=G;L.zoomToGeom=Adaptive.utils.Config.getBooleanConfig(g,"dict_zoom_to_geom",false);L.copyGeom=Adaptive.utils.Config.getBooleanConfig(g,"dict_copy_geom",false);L.dictUuid=H;L.map=N.map;L.getGeometryPicker=Ext.bind(N.getGeometryPicker,N);L.parentFilter=J&&O&&{filterColumn:O,field:J};break;case"boolean":L.xtype="checkbox";L.boxLabel=L.fieldLabel;delete L.fieldLabel;break;case"uuid":return;case"uuid[]":if(g.column_name!="_acl"){return}if(Adaptive.utils.Config.getBooleanConfig(g,"single",false)){L.xtype="acleditorcombo"}else{L.xtype="acleditor"}L.allowedRoles=Adaptive.utils.Config.getJsonConfig(g,"allowed_roles")||[];L.autoHide=Adaptive.utils.Config.getBooleanConfig(g,"auto_hide",false);L.required=true;L.readOnly=N.isDisplayForm;L.isAdmin=N.isAdmin;break;case"rich_text":L.xtype="richeditor";L.defaultValue=" ";break;case"media":L.xtype="dt_singlemedia";L.map=N.map;L.mapContainer=N.mapContainer;L.editable=!N.isDisplayForm;L.parent_object_uuid=N.theme_data.theme_uuid;L.isPublic=Adaptive.utils.Config.getBooleanConfig(g,"isPublic");break;case"url":L.xtype="dt_urlfield";L.editable=!N.isDisplayForm;break;case"color":L.editable=!N.isDisplayForm;return N.createColorField(g.column_name,L);case"geometry":if(g.column_name=="geom"){return}var M=Adaptive.utils.Config.getConfig(g,"geom_type"),z=GeoMind.utils.DictionaryManager.getDictionaryValue("spatial_data_types",M);L.editable=!N.isDisplayForm;L.hideOnPick=false;L.selectInMap=true;L.editable=true;L.map=N.map;L.srid=N.map.projection.proj.srsProjNumber;L.spatial_data_type=z;L.editZ=Adaptive.utils.Config.getBooleanConfig(g,"geom_type_3d",false),L.useGps=Adaptive.utils.Config.getBooleanConfig(g,"useGps",false),L.snapDrawingLayer=Adaptive.utils.Config.getBooleanConfig(g,"snapDrawingLayer",false),L.showMesurements=Adaptive.utils.Config.getBooleanConfig(g,"geom_show_measurements",false),L.xtype="geometryfield";L.readOnly=false;L.isFormField=true;L.setEditing=Ext.bind(N.setEditingExtraGeometry,N);break;case"custom":L.editable=!N.isDisplayForm;L.isDisplayForm=N.isDisplayForm;L.form=N;L.column=g;L.map=N.map;L.setEditing=Ext.bind(N.setEditingExtraGeometry,N);return Ext.create(w.cls,N.createField(g.column_name,L));default:console.warn("Unhandled column type",h);return}}return N.createField(g.column_name,L)}});Ext.define("Client.module.map.dataView.batch.BatchEdit",{extend:Client.module.map.dataView.batch.BatchBase,mixins:[Adaptive.form.mixins.Generator,Adaptive.utils.Form],internal_name:"av_digi_theme_batch_edit",serviceUrl:"WebServices/client/DataView.asmx/",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.batch.lang.BatchEdit")},buildGui:function(){var g=this;var b=Ext.create("Ext.data.Store",{fields:["name","column_name"],data:g.cleanColumns(g.theme_data.columns)});g.infoText=g.createTextBox("info","info",{html:""});g.colCombo=Ext.widget(g.createField("column",{xtype:"combo",required:true,valueField:"column_name",displayField:"name",store:b,editable:false,listeners:{scope:g,select:g.onColumnSelected}}));g.form=g.createForm({noScroll:true,items:[g.infoText,g.colCombo]});g.callParent();g.view.add(g.form);g.view.show()},onSave:function(){var b=this,g=b.getData(),h={theme_uuid:b.theme_data.theme_uuid,data:{},ids:[]};b.showDataViewLoadMask(b.lang.getString("saving"));b.idStore.each(function(o){h.ids.push(o.get("id"))});h.data[g.column]=Array.isArray(g[g.column])?g[g.column].toString():g[g.column];Ext.Ajax.request({url:b.serviceUrl+"BatchUpdate",method:"POST",jsonData:h,success:Ext.bind(b.onSaveSuccess,b),failure:Ext.bind(b.onSaveFailure,b)});b.view.close()},onSaveSuccess:function(b){var g=this,b=GeoMind.utils.Ajax.fixResponse(b);if(!b.success){g.onSaveFailure(b);return}g.hideDataViewLoadMask();g.reportEvent("themeDataUpdated",{theme_uuid:g.theme_data.theme_uuid});g.reportEvent("batchSaveSuccess",{msg:g.lang.getString("saveSuccess")})},onSaveFailure:function(b){var g=this;g.hideDataViewLoadMask();g.reportEvent("batchOperationFailure",{msg:g.lang.getString("saveFailed")})},cleanColumns:function(b){var g=this,h=[];b.forEach(function(q){if(q.editable&&q.visible_editor=="show"&&!q.is_unique){var o=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",q.data_type);switch(o){case"geometry":case"media":break;case"uuid[]":if(g.isAdmin){h.push(q)}break;default:h.push(q);break}}});return h},onColumnSelected:function(b,g){var q=this,o=g[0].get("column_name"),h=q.findColumnFromColumnName(o);if(q.colItem){q.form.remove(q.getItem(q.colItem.dataIndex))}if(q.infoText2){q.infoText2.destroy()}q.infoText2=q.createTextBox("warning","warning",{html:q.lang.getString("batch_edit_disclaimer").replace("{0}",q.updateCount).replace("{1}",q.lang.getString(q.updateCount==1?"row":"rows"))});q.colItem=q.processColumn(h);q.form.add([q.colItem,q.infoText2])},findColumnFromColumnName:function(g){var h=this,b;
1h.theme_data.columns.forEach(function(o){if(o.column_name==g){b=o;return}});return b},_onRequestBatchEdit:function(g){var b=this,h=g.data;b.theme_data=h.theme_data;b.isAdmin=h.theme_data.permissions.admin;b.createIdsStore();b.loadIds(h.filter,h.ids,h.filter_id)},showNoRecordsToBatchOperate:function(b,h){var g=this;Ext.Msg.show({title:g.lang.getString("batchEditNotAvailableTitle"),msg:h>0&&b!==h?g.lang.getString("recordsNotAvailableForEditing").replace("{0}",h).replace("{1}",b):g.lang.getString("noRecordsToEdit"),buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR,maxWidth:360})},createRecordsToEditBox:function(h){var g=this,b=(h>1?g.lang.getString("recordsToChange"):g.lang.getString("recordToChange")).replace("{0}",h);g.updateCount=h;g.infoText.update(b)}});Ext.define("Client.module.map.dataView.batch.lang.BatchDelete",{strings:{btnSave:{en:"Delete",nb:"Slett"},btnCancel:{en:"Cancel",nb:"Avbryt"},deleting:{en:"Deleting...",nb:"Sletter..."},deleteFailed:{en:"Could not delete records.",nb:"Kunne ikke utføre sletting."},batchTitle:{en:"Delete multiple rows",nb:"Slett flere rader"},noRecordsToDelete:{en:"<p>Deleting multiple rows not allowed. You lack permissions to delete the selected rows.</p>",nb:"<p>Sletting av flere rader er ikke tilgjenglig fordi du mangler rettigheter til å slette de valgte radene.</p>"},loading:{en:"Loading...",nb:"Laster..."},recordsNotAvailableForDeleting:{en:"<p>Deleting multiple rows not allowed. You lack permissions to delete {0} of the selected rows.</p>",nb:"<p>Sletting av flere rader er ikke tilgjengelig. Du mangler rettigheter for å slette {0} av de valgte radene.</p>"},batchDeleteNotAvailableTitle:{en:"Not allowed",nb:"Ikke tilgjengelig "},batch_delete_row_disclaimer:{en:"<p>Note: When pushing delete, <b>one</b> row will be deleted. This action cannot be undone!</p>",nb:"<p>Merk: Når du klikker på slett vil <b>en</b> rad bli slettet. Dette kan ikke angres!</p>"},batch_delete_rows_disclaimer:{en:"<p>Note: When pushing delete, <b>{0}</b> rows will be deleted. This action cannot be undone!</p>",nb:"<p>Merk: Når du klikker på slett vil <b>{0}</b> rader bli slettet. Dette kan ikke angres!</p>"}}});Ext.define("Client.module.map.dataView.batch.BatchDelete",{extend:Client.module.map.dataView.batch.BatchBase,mixins:[Adaptive.form.mixins.Generator,Adaptive.utils.Form],internal_name:"av_digi_theme_batch_delete",serviceUrl:"WebServices/client/DataView.asmx/",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.batch.lang.BatchDelete")},buildGui:function(){var b=this;b.callParent();b.infoText2=b.createTextBox("warning","warning");b.form=b.createForm({noScroll:true,items:[b.infoText2]});b.view.add(b.form);b.view.show()},_onRequestBatchDelete:function(g){var b=this,h=g.data;b.theme_data=h.theme_data;b.createIdsStore();b.loadIds(h.filter,h.ids,h.filter_id)},showNoRecordsToBatchOperate:function(b,h){var g=this;Ext.Msg.show({title:g.lang.getString("batchDeleteNotAvailableTitle"),msg:h>0&&b!==h?g.lang.getString("recordsNotAvailableForDeleting").replace("{0}",h).replace("{1}",b):g.lang.getString("noRecordsToDelete"),buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR,maxWidth:360})},createRecordsToEditBox:function(h){var g=this,b=(h>1?g.lang.getString("batch_delete_rows_disclaimer"):g.lang.getString("batch_delete_row_disclaimer")).replace("{0}",h);g.infoText2.update(b)},onSave:function(){var g=this,b=[];g.idStore.each(function(h){b.push(h.get("id"))});g.deleteSelection(b);g.view.close()},deleteSelection:function(b){var g=this;g.showDataViewLoadMask(g.lang.getString("deleting"));Ext.Ajax.request({url:g.serviceUrl+"DeleteMultiple",method:"POST",jsonData:{theme_uuid:g.theme_data.theme_uuid,ids:b},success:function(h){h=GeoMind.utils.Ajax.fixResponse(h);g.hideDataViewLoadMask();if(h.success){g.reportEvent("batchDeleteSuccess",{ids:b})}else{g.hideDataViewLoadMask();g.reportEvent("batchOperationFailure",{msg:g.lang.getString("deleteFailed")})}},failure:function(){g.reportEvent("batchOperationFailure",{msg:g.lang.getString("deleteFailed")});g.hideDataViewLoadMask()}})}});Ext.define("Client.module.tool.SmsMass.lang.SmsMass",{strings:{name:{en:"Name of message",nb:"Navn på melding",nn:"Namn på melding"}
1,comment:{en:"Internal comment",nb:"Intern kommentar",nn:"Intern kommentar"},message:{en:"Message text",nb:"Meldingstekst",nn:"Meldingstekst"},sendTimeLabel:{en:"Date/time",nb:"Dato/klokkeslett",nn:"Dato/klokkeslett"},receiverLabel:{en:"Send to",nb:"Send til",nn:"Send til"},publishLabel:{en:"Publish to web",nb:"Vis på nettside",nn:"Vis på nettside"},confirmPublish:{en:"YES",nb:"JA",nn:"JA"},confirmNoPublish:{en:"NO",nb:"NEI",nn:"NEI"},publishLabel:{en:"Publish to web",nb:"Vis på nettside",nn:"Vis på nettside"},alleText:{en:"Everyone in the area",nb:"Alle i området",nn:"Alle i området"},fastboendeText:{en:"Permanent residents",nb:"Fastboende",nn:"Fastbuande"},huseiereText:{en:"House owners",nb:"Huseiere",nn:"Huseiere"},bedrifterText:{en:"Businesses",nb:"Bedrifter",nn:"Bedrifter"},hytterText:{en:"Cabins ",nb:"Hytter",nn:"Hytter"},sendnow:{en:"Send immediately ",nb:"Send umiddelbart",nn:"Send umiddelbart"},publish:{en:"Publish to web ",nb:"Vis på nettside",nn:"Vis på nettside"},geometry:{en:"Geometry ",nb:"Geometri",nn:"Geometri"},pre:{en:"Predefined ",nb:"Forhånd",nn:"Førehand"},drawGeomButton:{en:"Draw polygon ",nb:"Tegn polygon",nn:"Tegn polygon"},resetGeomButton:{en:"Reset area ",nb:"Nullstill område",nn:"Nullstill område"},resetFormButton:{en:"Reset form ",nb:"Nullstill skjema",nn:"Nullstill skjema"},modify_button:{en:"Modify area ",nb:"Endre område",nn:"Endre område"},intersectButton:{en:"Intersect ",nb:"Intersekt",nn:"Intersekt"},date:{en:"Send date",nb:"Send dato",nn:"Send dato"},time:{en:"Send time",nb:"Send tidspunkt",nn:"Send tidspunkt"},abort:{en:"No, cancel",nb:"Nei, avbryt",nn:"Nei, avbryt"},confirm:{en:"Yes, send SMS",nb:"Ja, send SMS",nn:"Ja, send SMS"},popupheader:{en:"You are about to send this message:",nb:"Du sender nå ut denne meldingen",nn:"Du sender nå ut denne meldingen"},confirmWindow:{en:"Confirm SMS",nb:"Bekreft SMS",nn:"Stadfest SMS"},btnSave:{en:"Send",nb:"Send",nn:"Send"},setlaterTime:{en:"Set a later time",nb:"Du må velge et senere tidspunkt",nn:"Du må velgje eit seinare tidspunkt"},noGeometryWarning:{en:"No geometry",nb:"Det er ingen geometri",nn:"Det er ingen geometri"},noMessageWarning:{en:"The broadcast needs a name and a text",nb:"Meldingen må ha et navn og en tekst",nn:"Meldinga må ha eit namn og ein tekst"},noReceiverWarning:{en:"The broadcast needs a reciever",nb:"Meldingen må ha en eller flere mottakere",nn:"Meldingen må ha en eller flere mottakere"},closeWindow:{en:"Close window",nb:"Lukk vindu",nn:"Lukk vindu"},messageSuccess:{en:"The message was sent",nb:"Meldingen ble sendt",nn:"Meldinga blei sendt"},messageFailure:{en:"The message was not sent",nb:"Meldingen ble ikke sendt",nn:"Meldinga blei ikkje sendt"},noIntersection:{en:"No intersection area",nb:"Ingen overlapp mellom polygonene",nn:"Ingen overlapp mellom polygona"},intersectionError:{en:"Error with intersection",nb:"Feil med interseksjon",nn:"Feil med interseksjon"},predefined:{en:"Predefined areas",nb:"Forhåndsdefinerte områder",nn:"Forhåndsdefinerte områder"},confirmPredefinedButton:{en:"Confirm predefined area",nb:"Bekreft forhåndsdefinert område",nn:"Bekreft forhåndsdefinert område"},target:{en:"Send to",nb:"Send til",nn:"Send til"},geometry:{en:"Define area",nb:"Definer område",nn:"Definer område"}},errCodes:{}});Ext.define("Client.module.tool.SmsMass.SmsMass",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],internal_name:"av_sms_mass",btnCls:"a3-sms_mass",btnText:"SMS",btnTip:null,headerText:"SMS",layerNameOL:"sms_mass_notification",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.SmsMass.lang.SmsMass");g.btnTip=g.lang.getString("btnTip");g.olFeaturesModule=Ext.create("Client.module.tool.digitisedObjects.DrawControls");g.parentController.registerModule(g.olFeaturesModule)},buildGui:function(){var b=this;b.populatePredefinedThemes();b.drawGeomButton=Ext.widget(b.createButton("drawGeomButton",true,{width:"100%",handler:Ext.bind(b.onDrawGeomButtonClick,b,b)}));b.resetGeomButton=Ext.widget(b.createButton("resetGeomButton",false,{width:"150px",handler:Ext.bind(b.onResetButtonClick,b,b)}));b.resetFormButton=Ext.widget(b.createButton("resetFormButton",false,{width:"150px",handler:Ext.bind(b.onResetFormButtonClick,b,b)}));b.intersectButton=Ext.widget(b.createButton("intersectButton",false,{width:"150px",disabled:true,i
1d:"intersectButton",handler:Ext.bind(b.findIntersect,b)}));b.confirmButton=Ext.widget(b.createButton("confirmButton",true,{text:b.lang.getString("confirm"),id:"confirmbtn",handler:Ext.bind(b.onconfirmSend,b,b)}));b.cancelButton=Ext.widget(b.createButton("cancelButton",false,{text:b.lang.getString("abort"),id:"cancelSend",handler:Ext.bind(b.onCancelSend,b,b)}));b.predefinedCombo=Ext.widget(b.createField("predefined",{xtype:"combobox",mode:"local",addClearTrigger:false,hidden:b.predefinedThemes.length===0,store:new Ext.data.Store({fields:["name","geom","theme_uuid","geom_column"],data:b.predefinedThemes}),valueField:"theme_uuid",displayField:"name",listeners:{select:function(h,g){var h=g[0].getData();b.loadPredefinedAreas(h)}}}));b.view=b.createForm({cls:"a3-modules-body",saveBtnConfig:{handler:Ext.bind(b.onSendClick,b)},cancelBtnConfig:false,items:[b.createSet("",{collapsible:false,collapsed:false},[b.createField("name",{xtype:"textfield",required:true}),b.createField("comment",{xtype:"textareafield",height:100}),b.createSet("target",{defaultType:"checkbox",collapsible:false},[{boxLabel:b.lang.getString("alleText"),name:"sendToAll",inputValue:"all",disabled:true},{boxLabel:b.lang.getString("huseiereText"),name:"sendToOwners",inputValue:"huseiere",disabled:false},{boxLabel:b.lang.getString("fastboendeText"),checked:true,name:"sendToResidents",inputValue:"faste",disabled:false},{boxLabel:b.lang.getString("hytterText"),name:"sendToCabins",inputValue:"hytter",disabled:false},{boxLabel:b.lang.getString("bedrifterText"),name:"sendToBusinesses",inputValue:"bedrifter",disabled:false}]),b.createField("publish",{xtype:"checkbox",checked:true,name:"publish_to_web",id:"publish_to_web",listeners:{}}),b.createField("sendnow",{xtype:"checkbox",checked:true,name:"sendnow",id:"sendnow",listeners:{change:function(){if(!this.value){Ext.getCmp("date").setDisabled(false);Ext.getCmp("time").setDisabled(false)}else{Ext.getCmp("date").setDisabled(true);Ext.getCmp("time").setDisabled(true)}}}}),Ext.create("Ext.form.Date",{fieldLabel:b.lang.getString("date"),labelAlign:"top",margin:"5 0 0 0",disabled:true,name:"senddate",format:"d-m-Y",id:"date"}),Ext.create("Ext.form.field.Time",{fieldLabel:b.lang.getString("time"),labelAlign:"top",margin:"5 0 0 0",name:"sendtime",disabled:true,increment:30,format:"H:i",id:"time",renderer:function(){this.setStyle("opacity",0.3)}}),b.createField("message",{xtype:"textareafield",required:true,height:100}),b.createSet("geometry",{collapsible:false,title:false},[b.predefinedCombo,b.createFc("buttons","",{layout:{type:"hbox",align:"stretch"}},[b.drawGeomButton,b.intersectButton]),b.createFc("buttons","",{layout:{type:"hbox",align:"stretch"}},[b.resetGeomButton,b.resetFormButton])])])]});b.confirmPanel=Ext.create(Ext.window.Window,{title:"<b>"+b.lang.getString("confirmWindow")+"</b>",closable:false,height:400,width:400,bodyPadding:10,cls:"a3-form a3-modules-body",autoScroll:true,items:[{xtype:"displayfield",id:"messagelabel",labelStyle:"font-weight: bold;",fieldLabel:b.lang.getString("message"),labelAlign:"top"},{xtype:"displayfield",id:"datevaluelabel",labelStyle:"font-weight: bold;",fieldLabel:b.lang.getString("sendTimeLabel"),labelAlign:"top"},{xtype:"displayfield",id:"receiverlabel",labelStyle:"font-weight: bold;",fieldLabel:b.lang.getString("receiverLabel"),labelAlign:"top"},{xtype:"displayfield",id:"publishlabel",labelStyle:"font-weight: bold;",fieldLabel:b.lang.getString("publishLabel"),labelAlign:"top"}],dockedItems:[{xtype:"toolbar",dock:"bottom",items:[b.confirmButton,b.cancelButton]}]})},onGenerateReportCallback:function(g,o,b){var h=this;b=GeoMind.utils.Ajax.fixResponse(b);if(!(o&&b.status==204)){h.showNotifyError(h.confirmPanel,h.lang.getString("messageFailure"),7000);h.confirmButton.enable();return}else{if(b.status==204){h.showNotifySuccess(h.confirmPanel,h.lang.getString("messageSuccess"),7000);h.confirmButton.disable();h.cancelButton.setText(h.lang.getString("closeWindow"))}}},onSendClick:function(){var D=this,z=D.getRawData();if(z.sendToOwners==false&&z.sendToResidents==false&&z.sendToCabins==false&&z.sendToBusinesses==false){D.showNotifyWarning(D.view,D.lang.getString("noReceiverWarning"));return}if(D.selectedPredefinedFeature==null&&D.smsarea==null){D.showNotifyWarning(D.view,D.lang.getString("noGeometryWarning"));return}if(D.selectedPredefinedFeature==null&&D.smsarea!=null){if(D.smsarea.geometry==null){D.showNotifyWarning(D.view,D.lang.getString("noGeometryWarning"));return}}if(z.message.trim()==""||z.name.trim()==""){D.showNotifyWarning(D.view,D.lang.getString("noMessageWarning"));return}Ext.getCmp("messagelabel").setValue(z.message);var I=z.senddate;if(z.sendtime&&z.senddate){I.setHours(z.sendtime.getHours());I.setMinutes(z.sendtime.getMinutes())}else{I=new Date()}var B="";var J=D.selectedPredefinedFeature?D.selectedPredefinedFeature.geometry:D.smsarea.geometry.clone();var o=J.transform(D.map.getProjection(),new OpenLayers.Projection("EPSG:4326"));var H=new OpenLayers.Format.WKT();var B=H.extractGeometry(o);var q=[];var F=[];var b=[];if(z.sendToOwners){q.push("B");b.push("Huseiere")}if(z.sendToResidents){q.push("R");b.push(" Beboere")}if(z.sendToCabins){q.push("F");b.push(" Hytteeiere")}if(z.sendToBusinesses){F.push("company");b.push(" Bedrifter")}if(z.sendToOwners||z.sendToResidents||z.sendToCabins){F.push("person")}Ext.getCmp("receiverlabel").setValue(b.join(","));if(z.publish_to_web){Ext.getCmp("publishlabel").setValue(D.lang.getString("confirmPublish"))}else{Ext.getCmp("publishlabel").setValue(D.lang.getString("confirmNoPublish"))}if(z.sendnow){D.url="api/EverBridgeSMS/sendnotification";D.jsondata={navn:z.name,kommentar:z.comment,geometry:B,melding:z.message,mottakere:q.join(","),mottaker_typer:F.join(","),publish_to_web:z.publish_to_web};Ext.getCmp("datevaluelabel").setValue(D.lang.getString("sendnow"))}else{var C=I.getFullYear();var G=I.getMonth();var E=I.getDate();var A=I.getHours();var g=I.getMinutes();var w=new Date(C,G,E,A,g,0,0).getTime()+60000;if(isNaN(w)||(w<Date.now())){D.showNotifyWarning(D.view,D.lang.getString("setlaterTime"));return}D.url="api/EverBridgeSMS/sendSchedulednotification";D.jsondata={navn:z.name,kommentar:z.comment,geometry:B,melding:z.message,mottakere:q.join(","),mottaker_typer:F.join(","),senddate:I,publish_to_web:z.publish_to_web};Ext.getCmp("datevaluelabel").setValue(Ext.Date.format(I,"d-m-Y")+" "+Ext.Date.format(I,"H:i"))}D.confirmPanel.show()},onCancelSend:function(){var b=this;b.confirmButton.enable();Ext.getCmp("cancelSend").setText(b.lang.getString("abort"));b.confirmPanel.hide()},onconfirmSend:function(){var b=this;b.confirmButton.disable();Ext.Ajax.request({url:b.url,method:"POST",jsonData:b.jsondata,headers:{"Content-Type":"application/json"},callback:b.onGenerateReportCallback,scope:b})},findIntersect:function(){var h=this;if(h.smsarea!=null&&h.selectedPredefinedFeature){var o=new OpenLayers.Format.WKT();var g=o.extractGeometry(h.selectedPredefinedFeature.geometry);
1var b=o.extractGeometry(h.smsarea.geometry);Ext.Ajax.request({url:"WebServices/Generic/SpatialOperations.asmx/Intersection",method:"POST",jsonData:{wkt1:g,wkt2:b},headers:{"Content-Type":"application/json"},callback:h.onIntersectionCallback,scope:h})}},onIntersectionCallback:function(g,q,b){var h=this;b=GeoMind.utils.Ajax.fixResponse(b);if(!b.success){h.showNotifyError(h.view,h.lang.getString("intersectionError"));return}var o=b.data[0].value;if(o==null){h.showNotify(h.view,h.lang.getString("noIntersection"),3000);h.onResetButtonClick()}else{h.geometryPicker.setGeometry(o);h.geometryPicker.startPicker();h.predefinedLayer.display(false);if(h.predefinedLayer){h.map.removeControl(h.predefinedLayerControl);h.predefinedLayer.destroyFeatures();h.map.removeLayer(h.predefinedLayer);h.predefinedCombo.reset();h.intersectButton.disable();delete h.selectedPredefinedFeature;delete h.predefinedLayer}}},activate:function(){var b=this;this.active=true;if(!b.view){b.buildGui()}},deactivate:function(){var b=this;b.active=false;b.cleanUp()},createGeometryPicker:function(){var b=this;b.geometryPicker=Ext.create("Adaptive.ux.GeometryPicker",{map:b.map,mapContainer:b.mapContainer,spatial_data_type:"polygon",map_projection:b.map.getProjection(),readOnly:b.isDisplayForm,onFeatureAdded:function(g){b.smsarea=g.feature;b.drawGeomButton.setText(b.lang.getString("modify_button"));b.geometryPicker.stopPicker();if(b.selectedPredefinedFeature!=null){b.intersectButton.enable()}}})},_setActive:function(b){if(!b){this.cleanUp()}},cleanUp:function(){var b=this;b.onResetFormButtonClick();if(b.geometryPicker){b.geometryPicker.stopPicker();b.geometryPicker.destroy();delete b.geometryPicker}if(b.predefinedLayerControl){b.predefinedLayerControl.destroy();delete b.predefinedLayerControl}if(b.predefinedLayer){b.predefinedLayer.destroy();delete b.predefinedLayer}delete b.smsarea;delete b.selectedPredefinedFeature},populatePredefinedThemes:function(){var b=this;var g=[];b.map.wmsLayers.forEach(function(o){var w=Adaptive.utils.Config.getThemeData(o.record);var h=Adaptive.utils.Config.getBooleanConfig(w,"sms_mass_predefined");var q=g.some(function(z){return z.theme_uuid===w.theme_uuid});if(h&&!q){g.push(w)}});b.predefinedThemes=g},loadPredefinedAreas:function(g){var b=this;Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",jsonData:{request:{srid:b.map.getProjectionObject().proj.srsProjNumber,theme_uuid:g.theme_uuid,columns:[g.geom_column]}},headers:{"Content-Type":"application/json"},callback:function(o,q,h){b.onLoadPredefinedAreas(q,h)},scope:b})},onLoadPredefinedAreas:function(o,b,h){var g=this;if(o){var b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){g.renderPredefinedFeatures(b.records)}}},renderPredefinedFeatures:function(b){var h=this;if(!h.predefinedLayer){h.predefinedLayer=new OpenLayers.Layer.Vector("predefined_geometries",{group:300});h.map.addLayer(h.predefinedLayer)}h.predefinedLayer.destroyFeatures();h.predefinedLayer.display(true);var o=new OpenLayers.Format.WKT();var g=b.map(function(q){return o.read(q.geom_wkt)});h.predefinedLayer.addFeatures(g);h.predefinedLayerControl=new OpenLayers.Control.SelectFeature(h.predefinedLayer,{toggle:false,clickout:false,multiple:false,geometryTypes:["OpenLayers.Geometry.Polygon","OpenLayers.Geometry.MultiPolygon"],onBeforeSelect:function(q){this.unselectAll()},onSelect:function(q){h.selectedPredefinedFeature=q.clone();if(h.smsarea!=null){h.intersectButton.enable()}}});h.map.addControl(h.predefinedLayerControl);h.predefinedLayerControl.activate()},onConfirmPredefined:function(){var b=this;b.predefinedLayer.destroyFeatures();b.predefinedLayer.addFeatures(b.selectedPredefinedFeature);b.predefinedLayerControl.deactivate();b.predefinedCombo.reset()},onDrawGeomButtonClick:function(){var h=this;if(!h.geometryPicker){h.createGeometryPicker()}if(h.smsarea!=null){var b=h.smsarea.geometry;var o=new OpenLayers.Format.WKT();var g=o.extractGeometry(b);h.geometryPicker.setGeometry(g)}h.geometryPicker.startPicker()},onResetButtonClick:function(){var b=this;if(b.predefinedLayer){b.map.removeControl(b.predefinedLayerControl);b.predefinedLayer.destroyFeatures();b.map.removeLayer(b.predefinedLayer);delete b.predefinedLayer}b.predefinedCombo.reset();delete b.selectedPredefinedFeature;if(b.smsarea){delete b.smsarea;b.drawGeomButton.setText(b.lang.getString("drawGeomButton"))}if(b.geometryPicker){b.geometryPicker.destroy();delete b.geometryPicker}b.intersectButton.disable()},onResetFormButtonClick:function(){var b=this;if(b.formPanel){b.resetForm();b.onResetButtonClick()}}});Ext.define("Client.module.map.dataView.statistic.StatisticBase",{extend:Client.module.Generic,serviceUrl:"WebServices/client/DataView.asmx/",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b])},buildGui:function(){var b=this;b.view=Ext.create("Ext.window.Window",{closeAction:"destroy",constrain:true,width:500,height:500,minHeight:200,maxHeight:900,layout:"fit",title:b.lang.getString("statisticTitle"),items:[]})},onCancel:function(){var b=this;b.view.hide();b.view.destroy()},createIdsStore:function(){var b=this;b.modelClassName=Client.data.model.ThemeRecord.getModel(b.theme_data);b.idStore=Ext.create("Ext.data.Store",{model:b.modelClassName,autoLoad:false,pageSize:1000000,listeners:{scope:b,beforeload:b.onStoreBeforeLo
1ad,load:b.onStoreLoad},proxy:{type:"ajaxread",url:b.serviceUrl+"ReadAny",wrapperObject:"request"}})},loadIds:function(g,b,o){var h=this;if(b&&b.length>0){g={filterColumns:[{name:"id",value:b,comparisonOperator:"ANY",netType:"int[]"}]}}Adaptive.data.proxy.AjaxRead.setFilter(h.idStore,g);h.idStore.load({params:{columns:["id"],theme_uuid:h.theme_data.theme_uuid,srid:h.map.getProjectionObject().proj.srsProjNumber,limit:0,excludeGeometry:true,filter_id:o}})},showDataViewLoadMask:function(b){this.reportEvent("showDataViewLoadMask",{msg:b})},hideDataViewLoadMask:function(){this.reportEvent("hideDataViewLoadMask")},onStoreBeforeLoad:function(){var b=this;b.showDataViewLoadMask(b.lang.getString("loading"))},onStoreLoad:function(g,b){var h=this,o=0;h.hideDataViewLoadMask();if(o>0||b.length===0){h.showNoRecordsToBatchOperate(b.length,o);return}h.buildGui();h.createRecordsToEditBox(b.length)}});Ext.define("Client.module.map.dataView.statistic.lang.StatisticView",{strings:{column:{en:"Choose column",nb:"Velg kolonne"},btnSave:{en:"Execute",nb:"Utfør"},btnCancel:{en:"Close",nb:"Lukk"},calculate:{en:"Calculate...",nb:"Beregner..."},statisticFailed:{en:"Calculate failed.",nb:"Beregning feilet."},recordsToStatistic:{en:"<p>This feature allows you to run statistics for <b> {0} </b> selected rows.You select below the column you want to examine</p>",nb:"<p>Denne funksjonen lar deg kjøre statistikk for <b>{0}</b> valgte rader.Du velger nedenfor kolonnen du ønsker å undersøke.</p> "},recordsNoStatistic:{en:"<p>You can only run statistics for columns that contain text, lists and integers</p>",nb:"<p>Du kan bare kjøre statistikk for kolonner som inneholder tekst, lister og heltall</p>"},statisticTitle:{en:"Statistic multiple rows",nb:"Statistikk flere rader"},noRecordsToStatistic:{en:"<p>No rows to statistic.</p>",nb:"<p>Ingen rader å analysere.</p>"},loading:{en:"Loading...",nb:"Laster..."},statisticNotAvailableTitle:{en:"Not allowed",nb:"Ikke tilgjengelig "},row:{en:"row",nb:"rad"},rows:{en:"rows",nb:"rader"},count:{en:"Count",nb:"Antall"},valueLength:{en:"Length",nb:"Lengde"},valueArea:{en:"Area",nb:"Areal"},btnCopy:{en:"Copy",nb:"Kopier"}}});Ext.define("Client.module.map.dataView.statistic.StatisticView",{extend:Client.module.map.dataView.statistic.StatisticBase,mixins:[Adaptive.form.mixins.Generator,Adaptive.utils.Form],internal_name:"av_digi_theme_statistic_view",serviceUrl:"WebServices/client/DataView.asmx/",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.dataView.statistic.lang.StatisticView")},buildGui:function(){var g=this;var b=Ext.create("Ext.data.Store",{fields:["name","column_name"],data:g.cleanColumns(g.theme_data.columns)});g.storeResult=Ext.create("Ext.data.Store",{fields:["column","count","value"]});g.infoText=g.createTextBox("info","info",{margin:"0 5 0 0",html:""});g.warningText=g.createTextBox("warning","warning",{hidden:true,margin:"0 5 0 0",html:g.lang.getString("recordsNoStatistic")});g.grid=Ext.create("Ext.grid.Panel",{margin:"0 15 0 0",columns:[{text:g.lang.getString("column"),flex:1,dataIndex:"column"},{text:g.lang.getString("count"),width:160,dataIndex:"count",align:"right",renderer:function(w,o,h){var q=Ext.util.Format.number(w,"0,000");return q}},{text:g.getValueColumnText(),width:160,dataIndex:"value",align:"right",hidden:g.getValueColumnText()==="",renderer:function(w,o,h){var q=Ext.util.Format.number(w,"0,000.00");return q}}],store:g.storeResult,renderTo:document.body,emptyText:"Ingen poster..",autoScroll:true,selModel:{mode:"MULTI"},height:200});g.colCombo=Ext.widget(g.createField("column",{xtype:"combo",required:true,valueField:"column_name",displayField:"name",store:b,editable:false,listeners:{scope:g,select:g.onColumnSelected}}));g.btnSave=Ext.create("Ext.button.Button",{cls:"a3-btn",disabled:true,text:this.lang.getString("btnSave"),width:100,handler:function(){g.onSave()}});g.btnCancel=Ext.create("Ext.button.Button",{cls:"a3-btn",disabled:false,text:this.lang.getString("btnCancel"),width:100,handler:function(){g.onCancel()}});g.btnClipboard=Ext.create("Ext.button.Button",{cls:"a3-btn",disabled:false,text:this.lang.getString("btnCopy"),width:100,handler:function(){var h="Column;Count;Value\r\n";for(var o=0;o<g.grid.store.data.items.length;o++){h+=g.grid.store.data.items[o].data.column+";";h+=g.grid.store.data.items[o].data.count+";";h+=g.grid.store.data.items[o].data.value+"\r\n"}navigator.clipboard.writeText(h)}});g.bottomButtonBar=Ext.create("Ext.toolbar.Toolbar",{dock:"bottom",ui:"footer",margin:"0 5 0 0",items:[g.btnClipboard,{xtype:"component",flex:1},g.btnSave,g.btnCancel]});g.form=g.createForm({noScroll:true,cancelBtnConfig:false,saveBtnConfig:false,warnBtnConfig:false,padding:5,items:[g.infoText,g.colCombo,g.warningText,{xtype:"fieldset",id:"fieldset2",title:"Result",border:1,padding:2,margin:"0 5 0 0",layout:"anchor",collapsible:false,collapsed:false,items:[g.grid]},{xtype:"component",flex:1},g.bottomButtonBar],listeners:{resize:function(z,w,h,o,A,q){g.grid.setHeight(g.view.getHeight()-300);Ext.getCmp("fieldset2").setHeight(g.view.getHeight()-250)}}});g.callParent();g.view.add(g.form);g.view.show()},onSave:function(){var g=this,h=g.getData(),o={theme_uuid:g.theme_data.theme_uuid,data:{},ids:[]};g.showDataViewLoadMask(g.lang.getString("calculate"));g.idStore.each(function(q){o.ids.push(q.get("id"))});var b=null;o.data[h.column]=b;Ext.Ajax.request({url:g.serviceUrl+"GetStatistic",method:"POST",jsonData:o,success:Ext.bind(g.onCalculateSuccess,g),failure:Ext.bind(g.onCalculateFailure,g)})},onCalculateSuccess:function(b){var o=this,b=GeoMind.utils.Ajax.fixResponse(b),h=0,q=0;if(!b.success){o.onCalculateFailure(b);return}o.hideDataViewLoadMask();o.storeResult.reload();o.grid.setHeight(o.view.getHeight()-300);for(var g=0;g<b.data[0].value.length;g++){o.storeResult.add(b.data[0].value[g]);h=h+b.data[0].value[g].count;q=q+b.data[0].value[g].value}o.storeResult.add({column:"#TOTAL",count:h,value:q})},onCalculateFailure:function(b){var g=this;g.hideDataViewLoadMask();g.reportEvent("statisticFailure",{msg:g.lang.getString("statisticFailed")})},getGeomType:function(){var g=this;var b=g.theme_data.spatial_data_type;if(b==="line"||b==="multiline"){return"line"}else{if(b==="polygon"||b==="multipolygon"){return"polygon"}else{if(b==="point"){return"point"}}}return"none"},getValueColumnText:function(){var b=this;if(b.getGeomType()==="line"){return b.lang.getString("valueLength")}else{if(b.getGeomType()==="polygon"){return b.lang.getString("valueArea")}else{return""}}},cleanColumns:function(b){var g=this,h=[];b.forEach(function(q){if(q.editable&&q.visible_editor=="show"&&!q.is_unique){var o=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",q.data_type);switch(o){case"geometry":case"media":break;case"uuid[]":if(g.isAdmin){h.push(q)}break;default:h.push(q);break}}});return h},onColumnSelected:function(b,g){var o=this,h=g[0].get("column_name");o.storeResult.reload();if(o.infoText2){o.infoText2.destroy()}o.theme_data.columns.forEach(function(z){if(z.column_name===h){var w=GeoMind.utils.DictionaryManager.getDictionaryValue("data_column_types",z.data_type);if(w==="list"||w==="text"||w==="integer"){Ext.getCmp("fieldset2").show();o.warningText.setVisible(false);o.btnSave.enable();o.bottomButtonBar.setMargin("0 0 0 0");col=z}else{Ext.getCmp("fieldset2").hide();o.warningText.setVisible(true);o.btnSave.disable();var q=o.view.getHeight()-310+" 0 0 0";o.bottomButtonBar.setMargin(q)}return}})},_onRequestDoStatistic:function(g){var b=this,h=g.data;b.theme_data=h.theme_data;b.isAdmin=h.theme_data.permissions.admin;b.createIdsStore();b.loadIds(h.filter,h.ids,h.filter_id)},showNoRecordsToBatchOperate:function(b,h){var g=this;Ext.Msg.show({title:g.lang.getString("statisticNotAvailableTitle"),msg:g.lang.getString("noRecordsToStatistic"),buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR,maxWidth:360})},createRecordsToEditBox:function(h){var g=this,b=g.lang.getString("recordsToStatistic").replace("{0}",h);g.updateCount=h;g.infoText.update(b)}});Ext.define("Client.AppLogic",{statics:{moduleController:null,mapPanel:null,dispatchEvent:function(b,g){if(typeof(b)=="str
1ing"){Client.AppLogic.moduleController.broadcast({evtName:b,data:g})}else{Client.AppLogic.moduleController.broadcast(b)}},getLayerRecord:function(g){var b;Client.AppLogic.mapPanel.layerStore.each(function(h){if(h.get("uuid")==g){b=h;return false}});return b},getLayerRecordById:function(g){var b;Client.AppLogic.mapPanel.layerStore.each(function(h){if(h.get("id")==g){b=h;return false}});return b},getLayerThemeData:function(b){return Adaptive.utils.Config.getThemeData(Client.AppLogic.getLayerRecord(b))},getThemeLayerRecord:function(g){var b;Client.AppLogic.mapPanel.layerStore.each(function(o){var h=Adaptive.utils.Config.getThemeData(o);if(h&&h.theme_uuid==g){b=o;return false}});return b},getThemeData:function(g){var b;Client.AppLogic.mapPanel.layerStore.each(function(o){var h=Adaptive.utils.Config.getThemeData(o);if(h&&h.theme_uuid==g){b=h;return false}});return b},resizePopupWidth:function(g,o){var h=this,b=Ext.getBody().getWidth();if(g.width>b){g.setWidth(b)}else{if(g.width<o){g.setWidth(Math.min(b,o))}}}},modules:null,constructor:function(){var w=this;if(typeof __baat__!="undefined"){GeoMind.utils.Map.setCustomParam("GKT",__baat__)}GeoMind.utils.Ajax.addDefaultHeader("X-Adaptive-Gui",__guuid__);this.modules={};this.lang=GeoMind.lang.Lang.registerTranslations("Client.lang.AppLogic");this.moduleController=Ext.create("GeoMind.base.ModuleController");Client.AppLogic.moduleController=this.moduleController;Adaptive.utils.LightModule.moduleController=this.moduleController;this.authModule=Ext.create("Client.auth.Standard",{crypto:GeoMind.crypto.CryptoJS.getHasher("Sha512"),proxy:Ext.create("Client.auth.proxy.Standard",{serviceUrl:"WebServices/generic/Authentication.asmx/",sIdPropertyName:"gm_session_id"})});this.authModule.on("userAuthenticated",this.onUserAuthenticated,this);this.authModule.on("userSignedOut",this.onUserSignedOut,this);this.authModule.checkSession();if(typeof __use_dsb_sambas_url_api__!="undefined"){this.sambasAuth=Ext.create("Dsb.sambas.SambasAuth");this.sambasAuth.authenticate()}if(typeof __use_kv_fb_url_api__!="undefined"){this.kvFbAuth=Ext.create("Kystverket.tool.fartoysbaser.TokenAuth");this.kvFbAuth.authenticate()}if(typeof __use_cim_url_api__!="undefined"){this.cimAuth=Ext.create("Cim.UrlAuth");this.cimAuth.authenticate()}this.loadMask=Ext.create("GeoMind.desktop.mask.LoadMask");this.moduleController.registerModule(this.authModule);this.moduleController.registerModule(this.loadMask);this.moduleController.registerModule(Ext.create("Client.module.map.PlausibleAnalytics"));this.moduleController.registerModule(GeoMind.utils.SessionManager);var o=GeoMind.utils.Url.getUrlParam("session_id");if(o){o=o.replace(/#.*$/,"");w.authModule.addSession(o);window.history.replaceState(null,null,GeoMind.utils.Url.setUrlParam(window.location.href,"session_id"))}try{window.dispatchEvent(new Event("adaptiveappready"))}catch(q){}var h=window.frames.sso_win_auth_iframe;if(h){w.loadMask.showLoadMask(this.lang.getString("ssoWinAuth"));w.AppConfigLoaded=false;function z(A){if(A.data&&A.data.success&&A.data.sessionid){w.authModule.addSession(A.data.sessionid)}if(!w.AppConfigLoaded){w.AppConfigLoaded=true;w.pullAppCfg()}}function b(A){setTimeout(function(){if(!w.AppConfigLoaded){w.AppConfigLoaded=true;w.pullAppCfg()}},500)}window.addEventListener("message",z,false);h.addEventListener("load",b,false);var g="sso/WindowsAuth.aspx";if(h.src){h.src=g}else{if(h.location){h.location=g}else{this.pullAppCfg()}}}else{this.pullAppCfg()}},pullAppCfg:function(){this.loadMask.showLoadMask(this.lang.getString("pullCfg"));this.cfgLoader=Ext.create("Client.cfgLoader.Standard",{serviceUrl:"WebServices/client/Configuration.asmx/",serviceMethods:{readAppConfig:"ReadAppConfig"}});this.cfgLoader.on("configLoaded",this.onConfigLoaded,this,{single:true});this.cfgLoader.on("configLoadFailure",this.onConfigLoadFailure,this,{single:true});this.cfgLoader.pullConfig()},onConfigLoaded:function(b){this.cfgLoader.un("onConfigLoaded",this.onConfigLoaded,this);this.cfgLoader.un("configLoadFailure",this.onConfigLoadFailure,this);this.extractDictionaries(b.response.data);this.extractConfigs(b.response.data);Ext.form.field.Date.prototype.startDay=1;this.launchApp(b);if(!b.response.sessionExpired){this.authModule.checkLogin()}},extractDictionaries:function(h){var b={},o=[],g;for(d in h){if(h[d].key=="dictionaries"){b=h[d].value}if(h[d].key=="projections"){g=h[d].value;this.addProjections(h[d].value)}}g.forEach(function(q){o.push({uuid:q.uuid,description:q.epsg+" - "+q.name,value:q.epsg,projConfig:{absoluteValues:Adaptive.utils.Config.getBooleanConfig(q,"absoluteValues",false),xLabel:Adaptive.utils.Config.getConfig(q,"xLabel"),yLabel:Adaptive.utils.Config.getConfig(q,"yLabel")}})});b.projections=o;for(d in b){GeoMind.utils.DictionaryManager.saveRawDataDictionary(d,b[d])}},extractConfigs:function(g){var b=this;for(d in g){if(g[d].value=="True"||g[d].value=="true"){g[d].value=true}else{if(g[d].value=="False"||g[d].value=="false"){g[d].value=false}}
1if(g[d].key=="is_backup_site"){b.isBackupSite=g[d].value===true}if(g[d].key=="mapserver_path"){b.mapserverPath=g[d].value}if(g[d].key=="wms_proxy_url"){b.wmsProxyUrl=g[d].value}if(g[d].key=="search_suggest_service_url"){b.searchSuggestServiceUrl=g[d].value}if(g[d].key=="popup"){b.popup=Ext.decode(g[d].value)}if(g[d].key=="login_text"){b.login_text=Ext.decode(g[d].value)}if(g[d].key=="register_text"){b.register_text=Ext.decode(g[d].value)}if(g[d].key=="tool_width"){b.tool_width=g[d].value}if(g[d].key=="tool_state"){b.tool_state=g[d].value}if(g[d].key=="csw_type"){b.csw_type=Ext.decode(g[d].value)}if(g[d].key=="display_epsg"){b.display_epsg=Ext.decode(g[d].value)}if(g[d].key=="draggable_feature_info"){b.draggableFeatureInfo=Ext.decode(g[d].value)}if(g[d].key=="my_data_preload_geojson"){b.my_data_preload_geojson=g[d].value}if(g[d].key=="time_default_all_months"){b.time_default_all_months=g[d].value}if(g[d].key=="retain_map_view"){b.retain_map_view=g[d].value}if(g[d].key=="search_zoom_level"){b.search_zoom_level=Ext.decode(g[d].value)||12}if(g[d].key=="active_category"){b.active_category=g[d].value}if(g[d].key=="user_uuid"){b.user_uuid=g[d].value}if(g[d].key=="registration_disabled"){b.registrationDisabled=g[d].value}if(g[d].key=="user_registration_require_token"){b.requireRegistrationToken=g[d].value}if(g[d].key=="registration_name_required"){b.registrationNameRequired=g[d].value}if(g[d].key=="registration_extra_fields"){b.registrationExtraFields=Ext.decode(g[d].value)}if(g[d].key=="dim_layer_mng"){b.dimLayMng=g[d].value}if(g[d].key=="dim_layer_mng_auto_on"){b.dimLayMngAutoOn=g[d].value}if(g[d].key=="lay_mng_active"){b.layMngActive=g[d].value}if(g[d].key=="lay_mng_hide_main"){b.layMngHideMain=g[d].value}if(g[d].key=="lay_mng_hide_settings_cat"){b.layMngHideCat=g[d].value}if(g[d].key=="disable_restore_extent"){b.disableRestoreExtent=g[d].value}if(g[d].key=="disable_zoom_to_position"){b.disableZoomToPosition=g[d].value}if(g[d].key=="disable_nautical"){b.disableNautical=g[d].value}if(g[d].key=="enable_hectare"){b.enableHectare=g[d].value}if(g[d].key=="legend_category"){b.legendCategory=g[d].value}if(g[d].key=="content_dependent_legend"){b.legendContentDependent=g[d].value}if(g[d].key=="feat_info_hide_pdf_export"){b.featInfoHidePdfExport=g[d].value}if(g[d].key=="feat_info_hide_nodata_columns"){b.featInfoHideNoData=g[d].value}if(g[d].key=="print_area"){b.printAreaData=g[d].value&&Ext.JSON.decode(g[d].value)}if(g[d].key=="simplify_print"){b.simplifyPrint=g[d].value}if(g[d].key=="simplify_email"){b.simplifyEmail=g[d].value}if(g[d].key=="simplify_geojpeg"){b.simplifyGeojpeg=g[d].value}if(g[d].key=="simplify_share"){b.simplifyShare=g[d].value}if(g[d].key=="unit_height"){b.unitHeight=g[d].value||"meter"}if(g[d].key=="default_time"){b.defaultTime=g[d].value}if(g[d].key=="google_recaptcha_sitekey"){b.googleRecaptchaSitekey=g[d].value}if(g[d].key=="auto_refresh"){b.autoRefresh=Ext.JSON.decode(g[d].value)}if(g[d].key=="gui_url_api"){b.urlApiConfig=Ext.JSON.decode(g[d].value)}if(g[d].key==="scat_external_data_active"){b.scatExternalDataActive=g[d].value}if(g[d].key=="password_policies"){b.passwordPolicies=Ext.JSON.decode(g[d].value||"{}")}if(g[d].key=="gi_operations"){b.giOperations=Ext.JSON.decode(g[d].value||"{}")}if(g[d].key=="disable_feature_copy"){b.disableFeatureCopy=g[d].value}if(g[d].key=="lang_instance"){GeoMind.lang.SupportedLangs.instanceLang=g[d].value.toLowerCase();b.isNorwegianInstance=GeoMind.lang.SupportedLangs.instanceLang=="nb"}if(g[d].key=="disable_digitize_button"){b.disableDigitizeButton=g[d].value}if(g[d].key=="digitize_button_active_theme"){b.activeThemeDigitizeButton=g[d].value}if(g[d].key=="thematic_map_fullsize"){b.thematicMapFullsize=g[d].value}if(g[d].key=="dataview_info_as_popup"){b.dataviewInfoAsPopup=g[d].value}if(g[d].key=="tools_panel_bottom_logo_url"){b.toolsPanelBottomLogoUrl=g[d].value;b.toolsPanelBottomLogo=true}if(g[d].key=="thematic_map_show_on_startup"){b.thematicMapShowOnStartup=g[d].value}if(g[d].key=="openid_enabled"){b.openIdLoginEnabled=g[d].value}}GeoMind.utils.DictionaryManager.saveRawDataDictionary("configs",g)},addProjections:function(g){var h=g.length;for(var b=0;b<h;b++){Proj4js.defs["EPSG:"+g[b].epsg]=g[b].proj4j}},onConfigLoadFailure:function(b){this.giveFailureFeedback(b)},giveFailureFeedback:function(b){var g;if(b.response.exception){if(b.response.exception.code){g=this.lang.getString(b.response.exception.code)}else{g=b.response.exception.msg}}else{g=this.lang.getString("exception_unknown")}this.loadMask.hideLoadMask();Ext.Msg.show({title:this.lang.getString("exception_title"),msg:g,icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK,fn:function(){window.location.href=window.location.href}})},getGuiDescription:function(){return this.cfgDataManager.configData.maps[0].description},showPopup:function(){var q=this,g=q.popup;if(g){var h=g[GeoMind.lang.Lang.langCode]||g[GeoMind.lang.Lang.defaultLangCode];if(h){var w=q.hashCode(h),A="popup_"+__guuid__;if(g.always_show||Ext.util.Cookies.get(A)!=w.toString()){var z=Ext.getBody().getWidth()-10,b=[],o,B=function(C){if(C.getCharCode()==27){o.close()}};if(!g.always_show){b.push({xtype:"checkbox",dataIndex:"noShow",boxLabel:q.lang.getString("noShow"),padding:"0 0 0 5"})}b.push("->",{xtype:"button",padding:5,text:q.lang.getString("closeWelcomePopup"),handler:function(){o.close()}});g.width=g.width||300;o=Ext.create("Ext.window.Window",{width:g.width<z?g.width:z,header:false,closable:false,modal:true,layout:"fit",overflowY:"auto",items:[{xtype:"component",padding:h.indexOf("<div")==0?0:15,html:h}],bbar:b,listeners:{close:function(){Ext.getBody().un(Ext.EventManager.getKeyEvent(),B);if(!g.always_show&&o.down("[dataIndex=noShow]").getValue()){Ext.util.Cookies.set(A,w,Ext.Date.add(new Date(),Ext.Date.YEAR,10))}},render:function(){var C=o.getHeight(),D=Ext.getBody().getHeight()-30;if(C>D){o.setHeight(D)}}}});Ext.getBody().on(Ext.EventManager.getKeyEvent(),B);Ext.defer(function(){o.show()},200,q)}}}},hashCode:function(b){return b.split("").reduce(function(h,g){h=((h<<5)-h)+g.charCodeAt(0);return h&h},0)},launchApp:function(E){var C=this;this.loadMask.showLoadMask(this.lang.getString("launchApp"));
1if(GeoMind.lang.Lang.langCode=="nb"){Ext.util.Format.thousandSeparator=" "}this.cfgDataManager=Ext.create("GeoMind.data.coreCfg.Standard");this.moduleController.registerModule(this.cfgDataManager);this.cfgDataManager.loadRawConfigData(E.response.data);this.mapPanel=Ext.create("GeoMind.map.MapPanel",{startDefault:false,enforceBaseLayers:true,MapClass:Client.OLMap});Client.AppLogic.mapPanel=C.mapPanel;this.moduleController.registerModule(this.mapPanel);GeoMind.utils.Clipboard.setData("mapPanel",this.mapPanel);this.toolsPanel=Ext.create("Client.module.ToolPanel",{tool_width:this.tool_width,toolsPanelBottomLogo:this.toolsPanelBottomLogo,toolsPanelBottomLogoUrl:this.toolsPanelBottomLogoUrl,hidden:this.tool_state=="hidden"||this.tool_state=="min_hidden"||Ext.getBody().getWidth()<600,minimal:this.tool_state=="min_hidden"||this.tool_state=="min_expanded"});this.toolsPanel.view.region="east";this.moduleController.registerModule(this.toolsPanel);this.toolsPanel.updateCustomInfo(this.getGuiDescription());this.searchPanel=Ext.create("Client.module.map.search.Standard",{defaultZoomLevel:C.search_zoom_level,parentController:this.moduleController});this.moduleController.registerModule(this.searchPanel);this.notificationCenter=Ext.create("Client.module.map.notificationCenter.NotificationCenter",{parentController:this.moduleController});this.moduleController.registerModule(this.notificationCenter);this.initiateModules();this.shouldAddHik();this.shareLoader=Ext.create("Client.module.tool.share.Loader");this.moduleController.registerModule(this.shareLoader);this.mapPanel.view.region="center";var h=new Ext.create("Ext.container.Container",{flex:1,layout:"border",items:[this.mapPanel.view]});var D=Ext.create("Ext.container.Viewport",{layout:{type:"hbox",align:"stretch"},items:[h,this.toolsPanel.view]});var B=C.getInitialExtent(C.cfgDataManager.configData.maps[0]),q=C.getZoomLevels(C.cfgDataManager.configData.maps[0]),F=C.getMaxExtent(C.cfgDataManager.configData.maps[0]),A=C.restoreExtent(B,q,F,C.retain_map_view);this.mapPanel.loadMap({map_uuid:this.cfgDataManager.configData.maps[0].uuid,cfgData:this.cfgDataManager.configData,userExtent:A,userUuid:C.user_uuid});if(C.search_zoom_level){this.mapPanel.map.search_zoom_level=C.search_zoom_level}map=this.mapPanel.map;map.parentView=h;var z=this.toolsPanel,b=window.innerWidth,w=function(){function G(){if(z.collapsed&&window.innerWidth<600){z.view.hide()}b=window.innerWidth}if(window.innerWidth!=b){G()}else{Ext.defer(G,200)}},o=function(){this.storeExtent(this.mapPanel.map,q,B,F)};map.events.register("moveend",this,o);if((this.tool_state=="expanded"||this.tool_state=="min_expanded")&&z.tools.length>0&&!z.tools[0].btn.hidden){setTimeout(function(){z.switchTools(z.tools[0])},1)}if(typeof __use_dsb_sambas_url_api__!="undefined"&&C.sambasAuth&&C.sambasAuth.settings&&C.sambasAuth.settings.isValid){if(C.sambasAuth.settings.sambasExtent&&C.modules.dsb_sambas){setTimeout(function(){z.switchTools(C.modules.dsb_sambas)},1)}else{if(C.sambasAuth.settings.brisExtent){C.sambasAuth.initBris(C.mapPanel.map);if(C.modules.av_layer_dimension){setTimeout(function(){z.switchTools(C.modules.av_layer_dimension)},1)}}else{if(C.sambasAuth.settings.nodnettExtent){C.sambasAuth.initNodnett(C.mapPanel.map)}}}}if(window.screen.onmozorientationchange){window.screen.onmozorientationchange=w}else{if(window.addEventListener){window.addEventListener("orientationchange",w)}}if(this.toolsPanel.tools.length==0){this.toolsPanel.view.destroy();this.toolsPanel.toggleBtn.destroy()}this.loadMask.hideLoadMask();if(this.active_category){this.activateCategory(this.active_category)}C.showPopup();if(C.isBackupSite){var g=Ext.create("Ext.window.Window",{frameHeader:false,closable:false,draggable:false,resizable:false,width:250,html:'<span class="a3-icon icon-warning a3-left" style="padding: 10px 0; color: #a00"></span><div style="padding: 10px;"> '+C.lang.getString("backup_site_warning")+"</div>"}).show().anchorTo(Ext.getBody(),"tc-tc")}},getInitialExtent:function(g){var b;g.links.forEach(function(h){if(h.child_type_internal_name=="projection"){b=h.extended_data.initial_extent}});return b},getMaxExtent:function(g){var b;g.links.forEach(function(h){if(h.child_type_internal_name=="projection"){b=h.extended_data.max_extent}});return b},getZoomLevels:function(b){var g;b.links.forEach(function(h){if(h.child_type_internal_name=="projection"){g=h.extended_data.num_zoom_levels}});return g},activateCategory:function(b){var g=GeoMind.utils.Url,h=parseInt(g.getUrlParam("cat"));if(isNaN(h)){h=null}if(h&&this.modules.av_url_api){}else{Client.AppLogic.dispatchEvent("setDefaultTheme",b)}},restoreExtent:function(A,z,b,o){if(!this.disableRestoreExtent&&localStorage){var q=localStorage.getItem("gui-userExtent");var w=localStorage.getItem(__guuid__+"-userExtent");
1if(q&&w){q=Ext.JSON.decode(q,true);w=Ext.JSON.decode(w,true);var g=w.epsg||null;var h=q.epsg||null;if(q&&o&&q.guuid!==__guuid__&&q.initialExtent===A&&q.maxExtent===b&&q.zoomLevels==z&&g&&h&&g===h&&Date.now()-q.timestamp<86400000*4){return{zoom:q.zoom,center:Ext.apply(new OpenLayers.LonLat(),q.center)}}else{if(q&&q.guuid===__guuid__&&w.initialExtent===A&&Date.now()-q.timestamp<86400000*4){return{zoom:w.zoom,center:Ext.apply(new OpenLayers.LonLat(),w.center)}}}}}return null},storeExtent:function(g,h,o,b){if(localStorage&&g&&g.getZoom()!=0){localStorage.setItem("gui-userExtent",Ext.JSON.encode({timestamp:Date.now(),center:g.getCenter(),zoom:g.getZoom(),initialExtent:o,epsg:g.getProjection(),guuid:__guuid__,zoomLevels:h,maxExtent:b}));localStorage.setItem(__guuid__+"-userExtent",Ext.JSON.encode({timestamp:Date.now(),center:g.getCenter(),zoom:g.getZoom(),initialExtent:o,epsg:g.getProjection()}))}},getSearchUrl:function(b){var g=this;g.moduleController.registerModule("Client.module.map.search.Register",{useSessionFilter:b})},shouldAddHik:function(){var o=this,h=location.search,b;var w=h.substr(h.indexOf("?")+1).split("&");for(var g=0;g<w.length;g++){var q=w[g];if(q.indexOf("hik_key")>-1){b=q.split("=")[1];break}}if(!o.modules.hendelserikart&&b){Ext.Ajax.request({async:false,url:"WebServices/client/HendelserIKart.asmx/CheckForValidKey",params:Ext.JSON.encode({key:b}),method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(o.hikCallbackSuccess,o)})}},hikCallbackSuccess:function(b){var g=this;b=Ext.JSON.decode(b.responseText).d;if(b.success){g.modules.hendelserikart=g.moduleController.registerModule("Kystverket.tool.hendelserikart.HendelserIKart",{});g.toolsPanel.addTool(g.modules.hendelserikart);g.setModuleActive(g.modules.hendelserikart,true)}},onUserAuthenticated:function(b){if(!b.noConfigReload){localStorage.removeItem(__guuid__+"-scatOperation");this.loadMask.showLoadMask(this.lang.getString("on_authencticate_text"));this.getConfig()}},onUserSignedOut:function(){this.loadMask.showLoadMask(this.lang.getString("on_signed_out_text"));this.getConfig()},getConfig:function(){var g=this,b=g.toolsPanel.rightContainerContent.getLayout();delete g.user_uuid;g.activeItem=b.getActiveItem();g.cfgLoader.on("configLoaded",g.onAuthCfgLoaded,g);g.cfgLoader.on("configLoadFailure",g.onAuthCfgFailure,g);g.cfgLoader.pullConfig()},onAuthCfgLoaded:function(o){var h=this,g=h.toolsPanel.rightContainerContent.getLayout();h.cfgLoader.un("configLoaded",h.onAuthCfgLoaded,h);h.cfgLoader.un("configLoadFailure",h.onAuthCfgFailure,h);h.cfgDataManager.loadRawConfigData(o.response.data);h.initiateModules();var z=h.getInitialExtent(h.cfgDataManager.configData.maps[0]),w=h.getZoomLevels(h.cfgDataManager.configData.maps[0]),b=h.getMaxExtent(h.cfgDataManager.configData.maps[0]),q=h.restoreExtent(z,w,b,h.retain_map_view);h.extractConfigs(o.response.data);h.mapPanel.loadMap({map_uuid:h.cfgDataManager.configData.maps[0].uuid,cfgData:h.cfgDataManager.configData,userExtent:q,userUuid:h.user_uuid});h.toolsPanel.updateToolWidth();if(!h.toolsPanel.collapsed){g.setActiveItem(h.activeItem);h.toolsPanel.reactivateTool()}if(this.active_category){this.activateCategory(this.active_category)}h.loadMask.hideLoadMask()},onAuthCfgFailure:function(b){this.loadMask.hideLoadMask();this.cfgLoader.un("configLoadFailure",this.onAuthCfgFailure,this)},deactivateModules:function(){this.toolsPanel.removeAll();this.searchPanel.removeAll();if(this.modules.av_map_info){this.modules.av_map_info.resetAgents()}Ext.each(this.mapInfoTools,function(b){b.unregister()});this.mapInfoTools=[];for(m in this.modules){this.setModuleActive(this.modules[m],false)}},setModuleActive:function(b,g){if(Ext.isFunction(b._setActive)){b._setActive(g)}},initiateModules:function(){var E=this,ad;this.deactivateModules();var g=this.cfgDataManager.configData.modules,w=[],A=[],L=[],C=g.map(function(ag){return ag.internal_name});if(C.indexOf("av_attribution")==-1){g.push({internal_name:"av_attribution"})}if(C.indexOf("av_layer_manager_pro")==-1){g.push({hidden:true,internal_name:"av_layer_manager_pro"})}if(E.layMngActive){g.push({internal_name:"av_layer_manager_active"})}if(C.indexOf("av_advrtm")>0){g.unshift({internal_name:"av_advrtm_info"})}var M=C.indexOf("av_mouse_coords");if(M>0){var W=g[M];Ext.Array.remove(g,W);g.unshift(W)}var O=C.indexOf("av_search_standard");if(O!=-1){if(C.indexOf("av_search_addresses")==-1){g.splice(O,0,{internal_name:"av_search_addresses"})}if(C.indexOf("av_search_names")==-1){g.splice(O,0,{internal_name:"av_search_names"})}if(C.indexOf("av_search_theme_meta")==-1){g.splice(O,0,{internal_name:"av_search_theme_meta"})}if(C.indexOf("av_search_theme_data")==-1){g.splice(O,0,{internal_name:"av_search_theme_data"})}}g.push({internal_name:"av_digi_theme_form"});Ext.each(E.cfgDataManager.configData.layers,function(ah){var ag=Adaptive.utils.Config.getThemeData(ah);if(ag&&ag.is_digi_theme){g.push({internal_name:"av_digi_theme_batch_edit"});g.push({internal_name:"av_digi_theme_batch_delete"});g.push({internal_name:"av_digi_theme_statistic_view"});if(!E.disableDigitizeButton){g.push({internal_name:"av_digitize_button"})}return false}});Ext.each(g,function(ag){w.push(ag.internal_name)});Ext.iterate(this.modules,function(ag){A.push(ag)}
1,this);Ext.Array.difference(A,w).forEach(function(ag){this.moduleController.unregisterModule(this.modules[ag]);delete this.modules[ag]},this);GeoMind.utils.DictionaryManager.updateRawDataDictionary("modules",w);this.mapInfoTools=[];var Q=false;if(E.sambasAuth){Q=true}var ab=g.reduce(function(ah,ag){ah[ag.internal_name]=ag;return ah},{});for(W in g){var ac=g[W].internal_name,H=false;switch(ac){case"av_attribution":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.Attribution",{})}break;case"av_nav":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.Navigation",{disableZoomToPosition:E.disableZoomToPosition})}break;case"av_mouse_coords":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.Position",{projections:GeoMind.utils.DictionaryManager.getDictionary("projections"),display_epsg:this.display_epsg})}break;case"av_layer_manager":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.layerManager.Standard",{mapLvlController:this.moduleController,thematicMapFullsize:E.thematicMapFullsize,thematicMapShowOnStartup:E.thematicMapShowOnStartup,changeOnClick:true})}if(!E.modules.av_layer_refresher){E.modules.av_layer_refresher=E.moduleController.registerModule("Client.module.map.utils.LayerRefresher",{parentController:E.moduleController,layerRefreshInterval:E.autoRefresh&&E.autoRefresh.layerRefreshInterval,internalLayerUpdateMultiplier:E.autoRefresh&&E.autoRefresh.internalLayerUpdateMultiplier})}break;case"av_data_view":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.dataView.DataView",{serviceUrl:"WebServices/client/DataView.asmx/",parentController:this.moduleController,defaultZoomLevel:E.search_zoom_level,dataviewInfoAsPopup:E.dataviewInfoAsPopup,shouldDeactivateFor:["av_digitised_objects","av_share","hendelserikart","ksat"]})}break;case"av_map_info":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.Standard",{parentController:this.moduleController,display_epsg:this.display_epsg,disableFeatureCopy:!!this.disableFeatureCopy,shouldDeactivateFor:["hendelserikart","apn_navigate_data"],unitHeight:E.unitHeight,wmsProxyUrl:E.wmsProxyUrl,isNorwegianInstance:E.isNorwegianInstance,draggableFeatureInfo:E.draggableFeatureInfo,showPdfExport:!E.featInfoHidePdfExport,showNoDataColumns:!E.featInfoHideNoData,defaultZoomLevel:E.search_zoom_level})}break;case"av_url_api":if(!this.modules.av_url_api){this.modules.av_url_api=this.moduleController.registerModule("Client.module.map.UrlApi",{urlApiConfig:E.urlApiConfig,defaultZoomLevel:E.search_zoom_level})}break;case"av_search_by_map":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.utils.SearchByMap",{parentController:E.moduleController,showPdfExport:!E.featInfoHidePdfExport})}break;case"av_search_suggest":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.Suggest",{serviceUrl:E.searchSuggestServiceUrl})}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_single":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.Single")}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_theme_data":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.ThemeData")}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_theme_meta":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.ThemeMeta")}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_names":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.Names")}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_addresses":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.Addresses")}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_themes":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.Standard",{searchItems:"AdaptiveThemes",searchType:"themes"})}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_nothemes":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.search.agents.Standard",{searchItems:"AdaptiveNames,AdaptiveAddresses",searchThemes:false,searchType:"nothemes"})}E.searchPanel.addAgent(E.modules[ac]);break;case"av_search_matrikkel_property":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.search.agents.matrikkel.Property",{})}this.searchPanel.addAgent(this.modules[ac]);var ac="av_matrikkel_panel";if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.matrikkel.Standard",{defaultZoomLevel:E.search_zoom_level,parentController:this.moduleController})}var aa=false;Ext.each(this.toolsPanel.tools,function(ag){if(ag.tool.internal_name==ac){aa=true;return false}});if(!aa){this.toolsPanel.addTool(this.modules[ac])}break;case"av_search_vegvesen_vegreferanse":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.search.agents.veg.Vegreferanse",{})}this.searchPanel.addAgent(this.modules[ac]);break;case"av_search_matrikkel_owner":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.search.agents.matrikkel.Owner",{})}this.searchPanel.addAgent(this.modules[ac]);var ac="av_matrikkel_panel";if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.matrikkel.Standard",{parentController:this.moduleController})}var aa=false;Ext.each(this.toolsPanel.tools,function(ag){if(ag.tool.internal_name==ac){aa=true;return false}});if(!aa){this.toolsPanel.addTool(this.modules[ac])}break;case"av_search_matrikkel_building":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.search.agents.matrikkel.Building",{})}this.searchPanel.addAgent(this.modules[ac]);var ac="av_matrikkel_panel";if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.matrikkel.Standard",{parentController:this.moduleController})}var aa=false;Ext.each(this.toolsPanel.tools,function(ag){if(ag.tool.internal_name==ac){aa=true;return false}});if(!aa){this.toolsPanel.addTool(this.modules[ac])}break;case"av_legend":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.Legend",{showCategoryName:E.legendCategory,contentDependentLegend:E.legendContentDependent})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_digitised_objects":case"av_digitised_objects_pro":if(ac=="av_digitised_objects"&&this.modules.av_digitised_objects_pro){skipModules=true;break}if(ac=="av_digitised_objects_pro"&&this.modules.av_digitised_objects){skipModules=true;break}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.digitisedObjects.Standard",{parentController:this.moduleController,showNauticalDistance:!E.disableNautical,showHectare:E.enableHectare,advanced:ac=="av_digitised_objects_pro"})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_auth":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.authentication.Standard",{parentController:this.moduleController,registrationDisabled:this.registrationDisabled,requireRegistrationToken:this.requireRegistrationToken,registrationNameRequired:this.registrationNameRequired,registrationExtraFields:E.registrationExtraFields||{},crypto:this.authModule.crypto,login_text:E.login_text,register_text:E.register_text,passwordPolicies:E.passwordPolicies,openIdLoginEnabled:E.openIdLoginEnabled})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_share":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.share.Standard",{mapLvlC
1ontroller:this.moduleController,simplifyPrint:E.simplifyPrint,simplifyEmail:E.simplifyEmail,simplifyGeojpeg:E.simplifyGeojpeg,simplifyShare:E.simplifyShare,printAreaData:E.printAreaData,gridWmsUrl:E.mapserverPath+"grid.ashx",printServiceUrl:"WebServices/generic/Printing.asmx/",shareServiceUrl:"WebServices/client/Share.asmx/"})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_print_shortcut":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.print.Standard",{mapLvlController:E.moduleController,printAreaData:E.printAreaData,gridWmsUrl:E.mapserverPath+"grid.ashx",printServiceUrl:"WebServices/generic/Printing.asmx/"})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_drone":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Drone.notam.Notam")}break;case"av_layer_manager_active":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.layerManagerActive.Standard")}break;case"av_layer_manager_pro":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.layerManagerPro.Standard",{enableActive:!!E.layMngActive,categoryCheckboxes:!E.layMngHideMain,categoryPageHidden:E.layMngHideCat})}if(E.layMngActive){E.modules.av_layer_manager_active=E.moduleController.registerModule("Client.module.tool.layerManagerActive.Standard")}if(!E.modules.av_layer_refresher){E.modules.av_layer_refresher=E.moduleController.registerModule("Client.module.map.utils.LayerRefresher",{parentController:E.moduleController,layerRefreshInterval:E.autoRefresh&&E.autoRefresh.layerRefreshInterval,internalLayerUpdateMultiplier:E.autoRefresh&&E.autoRefresh.internalLayerUpdateMultiplier})}if(!g[W].hidden){E.toolsPanel.addTool(E.modules[ac])}break;case"av_user_data":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.userData.Standard",{cswType:E.csw_type?(E.csw_type.geonorge?"geonorge":(E.csw_type.dublincore?"dublincore":null)):null,mapLvlController:this.moduleController,preloadGeojson:E.my_data_preload_geojson,projections:GeoMind.utils.DictionaryManager.getDictionary("projections"),isNorwegianInstance:E.isNorwegianInstance})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_user_workspace":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.workspace.Standard",{serviceUrl:"webservices/client/UserProfile.asmx/",serviceMethods:{read:"Read",write:"Save"},mapLvlController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_collaboration":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.collaboration.Standard",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_forum":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.forum.Forum",{parentController:this.moduleController})}this.modules[ac].setAdmin(ad=="admin"||ad=="write");this.toolsPanel.addTool(this.modules[ac]);break;case"av_nscr_articles":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.rogalandfk.nscr.articles.Articles",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_nscr_ididit":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.rogalandfk.nscr.ididit.Ididit",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_toolpage":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}var b=g[W].extended_data;if(typeof b=="string"||b instanceof String){b=Ext.JSON.decode(b)}if(!b){break}var S=ac+b.pageid;if(this.modules[S]){this.modules[S].cleanUp();delete this.modules[S]}if(b.pageid){if(!this.modules[S]){this.modules[S]=this.moduleController.registerModule("Client.module.tool.toolPage.ToolPage",{parentController:this.moduleController,extended_data:b,internal_name:S,isAdmin:(ad=="admin"||ad=="write")})}this.toolsPanel.addTool(this.modules[S])}break;case"kv_geodata":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.geodata.Geodata",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"fb_incident":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.fartoysbaser.incident.Incident",{})}this.toolsPanel.addTool(this.modules[ac]);L.push({agent:this.moduleController.registerModule("Kystverket.map.fartoysbaser.IncidentAgent")});break;case"fb_print_map":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.fartoysbaser.incident.PrintMap",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"bw_area_type":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Barentswatch.areatool.Areatool",{parentController:this.moduleController})}break;case"av_bw_print_shortcut":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Barentswatch.print.Standard",{mapLvlC
1ontroller:E.moduleController,printAreaData:E.printAreaData,gridWmsUrl:E.mapserverPath+"grid.ashx",wmsUrl:E.mapserverPath+"mapserv.ashx",printServiceUrl:"WebServices/generic/Printing.asmx/"})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_bw_print_email_shortcut":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Barentswatch.printEmail.Standard",{mapLvlController:E.moduleController,printAreaData:E.printAreaData,gridWmsUrl:E.mapserverPath+"grid.ashx",wmsUrl:E.mapserverPath+"mapserv.ashx",printServiceUrl:"WebServices/generic/Printing.asmx/"})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_time_slider_simple":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.timesliderSimple.TimeSlider",{defaultTime:E.defaultTime,defaultAllMonths:E.time_default_all_months})}break;case"arctic_area_traffic":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.havbase.ArcticAreaTraffic",{})}E.modules[ac].setPermission(ad);E.toolsPanel.addTool(E.modules[ac]);break;case"arctic_area_traffic_custom":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.havbase.ArcticAreaTrafficCustom",{parentController:E.moduleController})}E.modules[ac].setPermission(ad);E.toolsPanel.addTool(E.modules[ac]);break;case"arctic_pame_ports":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.ArcticPamePorts",{})}E.modules[ac].setPermission(ad);this.toolsPanel.addTool(this.modules[ac]);break;case"arctic_distance_sailed":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.ArcticDistanceSailed",{})}E.modules[ac].setPermission(ad);this.toolsPanel.addTool(this.modules[ac]);break;case"arctic_passlines":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.ArcticPasslines",{})}E.modules[ac].setPermission(ad);this.toolsPanel.addTool(this.modules[ac]);break;case"arctic_passlines_custom":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.havbase.ArcticPasslinesCustom",{parentController:E.moduleController})}E.modules[ac].setPermission(ad);E.toolsPanel.addTool(E.modules[ac]);break;case"layerDimensionSlider":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.map.havbase.Standard",{defaultLayerUuids:Adaptive.utils.Config.getConfig(g[W],"defaultLayerUuids")})}break;case"norwegian_ports":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianPorts",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"norwegian_passlines":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianPasslines",{})}this.toolsPanel.addTool(this.modules[ac]);break;
1case"norwegian_report_1_0":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianReport_1_0",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"norwegian_report_2_0":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianReport_2_0",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"norwegian_report_2_2":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianReport_2_2",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"norwegian_report_2_3":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianReport_2_3",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"norwegian_report_3_0":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianReport_3_0",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"norwegian_report_3_2":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.NorwegianReport_3_2",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"havbase_about":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.HavbaseAbout",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"tail_plot_module":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.TailPlotModule",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"havbase_stat_module":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.havbase.StatisticsModule",{})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_mapinfo_tool_weather":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Weather",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_suntimes":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.SunTimes",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_lovdata_DISABLED":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Lovdata",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_marinogram":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Marinogram",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_streetview":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.StreetView",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_vegbilder":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Vegbilder",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_vegkart":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Vegkart",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_elevation":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.ElevationProfile",{parentController:this.moduleController,proxy:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config?g[W].config.configs:null,"proxy")})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_census":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Census",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_blom":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Blom",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_sealevel":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.SeaLevel",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_agents_vegvesen":if(!E.modules.av_mapinfo_agents_vegvesen){E.modules.av_mapinfo_agents_vegvesen=E.moduleController.registerModule("Client.module.map.info.agents.Vegvesen",{})}L.push({agent:E.modules.av_mapinfo_agents_vegvesen});break;case"ksat":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.ksat.Ksat",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"scatOperation":ad="";var Z,K;if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission");Z=Adaptive.utils.Config.getConfig(g[W].config.configs,"activeCategoryId");K=Adaptive.utils.Config.getConfig(g[W].config.configs,"plasticActiveCategoryId")}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.scat.OperationManager",{parentController:E.moduleController,activeCategoryId:Z,plasticActiveCategoryId:K,display_epsg:E.display_epsg,hasPlastic:!!(ab.scat_plastic&&ab.scat_plastic.config)})}E.modules[ac].setPermission(ad);E.toolsPanel.addTool(E.modules[ac]);if(ad==="admin"||ad==="write"){var D="scat_incident_simulator";if(!E.modules[D]){E.modules[D]=E.moduleController.registerModule("Kystverket.tool.scat.IncidentSimulator",{parentController:this.moduleController})}E.toolsPanel.addTool(E.modules[D])}break;case"scatStatistics":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.scat.ScatStatistics",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"scat":ad="";var z,N,R,X,V;if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission");z=Adaptive.utils.Config.getConfig(g[W].config.configs,"sharedDataCat");N=Adaptive.utils.Config.getConfig(g[W].config.configs,"integration");V=Adaptive.utils.Config.getConfig(g[W].config.configs,"tiltakskortBackend");tiltakskortDigiThemeUuid=Adaptive.utils.Config.getConfig(g[W].config.configs,"tiltakskortDigiThemeUuid")}if(ab.scat_plastic&&ab.scat_plastic.config){R=true;X=Adaptive.utils.Config.getConfig(ab.scat_plastic,"permission")}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.scat.Scat",{parentController:this.moduleController,sharedDataCat:z,integration:N,display_epsg:E.display_epsg,hasPlastic:R,tiltakskortBackend:V,tiltakskortDigiThemeUuid:tiltakskortDigiThemeUuid})}this.modules[ac].setPermission(ad,X);this.toolsPanel.addTool(this.modules[ac]);if(!this.modules.scat_dataview){this.modules.scat_dataview=this.moduleController.registerModule("Kystverket.map.scat.dataView.DataView",{serviceUrl:"WebServices/kystverket/scat/DataView.asmx/",parentController:this.moduleController,shouldDeactivateFor:["av_digitised_objects","av_share","hendelserikart"]})}this.setModuleActive(this.modules.scat_dataview,true);this.modules.scat_dataview.setPermission(ad);if(!E.modules.scat_map_info_agent){E.modules.scat_map_info_agent=E.moduleController.registerModule("Kystverket.map.scat.info.ScatSearchAgent")}L.push({agent:E.modules.scat_map_info_agent,top:true});if(!this.modules.scat_search){this.modules.scat_search=this.moduleController.registerModule("Kystverket.map.scat.search.ScatAgent",{defaultZoomLevel:E.search_zoom_level})}E.searchPanel.addAgent(E.modules.scat_search);if(!this.modules.scat_search_ship){this.modules.scat_search_ship=this.moduleController.registerModule("Kystverket.map.scat.search.ShipAgent",{defaultZoomLevel:E.search_zoom_level})}E.searchPanel.addAgent(E.modules.scat_search_ship);break;case"scat_search_ship":if(!this.modules.scat_search_ship){this.modules.scat_search_ship=this.moduleController.registerModule("Kystverket.map.scat.search.ShipAgent",{defaultZoomLevel:E.search_zoom_level})}E.searchPanel.addAgent(E.modules.scat_search_ship);break;case"kb_map_info_ais_buffer":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.map.scat.info.AisBuffer",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;
1case"scat_import":ad="";if(g[W].config){ad=Adaptive.utils.Config.getConfig(g[W],"permission")}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.scat.ScatImport",{parentController:E.moduleController,externalDataActive:E.scatExternalDataActive,defaultZoomLevel:E.search_zoom_level})}E.modules[ac].setPermission(ad);E.toolsPanel.addTool(E.modules[ac]);break;case"scat_drift_analysis":ad="";var Y,o;if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission");Y=Adaptive.utils.Config.getConfig(g[W],"driftAnalysisCat");o=Adaptive.utils.Config.getConfig(g[W],"historicalDriftAnalysisCat")}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.scat.ScatDriftAnalysis",{parentController:this.moduleController,driftAnalysisCat:Y,historicalDriftAnalysisCat:o,wmsUrl:E.mapserverPath+"mapserv.ashx"})}if(ad=="write"||ad=="admin"){this.toolsPanel.addTool(this.modules[ac])}break;case"scat_public":var h=window.location.href.split(__baseurl__).slice(-1)[0],J=h.split("/");if(J.length<2){break}var I=J.slice(-1)[0],P=I.indexOf("?");I=I.substring(0,P==-1?I.length:P);if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.scat.ScatPublic",{parentController:this.moduleController,publicUrl:I})}break;case"kystverket_fartsbegrensning_eksport":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.fartsbegrensningEksport.Geodata",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"kystverket_fartsbegrensning":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.fartsbegrensning.StandardRestriksjonsomraade",{parentController:this.moduleController,geometryType:"polygon"})}this.toolsPanel.addTool(this.modules[ac]);break;case"kystverket_farvannsskilt":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.fartsbegrensning.StandardSkilt",{parentController:this.moduleController,geometryType:"point"})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_time_slider":var ae=w.indexOf("scat")!=-1;if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.timeslider.TimeSlider",{parentController:this.moduleController,enableAnalyzeMode:ae})}else{this.modules[ac].enableAnalyzeMode=ae}break;case"av_digitize_button":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.utils.DigitizeButton",{activeThemeDigitizeButton:this.activeThemeDigitizeButton})}break;case"av_data_refresh":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.utils.DataRefresh",{})}break;case"av_geodata_download":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.geodataDownload.GeodataDownload",{parentController:this.moduleController,projections:GeoMind.utils.DictionaryManager.getDictionary("projections"),isNorwegianInstance:E.isNorwegianInstance})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_google_analytics":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.GoogleAnalytics",{trackerid:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"id")})}break;case"apn_navigate_data_troms":case"apn_navigate_data_finnmark":case"apn_navigate_data_po7":var af;if(g[W].config){af={county:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"county")}}if(!af){break}var S=ac+af.county;if(this.modules[S]){this.modules[S].deactivate();delete this.modules[S]}
1if(af.county){if(!this.modules[S]){this.modules[S]=this.moduleController.registerModule("AkvaplanNiva.navigate_data.NavigateData",{parentController:this.moduleController,moduleData:af,internal_name:S})}this.toolsPanel.addTool(this.modules[S])}break;case"apn_navigate_data_location_troms":case"apn_navigate_data_location_finnmark":case"apn_navigate_data_location_po7":var af;if(g[W].config){af={county:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"county"),email_recipient:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"email_recipient")}}if(!af){break}var S=ac+af.county;if(this.modules[S]){this.modules[S].deactivate();delete this.modules[S]}if(af.county){if(!this.modules[S]){this.modules[S]=this.moduleController.registerModule("AkvaplanNiva.navigate_data.NavigateDataLocation",{parentController:this.moduleController,moduleData:af,internal_name:S})}this.toolsPanel.addTool(this.modules[S])}break;case"av_digi_theme_form":E.addDigiThemePlugin("form");E.addDigiThemePlugin("media");break;case"av_digi_theme_batch_edit":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.dataView.batch.BatchEdit",{parentController:E.moduleController})}break;case"av_digi_theme_batch_delete":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.dataView.batch.BatchDelete",{parentController:E.moduleController})}break;case"av_digi_theme_statistic_view":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.dataView.statistic.StatisticView",{parentController:E.moduleController})}break;case"av_digitheme_dataview_import":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("GeoMind.base.Module",{parentController:E.moduleController,internal_name:ac})}break;case"av_school_transport":var G;if(g[W].config){G={useGrade:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"useGrade")}}if(!G){break}if(!this.modules.av_school_transport){this.modules.av_school_transport=this.moduleController.registerModule("SchoolTransport.FindDistance",{parentController:this.moduleController,moduleData:G})}this.toolsPanel.addTool(this.modules.av_school_transport);break;case"av_directions":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.directions.Directions",{parentController:E.moduleController,searchThemesFixed:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config?g[W].config.configs:null,"searchThemesFixed")})}if(!E.modules.av_directions_mapinfo){E.modules.av_directions_mapinfo=E.moduleController.registerModule("Client.module.map.info.tools.Directions",{parentController:E.moduleController})}E.mapInfoTools.push(E.modules.av_directions_mapinfo);E.toolsPanel.addTool(E.modules[ac]);break;case"av_stat_client":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.statistics.Statistics",{parentController:this.moduleController,iFrameUrl:GeoMind.utils.Data.extractConfigObjectByKey(g[W].config?g[W].config.configs:null,"iFrameUrl")})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_mapinfo_tool_emergency_poster":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.EmergencyPoster",{parentController:this.moduleController})}this.mapInfoTools.push(this.modules[ac]);break;case"av_reportbuilder":if(Ext.Array.contains(w,"av_digitised_objects_pro")||Ext.Array.contains(w,"av_digitised_objects")){if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.tool.report.ReportBuilder",{mapLvlController:this.moduleController,serviceUrl:"WebServices/generic/PrintReport.asmx/"})}this.toolsPanel.addTool(this.modules[ac])}break;case"kystverket_vrakdatabase":var G;if(g[W].config){G=g[W].config.configs}if(!G){break}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.vrakdatabase.VrakDatabase",{parentController:this.moduleController,moduleData:G})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_opplevNorge":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.opplevNorge.OpplevNorge",{parentController:E.moduleController,flickrApiKey:Adaptive.utils.Config.getConfig(g[W],"flickr_api_key")})}if(!E.modules.av_article_view){E.modules.av_article_view=E.moduleController.registerModule("Client.module.tool.article.ArticleView",{defaultZoomLevel:E.search_zoom_level,parentController:E.moduleController})}E.toolsPanel.addTool(E.modules[ac]);E.toolsPanel.addTool(E.modules.av_article_view);break;case"dsb_sambas":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Dsb.tool.s
1ambas.Sambas",{parentController:this.moduleController,serviceUrl:"WebServices/dsb/Sambas.asmx/",sambasSettings:this.sambasAuth.settings})}this.toolsPanel.addTool(this.modules[ac]);break;case"cim_info_module":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.fartoysbaser.cim.Cim",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_byggsok":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.byggsok.Byggsok",{parentController:E.moduleController})}E.toolsPanel.addTool(E.modules[ac]);break;case"av_scale_line":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.scaleLine.ScaleLine",{parentController:E.moduleController})}break;case"sf_stadnamn":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Fylkesatlas.stadnamn.Standard",{parentController:this.moduleController});this.toolsPanel.addTool(this.modules.sf_stadnamn)}break;case"av_article_generic":var b=g[W].extended_data||"{}",ad=Adaptive.utils.Config.getConfig(g[W],"permission"),q=Ext.decode(b.lang),T=Ext.decode(b.datasets)||[],B=Ext.decode(b.aconfig);if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.article.ArticleGeneric",{parentController:E.moduleController,datasets:Ext.clone(T),btnText:q.mainBtnText[GeoMind.lang.Lang.langCode],btnTip:q.mainBtnTip[GeoMind.lang.Lang.langCode],headerText:q.header_main[GeoMind.lang.Lang.langCode],glyph:b.glyph||"",infoText:q.infoText&&q.infoText[GeoMind.lang.Lang.langCode],crossHair:!B.crossHair,minZoom:B.minZoom,layers:E.cfgDataManager.configData.layers,defaultZoomLevel:E.search_zoom_level})}if(!E.modules.av_article_view){E.modules.av_article_view=E.moduleController.registerModule("Client.module.tool.article.ArticleView",{parentController:E.moduleController,defaultZoomLevel:E.search_zoom_level,shareUrl:B.share_url||"",sitekey:E.googleRecaptchaSitekey,commentView:!!B.articleComment,socialShare:!!B.share_url,datasets:Ext.clone(T)})}if(B.articleComment){if(!E.modules.av_article_comments){E.modules.av_article_comments=E.moduleController.registerModule("Client.module.tool.article.ArticleComments",{parentController:E.moduleController})}}if(B.search){if(!E.modules.av_search_article_generic){E.modules.av_search_article_generic=E.moduleController.registerModule("Client.module.map.search.agents.ArticleGeneric",{datasets:Ext.clone(T)})}E.searchPanel.addAgent(E.modules.av_search_article_generic)}E.modules.av_article_view.setPermission(ad);E.toolsPanel.addTool(E.modules[ac]);if(B.articleComment){E.modules.av_article_comments.setPermission(ad);E.toolsPanel.addTool(E.modules.av_article_comments)}E.toolsPanel.addTool(E.modules.av_article_view);break;case"av_layer_dimension":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.layerDimension.LayerDimension",{hideModule:E.dimLayMng,autoOn:E.dimLayMngAutoOn,parentController:E.moduleController})}E.modules[ac].setPermission(ad);if(!E.dimLayMng){E.toolsPanel.addTool(E.modules.av_layer_dimension)}break;case"av_loading_indicator":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.LoadingIndicator",{})}break;case"dialog_overview":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Dialog.view.overview.Overview",{parentController:E.moduleController})}this.toolsPanel.addTool(E.modules[ac]);break;case"samfunnsdialog_edit":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Dialog.view.edit.SamfunnsMessage",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"dialog_edit":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Dialog.view.edit.Message",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"driversolution":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Driversolution.view.admin.Admin",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"crm":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Crm.view.admin.Admin",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"diaryorder_diarymodule":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Diaryorder.view.DiaryMain",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"diaryorder_planmodule":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Diaryorder.view.PlanMain",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"diaryorder_ordermodule":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Diaryorder.view.OrderMain",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_info":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.info.Info",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_diary":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.diarydetail.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_tools":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.tools.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_calc":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.calc.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_message":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.message.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_plan":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.plan.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_dashboard":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.dashboard.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"fl_turredigering":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Fl.Turredigering.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"veg_dashboard_location":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Veg.view.dashboard_location.Form",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_kv_eiendomsportal":var G;if(g[W].config){G=g[W].config.configs}if(!G){break}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.eiendomsportal.EiendomsPortal",{parentController:this.moduleController,defaultZoomLevel:E.search_zoom_level,moduleData:G})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_mapinfo_tool_measure":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Measure",{parentController:this.moduleController,showNauticalDistance:!E.disableNautical})}this.mapInfoTools.push(this.modules[ac]);break;case"av_mapinfo_tool_measure_area":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.info.tools.MeasureArea",{parentController:E.moduleController,showHectare:E.enableHectare,showNauticalDistance:!E.disableNautical})}E.mapInfoTools.push(E.modules[ac]);break;case"av_mapinfo_traveltime":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.info.tools.Traveltime",{parentController:this.moduleController,showNauticalDistance:!E.disableNautical})}this.mapInfoTools.push(this.modules[ac]);break;case"av_compass_rose":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.compassRose.CompassRose")}break;case"av_map_grid":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Client.module.map.grid.Grid")}break;case"av_geointegrasjon":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.tool.geoIntegrasjon.GeoIntegrasjon",{parentController:E.moduleController,giOperations:E.giOperations,urlApiConfig:E.urlApiConfig,defaultZoomLevel:E.search_zoom_level})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_kv_ankring":var G;if(g[W].config){G=g[W].config.configs}if(!G){break}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.ankring.AnkringTool",{parentController:E.moduleController,defaultZoomLevel:E.search_zoom_level,moduleData:G})}E.toolsPanel.addTool(E.modules[ac]);break;case"av_kv_ankring_admin":var G;if(g[W].config){G=g[W].config.configs}if(!G){break}if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Kystverket.tool.ankring.AnkringToolAdmin",{parentController:E.moduleController,defaultZoomLevel:E.search_zoom_level,moduleData:G})}E.toolsPanel.addTool(E.modules[ac]);break;case"av_cim":if(!this.modules[ac]){var F=Adaptive.utils.Config.getConfig(g[W],"cimCatId");this.modules[ac]=this.moduleController.registerModule("Cim.Cim",{parentController:E.moduleController,cimCatId:parseInt(F),defaultZoomLevel:E.search_zoom_level});L.push({agent:this.moduleController.registerModule("Cim.map.LogAgent")},{agent:this.moduleController.registerModule("Cim.map.CimAgent",{defaultZoomLevel:E.search_zoom_level})})}break;case"kv_area_tool_skipstrafikk":if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.map.skipstrafikk.Skipstrafikk")}break;case"kystverket_route_info":var G;if(g[W].config){G=g[W].config.configs}if(!G){break}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.routeinfo.RouteInfo",{parentController:this.moduleController,moduleData:G})}this.toolsPanel.addTool(this.modules[ac]);break;case"kystverket_route_location_connect":var G;if(g[W].config){G=g[W].config.configs}if(!G){break}if(!this.modules[ac]){this.modules[ac]=this.moduleController.registerModule("Kystverket.tool.routeinfo.RouteLocationConnect",{parentController:this.moduleController,moduleData:G})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_app_reset":if(!E.modules[ac]){E.modules[ac]=E.moduleController.registerModule("Client.module.map.utils.AppReset")}break;case"av_advrtm":if(!this.modules[ac]){this.modules[ac]=this.modules[ac]=this.moduleController.registerModule("AdvRtm.AdvRtm",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_advrtm_info":if(!this.modules[ac]){this.modules[ac]=this.modules[ac]=this.moduleController.registerModule("AdvRtm.Info",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_sms_mass":if(!this.modules[ac]){this.modules[ac]=this.modules[ac]=this.moduleController.registerModule("Client.module.tool.SmsMass.SmsMass",{parentController:this.moduleController})}this.toolsPanel.addTool(this.modules[ac]);break;case"av_somm_renthav":ad="";if(g[W].config){ad=GeoMind.utils.Data.extractConfigObjectByKey(g[W].config.configs,"permission")}if(!this.modules[ac]){this.modules[ac]=this.modules[ac]=this.moduleController.registerModule("SOMM.tool.renthav.RenthavTool",{parentController:this.moduleController,isBestiller:ad=="admin",isRyddeaktor:ad=="write"})}this.toolsPanel.addTool(this.modules[ac]);break;case"":break}if(this.modules[ac]&&!H){this.setModuleActive(this.modules[ac],true)}}Ext.Array.each(this.mapInfoTools,function(ag){if(ag.register){ag.register()}});var U=this.modules.av_map_info;if(U&&L.length>
10){L.forEach(function(ag){U.addAgent(ag.agent,ag.top)})}this.getSearchUrl(Q)},addDigiThemePlugin:function(g){var b=this;if(!b.modules.av_digi_theme){b.modules.av_digi_theme=b.moduleController.registerModule("Client.module.tool.digiTheme.DigiTheme",{parentController:b.moduleController})}if(!b.toolsPanel.getToolByInternalName("av_digi_theme")){b.toolsPanel.addTool(b.modules.av_digi_theme)}b.modules.av_digi_theme.registerPlugin(g)}});Ext.define("Client.Overrides",{singleton:true,constructor:function(o){this.fixIe11Css();if(Ext.isIE11){Ext.ieVersion=11}Ext.JSON.encodeDate=function(z){return'"'+z.toISOString()+'"'};var b=Ext.grid.column.Action.prototype.defaultRenderer;Ext.override(Ext.grid.column.Action,{defaultRenderer:function(){var z=b.apply(this,arguments);return z.replace(/<img/g,"<span").replace(/\/>/g,"></span>").replace(/src="(data.*?)"/g,'style="display: inline-block;"').replace(/src="(.*?)"/g,'style="background-image: url($1); display: inline-block;"')}});Ext.override(Ext.window.MessageBox,{iconWidth:0});Ext.override(Ext.window.Window,{showWithin:function(z){Client.AppLogic.resizePopupWidth(this,z);this.show()}});if(typeof(__debug_baseurl__)!="undefined"){Ext.override(Ext.data.Connection,{setupUrl:function(A,z){var B=this.getForm(A);if(B){z=z||B.action}if(!z.contains(":")){z=__debug_baseurl__+z}return z}})}Ext.override(Ext.button.Button,{renderTpl:['<span id="{id}-btnWrap" role="presentation" class="{baseCls}-wrap','<tpl if="splitCls"> {splitCls}</tpl>','{childElCls}" unselectable="on">','<span id="{id}-btnEl" class="{baseCls}-button" role="presentation">','<span id="{id}-btnInnerEl" class="{baseCls}-inner {innerCls}','{childElCls}" unselectable="on">',"{text}","</span>",'<span role="presentation" id="{id}-btnIconEl" class="{baseCls}-icon-el {iconCls}','{childElCls} {glyphCls}" unselectable="on" style="','<tpl if="iconUrl">background-image:url({iconUrl});</tpl>','<tpl if="glyph && glyphFontFamily">font-family:{glyphFontFamily};</tpl>">','<tpl if="iconHtml">{iconHtml}</tpl>','<tpl if="glyph">&#{glyph};</tpl><tpl if="iconCls || iconUrl"> </tpl>',"</span>","</span>","</span>",'<tpl if="closable">','<span id="{id}-closeEl" role="presentation"',' class="{baseCls}-close-btn"','<tpl if="closeText">',' title="{closeText}" aria-label="{closeText}"',"</tpl>",">","</span>","</tpl>"],getTemplateArgs:function(){var B=this,A=B.glyph,C=Ext._glyphFontFamily,z;if(typeof A==="string"){z=A.split("@");A=z[0];C=z[1]}return{innerCls:B.getInnerCls(),splitCls:B.getSplitCls(),iconUrl:B.icon,iconCls:B.iconCls,iconHtml:B.iconHtml,glyph:A,glyphCls:A?B.glyphCls:"",glyphFontFamily:C,text:B.text||" ",closeText:B.closeText}},setIconHtml:function(z){z=z||"";var B=this,A=B.btnIconEl,C=B.iconHtml||"";B.iconHtml=z;if(z!=C){if(A){A.dom.innerHTML=z}B.fireEvent("iconchange",B,C,z)}return B}});Ext.override(Ext.tree.Column,{cellTpl:['<tpl for="lines">','<img src="{parent.blankUrl}" class="{parent.childCls} {parent.elbowCls}-img ','{parent.elbowCls}-<tpl if=".">line<tpl else>empty</tpl>" role="presentation"/>',"</tpl>",'<img src="{blankUrl}" class="{childCls} {elbowCls}-img {elbowCls}','<tpl if="isLast">-end</tpl><tpl if="expandable">-plus {expanderCls}</tpl>" role="presentation"/>','<tpl if="checked !== null">','<button type="button" {ariaCellCheckboxAttr}',' class="{childCls} {checkboxCls}<tpl if="checked"> {checkboxCls}-checked</tpl>"></button>',"</tpl>",'<img src="{blankUrl}" role="presentation" class="{childCls} {baseIconCls} ','{baseIconCls}-<tpl if="leaf">leaf<tpl else>parent</tpl> {iconCls}"','<tpl if="icon">style="background-image:url({icon})"</tpl>/>','<tpl if="href">','<a href="{href}" role="link" target="{hrefTarget}" class="{textCls} {childCls}">{value}</a>',"<tpl else>",'<span class="{textCls} {childCls}">{value}</span>',"</tpl>"]});Ext.override(Ext.grid.column.Check,{renderer:function(A,B){var C=Ext.baseCSSPrefix,z=C+"grid-checkcolumn";if(this.disabled){B.tdCls+=" "+this.disabledCls}if(A){z+=" "+C+"grid-checkcolumn-checked"}return'<span class="'+z+'"></span>'}});Ext.override(Ext.form.field.Checkbox,{fieldSubTpl:['<div class="{wrapInnerCls} {noBoxLabelCls}" role="presentation">','<tpl if="labelAlignedBefore">',"{beforeBoxLabelTpl}",'<label id="{cmpId}-boxLabelEl" {boxLabelAttrTpl} class="{boxLabelCls} {boxLabelCls}-{boxLabelAlign}" for="{id}">',"{beforeBoxLabelTextTpl}","{boxLabel}","{afterBoxLabelTextTpl}","</label>","{afterBoxLabelTpl}","</tpl>",'<button id="{id}" role="{role}" {inputAttrTpl}','<tpl if="tabIdx"> tabIndex="{tabIdx}"</tpl>','<tpl if="disabled"> disabled="disabled"</tpl>','<tpl if="fieldStyle"> style="{fieldStyle}"</tpl>',' class="{fieldCls} {typeCls} {inputCls} {childElCls} {afterLabelCls}" autocomplete="off" hidefocus="true"></button>','<tpl if="boxLabel && !labelAlignedBefore">',"{beforeBoxLabelTpl}",'<label id="{cmpId}-boxLabelEl" {boxLabelAttrTpl} class="{boxLabelCls} {boxLabelCls}-{boxLabelAlign}" for="{id}">',"{beforeBoxLabelTextTpl}","{boxLabel}","{afterBoxLabelTextTpl}","</label>","{afterBoxLabelTpl}","</tpl>","</div>",{disableFormats:true,compiled:true}]});Ext.override(Ext.form.field.Number,{getErrors:function(B){var A=this,D=Ext.form.field.Spinner.prototype.getErrors.apply(this,arguments),C=Ext.String.format,z;B=Ext.isDefined(B)?B:this.processRawValue(this.getRawValue());if(B.length<1){return D}B=String(B).replace(",",".");if(isNaN(B)){D.push(C(A.nanText,B))}z=A.parseValue(B);if(A.minValue===0&&z<0){D.push(this.negativeText)}else{if(z<A.minValue){D.push(C(A.minText,A.minValue))}}if(z>A.maxValue){D.push(C(A.maxText,A.maxValue))}return D},valueToRaw:function(A){var z=this;A=z.parseValue(A);A=z.fixPrecision(A);A=Ext.isNumber(A)?A:parseFloat(String(A).replace(",","."));A=isNaN(A)?"":String(A).replace(".",z.decimalSeparator);return A},parseValue:function(z){z=parseFloat(String(z).replace(",","."));return isNaN(z)?null:z},setMinValue:function(A){var z=this,B;z.minValue=Ext.Number.from(A,Number.NEGATIVE_INFINITY);z.toggleSpinners();if(z.disableKeyFilter!==true){B=z.baseChars+"";if(z.allowExponential){B+=",.e+-"}else{if(z.allowDecimals){B+=",."}if(z.minValue<0){B+="-"}}B=Ext.String.escapeRegex(B);z.maskRe=new RegExp("["+B+"]");if(z.autoStripChars){z.stripCharsRe=new RegExp("[^"+B+"]","gi")}}}});Ext.override(Ext.form.field.ComboBox,{onExpand:function(){var C=this,z=C.listKeyNav,B=C.selectOnTab,A=C.getPicker();if(z){z.enable()}else{z=C.listKeyNav=new Ext.view.BoundListKeyNav(C.inputEl,{boundList:A,forceKeyDown:true,tab:function(D){if(B){this.selectHighlighted(D);C.triggerBlur()}return true},enter:function(F){var D=A.getSelectionModel(),E=D.getCount();this.selectHighlighted(F);
1if(!C.multiSelect&&E===D.getCount()){C.collapse()}}})}if(B){C.ignoreMonitorTab=true}Ext.defer(z.enable,1,z);if(C.fireEvent("beforeinputfocus",C)!==false){C.inputEl.focus()}}});Ext.override(Ext.view.Table,{indexInStore:function(B){var A=this,B=B.isCollapsedPlaceholder?A.getNode(B):A.getNode(B,false);if(!B&&B!==0){return -1}if(!A.hasActiveGrouping()){var z=B.getAttribute("data-recordIndex");if(z){return parseInt(z,10)}}return A.dataSource.indexOf(A.getRecord(B))}});function h(D,B){if(typeof B.initialize==="function"&&D===D.prototype.initialize){var A=D.prototype;var z=OpenLayers.Util.extend({},D);D=B.initialize;D.prototype=A;OpenLayers.Util.extend(D,z)}OpenLayers.Util.extend(D.prototype,B);return D}OpenLayers.Layer.Google.v3.setGMapVisibility=function(C){var z=OpenLayers.Layer.Google.cache[this.map.id];var A=this.map;if(z){var H=this.type;var D=A.layers;var F;for(var E=D.length-1;E>=0;--E){F=D[E];if(F instanceof OpenLayers.Layer.Google&&F.visibility===true&&F.inRange===true){H=F.type;C=true;break}}var B=this.mapObject.getDiv();if(C===true){if(B.parentNode!==A.div){if(!z.rendered){B.style.visibility="hidden";var G=this;google.maps.event.addListenerOnce(this.mapObject,"tilesloaded",function(){z.rendered=true;B.style.visibility="";G.setGMapVisibility(true);G.moveTo(G.map.getCenter());z.googleControl.appendChild(A.viewPortDiv);G.setGMapVisibility(G.visible)})}else{z.googleControl.appendChild(A.viewPortDiv)}A.div.appendChild(B);google.maps.event.trigger(this.mapObject,"resize")}this.mapObject.setMapTypeId(H)}else{if(z.googleControl.hasChildNodes()){A.div.appendChild(A.viewPortDiv);A.div.removeChild(B)}}}};OpenLayers.Control.ModifyFeature.prototype.dragStart=function(A){var B=this,z=A.geometry.CLASS_NAME=="OpenLayers.Geometry.Point";if(!B.standalone&&((!A._sketch&&z)||!A._sketch)){if(B.toggle&&B.feature===A){B._unselect=A}B.selectFeature(A)}if(B.feature&&(A._sketch||z)){B.vertex=A}B.handlers.drag.stopDown=true;Client.AppLogic.dispatchEvent("mapPopupHide")};var g=OpenLayers.Control.ModifyFeature.prototype.collectDragHandle;OpenLayers.Control.ModifyFeature=h(OpenLayers.Control.ModifyFeature,{collectDragHandle:function(){g.apply(this,null);this.dragHandle.attributes.dragHandle=true;this.layer.drawFeature(this.dragHandle)},collectRadiusHandle:function(){var G=this.feature.geometry;var z=G.getBounds();var A=G.getCentroid();var H=new OpenLayers.Geometry.Point(A.x,A.y,A.z);var F=new OpenLayers.Geometry.Point(z.right,z.bottom,z.z);var E=new OpenLayers.Feature.Vector(F);var B=(this.mode&OpenLayers.Control.ModifyFeature.RESIZE);var D=(this.mode&OpenLayers.Control.ModifyFeature.RESHAPE);var C=(this.mode&OpenLayers.Control.ModifyFeature.ROTATE);F.move=function(S,R){OpenLayers.Geometry.Point.prototype.move.call(this,S,R);var T=this.x-H.x;var O=this.y-H.y;var U=T-S;var P=O-R;if(C){var J=Math.atan2(P,U);var I=Math.atan2(O,T);var M=I-J;M*=180/Math.PI;G.rotate(M,H)}if(B){var L,Q;if(D){L=O/P;Q=(T/U)/L}else{var N=Math.sqrt((U*U)+(P*P));var K=Math.sqrt((T*T)+(O*O));L=K/N}G.resize(L,H,Q)}};E._sketch=true;this.radiusHandle=E;this.radiusHandle.renderIntent=this.vertexRenderIntent;this.radiusHandle.attributes.radiusHandle=true;this.layer.addFeatures([this.radiusHandle],{silent:true})},initialize:function(B,A){A=A||{};this.layer=B;this.vertices=[];this.virtualVertices=[];this.virtualStyle=OpenLayers.Util.extend({},this.layer.style||this.layer.styleMap.createSymbolizer(null,A.vertexRenderIntent));this.virtualStyle.fillOpacity=0.3;this.virtualStyle.strokeOpacity=0.3;this.deleteCodes=[46,68];this.mode=OpenLayers.Control.ModifyFeature.RESHAPE;OpenLayers.Control.prototype.initialize.apply(this,[A]);if(!(OpenLayers.Util.isArray(this.deleteCodes))){this.deleteCodes=[this.deleteCodes]}var C={down:function(E){this.vertex=null;var F=this.layer.getFeatureFromEvent(this.handlers.drag.evt);if(F){this.dragStart(F)}else{if(this.clickout){this._unselect=this.feature}}},move:function(E){delete this._unselect;if(this.vertex){this.dragVertex(this.vertex,E)}},up:function(){var E=this.feature;this.handlers.drag.stopDown=false;if(this._unselect){this.unselectFeature(this._unselect);delete this._unselect}if(E){Client.AppLogic.dispatchEvent("disableInfoTool",{single:true})}else{Client.AppLogic.dispatchEvent("enableInfoTool")}},done:function(E){if(this.vertex){this.dragComplete(this.vertex)}}};var z={documentDrag:this.documentDrag,stopDown:false};var D={keydown:this.handleKeypress};this.handlers={keyboard:new OpenLayers.Handler.Keyboard(this,D),drag:new OpenLayers.Handler.Drag(this,C,z)}},moveLayerToTop:function(){if(!this.map){return}var z=Math.max(this.map.Z_INDEX_BASE.Feature-1,this.layer.getZIndex())+1;this.layer.setZIndex(z)}});OpenLayers.Format.GeoJSON=h(OpenLayers.Format.GeoJSON,{read:function(H,F,z){F=(F)?F:"FeatureCollection";var C=null;var B=null;if(typeof H=="string"){B=OpenLayers.Format.JSON.prototype.read.apply(this,[H,z])}else{B=H}if(!B){OpenLayers.Console.error("Bad JSON: "+H)}else{if(typeof(B.type)!="string"){OpenLayers.Console.error("Bad GeoJSON - no type: "+H)}else{if(this.isValidType(B,F)){switch(F){case"Geometry":try{C=this.parseGeometry(B)}catch(A){OpenLayers.Console.error(A)}break;case"Feature":try{C=this.parseFeature(B);C.type="Feature"}catch(A){OpenLayers.Console.error(A)}break;case"FeatureCollection":C=[];switch(B.type){case"Feature":try{C.push(this.parseFeature(B))}catch(A){C=null;OpenLayers.Console.error(A)}break;case"FeatureCollection":for(var D=0,E=B.features.length;D<E;++D){try{C.push(this.parseFeature(B.features[D]))}catch(A){C=null;OpenLayers.Console.error(A)}}break;default:try{var G=this.parseGeometry(B);C.push(new OpenLayers.Feature.Vector(G))}catch(A){C=null;OpenLayers.Console.error(A)}}break}}}}return C.filter(function(I){return I.geometry!=null})}});OpenLayers.Geometry.Point=h(OpenLayers.Geometry.Point,{initialize:function(A,C,B){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);this.x=parseFloat(A);this.y=parseFloat(C);
1if(B){this.z=parseFloat(B)}},toShortString:function(){return this.z!=null?(this.x+", "+this.y+", "+this.z):(this.x+", "+this.y)},getGeodesicArea:function(){return 0},getGeodesicLength:function(){return 0}});OpenLayers.Handler.Feature=h(OpenLayers.Handler.Feature,{moveLayerToTop:function(){if(!this.map){return}var z=Math.max(this.map.Z_INDEX_BASE.Feature-1,this.layer.getZIndex())+1;this.layer.setZIndex(z)}});OpenLayers.Control.DrawFeature=h(OpenLayers.Control.DrawFeature,{initialize:function(A,B,z){OpenLayers.Control.prototype.initialize.apply(this,[z]);this.callbacks=OpenLayers.Util.extend({done:this.drawFeature,modify:function(E,D){Client.AppLogic.dispatchEvent("disableInfoTool",{single:true});this.layer.events&&this.layer.events.triggerEvent("sketchmodified",{vertex:E,feature:D})},create:function(E,D){Client.AppLogic.dispatchEvent("disableInfoTool",{single:true});this.layer.events&&this.layer.events.triggerEvent("sketchstarted",{vertex:E,feature:D})}},this.callbacks);this.layer=A;this.handlerOptions=this.handlerOptions||{};this.handlerOptions.layerOptions=OpenLayers.Util.applyDefaults(this.handlerOptions.layerOptions,{renderers:A.renderers,rendererOptions:A.rendererOptions});if(!("multi" in this.handlerOptions)){this.handlerOptions.multi=this.multi}var C=this.layer.styleMap&&this.layer.styleMap.styles.temporary;if(C){this.handlerOptions.layerOptions=OpenLayers.Util.applyDefaults(this.handlerOptions.layerOptions,{styleMap:new OpenLayers.StyleMap({"default":C})})}this.handler=new B(this,this.callbacks,this.handlerOptions)}});OpenLayers.Layer.WMS.prototype.getFullRequestString=function(E,B){var A=this.map.getProjectionObject();var z=this.projection&&this.projection.equals(A)?this.projection.getCode():A.getCode();var D=(z=="none")?null:z;if(parseFloat(this.params.VERSION)>=1.3){var C=this.map.getProjectionObject().projCode;if(C.lastIndexOf("EPSG:326",0)===0&&(this.isBaseLayer&&this.url&&/\/\/gatekeeper\d+.geonorge.no\/BaatGatekeeper\/gk\/gk.nib_utm/.test(this.url[0]))||this.params.WGS84TOETRS89){this.params.CRS=C.replace("EPSG:326","EPSG:258")}else{this.params.CRS=D}}else{this.params.SRS=D}if(typeof this.params.TRANSPARENT=="boolean"){E.TRANSPARENT=this.params.TRANSPARENT?"TRUE":"FALSE"}return OpenLayers.Layer.Grid.prototype.getFullRequestString.apply(this,arguments)};OpenLayers.Layer.OSM.prototype.url=["https://a.tile.openstreetmap.org/${z}/${x}/${y}.png","https://b.tile.openstreetmap.org/${z}/${x}/${y}.png","https://c.tile.openstreetmap.org/${z}/${x}/${y}.png"];OpenLayers.Layer.HTTPRequest.prototype.mergeNewParams=function(A){this.params=OpenLayers.Util.extend(this.params,A);this.vendorParams=OpenLayers.Util.extend(this.vendorParams,A);var z=this.redraw();if(this.map!=null){this.map.events.triggerEvent("changelayer",{layer:this,property:"params"})}return z};OpenLayers.Format.WKT.prototype.extract.point=function(z){return z.z!=null?(z.x+" "+z.y+" "+z.z):(z.x+" "+z.y)};OpenLayers.Format.WKT.prototype.parse.point=function(A){var z=OpenLayers.String.trim(A).split(this.regExes.spaces);return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(z[0],z[1],z[2]))};OpenLayers.Format.WKT.prototype.read=function(F){var z,H,G,A=F.indexOf("("),D=F.substr(0,A);if(/ [ZM]+\s*$/.test(D)){F=D.replace(/ [ZM]+\s*$/,"")+F.substr(A)}F=F.replace(/[\n\r]/g," ");var C=this.regExes.typeStr.exec(F);if(C){H=C[1].toLowerCase();G=C[2];if(this.parse[H]){z=this.parse[H].apply(this,[G])}if(this.internalProjection&&this.externalProjection){if(z&&z.CLASS_NAME=="OpenLayers.Feature.Vector"){z.geometry.transform(this.externalProjection,this.internalProjection)}else{if(z&&H!="geometrycollection"&&typeof z=="object"){for(var B=0,E=z.length;B<E;B++){var I=z[B];I.geometry.transform(this.externalProjection,this.internalProjection)}}}}}return z};Ext.override(Ext.data.proxy.Server,{read:function(z,B,A){A.lastReadRequest=this.doRequest.apply(this,arguments);return A.lastReadRequest}});var w=Ext.data.AbstractStore.prototype.load;Ext.override(Ext.data.AbstractStore,{load:function(){var z=this.lastReadRequest;if(!this.buffered&&z){delete this.lastReadRequest;if(!z.operation.complete){z.callback=null;this.fireEvent("load",this,[],false)}}return w.apply(this,arguments)}});var q=Ext.data.TreeStore.prototype.load;Ext.override(Ext.data.TreeStore,{load:function(){var z=this.lastReadRequest;if(!this.buffered&&z){delete this.lastReadRequest;if(!z.operation.complete){z.callback=null;this.fireEvent("load",this,[],false)}}return q.apply(this,arguments)}});if(window.KR){KR.Util.extConnection=new Ext.data.Connection({useDefaultXhrHeader:false});KR.Util.sendRequest=function(A,D,C,z,B){B=B||{};return{request:KR.Util.extConnection.request({method:"get",headers:B,url:A,success:function(G){var E=Ext.JSON.decode(G.responseText);if(D){var F;try{F=D(E,z)}catch(H){KR.Util.handleError(z,H.message,E);return}if(!_.isUndefined(F)){C(F)}}else{C(G.responseText)}},failure:z}),abort:function(){KR.Util.extConnection.abort(this.request)}}}}},fixIe11Css:function(){Ext.util.CSS.createStyleSheet=function(o,A){var h,z=document,b=Ext.util.CSS,g=z.getElementsByTagName("head")[0],w=z.createElement("style");w.setAttribute("type","text/css");if(A){w.setAttribute("id",A)}if(Ext.isIE&&!Ext.isIE11){g.appendChild(w);h=w.styleSheet;h.cssText=o}else{try{w.appendChild(z.createTextNode(o))}catch(q){w.cssText=o}g.appendChild(w);h=w.styleSheet?w.styleSheet:(w.sheet||z.styleSheets[z.styleSheets.length-1])}b.cacheStyleSheet(h);return h}}});Ext.define("Client.overrides.ol.Graticule",{});OpenLayers.Control.Graticule.prototype.activate=function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){this.map.addLayer(this.gratLayer);this.map.events.register("movestart",this,this.addIntervalUpdate);this.map.events.register("moveend",this,this.removeIntervalUpdate);this.update();return true}else{return false}};OpenLayers.Control.Graticule.prototype.deactivate=function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.map.events.unregister("movestart",this,this.addIntervalUpdate);this.map.events.unregister("moveend",this,this.removeIntervalUpdate);this.map.removeLayer(this.gratLayer);return true}else{return false}};OpenLayers.Control.Graticule.prototype.addIntervalUpdate=function(){this.intervalId=setInterval(this.update.bind(this),100)};OpenLayers.Control.Graticule.prototype.removeIntervalUpdate=function(){if(this.intervalId){clearInterval(this.intervalId)}this.update()};OpenLayers.Control.Graticule.prototype.update=function(){var B=this.map.getExtent();if(!B){return}this.gratLayer.destroyFeatures();
1var C=new OpenLayers.Projection("EPSG:4326");var X=this.map.getProjectionObject();var z=this.map.getResolution();if(X.proj&&X.proj.projName=="longlat"){this.numPoints=1}var aa=this.map.getCenter();var T=new OpenLayers.Pixel(aa.lon,aa.lat);OpenLayers.Projection.transform(T,X,C);var O=this.targetSize*z;O*=O;var G;for(var S=0;S<this.intervals.length;++S){G=this.intervals[S];var Y=G/2;var o=T.offset({x:-Y,y:-Y});var g=T.offset({x:Y,y:Y});OpenLayers.Projection.transform(o,C,X);OpenLayers.Projection.transform(g,C,X);var q=(o.x-g.x)*(o.x-g.x)+(o.y-g.y)*(o.y-g.y);if(q<=O){break}}T.x=Math.floor(T.x/G)*G;T.y=Math.floor(T.y/G)*G;var R=0;var H=[T.clone()];var F=T.clone();var P;do{F=F.offset({x:0,y:G});P=OpenLayers.Projection.transform(F.clone(),C,X);H.unshift(F)}while(B.containsPixel(P)&&++R<1000);F=T.clone();do{F=F.offset({x:0,y:-G});P=OpenLayers.Projection.transform(F.clone(),C,X);H.push(F)}while(B.containsPixel(P)&&++R<1000);R=0;var M=[T.clone()];F=T.clone();do{F=F.offset({x:-G,y:0});P=OpenLayers.Projection.transform(F.clone(),C,X);M.unshift(F)}while(B.containsPixel(P)&&++R<1000);F=T.clone();do{F=F.offset({x:G,y:0});P=OpenLayers.Projection.transform(F.clone(),C,X);M.push(F)}while(B.containsPixel(P)&&++R<1000);var b=[];for(var S=0;S<M.length;++S){var w=M[S].x;var L=[];var Z=null;var U=Math.min(H[0].y,90);var E=Math.max(H[H.length-1].y,-90);var h=(U-E)/this.numPoints;var A=E;for(var Q=0;Q<=this.numPoints;++Q){var V=new OpenLayers.Geometry.Point(w,A);V.transform(C,X);L.push(V);A+=h;if(V.y>=B.bottom&&!Z){Z=V}}if(this.labelled){var J=new OpenLayers.Geometry.Point(Z.x,B.bottom);var W={value:w,label:this.labelled?OpenLayers.Util.getFormattedLonLat(w,"lon",this.labelFormat):"",labelAlign:"cb",xOffset:0,yOffset:25};this.gratLayer.addFeatures(new OpenLayers.Feature.Vector(J,W))}var K=new OpenLayers.Geometry.LineString(L);b.push(new OpenLayers.Feature.Vector(K))}for(var Q=0;Q<H.length;++Q){A=H[Q].y;if(A<-90||A>90){continue}var L=[];var N=M[0].x;var I=M[M.length-1].x;var D=(I-N)/this.numPoints;var w=N;var Z=null;for(var S=0;S<=this.numPoints;++S){var V=new OpenLayers.Geometry.Point(w,A);V.transform(C,X);L.push(V);w+=D;if(V.x<B.right){Z=V}}if(this.labelled){var J=new OpenLayers.Geometry.Point(B.right,Z.y);var W={value:A,label:this.labelled?OpenLayers.Util.getFormattedLonLat(A,"lat",this.labelFormat):"",labelAlign:"rb",xOffset:-2,yOffset:2};this.gratLayer.addFeatures(new OpenLayers.Feature.Vector(J,W))}var K=new OpenLayers.Geometry.LineString(L);b.push(new OpenLayers.Feature.Vector(K))}this.gratLayer.addFeatures(b)};OpenLayers.DOTS_PER_INCH=96;OpenLayers.Renderer.SVG.prototype.MAX_PIXEL=Number.MAX_VALUE;if(!("contains" in String.prototype)){String.prototype.contains=function(g,b){return"".indexOf.call(this,g,b)!==-1}}function _debugActivateConsoleIE(b){if(typeof console==="undefined"||typeof console.log==="undefined"){console={};if(b){console.log=function(g){alert(g)};console.warn=function(g){alert(g)}}else{console.log=function(){};console.warn=function(){}}}}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(g){var b=this.length>>>0;var h=Number(arguments[1])||0;h=(h<0)?Math.ceil(h):Math.floor(h);if(h<0){h+=b}for(;h<b;h++){if(h in this&&this[h]===g){return h}}return -1}}if(!Array.prototype.find){Object.defineProperty(Array.prototype,"find",{value:function(g){if(this==null){throw new TypeError('"this" is null or not defined')}var z=Object(this);var b=z.length>>>0;if(typeof g!=="function"){throw new TypeError("predicate must be a function")}var h=arguments[1];var q=0;while(q<b){var w=z[q];if(g.call(h,w,q,z)){return w}q++}return undefined}})}if(!Array.prototype.findIndex){Object.defineProperty(Array.prototype,"findIndex",{value:function(g){if(this==null){throw new TypeError('"this" is null or not defined')}var z=Object(this);var b=z.length>>>0;if(typeof g!=="function"){throw new TypeError("predicate must be a function")}var h=arguments[1];var q=0;while(q<b){var w=z[q];if(g.call(h,w,q,z)){return q}q++}return -1}})}Ext.application({name:"client",init:function(){Ext.supports.CSS3BorderRadius=true;Ext.getBody().removeCls("x-nbr x-nlg")},launch:function(){_debugActivateConsoleIE(false);Ext.QuickTips.init();Ext.create("Client.AppLogic")}});Ext.define("Client.data.model.HendelserIKart.ComboFields",{singleton:true,fields:[{name:"value",type:"int",defaultValue:null,useNull:true},{name:"text",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("Client.data.model.HendelserIKart.Combo",{extend:GeoMind.data.model.Base,fields:Client.data.model.HendelserIKart.ComboFields.fields,config:{fields:Client.data.model.HendelserIKart.ComboFields.fields}});Ext.define("Client.data.model.MetaDataDcFields",{singleton:true,fields:[{name:"dc_coverage",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_creator",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_date",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_identifier",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_language",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_publisher",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_relation",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_rights",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_source",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_subject",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_title",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"dc_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("Client.data.model.MetaDataDc",{extend:Ext.data.Model,fields:Client.data.model.MetaDataDcFields.fields,config:{fields:Client.data.model.MetaDataDcFields.fields}});Ext.define("Client.data.model.TextValueComboFields",{singleton:true,fields:[{name:"value",type:"int",defaultValue:null,useNull:true},{name:"text",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("Client.data.model.TextValueCombo",{extend:GeoMind.data.model.Base,fields:Client.data.model.TextValueComboFields.fields,config:{fields:Client.data.model.TextValueComboFields.fields}});Ext.define("Client.data.model.ToolFields",{singleton:true,fields:[{name:"internal_name",type:"string",defaultValue:null,useNull:true},{name:"name",type:"string",defaultValue:null,useNull:true},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"className",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"config",type:"auto",defaultValue:{},useNull:true},{name:"module",type:"auto",defaultValue:null,useNull:true},{name:"is_default",type:"boolean",defaultValue:false,useNull:true}]});Ext.define("Client.data.model.Tool",{extend:GeoMind.data.model.Base,fields:Client.data.model.ToolFields.fields,config:{fields:Client.data.model.ToolFields.fields}});Ext.define("Client.data.model.VerticesFields",{singleton:true,fields:[{name:"x",type:"number",defaultValue:null,useNull:true},{name:"y",type:"number",defaultValue:null,useNull:true}]});Ext.define("Client.data.model.Vertices",{extend:Ext.data.Model,fields:Client.data.model.VerticesFields.fields,config:{fields:Client.data.model.VerticesFields.fields}});Ext.define("Client.data.model.dataView.matrikkel.Addresses",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/SeEiendom.asmx/GetAdresser",type:"aja
1x",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"adresse",type:"auto",defaultValue:null,useNull:true},{name:"postnr",type:"auto",defaultValue:null,useNull:true},{name:"poststed",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.dataView.matrikkel.Buildings",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/SeEiendom.asmx/FindBygninger",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"bygningsnr",type:"auto",defaultValue:null,useNull:true},{name:"bygningstype",type:"auto",defaultValue:null,useNull:true},{name:"bygningStatus",type:"auto",defaultValue:null,useNull:true},{name:"harSefrakminne",type:"auto",defaultValue:null,useNull:true},{name:"harKulturminne",type:"auto",defaultValue:null,useNull:true},{name:"naringsgruppe",type:"auto",defaultValue:null,useNull:true},{name:"bygningsEndring",type:"auto",defaultValue:null,useNull:true},{name:"bygningStatusKode",type:"auto",defaultValue:null,useNull:true},{name:"rammetillatelse",type:"auto",defaultValue:null,useNull:true},{name:"igangsettelsestillatelse",type:"auto",defaultValue:null,useNull:true},{name:"midlertidigBrukstillatelse",type:"auto",defaultValue:null,useNull:true},{name:"ferdigattest",type:"auto",defaultValue:null,useNull:true},{name:"bygningTattIBruk",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.dataView.matrikkel.Owner",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/Eierforhold.asmx/FindOwnersForProperty",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"displayname",mapping:"eiesAv.navn"},{name:"andel",type:"auto",defaultValue:null,useNull:true},{name:"andelsnr"},{name:"datoFra"},{name:"eierforholdKode",type:"auto",defaultValue:null,useNull:true},{name:"eiesAv",type:"auto",defaultValue:null,useNull:true},{name:"matrikkelenhetIdent",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.dataView.matrikkel.Proceedings",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/SeEiendom.asmx/FindProceedings",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"typeNavn",type:"auto",defaultValue:null,useNull:true},{name:"typeKode",type:"auto",defaultValue:null,useNull:true},{name:"forretningsdokumentdato",defaultValue:null,useNull:true},{name:"lopenummer",defaultValue:null,useNull:true},{name:"tinglysningsstatus",type:"auto",defaultValue:null,useNull:true},{name:"arealendring",type:"auto",defaultValue:null,useNull:true},{name:"omfordelingFra",type:"auto",defaultValue:null,useNull:true},{name:"omfordelingTil",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.dataView.matrikkel.Teig",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/SeEiendom.asmx/FindTeiger",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},timeout:60000,paramsAsJson:true},fields:[{name:"type",type:"auto",defaultValue:null,useNull:true},{name:"koordinater",type:"auto",defaultValue:null,useNull:true},{name:"areal",type:"auto",defaultValue:null,useNull:true},{name:"hovedteig",type:"auto",defaultValue:null,useNull:true},{name:"merknad",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.Norvegiana",{extend:Ext.data.Model,proxy:{url:"proxies/xNorvegiana.ashx?",type:"ajax",actionMethods:{read:"GET"},reader:{type:"json",root:"result.items",totalProperty:"result.query.numfound"},doRequest:function(b,z,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),w=o.getMethod(h);Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,z,g),method:w,disableCaching:false});h.params.rows=h.params.limit;delete h.params.limit;h.params.start=h.params.page*h.params.rows+1;delete h.params.page;if(!o.ajax){o.ajax=new Ext.data.Connection({disableCaching:false})}o.ajax.request(h);return h}},idProperty:"uid",fields:[{name:"name",mapping:"item.fields.delving_title",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"description",mapping:"item.fields.delving_description",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"provider",mapping:"item.fields.delving_provider",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"owner",mapping:"item.fields.delving_owner",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"url",mapping:"item.fields.delving_landingPage",convert:function(b){return Ext.isArray(b)?(b.length?b[0]:null):b}},{name:"dataset",mapping:"item.fields.delving_spec"},{name:"geom",mapping:"item.fields.delving_geohash",convert:function(g){try{g=g[0].split(",");return"POINT("+g[1]+" "+g[0]+")"}catch(b){return null}}},{name:"fullGeom",convert:function(b,g){return g.data.geom}},{name:"bbox",mapping:"item.fields.delving_geohash",convert:function(g){try{g=g[0].split(",");return[g[1],g[0],g[1],g[0]].join(",")}catch(b){return null}}},{name:"srid",type:"string",defaultValue:"EPSG:4326"},{name:"uid",mapping:"item.fields.delving_hubId",convert:function(g){var b=Ext.isArray(g)?(g.length?g[0]:null):g;return"norvegiana_"+b}}]});Ext.define("Client.data.model.search.StandardProxy",{extend:Ext.data.proxy.Ajax,url:"WebServices/search/SearchProxy.asmx/Search",actionMethods:{read:"POST"},reader:{type:"json",root:"Results",read:function(b){var h=this;h.currentOperation=null;b=Ext.JSON.decode(b.responseText).d;var q,g=0;if(b.success){var o=[],w=h.listOfThemes;b.records.forEach(function(z){if(z.elementType!="theme"||(!w||w.hasOwnProperty(z.uid))){o.push(z)}else{g++}});q=h.readRecords(o);this.proxy.nextPageStart=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"nextPageStart");this.proxy.totalCount=b.total-g}return q||this.nullResultSet}},doRequest:function(b,z,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),w=o.getMethod(h);if(b.allowWrite()){h=q.write(h)}Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,z,g),method:w,disableCaching:false});if(w.toUpperCase()!=="GET"&&o.paramsAsJson){delete h.params.start;delete h.params.page;delete h.params.limit;delete h.params.query;h=Ext.apply({jsonData:h.params},h);delete h.params}if(!o.connection){o.connection=Ext.create("Ext.data.Connection",{disableCachingParam:false})}else{o.connection.abortAll()}if(!h.headers){h.headers={}}h.headers.gm_session_id=GeoMind.utils.SessionManager.ss.sessionId;h.headers.gm_lang_code=GeoMind.utils.SessionManager.ss.langCode;h.headers["X-Adaptive-Gui"]=__guuid__;o.connection.request(h);return h},paramsAsJson:true});Ext.define("Client.data.model.search.Standard",{extend:Ext.data.Model,fields:[{name:"name",mapping:"title"},{name:"description",mapping:"desc"},{name:"geom"},{name:"fullGeom"},{name:"bbox"},{name:"srid",type:"string",defaultValue:null,useNull:true},{name:"uid"},"layerId","layerName",{name:"values",defaultValue:null,useNull:true},{name:"elementType",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.article.Cache",{extend:Ext.data.Model,proxy:{url:"WebServices/articleComments/Cache.asmx/TagSearch",type:"aja
1x",headers:{"Content-Type":"application/json; charset=utf-8"},actionMethods:{read:"POST"},reader:{type:"json",root:"d.records",totalProperty:"d.total"},doRequest:function(b,z,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),w=o.getMethod(h);Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,z,g),method:w,disableCaching:false});if(!o.ajax){o.ajax=new Ext.data.Connection({disableCaching:false})}delete h.params.page;h.params=Ext.JSON.encode(h.params);o.ajax.request(h);return h}},idProperty:"uid",fields:[{name:"name",mapping:"title",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"description",mapping:"content",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"provider",mapping:"provider",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"owner",mapping:"owner",convert:function(b){return Ext.isArray(b)?b.join(", "):b}},{name:"url",mapping:"link",convert:function(b){return Ext.isArray(b)?(b.length?b[0]:null):b}},{name:"dataset",mapping:"dataset"},{name:"geom",mapping:"geom",convert:function(g){try{return g.split(";")[1]}catch(b){return nul}}},{name:"fullGeom",convert:function(b,g){return g.data.geom}},{name:"bbox",mapping:"bbox"},{name:"srid",type:"string",mapping:"geom",convert:function(g){var b=g.split(";")[0].split("=")[1];return"EPSG:"+b}},{name:"uid",mapping:"id",convert:function(b){return b.substring(b.indexOf("_")+1)}}]});Ext.define("Client.data.model.search.article.Dimu",{extend:Ext.data.Model,proxy:{url:"https://api.dimu.org/api/solr/select?",type:"ajax",actionMethods:{read:"GET"},headers:{"Content-Type":"application/json; charset=utf-8"},reader:{type:"json",root:"response.docs",totalProperty:"response.numFound"},doRequest:function(b,A,g){var o=this,q=o.getWriter(),h=o.buildRequest(b),z=o.getMethod(h),w=b.params.bbox;Ext.apply(h,{binary:o.binary,headers:o.headers,timeout:o.timeout,scope:o,callback:o.createRequestCallback(h,b,A,g),method:z,disableCaching:true});if(!o.ajax){o.ajax=new Ext.data.Connection({disableCaching:true})}h.params="q="+b.params.q+"&fq=artifact.subjects: ("+b.params.tags+")&fq=artifact.coordinate:["+w.bottom+","+w.left+" TO "+w.top+","+w.right+"]&rows="+b.params.limit+"&dimu_instance=dimu-no prod&wt=json&api.key="+b.params.apiKey;o.ajax.request(h);return h}},idProperty:"uid",fields:[{name:"id",type:"string",mapping:'["identifier.id"]',convert:function(b){if(b){return"dimu_"+b}return null}},{name:"uid",type:"string",mapping:'["identifier.id"]'},{name:"name",type:"string",mapping:'["artifact.ingress.title"]'},{name:"description",type:"string",mapping:'["artifact.ingress.description"]'},{name:"tags",type:"string",mapping:'["artifact.ingress.subjects"]'},{name:"images",type:"auto",mapping:'["artifact.defaultMediaIdentifier"]',convert:function(b){var g=["https://mm.dimu.org/image/"+b];if(!b){return}return g}},{name:"url",type:"string",mapping:'["artifact.uniqueId"]',convert:function(g){var b="https://digitaltmuseum.no/";if(g){return b+g}return null}},{name:"fullGeom",type:"auto",mapping:'["artifact.coordinate"]',convert:function(b){if(!b.length){return}var g=b.split(",");if(g.length>0){return"POINT("+g[1].trim()+" "+g[0].trim()+")"}return}},{name:"geom",type:"auto",mapping:'["artifact.coordinate"]',convert:function(b){if(!b.length){return}var g=b.split(",");if(g.length>0){return"POINT("+g[1].trim()+" "+g[0].trim()+")"}return}},{name:"image",type:"auto",defaultValue:null},{name:"provider",type:"string"},{name:"owner",type:"string",mapping:'["identifier.owner"]'},{name:"creator",type:"string",mapping:'["artifact.ingress.producer"]'},{name:"thumbnail",type:"string",mapping:'["artifact.defaultMediaIdentifier"]'},{name:"provider",type:"string",defaultValue:"Digitalt museum"},{name:"uniqueId",type:"string",mapping:'["artifact.uniqueId"]'},{name:"isDimu",defaultValue:true},{name:"srid",type:"string",defaultValue:"EPSG:4326"}]});Ext.define("Client.data.model.search.matrikkel.Matrikkel",{extend:Ext.data.Model,proxy:{url:"WebServices/matrikkel/Eierforhold.asmx/FindPropertiesByPerson",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d"},paramsAsJson:true},fields:[{name:"displayname",mapping:"eiesAv.navn"},{name:"andel",type:"auto",defaultValue:null,useNull:true},{name:"andelsnr"},{name:"datoFra"},{name:"eierforholdKode",type:"auto",defaultValue:null,useNull:true},{name:"eiesAv",type:"auto",defaultValue:null,useNull:true},{name:"matrikkelenhetIdent",type:"auto",defaultValue:null,useNull:true}],config:{fields:this.fields}});Ext.define("Client.data.model.search.matrikkel.PropertyWFS",{extend:Ext.data.Model,fields:[{name:"KOMMUNENR",type:"string"},{name:"GARDSNR",type:"string"},{name:"BRUKSNR",type:"string"},{name:"FESTENR",type:"string"},{name:"SEKSJONSNR",type:"string"}
1,{name:"TEIGID",type:"int"},{name:"HOVEDTEIG",type:"string"},{name:"EIENDOMSTYPE",type:"string"},{name:"AREAL",type:"float"},{name:"feature",type:"auto"}]});Ext.define("Client.module.map.GoogleAnalytics",{extend:Client.module.Generic,internal_name:"av_google_analytics",trackerid:null,noGA:null,isActive:null,constructor:function(b){var g=this;Ext.apply(g,b);g.noGA=Ext.util.Cookies.get("no_ga")=="true";g.isActive=typeof(ga)!=="undefined";if(g.isActive&&!g.noGA){ga("create",g.trackerid,"auto");ga("set","page","/client?gui="+__gui_id__);ga("send","pageview",{page:"/client?gui="+__gui_id__,title:document.title})}g.callParent([b])},_onUpdateMapState:function(q){var o=this;if(o.isActive&&!o.noGA&&q.data.type=="layersVisibilityChanged"&&q.data.records.length>0){var g=[],b=[],h=[];Ext.each(q.data.records,function(D){var C=D.recordData.data,z=C.olLayer;if(z){if(D.checked&&!z.lastState){var w=Adaptive.utils.Config.getThemeData(D.recordData);if(w&&w.theme_id){var A="",B=C.name+" ("+w.theme_id+")";if(C.is_base_layer){A="basetheme"}else{if(w.is_digi_theme){A="digitheme"}else{A="theme"}}ga("send","event",A,B,"GUI "+__gui_id__)}}z.lastState=D.checked}})}},_onToolactivated:function(g){var b=this;if(b.isActive&&!b.noGA&&g.data.internal_name!="av_map_info"){ga("send","event","module",g.data.internal_name,"GUI "+__gui_id__)}},_onActivateGA:function(g){var b=this;b.noGA=!g.data.status;Ext.util.Cookies.set("no_ga",b.noGA);if(b.noGA){Ext.util.Cookies.clear("_ga","/");Ext.util.Cookies.clear("_gid","/")}},_onReportToGA:function(g){var b=this,h=g.data;if(b.isActive&&(!b.noGA||h.force)){ga("send","event",h.category,h.action,"GUI "+__gui_id__)}}});Ext.define("Client.module.map.Monitor",{extend:Client.module.Generic,serviceUrl:null,serviceMethods:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},updateUserCredentials:function(){var b={sid:GeoMind.utils.SessionManager.ss.sessionId};if(!GeoMind.utils.SessionManager.ss.sessionId){this.unbindMapEvts()}else{this.bindMapEvts()}},getUserConfig:function(){var b={guuid:__guuid__};Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.read,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(b),success:Ext.bind(this.readCallbackSuccess,this),failure:Ext.bind(this.readCallbackFailure,this)})},readCallbackSuccess:function(b){if(!this.map){return}b=GeoMind.utils.Ajax.fixResponse(b);Ext.defer(function(){this.map.zoomToExtent(OpenLayers.Bounds.fromString(b.data[0].value),true)},1000,this)},readCallbackFailure:function(b){b=GeoMind.utils.Ajax.fixResponse(b)},saveUserConfig:function(){var b={guuid:__guuid__,map_extent:this.map.getExtent().toString()};Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.write,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(b),success:Ext.bind(this.saveCallbackSuccess,this),failure:Ext.bind(this.saveCallbackFailure,this)})},saveCallbackSuccess:function(b){}
1,saveCallbackFailure:function(b){},bindMapEvts:function(){if(!this.map){return}this.map.events.register("moveend",this,this.onMapMoveEnd)},unbindMapEvts:function(){if(!this.map){return}this.map.events.unregister("moveend",this,this.onMapMoveEnd)},onMapMoveCallbackScheduler:null,onMapMoveEnd:function(){if(!GeoMind.utils.SessionManager.ss.sessionId){return}clearTimeout(this.onMapMoveCallbackScheduler);var b=this;this.onMapMoveCallbackScheduler=setTimeout(function(){b.saveUserConfig()},500)},afterMapContainerRender:function(b){},afterMapReset:function(b){try{this.unbindMapEvts()}catch(g){}this.bindMapEvts()},beforeMapReset:function(b){this.unbindMapEvts()},_onUserAuthenticated:function(){this.updateUserCredentials();this.getUserConfig()},_onUserAuthenticationFailed:function(){this.updateUserCredentials()},_onUserSignedOut:function(){this.updateUserCredentials()}});Ext.define("Client.module.map.PlausibleAnalytics",{extend:Client.module.Generic,internal_name:"av_plausible_analytics",reportedThemes:{},reportedThematicMaps:{},reportedTools:{},_onUpdateMapState:function(g){if(!window.plausible){return}var b=this;if(g.data.type=="layersVisibilityChanged"&&g.data.records.length>0){Ext.each(g.data.records,function(A){var z=A.recordData.data,o=z.olLayer;if(o&&A.checked){var h=Adaptive.utils.Config.getThemeData(A.recordData),w=h&&h.theme_uuid;if(!w||b.reportedThemes[w]){return}b.reportedThemes[w]=true;if(h&&h.theme_id){var q="";if(z.is_base_layer){q="basetheme"}else{if(h.is_digi_theme){q="digitheme"}else{q="theme"}}plausible("adaptive3_themeview",{props:{type:q,id:h.theme_id,uuid:w,gui:__gui_id__}});plausible("adaptive3_themeview_"+w,{props:{type:q,id:h.theme_id,uuid:w,gui:__gui_id__}})}}})}},_onToolactivated:function(h){if(!window.plausible){return}var g=this,b=h.data.internal_name;if(!b||b==="av_map_info"||g.reportedTools[b]){return}g.reportedTools[b]=true;plausible("adaptive3_tool",{props:{name:b,gui:__gui_id__}});plausible("adaptive3_tool_"+b,{props:{name:b,gui:__gui_id__}})},_onThematicMapActivated:function(g){if(!window.plausible){return}var b=this,h=g.data.id;if(b.reportedThematicMaps[h]){return}b.reportedThematicMaps[h]=true;plausible("adaptive3_thematicmap",{props:{id:h,gui:__gui_id__}});plausible("adaptive3_thematicmap_"+h,{props:{id:h,gui:__gui_id__}})}});Ext.define("Client.module.map.byggsok.Property",{extend:Client.module.map.dataView.grid.matrikkel.Property,config:{mainProperty:null,data:null},id:"byggsokPropertyGrid",boundsScaleRatio:1.2,constructor:function(b){var h=this,g=new OpenLayers.Format.WKT();Ext.apply(h,b);h.callParent([b]);if(h.data&&h.data.length>0){h.data.forEach(function(q){var o=q.get("wkt"),z=o&&g.read(o);if(z){z.data=q.data;z.renderIntent="select";q.set("feature",z);h.propertyLayer.addFeatures(z)}h.view.store.add(q)})}h.view.store.mon(h.view.store,"add",function(q,o){o.forEach(function(w){w.set("wkt",g.write(w.get("feature")))})})},createPointOnMapFilter:function(b){var h=this,g=h.callParent(arguments);if(h.mainProperty){return new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:[g,new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.OR,filters:[new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.NOT_EQUAL_TO,property:"KOMMUNENR",value:h.mainProperty.kommunenr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.NOT_EQUAL_TO,property:"GARDSNR",value:h.mainProperty.gardsnr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.NOT_EQUAL_TO,property:"BRUKSNR",value:h.mainProperty.bruksnr}),new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.NOT_EQUAL_TO,property:"SEKSJONSNR",value:h.mainProperty.seksjonsnr})]})]})}return g},onViewActivate:function(){var b=this;b.callParent();b.first_run=false;b.view.down("[dataIndex=HOVEDTEIG]").hide();b.view.down("[dataIndex=AREAL]").hide()},add:function(g){var A=this,B=[];for(var h=0;h<g.length;h++){var q=false,C=g[h],z=C.data.TEIGID;if(B.indexOf(z)==-1){B.push(z);A.view.store.each(function(E,D){if(C.data.TEIGID===E.data.TEIGID){q=true;return false}});if(!q){var w=C.clone();var b=A.simplifyPolygonFeature(w);b.renderIntent="select";A.propertyLayer.addFeatures(b);var o=Ext.create(A.view.store.model,{KOMMUNENR:b.data.KOMMUNENR,GARDSNR:b.data.GARDSNR,BRUKSNR:b.data.BRUKSNR,FESTENR:b.data.FESTENR,SEKSJONSNR:b.data.SEKSJONSNR,TEIGID:b.data.TEIGID,HOVEDTEIG:b.data.HOVEDTEIG,EIENDOMSTYPE:b.data.EIENDOMSTYPE,AREAL:b.data.AREAL,feature:b});A.view.store.add(o);if(!A.propertiesAdded){A.lastSelectedRec=o;A.view.getSelectionModel().select(o)}}}}A.propertiesAdded++},removeAll:function(){var b=this;b.view.store.removeAll();b.propertyLayer.destroyFeatures();delete b.lastSelectedRec;b.propertiesAdded=0},onViewClose:function(){var b=this;b.doQueryWFSTask.cancel();Client.AppLogic.dispatchEvent("enableInfoTool");b.fireEvent("dataViewGridClose",{theme_uuid:b.id});b.destroy()}});Ext.define("Client.module.map.dataView.grid.matrikkel.ExtendedPropertyData",{createExtendedStores:function(){this.extendedPropertyStore=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.Property"});this.extendedOwnerStore=Ext.create("Ext.data.Store",{model:"Client.data.model.dataView.matrikkel.Owner"});this.wireUpExtendedEvents()},getExtendedData:function(b){var g=b.data;if(b.get("property")){this.firePropertyLoaded(g)}else{this.extendedPropertyStore._parent_object=g;if(!this.addPropertyData(this.extendedPropertyStore,g)){this.extendedPropertyStore.getProxy().extraParams.municipalityNumber=g.KOMMUNENR;this.extendedPropertyStore.getProxy().extraParams.gnr=g.GARDSNR;this.extendedPropertyStore.getProxy().extraParams.bnr=g.BRUKSNR;this.extendedPropertyStore.getProxy().extraParams.fnr=g.FESTENR;this.extendedPropertyStore.load()}}if(b.get("owner")){this.fireOwnerLoaded(g)}else{this.extendedOwnerStore._parent_object=g;this.extendedOwnerStore.getProxy().extraParams.municipalityNumber=g.KOMMUNENR;this.extendedOwnerStore.getProxy().extraParams.gnr=g.GARDSNR;this.extendedOwnerStore.getProxy().extraParams.bnr=g.BRUKSNR;this.extendedOwnerStore.getProxy().extraParams.fnr=g.FESTENR;this.extendedOwnerStore.load()}},addPropertyData:function(g,o){var w=false;for(i=0;i<this.property_data.length;i++){var h=this.property_data[i];var q=h.matrikkelenhetIdent;if(q.kommunenr==o.KOMMUNENR&&q.gardsnr==o.GARDSNR&&q.bruksnr==o.BRUKSNR&&q.festenr==o.FESTENR){var b=[{data:h}];this.saveInternal(g,b,"property");this.firePropertyLoaded(b);w=true;break}}return w},createDataArray:function(b){var h=b.length;var o=[];for(var g=0;g<h;g++){o.push(b[g].data)}return o},saveInternal:function(g,b,h){var o=this.createDataArray(b);g._parent_object[h]=o},firePropertyLoaded:function(b){var g={evtName:"extendedPropertyLoaded",data:b.property?b:{property:this.createDataArray(b)}};this.fireEvent("extendedDataLoaded",g)},fireOwnerLoaded:function(b){var g={evtName:"extendedOwnerLoaded",data:b.owner?b:{owner:this.createDataArray(b)}};this.fireEvent("extendedDataLoaded",g)},onExtendedPropertyStoreLoaded:function(g,b){if(b==null){return}this.saveInternal(g,b,"property");this.firePropertyLoaded(b)},onExtendedOwnerStoreLoaded:function(g,b){if(b==null){return}this.saveInternal(g,b,"owner");this.fireOwnerLoaded(b)},wireUpExtendedEvents:function(){this.extendedPropertyStore.on("load",this.onExtendedPropertyStoreLoaded,this);this.extendedOwnerStore.on("load",this.onExtendedOwnerStoreLoaded,this)},cleanUpExtendedEvents:function(){this.extendedPropertyStore.un("load",this.onExtendedPropertyStoreLoaded,this);this.extendedOwnerStore.un("load",this.onExtendedOwnerStoreLoaded,this)}});Ext.define("Client.module.map.grid.lang.Grid",{strings:{mapGrid:{en:"Show grid lines",nb:"Vis rutenett"}}});Ext.define("Client.module.map.info.agents.Vegvesen",{extend:Client.module.map.info.Agent,uuid:null,name:null,active:false,emptyVegreferanse:"",constructor:function(b){var g=this;
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.name="Vegvesen";g.uuid=GeoMind.utils.Generator.getUuid();g.view=Ext.create("Ext.Component",{cls:"a3-location-info mapinfo",tpl:new Ext.XTemplate('<tpl><p class="a3-name"><strong>Vref :</strong> {kortform}</p></tpl>')})},processResponse:function(b){var g=this;if(!b.data){return}var h=b.data.find(function(o){return(o.key&&o.key==="newVegreferanse")})||{};this.updateView(h.value)},updateView:function(o,b){var h=this;var g={kortform:o,kortform_old:b};h.view.update(g)},doSearch:function(h){var g=this;var b=h.mapProjection.proj.srsProjNumber?parseInt(h.mapProjection.proj.srsProjNumber):4326;var o={nord:h.local.lat,ost:h.local.lon,coordSys:b};Ext.Ajax.request({url:"WebServices/veg/VegvesenAPI.asmx/PositionSearch",method:"POST",params:Ext.JSON.encode(o),reader:{type:"json",root:"d.records"},headers:{"Content-Type":"application/json; charset=utf-8"},success:Ext.bind(g.searchCallbackSuccess,g),failure:function(q){console.log("Failure")}})},searchCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);console.log("success",b);if(b.success){this.processResponse(b)}},setUp:function(b){this.map=b}
1,onInfoClicked:function(g){var b=this;b.updateView(b.emptyVegreferanse);b.doSearch(g)}});Ext.define("Client.module.map.info.tools.lang.Blom",{strings:{title:{en:"Blom skråbilder",nb:"Blom skråbilder"}}});Ext.define("Client.module.map.info.tools.Blom",{extend:Client.module.map.info.tools.Generic,mixins:[Adaptive.layer.Highlight],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Blom");g.viewConfig={cls:"a3-blom",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:g.openExternal}}},openExternal:function(){var g=this,b=Ext.clone(__blom_baseurl__);b+="&y="+g.lonlat.lat+"&x="+g.lonlat.lon;window.open(b,"_blank","noopener,noreferrer")}});Ext.define("Client.module.map.info.tools.lang.Census",{strings:{emptyText:{en:"No data found",nb:"Ingen data funnet"},title:{en:"Census 1910",nb:"Folketelling 1910"},description:{en:"In 1910 there lived 2,391,782 people in Norway distributed among 279,635 rural dwellings and 50,900 urban dwellings. About 80% of these dwellings have geographic coordinates, with varying accuracy. The data below shows those in residence within a 50 meter radius of point clicked on (marked with circle on the map). Incorrect or missing coordinates for the dwellings can lead to there being missing information on residents or some errors in the final result",nb:"I 1910 bodde det 2 391 782 mennesker i Norge fordelt på 279 635 bosteder på landet og 50 900 bosteder i byene. Ca 80% av bostedene er koordinatfestet, med varierende nøyaktighet.<br><br>Dataene under viser personer fordelt på bosted innenfor en radius på 50 meter fra punktet en klikket på (markert med sirkel i kartet). Feil eller manglende koordinatfesting av et bosted kan medføre både at noen personer mangler og at noen vises feil."},born:{en:"born",nb:"født"},infotext:{en:"...more information",nb:"...mer informasjon"},number:{en:"Number",nb:"Nummer"},rent:{en:"Rent",nb:"Husleie"},floor:{en:"floor",nb:"etasje"},asl:{en:"Marital status",nb:"Sivilstand"},occupation:{en:"occupation",nb:"yrke"},unknown:{en:"unknown",nb:"ukjent"},ug:{en:"unmarried",nb:"ugift"},e:{en:"widow/widower",nb:"enke/enkemann"},g:{en:"married",nb:"gift"},s:{en:"son",nb:"sønn"},d:{en:"daughter",nb:"datter"},tj:{en:"servant",nb:"tjener"},hf:{en:"head of the family",nb:"husfader"},hm:{en:"housewife",nb:"husmor"},ind:{en:"innermost ",nb:"inderst"}}});Ext.define("Client.module.map.info.tools.Census",{extend:Client.module.map.info.tools.Generic,mixins:[Adaptive.layer.Highlight],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Census");g.viewConfig={cls:"a3-census",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{click:function(){g.buildGui()}}}},buildGui:function(){var b=this,g=function(h){return b.lang.getString(h)};b.censusStore=Ext.create("Ext.data.Store",{fields:["gaardsnavn_gateadr","bruksnavn","kommunenr",{name:"apartments",type:"auto"},{name:"persons",type:"auto"}],proxy:{url:"proxies/xDigitalarkivetProxy.ashx",type:"ajax",reader:{type:"json",root:"results"}}});b.infoWindow=Ext.create("Ext.window.Window",{constrain:true,width:500,minWidth:300,maxHeight:map.parentView.getHeight()-50,layout:"fit",title:g("title"),items:[{xtype:"dataview",store:b.censusStore,cls:"a3-census-view",tpl:['<p id="info">'+g("description")+"</p>",'<tpl for=".">','<div class="menuitem">',"<h1>{gaardsnavn_gateadr}</h1>",'<tpl for="apartments">',"<tpl if=\"leilighetsnummer != ''\">","<h2>"+g("number")+" {leilighetsnummer}, {etasje} "+g("floor")+". "+g("rent")+": {husleie}</h2>","</tpl>",'<ul class="persons">','<tpl for="persons">',"<li>","<h3>{fornavn}, {slektsnavn} "+g("born")+" {fodselsaar} ({kjonn})</h3>","<p>"+g("asl")+": {[this.lang(values.sivilstand)]}, "+g("occupation")+': {[this.lang(values.yrke)]} <a href="http://digitalarkivet.arkivverket.no/ft/person/{id}" target="_blank">'+g("infotext")+"</a></p>","</li>","</tpl>","</ul>","</tpl>","</div>","</tpl>",{lang:function(h){if(!h){return g("unknown")}var o=g(h.toLowerCase());return o.indexOf("Unknown translation: ")==-1?o:h}}],disableSelection:true,itemSelector:"div.menuitem",emptyText:'<p class="nodata">'+g("emptyText")+"</p>",autoScroll:true,prepareData:function(q,o,h){return b.prepareData(h)}}],listeners:{destroy:function(){b.removeHighlight()}}});b.infoWindow.show();b.loadCensus();b.showHighlight()},hidePopup:function(){var b=this;if(b.infoWindow){b.infoWindow.destroy();delete b.infoWindow}},loadCensus:function(){var b=this;b.censusStore.getProxy().extraParams={latitude:b.lonlat.lat,longitude:b.lonlat.lon};b.censusStore.load()},showHighlight:function(){var g=this,b=new OpenLayers.Geometry.Point(g.point.lon,g.point.lat),h=OpenLayers.Geometry.Polygon.createRegularPolygon(b,50,20);
1g.highlightFeature(h.toString(),g.map.getProjection())},prepareData:function(h){var g=this,q={gaardsnavn_gateadr:h.get("gaardsnavn_gateadr"),apartments:{}},b=h.get("apartments")||[],o=h.get("persons")||[];q.apartments.none={persons:[]};b.forEach(function(z){z.persons=[];q.apartments[z.leilighetsnummer]=z});o.forEach(function(z){if(q.apartments[z.leilighetsnummer]){q.apartments[z.leilighetsnummer].persons.push(z)}else{q.apartments.none.persons.push(z)}});var w=[];Ext.iterate(q.apartments,function(A,z){if(z.persons.length>0){w.push(z)}});q.apartments=Ext.Array.sort(w,function(A,z){return A.leilighetsnummer-z.leilighetsnummer});return q}});Ext.define("Client.module.map.info.tools.lang.Measure",{strings:{title:{en:"Measure distance",nb:"MÃ¥l avstand"}}});Ext.define("Client.module.map.info.tools.Measure",{extend:Client.module.map.info.tools.Generic,internal_name:"measure_distance",mixins:[Adaptive.layer.DrawInMap],showMeasurement:true,showNauticalDistance:true,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Measure");g.viewConfig={cls:"a3-measure",tooltip:g.lang.getString("title"),listeners:{scope:g,click:function(){var h={evtName:"mapPopupHide",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:null};g.dispatchEvent(h,{confirmationRequired:false});g.addDrawControl("line",g.point)}}}},onFeatureAdded:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}setTimeout(function(){h.deactivateSelect();h.reportEvent("enableInfoTool")},0)},onBeforeFeatureAdded:function(){},onSketchModified:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}this.drawMeasurementForFeature(b.feature)},measurementStyle:{label:"",fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2},drawMeasurementForFeature:function(B){var q=this,h=B.geometry.getVertices();q.clearupFeatureMeasurements(B);if(h.length>1){for(var g=1;g<h.length;g++){var w=new OpenLayers.Geometry.Point(h[g-1].x,h[g-1].y),z=new OpenLayers.Geometry.Point(h[g].x,h[g].y),b=this.createTextNode(w,z);if(b){b.attributes.ignore=true;try{this.drawingLayer.addFeatures([b]);B.textNodes.push(b)}catch(o){console.warn(o)}}}var A=q.createTotalLengthTextNode(B.geometry);if(A){A.attributes.ignore=true;try{this.drawingLayer.addFeatures([A]);B.textNodes.push(A)}catch(o){console.warn(o)}}}},clearupFeatureMeasurements:function(g){if(!g){return}if(g.textNodes&&g.textNodes.length>0&&g.textNodes[0].layer){var b=g.textNodes[0].layer;b.removeFeatures(g.textNodes)}g.textNodes=[]},createTextNode:function(C,D){var A=this,o=new OpenLayers.Geometry.LineString([C,D]),z=o.getGeodesicLength(A.map.getProjection()),q=1852,g;if(z==0){return}var w=o.getCentroid(),B=Ext.Number.toFixed(z/q,2),h,b;if(z/10000>1){h=Ext.Number.toFixed(z/1000,2);b="km"}else{h=Ext.Number.toFixed(z,1);b="m"}if(A.showMeasurement&&A.showNauticalDistance){g=h+" "+b+" / "+B+" nm"}else{if(A.showMeasurement){g=h+" "+b}else{if(A.showNauticalDistance){g=B+" nm"}}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point((C.x+D.x)/2,(C.y+D.y)/2),{show_label:true,name:g,labelStyle:"small"},{label:g,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})},createTotalLengthTextNode:function(A){var z=this,q=A.getVertices(),w=A.getGeodesicLength(z.map.getProjection()),o=1852,g;if(q.length<=2){return}g=q[q.length-1];var B=Ext.Number.toFixed(w/o,2),h,b;if(w/10000>1){h=Ext.Number.toFixed(w/1000,2);b="km"}else{h=Ext.Number.toFixed(w,1);b="m"}if(z.showMeasurement&&z.showNauticalDistance){name=h+" "+b+" / "+B+" nm"}else{if(z.showMeasurement){name=h+" "+b}else{if(z.showNauticalDistance){name=B+" nm"}}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(g.x,g.y),{show_label:true,name:name,labelStyle:"small"},{label:name,labelYOffset:15,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})}});
1Ext.define("Client.module.map.info.tools.lang.MeasureArea",{strings:{title:{en:"Measure area",nb:"MÃ¥l areal"}}});Ext.define("Client.module.map.info.tools.MeasureArea",{extend:Client.module.map.info.tools.Generic,internal_name:"measure_area",mixins:[Adaptive.layer.DrawInMap],showLengthMeasurement:false,showMeasurement:true,showHectare:false,showNauticalDistance:true,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.MeasureArea");g.viewConfig={cls:"a3-measure-area",tooltip:g.lang.getString("title"),listeners:{scope:g,click:function(){var h={evtName:"mapPopupHide",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:null};g.dispatchEvent(h,{confirmationRequired:false});g.addDrawControl("polygon",g.point)}}}},onFeatureAdded:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}setTimeout(function(){h.deactivateSelect();h.reportEvent("enableInfoTool")},0)},onBeforeFeatureAdded:function(){},onSketchModified:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}this.drawMeasurementForFeature(b.feature)},measurementStyle:{label:"",fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2},drawMeasurementForFeature:function(B){var q=this,h=B.geometry.getVertices();q.clearupFeatureMeasurements(B);if(h.length>1){for(var g=1;g<h.length;g++){var w=new OpenLayers.Geometry.Point(h[g-1].x,h[g-1].y),z=new OpenLayers.Geometry.Point(h[g].x,h[g].y),b=q.showLengthMeasurement&&q.createTextNode(w,z);if(b){b.attributes.ignore=true;try{q.drawingLayer.addFeatures([b]);B.textNodes.push(b)}catch(o){console.warn(o)}}}var A=q.createTotalAreaTextNode(B.geometry);if(A){A.attributes.ignore=true;try{this.drawingLayer.addFeatures([A]);B.textNodes.push(A)}catch(o){console.warn(o)}}}},clearupFeatureMeasurements:function(g){if(!g){return}if(g.textNodes&&g.textNodes.length>0&&g.textNodes[0].layer){var b=g.textNodes[0].layer;b.removeFeatures(g.textNodes)}g.textNodes=[]},createTextNode:function(C,D){var A=this,o=new OpenLayers.Geometry.LineString([C,D]),z=o.getGeodesicLength(A.map.getProjection()),q=1852,g;if(z==0){return}var w=o.getCentroid(),B=Ext.Number.toFixed(z/q,2),h,b;if(z/10000>1){h=Ext.Number.toFixed(z/1000,2);b="km"}else{h=Ext.Number.toFixed(z,1);b="m"}if(A.showMeasurement&&A.showNauticalDistance){g=h+" "+b+" / "+B+" nm"}else{if(A.showMeasurement){g=h+" "+b}else{if(A.showNauticalDistance){g=B+" nm"}}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point((C.x+D.x)/2,(C.y+D.y)/2),{show_label:true,name:g,labelStyle:"small"},{label:g,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})},createTotalAreaTextNode:function(z){var w=this,h=z.getVertices(),q=z.getGeodesicArea(w.map.getProjection()),o=z.getCentroid(),g,b;if(h.length<=2){return}if(q/1000000>=1){g=Ext.Number.toFixed(q/1000000,2);b="km2"}else{if(q/10000>=1){g=Ext.util.Format.number(q,"0,0");b="m2"}else{g=Ext.Number.toFixed(q,1);b="m2"}}if(w.showHectare){name=Ext.Number.toFixed(q/10000,2)+" ha"}else{if(w.showMeasurement){name=g+" "+b}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(o.x,o.y),{show_label:true,name:name,labelStyle:"small"},{label:name,labelYOffset:15,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})}});Ext.define("Client.module.map.info.tools.lang.StreetView",{strings:{title:{en:"Google Streetview",nb:"Google Streetview"}}});Ext.define("Client.module.map.info.tools.StreetView",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.StreetView");g.viewConfig={cls:"a3-streetview",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:g.openGoogle}}},openGoogle:function(){var o=this,g="http://maps.google.com/maps/?cbll="+o.lonlat.lat+","+o.lonlat.lon+"&z=19&layer=c&cbp=1",b=window.innerHeight-200,h=window.innerWidth-200,z=100,w=100,q=window.open(g,"_blank","toolbar=yes,scrollbars=yes,resizable=yes,top="+z+",left="+w+",width="+h+",height="+b);q.focus()}});Ext.define("Client.module.map.info.tools.lang.Traveltime",{strings:{title:{en:"
1Calculate traveltime by ship",nb:"Beregne reisetid med båt"},departtime:{en:"Departure time",nb:"Avreise kl"},arrivetime:{en:"Arrive time",nb:"Ankomst kl"},speed:{en:"Speed (knot)",nb:"Hastighet (knop)"},hourtitle:{en:"hours",nb:"timer"},minutetitle:{en:"minutes",nb:"minutter"},distance:{en:"Distance:",nb:"Distanse:"},timeunderway:{en:"Time to destination:",nb:"Tid til målet:"},buttontext:{nb:"Beregn ankomst:",en:"Calculate arrival:"}}});Ext.define("Client.module.map.info.tools.Traveltime",{extend:Client.module.map.info.tools.Generic,internal_name:"travel_time_calculation",mixins:[Adaptive.layer.DrawInMap,Adaptive.form.mixins.Generator,Adaptive.mixins.Notify],showMeasurement:false,showNauticalDistance:false,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Traveltime");g.timeFormat=g.formatDate.getString("time_format");g.timeselect=Ext.create("Ext.form.field.Time",{fieldLabel:g.lang.getString("departtime"),labelAlign:"top",margin:"10 0 0 10",name:"sendtime",disabled:false,increment:1,width:150,format:"H:i",id:"time",value:Ext.Date.format(new Date(),"H:i"),listeners:{change:function(w,q){var h,o;h=q;if(g.speedfield){if(g.speedfield.value){o=g.speedfield.value}}if(h!=null&&o!=null&&o!=0){g.findTraveltime()}}},renderer:function(){this.setStyle("opacity",0.3)}}),g.speedfield=g.createField("speed",{fieldLabel:g.lang.getString("speed"),margin:"10 0 0 10",labelAlign:"top",xtype:"numberfield",minValue:1,width:150,id:"speed",value:10,listeners:{change:function(w,q){var h,o;if(g.timeselect){if(g.timeselect.value){h=g.timeselect.value}}var o=q;if(h!=null&&o!=null&&o!=0){g.findTraveltime()}}}}),g.infoWindow=Ext.create("Ext.window.Window",{closeAction:"hide",resizable:false,constrain:true,width:400,height:320,title:g.lang.getString("title"),cls:"a3-modules-body",listeners:{close:function(){g.deactivate()}},items:[g.createSet("parameters",{collapsible:false,title:false},[g.createFc("","",{layout:{type:"vbox",align:"left"}},[g.timeselect,g.speedfield])]),g.createSet("info",{collapsible:false,title:false},[g.createFc("","",{layout:{type:"vbox",align:"left"}},[{xtype:"displayfield",id:"distancelabel",labelStyle:"width:140px",style:"font-weight: bold;margin-left:10px;font-size:18px",fieldLabel:g.lang.getString("distance"),labelAlign:"left"},{xtype:"displayfield",id:"timeunderwaylabel",labelStyle:"width:140px",style:"font-weight: bold;margin-left:10px",fieldLabel:g.lang.getString("timeunderway"),labelAlign:"left"},{xtype:"displayfield",id:"arrivallabel",labelStyle:"width:140px",style:"font-weight: bold;margin-left:10px",fieldLabel:g.lang.getString("arrivetime"),labelAlign:"left"}])])],buttons:[]});g.viewConfig={cls:"a3-traveltime",tooltip:g.lang.getString("title"),listeners:{scope:g,click:function(){var h={evtName:"mapPopupHide",evtInitiatingModule:g,evtSuperInitiatingModule:g,evtBroadcastingController:null,callback:null,data:null};g.dispatchEvent(h,{confirmationRequired:false});g.addDrawControl("line",g.point)}}}},onFeatureAdded:function(b){var h=this,g=b.feature;h.travelroute=g;if(g.attributes.ignore){return}h.findTraveltime();h.infoWindow.showWithin(200);if(h.drawControl){h.drawControl.deactivate()}setTimeout(function(){h.reportEvent("enableInfoTool")},0)},onBeforeFeatureAdded:function(){},onSketchModified:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}this.drawMeasurementForFeature(b.feature)},measurementStyle:{label:"",fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2},findTraveltime:function(){var G=this,B=1852,g,b,o,A,I,h,E,w,z,D;var F=G.infoWindow.down("#time").getValue();var q=G.infoWindow.down("#speed").getValue();if(F==null||q==null||q==0){return}g=G.travelroute.geometry.getGeodesicLength(G.map.getProjection());g=g/B;z=Ext.Number.toFixed(g,1)+" NM";b=g/q;o=Math.floor(b);A=(b-o)*60;if(A<1e-7){A=Math.floor(A)}else{A=Math.floor(A+1)}if(A==60){A=0;o+=1}if(o==0){D=A.toString().padStart(2,"0")+" "+G.lang.getString("minutetitle")}else{D=o.toString().padStart(2,"0")+" "+G.lang.getString("hourtitle")+" "+A.toString().padStart(2,"0")+" "+G.lang.getString("minutetitle")}I=F.getHours();h=F.getMinutes();E=Number(I)+Number(o);w=Number(h)+Number(A);
1if(w>59){w=w%60;E+=1}var H=Math.floor(E/24);var C="";if(H>=1){C=" +"+H+"d"}E=E%24;arrivetime=E.toString().padStart(2,"0")+":"+w.toString().padStart(2,"0")+C;G.infoWindow.down("#timeunderwaylabel").setValue(D);G.infoWindow.down("#distancelabel").setValue(z);G.infoWindow.down("#arrivallabel").setValue(arrivetime)},drawMeasurementForFeature:function(B){var q=this,h=B.geometry.getVertices();q.clearupFeatureMeasurements(B);if(h.length>1){for(var g=1;g<h.length;g++){var w=new OpenLayers.Geometry.Point(h[g-1].x,h[g-1].y),z=new OpenLayers.Geometry.Point(h[g].x,h[g].y),b=this.createTextNode(w,z);if(b){b.attributes.ignore=true;try{this.drawingLayer.addFeatures([b]);B.textNodes.push(b)}catch(o){console.warn(o)}}}var A=q.createTotalLengthTextNode(B.geometry);if(A){A.attributes.ignore=true;try{this.drawingLayer.addFeatures([A]);B.textNodes.push(A)}catch(o){console.warn(o)}}}},clearupFeatureMeasurements:function(g){if(!g){return}if(g.textNodes&&g.textNodes.length>0&&g.textNodes[0].layer){var b=g.textNodes[0].layer;b.removeFeatures(g.textNodes)}g.textNodes=[]},createTextNode:function(C,D){var A=this,o=new OpenLayers.Geometry.LineString([C,D]),z=o.getGeodesicLength(A.map.getProjection()),q=1852,g;if(z==0){return}var w=o.getCentroid(),B=Ext.Number.toFixed(z/q,2),h,b;if(z/10000>1){h=Ext.Number.toFixed(z/1000,2);b="km"}else{h=Ext.Number.toFixed(z,1);b="m"}if(A.showMeasurement&&A.showNauticalDistance){g=h+" "+b+" / "+B+" nm"}else{if(A.showMeasurement){g=h+" "+b}else{if(A.showNauticalDistance){g=B+" nm"}}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point((C.x+D.x)/2,(C.y+D.y)/2),{show_label:true,name:g,labelStyle:"small"},{label:g,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})},createTotalLengthTextNode:function(A){var z=this,q=A.getVertices(),w=A.getGeodesicLength(z.map.getProjection()),o=1852,g;if(q.length<=2){return}g=q[q.length-1];var B=Ext.Number.toFixed(w/o,2),h,b;if(w/10000>1){h=Ext.Number.toFixed(w/1000,2);b="km"}else{h=Ext.Number.toFixed(w,1);b="m"}if(z.showMeasurement&&z.showNauticalDistance){name=h+" "+b+" / "+B+" nm"}else{if(z.showMeasurement){name=h+" "+b}else{if(z.showNauticalDistance){name=B+" nm"}}}return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(g.x,g.y),{show_label:true,name:name,labelStyle:"small"},{label:name,labelYOffset:15,fontSize:"15px",fontColor:"#800517",fontFamily:"Verdana",labelOutlineColor:"#dddddd",labelAlign:"cm",labelOutlineWidth:2})},deactivate:function(){var b=this;b.cleanUp()},cleanUp:function(){var b=this;delete b.travelroute;b.deactivateSelect();b.reportEvent("enableInfoTool")}});Ext.define("Client.module.map.info.tools.lang.Vegbilder",{strings:{title:{en:"Vegbilder",nb:"Vegbilder"}}});Ext.define("Client.module.map.info.tools.Vegbilder",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Vegbilder");g.viewConfig={cls:"a3-vegbilder",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:g.openVegbilder}}},openVegbilder:function(){var o=this,g="https://vegbilder.atlas.vegvesen.no/?year=latest&zoom=7&view=map&radius=15&&lat="+o.lonlat.lat+"&lng="+o.lonlat.lon,b=window.innerHeight-200,h=window.innerWidth-200,z=100,w=100,q=window.open(g,"_blank","toolbar=yes,scrollbars=yes,resizable=yes,top="+z+",left="+w+",width="+h+",height="+b);q.focus()}});Ext.define("Client.module.map.info.tools.lang.Vegkart",{strings:{title:{en:"Vegkart",nb:"Vegkart"}}});Ext.define("Client.module.map.info.tools.Vegkart",{extend:Client.module.map.info.tools.Generic,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.lang.Agent");Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.info.tools.lang.Vegkart");g.viewConfig={cls:"a3-vegkart",tooltip:g.lang.getString("title"),tooltipType:"title",listeners:{scope:g,click:g.openVegkart}}},openVegkart:function(){var o=this,g="https://vegkart.atlas.vegvesen.no/#kartlag:geodata/@"+o.point.lon+","+o.point.lat+","+o.map.getZoom(),b=window.innerHeight-200,h=window.innerWidth-200,z=100,w=100,q=window.open(g,"_blank","toolbar=yes,scrollbars=yes,resizable=yes,top="+z+",left="+w+",width="+h+",height="+b);q.focus()}});Ext.define("Client.module.map.layerManager.ThematicMapFullsize",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator,Client.module.map.layerManager.mixins.LayerManagerTree],lang:null,activeCategoryButton:null,categoriesNodes:null,cookieKey:"thematic_map_show_on_startup",showOnStartupDefault:false,constructor:function(b){var g=this;g.tileId=undefined;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.layerManager.lang.Categories")},createView:function(){var g=this;if(!g.thematicMapData){return}var b=Ext.create("Adaptive.ux.ReactComponent",{name:"thematicMap",parentController:g.moduleController,props:{langCode:GeoMind.utils.SessionManager.ss.langCode,lang:{groupEmptyText:g.lang.getString("groupEmptyText"),title:g.lang.getString("title"),subtitle:g.lang.getString("subtitle",true)||"",showOnStartup:g.lang.getString("showOnStartup")},guiUuid:__guuid__,defaultThemeId:g.defaultThemeId,thematicMapShowOnStartup:g.showOnStartup(),thematicMapShowOnStartupChecked:function(h){Ext.util.Cookies.set(g.cookieKey,!h)},mapStateUpdated:g.mapStateUpdated,tileId:g.tileId,tileClicked:function(h,o){if(g.tileId==o&&!g.mapStateUpdated){g.reportEvent("activateThemes",[])}else{g.tileId=o;h=h||[];g.reportEvent("activateThemes",h);g.mapStateUpdated=false}},callback:function(){setTimeout(function(){g.wnd.close()},100)},loadingCallback:function(h){g.wnd.setLoading(h)},data:g.thematicMapData}});g.wnd=Ext.create("Ext.window.Window",{title:"",closeAction:"destroy",layout:"fit",width:Math.max(400,Math.min(Math.floor(Ext.getBody().getWidth()*0.8),1200)),height:Math.max(400,Math.min(Math.floor(Ext.getBody().getHeight()*0.8),1200)),autoScroll:false,items:b,style:"box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 8px;padding: 0; margin: 0; border-width: 0;",header:false,modal:true,resizable:false,draggable:false,listeners:{scope:g,beforehide:function(){g.fireEvent("resetToggle")},beforeRender:function(){g.mon(Ext.getBody(),"click",function(h,o){g.wnd.close()},g,{delegate:".x-mask"})}}});g.wnd.show()},showOnStartup:function(){var b=this,g=Ext.util.Cookies.get(b.cookieKey);if(typeof(__shared__)!="undefined"&&__shared__!=null){return false}else{if(g){return g!="false"}else{return b.showOnStartupDefault}}},afterMapReset:function(g){var b=this;Ext.Ajax.request({url:"WebServices/client/ThematicMap.asmx/ReadFullsize",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},scope:b,success:function(h){h=Ext.JSON.decode(h.responseText).d;if(h.success){h=h.data[0].value;b.thematicMapData=Ext.JSON.decode(h).array;if(b.showOnStartup()){b.createView()}}},failure:function(h){console.error(h)}})},internalActivate:function(){var b=this;b.internalDeactivate()},activate:function(){var b=this;this.active=true;b.createView()},deactivate:function(){var b=this;if(b.wnd){b.wnd.close()}},internalDeactivate:function(){var b=this},setActiveRecordDataById:function(){},_onSetDefaultTheme:function(b){this.defaultThemeId=b.data;Ext.defer(function(){this.mapStateUpdated=false},1000,this)},_onUpdateMapState:function(){this.mapStateUpdated=true},_onUserAuthenticated:function(){this.internalActivate()},_onUserSignedOut:function(){this.internalActivate()}});Ext.define("Client.module.map.layerManager.lang.LayerManagerTree",{strings:{showMetadata:{en:"Show metadata and settings for this layer",nb:"Se pÃ¥ metadata og innstillinger for temalaget"},showMetadataCategory:{en:"Show metadata for this category",nb:"Se pÃ¥ metadata for kategorien"},showConfig:{en:"Show settings",nb:"Konfigurer"},removeLayer:{en:"Remove layer",nb:"Fjern temalag"},not_in_scale_info:{en:"Not in scale",nb:"Ikke innenfor mÃ¥lestokken",nn:"Ikkje innafor mÃ¥lestokk"},not_spatial_info:{en:"Not a spatial layer",nb:"Temalaget har ikke geometri"},is_failing:{en:"Layer is not loading properly. Tiles may be missing.",nb:"Temalaget laster ikke riktig. Deler kan mangle."},activate_auto_refresh:{en:"Activate automatic refresh of layer",nb:"Aktiver automatisk oppdatering av laget"},deactivate_auto_refresh:{en:"Layer is automatically refreshed (click to stop)",nb:"Laget oppdateres automatisk (klikk for Ã¥ stoppe)"},dataview:{en:"Open table view",nb:"Se data"},dataview_edit:{en:"Open table view and edit data",nb:"Ã
pne tabell og rediger innhold"},metadata:{en:"View metadata",nb:"Om temalaget"},config:{en:"Show config",nb:"Konfigurer"},filter:{en:"Filter",nb:"Filter"},action_menu_qtip:{en:"Click to show more options",nb:"Trykk for å se flere valg"},action_menu_title:{en:"Alternatives for dataset",nb:"Alternativer for datasettet"}},errCodes:{}});Ext.define("Client.module.map.search.ArticleGenericScroller",{extend:Ext.form.field.ComboBox,views:[],listKeyNav:{enable:Ext.emptyFn,disable:Ext.emptyFn},createPicker:function(){var g=this,b=Ext.create("Ext.container.Container",{cls:"a3-border-box a3-article-search-results",width:100,height:100,minHeight:80,maxHeight:Ext.getBody().getHeight()-150,floating:true,focusOnToFront:false,layout:"vbox",items:g.views});b.getNode=function(){b.getView().getNode(arguments)};return b},getValue:function(){var b=this,h=b.getRawValue(),g=b.value;if(b.getDisplayValue()!==h){g=h;b.value=b.displayTplData=b.valueModels=null}return g},syncSelection:function(){}});Ext.define("Client.module.map.search.mixin.Coordinate",{matchCoordinates:function(w){var o=this,z=/^\s*([1-9][1-9])\s?([C-X]?)\s+(\d+)\s*([EN])?\s+(\d+)\s*([EN])?\s*$/,q=w.match(z),g,b,A,h;if(q){g="326"+q[1];b=parseInt(q[3]);A=parseInt(q[5]);if((q[4]==="N"&&q[6]!=="N")||(!q[4]&&!q[6]&&b>A)){h=b;b=A;A=h}o.goToCoordinate({point:new OpenLayers.Geometry.Point(b,A),srs:g});return true}},goToCoordinate:function(q){var h=this,b=q.point,w=h.map.getProjection(),o="EPSG:"+q.srs;b=Adaptive.utils.Proj.transformPoint(b,o,w);b=new OpenLayers.Geometry.Point(b.x,b.y);
1if(h.navLayer){h.navLayer.removeAllFeatures()}else{h.navLayer=new OpenLayers.Layer.Vector("goToCoordLayer");h.map.addLayer(h.navLayer)}var g=new OpenLayers.Feature.Vector(b,{},{graphicName:"cross",strokeColor:"#00f",strokeWidth:2,fillOpacity:0,pointRadius:10});h.navLayer.addFeatures(g);h.map.setCenter(new OpenLayers.LonLat(b.x,b.y),h.defaultZoomLevel)},clearCoordinateSearch:function(){var b=this;if(b.navLayer){b.navLayer.removeAllFeatures()}}});Ext.define("Client.module.map.search.MultiAgentView",{extend:Ext.form.field.Picker,mixins:[Client.module.map.search.mixin.Coordinate],queryDelay:null,cls:"a3-search-multi-agent-view",triggerCls:"x-form-clear-trigger-search x-form-clear-trigger-search-hidden",config:{blurOnSelect:true,groupId:null},disabled:true,constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.multiQueryTask=new Ext.util.DelayedTask(g.performQuery,g);g.emptyText=g.lang.getString("emptyText_multi");g.agents=[];Ext.apply(g,b);g.callParent([b]);g.on("focus",function(){if(g.multiQuery&&!g.isCoordinateSearch){g.expand();g.focus()}});g.on("change",function(o,h){if(h){if(this.triggerEl){this.triggerEl.removeCls("x-form-clear-trigger-search-hidden")}}else{this.triggerEl.addCls("x-form-clear-trigger-search-hidden")}if(!h){g.onClear();return}g.multiQuery=h;g.multiQueryTask.delay(400)});g.on("afterrender",function(){g.updateEmptyText();g.listKeyNav=new Ext.util.KeyNav(g.inputEl,{down:function(){var h=false;g.agents.forEach(function(o){if(!h&&o.isEnabled&&o.view&&o.hasResults()){g.highlightAgent(o);h=true}})},up:function(){var h=false;g.agents.slice().reverse().forEach(function(o){if(!h&&o.isEnabled&&o.view&&o.hasResults()){g.highlightAgent(o,true);h=true}})},esc:g.onTriggerClick,scope:g,forceKeyDown:true});g.inputEl.on("click",function(){if(g.multiQuery&&!g.isCoordinateSearch){g.expand()}});if(Ext.isChrome){g.inputEl.dom.readOnly=true;g.inputEl.on("focus",function(){g.inputEl.dom.readOnly=false});g.inputEl.on("blur",function(){g.inputEl.dom.readOnly=true})}Ext.defer(function(){g.enable()},200)});g.menuItem=Ext.create("Ext.menu.CheckItem",{text:g.lang.getString("menuItemText_multi"),group:g.groupId,checked:g.agents.length==0,listeners:{afterrender:function(){var h=this.checked;g.agents.forEach(function(o){h?o.menuItem.enable():o.menuItem.disable()})},checkchange:function(o,h){g.agents.forEach(function(q){h?q.menuItem.enable():q.menuItem.disable()})},click:function(){g.fireEvent("activateagent")}}})},setEnabled:function(b){var g=this;g.menuItem.setChecked(b);if(!b){g.collapse()}},highlightAgent:function(b,g){b.view.focus();if(b.highlightAt){b.highlightAt(g?-1:0)}},addAgent:function(b){var g=this;g.agents.push(b);if(g.picker){g.picker.add(b.view)}g.mon(b,"searchResultSelected",function(h){g.suspendEvents();g.setValue(g.cleanName(h.name));g.resumeEvents();g.fireEvent("select",g,h);g.collapse();if(g.blurOnSelect){g.triggerBlur()}else{g.focus()}});g.mon(b,"highlightNextView",function(o){var q=false,h=false;g.agents.forEach(function(w){if(h){return}if(w==o){q=true}else{if(q&&w.hasResults()){g.highlightAgent(w);h=true}}});if(!h){g.focus()}});g.mon(b,"highlightPrevView",function(o){var q,h=false;g.agents.forEach(function(w){if(h){return}if(w==o){if(q){g.highlightAgent(q,true)}else{g.focus()}h=true}else{if(w.isEnabled&&w.hasResults()){q=w}}})})},getFirstEnabledAgent:function(){var g=this,b;g.agents.some(function(h){if(h.isEnabled){b=h;return true}});return b},cleanName:function(b){if(!b){return""}return b.replace(/<.*?>/g," ").replace(/\s+/g," ")},performQuery:function(b){var h=this,g=h.updateEmptyText();if(h.matchCoordinates(h.multiQuery)){h.isCoordinateSearch=true;h.collapse();return}h.isCoordinateSearch=false;if(b&&(!h.picker||!h.picker.isVisible())){return}if(!h.multiQuery){h.collapse();return}if(g){h.expand();h.agents.forEach(function(o){if(o.isEnabled){h.focus();o.onQueryChange(h.multiQuery,g===1)}})}},createPicker:function(){var g=this,b=Ext.create("Ext.container.Container",{cls:"a3-search-multi-agent-result-list",layout:"anchor",autoScroll:true,floating:true,width:400});
1g.agents.forEach(function(h){b.add(h.view)});return b},alignPicker:function(){var g=this,b=g.getPicker();if(g.isExpanded){b.setWidth(g.up().getWidth());b.maxHeight=Ext.getBody().getHeight()-90;g.doAlign()}},updateEmptyText:function(){var h=this,g=0,b=null;h.agents.forEach(function(o){if(o.isEnabled){g++;if(b===null){b=o}else{if(b){b=false}}}});h.emptyText=b?b.emptyText:h.lang.getString("emptyText_multi");h.applyEmptyText();return g},onTriggerClick:function(){this.onClear()},onClear:function(){var b=this;b.setValue("");b.collapse();b.agents.forEach(function(g){g.onClear()});b.updateEmptyText();b.clearCoordinateSearch();b.fireEvent("clear",b)}});Ext.define("Client.module.map.search.Inline",{extend:Client.module.map.search.MultiAgentView,blurOnSelect:false,triggerCls:"x-form-clear-trigger-search x-form-clear-trigger-search-hidden",constructor:function(b){var h=this;b=b||{};h.groupId="a3-search-agent-inline-radio-"+Ext.id();Ext.apply(h,b);h.callParent([b]);if(b.agent){h.addAgent(b.agent)}else{var g=Ext.create("Client.module.map.search.agents.Standard",{searchItems:b.searchItems||"AdaptiveNames,AdaptiveAddresses",searchThemes:!!b.searchThemes,emptyText:b.emptyText});h.addAgent(g)}h.agents[0].map=h.map;h.agents[0].setEnabled(true);if(h.parentController){h.parentController.registerModule(h.agents[0])}},alignPicker:function(){var h=this,o=Ext.getBody().getHeight(),g=h.getPosition(),b=h.getPicker();if(h.isExpanded){b.setWidth(h.up().getWidth());if(g[1]>o/2){b.maxHeight=g[1]-20}else{b.maxHeight=Ext.getBody().getHeight()-h.getPosition()[1]-90}h.doAlign()}}});Ext.define("Client.module.map.search.agents.ArticleGeneric",{extend:Client.module.map.search.Agent,mixins:[Client.module.tool.article.mixins.Utils],internal_name:"av_search_article_generic",config:{datasets:null},constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.queryDelay=400;g.loadDataTask=new Ext.util.DelayedTask(g.loadData,g);g.displayField="name";g.menuItemText=g.lang.getString("menuItemText_articleGeneric");g.buttonCls="a3-search-btn-standard";g.loadingText=g.lang.getString("loadingText");g.emptyText=(b.lang||g.lang).getString("emptyText_articleGeneric");g.emptyTextList=g.lang.getString("emptyText_boundlist");b.datasets=g.cleanDatasets(b.datasets);Ext.apply(g,b);g.createDatasetStores();g.callParent([b])},buildView:function(){var b=this;b.views=[];b.noResultBox=Ext.widget("component",{html:b.emptyTextList,cls:"a3-article-no-result",hidden:true});b.views.push(b.noResultBox);b.datasets.forEach(function(h){var g=Ext.create("Ext.view.View",{store:h.store,hidden:true,loadMask:false,dataset:h.dataIndex,cls:"a3-search-list",tpl:new Ext.XTemplate("<h2>"+h.text+" ({[values.length]})</h2>",'<tpl if="values.length > 3">','<tpl if="this.isShowAll()">','<a href="#" onclick="return false;">'+b.lang.getString("hideMoreResults")+"</a>","<tpl else>",'<a href="#" onclick="return false;">'+b.lang.getString("showMoreResults")+"</a>","</tpl>","</tpl>","<ul>",'<tpl for=".">',"<li>","<h3>{name}</h3>","<p>{[this.formatDescription(values.description)]}</p>","</li>","{% if (xindex >= 3 && !this.isShowAll()) break; %}","</tpl>","</ul>",{formatDescription:function(o){return o.replace(/<.*?>/g,"").substring(0,100)},isShowAll:function(){return this.showAll},showAll:false}),itemSelector:"li",listeners:{itemclick:function(q,o){b.onItemClick(q,o,h)},itemMouseEnter:b.onItemMouseOver,containerclick:b.onContainerClick,scope:b}});h.view=g;b.views.push(g)});b.view=Ext.create("Ext.form.field.ComboBox",{cls:"a3-search-agent-scroller",displayField:b.displayField,emptyText:b.emptyText,buttonCls:b.buttonCls,minChars:1,hideLabel:true,queryDelay:b.queryDelay,trigger1Cls:b.searchCls+" "+b.searchCls+"-hidden",loadingText:b.loadingText,onTriggerClick:function(g){b.view.clearValue();b.cleanStores();b.view.collapse();delete b.view.lastQuery},listeners:{scope:b,render:b.onRender,change:b.onChange,beforequery:b.onBeforeQuery},views:b.views,listKeyNav:{enable:Ext.emptyFn,disable:Ext.emptyFn},createPicker:function(){var h=this,g=Ext.create("Ext.container.Container",{cls:"a3-border-box a3-article-search-results",width:100,height:100,minHeight:80,maxHeight:Ext.getBody().getHeight()-150,floating:true,focusOnToFront:false,layout:"vbox",items:h.views});g.getNode=function(){g.getView().getNode(arguments)};return g},expand:function(){if(this.picker){this.picker.maxHeight=Ext.getBody().getHeight()-150}Ext.form.field.ComboBox.prototype.expand.apply(this,arguments)},getValue:function(){var g=this,o=g.getRawValue(),h=g.value;if(g.getDisplayValue()!==o){h=o;g.value=g.displayTplData=g.valueModels=null}return h},syncSelection:function(){}})},onChange:function(h,g){var b=this;b.callParent(arguments);if(g){b.loadDataTask.delay(400,null,null,[g])}else{b.loadDataTask.cancel();b.cleanStores();b.view.collapse();delete b.view.lastQuery}},onClear:function(){this.loadResultsToMap([],"clear")},createDatasetStores:function(){var g=this,b=null;
1g.datasets.forEach(function(h){if(h.value.api=="dimu"){b="Client.data.model.search.article.Dimu"}else{if(h.cache){b="Client.data.model.search.article.Cache"}else{b="Client.data.model.search.Norvegiana"}}h.store=Ext.create("Ext.data.Store",{dataset:h,model:b,pageSize:0,currentPage:0,listeners:{beforeload:g.onBeforeLoad,load:g.onLoad,scope:g}})})},cleanDatasets:function(g){var h=this,b=[];g.forEach(function(o){if(o.value.api!=="avtheme"&&o.value.api!=="avdigitheme"&&o.value.api!=="flickr"){b.push(o)}});return b},standardSearchMouseover:function(b){this.reportEvent("standardSearchMouseover",b.data)},bindMapEvents:function(){var b=this;if(!b.mapEventsBinded){b.map.events.register("moveend",b,b.onMapMoveZoomEnd);b.map.events.register("move",b,b.onMapMove);b.mapEventsBinded=true}},unbindMapEvents:function(){var b=this;b.map.events.unregister("moveend",b,b.onMapMoveZoomEnd);b.map.events.unregister("move",b,b.onMapMove);b.mapEventsBinded=false},onMapMove:function(){var b=this;b.standardSearchMouseover({});b.loadDataTask.cancel()},onMapMoveZoomEnd:function(){var b=this;b.loadDataTask.delay(400,null,null,[b.lastQuery])},onBeforeQuery:function(b){this.lastQuery=b.query;this.bindMapEvents();return true},loadData:function(g){var b=this;b.view.getPicker().setLoading(true);b.noResultBox.hide();b.datasets.forEach(function(h){h.store.removeAll();h.view.hide();h.view.tpl.showAll=false;h.store.load({params:{query:g},spatial:true,query:g,dataset:h})})},onBeforeLoad:function(B,g){var z=this,w=z.map.getExtent(),h=g.dataset,b=2000000000,A=z.map.getCenter().transform(z.map.getProjectionObject(),new OpenLayers.Projection("EPSG:4326"));w=w.transform(z.map.getProjectionObject(),new OpenLayers.Projection("EPSG:4326"));if(B.dataset.cache){g.params.start=0;g.params.limit=0;g.params.bbox=w.left+","+w.bottom+","+w.right+","+w.top;g.params.tags=B.dataset.categories.join(",");g.params.datasource_data_index=B.dataset.dataIndex;return true}else{if(B.dataset.value.api=="dimu"){g.params.start=0;g.params.limit=100;g.params.apiKey=h.config.apikey;g.params.bbox=w;g.params.q=g.params.query;g.params.tags=B.dataset.categories.join(" OR ");return true}}var C=[new OpenLayers.Geometry.Point(w.bottom,w.left),new OpenLayers.Geometry.Point(w.top,w.left),new OpenLayers.Geometry.Point(w.top,w.right),new OpenLayers.Geometry.Point(w.bottom,w.right)],o=new OpenLayers.Geometry.Polygon(new OpenLayers.Geometry.LinearRing(C)).getGeodesicArea();var q=o>b?false:true;g.params.query=["delving_spec:"+h.value.dataset,(h.categories.length>0?"(dc_subject_text:("+h.categories.join(") OR dc_subject_text:(")+")) ":""),"(delving_title:"+g.params.query+"*^1.5","OR","delving_description:"+g.params.query+"*^0.7)","(delving_hasGeoHash:true^0.1)"].join(" ");if(g.spatial){g.params.pt=A.lat+","+A.lon;g.params.d=Math.min(300,Math.sqrt(o)/1000);g.params.geoType="bbox"}g.params.format="json";return true},onLoad:function(g,b,w,h){var o=this;g.getCount()>0?g.dataset.view.show():g.dataset.view.hide();if(!(g.dataset.cache||g.dataset.value.api=="dimu")){if(g.lastOptions.spatial){g.originalRecords=[];g.each(function(z){g.originalRecords.push(z.id)});g.load({params:{query:g.lastOptions.query},dataset:g.dataset,spatial:false,addRecords:true})}else{if(g.originalRecords){var q=g.originalRecords;delete g.originalRecords;g.sort([{sorterFn:function(B,A){var C=(q.indexOf(B.id)+1)||1000,z=(q.indexOf(A.id)+1)||1000;return C-z}}])}}}o.loadResultsToMap(b,"append");o.removeLoadMask()},removeLoadMask:function(){var b=this;if(b.datasets.every(function(g){return g.store.isLoading()==false})){b.view.getPicker().setLoading(false);b.hasResults()}},hasResults:function(){var b=this;if(b.datasets.every(function(g){return g.store.getCount()==0})){b.noResultBox.show()}},afterMapReset:function(g){var b=this;b.map=g.data.map},onItemClick:function(g,b,o){var h=this,q=h.getShareId(b.get("uid"),o.dataIndex);h.reportEvent("openArticleById",{article_id:q});h.view.collapse()},onContainerClick:function(b,h){var g=this;if(b.store.getCount()<=3){return}g.loadResultsToMap([],"clear");g.datasets.forEach(function(o){if(o.dataIndex==b.dataset){b.tpl.showAll=b.tpl.showAll?false:true;b.refresh()}else{if(o.view.store.getCount()>0){o.view.isVisible()?o.view.hide():o.view.show()}}if(o.view.isVisible()){g.loadResultsToMap(o.store.data.items,"append")}})},onItemMouseOver:function(g,b){this.standardSearchMouseover(b)},onRender:function(g){var b=this;
1g.getEl().on("click",function(o,h){if(h.className.indexOf("x-form-text")!=-1){if(b.view.lastQuery&&b.datasets.some(function(q){return q.store.getCount()>0})){g.expand()}else{g.collapse()}}})},cleanStores:function(){var b=this;b.datasets.forEach(function(g){g.store.removeAll()});b.onClear();b.unbindMapEvents()},loadResultsToMap:function(g,b){var h=this,o={evtName:"searchResultLoaded",evtInitiatingModule:h,evtSuperInitiatingModule:h,evtBroadcastingController:null,data:{operation:b,records:g,projection:new OpenLayers.Projection("EPSG:4326")}};h.dispatchEvent(o,{confirmationRequired:false})}});Ext.define("Client.module.map.search.agents.Single",{extend:Client.module.map.search.agents.Standard,searchItems:"AdaptiveNames,AdaptiveAddresses,AdaptiveThemes",pageSize:40,searchThemes:true,searchThemesFixed:[],searchType:"single",constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.menuItemText=g.lang.getString("menuItemText_themeData");b.emptyText=g.lang.getString("emptyText_themeData");Ext.apply(g,b);g.callParent([b])},shouldPerformLoad:function(b){return b.length>1},bindMapEvents:function(){},unbindMapEvents:function(){}});Ext.define("Client.module.map.search.agents.SuggestModel",{extend:Ext.data.Model,fields:["value"],proxy:{type:"ajax",reader:{type:"json",root:"data.suggestions",extractData:function(b){return b.map(function(g){return Ext.create("Client.module.map.search.agents.SuggestModel",{value:g})})}},buildRequest:function(b){var g=Ext.data.Request({action:"read",operation:b,url:this.url+encodeURIComponent(b.params.query||"")});b.request=g;return g}}});Ext.define("Client.module.map.search.agents.Suggest",{extend:Client.module.map.search.MultiAgent,serviceUrl:"proxies/xSearchSuggestProxy.ashx?url=",constructor:function(b){var g=this;b=b||{};g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.search.lang.Standard");g.displayField="name";g.buttonCls="a3-search-btn-standard";g.menuItemText=g.lang.getString("menuItemText_suggest");g.store=Ext.create("Ext.data.Store",{model:"Client.module.map.search.agents.SuggestModel"});g.tpl=new Ext.XTemplate('<tpl if="this.show()">','<div class="a3-search-suggestions">','<span class="a3-search-suggestions-title">',g.lang.getString("titleText_suggest"),":</span> ",'<tpl for=".">','<span class="x-boundlist-item">',"{value}","</span> ","</tpl>","</div>","</tpl>",{show:function(){return !g.store.isLoading()&&g.store.count()>0}});Ext.apply(g,b);g.callParent([b]);g.store.getProxy().url=g.serviceUrl+"/suggest/"},onQueryChange:function(h,b){var g=this;if(h!=g.lastQuery){g.clearResults();if(h&&h.length>3){g.lastQuery=h;g.store.load({params:{query:h}})}}g.view.refresh()},onItemSelect:function(g,b){this.reportEvent("search",{query:b.get("value")})},onClear:function(){var b=this;b.clearResults()},clearResults:function(){var b=this;b.lastQuery=null;b.store.removeAll()}});Ext.define("Client.module.map.search.lang.Vegvesen",{strings:{menuItemText_vegreferanse:{en:"Search by road reference",nb:"Vegsystemreferanse",nn:"Vegsystemreferanse"},emptyText_vegreferanse:{en:"Road reference (Vegsystemreferanse)",nb:"Vegsystemreferanse"},menuItemText_vegreferanse_v2:{en:"Search by road reference",nb:"Vegreferanse (gammel)",nn:"Vegreferanse (gammel)"},emptyText_vegreferanse_v2:{en:"Road reference (Vegreferanse)",nb:"Vegreferanse (gammel)"}},errCodes:{}});Ext.define("Client.module.map.timesliderSimple.ux.SliderPanel",{extend:Ext.container.Container,keyValueDict:null,me:null,slider:null,sliderListener:null,scalePanel:null,teller:0,opacity:1,constructor:function(b){this.callParent(arguments);if(!this.slider){this.add(this.createSlider())}else{if(this.sliderListener){this.slider.addListener(this.sliderListener)}this.add(this.slider)}this.teller=this.teller+1},enable:function(){this.slider.enable()},disable:function(){this.slider.disable()},createScalePanel:function(){this.scalePanel=Ext.create("Ext.container.Container",{title:"sliderPanel.tPanel",cls:"a3-timeslider-simple-scalepanel"});return this.scalePanel},createSlider:function(){this.slider=Ext.create("Ext.slider.Single",{value:50,increment:10,minValue:0,maxValue:100,listeners:this.sliderListener});return this.slider}
1,destroyScalePanel:function(){Ext.destroy(this.scalePanel);this.teller++},listeners:{resize:function(h,q,b,g,w,o){if(!this.scalePanel){this.add(this.createScalePanel());this.addScales()}this.adjustScales()}},addScales:function(){var b=this.getScaleParams();var o=b.startPos;var w=b.diff;var z;var g;var g=0;var h=this.opacity;for(var q=this.slider.minValue;q<=this.slider.maxValue;q=q+this.slider.increment){if(this.keyValueDict!=null){z=new Ext.form.Label({id:this.scalePanel.id+"scaleLabel"+q,html:""+this.keyValueDict[q],cls:"a3-timeslider-simple-scalepanel-val",x:(o+(w*g))+"px",style:{opacity:h}})}else{z=new Ext.form.Label({id:this.scalePanel.id+"scaleLabel"+q,html:""+q,cls:"a3-timeslider-simple-scalepanel-val",x:(o+(w*g))+"px",style:{opacity:h}})}this.scalePanel.add(z);g++}},adjustScales:function(){var b=this.scalePanel;var h=this.slider;var z=this.getScaleParams();var A=z.startPos;var B=z.diff;var o;var g;var g=0;for(var w=h.minValue;w<=h.maxValue;w=w+h.increment){var q=b.getChildByElement(b.id+"scaleLabel"+w,true);if(q==null){}else{q.setX(A+(B*g))}g++}b.doLayout()},getScaleParams:function(){var q=this.slider.getWidth();var g=155;var o=this.slider.normalizeValue(this.slider.minValue+this.slider.increment);g=this.slider.calculateThumbPosition(g);o=this.slider.calculateThumbPosition(o);var b=74;var h=(b/2)-7;g=this.slider.getBox().x-h;o=(o*(q-14)/100)+g;var w=o-g;return{startPos:g,diff:w}},updateScale:function(){var b=this;if(b.scalePanel){b.scalePanel.removeAll();b.addScales();b.adjustScales()}}});Ext.define("Client.module.map.timesliderSimple.lang.TimeSlider",{strings:{jan:{en:"January",nb:"Januar"},feb:{en:"February",nb:"Februar"},mar:{en:"March",nb:"Mars"},apr:{en:"April",nb:"April"},may:{en:"May",nb:"Mai"},jun:{en:"June",nb:"Juni"},jul:{en:"July",nb:"Juli"},aug:{en:"August",nb:"August"},sep:{en:"September",nb:"September"},okt:{en:"October",nb:"Oktober"},nov:{en:"November",nb:"November"},dec:{en:"December",nb:"Desember"},month:{en:"Month",nb:"MÃ¥ned"},year:{en:"Year",nb:"Ã
r"},showAllLayers:{en:"Show map layers with time ->",nb:"Se kartlag med tidsdata ->"},btnSave:{en:"Compare",nb:"Sammenlign"},btnCancel:{en:"Cancel",nb:"Avbryt"},infoBottom:{en:"The graph shows what year map layers have data",nb:"Grafen viser hvilke år kartlagene har data"},statHelp:{en:"The layer changes in between months, but does not change from year to year",nb:"Laget endrer seg fra måned til måned, men endres ikke fra år til år"},allMonths:{en:"All months",nb:"Alle måneder"},cboxAccumulatedMonths:{en:"Whole year",nb:"Hele året"},cboxAllMonths:{en:"Show all",nb:"Vis alle"},cboxAllYears:{en:"Show all",nb:"Vis alle"},noData:{en:"No data",nb:"Ingen data"},headerTimeLayerList:{en:"Map layers with time",nb:"Kartlag med tidsdata"}
1,headerCompareConfirm:{en:"Compare",nb:"Sammenlign"},compareWith:{en:"Compare with",nb:"Sammenlign med"},descCompareConfirm:{en:"Compare data from your selected time enabled map layers at the chosen time ",nb:"Sammenlikner data på valgte tidspunkter i kartlagene som har tidsdata"},compareBtn:{en:"Compare two time periods",nb:"Sammenlikne to perioder"},zoom_in:{en:"Zoom in",nb:"Zoom in"},zoom_out:{en:"Zoom out",nb:"Zoom ut"},headerTimeLayerSetShow:{en:"Show timeline",nb:"Vis tidslinje"},headerTimeLayerSetHide:{en:"Hide timeline",nb:"Skjul tidslinje"},timedata:{en:"Time data",nb:"Tidsdata"},laymng_help:{en:"This is a time enabled theme",nb:"Dette temalaget støtter tid"},showDataFor:{en:"Showing data for",nb:"Viser data for"},timeControllerSet:{en:"Hide timeline",nb:"Skjul tidslinje"},timeSliderHeader:{en:"",nb:""},timesliderInformation:{en:"Layers with time support is enabled. Drag slider for years and/or months to select the desired time. Available years, is the years that is common for all the enabled layers!",nb:"Kartlag med støtte for tid er aktivert. Ved å dra i slider for år og måned velger du hvilken periode du vil vise data for. Tilgjengelige år er alle år som er felles støttet for alle aktive kartlag!"},alertYearConflict:{en:"Some of the enabled layers have no common time series",nb:"Noen av de aktiverte lagene har ikke felles tidsserier!"},btnHidePanel:{en:"Hide the time slider panel",nb:"Skjul tidslinjepanelet"},btnShowPanel:{en:"Show the time slider panel",nb:"Vis tidslinjepanelet"}}});Ext.define("Client.module.map.timesliderSimple.TimeSlider",{extend:Client.module.ToolGeneric,mixins:[Adaptive.mixins.Notify,Adaptive.form.mixins.Generator],activeTimeLayers:{},minValue:null,maxValue:null,defValue:null,months:{1:"jan",2:"feb",3:"mar",4:"apr",5:"may",6:"jun",7:"jul",8:"aug",9:"sep",10:"okt",11:"nov",12:"dec"},constructor:function(g){var h=this,b=function(o){return h.lang.getString(o)};h.getString=b;h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.timesliderSimple.lang.TimeSlider");Ext.apply(h,g);h.callParent([g]);h.addLayerTask=new Ext.util.DelayedTask(function(){h.addLayers()});h.currentHeightMaximized=100;h.minHeightMaximized=270;h.heightMinimized=130;h.monthsData=[{value:0,text:b("allMonths")},{value:1,text:b("jan")},{value:2,text:b("feb")},{value:3,text:b("mar")},{value:4,text:b("apr")},{value:5,text:b("may")},{value:6,text:b("jun")},{value:7,text:b("jul")},{value:8,text:b("aug")},{value:9,text:b("sep")},{value:10,text:b("okt")},{value:11,text:b("nov")},{value:12,text:b("dec")}];test=h},isRelevantLayer:function(b){var g=this;return g.isTimeDimensionLayer(b)},layerRemove:function(b){var g=this;if(g.isRelevantLayer(b.layer)&&b.layer.layers){b.layer.layers.forEach(function(h){delete g.activeTimeLayers[h.id]})}},_onLayersVisibilityUpdated:function(){var b=this;b.addLayerTask.delay(50)},_onGetStorableData:function(h){var g=this,o,b;g.map.wmsLayersVisible.forEach(function(q){if(g.isRelevantLayer(q)){b=true;return false}});if(b){o=g.getValueFrom();h.data.timesliderSimple={year:o.getFullYear(),month:o.getMonth()+1,showAllMonths:g.showAllMonths()}}},_onRestoreStorableData:function(h){var g=this,b=h.data.timesliderSimple;if(b){g._initValueYear=b.year;g._initValueMonth=b.month;g.addMapBtn();g.updateLayers()}},showAllMonths:function(){var g=this,b=g.timeSliderWindow.down("[dataIndex=month]");return b.getValue()==0},addLayers:function(){var C=this,A=C.map.wmsLayersVisible,o=[],g,D,z,B,h,F,w,E,q;C.minValue=null;C.maxValue=null;C.defValue=null;C.numRelevantLayers=0;C.numQueuedLayers=0;C.activeTimeLayers={};C.renderer&&C.renderer.removeLabels();A.forEach(function(G){if(!G.getVisibility()||G.ghost_layer){return}z=Adaptive.utils.Config.getJsonConfig(G.record,"theme_data");B=z&&z.theme_uuid;if(C.isRelevantLayer(G)){if(Adaptive.utils.Config.getBooleanConfig(G.record,"use_time")){C.numRelevantLayers++;C.numQueuedLayers++;C.activeTimeLayers[G.id]=Ext.create("Client.module.map.timeslider.Layer",{layerId:G.record.data.id,layerName:G.name,theme_uuid:B,data:G.options.dimensions.time,dynamic:Adaptive.utils.Config.getBooleanConfig(G.record,"use_dynamic_time"),dynamic_refresh:Adaptive.utils.Config.getBooleanConfig(G.record,"use_dynamic_refresh_time")});h=Adaptive.utils.Config.getConfig(G.record,"wms_time_range_start");if(h){C.activeTimeLayers[G.id].minDate=parseInt(h)/1000;C.activeTimeLayers[G.id].minDateLocked=true}F=Adaptive.utils.Config.getConfig(G.record,"wms_time_range_end");if(F){C.activeTimeLayers[G.id].maxDate=parseInt(F)/1000;C.activeTimeLayers[G.id].maxDateLocked=true}if(Adaptive.utils.Config.getBooleanConfig(G.record,"wms_statistical_theme")){g=Adaptive.utils.Config.getConfig(G.record,"wms_statistical_year_from");D=Adaptive.utils.Config.getConfig(G.record,"wms_statistical_year_to");w=Adaptive.utils.Config.getBooleanConfig(G.record,"wms_statistical_theme_max_min",fal
1se);C.activeTimeLayers[G.id].minDate=new Date(g+"-01").getTime()/1000;C.activeTimeLayers[G.id].maxDate=new Date(D+"-12").getTime()/1000;C.activeTimeLayers[G.id].statTheme=true;C.activeTimeLayers[G.id].disableMinMax=w}C.activeTimeLayers[G.id].on("dateRangeLoaded",function(H){C.numQueuedLayers--;if(H.minDate&&H.maxDate){if(H.minDate==H.maxDate){H.maxDate=H.maxDate+3600}}});if(!(Adaptive.utils.Config.getBooleanConfig(G.record,"use_dynamic_time"))){C.numQueuedLayers--;o.push(C.activeTimeLayers[G.id])}}}});if(C.numRelevantLayers===0){C.timeSliderWindow&&C.timeSliderWindow.hide();C.showTimeSliderBtn&&C.showTimeSliderBtn.hide()}else{C.addMapBtn();if(C._activeTime){E=C._activeTime.month==0?C._activeTime.year:C._activeTime.year+"-"+C._activeTime.month}else{if(C._initValueYear){E=C._initValueYear+"-"+C._initValueMonth}else{if(C.defaultTime){E=C.defaultTime}else{var b=o.length>0&&o[0];if(b){if(b.data["default"]){E=b.data["default"]}else{E=b.maxDate*1000}if(C.defaultAllMonths){E=new Date(E).getFullYear();C.monthsValueOld=0}}}}}E=E.toString();q=new Date(E);if(E.length==4){C.setValue(q.getFullYear())}else{C.setValue(q.getFullYear(),q.getMonth()+1)}C.renderer&&C.renderer.drawGraph();C.updatePosition()}C.updateTimeSlider();if(C.isCompareActive){C.addCompareMapLayers(C.compareMap1);C.addCompareMapLayers(C.compareMap2)}},_onDataviewFilterUpdate:function(w){var q=this,b=w.data.theme_uuid,o,g;function h(z){z.getLayers().forEach(function(A){g=A.record&&A.record.get("record");if(g&&g.uuid==o){params.TIME=A.params.TIME;A.mergeNewParams(params)}})}if(q.isCompareActive){q.map.loopLayersAndExecute(b,function(z){params=z.params;o=z.record.get("uuid");h(q.compareMap1);h(q.compareMap2)})}},_onMergeNewParams:function(q){var o=this,h=q.data.layer,w=q.data.params,b;function g(z){z.getLayers().forEach(function(A){b=A.record&&A.record.get("record");if(b&&b.uuid==h){w.TIME=A.params.TIME;A.mergeNewParams(w)}})}if(o.isCompareActive){g(o.compareMap1);g(o.compareMap2)}},getValueFrom:function(){var o=this,g=o.timeSliderWindow.down("[dataIndex=month]"),b=o.timeSliderWindow.down("[dataIndex=year]"),h=b.getValue(),q=g.getValue();return q==0?new Date(h+"-01"):new Date(h+"-"+q)},getValueTo:function(){var o=this,g=o.timeSliderWindow.down("[dataIndex=month]"),b=o.timeSliderWindow.down("[dataIndex=year]"),h=b.getValue(),q=g.getValue();return q==0?new Date(h+"-12-31"):new Date(h+"-"+q)},setValue:function(h,q){var o=this,g=o.timeSliderWindow.down("[dataIndex=month]"),b=o.timeSliderWindow.down("[dataIndex=year]");if(!o.timeSliderWindow){return}if(h){g.setValue(q?q:0);b.setValue(h)}if(b&&g){o._activeTime={year:b.getValue(),month:g.getValue()}}o.renderer&&o.renderer.setValue(o.getValueFrom(),o.getValueTo());o.updateLayers()},isTimeDimensionLayer:function(b){if(b.CLASS_NAME==="OpenLayers.Layer.WMS"){return !!(b.options&&b.options.dimensions&&b.options.dimensions.time)}return false},hideTimeSliderContainer:function(){var b=this,g=b.timeSliderWindow&&b.timeSliderWindow.down("[dataIndex=timeControllerSet]");if(b.renderer){b.renderer.removeLayers();g.collapse();b.updatePosition()}},addMapBtn:function(){var b=this;if(!b.timeSliderWindow){b.createTimeSlider()}if(!b.showTimeSliderBtn){b.showTimeSliderBtn=Ext.create("Ext.button.Button",{cls:"a3-timeslider-simple-maximize a3-map-btn",text:"Tidsdata des 2018",tooltip:b.getString("btnShowPanel"),height:44,width:200,handler:function(){b.toggleTimeSliderVisibility()}});b.showTimeSliderBtn.setIconHtml(Adaptive.ux.Icons.timeSlider);b.mapContainer.add(b.showTimeSliderBtn);b.updatePosition()}else{b.showTimeSliderBtn.show()}},syncZoom:function(h){var g=this,o=h.object,b=(o===g.compareMap1)?g.compareMap2:g.compareMap1;if(!g.isZooming){g.isZooming=true;b.zoomTo(o.zoom);b.setCenter(o.getCenter());g.isZooming=false}},updatePosition:function(){var o=this,z=o.mapContainer.down("#mapNavigationContainer"),A=Ext.getBody().getHeight(),b=o.timeSliderWindow.down("[dataIndex=timeControllerSet]"),B=o.timeSliderWindow.down("[dataIndex=month]"),h=B.getValue(),w=o.timeSliderWindow.down("[dataIndex=year]"),q=w.getValue(),g;g=o.numRelevantLayers==0?o.heightMinimized:Math.max(o.minHeightMaximized,o.currentHeightMaximized);o.currentHeightMaximized=100+o.heightMinimized+o.numRelevantLayers*30;o.compareMapComponent.setVisible(o.isCompareActive);o.timesliderController.setHeight(g-o.heightMinimized);o.timeSliderWindow.setHeight(o.isCompareActive?A:(b.collapsed?o.heightMinimized:g));if(o.isCompareActive){o.timeSelector.hide();o.compareMapComponent.setHeight(A-o.timeLayersComponent.getHeight());if(!o.isCompareMapInititalized){o.compareMap1=o.createCompareMap(o.mapPanel1,{month:h,year:q});
1o.compareMap2=o.createCompareMap(o.mapPanel2,{month:h,year:q});o.addZoomControllers(o.mapPanel2,o.compareMap2);setTimeout(function(){o.compareMap1.events.register("moveend",o,o.syncZoom);o.compareMap2.events.register("moveend",o,o.syncZoom)},100);o.addCompareMapLayers(o.compareMap1);o.addCompareMapLayers(o.compareMap2);o.renderer.hideSelectedTime();o.isCompareMapInititalized=true;b.collapse()}}else{if(o.isCompareMapInititalized){o.compareMap1.destroy();o.compareMap2.destroy();o.mapPanel1.removeAll();o.mapPanel2.removeAll();o.renderer.showSelectedTime();o.isCompareMapInititalized=false}o.timeSelector.show()}if(z){o.showTimeSliderBtn.alignTo(z,"br-br",[-100,0])}else{o.showTimeSliderBtn.alignTo(o.mapContainer,"br-br",[-21,-26])}if(o.timeSliderWindow&&o.timeSliderWindow.isVisible()){o.timeSliderWindow.setWidth(o.mapContainer.getWidth());o.timeSliderWindow.showAt([0,Ext.getBody().getHeight()-o.timeSliderWindow.getHeight()])}if(o.timeLayerPickerWindow&&o.timeLayerPickerWindow.isVisible()){o.timeLayerPickerWindow.toFront()}if(o.compareComfirmWindow&&o.compareComfirmWindow.isVisible()){o.compareComfirmWindow.toFront()}},toggleTimeSliderVisibility:function(b){var g=this;if((Ext.isBoolean(b)&&b)||(!Ext.isBoolean(b)&&!g.timeSliderWindow.isVisible())){g.showTimeSliderBtn.hide();g.timeSliderWindow.showAt([2,Ext.getBody().getHeight()-136]);g.updateTimeSlider()}else{g.timeSliderWindow.hide();g.showTimeSliderBtn.show()}g.updatePosition()},createTimeSlider:function(){var g=this;var b=Ext.create("Ext.button.Button",{cls:"a3-timeslider-simple-minimize",height:50,width:50,tooltip:g.getString("btnHidePanel"),handler:function(){g.toggleTimeSliderVisibility()}});g.yearStore=Ext.create("Ext.data.Store",{fields:["value"],data:[]});g.compareBtn=Ext.create("Ext.button.Button",{text:g.getString("compareBtn"),padding:17,margin:"0 0 0 20",cls:"a3-btn a3-timeslider-compare",listeners:{scope:g,click:function(){g.isCompareActive=true;g.updatePosition()}}});g.compareBtn.setIconHtml(Adaptive.ux.Icons.compare);g.compareHeader=Ext.create("Ext.container.Container",{cls:"a3-compare-header",height:50,layout:{type:"hbox",pack:"start",align:"right"},items:[{xtype:"component",html:"<p>Sammenligning</p>",flex:1},{xtype:"button",cls:"a3-no-btn a3-close",width:50,handler:function(){g.isCompareActive=false;g.updatePosition()}}]});g.mapPanel1=Ext.create("Ext.container.Container",{cls:"a3-compare-map map1",dataIndex:"mappanel1",layout:"fit",flex:1});g.mapPanel2=Ext.create("Ext.container.Container",{cls:"a3-compare-map map2",dataIndex:"mappanel2",layout:"fit",flex:1});g.compareMapComponent=Ext.create("Ext.container.Container",{hidden:true,layout:{type:"vbox",pack:"start",align:"stretch"},items:[g.compareHeader,{xtype:"container",flex:1,layout:{type:"hbox",pack:"start",align:"stretch"},items:[g.mapPanel1,{xtype:"splitter"},g.mapPanel2]}]});g.timeSelector=Ext.create("Ext.form.FieldContainer",{bodyPadding:10,layout:{type:"hbox",align:"bottom"},defaults:{editable:false,padding:10},fieldDefaults:{msgTarget:"under",labelAlign:"top"},items:[{xtype:"displayfield",value:g.getString("showDataFor")},{xtype:"combo",dataIndex:"month",fieldLabel:g.getString("month"),width:200,store:Ext.create("Ext.data.Store",{fields:["text","value"],data:g.monthsData}),queryMode:"local",displayField:"text",valueField:"value",listeners:{scope:g,change:function(o,h){if(g.monthsValueOld==0||h==0){g.reportEvent("TimeSliderToggleShowAllMonths",{showAll:h==0})}g.monthsValueOld=h;g.setValue()}}},{xtype:"combo",dataIndex:"year",fieldLabel:g.getString("year"),width:140,store:g.yearStore,queryMode:"local",displayField:"value",valueField:"value",msgTarget:"under",labelAlign:"top",listeners:{scope:g,change:function(){g.setValue()}}},g.compareBtn,b]});g.timesliderController=Ext.create("Ext.Component",{height:150,style:{"pointer-events":"none"},listeners:{boxready:function(){g.renderer=Ext.create("Client.module.map.timesliderSimple.ux.Renderer",{container:this,statHelp:g.getString("statHelp"),infoBottom:g.getString("infoBottom"),dateFrom:g.getValueFrom(),dateTo:g.getValueTo()});g.updateTimeSlider()}}});g.timeLayersComponent=Ext.create("Ext.container.Container",{layout:"fit",padding:10,
1cls:"a3-timeslider-simple-set",items:[{xtype:"displayfield",dataIndex:"showLayersBtn",value:g.lang.getString("showAllLayers"),cls:"a3-right a3-timeslider-show-layers",listeners:{render:function(o){function h(w,q){w.preventDefault();g.showTimeLayerPicker()}o.getEl().on("click",h,g)}}},g.createSet("timeControllerSet",{margin:10,collapsed:false,layout:{type:"vbox",align:"stretch"},listeners:{scope:g,beforecollapse:function(h){h.setTitle(g.getString("headerTimeLayerSetShow"));Ext.defer(g.updatePosition,10,g)},beforeexpand:function(h){h.setTitle(g.getString("headerTimeLayerSetHide"));Ext.defer(function(){g.updatePosition();g.updateTimeSlider()},10,g)}}},[g.timesliderController])]});g.timeSliderWindow=Ext.create("Ext.window.Window",{header:false,resizable:false,layout:{type:"vbox",align:"stretch"},width:g.mapContainer.getWidth()-4,height:g.heightMinimized,closable:false,closeAction:"hide",items:[g.compareMapComponent,g.timeSelector,g.timeLayersComponent],listeners:{close:function(){g.toggleTimeSliderVisibility()}}});g.mapContainer.on("resize",g.updatePosition,g)},showTimeLayerPicker:function(){var o=this,b=o.timeSliderWindow.down("[dataIndex=showLayersBtn]"),h;h=Ext.create("Ext.data.Store",{fields:["name","uuid","cat","visibility"]});o.refreshTimeLayerPickerStore(h);function g(q,w){o.timeLayerPickerWindow.destroy();delete o.timeLayerPickerWindow}o.timeLayerPickerWindow=Ext.create("Ext.window.Window",{width:600,height:400,title:o.getString("headerTimeLayerList"),layout:{type:"vbox",align:"stretch"},modal:true,bodyPadding:"0 10 5 10",listeners:{scope:o,afterrender:function(){Ext.defer(function(){Ext.getBody().on("click",g,o,{delegate:".x-mask"})},10)},destroy:function(){Ext.getBody().un("click",g,o,{delegate:".x-mask"})}},items:[{xtype:"dataview",flex:1,cls:"a3-timeslider-simple-layerlist",store:h,itemSelector:"ul",autoScroll:true,tpl:new Ext.XTemplate("<ul>",'<tpl for=".">',"<li>",'<label class="layer">','<input type="checkbox" data-uuid="{uuid}" class="theme-sel" <tpl if="this.layerVisible(values)">checked</tpl>>','<span class="layerName">{name}</span>','<span class="catName">{cat}</span>',"</label>","</li>","</tpl>","</ul>",{getHeader:function(){return o.getString("headerTimeLayerList")},layerVisible:function(q){return q.visibility}}),listeners:{element:"el",delegate:"input.theme-sel",click:function(z,w){var q=w.getAttribute("data-uuid");o.reportEvent((w.checked?"activateThemes":"deactivateThemes"),{themes:[q],append:true})},scope:o}}]});o.timeLayerPickerWindow.showBy(b,"c-c")},refreshTimeLayerPickerStore:function(g){var b=this,o=b.map.wmsLayers,h=[],q;o.forEach(function(w){if(w.ghost_layer){return}q=Adaptive.utils.Config.getJsonConfig(w.record,"theme_data");theme_uuid=q&&q.theme_uuid;if(b.isTimeDimensionLayer(w)){h.unshift({uuid:q&&q.theme_uuid,name:w.name,cat:w.record.get("catName"),visibility:w.getVisibility()})}});g.loadData(h)},getDateParams:function(g,h){function b(o){return(o+"").padStart(2,"0")}if(h==0){return{time:g+"-01/"+g+"-12",time_from:g+"-01",time_to:g+"-12"}}else{h=b(h);return{time:g+"-"+h,time_from:g+"-"+h,time_to:g+"-"+h}}},createCompareMap:function(B,E){var z=this,b=z.map,D={displayInLayerSwitcher:false,numZoomLevels:b.numZoomLevels,maxResolution:b.maxResolution,controls:[new OpenLayers.Control.Navigation()]},A,G,C,q,g,F,h;var o=new Client.OLMap(D);o.render(B.getEl().dom);setTimeout(function(){o.moveTo(z.map.getCenter(),z.map.getZoom())},10);function w(H){Ext.iterate(H.layers,function(I){if(!I.baseLayer&&I.dimensions&&I.dimensions.time){I.mergeNewParams(z.getDateParams(E.year,E.month))}})}A=Ext.create("Ext.form.field.ComboBox",{editable:false,width:140,store:z.yearStore,queryMode:"local",displayField:"value",valueField:"value",value:E.year,listeners:{scope:o,change:function(I,H){E.year=H;w(this)}}});G=Ext.create("Ext.form.field.ComboBox",{editable:false,width:150,store:Ext.create("Ext.data.Store",{fields:["text","value"],data:z.monthsData}),queryMode:"local",displayField:"text",valueField:"value",value:E.month,listeners:{scope:o,change:function(I,H){if(E.month==0||H==0){z.customActionSkipstrafikkCompare(o,H==0)}E.month=H;w(this)}}});q=Ext.create("Ext.container.Container",{cls:"a3-timeslider-compare-combo",height:34,layout:{type:"hbox",pack:"start",align:"right"},items:[G,{xtype:"splitter"},A]});B.add(q);o.yearCombo=A;o.monthCombo=G;return o},addZoomControllers:function(q,o){var h=this,b,g;b=Ext.create("Ext.button.Button",{cls:"a3-zoom-in-btn a3-map-btn",tooltip:h.lang.getString("zoom_in"),tooltipType:"title",handler:function(){o.zoomIn()}});g=Ext.create("Ext.button.Button",{cls:"a3-zoom-out-btn a3-map-btn",tooltip:h.lang.getString("zoom_out"),tooltipType:"title",handler:function(){o.zoomOut()}});zoomContainer=Ext.create("Ext.container.Container",{cls:"a3-navi-container a3-timeslider-compare-zoom",layout:{type:"table",columns:1},defaults:{width:44,height:44},width:44,height:94,items:[b,g]});q.add(zoomContainer)},removeAllLayers:function(q){var o=this,h=q.getLayers(),g;for(var b=h.length-1;b>=0;b--){g=h[b];if(g.name!="fake"){q.removeLayer(g)}}},addCompareMapLayers:function(q){var h=this,b=map.baseLayer.clone(),w,g,o;h.removeAllLayers(q);q.addLayer(b);q.setBaseLayer(q.layers[0]);
1if(q.getLayers().length==1){map.getLayers().forEach(function(z){if(z.name=="fake"){q.addLayer(z.clone())}})}map._wmsLayersVisible.forEach(function(z){w=z.clone();if(w.params&&w.params.TIME){g=q.yearCombo.getValue();o=q.monthCombo.getValue();Ext.merge(z.params,h.getDateParams(g,o))}q.addLayer(z.clone())})},createScalePanel:function(){this.scalePanel=Ext.create("Ext.container.Container",{title:"sliderPanel.tPanel",cls:"a3-timeslider-simple-scalepanel"});return this.scalePanel},updateTimeSlider:function(){var D=this,z=null,b=null,g=new Date().getTime()/1000,w=-1,C=-1,q=-1,h=-1,B=0,o=0,A=[];Ext.iterate(D.activeTimeLayers,function(E,F){o++});D.renderer&&D.renderer.resetLayers(o);Ext.iterate(D.activeTimeLayers,function(E,F){if(F.minDate&&F.maxDate){F.maxDate=F.maxDate==="infinity"?g:F.maxDate;if(!z&&!b){z=F.minDate;b=F.maxDate}else{z=F.minDate<z?F.minDate:z;b=F.maxDate>b?F.maxDate:b}if(!F.minutePeriod&&!F.dayPeriod&&!F.monthPeriod&&!F.yearPeriod){w=0}else{if(F.minutePeriod&&(F.minutePeriod<w||w==-1)){w=F.minutePeriod}}if(F.dayPeriod&&(F.dayPeriod<C||C==-1)){C=F.dayPeriod}if(F.monthPeriod&&(F.monthPeriod<q||q==-1)){q=F.monthPeriod}if(F.yearPeriod&&(F.yearPeriod<h||h==-1)){h=F.yearPeriod}var G;if(F.dateRange){G=F.dateRange.map(function(H){return[H[0],H[1]==="infinity"?Math.round(g):H[1]]})}else{G=[[F.minDate,F.maxDate]]}A.push(F);D.renderer&&D.renderer.updateLayer(F,B,G,F.statTheme)}B++});D.renderer&&D.renderer.updateLabel(A);if(D.yearStore){D.setDomain(z,b)}},setDomain:function(q,b){var h=this,o=[];if(!(q instanceof Date)){q=new Date(q*1000)}if(!(b instanceof Date)){b=new Date(b*1000)}h.yearStore.removeAll();for(var g=q.getFullYear();g<=b.getFullYear();g++){o.push(g);h.yearStore.add({value:g})}h.renderer&&h.renderer.setDomain(q,b)},updateLayers:function(){var q=this,g=q.getValueFrom(),C=q.getValueTo(),o=(g.getMonth()+1).toString(),A=o.padStart(2,"0"),D=(C.getMonth()+1).toString(),w=D.padStart(2,"0"),z=g.getFullYear(),h=q.getString("timedata")+" ",b,B;if(q.showAllMonths()){q.showTimeSliderBtn&&q.showTimeSliderBtn.setText(h+z);b={time:z+"-01/"+z+"-12",time_from:z+"-01",time_to:z+"-12"}}else{q.showTimeSliderBtn&&q.showTimeSliderBtn.setText(h+q.getString(q.months[o]).substr(0,3)+" "+z);b={time:z+"-"+A,time_from:z+"-"+A,time_to:z+"-"+w}}Object.keys(q.activeTimeLayers).forEach(function(E){layer=q.activeTimeLayers[E];B=q.map.getLayer(E);B.mergeNewParams(b)})},customActionSkipstrafikkCompare:function(q,h){var o=this,g,w,b;q.getLayers().filter(function(z){g=z.record&&z.record.get("record");w=Adaptive.utils.Config.getThemeData(g);b=Adaptive.utils.Config.getBooleanConfig(w,"bw_area_tool_skipstrafikk");if(b){z.mergeNewParams({sld:h?"https://kart.barentswatch.no/resx/sld_skipstrafikk_year.xml":"https://kart.barentswatch.no/resx/sld_skipstrafikk_month.xml"})}})},_onGetLayerManagerTimeSlider:function(g){var b=this,o=g.data.data,h=o&&o.recordData&&o.recordData.data,q;if(g.data.childNodes.length==0){if(o.type=="layer"&&h&&b.isTimeDimensionLayer(h.olLayer)){q=Adaptive.utils.Config.getThemeData(h);g.callback({className:"a3-timeslider",icon:Adaptive.ux.Icons.timeSlider,qtip:b.getString("laymng_help"),callback:Ext.bind(b._activateLayer,b,[q.theme_uuid])})}}return null},_activateLayer:function(b){var g=this;g.reportEvent("activateThemes",{themes:[b],append:true});Ext.defer(function(){g.toggleTimeSliderVisibility(true)},500,g)},_onSetDimensionParam:function(h){var g=this,o=h.data,q={},b=o.useDim?"dim_"+o.paramname:o.paramname;q[b]=o.value;Object.keys(g.activeTimeLayers).forEach(function(z){var w=g.map.getLayer(z);if(w.record.get("uuid")==o.layerUuid){w.mergeNewParams(q)}})}});Ext.define("Client.module.map.timesliderSimple.ux.Renderer",{extend:Ext.util.Observable,margin:{left:0,top:0,bottom:6,right:0},dimensions:{lowerHelpText:40},constructor:function(o){Ext.apply(this,o);var w=this,g=o.container,q=g.getWidth(),b=g.getHeight(),z=w.margin,h;w.callParent(arguments);w.id=Ext.id();w.dateFrom=w.dateFrom;w.dateTo=w.dateTo;w.svg=d3.select("#"+g.id).append("svg").attr("class","timeslider-simple").attr("width",q).attr("height",b);w.width=q;w.height=b;w.graphHeight=w.height-w.dimensions.lowerHelpText;h=w.svg.append("g").attr("class","wrap").attr("clip-path","url(#"+w.id+"-root-clip)");w.xAxis=d3.svg.axis().orient("bottom").tickSize(4,-4).tickPadding(6);w.createClipPaths();w.xAxisLine=h.append("g").attr("class","x axis");h.append("g").attr("class","layers").attr("clip-path","url(#"+w.id+"-clip)");h.append("g").attr("class","labels");h.append("path").attr("class","selected").data([[{date:w.dateFrom,value:2},{date:w.dateTo,value:2}]]);h.append("text").attr("class","info-bottom").attr("x",w.width/2-100).attr("y",w.height).text(w.infoBottom);w.line=d3.svg.line().interpolate("step-after").x(function(A){return w.x1(A.date)}).y(function(A){return w.y((A.index+1)/((w.numLayers||0)+1))});w.setDomain(w.dateFrom,w.dateTo);g.on("resize",w.resize,w);w.resize()},createX:function(g){var b=this;b.x1=d3.time.scale().range([200,b.width-30]);b.x2=d3.time.scale().range([200,b.width-30]);if(g){b.domain=g}if(b.domain){b.x1.domain(b.domain).nice();b.x2.domain(b.domain).nice()}b.xAxis.scale(b.x1);b.xAxis.scale(b.x2)},createY:function(){var b=this;b.y=d3.scale.linear().range([b.graphHeight,0]).domain([0,1])},createClipPaths:function(){var o=this,b=o.container.getWidth(),g=o.container.getHeight(),h;h=o.svg.select("#"+o.id+"-root-clip rect");if(h.empty()){h=o.svg.append("clipPath").attr("id",o.id+"-root-clip").append("rect")}h.attr("x",0).attr("y",0).attr("rx",0).attr("ry",0).attr("width",b).attr("height",g);h=o.svg.select("#"+o.id+"-clip rect");if(h.empty()){h=o.svg.append("clipPath").attr("id",o.id+"-clip").append("rect")}h.attr("x",0).attr("y",0).attr("width",o.width).attr("height",o.graphHeight)},resize:function(){var o=this,g=o.container,h=g.getWidth(),b=g.getHeight(),q=o.margin;o.width=h-q.left-q.right;o.height=b-q.top-q.bottom;o.graphHeight=o.height-o.dimensions.lowerHelpText;o.createX();
1o.createY();o.area=d3.svg.area().x(function(w){return o.x2(o.getValidValue(w.date))}).y0(o.y(0)).y1(o.y(1));o.svg.attr("width",h).attr("height",b);o.svg.select("rect.border").attr("width",o.width-2).attr("height",o.height-2);o.svg.select("rect.pane").attr("y",q.top).attr("width",o.width).attr("height",o.graphHeight);o.svg.select("text.info-bottom").attr("x",o.width/2-100).attr("y",o.height-2);o.xAxis.tickSize(4,-4);o.xAxisLine.attr("transform","translate(0, "+o.graphHeight+")");o.createClipPaths();o.drawGraph()},hideSelectedTime:function(){var g=this,b=g.svg;b.selectAll("path.selected").transition().duration(900).style("visibility",function(){return"hidden"})},showSelectedTime:function(){var g=this,b=g.svg;b.selectAll("path.selected").transition().duration(900).style("visibility",function(){return"visible"})},drawGraph:function(){var g=this,b=g.svg;if(!g.container.isVisible()||!g.container.el){return}b.select("g.x.axis").call(g.xAxis);b.selectAll("path.theme").attr("d",g.line);b.select("path.selected").attr("d",g.area)},getValue:function(){return this.value},getNearestMsOffset:function(b,o,h,g){h=Math.round((h.getTime()-o.getTime())/(g*b));return new Date(o.getTime()+h*g*b)},getNearestOffset:function(b,w,o,h){var q,g=w;while(g<o){q=g;g=b(g,h)}if(q&&o.getTime()-q.getTime()<g.getTime()-o.getTime()){return q}return g},getValidValue:function(h,g){var b=this;if(!h){return null}if(!(h instanceof Date)){h=new Date(h*1000)}if(b.domain){if(!g){if(b.domain[0]>h){h=b.domain[0]}if(b.domain[1]<h){h=b.domain[1]}}if(b.intervalResolution){h=b.getNearestOffset(d3.time.year.offset,b.domain[0],h,b.intervalResolution)}}return h},setValue:function(q,h){var g=this,b=g.dateFrom,o=g.dateTo;g.dateFrom=q=g.getValidValue(q);g.dateTo=h=g.getValidValue(h);g.svg.select("path.selected").data([[{date:q,value:2},{date:h,value:2}]]);g.drawGraph();if(g.dateFrom.getTime()!==b.getTime()){g.fireEvent("change",g.dateFrom)}},resetLayers:function(g){var b=this;b.numLayers=g;b.svg.selectAll("path.theme").remove()},updateLayer:function(w,z,h,o){var A=this,q=A.svg,g=q.select("#ld-"+w.id),B;g.remove();if(!h){return}var b=h.reduce(function(D,G,C){var F=G[0] instanceof Date?G[0]:new Date(G[0]*1000);var E=G[1] instanceof Date?G[1]:new Date(G[1]*1000);D.push([{date:F,index:z},{date:E,index:z}]);return D},[]);g=q.select("g.layers").append("g").attr("id","ld-"+w.id);g.selectAll("path").data(b).enter().append("path").attr("class","theme range-"+w.id).style("stroke-width","2px").style("stroke","#d3d3d3");if(o){g.style("stroke-dasharray","5")}},updateLabel:function(q){var o=this,b=o.svg,h,g='<svg width="28" height="28" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><g><rect width="24" height="24"/><g><path d="M15.9996 1.99902C21.5233 1.99902 26.0011 6.47687 26.0011 12.0006C26.0011 17.5243 21.5233 22.0021 15.9996 22.0021C10.4759 22.0021 5.99805 17.5243 5.99805 12.0006C5.99805 6.47687 10.4759 1.99902 15.9996 1.99902ZM15.9996 3.49902C11.3043 3.49902 7.49805 7.3053 7.49805 12.0006C7.49805 16.6959 11.3043 20.5021 15.9996 20.5021C20.6949 20.5021 24.5011 16.6959 24.5011 12.0006C24.5011 7.3053 20.6949 3.49902 15.9996 3.49902ZM15.996 10.4996C16.3757 10.4994 16.6896 10.7813 16.7395 11.1473L16.7464 11.2491L16.75 16.7507C16.7503 17.1649 16.4147 17.5009 16.0005 17.5012C15.6208 17.5014 15.3069 17.2195 15.257 16.8535L15.25 16.7517L15.2464 11.2501C15.2462 10.8359 15.5817 10.4999 15.996 10.4996ZM16 7.00184C16.5516 7.00184 16.9987 7.44896 16.9987 8.0005C16.9987 8.55205 16.5516 8.99917 16 8.99917C15.4485 8.99917 15.0014 8.55205 15.0014 8.0005C15.0014 7.44896 15.4485 7.00184 16 7.00184Z" fill="#212121"/><path d="M15.9996 2.49902C21.2472 2.49902 25.5011 6.75301 25.5011 12.0006C25.5011 17.2481 21.2472 21.5021 15.9996 21.5021C10.752 21.5021 6.49805 17.2481 6.49805 12.0006C6.49805 6.75301 10.752 2.49902 15.9996 2.49902ZM15.9996 2.99902C11.0282 2.99902 6.99805 7.02915 6.99805 12.0006C6.99805 16.972 11.0282 21.0021 15.9996 21.0021C20.971 21.0021 25.0011 16.972 25.0011 12.0006C25.0011 7.02915 20.971 2.99902 15.9996 2.99902ZM15.9963 10.9996C16.1182 10.9995 16.2204 11.0871 16.2421 11.2027L16.2465 11.2662L16.25 16.751C16.2501 16.8891 16.1383 17.0011 16.0002 17.0012C15.8783 17.0013 15.7761 16.9137 15.7544 16.7981L15.75 16.7346L15.7464 11.2498C15.7464 11.1117 15.8582 10.9997 15.9963 10.9996ZM16 7.50184C16.27
154 7.50184 16.4987 7.7251 16.4987 8.0005C16.4987 8.27591 16.2754 8.49917 16 8.49917C15.7246 8.49917 15.5014 8.27591 15.5014 8.0005C15.5014 7.7251 15.7246 7.50184 16 7.50184Z" stroke="black"/></g></g></svg>';o.drawGraph();q.forEach(function(w){h=b.select("#ld-"+w.id);h.each(function(){y=this.getBBox().y});h.append("text").attr("class","labels theme-label-"+w.id).attr("x",10).attr("y",y+2).text(w.layerName.replace(/(.{35})..+/,"$1\u2026")).append("svg:title").text(w.layerName);if(w.statTheme){h.append("svg").html(g).attr({x:o.width-25,y:y-10,width:24,height:24,"class":"info"}).append("svg:title").text(o.statHelp)}})},removeLabels:function(){var g=this,b=g.svg;b.selectAll("text.labels").remove();b.selectAll("svg.info").remove()},removeLayers:function(){var g=this,b=g.svg;b.select("path.theme").remove()},setDomain:function(h,b){var g=this;if(!(h instanceof Date)){h=new Date(h*1000)}if(!(b instanceof Date)){b=new Date(b*1000)}h.setSeconds(0,0);if(g.domainStart&&g.domainStart.getTime()==h.getTime()&&g.domainEnd&&g.domainEnd.getTime()==b.getTime()){return}g.domainStart=h;g.domainEnd=b;g.createX([h,b]);g.svg.select("path.domain").data([[{date:h,value:1},{date:b,value:1}]]);g.drawGraph()},capToDomain:function(g){var b=this;if(g>b.domainEnd){return b.domainEnd}if(g<b.domainStart){return b.domainStart}return g},setIntervalMode:function(h,b){var g=this;g.intervalMode=h;g.intervalResolution=b;g.setValue(g.dateFrom)}});Ext.define("Client.module.map.timeslider.lang.Player",{strings:{playStep:{en:"Step",nb:"Steg"},playInterval:{en:"Interval",nb:"Intervall"},playForward:{en:"Play",nb:"Spill av"},playBackwards:{en:"Play backwards",nb:"Spill av bakover"},stepForward:{en:"Step forward",nb:"Steg fram"},stepBackward:{en:"Step backward",nb:"Steg bakover"}
1,int_1_min:{en:"1 min",nb:"1 min"},int_5_min:{en:"5 min",nb:"5 min"},int_10_min:{en:"10 min",nb:"10 min"},int_15_min:{en:"15 min",nb:"15 min"},int_20_min:{en:"20 min",nb:"20 min"},int_30_min:{en:"30 min",nb:"30 min"},int_1_h:{en:"1 hour",nb:"1 time"},int_2_h:{en:"2 hours",nb:"2 timer"},int_3_h:{en:"3 hours",nb:"3 timer"},int_4_h:{en:"4 hours",nb:"4 timer"},int_6_h:{en:"6 hours",nb:"6 timer"},int_8_h:{en:"8 hours",nb:"8 timer"},int_12_h:{en:"12 hours",nb:"12 timer"},int_1_d:{en:"1 day",nb:"1 dag"},int_2_d:{en:"2 days",nb:"2 dager"},int_3_d:{en:"3 days",nb:"3 dager"},int_4_d:{en:"4 days",nb:"4 dager"},int_5_d:{en:"5 days",nb:"5 dager"},int_6_d:{en:"6 days",nb:"6 dager"},int_1_w:{en:"1 week",nb:"1 uke"},int_2_w:{en:"2 weeks",nb:"2 uker"},int_3_w:{en:"3 weeks",nb:"3 uker"},int_4_w:{en:"4 weeks",nb:"4 uker"},int_1_m:{en:"1 mo",nb:"1 mnd"},int_2_m:{en:"2 mo",nb:"2 mnd"},int_3_m:{en:"3 mo",nb:"3 mnd"},int_4_m:{en:"4 mo",nb:"4 mnd"},int_6_m:{en:"6 mo",nb:"6 mnd"},int_1_y:{en:"1 year",nb:"1 år"},step_2:{en:"2 sec",nb:"2 sek"},step_5:{en:"5 sec",nb:"5 sek"},step_10:{en:"10 sec",nb:"10 sek"},step_15:{en:"15 sec",nb:"15 sek"},step_20:{en:"20 sec",nb:"20 sek"},step_30:{en:"30 sec",nb:"30 sek"}
1,step_60:{en:"1 min",nb:"1 min"}}});Ext.define("Client.module.map.timeslider.ux.Analyze",{extend:Ext.container.Container,constructor:function(b){var g=this;Ext.apply(g,b);g.items=[{}];g.renderer.on("analyzeSpanChange",function(o,h){g.setAnalyzeSpan(o,h)});g.renderer.setAnalyzeActive(!g.hidden);g.callParent(arguments);g.on("show",function(){g.renderer.setAnalyzeActive(true)});g.on("hide",function(){g.renderer.setAnalyzeActive(false)})},setDomain:function(h,o){var g=this,q=h instanceof Date?h:new Date(h*1000),b=o instanceof Date?o:new Date(o*1000);g.domainStart=q;g.domainEnd=b;if(!g.analyzeStart||g.analyzeStart<q){g.analyzeStart=q}if(!g.analyzeEnd||g.analyzeEnd>b){g.analyzeEnd=b}},setAnalyzeSpan:function(h,o){var g=this,q=h instanceof Date?h:new Date(h*1000),b=o instanceof Date?o:new Date(o*1000);if(q<g.domainStart||q>g.domainEnd){q=g.domainStart}if(b<g.domainStart||b>g.domainEnd){b=g.domainEnd}if(q>b){b=q}g.analyzeStart=q;g.analyzeEnd=b;g.fireEvent("analyzeSpanChange",[q,b])}});Ext.define("Client.module.map.timeslider.ux.Player",{extend:Ext.container.Container,layout:{type:"vbox",align:"stretch"},cls:"a3-border-box a3-timeslider-controls",width:182,height:125,padding:10,constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.timeslider.lang.Player");g.items=[{xtype:"container",layout:{type:"hbox",align:"middle"},margins:{bottom:4},items:[{xtype:"box",html:g.lang.getString("playStep"),flex:1},{xtype:"combo",itemId:"comboStep",flex:2,store:new Ext.data.Store({fields:["value","text"],data:Ext.Array.map(["1_min","5_min","10_min","15_min","20_min","30_min","1_h","2_h","3_h","4_h","6_h","8_h","12_h","1_d","2_d","3_d","4_d","5_d","6_d","1_w","2_w","3_w","4_w","1_m","2_m","3_m","4_m","6_m","1_y"],function(h){return{value:h,text:g.lang.getString("int_"+h)}})}),queryMode:"local",displayField:"text",valueField:"value",value:"5_min"}]},{xtype:"container",layout:{type:"hbox",align:"middle"},margins:{bottom:4},items:[{xtype:"box",html:g.lang.getString("playInterval"),flex:1},{xtype:"combo",itemId:"comboInterval",flex:2,store:new Ext.data.Store({fields:["value","text"],data:Ext.Array.map([2,5,10,15,20,30,60],function(h){return{value:h,text:g.lang.getString("step_"+h)}})}),queryMode:"local",displayField:"text",valueField:"value",value:5,listeners:{change:g.startPlaying,scope:g}}]},{xtype:"container",layout:"hbox",defaults:{flex:1},items:[{xtype:"button",itemId:"btnStepBackward",scale:"medium",iconCls:"icon-step-backward",tooltip:g.lang.getString("stepBackward"),handler:g.stepBackward,scope:g},{xtype:"button",itemId:"btnPlayBackwards",scale:"medium",iconCls:"icon-play-backward",tooltip:g.lang.getString("playBackwards"),handler:g.playBackwards,scope:g},{xtype:"button",itemId:"btnPause",scale:"medium",iconCls:"icon-pause",handler:g.pause,scope:g,disabled:true},{xtype:"button",itemId:"btnPlayForward",scale:"medium",iconCls:"icon-play-forward",tooltip:g.lang.getString("playForward"),handler:g.playForward,scope:g},{xtype:"button",itemId:"btnStepForward",scale:"medium",iconCls:"icon-step-forward",tooltip:g.lang.getString("stepForward"),handler:g.stepForward,scope:g}]},{xtype:"progressbar",itemId:"playProgress",animate:{duration:1000,easing:"linear"}}];g.renderer.on("playerSpanChange",function(o,h){g.setPlayerSpan(o,h)});g.renderer.setPlayerActive(!g.hidden);g.callParent(arguments);g.on("show",function(){g.renderer.setPlayerActive(true)});g.on("hide",function(){g.pause();g.renderer.setPlayerActive(false)})},performStep:function(w){var o=this,h=o.down("#comboStep").getValue().split("_"),b,q=parseInt(h[0]),g=o.renderer.getValue();switch(h[1]){case"min":b=Ext.Date.MINUTE;break;case"h":b=Ext.Date.HOUR;break;case"d":b=Ext.Date.DAY;break;case"w":b=Ext.Date.DAY;q=q*7;break;case"m":b=Ext.Date.MONTH;break;case"y":b=Ext.Date.YEAR;break}if(w>0){g=Ext.Date.add(g,b,q)}else{g=Ext.Date.subtract(g,b,q)}o.renderer.setValue(g);if(w>0&&(g>=o.playEnd||g>=o.domainEnd)){return false}if(w<0&&(g<=o.playStart||g<=o.domainStart)){return false}return true},stepForward:function(){this.performStep(1)},stepBackward:function(){this.performStep(-1)},playProgress:function(){var g=this,b=g.down("#comboInterval").getValue();g.playElapsed+=1;if(g.playElapsed>=b){if(!g.performStep(g.playDirection)){g.pause()}else{g.playElapsed=0;
1g.down("#playProgress").updateProgress(0,null,false)}}g.down("#playProgress").updateProgress((g.playElapsed+1)/b,null,true)},startPlaying:function(){var b=this;if(b.playInterval){clearInterval(b.playInterval);delete b.playInterval}b.playElapsed=-1;b.down("#playProgress").bar.stopAnimation();b.down("#playProgress").updateProgress(0,null,false);if(b.playDirection){b.playProgress();b.playInterval=setInterval(function(){b.playProgress()},1000)}},playForward:function(){var b=this,g=b.renderer.getValue();b.down("#btnPause").enable();b.down("#btnPlayForward").disable();b.down("#btnPlayBackwards").enable();b.playDirection=1;if(g<b.playStart||g>=b.playEnd){b.renderer.setValue(b.playStart)}b.startPlaying()},playBackwards:function(){var b=this,g=b.renderer.getValue();b.down("#btnPause").enable();b.down("#btnPlayForward").enable();b.down("#btnPlayBackwards").disable();b.playDirection=-1;if(g<=b.playStart||g>b.playEnd){b.renderer.setValue(b.playEnd)}b.startPlaying()},pause:function(){var b=this;b.down("#btnPause").disable();b.down("#btnPlayForward").enable();b.down("#btnPlayBackwards").enable();b.playDirection=0;b.startPlaying()},setDomain:function(h,o){var g=this,q=h instanceof Date?h:new Date(h*1000),b=o instanceof Date?o:new Date(o*1000);g.domainStart=q;g.domainEnd=b;if(!g.playStart||g.playStart<q){g.playStart=q}if(!g.playEnd||g.playEnd>b){g.playEnd=b}},setPlayerSpan:function(h,o){var g=this,q=h instanceof Date?h:new Date(h*1000),b=o instanceof Date?o:new Date(o*1000);if(q<g.domainStart||q>g.domainEnd){q=g.domainStart}if(b<g.domainStart||b>g.domainEnd){b=g.domainEnd}if(q>b){b=q}g.playStart=q;g.playEnd=b},setMode:function(B,w){var C=this,o=C.down("#comboStep"),b=o.getValue(),E=o.getStore(),g=0,q=0,z=0,A=0,D=0,h=0;switch(B){case"minute":g=w;break;case"hour":g=w*60;q=w;break;case"daily":g=9999;q=w*24;z=w;A=w/7;break;case"monthly":g=q=z=A=9999;D=w;break;case"yearly":g=q=z=A=9999;D=w*12;h=w;break}E.clearFilter();E.filter(function(F){var G=F.get("value").split("_");switch(G[1]){case"min":return G[0]>=g;case"h":return G[0]>=q;case"d":return G[0]>=z;case"w":return G[0]>=A;case"m":return G[0]>=D;case"y":return G[0]>=h}return true});if(E.findExact("value",b)==-1){o.setValue(E.first().get("value"))}},destroy:function(){var b=this;if(b.playInterval){clearInterval(b.playInterval);delete b.playInterval}b.playDirection=0;b.callParent(arguments)}});Ext.define("Client.module.map.utils.DataRefresh",{extend:Client.module.Generic,internal_name:"av_data_refresh",delta:{x:-22,y:22},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.map.utils.lang.DataRefresh");g.buildGui()},buildGui:function(){var b=this;b.refreshBtn=Ext.create("Ext.button.Button",{cls:"a3-data-refresh-btn a3-map-btn",itemId:"dataRefreshBtn",tooltip:b.lang.getString("tooltip"),tooltipType:"title"});b.refreshBtn.on("click",b.onRefreshBtnClick,b)},onRefreshBtnClick:function(){var b=this;outEvtObj={evtName:"refreshActiveLayers",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:{userInitiated:true}};b.dispatchEvent(outEvtObj,{confirmationRequired:false});b.refreshBtn.disable();setTimeout(function(){b.refreshBtn.enable()},2000)},afterMapContainerRender:function(h){var g=this,b=g.mapContainer.down("#mapBtnContainer");b.add(g.refreshBtn)}});Ext.define("Client.module.map.utils.lang.AppReset",{strings:{tooltip:{en:"Reset map and modules",nb:"Nullstill kart og moduler"}}});Ext.define("Client.module.map.utils.lang.DataRefresh",{strings:{tooltip:{en:"Refresh all active layers and dataviews",nb:"Oppdater alle aktive lag og tabeller"}}});Ext.define("Client.module.map.utils.lang.DigitizeButton",{strings:{digitizeBtnTooltip:{en:"Digitize new object",nb:"Digitaliser nytt objekt",nn:"Digitaliser nytt objekt"}}});Ext.define("Client.module.tool.article.lang.ArticleComments",{strings:{mainBtnText:{en:"Last Comments",nb:"Siste kommentarer"},mainBtnTip:{en:"Open Last Comments",nb:"Ã
pne siste kommentarer"},headerText:{en:"Last Comments",nb:"Siste kommentarer"},flaggedCommentsBtn:{en:"Flagged Comments",nb:"Flaggede kommentarer"},moderatedCommentsBtn:{en:"Moderated comments",nb:"Modererte kommentarer"},commentSaveSuccess:{en:"Comment saved",nb:"Kommentar lagret"},commentSaveError:{en:"Not able to save comment, please try again",nb:"Kunne ikke lagre kommentar, vennligst prøv igjen"},flagComment:{en:"Flag comment as inappropriate or offensive.",nb:"Merk kommentar som upassende eller støtende."},flagCommentError:{en:"Not able to flag comment, please try again",nb:"Kunne ikke flagge kommentar, vennligst prøv igjen"},flagCommentSuccess:{en:"Comment flagged",nb:"Kommentar flagget"},moderateComment:{en:"Moderate comment. Comment will be hidden for regular users.",nb:"Moderer kommentar. Kommentaren vil bli skjult for vanlige brukere."},moderateCommentError:{en:"Not able ot moderate comment, please try again",nb:"Kunne ikke moderere kommentar, vennligst prøv igjen"},moderateCommentSuccess:{en:"Comment moderated",nb:"Kommentar moderert"},whitelistComment:{en:"White list comment. Comment will be visible for regular users, and cannot be flagged.",nb:"Hvitelist kommentar. Kommentaren vil bli vist for vanlige brukere, og kan ikke flagges."},unModerateCommentError:{en:"Not able to white list comment, please try again",nb:"Kunne ikke hviteliste kommentar, vennligst prøv igjen"}
1,unModerateCommentSuccess:{en:"Comment white listed",nb:"Kommentar hvitelistet"}}});Ext.define("Adaptive.article.model.Comment",{extend:GeoMind.data.model.Base,fields:[{name:"id",type:"integer"},{name:"comment",type:"string",mapping:"comment"},{name:"email",type:"string",mapping:"email"},{name:"display_name",type:"string",mapping:"display_name"},{name:"flagged",type:"integer",mapping:"flagged"},{name:"moderated",type:"boolean",mapping:"moderated"},{name:"white_listed",type:"boolean"},{name:"create_date",type:"date",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"title",type:"string"},{name:"geom",type:"string"},{name:"article_id",type:"string"},{name:"uuid",type:"string"},{name:"datasource_data_index",type:"string"}],proxy:{type:"crud",url:"WebServices/articleComments/Comment.asmx/"}});Ext.define("Adaptive.article.mixins.Comment",{serviceMethods:{save:"Save",flagComment:"FlagComment",moderate:"Moderate",whiteList:"WhiteList"},serviceUrl:"WebServices/articleComments/Comment.asmx/",save:function(o,b,h){var g=this;Ext.Ajax.request({url:g.serviceUrl+g.serviceMethods.save,method:"POST",jsonData:{data:o,captcha:b},callback:function(w,z,q){if(!z){h("Save comment failed");return}q=GeoMind.utils.Ajax.fixResponse(q);h(!q.success&&q.exception)}})},flagComment:function(h,g){var b=this;Ext.Ajax.request({url:b.serviceUrl+b.serviceMethods.flagComment,method:"POST",jsonData:{uuid:h.data.uuid},callback:function(q,w,o){if(!w){g("Request failed");return}o=GeoMind.utils.Ajax.fixResponse(o);g(!o.success&&o.exception)}})},moderateComment:function(q,g,o){var h=this,b=g?h.serviceMethods.moderate:h.serviceMethods.whiteList;Ext.Ajax.request({url:h.serviceUrl+b,method:"POST",jsonData:{uuid:q.data.uuid},callback:function(z,A,w){if(!A){o("Request failed");return}w=GeoMind.utils.Ajax.fixResponse(w);o(!w.succss&&w.exception)}})}});Ext.define("Client.module.tool.article.ArticleComments",{extend:Client.module.ToolGeneric,mixins:[Adaptive.article.mixins.Comment,Adaptive.mixins.Notify],internal_name:"av_article_comments",btnCls:"a3-article-comments-main-btn",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.article.lang.ArticleComments");g.mc=Ext.create("GeoMind.base.ModuleController");g.mc.registerModule(g);g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText")},buildGui:function(){var h=this,g=[];h.commentStore=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Comment",autoLoad:false,pageSize:10,listeners:{beforeload:function(){h.view.setLoading(true)},load:function(){h.view.setLoading(false)}}});h.loadArticleComments();h.articleCommentsView=Ext.create("Ext.view.View",{store:h.commentStore,tpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-comment"><div class="commentMeta"><span class="author">{display_name}</span><span class="date">{[this.formatDate(values.create_date)]}</span>','<tpl if="(this.isFlagged(flagged) || this.isModerated(moderated)) && this.isCommentAdmin()">','<span class="icon-tick a3-icon" title="'+h.lang.getString("whitelistComment")+'"></span>','<tpl elseif="!white_listed">','<span class="icon-flag a3-icon" title="'+h.lang.getString("flagComment")+'"></span>',"</tpl>",'<tpl if="this.isCommentAdmin() && !this.isModerated(moderated)">','<span class="icon-trash a3-icon" title="'+h.lang.getString("moderateComment")+'"></span>',"</tpl>",'</div><div class="comment">{comment}</div><div class="a3-article-title">{title}</div></div></tpl></div>',{formatDate:function(o){return Ext.Date.format(o,"H:i j.n.Y")},isCommentAdmin:function(){return h.isCommentAdmin()},isModerated:function(o){return(h.modus=="moderated"&&o)},isFlagged:function(o){return(h.modus=="flagged"&&o>0)}}),itemSelector:"div.a3-article-comment",listeners:{scope:h,itemclick:function(q,o,A,w,B){var D=B.target.id,C=B.target.classList,z=Ext.fly(A);if(C.contains("icon-flag")){h.view.setLoading(true);
1h.flagComment(o,function(E){h.view.setLoading(false);if(E){h.showNotifyError(h.view,h.lang.getString("flagCommentError"))}else{h.showNotifySuccess(h.view,h.lang.getString("flagCommentSuccess"))}})}else{if(C.contains("a3-article-title")){h.reportEvent("openArticleById",{article_id:o.get("article_id"),datasourceDataIndex:o.get("datasource_data_index")})}else{if(C.contains("icon-trash")){h.view.setLoading(true);h.moderateComment(o,true,function(E){h.view.setLoading(false);if(E){h.showNotifyError(h.view,h.lang.getString("moderateCommentError"))}else{h.showNotifySuccess(h.view,h.lang.getString("moderateCommentSuccess"));h.commentStore.load()}})}else{if(C.contains("icon-tick")){h.view.setLoading(true);h.moderateComment(o,false,function(E){h.view.setLoading(false);if(E){h.showNotifyError(h.view,h.lang.getString("unModerateCommentError"))}else{h.showNotifySuccess(h.view,h.lang.getString("unModerateCommentSuccess"));h.commentStore.load()}})}}}}}}});if(h.isCommentAdmin()){g.push({xtype:"button",cls:"a3-article-comments-admin-btn",iconCls:"icon-btn-flagged-comments",itemId:"btnFlaggedComments",text:h.lang.getString("flaggedCommentsBtn"),toggleHandler:Ext.bind(h.onFlaggedCommentBtnToggle,h),toggleGroup:"commentAdmin",width:"50%"});g.push({xtype:"button",cls:"a3-article-comments-admin-btn",iconCls:"icon-btn-moderated-comments",itemId:"btnModeratedComments",text:h.lang.getString("moderatedCommentsBtn"),toggleHandler:Ext.bind(h.onModeratedCommentBtnToggle,h),toggleGroup:"commentAdmin",width:"50%"})}var b=Ext.create("Ext.panel.Panel",{cls:"a3-article-comment-panel",items:[{xtype:"pagingtoolbar",store:h.commentStore,cls:"a3-article-comment-paging"},h.articleCommentsView]});g.push(b);h.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body",autoScroll:true,layout:"anchor",items:g})},setPermission:function(b){this.permission=b},isCommentAdmin:function(){return(this.permission=="write"||this.permission=="admin")},activate:function(){var b=this;if(!b.view){b.buildGui()}b.commentStore.load();b.active=true},deactivate:function(){var b=this;b.active=false},loadArticleComments:function(){var b=this;b.modus="articleComments";Adaptive.data.proxy.Crud.setFilter(b.commentStore,{greedy:true,filterColumns:[{name:"moderated",value:"false",comparisonOperator:"="}],sortColumns:[{name:"create_date",sortDesc:true}]});if(b.active){b.commentStore.load()}},onFlaggedCommentBtnToggle:function(b,h){var g=this;h?g.setFlaggedCommentsFilter():g.loadArticleComments()},setFlaggedCommentsFilter:function(g){var b=this;b.modus="flagged";Adaptive.data.proxy.Crud.setFilter(b.commentStore,{greedy:true,filterColumns:[{name:"flagged",value:0,comparisonOperator:">"},{logicalOperator:"AND",name:"white_listed",value:"false",comparisonOperator:"="},{logicalOperator:"AND",name:"moderated",value:"false",comparisonOperator:"="}],sortColumns:[{name:"create_date",sortDesc:true}]});if(b.active){b.commentStore.load()}},onModeratedCommentBtnToggle:function(b,h){var g=this;h?g.setModeratedCommentsFilter():g.loadArticleComments()},setModeratedCommentsFilter:function(){var b=this;b.modus="moderated";Adaptive.data.proxy.Crud.setFilter(b.commentStore,{greedy:true,filterColumns:[{name:"moderated",value:"true",comparisonOperator:"="},{logicalOperator:"AND",name:"white_listed",value:"false",comparisonOperator:"="}],sortColumns:[{name:"create_date",sortDesc:true}]});if(b.active){b.commentStore.load()}}});Ext.define("Client.module.tool.article.lang.ArticleView",{strings:{mainBtnText:{en:"Article",nb:"Artikkel"},author:{en:"Author",nb:"Skrevet av"},backBtn:{en:"Back",nb:"Tilbake"},panoramio_copyright:{en:"Photos are copyrighted by their owners",nb:"Bilder er beskyttet av opphavsretten til eierne"},photoOwner:{en:"By",nb:"Av"},title:{en:"Title",nb:"Tittel"},source:{en:"Source",nb:"Kilde"},by:{en:"By",nb:"Av"},articleLoadError:{en:"Failed to load article",nb:"Kunne ikke laste artikkel"},flickrCommentError:{en:"Opening Flickr-articles via comments is not supported",nb:"Ã
pning av Flickr-artikkel via kommentar er dessverre ikke støttet"}}});Ext.define("Adaptive.article.ux.lang.Comment",{strings:{loadMaskMsg:{en:"Please wait",nb:"Vennligst vent"},btnSave:{en:"Publish",nb:"Publiser"},commentSaveSuccess:{en:"Comment saved",nb:"Kommentar lagret"},commentSaveError:{en:"Not able to save comment, please try again",nb:"Kunne ikke lagre kommentar, vennligst prøv igjen"},flagComment:{en:"Flag comment as inappropriate or offensive.",nb:"Merk kommentar som upassende eller støtende."},flagCommentError:{en:"Not able to flag comment, please try again",nb:"Kunne ikke flagge kommentar, vennligst prøv igjen"},flagCommentSuccess:{en:"Comment flagged",nb:"Kommentar flagget"},moderateComment:{en:"Moderate comment. Comment will be hidden for regular users.",nb:"Moderer kommentar. Kommentaren vil bli skjult for vanlige brukere."},moderateCommentError:{en:"Not able to moderate comment, please try again",nb:"Kunne ikke moderere kommentar, vennligst prøv igjen"},moderateCommentSuccess:{en:"Comment moderated",nb:"Kommenter moderert"},invalid_fields:{en:"Invalid fields",nb:"Ugyldige felt"},articleComment:{en:"Comment",nb:"Kommentar"},articleComment_emptyText:{en:"Write a comment...",nb:"Skriv en kommentar..."},email:{en:"E-mail",nb:"E-post"},email_emptyText:{en:"E-mail (hidden)",nb:"E-post (ikke vist)"},displayName:{en:"Display name",nb:"Visningsnavn"},displayName_emptyText:{en:"Display name",nb:"Visningsnavn"}}});Ext.define("Adaptive.article.ux.Comment",{extend:Ext.container.Container,mixins:[Adaptive.form.mixins.Generator,Adaptive.mixins.Notify,Adaptive.article.mixins.Comment],cls:"a3-article-comment-panel",constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.article.ux.lang.Comment");g.buildGui();g.callParent(arguments)},buildGui:function(){var h=this;var b=h.createForm({noScroll:true,items:[h.createSet("a3-article-comment",{collapsible:false,title:""},[h.createField("articleComment",{xtype:"textarea",required:true,fieldLabel:false,grow:true,listeners:{focus:function(){b.getDockedItems()[0].show();h.getItem("displayName").show();h.getItem("email").show();h.down("#recaptcha").show()}
1,blur:function(o){if(o.getValue()){return}o.clearInvalid();b.getDockedItems()[0].hide();h.getItem("displayName").hide();h.getItem("email").hide();h.down("#recaptcha").hide()}}}),h.createField("displayName",{xtype:"textfield",required:true,fieldLabel:false,hidden:true}),h.createField("email",{xtype:"textfield",vtype:"email",fieldLabel:false,hidden:true}),{xtype:"box",itemId:"recaptcha",height:78,hidden:true,listeners:{afterrender:function(o){h.recaptchaId=grecaptcha.render(o.el.dom,{sitekey:h.sitekey})}}}])],cancelBtnConfig:false,listeners:{render:function(o){o.getDockedItems()[0].hide()}}});h.commentForm=b;h.commentStore=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Comment",autoLoad:false,pageSize:10,listeners:{load:function(q,o,z,w){h.fireEvent("setCommentCount",q.totalCount)}}});var g=Ext.create("Ext.view.View",{cls:"a3-article-comments-list-view",store:h.commentStore,tpl:new Ext.XTemplate('<div class="a3-article-comments-list"><tpl for="."><div class="a3-article-comment"><div class="commentMeta"><span class="author">{display_name}</span><span class="date">{[this.formatDate(values.create_date)]}</span>','<tpl if="!white_listed">','<span class="icon-flag a3-icon" title="'+h.lang.getString("flagComment")+'"></span>',"</tpl>",'<tpl if="this.isCommentAdmin() && !this.isModerated(moderated)">','<span class="icon-trash a3-icon" title="'+h.lang.getString("moderateComment")+'"></span>',"</tpl>",'</div><div class="comment">{comment}</div></div></tpl></div>',{formatDate:function(o){return Ext.Date.format(o,"H:i j.n.Y")},isCommentAdmin:function(){return h.isCommentAdmin()},isModerated:function(o){return(h.modus=="moderated"&&o)},isFlagged:function(o){return(h.modus=="flagged"&&o>0)}}),itemSelector:"div.a3-article-comment",listeners:{scope:h,itemclick:function(q,o,A,w,B){var D=B.target.id,C=B.target.classList,z=Ext.fly(A);if(C.contains("icon-flag")){h.setLoading(true);h.flagComment(o,function(E){h.setLoading(false);if(E){h.showNotifyError(h.up(),h.lang.getString("flagCommentError"))}else{h.showNotifySuccess(h.up(),h.lang.getString("flagCommentSuccess"))}})}else{if(C.contains("icon-trash")){h.setLoading(true);h.moderateComment(o,true,function(E){h.setLoading(false);if(E){h.showNotifyError(h.up(),h.lang.getString("moderateCommentError"))}else{h.showNotifySuccess(h.up(),h.lang.getString("moderateCommentSuccess"));h.loadComments()}})}}}}});h.items=[b,{xtype:"pagingtoolbar",store:h.commentStore,cls:"a3-article-comment-paging"},g]},onSave:function(){var b=this,g=b.prepareComment();b.setLoading(true);b.save(g,grecaptcha.getResponse(b.recaptchaId),function(h){b.setLoading(false);if(h){b.showNotifyError(b.formPanel,b.lang.getString("commentSaveError"));
1grecaptcha.reset(b.recaptchaId)}else{b.showNotifySuccess(b.formPanel,b.lang.getString("commentSaveSuccess"));b.clearCommentForm();b.loadComments()}})},prepareComment:function(){var o=this,b=o.openRecord,q=o.getData(),g=null,h=new OpenLayers.Format.WKT();if(b.feature){g=h.write(b.feature)}var w={title:b.title,geom:g,article_id:decodeURIComponent(b.id),comment:q.articleComment,email:q.email,display_name:q.displayName,datasource_data_index:b.dataIndex};return w},clearCommentForm:function(){var b=this;b.resetForm();grecaptcha.reset(b.recaptchaId);b.commentForm.getDockedItems()[0].hide();b.getItem("displayName").hide();b.getItem("email").hide();b.down("#recaptcha").hide()},loadComments:function(){var b=this;Adaptive.data.proxy.Crud.setFilter(b.commentStore,{greedy:true,filterColumns:[{name:"article_id",value:decodeURIComponent(b.openRecord.id),comparisonOperator:"="},{logicalOperator:"AND",name:"moderated",value:"false",comparisonOperator:"="},{logicalOperator:"AND",name:"datasource_data_index",value:b.openRecord.dataIndex,comparisonOperator:"="}],sortColumns:[{name:"create_date",sortDesc:true}]});b.commentStore.load()},setOpenRecord:function(b){this.openRecord=b;this.commentStore.currentPage=1},isCommentAdmin:function(){return(this.permission=="write"||this.permission=="admin")}});Ext.define("Adaptive.article.ux.lang.Social",{strings:{shareUrlHeader:{en:"Share URL",nb:"Del URL"},shareUrlInfo:{en:"Copy the url below and paste where you want to share",nb:"Kopier lenken under og lim inn der du vil dele den"},shareEmbeddedHeader:{en:"Embedded Map",nb:"Kart for nettsider "},embBoxInfo:{en:"Copy the code below and paste into the source code of your website. If you paste into a blog entry, HTML view must be enabled.",nb:"Kopier koden nedenfor og lim den inn i kildekoden på ditt nettsted. Dersom du limer inn i et blogginnlegg må HTML-visning være aktivert."},width:{en:"Width",nb:"Bredde"},height:{en:"Height",nb:"Høyde"},noIframeSupport:{en:"Your browser does not support iFrame.",nb:"Din nettleser støtter ikke bruk av iFrame."},noIframeSupportLink:{en:"You can see the content of the frame here",nb:"Du kan se innholdet her "},descriptionLink1:{en:"or click",nb:"eller klikk"},descriptionLink2:{en:"here",nb:"her"},descriptionLink3:{en:"to open in a new tab",nb:"for å åpne i egen fane"},descriptionHeightWidth:{en:"Use the controls below to adjust the size of your map.",nb:"Bruk kontrollerne nedenfor for å justere størrelsen."}}});Ext.define("Adaptive.article.ux.Social",{extend:Ext.container.Container,constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.article.ux.lang.Social");g.buildGui();g.callParent(arguments)},buildGui:function(){var q=this;var o=Ext.create("Ext.button.Button",{cls:"a3-share-tool-facebook-btn a3-social-btn",shareon:"facebook",width:40,height:40,listeners:{click:this.onShareBtnClick,scope:this}});var w=Ext.create("Ext.button.Button",{cls:"a3-share-tool-twitter-btn a3-social-btn",shareon:"twitter",width:40,height:40,listeners:{click:this.onShareBtnClick,scope:this}});var h=Ext.create("Ext.button.Button",{cls:"a3-share-tool-linkedin-btn a3-social-btn",shareon:"linkedin",width:40,height:40,listeners:{click:this.onShareBtnClick,scope:this}});var b=Ext.create("Ext.button.Button",{cls:"a3-share-tool-embedded-btn a3-social-btn",shareon:"embedded",width:40,height:40,listeners:{click:this.onEmbeddedBtnClick,scope:this}});var g=Ext.create("Ext.button.Button",{cls:"a3-share-tool-url-btn a3-social-btn",shareon:"url",width:40,height:40,listeners:{click:this.onShareUrlBtnClick,scope:this}});q.socialBtns=Ext.create("Ext.form.FieldContainer",{layout:{type:"hbox",align:"left"},items:[o,w,h,b,g]});q.items=[q.socialBtns,q.shareUrl,q.btnEmbedded]},onShareBtnClick:function(b){var g=this.shareUrl;switch(b.shareon){case"facebook":g="https://www.facebook.com/sharer.php?u="+g;break;case"twitter":g="https://twitter.com/share?url="+g;break;case"google":g="https://plus.google.com/share?url="+g;break;case"linkedin":g="https://www.linkedin.com/shareArticle?mini=true&url="+g;break}window.open(g,"_blank","noopener,noreferrer")},setUrl:function(b){this.shareUrl=b},onEmbeddedBtnClick:function(g){var h=this,b=[];h.embeddedHeight=Ext.create("Ext.form.field.Number",{labelAlign:"top",minValue:50,maxValue:9999,fieldLabel:this.lang.getString("height"),value:600,cls:"a3-social-component-iframe-extent-info",flex:1,listeners:{scope:h,change:h.onEmbeddedChange}});h.embeddedWidth=Ext.create("Ext.form.field.Number",{labelAlign:"top",minValue:50,maxValue:9999,fieldLabel:this.lang.getString("width"),value:800,cls:"a3-social-component-iframe-extent-info",flex:1,listeners:{scope:h,change:h.onEmbeddedChange}});h.embeddedSizeFc=Ext.create("Ext.form.FieldContainer",{layout:"hbox",items:[h.embeddedWidth,h.embeddedHeight]});h.textArea=Ext.create("Ext.form.field.TextArea",{xtype:"textarea",flex:1,value:h.generateIframe(),height:160,listeners:{afterrender:function(){Ext.defer(function(){this.focus(true)},10,this)}}});b.push({xtype:"component",cls:"a3-info a3-text",html:h.lang.getString("descriptionHeightWidth")});b.push(h.embeddedSizeFc);b.push({xtype:"component",cls:"a3-info a3-text",html:h.lang.getString("embBoxInfo")});b.push(h.textArea);Ext.create("Ext.window.Window",{width:500,modal:true,title:h.lang.getString("shareEmbeddedHeader"),layout:{type:"vbox",align:"stretch",pack:"start",padding:5},items:b}).show()},onShareUrlBtnClick:function(g){var o=this,b=[],h=o.lang.getString("shareUrlInfo")+", "+o.lang.getString("descriptionLink1")+' <a href="'+o.shareUrl+'" target="_blank">'+o.lang.getString("descriptionLink2")+"</a> "+o.lang.getString("descriptionLink3")+".";o.textArea=Ext.create("Ext.form.field.TextArea",{xtype:"textarea",flex:1,value:o.shareUrl,height:50,listeners:{afterrender:function(){Ext.defer(function(){this.focus(true)},10,this)}}});b.push({xtype:"component",cls:"a3-info a3-text",html:h});b.push(o.textArea);Ext.create("Ext.window.Window",{width:500,modal:true,title:o.lang.getString("shareUrlHeader"),layout:{type:"vbox",align:"stretch",pack:"start",padding:5},items:b}).show()},onEmbeddedChange:function(){this.textArea.setValue(this.generateIframe())},generateIframe:function(){var g=this,b='<iframe name="embedMap" title="Adaptive by Avinet" scrolling="no" frameborder="0" width="'+g.embeddedWidth.getValue()+'" height="'+g.embeddedHeight.getValue()+'" src="'+g.shareUrl+'"></iframe><noframes>'+g.lang.getString("noIframeSupport")+'<a href="'+g.shareUrl+'" target="_blank">'+g.lang.getString("noIframeSupportLink")+"</a></noframes>";return b}});Ext.define("Client.module.tool.article.ArticleView",{extend:Client.module.ToolGeneric,mixins:[Client.module.tool.article.mixins.Utils,Adaptive.mixins.Notify],internal_name:"av_article_view",btnCls:"a3-article-view",btnHidden:true,serviceProj:"EPSG:4326",xThumbnailProxy:"proxies/xThumbnailService.ashx?url=",themeImageUrl:"WebServices/generic/Media.asmx/Download?thumbnail_size=medium&uuid=",featureSymbolUrl:"WebServices/generic/GetArticleSymbol.ashx?f=",themeServiceUrl:"WebServices/client/DataView.asmx/ReadFiltered",cacheServiceUrl:"WebServices/articleComments/Cache.asmx/Get",xNorvegianaProxy:"proxies/xNorvegiana.ashx",constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.article.lang.ArticleView");g.columnNameLang=GeoMind.lang.Lang.registerTranslations("Client.module.lang.ColumnNames");g.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");g.mc=Ext.create("GeoMind.base.ModuleController");g.mc.registerModule(g)},buildGui:function(){var g=this;if(g.socialShare){g.socialContainer=Ext.create("Adaptive.article.ux.Social",{layout:{type:"vbox",align:"stretch"}})}g.articlePanel=Ext.create("Ext.view.View",{cls:"a3-article-panel",itemSelector:"none",tpl:new Ext.XTemplate('<tpl if="this.isPanoramio(dataset)">','<div class="a3-article-view-content a3-panoramio"><div><a href="{link}" target="_blank"><img class="a3-article-view-img" src="'+g.xThumbnailProxy+'{ image } + "></a></div><div><a class="a3-opplev-norge-iframe-panoramio-logo-link" href="http://www.panoramio.com" target="_blank"><img src="http://www.panoramio.com/img/logo-tos.png"></a><span>'+g.lang.getString("panoramio_copyright")+'</span></div><div class="a3-article-view-panoramio-info-container"><span class="a3-opplev-norge-ifram-panoramio-list-span-before">'+g.lang.getString("title")+':</span><span>{title}</span><span class="a3-opplev-norge-ifram-panoramio-list-span-before">'+g.lang.getString("photoOwner")+':</span><a class="a3-opplev-norge-iframe-panoramio-link" href="{owner_url}" target="_blank">{owner}</a></div></div>',"<tpl else>",'<div class="a3-article-view-content a3-{[this.splitId(values.id)]}"><tpl if="values.vimeo">{[this.getVimeo(values)]}<tpl elif="this.hasImage(values)"><img src="{[this.getImage(values)]}" class="a3-article-view-img" alt="" ></tpl><tpl if="values.isTheme">',"<tpl else>",'<a class="a3-article-view-open-external a3-article-view-fab a3-icon" target="_blank" href="{link}"></a></tpl>','<tpl if="this.hasCommentsView()">','<span class="a3-article-view-num-comments a3-article-view-fab a3-icon">{commentCount}</span></tpl>','<h3>{title}</h3><div class="a3-article-view-body">{[this.cleanUpContent(values.content)]}</div>',"</br>",'<tpl if="values.tags"><div class="a3-article-view-tags">{[this.cleanText(values.tags)]}</div></tpl>','<div class="a3-article-view-copyright">','<tpl if="showSourceLabel">',"<span>"+g.lang.getString("source")+": ","</tpl>",'<tpl if="values.isTheme">',"{provider}","<tpl else>",'<a target="_blank" href="{link}">{[this.getProvider(values)]}</a>',"</tpl>","</span></br>","<tpl if=\"creator != ''\">","<span>"+g.lang.getString("by")+": {[this.formatCreator(values.creator)]}</span>","</tpl>","</div>",'<tpl if="values.tags">','<div class="a3-article-tags">{[this.cleanText(values.tags)]}</div>',"</tpl>",'<tpl if="values.isTheme">','<div class="a3-article-theme-details a3-mapinfo-details">',"<ul>",'<tpl foreach="aCols">','<li class="viewItem">',"<h4>{[this.translate(values.name, values)]}</h4>",'<div class="value-wrapper {data_type}">{[this.formatValue(values.value, values)]}</div>',"</li>","</tpl>","</ul>","</div>","</tpl>","</div>","</tpl>",{cleanUpContent:function(o){return o.replace(/<table/gi,'<div class="table-wrapper"><table').replace(/<\/table>/gi,"</table></div>").replace(/<p>\s*<(p|br)\s*\/?>/gi,"<p>").replace(/(<br\s*\/?>)+/gi,"<br>").replace(/<p>\s*( \s*)*<\/p>/gi,"")},cleanText:function(o){return o.replace(/<\/?[^>]+(>|$)/g,"").split(",").join(", ")},splitId:function(o){return o.split("_")[0]},hasImage:function(o){return !!this.getImage(o)},getImage:function(q){var o=g.useThumbnailProxy(q.id)?g.xThumbnailProxy:"";if(q.vimeoData){return q.vimeoData.thumbnail_url_with_play_button}if(q.isTheme){o=g.themeImageUrl}if(q.images&&q.images.length>0){return o+q.images[0]}if(q.image){return o+q.image}return""},getVimeo:function(q){var o=q.vimeoData;if(o){return'<div class="vimeo-embed" style="padding-top: '+(o.height/o.width*100).toFixed(2)+'%"><iframe src="https://player.vimeo.com/video/'+o.video_id+'" allowFullscreen frameborder=0></iframe></div>'}},getProvider:function(o){return o.ownername||o.provider},isPanoramio:function(o){return o=="Panoramio"},formatCreator:function(q){var o=Ext.isArray(q)?q:q.split(",");if(o.length>1){return o[0]+" ("+o[1]+")"}return q},translate:function(q,o){switch(q){case"id":case"objectid":case"date_created":case"date_modified":return g.columnNameLang.getString(q)}return q},formatValue:function(q,o){return Client.data.model.ThemeRecord.formatColumnValue(q,o.value_formatter,o.data_type,g.formatDate.getString("date_format"),g.formatDate.getString("time_format"),null)},hasCommentsView:function(){return g.commentView},openThemeForm:function(o){}}
1),listeners:{scope:g,click:{element:"el",fn:function(o){if(o.target.id!="image-thumb"){return}g.openLightBox()}}}});if(g.commentView){g.comments=Ext.create("Adaptive.article.ux.Comment",{permission:g.permission,sitekey:g.sitekey});g.comments.on("setCommentCount",g.setCommentCount,g);g.comments.on("notifySuccess",g.notifySuccess,g);g.comments.on("notifyFailure",g.notifyFailure,g)}g.backButton=Ext.create("Ext.Button",{text:g.lang.getString("backBtn"),cls:"a3-link-btn a3-back-btn",handler:function(){g.onBackButtonClick()}});var b=[g.backButton];if(g.socialContainer){b.push(g.socialContainer)}b.push(g.articlePanel);if(g.comments){b.push(g.comments)}g.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body",layout:"auto",autoScroll:true,items:b});var h=g.getDatasetBySourceName("Flickr");g.krapi=new KR.API({flickr:{apikey:h?h.config.apikey:null},base_url:g.xNorvegianaProxy})},afterMapReset:function(){var h=this,g=GeoMind.utils.Url,b=g.getUrlParam("article");if(b){h.openSharedArticle(b)}},loadVimeo:function(){var b=this;if(b.openRecord.vimeo&&!b.openRecord.vimeoData){b.loadVimeoImage(b.openRecord)}},openLightBox:function(){var b=this;Adaptive.ux.MediaLightbox.showHtml(b.openRecord.vimeoData.html)},setPermission:function(b){this.permission=b},activate:function(){var b=this;if(!b.view){b.buildGui()}b.reportEvent("showToolButton",b);b.reportEvent("disableInfoTool");b.initLayer();b.active=true;!b.initModule||b.initModule.active?b.backButton.hide():b.backButton.show()},deactivate:function(){var b=this;
1if(b.comments){b.comments.clearCommentForm()}b.destroyLayer();b.reportEvent("hideToolButton",b);b.reportEvent("enableInfoTool");b.active=false},initLayer:function(){var b=this;b.articleLayer=b.createLayer();b.map.addLayer(b.articleLayer)},rgbToHex:function(b){if(!b){return"000000"}var g=b.split(" ");return"#"+((1<<24)+(parseInt(g[0])<<16)+(parseInt(g[1])<<8)+parseInt(g[2])).toString(16).slice(1)},destroyLayer:function(){var b=this;if(b.articleLayer){b.articleLayer.removeAllFeatures();b.articleLayer.destroy();delete b.articleLayer}},switchTool:function(){var b=this;if(b.active){return}b.active=true;b.reportEvent("switchTools",b)},onBackButtonClick:function(){var b=this;b.reportEvent("switchTools",b.initModule)},_onOpenArticle:function(g){var b=this,h=g.data.data;b.openRecord=h;b.initModule=g.evtInitiatingModule;b.switchTool();if(!h.feature){if(!h.feature){b.getArticleById(h.id,h.dataIndex);return}}b.plotPoint(h.feature);b.articlePanel.update(h);b.adviseHeaderChange(h.provider||h.dataset);if(b.comments){b.comments.setOpenRecord(b.openRecord);b.comments.loadComments()}if(b.socialContainer){b.setShareUrl()}b.loadVimeo()},_onOpenArticleById:function(h){var g=this,b=h.data.article_id,o=h.data.datasourceDataIndex;g.initModule=h.evtInitiatingModule;g.getArticleById(b,o)},openArticleByIdSuccess:function(g,b,q){var h=this,o=g.properties;h.view.setLoading(false);o.coords={lat:g.geometry.coordinates[1],lon:g.geometry.coordinates[0]};o.id=b;o.creator=o.allProps?o.allProps.dc_creator:"";o.feature=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(o.coords.lon,o.coords.lat).transform(h.serviceProj,h.map.getProjection()));o.feature.dataset=q.dataIndex;o.feature.config=q.config;o.dataIndex=q.dataIndex;h.openRecord=o;h.articlePanel.update(o);h.adviseHeaderChange(o.provider);h.plotPoint(o.feature);if(h.comments){h.comments.setOpenRecord(h.openRecord);h.comments.loadComments()}if(h.socialContainer){h.setShareUrl()}h.loadVimeo()},openArticleByIdFailure:function(b){var g=this;g.view.setLoading(false);g.showNotifyError(g.view,g.lang.getString("articleLoadError"))},openCommentFailure:function(b){var g=this;g.view.setLoading(false);setTimeout(function(){g.showNotifyError(g.view,g.lang.getString("flickrCommentError"))},500)},loadCachedArticle:function(o,g){var b=this,h=b.cacheServiceUrl;Ext.Ajax.request({url:h,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{id:o},success:function(q){q=GeoMind.utils.Ajax.fixResponse(q);if(q.success&&q.records.length){b.handleLoadCachedArticleSuccess(q,g)}else{b.showNotifyError(b.view,b.lang.getString("articleLoadError"))}},failure:function(){b.showNotifyError(b.view,b.lang.getString("articleLoadError"))}})},handleLoadCachedArticleSuccess:function(g,w){var o=this,q=g.records[0],h=new OpenLayers.Format.WKT();var b=Ext.create("Adaptive.article.model.Cache",q);q=b.getData();q.feature=h.read(b.get("geom"));if(o.map.getProjection()!=q.epsg){q.feature.geometry.transform(q.epsg,o.map.getProjection())}q.feature.dataset=w.dataIndex;q.feature.config=w.config;q.dataIndex=w.dataIndex;o.openRecord=q;o.articlePanel.update(q);o.adviseHeaderChange(q.provider);o.plotPoint(q.feature);if(o.comments){o.comments.setOpenRecord(o.openRecord);o.comments.loadComments()}if(o.socialContainer){o.setShareUrl()}o.view.setLoading(false)},setCommentCount:function(g){var b=this;b.openRecord.commentCount=g;b.articlePanel.update(b.openRecord)},notifySuccess:function(g){var b=this;b.showNotifySuccess(b.view,g)},notifyFailure:function(g){var b=this;b.showNotifyError(b.view,g)},setShareUrl:function(){var h=this;if(h.shareUrl){var g=this.getShareId(h.openRecord.id,h.openRecord.dataIndex);var b=h.shareUrl+btoa(g);h.socialContainer.setUrl(b)}},zoomToGeometry:function(g){var b=this;if(g.CLASS_NAME==="OpenLayers.Geometry.Point"){b.map.setCenter(new OpenLayers.LonLat(g.x,g.y),b.defaultZoomLevel)}else{b.map.zoomToExtent(g.getBounds().scale(2))}},plotPoint:function(b){var g=this;g.articleLayer.removeAllFeatures();g.articleLayer.addFeatures(b);g.zoomToGeometry(b.geometry)},openSharedArticle:function(b){var g=this,h=atob(b);g.getArticleById(h)},getArticleById:function(B,w){var q=this,C=B.indexOf("_"),z=B.substring(0,C),g=B.substring(C+1),A=this.datasets;q.switchTool();
1if(w!==undefined){z=w}var o=q.getDataset(z);q.view.setLoading(true);if(o.cache){var b=o.value.api+"_"+g;q.loadCachedArticle(b,o)}else{if(o.value.api=="avdigitheme"||o.value.api=="avtheme"){q.loadThemeArticle(g,o)}else{if(o.value.api=="flickr"){var h="failure";q.openCommentFailure(h)}else{if(o.value.api=="dimu"){q.loadDimuArticle(g,o)}else{q.krapi.getItem({api:o.value.api,id:g},function(D){q.openArticleByIdSuccess(D,B,o)},function(D){q.openArticleByIdFailure(D)})}}}}},loadThemeArticle:function(o,h){var g=this,b={filterColumns:[{name:h.config.columns.id,value:o,comparisonOperator:"="}]};Ext.Ajax.request({url:g.themeServiceUrl,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{theme_uuid:h.value.uuid,columns:Object.keys(h.config.columns).map(function(w,q,z){return h.config.columns[w]}).reduce(function(w,q){w=w instanceof Array?w:[w];q=q instanceof Array?q:[q];return w.concat(q)}).filter(function(q){if(q!=null&&q!="geom"){return q}}),filter:b},success:function(q){q=GeoMind.utils.Ajax.fixResponse(q);if(q.success&&q.records.length){g.handleLoadThemeArticleSuccess(q,h)}else{g.showNotifyError(g.view,g.lang.getString("articleLoadError"))}},failure:function(){g.showNotifyError(g.view,g.lang.getString("articleLoadError"))}})},handleLoadThemeArticleSuccess:function(g,z){var o=this,w=g.records[0],h=new OpenLayers.Format.WKT();var b=Ext.create(Client.data.model.ThemeRecord.getModel(z.config.theme_data),w);b.set("feature",h.read(b.get("geom_wkt")));var q=o.createThemeRecord(b,z);var w=q.data;o.openRecord=w;o.articlePanel.update(w);o.adviseHeaderChange(w.provider);o.plotPoint(w.feature);if(o.comments){o.comments.setOpenRecord(o.openRecord);o.comments.loadComments()}if(o.socialContainer){o.setShareUrl()}o.view.setLoading(false);o.loadVimeo()},loadDimuArticle:function(h,g){var b=this;if(!b.ajax){b.ajax=Ext.create("Ext.data.Connection")}b.ajax.request({method:"GET",url:"https://api.dimu.org/api/solr/select?q=*&fq=identifier.id:"+h+"&wt=json&api.key="+g.config.apikey,headers:{"Content-Type":"application/json; charset=utf-8"},success:function(q){var o=Ext.JSON.decode(q.responseText);if(!o.response.docs.length){b.showNotifyError(b.view,b.lang.getString("articleLoadError"))}b.parseDimuArticle(o.response.docs[0],g)},failure:function(){m;b.showNotifyError(b.view,b.lang.getString("articleLoadError"))}})},parseDimuArticle:function(q,z){var h=this,g=new OpenLayers.Format.WKT();var w=Ext.create("Ext.data.Store",{model:"Adaptive.article.model.Dimu",data:q,proxy:{type:"memory",reader:{type:"json",useSimpleAccessors:true}},autoLoad:false,sorters:[{property:"sortDistance",direction:"ASC"}]});var b=w.getAt(0);if(!b){return}var q=b.getData();h.openRecord=q;var o;if(q.coords){o=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(q.coords.lon,q.coords.lat).transform(h.serviceProj,h.map.getProjection()))}o.config=z.config;q.dataIndex=z.dataIndex;h.articlePanel.update(q);h.adviseHeaderChange(q.provider);h.plotPoint(o);if(h.comments){h.comments.setOpenRecord(h.openRecord);h.comments.loadComments()}if(h.socialContainer){h.setShareUrl()}h.view.setLoading(false)}});Ext.define("Client.module.tool.authentication.lang.OpenIdLogin",{str
1ings:{header_login:{en:"Login",nb:"Innlogging",nn:"Innlogging"},btnLogin:{en:"Log in using AD",nb:"Logg inn med AD",nn:"Logg inn med AD"},btnSignOut:{en:"Log out",nb:"Logg ut",nn:"Logg ut"},sessionTimeout:{en:"Session expired",nb:"Innlogging utløpt"}}});Ext.define("Client.module.tool.authentication.OpenIdLogin",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.Standard");g.fieldLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.authentication.lang.OpenIdLogin");g.buildGui();g.callParent(arguments);g.rememberSession=!!GeoMind.utils.SessionManager.ss.sessionId},buildGui:function(){var g=this,b=g.login_text&&g.login_text.lang&&(g.login_text.lang[GeoMind.lang.Lang.langCode]||g.login_text.lang[GeoMind.lang.Lang.defaultLangCode]);g.langSwitcher=Ext.create("Client.module.tool.authentication.LangSwitcher");if(b){g.loginTextBox=g.createTextBox("customLoginInfo","info",{html:b})}g.view=Ext.create("Ext.container.Container",{header:g.fieldLang.getString("header_login"),layout:{type:"vbox",align:"stretch"},autoScroll:true,items:[g.createForm({noScroll:true,cancelBtnConfig:false,saveBtnConfig:false,items:[g.createSet("langSwitcherText",{collapsible:false},[g.langSwitcher.combo]),{xtype:"button",text:g.fieldLang.getString("btnLogin"),handler:g.startOpenIdLogin,scope:g,cls:"a3-submit-btn a3-large-btn"}]})]})},startOpenIdLogin:function(){window.location.href=__siteurl__+"/api/OpenId/authenticate"},showSessionTimeoutPopup:function(){var b=this;Ext.Msg.show({msg:b.fieldLang.getString("sessionTimeout"),buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR});outEvtObj={evtName:"signOutUser",evtInitiatingModule:b};b.dispatchEvent(outEvtObj)}});Ext.define("Client.module.tool.byggsok.lang.Byggsok",{strings:{header_main:{en:"Byggsøk",nb:"Byggsøk",nn:"Byggsøk"},mainBtnText:{en:"Byggsøk",nb:"Byggsøk",nn:"Byggsøk"},mainBtnTip:{en:"Byggsøk",nb:"Byggsøk",nn:"Byggsøk"},headerText:{en:"Byggsøk",nb:"Byggsøk",nn:"Byggsøk"},propertyFetchSuccess:{en:"Your property was found.",nb:"Din eiendom ble funnet."},propertyFetchError:{en:"Could not get property",nb:"Kunne ikke hente eiendom"},missing_bs_id_title:{en:"No case number provided",nb:"Fant ikke byggesaknummer"},missing_knr_title:{en:"No municipality provided",nb:"Fant ikke kommunenummer"},missing_close_window_msg:{en:"Please return to Byggsøk by closing this window.",nb:"Vennligst returner til Byggsøk ved å lukke dette vinduet."}}});Ext.define("Client.module.tool.byggsok.lang.SelectProperty",{strings:{headerText:{nb:"Velg eiendom"},info1:{nb:"<p>Velg eiendom du vil søke endringer på ved å klikke i kartet.</p><p>Alternativt kan du fylle ut gårds-, bruks- og eventuelt feste- og seksjonsnummer manuelt.</p>"},btnSave:{nb:"Velg eiendom »"},wrongMunicipality:{nb:"Du må velge en eiendom i din kommune."},property:{nb:"Eiendom"},KOMMUNENR:{nb:"Kommunenummer"},GARDSNR:{nb:"Gårdsnummer"},BRUKSNR:{nb:"Bruksnummer"},FESTENR:{nb:"Festenummer"},SEKSJONSNR:{nb:"Seksjonsnummer"},zoomToPropertyBtn:{nb:"Zoom til eiendom"}}});Ext.define("Adaptive.map.CadasterWfs",{extend:Ext.util.Observable,mixins:[Adaptive.utils.LightModule],mouseStopTimeout:75,config:{map:null},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b])},setup:function(){var b=this;b.addLayers();b.addMapListeners();b.doQueryWFSTask=new Ext.util.DelayedTask(b.highlightOnMap,b)},addLayers:function(){var b=this;if(!b.highlightLayer){b.createHighlightLayer()}},createHighlightLayer:function(){var g=this,b=new OpenLayers.Strategy.Refresh({force:true,active:true});g.highlightLayer=new OpenLayers.Layer.Vector("WfsHighlightLayer_"+Ext.id(),{strategies:[new OpenLayers.Strategy.Fixed(),b],protocol:g.getWFSLayerProtocol(),autoLoad:false,styleMap:g.getLayerStyleMap()});g.map.addLayers(g.highlightLayer)},getWFSLayerProtocol:function(){return new OpenLayers.Protocol.WFS.v1_1_0({url:"Webservices/matrikkelWfs.ashx",featureType:"TEIGWFS",featurePrefix:"matrikkel",featureNS:"",srsName:this.map.projection.projCode,headers:{gm_session_id:GeoMind.utils.SessionManager.ss.sessionId,"X-Adaptive-Gui":__guuid__},read:function(){if(this.currentRequest){this.currentRequest.abort()}
1var b=OpenLayers.Protocol.WFS.v1_1_0.prototype.read.apply(this,arguments);this.currentRequest=b.priv;return b},handleRead:function(b){if(b.priv==this.currentRequest){delete this.currentRequest}OpenLayers.Protocol.WFS.v1_1_0.prototype.handleRead.apply(this,arguments)},destroy:function(){if(this.currentRequest){this.currentRequest.abort()}OpenLayers.Protocol.WFS.v1_1_0.prototype.destroy.apply(this,arguments)}})},addMapListeners:function(){var b=this;b.map.events.on({mousemove:b.onMapMouseMove,click:b.onPropertyClicked,scope:b})},onMapMouseMove:function(b){var g=this;if(!g.highlightLayer){return}g.doQueryWFSTask.delay(g.mouseStopTimeout,null,g,[b])},cleanup:function(){var b=this;b.removeMapListeners();b.removeLayers()},removeLayers:function(){var b=this;if(b.highlightLayer){b.highlightLayer.events.un({featureout:b.propertyHighlightLayerFeatureout,loadend:b.propertyHighlightLayerLoadEnd,beforefeaturesadded:b.simplifyBeforefeatureadded,scope:b});b.highlightLayer.destroy();delete b.highlightLayer}},removeMapListeners:function(){var b=this;b.map.events.un({mousemove:b.onMapMouseMove,click:b.onPropertyClicked,scope:b})},highlightOnMap:function(b){var o=this,h,g;if(!o.highlightLayer){return}if(o.lastXy&&Math.abs(b.xy.x-o.lastXy.x)<2&&Math.abs(b.xy.y-o.lastXy.y)<2){return}o.lastXy=b.xy;h=o.map.getLonLatFromPixel(b.xy);if(!h){return}g=new OpenLayers.Geometry.Point(h.lon,h.lat);if(o.highlighted&&o.highlighted.geometry&&g.intersects(o.highlighted.geometry)){return}o.highlightProperty(g)},highlightProperty:function(b){var h=this,g=h.createFilter(b);h.highlightLayer.filter=g;if(!h.highlightLayer.map){h.map.addLayer(h.highlightLayer);h.highlightLayer.events.register("featureout",h,h.highlightLayerFeatureout);h.highlightLayer.events.register("loadend",h,h.highlightLayerLoadEnd);h.highlightLayer.events.register("beforefeaturesadded",h,h.simplifyFeature)}h.highlightLayer.refresh()},highlightLayerFeatureout:function(b){var g=this;g.highlightLayer.removeFeatures(b.feature)},highlightLayerLoadEnd:function(b){if(!(b.response&&b.response.features&&b.response.features.length>0)){return}var g=this;g.highlighted=b.response.features[0]},simplifyFeature:function(b){return Adaptive.layer.Layer.simplifyFeature(b.features[0])},getLayerStyleMap:function(){var b=new OpenLayers.StyleMap({select_over:new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#ff8000",fillColor:"#ff8000"},OpenLayers.Feature.Vector.style.select)),select_selected:new OpenLayers.Style(OpenLayers.Util.applyDefaults({strokeColor:"#00FFFF",fillColor:"#00FFFF"},OpenLayers.Feature.Vector.style.select))});return b},onPropertyClicked:function(g){var q=this,h=q.map.getLonLatFromPixel(g.xy),b,o;if(!h){return}b=new OpenLayers.Geometry.Point(h.lon,h.lat);if(b){var o=q.createFilter(b);var w=q.getWFSLayerProtocol();q.reportEvent("disableInfoTool",{single:true});w.read({filter:o,callback:function(z){if(z&&z.features&&z.features.length>0){q.fireEvent("propertySelected",z.features[0])}}})}},createFilter:function(b){var g=[new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.DWITHIN,property:"FLATE",value:b,distance:1}),new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:"FLATE",value:b})];return new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:g})}});Ext.define("Client.module.tool.byggsok.SelectProperty",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],map:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.byggsok.lang.SelectProperty");g.changeTask=new Ext.util.DelayedTask(function(){if(g.formPanel.isValid()){g.fireEvent("setMainProperty",g.formPanel.getValues())}});g.buildGui()},buildGui:function(){var b=this;b.view=b.createForm({buttonsInline:true,items:[b.createTextBox("info1","info"),b.createSet("property",{collapsed:false,defaults:{listeners:{change:function(){b.setValidProperty(false);b.changeTask.delay(1000)}}}},[b.createField("KOMMUNENR",{xtype:"displayfield",value:b.knr}),b.createField("GARDSNR",{xtype:"numberfield",hideTrigger:true,required:true}),b.createField("BRUKSNR",{xtype:"numberfield",hideTrigger:true,required:true}),b.createField("FESTENR",{xtype:"numberfield",hideTrigger:true}),b.createField("SEKSJONSNR",{xtype:"numberfield",hideTrigger:true}),b.createButton("zoomToPropertyBtn",{handler:function(){b.fireEvent("zoomToProperty")},cls:"a3-fill"})])],cancelBtnConfig:false})},onValidityChange:function(h,g){var b=this;b.mixins["Adaptive.form.mixins.Generator"].onValidityChange.apply(b,[h,g&&b.isPropertyValid])},setValidProperty:function(b,h){var g=this;if(h){g.view.getForm().setValues({GARDSNR:h.gardsnr,BRUKSNR:h.bruksnr,FESTENR:h.festenr,SEKSJO
1NSNR:h.seksjonsnr})}g.isPropertyValid=b;g.view.down("#zoomToPropertyBtn").setDisabled(!g.isPropertyValid);g.onValidityChange(g.view.getForm(),g.view.isValid())},onSave:function(){var b=this;b.fireEvent("goForward")},getHeader:function(){return this.lang.getString("headerText")},deactivate:function(){var b=this;b.active=false;if(b.cadasterPicker){b.cadasterPicker.cleanup()}if(b.knrLayer){b.map.removeLayer(b.knrLayer);b.knrLayer.destroy();delete b.knrLayer}},activate:function(){var b=this;if(!b.cadasterPicker){b.cadasterPicker=Ext.create("Adaptive.map.CadasterWfs",{map:b.map});b.cadasterPicker.on("propertySelected",b.selectProperty,b)}b.cadasterPicker.setup();b.active=true;Ext.Ajax.request({method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},url:"WebServices/utils/Municipality.asmx/GetMunicipalityById",jsonData:{municipalityId:b.knr},success:function(q){if(!b.active){return}try{var z=Ext.JSON.decode(q.responseText).d,h=z.records[0].geom.split(";"),o="EPSG:"+h[0].split("=")[1],w=new OpenLayers.Format.WKT().read(h[1]);if(z.records[0].text){b.getItem("KOMMUNENR").setValue(b.knr+" - "+z.records[0].text);Ext.defer(function(){b.clearInvalid()},1000)}if(o!=b.map.getProjection()){w.geometry.transform(o,b.map.getProjection())}b.knrLayer=new OpenLayers.Layer.Vector("byggsok_knrLayer",{styleMap:new OpenLayers.StyleMap({"default":{strokeColor:"#000099",fillOpacity:0}})});b.map.addLayer(b.knrLayer);b.knrLayer.addFeatures(w);var A=w.geometry.getBounds();Ext.defer(function(){if(!b.active){return}b.map.zoomToExtent(A)},1000)}catch(g){}}})},selectProperty:function(b){var g=this;if(b){if(b.data.KOMMUNENR!=g.knr){g.showFormError(g.getFormString("wrongMunicipality"))}else{g.formPanel.getForm().setValues(b.data);g.changeTask.delay(100)}}}});Ext.define("Client.module.tool.byggsok.lang.TegnBygg",{strings:{headerText:{nb:"1 av 3: Tegn bygg"},info1:{nb:"<p>Start tegning av bygg ved å klikke i kartet. Dobbeltklikk for å avslutte tegning.</p><p>Rediger tegning ved å dra i prikkene.</p>"},resetDrawingBtn:{nb:"Start på nytt"},description:{nb:"Forklarende tekst til kommunen (vises i vedlegg)"},length_area:{nb:"Vis målt lengde i kartet"},zoomToPropertyBtn:{nb:"Zoom til din eiendom"},btnCancel:{nb:"« Velg annen eiendom"},btnSave:{nb:"Neste steg »"}}});Ext.define("Client.module.tool.byggsok.TegnBygg",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator,Client.module.tool.digitisedObjects.mixins.OLSettings,Adaptive.mixins.OLMeasure],map:null,scale:0,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.byggsok.lang.TegnBygg");g.buildGui()},buildGui:function(){var b=this;b.view=b.createForm({buttonsInline:true,items:[b.createTextBox("info1","info"),b.createButton("resetDrawingBtn",{handler:b.resetDrawing,scope:b,cls:"a3-fill",disabled:true}),b.createButton("zoomToPropertyBtn",{handler:function(){b.fireEvent("zoomToProperty")},cls:"a3-fill"}),b.createWrappedField("description",{xtype:"textarea"}),b.createField("length_area",{xtype:"checkbox",inputValue:false,listeners:{change:b.showMeasureChanged,scope:b}})],cancelBtnConfig:{leftAlign:true}})},onSave:function(){this.fireEvent("goForward")},onCancel:function(){this.fireEvent("selectProperty")},getHeader:function(){return this.lang.getString("headerText")},resetDrawing:function(){var b=this;if(b.currentFeature){b.drawLayer.destroyFeatures();delete b.currentFeature;b.view.down("#resetDrawingBtn").disable();b.startPicker()}},startPicker:function(){var b=this;if(b.currentFeature){b.view.down("#resetDrawingBtn").enable();b._activateModifyControl()}else{b._activateDrawControl()}},initLayer:function(){var b=this;if(b.drawLayer){return}b.drawLayer=new OpenLayers.Layer.Vector("Byggsok_"+Ext.id(),{rendererOptions:{zIndexing:true},styleMap:new OpenLayers.StyleMap({"default":new OpenLayers.Style({fillColor:"#36e",fillOpacity:0.25,strokeColor:"#139",strokeOpacity:0.9,pointRadius:7}),select:new OpenLayers.Style({fillColor:"#36e",fillOpacity:0.25,strokeColor:"#139",strokeOpacity:0.9,pointRadius:7}),vertex:new OpenLayers.Style({fillColor:"#999",fillOpacity:0.2,strokeColor:"#333",strokeOpacity:0.8,pointRadius:7})})});b.drawLayer.events.on({beforefeatureadded:b.onFeatureAdded,featuremodified:b.onFeatureModified,sketchmodified:b.onSketchmodified,sketchcomplete:b.onSketchcomplete,vertexmodified:b.onVertexmodified,scope:b});b.map.addLayer(b.drawLayer);b.modifyControl=new OpenLayers.Control.ModifyFeature(b.drawLayer,{clickout:false,toggle:false,vertexRenderIntent:"vertex"});b.map.addControl(b.modifyControl)},onFeatureAdded:function(b){var h=this,g=b.feature;if(g.attributes.ignore){return}h.currentFeature=g;h.view.down("#resetDrawingBtn").enable();
1if(h.show_measurement){h.drawMeasurementForFeature(h.currentFeature)}h._deactivateDrawControl();h._activateModifyControl()},_activateDrawControl:function(){var b=this;b.initLayer();if(!b.drawControl){b.drawControl=new OpenLayers.Control.DrawFeature(b.drawLayer,OpenLayers.Handler.Polygon);b.map.addControl(b.drawControl)}if(!b.drawControl.active){b.drawControl.activate()}},_deactivateDrawControl:function(){var b=this;if(b.drawControl&&b.drawControl.active){b.drawControl.deactivate()}},_activateModifyControl:function(){var b=this;b.initLayer();if(!b.modifyControl.active){b.modifyControl.activate()}if(b.currentFeature){b.modifyControl.selectFeature(b.currentFeature)}},_deactivateModifyControl:function(){var b=this;if(b.modifyControl.active){b.modifyControl.deactivate()}},onSketchmodified:function(b){var g=this;g.sketchFeature=b.feature;if(g.sketchFeature.geometry&&g.show_measurement){g.drawMeasurementForFeature(g.sketchFeature)}},onSketchcomplete:function(){var b=this;if(b.sketchFeature){b.clearupFeatureMeasurements(b.sketchFeature)}delete b.sketchFeature},getFeature:function(){return this.currentFeature},getDescription:function(){return this.getItem("description").getValue()},deactivate:function(){var b=this;if(b.modifyControl){b._deactivateModifyControl()}if(b.drawControl){b._deactivateDrawControl()}},activate:function(){var b=this;b.startPicker()},onVertexmodified:function(b){var g=this;g.sketchFeature=b.feature;if(g.show_measurement){g.drawMeasurementForFeature(g.sketchFeature)}},showMeasureChanged:function(h,g){var b=this;b.show_measurement=g;if(b.sketchFeature){if(b.show_measurement){b.drawMeasurementForFeature(b.sketchFeature)}else{b.clearupFeatureMeasurements(b.sketchFeature)}}else{if(b.currentFeature){if(b.show_measurement){b.drawMeasurementForFeature(b.currentFeature)}else{b.clearupFeatureMeasurements(b.currentFeature)}}}}});Ext.define("Client.module.tool.byggsok.Naboliste",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator,Client.module.map.search.agents.matrikkel.Grid],map:null,byggesakId:null,initialNeighbours:null,neighbours:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.byggsok.lang.Naboliste");g.initialNeighbours=[];g.neighbours=[];g.zoomTask=new Ext.util.DelayedTask(function(){if(g.dataView){g.dataView.zoomToResultExtent()}});g.buildGui()},buildGui:function(){var b=this;b.view=b.createForm({buttonsInline:true,items:[b.createTextBox("info1","info"),b.createButton("createNeighbourListBtn",true,{handler:b.createNeighbourList,scope:b,cls:"a3-fill"}),b.createButton("removeAllNeighboursBtn",{handler:b.removeAllNeighbours,scope:b,cls:"a3-fill"}),b.createButton("zoomToPropertyBtn",{handler:function(){b.fireEvent("zoomToProperty")},cls:"a3-fill"}),{xtype:"container",items:[b.createButton("backBtn",{handler:function(){b.fireEvent("goBack")}}),b.createButton("forwardBtn",true,{handler:function(){b.fireEvent("goForward")},cls:"a3-right"})]}],saveBtnConfig:false,cancelBtnConfig:false})},getHeader:function(){return this.lang.getString("headerText")},createNeighbourList:function(){var h=this,g=h.mainProperty,b=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.PropertyNeighbor"});h.view.setLoading();Ext.apply(b.getProxy().extraParams,{municipalityNumber:g.kommunenr,gnr:g.gardsnr,bnr:g.bruksnr||"",fnr:g.festenr||""});b.load({scope:this,callback:function(q,o,B){if(B){var z=new Array();for(var A=0;A<q.length;A++){z[A]=q[A].data}h.view.setLoading(false);if(h.dataView){for(var A=0;A<z.length;A++){var w=z[A].matrikkelenhetIdent;h.getPropertyGeometry(w)}}}else{h.view.setLoading(false);h.showFormError(h.lang.getString("cadastreLoadFailed"))}}})},removeAllNeighbours:function(){var b=this;if(b.dataView){b.dataView.removeAll()}},getPropertyIdentString:function(b){return b.kommunenr+"/"+b.kommunenr+(b.bruksnr==null?"":"/"+b.bruksnr)+(b.festenr==null?"":"/"+b.festenr)},getInitialNeighbours:function(){var b=this;Ext.Ajax.request({url:"Webservices/byggsok/Naboliste.asmx/HentNaboer",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({byggesakId:b.byggesakId}),scope:b,success:function(g){var h=Ext.JSON.decode(g.responseText).d;h=h&&h["return"];if(h&&h.Nabo){b.initialNeighbours=h.Nabo;if(b.initialNeighbours.length>
10){b.initialNeighbours.forEach(function(o){b.getPropertyGeometry({kommunenr:o.matrikkelNummer.kommunenummer,gardsnr:o.matrikkelNummer.gaardsnummer,bruksnr:o.matrikkelNummer.bruksnummer,festenr:o.matrikkelNummer.festenummer,festenrSpecified:!!o.matrikkelNummer.festenummer,seksjonsnr:o.matrikkelNummer.seksjonsnummer,seksjonsnrSpecified:!!o.matrikkelNummer.seksjonsnummer})})}}},failure:function(){b.showFormWarning(b.getFormString("initialNeighbourListFailed"))}})},getPropertyGeometry:function(g){var b=this;if(!g){return}Adaptive.utils.CadasterWfs.getProperty(g,b.map.projection.projCode,function(h){if(h.error){b.showFormWarning(b.getFormString("neighbourGeomFailed"))}else{b.dataView.add(h);b.zoomTask.delay(750)}})},activate:function(){var b=this;b.dataView=Ext.create("Client.module.map.byggsok.Property",{map:b.map,mainProperty:b.mainProperty,data:b.neighbours});b.fireEvent("showDataview",b.dataView);if(!b.initialized){b.getInitialNeighbours();b.initialized=true}},deactivate:function(){var b=this;b.collectRecords();b.dataView.onViewClose();delete b.dataView},collectRecords:function(){var b=this;if(b.dataView){b.neighbours=b.dataView.view.store.data.items}},getNeighbours:function(){var g=this,b=[];g.collectRecords();g.neighbours.forEach(function(h){var o=false;g.initialNeighbours.forEach(function(w){if(w.matrikkelNummer.kommunenummer===h.data.KOMMUNENR&&w.matrikkelNummer.gaardsnummer===h.data.GARDSNR&&w.matrikkelNummer.bruksnummer===h.data.BRUKSNR){var A=w.eier&&w.eier.kontakt,q,z;if(A){q=A.navn;if(A.adresser&&A.adresser.length>0){z=A.adresser[0]}}b.push({matrikkelNummer:w.matrikkelNummer,eiendommensadresse:w.eiendommensadresse,navn:q,adresse:z});o=true}});if(!o){b.push({matrikkelNummer:{bruksnummer:h.data.BRUKSNR,festenummer:h.data.FESTENR,gaardsnummer:h.data.GARDSNR,kommunenummer:h.data.KOMMUNENR,seksjonsnummer:h.data.SEKSJONSNR}})}});return b}});Ext.define("Client.module.tool.byggsok.lang.Plandata",{strings:{headerText:{nb:"3 av 3: Plandata"},info1:{nb:"<p>Velg reguleringsplan som er aktuell for byggesøknaden. Den mest spesifikke planen som er aktuell skal velges."},noPlandataFound:{nb:"Fant ingen plandata for valgt eiendom. Plandata mÃ¥ legges inn manuelt i Byggsøk."},btnCancel:{nb:"« Forrige steg"},btnSave:{nb:"â Lagre og fullfør"}}});Ext.define("Client.module.tool.byggsok.model.Plandata",{extend:Ext.data.Model,fields:[{name:"nasjonalarealplanid_komm"},{name:"nasjonalarealplanid_planid"},{name:"formaal"},{name:"formaal_text"},{name:"plannavn"},{name:"plantype"},{name:"utnyttingsgrad"},{name:"geom"}]});Ext.define("Client.module.tool.byggsok.Plandata",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],map:null,config:{wkt:null,epsg:null},plantypeMap:{30:"Reguleringsplan",31:"Reguleringsplan",32:"Bebyggelsesplan",33:"Kommuneplanenes arealdel",34:"Reguleringsplan",35:"Reguleringsplan"},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.byggsok.lang.Plandata");g.planStore=Ext.create("Ext.data.Store",{model:"Client.module.tool.byggsok.model.Plandata",proxy:{url:"WebServices/byggsok/Plandata.asmx/GetIntersectingPlandata",type:"ajaxread"},listeners:{beforeload:g.onBeforeLoad,scope:g}});g.buildGui()},buildGui:function(){var b=this;b.view=b.createForm({items:[b.createTextBox("info1","info"),{xtype:"dataview",itemId:"planView",store:b.planStore,emptyText:b.getFormString("noPlandataFound"),itemSelector:"li",tpl:new Ext.XTemplate('<ul class="tpl-list bordered noselect"><tpl for="."><li>',"<b>Plan</b>: {plannavn}<br>","<b>Plantype</b>: {[this.getPlanType(values)]}<br>","<b>FormÃ¥l</b>: {formaal_text}<br>","<b>Utnyttingsgrad (%)</b>: {utnyttingsgrad}<br>","</li></tpl></ul>",{getPlanType:function(g){return b.plantypeMap[g.plantype]}}),listeners:{itemclick:function(h,g){g.set("use",!g.get("use"));g.commit()}}}],warnBtnConfig:false,cancelBtnConfig:{leftAlign:true}})},onSave:function(){this.fireEvent("goForward")},onCancel:function(){this.fireEvent("goBack")},onBeforeLoad:function(g,b){var h=this;g.getProxy().params={wkt:h.wkt,epsg:h.epsg}},getPlandata:function(){var g=this,h=[],b=this.view.down("#planView").getSelectionModel().getSelection();b.forEach(function(o){h.push({plan:{arealplanNoekkel:{plannavn:o.get("plannavn"),arealplanId:{planidentifikasjon:o.get("nasjonalarealplanid_planid"),nummer:{kommunenummer:o.get("nasjonalarealplanid_komm")}},planType:{kodeverdi:g.plantypeMap[o.get("plantype")]}},arealbruk:[{utnytting:{utnyttingstype:{kodeverdi:"a"}}}]},utnyttingsgrad:o.get("utnyttingsgrad"),formaal:o.get("formaal_text")})});return h},getHeader:function(){return this.lang.getString("headerText")},activate:function(){this.planStore.load()},deactivate:function(){}});Ext.define("Client.module.tool.byggsok.Print",{extend:GeoMind.print.Standard,serviceUrl:"WebServices/generic/Printing.asmx/",printAll:true,config:{title:null,description:null,printedBy:null,dpi:150},constructor:function(b){Ext.apply(this,b);this.callParent([b])},_activate:function(){var b=this;b.callParent();b.printPreviewLayer.setVisibility(false);b.printPreviewGhostLayer.setVisibility(false)},savePrint:function(b,h){var g=this;g.currentFeature=b;g.currentProperty=h;g.setMap(g.map);g.on("printEngine_PrintingFinished",g.onPrintFinished,g);g.on("printEngine_ConfigReady",g.onPrintConfigReady,g);g.on("printEngine_PrintExtentUpdated",g.onPrintExtentUpdated,g);g.pullPrintConfig()},getBounds:function(){var o=this,b=o.currentProperty;if(b&&b.length>0){var h=b[0].geometry.getBounds();for(var g=1;g<b.length;++g){h.extend(b[g].geometry.getBounds())}if(h){return h.toGeometry()}}return o.currentFeature.geometry},grabPaperConfig:function(){return{layoutName:"layout_location_map",size:"A4",resolution:this.dpi+" dpi",format:"pdf",landscape:false,scale:this.scale,angle:0}},getDynamicData:function(){var g=this,b=g.map.getProjectionObject();return[{key:"printoutTitle",value:g.title}
1,{key:"printoutDescription",value:g.description},{key:"printedBy",value:g.printedBy},{key:"cornerTopRight",value:""},{key:"cornerBottomLeft",value:""},{key:"print_extent",value:null},{key:"projection_info",value:{name:b.toString(),def:b.proj.defData}},{key:"mode",value:"standard"},{key:"emailRecipient",value:""},{key:"emailSender",value:""},{key:"emailSubject",value:""},{key:"emailMessage",value:""},{key:"printLegend",value:"none"},{key:"legendHeader",value:""}]},onPrintConfigReady:function(g){var b=this;if(!g.printConfig.success){Ext.Msg.show({title:b.configFailedTitle,msg:b.configFailedMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}b._activate();b.dynamicData=b.getDynamicData();b.printPreviewExtentGhost.geometry=b.getBounds();b.updatePrintPreviewExtent();b.notifyPaperConfigChange();b.print()},notifyPaperConfigChange:function(){var b=this;b.onPrintSettingsUpdated({paperConfig:b.grabPaperConfig(),dynamicData:b.getDynamicData()})},onPrintExtentUpdated:function(b){this.scale=b.paperConfig.scale},onPrintFinished:function(b){this.fireEvent("printFinished",b)}});Ext.define("Client.module.tool.byggsok.Save",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],map:null,config:{byggesakId:null,fetchedProperty:null,mainProperty:null,mainPropertyNeedsUpdate:false,buildingFeature:null,buildingDescription:null,neighbours:null,plandata:null},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.byggsok.lang.Save");var h=[];if(g.mainPropertyNeedsUpdate){h.push({id:"updateProperty",name:g.lang.getString("updateProperty")})}if(g.neighbours){h.push({id:"updateNeighbours",name:g.lang.getString("updateNeighbours")})}if(g.plandata&&g.plandata.length){h.push({id:"updatePlanData",name:g.lang.getString("updatePlanData")})}if(g.buildingFeature||(g.fetchedProperty&&g.fetchedProperty.length>0)){h.push({id:"createAttachment",name:g.lang.getString("createAttachment")})}g.taskStore=new Ext.data.Store({fields:[{name:"id",type:"string"},{name:"done",type:"boolean",defaultValue:false},{name:"name",type:"string"},{name:"progress",type:"int",defaultValue:0},{name:"failed",type:"boolean"}],data:h});g.buildGui()},buildGui:function(){var b=this;b.view=b.createForm({items:[b.createTextBox("info1","info"),b.createTextBox("info2","success",{hidden:true}),b.createButton("btnDownload",true,{cls:"a3-fill",hidden:true,handler:function(){if(b.attachmentPath){document.getElementById("file_download_iframe").src=b.attachmentPath}}}),{xtype:"dataview",store:b.taskStore,disableSelection:true,itemSelector:"li",tpl:new Ext.XTemplate('<ul class="tpl-list bordered noselect"><tpl for="."><li>','<tpl if="values.failed"><i class="a3-icon icon-failed icon-color-error"></i>','<tpl elseif="values.done"><i class="a3-icon icon-check icon-color-success"></i>','<tpl else><i class="a3-icon icon-loading"></i></tpl>',"{name}",'<div class="progress" style="width: {progress}%; height: 2px; background: #090;"></div>',"</li></tpl></ul>")}],warnBtnConfig:false,cancelBtnConfig:false});b.view.down("#btnSave").disable()},onSave:function(){this.fireEvent("finish")},performNextTask:function(){var b=this,g=b.taskStore.findExact("done",false);if(g==-1){b.done();return}g=b.taskStore.getAt(g);g.set("progress",10);b[g.get("id")](function(h){g.set("progress",100);g.set("done",true);g.set("failed",!h);b.performNextTask()},function(h){g.set("progress",h>=90?90:h)})},done:function(){var b=this;b.view.setLoading(false);b.view.down("#info1").hide();b.view.down("#info2").show();if(b.attachmentPath){b.view.down("#btnDownload").show();setTimeout(function(){b.view.down("#btnDownload").disable()},5*60000)}b.view.down("#btnSave").enable()},getAddress:function(h,o){var b=h,g=Ext.create("Ext.data.Store",{model:"Client.data.model.search.matrikkel.PropertyDetails"});g.getProxy().extraParams={knr:parseInt(b.kommunenummer,10),gnr:parseInt(b.gaardsnummer),bnr:parseInt(b.bruksnummer),fnr:parseInt(b.festenummer)||0,snr:parseInt(b.seksjonsnummer)||0};g.load({scope:this,callback:function(w,q,A){if(A&&w.length){var z=w[0].get("adresser");if(z&&z.length){o(z[0]);return}}o()}})},getMatrikkelNummer:function(){var b=this.mainProperty;return{kommunenummer:b.kommunenr,gaardsnummer:b.gardsnr,bruksnummer:b.bruksnr,seksjonsnummer:b.seksjonsnr,festenummer:b.festenr}},updateProperty:function(q,b){var h=this,o=h.getMatrikkelNummer(),g=null;h.getAddress(o,function(w){h.propertyAddress=w;if(w){g={postnr:w.postnr,poststed:w.poststed,vegadresseIdent:{adressenavn:w.adresse}}}Ext.Ajax.request({url:"Webservices/byggsok/Eiendom.asmx/OppdaterEiendom",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({byggesakId:h.byggesakId,eiendom:o,adresse:g}),scope:h,success:function(A){var z=Ext.JSON.decode(A.responseText).d;q(!!z,A)},failure:function(){q(false)}})})},getNeighbourAddress:function(b,h){var g=this;
1g.getAddress(b.matrikkelNummer,function(o){if(o){if(!b.adresse){b.adresse={adresselinje1:o.adresse,postadresse:{postnummer:o.postnr,poststed:o.poststed}}}if(!b.eiendommensadresse){b.eiendommensadresse={postnr:o.postnr,poststed:o.poststed,vegadresseIdent:{adressenavn:o.vegnavn,nummer:o.nr,bokstav:o.bokstav}}}}if(!b.adresse){b.adresse={}}if(!b.eiendommensadresse){b.eiendommensadresse={}}h()})},updateNeighbours:function(q,g){var h=this,o=0,b=Ext.Array.findBy(h.neighbours,function(z,w){o=w;return !z.eiendommensadresse||(!z.eier&&!z.adresse)});if(b){h.getNeighbourAddress(b,function(){currentProgress=Math.min(85,15+o*(70/h.neighbours.length))|0;g(currentProgress);h.updateNeighbours(q,g,currentProgress)});return}h.neighbours.forEach(function(w){if(!w.navn){w.navn="Eiendommens eier"}});g(90);Ext.Ajax.request({url:"Webservices/byggsok/Naboliste.asmx/OppdaterNaboer",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({byggesakId:h.byggesakId,neighbours:h.neighbours}),scope:h,success:function(z){var w=Ext.JSON.decode(z.responseText).d;q(!!w,z)},failure:function(){q(false)}})},updatePlanData:function(h,b){var g=this;Ext.Ajax.request({url:"Webservices/byggsok/Plan.asmx/OppdaterPlaner",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({byggesakId:g.byggesakId,planListe:g.plandata}),scope:g,success:function(q){var o=Ext.JSON.decode(q.responseText).d;h(!!o,q)},failure:function(){h(false)}})},createAttachment:function(h,b){var g=this;if(!g.propertyAddress){b(15);g.getAddress(g.getMatrikkelNummer(),function(o){g.propertyAddress=o;g.performPrint(h,b)});return}g.performPrint(h,b)},performPrint:function(w,g){var o=this,h,q=20,b="";if(o.propertyAddress){b=o.propertyAddress.adresse+", "+o.propertyAddress.postnr+" "+o.propertyAddress.poststed}o.printer=Ext.create("Client.module.tool.byggsok.Print",{map:o.map,title:b,description:o.buildingDescription,listeners:{printEngine_ConfigReady:function(){g(q);h=setInterval(function(){if(q<40){q+=5}else{if(q<58){q+=2}else{if(q>=60){if(q<80){q+=5}else{if(q<90){q+=2}}}}}g(q)},1000)},printFinished:function(A){q=60;o.attachmentPath=A.fileLocation;var B,C="";try{B=A.fileLocation.split("f=")[1].split(".")[0]}catch(z){w(false);return}if(o.buildingFeature){C="SRID="+o.map.getProjection().split(":")[1]+";"+new OpenLayers.Format.WKT().write(o.buildingFeature)}Ext.Ajax.request({url:"Webservices/byggsok/Vedlegg.asmx/OppdaterVedlegg",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({byggesakId:o.byggesakId,fileToken:B,publicName:b,wkt:C}),scope:o,success:function(E){clearInterval(h);var D=Ext.JSON.decode(E.responseText).d;w(d&&!d.feilbeskrivelse,E)},failure:function(){w(false)}})}}});o.printer.savePrint(o.buildingFeature,o.fetchedProperty)},getHeader:function(){return this.lang.getString("headerText")},activate:function(){var b=this;b.view.setLoading(false);b.performNextTask()},deactivate:function(){}});Ext.define("Client.module.tool.byggsok.Byggsok",{extend:Client.module.ToolGeneric,mixins:[Adaptive.mixins.Notify],internal_name:"av_byggsok",btnCls:"a3-byggsok",parentController:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.byggsok.lang.Byggsok");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText")},buildGui:function(){var b=this;b.selectProperty=Ext.create("Client.module.tool.byggsok.SelectProperty",{map:b.map,knr:b.knr});b.selectProperty.mon(b.selectProperty,"setMainProperty",function(g){b.mainPropertyNeedsUpdate=true;b.setMainProperty({kommunenr:b.knr,teigid:g.TEIGID||null,gardsnr:g.GARDSNR,bruksnr:g.BRUKSNR,festenr:g.FESTENR||null,seksjonsnr:g.SEKSJONSNR||null})});b.selectProperty.mon(b.selectProperty,"goForward",function(g){b.zoomToProperty();b.activatePage(b.tegnBygg)});b.selectProperty.mon(b.selectProperty,"zoomToProperty",function(){b.zoomToProperty()});b.tegnBygg=Ext.create("Client.module.tool.byggsok.TegnBygg",{map:b.map});b.tegnBygg.mon(b.tegnBygg,"selectProperty",function(){b.activatePage(b.selectProperty);b.selectProperty.setValidProperty(true,b.mainProperty)});b.tegnBygg.mon(b.tegnBygg,"goForward",function(){b.activatePage(b.naboListe)});b.tegnBygg.mon(b.tegnBygg,"zoomToProperty",function(){b.zoomToProperty()});b.naboListe=Ext.create("Client.module.tool.byggsok.Naboliste",{mainProperty:b.mainProperty,byggesakId:b.byggesakId,map:b.map});b.naboListe.mon(b.naboListe,"goBack",function(){b.activatePage(b.tegnBygg)});b.naboListe.mon(b.naboListe,"goForward",function(){b.activatePage(b.plandata)});b.naboListe.mon(b.naboListe,"zoomToProperty",function(){b.zoomToProperty()});b.naboListe.mon(b.naboListe,"showDataview",function(g){b.reportEvent("dataViewRequest",{record:{view:g.view,id:g.id}})});b.plandata=Ext.create("Client.module.tool.byggsok.Plandata",{byggesakId:b.byggesakId,map:b.map});b.plandata.mon(b.plandata,"goBack",function(){b.activatePage(b.naboListe)});b.plandata.mon(b.plandata,"goForward",b.onComplete,b);b.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body",layout:"card",items:[b.selectProperty.view,b.tegnBygg.view,b.n
1aboListe.view,b.plandata.view],listeners:{afterrender:function(){if(b.performLoadPropertyDetails){b.view.setLoading();b.loadPropertyDetails()}}}})},setMainProperty:function(h,g){var b=this;b.mainProperty=h;if(b.naboListe){b.naboListe.mainProperty=h}delete b.fetchedProperty;b.fetchProperty(g)},getUrlParams:function(){var o=this,g=GeoMind.utils.Url,b=g.getUrlParam("gnr"),q=g.getUrlParam("bnr"),h=g.getUrlParam("bs_id");o.knr=g.getUrlParam("knr");if(h){if(h.indexOf("Byggesak@")==-1){h="Byggesak@"+h}o.byggesakId=h;if(o.knr&&b&&q){o.setMainProperty({kommunenr:o.knr,gardsnr:b,bruksnr:q,festenr:g.getUrlParam("fnr")||null,seksjonsnr:g.getUrlParam("snr")||null},true)}else{if(!o.knr){Ext.Msg.show({title:o.lang.getString("missing_knr_title"),msg:o.lang.getString("missing_close_window_msg"),closable:false})}else{o.performLoadPropertyDetails=true}}}else{Ext.Msg.show({title:o.lang.getString("missing_bs_id_title"),msg:o.lang.getString("missing_close_window_msg"),closable:false})}},loadPropertyDetails:function(){var b=this;Ext.Ajax.request({url:"Webservices/byggsok/Eiendom.asmx/HentEiendom",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({byggesakId:b.byggesakId}),scope:b,success:function(h){var o=Ext.JSON.decode(h.responseText).d;o=o&&o["return"];if(o&&o.matrikkelnr){var B=o.matrikkelnr,w=parseInt(B.kommunenummer),g=parseInt(B.gaardsnummer),A=parseInt(B.bruksnummer),z=parseInt(B.seksjonsnummer),q=parseInt(B.festenummer);if(w&&g&&A){b.setMainProperty({kommunenr:b.knr,gardsnr:g,bruksnr:A,festenr:q,seksjonsnr:z},true);b.activatePage(b.tegnBygg)}}b.view.setLoading(false);b.performLoadPropertyDetails=false},failure:function(){b.view.setLoading(false);b.performLoadPropertyDetails=false}})},onComplete:function(){var b=this;b.savePage=Ext.create("Client.module.tool.byggsok.Save",{byggesakId:b.byggesakId,fetchedProperty:b.fetchedProperty,mainProperty:b.mainProperty,mainPropertyNeedsUpdate:b.mainPropertyNeedsUpdate,buildingFeature:b.tegnBygg.getFeature(),buildingDescription:b.tegnBygg.getDescription(),neighbours:b.naboListe.getNeighbours(),plandata:b.plandata.getPlandata(),map:b.map});b.savePage.mon(b.savePage,"finish",function(){window.close()});b.activatePage(b.savePage)},activate:function(){var b=this;b.getUrlParams();if(!b.view){b.buildGui();if(b.mainProperty){b.activatePage(b.tegnBygg)}else{b.activatePage(b.selectProperty)}}else{b.currentPage.activate()}if(b.mainProperty){b.view.on("render",b.zoomToProperty,b,true)}b.reportEvent("disableInfoTool")},deactivate:function(){var b=this;b.reportEvent("enableInfoTool");if(b.currentPage){b.currentPage.deactivate()}},zoomToProperty:function(){var o=this;if(o.fetchedProperty){var g=o.fetchedProperty,h=g[0].geometry.getBounds();for(var b=1;b<g.length;++b){h.extend(g[b].geometry.getBounds())}if(h){o.map.zoomToExtent(h.scale(1.2))}}else{o.fetchProperty(true)}},fetchProperty:function(g){var b=this;Adaptive.utils.CadasterWfs.getProperty(b.mainProperty,b.map.projection.projCode,function(o){var h=b.currentPage==b.selectProperty;if(o.error||o.length==0){if(h){b.selectProperty.setValidProperty(false);return}b.showNotifyError(b.view,b.lang.getString("propertyFetchError"));if(o.length==0){delete b.mainProperty;b.activatePage(b.selectProperty)}}else{if(o.length>0){b.fetchedProperty=o;if(g){b.zoomToProperty()}b.highlightProperty(o);b.plandata.wkt=new OpenLayers.Format.WKT().write(o[0]);b.plandata.epsg=b.map.projection.projCode;if(h){b.selectProperty.setValidProperty(true);return}b.showNotifySuccess(b.view,b.lang.getString("propertyFetchSuccess"))}}})},highlightProperty:function(b){var g=this;if(!g.highlightLayer){g.highlightLayer=new OpenLayers.Layer.Vector("Byggsok_"+Ext.id(),{rendererOptions:{zIndexing:true},styleMap:new OpenLayers.StyleMap({"default":{fillColor:"#fff",fillOpacity:0.1,strokeColor:"#0e0"}})})}g.highlightLayer.destroyFeatures();g.highlightLayer.addFeatures(b);g.map.addLayer(g.highlightLayer)},activatePage:function(g){var b=this;if(b.currentPage){b.currentPage.deactivate()}b.view.getLayout().setActiveItem(g.view);b.headerText=g.getHeader();b.adviseHeaderChange(b.headerText);g.activate();b.currentPage=g}});Ext.define("Client.module.tool.byggsok.lang.Naboliste",{strings:{headerText:{nb:"2 av 3: Naboliste"},info1:{nb:"<p>Eksisterende naboliste fra Byggsøk hentes automatisk.<p>Rediger nabolisten ved å hente naboer fra Kartverkets matrikkel eller å velge eller velge bort eiendomer manuelt i kartet</p>"},createNeighbourListBtn:{nb:"Hent fra matrikkel"},removeAllNeighboursBtn:{nb:"Fjern alle fra listen"},zoomToPropertyBtn:{nb:"Zoom til din eiendom"},cadastreLoadFailed:{nb:"Kunne ikke hente naboer fra matrikkel"},initialNeighbourListFailed:{nb:"Kunne ikke laste naboliste fra Byggsøk"},neighbourGeomFailed:{nb:"Kunne ikke hente en naboeiendoms geometri"},backBtn:{nb:"« Forrige steg"},forwardBtn:{nb:"Neste steg »"}}});Ext.define("Client.module.tool.byggsok.lang.Save",{strings:{headerText:{en:"Save to Byggsøk",nb:"Lagre i Byggsøk"},info1:{nb:"<p>Sender data til Byggsøk.<p>Dette kan ta noe tid. Vennligst ikke lukk nettleservinduet før prosessen er fullført."},info2:{nb:"<p>Opplasting fullført.<p>Du kan nå returnere til Byggsøk ved å trykke knappen nederst."},btnDownload:{nb:"Last ned vedlegg"},updateProperty:{nb:"Oppdater eiendom"},updateNeighbours:{nb:"Oppdater naboliste"},updatePlanData:{nb:"Oppdater plandata"},createAttachment:{nb:"Lag vedlegg"},btnSave:{nb:"Returner til Byggsøk"}}});Ext.define("Client.module.tool.collaboration.form.lang.Activity",{strings:{addBtn:{en:"Add",nb:"Legg til"}}});Ext.define("Client.module.tool.collaboration.lang.Standard",{str
1ings:{mainBtnText:{en:"Workspaces",nb:"Arbeidsrom"},mainBtnTip:{en:"Create and share issues with users",nb:"Lag og del saker med andre brukere"},headerText:{en:"Workspaces",nb:"Arbeidsrom"},setIssue:{en:"Selected issues",nb:"Valgt sak"},issueCbx:{en:"Issues",nb:"Saker"},issueCreateBtn:{en:"Create issue",nb:"Ny sak"},issueCloseBtn:{en:"Exit issue",nb:"Gå ut av sak"},infoEmpty:{en:"<p>In Workspaces you may share map, map content and documents with other users, including drawing your own objects and adding comments. Start by selecting an existing issue through the dropdown above or create a new through the button «New issue».",nb:"<p>I Arbeidsrommet kan du dele kart, kartdata og dokumenter med andre brukere, samt tegne egne objekter og legge til kommentarer i kartet. Hent opp en eksisterende sak fra nedtrekkslisten ovenfor eller opprett en ny via knappen «Ny sak»."},infoGuest:{en:"<p>This module is only available for logged in users.",nb:"<p>Modulen fungerer kun for brukere som er logget inn."},refreshTooltip:{en:"Refresh all data",nb:"Hent nye data"},mapSet:{en:"Map with versioning",nb:"Kart med versjonshistorikk"},imageSet:{en:"Screenshots",nb:"Skjermbilder"},drawSet:{en:"Drawn objects",nb:"Tegnede objekter"},featureSet:{en:"Shared data",nb:"Delte data"},commentSet:{en:"Comments",nb:"Kommentarer"},documentSet:{en:"Documents",nb:"Dokumenter"},userSet:{en:"Users",nb:"Deltakere"},settingsSet:{en:"Settings",nb:"Innstillinger"},activitySet:{en:"Activity",nb:"Aktivitetslogg"},newIssueTitle:{en:"New issue",nb:"Ny sak"},newIssueLabel:{en:"Please type name of new issue",nb:"Skriv navn på ny sak"},createError:{en:"Error while creating a issue!",nb:"Feil ved opprettelse av ny sak!"}}});Ext.define("Client.module.tool.digiTheme.lang.DigiTheme",{strings:{mainBtnText:{en:"Digi Theme",nb:"Digitema",nn:"Digitema"},mainBtnTip:{en:"",nb:"",nn:""},headerText:{en:"Digi theme",nb:"Digitaliseringtema",nn:"Digitaliseringtema"},infoText:{en:"No digi theme selected. Please select one from the theme picker",nb:"Ingen tema valgt. Velg et fra temavelgeren"},deleteMediaHeader:{en:"Confirm delete",nb:"Bekreft sletting",nn:"Bekreft sletting"},deleteMediaBody:{en:"Are you sure you want to delete media?",nb:"Er du sikkert på at du vil slette media?",nn:"Er du sikkert på at du vil slette media?"},errorHeader:{en:"Error",nn:"Feil",nb:"Feil"},deleteMediaErrorBody:{en:"Media not deleted",nn:"Media ikke sletta",nb:"Media ikke sletta"}},errCodes:{}});Ext.define("Client.module.tool.digiTheme.model.DigiThemeEntry",{extend:Ext.data.Model,fields:["name","theme_uuid","theme_data"]});Ext.define("Client.module.tool.digiTheme.model.History",{extend:Ext.data.Model,proxy:{url:"WebServices/client/DataView.asmx/ReadHistory",type:"ajax",actionMethods:{read:"POST"},reader:{type:"json",root:"d.records"},paramsAsJson:true},fields:[{name:"id"},{name:"objectid"},{name:"date_modified",type:"date",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"created_by"},{name:"diff"}],config:{fields:this.fields}});Ext.define("Client.module.tool.digiTheme.ux.lang.Form",{strings:{btnSave:{en:"Save",nb:"Lagre"},btnEdit:{en:"Edit",nb:"Rediger"},btnDiscard:{en:"Discard",nb:"Forkast"},btnCancel:{en:"Close",nb:"Lukk"},btnReturn:{en:"Close",nb:"Lukk"},btnAddNew:{en:"Add new",nb:"Opprett ny"},btnAddNew_tooltip:{en:"Reset form and add new feature",nb:"Nullstill skjema og legg til nytt objekt"},showMedia:{en:"Show attachments",nb:"Vis vedlegg"},createChild:{en:"Create",nb:"Lag"},showChildren:{en:"Show",nb:"Vis"},loading:{en:"Please wait",nb:"Vennligst vent"},notifySaved:{en:"Changes saved",nb:"Endringer lagret"},empty_list:{en:"Not selected",nb:"Ikke valgt"},empty_required:{en:"Please make a selection",nb:"Vennligst velg"},yes:{en:"Yes",nb:"Ja"},no:{en:"No",nb:"Nei"},empty_date:{en:"None",nb:"Ingen"},empty_time:{en:"00:00",nb:"00.00"},_parent:{en:"Parent",nb:"Forelder"},_belongs_to:{en:"Belongs to",nb:"Tilhører"},_no_parent:{en:"No registered parents",nb:"Ingen foreldre registrert"},_parent_fetch_fail:{en:"Error getting parent",nb:"Feil ved henting av foreldre"},invalid_fields:{en:"The following fields are missing",nb:"Følgende felt mangler"}
1,historicalObject:{en:"Historical version",nb:"Historisk versjon"},id:{en:"Id",nb:"Id"},date_created:{en:"Created",nb:"Opprettet"},date_modified:{en:"Last modified",nb:"Sist endret"},decimalSeparator:{en:".",nb:","},thousandSeparator:{en:" ",nb:"."},geometry:{en:"Geometry",nb:"Geometri"},missing_geom:{en:"<h4>No geometry.</h4><p>Draw geometry in map before saving.",nb:"<h4>Ingen geometri.</h4><p>Tegn geometri i kart før du lagrer."},unsavedChangesTitle:{en:"Unsaved changes",nb:"Ulagrede endringer"},unsavedChangesMsg:{en:"Discard the unsaved changes?",nb:"Forkast de ulagrede endringene?"},errorTitle:{en:"Save failed",nb:"Lagring feilet"},errorBody:{en:"Could not save data.",nb:"Kunne ikke lagre data."},errorInvalidGeom:{en:"The geometry is invalid. Please check for self-intersections or other issues.",nb:"Geometrien er ugyldig. Vennligst se etter selvkryssinger eller andre feil."},unsavedChangesSwitchToolMsg:{en:"You got unsaved changes, continue to new tool?",nb:"Du har ulagrede endringer, vil du bytte verktøy?"},exportData:{en:"Export to PDF",nb:"Eksporter til PDF"},exportThemeData:{en:"Simple PDF",nb:"Enkel PDF"},exportParentChildData:{en:"Parent and children",nb:"Foreldre og barn"},pdfExportFailedHeader:{en:"PDF export failed",nb:"PDF-eksport feilet"}
1,pdfExportFailedMsg:{en:"Could not generate exported PDF. Please try again or contact system administrator.",nb:"Kunne ikke generere eksportert PDF. Vennligst prøv igjen eller kontakt systemadministrator."},transformationFailed:{en:"Transformation of coordinates failed",nb:"Transformasjon av koordinater feilet"},setGeometryFailed:{en:"Set geometry in map failed",nb:"Kunne ikke sette geometri i kart"},geometryChangedFailed:{en:"Failed to set changed geometry",nb:"Kunne ikke sette endret geometri"},showHistory:{en:"Show history",nb:"Vis historikk"},oldValue:{en:"Old value",nb:"Gammel verdi"},cloneRecord:{en:"Clone",nb:"Kopier"},cloneWithGeomTitle:{en:"Clone record",nb:"Kopier objekt"},cloneWithGeomMsg:{en:"Do you want to include any geometry in the cloned record?",nb:"Ãnsker du Ã¥ ta med geometri i det kopierte objektet?"},deleteConfirmTitle:{en:"Confirm delete",nb:"Bekreft sletting"},deleteConfirmMsg:{en:"Do you really want to delete this record?",nb:"Vil du virkelig slette denne raden?"},deleteRecordError:{en:"Could not delete the record.",nb:"Kunne ikke utføre sletting."},deleteMsg:{en:"Deleting...",nb:"Sletter..."},exportWizard:{en:"Export wizard",nb:"Eksportveiviser"},exportWizardSortByColumn:{en:"Sort by column",nb:"Sorter pÃ¥ kolonne"},exportWizardAscending:{en:"Ascending",nb:"Stigende"},exportWizardDescending:{en:"Descending",nb:"Synkende"},exportWizardIncludeImages:{en:"Include image attachments",nb:"Inkluder bildevedlegg"},exportWizardLowResolutionImages:{en:"Reduce PDF size by downscaling images",nb:"Reduser størrelse pÃ¥ PDF ved Ã¥ nedskalere bilder"},exportWizardIncludeEmptyFields:{en:"Include empty fields",nb:"Vis felter uten verdi"},exportWizardNext:{en:"Next",nb:"Neste"},exportWizardPrevious:{en:"Previous",nb:"Forrige"},exportWizardGenerateReport:{en:"Generate report",nb:"Generer rapport"},exportWizardSelectContent:{en:"Select content",nb:"Velg innhold"},exportWizardSelectSettings:{en:"Select settings",nb:"Velg innstillinger"},exportWizardExportError:{en:"An error occured while exporting PDF. Please try again or contact support.",nb:"Kunne ikke eksportere PDF. Vennligst prøv igjen eller kontakt support."},exportWizardGeneralError:{en:"An error occured. Please try again or contact support.",nb:"En feil har oppstÃ¥tt. Vennligst prøv igjen eller kontakt support."}}});Ext.define("Adaptive.form.field.Number",{extend:Ext.form.field.Number,alias:"widget.a3-numberfield",config:{thousandSeparator:null},constructor:function(b){if(!b.thousandSeparator){b.thousandSeparator=Ext.util.Format.thousandSeparator}this.callParent(arguments)},addThousandSeparator:function(b){if(b){b=String(b).replace(".",this.decimalSeparator).replace(/(\d{1,3}|\G\d{3})(?=(?:\d{3})+(?!\d))/g,"$1"+this.thousandSeparator)}return b},removeThousandSeparator:function(b){if(typeof(b)==="string"){b=b.replace(new RegExp(this.thousandSeparator=="."?"\\.":this.thousandSeparator,"g"),"")}return b},valueToRaw:function(b){return this.addThousandSeparator(this.callParent([this.removeThousandSeparator(b)]))},parseValue:function(b){return this.callParent([this.removeThousandSeparator(b)])},getErrors:function(b){return this.callParent([this.removeThousandSeparator(b)])},getSubmitValue:function(){return this.removeThousandSeparator(this.callParent())}});Ext.define("Adaptive.form.field.lang.RichEditor",{strings:{btnCancel:{en:"Cancel",nb:"Avbryt"},btnDone:{en:"Done",nb:"Ferdig"},editInWindow:{en:"Edit in a bigger window",nb:"Rediger i større vindu"}}});Ext.define("Adaptive.form.field.RichEditor",{extend:Ext.form.field.HtmlEditor,alias:"widget.richeditor",enableAlignments:false,enableColors:false,enableFont:false,enableFontSize:false,enableLinks:false,enableLists:false,enableSourceEdit:false,constructor:function(){var b=this;b.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.form.field.lang.RichEditor");b.plugins=[Ext.create("Ext.util.Observable",{init:function(g){this.cmp=g;this.cmp.on("render",this.onRender,this)},onRender:function(){var g=this.cmp.getToolbar();if(b.readOnly||b.disabled){g.setVisible(false)}g.add({iconCls:"icon-window",tooltip:b.lang.getString("editInWindow"),handler:function(){var o=this;if(!o.editWindow){o.editWindow=new Ext.Window({modal:true,header:false,width:240,layout:"fit",items:[{xtype:"htmleditor",enableFont:false,value:o.cmp.getValue()}],buttons:[{text:b.lang.getString("btnDone"),cls:"a3-submit-btn",handler:function(){o.applyText();o.editWindow.close();delete o.editWindow}},{text:b.lang.getString("btnCancel"),handler:function(){o.editWindow.close();delete o.editWindow}}]})}var q=Ext.getBody().getWidth(),h=Ext.getBody().getHeight();o.editWindow.setSize(Math.min(Math.max(400,q/2),q),Math.min(Math.max(300,h/2),h));o.editWindow.showBy(Ext.getBody(),"c-c")},scope:this})},applyText:function(){var g=this.editWindow.query("htmleditor")[0].getValue();this.cmp.setValue(g)}})];b.callParent(arguments)}});Ext.define("Client.module.tool.digiTheme.ux.lang.AclEditor",{strings:{btnAdd:{en:"Add",nb:"Legg til"},removeRole:{en:"Remove group",nb:"Fjern gruppe"},noRoleToAdd:{en:"No groups available",nb:"Ingen grupper tilgjengelig"},noRoleToAddMessage:{en:"You are not a member of any available groups and can therefore not create this object type.<br>Please contact the site administrator for group assignment.",nb:"Du er ikke medlem i noen tilgjengelig gruppe og kan derfor ikke opprette denne typen objekt.<br>Vennligst kontakt sideadministratoren for gruppetildeling."}}});Ext.define("Client.module.tool.digiTheme.ux.AclEditor",{extend:Ext.form.FieldSet,mixins:{field:Ext.form.field.Field},alias:"widget.acleditor",cls:"a3-acleditor a3-toolbar",initComponent:function(){var b=this;b.roleStore=Client.data.model.Role.getGroupRoleStore(true);b.mon(b.roleStore,"load",function(){b.setValue(b.getValue());b.setIsExisting(b.isExisting)});b.roleStore.load();b.userRoleStore=Ext.create("Ext.data.Store",{model:"Client.data.model.Role",proxy:{type:"aja
1xread",url:"WebServices/generic/Role.asmx/ReadOwnGroups"},autoLoad:true,listeners:{load:function(){Ext.defer(function(){b.userRoleStoreLoaded=true;b.setValue(b.getValue());b.setIsExisting(b.isExisting)})}}});if(b.allowedRoles.length){b.userRoleStore.filter(function(g){return Ext.Array.contains(b.allowedRoles,g.get("uuid"))});b.userRoleStore.on("load",function(){b.userRoleStore.filter()})}b.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.AclEditor");b.title=b.fieldLabel+' <span class="'+(b.readOnly?"a3-asterisk-soft":"a3-asterisk")+'">*</span>';b.collapsible=true;b.collapsed=false;b.store=Ext.create("Ext.data.Store",{model:Ext.define("Client.module.tool.digiTheme.ux.AclEditor.Role",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string"},{name:"name",type:"string"}]})});b.store.on("datachanged",function(g){b.fireEvent("change",g)});b.layout="hbox";b.items=[{xtype:"box",isValid:function(){return b.isValid()},getActiveErrors:function(){return b.isValid()}},{xtype:"dataview",itemId:"aclRoleView",flex:1,padding:5,itemSelector:".role",tpl:new Ext.XTemplate('<tpl for="."><span class="role {[this.isOwnGroup(values.uuid) ? "own" : ""]}">{name}',(!b.readOnly?'<tpl if="this.isRemovable(values.uuid)"><span class="a3-icon icon-remove" data-qtip="'+b.lang.getString("removeRole")+'"></span></tpl>':""),"</span> </tpl>",{isRemovable:function(g){if(b.isAdmin){return true}if(b.userRoleStore.findExact("uuid",g)==-1){return false}var h=0;b.getValue().forEach(function(o){if(b.userRoleStore.findExact("uuid",o)!=-1){h++}});return h>1},isOwnGroup:function(g){return b.userRoleStore.findExact("uuid",g)!=-1}}),store:b.store,listeners:{itemadd:b.addRoleRemoveListeners,itemupdate:b.addRoleRemoveListeners,refresh:b.addAllRoleRemoveListeners,datachanged:function(){b.fireEvent("change",b.getValue())},scope:b}}];if(!b.readOnly){b.items.push({xtype:"button",cls:"a3-submit-btn",iconCls:"icon-add",text:b.lang.getString("btnAdd"),itemId:"btnAddAclRole",menu:{items:[{text:b.lang.getString("noRoleToAdd"),disabled:true,isNoRoles:true}],listeners:{beforeshow:function(o){var h,g=0;o.items.items.forEach(function(w){if(w.isNoRoles){h=w;return}var q=b.store.findExact("uuid",w.role.get("uuid"))==-1;if(q){g++}w.setVisible(q)});if(h){h.setVisible(g==0)}},click:function(h,g){if(g&&g.role){b.store.add(g.role.data);b.down("#aclRoleView").refresh();b.setDirty()}}}}})}b.callParent(arguments)},populateMenu:function(h){var g=this;if(!g.readOnly){var b=g.down("#btnAddAclRole"),o=b&&b.menu;o.removeAll();if(o){h.each(function(q){if(g.allowedRoles.length&&Ext.Array.contains(g.allowedRoles,q.get("uuid"))){o.add(Ext.widget({xtype:"menuitem",text:q.get("name"),role:q}))}})}}},addAllRoleRemoveListeners:function(o){var h=this,g=o.getNodes(),b=o.getRecords(g);h.addRoleRemoveListeners(b,0,g)},addRoleRemoveListeners:function(h,o,g){var w=this,q=0,z;if(!Ext.isArray(h)){h=[h]}if(!Ext.isArray(g)){g=[g]}function b(B){w.store.remove(B);w.down("#aclRoleView").refresh();w.setDirty()}function A(B,C){return function(D){D.preventDefault();D.stopPropagation();C(B)}}for(;q<h.length;++q){if(g[q].getAttribute("data-listeners-created")==="true"){continue}z=g[q].getElementsByClassName("icon-remove")[0];if(z){z.addEventListener("click",A(h[q],b))}g[q].setAttribute("data-listeners-created","true")}},clearDirty:function(){var b=this;if(b._isDirty){b._isDirty=false;b.fireEvent("dirtychanged",false)}b.fireEvent("validitychange",b.isValid())},setDirty:function(){var b=this;if(!b._isDirty){b._isDirty=true;b.fireEvent("dirtychanged",true)}b.fireEvent("validitychange",b.isValid())},isValid:function(){return this.getValue().length>0},setIsExisting:function(h){var g=this,b=g.down("#btnAddAclRole");g.isExisting=h;if(g.readOnly||!b||!g.userRoleStoreLoaded){return}g.populateMenu(g.isAdmin?g.roleStore:g.userRoleStore);b.setDisabled(!(g.isAdmin||g.userRoleStore.getCount()>1))},reset:function(){var b=this;b.isReset=true;b.setValue(null);b.isReset=false},setValue:function(g){var b=this;if(!b.isReset&&!b.isAdmin&&!b.isExisting&&b.userRoleStoreLoaded&&b.userRoleStore.getCount()==0){Ext.MessageBox.show({title:b.lang.getString("noRoleToAdd"),msg:b.lang.getString("noRoleToAddMessage")})}if((!g||g.length==0)&&!b.readOnly&&!b.isExisting&&b.userRoleStore.getCount()==1){g=[b.userRoleStore.getAt(0).get("uuid")]}b.store.removeAll();if(g&&Array.isArray(g)){g.forEach(function(h){var o=b.roleStore.findExact("uuid",h);b.store.add({uuid:h,name:o!=-1?b.roleStore.getAt(o).get("name"):h})})}b.down("#aclRoleView").refresh();b.clearDirty()},getValue:function(){var g=this,b=[];g.store.each(function(h){b.push(h.get("uuid"))});return b}});Ext.define("Client.module.tool.digiTheme.ux.AclEditorCombo",{extend:Ext.form.field.ComboBox,mixins:{field:Ext.form.field.Field}
1,alias:"widget.acleditorcombo",cls:"a3-acleditor a3-toolbar",valueField:"uuid",displayField:"name",editable:false,isAdmin:false,isDisplayForm:false,autoHide:false,disabled:false,initComponent:function(){var b=this;b.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.AclEditor");b.isDisplayForm=b.readOnly;b.userRoleStore=Ext.create("Ext.data.Store",{model:"Client.data.model.Role",proxy:{type:"ajaxread",url:"WebServices/generic/Role.asmx/ReadOwnGroups"},autoLoad:true,listeners:{load:function(h,g){b.userRoleStore.filter();b.roleStore.filter();b.setIsExisting(b.isExisting);Ext.defer(function(){var o=b.getValue();if(b.userRoleStore.getCount()==1&&(o==null||o.length==0)){b.setValue(b.userRoleStore.first().get("uuid"))}if(!b.isAdmin&&b.userRoleStore.getCount()==1){if(b.autoHide){b.hide()}else{b.setReadOnly(true)}}})}}});b.userRoleStore.filter(function(g){if(b.allowedRoles.length){return Ext.Array.contains(b.allowedRoles,g.get("uuid"))}return true});b.roleStore=Client.data.model.Role.getGroupRoleStore(true);b.roleStore.filter(function(g){if(!b.isAdmin&&!b.isExisting){if(b.userRoleStore.findExact("uuid",g.get("uuid"))===-1){return false}}if(b.allowedRoles.length){return Ext.Array.contains(b.allowedRoles,g.get("uuid"))}return true});b.roleStore.on("load",function(){b.roleStore.filter()});b.store=b.roleStore;b.callParent(arguments)},setIsExisting:function(g){var b=this;b.isExisting=g;if(b.isDisplayForm){return}b.userRoleStore.filter();b.roleStore.filter();if(g){b.setReadOnly(!b.isDisplayForm&&!b.isAdmin)}else{b.setReadOnly(!b.isDisplayForm&&!(b.isAdmin||b.userRoleStore.getCount()>1))}},reset:function(){var b=this;b.isReset=true;b.callParent();b.isReset=false},setValue:function(g){var b=this;if(!b.isReset&&!b.isAdmin&&!b.isExisting&&b.userRoleStoreLoaded&&b.userRoleStore.getCount()==0){Ext.MessageBox.show({title:b.lang.getString("noRoleToAdd"),msg:b.lang.getString("noRoleToAddMessage")});b.setReadOnly(true);b.callParent(arguments);return}if(!b.isDisplayForm&&b.isExisting){b.setReadOnly(!b.isAdmin)}if(!g&&!b.isDisplayForm&&!b.isExisting&&b.userRoleStore.getCount()==1){b.callParent([b.userRoleStore.getAt(0).get("uuid")])}else{b.callParent(arguments)}if(b.autoHide&&!b.isAdmin&&!b.isExisting&&b.userRoleStore.getCount()==1){b.hide()}}});Ext.define("Client.module.tool.digiTheme.ux.MediaUploadSimple",{extend:Client.module.tool.digiTheme.ux.MediaUploadBase,buildGui:function(){var g=this,b=[],h=GeoMind.utils.SessionManager.ss.sessionId;if(g.record.get("uuid")){b.push(g.createSet("mediaView",{title:"",collapsible:false,cls:"a3-media-view",hidden:!g.record.get("uuid"),items:[{itemId:"mediaPanel",xtype:"panel",html:'<div class="thumb {[this.getMediaClass(values.mime)]} thumb-no-pointer"><img class="thumb-img" src="'+g.imageUrl+g.record.get("uuid")+"&gm_session_id="+h+'"></div>'}]}))}b.push(g.createSet("uploadFile",{collapsible:false,items:[g.createField("uploadFile",{xtype:"filefield",required:!g.record.get("uuid"),hideLabel:true,buttonText:"",buttonConfig:{iconCls:"a3-upload-icon"},listeners:{change:function(w,q){var o=g.view.down("#mediaView");if(o){o.hide()}}}})]}));b.push(g.createSet("details",{itemId:"commentWrap",collapsible:false,items:[g.createField("author",{xtype:"textfield"}),g.createField("comment",{xtype:"textarea",grow:true,growMax:500})]}));g.fieldLang=g.lang;g.layout="fit";g.view=g.createForm({itemId:"uploadForm",cls:"a3-form a3-edit-form a3-form-noscroll a3-content-alternate",items:b,layout:{type:"vbox",align:"stretch"}});g.getForm().loadRecord(g.record)},onSave:function(){var A=this,g=A.getForm(),w=A.getItem("uploadFile"),b=w&&w.getValue(),o=w&&w.getEl(),D=o&&Ext.getDom(o).getElementsByClassName("x-form-file-input"),q=D&&D[0]&&D[0].files[0],B=-1,z;if(!A.record.get("uuid")&&!A.uuid&&!q){return}A.mask();var h=g.getRecord();var C=g.getFieldValues();if(h){z=Ext.Object.merge(h.data,C)}else{z=C}if(q){if(b){if((B=b.lastIndexOf("/"))!=-1){b=b.substring(B+1)}if((B=b.lastIndexOf("\\"))!=-1){b=b.substring(B+1)}}delete z.uuid;z.name=b;z.mime=q.type;z.file_size=q.size}z.the_geom=z.the_geom||null;Ext.applyIf(z,A.data);z.data=JSON.stringify(Object.assign(JSON.parse(z.data)||{},{author:z.author}));z.owner_uuid=A.owner_uuid;z.parent_object_uuid=A.parent_object_uuid;z.parent_object_type=A.parent_object_type;if(A.isPublic){z.config={configs:[]};Adaptive.utils.Config.updateConfig(z.config.configs,"isPublic",true)}A.saveRecord(z);A.view.down("#btnSave").disable()},onCancel:function(){var b=this;if(b.view.isDirty()){Ext.MessageBox.confirm(b.lang.getString("cancelUploadHeader"),b.lang.getString("cancelUploadBody"),function(g){if(g==="yes"){b.f
1ireEvent("navigateBack")}})}else{b.fireEvent("navigateBack")}},mediaUploaded:function(){var b=this;b.unmask();b.view.getForm().reset();b.onValidityChange(b.getForm().isValid());b.fireEvent("mediaUploaded",b.uuid)},saveRecord:function(h){var b=this,g="Create";if(b.record.get("uuid")){g="Update"}Ext.Ajax.request({url:b.serviceUrl+g,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:h,extraParams:[]}),success:Ext.bind(b.onSuccess,b),failure:Ext.bind(b.onError,b)})},onSuccess:function(b){var h=this,b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){if(h.record.get("uuid")){h.mediaUploaded()}var g=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"uuid");h.onCreated(g)}else{h.onError()}}});Ext.define("Client.module.tool.digiTheme.ux.lang.SingleMediaField",{strings:{uploadMedia:{en:"Upload media",nb:"Last opp media"},noMedia:{en:"No media file",nb:"Ingen mediafil"}}});Ext.define("Client.module.tool.digiTheme.ux.SingleMediaField",{extend:Ext.form.FieldContainer,mixins:{field:Ext.form.field.Field},alias:"widget.dt_singlemedia",serviceUrl:"WebServices/generic/Media.asmx/",initComponent:function(){var g=this,h=GeoMind.utils.SessionManager.ss.sessionId,b=Ext.define("Client.module.tool.digiTheme.ux.SingleMediaField.Image",{extend:Ext.data.Model,fields:[{name:"mime",type:"string",useNull:true,defaultValue:null},{name:"uuid",type:"string",useNull:true,defaultValue:null},{name:"data",type:"string",useNull:true,defaultValue:null},{name:"author",type:"string",defaultValue:null,useNull:true,mapping:"data",convert:function(w,z){var q=GeoMind.utils.String.fixNullString(w);if(q){try{q=JSON.parse(q);return q.author||null}catch(o){console.warn("Failed to parse media data object")}}}},{name:"comment",type:"string",defaultValue:null,useNull:true}],proxy:{type:"crud",url:g.serviceUrl}});g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.SingleMediaField");g.store=Ext.create("Ext.data.Store",{model:b,listeners:{load:function(q,o,w){if(w&&o.length==0){g.updateStore(null)}}}});g.mediaView=Ext.create("Client.module.tool.digiTheme.ux.MediaView",{store:g.store,flex:1,isEditable:g.editable,listeners:{scope:g,editMedia:function(q,o){g.showUploadMediaWindow(o)},deleteMedia:function(q,o){g.deleteMedia(o.data.uuid)}}});g.uploadMediaBtn=Ext.create("Ext.button.Button",{text:g.lang.getString("uploadMedia"),iconCls:"icon-add",hidden:!g.editable,handler:function(){g.showUploadMediaWindow(Ext.create("Client.module.tool.digiTheme.ux.SingleMediaField.Image"))}});g.noImageBox=Ext.create("Ext.Component",{cls:"a3-box a3-info",html:g.lang.getString("noMedia"),hidden:true});g.items=[g.mediaView,g.uploadMediaBtn,g.noImageBox];g.callParent(arguments)},deleteMedia:function(b){this.value=null;this.updateStore()},setValue:function(h,b){var g=this;g.value=h;g.updateStore(h,b)},getValue:function(){return this.value||null},updateStore:function(g,b){var h=this;h.store.removeAll();h.store.getProxy().extraParams={};if(g){Adaptive.data.proxy.Crud.setFilter(h.store,{greedy:true,filterColumns:[{name:"uuid",value:g,comparisonOperator:"=",logicalOperator:"AND"},{name:"file_complete",value:true,netType:"bool",comparisonOperator:"=",logicalOperator:"AND"}]});h.store.getProxy().extraParams.parent_object_uuid=h.parent_object_uuid;if(b){h.store.getProxy().extraParams.parent_object_type="digi_theme_column_temp"}}else{Adaptive.data.proxy.Crud.setFilter(h.store,null)}h.store.load();h.noImageBox.hide();if(g){h.uploadMediaBtn.hide()}else{if(h.editable){h.uploadMediaBtn.show()}else{h.noImageBox.show()}}},showUploadMediaWindow:function(b){var h=this,g=Ext.getBody().getHeight()-50;h.uploadMedia=Ext.create("Client.module.tool.digiTheme.ux.MediaUploadSimple",{serviceUrl:"WebServices/generic/Media.asmx/",owner_uuid:null,record:b,parent_object_uuid:h.parent_object_uuid,parent_object_type:"digi_theme_column_temp",isPublic:h.isPublic});h.uploadMedia.mon(h.uploadMedia,"mediaUploaded",function(o){if(o){h.setValue(o,true)}else{h.store.load()}if(h.wnd){h.wnd.close()}},h);h.uploadMedia.mon(h.uploadMedia,"navigateBack",function(){if(h.wnd){h.wnd.close()}},h);h.wnd=Ext.create("Ext.window.Window",{title:h.lang.getString("uploadMedia"),width:400,maxHeight:g,overflowY:"auto",constrain:true,modal:true,items:[h.uploadMedia.view],resizable:false}).show()}});Ext.define("Adaptive.ux.ReadOnlyGeometryPicker",{extend:Ext.Component,mixins:[Adaptive.mixins.GeometryPickerTemplate],hidden:true,layout:"form",constructor:function(b){var g=this;Ext.apply(g,b);g.items=[];g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.GeometryPicker");g.geomPickerBaseSetup();g.callParent(arguments);g.initLayer({clickout:false,toggle:false})},updateProjection:function(){},destroy:function(){var b=this;b.destroyLayer();b.callParent()},getOlDrawHandler:function(){switch(this.spatial_data_type){case"point":return OpenLayers.Handler.Point;case"line":return OpenLayers.Handler.Path;case"polygon":return OpenLayers.Handler.Polygon}},getOlGeometryType:function(){switch(this.spatial_data_type){case"point":return OpenLayers.Geometry.Point;case"line":return OpenLayers.Geometry.LineString;case"polygon":return OpenLayers.Geometry.Polygon;case"multipoint":return OpenLayers.Geometry.MultiPoint;case"multiline":return OpenLayers.Geometry.MultiLineString;case"multipolygon":return OpenLayers.Geometry.MultiPolygon}},setGeometry:function(h,b){var g=this;g.drawLayer&&g.drawLayer.destroyFeatures();delete g.currentFeature;
1if(h){g.fireEvent("setLoadingOn");g.fireEvent("geometryChanged",h);g.fromWkt(h,function(q,o){if(q){g.silent=b;g.drawLayer&&g.drawLayer.addFeatures(o);g.currentFeature=o;g.fireEvent("setLoadingOff");g.silent=false}else{g.fireEvent("setGeometryFailed");g.fireEvent("setLoadingOff")}})}}});Ext.define("Adaptive.ux.MultiGeometryPicker",{extend:Ext.form.FieldSet,mixins:[Adaptive.mixins.GeometryPickerTemplate],hidden:true,collapsible:false,collapsed:false,layout:{type:"vbox",align:"stretch"},activateDrawOnCreate:true,listeners:{update:function(b){var g=this;g.down("#btnAddCoord").enable()}},constructor:function(g){var h=this,b;Ext.apply(h,g);h.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.GeometryPicker");h.title=h.lang.getString("geometry");b=[{xtype:"button",itemId:"addGeometry",text:h.lang.getString("add_"+h.spatial_data_type),cls:"a3-digi-theme-add-geometry-btn a3-link-btn",hidden:true,handler:h.addGeometry,scope:h},{xtype:"button",itemId:"cancelAddGeometry",text:h.lang.getString("cancel_add_"+h.spatial_data_type),cls:"a3-digi-theme-add-geometry-btn a3-link-btn",hidden:true,handler:function(){h._deactivateDrawControl();h._activateModifyControl()},scope:h},{xtype:"button",itemId:"deleteGeometry",text:h.lang.getString("delete_"+h.spatial_data_type),cls:"a3-digi-theme-delete-geometry-btn a3-link-btn",hidden:true,disabled:true,handler:h.deleteGeometry,scope:h}];if(h.items){b=b.concat(h.items)}h.items=b;h.geomPickerBaseSetup();if(!h.readOnly){h.hidden=false;h.addGeometryPlotter()}h.callParent(arguments);h.initLayer({click:true,clickout:true,toggle:false});h.drawLayer.events.on({featureadded:h.onFeatureAdded,featuremodified:h.onFeatureModified,featureselected:h.onFeatureSelected,beforefeaturemodified:h.onBeforeFeatureModified,afterfeaturemodified:h.onAfterFeatureModified,scope:h})},addGeometryPlotter:function(){var b=this;b.plotGeometry=Ext.create("Adaptive.ux.PlotGeometry",{map:b.map,padding:"10 0 0 0",spatialDataType:b.spatial_data_type,displayProjection:b.getProjectionObject(),hidden:true,readOnly:b.readOnly,initialProjections:GeoMind.utils.DictionaryManager.getDictionary("projections"),updateDelay:500,editZ:b.editZ,layout:{type:"vbox",align:"stretch"}});b._updatePlotCoordinate(null);b.plotGeometry.on("geomUpdated",function(q){if(b.map){b.fireEvent("setLoadingOn");var g=q.point,w=b.map.getProjection(),o=q.projection.projCode,h=q.feature;Adaptive.utils.Proj.transformFeatureAsync(h,o,w,function(B,A,z){if(B){b.setFeature(z);if(q.centerMap){b.map.setCenter(new OpenLayers.LonLat(z.geometry.x,z.geometry.y),b.map.getZoom())}b.fireEvent("setLoadingOff")}else{b.fireEvent("transformationFailed");b.fireEvent("setLoadingOff")}})}});b.plotGeometry.on("invalidCoordinate",function(){if(b.map){b.setGeometry(null)}});b.items.push(b.plotGeometry)},_updatePlotCoordinate:function(b){var g=this;if(g.plotCoordinate&&!g.plotCoordinate.addedByMe){g.plotCoordinate.updateCoords(b,g.map.getProjectionObject(),g.sourceProj)}if(g.plotGeometry&&!g.plotGeometry.addedByMe){g.plotGeometry.updateCoords(b,g.map.getProjectionObject())}},updateProjection:function(){var b=this;if(b.plotGeometry){b.plotGeometry.setMapProjection(b.getProjectionObject())}if(b.plotCoordinate){b.plotCoordinate.setMapProjection(b.getProjectionObject())}},destroy:function(){var b=this;b.destroyLayer();b.callParent()},getOlDrawHandler:function(){switch(this.spatial_data_type){case"multipoint":return OpenLayers.Handler.Point;case"multiline":return OpenLayers.Handler.Path;case"multipolygon":return OpenLayers.Handler.Polygon}},getOlGeometryType:function(){switch(this.spatial_data_type){case"multipoint":return OpenLayers.Geometry.MultiPoint;case"multiline":return OpenLayers.Geometry.MultiLineString;case"multipolygon":return OpenLayers.Geometry.MultiPolygon}},getOlChildGeometryType:function(){switch(this.spatial_data_type){case"multipoint":return OpenLayers.Geometry.Point;case"multiline":return OpenLayers.Geometry.LineString;case"multipolygon":return OpenLayers.Geometry.Polygon}},setGeometry:function(h){var g=this,b;g.drawLayer.destroyFeatures();if(h){g.fireEvent("setLoadingOn");g.fromWkt(h,function(z,q){if(z){var o=[];if(q.geometry instanceof g.getOlGeometryType()){q.geometry.components.forEac
1h(function(B){var A=new OpenLayers.Feature.Vector(B.clone());A.attributes.ignore=true;o.push(A)})}else{var w=new OpenLayers.Feature.Vector(q.geometry.clone());w.attributes.ignore=true;o.push(w)}g.drawLayer.addFeatures(o);g.fireEvent("setLoadingOff")}else{g.fireEvent("geometryChangedFailed");g.fireEvent("setLoadingOff");g._updatePlotCoordinate(null)}})}},setFeature:function(b){var g=this;if(g.selectedFeature){g.selectedFeature.destroy();g.selectedFeature=null}if(g.useGps){g.drawLayer.destroyFeatures()}g.drawLayer.addFeatures(b)},reportGeometryChanged:function(){var h=this,b=[],g=h.getOlGeometryType();h.drawLayer.features.forEach(function(o){if(o&&o.geometry instanceof h.getOlChildGeometryType()){b.push(o.geometry)}});if(b.length>0){h.fireEvent("setLoadingOn");h.toWkt(new OpenLayers.Feature.Vector(new g(b)),function(w,q,o){if(w){h.fireEvent("geometryChanged",q);h.fireEvent("setLoadingOff")}else{h.fireEvent("geometryChangedFailed");h.fireEvent("setLoadingOff")}})}else{h.fireEvent("geometryChanged",null)}},onFeatureAdded:function(b){var g=this;if(b.feature.attributes&&!b.feature.attributes.ignore){if(g.modifyControl&&g.isStarted){g.modifyControl.selectFeature(b.feature)}g.reportGeometryChanged();g._updatePlotCoordinate(b.feature)}if(g.isStarted){g._deactivateDrawControl();g._activateDrawOrModify()}},onFeatureModified:function(b){var g=this;g.selectedFeature=b.feature;if(g.editZ){g.setDefaultZ(g.selectedFeature.geometry)}g.reportGeometryChanged();g._updatePlotCoordinate(g.selectedFeature)},startPicker:function(){var b=this;b.isStarted=true;b.down("#addGeometry").show();b.down("#deleteGeometry").show();b._activateDrawOrModify()},stopPicker:function(){var b=this;b.isStarted=false;b._deactivateDrawControl();b._deactivateModifyControl();b.down("#addGeometry").hide();b.down("#cancelAddGeometry").hide();b.down("#deleteGeometry").hide()},_activateDrawOrModify:function(){var b=this;if(b.drawLayer.features.length>0){b._activateModifyControl()}else{if(b.activateDrawOnCreate){b._activateDrawControl()}}},_activateDrawControl:function(){var b=this;b._deactivateModifyControl();b.down("#cancelAddGeometry").show();b.down("#addGeometry").hide();b.initLayer();if(!b.drawControl){b.drawControl=new OpenLayers.Control.DrawFeature(b.drawLayer,b.getOlDrawHandler());b.map.addControl(b.drawControl)}if(!b.drawControl.active){b.drawControl.activate()}},_deactivateDrawControl:function(){var b=this;b.down("#cancelAddGeometry").hide();b.down("#addGeometry").show();if(b.drawControl&&b.drawControl.active){b.drawControl.deactivate()}},_activateModifyControl:function(){var b=this;b.initLayer();if(!b.modifyControl.active){b.modifyControl.activate()}},_deactivateModifyControl:function(){var b=this;if(b.modifyControl.active){b.modifyControl.deactivate()}},addGeometry:function(){var b=this;b._activateDrawControl()},deleteGeometry:function(){var b=this;if(b.selectedFeature){b.down("#deleteGeometry").disable();b.modifyControl.unselectFeature();b.drawLayer.destroyFeatures(b.selectedFeature);delete b.selectedFeature;b.reportGeometryChanged();b.modifyControl.deactivate();b._activateDrawOrModify()}},onAfterFeatureModified:function(b){var g=this;if(b.feature&&b.feature.id===g.selectedFeature.id){g.down("#deleteGeometry").disable();g.plotGeometry.hide();g.plotGeometry.clearCoordCards()}},onBeforeFeatureModified:function(b){var g=this;g.selectedFeature=b.feature;g.down("#deleteGeometry").enable();g.plotGeometry.show();if(g.editZ){g.setDefaultZ(g.selectedFeature.geometry)}g._updatePlotCoordinate(g.selectedFeature)},startGps:function(){var b=this;b.plotGeometry.coordView.getStore().removeAll();b.plotGeometry.coordView.getStore().sync();b.stopPicker();b.drawLayer.destroyFeatures();b.useGps=true;b.plotGeometry.clearCoordCards();b.down("#addGeometry").hide();b.down("#deleteGeometry").hide();b.down("#cancelAddGeometry").hide();b.plotGeometry.params={useGps:b.useGps,spatial_data_type:b.spatial_data_type};b.plotGeometry.show(b.plotGeometry.params)},stopGps:function(){var b=this;b.useGps=false;b.fireEvent("setLoadingOff");b.down("#addGeometry").show();b.down("#addGeometry").enable();b.down("#deleteGeometry").show();b.plotGeometry.params={useGps:b.useGps};b.plotGeometry.hide(b.plotGeometry.params)},updateGps:function(g){var b=this;b.plotGeometry.updateGps(g)}});Ext.define("Adaptive.utils.SpatialOperations",{singleton:true,intersection:function(h,z,g,o){if(!o){throw"Error callback must be defined"}var b=Adaptive.utils.SpatialOperations.convertToWkt(h),w=Adaptive.utils.SpatialOperations.convertToWkt(z),q;Ext.Ajax.request({url:"WebServices/generic/SpatialOperations.asmx/Intersection",method:"POST",headers:{"Content-Type":"application/json"},params:Ext.JSON.encode({wkt1:b,wkt2:w}),success:function(A){A=GeoMind.utils.Ajax.fixResponse(A);
1if(!A.success||!A.data){o()}q=Adaptive.utils.Config.getConfig(A.data,"wkt");try{var B=new OpenLayers.Format.WKT().read(q);g(B)}catch(C){o()}},failure:function(){o()}})},convertToWkt:function(b){var g=new OpenLayers.Format.WKT();return g.write(b)}});Ext.define("Adaptive.ux.AdvancedMultiPolygonPicker",{extend:Adaptive.ux.MultiGeometryPicker,mixins:[Adaptive.mixins.Notify],constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.GeometryPicker");g.items=[{xtype:"button",itemId:"add_from_cadastre",text:g.lang.getString("add_from_cadastre"),cls:"a3-digi-theme-cadaster-btn a3-link-btn",hidden:true,handler:g.pickFromProperty,scope:g},{xtype:"button",itemId:"cancel_add_from_cadastre",text:g.lang.getString("cancel_add_from_cadastre"),cls:"a3-digi-theme-cadaster-btn a3-link-btn",hidden:true,handler:g.cancelPickFromProperty,scope:g},{xtype:"button",itemId:"intersect_polygon",text:g.lang.getString("intersect_polygon"),cls:"a3-digi-theme-intersection-btn a3-link-btn",hidden:true,handler:g.startIntersection,scope:g},{xtype:"button",itemId:"cancel_intersect_polygon",text:g.lang.getString("cancel_intersect_polygon"),cls:"a3-digi-theme-intersection-btn a3-link-btn",hidden:true,handler:g.cancelIntersection,scope:g}];g.callParent(arguments)},destroy:function(){var b=this;b.intersectionCleanup();b.callParent()},startIntersection:function(){var b=this;b._deactivateDrawControl();b._deactivateModifyControl();b._deactivateCadasterPicker();b._activateIntersectionDrawControl()},cancelIntersection:function(){var b=this;b._deactivateIntersectionDrawControl();b._activateDrawOrModify()},pickFromProperty:function(){var b=this;b._deactivateIntersectionDrawControl();b._deactivateDrawControl();b._deactivateModifyControl();if(!b.cadasterPicker){b.cadasterPicker=Ext.create("Adaptive.map.CadasterWfs",{map:b.map});b.cadasterPicker.on("propertySelected",b.addProperty,b)}b.down("#add_from_cadastre").hide();b.down("#cancel_add_from_cadastre").show();b.cadasterPicker.setup()},cancelPickFromProperty:function(){var b=this;b._deactivateCadasterPicker();b._activateDrawOrModify()},_activateDrawControl:function(){var b=this;b._deactivateCadasterPicker();b._deactivateIntersectionDrawControl();b.callParent()},beforeFeatureAdded:function(b){var g=this;if(g.drawIntersectFeature){b.feature.attributes.ignore=true}},_activateIntersectionDrawControl:function(){var b=this;b.down("#intersect_polygon").hide();b.down("#cancel_intersect_polygon").show();b.initIntersectionLayer();if(!b.intersectionDrawControl){b.intersectionDrawControl=new OpenLayers.Control.DrawFeature(b.intersectionLayer,b.getOlDrawHandler());b.map.addControl(b.intersectionDrawControl)}if(!b.intersectionDrawControl.active){b.intersectionDrawControl.activate()}},_deactivateIntersectionDrawControl:function(){var b=this;b.intersectionCleanup()},initIntersectionLayer:function(){var b=this;if(b.intersectionLayer){return}b.intersectionLayer=new OpenLayers.Layer.Vector("GeometryPickerIntersection_"+Ext.id(),{rendererOptions:{zIndexing:true}});b.intersectionLayer.events.on({featureadded:b.onIntersectionFeatureAdded,scope:b});b.map.addLayer(b.intersectionLayer)},onIntersectionFeatureAdded:function(b){var g=this;Adaptive.utils.SpatialOperations.intersection(g.drawLayer.features,b.feature,Ext.bind(g.onIntersectionSuccess,g),Ext.bind(g.onIntersectionError,g))},onIntersectionSuccess:function(h){var g=this,b=[];g.intersectionCleanup();g.drawLayer.destroyFeatures();h.forEach(function(o){if(o.geometry instanceof g.getOlGeometryType()){o.geometry.components.forEach(function(q){b.push(new OpenLayers.Feature.Vector(q.clone()))})}else{b.push(o)}});g.drawLayer.addFeatures(b)},onIntersectionError:function(){var b=this;b.intersectionCleanup();b.showNotifyError(b,b.lang.getString("error_intersection"))},intersectionCleanup:function(){var b=this;b.down("#intersect_polygon").show();b.down("#cancel_intersect_polygon").hide();if(b.intersectionDrawControl){b.intersectionDrawControl.destroy();delete b.intersectionDrawControl}if(b.intersectionLayer){b.intersectionLayer.events.un({featureadded:b.onIntersectionFeatureAdded,scope:b});b.intersectionLayer.destroy();delete b.intersectionLayer}},setGeometry:function(g){var b=this;b.callParent(arguments);g?b.down("#intersect_polygon").enable():b.down("#intersect_polygon").disable()},startPicker:function(){var b=this;b.callParent();b.down("#add_from_cadastre").show();b.down("#intersect_polygon").show()},stopPicker:function(){var b=this;b.callParent();b.down("#add_from_cadastre").hide();b.down("#cancel_add_from_cadastre").hide();b.down("#intersect_polygon").hide();b.down("#cancel_intersect_polygon").hide()},onFeatureAdded:function(b){var g=this;if(g.doIntersection){return}g.callParent(arguments)},_deactivateCadasterPicker:function(){var b=this;b.down("#add_from_cadastre").show();b.down("#cancel_add_from_cadastre").hide();if(b.cadasterPicker){b.cadasterPicker.cleanup()}},addProperty:function(g){var h=this;if(!g){return}var b=g.clone();h._deactivateCadasterPicker();h.drawLayer.addFeatures(b)}});Ext.define("Adaptive.ux.GeometryUploader",{extend:Ext.form.FieldSet,mixins:[Adaptive.mixins.GeometryPickerTemplate,Adaptive.mixins.Notify,Adaptive.form.mixins.Generator],constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.GeometryPicker");g.title=g.lang.getString("geometry");b.collapsed=false;Ext.apply(g,b);g.geomPickerBaseSetup();g.buildGui();g.hidden=true;g.callParent(arguments);g.initLayer({click:true,clickout:true,toggle:false});g.drawLayer.events.on({beforefeatureadded:g.onFeatureAdded,featuremodified:g.onFeatureModified,scope:g})},initUploadLayer:function(){var b=this;if(b.uploadLayer){return}b.uploadLayer=new OpenLayers.Layer.Vector("GeometryUploaderUpload_"+Ext.id(),{styleMap:new OpenLayers.StyleMap({"default":OpenLayers.Util.applyDefaults({strokeWidth:5},OpenLayers.Feature.Vector.style["default"]),select:OpenLayers.Util.applyDefaults({strokeWidth:5},OpenLayers.Feature.Vector.style.select)})});b.uploadLayer.events.on({featureselected:b.onUploadFeatureSelected,scope:b});
1b.selectControl=new OpenLayers.Control.SelectFeature(b.uploadLayer,{clickout:false});b.selectHoverControl=new OpenLayers.Control.SelectFeature(b.uploadLayer,{hover:true,highlightOnly:true});b.map.addControl(b.selectControl);b.map.addControl(b.selectHoverControl);b.map.addLayer(b.uploadLayer)},onUploadFeatureSelected:function(b){var g=this;g.currentFeature=b.feature;g.down("#confirm_selection").enable()},getOlDrawHandler:function(){switch(this.spatial_data_type){case"point":return OpenLayers.Handler.Point;case"line":return OpenLayers.Handler.Path;case"polygon":return OpenLayers.Handler.Polygon}},getOlGeometryType:function(){switch(this.spatial_data_type){case"point":return OpenLayers.Geometry.Point;case"line":return OpenLayers.Geometry.LineString;case"polygon":return OpenLayers.Geometry.Polygon}},setGeometry:function(g){var b=this;b.drawLayer.destroyFeatures();delete b.currentFeature;if(g){b.fireEvent("setLoadingOn");b.fromWkt(g,function(o,h){if(o){b.drawLayer.addFeatures(h);b.currentFeature=h;b.fireEvent("setLoadingOff")}else{b.fireEvent("geometryChangedFailed");b.fireEvent("setLoadingOff")}})}},onCancel:function(){var b=this;delete b.currentFeature;b.onCancelSelection()},reportGeometryChanged:function(){var b=this;b.fireEvent("setLoadingOn");b.toWkt(b.currentFeature,function(o,h,g){if(o){b.fireEvent("geometryChanged",h);b.fireEvent("setLoadingOff")}else{b.fireEvent("geometryChangedFailed");b.fireEvent("setLoadingOff")}})},onFeatureAdded:function(b){var g=this;g.currentFeature=b.feature;g.reportGeometryChanged();if(g.isStarted){g._deactivateDrawControl();g._activateModifyControl()}},onFeatureModified:function(b){var g=this;g.reportGeometryChanged()},startPicker:function(){var b=this;b.isStarted=true;b.show();if(b.currentFeature){b._activateModifyControl()}else{b._activateDrawControl()}},stopPicker:function(){var b=this;if(b.isStarted){b.hide();b._deactivateDrawControl();b._deactivateModifyControl()}b.isStarted=false},_activateDrawControl:function(){var b=this;b.initLayer();if(!b.drawControl){b.drawControl=new OpenLayers.Control.DrawFeature(b.drawLayer,b.getOlDrawHandler());b.map.addControl(b.drawControl)}if(!b.drawControl.active){b.drawControl.activate()}},_deactivateDrawControl:function(){var b=this;if(b.drawControl&&b.drawControl.active){b.drawControl.deactivate()}},_activateModifyControl:function(){var b=this;b.initLayer();if(!b.modifyControl.active){b.modifyControl.activate()}if(b.currentFeature){b.modifyControl.selectFeature(b.currentFeature)}},_deactivateModifyControl:function(){var b=this;if(b.modifyControl.active){b.modifyControl.deactivate()}},_activateSelectControls:function(){var b=this;if(!b.selectHoverControl.active){b.selectHoverControl.activate()}if(!b.selectControl.active){b.selectControl.activate()}},buildGui:function(){var b=this;b.uploadFileView=Ext.create("Adaptive.ux.SingleFileUpload",{validExtensions:["kml","gpx","sos","dxf"],serviceUrl:"webservices/client/filereadback.ashx",inputLang:b.inputLangSingle});b.uploadFileView.on("fileUploadFailure",b.onFileUploadFailure,b);b.uploadFileView.on("fileUploadSuccess",b.onSingleFileUploaded,b);b.uploadShape=Ext.create("Adaptive.ux.ShapeFileUpload",{projections:GeoMind.utils.DictionaryManager.getDictionary("projections"),serviceUrl:"webservices/client/filereadback.ashx",inputLang:b.inputLangShape});b.uploadShape.on("fileUploadFailure",b.onFileUploadFailure,b);b.uploadShape.on("fileUploadSuccess",b.onFileUploaded,b);b.selectionContainer=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},hidden:true,items:[b.createTextBox("confirm_selection_info","info"),{xtype:"button",itemId:"confirm_selection",text:b.lang.getString("confirm_selection"),disabled:true,handler:function(){b.fireEvent("setLoadingOn");b.toWkt(b.currentFeature,function(h,g){if(h){b.setGeometry(g);b.uploadCleanup();b.uploadTabPanel.show();b.selectionContainer.hide();b.fireEvent("setLoadingOff")}else{b.fireEvent("geometryChangedFailed");b.fireEvent("setLoadingOff")}})}},{xtype:"button",itemId:"cancel_selection",text:b.lang.getString("cancel_selection"),handler:b.onCancelSelection,scope:b}]});b.uploadTabPanel=Ext.create("Ext.tab.Panel",{layout:{type:"vbox",align:"stretch"},items:[{title:Adaptive.utils.Lang.getString("singleFileTitle",b.lang,b.inputLang),items:[b.uploadFileView]},{title:Adaptive.utils.Lang.getString("shapeFileTitle",b.lang,b.inputLang),layout:{type:"vbox",align:"stretch"},items:[b.uploadShape.errorPanel,b.uploadShape.createTextBox("shape_info","info"),b.uploadShape.createTextBox("pickProj","step1"),b.uploadShape.projectionCombo,b.uploadShape.createTextBox("pickShape","step2"),b.uploadShape.ogrUploadForm.view]}]});b.items=[b.uploadTabPanel,b.selectionContainer]},onCancelSelection:function(){var b=this;b.uploadCleanup();b.uploadTabPanel.show();b.selectionContainer.hide()},onSingleFileUploaded:function(b){var g=this,b=b.response,h;if(!b||!b.responseText){g.onFileUploadFailure();return}g.onFileUploaded(Ext.JSON.decode(b.responseText))},onFileUploaded:function(g){var b=this;if(b.uploadLayer){b.uploadLayer.destroyFeatures()}if(!g.success){b.onFileUploadFailure();return}if(!g.success){return}b._deactivateDrawControl();b._deactivateModifyControl();b.initUploadLayer();if(b.drawLayer){b.drawLayer.setVisibility(false)}b.addFeatures(g.data)},onFileUploadFailure:function(){var b=this;b.showNotifyError(b,b.lang.getString("file_upload_failure"))},addFeatures:function(w){var B=this,h,A=[];var E=B.getOlGeometryType();if(B.uploadFileView.uploadedExtension==="gpx"){var g=new OpenLayers.Format.GPX();h=g.read(w);h.forEach(function(G){if(G.geometry instanceof E){G.source={feature:G.clone(),projCode:"EPSG:4326"};G.geometry.transform("EPSG:4326",B.map.getProjection());A.push(G)}})}else{if(B.uploadFileView.uploadedExtension==="kml"){var b=new OpenLayers.Format.KML();h=b.read(w);h.forEach(function(G){if(G.geometry instanceof E){G.source={feature:G.clone(),projCode:"EPSG:4326"};G.geometry.transform("EPSG:4326",B.map.getProjection());A.push(G)}})}else{if(B.uploadFileView.uploadedExtension==="sos"){var C=Ext.create("Sosijs.SOSI_lite"),z=new OpenLayers.Format.GeoJSON(),q;try{parser=new C.SOSI.Parser();sosidata=parser.parse(w);h=z.read(sosidata.dumps("geojson"))}catch(o){B.uploadFileView.fireEvent("fileUploadFailure");return}if(sosidata.hode&&sosidata.hode.srid&&sosidata.hode.srid!=map.getProjection()){q=new OpenLayers.Projection(sosidata.hode.srid)}
1h.forEach(function(G){if(q){G.source={feature:G.clone(),projCode:q};G.geometry.transform(q,map.getProjectionObject())}var H=map.getProjectionObject().proj.defData.indexOf("longlat")==-1?Adaptive.layer.Layer.simplifyFeature(G):G.clone();A.push(H)})}else{var F=w,D=new OpenLayers.Format.WKT();F.forEach(function(G){feature=D.read(G);if(feature.geometry instanceof E){A.push(feature)}})}}}if(A.length===0){B.showNotifyWarning(B,B.lang.getString("no_valid_geoms_"+B.spatial_data_type));B.uploadCleanup();if(B.currentFeature){B._activateModifyControl()}else{B._activateDrawControl()}}else{if(!B.uploadTabPanel.hidden){B.uploadTabPanel.hide()}B.selectionContainer.show();B.uploadLayer.addFeatures(A);B._activateSelectControls();B.map.zoomToExtent(B.uploadLayer.getDataExtent())}},uploadCleanup:function(){var b=this;b.drawLayer.setVisibility(true);b.down("#confirm_selection").disable();if(b.selectHoverControl){b.selectHoverControl.destroy();delete b.selectHoverControl}if(b.selectControl){b.selectControl.unselectAll();b.selectControl.destroy();delete b.selectControl}if(b.uploadLayer){b.uploadLayer.events.un({featureadded:b.onUploadFeatureSelected,scope:b});b.uploadLayer.destroy();delete b.uploadLayer}},destroy:function(){var b=this;b.uploadFileView.un("fileUploadFailure",b.onFileUploadFailure,b);b.uploadFileView.un("fileUploadSuccess",b.onSingleFileUploaded,b);b.uploadShape.un("fileUploadFailure",b.onFileUploadFailure,b);b.uploadShape.un("fileUploadSuccess",b.onFileUploaded,b);b.destroyLayer();b.callParent()}});Ext.define("Client.module.tool.digiTheme.ux.UrlField",{extend:Ext.form.FieldContainer,mixins:{field:Ext.form.field.Field},alias:"widget.dt_urlfield",layout:"form",initComponent:function(){var b=this;b.triggerField=Ext.create("Ext.form.field.Trigger",{hidden:!b.editable,triggerCls:"icon-go",onTriggerClick:function(){var g=this.getValue();if(this.isValid()&&g&&g.length>0){window.open(g,"_blank","noopener,noreferrer")}},vtype:"url"});b.displayField=Ext.create("Ext.form.field.Display",{hidden:b.editable,renderer:function(g){if(g&&g.length>0){return'<a href="'+g+'" target="_blank" rel="noopener noreferrer">'+g+"</a>"}else{return g}}});b.items=[b.triggerField,b.displayField];b.callParent(arguments)},setValue:function(g){var b=this;b.triggerField.setValue(g);b.displayField.setValue(g)},getValue:function(){return this.triggerField.getValue()}});Ext.define("Adaptive.form.field.lang.GeometryField",{strings:{emptyText:{en:"No geometry",nb:"Ingen geometri registrert"},hasData:{en:"Has geometry",nb:"Geometri er registrert"},delGeom:{en:"Delete geometry",nb:"Slett geometri"},stopEdit:{en:"Stop editing",nb:"Stopp redigering"},doSnap:{en:"Snap drawinglayer",nb:"Snapp tegnelag"},useGps:{en:"Use GPS",nb:"Benytt GPS"},adjustHeight:{en:"Adjust height",nb:"Korriger høyde"},accuracy:{en:"Accuracy XY",nb:"Nøyaktighet XY"},accuracyZ:{en:"Accuracy Z",nb:"Nøyaktighet Z"}}});Ext.define("Adaptive.form.field.GeometryField",{extend:Ext.form.FieldContainer,xtype:"geometryfield",mixins:[Ext.form.field.Field,Adaptive.form.mixins.Generator,Adaptive.utils.Form],layout:"column",defaults:{columnWidth:1},config:{geometryPickerClass:"Adaptive.ux.GeometryPicker",spatial_data_type:"point",readOnly:true},constructor:function(b){var g=this;Ext.apply(g,b);g.isEditing=false;g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.form.field.lang.GeometryField");g.isMultiGeom=g.spatial_data_type.lastIndexOf("multi",0)===0;if(g.isMultiGeom){g.geometryPickerClass="Adaptive.ux.MultiGeometryPicker"}g.showLocation=function(h){var w=h.coords;for(var q=0;q<Ext.ComponentQuery.query("#accuracyXY").length;q++){var z=Ext.ComponentQuery.query("#accuracyXY")[q];z.setValue(w.accuracy);if(w.accuracy<0.05){z.setFieldStyle("background-color : #4dff4d")}else{if(w.accuracy<0.15){z.setFieldStyle("background-color : #ffa366")}else{z.setFieldStyle("background-color : #ff9999")}}var o=Ext.ComponentQuery.query("#accuracyZ")[q];o.setValue(w.altitudeAccuracy);if(w.accuracy<0.05){o.setFieldStyle("background-color : #4dff4d")}else{if(w.accuracy<0.15){o.setFieldStyle("background-color : #ffa366")}else{o.setFieldStyle("background-color : #ff9999")}}}g.geometryPicker.updateGps(w)};g.errorHandler=function(h){if(h.code===1){console.log("Error: Access is denied!")}else{if(h.code===2){console.log("Error: Position is unavailable!")}}};g.getLocation=function(){if(navigator.geolocation){var h={enableHighAccuracy:true,timeout:5000,maximumAge:0};navigator.geolocation.getCurrentPosition(g.showLocation,g.errorHandler,h)}else{console.log("Sorry, browser does not support geolocation!")}};g.geometryPicker=Ext.create(g.geometryPickerClass,{hidden:false,helpText:false,map:g.map,editZ:g.editZ,showMeasurement:g.showMeasurement,mapContainer:g.mapContainer,spatial_data_type:g.spatial_data_type,map_projection:g.map.getProjection(),readOnly:g.readOnly,editeableWkt:false});g.geometryPicker.on("geometryChanged",g.onGeometryChanged,g);g.geometryPicker.on("geometryChangedFailed",g.onGeometryChangedFailed,g);g.geometryPicker.on("transformationFailed",g.onTransformationFailed,g);g.geometryPicker.on("setGeometryFailed",g.onSetGeometryFailed,g);
1g.geometryPicker.on("setLoadingOn",function(){g.setLoading()});g.geometryPicker.on("setLoadingOff",function(){g.setLoading(false)});g.items=[{xtype:"container",padding:0,style:{"background-color":"white"},layout:"column",defaults:{columnWidth:1},items:[{xtype:"trigger",itemId:"triggerField",triggerCls:"a3-geomfield",editable:false,emptyText:g.lang.getString("emptyText"),scope:g,onTriggerClick:function(){g.setEditMode(!g.isEditing);g.focus()},listeners:{scope:g,focus:function(){if(!g.isEditing){g.setEditMode(true)}}}},{xtype:"container",collapsible:false,collapsed:false,layout:"hbox",items:[{xtype:"button",padding:"5 0 0 5",hidden:true,itemId:"deleteGeom",text:g.lang.getString("delGeom"),cls:"a3-digi-theme-add-geometry-btn a3-link-btn",handler:function(){g.setValue(null)},scope:g},{xtype:"button",padding:"5 0 0 0",hidden:true,itemId:"stopEditing",text:g.lang.getString("stopEdit"),cls:"a3-digi-theme-add-geometry-btn a3-link-btn",handler:function(){g.setEditMode(false)},scope:g}]},{xtype:"container",itemId:"geometryPickerWrapper",hidden:true,layout:"fit",padding:5,items:[{xtype:"checkboxfield",hidden:false,itemId:"snapDrawingLayer",boxLabel:g.lang.getString("doSnap"),value:false,cls:"a3-digi-theme-add-geometry-btn a3-link-btn",listeners:{change:function(z,q,o){if(q===true){var h=[];for(var w=0;w<g.map.layers.length;w++){if(g.map.layers[w].name==="drawlayer"){h.push({layer:g.map.layers[w],tolerance:20})}}g.snapControl=new OpenLayers.Control.Snapping({layer:g.geometryPicker.drawLayer,targets:h});g.map.addControl(g.snapControl);g.snapControl.activate()}}},scope:g},{xtype:"checkboxfield",hidden:true,itemId:"useGps",boxLabel:g.lang.getString("useGps"),cls:"a3-digi-theme-add-geometry-btn a3-link-btn",listeners:{change:function(q,o,h){if(o===true){g.down("#gpsPicker").show();g.geometryPicker.startGps();g.task=Ext.TaskManager.start({run:g.getLocation,interval:5000})}else{g.down("#gpsPicker").hide();g.geometryPicker.stopGps();Ext.TaskManager.stop(g.task)}}}},{xtype:"container",itemId:"gpsPicker",hidden:true,layout:"fit",padding:5,items:[{xtype:"numberfield",fieldLabel:g.lang.getString("adjustHeight"),labelAlign:"top",keyNavEnabled:false,mouseWheelEnabled:false,margins:"0 0 10 0"},{xtype:"numberfield",fieldLabel:g.lang.getString("accuracy"),itemId:"accuracyXY",labelAlign:"top",hideTrigger:true,keyNavEnabled:false,mouseWheelEnabled:false,disabled:true,margins:"0 0 10 0"},{xtype:"numberfield",hidden:!g.editZ,fieldLabel:g.lang.getString("accuracyZ"),itemId:"accuracyZ",labelAlign:"top",hideTrigger:true,keyNavEnabled:false,mouseWheelEnabled:false,disabled:true,margins:"0 0 10 0"}]},g.geometryPicker]}]}];g.callParent(arguments)},setEditMode:function(o){var h=this,b=h.geometryPicker.currentFeature;if(!h.setEditing(o)){return}h.isEditing=o;if(o){h.down("#triggerField").hide();h.down("#geometryPickerWrapper").show();h.down("#stopEditing").show();if(!h.isMultiGeom&&b){h.down("#deleteGeom").show()}if(h.useGps){h.down("#useGps").show()}if(h.snapDrawingLayer){h.down("#snapDrawingLayer").show()}h.geometryPicker.startPicker()}else{h.down("#triggerField").show();h.down("#geometryPickerWrapper").hide();h.down("#stopEditing").hide();h.down("#deleteGeom").hide();h.down("#snapDrawingLayer").hide();h.geometryPicker.stopPicker();for(var g=0;g<Ext.ComponentQuery.query("#useGps").length;g++){Ext.ComponentQuery.query("#useGps")[g].setValue("")}if(h.task){Ext.TaskManager.stop(h.task)}}if(h.hooks&&h.hooks.geomLoad()){if(h.hooks.geomLoad(h)===false){return}}},applyEmptyText:function(g){var b=this,h=b.down("#triggerField");if(g){h.emptyText=b.lang.getString("emptyText")}else{h.emptyText=b.lang.getString("hasData")}h.applyEmptyText()},setValue:function(g){var b=this;b.value=g;b.applyEmptyText(!g);b.down("#geometryPickerWrapper").hide();b.setEditMode(false);b.geometryPicker.setGeometry(g)},getValue:function(){var b=this;return !b.value?null:(b.originalValue==b.value?undefined:b.value)},resetOriginalValue:function(){var b=this;b.originalValue=b.value;b.checkDirty()},isDirty:function(){var b=this;return !b.disabled&&!b.isEqual(b.value,b.originalValue)},activate:function(){var b=this;b.geometryPicker.showDrawLayer();if(b.geometryPicker.hasPointPlotter){b.geometryPicker.plotGeometry.setMapProjection(b.geometryPicker.plotGeometry.displayProjection||new OpenLayers.Projection("EPSG:4326"))}},deactivate:function(){var b=this;b.setEditMode(false);b.geometryPicker.hideDrawLayer()},onGeometryChanged:function(g){var b=this;b.value=g;b.applyEmptyText(!g);if(!b.isMultiGeom&&b.isEditing&&g){b.down("#deleteGeom").show()}},onGeometryChangedFailed:function(){var b=this;if(b.rendered){b.showNotifyError(b,b.lang.getString("geometryChangedFailed"))}else{b.on("boxready",function(){b.showNotifyError(b,b.lang.getString("geometryChangedFailed"))},b)}},onTransformationFailed:function(){var b=this;b.showFormError(b.lang.getString("transformationFailed"))},onSetGeometryFailed:function(){var b=this;if(b.rendered){b.showNotifyError(b,b.lang.getString("setGeometryFailed"))}else{b.on("boxready",function(){b.showNotifyError(b,b.lang.getString("setGeometryFailed"))},b)}}});
1Ext.define("Adaptive.form.field.lang.ParentField",{strings:{emptyText:{en:"No registered parents",nb:"Ingen foreldre registrert"}}});Ext.define("Adaptive.form.field.ParentField",{extend:Ext.form.field.ComboBox,xtype:"parentfield",mixins:[Ext.form.field.Field,Adaptive.layer.Highlight,Adaptive.form.mixins.Generator],config:{mouseIntersectCircleSize:10},valueField:"id",displayField:"name",listConfig:{},trigger1Cls:"x-form-clear-trigger",trigger2Cls:"x-form-arrow-trigger",constructor:function(b){var g=this;Ext.apply(g,b);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.form.field.lang.ParentField");g.editable=false;g.queryMode="local";g.store=Ext.create("Ext.data.Store",{fields:["id","name","wkt"]});Ext.apply(g.listConfig,{listeners:{scope:g,itemmouseenter:g.onMouseEnter}});g.callParent(arguments);g.emptyText=g.emptyText||g.lang.getString("emptyText")},setValue:function(q,b){var o=this,h=o.getParentThemeData(),w=Adaptive.utils.Config.getBooleanConfig(h,"query_as_title"),g=[h.id_column];o.callParent(arguments);if(!Ext.isEmpty(q)&&!o.hidden&&!o.findRecord(o.valueField,q)&&w){g=Ext.Array.merge(g,h.query_title_fields.split(","));if(o.loadRequest){Ext.Ajax.abort(o.loadRequest);delete o.loadRequest}o.loadRequest=Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",jsonData:{request:{theme_uuid:h.theme_uuid,columns:g,excludeGeometry:true,object_id:q}},callback:function(A,B,z){z=GeoMind.utils.Ajax.fixResponse(z);if(z.success&&z.records.length>0){o.store.loadData(z.records.map(function(C){return{id:C.id,name:(w?o.buildTitleFromQuery(h.query_title_format,h.query_title_fields,null,C):o.formatValue(C.id)),wkt:C.geom_wkt||C[h.geom_column]}}));o.setValue(o.getValue())}}})}},findRecordByValue:function(h){var g=this,b=g.findRecord(g.valueField,h),o=Adaptive.utils.Config.getBooleanConfig(parent,"query_as_title");if(!b){b=Ext.create(g.store.model,{id:h,name:o?" ":g.formatValue(h)});if(o){g.setValue(h)}}return b},loadStore:function(){var h=this,b=h.getPicker(),g=map.getExtent().toGeometry().toString();b.setLoading();h.findIntersectedFeatures(g,function(q,A,o){o=GeoMind.utils.Ajax.fixResponse(o);if(o.success&&o.records.length>0){var w=h.getParentThemeData(),z=Adaptive.utils.Config.getBooleanConfig(w,"query_as_title");h.store.loadData(o.records.map(function(B){return{id:B.id,name:(z?h.buildTitleFromQuery(w.query_title_format,w.query_title_fields,null,B):h.formatValue(B.id)),wkt:B.geom_wkt||B[w.geom_column]}}))}b.setLoading(false)})},formatValue:function(h){var g=this,b=g.getParentThemeData();return b.name+" "+h},buildTitleFromQuery:function(h,w,g,o){var q=[h],b=w.split(",");b.forEach(function(z){q.push((g?g.get(z):o[z])||"")});return Ext.String.format.apply(null,q)},findIntersectedFeatures:function(h,z){var q=this,o=q.getParentThemeData(),w=Adaptive.utils.Config.getBooleanConfig(o,"query_as_title"),g=[o.id_column],b=q.map.getProjectionObject().proj.srsProjNumber;if(w){g=Ext.Array.merge(g,o.query_title_fields.split(","))}if(q.loadRequest){Ext.Ajax.abort(q.loadRequest);delete q.loadRequest}q.loadRequest=Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",jsonData:{request:{theme_uuid:o.theme_uuid,columns:g,filter:{secondFilter:[{name:o.geom_column,comparisonOperator:"ST_INTERSECTS",value:"SRID="+b+";"+h,netType:"geometry",logicalOperator:"AND"}]}}},callback:z})},getParentThemeData:function(){var g=this,b;if(!g.parentThemeData){b=Adaptive.utils.Config.getJsonConfig(g.themeData,"parent_themes").find(function(h){return h.fk_column==g.dataIndex});g.parentThemeData=Client.AppLogic.getThemeData(b.theme_uuid)}return g.parentThemeData},onTrigger1Click:function(){this.clearValue()},onTriggerClick:function(){var b=this;b.callParent(arguments);b.loadStore()},onListSelectionChange:function(h,b){var g=this;if(b.length>0){g.onSelect(b)}g.callParent(arguments)},onSelect:function(b){var g=this;g.highlightFeature(b[0].get("wkt"),null,true,false,1500)},onMouseEnter:function(h,b){var g=this;g.highlightFeature(b.get("wkt"),null,true,false,1500)}});Ext.define("Client.module.tool.digiTheme.ux.DictionaryField",{extend:Ext.form.field.ComboBox,alias:"widget.dt_dictionary",onListSelectionChange:function(h,b){var g=this;if(b.length>0){g.onSelect(b)}g.callParent(arguments)},validator:function(){var b=this;if(b.multiSelect){return b.isValidMulti()}return b.isValidDict()},isValidDict:function(){var g=this,h=g.getValue(),b=g.getStore();if(h&&b.find(g.valueField,h)==-1){return false}return true},isValidMulti:function(){var g=this,h=g.getValue(),b=g.getStore();if(!h){return true}if(!Array.isArray(h)){return false}if(h.length==1&&h[0]==null){return true}
1return h.every(function(o){return b.find(g.valueField,o)!=-1})},onSelect:function(b){var g=this;if(!(g.zoomToGeom||g.copyGeom)){return}var h={request:{theme_uuid:g.dictUuid,columns:[g.valueField],filter:{greedy:true,defaultFilter:[{name:g.valueField,comparisonOperator:"=",value:b[0].get(g.valueField)}],filterColumns:[]}}};Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",jsonData:h,callback:function(q,C,o){if(!C){return}o=GeoMind.utils.Ajax.fixResponse(o);if(!(o.records&&o.records.length==1)){return}var A=g.getGeometryPicker(),z=o.records[0].geom_wkt;if(g.zoomToGeom){var w=new OpenLayers.Format.WKT().read(z),B=w.geometry;if(B.CLASS_NAME==="OpenLayers.Geometry.Point"){g.map.setCenter(new OpenLayers.LonLat(B.x,B.y),g.map.search_zoom_level)}else{g.map.zoomToExtent(B.getBounds().scale(2))}}if(g.copyGeom&&w&&w.geometry instanceof A.getOlGeometryType()){A.setGeometry(z);A.reportGeometryChanged()}}})}});Ext.define("Client.module.tool.digiTheme.ux.Form",{extend:Ext.panel.Panel,mixins:[Adaptive.form.mixins.Generator,Adaptive.utils.LightModule,Adaptive.utils.ExportToPdf,Adaptive.utils.Form,Adaptive.mixins.ColumnLang],layout:"fit",supportedLangs:GeoMind.lang.SupportedLangs.supportedLangs.concat([{code:"fr",name:"Fransk",icon:"gm-flag_nb"}]),config:{serviceMethods:{read:"ReadAny",save:"Save"},map:null,mapContainer:null,serviceUrl:null,theme_data:null,geometryPickerClass:"Adaptive.ux.GeometryPicker",geomColumn:"geom_wkt",hasMedia:false},constructor:function(b){var h=this;Ext.apply(h,b);h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.Form");h.selLang=h.lang.l.langCode;h.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");h.queryAsTitle=Adaptive.utils.Config.getBooleanConfig(h.theme_data,"query_as_title",false);h.headerText=h.theme_data.name;var g=Adaptive.utils.Config.getConfig(h.theme_data,"clientHooks");if(g){h.hooks=Ext.create(g,{showLoadMask:Ext.bind(h.showLoadMask,h),hideLoadMask:Ext.bind(h.hideLoadMask,h),showFormError:Ext.bind(h.showFormError,h),showFormSuccess:Ext.bind(h.showFormSuccess,h),addChild:Ext.bind(h.addChild,h),showChildren:Ext.bind(h.showChildren,h),deleteRecord:Ext.bind(h.onDelete,h),saveRecord:Ext.bind(h.onSave,h),map:h.map})}h.isAdmin=h.theme_data.permissions.admin;h.buildForm();h.callParent(arguments);h.pdfExportFailedHeader=h.lang.getString("pdfExportFailedHeader");h.pdfExportFailedMsg=h.lang.getString("pdfExportFailedMsg");h.on("beforedeactivate",function(){if(h.isDirty()){h.showFormError(h.getFormString("unsavedChangesTitle"));return false}});h.on("activate",function(){h.activeView=true;h.activate()});h.on("deactivate",function(){h.deactivate();h.activeView=false});h.on("render",function(){if(h.isBinding&&h.getMaskTarget()){h.mask()}})},processColumnsLang:function(q){var o=this,g=[],h=[];q.forEach(function(B){if(o.hasLangConfig(B)){if(!o.isDictColumn(B)){var z=o.getLangGroupProp(B,"uuid");if(o.isLangParentColumn(B)){var w=[];g.push(B);w.push(B);var A=q.filter(function(C){return o.getLangGroupProp(C,"uuid")===z&&!o.isLangParentColumn(C)});if(A.length>0){g=g.concat(A);w=w.concat(A)}h.push(w)}}else{B.description=o.getLangDescriptionColumnDict(B,B.description,o.selLang);B.name=o.getLangNameColumnDict(B,B.name,o.selLang);g.push(B)}}else{g.push(B)}});var b={columns:g,langGroups:h};return b},processItemsLang:function(h,w){var q=this,z,o,b,g=h.filter(function(A){return A.xtype=="fieldset"&&!(A instanceof Adaptive.ux.GeometryPicker)});w.forEach(function(A){var K=h,E=A[0],D,J,H,G,C,F,B=[];D=K.findIndex(function(M){return M.dataIndex===E.column_name});if(D==-1){g.some(function(M){D=M.items.findIndex(function(N){return N.dataIndex===E.column_name});K=M.items;return D!=-1})}z=E.name;b=0;o=0;if(!q.isDisplayForm){A.forEach(function(M){J=K.findIndex(function(N){return N.dataIndex===M.column_name});H=q.getLangGroupProp(M,"lang_code");G=q.supportedLangs.find(function(N){return N.code===H});G=G.name;if(J!=-1){C=K.splice(J,1)[0];F={xtype:"panel",langCode:H,langContainer:true,defaultType:q.isDisplayForm?"displayfield":"textfield",title:G,layout:"anchor",bodyPadding:2,defaults:{labelAlign:"top",anchor:"100%"},items:[C]};B.push(F);if(H==q.selLang){z=M.name;b=o}o++}});if(B.length>0){var I={xtype:"tabpanel",activeTab:b,langContainer:true,items:B},L={xtype:"fieldset",title:z,items:[I]};K.splice(D,0,L)}}else{A.forEach(function(M){J=K.findIndex(function(N){return N.dataIndex===M.column_name});H=q.getLangGroupProp(M,"lang_code");if(J!=-1){C=K.splice(J,1)[0];if(H==q.selLang){K.splice(D,0,C)}}})}});return h},buildForm:function(){var Q=this,K=Q.theme_data.description,G=[],O,q=[],P=Adaptive.utils.Config.getJsonConfig(Q.theme_data,"groupedFields"),B=Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"save_history"),h=Adaptive.utils.Config.getJsonConfig(Q.theme_data,"parent_themes"),A=0,R=false,b=[];if(K){G.push(Ext.create("Ext.Component",{cls:"a3-box a3-noicon",html:Q.theme_data.description}))}Q.infoBox=Ext.create("Ext.Component",{cls:"a3-object-info",tpl:new Ext.XTemplate('<tpl if="values.parentName"><div><label>{parentTitle}</label> {parentName}</div></tpl>'),data:{}});G.push(Q.infoBox);if(Q.parent){var J,I=Q.parent.record,D=Q.parent.theme_data,M,o,H=Adaptive.utils.Config.getBooleanConfig(D,"query_as_title",false);try{if(!H||!I||!D.query_title_format||!D.query_title_fields||!I.get("id")){Q.headerText=D.name;J=D.name+" "+Q.parent.id}else{M=[D.query_title_format];o=D.query_title_fields.split(",");o.forEach(function(S){M.push(I.get(S))});J=Ext.String.format.apply(null,M)}}catch(N){J=D.name}Q.parentTitle=Q.lang.getString("_belongs_to")+":";Q.parentName=J;Q.updateInfoBox()}var g=Q.processColumnsLang(Q.theme_data.columns),F=g.columns,z=g.langGroups,w;F.forEach(function(U){var T=false,W=false,S,V;S=Adaptive.utils.Config.getBooleanConfig(U,"inline_with_next",false);
1if(w){w.items.push(U);if(!S){w=null}return}if(S){w={isInline:true,inlineLabel:Adaptive.utils.Config.getConfig(U,"inline_label"),items:[U]};U=w}if(P&&A<P.length){V=P[A];T=U.column_name===V.firstItem;W=U.column_name===V.lastItem}if(T){if(!R){b.push({isGroup:true,title:Q.getLangTitleSeparator(V,V.title,Q.selLang),description:Q.getLangDescriptionSeparator(V,V.description,Q.selLang),dependency:V.dependency,collapsible:!!V.collapsible,collapsed:!!V.collapsed,items:[]})}b[b.length-1].items.push(U);R=!W;if(W){A++}}else{if(R){b[b.length-1].items.push(U);if(W){R=false;A++}}else{b.push(U);R=false}}});b.forEach(function(S){if(S.isGroup){O=Q.processGroup(S)}else{O=Q.processColumn(S)}if(O){G.push(O)}});Q.isSpatial=Q.theme_data.spatial_data_type!=="no_geom";Q.isOptionalGeom=Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"optional_geom",false);Q.autoSetProjection=Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"auto_set_proj");Q.showAddNewBtn=Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"show_add_new_btn");if(Q.isSpatial){var E=Adaptive.utils.Config.getBooleanConfig(Q.theme_data.config.configs,"snappingenabled");var L=Adaptive.utils.Config.getConfig(Q.theme_data.config.configs,"snapradius");var C=Adaptive.utils.Config.getConfig(Q.theme_data.config.configs,"snapToEndpointUrl");Q.geometryPicker=Ext.create(Q.geometryPickerClass,{snappingEnabled:E,snapRadius:L,snapToEndpointUrl:C,theme_uuid:Q.theme_data.theme_uuid,map:Q.map,mapContainer:Q.mapContainer,spatial_data_type:Q.theme_data.spatial_data_type,map_projection:Q.map.getProjection(),geomColumn:Q.geomColumn,readOnly:Q.isDisplayForm,editZ:Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"spatial_data_type_3d"),showMeasurement:Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"geom_show_measurements",false),editableWkt:Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"editable_wkt"),collapsible:true,collapsed:!Adaptive.utils.Config.getBooleanConfig(Q.theme_data,"expanded_geom_fs"),autoSetProjection:Q.autoSetProjection});Q.geometryPicker.on("geometryChanged",Q.onGeometryChanged,Q);Q.geometryPicker.on("geometryChangedFailed",Q.onGeometryChangedFailed,Q);Q.geometryPicker.on("transformationFailed",Q.onTransformationFailed,Q);Q.geometryPicker.on("setGeometryFailed",Q.onSetGeometryFailed,Q);Q.geometryPicker.on("setLoadingOn",function(){Q.setLoading()});Q.geometryPicker.on("setLoadingOff",function(){Q.setLoading(false)});G.push(Q.geometryPicker)}if(Q.hasMedia){q.push({xtype:"button",iconCls:"icon-media",itemId:"btnFormMedia",text:Q.lang.getString("showMedia"),handler:Ext.bind(Q.showMedia,Q)})}if(B){q.unshift({xtype:"button",iconCls:"icon-history",itemId:"btnFormHistory",text:Q.lang.getString("showHistory"),enableToggle:true,pressed:Q.historyActive,listeners:{scope:Q,toggle:function(S,T){if(T){Q.showHistory()}else{Q.hideHistory()}}}})}q.push({xtype:"button",iconCls:"icon-export",itemId:"btnFormExport",text:Q.lang.getString("exportData"),menu:[{iconCls:"icon-form-view",text:Q.lang.getString("exportThemeData"),handler:Ext.bind(Q.exportThemeData,Q,[false])},{iconCls:"icon-child",text:Q.lang.getString("exportParentChildData"),itemId:"btnExportParentChildData",handler:Ext.bind(Q.exportThemeData,Q,[true])},{text:Q.lang.getString("exportWizard"),itemId:"btnExportWizard",handler:Ext.bind(Q.showExportWizard,Q)}]});q.push({xtype:"button",iconCls:"icon-copy",itemId:"btnFormClone",text:Q.lang.getString("cloneRecord"),handler:Ext.bind(Q.cloneRecord,Q)});if(Q.theme_data.child_themes){Q.theme_data.child_themes.forEach(function(T){var W=Client.AppLogic.getThemeData(T.theme_uuid);if(!W){return}var U=W.editable&&(W.permissions.write||W.permissions.project_write),V=Adaptive.utils.Config.getBooleanConfig(W.config.configs,"only_metadata_edit");var S=[{iconCls:"icon-list",text:Q.lang.getString("showChildren")+" "+T.name,itemId:"show_"+T.theme_uuid,handler:Ext.bind(Q.showChildren,Q,[T])}];if(U&&!V){S.push({iconCls:"icon-add",text:Q.lang.getString("createChild")+" "+T.name,itemId:"add",hidden:!U||V,handler:Ext.bind(Q.addChild,Q,[T])})}q.push({xtype:"button",childButton:true,iconCls:"icon-child",text:T.name,originalTitle:T.name,itemId:"btn_"+T.theme_uuid,menu:S})})}if(Q.hooks&&Q.hooks.getTbItems){q=q.concat(Q.hooks.getTbItems(Ext.bind(Q.getRecord,Q),Q.map,Q.theme_data,Q.isDisplayForm,Q)||[])}Q.processItemsLang(G,z);Q.items=[Q.createForm({tbItems:q,items:G})]},updateInfoBox:function(){var b=this;b.infoBox.update({parentName:b.parentName,parentTitle:b.parentTitle})},processGroup:function(o){var g=this,b=[],h=true;
1o.items.forEach(function(q){var w=g.processColumn(q);if(w){if(h&&!w.hidden){h=false}b.push(w)}});if(b.length==0){return null}if(o.description){b.unshift({xtype:"box",cls:"a3-box a3-info",html:o.description})}return g.createSet(o.name,{collapsible:o.collapsible,collapsed:o.collapsed,title:o.title,dependency:o.dependency},b)},setEditingExtraGeometry:function(g){var b=this;b.isEditingExtraGeometry=b.isEditingExtraGeometry||false;if(g){if(!b.isEditingExtraGeometry){b.isEditingExtraGeometry=true;b.stopGeometryPicker();return true}}else{b.isEditingExtraGeometry=false;b.startGeometryPicker();return true}return false},isGeometryEditable:function(){var b=this;return !!(b.activeView&&b.isSpatial&&!b.isDisplayForm&&b.geometryPicker)},startGeometryPicker:function(){var b=this;if(b.isGeometryEditable()){if(b.hooks&&b.hooks.beforeStartPicker){if(b.hooks.beforeStartPicker(null)===false){b.geometryPicker.stopPicker();return}}b.geometryPicker.startPicker()}},stopGeometryPicker:function(){var b=this;if(b.isGeometryEditable()){setTimeout(function(){b.geometryPicker.stopPicker()},10)}},activate:function(){var b=this;if(b.isGeometryEditable()){b.reportEvent("disableDataviewMapSelection");b.geometryPicker.showDrawLayer();b.startGeometryPicker()}b.getForm().owner.items.items.forEach(function(g){g.activate&&g.activate()})},deactivate:function(){var b=this;if(b.isGeometryEditable()){b.stopGeometryPicker();b.reportEvent("enableDataviewMapSelection");b.geometryPicker.hideDrawLayer()}b.getForm().owner.items.items.forEach(function(g){g.deactivate&&g.deactivate()})},setActiveTabsLang:function(){var h=this,b,g=h.getAllItems();g=g.filter(function(o){return o.xtype=="tabpanel"&&o.hasOwnProperty("langContainer")});g.forEach(function(o){b=o.items.findBy(function(w,q){return w.langCode==h.selLang});if(b){o.setActiveTab(b)}})},bindRecord:function(g,w){var q=this,o=q.getForm(),b=o.getRecord();q.isBinding=true;if(b){b.reject()}if(g){var h=!!g.get("_historical");o.reset();q.getForm().setValues(g.data);q._bindRecord(g);q.parentName="";q.updateInfoBox();q.setParentName(g);if(h&&w){Ext.defer(function(){q.showChanged(w)},10)}q.formPanel.scroll={left:0,top:0}}else{if(g=o.getRecord()){delete o._record;o.reset();if(q.isSpatial){if(!q.isDisplayForm){q.geometryPicker.stopPicker();q.reportEvent("enableDataviewMapSelection")}q.geometryPicker.setGeometry(null,true)}}}q.clearInvalid();q.onDataChanged();q.setActiveTabsLang();q.updateButtons(g);q.setHeaderText(g);q.isGeomChanged=false;q.isBinding=false},_bindRecord:function(b){var h=this,g=h.getForm(),o=h.getItem("_acl");if(o){o.setIsExisting(!!b.get("id"))}if(h.hooks&&h.hooks.beforeLoad){h.hooks.beforeLoad(h,b)}g.loadRecord(b);if(h.isSpatial){h.geometryPicker.setGeometry(b.get(h.geomColumn),true);if(!h.isDisplayForm){h.reportEvent("disableDataviewMapSelection");if(h.hooks&&h.hooks.beforeStartPicker&&h.hooks.beforeStartPicker(b)===false){h.geometryPicker.stopPicker()}else{h.geometryPicker.startPicker()}}}if(!b.get("id")){h.theme_data.columns.forEach(function(q){if(q.column_name!=="geom"&&q.data_type==="fcd7139f-06ac-4526-a7a9-48dfe3de3463"){var w=h.getItem(q.column_name);if(w){w.originalValue=null}}})}if(h.hooks&&h.hooks.afterLoad){h.hooks.afterLoad(h,b)}},updateButtons:function(b){var h=this,g=h.queryDockedItems("button");g.forEach(function(o){if(o.childButton){o.setDisabled(!b||!b.get("uuid"))}});h.updateMediaButton(b);h.updateChildButtons(b);h.updateExportButton(b);h.updateHistoryButton(b);h.updateCloneButton(b)},updateChildButtons:function(b){var g=this;if(g.theme_data.child_themes){g.theme_data.child_themes.forEach(function(w){var o="#btn_"+w.theme_uuid,z="#show_"+w.theme_uuid,h=w.theme_uuid+"_count",q=g.getDockedItem(o),B=g.getDockedItem(z),D=q&&q.originalTitle,A=false;if(!q){return}if(b&&b.get("uuid")){D+=" ("+(b.get(h)||0)+")";A=b.get(h)>0}var C=q.query("menuitem[itemId=add]");if(C&&C.length){C[0].setVisible(!b||!b.get("_historical"))}q.setText(D);B.setDisabled(!b||!b.get("uuid")||!A);if(g.hooks&&g.hooks.updateChildButton){g.hooks.updateChildButton(q,b)}})}},updateMediaButton:function(g){var o=this;if(o.hasMedia){var q=o.lang.getString("showMedia"),h=false,b=o.getDockedItem("#btnFormMedia");if(g&&g.get("uuid")){q+=" ("+(g.get("media_files")||0)+")";h=g.get("media_files")>0}b.setText(q);b.setDisabled(!g||!g.get("uuid")||(!h&&o.isDisplayForm));if(o.hooks&&o.hooks.updateMediaButton){o.hooks.updateMediaButton(childBtn,g)}}},updateExportButton:function(o){var w=this,h=w.getDockedItem("#btnExportParentChildData"),g=w.getDockedItem("#btnExportWizard"),q=w.getDockedItem("#btnFormExport"),z=false,b=Adaptive.utils.Config.getBooleanConfig(w.theme_data,"hide_export",false);
1if(w.theme_data.child_themes){w.theme_data.child_themes.some(function(A){columnName=A.theme_uuid+"_count";if(o&&o.get("uuid")){z=o.get(columnName)>0;if(z){return true}}})}h.setDisabled(!o||!o.get("uuid")||!z);h.setVisible(!!w.theme_data.child_themes);g.setVisible(w.theme_data.is_digi_theme);q.setVisible(!b);if(w.hooks&&w.hooks.updateExportButton){w.hooks.updateExportButton(q,h,o)}},updateHistoryButton:function(b){var h=this,g=h.getDockedItem("#btnFormHistory");if(!g){return}g.setDisabled(!b||!b.get("uuid")||b.get("_historical"))},updateCloneButton:function(g){var q=this,z=q.getDockedItem("#btnFormClone"),w=Adaptive.utils.Config.getBooleanConfig(q.theme_data,"only_metadata_edit",false),o=Adaptive.utils.Config.getBooleanConfig(q.theme_data,"disable_clone_record",false),b=!q.theme_data.is_digi_theme||Adaptive.utils.Config.getBooleanConfig(q.theme_data,"hide_clone_record",false),h=q.dataEditable()&&!w;z.setDisabled(o||!h||!g||!g.get("uuid"));z.setVisible(!b)},onGeometryChanged:function(h){var g=this,b=g.getForm().getRecord();if(g.isBinding){return}if(b&&b.get(g.geomColumn)!==h){g.isGeomChanged=true;b.set(g.geomColumn,h);if(g.hooks&&g.hooks.afterGeometryChanged){return g.hooks.afterGeometryChanged(g,b)}}},onGeometryChangedFailed:function(){var b=this;if(b.formPanel.rendered){b.showFormError(b.lang.getString("geometryChangedFailed"))}else{b.formPanel.on("boxready",function(){b.showFormError(b.lang.getString("geometryChangedFailed"))},b)}},onTransformationFailed:function(){var b=this;b.showFormError(b.lang.getString("transformationFailed"))},onSetGeometryFailed:function(){var b=this;if(b.formPanel.rendered){b.showFormError(b.lang.getString("setGeometryFailed"))}else{b.formPanel.on("boxready",function(){b.showFormError(b.lang.getString("setGeometryFailed"))},b)}},getRawData:function(){var A=this,g=A.getForm(),q=g.getRecord(),z,o,B={},w,b,h;if(!g.isValid()){return null}z=g.getFields().items;z.forEach(function(C){if(C.dataIndex){w=C.getModelData();if(Ext.isObject(w)){for(b in w){if(w.hasOwnProperty(b)){o=!!C.dependencyHidden?null:w[b];
1if(!C.isRadio){if(B.hasOwnProperty(b)){h=B[b];if(!Ext.isArray(h)){h=B[b]=[h]}if(Ext.isArray(o)){B[b]=h.concat(o)}else{h.push(o)}}else{B[b]=o}}else{B[b]=B[b]||o}}switch(C.xtype){case"pointpicker":case"linepicker":case"polygonpicker":if(!C.isDirty()){B[b]="unchanged"}}}}}});if(q){w=Ext.Object.merge(q.data,B)}else{w=B}return w},onSave:function(){var b=this,h=b.getData();if(b.hooks&&b.hooks.beforeSave){var g=b.hooks.beforeSave(h,b);if(g!==undefined&&typeof g.then==="function"){g.then(function(){b.handleSave(h)},function(){});return}else{if(g===false){return}}}b.handleSave(h)},handleSave:function(g){var b=this;if(b.geomColumn&&!g[b.geomColumn]&&b.isSpatial&&!b.isOptionalGeom){b.showFormError(b.getFormString("missing_geom"));return}if(b.parent){g[b.parent.column]=b.parent.id}g=b.arrayToString(g);if(g.feature){b.recordFeature=g.feature;delete g.feature}if(!g.id){g.id=null}delete g.select_feature;g.geom_modified=b.isGeomChanged;b.mask();Ext.Ajax.request({url:b.serviceUrl+b.serviceMethods.save,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({theme_uuid:b.theme_data.theme_uuid,data:g}),success:Ext.bind(b.onSaveCallbackSuccess,b),failure:Ext.bind(b.onSaveCallbackFailure,b)})},onSaveCallbackSuccess:function(h,q){var o=this,b=o.getForm().getRecord(),A=b&&!b.get("id"),z;o.unmask();h=GeoMind.utils.Ajax.fixResponse(h);if(h.success){o.isSaving=true;var w=GeoMind.utils.Data.extractConfigObjectByKey(h.data,"record");b.set(w);b.set("media_files",b.get("media_files")||0);if(o.hooks&&o.hooks.copyChildren&&o.isCopyOperation){if(o.theme_data.child_themes&&o.theme_data.child_themes.length>0){o.hooks.copyChildren(o.theme_data.theme_uuid,w.id,o.copyId,function(B,C){if(C){if(!o.isSaving){Client.AppLogic.dispatchEvent("digiRecordSelected",{record:b,parent:o.parent,theme_data:o.theme_data})}}})}}o.isCopyOperation=false;if(A&&o.parent&&o.parent.record.get("uuid")){var g=o.theme_data.theme_uuid+"_count";o.parent.record.set(g,(o.parent.record.get(g)||0)+1);o.parent.record.commit()}if(o.isSpatial&&o.recordFeature){b.set("feature",o.recordFeature)}b.commit();o.getForm().setValues({});if(o.isSpatial){o.geometryPicker.setGeometry(b.get(o.geomColumn),true);o.isGeomChanged=false;o.geometryPicker.setVisible(!Adaptive.utils.Config.getBooleanConfig(o.theme_data,"hide_geometry_picker",false))}o.map.redrawLayerByThemeUuid(o.theme_data.theme_uuid);Client.AppLogic.dispatchEvent("themeDataUpdated",{theme_uuid:o.theme_data.theme_uuid,record:b});o.showFormSave();if(o.hooks&&o.hooks.afterSave){o.hooks.afterSave(o,b,o.theme_data)}Client.AppLogic.dispatchEvent("digiRecordSelected",{record:b,parent:o.parent,theme_data:o.theme_data});o.isSaving=false}else{o.showError(h.exception&&h.exception.msg)}delete o.recordFeature},onSaveCallbackFailure:function(b,h){var g=this;g.unmask();g.showError();delete g.recordFeature},showError:function(h,b){var g=this;if(h&&h.indexOf("enforce_valid_geom")!==-1){h=g.getFormString("errorInvalidGeom")}Ext.Msg.show({title:g.getFormString("errorTitle"),msg:g.getFormString("errorBody")+(h?"<br>"+h:""),fn:function(){if(b){g.bindRecord();g.fireEvent("cancel",g.parent)}}})},dataEditable:function(){return(this.theme_data.editable&&(this.theme_data.permissions.write||this.theme_data.permissions.project_write))},exportThemeData:function(g){var h=this,b=h.getData()[h.theme_data.id_column];h.exportThemeDataToPdf(h.theme_data.theme_uuid,[b],g)},showExportWizard:function(){var g=this,h=Ext.create("Adaptive.ux.ReactComponent",{name:"exportWizard",parentController:g.moduleController,props:{guiUuid:__guuid__,themeUuid:g.theme_data.theme_uuid,objectId:g.getData()[g.theme_data.id_column],onCreateDownloadItem:function(q,o){g.doPdfExport(o,q,g.theme_data.name);b.close()},gmSessionId:GeoMind.utils.SessionManager.ss.sessionId,lang:{sortByColumn:g.lang.getString("exportWizardSortByColumn"),sortAscending:g.lang.getString("exportWizardAscending"),sortDescending:g.lang.getString("exportWizardDescending"),includeImages:g.lang.getString("exportWizardIncludeImages"),lowResolutionImages:g.lang.getString("exportWizardLowResolutionImages"),includeEmptyFields:g.lang.getString("exportWizardIncludeEmptyFields"),nextPage:g.lang.getString("exportWizardNext"),previousPage:g.lang.getString("exportWizardPrevious"),generateReport:g.lang.getString("exportWizardGenerateReport"),selectContent:g.lang.getString("exportWizardSelectContent"),setSettings:g.lang.getString("exportWizardSelectSettings"),exportError:g.lang.getString("exportWizardExportError"),generalError:g.lang.getString("exportWizardGeneralError")}}}),b=Ext.create("Ext.window.Window",{title:g.lang.getString("exportWizard"),layout:"fit",width:Math.min(Ext.getBody().getWidth()*0.8,800),height:Math.min(Ext.getBody().getHeight()*0.8,800),modal:true,items:h});b.show()},showMedia:function(b){var g=this;g.fireEvent("gridItemViewMedia",{record:g.getForm().getRecord(),theme_data:g.theme_data,isEditable:!g.isDisplayForm,userCanEditTheme:g.dataEditable()})},onCancel:function(){var b=this;b.checkDirty(function(){if(b.isSpatial){b.geometryPicker.onCancel()}b.bindRecord();if(b.hooks&&b.hooks.beforeCancel){if(b.hooks.beforeCancel(b)===false){return}}b.fireEvent("cancel",b.parent)})},onAddNew:function(){var b=this;b.checkDirty(function(){if(b.isSpatial){b.geometryPicker.onCancel()}b.bindRecord();if(b.hooks&&b.hooks.beforeCancel){if(b.hooks.beforeCancel(b)===false){return}}Client.AppLogic.dispatchEvent("digiRecordCreate",{parent:b.parent,theme_data:b.theme_data})})},checkDirty:function(g,b){var h=this;if(!h.isSaving&&h.isDirty()){Ext.Msg.show({title:h.getFormString("unsavedChangesTitle"),msg:h.getFormString("unsavedChangesMsg"),buttons:Ext.MessageBox.OKCANCEL,buttonText:{ok:h.getFormString("btnDiscard"),
1cancel:h.getFormString("btnCancel")},fn:function(o){switch(o){case"ok":g();break;case"cancel":if(b){b()}break}}})}else{g()}},isDirty:function(){var h=this,g=h.getForm(),b=g.getRecord(),o=false;if(b){if(h.isGeomChanged){return true}g.getFields().items.forEach(function(q){if(q.dataIndex&&q.isDirty()){o=true}})}return o},arrayToString:function(g){for(var b in g){if(Array.isArray(g[b])){g[b]=g[b].toString()}}return g},reloadRecord:function(){var b=this;Client.AppLogic.dispatchEvent("digiRecordSelected",{record:b.getForm().getRecord(),parent:b.parent,theme_data:b.theme_data})},getRecord:function(){return this.getForm().getRecord()},showLoadMask:function(b){if(this.getMaskTarget()){this.mask(b)}},hideLoadMask:function(){if(this.getMaskTarget()){this.unmask()}},showHistory:function(){var g=this,b=g.getForm().getRecord();g.fireEvent("showHistory",{theme_data:g.theme_data,objectid:b.get("id"),currentRecord:b})},hideHistory:function(){var g=this,b=g.formPanel.down("#btnFormHistory");g.fireEvent("hideHistory");if(b&&b.pressed){b.toggle()}},showChanged:function(q){var o=this;
1o.getAllItems().forEach(function(w){if(w.removeCls){w.removeCls("a3-form-field-changed")}});for(var h in q){if(q.hasOwnProperty(h)){var b=o.down("[dataIndex="+h+"]"),g=q[h];if(!b){continue}b.addClass("a3-form-field-changed");b.getEl().dom.getElementsByClassName("x-form-item-body")[0].setAttribute("data-diff-old-value",o.lang.getString("oldValue")+":'"+g+"'")}}},destroy:function(){var b=this;if(b.loadRequest){Ext.Ajax.abort(b.loadRequest);delete b.loadRequest}if(b.loadParentRequest){Ext.Ajax.abort(b.loadParentRequest);delete b.loadParentRequest}b.callParent(arguments)},setHeaderText:function(g){var h=this,q,b;try{if(!h.queryAsTitle||!g||!h.theme_data.query_title_format||!h.theme_data.query_title_fields||!g.get("id")){h.headerText=h.theme_data.name}else{h.headerText=h.buildTitleFromQuery(h.theme_data.query_title_format,h.theme_data.query_title_fields,g)}}catch(o){h.headerText=h.theme_data.name}h.fireEvent("setHeaderText",h.headerText)},cloneRecord:function(){var b=this;if(!b.isSpatial){b._cloneRecord(false);return}Ext.Msg.show({title:b.lang.getString("cloneWithGeomTitle"),msg:b.lang.getString("cloneWithGeomMsg"),buttons:Ext.Msg.YESNO,fn:function(g){b._cloneRecord(g=="yes")}})},_cloneRecord:function(h){var o=this,b=o.getForm().getRecord(),g=b.copy();g.set("id",null);g.set("uuid",null);if(!h){g.set("geom_wkt",null);o.theme_data.columns.forEach(function(q){if(q.column_name!=="geom"&&q.data_type==="fcd7139f-06ac-4526-a7a9-48dfe3de3463"){g.set(q.column_name,null)}})}o.isCopyOperation=true;o.copyId=b.get("id");Client.AppLogic.dispatchEvent("digiRecordCreate",{input:g,parent:o.parent,theme_data:o.theme_data,isEditable:true})},setParentName:function(z){var C=this,o=Adaptive.utils.Config.getJsonConfig(C.theme_data,"parent_themes"),q=new Ext.util.DelayedTask(function(){C.updateInfoBox()}),g,w;if(!o||o.length==0){return}else{if(o.length==1){g=o[0]}else{if(o.length>1){g=Ext.Array.findBy(o,function(E){return z.get(E.fk_column)!=null})}}}if(!g){return}w=z.get(g.fk_column);if(!w&&w!==null){w=C.parent.id}var A=Client.AppLogic.getThemeLayerRecord(o[0].theme_uuid),D,B,b;if(!(A instanceof GeoMind.data.model.Layer)&&!(A&&A.record)){C.parentName=z.get(o[0].fk_column),C.parentTitle=C.lang.getString("_belongs_to")+":";C.updateInfoBox();return}if(!o[0].fk_column){C.parentTitle=C.lang.getString("_no_parent");C.updateInfoBox();return}if(A instanceof GeoMind.data.model.Layer){D=Adaptive.utils.Config.getThemeData(A);b=A.get("name")}else{D=Adaptive.utils.Config.getThemeData(A.record);b=A.name}B=Adaptive.utils.Config.getBooleanConfig(D,"query_as_title");C.parentTitle=C.lang.getString("_belongs_to")+":";if(!B){C.parentName=b+" "+w;C.updateInfoBox();return}C.parentName=C.lang.getString("loading");q.delay(200);var h={request:{theme_uuid:o[0].theme_uuid,columns:D.query_title_fields.split(","),object_id:z.get(o[0].fk_column),excludeGeometry:true}};if(C.loadParentRequest){Ext.Ajax.abort(C.loadParentRequest);delete C.loadParentRequest}C.loadParentRequest=Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadAny",method:"POST",jsonData:h,callback:function(F,G,E){delete C.loadParentRequest;if(G){E=GeoMind.utils.Ajax.fixResponse(E);if(!(E.records&&E.records.length==1)){C.parentName=C.lang.getString("_parent_fetch_fail")}else{C.parentName=C.buildTitleFromQuery(D.query_title_format,D.query_title_fields,null,E.records[0])}}else{C.parentName=C.lang.getString("_parent_fetch_fail")}q.delay(0)}})},buildTitleFromQuery:function(h,w,g,o){var q=[h],b=w.split(",");b.forEach(function(z){q.push((g?g.get(z):o[z])||"")});return Ext.String.format.apply(null,q)},addChild:function(g,o){var h=this,b=h.getForm().getRecord();if(b.get("id")){h.fireEvent("createChild",{theme_data:Client.AppLogic.getThemeData(g.theme_uuid),input:o,parent:{name:h.theme_data.name,column:g.fk_column,id:b.get("id"),record:b,theme_data:h.theme_data,parent:h.parent}})}},showChildren:function(g){var h=this,b=h.getForm().getRecord();if(b.get("id")){h.fireEvent("showChildren",{theme_uuid:g.theme_uuid,childrenOf:{name:h.theme_data.name,column:g.fk_column,id:b.get("id"),record:b,theme_data:h.theme_data,parent:h.parent}})}},onDelete:function(){var b=this;Ext.Msg.show({title:b.lang.getString("deleteConfirmTitle"),msg:b.lang.getString("deleteConfirmMsg"),buttons:Ext.Msg.YESNO,fn:function(g){if(g=="yes"){b._onDelete()}}})},updateGeomPickerProjection:function(){var b=this;if(b.geometryPicker&&b.autoSetProjection){b.geometryPicker.updateProjection()}},_onDelete:function(){var g=this,b=g.getForm().getRecord();g.showLoadMask(g.lang.getString("deleteMsg"));Ext.Ajax.request({url:"WebServices/client/DataView.asmx/Delete",method:"POST",jsonData:{theme_uuid:g.theme_data.theme_uuid,id:b.get("id")},callback:function(o,q,h){h=GeoMind.utils.Ajax.fixResponse(h);g.hideLoadMask();if(!(q&&h.success)){g.showError(null,g.lang.getString("deleteRecordError"));return}Client.AppLogic.dispatchEvent("digiRecordDeleted",{record:b,theme_data:g.theme_data});Client.AppLogic.dispatchEvent("refreshActiveLayers")}})},getGeometryPicker:function(){return this.geometryPicker}});Ext.define("Client.module.tool.digiTheme.plugin.lang.Form",{strings:{close:{en:"Close",nb:"Lukk"},loadError:{en:"Could not load data. Please try again.",nb:"Kunne ikke laste data. Vennligst prøv igjen."}}});Ext.define("Client.module.tool.digiTheme.plugin.Form",{extend:Client.module.Generic,mixins:[Adaptive.mixins.Notify],internal_name:"av_digi_theme_form",serviceUrl:"WebServices/client/DataView.asmx/",user_data:null,constructor:function(){var b=this;b.callParent(arguments);
1b.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.plugin.lang.Form");b.reportEvent("getUserDetails")},_onUserDetailsRetrieved:function(b){this.user_data=GeoMind.utils.Data.extractConfigObjectByKey(b.data.data,"record")},activate:function(){var b=this;b.active=true;if(b.formPage){b.formPage.activate()}},deactivate:function(){var b=this;if(b.formPage){b.formPage.deactivate()}b.hideHistory();b.active=false},_setActive:function(g){if(g){return}var b=this;if(b.formPage){b.formPage.destroy();delete b.formPage}},_onSetNewProjection:function(g){var b=this;if(b.formPage){b.formPage.updateGeomPickerProjection()}},mask:function(){var b=this;if(!b.active){b.fireEvent("switchTool")}if(b.formPage&&b.formPage.getMaskTarget()){b.formPage.setLoading()}else{if(!b.loadingPage){b.loadingPage=Ext.widget({xtype:"container",layout:"hbox",items:[{xtype:"box",flex:1,html:'<span class="loading-dots"><span></span><span></span><span></span></span>'},{xtype:"button",cls:"a3-link-btn",text:b.lang.getString("close"),handler:function(){if(b.loadRequest){Ext.Ajax.abort(b.loadRequest);delete b.loadRequest}if(b.errorNotify){b.errorNotify.dismiss();delete b.errorNotify}b.fireEvent("cancel")}}]})}b.fireEvent("setActiveItem",b.loadingPage)}},unmask:function(){var b=this;if(b.formPage&&b.formPage.getMaskTarget()){b.formPage.setLoading(false)}},showError:function(){var b=this;if(b.errorNotify){b.errorNotify.dismiss();delete b.errorNotify}b.errorNotify=b.showNotify(b.formPage||b.loadingPage,b.lang.getString("loadError"),false,"a3-failed",true)},loadFormPage:function(o,g,b,q){var z=this,h=function(){if(g&&!(g instanceof Ext.data.Model)){g=Client.data.model.ThemeRecord.createRecord(o,g)}if(g&&g.data[o.id_column]){b=true;var A=!!g.get("_historical"),B={theme_uuid:o.theme_uuid,columns:Client.data.model.ThemeRecord.getColumns(o).filter(function(C){return C!="geom"}),object_id:g.data[o.id_column],version_id:g.get("_version_id")};z.mask();if(z.loadRequest){Ext.Ajax.abort(z.loadRequest);delete z.loadRequest}z.loadRequest=Ext.Ajax.request({url:z.serviceUrl+(A?"ReadHistory":"ReadAny"),method:"POST",jsonData:{request:B},success:function(C){delete z.loadRequest;z.unmask();C=GeoMind.utils.Ajax.fixResponse(C);if(C.success){if(C.records.length<1){z.showError();return}var F=C.records[0];g.set(F);g.set("media_files",g.get("media_files")||0);var H=Adaptive.utils.Config.getConfig(C.data,"diff");var D=g.get(z.geomColumn);if(D){var G=D.indexOf("("),E=D.substr(0,G);if(/ [ZM]+\s*$/.test(E)){D=E.replace(/ [ZM]+\s*$/,"")+D.substr(G);g.set(z.geomColumn,D)}}g.commit();b=!F._editable;z._loadFormPage(o,g,b,q,H)}else{z.showError()}},failure:function(C){delete z.loadRequest;z.unmask();if(!C.request.aborted){z.showError()}}})}else{z._loadFormPage(o,g,false,q)}},w=function(){if(z.historyList){var A=z.historyList.store.getAt(0);z.historyList.getSelectionModel().select(A,false,true)}};if(z.errorNotify){z.errorNotify.dismiss();delete z.errorNotify}if(z.formPage){z.formPage.checkDirty(h,w)}else{h()}},_loadFormPage:function(C,g,B,z,w){var o=this,b,A;if(!o.formPage||o.formPage.theme_data.theme_uuid!=C.theme_uuid||o.formPage.isDisplayForm!=B){if(o.formPage){o.formPage.bindRecord();o.formPage.destroy()}b={map:o.map,mapContainer:o.mapContainer,serviceUrl:o.serviceUrl,theme_data:C,isDisplayForm:B,hasMedia:C.is_digi_theme&&!Adaptive.utils.Config.getBooleanConfig(C,"disable_media",false),parent:z,historyActive:!!o.historyList,userData:o.user_data};A=Adaptive.utils.Config.getConfig(C.config.configs,"digitheme_geometry_picker");if(A){b.geometryPickerClass=A}else{if(C.spatial_data_type.lastIndexOf("multi",0)===0){b.geometryPickerClass="Adaptive.ux.MultiGeometryPicker"}}var h=Adaptive.utils.Config.getJsonConfig(C.config.configs,"digitheme_geometry_picker_overrides");if(o.user_data&&h){h.forEach(function(D){if(D.roleuuids&&o.hasUserRole(o.user_data,D.roleuuids)){b.geometryPickerClass=D.geometry_picker}})}o.formPage=Ext.create("Client.module.tool.digiTheme.ux.Form",b);o.formPage.on("cancel",function(D){if(D){o.loadFormPage(D.theme_data,D.record,B,D.parent)}else{o.formPage.isCopyOperation=false;o.fireEvent("cancel")}});o.formPage.on("gridItemViewMedia",function(D){o.reportEvent("gridItemViewMedia",D)});o.formPage.on("showChildren",function(D){o.reportEvent("dataViewRequest",D)});o.formPage.on("createChild",function(D){o.loadFormPage(D.theme_data,D.input,false,D.parent)});o.formPage.on("showHistory",function(D){o.showHistory(D)});o.formPage.on("hideHistory",function(D){o.hideHistory()});o.formPage.on("setHeaderText",function(D){o.fireEvent("setHeaderText",D)},o)}if(!g){g=Client.data.model.ThemeRecord.createRecord(C)}else{if(!(g instanceof Ext.data.Model)){g=Client.data.model.ThemeRecord.createRecord(C,g)}}if(z){g.set(z.column,z.id)}if(o.historyList&&!g.get("_historical")){o.historyList.loadObjectHistory(g.get("id"))}function q(){if(o.formPage.externalStoresLoaded()){o.formPage.bindRecord(g,w)}else{Ext.defer(q,100,o)}}q();if(!o.active){o.fireEvent("switchTool")}o.fireEvent("setActiveItem",o.formPage);o.formPage.query("parentfield").forEach(function(D){!B&&D.setVisible(!o.formPage.parent)})},onDigiThemeSelect:function(g,b){g.deselect([b]);this.loadFormPage(b.get("theme_data"))},_onDigiRecordCreate:function(b){this.loadFormPage(b.data.theme_data,b.data.input,false,b.data.parent)},_onDigiRecordSelected:function(b){if(this.formPage&&this.formPage.isCopyOperation){this.formPage.isCopyOperation=false}this.loadFormPage(b.data.theme_data,b.data.record,b.data.displayOnly,b.data.parent)},_onDigiRecordDeleted:function(b){this.handleRecordsDeleted(b.data.theme_data.theme_uuid,[b.data.record.get("id")])},_onDigiRecordsDeleted:function(b){this.handleRecordsDeleted(b.data.theme_data.theme_uuid,b.data.ids)},handleRecordsDeleted:function(b,h){var o=this,g=o.formPage&&o.formPage.activeView&&o.formPage.getForm().getRecord();if(g&&o.formPage.theme_data.theme_uuid==b&&h.indexOf(g.get("id"))!==-1){o.formPage.bindRecord();if(o.active){o.fireEvent("cancel")}}else{if(o.formPage){o.formPage.reloadRecord()}}},afterMapReset:function(g){var b=this;if(b.formPage){b.formPage.map=b.map}},showHistory:function(g){var b=this;if(!b.historyList){b.historyList=Ext.create("Client.module.tool.digiTheme.ux.History",{mapContainer:b.mapContainer,theme_data:g.theme_data,objectid:g.objectid});b.mapContainer.add(b.historyList)}},hideHistory:function(){var b=this;if(b.historyList){b.historyList.destroy();delete b.historyList}}});Ext.define("Client.module.tool.digiTheme.ux.lang.History",{strings:{showHistory:{en:"Show history",nb:"Vis historikk"},modified_by:{en:"Modified by",nb:"Endret av"}}});Ext.define("Client.module.tool.digiTheme.ux.History",{extend:Ext.view.View,cls:"a3-docked-right kv-history-list",itemSelector:"li",multiSelect:false,floating:false,width:250,height:100,constructor:function(b){var g=this;Ext.apply(g,b);g.store=Ext.create("Ext.data.Store",{model:"Client.module.tool.digiTheme.model.History",listeners:{load:function(o){var q=o.getAt(0);g.getSelectionModel().select(q,false,true)}}});g.loadObjectHistory(g.objectid);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.History");g.formatDate=GeoMind.lang.Lang.registerTranslations("Client.lang.DateFormat");if(!g.historyHeightReference){var h=Ext.ComponentQuery.query("#statusbar");g.historyHeightReference=h[0];g.historyHeightReferenceUseY=true}g.historyAnchor=g.mapContainer;g.historyAlign="tr-tr";g.mon(g.historyAnchor,"move",g._repositionHistoryList,g);g.mon(g.historyAnchor,"resize",g._repositionHistoryList,g);g.tpl=new Ext.XTemplate('<div class="x-header-text-container x-panel-header-text-container-default"><span class="x-header-text">',g.lang.getString("showHistory"),"</span></div>",'<ul class="links">','<tpl for=".">','<li <tpl if="xindex == 1">class="current"</tpl> >{date_modified:date("'+g.formatDate.getString("date_format")+" "+g.formatDate.getString("time_sec_format")+'")}</br>','<tpl if="created_by">'+g.lang.getString("modified_by")+": {created_by}</li></tpl>","</tpl>","</ul>");Ext.applyIf(g,{listeners:{boxready:function(){g._repositionHistoryList()},refresh:function(){},beforeselect:function(){},select:function(q,o){var w=g.store.getAt(0);if(w.get("id")==o.get("id")){Client.AppLogic.dispatchEvent("digiRecordSelected",{record:Client.data.model.ThemeRecord.createRecord(g.theme_data,{id:o.get("objectid")}),parent:g.parent,theme_data:g.theme_data})}else{g.loadRecordData(o)}}}});g.callParent(arguments)},_repositionHistoryList:function(){var b=this;if(b.mapContainer&&b.historyHeightReference&&b.historyAlign){b.setHeight(b.historyHeightReferenceUseY?b.historyHeightReference.getY():b.historyHeightReference.getHeight());b.alignTo(b.mapContainer,b.historyAlign);if(b.isFloating()){b.toFront();b.mapContainer.toFront()}}},loadRecordData:function(g){var o=this,q=g.get("id"),b=o.theme_data.theme_uuid;var h=Client.data.model.ThemeRecord.createRecord(o.theme_data,{id:g.get("objectid")});h.set("_historical",true);h.set("_version_id",q);Client.AppLogic.dispatchEvent("digiRecordSelected",{record:h,parent:o.parent,theme_data:o.theme_data})},loadObjectHistory:function(g){var b=this;if(!g){b.store.removeAll();return}b.store.getProxy().extraParams={request:{theme_uuid:b.theme_data.theme_uuid,object_id:g}};b.store.load()}});Ext.define("Client.module.tool.digiTheme.ux.MediaView",{extend:Ext.view.View,cls:"a3-media-view",autoScroll:true,itemSelector:"div.thumb-wrap",imageUrl:"WebServices/generic/Media.asmx/Download?thumbnail_size=medium&uuid=",mediaDownloadUrl:"WebServices/generic/Media.asmx/Download?uuid=",config:{showHeaders:false},constructor:function(b){var g=this,h=GeoMind.utils.SessionManager.ss.sessionId;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.digiTheme.ux.lang.Media");g.tpl=new Ext.XTemplate('<tpl for=".">','<tpl if="values.uuid">','<tpl if="this.showHeaders()"><h3>{[this.getMediaHeader(values.mime, xindex, parent)]}</h3></tpl>','<div class="thumb-wrap">','<div class="thumb {[this.getMediaClass(values.mime)]}"><img class="thumb-img" src="'+g.imageUrl+"{uuid}&gm_session_id="+h+'"></div>','<div class="thumb-menu">','<tpl if="this.isEditable()">','<a class="a3-right a3-icon icon-edit" data-qtip="'+g.lang.getString("editMedia")+'"></a>','<a class="a3-right a3-icon icon-delete" data-qtip="'+g.lang.getString("deleteMedia")+'"></a>',"</tpl>",'<a class="a3-right a3-icon icon-download" href="'+g.mediaDownloadUrl+"{uuid}&gm_session_id="+h+'" download="{name}" data-qtip="'+g.lang.getString("download")+'"></a>','<a class="a3-right a3-icon icon-fullsize" data-qtip="'+g.lang.getString("viewMedia")+'"></a>','<tpl if="comment"><a class="a3-right a3-icon icon-caption" data-qtip="'+g.lang.getString("viewMediaComment")+'"></a></tpl>',"</div>",'<tpl if="comment"><p class="comment" style="display:none;">{comment}</p></tpl>',"</div>","</tpl>","</tpl>",{isEditable:function(){return g.isEditable},getMediaClass:function(o){if(o&&o.indexOf("video/")==0){return"thumb-video"}if(o&&o.indexOf("image/")==0){return"thumb-image"}return""},showHeaders:function(){return g.showHeaders},getMediaHeader:function(A,o,w){var q=g.getMimeCat(A),z;if(o>1){z=g.getMimeCat(w[o-2].mime)}if(q==z){return}if(q=="image"){return g.lang.getString("imagesHeader")}else{if(q=="video"){q="video";return g.lang.getString("videosHeader")}else{return g.lang.getString("otherHeader")}}}});g.callParent(arguments)},getMimeCat:function(b){if(b&&b.indexOf("image/")==0){return"image"}else{if(b&&b.indexOf("video/")==0){return"video"}else{return"other"}}},onItemClick:function(q,B,w,z){var A=this,g=z.target.classList,o=GeoMind.utils.SessionManager.ss.sessionId,h=Ext.fly(B);if(g.contains("icon-download")){return}z.preventDefault();if(g.contains("icon-fullsize")||g.contains("thumb-img")||g.contains("thumb-video")){var b=[];A.store.each(function(C){b.push({mime:C.data.mime,url:A.mediaDownloadUrl+C.data.uuid+"&gm_session_id="+o,text:C.data.comment})});Ext.create("Adaptive.ux.MediaLightbox",{url:b,currentIdx:w}
1).show()}else{if(g.contains("icon-caption")){if(B.getElementsByClassName("comment")[0].style.display!="none"){B.getElementsByClassName("comment")[0].style.display="none"}else{B.getElementsByClassName("comment")[0].style.display="block"}}else{if(g.contains("icon-delete")){A.fireEvent("deleteMedia",A,q)}else{if(g.contains("icon-edit")){A.fireEvent("editMedia",A,q)}else{A.fireEvent("selectMedia",A,q);if(h.hasCls("show-thumb-menu")){h.removeCls("show-thumb-menu")}else{h.addCls("show-thumb-menu")}}}}}}});Ext.define("Client.module.tool.digiTheme.ux.lang.MediaTags",{strings:{title:{en:"Tags",nb:"Tagger"},btnAdd:{en:"Add",nb:"Legg til"},removeTag:{en:"Remove tag",nb:"Fjern tag"},emptyStore:{en:"No tags defined",nb:"Ingen tagger satt"}}});Ext.define("Client.module.tool.digiTheme.ux.lang.MediaUpload",{strings:{no_location:{en:"No location set",nb:"Ingen posisjon valgt",nn:"Ingen posisjon valgt"},jpgNote:{en:"If location is not set, and the JPEG is geotagged, the geotag will be used",nb:"Hvis posisjon ikke settes, og JPEG-bildet har lokasjonsdata, så vil bildets lokasjon brukes"},the_geom:{en:"Location",nb:"Posisjon",nn:"Posisjon"},comment:{en:"Comment",nb:"Kommentar",nn:"Kommentar"},uploadFile:{en:"File",nb:"Fil",nn:"Fil"},btnSave:{en:"Save",nb:"Lagre",nn:"Lagre"},btnCancel:{en:"Cancel",nb:"Avbryt",nn:"Avbryt"},confirm_dirty_header:{en:"Unsaved changes",nb:"Ulagrede elementer",nn:"Ulagrede elementer"},confirm_dirty_text:{en:"Unsaved changes in form. Proceed?",nb:"Ulagrede elementer i skjema. Vil du fortsette?",nn:"Ulagrede elementer i skjema. Vil du fortsette?"},confirm_save_or_discard_text:{en:"Unsaved changes in form. Discard?",nb:"Ulagrede elementer i skjema. Forkast?",nn:"Ulagrede elementer i skjema. Forkast?"},empty_required:{en:"Please make a selection",nb:"Vennligst velg",nn:"Vennligst velg"},invalid_fields:{en:"The following fields are missing",nb:"Følgende felt mangler",nn:"Følgjande felt manglar"},uploadMediaErrorHeader:{en:"Error",nn:"Feil",nb:"Feil"},uploadMediaErrorBody:{en:"Media was not uploaded.",nn:"Media ble ikke lastet opp.",nb:"Media ble ikke lastet opp."},updateMediaErrorHeader:{en:"Error",nb:"Feil",nn:"Feil"},updateMediaErrorBody:{en:"Media was not updated.",nb:"Media ble ikke oppdatert.",nn:"Media ble ikke oppdatert."},tooLarge:{en:"The selected file is too large. Max size is {0}.<br>Your file is {1}.",nb:"Den valgte fila er for stor. Maks størrelse er {0}.<br>Din fil er {1}."},loading:{en:"Uploading...",nn:"Laster opp...",nb:"Laster opp..."},cancelUploadBody:{en:"Media was not uploaded. Proceed?",nb:"Media ble ikke lastet opp. Vil du fortsette?",nn:"Media ble ikke lastet opp. Vil du fortsette?"},cancelUpdateBody:{en:"Unsaved changes in form. Proceed?",nb:"Ulagrede endringer i skjema. Vil du fortsette?",nn:"Ulagrede endringar i skjema. Vil du fortsette?"},cancelUploadHeader:{en:"Confirm",nn:"Bekreft",nb:"Bekreft"},details:{en:"Details",nb:"Detaljer"},author:{en:"Author/Photographer",nb:"Forfatter/Fotograf"},isPublic:{en:"Public",nb:"Offentlig"},isPublic_help:{en:"Make the attachement for third party systems which don't require authentication.",nb:"Gjør vedlegget tilgjengelig for bruk av eksterne systemer som ikke krever innlogging"}},errCodes:{}});Ext.define("Client.module.tool.geoIntegrasjon.lang.GeoIntegrasjon",{strings:{mainBtnText:{en:"GeoIntegrasjon",nb:"GeoIntegrasjon"},mainBtnTip:{en:"Interact with case management system using GeoIntegrasjon",nb:"Kommuniser med sak- og arkiv-system via GeoIntegrasjon"},headerText:{en:"GeoIntegrasjon",nb:"GeoIntegrasjon"},kommunenr:{en:"Municipality",nb:"Kommunenr"},gardsnr:{en:"Lot",nb:"Gårdsnr"},bruksnr:{en:"Parcel",nb:"Bruksnr"},festenr:{en:"Lease",nb:"Festenr"},seksjonsnr:{en:"Section",nb:"Seksjonsnr"},bygningsnr:{en:"Building number",nb:"Bygningsnummer"},property:{en:"Property",nb:"Eiendom"},building:{en:"Building",nb:"Bygning"},errorTitle:{en:"Error",nb:"Feil"},notSupported:{en:"is not supported",nb:"er ikke støttet"},invalidPropertyParams:{en:"Invalid url parameters: kommunenummer, gaardsnummer og bruksnummer must be defined",nb:"Ugyldige url-parametere: kommunenummer, gaardsnummer og bruksnummer må være definert"},invalidBuildingParams:{en:"Invalid url parameters: bygningsnummer must be defined",nb:"Ugyldige url-parametere: bygningsnummer må være definert"},invalidGeometryParams:{en:"Invalid url parameters: geometri must be defined",nb:"Ugyldige url-parametere: geometri må være definert"}
1,invalidGeometry:{en:"Geometry: invalid json object",nb:"Geometry: ugyldig json-objekt"},propertyLoadError:{en:"An error occured while loading property",nb:"En feil oppstod ved lasting av eiendom"},buildingLoadError:{en:"An error occured while loading building",nb:"En feil oppstod ved lasting av bygning"},propertyNotFound:{en:"Property not found",nb:"Eiendom ikke funnet"},loadPropertyError:{en:"Property not found",nb:"Eiendom ikke funnet"},buildingNotFound:{en:"Building not found",nb:"Bygning ikke funnet"},lagomraadeWaitMsg:{nb:"Lagrer område..."},lagomraadeFailed_title:{nb:"Feil: Lag område"},lagomraadeFailed_msg:{nb:"Kunne ikke lagre område"},lagpunktWaitMsg:{nb:"Lagrer punkt..."},lagpunktFailed_title:{nb:"Feil: Lag punkt"},lagpunktFailed_msg:{nb:"Kunne ikke lagre punkt"}}});Ext.define("Client.module.tool.geoIntegrasjon.lang.LagOmraade",{strings:{headerText:{en:"Create polygon",nb:"Lag område"},btnSaveGeometry:{en:"Save polygon",nb:"Lagre område"},resetDrawingBtn:{en:"Reset polygon",nb:"Nullstill område"},geometryFromFile:{en:"Polygon from file",nb:"Område fra fil"},info_1:{en:"Create a new object by clicking in the map.",nb:"Start å tegne ved å klikke i kartet."},info_2:{en:"Finish by double clicking/tapping",nb:"Dobbeltklikk/dobbelttrykk for å avslutte"}}});Ext.define("Client.module.tool.geoIntegrasjon.lang.LagPunkt",{strings:{btnSaveGeometry:{en:"Save point",nb:"Lagre punkt"},resetDrawingBtn:{en:"Reset point",nb:"Nullstill punkt"},geometryFromFile:{en:"Point from file",nb:"Punkt fra fil"},headerText:{en:"Create point",nb:"Lag punkt"},info_1:{en:"Create a point by clicking in the map.",nb:"Tegne ved å klikke i kartet."},info_2:{en:"To move a drawn point press and hold the left mouse button. Then move it to desired position.",nb:"For å flytte på et tegnet punkt trykk og hold venstre museknapp nede. Flytt deretter punktet til ønsket posisjon."}}});Ext.define("Client.module.tool.geoIntegrasjon.UrlApi",{extend:Client.module.Generic,mixins:[Client.mixins.UrlApi,Client.mixins.UrlApiDraw],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.geoIntegrasjon.lang.GeoIntegrasjon");if(g.giOperations&&g.giOperations.hooks){g.hooks=Ext.create(g.giOperations.hooks,{map:g.map})}g.getUrlParams()},getUrlParams:function(){var J=this,B=GeoMind.utils.Url,D=B.getUrlParam("funksjon",true),C=B.getUrlParam("hint",true),F=B.getUrlParam("sesjon"),A=B.getUrlParam("link2"),h=[];if(!J.giOperations){return}if(D!=null&&!(J.giOperations.funksjon&&J.giOperations.funksjon[D])){h.push("funksjon="+D+" "+J.lang.getString("notSupported"))}if(C!=null&&!(J.giOperations.hint&&J.giOperations.hint[C])){h.push("hint="+C+" "+J.lang.getString("notSupported"))}if(h.length>0){Ext.Msg.show({title:J.lang.getString("errorTitle"),msg:h.join(", "),buttons:Ext.Msg.OK});return}switch(D){case"viseiendom":var q=B.getUrlParam("kommunenummer"),K=B.getUrlParam("gaardsnummer"),w=B.getUrlParam("bruksnummer"),z=B.getUrlParam("festenummer"),E=B.getUrlParam("seksjonsnummer");if(!q||!K||!w){Ext.Msg.show({title:J.lang.getString("errorTitle"),msg:J.lang.getString("invalidPropertyParams"),buttons:Ext.Msg.OK});return}var o={kommunenr:q,gardsnr:K,bruksnr:w};if(z){o.festenr=z}if(E){o.seksjonsnr=E}J.fireEvent("visEiendom",o);break;case"visbygning":var b=B.getUrlParam("bygningsnummer"),H=B.getUrlParam("endringsloepenummer");if(!b){Ext.Msg.show({title:J.lang.getString("errorTitle"),msg:J.lang.getString("invalidBuildingParams"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK});return}if(H){b+="-"+H}var g={bygningsnr:b};J.fireEvent("visBygning",g);break;case"visgeometri":var I=B.getUrlParam("geometri");if(!I){Ext.Msg.show({title:J.lang.getString("errorTitle"),msg:J.lang.getString("invalidGeometryParams"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK});return}try{I=Ext.JSON.decode(decodeURIComponent(I));I.forEach(function(L){if(L.koordsys){L.srid=J.koordsysToEpsg(L.koordsys)}});J.drawGeom("geometri",I)}catch(G){Ext.Msg.show({title:J.lang.getString("errorTitle"),msg:J.lang.getString("invalidGeometry"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK})}break}if(J.hooks&&J.hooks.getUrlParams){J.hooks.getUrlParams(B)}if(!(C&&F&&A)){return}J.fireEvent("activateModule",{hint:C,sesjon:F,link2:A})},koordsysToEpsg:function(g){var b={21:25831,22:25832,23:25833,24:25834,25:25835,26:25836,61:32631,62:32632,63:32633,64:32634,65:32635,66:32636,184:4326};return b[g]}});Ext.define("Client.module.tool.geoIntegrasjon.LagGeometri",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],lang:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.buildGui()},buildGui:function(){var b=this;b.geometryPicker=Ext.create("Adaptive.ux.GeometryUploader",{map:b.map,mapContainer:b.mapContainer,spatial_data_type:b.spatial_data_type,map_projection:b.map.getProjection(),readOnly:false,editableWkt:false,collapsed:true,collapsible:true,title:b.lang.getString("geometryFromFile"),inputLang:GeoMind.lang.Lang.registerTranslations("
1Client.module.tool.geoIntegrasjon.lang.GeometryPicker"),inputLangSingle:GeoMind.lang.Lang.registerTranslations("Client.module.tool.geoIntegrasjon.lang.GeometryPicker"),inputLangShape:GeoMind.lang.Lang.registerTranslations("Client.module.tool.geoIntegrasjon.lang.GeometryPicker"),listeners:{geometryChanged:function(g){b.view.down("#resetDrawingBtn").enable();b.view.down("#btnSaveGeometry").enable();b.wkt=g}}});b.geometryPicker.setVisible(true);b.view=b.createForm({buttonsInline:true,items:[b.createTextBox("info","info",{html:"<p>"+b.lang.getString("info_1")+"</p><p>"+b.lang.getString("info_2")+"</p>"}),b.createButton("resetDrawingBtn",false,{disabled:true,width:"100%",handler:b.resetDrawing,scope:b}),b.geometryPicker,b.createButton("btnSaveGeometry",true,{disabled:true,width:"100%",handler:function(){b.fireEvent("save",b.wkt)}})],cancelBtnConfig:false,warnBtnConfig:false,saveBtnConfig:false})},resetDrawing:function(){var b=this;b.geometryPicker.drawLayer.destroyFeatures();delete b.geometryPicker.currentFeature;b.view.down("#resetDrawingBtn").disable();b.view.down("#btnSaveGeometry").disable();b.geometryPicker.startPicker()},getHeader:function(){return this.lang.getString("headerText")},activate:function(){var b=this;b.geometryPicker.startPicker()}});Ext.define("Client.module.tool.geoIntegrasjon.GeoIntegrasjon",{extend:Client.module.ToolGeneric,mixins:[Adaptive.layer.Highlight,Client.mixins.UrlApi],internal_name:"av_geointegrasjon",btnCls:"a3-digi-theme",parentController:null,giOperations:null,btnHidden:true,constructor:function(b){var g=this;g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.geoIntegrasjon.lang.GeoIntegrasjon");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText");Ext.apply(g,b);g.callParent([b])},buildGui:function(){var b=this;b.lagPunkt=Ext.create("Client.module.tool.geoIntegrasjon.LagGeometri",{id:"lagpunkt",map:b.map,spatial_data_type:"point",lang:GeoMind.lang.Lang.registerTranslations("Client.module.tool.geoIntegrasjon.lang.LagPunkt"),listeners:{save:b.saveGeometry,scope:b}});b.lagOmraade=Ext.create("Client.module.tool.geoIntegrasjon.LagGeometri",{id:"lagomraade",map:b.map,spatial_data_type:"polygon",lang:GeoMind.lang.Lang.registerTranslations("Client.module.tool.geoIntegrasjon.lang.LagOmraade"),listeners:{save:b.saveGeometry,scope:b}});b.view=Ext.create("Ext.container.Container",{cls:"a3-modules-body",activeItem:0,layout:"card",items:[b.lagPunkt.view,b.lagOmraade.view]})},activate:function(){var b=this;if(!b.view){b.buildGui()}b.reportEvent("disableInfoTool")},deactivate:function(){var b=this;b.reportEvent("enableInfoTool");if(b.currentPage){b.currentPage.deactivate()}},afterMapReset:function(g){var b=this;if(!b.urlApi){b.urlApi=Ext.create("Client.module.tool.geoIntegrasjon.UrlApi",{map:b.map,mapContainer:b.mapContainer,giOperations:b.giOperations,urlApiConfig:b.urlApiConfig,defaultZoomLevel:b.defaultZoomLevel,listeners:{visEiendom:function(h){b.fetchProperty(h)},visBygning:function(h){b.fetchBuilding(h)},activateModule:function(h){b.giOperation=h;b.switchTool();switch(h.hint){case"lagpunkt":b.activatePage(b.lagPunkt);break;case"lagomraade":b.activatePage(b.lagOmraade);break}}}})}},switchTool:function(){var b=this;if(b.active){return}b.reportEvent("switchTools",b);b.reportEvent("showToolButton",b)},getTemplate:function(g){var h=this,b;switch(g){case"building":return['<tpl for=".">',"<dl>","<dt>"+h.lang.getString("kommunenr")+":</dt><dd>{KOMMUNENR}</dd>","<dt>"+h.lang.getString("bygningsnr")+":</dt><dd>{BYGNINGSNR}</dd>","<dl>","</tpl>"];case"property":return['<tpl for=".">',"<dl>","<dt>"+h.lang.getString("kommunenr")+":</dt><dd>{KOMMUNENR}</dd>","<dt>"+h.lang.getString("gardsnr")+":</dt><dd>{GARDSNR}</dd>","<dt>"+h.lang.getString("bruksnr")+":</dt><dd>{BRUKSNR}</dd>",'<tpl if="FESTENR > 0">',"<dt>"+h.lang.getString("festenr")+":</dt><dd>{FESTENR}</dd>","</tpl>",'<tpl if="SEKSJONSNR > 0">',"<dt>"+h.lang.getString("seksjonsnr")+":</dt><dd>{SEKSJONSNR}</dd>","</tpl>","<dl>","</tpl>"]}},fetchProperty:function(h,g){var b=this;Adaptive.utils.CadasterWfs.getProperty(h,b.map.projection.projCode,function(o){if
1(o.length==0&&h.seksjonsnr){delete h.seksjonsnr;b.fetchProperty(h,true)}else{if(o.error){Ext.Msg.show({title:b.lang.getString("errorTitle"),msg:b.lang.getString("loadPropertyError"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK})}else{if(o.length==0){Ext.Msg.show({title:b.lang.getString("errorTitle"),msg:b.lang.getString("propertyNotFound"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK})}else{if(o.length>0){b.highlightFeature(o);b.showFeature(o,"property")}}}}})},fetchBuilding:function(b,h){var g=this;Adaptive.utils.CadasterWfs.getBuilding(b,g.map.projection.projCode,function(o){if(o.error){Ext.Msg.show({title:g.lang.getString("errorTitle"),msg:g.lang.getString("propertyLoadError"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK})}else{if(o.length==0){Ext.Msg.show({title:g.lang.getString("errorTitle"),msg:g.lang.getString("buildingLoadError"),icon:Ext.Msg.WARNING,buttons:Ext.Msg.OK})}else{if(o.length>0){g.highlightFeature(o);g.showFeature(o,"building")}}}})},showFeature:function(g,b){var h=this;h.displayPointMsg(g[0].geometry.getCentroid(),g[0].data,b);h.zoomToFeature(g)},zoomToFeature:function(g){var o=this;if(g){var h=g[0].geometry.getBounds();for(var b=1;b<g.length;++b){h.extend(g[b].geometry.getBounds())}if(h){o.map.zoomToExtent(h.scale(1.2))}}},displayPointMsg:function(o,h,b){var g=this;if(!g.popup){g.popup=Ext.create("Ext.window.Window",{cls:"a3-geoint-popup",header:true,closable:true,anchorPosition:"auto",autoScroll:true,width:250,title:g.lang.getString(b)+":",tpl:g.getTemplate(b),data:h,padding:5,listeners:{close:g.closePopup,scope:g}});g.popup.showAt(g.mapContainer.getWidth()/2+50,g.mapContainer.getHeight()/2+50)}},closePopup:function(){var b=this;b.popup.destroy();delete b.popup;b.removehighlightLayer()},activatePage:function(g){var b=this;if(b.currentPage){b.currentPage.deactivate()}b.view.getLayout().setActiveItem(g.view);b.headerText=g.getHeader();b.adviseHeaderChange(b.headerText);g.activate();b.currentPage=g},saveGeometry:function(h){var g=this,b="WebServices/geointegrasjon/Kart.asmx/",o={geom:h,sesjonsid:g.giOperation.sesjon},w=g.giOperation.hint,q;switch(w){case"lagpunkt":q={punkt:o};b+="LagPunkt";break;case"lagomraade":q={omraade:o};b+="LagOmraade";break}if(!q){return}g.view.setLoading(g.lang.getString(w+"WaitMsg"));Ext.Ajax.request({url:b,jsonData:q,callback:function(A,B,z){g.view.setLoading(false);z=GeoMind.utils.Ajax.fixResponse(z);if(B&&z.success){window.location.href=decodeURIComponent(g.giOperation.link2)}else{Ext.Msg.show({title:g.lang.getString(w+"Failed_title"),msg:g.lang.getString(w+"Failed_msg")})}}})}});Ext.define("Client.module.tool.geoIntegrasjon.lang.GeometryPicker",{strings:{info:{en:"<p>Select either a KML or a SOSI file.</p>",nb:"<p>Last opp enten en KML eller en SOSI-fil.</p>"},shape_info:{en:"<p>Choose a shape file and optional coordinate system. Data might be drawn in the wrong place if you dont specify a coordinate system.</p>",nb:"<p>Velg en shape-fil og valgfritt koordinatsystem. Dersom du ikke velger et koordinatsystem kan dataene bli tegnet på feil sted i kartet.</p>"},singleFileTitle:{en:"KML/SOSI",nb:"KML/SOSI"}}});Ext.define("Client.module.tool.geodataDownload.lang.Lang",{strings:{header_main:{en:"Download",nb:"Nedlasting",nn:"Nedlasting"},mainBtnText:{en:"Download",nb:"Nedlasting",nn:"Nedlasting"},mainBtnTip:{en:"Download data",nb:"Last ned geodata",nn:"Last ned geodata"},filter:{en:"Filter",nb:"Filter"},theme:{en:"Theme",nb:"Tema"},file_format:{en:"File format",nb:"Filformat"},projection:{en:"Projection",nb:"Projeksjon"},radio_all_data:{en:"All data",nb:"Alle data"},radio_county_municipality:{en:"County/municipality",nb:"Fylke/kommune"},county_id:{en:"County",nb:"Fylke"},municipality_id:{en:"Municipality",nb:"Kommune"},radio_geometry:{en:"Geometry",nb:"Geometri"},email:{en:"Email",nb:"Epost"},btnSave:{en:"Order data",nb:"Bestill data"},radio_geometry_help:{en:"Draw area by clicking in the map. Double-click to end.",nb:"Tegn område ved å klikke i kartet. Dobbelklikk for å avslutte."},downloadOrderSuccessTitle:{en:"Download order registered",nb:"Bestilling registrert"},downloadOrderErrorTitle:{en:"Error",nb:"Feil"},downloadOrderSuccessMsg:{en:"You will recieve an email containing a download url in a short while",nb:"Du vil innen kort tid motta en epost med lenke til nedlasting"},downloadOrderErrorMsg:{en:"An error occured while placing download order",nb:"En feil oppsto ved bestilling av nedlasting"}}});Ext.define("Client.module.tool.geodataDownload.GeodataDownload",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Adaptive.layer.DrawInMap],btnCls:"a3-data-download",internal_name:"av_geodata_download",projections:null,activatedLayers:[],constructor:function(g){var h=this,b=[];
1h.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.geodataDownload.lang.Lang");h.btnText=h.lang.getString("mainBtnText");h.btnTip=h.lang.getString("mainBtnTip");h.headerText=h.lang.getString("header_main");Ext.each(h.projections,function(o,q){b.push(Ext.apply({id:q+1},o))});h.projections=b;Ext.apply(h,g);h.callParent([g])},buildGui:function(){var h=this;h.countyStore=Ext.create("GeoMind.data.store.DataView",{model:"Client.module.tool.geodataDownload.model.Combo",serviceUrl:"WebServices/utils/County.asmx/",serviceMethods:{read:"GetCountyById"},autoLoad:true,listeners:{load:{fn:function(){this.insert(0,{value:null,text:"Alle fylker"})}}}});h.municipalityStore=Ext.create("GeoMind.data.store.DataView",{model:"Client.module.tool.geodataDownload.model.Combo",serviceUrl:"WebServices/utils/Municipality.asmx/",serviceMethods:{read:"GetMunicipalityByCountyId"},autoLoad:true,listeners:{load:{fn:function(){this.insert(0,{value:null,text:"Alle kommuner"})}}}});var g=[{id:"ESRI Shapefile",text:"ESRI Shapefile"},{id:"KML",text:"Google Earth KML"},{id:"GML",text:"Geography Markup Language (GML)"},{id:"GEOJSON",text:"GeoJSON"}];if(h.isNorwegianInstance){g.push({id:"sosi",text:"SOSI"})}h.formatStore=new Ext.data.Store({fields:["id","text"],data:g});h.projectionStore=new Ext.data.Store({fields:["id","value","description","coordinateFormat"],data:h.projections});var b=h.createSet("",{collapsed:false,collapsible:false},[h.createField("theme",{xtype:"combo",queryMode:"local",store:h.themeStore,displayField:"name",valueField:"uuid",required:true,multiSelect:true,listeners:{change:h.onComboSelect,scope:h}}),h.createField("file_format",{xtype:"combo",valueField:"id",displayField:"text",store:h.formatStore,required:true,listeners:{change:function(z,w){var q=h.view.down("[dataIndex=projection]");if(w=="KML"){q.setValue("4326");q.setDisabled(true)}else{if(q.isDisabled()){q.setDisabled(false)}}},scope:h}}),h.createField("projection",{xtype:"combo",store:h.projectionStore,required:true,valueField:"value",displayField:"description",value:h.map.getProjectionObject().proj.srsProjNumber||"4326"})]);var o=h.createSet("filter",{collapsible:false,collapse:false},[h.createField("radio_all_data",{name:"filter",xtype:"radio",checked:true,listeners:{change:h.onChange,scope:h}}),h.createField("radio_county_municipality",{name:"filter",xtype:"radio",hidden:!h.isNorwegianInstance,listeners:{change:h.onChange,scope:h}}),h.createField("county_id",{xtype:"combo",store:h.countyStore,displayField:"text",valueField:"value",dependency:{field:"radio_county_municipality",value:true},listeners:{change:function(z,A,q,w){h.view.down("[dataIndex=municipality_id]").reset();h.municipalityStore.clearFilter();if(A){h.municipalityStore.filter([{filterFn:function(B){return(~~(B.get("value")/100)==A||B.get("value")==null)}}])}},scope:h}}),h.createField("municipality_id",{xtype:"combo",store:h.municipalityStore,displayField:"text",valueField:"value",dependency:{field:"radio_county_municipality",value:true}}),h.createField("radio_geometry",{name:"filter",xtype:"radio",listeners:{change:h.onChange,scope:h}}),h.createField("radio_geometry_help",{xtype:"displayfield",hideLabel:true,value:h.lang.getString("radio_geometry_help"),dependency:{field:"radio_geometry",value:true}}),h.createField("email",{vtype:"email",required:true})]);h.view=h.createForm({noScroll:false,cls:"a3-modules-body a3-form",buttonsInline:true,cancelBtnConfig:false,items:[b,o]})},onSave:function(){var o=this,q=o.getData(),w=o.view.down("[dataIndex=municipality_id]").getValue(),g=o.view.down("[dataIndex=county_id]").getValue(),h=o.view.down("[dataIndex=radio_county_municipality]").checked,b=q.projection?q.projection:"4326";o.view.setLoading();Ext.Ajax.request({url:"WebServices/client/GeodataDownload.asmx/OrderDownload",method:"POST",params:Ext.encode({theme_uuids:q.theme,projection:"EPSG:"+b,email:q.email,out_format:q.file_format,filterWkt:o.wkt?o.wkt:null,filterWktEpsg:o.wktEpsg?o.wktEpsg:null,countyId:h?g:null,municipalityId:h?w:null}),headers:{"Content-Type":"application/json"},callback:o.onOrderDataCallback,scope:o})},onOrderDataCallback:function(g,o,b){var h=this;
1h.view.setLoading(false);b=GeoMind.utils.Ajax.fixResponse(b);if(!b.success||!o){Ext.Msg.show({title:h.lang.getString("downloadOrderErrorTitle"),msg:h.lang.getString("downloadOrderErrorMsg"),buttons:Ext.Msg.OK,icon:Ext.Msg.ERROR});return}Ext.Msg.show({title:h.lang.getString("downloadOrderSuccessTitle"),msg:h.lang.getString("downloadOrderSuccessMsg"),buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})},activate:function(){var h=this;h.active=true;if(!h.view){h.buildGui()}else{var b=h.view.down("[dataIndex=theme]").getValue(),g=h.view.down("[dataIndex=radio_geometry]").getValue();if(b){h.activateLayers(b)}if(g){h.addDrawControl("polygon")}}},deactivate:function(){var b=this;b.removeDrawControl();Ext.Array.each(b.activatedLayers,function(g){g.layer.setVisibility(false)});b.activatedLayers=[]},onChange:function(b,h){var g=this;delete g.wkt;delete g.wktEpsg;if(h){switch(b.dataIndex){case"radio_all_data":case"radio_county_municipality":g.removeDrawControl();break;case"radio_geometry":g.addDrawControl("polygon");break}}},onComboSelect:function(h,g){var b=this;b.activateLayers(g)},activateLayers:function(g){var b=this;Ext.Array.each(b.activatedLayers,function(o){if(g.indexOf(o.uuid)==-1){var h=o.layer.record;b.reportEvent("activateTheme",{checked:false,category:h.get("catUuid"),layer:h.get("uuid")})}});b.activatedLayers=[];b.map.getLayers().forEach(function(q){if(q.group==20&&q.record){var o=Adaptive.utils.Config.getThemeData(q.record);if(o&&!o.is_digi_theme&&g.indexOf(o.theme_uuid)>-1){var h=q.record;b.reportEvent("activateTheme",{checked:true,category:h.get("catUuid"),layer:h.get("uuid")});b.activatedLayers.push({uuid:o.theme_uuid,layer:q})}}})},afterMapReset:function(o){var h=this,g=GeoMind.utils.Map.flattenUnifiedMapConfig(o.data.unifiedMapCfg),q,b=[];if(!h.themeStore){h.themeStore=Ext.create("Ext.data.Store",{fields:["uuid","name","comment","themeid"],data:[],sorters:[{property:"name"}]})}h.themeStore.removeAll();Ext.Array.each(g.layers,function(w){q=Adaptive.utils.Config.getThemeData(w);if(w.data.is_exportable){if(b.indexOf(q.theme_uuid)===-1){h.themeStore.add({uuid:q.theme_uuid,name:q.metadata.dc_title,comment:"",theme_id:""});b.push(q.theme_uuid)}}})},onFeatureAdded:function(b){var g=this;g.wkt=new OpenLayers.Format.WKT().write(b.feature);g.wktEpsg=g.map.getProjection()}});Ext.define("Client.module.tool.geodataDownload.model.Combo",{extend:GeoMind.data.model.Base,fields:[{name:"value",type:"int",defaultValue:null,useNull:true},{name:"text",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}],config:{fields:this.fields}});Ext.define("Client.module.tool.layerDimension.filter.lang.Filter",{strings:{customDimensionBtn:{en:"Set filter",nb:"Sett filter"},filterName:{en:"Filter name (optional)",nb:"Navngi filteret (valgfritt)"},name:{en:"Layer name",nb:"Filtrer søket etter"},comparisonOperator:{en:"Operator",nb:"Sammenligningsvilkår"},value:{en:"Value",nb:"Verdi"},valueText:{en:"Value",nb:"Verdi"},valueNumber:{en:"Value",nb:"Verdi"},valueDate:{en:"Value",nb:"Verdi"},emptyText:{en:"None selected",nb:"Ingen valgte"},opBooleanTrue:{en:"Yes",nb:"Ja"},opBooleanFalse:{en:"No",nb:"Nei"},opArrayCompare:{en:"Contains (&&)",nb:"Inneholder (&&)"},opNumberEqual:{en:"Equal to (=)",nb:"Er lik (=)"},opNumberLessThan:{en:"Less than (<)",nb:"Mindre enn (<)"},opNumberGreaterThan:{en:"Greater than (>)",nb:"Større enn (>)"},opNumberLessThanOrEqual:{en:"Less than or equal (<=)",nb:"Mindre enn eller lik (<=)"},opNumberGreaterThanOrEqual:{en:"Greater than or equal (>=)",nb:"Større enn eller lik (>=)"},opStringEqual:{en:"Equal to (=)",nb:"Er lik (=)"},opStringNotEqual:{en:"Not equal to (<>)",nb:"Er ulik (<>)"}}});Ext.define("Client.module.tool.layerDimension.filter.Filter",{extend:Ext.form.Panel,mixins:[Adaptive.form.mixins.Generator],dataType:{_number:1,_string:2,_boolean:3,_date:4,_array:5},operator:{_number:["=","<",">","<=",">="],_string:["LIKE","NOT LIKE"],_boolean:["= true","= false"],_date:["=","<",">","<=",">="],_array:["&&"]},layout:{type:"vbox",align:"stretch"},filterableColumns:[],constructor:function(b){var g=this;Ext.apply(g,b);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerDimension.filter.lang.Filter");g.callParent(arguments)},initComponent:function(){var g=this,b=g.filterableColumns.map(function(h){return{id:h.column_name,name:h.name,data_type:h.data_type}});g.columnCombo=g.createFilterCombo("name",{store:Ext.create("Ext.data.Store",{fields:["id","name","data_type"],data:b}),listeners:{scope:g,select:g.onColumnSelect}});g.operatorCombo=Ext.widget(g.createFilterCombo("comparisonOperator",{disabled:true,listeners:{scope:g,select:g.onOperatorSelect}}));g.valueText=Ext.widget(g.createField("valueText",{xtype:"textfield",disabled:true}));g.valueNumber=Ext.widget(g.createField("valueNumber",{xtype:"numberfield",hidden:true}));g.valueDate=Ext.widget(g.createField("valueDate",{xtype:"datefield",hidden:true,getValue:function(){return this.getRawValue()}}));g.valueCombo=Ext.widget(g.createFilterCombo("value",{hidden:true,editable:false,multiSelect:false}));g.items=[g.createField("filterName"),g.columnCombo,g.operatorCombo,g.valueText,g.valueNumber,g.valueDate,g.valueCombo];g.roleStore=Client.data.model.Role.getGroupRoleStore(true);g.callParent(arguments)},getValueField:function(){var b=this;if(b.valueCombo.isVisible()){return b.valueCombo}else{if(b.valueNumber.isVisible()){return b.valueNumber}else{if(b.valueDate.isVisible()){return b.valueDate}else{return b.valueText}}}},isValid:function(){var g=this,b=g.getValueField();if(!g.columnCombo.isValid()){return false}if(!g.operatorCombo.isValid()){return false}return b.isValid()},getValues:function(){var o=this,h=o.isValid(),g=o.getValueField(),b,q;if(!h){return false}b=o.columnCombo.getValue();q=g.multiSelect?g.getValue().join(","):g.getValue();return{id:o.id,name:b,comparisonOperator:o.operatorCombo.getValue(),value:q,netType:o.filterableColumns.filter(function(w){return w.column_name==b})[0].data_type,isArray:g.multiSelect,valueStore:g===o.valueCombo?g.store:null}},setValues:function(h){var g=this,b;g.columnCombo.setValue(h.name);g.onColumnSelect();g.operatorCombo.setValue(h.comparisonOperator);g.onOperatorSelect(g.operatorCombo);b=g.getValueField();b.setValue(h.value);if(h.isArray){g.valueCombo.setValue(h.value.split(","))}g.id=h.id},reset:function(){var b=this;b.form.reset();b.operatorCombo.setDisabled(true);b.resetValue();delete b.id},resetValue:function(){var b=this;b.valueCombo.setEditable(false);b.valueCombo.clearValue();b.valueCombo.hide();b.valueNumber.setValue(null);b.valueNumber.hide();b.valueDate.setValue(null);b.valueDate.hide();b.valueText.setValue(null);b.valueText.setDisabled(true);b.valueText.show()},hideAllValueFields:function(){var b=this;b.valueCombo.hide();b.valueNumber.hide();b.valueDate.hide();b.valueText.hide()},getDataType:function(g){var b=this;switch(g){case"521e4fed-87f5-4cfa-9911-94f98afcb708":case"404c8d64-3727-476f-8631-3fbd03ca738b":case"4b2a5e2d-c2ac-4822-b486-07e3989e0eed":case"61980343-edc4-4acc-be16-c313711b9fd4":case"f37929f7-12b0-46f7-a681-026e6a554cba":return b.dataType._number;case"4d2ff201-1757-4133-aeda-ea5217c1d6f6":return b.dataType._boolean;case"154627bd-2b5e-4ecb-97ef-c4af7d3e01c6":case"2a76ddc3-2d32-4476-82ae-58ce06dd5652":case"39a354c5-ea82-4bfd-b7db-2628984fcd6e":return b.dataType._date;case"bc8e073b-12bd-42c3-b087-1ea3b5472e5f":case"70a9e6e4-665b-405b-8bf9-75d5ad149d89":case"ab306a41-79c3-44b3-ba59-0791be20889f":return b.dataType._array;default:return b.dataType._string}},getOperator:function(b){var g=this;switch(b){case g.dataType._number:return g.operator._number;case g.dataType._boolean:return g.operator._boolean;case g.dataType._date:return g.operator._date;case g.dataType._array:return g.operator._array;default:return g.operator._string}},createFilterCombo:function(h,g){var o=this,b={xtype:"combo",addClearTrigger:false,displayField:"name",editable:false,allowBlank:false,emptyText:o.lang.getString("emptyText"),store:Ext.create("Ext.data.Store",{fields:["id","name"],data:[]}),valueField:"id",queryMode:"local"};return Ext.widget(o.createField(h,Ext.merge(b,g)))},loadValues:function(g,b){var o=this,h=b==o.dataType._date;Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadFiltered",method:"POST",timeout:120000,jsonData:{theme_uuid:o.theme_uuid,columns:[g],filter:{greedy:true,filterColumns:[],columns:[g],distinctColumns:[{name:g}],sortColumns:[{name:g,sortDesc:false}]}},callback:function(w,z,q){q=GeoMind.utils.Ajax.fixResponse(q);if(q.success){o.valueCombo.store.loadRawData(q.records.map(function(A){var B=h?Ext.Date.format(GeoMind.utils.Date.fixD
1ate(A[g]),"Y-m-d"):A[g];return{id:B,name:B}}));if(o.valueCombo.store.data.items.length>50){o.valueCombo.setEditable(true)}o.hideAllValueFields();o.valueCombo.show()}}})},loadDictValues:function(b){var o=this,h=Adaptive.utils.Config.getConfig(b.config.configs,"dict_data_source"),q=Adaptive.utils.Config.getConfig(b.config.configs,"dict_key_column"),g=Adaptive.utils.Config.getConfig(b.config.configs,"dict_value_column");Ext.Ajax.request({url:"WebServices/client/DataView.asmx/ReadFiltered",method:"POST",timeout:120000,jsonData:{theme_uuid:h,columns:[q,g],filter:{sortColumns:[{name:g,sortDesc:false}]}},callback:function(z,A,w){w=GeoMind.utils.Ajax.fixResponse(w);if(w.success){o.valueCombo.store.loadRawData(w.records.map(function(B){return{id:B[q].toString(),name:B[g]}}));if(o.valueCombo.store.data.items.length>50){o.valueCombo.setEditable(true)}o.hideAllValueFields();o.valueCombo.show()}}})},loadRoleValues:function(b){var h=this,g=Adaptive.utils.Config.getConfig(b.config.configs,"allowed_roles");h.valueCombo.store.loadRawData(h.roleStore.data.items.reduce(function(q,o){if(g.contains(o.data.uuid)){q.push({id:o.data.uuid,name:o.data.name})}return q},[]));if(h.valueCombo.store.data.items.length>50){h.valueCombo.setEditable(true)}h.hideAllValueFields();h.valueCombo.show()},onOperatorSelect:function(A,h,o){var w=this,z=w.columnCombo.getValue(),q=w.filterableColumns.filter(function(B){return B.column_name==z})[0],g=w.getDataType(q.data_type),b=q.column_name;if(g==w.dataType._string){w.valueCombo.clearValue();if(A.value=="IN"){Ext.apply(w.valueCombo,{multiSelect:true})}else{Ext.apply(w.valueCombo,{multiSelect:false})}w.loadValues(b,g)}else{if(g==w.dataType._number){w.hideAllValueFields();w.valueNumber.show()}else{if(g==w.dataType._date){w.hideAllValueFields();w.valueDate.show()}else{if(g==w.dataType._boolean){w.hideAllValueFields()}else{if(g==w.dataType._array){w.valueCombo.clearValue();Ext.apply(w.valueCombo,{multiSelect:true});if(b=="_acl"){w.loadRoleValues(q)}else{w.loadDictValues(q)}}else{w.valueText.setDisabled(false)}}}}}},onColumnSelect:function(){var o=this,g=o.columnCombo.store.getById(o.columnCombo.getValue()),h=o.getDataType(g.get("data_type")),b=o.getOperator(h).map(function(q){return{id:q,name:o.getOperatorLang(q)}});o.operatorCombo.clearValue();o.operatorCombo.store.loadRawData(b);o.operatorCombo.setDisabled(false);o.resetValue();if(h==o.dataType._boolean){o.hideAllValueFields()}if(o.operatorCombo.store.data.length==1){o.operatorCombo.setValue(o.operatorCombo.store.data.items[0].data.id);o.operatorCombo.setDisabled(true);o.onOperatorSelect(o.operatorCombo)}},getOperatorLang:function(g){var b=this;switch(g){case"= true":return b.lang.getString("opBooleanTrue");case"= false":return b.lang.getString("opBooleanFalse");case"&&":return b.lang.getString("opArrayCompare");case"=":return b.lang.getString("opNumberEqual");case"<":return b.lang.getString("opNumberLessThan");case">":return b.lang.getString("opNumberGreaterThan");case"<=":return b.lang.getString("opNumberLessThanOrEqual");case">=":return b.lang.getString("opNumberGreaterThanOrEqual");case"LIKE":return b.lang.getString("opStringEqual");case"NOT LIKE":return b.lang.getString("opStringNotEqual");default:return g}}});Ext.define("Client.module.tool.layerManagerActive.lang.Standard",{strings:{title:{en:"Sort layers",nb:"Sorter temalag"},tooltip:{en:"Manage draw order of layers",nb:"Håndter tegnerekkefølge på temalag"},not_in_scale_info:{en:"Not in scale",nb:"Ikke innenfor målestokken"},opacity:{en:"Opacity",nb:"Ugjennomsiktighet"},btnShowDC:{en:"Show Dublin Core metadata",nb:"Vis Dublin Core metadata"},btnShowCsw:{en:"Show metadata for layer",nb:"Vis metadata for layer"},btnBack:{en:"Back",nb:"Tilbake"},show_category_layers:{en:"Select layers in this group",nb:"Velg temalag i gruppen"},infoAll:{en:'You can make layers visible in the map by ticking the checkbox in front of the layer names below. Layers are added to the map in the order that they are ticked off by the user. The second layer made visible will be drawn on top of the first, the third on top of the second etc. To alter the drawing order, please use "visible layers" tab.'},info:{en:'<p>Layers that have been made visible in the map are listed below. "Drag" layers up/down in the list to alter the drawing order. The first layer in the list is drawn on top of the second layer, the second on top of the third etc. with the basemap being drawn at the bottom. Click the "X" in front of the layer name to remove a layer from the map, layers can be added again at any time from the "all layers" tab.',nb:'<p>Temalag som er blitt gjort synlige i kartet listes opp nedenfor. Du kan "dra" temalagene opp/ned i listen for å endre tegnerekkefølge. Første temalag i listen tegnes over det andre temalaget, det andre temalaget tegnes over det tredje temalaget osv. Klikk på "X"-en foran temalagnavnet for å fjerne temalaget fra kartet, temalag kan når som helst legges til igjen fra arkfanen "alle temalag".'}},errCodes:{}});Ext.define("Client.module.tool.layerManagerActive.Standard",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator,Client.module.map.layerManager.mixins.LayerManagerTree,Client.module.map.layerManager.mixins.Metadata],internal_name:"av_layer_manager_active",headerText:null,active:false,disableCheckboxes:true,enableRemovableLayer:true,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);
1g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.layerManagerActive.lang.Standard");g.metaDataLang=GeoMind.lang.Lang.registerTranslations("Client.module.map.layerManager.lang.Metadata")},buildGui:function(){var b=this;b.layerTree=b.createTree(true,true);b.layerTree.on("updateMapState",b.onUpdateMapState,b);b.layerTree.view.anchor="100% 100%";b.layerTree.view.padding=0;b.layerTree.view.overflowY="hidden";b.info=b.createTextBox("info");b.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},overflowY:"auto",title:b.lang.getString("title"),tooltip:b.lang.getString("tooltip"),items:[b.info,b.layerTree.view]});b.reportEvent("layerManagerAddTab",b.view)},fireUpdateMapState:function(){var b=this,g=b.getLayersVisibilityEvtData();if(Ext.isArray(g.records)){var h={evtName:"updateMapState",evtInitiatingModule:b,callback:null,data:g};h.data.group=20;b.dispatchEvent(h)}},onUpdateMapState:function(g){var b=this;if(g.type=="layersOrderChanged"){g=b.getLayersVisibilityEvtData();var h={evtName:"updateMapState",evtInitiatingModule:b,evtSuperInitiatingModule:b,evtBroadcastingController:null,callback:null,data:g};h.data.group=20;b.dispatchEvent(h,{confirmationRequired:false})}},getNodeVisibility:function(g,h){var b=this,o={uuid:g.get("recordData").get("uuid")};if(!g.get("checked")){return}if(g.childNodes.length){o.children=[];g.childNodes.forEach(function(q){b.getNodeVisibility(q,o.children)})}h.push(o)},_onBeforeUpdateMapState:function(B){if(!this.layerTree){return}var z=this,g=B.data.records,b=B.data.append,A=z.layerTree.store.getRootNode(),w=[],h=[],q=[];function o(D){var C;Ext.each(g,function(E){if(E.recordData._uqid==D){C=E;return false}});return C}if(!b){q=A.childNodes.filter(function(C){return !o(C.get("recordData")._uqid)})}Ext.each(g,function(F,C){if(F&&!F.recordData.get("is_base_layer")){var G=F.recordData._uqid,E=z.findLeaf(A,G),D=F.recordData;if(F.checked&&!E){D.data.visibility=true;h.push(A.createNode(D))}}});if(q.length>0){z.layerTree.removeNode(q)}if(h.length>0){z.layerTree.addNode(h)}evtData=z.getLayersVisibilityEvtData();B.data.records=evtData.records},findLeaf:function(g,o){var h=this,b;Ext.each(g.childNodes,function(q){if(o==q.get("recordData")._uqid){b=q}return b||h.findLeaf(q,o)});return b},getLayersVisibilityEvtData:function(){var h=this,g=h.layerTree.store.getRootNode();var b={type:"layersVisibilityChanged",records:h.getRecords(g)};b.records.reverse();return b},getRecords:function(h,b){var g=this,b=b||[];if(h.get("type")=="layer"){b.push({checked:true,recordData:h.get("recordData")})}else{if(h.childNodes.length>0){h.childNodes.forEach(function(o){g.getRecords(o,b)})}}return b},beforeMapReset:function(b){var g=this;if(g.view){g.view.destroy()}},afterMapReset:function(g){var b=this;if(!b.view){b.buildGui()}},_onGetStorableData:function(h){var g=this,b;h.data.sortedThemes=g.map.wmsLayersVisible.map(function(o){b=Adaptive.utils.Config.getThemeData(o.record);return(b&&b.theme_uuid)||o.record.get("uuid")})},_onLayerManagerRefreshView:function(){this.refresh()},refresh:function(){var b=this,g;if(b.layerTree&&b.layerTree.view.isVisible()){g=b.view.el.cacheScrollValues();b.layerTree.view.getView().refresh();g()}},_onAutoRefreshStopped:function(){this.refresh()},_onLayerIsFailing:function(){this.refresh()},_onDataviewFilterUpdate:function(){this.refresh()}});Ext.define("Client.module.tool.print.lang.Standard",{strings:{mainBtnText:{en:"Print",nb:"Skriv ut",nn:"Skriv ut"},mainBtnTip:{en:"Print map",nb:"Skriv ut kart",nn:"Skriv ut kart"},headerText:{en:"Print map",nb:"Skriv ut kart",nn:"Skriv ut kart"}},errCodes:{}});Ext.define("Client.module.tool.print.Standard",{extend:Client.module.ToolGeneric,btnCls:"a3-print-tool-main-btn",btnText:null,btnTip:null,internal_name:"av_print_shortcut",headerText:null,printServiceUrl:null,shareServiceUrl:null,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.print.lang.Standard");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText");g.sharePrint=Ext.create("Client.module.tool.share.Print",{backButton:false,printAreaData:g.printAreaData,gridWmsUrl:g.gridWmsUrl,serviceUrl:g.printServiceUrl});g.mapLvlController.registerModule(g.sharePrint);g.buildGui()},buildGui:function(){var b=this;b.view=Ext.create("Ext.container.Container",{layout:"card",padding:10,
1cls:"a3-modules-body",items:[b.sharePrint.view]});b.adviseHeaderChange(b.sharePrint.getHeader())},activate:function(){var b=this;b.sharePrint.activate();b.sharePrint.on("ready",function(){b.view.getLayout().setActiveItem(b.sharePrint.view);b.sharePrint.setMode("standard")},b,{single:true})},deactivate:function(){this.sharePrint.deactivate()}});Ext.define("Client.module.tool.report.lang.ReportBuilder",{strings:{mainBtnText:{en:"Overlay analysis",nb:"Område-analyse"},mainBtnTip:{en:"Create overlay analysis for a given map extent and your active drawn polygons",nb:"Lag områdeanalyser for utvalgt kartutsnitt og dine aktive tegnede flater"},headerText:{en:"Overlay analysis",nb:"Områdeanalyse"},fcReport:{en:"Report",nb:"Rapport"},reportTitle:{en:"Title",nb:"Tittel"},reportDescription:{en:"Description",nb:"Beskrivelse"},fcLayers:{en:"Active layers",nb:"Aktive tema"},btnSave:{en:"Create report",nb:"Lag rapport"},invalid_fields:{en:"Mandatory fields:",nb:"Påkrevde felt:"},nolayersWarning:{en:"You need to select at least one layer!",nb:"Du må velge minimum et tema!"},fcOverlays:{en:"Active overlays",nb:"Aktive flater"},noOverlaysWarning:{en:"You need to activate at least one polygon overlay in draw and measure!",nb:"Du må aktivere minimum en flate i tegn og mål!"},noName:{en:"Object without name",nb:"Objekt uten navn"}},errCodes:{}});Ext.define("Client.module.tool.report.ReportBuilder",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],internal_name:"av_reportbuilder",btnCls:"a3-report-tool-main-btn",parentController:null,isGuest:true,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.report.lang.ReportBuilder");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText")},buildGui:function(){var b=this;b.reportForm=b.mapLvlController.registerModule("Client.module.tool.report.ReportBuilderForm",{map:b.map,serviceUrl:b.serviceUrl,isGuest:b.isGuest});var g=[b.reportForm.view];b.reportForm.mon(b.reportForm,"reportCreated",function(){b.reportList.selectFirst=true;b.switchPage(b.reportList)},b);b.reportForm.mon(b.reportForm,"cancelCreate",function(){b.switchPage(b.reportList)},b);b.reportList=b.mapLvlController.registerModule("Client.module.tool.report.ReportBuilderList",{serviceUrl:b.serviceUrl});b.reportList.mon(b.reportList,"createNew",function(){b.switchPage(b.reportForm)},b);g.push(b.reportList.view);b.view=Ext.create("Ext.panel.Panel",{cls:"a3-modules-body no-padding",layout:"card",items:g})},switchPage:function(b){var g=this;if(g.currentPage!=b){g.currentPage.deactivate();g.currentPage=b}g.currentPage.isGuest=g.isGuest;g.currentPage.activate();g.view.getLayout().setActiveItem(g.currentPage.view)},activate:function(){var b=this;b.active=true;if(!b.view){b.buildGui()}b.currentPage=b.isGuest?b.reportForm:b.reportList;b.switchPage(b.currentPage)},deactivate:function(){var b=this;b.active=false;if(b.currentPage&&b.currentPage.deactivate){b.currentPage.deactivate()}},_onUserAuthenticated:function(){this.isGuest=false},_onUserSignedOut:function(){this.isGuest=true}});Ext.define("Client.module.tool.report.lang.ReportBuilderForm",{strings:{infoText:{en:"Add a title and description to start an analysis. At least one drawn area and one thematic map must be visible.<br><br>Be aware that the analysis will include all your active drawn polygons, even those outside the map extent.",nb:"For å gjøre en analyse må det legges inn en tittel og en beskrivelse. I tillegg må man aktivere minimum én tegnet flate og ett temakart.<br><br>OBS: Analysen vil gjelde for alle dine tegnede flater som er aktive, uavhengig om disse er i eller utenfor kartutsnittet!"},fcReport:{en:"Report",nb:"Rapport"},reportTitle:{en:"Title",nb:"Tittel"},reportDescription:{en:"Description",nb:"Beskrivelse"},fcLayers:{en:"Active layers",nb:"Aktive tema"},btnSave:{en:"Create report",nb:"Lag rapport"},btnCancel:{en:"Cancel",nb:"Avbryt"},invalid_fields:{en:"Mandatory fields:",nb:"Påkrevde felt:"},reportLayerLead:{en:"Layers:",nb:"Tema:"},reportVectorLead:{en:"Overlays:",nb:"Områder:"},legend_header:{en:"Legend",nb:"Tegnforklaring"}
1,loading:{en:"Creating report...",nb:"Lager rapport..."},nolayersWarning:{en:"You need to select at least one layer!",nb:"Du må velge minimum ett tema!"},fcOverlays:{en:"Active drawn poygons",nb:"Aktive tegnede flater"},noOverlaysWarning:{en:"You need to activate at least one polygon overlay in draw and measure!",nb:"Du må aktivere minimum én flate i tegn og mål!"},noName:{en:"Object without name",nb:"Objekt uten navn"},reportPageHeaderLead:{en:"Report for ",nb:"Rapport for "},desc:{en:"The table below show selected properties for objects within or intersecting your drawn polygons (please note that these may be outside the map extent). Total area for these objects and the intersected area of your drawn objects are show to the right.",nb:"Tabellen viser utvalgte egenskaper for de objektene som ligger i eller krysser dine tegnede flater (disse kan også ligge utenfor kartutsnittet). I tillegg viser den samlet areal for disse objektene og det areal som ligger innenfor de tegnede flater."},reportPageColumnNameHeader:{en:"Name",nb:"Navn"},reportPageColumnDescriptionHeader:{en:"Description",nb:"Beskrivelse"},reportPageColumnAreaHeader:{en:"Area",nb:"Areal"},reportPageColumnAreaIntersectionHeader:{en:"Intersecting area",nb:"Kryssende område"},reportPageColumnNameTotal:{en:"Total",nb:"Totalt"}},errCodes:{}});Ext.define("Client.module.tool.report.ReportBuilderForm",{extend:Client.module.Generic,mixins:[Adaptive.form.mixins.Generator],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent(arguments);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.report.lang.ReportBuilderForm");g.printLang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.share.lang.Print")},init:function(){var b=this;b.printEngine=Ext.create("GeoMind.print.Standard",{serviceUrl:b.serviceUrl,serviceMethods:b.serviceMethods,printProxy:b.printProxy,printAll:true,translateSettings:b.translateSettings,translateLang:b.translateLang,styleSettings:b.styleSettings,enableRotation:false,doPrintNonMergedLayers:true});b.printEngine.on("printEngine_PrintingFinished",b.onPrintFinished,b);b.printEngine.on("printEngine_ConfigReady",b.onPrintConfigReady,b);b.printEngine.on("printEngine_PrintExtentUpdated",b.onPrintExtentUpdated,b);b.printEngine.pullPrintConfig();b.createLayerStore();b.createOverlayStore()},buildGui:function(){var g=this;var b=new Ext.XTemplate("<ul>",'<tpl for=".">',"<li>","<h4>{name}</h4>","</li>","</tpl>","</ul>");var h={xtype:"dataview",cls:"a3-reportbuilder",itemSelector:"li",autoScroll:true};g.layersView=Ext.apply({store:g.layerStore,tpl:b},h);g.overlaysView=Ext.apply({store:g.overlayStore,tpl:b},h);g.view=g.createForm({items:[g.createTextBox("infoText","info",{}),g.createSet("fcReport",{collapsible:false,collapsed:false},[g.createField("reportTitle",{xtype:"textfield",required:true}),g.createField("reportDescription",{xtype:"textarea"})]),g.createSet("fcOverlays",{collapsible:false,collapsed:false},[g.createTextBox("noOverlaysWarning","warning",{hidden:true,dataIndex:"noOverlaysWarning"}),g.overlaysView]),g.createSet("fcLayers",{collapsible:false,collapsed:false},[g.createTextBox("nolayersWarning","warning",{hidden:true,dataIndex:"nolayersWarning"}),g.layersView])],buttonsInline:true,cancelBtnConfig:{hidden:g.isGuest}})},createLayerStore:function(){this.layerStore=Ext.create("Ext.data.Store",{storeId:"layerStore",fields:["layerId","name","description","theme_uuid","filters"]})},createOverlayStore:function(){this.overlayStore=Ext.create("Ext.data.Store",{storeId:"overlayStore",fields:["name"]})},showErrorMsg:function(b){var g=this;g.getItem(b).show()},hideErrorMsg:function(b){var g=this;g.getItem(b).hide()},layersSelected:function(){var b=this,g=(b.layerStore.count()>0);if(!g){b.showErrorMsg("nolayersWarning")}else{b.hideErrorMsg("nolayersWarning")}return g},overlaysSelected:function(){var b=this,g=(b.overlayStore.count()>0);if(!g){b.showErrorMsg("noOverlaysWarning")}else{b.hideErrorMsg("noOverlaysWarning")}return g},onSave:function(){var b=this;if(!b.layersSelected()){return}if(!b.overlaysSelected()){return}b.mask();b.notifyPaperConfigChange();b.printEngine.print()},onCancel:function(){this.fireEvent("cancelCreate")},onPrintFinished:function(g){var o=this;o.unmask();if(g.success){var b;var h="";if(g.exception){h="<br/><br/><b>"+o.printLang.getString("layoutFailure_Warning")+"</b><br/>"+o.printLang.getString("layoutFailure_Msg_part1")+'<span style="color: red;">'+g.exception.msg+"</span>"+o.printLang.getString("layoutFailure_Msg_part2")}else{if(h!=""){b=o.printLang.getString("callbackSuccess_MsgTitleFile");h=o.printLang.getString("callbackSuccess_MsgFile")+h}document.getElementById("file_download_iframe").src=g.fileLocation;if(!o.isGuest){o.fireEvent("reportCreated")}}if(h!=""){Ext.Msg.show({title:b,msg:h,buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})}}else{if(!g.aborted){var q=GeoMind.utils.Exceptions.getMsg(g,o.lang);if(q.length>0){Ext.Msg.show({title:o.printLang.getString("callbackFailure_MsgTitle"),msg:o.printLang.getString("callbackFailure_Msg1_part1")+q+o.printLang.getString("callbackFailure_Msg1_part2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}else{Ext.Msg.show({title:o.printLang.getString("callbackFailure_MsgTitle"),msg:o.printLang.getString("callbackFailure_Msg2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}}}},onPrintConfigReady:function(g){var b=this;if(!g.printConfig.success){Ext.Msg.show({title:b.printLang.getString("configurationFailed_MsgTitle"),msg:b.printLang.getString("configurationFailed_Msg"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}b.activate()},notifyPaperConfigChange:function(){this.printEngine.onPrintSettingsUpdated({paperConfig:this.grabPaperConfig(),dynamicData:this.getDynamicData()})},grabPaperConfig:function(){return{layoutName:"layout_report",size:"A4",resolution:"96 dpi",format:"pdf",landscape:false,scale:this.scale||this.map.getScale(),angle:0}},onPrintExtentUpdated:function(g){var b=this;b.scale=g.paperConfig.scale},getNames:function(){var b=[];
1this.overlayStore.data.items.forEach(function(g){b.push(g.get("name"))});return b},getDynamicData:function(){var g=this;var b=g.map.getProjectionObject();var h=[];g.layerStore.each(function(o){h.push(o.data)});return[{key:"reportHeader",value:g.getItem("reportTitle").getValue()},{key:"reportDescription",value:g.getItem("reportDescription").getValue()},{key:"reportLayerLead",value:g.lang.getString("reportLayerLead")},{key:"reportVectorLead",value:g.lang.getString("reportVectorLead")},{key:"names",value:g.getNames()},{key:"projection_info",value:{name:b.toString(),def:b.proj.defData}},{key:"mode",value:"report_builder"},{key:"printLegend",value:"right"},{key:"legendHeader",value:g.lang.getString("legend_header")},{key:"reportPageDynamicData",value:[{key:"reportPageColumnNameHeader",value:g.lang.getString("reportPageColumnNameHeader")},{key:"reportPageColumnDescriptionHeader",value:g.lang.getString("reportPageColumnDescriptionHeader")},{key:"reportPageColumnAreaHeader",value:g.lang.getString("reportPageColumnAreaHeader")},{key:"desc",value:g.lang.getString("desc")},{key:"reportPageColumnAreaIntersectionHeader",value:g.lang.getString("reportPageColumnAreaIntersectionHeader")},{key:"reportPageColumnNameTotal",value:g.lang.getString("reportPageColumnNameTotal")}]},{key:"polyCollection",value:g.polyCollection},{key:"layerMetadata",value:h}]},getUserData:function(){var b=this,g={evtName:"getUserObjects",evtInitiatingModule:b,callback:Ext.bind(b.setUserData,b),data:{noFilter:true}};b.dispatchEvent(g)},setUserData:function(o){var h=this,g=null,b=new OpenLayers.Format.WKT(),q=[];if(!h.overlayStore){h.createOverlayStore()}h.overlayStore.removeAll();o.data.features.forEach(function(w){if(w.geometry&&w.geometry.CLASS_NAME.indexOf("Polygon")>-1){var A=w.geometry.clone(),z=A.getBounds();q.push(w);h.overlayStore.add({name:w.attributes.name||h.lang.getString("noName")});if(!g){g=z}else{g.extend(z)}}});h.polyCollection=b.write(q);if(h.view){h.overlaysSelected()}if(g){h.setBounds(g)}},setBounds:function(h){var o=this,g=o.map.getProjectionObject(),w=h.scale(2),q=o.map.getZoomForExtent(w),z=o.printEngine.getMapScaleForZoom(q);o.printEngine.printPreviewExtent=new OpenLayers.Feature.Vector(w.toGeometry());o.map.zoomToExtent(w.scale(2));o.scale=o.printEngine.getSnappedScale(z);o.activatePrintPreview()},activatePrintPreview:function(){var b=this;b.printEngine.updatePrintExtent(0,b.scale);b.printEngine.resetPrintPreviewLayer();b.printEngine.printPreviewLayer.setVisibility(true);b.printEngine.printPreviewGhostLayer.setVisibility(true);b.notifyPaperConfigChange()},clearValues:function(){var b=this;b.getItem("reportTitle").setValue("");b.getItem("reportDescription").setValue("")},activate:function(){var b=this;b.callParent(arguments);if(!b.view){b.init();b.buildGui();return}b.view.down("[itemId=btnCancel]").setVisible(!b.isGuest);b.printEngine.setMap(b.map);b.active=true;b.getUserData();b.setCurrentLayers()},deactivate:function(){var b=this;b.callParent(arguments);b.clearValues();b.active=false;b.printEngine._deactivate();b.printEngine.cleanUp()},setCurrentLayers:function(){var b=this;if(!b.layerStore){b.createLayerStore()}b.layerStore.removeAll();map.getLayers().forEach(function(o){var h=o.record;if(h){if(o.getVisibility()&&!h.get("is_base_layer")&&h.get("layer_type_value")&&h.get("layer_type_value").toLowerCase()=="wms"){var w=Adaptive.utils.Config.getThemeData(h),g=w&&w.theme_uuid,q={theme_uuid:g,filters:{}};if(g){b.reportEvent("getServerFilter",q)}b.layerStore.add({layerId:h.get("id"),name:h.get("name"),description:h.get("description"),theme_uuid:g,filters:q.filters})}}});if(b.view){b.layersSelected()}},_onLayersVisibilityUpdated:function(){this.setCurrentLayers()}});Ext.define("Client.module.tool.report.lang.ReportBuilderList",{strings:{infoText:{en:"Create a new analysis or browse existing.",nb:"Lag nye analyser eller se gjennom eksisterende."},fcReports:{en:"Analysis",nb:"Analyser"},btnCreateNew:{en:"Create a new analysis",nb:"Lag en ny analyse"},deleteReport:{en:"Delete report",nb:"Slett rapporten"},deleteFailed:{en:"Delete failed!",nb:"Feil ved sletting!"},confirm_delete_report:{en:"Delete",nb:"Slett"},confirm_delete_report_text:{en:"Are you sure you want to delete that object?",nb:"Er du sikker på at du vil slette dette objektet?"}
1,reportsEmptyText:{en:"No analysis available",nb:"Ingen tilgjengelig analyser"},listItemDownloadTip:{en:"Click to download",nb:"Klikk for å laste ned"}},errCodes:{}});Ext.define("Client.module.tool.report.data.model.Report",{extend:Ext.data.Model,fields:["uuid","title","description","file_path","roleuuids",{name:"create_date",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}}]});Ext.define("Client.module.tool.report.ReportBuilderList",{extend:Client.module.Generic,mixins:[Adaptive.mixins.Notify,Adaptive.form.mixins.Generator],selectFirst:false,constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.report.lang.ReportBuilderList");g.reportStore=Ext.create("GeoMind.data.store.DataView",{model:"Client.module.tool.report.data.model.Report",serviceUrl:g.serviceUrl,serviceMethods:{read:"getReportList"},sorters:[{property:"create_date",direction:"DESC"}]})},buildGui:function(){var g=this;var b=new Ext.XTemplate('<ul class="links media">','<tpl for=".">','<li data-qtip="'+g.lang.getString("listItemDownloadTip")+'">',"<strong>{title}</strong> ",'<tpl if="description"><small>{description}</small></tpl>','<div class="date">{create_date:date("d.m.Y H.i")}','<a class="a3-right a3-icon icon-delete" data-qtip="'+g.lang.getString("deleteReport")+'"></a>',"</div></li>","</tpl>","</ul>");g.reportsView=Ext.create("Ext.view.View",{store:g.reportStore,tpl:b,itemSelector:"li",emptyText:g.lang.getString("reportsEmptyText"),cls:"a3-reportbuilder",listeners:{scope:g,itemclick:function(o,h,z,q,A){var C=A.target.id,B=A.target.classList,w=Ext.fly(z);if(B.contains("icon-delete")){Ext.Msg.confirm(g.lang.getString("confirm_delete_report"),g.lang.getString("confirm_delete_report_text"),function(D){if(D==="yes"){g.deleteReport(h.data.uuid)}},this)}else{document.getElementById("file_download_iframe").src=h.data.file_path}}},autoScroll:true});g.reportsView.on("refresh",g.onViewRefresh,g);g.view=g.createForm({items:[g.createTextBox("infoText","info",{}),g.createButton("btnCreateNew",{cls:"a3-submit-btn",handler:g.btnCreateNewClick,scope:g,width:"100%"}),g.createSet("fcReports",{collapsible:false,collapsed:false},[g.reportsView])],cancelBtnConfig:false,warnBtnConfig:false,saveBtnConfig:false,buttonsInline:true})},deleteReport:function(b){var g=this;Ext.Ajax.request({url:g.serviceUrl+"DeleteReport",method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},jsonData:{uuid:b},callback:function(o,w,h){var q=w&&GeoMind.utils.Ajax.fixResponse(h);if(!q||!q.success){g.showNotifyError(g.view,g.lang.getString("deleteFailed"))}else{g.reportStore.load()}}})},btnCreateNewClick:function(){this.fireEvent("createNew")},onViewRefresh:function(b,g){var h=this;h.selectFirst?b.getSelectionModel().select(0,false,true):b.getSelectionModel().deselectAll();h.selectFirst=false},activate:function(){var b=this;b.callParent(arguments);if(!b.view){b.buildGui()}b.reportStore.load();b.active=true},deactivate:function(){var b=this;b.callParent(arguments);b.active=false}});Ext.define("Client.module.tool.statistics.lang.Statistics",{strings:{mainBtnText:{en:"Statistics",nb:"Statistikk"},mainBtnTip:{en:"Show directions tool",nb:"Vis verktøy for veibeskrivelse"},headerText:{en:"Statistics",nb:"Statistikk"},btnBackToMain:{en:"Back to main page",nb:"Tilbake til hovedsiden"},btnBackToMain_tooltip:{en:"Close the statistics and go back to the main page",nb:"Lukk statistikken og gå tilbake til hovedsiden"}},errCodes:{}});Ext.define("Client.module.tool.statistics.Statistics",{extend:Client.module.ToolGeneric,mixins:[Adaptive.form.mixins.Generator],config:{serviceUrl:"webServices/administrator/modules/statistics/DataDownload.asmx/ListAllThemes",iFrameUrl:"http://statistikkui.avinet.no/embed.html?n=",extraParams:{select:"a3_theme"},btnCls:"a3-stat-client",btnText:null,btnTip:null,internal_name:"av_stat_client"},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent([b]);g.lang=GeoMind.lang.Lang.registerTranslations("Client.module.tool.statistics.lang.Statistics");g.btnText=g.lang.getString("mainBtnText");g.btnTip=g.lang.getString("mainBtnTip");g.headerText=g.lang.getString("headerText")},buildGui:function(){var b=this;b.treeStore=Ext.create("Ext.data.TreeStore",{fields:["id","text","uuid","a3_theme_uuid","a3_theme_id"]});b.treePanel=Ext.create("Ext.tree.Panel",{store:b.treeStore,rootVisible:false,listeners:{itemclick:function(h,g){if(g.get("leaf")){b.showGrid(g.get("uuid"));b.showLayer(g.get("a3_theme_uuid"))}}}});b.iframe=Ext.create("Ext.container.Container",{layout:"fit",flex:1});b.gridPanel=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[b.createLinkBtn("btnBackToMain",{backBtn:true,listeners:{scope:b,click:function(){if(b.activeLayer){b.activeLayer.setVisibility(false)}b.view.getLayout().setActiveItem(b.treePanel)}}}),b.iframe]});b.view=Ext.create("Ext.panel.Panel",{layout:"card",items:[b.treePanel,b.gridPanel]})},showGrid:function(b){var g=this;if(!b){return}g.iframe.removeAll();g.iframe.add([{autoScroll:true,xtype:"box",layout:"fit",autoEl:{tag:"iframe",frameborder:"0",src:g.iFrameUrl+b}}]);g.view.getLayout().setActiveItem(g.gridPanel)},showLayer:function(b){var h=this;if(h.activeLayer){h.activeLayer.setVisibility(false)}var g=h.map.getLayerByUuid(b);if(g){h.activeLayer=g;g.setVisibility(true)}},activate:function(){var b=this;if(!b.view){b.buildGui()}b.refreshTree()},refreshTree:function(){var b=this;b.treePanel.setRootNode(null);Ext.Ajax.request({url:b.serviceUrl,method:"POST",params:Ext.JSON.encode(b.extraParams),headers:{"Content-Type":"application/json; charset=utf-8"},scope:b,success:b.refreshTreeSuccess})},refreshTreeSuccess:function(b,h){var g=this;b=GeoMind.utils.Ajax.fixResponse(b);g.treePanel.setRootNode(b)}});Ext.define("Client.module.tool.toolPage.data.model.ToolPage",{extend:GeoMind.data.model.Base,fields:[{name:"title"},{name:"content"}],config:{fields:this.fields}});Ext.define("Client.module.tool.toolPage.data.store.ToolPage",{extend:Ext.data.Store,model:"Client.module.tool.toolPage.data.model.ToolPage",proxy:{type:"aja
1x",actionMethods:{read:"POST",update:"POST"},headers:{"Content-Type":"application/json; charset=utf-8"},paramsAsJson:true,extraParams:{extraParams:[],filter:{}},reader:{type:"json",root:"d.records",totalProperty:"total"},writer:{type:"json",root:"data"},api:{read:"WebServices/toolPage/ToolPage.asmx/Read",update:"WebServices/toolPage/ToolPage.asmx/Update"}}});Ext.define("Client.module.tool.userData.lang.Grid",{strings:{visible:{pl:"Widoczna",en:"Visible",nb:"Synlig",nn:"Synlig"},name:{pl:"Nazwa",en:"Name",nb:"Navn",nn:"Navn"},type:{pl:"Typ",en:"Type",nb:"Type",nn:"Type"},_delete:{pl:"UsuÅ",en:"Delete",nb:"Slett",nn:"Slett"}},errCodes:{}});Ext.define("Client.module.tool.userData.lang.SingleFileUpload",{strings:{loadMaskMsg:{en:"Uploading file...",nb:"Laster opp fil..."},btnUpload:{en:"Upload",nb:"Last opp"},info:{en:"<p>Select either a GPX, a KML a SOSI, a XLSX, a CSV, a GeoJSON, DXF or a GML file. The file name will be used as display name, but this can be changed later after the file has been uploaded.</p>",nb:"<p>Last opp enten en GPX, KML, SOSI, XLSX-, CSV-, GeoJSON-, DXF- eller GML-fil. Filnavnet vil bli brukt i innholdslista, men dette kan endres senere nÃ¥r filen er lastet opp.</p>"},projEmpty:{en:"Not sure",nb:"Vet ikke"},pickProj:{en:"Coordinate system for your file",nb:"Filens koordinatsystem"}}});Ext.define("Client.module.tool.userData.lang.Upload",{strings:{fileWindowTitle:{pl:"KML, GPX, SOSI",en:"KML, GPX, SOSI",nb:"KML, GPX, SOSI"},fileEmptyText:{pl:"Wybierz plik...",en:"Select your file...",nb:"Velg en fil..."},fileLoadMask:{pl:"Zapisywanie pliku...",en:"Uploading your file...",nb:"Laster opp data..."},browseBtnText:{pl:"PrzeglÄ
daj...",en:"Browse...",nb:"Bla gjennom..."},btnSave:{pl:"Zapisz",en:"Upload",nb:"Last opp"},btnCancel:{pl:"Anuluj",en:"Cancel",nb:"Avbryt"},uploadFeedback_ok:{pl:"Plik zapisany",en:"File saved",nb:"Fil lagret"},callbackFailure:{en:"There was a problem uploading your file. Please try again with a smaller file or contact the system administrator",nb:"Klarte ikke Ã¥ laste opp filen. Prøv igjen med en mindre fil eller kontakt administrator"},fileExtension_notAllowed_mgs:{pl:"ModuÅ nie obsÅuguje wybranego pliku, dozwolone rozszerzenia: ",en:"File extension not supported, please try a KML-, GPX- or SOSI file",nb:"Filtypen støttes ikke, prøv heller en KML-, GPX- eller SOSI-fil"},fileExtension_notAllowed_error_mgs:{pl:"Nie obsÅugiwany typ pliku",en:"File extension not supported",nb:"Filtypen støttes ikke"},fileName_Label:{pl:"Plik",en:"File",nb:"Fil"},after_create_info:{en:"<p>Select either a GPX, a KML or a SOSI file. The file name will be used as display name, but this can be changed later after the file has been uploaded.</p><p>Max file size is 4 MB.</p>",nb:"<p>Last opp enten en GPX-, en KML- eller en SOSI-fil. Filnavnet vil bli brukt i innholdslista, men dette kan endres senere nÃ¥r filen er lastet opp.</p><p>Maks filstørrelse er 4 MB.</p>"}},errCodes:{fup_0:{pl:"Niepoprawna konfiguracja serwisu",en:"Invalid service config",nb:"Ugyldig konfigurasjon av tjenesten"},fup_1:{pl:"Plik przekroczyÅ dozwolony rozmiar",en:"File too large",nb:"Filen er for stor"},fup_2:{pl:"Zapisanie pliku nie powiodÅo siÄ",en:"Failed to save the file",nb:"Klarte ikke Ã¥ lagre fil"},fup_3:{pl:"Nie dozwolony typ pliku",en:"File type not supported",nb:"Filen støttes ikke"}}});Ext.define("Adaptive.data.model.Media",{extend:GeoMind.data.model.Base,fields:["name","mime","comment","parent_object_type",{name:"parent_object_uuid",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"is_public",convert:function(b,g){return Adaptive.utils.Config.getBooleanConfig(g,"isPublic",false)}}],proxy:{type:"crud",url:"WebServices/Generic/Media.asmx/"}});Ext.define("Adaptive.utils.ExtraParams",{singleton:true,fromDict:function(h){if(!h){return}var g=[];for(var b in h){if(h.hasOwnProperty(b)){g.push({key:b,value:h[b]})}}return g}});Ext.define("Adaptive.utils.Mime",{mimeToIconCls:function(o){if(!o){return"icon-file-unknown"}var h="icon-file-unknown",b=o.indexOf("/");if(b!=-1){var g=o.substring(0,b);switch(g){case"image":h="icon-file-image";break;case"video":h="icon-file-video";break;case"audio":h="icon-file-audio";break;case"multipart":h="icon-file-archive";break;case"application":if(o.indexOf("zip")!=-1||o.indexOf("x-tar")!=-1||o.indexOf("rar")!=-1){h="icon-file-archive"}else{if(o.indexOf("pdf")!=-1||o.indexOf("msword")!=-1||o.indexOf("document")!=-1){h="icon-file-doc"}else{if(o.indexOf("kml")!=-1||o.indexOf("gml")!=-1||o.indexOf("gpx")!=-1){h="icon-file-geo"}}}break;case"text":h="icon-file-doc";break}}return h}});Ext.define("Adaptive.ux.PlotGeometry",{extend:Adaptive.ux.PlotCoordinate,alias:"widget.a3-plotgeometry",mixins:[Adaptive.layer.Colored,Adaptive.mixins.Notify,Adaptive.form.mixins.Generator],projections:null,wasDisabled:false,config:{updateDelay:10,displayProjection:null,readOnly:false,editZ:false},listeners:{show:function(b){var g=this;if(b.params&&b.params.useGps){g.useGps=b.params.useGps;g.spatial_data_type=b.params.spatial_data_type;console.log("useGps:"+g.useGps+" spatial_data_type:"+g.spatial_data_type);g.projectionCombo.setValue(5);g.projectionCombo.setDisabled(true);g.displayProjection=new OpenLayers.Projection("EPSG:4326");g.down("#btnAddCoord").enable()}else{g.show();g.projectionCombo.setDisabled(false)}},hide:function(b){var g=this;if(b.params&&b.params.useGps){g.useGps=b.params.useGps;g.spatial_data_type=b.params.spatial_data_type;g.projectionCombo.setDisabled(false);console.log("useGps:"+g.useGps+" spatial_data_type:"+g.spatial_data_type)}}},constructor:function(b){var g=this;Ext.apply(g,b);g.callParent(arguments)},buildGui:function(){var g=this,b={keyup:function(q,o){if(!o.isNavKeyPress()&&!o.hasModifier()&&(!o.isSpecialKey()||o.DELETE||o.BACKSPACE)){g.reportCurrentPositionTask.delay(g.updateDelay)}},change:function(){if(g.updatingCoords||g.spatialDataType=="point"){return}g.reportCurrentPositionTask.delay(g.updateDelay)},keydown:g.trapEnter,scope:g},h={disabled:g.readOnly,hideLabel:true,hideTrigger:true,enableKeyEvents:true};g.projectionCombo=Ext.create("Ext.form.ComboBox",{editable:false,store:new Ext.data.Store({fields:["id","value","description","coordinateFormat"],data:g.projections}),valueField:"id",displayField:"description",listeners:{scope:g,select:g.projectionChanged},mode:"local"});g.utm=Ext.create("Ext.container.Container",{itemId:"regular",layout:"column",defaults:h,items:[{xtype:"numberfield",itemId:"northValue",decimalPrecision:5,columnWidth:1,emptyText:g.lang.getString("northValue"),listeners:b},{xtype:"numberfield",itemId:"eastValue",labelWidth:10,decimalPrecision:5,columnWidth:1,emptyText:g.lang.getString("eastValue"),listeners:b},{xtype:"numberfield",itemId:"zValue",labelWidth:10,decimalPrecision:2,columnWidth:1,hidden:!g.editZ,emptyText:g.lang.getString("zValue"),listeners:b}]});g.ddmmmmm=Ext.create("Ext.container.Container",{itemId:"DD MM.MMM",layout:"column",defaults:h,items:[{xtype:"textfield",itemId:"northDegValueDM",columnWidth:0.5,emptyText:g.lang.getString("northDegValue"),listeners:b,validator:g.validateNorthDegValue},{xtype:"numberfield",itemId:"northMinValueDM",minValue:0,maxValue:59.999999,decimalPrecision:3,columnWidth:0.5,emptyText:g.lang.getString("northMinValue"),listeners:b},{xtype:"textfield",itemId:"eastDegValueDM",columnWidth:0.5,emptyText:g.lang.getString("eastDegValue"),listeners:b,validator:g.validateEastDegValue},{xtype:"numberfield",itemId:"eastMinValueDM",minValue:0,maxValue:59.999999,decimalPrecision:3,columnWidth:0.5,emptyText:g.lang.getString("eastMinValue"),listeners:b},{xtype:"numberfield",itemId:"zValue",decimalPrecision:2,columnWidth:0.5,emptyText:g.lang.getString("zValue"),hidden:!g.editZ,listeners:b}]});g.ddmmsss=Ext.create("Ext.container.Container",{itemId:"DD MM SS.S",layout:"column",defaults:h,items:[{xtype:"textfield",itemId:"northDegValueDMS",columnWidth:0.33,emptyText:g.lang.getString("northDegValue"),listeners:b,validator:g.validateNorthDegValue},{xtype:"numberfield",itemId:"northMinValueDMS",minValue:0,maxValue:59,decimalPrecision:0,columnWidth:0.33,emptyText:g.lang.getString("northMinValue"),listeners:b},{xtype:"numberfield",itemId:"northSecValueDMS",minValue:0,maxValue:59.999999,decimalPrecision:1,columnWidth:0.33,emptyText:g.lang.getString("northSecValue"),listeners:b},{xtype:"textfield",itemId:"eastDegValueDMS",columnWidth:0.33,emptyText:g.lang.getString("eastDegValue"),listeners:b,validator:g.validateEastDegValue},{xtype:"numberfield",itemId:"eastMinValueDMS",minValue:0,maxValue:59,decimalPrecision:0,columnWidth:0.33,emptyText:g.lang.getString("eastMinValue"),listeners:b},{xtype:"numberfield",itemId:"eastSecValueDMS",minValue:0,maxValue:59.999999,decimalPrecision:1,columnWidth:0.33,emptyText:g.lang.getString("eastSecValue"),listeners:b},{xtype:"numberfield",itemId:"zValue",decimalPrecision:2,columnWidth:0.33,emptyText:g.lang.getString("zValue"),hidden:!g.editZ,listeners:b}]});g.cardContainer=Ext.create("Ext.container.Container",{layout:"card",hidden:g.readOnly&&g.spatialDataType!=="point",items:[g.utm,g.ddmmmmm,g.ddmmsss]});g.coordView=g.createCoordView();g.items=[g.createTextBox("toManyVertices",{hidden:true}),g.projectionCombo,g.cardContainer,{xtype:"container",layout:"hbox",cls:"a3-inline-buttons",hidden:g.readOnly,items:[{xtype:"button",itemId:"btnAddCoord",text:(g.spatialDataType=="point")?g.lang.getString("updateVertice"):g.lang.getString("createVertice"),iconCls:(g.spatialDataType=="point")?"icon-save":"icon-list-add",handler:Ext.bind(g.onAddCoord,g),disabled:(g.spatialDataType&&g.spatialDataType=="point"),flex:1},{xtype:"button",itemId:"btnCancelAddCoord",text:g.lang.getString("cancelVertice"),iconCls:"icon-remove",handler:Ext.bind(g.onCancelC
1oord,g),disabled:(g.spatialDataType&&g.spatialDataType=="point"),flex:1}]},g.coordView];g.coordView.setVisible(g.spatialDataType!=="point")},onAddCoord:function(){var g=this,h=g.computeCoordinate(g.coordinateFormat||"regular"),b;if(!h){return}b=new OpenLayers.LonLat(h.e,h.n);if(g.displayProjection.projCode==g.mapProjection.projCode){g.addCoord(b,b,h.z)}else{Adaptive.utils.Proj.transformFeatureAsync(b,g.displayProjection.projCode,g.mapProjection.projCode,function(w,q,o){if(w){g.addCoord(o.geometry,b,h.z)}else{g.fireEvent("transformationFailed")}})}},onCancelCoord:function(){var b=this;b.onCoordDeselect(null,b.currentCoord)},addCoord:function(o,h,g){var q=this,b=Adaptive.utils.Proj.formatXY(h,q.displayProjection,5);if(o instanceof OpenLayers.LonLat){o=new OpenLayers.Geometry.Point(o.lon,o.lat,g)}if(h instanceof OpenLayers.LonLat){h=new OpenLayers.Geometry.Point(h.lon,h.lat,g)}if(q.currentCoord){q.currentCoord.set("dispLon",b.x);q.currentCoord.set("dispLat",b.y);q.currentCoord.set("height",g);q.currentCoord.set("transLon",h.x);q.currentCoord.set("transLat",h.y);q.currentCoord.set("origPoint",o);q.currentCoord.commit();q.onCoordDeselect(null,q.currentCoord)}else{q.coordView.store.add({dispLon:b.x,dispLat:b.y,height:g,transLon:h.x,transLat:h.y,origPoint:o})}q.updatePreviewFeature()},projectionChanged:function(z,b,h){var q=this,g=b[0].data.coordinateFormat||"regular",w;if(q.displayProjection){var o=q.computeCoordinate(q.coordinateFormat);w=q.displayProjection;q.updateCard(o,q.displayProjection)}if(!q.mapProjection){q.mapProjection=q.map.getProjectionObject()}q.displayProjection=new OpenLayers.Projection("EPSG:"+b[0].data.value);q.coordinateFormat=g;q.cardContainer.getLayout().setActiveItem(g);q.updateCoords(q.feature,q.mapProjection,q.displayProjection)},updateGrid:function(g){var b=this;b.onCoordDeselect(null,b.currentCoord);b.coordView.store.loadData(g);if(b.spatialDataType==="point"&&g.length>0){b._onCoordSelect(b.coordView.store.getAt(0))}},updateCoords:function(g,w){var q=this,z=[],h,A,o;if(g){q.setSpatialType(q.getSpatialType(g.geometry));q.feature=new OpenLayers.Feature.Vector(g.geometry.clone());A=g.geometry.getVertices();if(!q.editZ){h=A.length>20;if(h!=q.wasDisabled){q.wasDisabled=h;for(var b=1;b<q.items.items.length;b++){q.items.items[b].setVisible(!h)}q.items.items[0].setVisible(h)}if(h){return}}Adaptive.utils.Proj.transformFeatureAsync(g,w.projCode,q.displayProjection.projCode,function(F,E,B){if(F){var C=B.geometry.getVertices();for(var D=0;D<C.length;++D){p=C[D].clone();q.displayProjection.coordinateFormat=q.coordinateFormat;pFormatted=Adaptive.utils.Proj.formatXY(p,q.displayProjection,5);z.push({dispLon:pFormatted.x,dispLat:pFormatted.y,height:p.z,transLon:p.x,transLat:p.y,origPoint:A[D]})}q.updateGrid(z)}else{q.fireEvent("transformationFailed")}})}},createCoordView:function(){var g=this,b;b=[{text:g.lang.getString("northValue"),dataIndex:"dispLat",flex:1},{text:g.lang.getString("eastValue"),dataIndex:"dispLon",flex:1},{text:g.lang.getString("zValue"),dataIndex:"height",flex:1,hidden:!g.editZ},{xtype:"actioncolumn",dataIndex:"actions",width:24,hidden:g.readOnly,items:[{iconCls:"icon-delete",isDisabled:function(){return !g.checkValidGeom(g.coordView.store.count()-1)},handler:function(q,w){var o=q.getStore(),h=o.getAt(w);h.removed=true;o.removeAt(w);g.updatePreviewFeature();g.clearCoordCards();g.removeColoredFeatureLayer()}}]}];return Ext.create("Ext.grid.Panel",{itemId:"coordView",columns:b,enableColumnHide:false,sortableColumns:false,store:new Ext.data.Store({fields:["dispLat","dispLon","height","transLat","transLon","origPoint"]}),padding:"10 0 0 0",viewConfig:{plugins:["gridviewdragdrop"],listeners:{drop:g.updatePreviewFeature,scope:g}},allowDeselect:true,hideHeaders:false,listeners:{select:g.onCoordSelect,deselect:g.onCoordDeselect,scope:g}})},onCoordSelect:function(h,b,g){var o=this;o._onCoordSelect(b);o.showCurrentPoint(b.get("origPoint"))},_onCoordSelect:function(b){var h=this,g;if(b.removed){return}h.currentCoord=b;h.updateCard({n:b.get("transLat"),e:b.get("transLon"),z:b.get("height")},h.displayProjection);g=h.down("#btnAddCoord");g.setIconCls("icon-save");g.setText(h.lang.getString("updateVertice"))},onCoordDeselect:function(o,b,g){var q=this,h;if(b!=q.currentCoord){return}q.currentCoord=null;q.clearCoordCards();h=q.down("#btnAddCoord");if(q.spatialDataType!=="point"){h.setIconCls("icon-list-add");h.setText(q.lang.getString("createVertice"))}else{h.disable();q.down("#btnCancelAddCoord").disable();if(b){q._onCoordSelect(b)}}},updatePreviewFeature:function(){var h=this,o=h.down("#coordView"),b=o&&o.getStore(),g;if(h.useGps){h.spatialDataType=h.spatialDataType.replace("multi","")}g=h.coordStoreToFeature(b);data={feature:g,projection:h.mapProjection};if(h.checkValidGeom(b.count())){h.fireEvent("geomUpdated",data)}},coordStoreToFeature:function(b){var q=this,o=[],g,w,h;b.each(function(z){o.push(z.get("origPoint"))});if(o.length==0){return null}switch(q.spatialDataType){case"line":w=new OpenLayers.Geometry.LineString(o);h=new OpenLayers.Feature.Vector(w);break;case"polygon":g=new OpenLayers.Geometry.LinearRing(o);w=new OpenLayers.Geometry.Polygon([g]);h=new OpenLayers.Feature.Vector(w);break;case"point":w=o[0];h=new OpenLayers.Feature.Vector(w);break}return h},showCoordinate:function(h){var g=this,o;if(g.updatingCoords){return}o=g.computeCoordinate(g.coordinateFormat||"regular");g.addedByMe=true;if(o&&g.displayProjection){var b=new OpenLayers.LonLat(o.e,o.n);Adaptive.utils.Proj.transformFeatureAsync(b,g.displayProjection.projCode,g.mapProjection.projCode,function(z,w,q){if(z){g.showCurrentPoint(q.geometry)}else{g.fireEvent("transformationFailed")}})}g.addedByMe=false},showCurrentPoint:function(b){var h=this,g=null;if(h.currentPointFeature){h.removeColoredFeatures([h.currentPointFeature]);delete h.currentPointFeature}if(b){g=new OpenLayers.Feature.Vector(b);g.attributes.color="#ffffff";g.attributes.strokeColor="#66cccc";g.attributes.strokeWidth=3;g.attributes.pointRadius=15;g.attributes.fillOpacity=0.5;h.currentPointFeature=h.addColoredFeature(g,h.mapProjection.projCode,true);if(h.spatialDataType=="point"){h.down("#btnAddCoord").enable();h.down("#btnCancelAddCoord").enable()}}},clearCoordCards:function(){var h=this,b=h.cardContainer.query("field"),g;b.forEach(function(o){o.setValue("")});g=h.down("#btnAddCoord");g.setIconCls("icon-list-add");g.setText(h.lang.getString("createVertice"));h.removeColoredFeatureLayer()},clearCoordStore:function(){this.coordView.store.removeAll()},getSpatialType:function(b){if(b instanceof OpenLayers.Geometry.Polygon){return"polygon"}else{if(b instanceof OpenLayers.Geometry.Point){return"point"}else{if(b instanceof OpenLayers.Geometry.LineString){return"line"}}}},setSpatialType:function(b){var g=this;g.spatialDataType=b;g.coordView.setVisible(b!=="point");g.down("#btnAddCoord").setDisabled(b=="point");g.down("#btnCancelAddCoord").setDisabled(b=="point")},checkValidGeom:function(b){var g=this;switch(g.spatialDataType){case"polygon":return b>=3;case"line":return b>=2;case"point":return b===1;default:return false}},updateGps:function(g){var b=this;b.down("#northValue").setValue(g.latitude);b.down("#eastValue").setValue(g.longitude);b.down("#zValue").setValue(g.altitude);b.down("#btnAddCoord").setDisabled(false)}});Ext.define("Adaptive.ux.lang.RasterUpload",{strings:{nameImage:{en:"Image file (jpeg, tiff)",nb:"Bilde (jpeg, tiff)"},nameWorld:{en:"World file",nb:"World-fil"},info:{en:"<p>Choose a georeferenced image and optional coordinate system. Data might be drawn in the wrong place if you dont specify a coordinate system.</p><p>Max file size is 15 MB.</p>",nb:"<p>Velg et georeferert bilde og valgfritt koordinatsystem. Dersom du ikke velger et koordinatsystem kan dataene bli tegnet på feil sted i kartet.</p><p>Maks filstørrelse er 15 MB.</p>"},projEmpty:{en:"Not sure",nb:"Vet ikke"}
1,pickProj:{en:"Coordinate system for your file",nb:"Filens koordinatsystem"},pickFiles:{en:"Image file and its corresponding world file",nb:"Bilde og tilhørende world-fil"}}});Ext.define("Adaptive.ux.RasterUpload",{extend:Ext.util.Observable,mixins:[Adaptive.form.mixins.Generator],serviceUrl:"webservices/client/RasterUpload.ashx",constructor:function(g){var h=this;Ext.apply(h,g);h.callParent();h.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.RasterUpload");var b=function(o){return h.lang.getString(o)};h.uploadForm=Ext.create("Adaptive.form.upload.Multi",{serviceUrl:h.serviceUrl,validate:Ext.bind(h.validateProjection,h),failure:function(o,q){this.hideLoadMask();h.onFailure(o,q)},uploadFieldsCfg:[{blankText:b("nameImage"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["jpg","jpeg","tif","tiff"]},{blankText:b("nameWorld"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["jgw","jpgw","jpegw","tfw","tifw"],allowBlank:true}]});h.uploadForm.on("fileUploaded",h.onFileUploaded,h);h.projectionCombo=Ext.create("Ext.form.ComboBox",{emptyText:b("projEmpty"),editable:false,store:Ext.create("Ext.data.Store",{fields:["value","description"],data:h.projections||GeoMind.utils.DictionaryManager.getDictionary("projections")}),valueField:"value",displayField:"description",mode:"local",trigger1Cls:"x-form-clear-trigger",onTrigger1Click:function(o){this.clearValue()},trigger2Cls:"x-form-arrow-trigger"});h.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[h.createText("info","info"),h.createTextBox("pickProj","step1"),h.projectionCombo,h.createTextBox("pickFiles","step2"),h.uploadForm.view]})},validateProjection:function(){var b=this;b.uploadForm.setExtraData({sid:GeoMind.utils.SessionManager.ss.sessionId,epsg:b.projectionCombo.getValue()?"EPSG:"+b.projectionCombo.getValue():GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection(),dstEpsg:GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection()});return this.projectionCombo.isValid()},onFileUploaded:function(h){var g=this,b=g.projectionCombo.getValue()?"EPSG:"+g.projectionCombo.getValue():GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection();this.fireEvent("fileUploadSuccess",h,b)},onFailure:function(b,g){if(!g.response.responseText){return}this.fireEvent("fileUploadFailure",g.response)}});Ext.define("Adaptive.ux.lang.ShapeFileUpload",{strings:{nameShp:{en:"Shp file",nb:"Shp-fil"},nameShx:{en:"Shx file",nb:"Shx-fil"},nameDbf:{en:"Dbf file",nb:"Dbf-fil"},shape_info:{en:"<p>Choose a shape file and optional coordinate system. Data might be drawn in the wrong place if you dont specify a coordinate system.</p><p>Max file size is 4 MB.</p>",nb:"<p>Velg en shape-fil og valgfritt koordinatsystem. Dersom du ikke velger et koordinatsystem kan dataene bli tegnet på feil sted i kartet.</p><p>Maks filstørrelse er 4 MB.</p>"},projEmpty:{en:"Not sure",nb:"Vet ikke"},pickProj:{en:"Coordinate system for your file",nb:"Filens koordinatsystem"},pickShape:{en:"Shape file and its corresponding shx- and dbf file",nb:"Shape-fil og tilhørende shx- og dbf-fil"}}});Ext.define("Adaptive.ux.ShapeFileUpload",{extend:Ext.util.Observable,mixins:[Adaptive.form.mixins.Generator],serviceUrl:"webservices/client/shapeUpload.ashx",constructor:function(g){var h=this;Ext.apply(h,g);h.callParent();h.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.ShapeFileUpload");var b=function(o){return h.lang.getString(o)};h.ogrUploadForm=Ext.create("Adaptive.form.upload.Multi",{serviceUrl:h.serviceUrl,validate:Ext.bind(h.validateProjection,h),failure:function(o,q){this.hideLoadMask();h.onFailure(o,q)},uploadFieldsCfg:[{blankText:b("nameShp"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["shp"]},{blankText:b("nameShx"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["shx"]},{blankText:b("nameDbf"),buttonConfig:{iconCls:"a3-upload-icon"},accept:["dbf"]}]});h.ogrUploadForm.on("fileUploaded",h.onOgrFileUploaded,h);h.projectionCombo=Ext.create("Ext.form.ComboBox",{emptyText:b("projEmpty"),editable:false,store:Ext.create("Ext.data.Store",{fields:["value","description"],data:h.projections||GeoMind.utils.DictionaryManager.getDictionary("projections")}),valueField:"value",displayField:"description",mode:"local",trigger1Cls:"x-form-clear-trigger",onTrigger1Click:function(o){this.clearValue()},trigger2Cls:"x-form-arrow-trigger"});h.view=Ext.create("Ext.container.Container",{layout:{type:"vbox",align:"stretch"},items:[h.createText("shape_info","info"),h.createTextBox("pickProj","step1"),h.projectionCombo,h.createTextBox("pickShape","step2"),h.ogrUploadForm.view]})},validateProjection:function(){var b=this;b.ogrUploadForm.setExtraData({sid:GeoMind.utils.SessionManager.ss.sessionId,epsg:b.projectionCombo.getValue()?"EPSG:"+b.projectionCombo.getValue():GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection(),dstEpsg:GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection()});return this.projectionCombo.isValid()},onOgrFileUploaded:function(h){var g=this,b=g.projectionCombo.getValue()?"EPSG:"+g.projectionCombo.getValue():GeoMind.utils.Clipboard.getData("mapPanel").map.getProjection();this.fireEvent("fileUploadSuccess",h,b)},onFailure:function(b,g){if(!g.response.responseText){return}this.fireEvent("fileUploadFailure",g.response)}});Ext.define("Adaptive.ux.SwipeMap",{extend:Ext.util.Observable,mixins:[Adaptive.mixins.Notify],constructor:function(b){var g=this;Ext.apply(g,b);g.callParent(arguments);g.swipeLayer=g.map.getLayerByThemeUuid(g.themeData.theme_uuid);g.lang=GeoMind.lang.Lang.registerTranslations("Adaptive.ux.lang.SwipeMap");g.wnd=Ext.create("Ext.window.Window",{layout:"fit",width:Math.min(Ext.getBody().getWidth()*0.9,1920),height:Math.min(Ext.getBody().getHeight()*0.9,1080),modal:true,items:[{xtype:"container"}],listeners:{close:function(){g.loadingRequest&&Ext.Ajax.abort(g.loadingRequest)}}});g.wnd.show();g.wnd.down("[xtype=container]").setLoading(g.lang.getString("loading"));g.on("timeLoaded",function(h){g.title=g.lang.getString("title");g.buildGui(h)},g);g.loadTime()},buildGui:function(g){var B=this;B.wnd.destroy();var b=B.map.getProjection(),A=B.map.getProjectionObject().proj.defData,D=B.map.getExtent().toArray(),C=B.map.getMaxExtent().toArray(),z=B.getLayerConfig(B.swipeLayer,true,g,"swipe1"),w=B.getLayerConfig(B.swipeLayer,true,g,"swipe2"),h={projCode:b,projDef:A,extent:D,maxExtent:C,basemap:B.getLayerConfig(B.map.baseLayer),swipeLayer1:z,swipeLayer2:w},q=250;B.layerSwipe=Ext.create("Adaptive.ux.ReactComponent",{name:"swipeMap",parentController:B.module
1Controller,props:{config:h,onMaxTimeCountReached:function(){B.showNotifyWarning(B.layerSwipe,B.lang.getString("max_time_count_warning").replace(/\{maxTimeCount\}/g,q))},maxTimeCount:q}});var o=Ext.create("Ext.window.Window",{layout:"fit",width:Math.min(Ext.getBody().getWidth()*0.9,1920),height:Math.min(Ext.getBody().getHeight()*0.9,1080),modal:true,items:[B.layerSwipe]});o.show()},getLayerConfig:function(o,g,w,b){var q=o.record.get("layer_type_value"),h={type:q,uri:o.url,layerName:o.params.LAYERS,version:o.params.VERSION,useBaat:true,singleTile:o.singleTile,zIndex:-1*parseInt(o.getZIndex()||0),wmsLayerParams:o.params,id:o.record.get("uuid"),name:o.name,numZoomLevels:o.numZoomLevels};switch(q){case"WMTS":h.layerName=o.layer;h.matrixSet=o.matrixSet;h.matrixIds=o.matrixIds.map(function(z){return z.identifier});break;default:break}if(b){h.id=b}if(!g){return h}h.dimensions=w;return h},loadTime:function(){var g=this,o=Adaptive.utils.Config.getConfig(g.swipeLayer.record,"wms_time_range_start"),q=Adaptive.utils.Config.getConfig(g.swipeLayer.record,"wms_time_range_end"),b=Adaptive.utils.Config.getConfig(g.swipeLayer.record,"wms_time_interval"),h=o&&q&&b;if(!h&&(g.useDynamicTime||g.autoUpdateTime)){g.loadDynamicTimeRange()}else{g.fireEvent("timeLoaded",g.getTimeValues())}},getTimeValues:function(C){var A=this,z=A.swipeLayer,h,q,B,g,o,b;if(C){z.dimensions.time.values=C}h=Adaptive.utils.Config.getConfig(z.record,"wms_time_range_start");if(h){q=Ext.Date.parse(parseInt(h)/1000,"U").toISOString()}B=Adaptive.utils.Config.getConfig(z.record,"wms_time_range_end");if(B){g=Ext.Date.parse(parseInt(B)/1000,"U").toISOString()}b=z.dimensions;o=Adaptive.utils.Config.getConfig(z.record,"wms_time_interval");if(o){if(h&&B){var w=/P(\d+)(\w)/.exec(o);if(w){if(w[2]==="M"||w[2]==="Y"){q=Ext.Date.parse((parseInt(h)/1000)+46800,"U").toISOString();g=Ext.Date.parse((parseInt(B)/1000)-46800,"U").toISOString()}else{if(w[2]==="D"){q=Ext.Date.parse((parseInt(h)/1000)+46800,"U").toISOString();g=Ext.Date.parse((parseInt(B)/1000)+46800,"U").toISOString()}}}b.time.values=[[q,g,o].join("/")]}else{b.time.values=b.time.values.map(function(D){return D+(!Ext.String.endsWith(D,"/")?+"/":"")+o})}}return b},loadDynamicTimeRange:function(){var b=this,g=b.swipeLayer.record.get("is_internal")?"GetInternalWmsTimeRange":"GetWmsTimeRange";b.loadingRequest=Ext.Ajax.request({url:"WebServices/generic/Theme.asmx/"+g,method:"POST",jsonData:{uuid:b.themeData.theme_uuid},success:function(q){var h=Ext.JSON.decode(q.responseText);h=h&&h.d;if(h&&h.success){var o=GeoMind.utils.Data.extractConfigObjectByKey(h.data,"extent");b.fireEvent("timeLoaded",b.getTimeValues(o.split(",")))}else{b.showNotifyError(Ext.getBody(),b.lang.getString("error_loading_timerange"));b.wnd.destroy()}},failure:function(){b.showNotifyError(Ext.getBody(),b.lang.getString("error_loading_timerange"));b.wnd.destroy()}})}});Ext.define("Adaptive.ux.lang.MediaLightbox",{strings:{noPreview:{en:"No preview available.",nb:"Ingen forhÃ¥ndsvisning tilgjengelig."},openOrDownload:{en:"Open or download file",nb:"Ã
pne eller last ned fil"}}});Ext.define("Adaptive.ux.lang.MediaPreview",{strings:{attachedMedia:{en:"Attached media files",nb:"Tilknyttede mediafiler"}}});Ext.define("Adaptive.ux.lang.SingleFileUpload",{strings:{loadMaskMsg:{en:"Uploading file...",nb:"Laster opp fil..."},btnUpload:{en:"Upload",nb:"Last opp"},info:{en:"<p>Select either a GPX, a KML, a DXF or a SOSI file. The file name will be used as display name, but this can be changed later after the file has been uploaded.</p>",nb:"<p>Last opp enten en GPX-, en KML-, en DXF- eller en SOSI-fil. Filnavnet vil bli brukt i innholdslista, men dette kan endres senere når filen er lastet opp.</p>"},info_file_size:{en:"Max file size is ",nb:"Maks filstørrelse er "},projEmpty:{en:"Not sure",nb:"Vet ikke"},pickProj:{en:"Coordinate system for your file",nb:"Filens koordinatsystem"}}});Ext.define("Adaptive.ux.lang.SwipeMap",{strings:{title:{en:"Swipe map",nb:"Sammenlikningskart"},error_loading_timerange:{en:"An error occured while loading time range",nb:"En feil oppstod ved lasting av tidsutstrekning"},max_time_count_warning:{en:"More than {maxTimeCount} time steps found. Showing {maxTimeCount} first time steps",nb:"Flere enn {maxTimeCount} tidssteg funnet. Viser de {maxTimeCount} første tidsstegene"},loading:{en:"Loading",nb:"Laster inn"}}});Ext.define("GeoMind.base._ModuleTemplate",{extend:GeoMind.base.Module,interactsWith:[],constructor:function(b){this._id=Ext.id();Ext.apply(this,b);this.callParent([b])},onGetReadyForReset:function(b){if(this.checkIfICare(b)){this.manageEventConfirmation(b)}else{this.manageEventConfirmation(b)}},onGetReady:function(b){if(this.checkIfICare(b)){this.manageEventConfirmation(b)}else{this.manageEventConfirmation(b)}},activate:function(){},deactivate:function(){}});Ext.define("GeoMind.base._evtObjTemplate",{evtName:null,evtInitiatingModule:null,evtSuperInitiatingModule:null,evtBroadcastingController:null,confirmationRequired:null,callback:null,suspendedCallback:null,data:null});Ext.define("GeoMind.cfgLoader.proxy.Standard",{mixins:[Ext.util.Observable],serviceUrls:null,serviceMethods:null,constructor:function(b){Ext.apply(this,b);this.mixins["Ext.util.Observable"].constructor.call(this,b);this.addEvents(["mapconfigloaded","mapconfigloadfailure"])},pullConfig:function(b){Ext.Ajax.request({url:this.serviceUrls.config+this.serviceMethods.read,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(b),success:Ext.bind(this.pullConfigCallbackSuccess,this),failure:Ext.bind(this.pullConfigCallbackFailure,this)})},pullConfigCallbackSuccess:function(b,g){b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){this.fireEvent("mapconfigloaded",b)}else{this.fireEvent("mapconfigloadfailure",b)}},pullConfigCallbackFailure:function(b,g){this.fireEvent("mapconfigloadfailure",b)}});Ext.define("GeoMind.cfgLoader.Standard",{extend:GeoMind.base.Module,proxy:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["mapConfigLoaded","mapConfigLoadFailure"]);this.proxy=Ext.create("GeoMind.cfgLoader.proxy.Standard",b);this.proxy.on("mapconfigloaded",this.onConfigDataLoaded,this);this.proxy.on("mapconfigloadfailure",this.onConfigLoadFailure,this)},pullMapConfig:function(b){this.proxy.pullConfig(b)},onConfigDataLoaded:function(b){var g={evtName:"mapConfigLoaded",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b.data};this.dispatchEvent(g,{confirmationRequired:false})},onConfigLoadFailure:function(b){var g={evtName:"mapConfigLoadFailure",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{response:b}};this.dispatchEvent(g,{confirmationRequired:false})}});
1Ext.define("GeoMind.cfgLoader.lang.Standard",{strings:{configurationFailure_Title:{pl:"Info",en:"Info"},configurationFailure_Msg:{pl:"Nie powiodÅo siÄ pobranie konfiguracji!",en:"The application failed to retrieve its configuration settings!"}},errCodes:{}});Ext.define("GeoMind.data.model.ColumnDictionaryFields",{singleton:true,fields:[{name:"key",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"is_default",type:"boolean",defaultValue:null,useNull:true}]});Ext.define("GeoMind.data.model.ColumnDictionary",{fields:GeoMind.data.model.ColumnDictionaryFields.fields,config:{fields:GeoMind.data.model.ColumnDictionaryFields.fields}});Ext.define("GeoMind.data.model.DataColumnFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"column_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data_type_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"length",type:"number",defaultValue:null,useNull:true},{name:"is_unique",type:"boolean",defaultValue:null,useNull:true},{name:"default_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"service_column",type:"boolean",defaultValue:null,useNull:true},{name:"is_system",type:"boolean",defaultValue:null,useNull:true},{name:"required",type:"boolean",defaultValue:null,useNull:true},{name:"editable",type:"boolean",defaultValue:true,useNull:false,convert:function(b,g){return b!==false}},{name:"visible",type:"boolean",defaultValue:null,useNull:true},{name:"queryable",type:"boolean",defaultValue:null,useNull:true},{name:"raw_dictionary",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value_formatter",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return b||"##VALUE##"}},{name:"dictionary",type:"auto",defaultValue:[],useNull:true},{name:"visible_dataview",type:"string",defaultValue:null,useNull:true},{name:"visible_info",type:"string",defaultValue:null,useNull:true},{name:"visible_editor",type:"string",defaultValue:null,useNull:true},{name:"visible_label",type:"string",defaultValue:null,useNull:true},{name:"visible_filter",type:"string",defaultValue:null,useNull:true}]});Ext.define("GeoMind.data.model.DataColumn",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.DataColumnFields.fields,config:{fields:GeoMind.data.model.DataColumnFields.fields}});Ext.define("GeoMind.data.model.DataSourceFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"source_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"source_type_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"spatial_data_type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"spatial_data_type_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"spatial_data_encoding",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"spatial_data_encoding_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data_encoding",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data_encoding_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"uri",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"request_method",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"request_method_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"server_host",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"server_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"server_port",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"db_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"user_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"user_pass",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"version",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"version_value",type:"string",defaultValue:null,useNull:true},{name:"format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"format_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"info_format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"info_format_value",type:"string",defaultValue:null,useNull:true},{name:"exception_format",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"exception_format_value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"epsg",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"layers",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"table_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"geom_col1",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"geom_col2",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"id_column",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"query",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"model_editable",type:"boolean",defaultValue:null,useNull:true},{name:"data_editable",type:"boolean",defaultValue:null,useNull:true},{name:"odbc",type:"boolean",defaultValue:null,useNull:true},{name:"spatial",type:"boolean",defaultValue:null,useNull:true},{name:"data_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"columns",type:"auto",defaultValue:[],useNull:true},{name:"dsn",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.DataSource",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.DataSourceFields.fields,config:{fields:GeoMind.data.model.DataSourceFields.fields}});Ext.define("GeoMind.data.model.DataTranslationFields",{singleton:true,fields:[{name:"parent_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"parent_type_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"property_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"lng_code",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"translation",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.DataTranslation",{extend:Ext.data.Model,fields:GeoMind.data.model.DataTranslationFields.fields,config:{fields:GeoMind.data.model.DataTranslationFields.fields}});Ext.define("GeoMind.data.model.DataView",{extend:Ext.data.Model,fields:[{name:"field1",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"field2",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}],config:{fields:[{name:"field1",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"field2",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]}});Ext.define("GeoMind.data.model.Dictionary",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}],config:{fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]}});Ext.define("GeoMind.data.model.Dictionary_LayerSubType",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}],config:{fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"type",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]}});Ext.define("GeoMind.data.model.Dictionary_WmsFormat",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"versions",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}],config:{fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"versions",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]}});Ext.define("GeoMind.data.model.Dictionary_WmsWfsVersion",{extend:Ext.data.Model,fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"wms",type:"boolean",defaultValue:null,useNull:true},{name:"wfs",type:"boolean",defaultValue:null,useNull:true}],config:{fields:[{name:"uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"value",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"wms",type:"boolean",defaultValue:null,useNull:true},{name:"wfs",type:"boolean",defaultValue:null,useNull:true}]}});Ext.define("GeoMind.data.model.LayerGroup_LinkData_MapAndLayerGroup_Fields",{singleton:true,fields:[{name:"is_expanded",type:"boolean",defaultValue:false,useNull:true}]});Ext.define("GeoMind.data.model.LayerGroup_LinkData_MapAndLayerGroup",{extend:Ext.data.Model,fields:GeoMind.data.model.LayerGroup_LinkData_MapAndLayerGroup_Fields.fields,config:{fields:GeoMind.data.model.LayerGroup_LinkData_MapAndLayerGroup_Fields.fields}});Ext.define("GeoMind.data.model.Layer_LinkData_MapAndLayerGroup_Fields",{singleton:true,fields:[{name:"visible",type:"boolean",defaultValue:false,useNull:true},{name:"queryable",type:"boolean",defaultValue:false,useNull:true},{name:"printable",type:"boolean",defaultValue:false,useNull:true},{name:"transparent",type:"boolean",defaultValue:false,useNull:true},{name:"is_base_layer",type:"boolean",defaultValue:false,useNull:false},{name:"opacity",type:"number",defaultValue:0,useNull:false}]});Ext.define("GeoMind.data.model.Layer_LinkData_MapAndLayerGroup",{extend:Ext.data.Model,fields:GeoMind.data.model.Layer_LinkData_MapAndLayerGroup_Fields.fields,config:{fields:GeoMind.data.model.Layer_LinkData_MapAndLayerGroup_Fields.fields}});Ext.define("GeoMind.data.model.Projection_LinkData_Layer_Fields",{singleton:true,fields:[{name:"url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"get_feature_info_url",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"single_tile",type:"boolean",defaultValue:false,useNull:true},{name:"tile_size",type:"int",defaultValue:256,useNull:true},{name:"gutter",type:"int",defaultValue:0,useNull:true},{name:"num_zoom_levels",type:"int",defaultValue:null,useNull:true},{name:"min_zoom_level",type:"int",defaultValue:null,useNull:true},{name:"max_zoom_level",type:"int",defaultValue:null,useNull:true},{name:"min_resolution",type:"number",defaultValue:null,useNull:true},{name:"max_resolution",ty
1pe:"number",defaultValue:null,useNull:true},{name:"resolutions",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"min_scale",type:"number",defaultValue:null,useNull:true},{name:"max_scale",type:"number",defaultValue:null,useNull:true},{name:"scales",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"zoom_offset",type:"int",defaultValue:null,useNull:true},{name:"server_resolutions",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"max_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"min_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"tile_origin",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"tile_full_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.Projection_LinkData_Layer",{extend:Ext.data.Model,fields:GeoMind.data.model.Projection_LinkData_Layer_Fields.fields,config:{fields:GeoMind.data.model.Projection_LinkData_Layer_Fields.fields}});Ext.define("GeoMind.data.model.Projection_LinkData_Map_Fields",{singleton:true,fields:[{name:"max_resolution",type:"number",defaultValue:null,useNull:true},{name:"min_resolution",type:"number",defaultValue:null,useNull:true},{name:"resolutions",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"max_scale",type:"number",defaultValue:null,useNull:true},{name:"min_scale",type:"number",defaultValue:null,useNull:true},{name:"scales",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"num_zoom_levels",type:"int",defaultValue:null,useNull:true},{name:"max_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"min_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"restricted_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"initial_extent",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.Projection_LinkData_Map",{extend:Ext.data.Model,fields:GeoMind.data.model.Projection_LinkData_Map_Fields.fields,config:{fields:GeoMind.data.model.Projection_LinkData_Map_Fields.fields}});Ext.define("GeoMind.data.model.ResourceTypeFields",{singleton:true,rtequires:[],fields:[{name:"internal_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"schema",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"src_model",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"src_read",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"fn_insert",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"fn_update",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"fn_destroy",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"fn_update_cfg",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"fn_get_by_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});
1Ext.define("GeoMind.data.model.ResourceType",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.ResourceTypeFields.fields,config:{fields:GeoMind.data.model.ResourceTypeFields.fields}});Ext.define("GeoMind.data.model.RoleFields",{singleton:true,fields:[{name:"name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"internal_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"is_guest",type:"bool",defaultValue:null,useNull:true},{name:"is_authenticated",type:"bool",defaultValue:null,useNull:true},{name:"is_admin",type:"bool",defaultValue:null,useNull:true},{name:"is_locked",type:"bool",defaultValue:null,useNull:true},{name:"is_god",type:"bool",defaultValue:null,useNull:true},{name:"role_type",type:"int",defaultValue:0,useNull:false},{name:"valid_from",type:"date",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"valid_to",type:"date",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"permissions",type:"auto",defaultValue:[],useNull:true}]});Ext.define("GeoMind.data.model.Role",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.RoleFields.fields,config:{fields:GeoMind.data.model.RoleFields.fields},statics:{roleTypes:[{id:0,text:"Global"},{id:1,text:"Project permission (SCAT only)"},{id:2,text:"Project group"},{id:3,text:"Project single grant"},{id:4,text:"Administrator role"}]}});Ext.define("GeoMind.data.model.SearchResultFields",{singleton:true,fields:[{name:"agent_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"agent_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"groupper1",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"groupper2",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"display",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"geom_wkt",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"bbox_wkt",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"html",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"data",type:"auto",defaultValue:[],useNull:true},{name:"feature",type:"auto",defaultValue:null,useNull:true}]});Ext.define("GeoMind.data.model.SearchResult",{extend:Ext.data.Model,fields:GeoMind.data.model.SearchResultFields.fields,config:{fields:GeoMind.data.model.SearchResultFields.fields}});Ext.define("GeoMind.data.model.UserDataFields",{singleton:true,fields:[{name:"parent_uuid",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"first_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"middle_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"last_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"nick_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"www",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"phone",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"mobile",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"company",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"profile",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"description",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_street",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_house_no",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_flat_no",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_post_code",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_city",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_country",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"held_position",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"department",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"address_post_code_area_name",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}}]});Ext.define("GeoMind.data.model.UserData",{extend:Ext.data.Model,fields:GeoMind.data.model.UserDataFields.fields,config:{fields:GeoMind.data.model.UserDataFields.fields}});Ext.define("GeoMind.data.model.UserFields",{singleton:true,requires:[],fields:[{name:"email",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"ext_ids",type:"string",defaultValue:null,useNull:true,convert:function(b,g){return GeoMind.utils.String.fixNullString(b)}},{name:"user_data",convert:function(b,g){return GeoMind.utils.Data.cloneRecord("GeoMind.data.model.UserData",b)}},{name:"user_name",convert:function(A,w){var o=w.get("user_data"),z=o.get("first_name"),q=o.get("middle_name"),C=o.get("last_name"),b=o.get("nick_name"),h="";if(z!=null&&z.length>0){h+=z}if(q!=null&&q.length>0){var g=q[0].toUpperCase();h=h.length>0?h+=" "+g+".":g+"."}if(C!=null&&C.length>0){h=h.length>0?h+=" "+C:C}if(b!=null&&b.length>0){var B="("+b+")";h=h.length>0?h+=" "+B:B}return h}},{name:"company",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"address_street",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"address_post_code",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"address_post_code_area_name",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"address_city",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"address_country",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"phone",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"mobile",convert:function(g,b){return b.get("user_data").get(this.name)}},{name:"last_pass_change",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixD
1ate(b)}},{name:"pass_valid_days",type:"int",defaultValue:null,useNull:true},{name:"pass_valid_until",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"last_logged_in",type:"date",useNull:true,convert:function(b,g){return GeoMind.utils.Date.fixDate(b)}},{name:"is_system",type:"boolean",defaultValue:false,useNull:false},{name:"IsExternalOnly",type:"boolean",defaultValue:false,useNull:false}]});Ext.define("GeoMind.data.model.User",{extend:GeoMind.data.model.Base,fields:GeoMind.data.model.UserFields.fields,config:{fields:GeoMind.data.model.UserFields.fields}});Ext.define("GeoMind.data.store.DataViewBase",{extend:Ext.data.Store,serverFilter:null,serviceUrl:"",serviceMethods:{read:"Read"},extraParams:[],limit:25,proxy:null,config:{serverFilter:null,serviceUrl:"",serviceMethods:{read:"Read"},extraParams:[],limit:25,pageSize:50,proxy:null},constructor:function(b){Ext.apply(this,b);this.model=Ext.create(this.model);this.extraParams=[];if(!this.serverFilter){this.serverFilter=Ext.create("GeoMind.data.DataFilter")}this.proxy=Ext.create("Ext.data.proxy.Ajax",{actionMethods:{read:"POST"},headers:{"Content-Type":"application/json; charset=utf-8"},api:{read:this.serviceUrl+this.serviceMethods.read},reader:{type:"json",root:"records",totalProperty:"total",read:Ext.bind(this.onGetResponse,this)},doRequest:function(g,w,h){var q=this.getWriter(),o=this.buildRequest(g,w,h);if(g.allowWrite()){o=q.write(o)}Ext.apply(o,{headers:this.headers,timeout:this.timeout,scope:this,callback:this.createRequestCallback(o,g,w,h),method:this.getMethod(o),disableCaching:false,params:g.params2bOverriden});Ext.Ajax.request(o);return o}});this.callParent([b]);this.on("beforeload",this.onBeforeStoreLoad,this);this.on("beforeprefetch",this.onBeforeStoreLoad,this)},manageXtraParams:function(){},addXtraParam:function(b,h){var q;var g=false;for(var o=0;o<this.extraParams.length;o++){if(this.extraParams[o].key==b){q=o;g=true;break}}if(g){this.extraParams[q].value=h}else{this.extraParams.push({key:b,value:h})}},onBeforeStoreLoaOld:function(g,b,h){if(!b.params){b.params={limit:this.limit,page:1,start:0,filter:this.serverFilter.getFilterObject()}}this.manageXtraParams();b.params.limit=g.pageSize;b.params.page=g.currentPage;b.params.start=g.currentPage==1?0:g.pageSize*(g.currentPage-1);b.params.filter=this.serverFilter.getFilterObject();b.params.extraParams=this.extraParams;b.params=Ext.JSON.encode(b.params)},onBeforeStoreLoad:function(g,b,h){var o=b.params||{};this.manageXtraParams();o.limit=b.limit;o.page=b.page;o.start=b.page==1?0:g.pageSize*(b.page-1);o.filter=this.serverFilter.getFilterObject();o.extraParams=this.extraParams;b.params2bOverriden=Ext.JSON.encode(o)},onGetResponse:function(g){g=Ext.JSON.decode(g.responseText).d;var h=this.getProxy();var b=h.getReader();var o;if(g.success){o=b.readRecords(g)}else{GeoMind.utils.SessionManager.validateSession(g);o=new Ext.data.ResultSet({total:0,count:0,records:[],success:false,message:g.exception&&g.exception.msg})}return o||b.nullResultSet}});Ext.define("GeoMind.data.store.DataView",{extend:GeoMind.data.store.DataViewBase,constructor:function(b){Ext.apply(this,b);this.callParent([b])},manageXtraParams:function(){}});Ext.define("GeoMind.data.store.Dictionary",{extend:Ext.data.Store,serviceUrl:"",serviceMethods:{read:"Read"},dictionaryName:"",model:"GeoMind.data.model.Dictionary",autoLoad:true,config:{serviceUrl:"",serviceMethods:{read:"Read"},dictionaryName:"",autoLoad:true},constructor:function(b){Ext.apply(this,b);this.model=Ext.create(this.model);this.proxy=Ext.create("Ext.data.proxy.Ajax",{actionMethods:{read:"POST"},headers:{"Content-Type":"application/json; charset=utf-8"},api:{read:this.serviceUrl+this.serviceMethods.read},reader:{type:"json",root:"records",read:Ext.bind(this.onGetResponse,this)},doRequest:function(g,w,h){var q=this.getWriter(),o=this.buildRequest(g,w,h);if(g.allowWrite()){o=q.write(o)}Ext.apply(o,{headers:this.headers,timeout:this.timeout,scope:this,callback:this.createRequestCallback(o,g,w,h),method:this.getMethod(o),disableCaching:false,params:g.params2bOverriden});Ext.Ajax.request(o);return o}});this.callParent([b]);this.on("beforeload",this.onBeforeStoreLoad,this)},onBeforeStoreLoadOld:function(g,b,h){if(!b.params){b.params={dictionaryName:this.dictionaryName}}b.params=Ext.JSON.encode(b.params)},onBeforeStoreLoad:function(g,b,h){var o={dictionaryName:this.dictionaryName};b.params2bOverriden=Ext.JSON.encode(o)},onGetResponse:function(g){g=GeoMind.utils.Ajax.fixResponse(g);var h=this.getProxy();var b=h.getReader();var o;if(g.success){o=b.readRecords(g)}else{}return o||b.nullResultSet}});Ext.define("GeoMind.data.store.Map",{extend:Ext.data.Store,model:"GeoMind.data.model.Map",autoLoad:false,config:{model:"GeoMind.data.model.Map",autoLoad:false},constructor:function(b){Ext.apply(this,b);this.callParent([b])}});Ext.define("GeoMind.desktop.dataView.generic.lang.EditManager",{strings:{delMsgTitle:{pl:"Uwaga",en:"Warning"},delMsg:{pl:"Czy na pewno chcesz usunÄ
Ä wybrany rekord?",en:"Are you sure you want to delete selected record?"},delMultiMsg:{pl:"Zaznaczono wiele rekordów! Czy na pewno chcesz usunÄ
Ä zaznaczone rekordy?",en:"You have selected multiple records! Are you sure you want to delete them all?"}
1,newRecWindowTitle:{pl:"Nowy rekord",en:"New record"},editRecWindowTitle:{pl:"Edycja danych",en:"Data edit"},btnOkNew:{pl:"Dodaj",en:"Create"},btnOkEdit:{pl:"Zapisz",en:"Save"},btnCancel:{pl:"Anuluj",en:"Cancel"},operationcreate:{pl:"Dodawanie rekordu...",en:"Adding record..."},operationupdate:{pl:"Aktualizacja rekordu...",en:"Updating record..."},operationdestroy:{pl:"Usuwanie rekordu...",en:"Deleting record..."},formInvalidTitle:{pl:"Uwaga",en:"Warning"},formInvalidMsg:{pl:"Formularz nie zostaÅ wypeÅniony poprawnie. NastÄpujÄ
ce pola nie mogÄ
by puste: ",en:"Form invalid. The following fields cannot be blank: "},callbackFailureTitle:{pl:"Uwaga",en:"Warning"},callbackFailure_Msg1_part1:{pl:"Serwer zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"The server returned the following error: "},callbackFailure_Msg1_part2:{pl:" Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:" Please try again or contact the system administrator."},callbackFailure_Msg2:{pl:"BÅÄ
d komunikacji z serwerem. Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Server communication error. Please try again or contact the system administrator."}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.EditManager",{extend:GeoMind.base.Module,lang:null,exceptionsLang:null,serviceUrl:"",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"},extraParams:[],windowWidth:390,windowHeight:450,constructor:function(b){this.extraParams=[];Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.lang.EditManager")},handleEditRequest:function(b){if(b.operation=="destroy"){this.handleRequestDelete(b)}else{this.handleRequestEdit(b)}},handleRequestDelete:function(b){var g=this;Ext.Msg.show({title:this.lang.getString("delMsgTitle"),msg:Ext.isArray(b.record)?this.lang.getString("delMultiMsg"):this.lang.getString("delMsg"),buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.WARNING,fn:function(h){if(h=="ok"){g.deleteRec(b.record,b.operation)}}})},handleRequestEdit:function(b){if(b.operation=="clone"){var o=["uuid","creator_uuid","last_modified_by","create_date","modify_date","end_date"];if(b.ignoreFields){for(f in b.ignoreFields){o.push(b.ignoreFields[f])}}for(k in b.record.fields.keys){var g=b.record.fields.keys[k];if(Ext.Array.contains(o,g)){continue}b.blankRecord.set(g,b.record.get(g))}b.operation="create"}var h=this.createEditWindow(b);h.show()},createEditWindow:function(g){var q=this;var b=Ext.create(g.formClass);b.bindRecord(g.operation=="create"?g.blankRecord:g.record);b.activate();var h=Ext.create("Ext.button.Button",{text:g.operation=="create"?this.lang.getString("btnOkNew"):this.lang.getString("btnOkEdit"),iconCls:"gm-dv_edit_form_bnt_ok"});var w=Ext.create("Ext.button.Button",{text:this.lang.getString("btnCancel"),iconCls:"gm-dv_edit_form_bnt_cancel"});var o=Ext.create("Ext.window.Window",{title:g.operation=="create"?this.lang.getString("newRecWindowTitle"):this.lang.getString("editRecWindowTitle"),width:this.windowWidth,height:this.windowHeight,iconCls:g.operation=="create"?"gm-dv_edit_form_title_icon_add":"gm-dv_edit_form_title_icon_edit",layout:"fit",autoScroll:true,modal:true,border:false,dockedItems:[{xtype:"toolbar",dock:"bottom",items:["->","-",h,"-",w]}],loadMask:null,showLoadMask:function(z){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.getEl(),{msg:z})}this.loadMask.msg=z;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}}});o.add(b.view);h.on("click",this.onBtnOkClick,{ew:o,ef:b,operation:g.operation,scope:this});w.on("click",this.onBtnCancelClick,{ew:o,ef:b,scope:this});return o},onBtnCancelClick:function(){this.ew.close();this.ef.destroy()},onBtnOkClick:function(){var b=this.ef.collectFormData();if(b.valid){this.ew.showLoadMask(this.scope.lang.getString("operation"+this.operation));this.scope.manageXtraParams();Ext.Ajax.request({url:this.scope.serviceUrl+this.scope.serviceMethods[this.operation],method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({data:b.data,extraParams:this.scope.extraParams}),success:Ext.bind(this.scope.saveRecCallbackSuccess,{scope:this.scope,ew:this.ew,ef:this.ef}),failure:Ext.bind(this.scope.saveRecCallbackFailure,{scope:this.scope,ew:this.ew,ef:this.ef})})}else{Ext.Msg.show({title:this.scope.lang.getString("formInvalidTitle"),msg:this.scope.lang.getString("formInvalidMsg")+b.invali
1dFields,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},manageXtraParams:function(){},addXtraParam:function(b,h){var q;var g=false;for(var o=0;o<this.extraParams.length;o++){if(this.extraParams[o].key==b){q=o;g=true;break}}if(g){this.extraParams[q].value=h}else{this.extraParams.push({key:b,value:h})}},saveRecCallbackSuccess:function(b,g){b=Ext.JSON.decode(b.responseText).d;this.ew.hideLoadMask();if(b.success){this.ef.destroy();this.ew.close();this.scope.fireEvent("forceRefresh")}else{if(b.sessionExpired){GeoMind.utils.SessionManager.validateSession(b);return}var h=this.scope.getFeedbackMessage(b);Ext.Msg.show({title:this.scope.lang.getString("callbackFailureTitle"),msg:h,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},saveRecCallbackFailure:function(b,g){this.ew.hideLoadMask();Ext.Msg.show({title:this.scope.lang.getString("callbackFailureTitle"),msg:this.scope.lang.getString("callbackFailure_Msg2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})},getFeedbackMessage:function(b){var g=this.lang.getString("callbackFailure_Msg1_part1")+GeoMind.utils.Exceptions.getMsg(b,this.exceptionsLang)+this.lang.getString("callbackFailure_Msg1_part2");return g},deleteRec:function(o,b){if(this.delLoadMask){this.delLoadMask.msg=this.lang.getString("operationdestroy");this.delLoadMask.show()}var h=o;if(!Ext.isArray(h)){h=[h]}var g=[];for(r in h){g.push(h[r].get("uuid"))}this.manageXtraParams();Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods[b],method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({uuids:g,extraParams:this.extraParams}),success:Ext.bind(this.deleteRecCallbackSuccess,this),failure:Ext.bind(this.deleteRecCallbackFailure,this)})},deleteRecCallbackSuccess:function(b,g){b=Ext.JSON.decode(b.responseText).d;if(this.delLoadMask){this.delLoadMask.hide()}if(b.success){this.fireEvent("forceRefresh")}else{if(b.sessionExpired){GeoMind.utils.SessionManager.validateSession(b);return}var h=this.getFeedbackMessage(b);Ext.Msg.show({title:this.lang.getString("callbackFailureTitle"),msg:h,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},deleteRecCallbackFailure:function(b,g){if(this.delLoadMask){this.delLoadMask.hide()}Ext.Msg.show({title:this.lang.getString("callbackFailureTitle"),msg:this.lang.getString("callbackFailure_Msg2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}});Ext.define("GeoMind.desktop.dataView.EditManager",{extend:GeoMind.desktop.dataView.generic.EditManager,requires:[],constructor:function(b){Ext.apply(this,b);this.callParent([b])},manageXtraParams:function(){}});Ext.define("GeoMind.desktop.dataView.base.form.lang.BaseUi",{strings:{form_title:{pl:"Base",en:"Base"},uuid:{pl:"Uuid obiektu",en:"Object uuid"},creator_uuid:{pl:"Utworzony przez uuid",en:"Creator uuid"},last_modified_by:{pl:"Zmodyfikowany przez uuid",en:"Modified by uuid"},create_date:{pl:"Data utworzenia",en:"Create date"},modify_date:{pl:"Data modyfikacji",en:"Modify date"},end_date:{pl:"Data zakoÅczenia",en:"End date"},keep_history:{pl:"ZapisywaÄ historiÄ?",en:"Keep history?"},is_active:{pl:"Aktywny?",en:"Is active?"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.base.form.BaseUi",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.base.form.lang.BaseUi");var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"uuid",readOnly:true,forceReadOnly:true},{xtype:"textfield",dataIndex:"creator_uuid",readOnly:true,forceReadOnly:true},{xtype:"textfield",dataIndex:"last_modified_by",readOnly:true,forceReadOnly:true},{xtype:"datefield",dataIndex:"create_date",format:"Y-m-d H:i:s",readOnly:true,forceReadOnly:true},{xtype:"datefield",dataIndex:"modify_date",format:"Y-m-d H:i:s",readOnly:true,forceReadOnly:true},{xtype:"datefield",dataIndex:"end_date",format:"Y-m-d H:i:s",readOnly:true,forceReadOnly:true},{xtype:"checkbox",dataIndex:"keep_history"},{xtype:"checkbox",dataIndex:"is_active"}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.generic.panel.lang.Generic",{strings:{btnCreate:{pl:"Dodaj",en:"Add"}
1,btnCreateTip:{pl:"Dodaj nowy rekord",en:"Add new record"},btnUpdate:{pl:"Edytuj",en:"Edit"},btnUpdateTip:{pl:"Rozpocznij edycjÄ zaznaczonego rekordu",en:"Edit selected record"},btnDestroy:{pl:"UsuÅ",en:"Delete"},btnDestroyTip:{pl:"UsuÅ zaznaczony rekord",en:"Delete selected record"},btnClone:{pl:"Klonuj",en:"Clone"},btnCloneTip:{pl:"Klonuj zaznaczony rekord",en:"Clone selected record"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.form.lang.Generic",{strings:{title:{pl:"Widok szczegóÅowy",en:"Detailed view"},fieldRequired:{pl:"To pole jest wymagane",en:"This field is required"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.form.Validation",{constructor:function(b){Ext.apply(this,b)},initFormValidation:function(){this.getValidationItems()},getValidationItems:function(){},validateMe:function(){return{valid:true,invalidFields:null}},invalidFields:null,cleanInvalidFields:function(){this.invalidFields=null},addInvalidField:function(b){this.invalidFields==null?this.invalidFields=b:this.invalidFields+=", "+b}});Ext.define("GeoMind.desktop.dataView.generic.form.Behavior",{constructor:function(b){Ext.apply(this,b)},initFormBehavior:function(){this.getBehaviorItems();this.wireUpBehaviorEvents();this.doBehave()},getBehaviorItems:function(){},wireUpBehaviorEvents:function(){},doBehave:function(){},markFieldInvalid:function(g){var b=this;Ext.apply(g,{validator:function(){return b.genericLang.getString("fieldRequired")}});g.isValid()},markFieldValid:function(b){Ext.apply(b,{validator:function(){return true}});b.isValid()}});Ext.define("GeoMind.desktop.dataView.generic.form.Generic",{extend:GeoMind.base.Module,mixins:[GeoMind.desktop.dataView.generic.form.Validation,GeoMind.desktop.dataView.generic.form.Behavior],genericLang:null,view:null,active:false,managedItems:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.managedItems=[];this.genericLang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.form.lang.Generic");this.createView();if(!this.view){this.view=Ext.create("Ext.panel.Panel",{title:this.genericLang.getString("title"),border:false,html:"This is a default form view... You should create an own one, ya know, right?"})}},buildHtmlEditorWindow:function(h,z,g){var B=Ext.create("Ext.form.field.HtmlEditor",{enableColors:true,enableAlignments:true});var b;var q=h.get("translation");var o=Ext.create("Ext.button.Button",{iconCls:"gm-dv_edit_form_bnt_ok",text:z,listeners:{click:function(){h.set("translation",B.getValue());h.commit();b.close()}}});var A=Ext.create("Ext.button.Button",{iconCls:"gm-dv_edit_form_bnt_cancel",text:g,listeners:{click:function(){h.set("translation",q);h.commit();b.close()}}});b=Ext.create("Ext.window.Window",{modal:true,title:"Description Editor",closeAction:"destroy",width:550,height:250,layout:"fit",items:[B],bbar:["->","-",o,"-",A]});b.on("show",function(){B.setValue(q)});return b},createView:function(){},registerFormItems:function(b){for(var g=0;g<b.items.items.length;g++){b.items.items[g]._owner=b;this.managedItems.push(b.items.items[g]);if(b.items.items[g].registerChildren==true){this.registerFormItems(b.items.items[g])}}},translateFormItems:function(){for(var g=0;g<this.managedItems.length;g++){if(this.managedItems[g].autoTranslate!=false){var b=this.lang;if(this.managedItems[g]._owner.lang){b=this.managedItems[g]._owner.lang}if(Ext.isFunction(this.managedItems[g].setFieldLabel)){this.managedItems[g].setFieldLabel(b.getString(this.managedItems[g].dataIndex))}}}},getFormItem:function(g){var h=null;for(var b=0;b<this.managedItems.length;b++){if(this.managedItems[b].dataIndex==g){h=this.managedItems[b];break}}return h},getCustomFormItem:function(b){return this.view.down('[dataIndex="'+b+'"]')},getItemByProperty:function(b,h,g){var q=null;for(var o in g){if(g[o]&&g[o][h]==b){q=g[o];break}}return q},getItemsByProperty:function(b,h,g){var q=[];for(var o in g){if(g[o]&&g[o][h]==b){q.push(g[o])}}return q},clearForm:function(){for(mi in this.managedItems){if(this.managedItems[mi].setValue){this.managedItems[mi].setValue(null)}}this.clearCustomFields()},clearCustomFields:function(){},boundRec:null,bindRecord:function(b){var g=b.self.getName();this.boundRec=Ext.create(g);for(k in b.fields.keys){this.boundRec.set(b.fields.keys[k],b.get(b.fields.keys[k]))}this.bindFields(b);var h=this.getFormItem("uuid");if(h){h.setValue(b.get("uuid"))}this.bindCustomFields(b)},bindFields:function(b){for(k in b.fields.keys){if(b.fields.keys[k]=="uuid"){continue}var h=b.get(b.fields.keys[k]);if(h&&h.isModel){this.bindFields(h)}var g=this.getFormItem(b.fields.keys[k]);if(g&&g.setValue&&g.autoBind!=false){g.setValue(h);if(Ext.isFunction(g.bindTranslations)){g.bindTranslations(b.get("translations"))}}}},bindCustomFields:function(b){},activate:function(){this.active=true;for(mi in this.managedItems){if(!this.managedItems[mi].forceReadOnly&&this.managedItems[mi].setReadOnly){this.managedItems[mi].setReadOnly(false)}}this.activateCustomFields();this.initFormBehavior();this.initFormValidation()},activateCustomFields:function(){},collectFormData:function(){this.collectFieldData(this.boundRec);this.collectDataForCustomisedFields(this.boundRec);var b=this.validateMe();
1return{valid:b.valid,invalidFields:b.invalidFields,data:b.valid?this.prepareData(this.boundRec):{}}},collectFieldData:function(g){var b=g.fields;for(k in g.fields.keys){if(g.fields.keys[k]=="uuid"){continue}var z=g.get(g.fields.keys[k]);if(z&&z.isModel){this.collectFieldData(z)}var w=this.getFormItem(g.fields.keys[k]);if(w&&w.getValue&&w.autoBind!=false){g.set(g.fields.keys[k],w.getValue());if(Ext.isFunction(w.collectTranslations)){var q=w.collectTranslations();var o=g.get("translations");if(!o){o=[]}var h=[];for(ctr in o){if(o[ctr].property_name!=w.dataIndex){h.push(o[ctr])}}for(tr in q){h.push(q[tr])}g.set("translations",h)}}}},prepareData:function(h){var b={},g;for(d in h.data){g=h.fields.get(d);if(g&&!g.persist){continue}if(h.data[d]&&h.data[d].isModel){b[d]=this.prepareData(h.data[d])}else{b[d]=h.data[d]}}return b},collectDataForCustomisedFields:function(b){},_onRequestDataBind:function(b){this.bindRecord(b.data.record)}});Ext.define("GeoMind.desktop.dataView.generic.panel.Generic",{extend:GeoMind.base.Module,lang:null,view:null,form:null,list:null,search:null,recordFilter:null,useSearchToolbar:false,usePagingToolbar:true,useNumResultsCombo:true,toolbar:null,editManager:null,btnsCfg:null,enableEdit:true,useForm:true,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.panel.lang.Generic");this.mc=Ext.create("GeoMind.base.ModuleController");if((this.useForm||this.enableEdit)&&this.form){this.form=this.mc.registerModule(this.form);this.formClass=Ext.getClassName(this.form)}this.list=this.mc.registerModule(this.list);if(this.search){this.search=this.mc.registerModule(this.search)}this.createToolbar();this.listPanel=Ext.create("Ext.panel.Panel",{region:"center",layout:"fit",items:[this.list.listView]});if(this.useForm&&this.form){this.formPanel=Ext.create("Ext.panel.Panel",{width:375,minWidth:375,region:"east",collapsible:true,hideCollapseTool:true,preventHeader:true,split:true,layout:"fit",border:false,items:[this.form.view]})}this.initEditManager();this.createButtons();this.createEditToolbar();this.customiseEditability();this.createView()},createButtons:function(){var g=GeoMind.utils.QTip;var b={btnCreate:{iconCls:"gm-dv_record_create",scale:"small",text:this.lang.getString("btnCreate"),tooltip:g.getQtipHtml(this.lang.getString("btnCreate"),this.lang.getString("btnCreateTip"))},btnUpdate:{iconCls:"gm-dv_record_update",scale:"small",text:this.lang.getString("btnUpdate"),tooltip:g.getQtipHtml(this.lang.getString("btnUpdate"),this.lang.getString("btnUpdateTip"))},btnDestroy:{iconCls:"gm-dv_record_destroy",scale:"small",text:this.lang.getString("btnDestroy"),tooltip:g.getQtipHtml(this.lang.getString("btnDestroy"),this.lang.getString("btnDestroyTip"))},btnClone:{iconCls:"gm-dv_record_clone",scale:"small",text:this.lang.getString("btnClone"),tooltip:g.getQtipHtml(this.lang.getString("btnClone"),this.lang.getString("btnCloneTip"))}};Ext.merge(b,this.btnsCfg);this.btnCreate=Ext.create("Ext.button.Button",b.btnCreate);this.btnCreate.on("click",this.onBtnCreateClick,this);this.btnUpdate=Ext.create("Ext.button.Button",b.btnUpdate);this.btnUpdate.on("click",this.onBtnUpdateClick,this);this.btnDestroy=Ext.create("Ext.button.Button",b.btnDestroy);this.btnDestroy.on("click",this.onBtnDestroyClick,this);this.btnClone=Ext.create("Ext.button.Button",b.btnClone);this.btnClone.on("click",this.onBtnCloneClick,this);this.btnCreateSeparator=Ext.create("Ext.toolbar.Separator");this.btnUpdateSeparator=Ext.create("Ext.toolbar.Separator");this.btnDestroySeparator=Ext.create("Ext.toolbar.Separator");this.btnCloneSeparator=Ext.create("Ext.toolbar.Separator")},createEditToolbar:function(){this.editToolbar=Ext.create("Ext.toolbar.Toolbar",{items:[this.btnCreate,this.btnCreateSeparator,this.btnUpdate,this.btnUpdateSeparator,this.btnDestroy,this.btnDestroySeparator,this.btnClone,this.btnCloneSeparator,"->"],dock:"right",vertical:true,weigth:10})},customiseEditability:function(){},createView:function(){this.view=Ext.create("Ext.container.Container",{title:config.title,iconCls:config.iconCls,layout:"border",items:[this.listPanel]});if(this.usePagingToolbar){this.list.listViewPagingToolbar.dock="bottom";this.listPanel.addDocked(this.list.listViewPagingToolbar)}if(this.toolbar){this.listPanel.addDocked(this.toolbar)}if(this.enableEdit){this.listPanel.addDocked(this.editToolbar)}if(this.useForm){this.view.add(this.formPanel)}},createToolbar:function(){if(!this.useSearchToolbar||!this.useNumResultsCombo){return}this.toolbar=Ext.create("Ext.toolbar.Toolbar",{weight:10});if(this.search){this.toolbar.add(this.search.getDefaultToolbarItems())}if(this.useNumResultsCombo){if(this.useSearchToolbar){this.toolbar.add(["->"])}this.toolbar.add([this.list.resultsPerPageLbl,this.list.resultsPerPageCombo])}},onBtnCreateClick:function(){this.onEditRequest("create")},onBtnCloneClick:function(){var b=this.getSelectedItem();if(b){this.onEditRequest("clone")}},onBtnUpdateClick:function(){var b=this.getSelectedItem();if(b){this.onEditRequest("update")}},onBtnDestroyClick:function(){var b=this.getSelectedItems();if(b.length>0){this.onEditRequest("destroy")}},getSelectedItem:function(){var b=this.list.listView.getSelectionModel().getSelection();if(b.length==1){return b[0]}else{return null}},getSelectedItems:function(){return this.list.listView.getSelectionModel().getSelection()},initEditManager:function(){if(this.enableEdit){if(!this.editManager){this.editManager=Ext.create("GeoMind.desktop.dataView.generic.EditManager",{serviceUrl:this.serviceUrl})}if(!this.editManager.refreshEvtBound){this.editManager.on("forceRefresh",this.onRefreshRequired,this);this.editManager.refreshEvtBound=true}}},onEditRequest:function(g,o){if(!this.enableEdit){return}this.initEditManager();var b=new (this.list.listViewStore.getProxy().getModel())();var h=this.getSelectedItems();
1if(h.length==1){h=h[0]}this.editManager.handleEditRequest({operation:g,record:h,blankRecord:b,formClass:this.formClass,ignoreFields:o})},onRefreshRequired:function(){if(this.list.listView.rendered){this.list.listViewStore.reload()}}});Ext.define("GeoMind.desktop.dataView.generic.panel.ListPanel",{extend:GeoMind.desktop.dataView.generic.panel.Generic,requires:[],constructor:function(b){Ext.apply(this,b);this.callParent([b])},createEditToolbar:function(){this.editToolbar=Ext.create("Ext.toolbar.Toolbar",{items:[this.btnCreate,this.btnCreateSeparator,this.btnUpdate,this.btnUpdateSeparator,this.btnDestroy,this.btnDestroySeparator,this.btnClone,this.btnCloneSeparator,"->"],dock:"right",vertical:true,weigth:10})},customiseEditability:function(){},createView:function(){this.view=Ext.create("Ext.container.Container",{title:this.title,iconCls:this.iconCls,layout:"border",items:[this.listPanel]});if(this.enableEdit){this.listPanel.addDocked(this.editToolbar)}if(this.usePagingToolbar){this.list.listViewPagingToolbar.dock="bottom";this.listPanel.addDocked(this.list.listViewPagingToolbar)}if(this.toolbar){this.listPanel.addDocked(this.toolbar)}if(this.useForm){this.view.add(this.formPanel)}}});Ext.define("GeoMind.desktop.dataView.generic.search.lang.Generic",{strings:{btnClear:{pl:"WyczyÅÄ filtr",en:"Clear filter"},btnClearTip:{pl:"Usuwa obecny filtr",en:"Clears the current filter"},btnSearch:{pl:"Szukaj",en:"Search"},btnSearchTip:{pl:"Aplikuj filtr",en:"Apply filter"},searchCols:{pl:"Szukaj po...",en:"Search on..."}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.search.Generic",{extend:GeoMind.base.Module,btnClear:null,txtFreeSearch:null,freeSearchColumns:null,filter:null,autoApplyFilter:true,constructor:function(b){var g=this;Ext.apply(this,b);this.callParent([b]);this.internalLang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.search.lang.Generic");if(!this.freeSearchColumns){this.freeSearchColumns=[]}g.roleStore=Ext.create("Ext.data.ArrayStore",{data:[],fields:["uuid","name"]});g.roleFilter=Ext.create("Ext.form.ComboBox",{name:"role_filter_combo",store:g.roleStore,multiSelect:true,queryMode:"local",editable:false,valueField:"uuid",displayField:"name",emptyText:"Filter on role",width:Ext.getBody().getWidth()>1300?300:200,listeners:{scope:g,change:g.onRoleFilterChange},trigger1Cls:"x-form-clear-trigger",onTrigger1Click:function(o){this.clearValue()},trigger2Cls:"x-form-arrow-trigger"});this.filter=Ext.create("GeoMind.data.DataFilter");var h=GeoMind.utils.QTip;this.txtFreeSearch=Ext.create("Ext.form.field.Text",{enableKeyEvents:true});this.txtFreeSearch.on("keyup",this.onTxtFreeSearch,this);this.colPicker=Ext.create("Ext.button.Split",{text:this.internalLang.getString("searchCols"),menu:new Ext.menu.Menu({items:[]})});for(fsc in this.freeSearchColumns){this.colPicker.menu.add(new Ext.menu.CheckItem({text:this.lang.getString(this.freeSearchColumns[fsc]),dataColumn:this.freeSearchColumns[fsc],checked:true,hideOnClick:false,checkHandler:Ext.bind(this.colPickerChanged,this)}))}this.customiseSearch();this.btnClear=Ext.create("Ext.button.Button",{iconCls:"gm-search_clear",text:this.internalLang.getString("btnClear"),tooltip:h.getQtipHtml(this.internalLang.getString("btnClear"),this.internalLang.getString("btnClearTip"))});this.btnClear.on("click",this.clearFilter,this)},customiseSearch:function(){},getDefaultToolbarItems:function(){return[this.colPicker,this.txtFreeSearch,{xtype:"tbseparator"},this.btnClear]},colPickerChanged:function(){this.onFilterChanged()},onTxtFreeSearch:function(g,b,h){this.onFilterChanged()},onFilterChanged:function(){clearTimeout(this.updateFilterSchedule);var b=this;this.updateFilterSchedule=setTimeout(function(){b.updateFilter()},500)},updateFilterSchedule:null,updateFilter:function(){this.filter.removeAllFilterColumns();var b=this.txtFreeSearch.getValue();if(b!=null&&b!=""){var g=this.colPicker.menu.items.items;for(mi in g){if(g[mi].checked){if(g[mi].dataColumn==="uuid"){if(/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/.test(b)){this.filter.addFilterColumn({name:"uuid",netType:"Guid",value:b})}}else{this.filter.addFilterColumn({name:g[mi].dataColumn,value:b})}}}}this.updateCustomFilter();if(this.autoApplyFilter){this.notifyFilterUpdate()}},updateCustomFilter:function(){},notifyFilterUpdate:function(){var b={evtName:"filterUpdated",evtSuperInitiatingModule:this,evtInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{filterData:this.filter.getFilterObject()}};this.dispatchEvent(b,false)},clearFilter:function(){this.txtFreeSearch.setValue("");this.clearCustomFilter();this.onFilterChanged()},updateRoleStore:function(g){var o=this,b=[["00000000-0000-0000-0000-000000000000","No roles assigned"]];for(var h=0;h<g.length;h++){var q=g[h];if(q.get("is_guest")||q.get("is_authenticated")||q.get("role_type")!=0){continue}b.push([q.get("uuid"),q.get("name")])}o.roleStore.loadData(b)},onRoleFilterChange:function(q,o,b,g){var h=this;var w={evtName:"roleFilterUpdated",evtSuperInitiatingModule:h,evtInitiatingModule:h,evtBroadcastingController:null,callback:null,data:{roleFilter:h.roleFilter.getValue()}};h.dispatchEvent(w,false)},clearCustomFilter:function(){var b=this;if(b.roleFilter){b.roleFilter.clearValue()}if(b.guiFilter){b.guiFilter.clearValue()}}});Ext.define("GeoMind.desktop.dataView.dataSource.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.dataSource.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.dataSource.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.dataSource.form.lang.Standard",{str
1ings:{basicDataTitle:{pl:"Informacje podstawowe",en:"Basic data"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},source_type:{pl:"source_type",en:"source_type"},spatial_data_type:{pl:"spatial_data_type",en:"spatial_data_type"},spatial_data_encoding:{pl:"spatial_data_encoding",en:"spatial_data_encoding"},data_encoding:{pl:"data_encoding",en:"data_encoding"},uri:{pl:"uri",en:"uri"},request_method:{pl:"request_method",en:"request_method"},server_host:{pl:"server_host",en:"server_host"},server_name:{pl:"server_name",en:"server_name"},server_port:{pl:"server_port",en:"server_port"},db_name:{pl:"db_name",en:"db_name"},user_name:{pl:"user_name",en:"user_name"},user_pass:{pl:"user_pass",en:"user_pass"},version:{pl:"version",en:"version"},format:{pl:"format",en:"format"},info_format:{pl:"info_format",en:"info_format"},exception_format:{pl:"exception_format",en:"exception_format"},epsg:{pl:"epsg",en:"epsg"},layers:{pl:"layers",en:"layers"},table_name:{pl:"table_name",en:"table_name"},geom_col1:{pl:"geom_col1",en:"geom_col1"},geom_col2:{pl:"geom_col2",en:"geom_col2"},id_column:{pl:"id_column",en:"id_column"},query:{pl:"query",en:"query"},model_editable:{pl:"model_editable",en:"model_editable"},data_editable:{pl:"data_editable",en:"data_editable"},odbc:{pl:"odbc",en:"odbc"},spatial:{pl:"spatial",en:"spatial"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.dataSource.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},serviceUrl:null,serviceMethods:{read:"Read"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"name",readOnly:true},{xtype:"textfield",dataIndex:"description",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"source_type",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"data_source_types",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"spatial_data_type",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"spatial_data_types",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"spatial_data_encoding",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"spatial_data_encoding",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"data_encoding",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"data_encoding",readOnly:true},{xtype:"textfield",dataIndex:"uri",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"request_method",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"request_methods",readOnly:true},{xtype:"textfield",dataIndex:"server_host",readOnly:true},{xtype:"textfield",dataIndex:"server_name",readOnly:true},{xtype:"textfield",dataIndex:"server_port",readOnly:true},{xtype:"textfield",dataIndex:"db_name",readOnly:true},{xtype:"textfield",dataIndex:"user_name",readOnly:true},{xtype:"textfield",dataIndex:"user_pass",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"version",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_wfs_versions",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"format",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_image_formats",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"info_format",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_info_formats",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"exception_format",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_exception_formats",readOnly:true},{xtype:"textfield",dataIndex:"epsg",readOnly:true},{xtype:"textfield",dataIndex:"layers",readOnly:true},{xtype:"textfield",dataIndex:"table_name",readOnly:true},{xtype:"textfield",dataIndex:"geom_col1",readOnly:true},{xtype:"textfield",dataIndex:"geom_col2",readOnly:true},{xtype:"textfield",dataIndex:"id_column",readOnly:true},{xtype:"textfield",dataIndex:"query",readOnly:true},{xtype:"checkbox",dataIndex:"model_editable",readOnly:true},{xtype:"checkbox",dataIndex:"data_editable",readOnly:true},{xtype:"checkbox",dataIndex:"odbc",readOnly:true},{xtype:"checkbox",dataIndex:"spatial",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.dataSource.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,serviceUrl:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.dataSource.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.dataSource.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicDataTitle"),border:false,serviceUrl:this.serviceUrl});this.view=Ext.create("Ext.tab.Panel",{items:[b,g]});this.registerFormItems(b);this.registerFormItems(g);this.translateFormItems()}});Ext.define("GeoMind.desktop.dataView.generic.list.lang.Generic",{strings:{emptyText:{pl:"Brak danych do wyÅwietlenia",en:"No data"},loadMaskMsg:{pl:"Åadowanie...",en:"Loading..."},results_per_page_lbl:{pl:"Wyników na stronie: ",en:"Hits per page: "}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.list.Generic",{extend:GeoMind.base.Module,filter:null,singleSelect:true,multiSelect:false,listViewStore:null,autoLoad:true,autoSelect:true,recordsFilter:null,genericLang:null,listViewPlugins:null,viewConfig:null,features:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.filter){this.filter=Ext.create("GeoMind.data.DataFilter")}if(this.recordsFilter){this.filter.addDefaultFilter(this.recordsFilter)}if(!this.listViewStore){this.listViewStore=Ext.create("GeoMind.data.store.DataViewBase",{model:"GeoMind.data.model.DataView"})}this.listViewStore.serverFilter=this.filter;this.genericLang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.list.lang.Generic");this.init();this.createPagingToolbar();this.createResultsPerPageCombo();this.createListView();this.bindEvents()},init:function(){},bindEvents:function(){if(this.autoLoad){this.listView.on("afterrender",this.onListAfterRender,this)}this.listView.on("select",this.onListViewSelect,this);
1this.listViewStore.on("beforeload",this.onStoreBeforeLoad,this);this.listViewStore.on("load",this.onStoreLoad,this)},onListAfterRender:function(){var b=this;setTimeout(function(){b.showLoadMask(b.genericLang.getString("loadMaskMsg"));b.listViewStore.loadPage(1)},500)},createListView:function(){this.listView=Ext.create("Ext.view.View",{store:this.listViewStore,tpl:this.template,autoScroll:true,singleSelect:this.singleSelect,itemSelector:"div."+this.styles.getCssRuleClassName("listwrapper"),selectedItemCls:this.styles.getCssRuleClassName("listwrapperselected"),overItemCls:this.styles.getCssRuleClassName("listwrapperover"),trackOver:true,multiSelect:this.multiSelect,loadMask:false,deferEmptyText:true,emptyText:this.genericLang.getString("emptyText"),viewConfig:this.viewConfig,plugins:this.listViewPlugins})},createPagingToolbar:function(){this.listViewPagingToolbar=Ext.create("Ext.toolbar.Paging",{store:this.listViewStore,displayInfo:true,weight:10})},resultsPerPageCombo:null,resultsPerPageLbl:null,createResultsPerPageCombo:function(){this.resultsPerPageCombo=Ext.create("Ext.form.ComboBox",{store:Ext.create("Ext.data.Store",{fields:["numResults","numResultsDesc"],data:[{numResults:10,numResultsDesc:"10"},{numResults:20,numResultsDesc:"25"},{numResults:50,numResultsDesc:"50"},{numResults:100,numResultsDesc:"100"},{numResults:1000,numResultsDesc:"1000"}]}),queryMode:"local",displayField:"numResultsDesc",valueField:"numResults",triggerAction:"all",editable:false,width:75});this.resultsPerPageLbl=Ext.create("Ext.toolbar.TextItem",{text:this.genericLang.getString("results_per_page_lbl")});this.resultsPerPageCombo.setValue(this.listViewStore.pageSize);this.resultsPerPageCombo.on("select",this.onResultsPerPageComboChange,this)},onResultsPerPageComboChange:function(){this.listViewStore.pageSize=this.resultsPerPageCombo.getValue();this.listViewStore.loadPage(1)},modelUuidField:"uuid",recBeforeLoad:null,onStoreBeforeLoad:function(){var b=this.listView.getSelectionModel().getSelection();if(b.length==1){this.recBeforeLoad=b[0]}this.showLoadMask(this.genericLang.getString("loadMaskMsg"))},onStoreLoad:function(){this.hideLoadMask();if(!this.autoSelect){return}if(this.listViewStore.getCount()>0){if(this.recBeforeLoad){var b=this.listViewStore.find(this.modelUuidField,this.recBeforeLoad.get(this.modelUuidField));if(b==-1){b=0}this.listView.getSelectionModel().select(b,false,true);this.requestDataBind(this.listViewStore.getAt(b))}else{this.listView.getSelectionModel().select(0,false,true);this.requestDataBind(this.listViewStore.getAt(0))}}else{this.requestDataBind(new (this.listViewStore.getProxy().getModel())())}this.recBeforeLoad=null},onListViewDblClick:function(g,b,q,h,w,o){this.requestDataBind(b,"dblClick")},onListViewItemMouseEnter:function(g,b,q,h,w,o){this.requestDataBind(b,"itemMouseEnter")},onListViewSelect:function(o,b,g,h){this.requestDataBind(b,"select")},requestDataBind:function(b,h){var g={evtName:"requestDataBind",evtSuperInitiatingModule:this,evtInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{record:b,method:h}};this.dispatchEvent(g,false)},updateFilter:function(b){this.filter.updateFilter(b)},loadMask:null,showLoadMask:function(b){if(!this.loadMask){if(!this.listView.getEl()){return}this.loadMask=new Ext.LoadMask(this.listView.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},_onFilterUpdated:function(b){this.updateFilter(b.data.filterData);this.listViewStore.loadPage(1)}});Ext.define("GeoMind.desktop.dataView.generic.listStyle.Generic",{_id:null,useUniqueStyles:false,constructor:function(b){Ext.apply(this,b);this._id=Ext.id();this.prepareDefaultStyles();this.prepareStyles()},styles:{},defaultStyles:null,prepareDefaultStyles:function(){this.defaultStyles={}},prepareStyles:function(){var b=(this.useUniqueStyles?this._id:"");for(ds in this.defaultStyles){if(this.styles[ds]==undefined){this.styles[ds]=this.defaultStyles[ds]}}for(s in this.styles){this.styles[s].className=this.styles[s].className.replace("{uid}",b);this.createCss(this.styles[s])}},getCssRuleClassName:function(b){return this.styles[b].className},createCss:function(b){var g="";for(r in b.css){g+=r+":"+b.css[r]+";"}g="."+b.className+"{"+g+"}";if(!Ext.util.CSS.getRule("."+b.className)){Ext.util.CSS.createStyleSheet(g,this._id)}}});Ext.define("GeoMind.desktop.dataView.generic.listStyle.Standard",{extend:GeoMind.desktop.dataView.generic.listStyle.Generic,constructor:function(b){Ext.apply(this,b);this.callParent([b])},prepareDefaultStyles:function(){this.defaultStyles={listwrapper:{className:"listWrapper{uid}",css:{"text-align":"center",width:"inherit 50%",border:"1px #999999 solid",margin:"5px","-moz-border-radius":"5px","-webkit-border-radius":"5px","background-color":"#ffffcc","padding-bottom":"3px","font-family":"Arial, Helvetica, sans-serif","font-size":"small","font-variant":"normal",color:"#333333","-webkit-user-select":"none","-moz-user-select":"none","-khtml-user-select":"none"}},listwrapperover:{className:"listWrapperOver{uid}",css:{border:"1px #9999ff solid","background-color":"#ccccff",cursor:"pointer"}},listwrapperselected:{className:"listWrapperselected{uid}",css:{border:"1px #9999ff solid","background-color":"#ccccff",cursor:"pointer"}},listtable:{className:"listTable{uid}",css:{"text-align":"left","table-layout":"fixed",width:"98%","border-collapse":"collapse",margin:"0 auto"}},listtablerow:{className:"listTableRow{uid}",css:{width:"100%",padding:"5px 5px 0px 0px"}},listtablecell:{className:"listTableCell{uid}",css:{padding:"5px 5px 0px 0px"}},listtablecellbottomborder:{className:"listTableCellBottomBorder{uid}",css:{"border-bottom":"dashed 1px #999999"}},listemphasise:{className:"listEmphasise{uid}",css:{"font-weight":"600","font-style":"italic",color:"#555555"}},listtablecellcontentclip:{className:"listTableCellContentClip{uid}",css:{"white-space":"nowrap",overflow:"hidden","text-overflow":"ellipsis","-o-text-overflow":"ellipsis","-icab-text-overflow":"ellipsis","-khtml-text-overflow":"ellipsis","-moz-text-overflow":"ellipsis","-webkit-text-overflow":"ellipsis"}},nameemphasise:{className:"nameEmphasise{uid}",css:{"font-weight":"800","font-size":"14px",color:"#990033"}},diggin:{className:"dig_in",css:{display:"none"}},digginhover:{className:"listWrapperOver{uid} div.dig_in",css:{display:"block"}},digout:{className:"dig_out",css:{display:"none"}},digouthover:{className:"listWrapperOver{uid} div.dig_out",css:{display:"block"}}}}});Ext.define("GeoMind.desktop.dataView.generic.list.List",{extend:GeoMind.desktop.dataView.generic.list.Generic,template:null,styles:null,constructor:function(b){Ext.apply(this,b);
1if(!this.styles){this.styles=Ext.create("GeoMind.desktop.dataView.generic.listStyle.Standard")}this.callParent([b])},init:function(){this.listViewStore.loadData([{field1:"r1f1",field2:"r1f2"},{field1:"r2f1",field2:"r2f2"},{field1:"r3f1",field2:"r3f2"}]);this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">',"<p>Default list view template - please override</p><p>Field1: {field1}, Field2: {field2}</p>","</div></tpl>");this.template.compile()},createListView:function(){this.listView=Ext.create("Ext.view.View",{store:this.listViewStore,tpl:this.template,autoScroll:true,singleSelect:this.singleSelect,itemSelector:"div."+this.styles.getCssRuleClassName("listwrapper"),selectedItemCls:this.styles.getCssRuleClassName("listwrapperselected"),overItemCls:this.styles.getCssRuleClassName("listwrapperover"),trackOver:true,multiSelect:this.multiSelect,loadMask:false,deferEmptyText:true,emptyText:this.genericLang.getString("emptyText"),plugins:this.listViewPlugins})}});Ext.define("GeoMind.desktop.dataView.dataSource.list.lang.Standard",{strings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.dataSource.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_data_source"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>","</tr>","</table>","</div></tpl>");this.template.compile()}});Ext.define("GeoMind.desktop.dataView.dataSource.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.dataSource.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.DataSource",serviceUrl:"WebServices/DataSource.asmx/",serviceMethods:{read:"Read"}})});this.form=Ext.create("GeoMind.desktop.dataView.dataSource.form.Standard",{serviceUrl:"WebServices/Dictionaries.asmx/"});this.search=Ext.create("GeoMind.desktop.dataView.dataSource.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/DataSource.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.generic.dictionary.combo.lang.Standard",{strings:{loadingMsg:{pl:"[Åadowanie...]",en:"[Loading...]"},noDataMsg:{pl:"[Brak danych...]",en:"[No data...]"},nullRecInfo:{pl:"[Nie wybrano...]",en:"[Not chosen...]"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.dictionary.combo.Standard",{extend:Ext.form.ComboBox,alias:"widget.geomind.dictionary",serviceUrl:"",serviceMethods:{read:"Read"},dictionaryName:"",model:null,enableNullValue:true,width:120,disabled:true,queryMode:"local",triggerAction:"all",editable:false,displayField:"value",valueField:"uuid",autoEnable:null,autoDataLoad:true,preventCacheRead:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.internalLang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.dictionary.combo.lang.Standard");if(!this.model){this.model="GeoMind.data.model.Dictionary"}this.store=Ext.create("GeoMind.data.store.Dictionary",{model:this.model,serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:this.dictionaryName,autoLoad:this.autoDataLoad});
1this.store.on("beforeload",this.onStoreBeforeLoad,this);this.store.on("load",this.onStoreLoad,this);this.originalEmptyText=this.emptyText},setEmptyText:function(b){this.emptyText=b;this.applyEmptyText()},onStoreBeforeLoad:function(){var b=GeoMind.utils.DictionaryManager.getDictionary(this.dictionaryName);if(this.preventCacheRead||b==null){this.setEmptyText(this.internalLang.getString("loadingMsg"));return true}else{this.store.loadData(b);this.store.fireEvent("load");this.setValue(this.currentComboValue);return false}},onStoreLoad:function(){GeoMind.utils.DictionaryManager.saveDictionary(this.dictionaryName,this.store.getRange());if(this.store.getCount()>0){this.setEmptyText(this.originalEmptyText);if(this.enableNullValue){this.addNullRecord()}this.setComboValue(this.currentComboValue);if(this.autoEnable!=false){this.enable()}}else{this.setEmptyText(this.internalLang.getString("noDataMsg"))}},addNullRecord:function(){this.store.insert(0,[Ext.create(this.model,{uuid:null,value:this.internalLang.getString("nullRecInfo"),description:this.internalLang.getString("nullRecInfo")})])},setValue:function(b){if((b==null||b==undefined)&&this.enableNullValue){b=this.store.getAt(0)}this.currentComboValue=b;this.callParent(arguments)},setComboValue:function(g){if(g!=null&&g!=undefined){var b=this.store.findExact("uuid",g);if(b>-1){this.setValue(this.store.getAt(b))}}else{this.setValue(this.store.getAt(0))}}});Ext.define("GeoMind.desktop.dataView.generic.linkGrid.lang.Standard",{strings:{btnAdd:{pl:"Dodaj",en:"Add"},btnAddTip:{pl:"Dodaje powiÄ
zania",en:"Adds relations"},resourceBrowserNotProvided_title:{pl:"Info",en:"Info"},resourceBrowserNotProvided_msg:{pl:"ModuÅ przeglÄ
dania zasobów nie zadeklarowany",en:"Missing a resource browser module"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.linkGrid.Standard",{extend:GeoMind.base.Module,model:null,gridStore:null,columns:null,grid:null,view:null,formContainer:null,useHeaderColumn:false,useDelColumn:true,resourceBrowser:null,resourceUuid:null,resourceInternalName:null,resourceFilter:null,linkedResource:null,startLvl:null,pickLevels:null,nableEdit:false,useForm:false,singleSelect:false,multiSelect:true,listAutoLoad:true,gridConfig:null,active:false,constructor:function(b){var z=GeoMind.utils.QTip;this.internalLang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.generic.linkGrid.lang.Standard");if(!this.columns){this.columns=[]}Ext.apply(this,b);this.callParent([b]);var o=[];if(this.useHeaderColumn){var w={width:22,renderer:Ext.bind(this.headerColumnRenderer,this)};o.push(w)}for(var q=0;q<this.columns.length;q++){o.push(this.columns[q])}if(this.useDelColumn){var g={width:25,renderer:Ext.bind(this.delColumnRenderer,this)};o.push(g)}this.gridStore=Ext.create("Ext.data.Store",{model:this.model,data:[]});this.btnAdd=Ext.create("Ext.button.Button",{iconCls:"gm-ink_grid_add_link",text:this.internalLang.getString("btnAdd"),tooltip:z.getQtipHtml(this.internalLang.getString("btnAdd"),this.internalLang.getString("btnAddTip"))});this.tbar=Ext.create("Ext.toolbar.Toolbar",{items:["->",this.btnAdd],hidden:true});var h={store:this.gridStore,columns:o,stripeRows:true,layout:"fit",border:false,tbar:this.tbar,viewConfig:{plugins:{ptype:"gridviewdragdrop",ddGroup:this._id},listeners:{beforedrop:Ext.bind(this.onBeforeDrop,this)}}};if(!this.gridConfig){this.gridConfig={}}Ext.apply(this.gridConfig,h);this.grid=Ext.create("Ext.grid.Panel",this.gridConfig);if(this.useDelColumn){this.grid.on("cellclick",function(B,D,F,C,E,H,G){var A=B.getRecord(E);if(this.active){if(o.length==F+1){A.store.remove([A])}}},this)}this.grid.on("selectionchange",this.onGridSelectionChange,this);this.view=Ext.create("Ext.panel.Panel",{iconCls:this.iconCls,title:this.title,layout:{type:"vbox",align:"stretch"},items:[]});this.grid.flex=1;this.formContainer=Ext.create("Ext.container.Container",{flex:1,layout:"fit"});this.view.add([this.grid,this.formContainer]);this.formContainer.hide();this.initLinkDataForms();this.btnAdd.on("click",this.onBtnAddClick,this)},onGridSelectionChange:function(g,h,b){this.collectLinkData();
1if(h.length==1){this.currentLink=h[0];this.bindLinkDataForm(this.currentLink)}else{this.currentLink=null;this.resetLinkDataForm()}},currentLink:null,collectLinkData:function(){if(!this.active){return}if(this.currentLink&&this.currentForm){var b=this.currentForm.collectFormData();this.currentLink.set("extended_data",b.data)}},forms:null,currentForm:null,initLinkDataForms:function(){if(!Ext.isArray(this.forms)){this.forms=[]}for(lr in this.linkedResource){if(this.linkedResource[lr].linkDataForm&&this.linkedResource[lr].linkDataModel){if(!this.forms[this.linkedResource[lr].linkDataForm]){this.forms[this.linkedResource[lr].linkDataForm]=Ext.create(this.linkedResource[lr].linkDataForm)}}}},resetLinkDataForm:function(){this.currentForm=null;this.formContainer.removeAll(false);this.formContainer.hide()},bindLinkDataForm:function(b){this.resetLinkDataForm();var g=this.checkFilter(b.get("child_type_internal_name"));if(g==-1){return}if(!Ext.isArray(this.linkedResource)||this.linkedResource.length<=g){return}if(!this.linkedResource[g].linkDataForm||!this.linkedResource[g].linkDataModel){return}this.currentForm=this.forms[this.linkedResource[g].linkDataForm];this.formContainer.add(this.currentForm.view);this.formContainer.show();this.currentForm.bindRecord(Ext.create(this.linkedResource[g].linkDataModel,b.get("extended_data")))},delColumnRenderer:function(w,h,g,q,o,b){if(this.active){return'<div class="gm-link_grid_iconSize gm-link_grid_deleteRow"></div>'}else{return'<div class="gm-link_grid_iconSize gm-link_grid_deleteRow_disabled"></div>'}},headerColumnRenderer:function(z,h,g,w,o,b){var q=this.checkFilter(g.get("child_type_internal_name"));if(q>-1&&Ext.isArray(this.linkedResource)&&this.linkedResource.length>q){return'<div class="gm-link_grid_iconSize '+this.linkedResource[q].iconCls+'"></div>'}else{return""}},onBtnAddClick:function(){if(this.resourceBrowser){this.rb=this.createResourceBrowser();this.rb.on("resourcePickerFeedback",this.onResourceBrowserFeedback,this)}else{Ext.Msg.show({title:this.internalLang.getString("resourceBrowserNotProvided_title"),msg:this.internalLang.getString("resourceBrowserNotProvided_msg"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},createResourceBrowser:function(){return Ext.create(this.resourceBrowser,{startLvl:this.startLvl,resourceUuid:this.resourceUuid,resourceInternalName:this.resourceInternalName,resourceFilter:this.resourceFilter,pickLevels:this.pickLevels,recordsFilter:this.recordsFilter,enableEdit:this.enableEdit,useForm:this.useForm,singleSelect:this.singleSelect,multiSelect:this.multiSelect,recordsFilter:this.recordsFilter,listAutoLoad:this.listAutoLoad})},onResourceBrowserFeedback:function(b){this.rb.un("resourcePickerFeedback",this.onResourceBrowserFeedback,this);this.manageResourceBrowserFeedback(b)},manageResourceBrowserFeedback:function(b){},onBeforeDrop:function(o,w,q,b,g,h){if(this.active){return true}else{return false}},checkFilter:function(g){var b=-1;if(this.resourceFilter){for(f in this.resourceFilter){if(this.resourceFilter[f]==g){b=f;break}}}else{if(this.resourceInternalName&&this.resourceInternalName==g){b=0}}return b},bindData:function(g){var b=[];for(d in g){if(this.checkFilter(g[d].child_type_internal_name)>-1){b.push(g[d])}}this.gridStore.loadData(b)},getData:function(){this.collectLinkData();var h=[];var g=this.gridStore.getRange();for(var b=0;b<g.length;b++){var o={};for(k in g[b].fields.keys){o[g[b].fields.keys[k]]=g[b].get(g[b].fields.keys[k])}h.push(o)}return h},activate:function(){this.active=true;this.tbar.show();if(this.forms){for(f in this.forms){this.forms[f].activate()}}},deactivate:function(){this.active=false;this.tbar.hide()}});Ext.define("GeoMind.desktop.dataView.generic.list.Grid",{extend:GeoMind.desktop.dataView.generic.list.Generic,gridCls:null,selType:"rowmodel",constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){},createListView:function(){if(this.columns==null){this.columns=[]}var b=this.columns.findIndex(function(h){return h.dataIndex==="id"});var g={text:"UUID",dataIndex:"uuid",width:230,hidden:true,renderer:function(h){return'<input type="text" readonly onclick="this.select(); document.execCommand(\'copy\');" style="font: 11px monospace; width:100%; background: none; border: none; padding: 4px 0 5px; margin: -3px 0 -4px;" title="Click to copy" value="'+h+'">'}};b!==-1&&this.columns.splice(b+1,0,g);if(!this.viewConfig){this.viewConfig={loadMask:false}}else{this.viewConfig.loadMask=false}this.listView=Ext.create("Ext.grid.Panel",{border:false,store:this.listViewStore,selModel:{pruneRemoved:!this.listViewStore.buffered,selType:this.selType},sortableColumns:this.sortableColumns===false?false:true,enableColumnHide:this.enableColumnHide===false?false:true,hideHeaders:this.hideHeaders===true?true:false,viewConfig:this.viewConfig,plugins:this.listViewPlugins,columns:this.columns,cls:this.gridCls,multiSelect:this.multiSelect,singleSelect:this.singleSelect,features:this.features})}});Ext.define("GeoMind.desktop.dataView.generic.translation.lang.Grid",{strings:{lng:{pl:"JÄzyk",en:"Language"},translation:{pl:"TÅumaczenie",en:"Translation"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.generic.translation.Grid",{extend:Ext.container.Container,alias:"widget.geomind.translationgrid",model:"GeoMind.data.model.DataTranslation",height:100,layout:"fit",active:false,dataIndex:null,lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="GeoMind.desktop.dataView.generic.translation.lang.Grid"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.store=Ext.create("Ext.data.Store",{model:this.model,serviceUrl:this.serviceUrl});this.lngStore=Ext.create("Ext.data.Store",{fields:["code","name","icon"],data:GeoMind.lang.SupportedLangs.supportedLangs});this.grid=Ext.create("Ext.grid.Panel",{store:this.store,columns:[{dataIndex:"lng_code",header:this.lang.getString("lng"),editor:{xtype:"combobox",store:this.lngStore,displayField:"name",valueField:"code",queryMode:"local",triggerAction:"all",editable:false},renderer:Ext.bind(this.lngColRenderer,this)},{dataIndex:"translation",header:this.lang.getString("translation"),flex:1,editor:"textfield"},{width:25,dataIndex:"add_del",renderer:Ext.bind(this.delColumnRenderer,this),cls:"gm-add_translation_column"}],plugins:[Ext.create("Ext.grid.plugin.CellEditing",{clicksToEdit:1})],sortableColumns:false,enableColumnHide:false});this.grid.on("cellclick",function(h,q,z,o,w,B,A){var g=h.getRecord(w);if(this.active){if(this.grid.columns.length==z+1){g.store.remove([g])}}},this);this.grid.on("headerclick",function(q,w,z,o,h){if(w.dataIndex=="add_del"){var g=Ext.create(this.model,{property_name:this.dataIndex});g.set("lng_code",this.lngStore.getAt(0).get("code"));this.store.insert(0,[g])}},this);this.items.add(this.grid)},delColumnRenderer:function(w,h,g,q,o,b){if(this.active){return'<div class="gm-link_grid_iconSize gm-link_grid_deleteRow"></div>'}else{return'<div class="gm-link_grid_iconSize gm-link_grid_deleteRow_disabled"></div>'}},lngColRenderer:function(w,g,o,B,z,q){var A=this.lngStore.find("code",w);if(A>-1){var b=this.lngStore.getAt(A);var h='<div style="width:16px; height:12px;" class="'+b.get("icon")+'"><div><span style="margin-left:20px;">'+b.get("name")+"</span>";return h}else{return"Not set"}},setReadOnly:function(b){this.active=!b;this.store.loadData(this.store.getRange())},collectTranslations:function(){var g=this.store.getRange();var b=[];for(r in g){if(g[r].get("lng_code")){b.push(g[r].getData())}}return b},bindTranslations:function(g){if(!g||!this.dataIndex){return}var b=[];for(t in g){if(g[t].property_name==this.dataIndex){b.push(g[t])}}this.store.loadData(b)},disable:function(b){this.grid.disable(b)},enable:function(b){this.grid.enable(b)}});Ext.define("GeoMind.desktop.dataView.generic.translation.Field",{extend:Ext.form.FieldContainer,alias:"widget.geomind.translatablefield",layout:{type:"vbox",align:"stretch"},height:100,dataIndex:null,registerChildren:false,readOnly:false,enableKeyEvents:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.txtField=Ext.create("Ext.form.field.Text",{enableKeyEvents:this.enableKeyEvents,readOnly:this.readOnly,allowBlank:b.allowBlank===false?false:true});this.translationGrid=Ext.create("GeoMind.desktop.dataView.generic.translation.Grid",{dataIndex:this.dataIndex,flex:1});this.add([this.txtField,this.translationGrid])},setValue:function(b){this.txtField.setValue(b)},getValue:function(){return this.txtField.getValue()},setReadOnly:function(b){this.txtField.setReadOnly(b);this.translationGrid.setReadOnly(b)},bindTranslations:function(b){this.translationGrid.bindTranslations(b)},collectTranslations:function(){return this.translationGrid.collectTranslations()},disable:function(b){var g=this;g.translationGrid.disable(b);return g.callParent(arguments)},enable:function(b){var g=this;g.translationGrid.enable(b);return g.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.lang.ResourceBrowser",{strings:{backBtn:{pl:"Wstecz",en:"Back"},pickBtn:{pl:"Wybierz zaznaczone",en:"Pick selected"},closeBtn:{pl:"Zamknij",en:"Close"},lvlNode:{pl:"Bazy danych",en:"Databases"},lvlResource:{pl:"Zasoby",en:"Resources"},lvlRecord:{pl:"rekordy",en:"records"},windowTitle:{pl:"PrzeglÄ
danie zasobów",en:"Resource browser"},resourceNotSupported_title:{pl:"Info",en:"Info"},resourceNotSupported_msg_part_1:{pl:'Zasób typu: "',en:'Resource type: "'},resourceNotSupported_msg_part_2:{pl:'" nie jest obsÅugiwany.',en:'" is not supported.'},resource_type:{pl:"Typy zasobów",en:"Resource types"}
1,node:{pl:"WÄzÅy (bazy danych)",en:"Nodes (data bases)"},project:{pl:"Projekty",en:"Projects"},projection:{pl:"UkÅady odniesienia",en:"Projections"},map:{pl:"Mapy",en:"Maps"},layer:{pl:"Warstwy",en:"Layers"},role:{pl:"Role",en:"Roles"},user:{pl:"Użytkownicy",en:"Users"},layer_group:{pl:"Grupy warstw",en:"Layer groups"},module:{pl:"ModuÅy",en:"Modules"},application:{pl:"Aplikacje",en:"Applications"},role_group:{pl:"Grupy ról",en:"Role groups"},banner:{pl:"Bannery",en:"Banners"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layerGroup.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layerGroup.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.layerGroup.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.layerGroup.form.lang.Standard",{strings:{basicDataTitle:{pl:"Informacje podstawowe",en:"Basic data"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},is_expanded:{pl:"RozwiniÄta",en:"Expanded"},linksPanelTitle:{pl:"Warstwy i grupy warstw",en:"Layers and layer groups"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layerGroup.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"name",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"description",readOnly:true},{xtype:"checkbox",dataIndex:"is_expanded",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.layerGroup.form.Behavior",{extend:GeoMind.desktop.dataView.generic.form.Behavior,constructor:function(g){var b={getBehaviorItems:this.override_GetBehaviorItems,wireUpBehaviorEvents:this.override_WireUpBehaviorEvents,doBehave:this.override_DoBehave};Ext.apply(this,b)},override_GetBehaviorItems:function(){this.b_name=this.getFormItem("name")},override_WireUpBehaviorEvents:function(){if(this.b_name){this.b_name.on("keyup",this.doBehave,this)}},override_DoBehave:function(){if(this.b_name){if(this.b_name.getValue()==""){this.markFieldInvalid(this.b_name)}else{this.markFieldValid(this.b_name)}}}});Ext.define("GeoMind.desktop.dataView.layer.linkedForm.lang.MapAndLayerGroup",{strings:{formTitle:{pl:"WÅaÅciwoÅci warstwy",en:"Layer properties"},visible:{pl:"Widoczna",en:"Visible"},queryable:{pl:"Odpytywalna",en:"Queryable"},printable:{pl:"Drukowalna",en:"Printable"},transparent:{pl:"Przezroczysta (WMS)",en:"Transparent (WMS)"},is_base_layer:{pl:"Podstawowa",en:"Base layer"},opacity:{pl:"PrzezroczystoÅÄ",en:"Opacity"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layer.linkedForm.MapAndLayerGroupUi",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"checkbox",dataIndex:"visible",readOnly:true,enableKeyEvents:true},{xtype:"checkbox",dataIndex:"queryable",readOnly:true,enableKeyEvents:true},{xtype:"checkbox",dataIndex:"printable",readOnly:true,enableKeyEvents:true},{xtype:"checkbox",dataIndex:"transparent",readOnly:true,enableKeyEvents:true},{xtype:"checkbox",dataIndex:"is_base_layer",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"opacity",readOnly:true,enableKeyEvents:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.layer.linkedForm.MapAndLayerGroup",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{},constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.layer.linkedForm.lang.MapAndLayerGroup");var b=Ext.create("GeoMind.desktop.dataView.layer.linkedForm.MapAndLayerGroupUi",{iconCls:"gm-generic_layer",title:this.lang.getString("formTitle"),border:false});this.view=b;this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.layerGroup.linkedForm.lang.MapAndLayerGroup",{str
1ings:{formTitle:{pl:"WÅaÅciwoÅci grupy warstwy",en:"Layer group properties"},is_expanded:{pl:"RozwiniÄta",en:"Expanded"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layerGroup.linkedForm.MapAndLayerGroupUi",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"checkbox",dataIndex:"is_expanded",readOnly:true,enableKeyEvents:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.layerGroup.linkedForm.MapAndLayerGroup",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{},constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.layerGroup.linkedForm.lang.MapAndLayerGroup");var b=Ext.create("GeoMind.desktop.dataView.layerGroup.linkedForm.MapAndLayerGroupUi",{iconCls:"gm-generic_layer_group",title:this.lang.getString("formTitle"),border:false});this.view=b;this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.layerGroup.form.Validation",{extend:GeoMind.desktop.dataView.generic.form.Validation,constructor:function(g){var b={getValidationItems:this.override_GetValidationItems,validateMe:this.override_ValidateMe};Ext.apply(this,b)},override_GetValidationItems:function(){this.v_name=this.getFormItem("name")},override_ValidateMe:function(){this.cleanInvalidFields();var b=true;if(!this.v_name.isValid()){b=false;this.addInvalidField(this.lang.getString(this.v_name.dataIndex))}return{valid:b,invalidFields:this.invalidFields}}});Ext.define("GeoMind.desktop.dataView.layerGroup.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{behavior:GeoMind.desktop.dataView.layerGroup.form.Behavior,validation:GeoMind.desktop.dataView.layerGroup.form.Validation},constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.mixins.behavior.constructor.call(this);this.mixins.validation.constructor.call(this)},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.layerGroup.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.layerGroup.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicDataTitle"),border:false});this.view=Ext.create("Ext.panel.Panel",{layout:{type:"accordion",titleCollapse:true,animate:true,activeOnTop:true},items:[b,g]});this.registerFormItems(g);this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){this.linksPanel.activate()},bindCustomFields:function(b){this.linksPanel.bindData(b.get("links"))},collectDataForCustomisedFields:function(g){var b=this.linksPanel.getData();g.set("links",b)}});Ext.define("GeoMind.desktop.dataView.layerGroup.list.lang.Standard",{strings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layerGroup.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_layer_group"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getFolderClosedIcon(values.is_expanded)]}"></div>',"</td>","</tr>","</table>","</div></tpl>",{getFolderClosedIcon:function(b){if(b){return"gm-folder_horizontal_open"}else{return"gm-folder_horizontal"}}});this.template.compile()}});Ext.define("GeoMind.desktop.dataView.layerGroup.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.layerGroup.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.LayerGroup",serviceUrl:"WebServices/LayerGroup.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.layerGroup.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.layerGroup.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/LayerGroup.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.layer.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layer.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.layer.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.layer.form.lang.Standard",{str
1ings:{projectionsPanelTitle:{pl:"Ukady odniesienia",en:"Coordinate systems"},basicFormTitle:{pl:"Dane podstawowe",en:"Basic data"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},layer_type:{pl:"Typ warstwy",en:"Layer Type"},layer_sub_type:{pl:"Rodzaj warstwy",en:"Layer sub-type"},url:{pl:"URL",en:"URL"},printable:{pl:"Drukowalna",en:"Printable"},queryable:{pl:"Odpytywalna",en:"Queryable"},is_base_layer:{pl:"Warstwa podstawowa",en:"Base layer"},transition_effect:{pl:"Efekt przybliżania",en:"Transition effect"},buffer:{pl:"Bufor",en:"Buffer"},visibility:{pl:"Widoczna",en:"Visible"},opacity:{pl:"Krycie warstwy",en:"Opacity"},attribution:{pl:"Nota copyrightowa",en:"Attribution"},icon_cls:{pl:"Ikona warstwy w managerze warstw",en:"Layer icon in the layer manager"},always_in_range:{pl:"Zawsze w zasiÄgu",en:"Always in range"},ratio:{pl:"WspóÅczynnik - Rozmiar mapy do rozmiaru kafelka",en:"Ratio - map size to single tile size"},single_tile:{pl:"Jako jeden kafelek",en:"Single tile"},tile_size:{pl:"Rozmiar kafelka",en:"Tile size"},gutter:{pl:"Rowek/Gutter",en:"Gutter"},get_feature_info_url:{pl:"GetInfo URL",en:"GetInfo URL"},layers:{pl:"Warstwy",en:"Layers"},query_layers:{pl:"Warstwy odpytywalne",en:"Queryable Layers"},version:{pl:"Wersja",en:"Version"},transparent:{pl:"Przeźroczysta",en:"Transparent"},image_format:{pl:"Format obrazka",en:"Image format"},info_format:{pl:"Format info",en:"Info format"},exception_format:{pl:"Typ wyjÄ
tku",en:"Exception type"},lonlat_bbox:{pl:"Lon/Lat bbox",en:"Lon/Lat bbox"},format_suffix:{pl:"Format przyrostka",en:"Suffix format"},matrix_ids:{pl:"Identyfikartory macierzy",en:"Matrix ids"},matrix_set:{pl:"Zestaw macierzy",en:"Matrix set"},dimensions:{pl:"Wymiary",en:"Dimensions"},request_encoding:{pl:"Kodowanie",en:"Request encoding"},mode:{pl:"Tryb",en:"Mode"},map_imagetype:{pl:"Typ obrazka mapy",en:"Map image type"},use_jsonp:{pl:"Używaj JsonP",en:"Use JsonP"},format_options:{pl:"Opcje formatowania",en:"Format options"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layer.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;this.serviceUrl="WebServices/Dictionaries.asmx/";this.serviceMethods={read:"Read"};Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"name",readOnly:true,enableKeyEvents:true},{xtype:"textarea",dataIndex:"description",readOnly:true,height:55},{xtype:"geomind.dictionary",dataIndex:"layer_type",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"layer_types",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"layer_sub_type",model:"GeoMind.data.model.Dictionary_LayerSubType",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"layer_sub_types",readOnly:true},{xtype:"textfield",dataIndex:"url",readOnly:true,enableKeyEvents:true},{xtype:"fieldcontainer",layout:"hbox",dataIndex:"visibleprintable",readOnly:true,forceReadOnly:true,autoBind:false,autoTranslate:false,registerChildren:true,items:[{xtype:"checkbox",dataIndex:"printable",readOnly:true,flex:1},{xtype:"checkbox",dataIndex:"queryable",readOnly:true,flex:1}]},{xtype:"checkbox",dataIndex:"is_base_layer",readOnly:true,flex:1},{xtype:"textfield",dataIndex:"transition_effect",readOnly:true},{xtype:"numberfield",dataIndex:"buffer",readOnly:true},{xtype:"checkbox",dataIndex:"visibility",readOnly:true},{xtype:"numberfield",dataIndex:"opacity",readOnly:true},{xtype:"textfield",dataIndex:"attribution",readOnly:true},{xtype:"textfield",dataIndex:"icon_cls",readOnly:true},{xtype:"checkbox",dataIndex:"always_in_range",readOnly:true},{xtype:"numberfield",dataIndex:"ratio",readOnly:true},{xtype:"checkbox",dataIndex:"single_tile",readOnly:true},{xtype:"numberfield",dataIndex:"tile_size",readOnly:true},{xtype:"numberfield",dataIndex:"gutter",readOnly:true},{xtype:"textfield",dataIndex:"get_feature_info_url",readOnly:true},{xtype:"textfield",dataIndex:"layers",readOnly:true},{xtype:"textfield",dataIndex:"query_layers",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"version",model:"GeoMind.data.model.Dictionary_WmsWfsVersion",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_wfs_versions",readOnly:true},{xtype:"checkbox",dataIndex:"transparent",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"image_format",model:"GeoMind.data.model.Dictionary_WmsFormat",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_image_formats",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"info_format",model:"GeoMind.data.model.Dictionary_WmsFormat",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_info_formats",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"exception_format",model:"GeoMind.data.model.Dictionary_WmsFormat",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"wms_exception_formats",readOnly:true},{xtype:"textfield",dataIndex:"lonlat_bbox",readOnly:true},{xtype:"textfield",dataIndex:"format_suffix",readOnly:true},{xtype:"textfield",dataIndex:"matrix_ids",readOnly:true},{xtype:"textfield",dataIndex:"matrix_set",readOnly:true},{xtype:"textfield",dataIndex:"dimensions",readOnly:true},{xtype:"textfield",dataIndex:"request_encoding",readOnly:true},{xtype:"textfield",dataIndex:"mode",readOnly:true},{xtype:"textfield",dataIndex:"map_imagetype",readOnly:true},{xtype:"textfield",dataIndex:"format_options",readOnly:true},{xtype:"textfield",dataIndex:"style",readOnly:true},{xtype:"textfield",dataIndex:"proxy_url",readOnly:true},{xtype:"geomind.dictionary",dataIndex:"request_method",serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,dictionaryName:"request_methods",readOnly:true},{xtype:"textfield",dataIndex:"print_url",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.projection.linkedForm.lang.MapAndLayer",{strings:{formTitle:{pl:"WÅaÅciwoÅci ukÅadu odniesienia",en:"Projection properties"},max_resolution:{pl:"RozdzielczoÅÄ maks",en:"Max resolution"},min_resolution:{pl:"RozdzielczoÅÄ min",en:"Min resolution"},resolutions:{pl:"RozdzielczoÅci",en:"Resolutions"},max_scale:{pl:"Skala max",en:"Max scale"}
1,min_scale:{pl:"Skala min",en:"Min scale"},scales:{pl:"Skale",en:"Scales"},num_zoom_levels:{pl:"Liczba poziomów skalowych",en:"Zoom levels"},max_extent:{pl:"ZasiÄg maks",en:"Max extent"},min_extent:{pl:"ZasiÄg min",en:"Min extent"},restricted_extent:{pl:"ZasiÄg ograniczony do",en:"Restricted extent"},initial_extent:{pl:"ZasiÄg poczÄ
tkowy",en:"Initial extent"},url:{pl:"Url",en:"Url"},get_feature_info_url:{pl:"WMS GetFeatureInfo Url",en:"WMS GetFeatureInfo Url"},single_tile:{pl:"Jeden kafelek",en:"Single tile"},tile_size:{pl:"Rozmiar kafla",en:"Tile size"},gutter:{pl:"Gutter",en:"Gutter"},min_zoom_level:{pl:"Min pozim przybliżenia",en:"Min zoom level"},max_zoom_level:{pl:"Maks poziom przybliżenia",en:"Max zoom level"},zoom_offset:{pl:"Offset przybliżenia",en:"Zoom offset"},server_resolutions:{pl:"RozdzielczoÅci serwera",en:"Server resolutions"},tile_origin:{pl:"Tile origin",en:"Tile origin"},tile_full_extent:{pl:"tile full extent",en:"tile full extent"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.projection.linkedForm.LayerUi",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"url",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"get_feature_info_url",readOnly:true,enableKeyEvents:true},{xtype:"checkbox",dataIndex:"single_tile",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"tile_size",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"gutter",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"num_zoom_levels",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"min_zoom_level",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"max_zoom_level",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"max_resolution",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"min_resolution",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"resolutions",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"max_scale",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"min_scale",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"scales",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"zoom_offset",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"server_resolutions",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"max_extent",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"min_extent",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"tile_origin",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"tile_full_extent",readOnly:true,enableKeyEvents:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.projection.linkedForm.Layer",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{},constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.projection.linkedForm.lang.MapAndLayer");var b=Ext.create("GeoMind.desktop.dataView.projection.linkedForm.LayerUi",{iconCls:"gm-generic_projection",title:this.lang.getString("formTitle"),border:false});this.view=b;this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.layer.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.layer.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false,ui:"blue-panel"});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.layer.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicFormTitle"),border:false,ui:"green-panel"});this.view=Ext.create("Ext.panel.Panel",{layout:{type:"accordion",titleCollapse:true,animate:true,activeOnTop:true},items:[b,g]});this.registerFormItems(g);this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){this.projectionsPanel.activate()},bindCustomFields:function(b){this.projectionsPanel.bindData(b.get("links"))},collectDataForCustomisedFields:function(b){b.set("links",this.projectionsPanel.getData())}});Ext.define("GeoMind.desktop.dataView.layer.list.lang.Standard",{str
1ings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.layer.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getLayerTypeIcon(values.layer_type)]}"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getLayerVisibleIcon(values.o_visibility)]}"></div>',"</td>","</tr>","</table>","</div></tpl>",{getLayerTypeIcon:function(b){switch(b){default:return"gm-generic_layer";break;case 1:return"gm-generic_layer";break;case 2:return"gm-generic_layer";break;case 3:return"gm-generic_layer";break;case 4:return"gm-generic_layer";break;case 5:return"gm-generic_layer_vector";break;case 6:return"gm-generic_layer_wiki";break;case 7:return"gm-generic_layer_panoramio";break;case 8:return"gm-generic_layer";break;case 9:return"gm-generic_layer_vector";break}},getLayerVisibleIcon:function(b){if(b){return"gm-visibility_on"}else{return"gm-visibility_off"}}});this.template.compile()}});Ext.define("GeoMind.desktop.dataView.layer.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.layer.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.Layer",serviceUrl:"WebServices/Layer.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.layer.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.layer.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/Layer.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.layer.form.Behavior",{extend:GeoMind.desktop.dataView.generic.form.Behavior,constructor:function(g){var b={getBehaviorItems:this.override_GetBehaviorItems,wireUpBehaviorEvents:this.override_WireUpBehaviorEvents,doBehave:this.override_DoBehave};Ext.apply(this,b)},override_GetBehaviorItems:function(){this.b_name=this.getFormItem("name");this.b_layer_type=this.getFormItem("layer_type");this.layer_sub_type=this.getFormItem("layer_sub_type");this.url=this.getFormItem("url");this.layers=this.getFormItem("layers");this.queryable=this.getFormItem("queryable");this.query_layers=this.getFormItem("query_layers");this.projection=this.getFormItem("projection");this.version=this.getFormItem("version");this.image_format=this.getFormItem("image_format");this.info_format=this.getFormItem("info_format");this.exception_format=this.getFormItem("exception_format");this.transparent=this.getFormItem("transparent");this.max_extent=this.getFormItem("max_extent");this.buffer=this.getFormItem("buffer")},override_WireUpBehaviorEvents:function(){if(this.b_name){this.b_name.on("keyup",this.doBehave,this)}if(this.b_layer_type){this.b_layer_type.on("select",this.onLayerTypeSelect,this);this.b_layer_type.store.on("load",this.doBehave,this)}if(this.version){this.version.on("select",this.onWmsWfsVersionSelect,this)}if(this.layer_sub_type){this.layer_sub_type.on("select",this.doBehave,this)}this.doInitialCfg()},override_DoBehave:function(){this.checkIfFieldValid("name");this.checkIfFieldValid("layer_type");switch(this.b_layer_type.getValue()){case 1:this.validateWms();break;case 2:this.validateArs();break;case 3:this.validateXyz();break;case 4:this.validateTms();break;case 5:this.validateVector();break;case 6:case 7:this.validateWikiAndPanoramio();break;case 8:this.validateGoogle();break;case 9:this.validateWfs();break}},doInitialCfg:function(){if(this.layer_sub_type){this.layer_sub_type.autoEnable=false}if(this.projection){this.projection.autoEnable=false}if(this.version){this.version.autoEnable=false}if(this.image_format){this.image_format.autoEnable=false}if(this.info_format){this.info_format.autoEnable=false}if(this.exception_format){this.exception_format.autoEnable=false}this.configureDefault()},onLayerTypeSelect:function(h,b,g){switch(h.getValue()){case 1:this.configureForWms();break;case 2:this.configureForArs();break;case 3:this.configureForXyz();break;case 4:this.configureForTms();break;case 5:this.configureForVector();break;case 6:case 7:this.configureForWikiAndPanoramio();break;case 8:this.configureForGoogle();break;case 9:this.configureForWfs();break;default:this.configureDefault();break}this.doBehave()},onWmsWfsVersionSelect:function(h,b,g){if(this.b_layer_type.getValue()==1){}},configureForWms:function(){this.configureDefault();this.enableField("url");this.enableField("layers");this.enableField("queryable");this.enableField("projection");this.enableField("version");this.enableField("max_extent");this.enableField("buffer")},configureForArs:function(){this.configureDefault();this.enableField("layer_sub_type");this.enableField("buffer")},configureForXyz:function(){this.configureDefault();this.enableField("url");this.enableField("buffer")},configureForTms:function(){this.configureDefault()},configureForVector:function(){this.configureDefault()},configureForWikiAndPanoramio:function(){this.configureDefault();this.p_projection.disable();var b=this.p_projection.store;this.p_projection.setValue(b.getAt(b.find("epsg","4326")).get("id"))},configureForGoogle:function(){this.configureDefault()},configureForWfs:function(){this.configureDefault()},configureDefault:function(){this.disableField("layer_sub_type");this.disableField("url");this.disableField("layers");this.disableField("queryable");this.disableField("query_layers");this.disableField("projection");this.disableField("version");this.disableField("image_format");this.disableField("info_format");this.disableField("exception_format");this.disableField("max_extent");this.disableField("transparent");this.disableField("buffer")},validateWms:function(){this.checkIfFieldValid("url");this.checkIfFieldValid("layers");if(this.queryable.getValue()){this.checkIfFieldValid("query_layers")}this.checkIfFieldValid("projection")},validateArs:function(){this.checkIfFieldValid("layer_sub_type")},validateXyz:function(){this.checkIfFieldValid("url")},validateTms:function(){},validateVector:function(){},validateWikiAndPanoramio:function(){this.disableField("projection");var b=this.p_projection.store;this.p_projection.setValue(b.getAt(b.find("epsg","4326")).get("id"))},validateGoogle:function(){},validateWfs:function(){},disableField:function(g){var b=this.getFormItem(g);
1if(b){if(b.store){b.setValue(b.store.getAt(0))}else{b.setValue(null)}b.disable();b.hide()}},enableField:function(g){var b=this.getFormItem(g);if(b){b.enable();b.show()}},checkIfFieldValid:function(h){var g=this.getFormItem(h);var b=false;if(g){if(g.getValue()==null||g.getValue().length==0){this.markFieldInvalid(g)}else{this.markFieldValid(g);b=true}}return b}});Ext.define("GeoMind.desktop.dataView.layer.form.Validation",{extend:GeoMind.desktop.dataView.generic.form.Validation,constructor:function(g){var b={getValidationItems:this.override_GetValidationItems,validateMe:this.override_ValidateMe};Ext.apply(this,b)},override_GetValidationItems:function(){},override_ValidateMe:function(){this.cleanInvalidFields();var b=true;return{valid:b,invalidFields:this.invalidFields}}});Ext.define("GeoMind.desktop.dataView.map.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.map.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.map.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.map.form.lang.Standard",{strings:{basicFormTitle:{pl:"Dane podstawowe",en:"Basic data"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},friendly_url:{pl:"Przyjazny URL",en:"Friendly URL"},is_mobile:{pl:"DostÄpna dla mobilnych",en:"Available for mobiles"},is_desktop:{pl:"DostÄpna dla PC",en:"Available for PC"},all_overlays:{pl:"Brak warstwy podstawowej",en:"All Overlays"},tile_size:{pl:"Rozmiar kafelka",en:"Tile size"},fractional_zoom:{pl:"Przybliżaj do najbliższego poziomu widocznosci",en:"Allow factional zoom"},zoom_method:{pl:"Metoda animacji zmiany przybliżenia",en:"Zoom animation method"},pan_method:{pl:"Metoda animacji zmiany poÅożenia",en:"Pan animation method"},pan_duration:{pl:"Czas animacji zminay poÅożenia",en:"Duration of the tween"},linksPanelTitle:{pl:"Warstwy/Grupy warst",en:"Layers and Layer groups"},modulesPanelTitle:{pl:"NarzÄdzia",en:"Tools"},projectionsPanelTitle:{pl:"Ukady odniesienia",en:"Coordinate systems"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.map.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;this.serviceUrl="WebServices/Dictionaries.asmx/";this.serviceMethods={read:"Read"};Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"name",readOnly:true},{xtype:"textarea",dataIndex:"description",readOnly:true},{xtype:"textfield",dataIndex:"friendly_url",readOnly:true},{xtype:"checkbox",dataIndex:"is_mobile",readOnly:true},{xtype:"checkbox",dataIndex:"is_desktop",readOnly:true},{xtype:"checkbox",dataIndex:"all_overlays",readOnly:true},{xtype:"numberfield",dataIndex:"tile_size",readOnly:true},{xtype:"checkbox",dataIndex:"fractional_zoom",readOnly:true},{xtype:"textfield",dataIndex:"zoom_method",readOnly:true,value:"OpenLayers.Easing.Quad.easeOut"},{xtype:"textfield",dataIndex:"pan_method",readOnly:true,value:"OpenLayers.Easing.Expo.easeOut"},{xtype:"numberfield",dataIndex:"pan_duration",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.projection.linkedForm.MapUi",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"numberfield",dataIndex:"max_resolution",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"min_resolution",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"resolutions",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"max_scale",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"min_scale",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"scales",readOnly:true,enableKeyEvents:true},{xtype:"numberfield",dataIndex:"num_zoom_levels",allowDecimals:false,readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"max_extent",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"min_extent",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"restricted_extent",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"initial_extent",readOnly:true,enableKeyEvents:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.projection.linkedForm.Map",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{},constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.projection.linkedForm.lang.MapAndLayer");var b=Ext.create("GeoMind.desktop.dataView.projection.linkedForm.MapUi",{iconCls:"gm-generic_projection",title:this.lang.getString("formTitle"),border:false});this.view=b;this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.map.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.map.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false,ui:"blue-panel"});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.map.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicFormTitle"),border:false,ui:"green-panel"});this.view=Ext.create("Ext.panel.Panel",{layout:{type:"accordion",titleCollapse:true,animate:true,activeOnTop:true},items:[b,g]});this.registerFormItems(g);this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.map.list.lang.Standard",{str
1ings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.map.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_map"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>","</tr>","</table>","</div></tpl>");this.template.compile()}});Ext.define("GeoMind.desktop.dataView.map.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.map.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.Map",serviceUrl:"WebServices/Map.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.map.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.map.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/Map.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.module.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.module.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description","uuid"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.module.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.module.form.lang.Standard",{strings:{basicDataTitle:{pl:"Informacje podstawowe",en:"Basic data"},internal_uuid:{pl:"Internal UUID",en:"Internal UUID"},internal_name:{pl:"Internal name",en:"Internal name"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},version:{pl:"Wersja",en:"Version"},version_history:{pl:"Historia",en:"History"},type:{pl:"Typ",en:"Type"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.module.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"internal_uuid",readOnly:true},{xtype:"textfield",dataIndex:"internal_name",readOnly:true},{xtype:"textfield",dataIndex:"name",readOnly:true},{xtype:"textfield",dataIndex:"description",readOnly:true},{xtype:"textfield",dataIndex:"version",readOnly:true},{xtype:"textarea",dataIndex:"version_history",readOnly:true},{xtype:"textfield",dataIndex:"type",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.module.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.module.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.module.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicDataTitle"),border:false});this.view=Ext.create("Ext.tab.Panel",{items:[b,g]});this.registerFormItems(g);this.registerFormItems(b);this.translateFormItems()}});Ext.define("GeoMind.desktop.dataView.module.list.lang.Standard",{str
1ings:{module_type:{pl:"Typ moduÅu: ",en:"Module type: "},type_1:{pl:"ModuÅ ogólnego przeznaczenia",en:"Generic module"},type_2:{pl:"ModuÅ mapowy",en:"Map module"},type_3:{pl:"ModuÅ administracyjny",en:"Administration Module"},nodes_data_view:{pl:"ModuÅ baz danych (wÄzÅami)",en:"Database (node) module"},nodes_data_view_desc:{pl:"ModuÅ zarzÄ
dzania bazami danych (wÄzÅami)",en:"Database (node) managment module"},users_data_view:{pl:"ModuÅ użytkowników",en:"Users module"},users_data_view_desc:{pl:"ModuÅ zarzÄ
dznia użytkownikami",en:"User managment module"},layers_data_view:{pl:"ModuÅ warstw",en:"Layers module"},layers_data_view_desc:{pl:"ModuÅ zarzÄ
dzania warstwami",en:"Layer managment module"},layer_groups_data_view:{pl:"ModuÅ grup warstw",en:"Layer groups module"},layer_groups_data_view_desc:{pl:"ModuÅ zarzÄ
dzania grupami warstw",en:"Layer groups managment module"},maps_data_view:{pl:"ModuÅ map",en:"Maps module"},maps_data_view_desc:{pl:"ModuÅ zarzÄ
dzania mapami",en:"Maps managment module"},projects_data_view:{pl:"ModuÅ projektów",en:"Projects module"},projects_data_view_desc:{pl:"ModuÅ zarzÄ
dzania projektami",en:"Projects managment module"},node_tree_browser:{pl:"ModuÅ baz danych (drzewo)",en:"Database module (tree)"},node_tree_browser_desc:{pl:"ModuÅ zarzÄ
dzania bazami danych",en:"Database managment module"},roles_data_view:{pl:"ModuŠról",en:"Roles module"}
1,roles_data_view_desc:{pl:"ModuÅ zarzÄ
dzania rolami",en:"Roles managment module"},layer_manager:{pl:"Manager warstw",en:"Layer manager"},layer_manager_desc:{pl:"ModuÅ zarzÄ
dzania warstwami na mapie",en:"Map layers managment module"},navigation:{pl:"ModuÅ nawigacji",en:"Navigation module"},navigation_desc:{pl:"ModuÅ nawigacji na mapie",en:"Map navigation module"},measure:{pl:"ModuÅ pomiarów",en:"Measure module"},measure_desc:{pl:"ModuÅ pomiarów na mapie",en:"Map measure module"},wms_info:{pl:"WMS Info",en:"WMS Info"},wms_info_desc:{pl:"ModuÅ WMS Info",en:"WMS Info module"},ge:{pl:"ModuÅ Google Earth",en:"Google Earth module"},ge_desc:{pl:"ModuÅ Google Earth 3D",en:"Google Earth 3D module"},add_wms_source:{pl:"ModuÅ dodawania warstw WMS",en:"External WMS layers module"},add_wms_source_desc:{pl:"ModuÅ dodawania warstw WMS",en:"External WMS layers module"},print:{pl:"ModuÅ drukowania",en:"Print module"},print_desc:{pl:"ModuÅ drukowania map",en:"Map print module"},mouse_position:{pl:"ModuÅ wspóÅrzÄdnych wskaźnika myszy",en:"Mouse position module"},mouse_position_desc:{pl:"ModuÅ wspóÅrzÄdnych wskaźnika myszy",en:"Mouse position module"},scale_bar:{pl:"ModuÅ skali mapy",en:"Map scale module"},scale_bar_desc:{pl:"ModuÅ skali mapy",en:"Map scale module"},lang_switcher:{pl:"ModuÅ wyboru jÄzyka",en:"Lang switcher module"},lang_switcher_desc:{pl:"ModuÅ wyboru jÄzyka",en:"Lang switcher module"},auth:{pl:"ModuÅ logowania",en:"Authentication module"},auth_desc:{pl:"ModuÅ logowania użytkowników",en:"User suthentication module"},modules_data_view:{pl:"ModuÅ narzÄdzi (moduÅów)",en:"Tools (modules) module"},modules_data_view_desc:{pl:"ModuÅ zarzÄ
dzania narzÄdziami (moduÅami)",en:"Tools (modules) managment module"},applications_data_view:{pl:"ModuÅ aplikacji",en:"Applications module"},applications_data_view_desc:{pl:"ModuÅ zarzÄ
dzania aplikacjami",en:"Applications managment module"},map_groups_data_view:{pl:"ModuÅ grup map",en:"Map groups module"},map_groups_data_view_desc:{pl:"ModuÅ zarzÄ
dzania grupami map",en:"Map groups managment module"},role_groups_data_view:{pl:"ModuÅ grup ról",en:"Role groups module"},role_groups_data_view_desc:{pl:"ModuÅ zarzÄ
dzania grupami ról",en:"Role groups managment module"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.module.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.module.list.lang.Standard");this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getModTypeIcon(values.type)]}"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{[this.getModName(values.internal_name)]}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{[this.getModName(values.internal_name)]}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{[this.getModDesc(values.internal_name)]}">',"{[this.getModDesc(values.internal_name)]}","</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{[this.getModTypeName(values.type)]}">',"{[this.getModTypeDescription(values.type)]}","</div>","</td>","</tr>","</table>","</div></tpl>",{getModName:function(b){return this.lang.getString(b)},getModDesc:function(b){return this.lang.getString(b+"_desc")},getModTypeName:function(b){return this.lang.getString("type_"+b)},getModTypeDescription:function(b){return this.lang.getString("module_type")+this.lang.getString("type_"+b)},getModTypeIcon:function(g){var b;switch(g){case 1:b="gm-generic_module";break;case 2:b="gm-generic_map";break;case 3:b="gm-generic_form_details";break}return b}});this.template.compile();this.template.lang=this.lang}});Ext.define("GeoMind.desktop.dataView.module.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.module.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.Module",serviceUrl:"WebServices/Module.asmx/",serviceMethods:{read:"Read"}}),recordsFilter:this.recordsFilter});this.form="GeoMind.desktop.dataView.module.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.module.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/Module.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){this.btnCreate.hide();this.btnUpdate.hide();this.btnDestroy.hide();this.btnClone.hide();this.btnCreateSeparator.hide();this.btnUpdateSeparator.hide();this.btnDestroySeparator.hide();this.btnCloneSeparator.hide()}});Ext.define("GeoMind.desktop.dataView.projection.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.projection.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.projection.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.projection.form.lang.Standard",{str
1ings:{basicDataTitle:{pl:"Informacje podstawowe",en:"Basic data"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},epsg:{pl:"Kod EPSG",en:"EPSG Code"},proj4j:{pl:"FormuÅa przeliczania- proj4j",en:"Proj4j calculation formula"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.projection.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"name",readOnly:true,enableKeyEvents:true},{xtype:"textfield",dataIndex:"description",readOnly:true},{xtype:"textfield",dataIndex:"epsg",readOnly:true},{xtype:"textfield",dataIndex:"proj4j",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.projection.form.Behavior",{extend:GeoMind.desktop.dataView.generic.form.Behavior,constructor:function(g){var b={getBehaviorItems:this.override_GetBehaviorItems,wireUpBehaviorEvents:this.override_WireUpBehaviorEvents,doBehave:this.override_DoBehave};Ext.apply(this,b)},override_GetBehaviorItems:function(){this.b_name=this.getFormItem("name")},override_WireUpBehaviorEvents:function(){if(this.b_name){this.b_name.on("keyup",this.doBehave,this)}},override_DoBehave:function(){if(this.b_name){if(this.b_name.getValue()==""){this.markFieldInvalid(this.b_name)}else{this.markFieldValid(this.b_name)}}}});Ext.define("GeoMind.desktop.dataView.projection.form.Validation",{extend:GeoMind.desktop.dataView.generic.form.Validation,constructor:function(g){var b={getValidationItems:this.override_GetValidationItems,validateMe:this.override_ValidateMe};Ext.apply(this,b)},override_GetValidationItems:function(){this.v_name=this.getFormItem("name")},override_ValidateMe:function(){this.cleanInvalidFields();var b=true;if(!this.v_name.isValid()){b=false;this.addInvalidField(this.lang.getString(this.v_name.dataIndex))}return{valid:b,invalidFields:this.invalidFields}}});Ext.define("GeoMind.desktop.dataView.projection.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{behavior:GeoMind.desktop.dataView.projection.form.Behavior,validation:GeoMind.desktop.dataView.projection.form.Validation},constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.mixins.behavior.constructor.call(this);this.mixins.validation.constructor.call(this)},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.projection.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.projection.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicDataTitle"),border:false});this.view=Ext.create("Ext.tab.Panel",{items:[b,g]});this.registerFormItems(g);this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.projection.list.lang.Standard",{strings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.projection.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_layer_group"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getFolderClosedIcon(values.is_expanded)]}"></div>',"</td>","</tr>","</table>","</div></tpl>",{getFolderClosedIcon:function(b){if(b){return"gm-folder_horizontal_open"}else{return"gm-folder_horizontal"}}});this.template.compile()}});Ext.define("GeoMind.desktop.dataView.projection.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.projection.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.Projection",serviceUrl:"WebServices/Projection.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.projection.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.projection.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/Projection.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.resourceType.lang.Search",{strings:{internal_name:{pl:"Internal name",en:"Internal name"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.resourceType.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["internal_name","name","description"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.resourceType.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.resourceType.form.lang.Standard",{str
1ings:{basicFormTitle:{pl:"Dane podstawowe",en:"Basic data"},name:{pl:"Internal Name",en:"Internal Name"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},schema:{pl:"schema",en:"schema"},src_model:{pl:"src_model",en:"src_model"},src_read:{pl:"src_read",en:"src_read"},fn_insert:{pl:"fn_insert",en:"fn_insert"},fn_update:{pl:"fn_update",en:"fn_update"},fn_destroy:{pl:"fn_destroy",en:"fn_destroy"},fn_update_cfg:{pl:"fn_update_cfg",en:"fn_update_cfg"},fn_get_by_uuid:{pl:"fn_get_by_uuid",en:"fn_get_by_uuid"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.resourceType.form.StandardUi_BasicData",{extend:Ext.form.Panel,requires:[],bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"internal_name",readOnly:true},{xtype:"textfield",dataIndex:"name",readOnly:true},{xtype:"textfield",dataIndex:"description",readOnly:true},{xtype:"textfield",dataIndex:"schema",readOnly:true},{xtype:"textfield",dataIndex:"src_model",readOnly:true},{xtype:"textfield",dataIndex:"src_read",readOnly:true},{xtype:"textfield",dataIndex:"fn_insert",readOnly:true},{xtype:"textfield",dataIndex:"fn_update",readOnly:true},{xtype:"textfield",dataIndex:"fn_destroy",readOnly:true},{xtype:"textfield",dataIndex:"fn_update_cfg",readOnly:true},{xtype:"textfield",dataIndex:"fn_get_by_uuid",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.resourceType.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.resourceType.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.resourceType.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicFormTitle"),border:false});this.view=Ext.create("Ext.tab.Panel",{items:[b,g]});this.registerFormItems(b);this.registerFormItems(g);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.resourceType.list.lang.Standard",{strings:{resource_type:{pl:"Typy zasobów",en:"Resource types"},project:{pl:"Projekty",en:"Projects"},projection:{pl:"UkÅady odniesienia",en:"Cordinate systems"},node:{pl:"WÄzÅy (Bazy danych)",en:"Nodes (Databases)"},map:{pl:"Mapy",en:"Maps"},layer:{pl:"Warstwy",en:"Layers"},role:{pl:"Role",en:"Roles"},role_group:{pl:"Grupy ról",en:"Role groups"},user:{pl:"Użytkownicy",en:"Users"},layer_group:{pl:"Grupy warstw",en:"Layer groups"},module:{pl:"ModuÅy",en:"Modules"},application:{pl:"Aplikacje",en:"Applications"},banner:{pl:"Bannery",en:"Banners"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.resourceType.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getResourceTypeIcon(values.internal_name)]}"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{internal_name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{internal_name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">',"{name}","</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>","</tr>","</table>","</div></tpl>",{getResourceTypeIcon:function(b){switch(b){case"resource_type":case"role":case"user":case"node":case"role_group":case"banner":case"project":case"layer_group":case"application":case"module":case"projection":case"map":case"layer":return"gm-generic_"+b;break;default:return"gm-generic_resource_type";break}}});this.template.compile()}});Ext.define("GeoMind.desktop.dataView.resourceType.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.resourceType.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.Re
1sourceType",serviceUrl:"WebServices/ResourceType.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.resourceType.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.resourceType.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/ResourceType.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"}});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){this.btnCreate.hide();this.btnUpdate.hide();this.btnDestroy.hide();this.btnClone.hide();this.btnCreateSeparator.hide();this.btnUpdateSeparator.hide();this.btnDestroySeparator.hide();this.btnCloneSeparator.hide()}});Ext.define("GeoMind.desktop.dataView.resourceType.list.Nested",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){if(!this.lang){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.resourceType.list.lang.Standard")}this.digginCell='<td class="'+this.styles.getCssRuleClassName("listtablecell")+' " style="width: 30px; height:30px;"><div class="'+this.styles.getCssRuleClassName("diggin")+" gm-ns_diggin_size gm-ns_diggin \"onmouseover=\"javascript:this.className+=' gm-ns_diggin_over';\" onmouseout=\"javascript:this.className = this.className.replace(' gm-ns_diggin_over', '');\" ></div></td>";this.digoutCell='<td class="'+this.styles.getCssRuleClassName("listtablecell")+' " style="width: 30px; height:30px;"><div class="'+this.styles.getCssRuleClassName("digout")+" gm-ns_digout_size gm-ns_digout \"onmouseover=\"javascript:this.className+=' gm-ns_digout_over';\" onmouseout=\"javascript:this.className = this.className.replace(' gm-ns_digout_over', '');\" ></div></td>";this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize {[this.getResourceTypeIcon(values.internal_name)]}"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{[this.getResourceName(values.internal_name)]}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{[this.getResourceName(values.internal_name)]}</span> ',"</div>","</td>",this.digginCell,"</tr>","</table>","</div></tpl>",{getResourceTypeIcon:function(b){switch(b){case"resource_type":case"role":case"user":case"node":case"role_group":case"banner":case"project":case"layer_group":case"application":case"module":case"projection":case"map":case"layer":return"gm-generic_"+b;break;default:return"gm-generic_resource_type";break}},getResourceName:function(b){return this.lang.getString(b)}});this.template.compile();this.template.lang=this.lang}});Ext.define("GeoMind.desktop.dataView.role.lang.Search",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.role.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["name","description","uuid"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.role.lang.Search");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.role.form.lang.Standard",{strings:{basicDataTitle:{pl:"Informacje podstawowe",en:"Basic data"},name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},role_default_info:{pl:" - rola domyÅlna",en:" - default role"},role_admin_title:{pl:"Administrator",en:"Admin"},role_admin_msg:{pl:'DomyÅlna rola "Administratora" systemu - definiuje uprawnienia adminstracyjne.',en:'Default system "Admistrator" role - defines admistrative permissions.'},role_admin_warn:{pl:"Niemożliwe jest modyfikowanie, duplikowowanie oraz usuniÄcie tej roli.",en:"It is not possible to neither modify, duplicate nor delete this role."},role_guest_title:{pl:"GoÅÄ",en:"Guest"},role_guest_msg:{pl:'DomyÅlna rola "GoÅcia" - definiuje uprawnienia dla niezalogowanych użytkowników systemu. Każdy użytkownik otrzymuje uprawnienia zdefiniowane w tej roli - przypisanie roli odbywa sie automatycznie.',en:'Default "Guest" role - defines permissions for non-authenticated users. Every user is granted permissions defined in this role - role assignment is automatic.'},role_guest_warn:{pl:'Rola "GoÅcia" jest edytowalna. Niemożliwe jest jej usuniÄcie lub zduplikowanie.',en:'"Guest" role is editable. It is not possible to neither delete nor duplicate this role.'},role_authenticated_title:{pl:"Zalogowany goÅÄ",en:"Authenticated guest"},role_authenticated_msg:{pl:'DomyÅlna rola "Zalogowanego goÅcia" - definiuje uprawnienia dla zalogowanych użytkowników systemu. Każdy zalogowany użytkownik otrzymuje uprawnienia zdefiniowane w tej roli - przypisanie roli odbywa sie automatycznie.',en:'Default "Authenticated guest" role - defines permissions for authenticated users. Every authenticated user is granted permissions defined in this role - role assignment is automatic.'},role_authenticated_warn:{pl:"Rola zalogowanego goÅcia jest edytowalna. Niemożliwe jest jej usuniÄcie lub zduplikowanie.",en:"Authenticated guest role is editable. It is not possible to neither delete nor duplicate this role."}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.role.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"name",readOnly:true},{xtype:"textfield",dataIndex:"description",readOnly:true}
1,{xtype:"displayfield",dataIndex:"default_role_container",hideLabel:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.role.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,constructor:function(b){Ext.apply(this,b);this.callParent([b])},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.role.form.lang.Standard");var g=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});g.setTitle(g.lang.getString("form_title"));var b=Ext.create("GeoMind.desktop.dataView.role.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicDataTitle"),border:false});this.view=Ext.create("Ext.panel.Panel",{layout:{type:"accordion",titleCollapse:true,animate:true,activeOnTop:true},items:[b,g]});this.registerFormItems(b);this.registerFormItems(g);this.translateFormItems()},takeCareOfDefaultRoles:function(q){var b=this.getFormItem("default_role_container");var o,h,w,g;if(q.get("is_guest")){o=this.lang.getString("role_guest_title")+this.lang.getString("role_default_info");h=this.lang.getString("role_guest_msg");w=this.lang.getString("role_guest_warn")}else{if(q.get("is_authenticated")){o=this.lang.getString("role_authenticated_title")+this.lang.getString("role_default_info");h=this.lang.getString("role_authenticated_msg");w=this.lang.getString("role_authenticated_warn")}else{if(q.get("is_admin")){o=this.lang.getString("role_admin_title")+this.lang.getString("role_default_info");h=this.lang.getString("role_admin_msg");w=this.lang.getString("role_admin_warn")}else{o="";h="";w=""}}}g="<br/><b>"+o+"</b><br/><br/>"+h+'<br/><br/><span style="color:#780000;">'+w+"</span>";b.setValue(g)},activateCustomFields:function(){},bindCustomFields:function(b){this.takeCareOfDefaultRoles(b)},collectDataForCustomisedFields:function(b){}});Ext.define("GeoMind.desktop.dataView.role.list.lang.Standard",{strings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.role.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_role"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{name}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{name}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{description}">',"{description}","</div>","</td>","</tr>","</table>","</div></tpl>");this.template.compile()}});Ext.define("GeoMind.desktop.dataView.role.lang.EditManagerExceptions",{strings:{},errCodes:{r_1:{pl:"Rola nie istnieje",en:"Role does not exist"},r_2:{pl:"Aktualizacja roli nie powiodÅa siÄ",en:"Failed to update role"},r_3:{pl:"Utworzenie roli nie powiodÅo siÄ",en:"Failed to create role"},r_4:{pl:"UsuniÄcie roli nie powiodÅo siÄ",en:"Failed to delete role"},r_5:{pl:"DomyÅlna rola nie może zostaÄ usuniÄta",en:"It is not possible to delete a default role"},r_6:{pl:"Tworzenie ról domyÅlnych nie jest dozwolone",en:"It is not allowed to create a default role"},r_7:{pl:"Modyfikacja domyÅlnej roli administratora nie jest dozwolona",en:"It is not allowed to modify a default admin role"}}});Ext.define("GeoMind.desktop.dataView.role.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.role.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.Role",serviceUrl:"WebServices/Role.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.role.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.role.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.EditManager",{serviceUrl:"WebServices/Role.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"},exceptionsLang:GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.role.lang.EditManagerExceptions")});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.user.EditManager",{extend:GeoMind.desktop.dataView.EditManager,requires:[],constructor:function(b){Ext.apply(this,b);this.callParent([b])},handleRequestDelete:function(b){var g=this;Ext.Msg.show({title:this.lang.getString("delMsgTitle"),msg:this.lang.getString("delMsg"),buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.WARNING,fn:function(h){if(h=="ok"){g.deleteRec(b.record,b.operation)}}})}});Ext.define("GeoMind.desktop.dataView.user.form.lang.Standard",{str
1ings:{basicDataFrmTitle:{pl:"Dane podstawowe",en:"Basic data"},id:{pl:"Id użytkownika",en:"User id"},creator_id:{pl:"Utworzony przez",en:"Created by"},last_modified_by:{pl:"Ostatnio zmodyfikowany przez",en:"Last modified by"},email:{pl:"Email",en:"Email"},is_active:{pl:"Aktywny",en:"Active"},login_type:{pl:"Typ loginu",en:"Login type"},ext_id:{pl:"ZewnÄtrzne id",en:"Ezternal id"},create_date:{pl:"Data utworzenia",en:"Create date"},modify_date:{pl:"Data modyfikacji",en:"Modify date"},end_date:{pl:"Data zakoÅczenia",en:"End date"},keep_history:{pl:"Zapisuj historiÄ",en:"Keep history"},last_logged_in:{pl:"Ostatnio zalogowany",en:"Last logged in"},last_pass_change:{pl:"HasÅo zmienione ostatnio",en:"Pass last change"},pass_valid_days:{pl:"HasÅo ważne dni",en:"Pass valid days"},pass_valid_until:{pl:"HasÅo ważne do",en:"Pass valid until"},userDataFrmTitle:{pl:"Dane użytkownika",en:"User data"},user_uuid:{pl:"Uuid użytkownika",en:"User uuid"},uuid:{en:"UUID (full match only)"},first_name:{pl:"ImiÄ",en:"First name"},middle_name:{pl:"Drugie imiÄ",en:"Middle name"},last_name:{pl:"Nazwisko",en:"Surname"},nick_name:{pl:"Nick",en:"Nickname"},www:{pl:"Strona www",en:"WWW"},phone:{pl:"Telefon",en:"Phone"},mobile:{pl:"Telefon kom.",en:"Mobile"},company:{pl:"Firma / Instytucja",en:"Company"},department:{pl:"WydziaÅ",en:"Department"},held_position:{pl:"Stanowisko",en:"Position"},profile:{pl:"Profil",en:"Profile"},description:{pl:"Opis",en:"Description"},address_street:{pl:"Ulica",en:"Street"},address_house_no:{pl:"Numer budynku",en:"House no."},address_flat_no:{pl:"Numer mieszkania",en:"Flat no."},address_post_code:{pl:"Kod pocztowy",en:"Post code"},address_city:{pl:"MiejscowoÅÄ",en:"City"},address_country:{pl:"Kraj",en:"Country"},address_post_code_area_name:{pl:"Poczta",en:"Post code area"},rolesPanelTitle:{pl:"Role i grupy ról",en:"Roles and role groups"},is_system:{en:"System user"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.user.Search",{extend:GeoMind.desktop.dataView.generic.search.Generic,constructor:function(b){Ext.apply(this,b);this.freeSearchColumns=["email","first_name","last_name","company","address_street","address_post_code","address_post_code_area_name","address_city","address_country","phone","mobile","uuid"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.user.form.lang.Standard");this.callParent([b])},customiseSearch:function(){},updateCustomFilter:function(){},clearCustomFilter:function(){}});Ext.define("GeoMind.desktop.dataView.user.form.StandardUi_BasicData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;this.serviceUrl="WebServices/Dictionaries.asmx/";this.serviceMethods={read:"Read"};Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"email",readOnly:true,enableKeyEvents:true},{xtype:"datefield",dataIndex:"last_pass_change",format:"Y-m-d H:i:s",readOnly:true,forceReadOnly:true},{xtype:"numberfield",dataIndex:"pass_valid_days",readOnly:true},{xtype:"datefield",dataIndex:"pass_valid_until",format:"Y-m-d H:i:s",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.user.form.StandardUi_UserData",{extend:Ext.form.Panel,bodyPadding:10,layout:"anchor",defaults:{anchor:"100%"},autoScroll:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",dataIndex:"first_name",readOnly:true},{xtype:"textfield",dataIndex:"middle_name",readOnly:true},{xtype:"textfield",dataIndex:"last_name",readOnly:true},{xtype:"textfield",dataIndex:"nick_name",readOnly:true},{xtype:"textfield",dataIndex:"www",readOnly:true},{xtype:"textfield",dataIndex:"phone",readOnly:true},{xtype:"textfield",dataIndex:"mobile",readOnly:true},{xtype:"textfield",dataIndex:"company",readOnly:true},{xtype:"textfield",dataIndex:"profile",readOnly:true},{xtype:"textfield",dataIndex:"description",readOnly:true},{xtype:"textfield",dataIndex:"address_street",readOnly:true},{xtype:"textfield",dataIndex:"address_house_no",readOnly:true},{xtype:"textfield",dataIndex:"address_flat_no",readOnly:true},{xtype:"textfield",dataIndex:"address_post_code",readOnly:true},{xtype:"textfield",dataIndex:"address_city",readOnly:true},{xtype:"textfield",dataIndex:"address_country",readOnly:true},{xtype:"textfield",dataIndex:"address_post_code_area_name",readOnly:true},{xtype:"textfield",dataIndex:"held_position",readOnly:true},{xtype:"textfield",dataIndex:"department",readOnly:true}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.dataView.user.form.Behavior",{extend:GeoMind.desktop.dataView.generic.form.Behavior,constructor:function(g){var b={getBehaviorItems:this.override_GetBehaviorItems,wireUpBehaviorEvents:this.override_WireUpBehaviorEvents,doBehave:this.override_DoBehave};Ext.apply(this,b)},override_GetBehaviorItems:function(){this.b_email=this.getFormItem("email")},override_WireUpBehaviorEvents:function(){if(this.b_email){this.b_email.on("keyup",this.doBehave,this)}if(this.b_login_type){this.b_login_type.on("select",this.doBehave,this)}},override_DoBehave:function(){if(this.b_email){if(!GeoMind.utils.Validation.validateEmail(this.b_email.getValue())){this.markFieldInvalid(this.b_email)}else{this.markFieldValid(this.b_email)}}}});Ext.define("GeoMind.desktop.dataView.user.form.Validation",{extend:GeoMind.desktop.dataView.generic.form.Validation,constructor:function(g){var b={getValidationItems:this.override_GetValidationItems,validateMe:this.override_ValidateMe};Ext.apply(this,b)},override_GetValidationItems:function(){this.v_email=this.getFormItem("email")},override_ValidateMe:function(){this.cleanInvalidFields();var b=true;
1if(this.v_email&&!this.v_email.isValid()){b=false;this.addInvalidField(this.lang.getString(this.v_email.dataIndex))}return{valid:b,invalidFields:this.invalidFields}}});Ext.define("GeoMind.desktop.dataView.user.form.Standard",{extend:GeoMind.desktop.dataView.generic.form.Generic,mixins:{behavior:GeoMind.desktop.dataView.user.form.Behavior,validation:GeoMind.desktop.dataView.user.form.Validation},constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.mixins.behavior.constructor.call(this);this.mixins.validation.constructor.call(this)},createView:function(){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.user.form.lang.Standard");var h=Ext.create("GeoMind.desktop.dataView.base.form.BaseUi",{iconCls:"gm-generic_form_basic",border:false});h.setTitle(h.lang.getString("form_title"));var g=Ext.create("GeoMind.desktop.dataView.user.form.StandardUi_BasicData",{iconCls:"gm-generic_form_basic",title:this.lang.getString("basicDataFrmTitle"),border:false});var b=Ext.create("GeoMind.desktop.dataView.user.form.StandardUi_UserData",{iconCls:"gm-generic_form_details",title:this.lang.getString("userDataFrmTitle"),border:false});this.registerFormItems(h);this.registerFormItems(g);this.registerFormItems(b);this.translateFormItems()},activateCustomFields:function(){},bindCustomFields:function(b){this.rolesPanel.bindData(b.get("links"))},collectDataForCustomisedFields:function(b){etData();b.set("links",linkedData)}});Ext.define("GeoMind.desktop.dataView.user.list.lang.Standard",{strings:{},errCodes:{}});Ext.define("GeoMind.desktop.dataView.user.list.Standard",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_user"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{email}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{email}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{[this.composeUserName(values.user_data)]}">',"{[this.composeUserName(values.user_data)]}","</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{profile}">',"{profile}","</div>","</td>","</tr>","</table>","</div></tpl>",{composeUserName:function(z){var h=z.get("first_name");var b=z.get("middle_name");var g=z.get("last_name");var o=z.get("nick_name");var w="";if(h!=null&&h.length>0){w+=h}if(b!=null&&b.length>0){var q=b[0].toUpperCase();w=w.length>0?w+=" "+q+".":q+"."}if(g!=null&&g.length>0){w=w.length>0?w+=" "+g:g}if(o!=null&&o.length>0){var A="("+o+")";w=w.length>0?w+=" "+A:A}return w}});this.template.compile()}});Ext.define("GeoMind.desktop.dataView.user.lang.Exceptions",{strings:{},errCodes:{m_u_1:{pl:"Podany email jest już zarezerwowany",en:"Email already reserved"},m_u_2:{pl:"Użytkownik nie istnieje w systemie",en:"User does not exist"},m_u_3:{pl:"Użytkownik jest wÅaÅcicielem wÄzÅa i nie może by usuniÄty.",en:"User is a node owner and cannod be removed."},m_u_4:{pl:"WyjÄ
tek podczas usuwania użytkownika.",en:"Exceptions encountered while removing user"},m_u_5:{pl:"WyjÄ
tek podczas usuwania użytkownika.",en:"Exceptions encountered while removing user"},m_u_6:{pl:"Podany email jest już zarezerwowany",en:"Email already reserved"}}});Ext.define("GeoMind.desktop.dataView.user.Panel",{extend:GeoMind.desktop.dataView.generic.panel.ListPanel,constructor:function(b){Ext.apply(this,b);this.list=Ext.create("GeoMind.desktop.dataView.user.list.Standard",{autoLoad:this.listAutoLoad,listViewStore:Ext.create("GeoMind.data.store.DataView",{model:"GeoMind.data.model.User",serviceUrl:"WebServices/User.asmx/",serviceMethods:{read:"Read"}})});this.form="GeoMind.desktop.dataView.user.form.Standard";this.search=Ext.create("GeoMind.desktop.dataView.user.Search");this.editManager=Ext.create("GeoMind.desktop.dataView.user.EditManager",{serviceUrl:"WebServices/User.asmx/",serviceMethods:{create:"Create",update:"Update",destroy:"Destroy"},exceptionsLang:GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.dataView.user.lang.Exceptions")});this.useSearchToolbar=true;this.callParent([b])},customiseEditability:function(){}});Ext.define("GeoMind.desktop.dataView.user.lang.Search",{strings:{email:{pl:"Email",en:"Email"}},errCodes:{}});Ext.define("GeoMind.desktop.dataView.user.list.Simple",{extend:GeoMind.desktop.dataView.generic.list.List,constructor:function(b){Ext.apply(this,b);this.callParent([b])},init:function(){this.template=new Ext.XTemplate('<tpl for=".">','<div class="'+this.styles.getCssRuleClassName("listwrapper")+'">','<table class="'+this.styles.getCssRuleClassName("listtable")+'">','<tr class="'+this.styles.getCssRuleClassName("listtablerow")+'">','<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" width="30" >','<div class="gm-dv_headercol_iconSize gm-generic_user"></div>',"</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'">','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{email}">','<span class="'+this.styles.getCssRuleClassName("listemphasise")+" "+this.styles.getCssRuleClassName("nameemphasise")+'">{email}</span> ',"</div>","</td>",'<td class="'+this.styles.getCssRuleClassName("listtablecell")+'" >','<div class="'+this.styles.getCssRuleClassName("listtablecellcontentclip")+'" title="{[this.composeUserName(values.user_data)]}">',"{[this.composeUserName(values.user_data)]}","</div>","</td>","</tr>","</table>","</div></tpl>",{composeUserName:function(z){var h=z.get("first_name");var b=z.get("middle_name");var g=z.get("last_name");var o=z.get("nick_name");var w="";if(h!=null&&h.length>0){w+=h}if(b!=null&&b.length>0){var q=b[0].toUpperCase();w=w.length>0?w+=" "+q+".":q+"."}if(g!=null&&g.length>0){w=w.length>0?w+=" "+g:g}if(o!=null&&o.length>0){var A="("+o+")";w=w.length>0?w+=" "+A:A}return w}});this.template.compile()}});Ext.define("GeoMind.desktop.fileLayer.lang.Upload",{strings:{btnUpload_Text:{pl:"Warstwa wektorowa z pliku",en:"Vector layer from a file"},btnUpload_Tip:{pl:"Dodaje warstwÄ wektorowÄ
z pliku",en:"Adds a vector layer from a file"}},errCodes:{}});Ext.define("GeoMind.desktop.upload.ui.Standard",{extend:Ext.window.Window,width:300,layout:"fit",resizable:false,buttonAlign:"center",autoHeight:true,closable:false,modal:true,padding:5,initComponent:function(){this.items=[{xtype:"form",itemId:"uploadForm",fileUpload:true,autoHeight:true,border:false,padding:5,items:[{xtype:"fileuploadfield",hideLabel:true,allowBlank:false,anchor:"100%",itemId:"fileUploadField"},{xtype:"textfield",hidden:true,itemId:"xtraDataField"}]}];this.fbar={xtype:"toolbar",items:[{xtype:"button",itemId:"btnSave"},{xtype:"button",itemId:"btnCancel"}]};this.callParent(arguments);this.addEvents(["uploadsuccess"])}});
1Ext.define("GeoMind.desktop.upload.lang.Standard",{strings:{imageWindowTitle:{pl:"Zapisywanie grafiki",en:"Image upload"},docuWindowTitle:{pl:"Zapisywanie dokumentu",en:"Document upload"},fileWindowTitle:{pl:"Zapisywanie pliku",en:"File upload"},imageEmptyText:{pl:"Wybierz grafikÄ...",en:"Select your image..."},docuEmptyText:{pl:"Wybierz dokument...",en:"Select your document..."},fileEmptyText:{pl:"Wybierz plik...",en:"Select your file..."},imageLoadMask:{pl:"Zapisywanie grafiki...",en:"Uploading your image..."},docuLoadMask:{pl:"Zapisywanie dokumentu...",en:"Uploading your document..."},fileLoadMask:{pl:"Zapisywanie pliku...",en:"Uploading your file..."},browseBtnText:{pl:"PrzeglÄ
daj...",en:"Browse..."},btnSave:{pl:"Zapisz",en:"Upload"},btnCancel:{pl:"Anuluj",en:"Cancel"},uploadFeedback_ok:{pl:"Plik zapisany",en:"File saved"},callbackFailure_Msg1_part1:{pl:"Server zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"The server returned the following error: "},callbackFailure_Msg1_part2:{pl:"Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Please try again or contact the system administrator."}},errCodes:{fup_0:{pl:"Niepoprawna konfiguracja serwisu",en:"Invalid service config"},fup_1:{pl:"Plik przekroczyÅ dozwolony rozmiar",en:"File too large"},fup_2:{pl:"Zapisanie pliku nie powiodÅo siÄ",en:"Failed to save the file"},fup_3:{pl:"Nie dozwolony typ pliku",en:"File type not supported"}}});Ext.define("GeoMind.desktop.upload.view.Standard",{extend:GeoMind.desktop.upload.ui.Standard,serviceUrl:null,serviceUrls:{file:"webservices/fileservice/fileupload.ashx",image:"webservices/fileservice/imageupload.ashx",docu:"webservices/fileservice/docuupload.ashx"},contentType:null,contentTypes:["file","image","docu"],lang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.upload.lang.Standard");if(!this.contentType){this.contentType="file"}if(!this.serviceUrl){this.serviceUrl=this.serviceUrls[this.contentType]}this.btnSave=this.query("[itemId=btnSave]")[0];this.btnCancel=this.query("[itemId=btnCancel]")[0];this.uploadForm=this.query("[itemId=uploadForm]")[0];this.fileUploadField=this.uploadForm.query("[itemId=fileUploadField]")[0];this.xtraDataField=this.uploadForm.query("[itemId=xtraDataField]")[0];if(this.uploadMsg){this.uploadForm.insert(0,{xtype:"displayfield",value:this.uploadMsg,anchor:"100%"})}this.setTitle(this.lang.getString(this.contentType+"WindowTitle"));this.btnSave.text=this.lang.getString("btnSave");this.btnCancel.text=this.lang.getString("btnCancel");this.fileUploadField.emptyText=this.lang.getString(this.contentType+"EmptyText");this.fileUploadField.buttonText=this.lang.getString("browseBtnText");this.btnSave.on("click",this.onBtnSaveClick,this);this.btnCancel.on("click",this.onBtnCancelClick,this);if(typeof this.callbackFn=="function"&&this.callbackScope){this.on("uploadsuccess",this.callbackFn,this.callbackScope)}},setExtraData:function(b){this.xtraDataField.setValue(b)},onBtnCancelClick:function(){this.close()},onBtnSaveClick:function(){var b=this.uploadForm.getForm();if(b.isValid()){this.showLoadMask();b.submit({url:this.serviceUrl,success:Ext.bind(this.success,this),failure:Ext.bind(this.failure,this)})}},success:function(b,g){this.fireEvent("uploadsuccess",g.result);this.hideLoadMask();this.close()},failure:function(b,g){this.hideLoadMask();if(!this.fireEvent("uploadfailure",g.result)){return}var h=GeoMind.utils.Exceptions.getMsg(g.result,this.lang);Ext.Msg.alert("info",this.lang.getString("callbackFailure_Msg1_part1")+h+this.lang.getString("callbackFailure_Msg1_part2"))},loadMask:null,showLoadMask:function(){if(this.loadMask==null){this.loadMask=new Ext.LoadMask(this.getEl(),{msg:this.lang.getString(this.contentType+"LoadMask")})}this.loadMask.show()},hideLoadMask:function(){this.loadMask.hide()}});Ext.define("GeoMind.desktop.upload.Standard",{extend:GeoMind.base.Module,serviceUrls:{file:"",image:"",docu:""},uploadMsg:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},showUploadWindow:function(h,b){var g=Ext.create("GeoMind.desktop.upload.view.Standard",{uploadMsg:this.uploadMsg,serviceUrl:this.serviceUrls[h],contentType:h,animateTarget:b});g.on("uploadsuccess",this.onUploadSuccess,this);this.onUploadFailure&&g.on("uploadfailure",this.onUploadFailure,this);g.on("close",this.onUploadClose,this);g.setExtraData(this.xtraData);g.show()},setXtraData:function(b){this.xtraData=b},onUploadSuccess:function(b){var g={evtName:"fileUploaded",evtSuperInitiatingModule:this,evtInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,false)},onUploadClose:function(g,b){g.un("uploadsuccess",this.onUploadSuccess,this);this.onUploadFailure&&g.un("uploadfailure",this.onUploadFailure,this);g.un("close",this.onUploadClose,this)},_onfileUploadRequest:function(b){this.showUploadWindow(b.data.contentType)}});Ext.define("GeoMind.desktop.fileLayer.Upload",{extend:GeoMind.base.Module,serviceUrls:{file:"",getFile:""},lang:null,btnUpload:null,btnsCfg:null,uploadMsg:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.fileLayer.lang.Upload");this.createButtons();this.callParent([b]);this.addEvents(["externalLayerFileUploaded"])},createButtons:function(){var g=GeoMind.utils.QTip;var b={btnUpload:{tooltip:g.getQtipHtml(this.lang.getString("btnUpload_Text"),this.lang.getString("btnUpload_Tip")),iconCls:"gm-vff_add"}};Ext.merge(b,this.btnsCfg);this.btnUpload=Ext.create("Ext.button.Button",b.btnUpload);this.btnUpload.on("click",this.onbtnUploadClick,this)},getButtons:function(){return[this.btnUpload]},onbtnUploadClick:function(){if(!this.uploadWin){this.uploadWin=Ext.create("GeoMind.desktop.upload.Standard",{uploadMsg:this.uploadMsg,serviceUrls:this.serviceUrls,xtraData:Ext.JSON.encode({sid:GeoMind.utils.SessionManager.ss.sessionId})});this.uploadWin.on("fileUploaded",this.onFileUploaded,this)}this.uploadWin.showUploadWindow("file",this.btnUpload)},onFileUploaded:function(h){if(h.success){var g=this.serviceUrls.getFile+"?f="+h.fileName;var b={layer_type_value:h.extension.toUpperCase().replace(".",""),name:h.originalFileName,url:g,o_visibility:true,printable:true,query
1able:true};var o={evtName:"externalLayerFileUploaded",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{layerCfg:b}};this.dispatchEvent(o,{confirmationRequired:false})}},cleanMeUp:function(){},_onAfterMapReset:function(b){this.map=b.data.map;this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.grid.lang.LayerStandard",{strings:{layer:{pl:"Warstwa",en:"Layer"},epsg:{pl:"EPSG",en:"EPSG"}},errCodes:{}});Ext.define("GeoMind.desktop.grid.ui.LayerStandard",{extend:Ext.grid.Panel,lang:null,constructor:function(g){Ext.apply(this,g);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.grid.lang.LayerStandard");var b=Ext.create("Ext.ux.CheckColumn",{text:"Visible?",dataIndex:"checked",width:55});this.columns=[{xtype:"rownumberer"},b,{header:"layerId",dataIndex:"layerId",flex:1},{header:this.lang.getString("layer"),dataIndex:"name",flex:1,editor:{allowBlank:false}},{header:this.lang.getString("epsg"),dataIndex:"projectionCode",flex:1},{header:"groupName",dataIndex:"groupName",flex:1}];this.callParent([g]);this.getView().preserveScrollOnRefresh=true;this.on("itemdblclick",this.onItemDblClick,this)},onItemDblClick:function(g,b,q,h,w,o){}});Ext.define("GeoMind.desktop.grid.plugin.DisabledGridRow",{extend:Ext.AbstractPlugin,alias:"plugin.disabledgrid",grid:null,store:null,init:function(g){this.grid=g;this.store=g.getStore();var h=this,b=g.getView(),o,q;this.callParent([config]);o=b.getRowClass;if(o){q=b.scope||h;Ext.apply(b,{getRowClass:function(){var z,w;z=o.apply(q,arguments)||"";w=h.getRowClass.apply(h,arguments)||"";return(z&&w)?z+" "+w:z+w},onCheckboxChange:h.onCheckboxChange})}else{Ext.apply(b,{getRowClass:Ext.Function.bind(h.getRowClass,h),onCheckboxChange:h.onCheckboxChange})}if(h.preventSelection){g.getSelectionModel().on("beforeselect",h.onBeforeNodeSelect,h)}if(h.preventCheckChange){b.on("checkchange",h.onCheckChange,h)}},disabledCls:"x-grid-row-disabled",preventSelection:true,getCmp:function(){return this.callParent(arguments)},getRowClass:function(b,g,h,o){return b.get("disabled")?this.disabledCls:""},onBeforeNodeSelect:function(g,b){if(b.get("disabled")){return false}}});Ext.define("Ext.ux.RowExpander",{extend:Ext.grid.plugin.RowExpander});Ext.define("GeoMind.desktop.grid.LayerStandard",{extend:GeoMind.base.Module,lang:null,grid:null,store:null,groupingFeature:null,rowBody:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.grid.lang.LayerStandard");this.callParent([b]);this.store=Ext.create("GeoMind.data.store.Layer",{groupField:"groupName"});this.store.on("load",this.onStoreLoad,this);this.store.on("update",this.onStoreUpdate,this);this.groupingFeature=Ext.create("Ext.grid.feature.Grouping",{groupHeaderTpl:"{name}",hideGroupedHeader:false,enableGroupingMenu:true});this.grid=Ext.create("GeoMind.desktop.grid.ui.LayerStandard",{title:this._id,lang:this.lang,store:this.store,selType:"rowmodel",features:[this.groupingFeature],viewConfig:{plugins:[{ptype:"gridviewdragdrop",dragText:"Drag and drop to reorganize"}]},plugins:[]});if(b.gridViewPanelConfig){Ext.applyIf(this.grid,b.gridViewPanelConfig)}this.grid.view.on("collapsebody",function(q,h,g,o){});this.grid.getView().on("beforedrop",this.onBeforeDrop,this);this.grid.getView().on("drop",this.onDrop,this);this.disableGroupGrid()},onStoreLoad:function(g,b,o,h){},onStoreUpdate:function(h,b,g,q,o){if(q&&Ext.Array.contains(q,"checked")){this.layerVisibilityChange(b,q);b.commit()}},onBeforeDrop:function(o,w,q,g,b,h){},onDrop:function(h,q,o,b,g){var w={evtName:"recordOrderChange",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{record:o,records:this.store.getRange(0,this.store.getCount()-1)}};this.dispatchEvent(w,{confirmationRequired:false})},layerVisibilityChange:function(b,g){var h={evtName:"layerVisibilityChange",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{record:b}};this.dispatchEvent(h,{confirmationRequired:false})},groupGridBy:function(b){if(b){this.store.group(b);this.grid.fireEvent("groupchange",this.grid,null)}},disableGroupGrid:function(){this.store.clearGrouping();this.grid.fireEvent("groupchange",this.grid,null)},setGrid:function(b){this.window.removeAll(true);this.grid=b;this.window.add(this.grid)},matchStoresRecordsOrder:function(b){this.store.loadRecords(b,{addRecords:false})},_onLayersStoreLoad:function(g){var b=g.data.records;this.store.loadRecords(g.data.records,{addRecords:false})},_onLayersStoreInsert:function(b){if(b.data.records&&b.data.records.length>0){var g=b.data.store.getRange(0,b.data.store.getCount()-1);if(this.matchStoresRecordsOrder(g)){}}},_onRecordLayerRemoved:function(g){var b=g.data.record;if(b){this.store.remove(b)}},_onRecordOrderChange:function(g){console.warn("1. LayersGrid _onRecordOrderChange");var b=g.data.records;if(g.evtInitiatingModule._id!=this._id&&g.evtSuperInitiatingModule._id!=this._id){if(this.matchStoresRecordsOrder(b)){}}}});Ext.define("GeoMind.desktop.grid.ui.MapStandard",{extend:Ext.grid.Panel,lang:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.grid.lang.MapStandard");this.columns=[{width:27,renderer:function(z,o,h,w,q,g){if(h.get("is_active_map")){return'<div class="gm-mappicker_icon-size gm-mappicker_map_active"></div>'}else{return'<div class="gm-mappicker_icon-size gm-mappicker_map_disabled"></div>'}}},{dataIndex:"name",flex:1,renderer:function(A,o,h,w,q,g){var z="<b>"+h.get("name")+"</b>";if(h.get("description")!=null){z+="<br/>"+h.get("description")}o.tdAttr='data-qtip="'+z+'"';return h.get("name")}},{width:27,renderer:function(z,o,h,w,q,g){if(h.get("is_saved_workspace")){return'<div class="gm-mappicker_icon-size gm-mappicker_saved_workspace"></div>'}else{return""}}}];this.callParent([b])}});
1Ext.define("GeoMind.desktop.grid.lang.MapStandard",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},epsg:{pl:"EPSG",en:"EPSG"}},errCodes:{}});Ext.define("GeoMind.desktop.grid.MapStandard",{extend:GeoMind.base.Module,lang:null,view:null,store:null,constructor:function(g){Ext.apply(this,g);this.addEvents(["mapGridRowDblClicked"]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.grid.lang.MapStandard");this.callParent([g]);this.store=Ext.create("GeoMind.data.store.Map");var b={store:this.store};if(g&&g.gridViewPanelConfig){Ext.applyIf(b,g.gridViewPanelConfig)}this.view=Ext.create("GeoMind.desktop.grid.ui.MapStandard",b);this.view.on("itemdblclick",this.onItemDblClick,this)},onItemDblClick:function(B,o,q,w,z,A){for(var h=0,g=o.store.getCount();h<g;h++){o.store.getAt(h).set("is_active_map",false);o.store.getAt(h).set("is_saved_workspace",false)}o.set("is_active_map",true);var b={evtName:"mapGridRowDblClicked",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{map_uuid:o.get("uuid")}};this.dispatchEvent(b,{confirmationRequired:false})},markMapAsWorkspaceFromSave:function(b){this.store.getAt(this.store.find("uuid",b)).set("is_saved_workspace",true)},_onMapConfigReady:function(g){var b=g.data.cfgDataManager.configData.maps;this.store.loadData(b);if(this.store.getCount()>0){this.view.getSelectionModel().select(0);this.onItemDblClick(this.view,this.store.getAt(0))}}});Ext.define("GeoMind.desktop.iScroll.IScrollPanel",{title:"dupa",extend:Ext.panel.Panel,layout:"border",orientation:null,allowEditing:null,showArrows:null,carouselEnable:null,centerItem:null,_viewItems:null,scrollDelta:null,scrollDelay:null,snapEnable:true,border:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.setDefaults();this.view=null;this.draggableCss={};this.registerCss();this.createDivs(this.draggableCss);this.buildPanels();this.on("added",this.onAddedToParent,this)},setDefaults:function(){if(!this.border){this.border=false}if(!this.orientation){this.orientation="horizontal"}if(!this.showArrows){this.showArrows=false}if(!this.bounceLock){this.bounceLock=true}if(!this.allowEditing){this.allowEditing=false}if(!this.scrollDelta){this.scrollDelta=10}if(!this.scrollDelay){this.scrollDelay=50}if(!this.carouselEnable){this.carouselEnable=true}this._viewItems=[]},buildPanels:function(){var b=this;this.centerPanel=Ext.create("Ext.panel.Panel",{layout:"fit",height:"100%",width:"100%",region:"center",html:this.divsCfg.div});this.centerPanel.on("render",this.onCenterPanelRendered,this);this.centerPanel.on("resize",this.onCenterPanelResized,this);this.add(this.centerPanel);this.btnStart=Ext.create("Ext.button.Button",{direction:"start",enableToggle:true,iconCls:this.orientation=="horizontal"?"iScroll-medium_btn iScroll-left":"iScroll-medium_btn iScroll-down"});this.btnStart.on("click",this.onBtnStartClicked,this);this.btnEnd=Ext.create("Ext.button.Button",{direction:"end",enableToggle:true,iconCls:this.orientation=="horizontal"?"iScroll-medium_btn iScroll-right":" iScroll-medium_btn iScroll-up"});this.btnEnd.on("click",this.onBtnEndClicked,this);this.leftPanel=Ext.create("Ext.panel.Panel",{border:true,layout:"fit",region:this.orientation=="horizontal"?"west":"south",items:[this.btnStart]});this.rightPanel=Ext.create("Ext.panel.Panel",{border:true,layout:"fit",region:this.orientation=="horizontal"?"east":"north",items:[this.btnEnd]});this.add(this.leftPanel);this.add(this.rightPanel);this.createViewPanel()},onCenterPanelRendered:function(g){var b=this},createViewPanel:function(){var b=this.orientation=="horizontal"?{type:"hbox",align:"stretch"}:{type:"vbox",align:"stretch"};this.view=Ext.create("Ext.panel.Panel",{title:"xxx",width:this.centerPanel.getWidth(),height:this.centerPanel.getHeight(),layout:b,renderTo:Ext.get(this.divsCfg.containerDivId)});this.view.on("add",this.onComponentsAdd,this);this.view.on("remove",this.onComponentsRemove,this)},internalScroll:false,onScrollEnd:function(){if(!this.internalScroll){var h={x:this.scroller.x*-1,y:this.scroller.y};this.curentItemInfo=this.getCurrentItemFromPosition(h);this.internalScroll=true;if(this.orientation=="horizontal"&&this.snapEnable){var b=(-1*this.curentItemInfo.position.x)+this.curentItemInfo.item.getWidth();this.scroller.scrollTo(b,0,500)}else{if(this.orientation=="vertical"&&this.snapEnable){var g=(-1*this.curentItemInfo.position.y)+this.curentItemInfo.item.getHeight();this.scroller.scrollTo(0,g,500)}}}else{this.internalScroll=false}},onCenterPanelResized:function(){this.updateViewSize()},curentItemIdx:0,onBtnStartClicked:function(h,b,g){var o=this.calculateDeltaForItemIdx(this.curentItemIdx,"start");if(this.orientation=="horizontal"){this.scroller.scrollTo(o.x*-1,0,300,true)}else{this.scroller.scrollTo(0,o.y*-1,300,true)}this.curentItemIdx--},onBtnEndClicked:function(h,b,g){this.curentItemIdx++;var o=this.calculateDeltaForItemIdx(this.curentItemIdx,"end");if(this.orientation=="horizontal"){this.scroller.scrollTo(o.x,0,300,true)}else{this.scroller.scrollTo(0,o.y,300,true)}},calculateDeltaForItemIdx:function(b,g){var h={x:this._viewItems[b].getWidth(),y:this._viewItems[b].getHeight()};return h},getCurrentItemFromPosition:function(b){var o={x:0,y:0};var h=0;b.y=b.y*-1;for(var g=0;g<this._viewItems.length;g++){o.x+=this._viewItems[g].getWidth();o.y+=this._viewItems[g].getHeight();if(this.orientation=="horizontal"&&b.x+this._viewItems[g].getWidth()/2<o.x){h=g;break}else{if(this.orientation=="vertical"&&b.y+this._viewItems[g].getHeight()/2<o.y){h=g;break}}}this.curentItemIdx=h;return{position:o,itemIdx:h,item:this._viewItems[h]}},onBtnStartToggle:function(g,h,b){if(h){this.intervalScrollExecute("end",this.scrollDelta)}else{if(this.runner){this.runner.stop(this.scrollTask)}}},runner:new Ext.util.TaskRunner(),scrollTask:null,onBtnStartMouseOut:function(b){if(this.runner&&this.scrollTask){this.runner.stop(this.scrollTask);b.toggle(false)}},onBtnEndToggle:function(g,h,b){if(h){this.intervalScrollExecute("start",this.scrollDelta)}else{if(this.runner){this.runner.stop(this.scrollTask)}}},onBtnEndMouseOut:function(b){if(this.runner&&this.scrollTask){this.runner.stop(this.scrollTask);b.toggle(false)}},currentItem:null,intervalScrollExecute:function(h,o){var g=this;var b=function(){g.scrollView(h,o)};this.scrollTask=g.runner.start({run:b,interval:this.scrollDelay})},scrollView:function(b,g){if(!g){g=100}if(this.scroller){switch(b){case"end":if(this.orientation=="horizontal"){this.scroller.scrollTo(g,0,500,true)}else{this.scroller.scrollTo(0,g,500,true)}break;case"start":default:if(this.orientation=="horizontal"){this.scroller.scrollTo(g*-1,0,500,true)}else{this.scroller.scrollTo(0,g*-1,500,true)}break}}},updateViewSize:function(){if(this.view){var b=this.calculateItemsSize();this.view.setHeight(b.height);this.view.setWidth(b.width);this.view.doLayout();this.updateCssSize()}},calculateItemsSize:function(){var b={width:this.centerPanel.getSize().width,height:this.centerPanel.getSize().height};if(this.view.items&&this.view.items.items&&this.view.items.items.length>0){if(this.orientation=="horizontal"){b.width=0;for(var g=0;g<this.view.items.items.length;g++){b.width+=this.view.items.items[g].getSize().width}}else{b.height=0;for(var g=0;g<this.view.items.items.length;g++){b.height+=this.view.items.items[g].getSize().height}}}return b},updateCssSize:function(){this.scroller.refresh()},onComponentsAdd:function(b,h,g,o){this._viewItems.push(h);var q=this;Ext.defer(function(){q.updateViewSize()},10)},onAddedToParent:function(g,b,o,h){b.on("resize",g.updateViewSize,g)},onComponentsRemove:function(b,g,h){var o=this;Ext.Array.remove(this._viewItems,g);Ext.defer(function(){o.updateViewSize()},10)},registerCss:function(){var w=Ext.id();var h=null;var q=null;if(this.orientation=="horizontal"){h="{position:absolute;background:#aaa;z-index:1;top:0;bottom:0;left:0;width:100%;overflow:auto;}"}else{h="{position:absolute; background:#aaa;z-index:1;top:0px; bottom:0px; left:0;height:100%;overflow:auto;}"}q="."+w+h;var o={};if(!Ext.util.CSS.getRule("."+w)){css=Ext.util.CSS.createStyleSheet(q,w);o={cssName:w,cssText:q,css:css};this.draggableCss.wrapper=o}var g=null;if(this.orientation=="horizontal"){g="{height:100%;float:left;padding:0;}"}else{g="{width:100%;float:left;padding:0;}"}var z=Ext.id();var b="."+z+g;o={};if(!Ext.util.CSS.getRule("."+z)){css=Ext.util.CSS.createStyleSheet(b,z);o={cssName:z,cssText:b,css:css};this.draggableCss.scroller=o}return this.draggableCss},createDivs:function(b){this.divsCfg={wrapperDivId:Ext.id(),scrollerDivId:Ext.id(),containerDivId:Ext.id(),div:null};if(!b){b=this.draggableCss}this.divsCfg.div='<div id="'+this.divsCfg.wrapperDivId+'" class="'+b.wrapper.cssName+'"><div id="'+this.divsCfg.scrollerDivId+'" class="'+b.scroller.cssName+'"><div id="'+this.divsCfg.containerDivId+'"></div></div></div>';return this.divsCfg},getLoremIpsum:function(){return"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."}});Ext.define("GeoMind.desktop.iScroll.IScrollPanel",{extend:Ext.container.Container,layout:"border",orientation:null,allowEditing:null,showArrows:null,hScroll:true,vScroll:true,carouselEnable:null,centerItem:null,_viewItems:null,scrollDelta:null,scrollDelay:null,snapEnable:true,border:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.setDefaults();this.view=null;this.draggableCss={};this.registerCss();this.createDivs(this.draggableCss);this.buildPanels();this.on("added",this.onAddedToParent,this)},setDefaults:function(){if(!this.border){this.border=false}if(!this.orientation){this.orientation="horizontal"}if(!this.showArrows){this.showArrows=false}if(!this.bounceLock){this.bounceLock=true}if(!this.allowEditing){this.allowEditing=false}if(!this.scrollDelta){this.scrollDelta=10}if(!this.scrollDelay){this.scrollDelay=50}if(!this.carouselEnable){this.carouselEnable=true}this._viewItems=[]},buildPanels:function(){var g=this;this.centerPanel=Ext.create("Ext.container.Container",{layout:"fit",height:"100%",width:"100%",region:"center",html:this.divsCfg.div});
1this.centerPanel.on("render",this.onCenterPanelRendered,this);this.centerPanel.on("resize",this.onCenterPanelResized,this);this.add(this.centerPanel);if(this.showArrows){this.btnStart=Ext.create("Ext.button.Button",{direction:"start",iconCls:this.orientation=="horizontal"?"iScroll-medium_btn iScroll-left":"iScroll-medium_btn iScroll-down"});this.btnStart.on("click",this.onBtnStartClicked,this);this.btnEnd=Ext.create("Ext.button.Button",{direction:"end",iconCls:this.orientation=="horizontal"?"iScroll-medium_btn iScroll-right":" iScroll-medium_btn iScroll-up"});this.btnEnd.on("click",this.onBtnEndClicked,this);this.leftPanel=Ext.create("Ext.container.Container",{border:false,layout:"fit",region:this.orientation=="horizontal"?"west":"south",items:[this.btnStart]});this.rightPanel=Ext.create("Ext.container.Container",{border:false,layout:"fit",region:this.orientation=="horizontal"?"east":"north",items:[this.btnEnd]});this.add(this.leftPanel);this.add(this.rightPanel)}var b=this.orientation=="horizontal"?{type:"hbox",align:"stretch"}:{type:"vbox",align:"stretch"};this.view=Ext.create("Ext.panel.Panel",{layout:b});this.view.on("add",this.onComponentsAdd,this);this.view.on("remove",this.onComponentsRemove,this)},onCenterPanelRendered:function(g){var b=this;Ext.Function.defer(function(){b.createViewPanel()},50)},createViewPanel:function(){this.view.setWidth(this.centerPanel.getWidth());this.view.setHeight(this.centerPanel.getHeight());this.view.render(Ext.get(this.divsCfg.containerDivId));this.scroller=new iScroll(this.divsCfg.wrapperDivId,{onBeforeScrollStart:this.allowEditing?null:function(b){b.preventDefault()},onScrollEnd:Ext.bind(this.onScrollEnd,this),vScroll:this.vScroll==null?true:this.vScroll,hScroll:this.hScroll==null?true:this.hScroll});this.fireEvent("iscrollready",this)},internalScroll:false,onScrollEnd:function(){if(!this.internalScroll){var h={x:this.scroller.x*-1,y:this.scroller.y};this.curentItemInfo=this.getCurrentItemFromPosition(h);this.internalScroll=true;if(this.orientation=="horizontal"&&this.snapEnable){var b=(-1*this.curentItemInfo.position.x)+this.curentItemInfo.item.getWidth();this.scroller.scrollTo(b,0,500)}else{if(this.orientation=="vertical"&&this.snapEnable){var g=(-1*this.curentItemInfo.position.y)+this.curentItemInfo.item.getHeight();this.scroller.scrollTo(0,g,500)}}}else{this.internalScroll=false}},onCenterPanelResized:function(){this.updateViewSize()},curentItemIdx:0,onBtnStartClicked:function(h,b,g){var o=this.calculateDeltaForItemIdx(this.curentItemIdx,"start");if(this.orientation=="horizontal"){this.scroller.scrollTo(o.x*-1,0,300,true)}else{this.scroller.scrollTo(0,o.y*-1,300,true)}if(this.curentItemIdx>1){this.curentItemIdx--}},onBtnEndClicked:function(h,b,g){if(this._viewItems.length+1<this.curentItemIdx){this.curentItemIdx}var o=this.calculateDeltaForItemIdx(this.curentItemIdx,"end");if(this.orientation=="horizontal"){this.scroller.scrollTo(o.x,0,300,true)}else{this.scroller.scrollTo(0,o.y,300,true)}},calculateDeltaForItemIdx:function(b,g){var h={x:this._viewItems[b].getWidth(),y:this._viewItems[b].getHeight()};return h},getCurrentItemFromPosition:function(b){var o={x:0,y:0};var h=0;b.y=b.y*-1;for(var g=0;g<this._viewItems.length;g++){o.x+=this._viewItems[g].getWidth();o.y+=this._viewItems[g].getHeight();if(this.orientation=="horizontal"&&b.x+this._viewItems[g].getWidth()/2<o.x){h=g;break}else{if(this.orientation=="vertical"&&b.y+this._viewItems[g].getHeight()/2<o.y){h=g;break}}}this.curentItemIdx=h;return{position:o,itemIdx:h,item:this._viewItems[h]}},scrollTo:function(b){console.warn("SCROLLER - need to scroll to item")},onBtnStartToggle:function(g,h,b){if(h){this.intervalScrollExecute("end",this.scrollDelta)}else{if(this.runner){this.runner.stop(this.scrollTask)}}},runner:new Ext.util.TaskRunner(),scrollTask:null,onBtnStartMouseOut:function(b){if(this.runner&&this.scrollTask){this.runner.stop(this.scrollTask);b.toggle(false)}},onBtnEndToggle:function(g,h,b){if(h){this.intervalScrollExecute("start",this.scrollDelta)}else{if(this.runner){this.runner.stop(this.scrollTask)}}},onBtnEndMouseOut:function(b){if(this.runner&&this.scrollTask){this.runner.stop(this.scrollTask);b.toggle(false)}},currentItem:null,intervalScrollExecute:function(h,o){var g=this;var b=function(){g.scrollView(h,o)};this.scrollTask=g.runner.start({run:b,interval:this.scrollDelay})},scrollView:function(b,g){if(!g){g=100}if(this.scroller){switch(b){case"end":if(this.orientation=="horizontal"){this.scroller.scrollTo(g,0,500,true)}else{this.scroller.scrollTo(0,g,500,true)}break;case"start":default:if(this.orientation=="horizontal"){this.scroller.scrollTo(g*-1,0,500,true)}else{this.scroller.scrollTo(0,g*-1,500,true)}break}}},updateViewSize:function(){if(this.view){var b=this.calculateItemsSize();this.view.setHeight(b.height);this.view.setWidth(b.width);this.view.doLayout();this.updateCssSize()}},calculateItemsSize:function(){var b={width:this.centerPanel.getSize().width,height:this.centerPanel.getSize().height};if(this.view.items&&this.view.items.items&&this.view.items.items.length>0){if(this.orientation=="horizontal"){b.width=0;for(var g=0;g<this.view.items.items.length;g++){if(this.view.items.items[g].rendered){b.width+=this.view.items.items[g].getSize().width}}}else{b.height=0;for(var g=0;g<this.view.items.items.length;g++){if(this.view.items.items[g].rendered){b.height+=this.view.items.items[g].getSize().height}}}}return b},updateCssSize:function(){if(this.scroller){this.scroller.refresh()}},onComponentsAdd:function(b,h,g,o){this._viewItems.push(h);var q=this;Ext.defer(function(){q.updateViewSize()},10)},onAddedToParent:function(g,b,o,h){b.on("resize",g.updateViewSize,g)},onComponentsRemove:function(b,g,h){var o=this;Ext.Array.remove(this._viewItems,g);Ext.defer(function(){o.updateViewSize()},10)},registerCss:function(){var w=Ext.id();var h=null;var q=null;if(this.orientation=="horizontal"){h="{position:absolute;background:#aaa;z-index:1;top:0;bottom:0;left:0;width:100%;overflow:auto;}"}else{h="{position:absolute; background:#aaa;z-index:1;top:0px; bottom:0px; left:0;height:100%;overflow:auto;}"}q="."+w+h;var o={};if(!Ext.util.CSS.getRule("."+w)){css=Ext.util.CSS.createStyleSheet(q,w);o={cssName:w,cssText:q,css:css};this.draggableCss.wrapper=o}var g=null;if(this.orientation=="horizontal"){g="{height:100%;float:left;padding:0;}"}else{g="{width:100%;float:left;padding:0;}"}var z=Ext.id();var b="."+z+g;o={};if(!Ext.util.CSS.getRule("."+z)){css=Ext.util.CSS.createStyleSheet(b,z);o={cssName:z,cssText:b,css:css};this.draggableCss.scroller=o}return this.draggableCss},createDivs:function(b){this.divsCfg={wrapperDivId:Ext.id(),scrollerDivId:Ext.id(),containerDivId:Ext.id(),div:null};if(!b){b=this.draggableCss}this.divsCfg.div='<div id="'+this.divsCfg.wrapperDivId+'" class="'+b.wrapper.cssName+'"><div id="'+this.divsCfg.scrollerDivId+'" class="'+b.scroller.cssName+'"><div id="'+this.divsCfg.containerDivId+'"></div></div></div>';return this.divsCfg},getLoremIpsum:function(){return"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."}});Ext.define("GeoMind.desktop.map.MapWidget",{extend:GeoMind.base.Module,width:175,height:40,hOffset:5,vOffset:5,maxOpacity:0.75,position:"b",bodyStyle:{padding:"5px 5px 5px 5px"},hideOnInit:false,clearContentOnVisibilityChange:true,lTlbrW:0,rTlbrW:0,tTlbrH:0,bTlbrH:0,floating:true,opacity:0,defaultTimeout:250,panel:null,mapContainer:null,activated:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.panel=Ext.create("Ext.panel.Panel",{width:this.width,minWidth:this.width,height:this.height,minHeight:this.height,layout:"fit",hidden:true,bodyStyle:this.bodyStyle})},setMapContainer:function(b){if(this.mapContainer){this.mapContainer.un("resize",this.resetPosition,this)}this.mapContainer=b;this.mapContainer.add(this.panel);this.mapContainer.on("resize",this.resetPosition,this);this.mapContainer.on("hide",this.mapPanelHide,this);this.mapContainer.on("show",this.mapPanelShow,this)},mapPanelHide:function(){this.setVisibility(false,true)},mapPanelShow:function(){if(!this.hideOnInit){this.setVisibility(true)}},duringActivation:false,activate:function(){if(!this.duringActivation){this.duringActivation=true;var b=this;setTimeout(function(){b.panel.setPosition(-10000,-10000);b.panel.show();b.panel.animate({to:{opacity:b.opacity},duration:0,listeners:{afteranimate:Ext.bind(function(){this.panel.hide();this.activated=true;this.resetPosition()},b)}})},b.defaultTimeout)}},resetPositionSchedule:null,resetPosition:function(){if(this.mapContainer&&this.activated){var b=this;this.resetPositionSchedule=setTimeout(function(){var g=b.getAlignmentOptions();b.panel.alignTo(b.mapContainer,g.p,[g.x,g.y])},b.defaultTimeout)}},getAlignmentOptions:function(){var b={x:0,y:0,p:this.position+"-"+this.position};if(this.position.indexOf("t")>=0){b.y=this.vOffset}if(this.position.indexOf("b")>=0){b.y=0-this.vOffset}if(this.position.indexOf("l")>=0){b.x=this.hOffset}if(this.position.indexOf("r")>=0){b.x=0-this.hOffset}return b},setVisibility:function(b,h){if(!this.activated){this.activate();var g=this;setTimeout(function(){g.setVisibility(b)},250);return}if(this.panel.getEl()==undefined){var g=this;setTimeout(function(){g.setVisibility(b)},250);return}if(b){this.resetPosition();if(this.clearContentOnVisibilityChange){this.update("")}this.panel.show();if(h){this.panel.getEl().setOpacity(this.maxOpacity)}else{this.panel.animate({to:{opacity:this.maxOpacity}})}}else{if(h){if(this.clearContentOnVisibilityChange){this.update("")}this.panel.getEl().setOpacity(0);this.panel.hide()}else{this.panel.animate({to:{opacity:0}
1,listeners:{afteranimate:Ext.bind(function(){if(this.clearContentOnVisibilityChange){this.update("")}this.panel.hide()},this)}})}}},show:function(b){this.setVisibility(true,b)},hide:function(b){this.setVisibility(false,b)},update:function(b){this.panel.update(b)},_onAfterMapContainerRender:function(b){this.setMapContainer(b.data.mapContainer);if(!this.hideOnInit){this.setVisibility(true)}}});Ext.define("GeoMind.desktop.mapTools.BaseLayerSwitcher",{extend:GeoMind.base.Module,widgetCfg:null,defaultWidgetCfg:{hideOnInit:true,position:"tr",width:150,height:22,bodyStyle:{padding:"0px",border:"none"}},constructor:function(b){Ext.apply(this,b);this.callParent([b]);Ext.merge(this.defaultWidgetCfg,this.widgetCfg);this.widgetCfg=this.defaultWidgetCfg;this.addEvents(["updateMapState"]);this.init()},init:function(){this.widget=Ext.create("GeoMind.desktop.map.MapWidget",this.widgetCfg);this.comboStore=Ext.create("Ext.data.Store",{fields:["uuid","name","icon","rec"],data:[]});this.combo=Ext.create("GeoMind.ux.IconCombo",{displayField:"name",valueField:"uuid",iconClsField:"icon",queryMode:"local",triggerAction:"all",editable:false,store:this.comboStore,width:this.widgetCfg.width,height:this.widgetCfg.height});this.widget.panel.add(this.combo);this.widget.panel.on("show",this.onWidgetShow,this)},onWidgetShow:function(){if(!this.active){this.widget.hide(true)}},active:false,setMeUp:function(){if(!this.map){return}var g=[];var o=null,b=null;for(l in this.map.layers){if(this.map.layers[l].record&&this.map.layers[l].record.get("p_is_base_layer")){var h=this.map.layers[l].record;if(h.get("o_visibility")){o=h.get("uuid");b=this.map.layers[l]}g.push({uuid:h.get("uuid"),name:h.get("name"),rec:h,icon:(h.get("icon_cls")!=""&&h.get("icon_cls")!=null)?h.get("icon_cls"):"gm-generic_layer"});this.map.layers[l].setVisibility(false)}}if(g.length>0){g.reverse();this.comboStore.loadData(g);this.combo.setValue(o);b.setVisibility(true);this.combo.on("change",this.onComboChange,this);this.active=true;this.widget.hideOnInit=false;this.setVisibility(true)}else{this.widget.hideOnInit=true;this.setVisibility(false)}},setVisibility:function(b){if(this.widget.mapContainer){if(b){this.widget.show()}else{this.widget.hide()}}},onComboChange:function(z,w,g,o){var h=this.comboStore.getAt(this.comboStore.find("uuid",w));var b=this.comboStore.getAt(this.comboStore.find("uuid",g));var q=[];if(h!=undefined){q.push({checked:true,recordData:h.get("rec")})}if(b!=undefined){q.push({checked:false,recordData:b.get("rec")})}var A={evtName:"updateMapState",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{type:"layersVisibilityChanged",records:q}};this.dispatchEvent(A,{confirmationRequired:false})},cleanMeUp:function(){if(this.active){this.widget.hide();this.widget.hideOnInit=true;this.combo.un("change",this.onComboChange,this);this.comboStore.loadData([])}},onLayersVisibilityChanged:function(g){if(this._id==g.evtSuperInitiatingModule._id){return}var h=g.data.records;for(r in h){var b=this.comboStore.find("uuid",h[r].get("uuid"));if(b>-1){var o=this.combo.getValue();if(h[r].get("uuid")!=o&&h[r].get("o_visibility")){this.combo.un("change",this.onComboChange,this);this.combo.setValue(this.comboStore.getAt(b));this.combo.on("change",this.onComboChange,this)}}}},_onAfterMapReset:function(b){this.map=b.data.map;this.setMeUp();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)},_onAfterMapContainerRender:function(b){if(this.widget){this.widget._onAfterMapContainerRender(b)}},_onMapStateUpdated:function(b){switch(b.data.type){case"layersVisibilityChanged":this.onLayersVisibilityChanged(b);break}}});Ext.define("GeoMind.desktop.mapTools.lang.Measure",{strings:{decimalSeparator:{pl:",",en:"."},thousandSeparator:{pl:" ",en:" "},btnLine_Text:{pl:"Pomiar dÅugoÅci",en:"Measure line"},btnLine_Tip:{pl:"Mierzenie dÅugoÅci linii",en:"Measures a length of a line"},btnArea_Text:{pl:"Pomiar powierzchni",en:"Measure area"},btnArea_Tip:{pl:"Pomiar powierzchni wieloboku",en:"Measures an area of a polygon"},lblLength:{pl:"D",en:"L"},lblArea:{pl:"P",en:"A"},lblPerimeter:{pl:"O",en:"P"}},errCodes:{0:{pl:"Kod bÅÄdu 0",en:"Error code 0"}}});Ext.define("GeoMind.desktop.mapTools.Measure",{extend:GeoMind.base.Module,interactsWith:["GeoMind.desktop.wms.info.Standard"],lang:null,qTipUtils:null,toggleGroupName:null,sharedToggleGroup:false,defaultDecimalSeparator:",",decimalSeparator:null,defaultThousandSeparator:" ",thousandSeparator:null,labelLength:null,labelArea:null,labelPerimeter:null,style:'style="vertical-align:middle; width: 100%; height: 100%; font-size:8.5pt;"',styleMap:null,btnMeasureLine:null,btnMeasureArea:null,btnsCfg:null,readoutPanel:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.mapTools.lang.Measure");this.qTipUtils=GeoMind.utils.QTip;if(b&&b.toggleGroupName){this.sharedToggleGroup=true}else{this.toggleGroupName=Ext.id()}this.callParent([b]);this.addEvents(["clearActivateDefaultToolSchedule","activateDefaultTool"]);this.init()},init:function(){this.decimalSeparator=this.lang.getString("decimalSeparator");if(!this.decimalSeparator){this.decimalSeparator=this.defaultDecimalSeparator}this.thousandSeparator=this.lang.getString("thousandSeparator");if(!this.thousandSeparator){this.thousandSeparator=this.defaultThousandSeparator}if(!this.labelLength){this.labelLength=this.lang.getString("lblLength")}if(!this.labelArea){this.labelArea=this.lang.getString("lblArea")}if(!this.labelPerimeter){this.labelPerimeter=this.lang.getString("lblPerimeter")}
1if(typeof this.autoDefaultTrigger=="function"&&typeof this.autoDefaultScheduleClear=="function"){this.manageExternalToggleGroup=true}this.createButtons();this.prepareStyle()},createButtons:function(){var b={btnMeasureLine:{tooltip:this.qTipUtils.getQtipHtml(this.lang.getString("btnLine_Text"),this.lang.getString("btnLine_Tip")),iconCls:"gm-mt-measureLine",enableToggle:true,pressed:false,toggleGroup:this.toggleGroupName,toggleHandler:Ext.bind(this.toggleHandler,this)},btnMeasurArea:{tooltip:this.qTipUtils.getQtipHtml(this.lang.getString("btnArea_Text"),this.lang.getString("btnArea_Tip")),iconCls:"gm-mt-measureArea",enableToggle:true,pressed:false,toggleGroup:this.toggleGroupName,toggleHandler:Ext.bind(this.toggleHandler,this)}};Ext.merge(b,this.btnsCfg);this.btnMeasureLine=Ext.create("Ext.button.Button",b.btnMeasureLine);this.btnMeasurArea=Ext.create("Ext.button.Button",b.btnMeasurArea)},getButtons:function(){return[this.btnMeasureLine,this.btnMeasurArea]},prepareStyle:function(){if(!this.styleMap){this.styleMap=new OpenLayers.StyleMap({"default":new OpenLayers.Style(OpenLayers.Util.applyDefaults({pointRadius:0,strokeColor:"#FFCC00",strokeWidth:2,strokeDashstyle:"dash"},OpenLayers.Feature.Vector.style["default"]))})}},measureLine:null,measureArea:null,createControls:function(){this.measureLine=new OpenLayers.Control.Measure(OpenLayers.Handler.Path,{persist:true,immediate:true,geodesic:false,handlerOptions:{projection:this.map.getProjectionObject(),layerOptions:{styleMap:this.styleMap}}});this.measureArea=new OpenLayers.Control.Measure(OpenLayers.Handler.Polygon,{persist:true,immediate:true,geodesic:false,handlerOptions:{projection:this.map.getProjectionObject(),layerOptions:{styleMap:this.styleMap}}});this.measureLine.events.register("measurepartial",this,this.measurePartialHandler);this.measureLine.events.register("measurecomplete",this,this.measureCompleteHandler);this.measureArea.events.register("measurepartial",this,this.measurePartialHandler);this.measureArea.events.register("measurecomplete",this,this.measureCompleteHandler);this.map.addControls([this.measureLine,this.measureArea]);this.btnMeasureLine.olControl=this.measureLine;this.btnMeasurArea.olControl=this.measureArea},cleanMeUp:function(){if(this.measureLine){this.measureLine.events.unregister("measurepartial",this,this.measurePartialHandler);this.measureLine.events.unregister("measurecomplete",this,this.measureCompleteHandler);this.measureLine=null}if(this.measureArea){this.measureArea.events.unregister("measurepartial",this,this.measurePartialHandler);this.measureArea.events.unregister("measurecomplete",this,this.measureCompleteHandler);this.measureArea=null}this.btnMeasureLine.toggle(false,false);this.btnMeasurArea.toggle(false,false);this.btnMeasureLine.olControl=null;this.btnMeasurArea.olControl=null;this.map=null;this.readoutPanel.hide()},readoutPanelShowHideSchedule:null,toggleHandler:function(b,h){if(this.sharedToggleGroup){var o={evtName:h?"clearActivateDefaultToolSchedule":"activateDefaultTool",evtInitiatingModule:this,evtSuperInitiatingModule:null,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(o,{confirmationRequired:false})}if(h){b.olControl.activate();this.adviseActivate()}else{b.olControl.deactivate()}clearTimeout(this.readoutPanelShowHideSchedule);var g=this;this.readoutPanelShowHideSchedule=setTimeout(function(){h?Ext.isFunction(g.readoutPanel.show)?g.readoutPanel.show():Ext.emptyFn():Ext.isFunction(g.readoutPanel.hide)?g.readoutPanel.hide():Ext.emptyFn()},250)},adviseActivate:function(){var b={evtName:"deactivationRequired",evtInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(b,{confirmationRequired:false})},deactivate:function(){this.btnMeasureLine.toggle(false);this.btnMeasurArea.toggle(false)},measurePartialHandler:function(b){this.manageMeasurements(b.geometry)},measureCompleteHandler:function(b){this.manageMeasurements(b.geometry)},manageMeasurements:function(w){var o=w.getLength();var h=w.getArea();var z=this.map.projection.getUnits();var q,b,g;switch(z){case"m":default:q="km";b=1000;g=1000000;break}if(o>b){unitLength=q;o=(o/b).toFixed(3)}else{unitLength=z;o=o.toFixed(1)}if(h>g){unitArea=q;h=(h/g).toFixed(3)}else{unitArea=z;h=h.toFixed(1)}if(w.toString().indexOf("POLYGON")>-1){msg="<table "+this.style+"><tr><td><b>"+this.labelArea+":</b> "+h+" "+unitArea+'<span style="font-size:x-small; position: absolute; top: 0px;">2</span></td></tr><tr><td><b>'+this.labelPerimeter+":</b> "+o+" "+unitLength+"</td></tr></table>"}else{msg="<table "+this.style+"><tr><td><b>"+this.labelLength+":</b> "+o+" "+unitLength+"</td></tr></table>"}if(this.readoutPanel){this.readoutPanel.update(msg)}else{}},_onAfterMapReset:function(b){this.map=b.data.map;this.createControls();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)}});
1Ext.define("GeoMind.desktop.mapTools.lang.MousePosition",{strings:{decimalSeparator:{pl:",",en:"."},thousandSeparator:{pl:" ",en:" "}},errCodes:{0:{pl:"Kod bÅÄdu 0",en:"Error code 0"}}});Ext.define("GeoMind.desktop.mapTools.MousePosition",{extend:GeoMind.base.Module,lang:null,defaultDecimalSeparator:",",decimalSeparator:null,defaultThousandSeparator:" ",thousandSeparator:null,tableStyle:'style="width: 100%; height: 100%; font-size:8.5pt;"',rowStyle:"",cellStyle:'style="width: 50%; vertical-align:top;"',granularity:10,displayProjection:null,numProjectedDigits:2,numLonLatDigits:6,projectedPrefixX:"<b>X: </b>",projectedPrefixY:"<b>Y: </b>",lonLatPrefixX:"<b>E: </b>",lonLatPrefixY:"<b>N: </b>",internalProjectedPrefixX:"<b>X: </b>",internalProjectedPrefixY:"<b>Y: </b>",internalLonLatPrefixX:"<b>E: </b>",internalLonLatPrefixY:"<b>N: </b>",patternProjectedDigits:null,patternLonLatDigits:null,readoutPanel:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.mapTools.lang.MousePosition");this.callParent([b]);this.decimalSeparator=this.lang.getString("decimalSeparator");if(!this.decimalSeparator){this.decimalSeparator=this.defaultDecimalSeparator}this.thousandSeparator=this.lang.getString("thousandSeparator");if(!this.thousandSeparator){this.thousandSeparator=this.defaultThousandSeparator}this.patternProjectedDigits=this.createExtNumberFormat(this.numProjectedDigits);this.patternLonLatDigits=this.createExtNumberFormat(this.numLonLatDigits)},createExtNumberFormat:function(g){var b="";while(g>0){g--;b+="0"}return"0,0."+b},setMeUp:function(){this.map.events.register("mousemove",this,this.updateCoords);this.map.events.register("mouseout",this,this.resetCoords);this.setUpDisplayCoords()},cleanMeUp:function(){if(this.map){this.map.events.unregister("mousemove",this,this.updateCoords);this.map.events.unregister("mouseout",this,this.resetCoords)}this.map=null;this.resetCoords()},displayLonLatCoords:false,setUpDisplayCoords:function(){if(this.map.displayProjection){this.displayProjection=this.map.displayProjection}else{this.displayProjection=new OpenLayers.Projection("EPSG:4326")}if(this.displayProjection.projCode=="EPSG:4326"){this.internalProjectedPrefixX=this.projectedPrefixX;this.internalProjectedPrefixY=this.projectedPrefixY;this.internalLonLatPrefixX=this.lonLatPrefixX;this.internalLonLatPrefixY=this.lonLatPrefixY;this.displayLonLatCoords=true}else{this.ininternalProjectedPrefixY=this.projectedPrefixX;this.internalProjectedPrefixY=this.projectedPrefixY;this.internalLonLatPrefixX=this.projectedPrefixX;this.internalLonLatPrefixY=this.projectedPrefixY;this.displayLonLatCoords=false}},resetCoords:function(){var b="<table "+this.tableStyle+"><tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalProjectedPrefixX+"</td><td "+this.cellStyle+">"+this.internalProjectedPrefixY+"</td></tr>";b+="<tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalLonLatPrefixX+"</td><td "+this.cellStyle+">"+this.internalLonLatPrefixY+"</td></tr></table>";this.readoutPanel.update(b)},lastXy:null,updateCoords:function(b){var h;if(b==null){return}else{if(this.lastXy==null||Math.abs(b.xy.x-this.lastXy.x)>this.granularity||Math.abs(b.xy.y-this.lastXy.y)>this.granularity){this.lastXy=b.xy;return}h=this.map.getLonLatFromPixel(b.xy);if(!h){return}this.lastXy=b.xy}var g=this.formatOutput(h);if(this.readoutPanel){if(g!=this.readoutPanel.html){this.readoutPanel.update(g)}}},re:null,eTs:null,eDs:null,ts:null,ds:null,ppd:null,plld:null,formatOutput:function(g){if(!this.eTs){this.eTs=Ext.util.Format.thousandSeparator;this.eDs=Ext.util.Format.decimalSeparator;this.ts=this.thousandSeparator;this.ds=this.decimalSeparator;this.ppd=this.patternProjectedDigits;this.plld=this.patternLonLatDigits}if(!this.re){this.re=new RegExp(this.eTs,"g");this.re=/\./g}var b="<table "+this.tableStyle+"><tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalProjectedPrefixX+Ext.util.Format.number(g.lon,this.ppd).replace(this.re,this.ts).replace(this.eDs,this.ds)+"</td><td "+this.cellStyle+">"+this.internalProjectedPrefixY+Ext.util.Format.number(g.lat,this.ppd).replace(this.re,this.ts).replace(this.eDs,this.ds)+"</td></tr>";g.transform(this.map.getProjectionObject(),this.displayProjection);b+="<tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalLonLatPrefixX+(this.displayLonLatCoords?Ext.util.Format.number(g.lon,this.plld).replace(this.eDs,this.ds):Ext.util.Format.number(g.lon,this.ppd).replace(this.re,this.ts).replace(this.eDs,this.ds))+"</td><td "+this.cellStyle+">"+this.internalLonLatPrefixY+(this.displayLonLatCoords?Ext.util.Format.number(g.lat,this.plld).replace(this.eDs,this.ds):Ext.util.Format.number(g.lat,this.ppd).replace(this.re,this.ts).replace(this.eDs,this.ds))+"</td></tr></table>";return b},_onAfterMapReset:function(b){this.map=b.data.map;this.setMeUp();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.mapTools.MousePositionA3",{extend:GeoMind.base.Module,tableStyle:'style="width: 100%; height: 100%; font-size:8.5pt;"',rowStyle:"",cellStyle:'style="width: 50%; vertical-align:top;"',granularity:10,displayProjection:null,numProjectedDigits:0,numLonLatDigits:6,internalProjectedPrefixX:"<b>E: </b>",internalProjectedPrefixY:"<b>N: </b>",readoutPanel:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},setMeUp:function(){this.map.events.register("mousemove",this,this.updateCoords);this.setUpDisplayCoords()},cleanMeUp:function(){if(this.map){this.map.events.unregister("mousemove",this,this.updateCoords)}this.map=null;this.resetCoords()},displayLonLatCoords:false,setUpDisplayCoords:function(){if(this.map.displayProjection){this.displayProjection=this.map.displayProjection}else{this.displayProjection=new OpenLayers.Projection("EPSG:4326")}},resetCoords:function(){var b="<table "+this.tableStyle+"><tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalProjectedPrefixX+"</td><td "+this.cellStyle+">"+this.internalProjectedPrefixY+"</td></tr>";b+="<tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalLonLatPrefixX+"</td><td "+this.cellStyle+">"+this.internalLonLatPrefixY+"</td></tr></table>";this.readoutPanel.update(b)},lastXy:null,updateCoords:function(b){var h;if(b==null){return}else{if(this.lastXy==null||Math.abs(b.xy.x-this.lastXy.x)>this.granularity||Math.abs(b.xy.y-this.lastXy.y)>this.granularity){this.lastXy=b.xy;return}h=this.map.getLonLatFromPixel(b.xy);if(!h){return}this.lastXy=b.xy}var g=this.formatOutput(h);if(this.readoutPanel){if(g!=this.readoutPanel.html){this.readoutPanel.update(g)}}}
1,formatOutput:function(g){Ext.util.Format.thousandSeparator=" ";var b="<table "+this.tableStyle+"><tr "+this.rowStyle+"><td "+this.cellStyle+">"+this.internalProjectedPrefixY+Ext.util.Format.number(g.lat,"0,000")+"</td><td "+this.cellStyle+">"+this.internalProjectedPrefixX+Ext.util.Format.number(g.lon,"0,000")+"</td></tr></table>";return b},_onAfterMapReset:function(b){this.map=b.data.map;this.setMeUp();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.mapTools.lang.Navigation",{strings:{btnGroupTitle:{pl:"NarzÄdzia podstawowe",en:"Basic tools"},btnPan_Text:{pl:"PrzesuÅ",en:"Pan"},btnPan_Tip:{pl:"Przesuwa mapÄ",en:"Pans the map"},btnZoomToFit_Text:{pl:"DomyÅlny zasiÄg mapy",en:"Zoom to initial map extent"},btnZoomToFit_Tip:{pl:"WyÅwietla mapÄ w domyÅlnym zasiÄgu",en:"Zooms to initial map extent"},btnZoomIn_Text:{pl:"Przybliż",en:"Zoom In"},btnZoomIn_Tip:{pl:"Przybliża mapÄ",en:"Zooms In"},btnZoomOut_Text:{pl:"Oddal",en:"Zoom Out"},btnZoomOut_Tip:{pl:"Oddala mapÄ",en:"Zooms Out"},btnPreviousView_Text:{pl:"Poprzedni widok",en:"Previous"},btnPreviousView_Tip:{pl:"Poprzedni widok mapy w historii przeglÄ
dania",en:"Previous map view"},btnNextView_Text:{pl:"NastÄpny widok",en:"Next"},btnNextView_Tip:{pl:"Kolejny widok mapy w historii przeglÄ
dania",en:"Next map view"}},errCodes:{0:{pl:"Kod bÅÄdu 0",en:"Error code 0"}}});Ext.define("GeoMind.desktop.mapTools.Navigation",{extend:GeoMind.base.Module,mapUtils:null,lang:null,qTipUtils:null,btnZoomToFit:null,btnPan:null,btnZoomIn:null,btnZoomOut:null,btnPreviousView:null,btnNextView:null,buttons:[],btnsScale:"small",useTooltip:true,btnsCfg:null,toggleGroupName:null,constructor:function(b){this.toggleGroupName=Ext.id();Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="GeoMind.desktop.mapTools.lang.Navigation"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.mapUtils=GeoMind.utils.Map;this.qTipUtils=GeoMind.utils.QTip;this.buildButtons()},buildButtons:function(){var b={btnZoomToFit:{tooltip:this.useTooltip?this.qTipUtils.getQtipHtml(this.lang.getString("btnZoomToFit_Text"),this.lang.getString("btnZoomToFit_Tip")):null,scale:this.btnsScale,pressed:false,enableToggle:false,iconCls:"gm-nt-zoomToFit",olControl:null,handler:Ext.bind(this.onBtnZoomToFitClick,this)},btnPan:{tooltip:this.useTooltip?this.qTipUtils.getQtipHtml(this.lang.getString("btnPan_Text"),this.lang.getString("btnPan_Tip")):null,scale:this.btnsScale,pressed:false,enableToggle:true,toggleGroup:this.toggleGroupName,iconCls:"gm-nt-pan",controlName:"navigation",olControl:null,toggleHandler:Ext.bind(this.onToggleBtnStateChange,this)},btnZoomIn:{tooltip:this.useTooltip?this.qTipUtils.getQtipHtml(this.lang.getString("btnZoomIn_Text"),this.lang.getString("btnZoomIn_Tip")):null,scale:this.btnsScale,pressed:false,enableToggle:true,toggleGroup:this.toggleGroupName,iconCls:"gm-nt-zoomIn",controlName:"zoomin",olControl:null,toggleHandler:Ext.bind(this.onToggleBtnStateChange,this)},btnZoomOut:{tooltip:this.useTooltip?this.qTipUtils.getQtipHtml(this.lang.getString("btnZoomOut_Text"),this.lang.getString("btnZoomOut_Tip")):null,scale:this.btnsScale,pressed:false,enableToggle:true,toggleGroup:this.toggleGroupName,iconCls:"gm-nt-zoomOut",controlName:"zoomin",olControl:null,toggleHandler:Ext.bind(this.onToggleBtnStateChange,this)},btnPreviousView:{tooltip:this.useTooltip?this.qTipUtils.getQtipHtml(this.lang.getString("btnPreviousView_Text"),this.lang.getString("btnPreviousView_Tip")):null,scale:this.btnsScale,pressed:false,iconCls:"gm-nt-previousView",disabled:true,controlName:"navigationhistory",olControl:null,handler:Ext.bind(this.onBtnPreviousViewClick,this)},btnNextView:{tooltip:this.useTooltip?this.qTipUtils.getQtipHtml(this.lang.getString("btnNextView_Text"),this.lang.getString("btnNextView_Tip")):null,scale:this.btnsScale,pressed:false,iconCls:"gm-nt-nextView",disabled:true,controlName:"navigationhistory",olControl:null,handler:Ext.bind(this.onBtnNextViewClick,this)}};Ext.merge(b,this.btnsCfg);this.btnZoomToFit=Ext.create("Ext.button.Button",b.btnZoomToFit);this.btnPan=Ext.create("Ext.button.Button",b.btnPan);this.btnZoomIn=Ext.create("Ext.button.Button",b.btnZoomIn);this.btnZoomOut=Ext.create("Ext.button.Button",b.btnZoomOut);this.btnPreviousView=Ext.create("Ext.button.Button",b.btnPreviousView);this.btnNextView=Ext.create("Ext.button.Button",b.btnNextView);this.buttons=[this.btnZoomToFit,this.btnPan,this.btnZoomIn,this.btnZoomOut,this.btnPreviousView,this.btnNextView]},setMap:function(b){this.map=b;this.bindNavControls();
1this.bindNavigationHistoryControls();if(!this.btnPan.pressed){this.btnPan.toggle()}},bindNavControls:function(){this.btnPan.olControl=this.mapUtils.getMapControlByControlName(this.map,"navigation");this.btnZoomIn.olControl=this.mapUtils.getMapControlByControlName(this.map,"zoomin");this.btnZoomOut.olControl=this.mapUtils.getMapControlByControlName(this.map,"zoomout");this.btnPreviousView.olControl=this.mapUtils.getMapControlByControlName(this.map,"navigationhistory");this.btnNextView.olControl=this.mapUtils.getMapControlByControlName(this.map,"navigationhistory")},getButtons:function(){return this.buttons},onBtnPreviousViewClick:function(g,h,b){if(this.map){if(g.olControl.previousStack.length>1){g.olControl.previousTrigger()}}},onBtnNextViewClick:function(g,h,b){if(this.map){if(g.olControl.nextStack.length>0){g.olControl.nextTrigger()}}},onBtnZoomToFitClick:function(){if(this.map){this.map.zoomToExtent(this.map.initialExtent)}},bindNavigationHistoryControls:function(){this.map.events.on({moveend:this.onMapMoveZoomEnd,zoomend:this.onMapMoveZoomEnd,scope:this});this.manageNavHistoryBtns()},onMapMoveZoomEndSchedule:null,onMapMoveZoomEnd:function(){clearTimeout(this.onMapMoveZoomEndSchedule);var b=this;this.onMapMoveZoomEndSchedule=setTimeout(function(){b.manageNavHistoryBtns()},100)},manageNavHistoryBtns:function(){if(!this.btnPreviousView.olControl){return}if(this.btnPreviousView.olControl.previousStack&&this.btnPreviousView.olControl.previousStack.length>0){this.btnPreviousView.setDisabled(false)}else{this.btnPreviousView.setDisabled(true)}if(this.btnNextView.olControl.nextStack&&this.btnNextView.olControl.nextStack.length>0){this.btnNextView.setDisabled(false)}else{this.btnNextView.setDisabled(true)}},autoDefaultToPanControlSchedule:null,autoDefaultToPanControl:function(){var b=this;this.autoDefaultToPanControlSchedule=setTimeout(function(){b.btnPan.toggle(true)},250)},clearAutoDefaultSchedule:function(){clearTimeout(this.autoDefaultToPanControlSchedule)},onToggleBtnStateChange:function(){var b=arguments[0];if(this.map&&b.olControl){if(b.pressed){clearTimeout(this.autoDefaultToPanControlSchedule);b.olControl.activate()}else{this.autoDefaultToPanControl();if(b.controlName!="navigation"){b.olControl.deactivate()}}}else{b.toggle(false)}},_onAfterMapCreated:function(b){if(b.data.map){this.setMap(b.data.map)}this.manageEventConfirmation(b)},_onAfterMapReset:function(b){if(b.data.map){this.setMap(b.data.map)}this.manageEventConfirmation(b)},_onActivateDefaultTool:function(b){this.autoDefaultToPanControl()},_onClearActivateDefaultToolSchedule:function(b){clearTimeout(this.autoDefaultToPanControlSchedule)}});Ext.define("GeoMind.desktop.mapTools.lang.ScaleBar",{strings:{decimalSeparator:{pl:",",en:"."},thousandSeparator:{pl:" ",en:" "},scaleString:{pl:"skala",en:"scale"}},errCodes:{0:{pl:"Kod bÅÄdu 0",en:"Error code 0"}}});Ext.define("GeoMind.desktop.mapTools.ScaleBar",{extend:GeoMind.base.Module,lang:null,defaultDecimalSeparator:",",decimalSeparator:null,defaultThousandSeparator:" ",thousandSeparator:null,style:'style="text-align: center; width: 100%; height: 100%; font-size:8.5pt;"',defaultScaleString:"scale",scaleString:null,scaleBarImagePath:null,scaleBarLength:null,defaultScaleBarImage:"resources/scaleBar/ScaleBar.png",defaultScaleBarLength:82,readoutPanel:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.mapTools.lang.ScaleBar");if(!this.scaleBarImagePath){var g=Ext.Loader.getPath(this.$className);this.scaleBarImagePath=g.substring(0,g.lastIndexOf("/")+1)+this.defaultScaleBarImage}if(!this.scaleBarLength){this.scaleBarLength=this.defaultScaleBarLength}this.scaleString=this.lang.getString("scaleString");if(!this.scaleString){this.scaleString=this.defaultScaleString}this.decimalSeparator=this.lang.getString("decimalSeparator");if(!this.decimalSeparator){this.decimalSeparator=this.defaultDecimalSeparator}this.thousandSeparator=this.lang.getString("thousandSeparator");if(!this.thousandSeparator){this.thousandSeparator=this.defaultThousandSeparator}},setMeUp:function(){this.map.events.register("zoomend",this,this.updateScale);this.updateScale()},cleanMeUp:function(){if(this.map){this.map.events.unregister("zoomend",this,this.updateScale);this.map=null}},updateScale:function(){if(!this.map){return}var o=this.map.getScale();if(!o){var h=this;setTimeout(function(){h.updateScale()},250);return}o=Ext.util.Format.number(Math.round(o),"0,0");o=o.replace(/\./g,this.thousandSeparator);var g=Math.round(this.scaleBarLength*this.map.resolution);if(g==0){g=Math.round(this.scaleBarLength*this.map.maxResolution)}if(g>1000){g=(g/1000).toFixed(2)+" km"}else{g+=" m"}g=g.replace(".",this.decimalSeparator);var b="<table "+this.style+'><tr><td style="width:100%; background: url('+this.scaleBarImagePath+') no-repeat center bottom;">'+g+"</td></tr><tr><td>
1"+this.scaleString+" 1:"+o+"</td></tr>";"</table>";this.readoutPanel.update(b)},_onAfterMapReset:function(b){this.map=b.data.map;this.setMeUp();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.mapTools.lang.ScalePicker",{strings:{decimalSeparator:{pl:",",en:"."},thousandSeparator:{pl:" ",en:" "},scaleString:{pl:"skala",en:"scale"}},errCodes:{}});Ext.define("GeoMind.desktop.mapTools.ScalePicker",{extend:GeoMind.base.Module,lang:null,defaultThousandSeparator:" ",thousandSeparator:null,defaultScaleString:"scale",scaleString:null,combo:null,map:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.mapTools.lang.ScalePicker");this.scaleString=this.lang.getString("scaleString");this.thousandSeparator=this.lang.getString("thousandSeparator");this.combo=Ext.create("Ext.form.field.ComboBox",{width:100,store:Ext.create("Ext.data.Store",{fields:["zoomLvl","scaleStr"],data:[]}),queryMode:"local",triggerAction:"all",displayField:"scaleStr",valueField:"zoomLvl",enableKeyEvents:true})},setMeUp:function(){this.map.events.register("zoomend",this,this.updateScale);var b=GeoMind.utils.Map.getMapScales(this.map);for(d in b){b[d].scaleStr=this.scaleToString(b[d].scale)}this.combo.store.loadData(b);this.combo.on("select",this.onScalePicked,this);this.combo.on("keyup",this.trapEnter,this);this.updateScale()},cleanMeUp:function(){if(this.map){this.map.events.unregister("zoomend",this,this.updateScale);this.map=null}this.combo.un("select",this.onScalePicked,this);this.combo.un("keyup",this.trapEnter,this);this.combo.store.loadData([])},onScalePicked:function(){if(this.map){this.map.zoomTo(this.combo.getValue())}},trapEnter:function(h,g,b){if(g.getKey()==g.ENTER){this.onScaleTyped()}},onScaleTyped:function(){var b=this.combo.getValue();if(Ext.isNumber(b)){this.onScalePicked()}else{this.setScaleFromString(b)}},setScaleFromString:function(b){var h=parseInt(b.replace(/ /g,""));if(isNaN(h)){this.updateScale()}else{var g=this.map.getZoom();this.map.zoomToScale(h,true);if(g==this.map.getZoom()){this.updateScale()}}},updateScale:function(){var b=this.map.getZoom();this.combo.reset();this.combo.setValue(b);this.combo.blur();this.combo.collapse()},scaleToString:function(g){var b=Ext.util.Format.number(Math.round(g),"0,0");b=b.replace(/\./g,this.thousandSeparator);return b},_onAfterMapReset:function(b){this.map=b.data.map;this.setMeUp();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)}});Ext.define("GeoMind.utils.QTip",{singleton:true,getQtipHtml:function(b,g){return"<b>"+b+"</b></br>"+g}});Ext.define("GeoMind.print.lang.Standard",{strings:{btnText:{pl:"Drukowanie",en:"Print"},btnTip:{pl:"Drukuj mapÄ",en:"Print the map"},configurationFailed_MsgTitle:{pl:"Uwaga",en:"Warning"},configurationFailed_Msg:{pl:"Konfiguracja moduÅu drukowania nie powiodÅa siÄ.",en:"Printing module configuration has failed."},callbackFailure_MsgTitle:{pl:"Uwaga",en:"Warning"},callbackFailure_Msg1_part1:{pl:"Server zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"The server returned the following error: "},callbackFailure_Msg1_part2:{pl:"Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Please try again or contact the system administrator."},callbackFailure_Msg2:{pl:"BÅÄ
d komunikacji z serwerem. Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Server communication error. Please try again or contact the system administrator."},layoutFailure_Warning:{pl:"Uwaga",en:"Warning"},layoutFailure_Msg_part1:{pl:"Ustawienia ukÅadu wydruku zostaÅy zresetowane do ukÅadu domyÅlnego. Serwer zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"Print layout has been reseted to default settings. The server returned the following error: "},layoutFailure_Msg_part2:{pl:" Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:" Please try again or contact the system administrator."},callbackSuccess_MsgTitle:{pl:"Wydruk gotowy",en:"Printout ready"},callbackSuccess_Msg_part1:{pl:"Kliknij link, żeby otworzyÄ go w nowym oknie: ",en:"Click the link to open it in a new window: "},callbackSuccess_Msg_part1a:{pl:"Kliknij przycisk OK, żeby otworzyÄ go w nowym oknie.",en:"Click the OK button to open it in a new window."},callbackSuccess_Msg_part2:{pl:"Wydruk",en:"Printout"}},errCodes:{0:{pl:"Kod bÅÄdu 0",en:"Error code 0"}}});Ext.define("GeoMind.desktop.print.ui.Standard",{extend:Ext.window.Window,height:295,width:500,resizable:false,layout:{type:"fit"},closable:false,closeAction:"hide",iconCls:"gm-prt-printer",bodyStyle:{border:"none"},tempStore:null,initComponent:function(){var b=this;this.tempStore=Ext.create("Ext.data.Store",{fields:["XXX"],data:[]});Ext.applyIf(b,{dockedItems:[{xtype:"toolbar",dock:"bottom",items:[{xtype:"tbfill"},{xtype:"button",itemId:"btnOk",iconCls:"gm-prt-printer"},{xtype:"button",itemId:"btnCancel",iconAlign:"right",iconCls:"gm-prt-printer_delete"}]}],items:[{xtype:"panel",itemId:"accordionPanel",layout:{type:"accordion"},title:"",items:[{xtype:"panel",itemId:"printSettingsPane",layout:"column",iconCls:"gm-prt-cog",collapsed:false,border:false,items:[{xtype:"form",bodyPadding:10,
1columnWidth:0.5,border:false,defaults:{labelWidth:65},items:[{xtype:"combobox",itemId:"ddLayoutType",fieldLabel:"Label",editable:false,displayField:"display",queryMode:"local",store:this.tempStore,valueField:"name",anchor:"100%"},{xtype:"textarea",itemId:"txtTitle",fieldLabel:"Label",editable:true,height:35,anchor:"100%"},{xtype:"textarea",itemId:"txtDescription",fieldLabel:"Label",editable:true,height:90,anchor:"100%"}]},{xtype:"panel",columnWidth:0,height:"100%"},{xtype:"form",bodyPadding:10,columnWidth:0.5,border:false,items:[{xtype:"combobox",itemId:"ddPaperSize",fieldLabel:"Label",editable:false,displayField:"display",queryMode:"local",store:this.tempStore,valueField:"name",anchor:"100%"},{xtype:"combobox",itemId:"ddOrientation",fieldLabel:"Label",editable:false,displayField:"name",queryMode:"local",store:this.tempStore,valueField:"value",anchor:"100%"},{xtype:"combobox",itemId:"ddResolution",fieldLabel:"Label",editable:false,displayField:"display",queryMode:"local",store:this.tempStore,valueField:"name",anchor:"100%"},{xtype:"combobox",itemId:"ddFormat",fieldLabel:"Label",editable:false,displayField:"display",queryMode:"local",store:this.tempStore,valueField:"name",anchor:"100%"},{xtype:"combobox",itemId:"ddScale",fieldLabel:"Label",editable:false,displayField:"name",queryMode:"local",store:this.tempStore,valueField:"value",anchor:"100%"},{xtype:"numberfield",itemId:"numAngle",value:0,fieldLabel:"Label",allowDecimals:false,maxValue:180,minValue:-180,anchor:"100%"}]}]},{xtype:"panel",itemId:"printHelpPane",styleHtmlContent:true,bodyPadding:10,collapsed:true,iconCls:"gm-prt-information"}]}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.print.view.Standard",{extend:GeoMind.base.Module,lang:null,initPosition:null,initPositionOffset:null,animateTarget:null,printEngine:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["printSettingsUpdated","printRequested"]);if(!this.lang){this.lang="GeoMind.desktop.print.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.init()},init:function(){this.view=Ext.create("GeoMind.desktop.print.ui.Standard",{animateTarget:this.animateTarget});if(this.initPosition){this.view.animateTarget=null;this.view.on("show",this.onFirstViewWindowShow,this)}this.view.on("hide",this.onViewHide,this);this.ddPaperSize=this.view.query("[itemId=ddPaperSize]")[0];this.ddResolution=this.view.query("[itemId=ddResolution]")[0];this.ddFormat=this.view.query("[itemId=ddFormat]")[0];this.ddOrientation=this.view.query("[itemId=ddOrientation]")[0];this.ddScale=this.view.query("[itemId=ddScale]")[0];this.numAngle=this.view.query("[itemId=numAngle]")[0];this.ddLayoutType=this.view.query("[itemId=ddLayoutType]")[0];this.txtTitle=this.view.query("[itemId=txtTitle]")[0];this.txtDescription=this.view.query("[itemId=txtDescription]")[0];this.btnOk=this.view.query("[itemId=btnOk]")[0];this.btnCancel=this.view.query("[itemId=btnCancel]")[0];this.accordionPanel=this.view.query("[itemId=accordionPanel]")[0];this.settingsPane=this.view.query("[itemId=printSettingsPane]")[0];this.helpPane=this.view.query("[itemId=printHelpPane]")[0];this.title=this.lang.getString("settingsWindow_Title");this.settingsPane.title=this.lang.getString("settingsPane_Title");this.helpPane.title=this.lang.getString("helpPane_Title");this.helpPane.html=this.lang.getString("helpPane_Content");this.ddPaperSize.fieldLabel=this.lang.getString("settingsWindow_PaperSizes");this.ddResolution.fieldLabel=this.lang.getString("settingsWindow_Resolutions");this.ddFormat.fieldLabel=this.lang.getString("settingsWindow_Formats");this.ddOrientation.fieldLabel=this.lang.getString("settingsWindow_Orienatation");this.ddScale.fieldLabel=this.lang.getString("settingsWindow_Scale");this.numAngle.fieldLabel=this.lang.getString("settingsWindow_Angle");this.ddLayoutType.fieldLabel=this.lang.getString("layoutWindow_LayoutType");this.txtTitle.fieldLabel=this.lang.getString("layoutWindow_Title");this.txtTitle.emptyText=this.lang.getString("layoutWindow_Title_emptyText");this.txtDescription.fieldLabel=this.lang.getString("layoutWindow_Description");this.txtDescription.emptyText=this.lang.getString("layoutWindow_Description_emptyText");this.btnOk.setText(this.lang.getString("settingsWindow_BtnOk"));
1this.btnCancel.setText(this.lang.getString("settingsWindow_BtnCancel"))},onFirstViewWindowShow:function(){this.view.alignTo(Ext.getBody(),this.initPosition,this.initPositionOffset);this.view.animateTarget=this.animateTarget;this.view.un("show",this.onFirstViewWindowShow,this)},show:function(){this.view.show()},hide:function(){if(!this.view.isHidden()){this.view.hide()}},onViewHide:function(){this.fireEvent("viewHide")},cleanUp:function(){this.hide();this.ddPaperSize.un("change",this.notifyPaperConfigChange,this);this.ddOrientation.un("change",this.notifyPaperConfigChange,this);this.ddScale.un("change",this.notifyPaperConfigChange,this);this.numAngle.un("change",this.notifyPaperConfigChange,this);this.numAngle.un("validitychange",function(h,g,b){if(!g){if(h.getValue()>h.maxValue){h.setValue(h.maxValue)}if(h.getValue()<h.minValue){h.setValue(h.minValue)}}},this);this.btnOk.un("click",this.onBtnOkClick,this);this.btnCancel.un("click",this.onBtnCancelClick,this);this.view.un("hide",this.onWindowHide,this)},setUp:function(){if(!this.printEngine||!this.printEngine.canPrint){return}this.ddPaperSize.bindStore(Ext.create("Ext.data.Store",{fields:["name","display"],data:this.printConfig.paperSizes}));this.ddPaperSize.setValue(this.ddPaperSize.store.getAt(0));this.ddOrientation.bindStore(Ext.create("Ext.data.Store",{fields:["value","name"],data:[{value:true,name:this.lang.getString("settingsWindow_OrienatationLandscape")},{value:false,name:this.lang.getString("settingsWindow_OrienatationPortrait")}]}));this.ddOrientation.setValue(this.ddOrientation.store.getAt(0));this.ddResolution.bindStore(Ext.create("Ext.data.Store",{fields:["name","display"],data:this.printConfig.resolutions}));this.ddResolution.setValue(this.ddResolution.store.getAt(0));this.ddFormat.bindStore(Ext.create("Ext.data.Store",{fields:["name","display"],data:this.printConfig.printoutFormats}));this.ddFormat.setValue(this.ddFormat.store.getAt(0));this.ddScale.bindStore(Ext.create("Ext.data.Store",{fields:["value","name"],data:this.getMapScales()}));this.ddLayoutType.bindStore(Ext.create("Ext.data.Store",{fields:["name","description","def","display"],data:this.printConfig.printoutLayouts}));this.ddLayoutType.setValue(this.ddLayoutType.store.getAt(0));this.ddPaperSize.on("change",this.notifyPaperConfigChange,this);this.ddOrientation.on("change",this.notifyPaperConfigChange,this);this.ddScale.on("change",this.notifyPaperConfigChange,this);this.numAngle.on("change",this.notifyPaperConfigChange,this);this.numAngle.on("validitychange",function(h,g,b){if(!g){if(h.getValue()>h.maxValue){h.setValue(h.maxValue)}if(h.getValue()<h.minValue){h.setValue(h.minValue)}}},this);this.btnOk.on("click",this.onBtnOkClick,this);this.btnCancel.on("click",this.onBtnCancelClick,this);this.view.on("hide",this.onWindowHide,this)},onWindowHide:function(){this.hideLoadMask();this.settingsPane.expand();this.ddPaperSize.setValue(this.ddPaperSize.store.getAt(0));this.ddOrientation.setValue(this.ddOrientation.store.getAt(0));this.ddResolution.setValue(this.ddResolution.store.getAt(0));this.ddFormat.setValue(this.ddFormat.store.getAt(0));this.numAngle.setValue(0);this.ddLayoutType.setValue(this.ddLayoutType.store.getAt(0));this.txtTitle.setValue("");this.txtDescription.setValue("")},getMapScales:function(){var b=[];var g=this.printEngine.getPrintoutScales();for(s in g){b.push({value:g[s],name:"1:"+Ext.util.Format.number(g[s],"0,0")})}return b},onBtnCancelClick:function(){this.hide()},onBtnOkClick:function(){this.settingsPane.expand();this.showLoadMask();this.notifyPaperConfigChange();var b={evtName:"printRequest",evtInitiatingModule:this,evtBroadcastingController:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})},grabPaperConfig:function(){return{layoutName:this.ddLayoutType.getValue(),size:this.ddPaperSize.getValue(),resolution:this.ddResolution.getValue(),format:this.ddFormat.getValue(),landscape:this.ddOrientation.getValue(),scale:this.ddScale.getValue(),angle:this.numAngle.getValue()}},getDynamicData:function(){return[{key:"printoutTitle",value:this.txtTitle.getValue()},{key:"printoutDescription",value:this.txtDescription.getValue()}]},externalUpdateSource:false,notifyPaperConfigChange:function(){if(!this.externalUpdateSource){var b={evtName:"printSettingsUpdated",evtInitiatingModule:this,evtBroadcastingController:null,data:{paperConfig:this.grabPaperConfig(),dynamicData:this.getDynamicData()}};this.dispatchEvent(b,{confirmationRequired:false})}},loadMask:null,showLoadMask:function(){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:this.lang.getString("loadMaskInfo")})}this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},onPrintExtentUpdated:function(b){this.externalUpdateSource=true;this.numAngle.setValue(b.paperConfig.angle);this.ddScale.setValue(b.paperConfig.scale);this.externalUpdateSource=false},onPrintEngine_PrintoutScalesChanged:function(b){this.ddScale.store.loadData(this.getMapScales())},_onPrintEngine_ConfigReady:function(b){this.printEngine=b.data.printEngine;this.printConfig=b.data.printConfig;this.setUp()},_onPrintEngine_PrintingFinished:function(b){this.hideLoadMask()},_onPrintEngine_PrintExtentUpdated:function(b){this.onPrintExtentUpdated(b.data)},_onPrintEngine_PrintoutScalesChanged:function(b){this.onPrintEngine_PrintoutScalesChanged(b)}});Ext.define("GeoMind.desktop.print.Standard",{extend:GeoMind.base.Module,interactsWith:["GeoMind.desktop.print.Standard","GeoMind.desktop.wms.info.Standard"],printSettingsModule:null,printEngine:null,printProxy:null,styleSettings:null,serviceUrl:null,serviceMethods:null,printAll:false,lang:null,btnsCfg:null,translateSettings:null,translateLang:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="GeoMind.print.lang.Standard"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang);this.prepareBtns();this.mc=Ext.create("GeoMind.base.ModuleController");if(!this.printEngine){this.printEngine=Ext.create("GeoMind.print.Standard",{serviceUrl:this.serviceUrl,serviceMethods:this.serviceMethods,printProxy:this.printProxy,printAll:this.printAll,translateSettings:this.translateSettings,translateLang:this.translateLang,styleSettings:this.styleSettings})}this.mc.registerModule(this.printEngine);this.printSettingsModule=Ext.create("GeoMind.desktop.print.view.Standard",{animateTarget:this.btn});this.mc.registerModule(this.printSettingsModule);this.printEngine.on("printEngine_PrintingFinished",this.onPrintFinished,this);this.printEngine.on("printEngine_ConfigReady",this.onPrintConfigReady,this);this.btn.on("toggle",this.onBtnToggle,this);this.printSettingsModule.on("viewHide",function(){this.btn.toggle(false,false)},this);this.printEngine.pullPrintConfig()},prepareBtns:function(){var g=GeoMind.utils.QTip;var b={print:{tooltip:g.getQtipHtml(this.lang.getString("btnText"),this.lang.getString("btnTip")),enableToggle:true,allowDepress:true,disabled:true,iconCls:"gm-prt-printer"}};Ext.merge(b,this.btnsCfg);this.btn=Ext.create("Ext.button.Button",b.print)},active:false,activate:function(){var b={evtName:"deactivationRequired",evtInitiatingModule:this,evtBroadcastingController:null,callback:Ext.bind(this._activate,this),data:{}};this.dispatchEvent(b,{confirmationRequired:true})},_activate:function(){this.printEngine._activate();this.printSettingsModule.show();this.active=true},deactivate:function(){this.active=false;this.printEngine._deactivate();this.printSettingsModule.hide()},onBtnToggle:function(g,h,b){if(this.printEngine.canPrint){if(h){this.activate()}else{this.deactivate()}}},onPrintConfigReady:function(b){this.setMeUp()},setMeUp:function(){if(this.printEngine.canPrint){this.btn.enable()}},cleanMeUp:function(){this.printSettingsModule.cleanUp();this.printEngine.cleanUp();this.btn.toggle(false,true);this.btn.disable()},onPrintFinished:function(g){if(g.success){var h="";if(g.exception){h="<br/><br/><b>"+this.lang.getString("layoutFailure_Warning")+"</b><br/>"+this.lang.getString("layoutFailure_Msg_part1")+'<span style="color: red;">'+g.exception.msg+"</span>"+this.lang.getString("layoutFailure_Msg_part2")}var b=g.fileLocation;Ext.Msg.show({title:this.lang.getString("callbackSuccess_MsgTitle"),msg:this.lang.getString("callbackSuccess_MsgTitle")+"</br>"+this.lang.getString("callbackSuccess_Msg_part1a")+h,buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.INFO,fn:function(q){if(q=="ok"){window.open(b,"_blank")}}})}else{if(!g.aborted){var o=GeoMind.utils.Exceptions.getMsg(g,this.lang);if(o.length>0){Ext.Msg.show({title:this.lang.getString("callbackFailure_MsgTitle"),msg:this.lang.getString("callbackFailure_Msg1_part1")+o+this.lang.getString("callbackFailure_Msg1_part2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}else{Ext.Msg.show({title:this.lang.getString("callbackFailure_MsgTitle"),msg:this.lang.getString("callbackFailure_Msg2"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}}}},_onAfterMapReset:function(b){this.printEngine.setMap(b.data.map);this.printSettingsModule.setUp();this.setMeUp();this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.cleanMeUp();this.manageEventConfirmation(b)}});
1Ext.define("GeoMind.desktop.print.lang.Standard",{strings:{loadMaskInfo:{pl:"Twój wydruk jest przygotowywany...",en:"Please wait while your printout is being prepared..."},btnText:{pl:"Drukowanie",en:"Print"},btnTip:{pl:"Drukuj mapÄ",en:"Print the map"},configurationFailed_MsgTitle:{pl:"Uwaga",en:"Warning"},configurationFailed_Msg:{pl:"Konfiguracja moduÅu drukowania nie powiodÅa siÄ.",en:"Printing module configuration has failed."},callbackFailure_MsgTitle:{pl:"Uwaga",en:"Warning"},callbackFailure_Msg1_part1:{pl:"Server zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"The server returned the following error: "},callbackFailure_Msg1_part2:{pl:"Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Please try again or contact the system administrator."},callbackFailure_Msg2:{pl:"BÅÄ
d komunikacji z serwerem. Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Server communication error. Please try again or contact the system administrator."},layoutFailure_Warning:{pl:"Uwaga",en:"Warning"},layoutFailure_Msg_part1:{pl:"Ustawienia ukÅadu wydruku zostaÅy zresetowane do ukÅadu domyÅlnego. Serwer zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"Print layout has been reseted to default settings. The server returned the following error: "},layoutFailure_Msg_part2:{pl:" Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:" Please try again or contact the system administrator."},callbackSuccess_MsgTitle:{pl:"Wydruk gotowy",en:"Printout ready"},callbackSuccess_Msg_part1:{pl:"Kliknij link, żeby otworzyÄ go w nowym oknie: ",en:"Click the link to open it in a new window: "},callbackSuccess_Msg_part1a:{pl:"Kliknij przycisk OK, żeby otworzyÄ go w nowym oknie.",en:"Click the OK button to open it in a new window."},callbackSuccess_Msg_part2:{pl:"Wydruk",en:"Printout"},settingsWindow_Title:{pl:"Drukowanie",en:"Printing"},settingsPane_Title:{pl:"Ustawienia",en:"Settings"},helpPane_Title:{pl:"I jak tu drukowaÄ panie, jak tu drukowaÄ?",en:"How to print?"},helpPane_Content:{pl:"<b>Obszar zadruku jest interaktywny:</b><br/><ul><li>Niebieskie uchwyty sÅużÄ
do zmiany kÄ
ta</li><br/><li>BiaÅe uchwyty sÅużÄ
do zmiany skali wydruku</li><br/><li>ZasiÄg drukowania można przeciÄ
gnÄ
Ä w pożÄ
dane miejsce</li><br/></ul>",en:"<b>Printout area is interactive:</b><br/><ul><li>Blue handles adjust the angle of the printout</li><br/><li>White handles adjust the scale of the printout</li><br/><li>Printout extent can be dragged to a desired position</li><br/></ul>"},settingsWindow_PaperSizes:{pl:"Rozmiar",en:"Size"},settingsWindow_Resolutions:{pl:"RozdzielczoÅÄ",en:"Resolution"},settingsWindow_Formats:{pl:"Format",en:"Format"},settingsWindow_Orienatation:{pl:"Orientacja",en:"Orientation"},settingsWindow_OrienatationLandscape:{pl:"Pozioma",en:"Landscape"},settingsWindow_OrienatationPortrait:{pl:"Pionowa",en:"Portrait"},settingsWindow_Scale:{pl:"Skala",en:"Scale"},settingsWindow_Angle:{pl:"KÄ
t",en:"Angle"},layoutWindow_LayoutType:{pl:"UkÅad",en:"Layout"},layoutWindow_Title:{pl:"TytuÅ",en:"Title"},layoutWindow_Title_emptyText:{pl:"Tutaj możesz dodaÄ tytuÅ wydruku",en:"You can add a printout title here"},layoutWindow_Description:{pl:"Opis",en:"Description"},layoutWindow_Description_emptyText:{pl:"Tutaj możesz dodaÄ opis wydruku",en:"You can add a printout description here"},settingsWindow_BtnOk:{pl:"Drukuj",en:"Print"},settingsWindow_BtnCancel:{pl:"Anuluj",en:"Cancel"}},errCodes:{0:{pl:"Kod bÅÄdu 0",en:"Error code 0"}}});Ext.define("GeoMind.search.Input",{extend:GeoMind.base.Module,requires:[],active:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["searchRequest","searchReset"]);this.createGui();this.setLoaded()},setLoading:function(){},setLoaded:function(){},createGui:function(){},doSearchRequest:function(b){var g={evtName:"searchRequest",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{phrase:b}};this.dispatchEvent(g,{confirmationRequired:false})},doSearchReset:function(){var b={evtName:"searchReset",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})},setUp:function(b){},cleanUp:function(){},activate:function(){this.active=true},deactivate:function(){this.active=false},regiterSearchAgent:function(b){},registerSearchAgents:function(b){},onSearchAgentSearchStart:function(b){},onSearchAgentSearchEnd:function(g,b){},onSearchAgentActiveChanged:function(b){},_onRegisterSearchAgents:function(b){this.registerSearchAgents(b.data.agents)},_onSearchAgentSearchStart:function(b){this.onSearchAgentSearchStart(b.data.agent)},_onSearchAgentSearchEnd:function(b){this.onSearchAgentSearchEnd(b.data.agent,b.data.searchResults)},_onSearchAgentActiveChanged:function(b){this.onSearchAgentActiveChanged(b.data.agent)}});Ext.define("GeoMind.desktop.search.lang.Input",{strings:{btnFind:{pl:"Szukaj",en:"Search"},btnClear:{pl:"WyczyÅÄ",en:"Clear"},searchAgents:{pl:"Szukaj w...",en:"Search in..."}},errCodes:{}});Ext.define("GeoMind.desktop.search.Input",{extend:GeoMind.search.Input,loadingCls:"gm_search_loader_size gm-search_loading",loadedCls:"gm_search_loader_size gm-search_loaded",constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.search.lang.Input");this.callParent([b])}
1,setLoading:function(){this.searchStatusIcon.setValue('<div class="'+this.loadingCls+'"></div>')},setLoaded:function(){this.searchStatusIcon.setValue('<div class="'+this.loadedCls+'"></div>')},createGui:function(){this.searchAgentsPicker=Ext.create("Ext.button.Split",{text:this.lang.getString("searchAgents"),menu:new Ext.menu.Menu({items:[]})});this.searchStatusIcon=Ext.create("Ext.form.field.Display",{width:20});this.searchInput=Ext.create("Ext.form.field.Text",{flex:1,enableKeyEvents:true});this.searchInput.on("keypress",this.trapEnter,this);this.btnFind=Ext.create("Ext.button.Button",{iconCls:"gm-search_find_go",text:this.lang.getString("btnFind")});this.btnFind.on("click",this.onBtnFindClick,this);this.view=Ext.create("Ext.toolbar.Toolbar",{items:[this.searchAgentsPicker,this.searchStatusIcon,this.searchInput,this.btnFind]})},trapEnter:function(g,h,b){if(h.keyCode==13){this.onBtnFindClick()}},onBtnFindClick:function(){var b=this.searchInput.getValue();if(b!=""&&b!=null&&b!=undefined){this.doSearchRequest(b)}else{console.warn("Nothing to search dude!")}},onBtnClearClick:function(){this.doSearchReset()},registerSearchAgents:function(b){for(a in b){this.registerSearchAgent(b[a])}},registerSearchAgent:function(g){var h=GeoMind.utils.QTip;var b=new Ext.menu.CheckItem({text:g.shortName,tooltip:h.getQtipHtml(g.shortName,g.name),iconCls:g.iconCls,checked:g.active,hideOnClick:false,agent:g,checkHandler:Ext.bind(this.agentPickerChanged,this)});g.menuItem=b;this.searchAgentsPicker.menu.add(b)},agentPickerChanged:function(h,g,b){h.agent.setActive(g)},activeSearchCnt:0,onSearchAgentSearchStart:function(b){this.activeSearchCnt+=1;this.handleProgressIndicator()},onSearchAgentSearchEnd:function(g,b){this.activeSearchCnt-=1;this.handleProgressIndicator()},onSearchAgentActiveChanged:function(b){b.menuItem.setChecked(b.active,true)},handleProgressIndicator:function(){if(this.activeSearchCnt>0){this.setLoading()}else{this.setLoaded()}}});Ext.define("GeoMind.search.Output",{extend:GeoMind.base.Module,store:null,view:null,loadAppend:false,groupResults:true,active:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.createStore();this.createGui()},createGui:function(){},createStore:function(){this.store=Ext.create("Ext.data.Store",{model:"GeoMind.data.model.SearchResult",data:[],groupField:this.groupResults?"agent_name":null})},setLoadAppend:function(b){this.loadAppend=b},setGroupping:function(b){if(b){this.store.group("agent_name")}else{this.store.clearGrouping()}},clearStore:function(){this.store.loadData([])},onSearchAgentSearchStart:function(b){},onSearchAgentSearchEnd:function(g,b){console.warn("SEARCH OUTPUT: Search end",g,b)},onSearchAgentActiveChanged:function(b){},setUp:function(b){},cleanUp:function(){},activate:function(){this.active=true},deactivate:function(){this.active=false},_onSearchAgentSearchStart:function(b){this.onSearchAgentSearchStart(b.data.agent)},_onSearchAgentSearchEnd:function(b){this.onSearchAgentSearchEnd(b.data.agent,b.data.searchResults)},_onSearchAgentActiveChanged:function(b){this.onSearchAgentActiveChanged(b.data.agent)}});Ext.define("GeoMind.desktop.search.lang.Output",{strings:{emptyText:{pl:"Brak wyników wyszukiwania...",en:"No search results..."},btnClear_Text:{pl:"WyczyÅÄ listÄ",en:"Clear list"},btnClear_Tip:{pl:"Usuwa pobrane informacje",en:"Clears info data"},btnAppend_Text:{pl:"Zachowuj",en:"Append"},btnAppend_Tip:{pl:"Zachowuje wyniki wyszukiwania",en:"Appends query results"},btnGroup_Text:{pl:"Grupuj",en:"Group"},btnGroup_Tip:{pl:"Grupuje wyniki wedÅug źródeÅ informacji",en:"Groups query results by data sources"},zoomTo_Text:{pl:"Pokaż",en:"Show"},zoomTo_Tip:{pl:"WyÅwietla obiekt na mapie",en:"Shows feature on the map"},dataView_Text:{pl:"Dane",en:"Data"},dataView_Tip:{pl:"PodglÄ
d danych",en:"Data view"},dataView_Form:{pl:"PodglÄ
d danych",en:"Data view"}},errCodes:{}});Ext.define("GeoMind.desktop.search.Output",{extend:GeoMind.search.Output,dis
1playLayer:null,selectControl:null,enableSelect:true,wktReader:null,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.search.lang.Output");this.createDisplayLayer();this.createSelectControl();this.createWktReader();this.callParent([b])},createGui:function(){var o=[{xtype:"rownumberer"},{dataIndex:"display",flex:1},{dataIndex:"data_view",sortable:false,width:25,renderer:Ext.bind(this.dataViewRenderer,this)},{dataIndex:"zoom_to",sortable:false,width:25,renderer:Ext.bind(this.zoomToRenderer,this)}];this.grid=Ext.create("Ext.grid.Panel",{store:this.store,hideHeaders:true,emptyText:'<div style="margins: auto;">'+this.lang.getString("emptyText")+"</div>",columns:o,features:[{ftype:"grouping",groupHeaderTpl:["<div>{name:this.formatName}</div>",{formatName:function(A){return Ext.String.trim(A)}}]}],region:"center"});for(c in this.grid.columns){var h=this.grid.columns[c];if(h.dataIndex=="data_view"||h.dataIndex=="zoom_to"){h.mon(h,"click",this.onGridColumnClick,{col:h,that:this})}}this.grid.on("select",this.onGridSelect,this);this.dataView=Ext.create("Ext.form.Panel",{title:this.lang.getString("dataView_Form"),collapsible:true,iconCls:"gm-search_view_data",split:true,region:"east",collapsed:true,bodyPadding:7,autoScroll:true,width:250,layout:"anchor",defaults:{anchor:"100%"}});this.view=Ext.create("Ext.panel.Panel",{layout:"border",border:false,bodyStyle:{backgroundColor:"transparent"},items:[this.grid,this.dataView]});var z=GeoMind.utils.QTip;var g=Ext.create("Ext.button.Button",{text:this.lang.getString("btnClear_Text"),tooltip:z.getQtipHtml(this.lang.getString("btnClear_Text"),this.lang.getString("btnClear_Tip")),iconCls:"gm-search_clear_results"});g.on("click",this.onBtnClearClick,this);var b=Ext.create("Ext.button.Button",{text:this.lang.getString("btnAppend_Text"),tooltip:z.getQtipHtml(this.lang.getString("btnAppend_Text"),this.lang.getString("btnAppend_Tip")),enableToggle:true,pressed:this.loadAppend,iconCls:"gm-search_append_results"});b.on("toggle",this.onBtnAppendToggle,this);var q=Ext.create("Ext.button.Button",{text:this.lang.getString("btnGroup_Text"),tooltip:z.getQtipHtml(this.lang.getString("btnGroup_Text"),this.lang.getString("btnGroup_Tip")),iconCls:"gm-search_group_results",pressed:this.groupResults,enableToggle:true});q.on("toggle",this.onBtnGroupToggle,this);var w=Ext.create("Ext.toolbar.Toolbar",{dock:"bottom",items:[b,"-",q,"->",g]});this.grid.addDocked(w)},onGridSelect:function(o,b,g,h){this.displayRecordData(b);if(b.f){this.highlightFeature(b.f)}},displayRecordData:function(o){this.dataView.removeAll(true);var h=o.get("data");if(!Ext.isArray(h)||h.length==0){return}var b=[];for(d in h){var g=Ext.create("Ext.form.field.Text",{fieldLabel:h[d].name,value:h[d].netType=="DateTime"?this.fixDate(h[d].value):h[d].value,readOnly:true});b.push(g)}this.dataView.add(b)},fixDate:function(g){var b="";var h=GeoMind.utils.Date.fixDate(g);if(h){b=h.toISOString()}return b},onGridColumnClick:function(g,o,q,z,b,h){var w=g.store.getAt(q);switch(this.col.dataIndex){case"zoom_to":this.that.zoomToFeature(w);break;case"data_view":this.that.expandDataViewPanel();break}},zoomToFeature:function(g){if(g.get("bbox_wkt")){var b=this.wktReader.read(g.get("bbox_wkt"));this.map.zoomToExtent(b.geometry.getBounds())}},expandDataViewPanel:function(){this.dataView.expand()},onBtnClearClick:function(){this.clearStore();this.displayRecordData(new this.store.model());this.displayLayer.removeAllFeatures()},onBtnAppendToggle:function(g,h,b){this.setLoadAppend(h)},onBtnGroupToggle:function(g,h,b){this.setGroupping(h)},dataViewRenderer:function(z,b,g,B,A,w){var q="";var o=g.get("data");if(o&&o.length>0){q='<div style="cursor:pointer;" class="gm-grid_icon gm-search_view_data"></div>';var h="<b>"+this.lang.getString("dataView_Text")+"</b><br/>"+this.lang.getString("dataView_Tip");b.tdAttr='data-qtip="'+h+'"'}return q},zoomToRenderer:function(A,g,h,C,B,w){var q="";var z=h.get("bbox_wkt");if(z&&z!=""){q='<div style="cursor:pointer;" class="gm-grid_icon gm-search_zoom_to"></div>';var o="<b>"+this.lang.getString("zoomTo_Text")+"</b><br/>"+this.lang.getString("zoomTo_Tip");g.tdAttr='data-qtip="'+o+'"'}return q},onSearchAgentSearchStart:function(b){},onSearchAgentSearchEnd:function(g,b){if(!this.loadAppend){var h=[];var q=this.store.getRange();for(r in q){if(q[r].get("agent_uuid")==g.uuid){h.push(q[r])}}this.removeFeatures(h);this.store.remove(h)}var q=[];for(sr in b){q.push(new this.store.model(b[sr]))}this.store.loadRecords(q,{addRecords:true});this.createFeatures(q);if(this.store.getCount()>0){var o=this.grid.getSelectionModel().getSelection();if(o.length==0){this.grid.getSelectionModel().select(0)}}else{this.displayRecordData(new this.store.model())}},removeFeatures:function(g){var b=[];for(r in g){if(g[r].f){b.push(g[r].f)}}this.displayLayer.removeFeatures(b)},createFeatures:function(h){var b=[];for(r in h){if(h[r].get("geom_wkt")){var g=this.wktReader.read(h[r].get("geom_wkt"));h[r].f=g;g.r=h[r];b.push(g)}}this.displayLayer.addFeatures(b)},setUp:function(b){if(!b){return}this.map=b},cleanUp:function(){this.deactivate();this.map=null},createWktReader:function(){if(!this.wktReader){this.wktReader=new OpenLayers.Format.WKT()}},createDisplayLayer:function(){if(!this.displayLayer){this.displayLayer=new OpenLayers.Layer.Vector("searchDisplayOnly",{styleMap:new OpenLayers.StyleMap({"default":new OpenLayers.Style(new OpenLayers.Util.applyDefaults({pointRadius:5,fillColor:"#55e1ff",fillOpacity:0.2,strokeColor:"#55e1ff",strokeWidth:2},OpenLayers.Feature.Vector.style["default"])),highlight:new OpenLayers.Style(new OpenLayers.Util.applyDefaults({pointRadius:5,fillColor:"#FF0000",fillOpacity:0.2,strokeColor:"#FF0000",strokeWidth:3},OpenLayers.Feature.Vector.style.highlight))})})}},createSelectControl:function(){this.selectControl=new OpenLayers.Control.SelectFeature
1(this.displayLayer,{clickout:false,box:false,highlightOnly:true,renderIntent:"highlight",unhighlightAll:function(){var q=this.layers;if(q==null){q=[this.layer]}var o,h;for(var b=0;b<q.length;++b){o=q[b];for(var g=o.features.length-1;g>=0;--g){h=o.features[g];this.unhighlight(h)}}}});this.selectControl.handlers.feature.stopDown=false;this.selectControl.events.register("beforefeaturehighlighted",this.selectControl,Ext.bind(this.onBeforeSelectControlHighlight,this));this.selectControl.events.register("featurehighlighted",this.selectControl,Ext.bind(this.onSelectControlHighlight,this))},onBeforeSelectControlHighlight:function(){this.selectControl.unhighlightAll()},onSelectControlHighlight:function(b){if(b.feature.r){this.grid.getSelectionModel().select(b.feature.r)}},highlightFeature:function(b){this.selectControl.highlight(b)},activate:function(){if(!this.map){return}this.map.addLayer(this.displayLayer);if(this.enableSelect){this.map.addControl(this.selectControl);this.selectControl.activate()}this.callParent()},deactivate:function(){if(!this.active||!this.map){return}this.map.removeLayer(this.displayLayer);this.displayLayer.removeAllFeatures();if(this.enableSelect){this.selectControl.unselectAll();this.selectControl.deactivate();this.map.removeControl(this.selectControl)}this.clearStore();this.displayRecordData(new this.store.model());this.callParent()}});Ext.define("GeoMind.search.Standard",{extend:GeoMind.base.Module,requires:[],searchOutput:null,searchInput:null,active:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.moduleController=Ext.create("GeoMind.base.ModuleController");this.createSearchInput();this.createSearchOutput();this.registerSearchAgents();this.createGui()},createSearchInput:function(){this.moduleController.registerModule(this.searchInput)},createSearchOutput:function(){this.moduleController.registerModule(this.searchOutput)},registerSearchAgents:function(){var h=[];for(sa in this.searchAgents){var g;try{g=this.moduleController.registerModule(this.searchAgents[sa]);g.on("searchAgentSearchEnd",this.onSearchAgentSearchEnd,this)}catch(b){console.warn("Could not register search agent",this.searchAgents[sa],b)}if(g){h.push(g)}}this.searchAgents=h;if(this.searchAgents.length>0){var o={evtName:"registerSearchAgents",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{agents:this.searchAgents}};this.moduleController.broadcast(o)}else{this.setDisabled()}},onSearchAgentSearchEnd:function(){},setDisabled:function(){this.disabled=true},createGui:function(){},activate:function(){this.searchInput.activate();this.searchOutput.activate();this.active=true},deactivate:function(){this.searchInput.deactivate();this.searchOutput.deactivate();this.active=false},setMap:function(b){this.map=b;this.activateAgents();this.searchInput.setUp(b);this.searchOutput.setUp(b)},activateAgents:function(){for(sa in this.searchAgents){this.searchAgents[sa].setUp(this.map)}},deactivateAgents:function(){for(sa in this.searchAgents){this.searchAgents[sa].cleanUp()}},onMapStateUpdated:function(b){},_onAfterMapReset:function(b){this.setMap(b.data.map);this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.deactivate();this.deactivateAgents();this.searchInput.cleanUp();this.searchOutput.cleanUp();this.manageEventConfirmation(b)},_onMapStateUpdated:function(b){this.onMapStateUpdated(b.data)}});Ext.define("GeoMind.desktop.search.lang.Standard",{strings:{btnInfo_Text:{pl:"Szukaj",en:"Search"},btnInfo_Tip:{pl:"Wyszukiwarka danych",en:"Geo Search"},windowTitle:{pl:"Wyszukiwanie",en:"Search"},searchResultsPanel:{pl:"Wyniki wyszykiwania",en:"Search results"},settingsPanel:{pl:"Ustawienia wyszukiwania",en:"Search settings"},btnClose:{pl:"Zamknij",en:"Close"}},errCodes:{}});Ext.define("GeoMind.desktop.search.Standard",{extend:GeoMind.search.Standard,btnsCfg:null,btn:null,accordionBodyPadding:0,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.search.lang.Standard");this.callParent([b])},createSearchInput:function(){if(!this.searchInput){this.searchInput=this.moduleController.registerModule("GeoMind.desktop.search.Input")}else{this.searchInput=this.moduleController.registerModule(this.searchInput)}},createSearchOutput:function(){if(!this.searchOutput){this.searchOutput=this.moduleController.registerModule("GeoMind.desktop.search.Output")}else{this.searchOutput=this.moduleController.registerModule(this.searchOutput)}},createBtns:function(){var g=GeoMind.utils.QTip;var b={btn:{enableToggle:true,iconCls:"gm-search",tooltip:g.getQtipHtml(this.lang.getString("btnInfo_Text"),this.lang.getString("btnInfo_Tip"))}};Ext.merge(b,this.btnsCfg);this.btn=Ext.create("Ext.button.Button",b.btn);this.btn.on("toggle",this.onBtnToggle,this)},onBtnToggle:function(g,h,b){if(h){this.activate()}else{this.deactivate()}},createGui:function(){this.createBtns();if(this.disabled){this.btn.disable();return}var h=GeoMind.utils.QTip;var b={btnClose:{iconCls:"gm-search_close",text:this.lang.getString("btnClose")}};Ext.merge(b,this.btnsCfg);var g=Ext.create("Ext.button.Button",b.btnClose);g.on("click",function(){this.deactivate()},this);this.searchResultsPanel=Ext.create("Ext.container.Container",{layout:"fit",items:[this.searchOutput.view],border:false});this.searchResultsPanelOuter=Ext.create("Ext.panel.Panel",{title:this.lang.getString("searchResultsPanel"),layout:"fit",bodyPadding:this.accordionBodyPadding,iconCls:"gm-search_find",items:[this.searchResultsPanel]});this.settingsPanel=Ext.create("Ext.tab.Panel",{plain:true,border:false});this.settingsPanelOuter=Ext.create("Ext.panel.Panel",{title:this.lang.getString("settingsPanel"),layout:"fit",bodyPadding:this.accordionBodyPadding,iconCls:"gm-search_settings",items:[this.settingsPanel]});for(sa in this.searchAgents){if(this.searchAgents[sa].settingsPanel){this.settingsPanel.add(this.searchAgents[sa].settingsPanel)}}if(this.searchAgents.length>0){this.settingsPanel.setActiveTab(0)}this.window=Ext.create("Ext.window.Window",{title:this.lang.getString("windowTitle"),iconCls:"gm-search",animateTarget:this.btn,height:400,width:700,closeAction:"hide",layout:"accordion",collapsible:true,tbar:this.searchInput.view,items:[this.searchResultsPanelOuter,this.settingsPanelOuter],bbar:["->",g]});this.window.on("close",this.deactivate,this)},onSearchAgentSearchEnd:function(){this.searchResultsPanelOuter.expand()},activate:function(){this.window.show();this.callParent()},deactivate:function(){this.window.hide();this.btn.toggle(false,true);this.callParent()}});Ext.define("GeoMind.desktop.tree.behavior.Standard",{requires:[],treeModule:null,constructor:function(b){Ext.apply(this,b);this.callParent([b])},initBehavior:function(g){this.treeModule=g;var b=this.treeModule.view.getView();for(c in this.treeModule.view.columns){this.treeModule.view.columns[c].mon(this.treeModule.view.columns[c],"click",this.onTreeColumnClick,{col:this.treeModule.view.columns[c],that:this})}}
1,onTreeColumnClick:function(g,o,q,A,b,h){var z=g.store.getAt(q).get("recordData");if(this.col.dataIndex=="isActiveInfo"&&z.get("queryable")){var w={evtName:"updateMapState",evtInitiatingModule:this.that.treeModule,evtSuperInitiatingModule:this.that.treeModule,evtBroadcastingController:null,callback:null,data:{type:"layersSetQueryable",records:[z]}};this.that.treeModule.dispatchEvent(w,{confirmationRequired:false})}}});Ext.define("GeoMind.desktop.tree.contextMenu.lang.Standard",{strings:{btnRemove_Text:{pl:"UsuÅ",en:"Remove"},btnRemove_Tip:{pl:"Usuwa zaznaczony obiekt",en:"Removes selected item"},btnZoomToExtent_Text:{pl:"Przybliż do zasiÄgu",en:"Zoom to extent"},btnZoomToExtent_Tip:{pl:"Przybliża do zdefiniowanego zasiÄgu warstwy",en:"Zooms to defined layer's extent"},opacityLbl:{pl:"PrzezroczystoÅÄ",en:"Opacity"},opacityTip:{pl:"Ustawia przezroczystoÅÄ warstwy",en:"Sets layer opacity"},btnReload_Text:{pl:"OdÅwież",en:"Reload"},btnReload_Tip:{pl:"PrzeÅadowuje zaznaczonÄ
warstwÄ",en:"Reloads seleceted layer"}},errCodes:{}});Ext.define("GeoMind.desktop.tree.contextMenu.Standard",{contextMenu:null,lang:null,clickedNode:null,preventFolderDelete:false,preventDefaultLayerDelete:false,btnsCfg:null,constructor:function(b){Ext.apply(this,b);if(!this.lang){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.tree.contextMenu.lang.Standard")}this.callParent([b]);this.initiateContextMenu()},initiateContextMenu:function(){var q=GeoMind.utils.QTip;this.contextMenu=Ext.create("Ext.menu.Menu",{items:[],listeners:{mouseleave:function(A,z,w){A.hide()}}});var g={btnZoomToExtent:{text:this.lang.getString("btnZoomToExtent_Text"),tooltip:q.getQtipHtml(this.lang.getString("btnZoomToExtent_Text"),this.lang.getString("btnZoomToExtent_Tip")),iconCls:"lt-zoomToFit"},btnReload:{text:this.lang.getString("btnReload_Text"),tooltip:q.getQtipHtml(this.lang.getString("btnReload_Text"),this.lang.getString("btnReload_Tip")),iconCls:"lt-reload"},btnRemove:{text:this.lang.getString("btnRemove_Text"),tooltip:q.getQtipHtml(this.lang.getString("btnRemove_Text"),this.lang.getString("btnRemove_Tip")),iconCls:"lt-remove_fromTree"},btnOpacity:{iconCls:"lt-transparency"}};Ext.merge(g,this.btnsCfg);this.btnZoomToExtent=Ext.create("Ext.menu.Item",g.btnZoomToExtent);this.btnZoomToExtent.on("click",this.onBtnZoomToExtentClick,this);this.btnReload=Ext.create("Ext.menu.Item",g.btnReload);this.btnReload.on("click",this.onBtnReloadClick,this);this.btnRemove=Ext.create("Ext.menu.Item",g.btnRemove);this.btnRemove.on("click",this.onBtnRemoveClick,this);var h=this;this.transparencySlider=Ext.create("Ext.slider.Single",{margin:"5 5 5 5",increment:10,value:0,minValue:0,maxValue:100,flex:1,useTips:true,tipText:function(w){return Ext.String.format(h.lang.getString("opacityLbl")+" {0}%",w.value)},iconCls:"lt-transparency"});this.transparencySlider.on("change",this.onTransparencySliderChange,this);var b=GeoMind.utils.Generator.getUuid();var o=Ext.create("Ext.menu.Item",{plain:true,hideOnClick:false});this.transparencyContainer=Ext.create("Ext.container.Container",{layout:"hbox",items:[{xtype:"container",height:25,width:20,html:'<div style="width:20px;height:25px;background-size: 16px 16px;background-position: center center;background-repeat:no-repeat;" class="'+g.btnOpacity.iconCls+'"></div>'},this.transparencySlider],width:150});this.contextMenu.add([this.btnZoomToExtent,this.btnReload,this.btnRemove,o]);var h=this;o.on("render",function(z,w){h.transparencyContainer.render(z.getEl())},this);this.contextMenu.on("show",this.onMenuShow,this);this.contextMenu.show();this.contextMenu.hide();this.contextMenu.on("hide",this.onMenuHide,this)},onTransparencySliderChange:function(o,q,g,h){var b=o.maxValue-q;if(this.clickedNode){var w={evtName:"updateMapState",evtSuperInitiatingModule:this.treeModule,evtInitiatingModule:this.treeModule,evtBroadcastingController:null,callback:null,data:{type:"layersOpacityChange",records:[{record:this.clickedNode.get("recordData"),value:b}]}};this.treeModule.dispatchEvent(w,false)}},onBtnZoomToExtentClick:function(g,h,b){var o={evtName:"updateMapState",evtInitiatingModule:this.treeModule,evtSuperInitiatingModule:this.treeModule,evtBroadcastingController:null,callback:null,data:{type:"layersZoomExtent",records:[this.clickedNode.get("recordData")]}};this.treeModule.dispatchEvent(o,{confirmationRequired:false})},onBtnReloadClick:function(g,h,b){var o={evtName:"updateMapState",evtInitiatingModule:this.treeModule,evtSuperInitiatingModule:this.treeModule,evtBroadcastingController:null,callback:null,data:{type:"layersReload",records:[this.clickedNode.get("recordData")]}};this.treeModule.dispatchEvent(o,{confirmationRequired:false})},onBtnRemoveClick:function(g,h,b){if(this.clickedNode&&this.canRemoveNode(this.clickedNode)){this.treeModule.removeNode(this.clickedNode)}},onMenuHide:function(g,b){},onMenuShow:function(g,b){if(!this.clickedNode){return false}if(this.clickedNode.get("leaf")){this.btnZoomToExtent.show();this.btnReload.show();this.transparencySlider.setValue(100-this.clickedNode.get("recordData").get("opacity"),false);this.transparencyContainer.show();if(this.canRemoveNode()){this.btnRemove.show()}else{this.btnRemove.hide()}}else{this.btnZoomToExtent.hide();this.btnReload.hide();this.transparencyContainer.hide();if(this.canRemoveNode()){this.btnRemove.show()}else{this.btnRemove.hide()}if(this.btnRemove.hidden){return false;this.clickedNode=null}}},canShow:function(){if(!this.clickedNode.get("leaf")&&this.preventFolderDelete){return false}else{return true}},showMenu:function(h,w,q,b,g,o){if(this.contextMenu){this.clickedNode=w;if(this.canShow()){this.contextMenu.showAt(g.getXY())}else{this.clickedNode=null}}},bindEvts:function(b){this.treeModule=b;b.view.on("itemcontextmenu",this.showMenu,this)},canRemoveNode:function(g){var b=false;if(!this.clickedNode.get("leaf")){if(this.preventFolderDelete){b=false}else{if(this.preventDefaultFolderDelete){var h=this.clickedNode.get("recordData");if(h.get("node_uuid")!=null){b=false}else{b=true}}else{b=true}}}else{b=true}return b}});Ext.define("GeoMind.desktop.tree.mixins.DropManager",{onTreeNodeDropOld:function(g,o,A,B,q){var b=this.store.getRootNode();var z=o.view;var h=o.records;this.tree.suspendLayouts();if(this.isTargetNodeFolder(A)&&!this.isSameFolderOperation(h,A)){if(this.isDroppedNodeFolder(h)&&A.get("groupId")==h[0].get("groupId")){this.mergeFolder(A,h,B)}else{this.splitFolder(A,h)}}if(A.parentNode&&A.parentNode.isRoot()){this.dropIntoRootNode(h)}this.tree.getView().refresh();this.mergeSameNeighbouringFolders();var w=this;
1Ext.Function.defer(function(){w.removeOrphanedFolders();var C;for(var D=0;D<b.childNodes.length;D++){C=b.childNodes[D];if(C.hasChildNodes()){C.set("checked",w.shouldParentNodeBeChecked(C))}}},50);this.tree.resumeLayouts(true)},onTreeBeforeDrop:function(q,z,w,g,b,o){var h=z.records[0];var A={overModelDepth:w.get("depth"),draggedNodeDepth:h.get("depth"),rootSnapshot:this.treeDataUtils.cloneNode(this.treeDataUtils.getTopFromNode(h)),draggedNodeClone:this.treeDataUtils.cloneNode(h),draggedNodeParentClone:this.treeDataUtils.cloneNode(h.parentNode),overModelParentClone:this.treeDataUtils.cloneNode(w.parentNode)};h.set("beforeDropInfo",A)},createFolder:function(b,g){console.warn("create folder -> node, path: ",b,g)},onTreeNodeDrop:function(C,h,D,F,w){var g=this.store.getRootNode();var z=h.view;var E=D;var B=h.records[0];var b=this.treeDataUtils.getTopPathFromNode(E,1);var q=this.treeDataUtils.getTopPathFromNode(E,2);var A=this.treeDataUtils.getTopPathFromNode(E,3);var g=this.treeDataUtils.getTopPathFromNode(E,4);this.tree.suspendLayouts();var o=0;if(!this.isSameFolderOperation(B,E)){this.splitFolder(D,B,B.get("beforeDropInfo"))}else{}this.removeOrphanedFolders();this.tree.resumeLayouts(true)},splitFolder:function(F,D,A){var z=this.treeDataUtils.cloneNode(F);var C=this.treeDataUtils.cloneNode(F.parentNode);var E=this.treeDataUtils.cloneNode(D);var b=this.treeDataUtils.cloneNode(D.parentNode);var h=A.draggedNodeParentClone;var B=A.overModelParentClone;var g=F.parentNode.parentNode;var q=g.indexOf(D.parentNode);var w=g.insertChild(q+1,h);h.removeAll();var G=D.parentNode.indexOf(D);h.appendChild(D);var o=g.indexOf(w);g.insertChild(o+1,B);B.removeAll();while(F.parentNode.childNodes.length-1>G){B.appendChild(F.parentNode.lastChild)}},splitFolderOld:function(z,w){var h=this.tree.getRootNode();var g=z.parentNode.copy();Ext.data.Model.id(g);var A=this.getNodesBelow(z,w);g.removeAll();var b=h.insertChild(h.indexOf(z.parentNode)+1,g);for(var o=A.length-1;o>=0;o--){g.appendChild(A[o])}var q=h.insertBefore(w[0],g);if(w[0].get("isLayerGroup")&&w[0].get("groupId")&&!w[0].hasChildNodes()){b=this.createFolderNode(w[0]);h.replaceChild(b,q);b.appendChild(q);b.expand(true)}return b},mergeFolder:function(w,q,g){var h=q[0].childNodes.length;if(g=="after"){var b=w.nextSibling}else{if(g=="before"){var b=w.previousSibling}}while(h>0){w.parentNode.insertBefore(q[0].firstChild,b);h--}var o=this;Ext.Function.defer(function(){w.parentNode.removeChild(q[0])},50)},mergeSameNeighbouringFolders:function(){var b=this.tree.getRootNode();if(b.hasChildNodes()){var q=b.lastChild;var h=null;while(q){h=q.previousSibling;if(h){if(q.hasChildNodes()&&q.get("groupId")==h.get("groupId")){var o=[];for(var g=0;g<q.childNodes.length;g++){o.push(q.childNodes[g].copy())}q.removeAll();h.appendChild(o);b.removeChild(q)}q=h}else{q=null}}}},removeOrphanedFolders:function(){var b=this.treeDataUtils;var h=b.getEmptyFolderNodes(this.store.getRootNode());var g=this.tree.getRootNode();while(h.length>0){h[0].parentNode.removeChild(h[0]);h.splice(0,1)}},shouldParentNodeBeChecked:function(b){var h=b.childNodes;if(h&&h.length>0){for(var g=0;g<h.length;g++){if(h[g].get("checked")){return true}}}return false},getNodesBelow:function(w,q){var z=w.parentNode.childNodes;var h=z.length;var b=[];var g;if(Ext.isArray(q)){g=q[0]}else{g=q}for(var o=h-1;o>=0;o--){if(z[o].id==g.id){break}else{b.push(z[o])}}return b},isSameFolderOperation:function(h,g){var b;if(Ext.isArray(h)){b=h[0]}else{b=h}if(b.get("originParentNode")&&g.get("originParentNode")){var q=b.get("originParentNode");var o=g.get("originParentNode");if(q.id==o.id){return true}}return false},isLayerLeaf:function(g){var b;if(Ext.isArray(g)){b=g[0]}else{b=g}if(!b.hasChildNodes()&&b.get("leaf")){return true}return false},isDroppedNodeFolder:function(g){var b;if(Ext.isArray(g)){b=g[0]}else{b=g}if(b.hasChildNodes()&&!b.get("leaf")){return true}return false},isTargetNodeFolder:function(b){return b.get("leaf")}});Ext.define("GeoMind.desktop.tree.mixins.DropManager",{onTreeBeforeDrop:function(q,z,w,g,b,o){var h=z.records[0];var A={overModelDepth:w.get("depth"),draggedNodeDepth:h.get("depth"),rootSnapshot:this.treeDataUtils.cloneNode(this.treeDataUtils.getTopFromNode(h)),draggedNodeClone:this.treeDataUtils.cloneNode(h),draggedNodeParentClone:this.treeDataUtils.cloneNode(h.parentNode),overModelParentClone:this.treeDataUtils.cloneNode(w.parentNode)};h.set("beforeDropInfo",A)},onTreeNodeDrop:function(h,q,o,b,g){},splitFolder:function(z,w){var h=this.tree.getRootNode();var g=z.parentNode.copy();Ext.data.Model.id(g);var A=this.getNodesBelow(z,w);g.removeAll();var b=h.insertChild(h.indexOf(z.parentNode)+1,g);for(var o=A.length-1;o>=0;o--){g.appendChild(A[o])}var q=h.insertBefore(w[0],g);if(!w[0].hasChildNodes()){b=this.createFolderNode(w[0]);h.replaceChild(b,q);b.appendChild(q);b.expand(true)}return b},mergeFolder:function(w,q,g){var h=q[0].childNodes.length;if(g=="after"){var b=w.nextSibling}else{if(g=="before"){var b=w.previousSibling}}while(h>0){w.parentNode.insertBefore(q[0].firstChild,b);h--}var o=this;
1Ext.Function.defer(function(){w.parentNode.removeChild(q[0])},50)},dropIntoRootNode:function(h){var g=this.tree.getRootNode();if(h[0].get("isLayerGroup")&&h[0].get("groupId")&&!h[0].hasChildNodes()){var b=this.createFolderNode(h[0]);g.replaceChild(b,h[0]);b.appendChild(h[0]);b.expand(true);return b}},mergeSameNeighbouringFolders:function(){var b=this.tree.getRootNode();if(b.hasChildNodes()){var q=b.lastChild;var h=null;while(q){h=q.previousSibling;if(h){if(q.hasChildNodes()&&q.get("groupId")==h.get("groupId")){var o=[];for(var g=0;g<q.childNodes.length;g++){o.push(q.childNodes[g].copy())}q.removeAll();h.appendChild(o);b.removeChild(q)}q=h}else{q=null}}}},removeOrphanedFolders:function(){var g=this.tree.getRootNode();var o=g.childNodes;var b=[];for(var h=0;h<o.length;h++){if(!o[h].get("leaf")&&!o[h].hasChildNodes()){b.push(o[h])}}while(b.length>0){g.removeChild(b[0]);b.splice(0,1)}},getNodesBelow:function(q,o){var w=q.parentNode.childNodes;var g=w.length;var z=[];var b;if(Ext.isArray(o)){b=o[0]}else{b=o}for(var h=g-1;h>=0;h--){if(w[h].id==b.id){break}else{z.push(w[h])}}return z},isSameFolderOperation:function(h,g){var b;if(Ext.isArray(h)){b=h[0]}else{b=h}return false},isLayerLeaf:function(g){var b;if(Ext.isArray(g)){b=g[0]}else{b=g}if(!b.hasChildNodes()&&b.get("leaf")){return true}return false},isDroppedNodeFolder:function(g){var b;if(Ext.isArray(g)){b=g[0]}else{b=g}if(b.hasChildNodes()&&!b.get("leaf")){return true}return false},isTargetNodeFolder:function(b){if(!b.isRoot()&&b.parentNode&&b.parentNode.isRoot()){return false}return true}});Ext.define("GeoMind.desktop.tree.nodeTooltip.lang.Standard",{strings:{info_title:{pl:"Info",en:"Info"},info_tip:{pl:'KlikniÄcie pozwala oznaczyÄ warstÄ, jako warstwÄ, dla której pobrana zostanie informacja przy użyciu narzÄdzia "Info"',en:'Click to mark layer as "queryable"'}},errCodes:{}});Ext.define("GeoMind.desktop.tree.nodeTooltip.Standard",{lang:null,tip:null,treeModule:null,showDelay:1500,trackMouse:true,tipHr:'<div style="margin-top: 5px; margin-bottom:5px; width:100%; height: 0px; border-top: {lineStyle} {lineWidth} {color};"></div>',tipHrLineStyle:"solid",tipHrLineWidth:"1px",tipHrColor:"#ACA899",constructor:function(b){Ext.apply(this,b);if(!this.lang){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.tree.nodeTooltip.lang.Standard")}this.tipHr=this.tipHr.replace("{color}",this.tipHrColor).replace("{lineStyle}",this.tipHrLineStyle).replace("{lineWidth}",this.tipHrLineWidth);this.callParent([b])},initTooltip:function(b){var g=GeoMind.utils.QTip;this.treeModule=b;this.view=this.treeModule.view.getView();this.createTip();for(c in this.treeModule.view.columns){this.treeModule.view.columns[c].mon(this.treeModule.view.columns[c],"mouseover",this.onTreeColumnMouseOver,{col:this.treeModule.view.columns[c],that:this})}},createTip:function(){this.destroyTip();this.tip=Ext.create("Ext.tip.ToolTip",{target:this.view.el,delegate:this.view.itemSelector,trackMouse:this.trackMouse,renderTo:Ext.getBody(),showDelay:this.showDelay});this.tip.on("beforeshow",this.onTipBeforeShow,this)},destroyTip:function(){if(this.tip){this.tip.un("beforeshow",this.onTipBeforeShow,this);this.tip.destroy();this.tip=null}},onTipBeforeShow:function(g,b){if(g.html==""){return false}else{return true}},onTreeColumnMouseOver:function(g,o,q,w,b,h){if(this.col.showTooltip&&this.that.canShowTip(o)){this.that.tip.hide();this.that.tip.setTarget(g.el);this.that.tip.update(this.that.getTipHtml(g,this.col,q));this.that.tip.setVisible(true)}else{this.that.preventTip()}},preventTip:function(){this.tip.setTarget(null);this.tip.update("");this.tip.setVisible(false)},canShowTip:function(b){if((b.innerHTML.indexOf("lt-icon-size")>-1)||(b.innerHTML.indexOf("img")>-1)){return true}else{return false}},getTipHtml:function(b,g,h){var o="";var q=b.store.getAt(h).get("recordData");switch(g.dataIndex){case"name":o=this.getTipForName(q);break;case"isActiveInfo":o=this.getTipForInfo(q);break}return o},getTipForName:function(h){var o=GeoMind.utils.QTip;var g="";if(h){g="<b>"+h.get("name")+"</b>";if(h.get("description")!=null){g+="<br/>"+h.get("description")}var b=h.get("attribution");if(b!=null||b!=""||b!=undefined){if(h.get("olLayer")){b=h.get("olLayer").attribution}}if(b!=null&&b!=""&&b!=undefined){g+=this.tipHr+"<i>"+b+"</i>"}}return g},getTipForInfo:function(g){var h=GeoMind.utils.QTip;var b="";if(g&&g.get("queryable")){b=h.getQtipHtml(this.lang.getString("info_title"),this.lang.getString("info_tip"))}return b}});Ext.define("GeoMind.desktop.upload.lang.Multi",{strings:{fileWindowTitle:{pl:"Zapisywanie plików",en:"File upload"},fileEmptyText:{pl:"Wybierz plik...",en:"Select your file..."},fileLoadMask:{pl:"Zapisywanie...",en:"Uploading..."},browseBtnText:{pl:"PrzeglÄ
daj...",en:"Browse..."},btnSave:{pl:"Zapisz",en:"Upload"},btnCancel:{pl:"Anuluj",en:"Cancel"},uploadFeedback_ok:{pl:"Plik(i) zapisane",en:"File(s) saved"},callbackFailure_Msg1_part1:{pl:"Server zwróciÅ nastÄpujÄ
cy bÅÄ
d: ",en:"The server returned the following error: "},callbackFailure_Msg1_part2:{pl:"Spróbuj ponownie, albo skontaktuj siÄ z administratorem systemu.",en:"Please try again or c
1ontact the system administrator."}},errCodes:{fup_0:{pl:"Niepoprawna konfiguracja serwisu",en:"Invalid service config"},fup_1:{pl:"Plik przekroczyÅ dozwolony rozmiar",en:"File too large"},fup_2:{pl:"Zapisanie pliku nie powiodÅo siÄ",en:"Failed to save the file"},fup_3:{pl:"Nie dozwolony typ pliku",en:"File type not supported"}}});Ext.define("GeoMind.desktop.upload.Multi",{extend:GeoMind.base.Module,serviceUrl:null,uploadMsg:null,title:null,uploadFieldsCfg:null,xtraData:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);if(!this.lang){this.lang="GeoMind.desktop.upload.lang.Multi"}this.lang=GeoMind.lang.Lang.registerTranslations(this.lang)},showUploadWindow:function(g){var b=[];this.uploadFields=[];for(f in this.uploadFieldsCfg){var h=Ext.create("Ext.form.field.File",{emptyText:this.uploadFieldsCfg[f].blankText?this.uploadFieldsCfg[f].blankText:this.lang.getString("fileEmptyText"),buttonText:this.uploadFieldsCfg[f].buttonText?this.uploadFieldsCfg[f].buttonText:this.lang.getString("browseBtnText"),buttonConfig:this.uploadFieldsCfg[f].buttonConfig,hideLabel:true,allowBlank:this.uploadFieldsCfg[f].allowBlank,anchor:"100%"});this.uploadFields.push(h);b.push(h)}this.xtraDataField=Ext.create("Ext.form.field.Text",{hidden:true});b.push(this.xtraDataField);this.btnSave=Ext.create("Ext.button.Button",{text:this.lang.getString("btnSave")});this.btnCancel=Ext.create("Ext.button.Button",{text:this.lang.getString("btnCancel")});this.btnSave.on("click",this.onBtnSaveClick,this);this.btnCancel.on("click",this.onBtnCancelClick,this);this.uploadForm=Ext.create("Ext.form.Panel",{fileUpload:true,autoHeight:true,border:false,padding:5,items:b,bodyStyle:{background:"none"}});if(this.uploadMsg){this.uploadForm.insert(0,{xtype:"displayfield",value:this.uploadMsg,anchor:"100%"})}this.upload=Ext.create("Ext.window.Window",{title:this.title?this.title:this.lang.getString("fileWindowTitle"),width:300,layout:"fit",resizable:false,buttonAlign:"center",autoHeight:true,closable:false,modal:true,animateTarget:g,padding:5,items:[this.uploadForm],fbar:{xtype:"toolbar",items:[this.btnSave,this.btnCancel]}});this.upload.on("close",this.onUploadClose,this);this.setExtraData(this.xtraData);this.upload.show()},setExtraData:function(b){this.xtraDataField.setValue(b)},onBtnCancelClick:function(){this.upload.close()},onBtnSaveClick:function(){var b=this.uploadForm.getForm();if(b.isValid()){this.showLoadMask();b.submit({url:this.serviceUrl,success:Ext.bind(this.success,this),failure:Ext.bind(this.failure,this)})}},success:function(b,g){var h={evtName:"fileUploaded",evtSuperInitiatingModule:this,evtInitiatingModule:this,evtBroadcastingController:null,callback:null,data:g.result};this.dispatchEvent(h,false);this.hideLoadMask();this.upload.close()},failure:function(b,g){this.hideLoadMask();var h=GeoMind.utils.Exceptions.getMsg(g.result,this.lang);Ext.Msg.alert("info",this.lang.getString("callbackFailure_Msg1_part1")+h+this.lang.getString("callbackFailure_Msg1_part2"))},loadMask:null,showLoadMask:function(){if(this.loadMask==null){this.loadMask=new Ext.LoadMask(this.upload.getEl(),{msg:this.lang.getString("fileLoadMask")})}this.loadMask.show()},hideLoadMask:function(){this.loadMask.hide()},onUploadClose:function(g,b){this.btnSave.un("click",this.onBtnSaveClick,this);this.btnCancel.un("click",this.onBtnCancelClick,this);this.upload.un("close",this.onUploadClose,this);this.upload=null;this.loadMask=null}});Ext.define("GeoMind.desktop.window.ui.ChangeDbPass",{extend:Ext.window.Window,height:135,width:350,bodyPadding:10,closable:false,iconCls:"gm-generic_db_pass",title:"My Window",layout:"anchor",defaults:{anchor:"100%"},resizable:false,modal:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",itemId:"txtNewPass",inputType:"password"},{xtype:"textfield",itemId:"txtNewPassRepeat",inputType:"password"}],dockedItems:[{xtype:"toolbar",dock:"bottom",items:[{xtype:"tbfill"},{xtype:"button",itemId:"btnOk",iconCls:"gm-generic_db_add"},{xtype:"button",itemId:"btnCancel",iconCls:"gm-generic_db_delete"}]}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.window.lang.ChangeDbPass",{strings:{windowTitle:{pl:"Zmiana hasÅa bazy danych",en:"
1Change database password"},txtFieldNewPassLabel:{pl:"Nowe hasÅo",en:"New password"},txtFieldNewPassRepeatLabel:{pl:"Powtórz hasÅo",en:"Repeat password"},btnOkText:{pl:"ZmieÅ",en:"Change"},btnCancelText:{pl:"Anuluj",en:"Cancel"},validationErrorMsgTitle:{pl:"BÅÄ
d",en:"Error"},validationErrorPassMismatch:{pl:"Nowe hasÅo bÅÄdnie powtórzone!",en:"New pass does not match!"},validationErrorPassEmpty:{pl:"Nowe hasÅo nie może byÄ puste!",en:"New pass must not be empty!"},validationErrorPassTooShort:{pl:"HasÅo musi mieÄ co najmniej 8 znaków!",en:"Database password has to be at least 8 characters long."},waitMsg:{pl:"Zmiana hasÅa...",en:"Changing password..."}},errCodes:{}});Ext.define("GeoMind.desktop.window.ChangeDbPass",{extend:GeoMind.desktop.window.ui.ChangeDbPass,lang:null,events:["changepass"],initComponent:function(){Ext.apply(this,arguments);this.callParent(arguments);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.window.lang.ChangeDbPass");this.txtNewPass=this.query("[itemId=txtNewPass]")[0];this.txtNewPassRepeat=this.query("[itemId=txtNewPassRepeat]")[0];this.btnOk=this.query("[itemId=btnOk]")[0];this.btnCancel=this.query("[itemId=btnCancel]")[0];this.title=this.lang.getString("windowTitle");this.txtNewPass.fieldLabel=this.lang.getString("txtFieldNewPassLabel");this.txtNewPassRepeat.fieldLabel=this.lang.getString("txtFieldNewPassRepeatLabel");this.btnOk.text=this.lang.getString("btnOkText");this.btnCancel.text=this.lang.getString("btnCancelText");this.btnOk.on("click",this.onBtnOkClick,this);this.btnCancel.on("click",this.onBtnCancelClick,this)},onBtnOkClick:function(g){var b=true;var o="";if(this.txtNewPass.getValue().length<8){b=false;o=this.lang.getString("validationErrorPassTooShort")}if(this.txtNewPass.getValue()!=this.txtNewPassRepeat.getValue()){b=false;o=this.lang.getString("validationErrorPassMismatch")}if(b){this.showLoadMask(this.lang.getString("waitMsg"));var h={newPass:this.txtNewPass.getValue()};this.fireEvent("changepass",h)}else{Ext.Msg.show({title:this.lang.getString("validationErrorMsgTitle"),msg:o,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},onBtnCancelClick:function(b){this.reset();this.hide()},hideAndClear:function(){this.hideLoadMask();this.reset();this.hide()},reset:function(){this.txtNewPass.setValue("");this.txtNewPassRepeat.setValue("")},loadMask:null,showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}}});Ext.define("GeoMind.desktop.window.ui.ChangePass",{extend:Ext.window.Window,height:155,width:350,bodyPadding:10,closable:false,iconCls:"gm-lw_user_key",title:"My Window",layout:"anchor",defaults:{anchor:"100%"},resizable:false,modal:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{items:[{xtype:"textfield",itemId:"txtCurrentPass",inputType:"password"},{xtype:"textfield",itemId:"txtNewPass",inputType:"password"},{xtype:"textfield",itemId:"txtNewPassRepeat",inputType:"password"}],dockedItems:[{xtype:"toolbar",dock:"bottom",items:[{xtype:"tbfill"},{xtype:"button",itemId:"btnOk",iconCls:"gm-lw_sign_in"},{xtype:"button",itemId:"btnCancel",iconCls:"gm-lw_cancel"}]}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.window.lang.ChangePass",{strings:{windowTitle:{pl:"Zmiana hasÅa",en:"Change password"},txtFieldCurrentPassLabel:{pl:"HasÅo",en:"Password"},txtFieldNewPassLabel:{pl:"Nowe hasÅo",en:"New password"},txtFieldNewPassRepeatLabel:{pl:"Powtórz hasÅo",en:"Repeat password"}
1,btnOkText:{pl:"ZmieÅ",en:"Change"},btnCancelText:{pl:"Anuluj",en:"Cancel"},validationErrorMsgTitle:{pl:"BÅÄ
d",en:"Error"},validationErrorPassMismatch:{pl:"Nowe hasÅo bÅÄdnie powtórzone!",en:"New pass does not match!"},validationErrorPassEmpty:{pl:"Nowe hasÅo nie może byÄ puste!",en:"New pass must not be empty!"},waitMsg:{pl:"Zmiana hasÅa...",en:"Changing password..."}},errCodes:{}});Ext.define("GeoMind.desktop.window.ChangePass",{extend:GeoMind.desktop.window.ui.ChangePass,lang:null,events:["changepass"],initComponent:function(){Ext.apply(this,arguments);this.callParent(arguments);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.window.lang.ChangePass");this.txtCurrentPass=this.query("[itemId=txtCurrentPass]")[0];this.txtNewPass=this.query("[itemId=txtNewPass]")[0];this.txtNewPassRepeat=this.query("[itemId=txtNewPassRepeat]")[0];this.btnOk=this.query("[itemId=btnOk]")[0];this.btnCancel=this.query("[itemId=btnCancel]")[0];this.title=this.lang.getString("windowTitle");this.txtCurrentPass.fieldLabel=this.lang.getString("txtFieldCurrentPassLabel");this.txtNewPass.fieldLabel=this.lang.getString("txtFieldNewPassLabel");this.txtNewPassRepeat.fieldLabel=this.lang.getString("txtFieldNewPassRepeatLabel");this.btnOk.text=this.lang.getString("btnOkText");this.btnCancel.text=this.lang.getString("btnCancelText");this.btnOk.on("click",this.onBtnOkClick,this);this.btnCancel.on("click",this.onBtnCancelClick,this)},onBtnOkClick:function(g){var b=true;var o="";if(this.txtNewPass.getValue()==""){b=false;o=this.lang.getString("validationErrorPassEmpty")}if(this.txtNewPass.getValue()!=this.txtNewPassRepeat.getValue()){b=false;o=this.lang.getString("validationErrorPassMismatch")}if(b){this.showLoadMask(this.lang.getString("waitMsg"));var h={currentPass:this.txtCurrentPass.getValue(),newPass:this.txtNewPass.getValue()};this.fireEvent("changepass",h)}else{Ext.Msg.show({title:this.lang.getString("validationErrorMsgTitle"),msg:o,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},onBtnCancelClick:function(b){this.reset();this.hide()},hideAndClear:function(){this.hideLoadMask();this.reset();this.hide()},reset:function(){this.txtCurrentPass.setValue("");this.txtNewPass.setValue("");this.txtNewPassRepeat.setValue("")},loadMask:null,showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}}});Ext.define("GeoMind.desktop.window.ui.Login",{extend:Ext.window.Window,height:145,width:350,bodyPadding:10,closable:false,iconCls:"gm-lw_title",title:"My Window",layout:"card",resizable:false,modal:true,initComponent:function(){Ext.apply(this,arguments);var b=this;Ext.applyIf(b,{listeners:{show:function(){b.down("#txtEmail").focus(true,true)}},items:[{xtype:"container",layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"textfield",itemId:"txtEmail",enableKeyEvents:true},{xtype:"textfield",itemId:"txtPass",inputType:"password",enableKeyEvents:true},{xtype:"checkbox",itemId:"chckRemember"}]},{xtype:"container",layout:"anchor",defaults:{anchor:"100%"},items:[{xtype:"textfield",itemId:"txtEmailReset",enableKeyEvents:true},{xtype:"textfield",itemId:"txtEmailRepeatReset",enableKeyEvents:true}]}],dockedItems:[{xtype:"toolbar",dock:"bottom",items:[{xtype:"button",itemId:"btnForgotPass",iconCls:"gm-lw_forgot_pass"},{xtype:"tbfill"},{xtype:"button",itemId:"btnOk",iconCls:"gm-lw_sign_in"},{xtype:"button",itemId:"btnPassReset",iconCls:"gm-lw_sign_in",hidden:true},{xtype:"button",itemId:"btnCancel",iconCls:"gm-lw_cancel"},{xtype:"button",itemId:"btnPassResetCancel",iconCls:"gm-lw_cancel",hidden:true}]}]});this.callParent(arguments)}});Ext.define("GeoMind.desktop.window.lang.Login",{strings:{loginWindowTitle:{pl:"Logowanie",en:"Log In"},txtFieldEmailLabel:{pl:"Email",en:"Email"},txtFieldPassLabel:{pl:"HasÅo",en:"Password"},btnForgotPassText:{pl:"ZapomniaÅeÅ hasÅa?",en:"Forgot your pass?"},btnOkText:{pl:"Zaloguj",en:"Log In"},btnCancelText:{pl:"Anuluj",en:"Cancel"},chckRemember:{en:"Remember me"},validationErrorMsgTitle:{pl:"BÅÄ
d logowania",en:"Login error"},waitMsg:{pl:"Uwierzytelnianie...",en:"Checking your credentials..."},passRestore_Title:{pl:"Reset hasÅa",en:"Password reset"},passRestore_Email:{pl:"Email",en:"Email"},passRestore_RepeatEmail:{pl:"Powtórz email",en:"Repeat email"},passRestore_BtnReset:{pl:"Resetuj",en:"Reset"},passRestore_BtnCancel:{pl:"Anuluj",en:"Cancel"},passRestore_waitMsg:{pl:"Resetowanie hasÅa",en:"Resetting password"},emailsDoNotMatch_title:{pl:"Info",en:"Info"},emailsDoNotMatch_msg:{pl:"Adresy email nie poprawne.",en:"Invalid emails."}},errCodes:{}});Ext.define("GeoMind.desktop.window.Login",{extend:GeoMind.desktop.window.ui.Login,lang:null,events:["signin","resetpass","signincancel"],initComponent:function(){Ext.apply(this,arguments);this.callParent(arguments);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.window.lang.Login");this.txtEmail=this.query("[itemId=txtEmail]")[0];this.txtPass=this.query("[itemId=txtPass]")[0];this.txtEmailReset=this.query("[itemId=txtEmailReset]")[0];this.txtEmailRepeatReset=this.query("[itemId=txtEmailRepeatReset]")[0];this.chckRemember=this.query("[itemId=chckRemember]")[0];this.btnForgotPass=this.query("[itemId=btnForgotPass]")[0];this.btnOk=this.query("[itemId=btnOk]")[0];this.btnCancel=this.query("[itemId=btnCancel]")[0];this.btnPassReset=this.query("[itemId=btnPassReset]")[0];this.btnPassResetCancel=this.query("[itemId=btnPassResetCancel]")[0];this.title=this.lang.getString("loginWindowTitle");this.txtEmail.fieldLabel=this.lang.getString("txtFieldEmailLabel");this.txtPass.fieldLabel=this.lang.getString("txtFieldPassLabel");this.chckRemember.fieldLabel=this.lang.getString("chckRemember");this.txtEmailReset.fieldLabel=this.lang.getString("passRestore_Email");this.txtEmailRepeatReset.fieldLabel=this.lang.getString("passRestore_RepeatEmail");this.btnForgotPass.text=this.lang.getString("btnForgotPassText");this.btnOk.text=this.lang.getString("btnOkText");this.btnCancel.text=this.lang.getString("btnCancelText");this.btnPassReset.text=this.lang.getString("passRestore_BtnReset");this.btnPassResetCancel.text=this.lang.getString("btnCancelText");this.btnOk.on("click",this.onBtnOkClick,this);this.btnCancel.on("click",this.onBtnCancelClick,this);this.btnForgotPass.on("click",this.onBtnForgotPassClick,this);this.btnPassReset.on("click",this.onBtnPassResetClick,this);this.btnPassResetCancel.on("click",this.onBtnPassResetCancelClick,this);
1this.txtEmail.on("keydown",this.trapEnter,this);this.txtPass.on("keydown",this.trapEnter,this);this.txtEmail.on("change",this.resetRemember,this)},trapEnter:function(g,b){if(b.getKey()==b.ENTER){this.onBtnOkClick()}},resetRemember:function(){this.chckRemember.setValue(false)},onBtnOkClick:function(b){this.showLoadMask(this.lang.getString("waitMsg"));var g={email:this.txtEmail.getValue(),pass:this.txtPass.getValue(),remember:this.chckRemember.getValue()};this.fireEvent("signin",g)},onBtnPassResetClick:function(g){var b=this.txtEmailReset.getValue();var o=this.txtEmailRepeatReset.getValue();if(b.length>0&&b==o){this.showLoadMask(this.lang.getString("passRestore_waitMsg"));var h={email:b,repeatEmail:o};this.fireEvent("resetpass",h)}else{Ext.Msg.show({title:this.lang.getString("emailsDoNotMatch_title"),msg:this.lang.getString("emailsDoNotMatch_msg"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},onBtnPassResetCancelClick:function(b){this.reset()},onBtnCancelClick:function(b){this.reset();this.hide();this.fireEvent("signincancel")},onBtnForgotPassClick:function(b){this.btnOk.hide();this.btnForgotPass.hide();this.btnCancel.hide();this.btnPassReset.show();this.btnPassResetCancel.show();this.setTitle(this.lang.getString("passRestore_Title"));this.setIconCls("gm-lw_user_key");this.getLayout().setActiveItem(1)},hideAndClear:function(){this.hideLoadMask();this.reset();this.hide()},reset:function(){this.txtEmail.setValue("");this.txtPass.setValue("");this.txtEmailReset.setValue("");this.txtEmailRepeatReset.setValue("");this.btnOk.show();
1this.btnCancel.show();this.btnForgotPass.show();this.btnPassReset.hide();this.btnPassResetCancel.hide();this.setTitle(this.lang.getString("loginWindowTitle"));this.setIconCls("gm-lw_title");this.getLayout().setActiveItem(0)},loadMask:null,showLoadMask:function(b){if(!this.loadMask){this.loadMask=new Ext.LoadMask(this.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}}});Ext.define("GeoMind.desktop.wms.capabilities.lang.Standard",{strings:{btn_Text:{pl:"Dodaj warstwÄ WMS",en:"Add WMS layer"},btn_Tip:{pl:"Dodaje warstwÄ WMS",en:"Adds a WMS layer"}},errCodes:{}});Ext.define("GeoMind.desktop.wms.capabilities.input.lang.Standard",{strings:{btnLoad_Text:{pl:"Wczytaj",en:"Load"},btnLoad_Tip:{pl:"Wczytuje dane ze wskazanego serwisu WMS",en:"Loads data from a choosen WMS service"},lblServer:{pl:"UsÅuga WMS",en:"WMS service"}},errCodes:{}});Ext.define("GeoMind.desktop.wms.capabilities.input.Standard",{extend:GeoMind.base.Module,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents=["resetCapabilitiesStore"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.wms.capabilities.input.lang.Standard");this.createUrlStore();this.createGui()},createUrlStore:function(){this.urlArray=[];this.urlStore=Ext.create("Ext.data.Store",{fields:["name","description","url","version","internalOnly"],data:this.urlArray})},getComboInnerTpl:function(){return"<div><h3>{name}</h3>{url}</div>"},createGui:function(){var h=GeoMind.utils.QTip;this.combo=Ext.create("Ext.form.field.ComboBox",{width:200,store:this.urlStore,queryMode:"local",triggerAction:"all",displayField:"name",valueField:"url",enableKeyEvents:true,flex:1,listConfig:{getInnerTpl:this.getComboInnerTpl}});this.combo.on("select",this.onComboSelect,this);var b=Ext.create("Ext.button.Button",{text:this.lang.getString("btnLoad_Text"),tooltip:h.getQtipHtml(this.lang.getString("btnLoad_Text"),this.lang.getString("btnLoad_Tip")),iconCls:"gm-wms_caps_load",margins:"0 5 0 5"});b.on("click",this.onBtnLoadClicked,this);var g=Ext.create("Ext.form.field.Display",{value:"<b>"+this.lang.getString("lblServer")+": </b>",margins:"0 5 0 5"});this.view=Ext.create("Ext.container.Container",{layout:"hbox",items:[g,this.combo,b]})},loadPredefinedUrls:function(b){this.urlStore.loadData(b)},onComboSelect:function(o,b,g){var h=b[0];if(h){o.setRawValue(h.get("name")+": "+h.get("url"))}},onBtnLoadClicked:function(q,g,o){var h=this.combo.getValue();if(h){h=h.substring(h.indexOf("http"))}var b=this.urlStore.findExact("url",h);var z;if(b>-1){var w=this.urlStore.getAt(b);z={url:w.get("url"),name:w.get("name"),version:w.get("version")}}else{z={url:h,name:null,version:null}}var A={evtName:"resetCapabilitiesStore",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(A,{confirmationRequired:false});var A={evtName:"requestCapabilitiesForUrl",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:z};this.dispatchEvent(A,{confirmationRequired:false})}});Ext.define("GeoMind.desktop.wms.capabilities.output.lang.Standard",{strings:{layer:{pl:"Warstwa",en:"Layer"},btnAddSelected_Text:{pl:"Dodaj",en:"Add"},btnAddSelected_Tip:{pl:"Dodaje zaznaczone warstwy do mapy",en:"Adds seleceted layers to a map"},btnGroupLayers_Text:{pl:"Grupuj",en:"Group"},btnGroupLayers_Tip:{pl:"Grupuje dodawane warstwy jako jednÄ
warstwÄ",en:"Groups layers being added as one layer"},getCapabilitiesRequestStarted:{pl:"Pobieranie danych",en:"Getting capabilities"},nodata:{pl:"Brak danych",en:"No data"},error_msg_title:{pl:"BÅÄ
d",en:"Error"}},errCodes:{}});Ext.define("GeoMind.desktop.wms.capabilities.output.Standard",{extend:GeoMind.base.Module,lang:null,view:null,store:null,currentMapEpsg:null,showGroupLayersBtn:false,constructor:function(g){Ext.apply(this,g);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.wms.capabilities.output.lang.Standard");this.callParent([g]);var b=[{name:"name",type:"string",defaultValue:null,useNull:true},{name:"rawlayerdata",type:"auto",defaultValue:null,useNull:true},{name:"rawcapabilitiesdata",type:"auto",defaultValue:null,useNull:true},{name:"capabilitiesurl",type:"string",defaultValue:null,useNull:true},{name:"predefinedservicename",type:"string",defaultValue:null,useNull:true}];this.store=Ext.create("Ext.data.Store",{fields:b,data:[]});this.createGui()},createGui:function(){var g=GeoMind.utils.QTip;this.btnAddSelected=Ext.create("Ext.button.Button",{text:this.lang.getString("btnAddSelected_Text"),tooltip:g.getQtipHtml(this.lang.getString("btnAddSelected_Text"),this.lang.getString("btnAddSelected_Tip")),iconCls:"gm-wms_caps_add_selected"});this.btnAddSelected.on("click",this.onBtnAddSelected,this);if(this.showGroupLayersBtn){this.btnGroupLayers=Ext.create("Ext.button.Button",{text:this.lang.getString("btnGroupLayers_Text"),tooltip:g.getQtipHtml(this.lang.getString("btnGroupLayers_Text"),this.lang.getString("btnGroupLayers_Tip")),iconCls:"gm-wms_caps_group_selected",enableToggle:true})}
1var b=Ext.create("Ext.selection.CheckboxModel");this.view=Ext.create("Ext.grid.Panel",{height:200,store:this.store,selModel:b,bbar:["->",this.showGroupLayersBtn?this.btnGroupLayers:null,this.btnAddSelected],columns:[{xtype:"rownumberer"},{header:this.lang.getString("layer"),dataIndex:"name",flex:1}],viewConfig:{emptyText:this.lang.getString("nodata")}})},setCurrentMapEpsgCode:function(b){this.currentMapEpsg=b},onBtnAddSelected:function(B,H,E){var I=this.store.getCount();var w=this.view.getSelectionModel().getSelection();if(w.length>0){var A=[];var F=w[0].get("rawcapabilitiesdata");var h=w[0].get("predefinedservicename");var G=w[0].get("capabilitiesurl");for(r in w){var g=w[r].get("rawlayerdata");A.push({name:g.title?g.title:g.name,description:g["abstract"]!=""?g["abstract"]:null,p_projection_epsg:this.currentMapEpsg?this.currentMapEpsg.replace("EPSG:",""):null,url:this.getServiceUrl(F,G),layers:g.name,queryable:g.queryable,query_layers:g.queryable?g.name:null,get_feature_info_url:g.queryable?this.getFeatureInfoUrl(F,G):null,is_base_layer:false,transitionEffect:"resize",transparent:this.getImageFormat(g).indexOf("png")>-1?true:false,info_format_value:this.getInfoFormat(g),image_format_value:this.getImageFormat(g),version_value:F.version,exception_format_value:this.getExceptionFormat(F),attribution:g.attribution,max_extent:this.getMaxExtent(g,F),ll_bbox:this.getLlBbox(g,F),o_buffer:0,o_visibility:true,opacity:100,layer_type_value:"WMS"})}var q={name:this.getGroupTitle(F,h),description:F.service["abstract"],is_expanded:true};if(this.btnGroupLayers&&this.btnGroupLayers.pressed){var C=A[0];var o=null;for(var z=1;z<A.length;z++){if(C.p_layers.length>0){C.p_layers+=","}C.p_layers+=A[z].p_layers;if(A[z].queryable){if(!C.p_query_layers){C.p_query_layers=""}if(C.p_query_layers.length>0){C.p_query_layers+=","}C.p_query_layers+=A[z].p_query_layers}if(C.p_query_layers&&C.p_query_layers.length>0){C.queryable==true}if(A[z].get_feature_info_url){C.get_feature_info_url==A[z].get_feature_info_url}if(A[z].ll_bbox){var D=A[z].ll_bbox.split(",");if(!o){o=[parseFloat(D[0]),parseFloat(D[1]),parseFloat(D[2]),parseFloat(D[3])]}else{o[0]=Math.min(o[0],parseFloat(D[0]));o[1]=Math.min(o[1],parseFloat(D[1]));o[2]=Math.max(o[2],parseFloat(D[2]));o[3]=Math.max(o[3],parseFloat(D[3]))}}}C.name=this.getGroupTitle(F,h);C.description=C.p_layers.replace(",",", ");if(o){C.ll_bbox=o[0]+","+o[1]+","+o[2]+","+o[3]}A=[C]}var b={evtName:"addWmsLayersFromWmsCapabilities",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{layerConfigs:this.qGisServerFix(A),groupConfig:q}};this.dispatchEvent(b,{confirmationRequired:false})}},getLlBbox:function(g,h){var b=null;if(g.llbbox&&g.llbbox.length==4){b=g.llbbox[0]+","+g.llbbox[1]+","+g.llbbox[2]+","+g.llbbox[3]}return b},getMaxExtent:function(b,g){return null},getGroupTitle:function(h,b){var g=b;if(h.service.title!=""&&h.service.title!=null&&h.service.title!=undefined){g=h.service.title}return g},getServiceUrl:function(h,o){var b="";try{b=h.capability.request.getmap.href}catch(g){}if(b==""){try{b=h.service.href}catch(g){}}if(b==""||b==null||b==undefined){b=o}return b},getFeatureInfoUrl:function(h,o){var b="";try{b=h.capability.request.getfeatureinfo.href}catch(g){}if(b==""){try{b=h.service.href}catch(g){}}if(b==""||b==null||b==undefined){b=o}return b},qGisServerFix:function(b){for(l in b){if(b[l].url.indexOf(".qgs")>-1){b[l].p_version_value="1.1.1"}}return b},getImageFormat:function(g){var h="";var b=["image/png","image/jpg","image/gif","png","jpg","gif"];for(f in b){if(Ext.Array.contains(g.formats,b[f])){h=b[f];break}}return h},getExceptionFormat:function(h){var b="";var g=["application/vnd.ogc.se_inimage","application/vnd.ogc.se_xml","INIMAGE","XML","BLANK"];for(ef in g){if(Ext.Array.contains(h.capability.exception.formats,g[ef])){b=g[ef];break}}if(b==""){b="application/vnd.ogc.se_xml"}return b},getInfoFormat:function(b){var h="";if(b.queryable){var g=["application/vnd.ogc.gml","text/html","text/plain"];for(f in g){if(Ext.Array.contains(b.infoFormats,g[f])){h=g[f];break}}}return h},loadMask:null,showLoadMask:function(b){if(!this.loadMask){if(!this.view.getEl()){return}this.loadMask=new Ext.LoadMask(this.view.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},_onGetCapabilitiesStarted:function(b){this.showLoadMask(this.lang.getString("getCapabilitiesRequestStarted"))},_onGetCapabilitiesFinished:function(o){this.hideLoadMask();this.store.removeAll();if(o.data.success){var q=[];var g=o.data.capabilities.capability.layers;for(l in g){var b=false;if(!this.currentMapEpsg){b=true}else{var h=g[l].srs;for(p in h){if(p==this.currentMapEpsg&&h[p]){b=true;break}}}if(b){q.push({name:g[l].title!=""?g[l].title:g[l].name,rawlayerdata:g[l],rawcapabilitiesdata:o.data.capabilities,capabilitiesurl:o.data.capabilitiesUrl,predefinedservicename:o.data.predefinedServiceName})}}this.store.loadData(q)}else{Ext.Msg.show({title:this.lang.getString("error_msg_title"),msg:o.data.exceptionMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}}});Ext.define("GeoMind.desktop.wms.capabilities.Standard",{extend:GeoMind.base.Module,btnsCfg:null,btn:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.moduleController=Ext.create("GeoMind.base.ModuleController");this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.wms.capabilities.lang.Standard");this.createGui();this.wmsCaps=Ext.create("GeoMind.wms.Capabilities",{proxy:this.proxy});this.moduleController.registerModule(this.wmsCaps);this.pullCfg()},pullCfg:function(){Ext.Ajax.request({url:this.serviceUrls.config,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({ss:GeoMind.utils.SessionManager.ss}),success:Ext.bind(this.pullCfgSuccess,this),failure:Ext.bind(this.pullCfgFailure,this)})},pullCfgSuccess:function(b,g){b=Ext.JSON.decode(b.responseText).d;if(b.success){this.wmsUrlInput.loadPredefinedUrls(b.data[0].value)}},pullCfgFailure:function(){},createGui:function(){this.createBtns();if(!this.wmsUrlInput){this.wmsUrlInput=Ext.create("GeoMind.desktop.wms.capabilities.input.Standard",{})}this.moduleController.registerModule(this.wmsUrlInput);this.wmsCapsOutput=Ext.create("GeoMind.desktop.wms.capabilities.output.Standard",{showGroupLayersBtn:this.showGroupLayersBtn});this.moduleController.registerModule(this.wmsCapsOutput);this.wmsCapsOutput.on("addWmsLayersFromWmsCapabilities",this.onAddWmsLayersFromWmsCapabilities,this);this.view=Ext.create("Ext.window.Window",{width:600,height:400,layout:"fit",closeAction:"hide",animateTarget:this.btn,items:[this.wmsCapsOutput.view],tbar:{layout:"fit",items:[this.wmsUrlInput.view]}});this.btn.on("click",function(){this.view.show()},this)},onAddWmsLayersFromWmsCapabilities:function(b){var g={evtName:"addWmsLayersFromWmsCapabilities",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},createBtns:function(){var g=GeoMind.utils.QTip;var b={btn:{tooltip:g.getQtipHtml(this.lang.getString("btn_Text"),this.lang.getString("btn_Tip")),iconCls:"gm-wms_caps"}};Ext.merge(b,this.btnsCfg);this.btn=Ext.create("Ext.button.Button",b.btn)},_onAfterMapReset:function(b){if(this.wmsCaps){this.wmsCapsOutput.setCurrentMapEpsgCode(b.data.map.getProjectionObject().projCode)}this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.wms.capabilities.input.lang.Grid",{strings:{name:{pl:"Nazwa",en:"Name"},description:{pl:"Opis",en:"Description"},url:{pl:"Url",en:"Url"},btnLoad:{pl:"Pobierz informacje",en:"Get Capabilities"},btnAddWms:{pl:"Dodaj WMS serwis",en:"Add WMS service"}},errCodes:{}});Ext.define("GeoMind.desktop.wms.capabilities.input.Grid",{extend:GeoMind.base.Module,grid:null,gridEditPlugin:null,urlArray:null,urlStore:null,constructor:function(g){Ext.apply(this,g);this.callParent([g]);this.urlArray=[{name:"MapServer",description:"Test MapServer Server",url:"http://demo.mapserver.org/cgi-bin/wms",version:"1.3.0"},{name:"GDOÅ",description:"GDOÅ (WMS)",url:"http://wms.gdos.gov.pl:80/geoserver/wms",version:"1.3.0"},{name:"Cartoninjas",description:"Cartoninjas Server",url:"http://tomcat.cartoninjas.net:80/geoserver/wms",version:"1.1.1"},{name:"SDI Geoportal",description:"SDI Geoportal Server",url:"http://sdi.geoportal.gov.pl/wms_dzkat/wmservice.aspx",ver
1sion:"1.3.0"},{name:"PaÅstwowy Rejestr Granic",description:"PaÅstwowy Rejestr Granic",url:"http://sdi.geoportal.gov.pl/wms_prg/wmservice.aspx",version:"1.3.0"},{name:"PaÅstwowy Rejestr Nazw Geograficznych",description:"PaÅstwowy Rejestr Nazw Geograficznych",url:"http://sdi.geoportal.gov.pl/wms_prng/wmservice.aspx",version:"1.3.0"}];this.addEvents=["resetCapabilitiesStore"];this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.wms.capabilities.input.lang.Grid");this.urlStore=Ext.create("Ext.data.Store",{fields:["name","description","url","version","internalOnly"],data:this.urlArray});this.gridEditPlugin=Ext.create("Ext.grid.plugin.RowEditing",{clicksToEdit:2});this.gridEditPlugin.on("canceledit",this.onGridCancelEdit,this);this.btnLoad=Ext.create("Ext.button.Button",{iconCls:"gm-wms_caps_load",text:this.lang.getString("btnLoad")});this.btnLoad.on("click",this.onBtnLoadClicked,this);this.btnAddWms=Ext.create("Ext.button.Button",{iconCls:"gm-wms_caps_new_source",text:this.lang.getString("btnAddWms")});this.btnAddWms.on("click",this.onBtnAddWmsClicked,this);var b={autoScroll:true,region:"center",store:this.urlStore,multiSelect:false,control:this,columns:[{text:this.lang.getString("name"),width:150,dataIndex:"name",flex:1,editor:{allowBlank:false,xtype:"textfield"}},{text:this.lang.getString("description"),width:150,dataIndex:"description",editor:{allowBlank:true,xtype:"textfield"}},{text:this.lang.getString("url"),width:250,dataIndex:"url",flex:2,editor:{allowBlank:false}}],columnLines:true,selType:"rowmodel",plugins:[this.gridEditPlugin],bbar:[this.btnAddWms,"->",this.btnLoad]};if(g.gridCfg){Ext.Object.merge(b,g.gridCfg)}this.grid=Ext.create("Ext.grid.Panel",b)},loadPredefinedUrls:function(b){this.urlStore.loadData(b)},onBtnLoadClicked:function(h,b,g){var q={evtName:"resetCapabilitiesStore",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(q,{confirmationRequired:false});var o=this.grid.getSelectionModel().getSelection();if(o.length==1){var q={evtName:"requestCapabilitiesForUrl",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{url:o[0].get("url"),name:o[0].get("name"),version:o[0].get("version")}};this.dispatchEvent(q,{confirmationRequired:false})}},onGridCancelEdit:function(){this.urlStore.rejectChanges()},onBtnAddWmsClicked:function(){var h={name:"",description:"",url:""};var g=this.gridEditPlugin;g.cancelEdit();var b=this.urlStore.insert(0,h);g.startEdit(0,0)}});Ext.define("GeoMind.desktop.wms.info.lang.Standard",{strings:{btnInfo_Text:{pl:"Info",en:"Info"},btnInfo_Tip:{pl:"WyÅwietla informacjÄ o klikniÄtym obiekcie",en:"Displays information on a clicked object"},windowTitle:{pl:"Informacje o obiektach",en:"Clicked object info"},btnClear_Text:{pl:"WyczyÅÄ listÄ",en:"Clear list"},btnClear_Tip:{pl:"Usuwa pobrane informacje",en:"Clears info data"},btnAppend_Text:{pl:"Zachowuj",en:"Append"},btnAppend_Tip:{pl:"Zachowuje wyniki wyszukiwania",en:"Appends query results"},btnGroup_Text:{pl:"Grupuj",en:"Group"},btnGroup_Tip:{pl:"Grupuje wyniki po nazwie warstwy",en:"Groups query results by layer name"},loadingMsg:{pl:"Pobieranie danych...",en:"Loading data..."}},errCodes:{}});Ext.define("GeoMind.openLayers.control.WMSGetFeatureInfo",{singleton:true,constructor:function(b){this.init()},init:function(){OpenLayers.Control.WMSGetFeatureInfo=OpenLayers.Class(OpenLayers.Control,{pendingRequests:null,hover:false,drillDown:false,maxFeatures:10,clickCallback:"click",output:"features",layers:null,queryVisible:false,url:null,layerUrls:null,infoFormat:"text/html",vendorParams:{},format:null,formatOptions:null,handlerOptions:null,handler:null,hoverRequest:null,initialize:function(b){this.pendingRequests=[];b=b||{};b.handlerOptions=b.handlerOptions||{};OpenLayers.Control.prototype.initialize.apply(this,[b]);if(!this.format){this.format=new OpenLayers.Format.WMSGetFeatureInfo(b.formatOptions)}if(this.drillDown===true){this.hover=false}if(this.hover){this.handler=new OpenLayers.Handler.Hover(this,{move:this.cancelHover,pause:this.getInfoForHover},OpenLayers.Util.extend(this.handlerOptions.hover||{},{delay:250}))}else{var g={};g[this.clickCallback]=this.getInfoForClick;this.handler=new OpenLayers.Handler.Click(this,g,this.handlerOptions.click||{})}},getInfoForClick:function(b){this.tempId=new Date().getTime();this.events.triggerEvent("beforegetfeatureinfo",{xy:b.xy,requestId:this.tempId});this.request(b.xy,{})},getInfoForHover:function(b){this.tempId=new Date().getTime();this.events.triggerEvent("beforegetfeatureinfo",{xy:b.xy,requestId:this.tempId});this.request(b.xy,{hover:true})},cancelHover:function(){if(this.hoverRequest){this.hoverRequest.abort();this.hoverRequest=null}},findLayers:function(){var o=this.layers||this.map.layers;var q=[];var h,b;for(var g=o.length-1;g>=0;--g){h=o[g];if(h instanceof OpenLayers.Layer.WMS&&(!this.queryVisible||h.getVisibility())){b=OpenLayers.Util.isArray(h.url)?h.url[0]:h.url;if(this.drillDown===false&&!this.url){this.url=b}if(this.drillDown===true||this.urlMatches(b)){q.push(h)}}}return q},urlMatches:function(g){var o=OpenLayers.Util.isEquivalentUrl(this.url,g);if(!o&&this.layerUrls){for(var h=0,b=this.layerUrls.length;h<b;++h){if(OpenLayers.Util.isEquivalentUrl(this.layerUrls[h],g)){o=true;break}}}return o},buildWMSOptions:function(g,q,h,D){var B=[],E=[];for(var w=0,A=q.length;w<A;w++){if(q[w].params.QUERY_LAYERS!=null){B=B.concat(q[w].params.QUERY_LAYERS);E=E.concat(this.getStyleNames(q[w]))}else{if(q[w].params.LAYERS!=null){B=B.concat(q[w].params.LAYERS);E=E.concat(this.getStyleNames(q[w]))}}}var b=q[0];var z=this.map.getProjection();var C=b.projection;if(C&&C.equals(this.map.getProjectionObject())){z=C.getCode()}var o=OpenLayers.Util.extend({service:"WMS",version:b.params.VERSION,request:"GetFeatureInfo",exceptions:b.params.EXCEPTIONS,bbox:this.map.getExtent().toBBOX(null,b.reverseAxisOrder()),feature_count:this.maxFeatures,height:this.map.getSize().h,width:this.map.getSize().w,format:D,info_format:b.params.INFO_FORMAT||this.infoFormat},(parseFloat(b.params.VERSION)>=1.3)?{crs:z,i:parseInt(h.x),j:parseInt(h.y)}:{srs:z,x:parseInt(h.x),y:parseInt(h.y)});if(B.length!=0){o=OpenLayers.Util.extend({layers:B,query_layers:B,styles:E},o)}OpenLayers.Util.applyDefaults(o,this.vendorParams);return{url:g,params:OpenLayers.Util.upperCaseObject(o),callback:function(F){this.handleResponse(h,F,g)},scope:this}},getStyleNames:function(g){var b;if(g.params.STYLES){b=g.params.STYLES}else{if(OpenLayers.Util.isArray(g.params.LAYERS)){b=new Array(g.params.LAYERS.length)}else{b=g.params.LAYERS.replace(/[^,]/g,"")}}return b},request:function(o,g){var q=this.findLayers();if(q.length==0){this.events.triggerEvent("nogetfeatureinfo");return}g=g||{};var b=this.buildWMSOptions(this.url,q,o,q[0].params.FORMAT);var h=OpenLayers.Request.GET(b);if(g.hover===true){this.hoverRequest=h}h._id=this.tempId;this.pendingRequests.push(h)},abortPendingRequests:function(){for(var g=0;g<this.pendingRequests.length;g++){if(this.pendingRequests[g]==null){continue}var b=this.pendingRequests[g]._id;this.pendingRequests[g].abort();this.pendingRequests[g]=null;this.events.triggerEvent("abortgetfeatureinfo",{requestId:b})}this.pendingRequests=[]},triggerGetFeatureInfo:function(g,o,b){this.events.triggerEvent("getfeatureinfo",{text:g.responseText,features:b,request:g,xy:o,requestId:g._id});for(var h=0;h<this.pendingRequests.length;h++){if(this.pendingRequests[h]!=null&&this.pendingRequests[h]._id==g._id){this.pendingRequests[h]=null}}},handleResponse:function(q,h,b){var o=h.responseXML;if(!o||!o.documentElement){o=h.responseText}var g=this.format.read(o);if(this.drillDown===false){this.triggerGetFeatureInfo(h,q,g)}else{this._requestCount++;
1if(this.output==="object"){this._features=(this._features||[]).concat({url:b,features:g})}else{this._features=(this._features||[]).concat(g)}if(this._requestCount===this._numRequests){this.triggerGetFeatureInfo(h,q,this._features.concat());delete this._features;delete this._requestCount;delete this._numRequests}}},CLASS_NAME:"OpenLayers.Control.WMSGetFeatureInfo"})}});Ext.define("GeoMind.wms.Info",{extend:GeoMind.base.Module,interactsWith:["GeoMind.desktop.print._Old_ToBeRemoved","GeoMind.utils.Html"],active:false,map:null,wmsInfoControls:null,store:null,clickHandler:null,drillDown:false,visibleOnly:true,hover:false,hoverDelay:1000,returnRaw:false,useClickMarker:false,clickMarkerStyle:null,epsg4326:new OpenLayers.Projection("EPSG:4326"),proxy:null,supportedVectorLayerTypes:["Vector","GML","KML","GPX"],supportedRasterLayerTypes:["WMS"],constructor:function(b){Ext.apply(this,b);OpenLayers.ProxyHost=this.proxy;this.wmsInfoControls=[];this.callParent([b]);this.addEvents(["wmsInfoGetInfoSuccess","wmsInfoLayerUnregister","wmsInfoLoadStart","wmsInfoLoadEnd"]);this.createClickControl();this.store=Ext.create("Ext.data.Store",{fields:["uuid","rec","ctrl"],data:[]});if(this.useClickMarker){this.createMarkerLayer()}},createMarkerLayer:function(){if(!this.clickMarkerStyle){var h=Ext.Loader.getPath(Ext.getClassName(this));var b=h.substring(0,h.indexOf("/src"));var g=b+"/resources/icons/clocks/fancy.png";this.clickMarkerStyle=new OpenLayers.Style(new OpenLayers.Util.applyDefaults({externalGraphic:g,pointRadius:12,fillOpacity:1},OpenLayers.Feature.Vector.style["default"]))}this.markerLayer=new OpenLayers.Layer.Vector("infoMarker",{rendererOptions:{zIndexing:true},styleMap:new OpenLayers.StyleMap({"default":this.clickMarkerStyle})})},createClickControl:function(){this.clickCtrl=OpenLayers.Class(OpenLayers.Control,{defaultHandlerOptions:{single:true,"double":false,pixelTolerance:0,stopSingle:false,stopDouble:false},initialize:function(b){this.handlerOptions=OpenLayers.Util.extend({},this.defaultHandlerOptions);OpenLayers.Control.prototype.initialize.apply(this,arguments);this.handler=new OpenLayers.Handler.Click(this,{click:this.onClick,dblclick:this.onDblclick},this.handlerOptions)},onClick:function(b){},onDblclick:function(b){}})},activate:function(){this.active=true;this.createClickHandler();this.registerInfoLayers();this.activateMarkerLayer()},activateMarkerLayer:function(){if(!this.map){return}if(this.useClickMarker){this.map.addLayer(this.markerLayer);this.markerLayer.setZIndex(745)}},deactivateMarkerLayer:function(){if(!this.active||!this.map){return}if(this.useClickMarker){this.map.removeLayer(this.markerLayer);this.markerLayer.removeAllFeatures()}},deactivate:function(){this.cleanMeUp();this.active=false},cleanMeUp:function(){this.unwireMapEvents();this.unregisterInfoLayers();this.destroyClickHandler();this.deactivateMarkerLayer()},registerInfoLayers:function(){if(!this.map){return}var h=this.map.layers.length;var g,b;for(g=0;g<h;g++){b=this.map.layers[g];this.registerInfoLayer(b.record)}},unregisterInfoLayers:function(){if(!this.map){return}while(this.store.getCount()>0){this.unregisterInfoLayer(this.store.getAt(0).get("rec"))}},createClickHandler:function(){if(!this.map){return}this.clickHandler=new this.clickCtrl({handlerOptions:{single:true,stopSingle:true},onClick:Ext.bind(this.onClick,this)});this.map.addControl(this.clickHandler);this.clickHandler.activate()},destroyClickHandler:function(){if(!this.map||!this.clickHandler){return}this.clickHandler.deactivate();this.map.removeControl(this.clickHandler);this.clickHandler.destroy();this.clickHandler=null},checkIfQueryableLayer:function(h){var g=false;if(this.active&&h){if(Ext.Array.contains(this.supportedRasterLayerTypes,h.get("layer_type_value"))||Ext.Array.contains(this.supportedVectorLayerTypes,h.get("layer_type_value"))){var q=h.get("visibility");var b=h.get("queryable");var o=h.get("isActiveInfo");if(this.drillDown){if(q&&b){g=true}else{g=false}}else{if(q&&b&&o){g=true}else{g=false}}}}return g},registerInfoLayer:function(b){if(this.checkIfQueryableLayer(b)){if(!this.checkIfRecExists(b.get("uuid"))){this.store.add({uuid:b.get("uuid"),rec:b,ctrl:this.createInfoControl(b)})}}else{this.unregisterInfoLayer(b)}},unregisterInfoLayer:function(b){if(b==null||b==undefined){return}if(this.checkIfRecExists(b.get("uuid"))){var h=this.findRec(b.get("uuid"));this.destroyInfoControl(h.get("ctrl"));this.store.remove(h);var g={evtName:"wmsInfoLayerUnregister",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:true})}},findRec:function(b){return this.store.getAt(this.store.find("uuid",b))},checkIfRecExists:function(b){return this.store.find("uuid",b)>-1?true:false},createInfoControl:function(b){var g=null;switch(b.get("layer_type_value")){case"WMS":g=this.createWmsInfoControl(b);break;case"Vector":case"GML":case"GPX":case"KML":g=this.createVectorInfoControl();break}if(g){g.type=b.get("layer_type_value")}return g},createVectorInfoControl:function(){var b={};return b},createWmsInfoControl:function(b){var o=b.get("olLayer").url;if(!Ext.isArray(o)){o=[o]}var g=b.get("get_feature_info_url")?b.get("get_feature_info_url"):b.get("url");
1if(Ext.isArray(g)){g=g[0]}var h=new OpenLayers.Control.WMSGetFeatureInfo({url:g,layerUrls:o,layers:[b.get("olLayer")],infoFormat:b.get("p_info_format_value"),eventListeners:{beforegetfeatureinfo:Ext.bind(this.beforeGetFeatureInfo,this),getfeatureinfo:Ext.bind(this.getFeatureInfo,this),abortgetfeatureinfo:Ext.bind(this.abortFeatureInfo,this)}});this.map.addControl(h);h.activate();return h},destroyInfoControl:function(b){switch(b.type){case"WMS":this.destroyWmsInfoControl(b);break;case"Vector":case"GML":case"GPX":case"KML":this.destroyVectorInfoControl(b);break}},destroyVectorInfoControl:function(b){if(!b){return}b=null},destroyWmsInfoControl:function(b){if(!b){return}b.abortPendingRequests();b.deactivate();this.map.removeControl(b);b.destroy();b=null},setMap:function(b){this.map=b;this.wireMapEvents()},wireMapEvents:function(){if(!this.map){return}this.map.events.register("addlayer",this,this.onLayerChange);this.map.events.register("removelayer",this,this.onLayerRemove);this.map.events.register("changelayer",this,this.onLayerChange)},unwireMapEvents:function(){if(!this.map){return}this.map.events.unregister("addlayer",this,this.onLayerChange);this.map.events.unregister("removelayer",this,this.onLayerRemove);this.map.events.unregister("changelayer",this,this.onLayerChange)},onLayerRemove:function(g){var b=g.layer;if(b.record){this.unregisterInfoLayer(b.record)}},onLayerChange:function(g){var b=g.layer;if(b.record){this.registerInfoLayer(b.record)}},pendingInfoRequestsCount:0,onClick:function(g){var h=[];for(var w=0;w<this.store.getCount();w++){var z=this.store.getAt(w).get("rec");var b=z.get("layer_type_value");if(Ext.Array.contains(this.supportedVectorLayerTypes,b)){var q={rec:z,olLayer:z.get("olLayer"),requestId:GeoMind.utils.Generator.getUuid(),xy:g.xy};this.beforeGetFeatureInfo(q);h.push(q)}}var o=this;setTimeout(function(){for(e in h){o.getVectorInfo(h[e])}},250)},getVectorInfo:function(o){var q=o.olLayer.features;var C=this.map.getLonLatFromPixel(o.xy);var B=new OpenLayers.Geometry.Polygon.createRegularPolygon(new OpenLayers.Geometry.Point(C.lon,C.lat),10,12,0);var h=[];for(f in q){if(q[f].geometry.intersects(B)){var A=new OpenLayers.Feature.Vector(q[f].geometry.clone(),q[f].attributes);var w=Ext.create("GeoMind.data.model.WmsFeatureInfoFeature",{id:A.id,layer:o.olLayer,layerName:o.olLayer.name,url:null,feature:A,infoFormat:"vector_layer",visible:true});A.infoRecord=w;h.push(w)}}this.removeMarkerLayerMarker(o.requestId);this.reportLoadEnd();if(h.length>0){var z={data:h,record:o.rec};var b={evtName:"wmsInfoGetInfoSuccess",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:z};this.dispatchEvent(b,{confirmationRequired:false})}},beforeGetFeatureInfo:function(b){if(this.pendingInfoRequestsCount==0){this.pendingInfoRequestsCount+=1;var g={evtName:"wmsInfoLoadStart",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(g,{confirmationRequired:false})}else{this.pendingInfoRequestsCount+=1}this.addMarkerLayerMarker(b.requestId,b.xy)},abortFeatureInfo:function(b){this.removeMarkerLayerMarker(b.requestId);this.reportLoadEnd()},getFeatureInfo:function(b){this.removeMarkerLayerMarker(b.requestId);this.reportLoadEnd();var g=null;if(this.returnRaw){g=b}else{g=this.proccessInfoData(b)}var h={evtName:"wmsInfoGetInfoSuccess",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:g};this.dispatchEvent(h,{confirmationRequired:false})},addMarkerLayerMarker:function(o,h){if(this.useClickMarker){var b=this.map.getLonLatFromPixel(h);var g=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(b.lon,b.lat));g.attributes={requestId:o};this.markerLayer.addFeatures([g])}},removeMarkerLayerMarker:function(g){if(this.useClickMarker){for(var b=0;b<this.markerLayer.features.length;b++){if(this.markerLayer.features[b].attributes.requestId==g){this.markerLayer.removeFeatures([this.markerLayer.features[b]]);break}}}},reportLoadEnd:function(){this.pendingInfoRequestsCount-=1;if(this.pendingInfoRequestsCount==0){var b={evtName:"wmsInfoLoadEnd",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})}},proccessInfoData:function(D){var h=D.features;var F=D.object;var E=D.text;var H=D.xy;var o={record:F.layers[0].record,data:[]};var B;var A=[];
1if(F&&F.layers){var g=F.layers[0].record.get("groupName")}if((h.length==0||h.length==undefined)&&E.length==0){return o}if((h.length==0||h.length==undefined)&&E.length>0){if(F.infoFormat=="application/vnd.ogc.gml"){if(E.indexOf("<gml:null>unknown</gml:null>")>-1){return o}else{}}if(F.infoFormat=="text/html"){var G=false;if(D.object.url.indexOf(".qgs")>-1){G=true}E=this.trimHtml(E,G);if(E.length==0){return o}}var C=this.map.getLonLatFromPixel(H);B=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(C.lon,C.lat));B.attributes={text:E};A.push(B)}if(h.length>0){for(B in h){var b=h[B].geometry.getBounds();if(0<b.bottom<55&&0<b.top<55&&0<b.left<25&&0<b.left<25&&this.map.projection.getCode()!="4326"){this.fixGeometry(h[B],this.epsg4326,this.map.getProjection())}A.push(h[B])}}for(var z=0,w=A.length;z<w;z++){var q=Ext.create("GeoMind.data.model.WmsFeatureInfoFeature",{id:A[z].id,layer:F.layers[0],layerName:F.layers[0].name,url:F.layers[0].record.get("url"),feature:A[z],infoFormat:F.layers[0].record.get("p_info_format_value"),visible:true});A[z].infoRecord=q;o.data.push(q)}return o},trimHtml:function(w,o){var z=GeoMind.utils.Html.extractTagContent(w,"body");if(o){var h=z.split("<table");var b="";b="<table"+h[1]+"</table>";for(var g=2;g<h.length-1;g++){b+="<table"+h[g]}var q="<table"+h[h.length-1];q=q.substring(0,q.lastIndexOf("</table>"));q=q.substring(0,q.lastIndexOf("</table>")+8);b+=q;z=b}return z},fixGeometry:function(h,o,g){var b=h.geometry.transform(o,g)},_onAfterMapReset:function(b){this.setMap(b.data.map);this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.deactivate();this.manageEventConfirmation(b)}});Ext.define("GeoMind.wms.InfoDisplay",{extend:GeoMind.base.Module,requires:[],interactsWith:[],active:false,map:null,loadAppend:true,enableSelect:null,selectControl:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["wmsInfoDisplayLayerFeatureHighlighted","wmsInfoDisplayLayerFeatureUnhighlighted"]);this.createDisplayLayer();if(this.enableSelect){this.createSelectControl()}},activate:function(){if(!this.map){return}this.map.addLayer(this.displayLayer);if(this.enableSelect){this.map.addControl(this.selectControl);this.selectControl.activate()}this.active=true},deactivate:function(){if(!this.active||!this.map){return}if(this.enableSelect){this.selectControl.unselectAll();this.selectControl.deactivate();this.map.removeControl(this.selectControl)}this.map.removeLayer(this.displayLayer);this.displayLayer.removeAllFeatures();this.active=false},createSelectControl:function(){this.selectControl=new OpenLayers.Control.SelectFeature(this.displayLayer,{hover:true,box:false,highlightOnly:true,renderIntent:"highlight",unhighlightAll:function(){var q=this.layers;if(q==null){q=[this.layer]}var o,h;for(var b=0;b<q.length;++b){o=q[b];for(var g=o.features.length-1;g>=0;--g){h=o.features[g];this.unhighlight(h)}}}});this.selectControl.handlers.feature.stopDown=false;this.selectControl.events.register("beforefeaturehighlighted",this.selectControl,Ext.bind(this.onBeforeSelectControlHighlight,this));this.selectControl.events.register("featurehighlighted",this.selectControl,Ext.bind(this.onSelectControlHighlight,this))},onBeforeSelectControlHighlight:function(){this.selectControl.unhighlightAll()},onSelectControlHighlight:function(b){var g={evtName:"wmsInfoDisplayLayerFeatureHighlighted",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{feature:b.feature}};this.dispatchEvent(g,{confirmationRequired:false})},highlightFeature:function(b){this.selectControl.highlight(b)},zoomToFeature:function(b){this.map.zoomToExtent(b.geometry.getBounds(),true)},destroySelectControl:function(){},createDisplayLayer:function(){this.displayLayer=new OpenLayers.Layer.Vector("infoDisplayOnly",{styleMap:new OpenLayers.StyleMap({"default":new OpenLayers.Style(new OpenLayers.Util.applyDefaults({pointRadius:5,fillColor:"#55e1ff",fillOpacity:0.2,strokeColor:"#55e1ff",strokeWidth:2},OpenLayers.Feature.Vector.style["default"])),highlight:new OpenLayers.Style(new OpenLayers.Util.applyDefaults({pointRadius:5,fillColor:"#FF0000",fillOpacity:0.2,strokeColor:"#FF0000",strokeWidth:3},OpenLayers.Feature.Vector.style.highlight))})})},destroyDisplayLayer:function(){},setMap:function(b){this.map=b}
1,onWmsInfoGetInfoSucces:function(b){if(!this.active){return}if(!this.loadAppend){this.removeFeaturesForLayer(b.record)}if(b.data.length>0){for(d in b.data){var g=b.data[d].get("feature");if(!this.checkIfFeatureExists(g)){this.displayLayer.addFeatures([g])}}}},checkIfFeatureExists:function(b){var h=false;for(var q=0;q<this.displayLayer.features.length;q++){var o=this.displayLayer.features[q].attributes;var g=true;for(a in o){if(o[a]!=b.attributes[a]){g=false;break}}if(g){h=true;break}}return h},onWmsInfoLayerUnregister:function(b){this.removeFeaturesForLayer(b)},removeFeaturesForLayer:function(g){var o=g.get("olLayer").id;var b=[];for(var h=0;h<this.displayLayer.features.length;h++){if(this.displayLayer.features[h].infoRecord.get("layer").id==o){b.push(this.displayLayer.features[h])}}this.displayLayer.removeFeatures(b)},clear:function(){this.displayLayer.removeAllFeatures()},setLoadAppend:function(b){this.loadAppend=b},_onWmsInfoGetInfoSuccess:function(b){this.onWmsInfoGetInfoSucces(b.data)},_onWmsInfoLayerUnregister:function(b){this.onWmsInfoLayerUnregister(b.data)},_onAfterMapReset:function(b){this.setMap(b.data.map);this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.deactivate();this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.wms.info.display.lang.Standard",{strings:{emptyText:{pl:"Brak danych do wyÅwietlenia",en:"No data"},infoWindowTitle:{pl:"Info",en:"Info"},header_property:{pl:"WÅaciwoÅÄ",en:"Property"},header_value:{pl:"WartoÅÄ",en:"Value"}},errCodes:{}});Ext.define("GeoMind.desktop.wms.info.display.Standard",{extend:GeoMind.base.Module,interactsWith:[],active:false,store:null,loadAppend:true,groupResults:true,view:null,active:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["wmsInfoDataDisplayItemSelect","wmsInfoDataDisplayItemDblClick"]);this.buildCss();this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.wms.info.display.lang.Standard");this.store=Ext.create("Ext.data.ArrayStore",{model:"GeoMind.data.model.WmsFeatureInfoFeature",autoLoad:false,groupField:this.groupResults?"layerName":null});this.createGui()},createGui:function(){var g=this;var b=[{xtype:"rownumberer"},{text:"id",dataIndex:"id",flex:1,renderer:function(C,w,q,h,A,z,o,B){return g.createHtmlForFeature(null,null,q,null)}}];this.view=Ext.create("Ext.grid.Panel",{store:this.store,hideHeaders:true,emptyText:'<div style="margins: auto;">'+this.lang.getString("emptyText")+"</div>",columns:b,features:[{ftype:"grouping",groupHeaderTpl:Ext.create("Ext.XTemplate","<div>{name:this.formatName}</div>",{formatName:function(h){return Ext.String.trim(h)}})}]});this.view.on("select",this.onItemSelect,this);this.view.on("itemdblclick",this.onItemDblClick,this)},onItemSelect:function(o,b,g,h){var q={evtName:"wmsInfoDataDisplayItemSelect",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{feature:b.get("feature")}};this.dispatchEvent(q,{confirmationRequired:false})},onItemDblClick:function(o,b,q,g,w,h){var z={evtName:"wmsInfoDataDisplayItemDblClick",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{feature:b.get("feature")}};this.dispatchEvent(z,{confirmationRequired:false})},selectFeature:function(b){this.view.getSelectionModel().select(b.infoRecord)},setLoadAppend:function(b){this.loadAppend=b},setGroupping:function(b){if(b){this.store.group("layerName")}else{this.store.clearGrouping()}},activate:function(){this.active=true},deactivate:function(){this.store.loadData([]);this.active=false},clear:function(){this.store.loadData([])},onWmsInfoGetInfoSucces:function(b){if(!this.active){return}if(!this.loadAppend){this.removeFeaturesForLayer(b.record)}if(b.data.length>0){var g=[];for(d in b.data){if(!this.checkIfFeatureExists(b.data[d])){g.push(b.data[d])}}this.store.loadData(g,true)}},checkIfFeatureExists:function(b){var w=false;var g=b.get("feature").attributes;var h=this.store.getCount();for(var q=0;q<h;q++){var A=this.store.getAt(q);var z=A.get("feature").attributes;var o=true;for(a in z){if(z[a]!=g[a]){o=false;break}}if(o){w=true;break}}return w},onWmsInfoLayerUnregister:function(b){this.removeFeaturesForLayer(b)},removeFeaturesForLayer:function(g){var b=g.get("uuid");var h=[];
1this.store.each(function(o){if(o.get("layer").record.get("uuid")==b){h.push(o)}});this.store.remove(h);var h=this.store.getRange();this.store.loadData([]);this.store.loadData(h)},createHtmlForFeature:function(h,w,b,q){var o=b.get("infoFormat");var g="";if(o=="text/html"){g=b.get("feature").attributes.text}else{if(o=="application/vnd.ogc.gml"){g=this.createHtmlForVectorFeature(b)}else{if(o=="vector_layer"){g=this.createHtmlForVectorFeature(b)}else{g='<div style="padding: 2em; width: 100%;"><p>id:<span style="color:blue;font-weight:bold">'+b.get("id")+'</span></p><p>infoFormat:<span style="color:blue;font-weight:bold">'+b.get("infoFormat")+"</span></p></div>"}}}return g},createHtmlForVectorFeature:function(b){var h=b.get("feature");var g='<table class="featureInfo" width="100%">';var q='<tr><th width="30%">'+this.lang.getString("header_property")+"</th><th>"+this.lang.getString("header_value")+"</th></tr>";var o="";for(a in h.attributes){o+="<tr><td>"+a+"</td><td>"+h.attributes[a]+"</td></tr>"}g+=q+o+"</table>";return g},createHtmlFromGml:function(b){var h=b.get("feature");var g='<table class="featureInfo" width="100%">';var w="<tr>";for(f in h.attributes){w+="<th>"+f+"</th>"}w+="</tr>";var q="<tr>";for(f in h.attributes){var o=h.attributes[f];q+="<td>"+h.attributes[f]+"</td>"}q+="</tr>";g+=w+q;g+="</table>";return g},buildCss:function(){var g=[{cssString:"table.featureInfo, table.featureInfo td, table.featureInfo th {border:1px solid #ddd;border-collapse:collapse;margin:0.1em;padding:0;font-size: 90%;padding:.2em .1em;}",cssId:2},{cssString:"table.featureInfo th {padding:.2em .2em;font-weight:bold;background:#eee;}",cssId:3},{cssString:"table.featureInfo td{background:#fff;}",cssId:4},{cssString:"table.featureInfo tr.odd td{background:#eee;}",cssId:5},{cssString:"table.featureInfo caption{text-align:left;font-size:100%;font-weight:bold;text-transform:uppercase;padding:.2em .2em;}",cssId:5},{cssString:"hr {color: #0000ff;background-color: #0000ff;height: 0.1px;width: 90%;}",cssId:6},{cssString:"recIdx {color:blue;font-weight:bold;}",cssId:7}];for(var b=0;b<g.length;b++){Ext.util.CSS.createStyleSheet(g[b].cssString,g[b].cssId)}},_onWmsInfoGetInfoSuccess:function(b){this.onWmsInfoGetInfoSucces(b.data)},_onWmsInfoLayerUnregister:function(b){this.onWmsInfoLayerUnregister(b.data)},_onAfterMapReset:function(b){this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.deactivate();this.manageEventConfirmation(b)}});Ext.define("GeoMind.desktop.wms.info.Standard",{extend:GeoMind.base.Module,interactsWith:["GeoMind.desktop.mapTools.Measure","GeoMind.desktop.print.Standard"],drillDown:false,visibleOnly:true,btnsCfg:null,btn:null,loadAppend:false,groupResults:false,active:false,useClickMarker:false,clickMarkerStyle:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.moduleController=Ext.create("GeoMind.base.ModuleController");this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.wms.info.lang.Standard");this.wmsInfo=Ext.create("GeoMind.wms.Info",{drillDown:this.drillDown,visibleOnly:this.visibleOnly,useClickMarker:this.useClickMarker,clickMarkerStyle:this.clickMarkerStyle,proxy:this.proxy});this.moduleController.registerModule(this.wmsInfo);this.wmsInfoDisplayLayer=Ext.create("GeoMind.wms.InfoDisplay",{loadAppend:this.loadAppend,enableSelect:this.enableSelect});this.moduleController.registerModule(this.wmsInfoDisplayLayer);this.wmsInfoDisplayGrid=Ext.create("GeoMind.desktop.wms.info.display.Standard",{loadAppend:this.loadAppend,groupResults:this.groupResults});this.moduleController.registerModule(this.wmsInfoDisplayGrid);this.wmsInfo.on("wmsInfoGetInfoSuccess",this.manageWindowVisibility,this);this.wmsInfo.on("wmsInfoLoadStart",this.onWmsInfoLoadStart,this);this.wmsInfo.on("wmsInfoLoadEnd",this.onWmsInfoLoadEnd,this);this.wmsInfoDisplayGrid.on("wmsInfoDataDisplayItemSelect",this.onWmsInfoDataDisplayItemSelect,this);this.wmsInfoDisplayGrid.on("wmsInfoDataDisplayItemDblClick",this.onWmsInfoDataDisplayItemDblClick,this);this.wmsInfoDisplayLayer.on("wmsInfoDisplayLayerFeatureHighlighted",this.onWmsInfoDisplayLayerFeatureHighlighted,this);this.createGui()},onWmsInfoDataDisplayItemSelect:function(b){this.wmsInfoDisplayLayer.highlightFeature
1(b.feature)},onWmsInfoDataDisplayItemDblClick:function(b){this.wmsInfoDisplayLayer.zoomToFeature(b.feature)},onWmsInfoDisplayLayerFeatureHighlighted:function(b){this.wmsInfoDisplayGrid.selectFeature(b.feature)},createBtns:function(){var g=GeoMind.utils.QTip;var b={btn:{enableToggle:true,iconCls:"gm-info_info",tooltip:g.getQtipHtml(this.lang.getString("btnInfo_Text"),this.lang.getString("btnInfo_Tip"))}};Ext.merge(b,this.btnsCfg);this.btn=Ext.create("Ext.button.Button",b.btn);this.btn.on("toggle",this.onBtnToggle,this)},onBtnToggle:function(g,h,b){if(h){this.activate()}else{this.deactivate()}},createGui:function(){this.createBtns();var o=GeoMind.utils.QTip;var g=Ext.create("Ext.button.Button",{text:this.lang.getString("btnClear_Text"),tooltip:o.getQtipHtml(this.lang.getString("btnClear_Text"),this.lang.getString("btnClear_Tip")),iconCls:"gm-info_clear"});g.on("click",this.onBtnClearClick,this);var b=Ext.create("Ext.button.Button",{text:this.lang.getString("btnAppend_Text"),tooltip:o.getQtipHtml(this.lang.getString("btnAppend_Text"),this.lang.getString("btnAppend_Tip")),enableToggle:true,pressed:this.loadAppend,iconCls:"gm-info_append"});b.on("toggle",this.onBtnAppendToggle,this);var h=Ext.create("Ext.button.Button",{text:this.lang.getString("btnGroup_Text"),tooltip:o.getQtipHtml(this.lang.getString("btnGroup_Text"),this.lang.getString("btnGroup_Tip")),iconCls:"gm-info_group",pressed:this.groupResults,enableToggle:true});h.on("toggle",this.onBtnGroupToggle,this);this.window=Ext.create("Ext.window.Window",{title:this.lang.getString("windowTitle"),iconCls:"gm-info_info",height:300,width:450,closeAction:"hide",layout:"fit",items:[this.wmsInfoDisplayGrid.view],bbar:[b,"-",h,"->",g]});this.window.on("close",this.deactivate,this)},onBtnClearClick:function(){this.wmsInfoDisplayLayer.clear();this.wmsInfoDisplayGrid.clear()},onBtnAppendToggle:function(g,h,b){this.wmsInfoDisplayLayer.setLoadAppend(h);this.wmsInfoDisplayGrid.setLoadAppend(h)},onBtnGroupToggle:function(g,h,b){this.wmsInfoDisplayGrid.setGroupping(h)},manageWindowVisibility:function(b){if(this.active&&b.data.length>0){this.window.show();if(this.wmsInfoLoadingInProgress){this.showLoadMask(this.lang.getString("loadingMsg"))}}},wmsInfoLoadingInProgress:false,onWmsInfoLoadStart:function(){this.wmsInfoLoadingInProgress=true;if(this.window.isVisible()){this.showLoadMask(this.lang.getString("loadingMsg"))}},onWmsInfoLoadEnd:function(){this.wmsInfoLoadingInProgress=false;this.hideLoadMask()},loadMask:null,showLoadMask:function(b){if(!this.loadMask){if(!this.wmsInfoDisplayGrid.view.getEl()){return}this.loadMask=new Ext.LoadMask(this.wmsInfoDisplayGrid.view.getEl(),{msg:b})}this.loadMask.msg=b;this.loadMask.show()},hideLoadMask:function(){if(this.loadMask){this.loadMask.hide()}},_activate:function(){this.wmsInfoDisplayLayer.activate();this.wmsInfoDisplayGrid.activate();this.wmsInfo.activate();this.active=true},activate:function(){var b={evtName:"deactivationRequired",evtInitiatingModule:this,evtBroadcastingController:null,callback:Ext.bind(this._activate,this),data:{}};this.dispatchEvent(b,{confirmationRequired:true})},deactivate:function(){if(this.active){this.wmsInfo.deactivate();this.wmsInfoDisplayLayer.deactivate();this.wmsInfoDisplayGrid.deactivate();this.window.hide();this.btn.toggle(false,true);this.active=false}},setMap:function(b){this.wmsInfo.setMap(b);this.wmsInfoDisplayLayer.setMap(b)},_onAfterMapReset:function(b){this.setMap(b.data.map);this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.deactivate();this.manageEventConfirmation(b)},_onMapStateUpdated:function(b){if(b.data.type=="layersSetQueryable"){var g=b.data.records;for(r in g){this.wmsInfo.registerInfoLayer(g[r])}}}});Ext.define("GeoMind.desktop.workspace.lang.Lang",{strings:{btnSave_Text:{pl:"Zapisz pole pracy",en:"Save workspace"},btnSave_Tip:{pl:"Zapisz pole pracy",en:"Save workspace"},btnRead_Text:{pl:"Wczytaj pole pracy",en:"Load workspace"},btnRead_Tip:{pl:"Wczytaj pole pracy",en:"Load workspace"},window_Titile:{pl:"Zapisane pola pracy",en:"Saved workspaces"},msg_Titile:{pl:"Zapisywanie pola pracy",en:"Saving workspace"},msg_Text:{pl:"Zapisywanie pola pracy w toku...",en:"Saving workspace in progress..."}},errCodes:{}});Ext.define("GeoMind.desktop.workspace.Workspace",{extend:GeoMind.base.Module,serviceUrl:{read:"",write:""},serviceMethods:{read:"",write:""},appId:null,lang:null,btnsCfg:null,btnSave:null,btnRead:null,map:null,mapRecord:null,layerTreeNode:null,selectedWorkspace:false,layers:{key:"layers",value:[]},layer_groups:{key:"layer_groups",value:[]},maps:{key:"maps",value:[]},qTipUtils:null,constructor:function(g){Ext.apply(this,g);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.desktop.workspace.lang.Lang");this.callParent([g]);this.addEvents(["workspacesLoaded","workspaceSaveStart","workspaceSaveEnd","workspaceLoadStart","workspaceLoadEnd","workspaceNotFound"]);this.qTipUtils=GeoMind.utils.QTip;this.IdGen=GeoMind.utils.Generator;var b={btnSave:{iconCls:"gm-workspace_save",tooltip:this.qTipUtils.getQtipHtml(this.lang.getString("btnSave_Text"),this.lang.getString("btnSave_Tip"))},btnRead:{iconCls:"gm-workspace_load",tooltip:this.qTipUtils.getQtipHtml(this.lang.getString("btnRead_Text"),this.lang.getString("btnRead_Tip"))}};Ext.merge(b,this.btnsCfg);this.btnSave=Ext.create("Ext.button.Button",b.btnSave);this.btnRead=Ext.create("Ext.button.Button",b.btnRead);this.btnSave.on("click",this.onBtnSaveClick,this);this.btnRead.on("click",this.onBtnReadClick,this);this.savingInfoWindow=Ext.Msg},onBtnSaveClick:function(){this.saveMapWorkspace()},onBtnReadClick:function(){this.readMapWorkspace()},saveMapWorkspace:function(){var h=this.buildLinks(this.layerTreeNode);var A=[];A.push(this.mapRecord.getData());A[0].restricted_extent=this.map.getExtent().toString();A[0].links=h;var g=GeoMind.utils.Tree.getNodesForType("GeoMind.data.model.LayerGroup",this.layerTreeNode);var D=[];for(var z in g){if(!this.checkIfExists(D,"uuid",g[z].get("recordData").get("uuid"))){D.push(g[z].get("recordData").getData());D[z].links=this.buildLinks(g[z])}}var w=this.flattenUnifiedConfig("GeoMind.data.model.Layer",this.layerTreeNode);var B=[];for(var z=0,o=w.length;z<o;z++){if(w[z].data&&w[z].data.url){w[z].data.url=this.removeSid(w[z].data.url);w[z].data.url=this.removeLng(w[z].data.url)}if(!this.checkIfExists(B,"uuid",w[z].get("uuid"))){var C={};for(var b in w[z].data){if(b!="olLayer"){C[b]=w[z].data[b]}else{C[b]=null}}B.push(C)}}var q={map_uuid:Ext.clone(this.mapRecord.get("uuid")),maps:A,layer_groups:D,layers:B};this.doSaveWorkspace(q)},doSaveWorkspace:function(b){var h={evtName:"workspaceSaveStart",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(h,{confirmationRequired:false});var g={ss:GeoMind.utils.SessionManager.ss,data:Ext.JSON.encode(b),extraParams:[{key:"map_uuid",value:this.mapRecord.get("uuid")}]};Ext.Ajax.request({url:this.serviceUrl.write+this.serviceMethods.write,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(g),success:Ext.bind(this.saveWorkspaceSuccess,{data:b,scope:this}),failure:Ext.bind(this.saveWorkspaceFailure,this)})},checkIfExists:function(b,o,q){var w=false;for(var h=0,g=b.length;h<g;h++){if(b[h][o]==q){w=true;break}}return w},saveWorkspaceSuccess:function(b){b=GeoMind.utils.Ajax.fixResponse(b);var h;if(b.success){var g={mapId:this.data.mapId,cfgData:this.data};h={evtName:"workspaceSaveEnd",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:true,data:g}}}else{h={evtName:"workspaceSaveEnd",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:false,data:g,response:b}}}this.scope.dispatchEvent(h,{confirmationRequired:false})},saveWorkspaceFailure:function(b){var g={evtName:"workspaceSaveEnd",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:false,message:b}};this.dispatchEvent(g,{confirmationRequired:false})},readMapWorkspace:function(){var g={evtName:"workspaceLoadStart",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(g,{confirmationRequired:false});var b={ss:GeoMind.utils.SessionManager.ss,extraParams:[{key:"map_uuid",value:this.mapRecord.get("uuid")}]};Ext.Ajax.request({url:this.serviceUrl.read+this.serviceMethods.read,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode(b),success:Ext.bind(this.readMapWorkspaceSuccess,this),failure:Ext.bind(this.readMapWorkspaceFailure,this)})},readMapWorkspaceSuccess:function(g){var g=GeoMind.utils.Ajax.fixResponse(g);if(g.success&&g.data.length>0){var o={};o[g.data[0].key]=Ext.JSON.decode(g.data[0].value);for(var h=0;h<o[g.data[0].key].layers.length;h++){var b=o[g.data[0].key].layers[h];if(b.url){b.url=this.removeSid(b.url);b.url=this.removeLng(b.url)}}var q={evtName:"workspacesLoaded",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:o};
1this.dispatchEvent(q,{confirmationRequired:false})}else{var q={evtName:"workspaceNotFound",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(q,{confirmationRequired:false})}},readMapWorkspaceFailure:function(b){var g={evtName:"workspaceLoadEnd",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:false,message:b}};this.dispatchEvent(g,{confirmationRequired:false})},removeSid:function(g){if(!Ext.isArray(g)){g=[g]}for(var b in g){g[b]=this.removeURLParam(g[b],"sid")}return g},removeLng:function(g){if(!Ext.isArray(g)){g=[g]}for(var b in g){g[b]=this.removeURLParam(g[b],"lng")}return g},removeURLParam:function(b,w){var o=b.split("?");if(o.length>=2){var q=encodeURIComponent(w)+"=";var h=o[1].split(/[&;]/g);for(var g=h.length;g-->0;){if(h[g].indexOf(q,0)==0){h.splice(g,1)}}if(h.length>0){return o[0]+"?"+h.join("&")}else{return o[0]}}else{return b}},buildLinks:function(w){var g=[];var q={};if(w.hasChildNodes()){for(var h=0;h<w.childNodes.length;h++){var A=w.childNodes[h];var b=A.get("recordData");var z=Ext.create("GeoMind.data.model.Link");var o=this.IdGen.getUuid();if(!A.hasChildNodes()){z.set("uuid",o);z.set("parent_uuid",w.get("recordData")?w.get("recordData").data.uuid:null);z.set("child_uuid",b.data.uuid);z.set("child_name",b.data.name);z.set("child_description",b.data.description);z.set("child_group_uuid",null);z.set("child_group_name",null);z.set("child_group_description",null)}else{z.set("uuid",o);z.set("parent_uuid",w.get("recordData")?w.get("recordData").data.uuid:null);z.set("child_uuid",null);z.set("child_name",null);z.set("child_description",null);z.set("child_group_uuid",b.data.uuid);z.set("child_group_name",b.data.name);z.set("child_group_description",b.data.description)}q=z.getData();g.push(q)}}return g},flattenUnifiedConfig:function(h,o){var g=GeoMind.utils.Tree.getNodesForType(h,o);var b=[];for(n in g){b.push(g[n].get("recordData"))}return b},setMap:function(b){this.map=b},_onAfterMapCreated:function(b){if(!this.map){this.setMap(b.data.map)}var g=b.data.unifiedMapCfg;this.mapRecord=g.get("recordData");this.manageEventConfirmation(b)},_onAfterMapReset:function(b){var g=b.data.unifiedMapCfg;this.mapRecord=g.get("recordData");if(!this.map){this.setMap(b.data.map)}this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.manageEventConfirmation(b)},_onNewRootNodeSet:function(b){this.layerTreeNode=b.data.node}});Ext.define("GeoMind.info.MapInput",{extend:GeoMind.base.Module,map:null,active:true,uuid:null,constructor:function(b){Ext.getBody().on("contextmenu",this.onContextMenu,this,{preventDefault:true});Ext.apply(this,b);this.callParent([b]);this.addEvents(["infoClicked","rightClicked"]);this.uuid=GeoMind.utils.Generator.getUuid();this.initClickControl()},onContextMenu:function(b){this.captureRightClick(b)},initClickControl:function(){OpenLayers.Control.Click=OpenLayers.Class(OpenLayers.Control,{defaultHandlerOptions:{single:true,"double":false,pixelTolerance:0,stopSingle:false,stopDouble:false,handleRightClicks:true},initialize:function(b){this.handlerOptions=OpenLayers.Util.extend({},this.defaultHandlerOptions);OpenLayers.Control.prototype.initialize.apply(this,arguments);this.handler=new OpenLayers.Handler.Click(this,{click:this.onClick,dblclick:this.onDblclick},this.handlerOptions)},onClick:Ext.bind(this.infoClicked,this),onDblclick:Ext.bind(this.infoDblClicked,this)})},infoClicked:function(b){var g={evtName:"infoClicked",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},infoDblClicked:function(b){},captureRightClick:function(b){var g={evtName:"rightClicked",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:b};this.dispatchEvent(g,{confirmationRequired:false})},setUp:function(b){this.map=b;this.infoControl=new OpenLayers.Control.Click();this.map.addControls([this.infoControl]);this.infoControl.activate()},cleanUp:function(){this.infoControl.deactivate();if(this.infoControl.map){this.infoControl.map.removeControl(this.infoControl)}},activate:function(){this.active=true},deactivate:function(){this.active=false}});Ext.define("GeoMind.info.Standard",{extend:GeoMind.base.Module,map:null,agents:null,keySearchDelay:500,active:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.moduleController=Ext.create("GeoMind.base.ModuleController");this.mapModule=Ext.create("GeoMind.info.MapInput");this.moduleController.registerModule(this.mapModule);this.mapModule.on("infoClicked",function(g){console.warn("clicked",g)});this.mapModule.on("rightClicked",function(g){console.warn("rc ",g);var o={x:g.browserEvent.pageX,y:g.browserEvent.pageY};var h=this.map.getLonLatFromPixel(o);if(this.popup&&this.popup.map){this.map.removePopup(this.popup)}this.popup=new OpenLayers.Popup("chicken",h,new OpenLayers.Size(200,100),"<b>just example getting right click coords</b><p>lon: "+h.lon+" lat: "+h.lat+"</p>",true);this.map.addPopup(this.popup)});this.agents=[]},setDisabled:function(){this.disabled=true},activate:function(){this.active=true},deactivate:function(){this.active=false},setMap:function(b){this.map=b;this.mapModule.setUp(this.map)},_onAfterMapContainerRender:function(b){this.mapContainer=b.data.mapContainer;document.getElementById(this.mapContainer.id).oncontextmenu=function(g){g=g?g:window.event;if(g.preventDefault){g.preventDefault()}else{return false}}},_onAfterMapReset:function(b){this.setMap(b.data.map);this.manageEventConfirmation(b)},_onBeforeMapReset:function(b){this.deactivate();this.manageEventConfirmation(b)},_onMapStateUpdated:function(b){}});Ext.define("GeoMind.lang.LangAccessWrapper",{l:null,t:null,getString:function(b){},getError:function(b){}});
1Ext.define("GeoMind.login.lang.Standard",{strings:{authFailure:{pl:"BÅÄ
d",en:"Error"},signOutMsg:{pl:"WylogowujÄ...",en:"Signing out..."},standardMsgTitle:{pl:"Info",en:"Info"},sessionExpiredMsg:{pl:"Twoja sesja wygasÅa!",en:"Your session has expired!"},btnLogIn:{pl:"Zaloguj",en:"Log In"},btnLogInTip:{pl:"Zaloguj siÄ do aplikacji",en:"Log In"},btnLogOff:{pl:"Wyloguj",en:"Log off"},btnLogOffTip:{pl:"Wyloguj siÄ z aplikacji",en:"Log off"},btnChangePass:{pl:"ZmieÅ hasÅo",en:"Change pass"},btnChangePassTip:{pl:"ZmieÅ hasÅo",en:"Change pass"},btnChangedetails:{pl:"ZmieÅ dane",en:"Change data"},btnChangedetailsTip:{pl:"ZmieÅ dane",en:"Change data"},lblUser:{pl:"Użytkownik: ",en:"User: "},lblUserRoles:{pl:"Role: ",en:"Roles: "},lblUserRoleGroups:{pl:"Grupy ról: ",en:"Role groups: "},logOffMsgTitle:{pl:"Info",en:"Info"},lblUserFailed:{pl:"BÅÄ
d: ",en:"Error: "},lblSessionExpired:{pl:"Sesja wygasÅa",en:"Session expired"},logOffMsg:{pl:"Czy na pewno chcesz siÄ wylogowaÄ?",en:"Are you sure you want to log off?"}},errCodes:{}});Ext.define("GeoMind.login.Standard",{extend:GeoMind.base.Module,lang:null,loginWindow:null,changePassWindow:null,btnLogIn:null,btnLogOff:null,btnChangePass:null,btnsCfg:null,lblUserInfo:null,lblUserRolesInfo:null,lblUserRoleGroupsInfo:null,lblUserIcon:null,lblUserRolesIcon:null,lblUserRoleGroupsIcon:null,lblUserSessionExpiredIcon:null,lblUserSeparator:null,lblUserRolesSeparator:null,lblUserRoleGroupsSeparator:null,constructor:function(g){Ext.apply(this,g);if(!this.lang){this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.login.lang.Standard")}var h=GeoMind.utils.QTip;this.callParent([g]);this.addEvents(["authenticateUser","resetPass","changePass","signOutUser","signInCancel"]);this.lblUserInfo=Ext.create("Ext.toolbar.TextItem",{text:""});this.lblUserRolesInfo=Ext.create("Ext.toolbar.TextItem");this.lblUserRoleGroupsInfo=Ext.create("Ext.toolbar.TextItem");this.lblUserIcon=Ext.create("Ext.toolbar.TextItem",{hidden:true,text:'<div class="gm-generic_icon_size gm-generic_user"></div>'});this.lblUserRolesIcon=Ext.create("Ext.toolbar.TextItem",{hidden:true,text:'<div class="gm-generic_icon_size gm-generic_role"></div>'});this.lblUserRoleGroupsIcon=Ext.create("Ext.toolbar.TextItem",{hidden:true,text:'<div class="gm-generic_icon_size gm-generic_role_group"></div>'});this.lblUserSessionExpiredIcon=Ext.create("Ext.toolbar.TextItem",{hidden:true,text:'<div class="gm-generic_icon_size gm-generic_session_expired"></div>'});this.lblUserSeparator=Ext.create("Ext.toolbar.Separator",{hidden:true});this.lblUserRolesSeparator=Ext.create("Ext.toolbar.Separator",{hidden:true});this.lblUserRoleGroupsSeparator=Ext.create("Ext.toolbar.Separator",{hidden:true});var b={logIn:{iconCls:"gm-lmod_login",scale:"small",text:this.lang.getString("btnLogIn"),tooltip:h.getQtipHtml(this.lang.getString("btnLogIn"),this.lang.getString("btnLogInTip"))},logOff:{iconCls:"gm-lmod_logoff",scale:"small",text:this.lang.getString("btnLogOff"),tooltip:h.getQtipHtml(this.lang.getString("btnLogOff"),this.lang.getString("btnLogOffTip"))},changePass:{iconCls:"gm-lw_user_key",scale:"small",text:this.lang.getString("btnChangePass"),tooltip:h.getQtipHtml(this.lang.getString("btnChangePass"),this.lang.getString("btnChangePassTip"))},changeDetails:{}};Ext.merge(b,this.btnsCfg);this.btnLogIn=Ext.create("Ext.button.Button",b.logIn);this.btnLogOff=Ext.create("Ext.button.Button",b.logOff);this.btnChangePass=Ext.create("Ext.button.Button",b.changePass);if(this.loginWindow){this.loginWindow.on("signin",this.onLoginWindowSignIn,this);this.loginWindow.on("signincancel",this.onLoginWindowSignInCancel,this);this.loginWindow.on("resetpass",this.onLoginWindowResetPass,this);this.loginWindow.on("show",this.onLoginWindowShow,this);this.loginWindow.animateTarget=this.btnLogIn}if(this.changePassWindow){this.changePassWindow.on("changepass",this.onChangePassWindowChangePass,this);this.changePassWindow.animateTarget=this.btnChangePass}this.btnChangePass.on("click",this.onBtnChangePassClick,this);this.btnLogOff.on("click",this.onBtnLogOffClick,this);this.btnLogIn.on("click",this.onBtnLogInClick,this)},getStandardToolbarItems:function(){var b=[this.lblUserSessionExpiredIcon,this.lblUserIcon,this.lblUserInfo,this.lblUserSeparator,this.lblUserRolesIcon,this.lblUserRolesInfo,this.lblUserRolesSeparator,this.lblUserRoleGroupsIcon,this.lblUserRoleGroupsInfo,this.lblUserRoleGroupsSeparator,
1Ext.create("Ext.toolbar.Fill"),Ext.create("Ext.toolbar.Separator"),this.btnChangePass,Ext.create("Ext.toolbar.Separator"),this.btnLogOff];return b},onBtnChangePassClick:function(){this.changePassWindow.show()},onBtnLogInClick:function(){this.onLoginUserRequest()},onBtnLogOffClick:function(){var b=this;Ext.Msg.show({title:this.lang.getString("logOffMsgTitle"),msg:this.lang.getString("logOffMsg"),buttons:Ext.Msg.OKCANCEL,icon:Ext.Msg.QUESTION,animateTarget:this.btnLogOff,fn:function(g){if(g=="ok"){b.signOutUser()}}})},onLoginWindowSignIn:function(b){var h=this.getCredentialsCookie();var g=false;if(b.email===h.email&&b.pass===h.pass){g=true}this.clearCredentialsCookie();this.rememberSession=b.remember;if(this.rememberSession){localStorage.setItem("email",b.email)}else{localStorage.removeItem("email")}var o={evtName:"authenticateUser",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{email:b.email,pass:b.pass,avoidPassScramble:g}};this.dispatchEvent(o,{confirmationRequired:false})},onLoginWindowSignInCancel:function(){var b={evtName:"signInCancel",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:null};this.dispatchEvent(b,{confirmationRequired:false})},crypto:null,credentialsCookieName:"cc",getCredentialsCookie:function(){var b=Ext.util.Cookies.get(this.credentialsCookieName);if(b&&b!=""){b=Ext.JSON.decode(b)}else{b={}}return b},clearCredentialsCookie:function(){Ext.util.Cookies.clear(this.credentialsCookieName)},onLoginWindowShow:function(){var g=this.getCredentialsCookie();if(g.email&&g.pass){this.loginWindow.txtEmail.setValue(g.email);this.loginWindow.txtPass.setValue(g.pass);this.loginWindow.chckRemember.setValue(true)}var b=localStorage.getItem("email");if(b){this.loginWindow.txtEmail.setValue(b);this.loginWindow.txtPass.focus();this.loginWindow.chckRemember.setValue(true)}},onLoginWindowResetPass:function(b){var g={evtName:"resetPass",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{email:b.email,repeatEmail:b.repeatEmail}};this.dispatchEvent(g,{confirmationRequired:false})},onChangePassWindowChangePass:function(b){var g={evtName:"changePass",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{currentPass:b.currentPass,newPass:b.newPass}};this.dispatchEvent(g,{confirmationRequired:false})},signOutUser:function(){GeoMind.utils.SessionManager.ss.sessionId=null;GeoMind.utils.SessionManager.saveSession();var b={evtName:"showLoadMask",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{msg:this.lang.getString("signOutMsg")}};this.dispatchEvent(b,{confirmationRequired:false});var g={evtName:"signOutUser",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(g,{confirmationRequired:false})},onUserAuthenticated:function(b){if(this.rememberSession){GeoMind.utils.SessionManager.saveSession()}this.loginWindow.hideAndClear()},onUserAuthenticationFailed:function(b){this.loginWindow.hideLoadMask();Ext.Msg.show({title:this.lang.getString("authFailure"),msg:b.data.feedbackMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})},onPassReset:function(g){this.loginWindow.hideAndClear();var b=this;Ext.Msg.show({title:this.lang.getString("standardMsgTitle"),msg:g.data.feedbackMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.INFO,fn:function(){b.loginWindow.show()}})},onPassResetFailed:function(b){this.loginWindow.hideLoadMask();Ext.Msg.show({title:this.lang.getString("standardMsgTitle"),msg:b.data.feedbackMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})},onPassChanged:function(b){this.changePassWindow.hideAndClear();Ext.Msg.show({title:this.lang.getString("standardMsgTitle"),msg:b.data.feedbackMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.INFO})},onPassChangeFailed:function(b){this.changePassWindow.hideLoadMask();if(b.data.sessionExpired){this.forceLoginWithSessionExpiredMsg()}else{Ext.Msg.show({title:this.lang.getString("standardMsgTitle"),msg:b.data.feedbackMsg,buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING})}},forceLoginWithSessionExpiredMsg:function(){var b=this;Ext.Msg.show({title:this.lang.getString("standardMsgTitle"),msg:this.lang.getString("sessionExpiredMsg"),buttons:Ext.Msg.OK,icon:Ext.Msg.WARNING,fn:function(){b.loginWindow.show()}})},onUserSignedOut:function(b){window.location.href=window.location.href},onUserSignOutFailed:function(b){window.location.href=window.location.href},onUserDetailsRetrieved:function(B){var o=B.data.data[0].value;var z=o.user_data.first_name;var q=o.user_data.middle_name;var D=o.user_data.last_name;var b=o.user_data.nick_name;var g="";if(z!=null&&z.length>0){g+=z}if(q!=null&&q.length>0){var h=q[0].toUpperCase();g=g.length>0?g+=" "+h+".":h+"."}if(D!=null&&D.length>0){g=g.length>0?g+=" "+D:D}if(b!=null&&b.length>0){var C="("+b+")";g=g.length>0?g+=" "+C:C}if(g.length==0){g=o.email}g="<b>"+this.lang.getString("lblUser")+"</b> "+g;this.lblUserInfo.setText(g);this.lblUserIcon.show();this.lblUserSeparator.show();var w="";var A="";for(r in o.roles){if(o.roles[r].child_uuid!=null){w.length>
10?w+=", "+o.roles[r].child_name:w=o.roles[r].child_name}if(o.roles[r].child_group_uuid!=null){A.length>0?A+=", "+o.roles[r].child_group_name:A=o.roles[r].child_group_name}}if(w.length>0){w="<b>"+this.lang.getString("lblUserRoles")+"</b> "+w;this.lblUserRolesInfo.setText(w);this.lblUserRolesSeparator.show();this.lblUserRolesIcon.show()}if(A.length>0){A="<b>"+this.lang.getString("lblUserRoleGroups")+"</b> "+A;this.lblUserRoleGroupsInfo.setText(A);this.lblUserRoleGroupsSeparator.show();this.lblUserRoleGroupsIcon.show()}this.lblUserSessionExpiredIcon.hide()},onUserDetailsFailed:function(b){this.lblUserInfo.setText("<b>"+this.lang.getString("lblUserFailed")+'</b> <span style="color: red;">'+b.data.feedbackMsg+"</span>");this.lblUserSessionExpiredIcon.show()},onLoginUserRequest:function(b){this.loginWindow.show()},onSessionExpired:function(b){this.lblUserSessionExpiredIcon.show();this.lblUserIcon.hide();this.lblUserInfo.setText('<span style="color: red;"><b>'+this.lang.getString("lblSessionExpired")+"</b></span>");this.lblUserSeparator.show();this.lblUserRolesInfo.setText("");this.lblUserRolesSeparator.hide();this.lblUserRolesIcon.hide();this.lblUserRoleGroupsInfo.setText("");this.lblUserRoleGroupsIcon.hide();this.lblUserRoleGroupsSeparator.hide();this.forceLoginWithSessionExpiredMsg()},onUserChangePassRequest:function(b){this.changePassWindow.show()},onSignOutUserRequest:function(b){this.signOutUser()},_onUserAuthenticated:function(b){this.onUserAuthenticated(b)},_onUserAuthenticationFailed:function(b){this.onUserAuthenticationFailed(b)},_onPassReset:function(b){this.onPassReset(b)},_onPassResetFailed:function(b){this.onPassResetFailed(b)},_onPassChanged:function(b){this.onPassChanged(b)},_onPassChangeFailed:function(b){this.onPassChangeFailed(b)},_onUserSignedOut:function(b){this.onUserSignedOut(b)},_onUserSignOutFailed:function(b){this.onUserSignOutFailed(b)},_onUserDetailsRetrieved:function(b){this.onUserDetailsRetrieved(b)},_onUserDetailsFailed:function(b){this.onUserDetailsFailed(b)},_onLoginUserRequest:function(b){this.onLoginUserRequest(b)},_onUserChangePassRequest:function(b){this.onUserChangePassRequest(b)},_onSignOutUserRequest:function(b){this.onSignOutUserRequest(b)},_onSessionExpired:function(b){this.onSessionExpired(b)}});Ext.define("GeoMind.map.mixins.VirtualWmsLayers",{isVirtualWmsLayerActive:true,virtualWmsLayers:null,activateVirtualWmsLayers:function(){this.isVirtualWmsLayerActive=true;this.configureWmsLayersContainer();this.map.events.on({addlayer:this.onVwlAddLayer,removelayer:this.onVwlRemoveLayer,scope:this});this.on("internalRecordOrderChange",this.onVwlRecordOrderChange,this);this.on("internalLayerVisibilityChange",this.onVwlLayerVisibilityChange,this);this.on("internalBeforeMapReset",this.onVwlBeforeMapReset,this)},deactivateVirtualWmsLayers:function(){this.map.events.un({addlayer:this.onVwlAddLayer,removelayer:this.onVwlRemoveLayer,scope:this});this.un("internalRecordOrderChange",this.onVwlRecordOrderChange,this);this.un("internalLayerVisibilityChange",this.onVwlLayerVisibilityChange,this);this.un("internalBeforeMapReset",this.onVwlBeforeMapReset,this);this.clearOffVirualGroups();this.resetNonVirtualWmsLayerVisibility();this.isVirtualWmsLayerActive=false},resetNonVirtualWmsLayerVisibility:function(){var g=this.map.layers.length;var b=null;for(var h=0;h<g;h++){b=this.map.layers[h];if(b.layerRecord){b.setVisibility(b.layerRecord.get("checked"))}}},configureWmsLayersContainer:function(){this.virtualWmsLayers=[]},onVwlAddLayer:function(b){this.setSyblingLayers(b.layer);var g=this;Ext.defer(function(){if(b.layer){g.maintainVirtualWmsGroup(b.layer)}},100)},onVwlRemoveLayer:function(b){if(b.layer){}},onVwlRecordOrderChange:function(b){if(this.isVirtualWmsLayerActive){this.resetSyblingLayerForMap();this.setNonGroupedLayersVisibility()}},onVwlLayerVisibilityChange:function(g){if(this.isVirtualWmsLayerActive){var b=g.data.record.get("layer").virtualObj?g.data.record.get("layer").virtualObj:null;if(b){this.updateVirtualWmsLayersVisibility(b)}else{if(g.data.record.get("layer")&&g.data.record.get("layer").setVisibility){g.data.record.get("layer").setVisibility(g.data.record.get("checked"))}}}else{if(g.data.record.get("layer")&&g.data.record.get("layer").setVisibility){g.data.record.get("layer").setVisibility(g.data.record.get("checked"))}}},onVwlBeforeMapReset:function(b){this.clearOffVirualGroups()},onVwlLayerLoadStart:function(g){if(this.isVirtualWmsLayerActive){var o=g.object;var q=o.virtualObj;for(var h=0;h<q.layers.length;h++){var b=q.layers[h];if(b.id!=o.id&&b.layerRecord&&b.layerRecord.get("checked")){b.layerRecord.set("iconCls","gm-lt-layer_loading")}}if(o.layerRecord&&!o.layerRecord.get("checked")){o.layerRecord.set("iconCls","gm-lt-layer")}}},onVwlLayerLoadEnd:function(g){if(this.isVirtualWmsLayerActive){var o=g.object;var q=o.virtualObj;for(var h=0;h<q.layers.length;h++){var b=q.layers[h];if(b.id!=o.id&&b.layerRecord){b.layerRecord.set("iconCls","gm-lt-layer")}}if(o.layerRecord){o.layerRecord.set("iconCls","gm-lt-layer")}}},resetSyblingLayerForMap:function(){if(this.isVirtualWmsLayerActive){this.clearOffVirualGroups();var b=this.map.layers.length;for(var g=0;g<b;g++){this.setSyblingLayers(this.map.layers[g])}for(var g=0;g<b;g++){this.maintainVirtualWmsGroup(this.map.layers[g])}for(var g=0;g<this.virtualWmsLayers.length;g++){this.updateVirtualWmsLayersVisibility(this.virtualWmsLayers[g])}}},clearOffVirualGroups:function(){while(this.virtualWmsLayers.length>0){this.unbindLayersLoadEvents(this.virtualWmsLayers[0]);this.virtualWmsLayers[0].virtualWmsLayer.params.LAYERS=this.virtualWmsLayers[0].originalLayersParams.LAYERS;while(this.virtualWmsLayers[0].layers.length>0){var b=this.virtualWmsLayers[0].layers[0];delete b.virtualObj;this.virtualWmsLayers[0].layers.splice(0,1)}this.virtualWmsLayers.splice(0,1);this.setNonGroupedLayersVisibility()}},setSyblingLayers:function(g){var h=this.map.layers.length;
1var b=OpenLayers.Util.indexOf(this.map.layers,g);if(h>1&&b>1){g.previousSyblingLayer=this.map.layers[b-1];if(h>2){this.map.layers[b-1].nextSyblingLayer=g}}return g},maintainVirtualWmsGroup:function(g){var b=g.previousSyblingLayer?g.previousSyblingLayer:null;if(b&&b.url&&g.url&&b.url[0]==g.url[0]&&b.layerRecord&&g.layerRecord&&b.layerRecord.get("groupId")==g.layerRecord.get("groupId")){if(!g.virtualObj&&b.virtualObj){this.addToVirtualWmsGroup(b.virtualObj,g);return}if(!g.virtualObj&&!b.virtualObj){this.createVirtualWmsGroup(g)}}},createVirtualWmsGroup:function(b){var h={id:Ext.id(),virtualWmsLayer:b,layers:[],originalLayersParams:Ext.clone(b.params)};var g=b.previousSyblingLayer;g.virtualObj=h;b.virtualObj=h;h.layers.push(g);h.layers.push(b);this.virtualWmsLayers.push(h);this.bindLayersLoadEvents(h)},bindLayersLoadEvents:function(b){var g=b.virtualWmsLayer;g.events.on({loadstart:this.onVwlLayerLoadStart,loadend:this.onVwlLayerLoadEnd,scope:this})},unbindLayersLoadEvents:function(b){var g=b.virtualWmsLayer;g.events.un({loadstart:this.onVwlLayerLoadStart,loadend:this.onVwlLayerLoadEnd,scope:this})},addToVirtualWmsGroup:function(g,b){b.virtualObj=g;g.layers.push(b);this.updateVirtualWmsLayersVisibility(g)},setNonGroupedLayersVisibility:function(){var b=this.map.layers.length;for(var h=0;h<b;h++){var g=this.map.layers[h];if(g.layerRecord&&!g.virtualObj){g.setVisibility(g.layerRecord.get("checked"))}}},updateVirtualWmsLayersVisibility:function(o){var b=true;if(o&&o.virtualWmsLayer.params){o.virtualWmsLayer.params.LAYERS="";var q="";for(var g=0;g<o.layers.length;g++){if(o.layers[g].id!=o.virtualWmsLayer.id){if(o.layers[g].layerRecord.get("checked")){q+=o.layers[g].params.LAYERS+",";this.map.events.un({changelayer:this.onVwlChangeLayer,scope:this});o.layers[g].setVisibility(false);this.map.events.on({changelayer:this.onVwlChangeLayer,scope:this})}}else{if(o.layers[g].id==o.virtualWmsLayer.id&&o.virtualWmsLayer.layerRecord&&o.virtualWmsLayer.layerRecord.get("checked")){q+=o.originalLayersParams.LAYERS+","}}if(o.layers[g].layerRecord&&o.layers[g].layerRecord.get("checked")){b=false}}var h=this.tidyUpLayerString(q);if(h&&h.length>0&&!b){o.virtualWmsLayer.params.LAYERS=h;o.virtualWmsLayer.setVisibility(true);o.virtualWmsLayer.redraw()}else{o.virtualWmsLayer.setVisibility(false)}}},tidyUpLayerString:function(b){if(b&&b.length>0){if(b.charAt(0)==","){b=b.slice(0,1)}b=b.replace(",,",",");if(b.charAt(b.length-1)==","){b=b.slice(0,-1)}return b}return null}});Ext.define("GeoMind.openLayers.layer.Ars",{singleton:true,constructor:function(b){this.init()},init:function(){try{OpenLayers}catch(b){return}OpenLayers.Layer.GeoportalARS=OpenLayers.Class(OpenLayers.Layer.Grid,{isBaseLayer:false,units:"m",maxExtent:new OpenLayers.Bounds(0,0,1228800,819200),resolutions:[1600,800,400,200,100,50,25,12.5,6.25,3.125,1.5625,0.78125,0.390625],startArsLayerLevel:0,baseUrl:["http://ars1.geoportal.gov.pl/ARS/getTile.aspx?service={service}&cs=EPSG2180&fileIDX=L${z}X${x}Y${y}.{extension}","http://ars2.geoportal.gov.pl/ARS/getTile.aspx?service={service}&cs=EPSG2180&fileIDX=L${z}X${x}Y${y}.{extension}","http://ars3.geoportal.gov.pl/ARS/getTile.aspx?service={service}&cs=EPSG2180&fileIDX=L${z}X${x}Y${y}.{extension}","http://ars4.geoportal.gov.pl/ARS/getTile.aspx?service={service}&cs=EPSG2180&fileIDX=L${z}X${x}Y${y}.{extension}"],extension:"png",arsBlankTile:"cartomatic/customClasses/geoportalARS/arsBlankTile.png",initialize:function(q,g,o){switch(g){case"BACKGROUND":if(o.arsBlankTile){this.baseUrl=o.arsBlankTile}else{this.baseUrl=this.arsBlankTile}break;case"RASTER_TOPO":o=OpenLayers.Util.extend({resolutions:[1600,800,400,200,100,50,25,12.5,6.25,3.125,1.5625,0.78125,0.390625]},o);this.extension="jpg";break;case"ORTOFOTO":o=OpenLayers.Util.extend({resolutions:[25,12.5,6.25,3.125,1.5625,0.78125,0.390625]},o);this.startArsLayerLevel=6;this.extension="jpg";break;case"ORTO_SAT":o=OpenLayers.Util.extend({resolutions:[1600,800,400,200,100,50]},o);this.extension="jpg";break;case"BDO":o=OpenLayers.Util.extend({resolutions:[1600,800,400,200,100,50]},o);this.extension="png";break;case"VMAP":o=OpenLayers.Util.extend({resolutions:[25,12.5,6.25]},o);this.startArsLayerLevel=6;this.extension="png";break;case"TBD":o=OpenLayers.Util.extend({resolutions:[3.125,1.5625,0.78125,0.390625
1]},o);this.startArsLayerLevel=9;this.extension="png";break;case"NMT_S":o=OpenLayers.Util.extend({resolutions:[1600,800,400,200,100,50,25]},o);this.extension="png";break;case"NMT_CS":o=OpenLayers.Util.extend({resolutions:[1600,800,400,200,100,50,25]},o);this.extension="png";break}url=new Array();if(g=="BACKGROUND"){url.push(this.baseUrl)}else{for(var w=0;w<this.baseUrl.length;w++){url.push(this.baseUrl[w].replace("{service}",g).replace("{extension}",this.extension))}}q=q||this.name;var h=[q,url,{},o];OpenLayers.Layer.Grid.prototype.initialize.apply(this,h)},clone:function(g){if(g==null){g=new OpenLayers.Layer.ARS(this.name,this.url,this.options)}g=OpenLayers.Layer.HTTPRequest.prototype.clone.apply(this,[g]);if(this.tileSize!=null){g.tileSize=this.tileSize.clone()}g.grid=[];return g},getURL:function(g){var q=this.map.getResolution();var B=Math.round((g.left-this.maxExtent.left)/(q*this.tileSize.w));var A=Math.round((g.bottom-this.maxExtent.bottom)/(q*this.tileSize.h));var w=this.map.getZoom()-this.startArsLayerLevel;var o=Math.pow(2,w);var h=this.url;var D=""+B+A+w;if(h instanceof Array){h=this.selectUrl(D,h)}var C=OpenLayers.String.format(h,{x:B,y:A,z:w});return C},addTile:function(h,g){return new OpenLayers.Tile.Image(this,g,h,null,this.tileSize)},setMap:function(g){OpenLayers.Layer.Grid.prototype.setMap.apply(this,arguments);if(!this.tileOrigin){this.tileOrigin=new OpenLayers.LonLat(this.maxExtent.left,this.maxExtent.bottom)}},CLASS_NAME:"OpenLayers.Layer.GeoportalARS"})}});Ext.define("GeoMind.openLayers.layer.Panoramio",{singleton:true,constructor:function(b){this.init()},init:function(){try{OpenLayers}catch(ex){return}OpenLayers.Layer.Panoramio=OpenLayers.Class(OpenLayers.Layer.Vector,{EVENT_TYPES:["loadstart","loadend","loadcancel"],_numOfPicsPulled:null,_order:null,_set:null,_size:null,_panoramioImageFolderRelativePath:null,_usePanoramioMarker:null,_panoramioMarker:"panoramio-marker.png",_panoramioLogo:"iw_panoramio.png",_panoramioMiniSquare:"mini_square",_selectCallback:null,_jsonp:null,_scriptProxy:null,_serviceUrl:"http://www.panoramio.com/map/get_panoramas",_wgs84:null,_projectedCs:null,_select:null,_popup:null,_proxyHost:null,_proxyHostWarning:"If you decide to not use jsonp you need to set the OpenLayers.ProxyHost or a _proxyHost property of the Panoramio layer in order to use it!",initialize:function(name,options){this.EVENT_TYPES=OpenLayers.Layer.Panoramio.prototype.EVENT_TYPES.concat(OpenLayers.Layer.prototype.EVENT_TYPES);OpenLayers.Layer.prototype.initialize.apply(this,arguments);if(!this.renderer||!this.renderer.supported()){this.assignRenderer()}if(!this.renderer||!this.renderer.supported()){this.renderer=null;this.displayError()}if(!this._numOfPicsPulled){this._numOfPicsPulled=50}if(!this._order){this._order="popularity"}if(!this._set){this._set="public"}if(!this._size){this._size="small"}if(!this._panoramioImageFolderRelativePath){this._panoramioImageFolderRelativePath=""}if(this._usePanoramioMarker==undefined){this._usePanoramioMarker=true}if(!this._selectCallback){this._selectCallback=this.defaultSelectCallback}if(this._jsonp==undefined){this._jsonp=true}if(this._jsonp){this._scriptProxy=new OpenLayers.Protocol.Script({url:this._serviceUrl,scope:this,callback:"_panoramioLayerJsonPCallback",callbackKey:"x"});var me=this;_panoramioLayerJsonPCallback=function(r){me.refreshDataSuccessCallback(r)}}if(!this._jsonp&&this._proxyHost&&(!OpenLayers.ProxyHost||OpenLayers.ProxyHost=="")){OpenLayers.ProxyHost=this._proxyHost}if(!this._jsonp&&(!OpenLayers.ProxyHost||OpenLayers.ProxyHost=="")){}this._panoramioMarker=this._panoramioImageFolderRelativePath+this._panoramioMarker;this._panoramioLogo=this._panoramioImageFolderRelativePath+this._panoramioLogo;var panoramioStyle=new OpenLayers.StyleMap(OpenLayers.Util.applyDefaults({pointRadius:this._usePanoramioMarker?10:15,fillOpacity:1,externalGraphic:this._usePanoramioMarker?this._panoramioMarker:"${photo_file_url_icon}"},OpenLayers.Feature.Vector.style["default"]));this.styleMap=panoramioStyle;this.features=[];this.selectedFeatures=[];this.unrenderedFeatures={}},defaultSelectCallback:function(evt){if(this._popup){this.map.removePopup(this._popup)}var html='<div style="font-family: Arial, Helvetica, sans-serif; width:'+(evt.feature.attributes.width)+'px;"><div style="width:'+evt.feature.attributes.width+'px; font-weight: bold;">
1'+evt.feature.attributes.photo_title+'</div><a href="'+evt.feature.attributes.photo_url+'" target="_blank"><img src="'+evt.feature.attributes.photo_file_url+'" />';"</a><br/>";if(this._size=="medium"||this._size=="original"){html+='<span style="font-size: small;">Photos provided by Panoramio are under the copyright of their owners.</span><br/>'}html+='<a href="http://www.panoramio.com" target="_blank"><img src="'+this._panoramioLogo+'" /></a><br/><div style="font-size: small;">by: <a href="'+evt.feature.attributes.owner_url+'" target="_blank">'+evt.feature.attributes.owner_name+"</a></div>";html+="</div>";this._popup=new OpenLayers.Popup.FramedCloud(evt.feature.attributes.photo_id.toString(),new OpenLayers.LonLat(evt.feature.geometry.x,evt.feature.geometry.y),null,html,null,true);this.map.addPopup(this._popup)},setMeUp:function(){this._wgs84=new OpenLayers.Projection("EPSG:4326");this._projectedCs=this.map.getProjectionObject();this.events.register("visibilitychanged",this,this.visibilityChangedCallback);this.map.events.register("moveend",this,this.mapMoveZoomEndCallback);this.map.events.register("zoomend",this,this.mapMoveZoomEndCallback);if(this._select){this.map.removeControl(this._select)}this._select=new OpenLayers.Control.SelectFeature(this,{hover:false,highlightOnly:true});this._select.events.register("featurehighlighted",this,this._selectCallback);this.map.addControl(this._select);this._select.activate()},cleanMyStuff:function(){console.warn("cleaning up motherfucker");if(this._popup){console.warn("got popup");this.map.removePopup(this._popup)}this.events.unregister("visibilitychanged",this,this.visibilityChangedCallback);this.map.events.unregister("moveend",this,this.mapMoveZoomEndCallback);this.map.events.unregister("zoomend",this,this.mapMoveZoomEndCallback);if(this._select){this.map.removeControl(this._select)}},visibilityChangedCallback:function(){if(this.getVisibility()){this.mapMoveZoomEndCallback()}else{if(this._popup){this.map.removePopup(this._popup)}}},mapMoveZoomEndCallback:function(){var me=this;clearTimeout(this.refreshDataSchedule);if(this.getVisibility()){this.refreshDataSchedule=setTimeout(function(){if(me.map){me.refreshData()}},500)}},lastReadBounds:null,lastResolution:null,resFactor:2,updateBounds:function(){this.lastReadBounds=(this.map.getExtent().transform(this._projectedCs,this._wgs84)).clone();this.lastReadBounds=this.lastReadBounds.scale(2,this.lastReadBounds.getCenterLonLat());this.lastResolution=this.map.getResolution()},checkIfBoundsValid:function(currentMapBounds){if(!this.lastReadBounds){this.updateBounds()}else{var valid=this.lastReadBounds.containsBounds(currentMapBounds);if(valid&&this.resFactor){var ratio=this.lastResolution/this.map.getResolution();valid=!(ratio>=this.resFactor||ratio<=(1/this.resFactor))}if(!valid){this.updateBounds()}return valid}},refreshDataSchedule:null,refreshData:function(){if(!this.checkIfBoundsValid(this.map.getExtent().transform(this._projectedCs,this._wgs84))){var params={order:this._order,set:this._set,size:this._size,from:0,to:this._numOfPicsPulled,minx:this.lastReadBounds.left,miny:this.lastReadBounds.bottom,maxx:this.lastReadBounds.right,maxy:this.lastReadBounds.top,mapfilter:true};if(this._jsonp){this.events.triggerEvent("loadstart",{});params.callback="_panoramioLayerJsonPCallback";this._scriptProxy.read({params:params})}else{if(!OpenLayers.ProxyHost||OpenLayers.ProxyHost==""){}else{this.events.triggerEvent("loadstart",{});OpenLayers.loadURL(this._serviceUrl,params,this,this.refreshDataSuccessCallback,this.refreshDataFailureCallback)}}}},cleanScriptProxy:function(proxy){if(this._scriptProxy){for(s in this._scriptProxy.pendingRequests){this._scriptProxy.destroyRequest(this._scriptProxy.pendingRequests[s])}}},refreshDataSuccessCallback:function(response){var r=null;if(!response.responseText){this.cleanScriptProxy();r=response}else{if(response.responseText!=""){try{r=eval("("+response.responseText+")")}catch(e){}}}if(r){this.updatePhotos(r.photos)}this.events.triggerEvent("loadend",{})},refreshDataFailureCallback:function(response){this.events.triggerEvent("loadend",{})},updatePhotos:function(photos){var features=[];for(var p=0;p<photos.length;p++){features.push(new OpenLayers.Feature.Vector((new OpenLayers.Geometry.Point(photos[p].longitude,photos[p].latitude)).transform(this._wgs84,this._projectedCs),{upload_date:photos[p].upload_date,owner_name:photos[p].owner_name,photo_id:photos[p].photo_id,longitude:photos[p].longitude,latitude:photos[p].latitude,height:photos[p].height,width:photos[p].width,photo_title:photos[p].photo_title,owner_url:photos[p].owner_url,owner_id:photos[p].owner_id,photo_file_url:photos[p].photo_file_url,photo_file_url_icon:photos[p].photo_file_url.replace(this._size,this._panoramioMiniSquare),photo_url:photos[p].photo_url}))}this.removeAllFeatures();this.addFeatures(features)},afterAdd:function(){this.setMeUp();this.visibilityChangedCallback()},destroy:function(){this.cleanMyStuff();if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoDestroy){strategy.destroy()}}this.strategies=null}if(this.protocol){if(this.protocol.autoDestroy){this.protocol.destroy()}this.protocol=null}this.destroyFeatures();this.features=null;this.selectedFeatures=null;this.unrenderedFeatures=null;if(this.renderer){this.renderer.destroy()}this.renderer=null;this.geometryType=null;this.drawn=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments)},CLASS_NAME:"OpenLayers.Layer.Panoramio"})}});Ext.define("GeoMind.openLayers.layer.Vector4Service",{singleton:true,constructor:function(b){this.init()},init:function(){try{OpenLayers}catch(b){return}OpenLayers.Layer.Vector4Service=OpenLayers.Class(OpenLayers.Layer.Vector,{_sourceProjection:null,_cutOffLvl:8,_numOfFeaturesPulled:250,initialize:function(o,h){OpenLayers.Layer.Vector.prototype.initialize.apply(this,arguments);this.events.addEventType("loadstart");this.events.addEventType("loadend");this.events.addEventType("loadcancel");this.events.addEventType("removedata");this.events.addEventType("pulldata");this.events.addEventType("layercleanup");if(!this.renderer||!this.renderer.supported()){this.assignRenderer()}if(!this.renderer||!this.renderer.supported()){this.renderer=null;this.displayError()}this.styleContext={getFillColor:function(w){if(w.rec&&w.rec.get("fillColor")){return w.rec.get("fillColor")}else{return"#ee9900"}},getFillOpacity:function(w){if(w.rec){if(w.layer&&w.layer.layerRecord.get("publicInput")){if(w.layer&&w.layer.layerRecord.get("isInWireFrameMode")){return 0.5}else{return 1}}else{if(w.layer&&w.layer.layerRecord.get("isInWireFrameMode")){return 0.1}else{if(w.rec&&w.rec.get("fillOpacity")!=null){return w.rec.get("fillOpacity")/100}else{return 0.35}}}}},getStrokeColor:function(w){if(w.rec&&w.rec.get("strokeColor")){return w.rec.get("strokeColor")}else{return"#ee9900"}},getStrokeOpacity:function(w){if(w.layer&&w.layer.layerRecord.get("isInWireFrameMode")){return 0.75}else{if(w.rec&&w.rec.get("strokeOpacity")!=null){return w.rec.get("strokeOpacity")/100}else{return 1}}},getStrokeWidth:function(w){if(w.layer&&w.layer.layerRecord.get("isInWireFrameMode")){return 1}else{if(w.rec&&w.rec.get("strokeWidth")){return w.rec.get("strokeWidth")}else{return 1}}},getExternalGraphic:function(w){if(w.rec){if(w.layer){w._poiGraphicsFolder=w.layer._poiGraphicsFolder;w.publicInput=w.layer.layerRecord.get("publicInput")}if(w.layer&&w.layer.layerRecord.get("publicInput")){if(w.rec.get("_public_")){return w.layer._poiGraphicsFolder+"/"+w.layer.layerRecord.get("publicInputIcon")+".png"}else{return w.layer._poiGraphicsFolder+"/notpublic/"+w.layer.layerRecord.get("publicInputIcon")+".png"}}else{if(w.rec.get("externalGraphic")){if(w.rec.get("externalGraphic").indexOf("http://")>-1){return w.rec.get("externalGraphic")}else{if(w.layer){return w.layer._poiGraphicsFolder+"/"+w.rec.get("externalGraphic")+".png"}else{return"pois/information.png"}}}}}else{}},getPointRadius:function(w){if(w.rec){if(w.layer&&w.layer.layerRecord.get("publicInput")){if(w.layer.layerRecord.get("publicInputIconSize")!=null){return w.layer.layerRecord.get("publicInputIconSize")}else{return 10}}else{if(w.rec.get("pointRadius")){return w.rec.get("pointRadius")}else{return 5}}}else{return 5}}};this.styleMap=new OpenLayers.StyleMap({"default":new OpenLayers.Style(OpenLayers.Util.applyDefaults({fillColor:"${getFillColor}",strokeColor:"${getStrokeColor}",fillOpacity:"${getFillOpacity}",strokeOpacity:"${getStrokeOpacity}",strokeWidth:"${getStrokeWidth}",pointRadius:"${getPointRadius}"},OpenLayers.Feature.Vector.style["default"]),{context:this.styleContext}),withpoigraphic:new OpenLayers.Style(OpenLayers.Util.applyDefaults({fillOpacity:"${getFillOpacity}",pointRadius:"${getPointRadius}",externalGraphic:"${getExternalGraphic}"},OpenLayers.Feature.Vector.style["default"]),{context:this.styleContext})});if(!this.styleMap){this.styleMap=new OpenLayers.StyleMap()}this.features=[];this.selectedFeatures=[];this.unrenderedFeatures={};if(this.strategies){for(var q=0,g=this.strategies.length;q<g;q++){this.strategies[q].setLayer(this)}}},styleRenderIntentCheck:function(g){if(g.feature.layer.checkIfGeomIsPoint(g.feature.geometry)){if(g.feature.rec.get("externalGraphic")!=""||g.feature.layer.layerRecord.get("publicInput")){g.feature.renderIntent="withpoigraphic";g.feature.layer.eraseFeatures([g.feature]);g.feature.layer.drawFeature(g.feature)}}},checkIfGeomIsPoint:function(g){if(g.id.indexOf("Point")>0){return true}else{return false}},setMeUp:function(){this._wgs84=new OpenLayers.Projection("EPSG:4326");this._mapCs=this.map.getProjectionObject();this._wktParser=new OpenLayers.Format.WKT();this.events.register("visibilitychanged",this,this.visibilityChangedCallback);this.map.events.register("moveend",this,this.mapMoveZoomEndCallback);this.map.events.register("zoomend",this,this.mapMoveZoomEndCallback);this.events.register("featureunselected",this,this.styleRenderIntentCheck);if(this._useGlobalSelectControl){this._globalSelectControl.addLayer(this)}},_selectCallback:function(g){var z=g.feature;var A=false;var h=false;for(a in g.feature.attributes){A=true}for(a in g.feature.data){h=true}var w=z.layer;var q=z.rec;var o={auth:this._auth}},_unselectCallback:function(g){},cleanMyStuff:function(){this.events.triggerEvent("layercleanup");this.events.unregister("visibilitychanged",this,this.visibilityChangedCallback);this.map.events.unregister("moveend",this,this.mapMoveZoomEndCallback);this.map.events.unregister("zoomend",this,this.mapMoveZoomEndCallback);this.events.unregister("featureunselected",this,this.styleRenderIntentCheck)},visibilityChangedCallback:function(){if(this.getVisibility()){this.invalidateBounds();this.mapMoveZoomEndCallback()}else{if(!this.layerRecord.get("isInEditMode")){this.events.triggerEvent("removedata");this.removeAllFeatures()}}},calculateInRange:function(){if(this.layerRecord.get("canRead")){if(this.map.getZoom()>=this.layerRecord.get("minZoomLvl")){return true}else{this.layerRecord.set("disabled",true);return false}}},mapMoveZoomEndCallback:function(){var g=this;clearTimeout(this.refreshDataSchedule);if(this.getVisibility()){this.refreshDataSchedule=setTimeout(function(){if(g.map){g.refreshData()}},500)}},invalidateBounds:function(){this.lastReadBounds=null;this.lastResolution=null},lastReadBounds:null,lastResolution:null,resFactor:2,updateBounds:function(){this.lastReadBounds=(this.convertMapCsToLayerCs(this.map.getExtent())).clone();this.lastReadBounds=this.lastReadBounds.scale(2,this.lastReadBounds.getCenterLonLat());this.lastResolution=this.map.getResolution()},checkIfBoundsValid:function(g){if(!this.lastReadBounds){this.updateBounds()}else{var o=this.lastReadBounds.containsBounds(g);if(o&&this.resFactor){var h=this.lastResolution/this.map.getResolution();o=!(h>=this.resFactor||h<=(1/this.resFactor))}if(!o){this.updateBounds()}return o}},refreshDataSchedule:null,refreshData:function(){if(this.layerRecord.get("canRead")){if(!this.layerRecord.get("isInEditMode")){
1if(!this.checkIfBoundsValid(this.convertMapCsToLayerCs(this.map.getExtent()))){if(this.calculateInRange()){if(!this.drawn&&this.getVisibility()){this.redraw()}this.events.triggerEvent("pulldata",{bounds:this.lastReadBounds})}else{this.events.triggerEvent("removedata");this.removeAllFeatures()}}}}},convertLayerCsToMapCs:function(h){if(this._mapCs.projCode==this._sourceProjection.projCode){return h}else{var o=h.clone();return h.transform(this._sourceProjection,this._mapCs)}},convertMapCsToLayerCs:function(g){if(this._mapCs.projCode==this._sourceProjection.projCode){return g}else{return g.transform(this._mapCs,this._sourceProjection)}},afterAdd:function(){this.setMeUp();this.visibilityChangedCallback()},destroy:function(){this.cleanMyStuff();if(this.strategies){var o,h,g;for(h=0,g=this.strategies.length;h<g;h++){o=this.strategies[h];if(o.autoDestroy){o.destroy()}}this.strategies=null}if(this.protocol){if(this.protocol.autoDestroy){this.protocol.destroy()}this.protocol=null}this.destroyFeatures();this.features=null;this.selectedFeatures=null;this.unrenderedFeatures=null;if(this.renderer){this.renderer.destroy()}this.renderer=null;this.geometryType=null;this.drawn=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments)},CLASS_NAME:"OpenLayers.Layer.Vector4Service"})}});Ext.define("GeoMind.openLayers.layer.Wikipedia",{singleton:true,constructor:function(b){this.init()},init:function(){try{OpenLayers}catch(b){return}OpenLayers.Layer.Wikipedia=OpenLayers.Class(OpenLayers.Layer.Vector,{EVENT_TYPES:["loadstart","loadend","loadcancel"],_wikiImageFolderRelativePath:null,_wikiMarker:"wiki.png",_lang:"pl",_serviceUrl:"http://toolserver.org/~kolossos/geoworld/marks.php",_wgs84:null,_projectedCs:null,_useGlobalSelectControl:false,_elect:null,_popup:null,_proxyHost:null,_proxyHostWarning:"You need to set the OpenLayers.ProxyHost or a p_proxyHost property of the Wikipedia layer in order to use it!",_selectCallback:null,initialize:function(o,h){this.EVENT_TYPES=OpenLayers.Layer.Wikipedia.prototype.EVENT_TYPES.concat(OpenLayers.Layer.prototype.EVENT_TYPES);OpenLayers.Layer.prototype.initialize.apply(this,arguments);if(!this.renderer||!this.renderer.supported()){this.assignRenderer()}if(!this.renderer||!this.renderer.supported()){this.renderer=null;this.displayError()}if(this._proxyHost&&(!OpenLayers.ProxyHost||OpenLayers.ProxyHost=="")){OpenLayers.ProxyHost=this._proxyHost}if(!OpenLayers.ProxyHost||OpenLayers.ProxyHost==""){}if(!this._wikiImageFolderRelativePath){this._wikiImageFolderRelativePath=""}this._wikiMarker=this._wikiImageFolderRelativePath+this._wikiMarker;if(!this._selectCallback){this._selectCallback=this.defaultSelectCallback}var g=new OpenLayers.StyleMap(OpenLayers.Util.applyDefaults({pointRadius:10,fillOpacity:1,externalGraphic:this._wikiMarker},OpenLayers.Feature.Vector.style["default"]));this.styleMap=g;this.features=[];this.selectedFeatures=[];this.unrenderedFeatures={}},defaultSelectCallback:function(g){if(this._popup){this.map.removePopup(this._popup)}var q='style=" padding-top: 0.5em; padding-left: 0.5em; width:190px;height:250px; border:10px;"';var o="";var h='<div style="font-family: Arial, Helvetica, sans-serif;"><div style="font-weight: bold;">'+g.feature.attributes.name+"</div><div>"+g.feature.attributes.description.replace(q,o)+"</div>";this._popup=new OpenLayers.Popup.FramedCloud(g.feature.attributes.photo_id,new OpenLayers.LonLat(g.feature.geometry.x,g.feature.geometry.y),null,h,null,true);this.map.addPopup(this._popup)},setMeUp:function(){this._wgs84=new OpenLayers.Projection("EPSG:4326");this._projectedCs=this.map.getProjectionObject();this.events.register("visibilitychanged",this,this.visibilityChangedCallback);this.map.events.register("moveend",this,this.mapMoveZoomEndCallback);this.map.events.register("zoomend",this,this.mapMoveZoomEndCallback);if(!this._useGlobalSelectControl){if(this._select){this.map.removeControl(this._select)}this._select=new OpenLayers.Control.SelectFeature(this,{hover:false,highlightOnly:true});this._select.events.register("featurehighlighted",this,this._selectCallback);this.map.addControl(this._select);this._select.activate()}else{this._globalSelectControl.addLayer(this)}},cleanMyStuff:function(){if(this._popup){this.map.removePopup(this._popup)}this.events.unregister("visibilitychanged",this,this.visibilityChangedCallback);this.map.events.unregister("moveend",this,this.mapMoveZoomEndCallback);this.map.events.unregister("zoomend",this,this.mapMoveZoomEndCallback);if(!this._useGlobalSelectControl){if(this._select){this.map.removeControl(this._select)}
1}else{this._globalSelectControl.removeLayer(this)}},visibilityChangedCallback:function(){if(this.getVisibility()){this.mapMoveZoomEndCallback()}else{if(this._popup){this.map.removePopup(this._popup)}}},mapMoveZoomEndCallback:function(){var g=this;clearTimeout(this.refreshDataSchedule);if(this.getVisibility()){this.refreshDataSchedule=setTimeout(function(){if(g.map){g.refreshData()}},500)}},lastReadBounds:null,lastResolution:null,resFactor:2,updateBounds:function(){this.lastReadBounds=(this.map.getExtent().transform(this._projectedCs,this._wgs84)).clone();this.lastReadBounds=this.lastReadBounds.scale(2,this.lastReadBounds.getCenterLonLat());this.lastResolution=this.map.getResolution()},checkIfBoundsValid:function(g){if(!this.lastReadBounds){this.updateBounds()}else{var o=this.lastReadBounds.containsBounds(g);if(o&&this.resFactor){var h=this.lastResolution/this.map.getResolution();o=!(h>=this.resFactor||h<=(1/this.resFactor))}if(!o){this.updateBounds()}return o}},dataRequest:null,refreshDataSchedule:null,refreshData:function(){if(!this.checkIfBoundsValid(this.map.getExtent().transform(this._projectedCs,this._wgs84))){var g={lang:this._lang,bbox:this.lastReadBounds.left+","+this.lastReadBounds.bottom+","+this.lastReadBounds.right+","+this.lastReadBounds.top};if(!OpenLayers.ProxyHost||OpenLayers.ProxyHost==""){}else{this.events.triggerEvent("loadstart",{});if(this.dataRequest){this.dataRequest.abort()}this.dataRequest=OpenLayers.Request.GET({url:this._serviceUrl,params:g,scope:this,success:this.refreshDataSuccessCallback,failure:this.refreshDataFailureCallback})}}},refreshDataSuccessCallback:function(g){if(g.responseText!=""){this.updateMarkers(g.responseText)}this.events.triggerEvent("loadend",{})},refreshDataFailureCallback:function(g){this.events.triggerEvent("loadend",{})},xmlReader:null,updateMarkers:function(h){if(!this.kmlReader){this.kmlReader=new OpenLayers.Format.KML()}var g=this.kmlReader.read(h);var q=[];for(var o=0;o<g.length;o++){if(g[o].geometry){g[o].geometry.transform(this._wgs84,this._projectedCs);q.push(g[o])}}this.removeAllFeatures();this.addFeatures(q)},afterAdd:function(){this.setMeUp();this.visibilityChangedCallback()},destroy:function(){this.cleanMyStuff();if(this.strategies){var o,h,g;for(h=0,g=this.strategies.length;h<g;h++){o=this.strategies[h];if(o.autoDestroy){o.destroy()}}this.strategies=null}if(this.protocol){if(this.protocol.autoDestroy){this.protocol.destroy()}this.protocol=null}this.destroyFeatures();this.features=null;this.selectedFeatures=null;this.unrenderedFeatures=null;if(this.renderer){this.renderer.destroy()}this.renderer=null;this.geometryType=null;this.drawn=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments)},CLASS_NAME:"OpenLayers.Layer.Wikipedia"})}});Ext.define("GeoMind.search.agents.lang.Test",{strings:{name:{pl:"TEST search agent",en:"TEST QGis search agent"},shortName:{pl:"TEST",en:"TEST"}},errCodes:{}});Ext.define("GeoMind.search.Agent",{extend:GeoMind.base.Module,active:true,uuid:null,name:null,shortName:null,iconCls:null,settingsPanel:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.addEvents(["searchAgentSearchStart","searchAgentSearchEnd","searchAgentActiveChanged"]);this.uuid=GeoMind.utils.Generator.getUuid();this.createSettingsPanel()},createSettingsPanel:function(){this.checkbox=Ext.create(Ext.form.field.Checkbox,{boxLabel:this.lang.getString("active"),checked:this.active});this.checkbox.on("change",this.onCheckChange,this);this.statusBar=Ext.create("Ext.toolbar.Toolbar",{items:[{xtype:"tbtext",text:"<b>"+this.name+"</b>"},Ext.create("Ext.toolbar.Separator"),this.checkbox,"->"]});this.settingsPanel=Ext.create("Ext.panel.Panel",{title:this.shortName,iconCls:this.iconCls,layout:"fit",tbar:this.statusBar,border:false})},onCheckChange:function(h,o,b,g){this.active=o;var q={evtName:"searchAgentActiveChanged",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{agent:this}};this.dispatchEvent(q,{confirmationRequired:false})},setActive:function(b){this.checkbox.setValue(b);if(!b){this.reportSearchStart();this.reportSearchEnd([])}},cleanUp:function(){console.warn("cleaning up agent")},setUp:function(b){console.warn("setting up agent")},doSearch:function(b){this.resetSearch()},resetSearch:function(){},searchInProgress:false,reportSearchStart:function(){this.searchInProgress=true;var b={evtName:"searchAgentSearchStart",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{agent:this}};this.dispatchEvent(b,{confirmationRequired:false})},reportSearchEnd:function(b){if(this.searchInProgress){this.searchInProgress=false;var g={evtName:"searchAgentSearchEnd",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{agent:this,searchResults:b}};this.dispatchEvent(g,{confirmationRequired:false})}},_onSearchRequest:function(b){this.doSearch(b.data.phrase)},_onSearchReset:function(b){this.resetSearch()}});Ext.define("GeoMind.search.agents.lang.Prng",{strings:{name:{pl:"PaÅstwowy Rejestr Nazw Geograficznych",en:"Polish Register of the Geographic Names"}
1,shortName:{pl:"PRNG",en:"PRNG"},active:{pl:"Aktywny",en:"Active"},numRecs:{pl:"Wyników:",en:"Results:"},noSettings:{pl:"Ten moduÅ nie oferuje dodatkowych ustawieÅ...",en:"This module does not expose additional settings..."}},errCodes:{}});Ext.define("GeoMind.search.agents.Prng",{extend:GeoMind.search.Agent,serviceUrl:"WebServices/Prng.asmx/",serviceMethods:{doSearch:"Search"},currentRequest:null,epsg2180:null,numRecs:25,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.search.agents.lang.Prng");this.name=this.lang.getString("name");this.shortName=this.lang.getString("shortName");this.iconCls="gm-search_prng";GeoMind.utils.Map.createProjectionDef("2180","+title=PUWG92 +proj=tmerc +lat_0=0 +lon_0=19 +k=0.9993 +x_0=500000 +y_0=-5300000 +ellps=GRS80 +units=m +no_defs");this.epsg2180=new OpenLayers.Projection("EPSG:2180");this.callParent([b]);this.createGui()},createGui:function(){this.statusBar.add(Ext.create("Ext.toolbar.Separator"));var g=Ext.create("Ext.form.field.ComboBox",{fieldLabel:this.lang.getString("numRecs"),labelWidth:50,width:125,valueField:"cnt",displayField:"cnt",store:Ext.create("Ext.data.Store",{fields:["cnt"],data:[{cnt:5},{cnt:10},{cnt:25},{cnt:50}]}),queryMode:"loacal",editable:false});g.setValue(this.numRecs);g.on("change",this.onNumRecsChange,this);this.statusBar.add(g);var b=Ext.create("Ext.panel.Panel",{bodyPadding:10,margins:"2 0 0 0",html:this.lang.getString("noSettings")});this.settingsPanel.add(b)},onNumRecsChange:function(o,h,b,g){this.numRecs=h},doSearch:function(b){if(!this.active){this.reportSearchStart();this.reportSearchEnd([]);return}this.resetSearch();this.currentRequest=Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.doSearch,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({phrase:b,numRecs:this.numRecs,ss:GeoMind.utils.SessionManager.ss}),success:Ext.bind(this.doSearchCallbackSuccess,this),failure:Ext.bind(this.doSearchCallbackFailure,this)});this.reportSearchStart()},doSearchCallbackSuccess:function(b){this.currentRequest=null;b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){var h=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"search_output");var o=[];if(h.total>0){for(d in h.values){var q=new OpenLayers.Bounds(h.values[d].xmin,h.values[d].ymin,h.values[d].xmax,h.values[d].ymax);if(this.map){var g=this.map.getProjectionObject();if(g.projCode!=this.epsg2180.projCode){q.transform(this.epsg2180,g)}}q.transform(this.epsg2180,g);o.push({agent_uuid:this.uuid,agent_name:this.name,groupper1:null,groupper2:null,display:h.values[d].name,geom_wkt:null,bbox_wkt:q.toGeometry().toString(),data:null})}}this.reportSearchEnd(o)}else{this.reportSearchEnd([])}},doSearchCallbackFailure:function(b){this.currentRequest=null;this.reportSearchEnd([])},resetSearch:function(){if(this.searchInProgress){if(this.currentRequest){Ext.Ajax.abort(this.currentRequest);this.currentRequest=null}this.reportSearchEnd([])}},cleanUp:function(){this.map=null},setUp:function(b){this.map=b}});Ext.define("GeoMind.search.agents.lang.QgisWms",{strings:{name:{pl:"QGIS WMS search agent",en:"QGIS WMS search agent"},shortName:{pl:"QGIS WMS",en:"QGIS WMS"},layersGrid:{pl:"Opublikowane warstwy WMS",en:"Published WMS layers"},qLayersGrid:{pl:"Warstwy odpytywalne",en:"Query layers"},columnsGrid:{pl:"Kolumny",en:"Columns"},netType:{pl:"Typ",en:"Type"},nodata:{pl:"Brak danych...",en:"No data..."},active:{pl:"Aktywny",en:"Active"},exact:{pl:"Precyzyjne",en:"Exact"},numRecs:{pl:"Wyników:",en:"Results:"}},errCodes:{}});Ext.define("GeoMind.search.agents.QgisWms",{extend:GeoMind.search.Agent,serviceUrl:"WebServices/QGisWmsSearch.asmx/",serviceMethods:{getLayersSearchConfig:"GetLayersSearchConfig",doSearch:"Search"},currentRequest:null,exact:false,numRecs:25,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.search.agents.lang.QgisWms");this.name=this.lang.getString("name");
1this.shortName=this.lang.getString("shortName");this.iconCls="gm-search_qgis";this.callParent([b]);this.createDataHolders();this.createGui()},createDataHolders:function(){var h=[{name:"uuid",type:"string",defaultValue:null,useNull:true},{name:"name",type:"string",defaultValue:null,useNull:true},{name:"url",type:"string",defaultValue:null,useNull:true},{name:"ql",type:"string",defaultValue:null,useNull:true},{name:"queryLayers",type:"auto",defaultValue:[]},{name:"checked",type:"boolean",defaultValue:true}];this.layersStore=Ext.create("Ext.data.Store",{fields:h,data:[]});var b=[{name:"name",type:"string",defaultValue:null,useNull:true},{name:"qdsc",type:"string",defaultValue:null,useNull:true},{name:"columns",type:"auto",defaultValue:[]},{name:"checked",type:"boolean",defaultValue:true}];this.qLayersStore=Ext.create("Ext.data.Store",{fields:b,data:[]});var g=[{name:"name",type:"string",defaultValue:null,useNull:true},{name:"netType",type:"string",defaultValue:null,useNull:true},{name:"checked",type:"boolean",defaultValue:true}];this.columnsStore=Ext.create("Ext.data.Store",{fields:g,data:[]})},resetStores:function(){this.layersStore.loadData([]);this.qLayersStore.loadData([]);this.columnsStore.loadData([])},createGui:function(){var b=Ext.create(Ext.form.field.Checkbox,{boxLabel:this.lang.getString("exact"),checked:this.exact});b.on("change",this.onExactCheckChange,this);this.statusBar.add(b);this.statusBar.add(Ext.create("Ext.toolbar.Separator"));var h=Ext.create("Ext.form.field.ComboBox",{fieldLabel:this.lang.getString("numRecs"),labelWidth:50,width:125,valueField:"cnt",displayField:"cnt",store:Ext.create("Ext.data.Store",{fields:["cnt"],data:[{cnt:5},{cnt:10},{cnt:25},{cnt:50}]}),queryMode:"loacal",editable:false});h.setValue(this.numRecs);h.on("change",this.onNumRecsChange,this);this.statusBar.add(h);this.layersGrid=Ext.create("Ext.grid.Panel",{title:this.lang.getString("layersGrid"),store:this.layersStore,columns:[{xtype:"checkcolumn",dataIndex:"checked",width:25,listeners:{checkchange:Ext.bind(this.autoCommit,this)}},{header:this.lang.getString("name"),dataIndex:"name",flex:1}],sortableColumns:false,enableColumnHide:false,viewConfig:{emptyText:this.lang.getString("nodata")},hideHeaders:true});this.layersGrid.on("select",this.onLayersGridSelect,this);this.layersGrid.on("afterrender",this.onLayersGridRender,this);this.qLayersGrid=Ext.create("Ext.grid.Panel",{title:this.lang.getString("qLayersGrid"),store:this.qLayersStore,columns:[{xtype:"checkcolumn",dataIndex:"checked",width:25,listeners:{checkchange:Ext.bind(this.autoCommit,this)}},{header:this.lang.getString("name"),dataIndex:"name",flex:1}],sortableColumns:false,enableColumnHide:false,viewConfig:{emptyText:this.lang.getString("nodata")},hideHeaders:true});this.qLayersGrid.on("select",this.onQLayersGridSelect,this);this.columnsGrid=Ext.create("Ext.grid.Panel",{title:this.lang.getString("columnsGrid"),store:this.columnsStore,columns:[{xtype:"checkcolumn",dataIndex:"checked",width:25,listeners:{checkchange:Ext.bind(this.autoCommit,this)}},{header:this.lang.getString("name"),dataIndex:"name",flex:1},{header:this.lang.getString("netType"),dataIndex:"netType",width:75}],sortableColumns:false,enableColumnHide:false,viewConfig:{emptyText:this.lang.getString("nodata")},hideHeaders:true});var g=Ext.create("Ext.container.Container",{layout:{type:"hbox",align:"stretch"},defaults:{margins:"2 2 2 2",flex:1},items:[this.layersGrid,this.qLayersGrid,this.columnsGrid]});this.settingsPanel.add(g)},onNumRecsChange:function(o,h,b,g){this.numRecs=h},onExactCheckChange:function(h,o,b,g){this.exact=o},autoCommit:function(){this.layersStore.commitChanges();this.qLayersStore.commitChanges();this.columnsStore.commitChanges()},onLayersGridRender:function(){if(this.layersStore.getCount()>0){var b=this;setTimeout(function(){b.layersGrid.getSelectionModel().select(0)},500)}},onLayersGridSelect:function(o,b,g,h){this.qLayersStore.loadRecords(b.get("queryLayers"));if(this.qLayersStore.getCount()>0){this.qLayersGrid.getSelectionModel().select(0)}},onQLayersGridSelect:function(o,b,g,h){this.columnsStore.loadRecords(b.get("columns"))},doSearch:function(b){if(!this.active){this.reportSearchStart();this.reportSearchEnd([]);return}this.resetSearch();var g=this.collectSearchableLayers();if(g.length>0){this.currentRequest=Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.doSearch,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({phrase:b,numRecs:this.numRecs,exact:this.exact,layers:g,ss:GeoMind.utils.SessionManager.ss}),success:Ext.bind(this.doSearchCallbackSuccess,this),failure:Ext.bind(this.doSearchCallbackFailure,this)});this.reportSearchStart()}},doSearchCallbackSuccess:function(b){this.currentRequest=null;b=GeoMind.utils.Ajax.fixResponse(b);if(b.success){var h=GeoMind.utils.Data.extractConfigObjectByKey(b.data,"search_output");var o=[];if(h&&h.length>0){for(d in h){var g=h[d].data;for(r in g){o.push({agent_uuid:this.uuid,agent_name:this.name,groupper1:h[d].name,groupper2:g[r].name,display:g[r].display,geom_wkt:g[r].geom_wkt,bbox_wkt:g[r].bbox_wkt,data:g[r].data})}}}this.reportSearchEnd(o)}else{this.reportSearchEnd([])}},doSearchCallbackFailure:function(b){this.currentRequest=null;this.reportSearchEnd([])},collectSearchableLayers:function(){var o=[];for(var h=0;h<this.layersStore.getCount();h++){var z=this.layersStore.getAt(h);if(z.get("checked")){var g=z.get("queryLayers");var w=[];for(ql in g){if(g[ql].get("checked")){var b=g[ql].get("columns");var q=[];for(c in b){if(b[c].get("checked")){q.push({name:b[c].get("name"),netType:b[c].get("netType")})}}if(q.length>0){w.push({name:g[ql].get("name"),qdsc:g[ql].get("qdsc"),columns:q})}}}if(w.length>0){o.push({name:z.get("name"),url:z.get("url"),uuid:z.get("uuid"),queryLayers:w})}}}return o},resetSearch:function(){if(this.searchInProgress){if(this.currentRequest){Ext.Ajax.abort(this.currentRequest);this.currentRequest=null}this.reportSearchEnd([])}},cleanUp:function(){this.unwireMapEvents();this.map=null;this.resetStores()},setUp:function(g){this.map=g;var b=[];for(l in this.map.layers){if(this.doICare(this.map.layers[l])){b.push(this.getLayerConfigQueryObject(this.map.layers[l]))}}this.getLayersSearchConfig(b);this.wireMapEvents()},getLayerConfigQueryObject:function(g){var b={uuid:g.record.get("uuid"),name:g.record.get("name"),url:this.extractSingleUrl(g.url),ql:g.params.QUERY_LAYERS};return b},wireMapEvents:function(){if(!this.map){return}this.map.events.register("addlayer",this,this.onLayerAdd);this.map.events.register("removelayer",this,this.onLayerRemove);this.map.events.register("changelayer",this,this.onLayerChange)},unwireMapEvents:function(){if(!this.map){return}this.map.events.unregister("addlayer",this,this.onLayerAdd);this.map.events.unregister("removelayer",this,this.onLayerRemove);this.map.events.unregister("changelayer",this,this.onLayerChange)},extractSingleUrl:function(g){var b="";if(g==undefined){return b}if(!Ext.isArray(g)){g=[g]}b=g[0];return b},getLayersSearchConfig:function(b){Ext.Ajax.request({url:this.serviceUrl+this.serviceMethods.getLayersSearchConfig,method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},params:Ext.JSON.encode({layers:b,ss:GeoMind.utils.SessionManager.ss}),success:Ext.bind(this.getLayersSearchConfigCallbackSuccess,this),failure:Ext.bind(this.getLayersSearchConfigCallbackFailure,this)})},getLayersSearchConfigCallbackSuccess:function(h){h=GeoMind.utils.Ajax.fixResponse(h);if(h.success){var o=GeoMind.utils.Data.extractConfigObjectByKey(h.data,"layers");if(!o){return}var D=[];for(d in o){var C=o[d].queryLayers;var q=[];for(ql in C){var z=new this.qLayersStore.model(C[ql]);var g=C[ql].columns;var A=[];
1for(c in g){A.push(new this.columnsStore.model(g[c]))}z.set("columns",A);q.push(z)}var w=new this.layersStore.model(o[d]);w.set("queryLayers",q);D.push(w)}var B=this.layersStore.getCount();this.layersStore.loadRecords(D,{addRecords:true});var b=this.layersStore.getCount();if(B+o.length==b&&b>0){this.layersGrid.getSelectionModel().select(0)}}},getLayersSearchConfigCallbackFailure:function(b){},onLayerAdd:function(g){var b=g.layer;if(this.doICare(b)){this.getLayersSearchConfig([this.getLayerConfigQueryObject(b)])}},onLayerRemove:function(g){var b=g.layer;if(this.doICare(b)){var h=this.layersStore.getAt(this.layersStore.find("uuid",b.record.get("uuid")));if(h){this.layersStore.remove(h);if(this.layersStore.getCount()>0){this.layersGrid.getSelectionModel().select(0)}else{this.qLayersStore.load([]);this.columnsStore.load([])}}}},onLayerChange:function(b){},doICare:function(b){var g=false;if(b.record&&b.record.get("layer_type_value")=="WMS"&&this.isQGis(b.url)){g=true}return g},isQGis:function(h){var b=false;var g=this.extractSingleUrl(h);if(g.toLowerCase().indexOf(".qgs")>-1){b=true}return b}});Ext.define("GeoMind.search.agents.Test",{extend:GeoMind.search.Agent,constructor:function(b){Ext.apply(this,b);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.search.agents.lang.Test");this.name=this.lang.getString("name");
1this.shortName=this.lang.getString("shortName");this.iconCls="gm-search_test";this.callParent([b])},doSearch:function(b){this.resetSearch()},resetSearch:function(){if(this.searchInProgress){this.searchInProgress=false;this.reportSearchEnd()}}});Ext.define("GeoMind.utils.Db",{singleton:true,engineToString:function(b){switch(b){case 1:return"PostgreSQL; PostGIS";break;case 2:return"MS SQL Seerver 2008 R2";break;default:return"";break}},sizeToString:function(b){if(b!=null){return Math.round(b/1024/1024)+"MB"}else{return""}}});Ext.define("GeoMind.utils.Loader",{singleton:true,constructor:function(){},load:function(B,A,C,h){if(!Ext.isArray(B)){B=[B]}var C=C||this,w=document.getElementsByTagName("head")[0],g=document.createDocumentFragment(),b=B.length,z=0,q=this;var D=function(E){w.appendChild(q.buildScriptTag(B[E],o))};var o=function(){z++;if(b==z&&typeof A=="function"){A.call(C)}else{if(h===true){D(z)}}};if(h===true){D.call(this,0)}else{Ext.each(B,function(F,E){g.appendChild(this.buildScriptTag(F,o))},this);w.appendChild(g)}},buildScriptTag:function(g,w){var h="?dc="+(new Date()).getTime();var q=g.substr(g.lastIndexOf(".")+1);if(q=="js"){var b=document.createElement("script");b.type="text/javascript";b.src=g+h;if(b.readyState){b.onreadystatechange=function(){if(b.readyState=="loaded"||b.readyState=="complete"){b.onreadystatechange=null;w()}}}else{b.onload=w}return b}if(q=="css"){var o=document.createElement("link");o.rel="stylesheet";o.type="text/css";o.href=g+h;w();return o}}});Ext.define("GeoMind.ux.Notification",{extend:Ext.window.Window,alias:"widget.uxNotification",cls:"ux-notification-window",autoClose:true,autoHeight:true,plain:false,draggable:false,shadow:false,focus:Ext.emptyFn,manager:null,useXAxis:false,position:"br",spacing:6,paddingX:30,paddingY:10,slideInAnimation:"easeIn",slideBackAnimation:"bounceOut",slideInDuration:1500,slideBackDuration:1000,hideDuration:500,autoCloseDelay:7000,stickOnClick:true,stickWhileHover:true,isHiding:false,readyToHide:false,destroyAfterHide:false,closeOnMouseOut:false,xPos:0,yPos:0,statics:{defaultManager:{el:null}},initComponent:function(){var b=this;if(Ext.isDefined(b.corner)){b.position=b.corner}if(Ext.isDefined(b.slideDownAnimation)){b.slideBackAnimation=b.slideDownAnimation}if(Ext.isDefined(b.autoDestroyDelay)){b.autoCloseDelay=b.autoDestroyDelay}if(Ext.isDefined(b.autoHideDelay)){b.autoCloseDelay=b.autoHideDelay}if(Ext.isDefined(b.autoHide)){b.autoClose=b.autoHide}if(Ext.isDefined(b.slideInDelay)){b.slideInDuration=b.slideInDelay}if(Ext.isDefined(b.slideDownDelay)){b.slideBackDuration=b.slideDownDelay}if(Ext.isDefined(b.fadeDelay)){b.hideDuration=b.fadeDelay}b.position=b.position.replace(/c/,"");b.updateAlignment(b.position);b.setManager(b.manager);b.callParent(arguments)},onRender:function(){var b=this;b.el.hover(function(){b.mouseIsOver=true},function(){b.mouseIsOver=false;if(b.closeOnMouseOut){b.closeOnMouseOut=false;b.close()}},b);this.callParent(arguments)},updateAlignment:function(b){var g=this;switch(b){case"br":g.paddingFactorX=-1;g.paddingFactorY=-1;g.siblingAlignment="br-br";if(g.useXAxis){g.managerAlignment="bl-br"}else{g.managerAlignment="tr-br"}break;case"bl":g.paddingFactorX=1;g.paddingFactorY=-1;g.siblingAlignment="bl-bl";if(g.useXAxis){g.managerAlignment="br-bl"}else{g.managerAlignment="tl-bl"}break;case"tr":g.paddingFactorX=-1;g.paddingFactorY=1;g.siblingAlignment="tr-tr";if(g.useXAxis){g.managerAlignment="tl-tr"}else{g.managerAlignment="br-tr"}break;case"tl":g.paddingFactorX=1;g.paddingFactorY=1;g.siblingAlignment="tl-tl";if(g.useXAxis){g.managerAlignment="tr-tl"}else{g.managerAlignment="bl-tl"}break;case"b":g.paddingFactorX=0;g.paddingFactorY=-1;g.siblingAlignment="b-b";g.useXAxis=0;g.managerAlignment="t-b";break;case"t":g.paddingFactorX=0;g.paddingFactorY=1;g.siblingAlignment="t-t";g.useXAxis=0;g.managerAlignment="b-t";break;case"l":g.paddingFactorX=1;g.paddingFactorY=0;g.siblingAlignment="l-l";g.useXAxis=1;g.managerAlignment="r-l";break;case"r":g.paddingFactorX=-1;g.paddingFactorY=0;g.siblingAlignment="r-r";g.useXAxis=1;g.managerAlignment="l-r";break}},getXposAlignedToManager:function(){var b=this;var g=0;if(b.manager&&b.manager.el&&b.manager.el.dom){if(!b.useXAxis){return b.el.getLeft()}else{if(b.position=="br"||b.position=="tr"||b.position=="r"){g+=b.manager.el.getAnchorXY("r")[0];
1g-=(b.el.getWidth()+b.paddingX)}else{g+=b.manager.el.getAnchorXY("l")[0];g+=b.paddingX}}}return g},getYposAlignedToManager:function(){var g=this;var b=0;if(g.manager&&g.manager.el&&g.manager.el.dom){if(g.useXAxis){return g.el.getTop()}else{if(g.position=="br"||g.position=="bl"||g.position=="b"){b+=g.manager.el.getAnchorXY("b")[1];b-=(g.el.getHeight()+g.paddingY)}else{b+=g.manager.el.getAnchorXY("t")[1];b+=g.paddingY}}}return b},getXposAlignedToSibling:function(b){var g=this;if(g.useXAxis){if(g.position=="tl"||g.position=="bl"||g.position=="l"){return(b.xPos+b.el.getWidth()+b.spacing)}else{return(b.xPos-g.el.getWidth()-g.spacing)}}else{return g.el.getLeft()}},getYposAlignedToSibling:function(b){var g=this;if(g.useXAxis){return g.el.getTop()}else{if(g.position=="tr"||g.position=="tl"||g.position=="t"){return(b.yPos+b.el.getHeight()+b.spacing)}else{return(b.yPos-g.el.getHeight()-b.spacing)}}},getNotifications:function(g){var b=this;if(!b.manager.notifications[g]){b.manager.notifications[g]=[]}return b.manager.notifications[g]},setManager:function(b){var g=this;g.manager=b;if(typeof g.manager=="string"){g.manager=Ext.getCmp(g.manager)}if(!g.manager){g.manager=g.statics().defaultManager;if(!g.manager.el){g.manager.el=Ext.getBody()}}if(typeof g.manager.notifications=="undefined"){g.manager.notifications={}}},beforeShow:function(){var b=this;if(b.stickOnClick){if(b.body&&b.body.dom){Ext.fly(b.body.dom).on("click",function(){b.cancelAutoClose();b.addCls("notification-fixed")},b)}}if(b.autoClose){b.task=new Ext.util.DelayedTask(b.doAutoClose,b);b.task.delay(b.autoCloseDelay)}b.el.setX(-10000);b.el.setOpacity(1)},afterShow:function(){var g=this;var b=g.getNotifications(g.managerAlignment);if(b.length){g.el.alignTo(b[b.length-1].el,g.siblingAlignment,[0,0]);g.xPos=g.getXposAlignedToSibling(b[b.length-1]);g.yPos=g.getYposAlignedToSibling(b[b.length-1])}else{g.el.alignTo(g.manager.el,g.managerAlignment,[(g.paddingX*g.paddingFactorX),(g.paddingY*g.paddingFactorY)],false);g.xPos=g.getXposAlignedToManager();g.yPos=g.getYposAlignedToManager()}Ext.Array.include(b,g);g.el.animate({to:{x:g.xPos,y:g.yPos,opacity:1},easing:g.slideInAnimation,duration:g.slideInDuration,dynamic:true});this.callParent(arguments)},slideBack:function(){var h=this;var g=h.getNotifications(h.managerAlignment);var b=Ext.Array.indexOf(g,h);if(!h.isHiding&&h.el&&h.manager&&h.manager.el&&h.manager.el.dom&&h.manager.el.isVisible()){if(b){h.xPos=h.getXposAlignedToSibling(g[b-1]);h.yPos=h.getYposAlignedToSibling(g[b-1])}else{h.xPos=h.getXposAlignedToManager();h.yPos=h.getYposAlignedToManager()}h.stopAnimation();h.el.animate({to:{x:h.xPos,y:h.yPos},easing:h.slideBackAnimation,duration:h.slideBackDuration,dynamic:true})}},cancelAutoClose:function(){var b=this;if(b.autoClose){b.task.cancel()}},doAutoClose:function(){var b=this;if(!(b.stickWhileHover&&b.mouseIsOver)){b.close()}else{b.closeOnMouseOut=true}},removeFromManager:function(){var h=this;if(h.manager){var g=h.getNotifications(h.managerAlignment);var b=Ext.Array.indexOf(g,h);if(b!=-1){Ext.Array.erase(g,b,1);for(;b<g.length;b++){g[b].slideBack()}}}},hide:function(){var b=this;if(!b.isHiding&&b.el){b.isHiding=true;b.cancelAutoClose();b.stopAnimation();b.el.animate({to:{opacity:0},easing:"easeIn",duration:b.hideDuration,dynamic:false,listeners:{afteranimate:function(){b.removeFromManager();b.readyToHide=true;b.hide(b.animateTarget,b.doClose,b)}}})}if(b.readyToHide){b.isHiding=false;b.readyToHide=false;b.removeCls("notification-fixed");b.callParent(arguments);if(b.destroyAfterHide){b.destroy()}}},destroy:function(){var b=this;if(!b.hidden){b.destroyAfterHide=true;b.hide(b.animateTarget,b.doClose,b)}else{b.callParent(arguments)}}});Ext.define("GeoMind.utils.Notification",{singleton:true,silent:true,test:function(){Ext.create("widget.uxNotification",{title:"Notification",position:"tr",manager:"instructions",cls:"ux-notification-light",iconCls:"ux-notification-icon-information",html:"Using bounceOut/easeIn animation effect.",autoCloseDelay:4000,slideBackDuration:500,slideInAnimation:"bounceOut",slideBackAnimation:"easeIn"}).show();Ext.create("widget.uxNotification",{title:"Notification",position:"tr",manager:"instructions",cls:"ux-notification-light",iconCls:"ux-notification-icon-information",html:"Using bounceOut/easeIn animation effect.",slideBackDuration:500,slideInAnimation:"bounceOut",slideBackAnimation:"easeIn"}).show()}});Ext.define("GeoMind.ux.HelpIcon",{extend:Ext.form.Label,alias:"widget.geomind.helpicon",iconCls:"gm-ux_helpicon_size gm-ux_helpicon",html:'<div class="{icon_class}"></div>',width:18,margins:"0 0 0 0",tipHtml:null,tipHeader:null,tipContent:null,readOnly:true,forceReadOnly:true,autoBind:false,autoTranslate:false,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.html=this.html.replace("{icon_class}",this.iconCls);var g="";if(this.tipHtml&&this.tipHtml!=""){g=this.tipHtml}else{if(this.tipHeader&&this.tipHeader!=null){g="<b>"+this.tipHeader+"</b>"}if(this.tipContent&&this.tipContent!=""){if(g!=""){g+="<br/>"}g+=this.tipContent}}if(g!=""){this.on("render",function(h){this.tooltip=new Ext.ToolTip({target:h.getEl(),html:g})},this)}else{this.hide()}},updateTooltipHtml:function(b){this.tooltip.update(b)}});Ext.define("GeoMind.ux.Spotlight",{mixins:[Ext.util.Observable],baseCls:"gm-spotlight",animate:true,duration:250,easing:null,active:false,hideOnClick:true,constructor:function(b){if(GeoMind.utils.InitCheckup.isExtJs){this.mixins["Ext.util.Observable"].constructor.call(this,b)}Ext.apply(this,b);this.addEvents(["spotlighthiderequest"])},createElements:function(){var h=this,g=h.baseCls,b=Ext.getBody();h.right=b.createChild({cls:g});h.left=b.createChild({cls:g});h.top=b.createChild({cls:g});h.bottom=b.createChild({cls:g});h.all=Ext.create("Ext.CompositeElement",[h.right,h.left,h.top,h.bottom])},show:function(g,o,b){var h=this;h.el=Ext.get(g);if(!h.right){h.createElements()}
1if(!h.active){h.all.setDisplayed("");h.active=true;Ext.EventManager.onWindowResize(h.syncSize,h);h.applyBounds(h.animate,false)}else{h.applyBounds(false,false)}if(h.hideOnClick){h.right.on("click",h.onClick,h);h.left.on("click",h.onClick,h);h.top.on("click",h.onClick,h);h.bottom.on("click",h.onClick,h)}},onClick:function(){this.fireEvent("spotlighthiderequest")},hide:function(h,b){var g=this;Ext.EventManager.removeResizeListener(g.syncSize,g);g.applyBounds(g.animate,true);if(g.hideOnClick){g.right.un("click",g.onClick,g);g.left.un("click",g.onClick,g);g.top.un("click",g.onClick,g);g.bottom.un("click",g.onClick,g)}},syncSize:function(){this.applyBounds(false,false)},applyBounds:function(b,z){var B=this,q=B.el.getBox(),w=Ext.Element.getViewWidth(true),h=Ext.Element.getViewHeight(true),o=0,g=false,D,C,A;D={right:{x:q.right,y:h,width:(w-q.right),height:0},left:{x:0,y:0,width:q.x,height:0},top:{x:w,y:0,width:0,height:q.y},bottom:{x:0,y:(q.y+q.height),width:0,height:(h-(q.y+q.height))+"px"}};C={right:{x:q.right,y:q.y,width:(w-q.right)+"px",height:(h-q.y)+"px"},left:{x:0,y:0,width:q.x+"px",height:(q.y+q.height)+"px"},top:{x:q.x,y:0,width:(w-q.x)+"px",height:q.y+"px"},bottom:{x:0,y:(q.y+q.height),width:(q.x+q.width)+"px",height:(h-(q.y+q.height))+"px"}};if(z){A=Ext.clone(D);D=C;C=A}if(b){Ext.Array.forEach(["right","left","top","bottom"],function(E){B[E].setBox(D[E]);B[E].animate({duration:B.duration,easing:B.easing,to:C[E]})},this)}else{Ext.Array.forEach(["right","left","top","bottom"],function(E){B[E].setBox(Ext.apply(D[E],C[E]));B[E].repaint()},this)}},destroy:function(){var b=this;Ext.destroy(b.right,b.left,b.top,b.bottom);delete b.el;delete b.all}});Ext.define("GeoMind.wfs.lang.Capabilities",{strings:{no_data_available:{pl:"Nie pobrano danych, lub odpytany serwis nie zwróciÅ danych",en:"None request have been made, or no data have been returned from requested service"},error_msg:{pl:'Nie powiodÅo siÄ odczytanie dokumentu "Capabilities" serwera WFS. ',en:'It was not possible to retrieve the "Capabilities" document of the WFS server. '},error_msg_exception:{pl:"Serwer zwróciÅ nastÄpujÄ
ce wyjÄ
tki: ",en:"Server returned the following exceptions: "},error_msg_exception_empty:{pl:"Serwer nie zwróciÅ opisu wyjÄ
tku.",en:"Server did not return a description of the exception."},error_msg_service_not_available:{pl:"Serwis nie jest dostÄpny.",en:"Service is not available."}},errCodes:{}});Ext.define("GeoMind.wfs.Capabilities",{extend:GeoMind.base.Module,lang:null,proxy:null,constructor:function(b){Ext.apply(this,b);this.callParent([b]);this.lang=GeoMind.lang.Lang.registerTranslations("GeoMind.wfs.lang.Capabilities");this.addEvents=["getCapabilitiesStarted","getCapabilitiesFinished"]},requestCapabilities:function(o,b,h){var z={SERVICE:"WFS",REQUEST:"GetCapabilities",sid:GeoMind.utils.SessionManager.ss.sessionId,lng:GeoMind.utils.SessionManager.ss.langCode};if(o.indexOf("?")==-1){o+="?"}var q=Ext.Object.fromQueryString(o.split("?")[1]);if(b){q.VERSION=b}var w={evtName:"getCapabilitiesStarted",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{}};this.dispatchEvent(w,{confirmationRequired:false});var g={capabilitiesUrl:o,predefinedServiceName:h};OpenLayers.Request.GET({url:this.proxy+o.split("?")[0]+"?",params:Ext.merge(q,z),success:Ext.bind(this.getCapabilitiesSuccess,this,g,true),failure:Ext.bind(this.getCapabilitiesFailure,this)})},getCapabilitiesSuccess:function(w,C){var F=false;var E=new OpenLayers.Format.WFSCapabilities({});try{var A=E.read(w.responseText);var o=w.responseText.split("xmlns:");var h=[];for(var z=1;z<o.length-1;z++){h.push(o[z].split("="))}if(A){if(!A.error){F=true}}if(!F){errorMsg=this.extractExceptionMsg(w.responseText,A)}}catch(B){if(B=="Can't find a WFSCapabilities parser for version 2.0.0"){var q=Ext.DomQuery;var D={};var g=q.select("FeatureTypeList/FeatureType",w.responseXML);D.featureTypes=g.map(function(G){return{name:q.selectValue("Name",G),title:q.selectValue("Title",G),srs:q.selectValue("DefaultCRS",G).replace(/urn:ogc:def:crs:(\w+):.+:(\w+)$/,"urn:ogc:def:crs:$1::$2")}});A={version:"2.0.0",featureTypeList:D,capability:{request:{getfeature:{href:""}}}};F=true}else{F=false}}var b={evtName:"getCapabilitiesFinished",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:F,capabilities:A,featureNSlookup:h,capabilitiesUrl:C.capabilitiesUrl,predefinedServiceName:C.predefinedServiceName,exceptionMsg:F==true?null:this.extractExceptionMsg(w.responseText,A)}};this.dispatchEvent(b,{confirmationRequired:false})},extractExceptionMsg:function(g,b){var q=this.lang.getString("error_msg");var o="";if(b&&b.error&&b.error.exceptionReport){var h=b.error.exceptionReport.exceptions;for(d in h){if(o.length>0){o+=", "}if(h[d].code){o+=h[d].code}if(h[d].text){if(h[d].code){o+=" ("+h[d].text+")"}else{o+=h[d].text}}}}else{if(g.toLowerCase().indexOf("html")>-1){o=GeoMind.utils.Html.extractTagContent(g,"body")}else{}}if(o.length>0){q+=this.lang.getString("error_msg_exception")+o}else{q+=this.lang.getString("error_msg_exception_empty")}return q},getCapabilitiesFailure:function(){var b={evtName:"getCapabilitiesFinished",evtInitiatingModule:this,evtSuperInitiatingModule:this,evtBroadcastingController:null,callback:null,data:{success:false,exceptionMsg:this.lang.getString("error_msg")+" "+this.lang.getString("error_msg_service_not_available")}};this.dispatchEvent(b,{confirmationRequired:false})},activate:function(){},deactivate:function(){},_onRequestCapabilitiesForUrl:function(b){if(b.data.url){this.requestCapabilities(b.data.url,b.data.version?b.data.version:null,b.data.name?b.data.name:null)}}});Ext.define("Ext.ux.BoxReorderer",{mixins:{observable:Ext.util.Observable},itemSelector:".x-box-item",animate:100,constructor:function(){this.addEvents("StartDrag","Drag","ChangeIndex","Drop");this.mixins.observable.constructor.apply(this,arguments)},init:function(b){var g=this;g.container=b;g.animatePolicy={};g.animatePolicy[b.getLayout().names.x]=true;g.container.on({scope:g,boxready:g.onBoxReady,beforedestroy:g.onContainerDestroy})},onContainerDestroy:function(){var b=this.dd;if(b){b.unreg();this.dd=null}}
1,onBoxReady:function(){var h=this,g=h.container.getLayout(),o=g.names,b;b=h.dd=Ext.create("Ext.dd.DD",g.innerCt,h.container.id+"-reorderer");Ext.apply(b,{animate:h.animate,reorderer:h,container:h.container,getDragCmp:h.getDragCmp,clickValidator:Ext.Function.createInterceptor(b.clickValidator,h.clickValidator,h,false),onMouseDown:h.onMouseDown,startDrag:h.startDrag,onDrag:h.onDrag,endDrag:h.endDrag,getNewIndex:h.getNewIndex,doSwap:h.doSwap,findReorderable:h.findReorderable});b.dim=o.width;b.startAttr=o.beforeX;b.endAttr=o.afterX},getDragCmp:function(b){return this.container.getChildByElement(b.getTarget(this.itemSelector,10))},clickValidator:function(g){var b=this.getDragCmp(g);return !!(b&&b.reorderable!==false)},onMouseDown:function(w){var q=this,b=q.container,o,g,h;q.dragCmp=q.getDragCmp(w);if(q.dragCmp){g=q.dragCmp.getEl();q.startIndex=q.curIndex=b.items.indexOf(q.dragCmp);h=g.getBox();q.lastPos=h[this.startAttr];o=b.el.getBox();if(q.dim==="width"){q.minX=o.left;q.maxX=o.right-h.width;q.minY=q.maxY=h.top;q.deltaX=w.getPageX()-h.left}else{q.minY=o.top;q.maxY=o.bottom-h.height;q.minX=q.maxX=h.left;q.deltaY=w.getPageY()-h.top}q.constrainY=q.constrainX=true}},startDrag:function(){var g=this,b=g.dragCmp;if(b){b.setPosition=Ext.emptyFn;b.animate=false;if(g.animate){g.container.getLayout().animatePolicy=g.reorderer.animatePolicy}g.dragElId=b.getEl().id;g.reorderer.fireEvent("StartDrag",g,g.container,b,g.curIndex);b.suspendEvents();b.disabled=true;b.el.setStyle("zIndex",100)}else{g.dragElId=null}},findReorderable:function(h){var o=this,b=o.container.items,g;if(b.getAt(h).reorderable===false){g=b.getAt(h);if(h>o.startIndex){while(g&&g.reorderable===false){h++;g=b.getAt(h)}}else{while(g&&g.reorderable===false){h--;g=b.getAt(h)}}}h=Math.min(Math.max(h,0),b.getCount()-1);if(b.getAt(h).reorderable===false){return -1}return h},doSwap:function(o){var w=this,g=w.container.items,b=w.container,q=w.container._isLayoutRoot,A,h,z;o=w.findReorderable(o);if(o===-1){return}w.reorderer.fireEvent("ChangeIndex",w,b,w.dragCmp,w.startIndex,o);A=g.getAt(w.curIndex);h=g.getAt(o);g.remove(A);z=Math.min(Math.max(o,0),g.getCount()-1);g.insert(z,A);g.remove(h);g.insert(w.curIndex,h);b._isLayoutRoot=true;b.updateLayout();b._isLayoutRoot=q;w.curIndex=o},onDrag:function(h){var g=this,b;b=g.getNewIndex(h.getPoint());if((b!==undefined)){g.reorderer.fireEvent("Drag",g,g.container,g.dragCmp,g.startIndex,g.curIndex);g.doSwap(b)}},endDrag:function(o){if(o){o.stopEvent()}var h=this,g=h.container.getLayout(),b;if(h.dragCmp){delete h.dragElId;delete h.dragCmp.setPosition;h.dragCmp.animate=true;h.dragCmp.lastBox[g.names.x]=h.dragCmp.getPosition(true)[g.names.widthIndex];h.container._isLayoutRoot=true;h.container.updateLayout();h.container._isLayoutRoot=undefined;b=Ext.fx.Manager.getFxQueue(h.dragCmp.el.id)[0];if(b){b.on({afteranimate:h.reorderer.afterBoxReflow,scope:h})}else{Ext.Function.defer(h.reorderer.afterBoxReflow,1,h)}if(h.animate){delete g.animatePolicy}h.reorderer.fireEvent("drop",h,h.container,h.dragCmp,h.startIndex,h.curIndex)}},afterBoxReflow:function(){var b=this;b.dragCmp.el.setStyle("zIndex","");b.dragCmp.disabled=false;b.dragCmp.resumeEvents()},getNewIndex:function(A){var z=this,b=z.getDragEl(),g=Ext.fly(b).getBox(),D,w,C,o=0,h=z.container.items.items,q=h.length,B=z.lastPos;z.lastPos=g[z.startAttr];for(;o<q;o++){D=h[o].getEl();if(D.is(z.reorderer.itemSelector)){w=D.getBox();C=w[z.startAttr]+(w[z.dim]>>1);if(o<z.curIndex){if((g[z.startAttr]<B)&&(g[z.startAttr]<(C-5))){return o}}else{if(o>z.curIndex){if((g[z.startAttr]>B)&&(g[z.endAttr]>(C+5))){return o}}}}}}});Ext.define("Ext.ux.CellDragDrop",{extend:Ext.AbstractPlugin,alias:"plugin.celldragdrop",enforceType:false,applyEmptyText:false,emptyText:"",dropBackgroundColor:"green",noDropBackgroundColor:"red",dragText:"{0} selected row{1}",ddGroup:"GridDD",enableDrop:true,enableDrag:true,containerScroll:false,init:function(b){var g=this;b.on("render",g.onViewRender,g,{single:true})},destroy:function(){var b=this;Ext.destroy(b.dragZone,b.dropZone)},enable:function(){var b=this;if(b.dragZone){b.dragZone.unlock()}if(b.dropZone){b.dropZone.unlock()}b.callParent()},disable:function(){var b=this;if(b.dragZone){b.dragZone.lock()}if(b.dropZone){b.dropZone.lock()}b.callParent()},onViewRender:function(b){var g=this,h;if(g.enableDrag){if(g.containerScroll){h=b.getEl()}g.dragZone=new Ext.view.DragZone({view:b,ddGroup:g.dragGroup||g.ddGroup,dragText:g.dragText,containerScroll:g.containerScroll,scrollEl:h,getDragData:function(B){var w=this.view,A=B.getTarget(w.getItemSelector()),q=w.getRecord(A),z=B.getTarget(w.getCellSelector()),o;if(A){o=document.createElement("div");o.className="x-form-text";o.appendChild(document.createTextNode(z.textContent||z.innerText));return{event:new Ext.EventObjectImpl(B),ddel:o,item:B.target,columnName:w.getGridColumns()[z.cellIndex].dataIndex,record:q}}},onInitDrag:function(q,D){var A=this,C=A.dragData,z=A.view,o=z.getSelectionModel(),w=C.record,B=C.ddel;if(!o.isSelected(w)){o.select(w,true)}A.ddel.update(B.textContent||B.innerText);A.proxy.update(A.ddel.dom);A.onStartDrag(q,D);return true}})}if(g.enableDrop){g.dropZone=new Ext.dd.DropZone(b.el,{view:b,ddGroup:g.dropGroup||g.ddGroup,containerScroll:true,getTargetFromEvent:function(A){var w=this,q=w.view,o=A.getTarget(q.cellSelector),B,z;if(o){B=q.findItemByChild(o);z=o.cellIndex;if(B&&Ext.isDefined(z)){return{node:o,record:q.getRecord(B),columnName:w.view.up("grid").columns[z].dataIndex}}}},onNodeEnter:function(C,o,B,A){var q=this,z=C.record.fields.get(C.columnName).type.type.toUpperCase(),w=A.record.fields.get(A.columnName).type.type.toUpperCase();delete q.dropOK;if(!C||C.node===A.item.parentNode){return}if(g.enforceType&&z!==w){q.dropOK=false;if(g.noDropCls){Ext.fly(C.node).addCls(g.noDropCls)}else{Ext.fly(C.node).applyStyles({backgroundColor:g.noDropBackgroun
1dColor})}return false}q.dropOK=true;if(g.dropCls){Ext.fly(C.node).addCls(g.dropCls)}else{Ext.fly(C.node).applyStyles({backgroundColor:g.dropBackgroundColor})}},onNodeOver:function(z,o,w,q){return this.dropOK?this.dropAllowed:this.dropNotAllowed},onNodeOut:function(A,o,z,w){var q=this.dropOK?g.dropCls:g.noDropCls;if(q){Ext.fly(A.node).removeCls(q)}else{Ext.fly(A.node).applyStyles({backgroundColor:""})}},onNodeDrop:function(z,o,w,q){if(this.dropOK){z.record.set(z.columnName,q.record.get(q.columnName));if(g.applyEmptyText){q.record.set(q.columnName,g.emptyText)}return true}},onCellDrop:Ext.emptyFn})}}});Ext.define("Ext.ux.DataTip",function(q){function h(){var w=this.isXType("panel")?this.body:this.el;if(this.dataTip.renderToTarget){this.dataTip.render(w)}this.dataTip.setTarget(w)}function b(z,w){if(z.rendered){if(z.host.fireEvent("beforeshowtip",z.eventHost,z,w)===false){return false}z.update(w)}else{if(Ext.isString(w)){z.html=w}else{z.data=w}}}function o(z){var A=this.view.getRecord(z.triggerElement),w;if(A){w=z.initialConfig.data?Ext.apply(z.initialConfig.data,A.data):A.data;return b(z,w)}else{return false}}function g(w){var z=Ext.getCmp(w.triggerElement.id);if(z&&(z.tooltip||w.tpl)){return b(w,z.tooltip||z)}else{return false}}return{extend:Ext.tip.ToolTip,mixins:{plugin:Ext.AbstractPlugin},alias:"plugin.datatip",lockableScope:"both",constructor:function(w){var z=this;z.callParent([w]);z.mixins.plugin.constructor.call(z,w)},init:function(z){var w=this;w.mixins.plugin.init.call(w,z);z.dataTip=w;w.host=z;if(z.isXType("tablepanel")){w.view=z.getView();if(z.ownerLockable){w.host=z.ownerLockable}w.delegate=w.delegate||w.view.getDataRowSelector();w.on("beforeshow",o)}else{if(z.isXType("dataview")){w.view=w.host;w.delegate=w.delegate||z.itemSelector;w.on("beforeshow",o)}else{if(z.isXType("form")){w.delegate="."+Ext.form.Labelable.prototype.formItemCls;w.on("beforeshow",g)}else{if(z.isXType("combobox")){w.view=z.getPicker();w.delegate=w.delegate||w.view.getItemSelector();w.on("beforeshow",o)}}}}if(z.rendered){h.call(z)}else{z.onRender=Ext.Function.createSequence(z.onRender,h)}}}});Ext.ux.DataViewTransition=Ext.extend(Object,{defaults:{duration:750,idProperty:"id"},constructor:function(b){Ext.apply(this,b||{},this.defaults)},init:function(b){this.dataview=b;var g=this.idProperty;b.blockRefresh=true;b.updateIndexes=Ext.Function.createSequence(b.updateIndexes,function(){this.getTargetEl().select(this.itemSelector).each(function(o,q,h){o.id=o.dom.id=Ext.util.Format.format("{0}-{1}",b.id,b.store.getAt(h).get(g))},this)},b);this.dataviewID=b.id;this.cachedStoreData={};this.cacheStoreData(b.store.snapshot);b.store.on("datachanged",function(E){var C=b.getTargetEl(),w=E.getAt(0),G=this.getAdded(E),O=this.getRemoved(E),z=this.getRemaining(E),L=Ext.apply({},z,G);Ext.each(O,function(T){Ext.fly(this.dataviewID+"-"+T.get(this.idProperty)).animate({remove:false,duration:h,opacity:0,useDisplay:true})},this);if(w==undefined){this.cacheStoreData(E);return}var q=Ext.get(this.dataviewID+"-"+w.get(this.idProperty));var Q=E.getCount(),B=q.getMargin("lr")+q.getWidth(),M=q.getMargin("bt")+q.getHeight(),I=C.getWidth(),o=Math.floor(I/B),H=Math.ceil(Q/o),R=Math.ceil(this.getExistingCount()/o);C.applyStyles({display:"block",position:"relative"});var A={},S={},J={};Ext.iterate(z,function(V,U){var V=U.get(this.idProperty),T=J[V]=Ext.get(this.dataviewID+"-"+V);A[V]={top:T.getY()-C.getY()-T.getMargin("t")-C.getPadding("t"),left:T.getX()-C.getX()-T.getMargin("l")-C.getPadding("l")}},this);Ext.iterate(z,function(W,V){var T=A[W],U=J[W];if(U.getStyle("position")!="absolute"){J[W].applyStyles({position:"absolute",left:T.left+"px",top:T.top+"px",width:U.getWidth(!Ext.isIE||Ext.isStrict),height:U.getHeight(!Ext.isIE||Ext.isStrict)})}});var F=0;Ext.iterate(E.data.items,function(V){var Z=V.get(g),U=J[Z];var T=F%o,Y=Math.floor(F/o),X=Y*M,W=T*B;S[Z]={top:X,left:W};F++},this);var K=new Date(),h=this.duration,D=this.dataviewID;var P=function(){var ac=new Date()-K,ae=ac/h;if(ae>=1){for(var T in S){Ext.fly(D+"-"+T).applyStyles({top:S[T].top+"px",left:S[T].left+"px"})}Ext.TaskManager.stop(N)}else{for(var T in S){if(!z[T]){continue}var W=A[T],Z=S[T],X=W.top,aa=Z.top,V=W.left,ab=Z.left,Y=ae*Math.abs(X-aa),ad=ae*Math.abs(V-ab),af=X>aa?X-Y:X+Y,U=V>ab?V-ad:V+ad;Ext.fly(D+"-"+T).applyStyles({top:af+"px",left:U+"px"})}}};var N={run:P,interval:20,scope:this};Ext.TaskManager.start(N);Ext.iterate(G,function(U,T){Ext.fly(this.dataviewID+"-"+T.get(this.idProperty)).applyStyles({top:S[T.get(this.idProperty)].top+"px",left:S[T.get(this.idProperty)].left+"px"});Ext.fly(this.dataviewID+"-"+T.get(this.idProperty)).animate({remove:false,duration:h,opacity:1})},this);this.cacheStoreData(E)},this)},cacheStoreData:function(b){this.cachedStoreData={};b.each(function(g){this.cachedStoreData[g.get(this.idProperty)]=g},this)},getExisting:function(){return this.cachedStoreData}
1,getExistingCount:function(){var h=0,g=this.getExisting();for(var b in g){h++}return h},getAdded:function(b){var g={};b.each(function(h){if(this.cachedStoreData[h.get(this.idProperty)]==undefined){g[h.get(this.idProperty)]=h}},this);return g},getRemoved:function(b){var g=[];for(var h in this.cachedStoreData){if(b.findExact(this.idProperty,Number(h))==-1){g.push(this.cachedStoreData[h])}}return g},getRemaining:function(b){var g={};b.each(function(h){if(this.cachedStoreData[h.get(this.idProperty)]!=undefined){g[h.get(this.idProperty)]=h}},this);return g}});Ext.define("Ext.ux.DataView.Animated",{defaults:{duration:750,idProperty:"id"},constructor:function(b){Ext.apply(this,b||{},this.defaults)},init:function(b){this.dataview=b;var g=b.store;b.blockRefresh=true;b.updateIndexes=Ext.Function.createSequence(b.updateIndexes,function(){this.getTargetEl().select(this.itemSelector).each(function(q,w,o){q.id=q.dom.id=Ext.util.Format.format("{0}-{1}",b.id,g.getAt(o).internalId)},this)},b);this.dataviewID=b.id;this.cachedStoreData={};this.cacheStoreData(g.data||g.snapshot);b.on("resize",function(){var o=b.store;if(o.getCount()>0){}},this);b.store.on("datachanged",h,this);function h(G){var D=b.getTargetEl(),z=G.getAt(0),I=this.getAdded(G),Q=this.getRemoved(G),A=this.getRemaining(G);if(!D){return}if(Ext.isIEQuirks){D.applyStyles({zoom:1,display:"block",position:"relative"})}Ext.each(Q,function(T){var U=this.dataviewID+"-"+T.internalId;Ext.fly(U).animate({remove:false,duration:o,opacity:0,useDisplay:true,callback:function(){Ext.fly(U).setDisplayed(false)}})},this);if(z==undefined){this.cacheStoreData(G);return}this.cacheStoreData(G);var w=Ext.get(this.dataviewID+"-"+z.internalId);if(!w){b.refresh();return true}var C=w.getMargin("lr")+w.getWidth(),O=w.getMargin("bt")+w.getHeight(),K=D.dom.clientWidth,q=Math.floor(K/C),E=this.dataview.getHierarchyState().rtl,J=E?"right":"left",N;var B={},S={},L={};Ext.iterate(A,function(V,U){var V=U.internalId,T=L[V]=Ext.get(this.dataviewID+"-"+V);B[V]={top:T.getY()-D.getY()-T.getMargin("t")-D.getPadding("t")};B[V][J]=this.getItemX(T)},this);Ext.iterate(A,function(W,V){var T=B[W],U=L[W];if(U.getStyle("position")!="absolute"){N={position:"absolute",top:T.top+"px"};N[J]=T[J]+"px";L[W].applyStyles(N)}});var H=0;Ext.iterate(G.data.items,function(U){var Y=U.internalId,T=H%q,X=Math.floor(H/q),W=X*O,V=T*C;S[Y]={top:W};S[Y][J]=V;H++},this);var M=new Date(),o=this.duration,F=this.dataviewID;var R=function(){var ac=new Date()-M,ae=ac/o,T;if(ae>=1){for(T in S){N={top:S[T].top+"px"};N[J]=S[T][J]+"px";Ext.fly(F+"-"+T).applyStyles(N)}Ext.TaskManager.stop(P)}else{for(T in S){if(!A[T]){continue}var W=B[T],Z=S[T],X=W.top,aa=Z.top,V=W[J],ab=Z[J],Y=ae*Math.abs(X-aa),ad=ae*Math.abs(V-ab),af=X>aa?X-Y:X+Y,U=V>ab?V-ad:V+ad;N={top:af+"px"};N[J]=U+"px";Ext.fly(F+"-"+T).applyStyles(N).setDisplayed(true)}}};var P={run:R,interval:20,scope:this};Ext.TaskManager.start(P);Ext.iterate(I,function(U,T){N={top:S[T.internalId].top+"px"};N[J]=S[T.internalId][J]+"px";Ext.fly(this.dataviewID+"-"+T.internalId).applyStyles(N).setDisplayed(true);Ext.fly(this.dataviewID+"-"+T.internalId).animate({remove:false,duration:o,opacity:1})},this);this.cacheStoreData(G)}},getItemX:function(g){var h=this.dataview.getHierarchyState().rtl,b=g.up("");if(h){return b.getViewRegion().right-g.getRegion().right+g.getMargin("r")}else{return g.getX()-b.getX()-g.getMargin("l")-b.getPadding("l")}},cacheStoreData:function(b){this.cachedStoreData={};b.each(function(g){this.cachedStoreData[g.internalId]=g},this)},getExisting:function(){return this.cachedStoreData},getExistingCount:function(){var h=0,g=this.getExisting();for(var b in g){h++}return h},getAdded:function(b){var g={};b.each(function(h){if(this.cachedStoreData[h.internalId]==undefined){g[h.internalId]=h}},this);return g},getRemoved:function(b){var g=[],h;for(h in this.cachedStoreData){if(b.findBy(function(o){return o.internalId==h})==-1){g.push(this.cachedStoreData[h])}}return g},getRemaining:function(b){var g={};b.each(function(h){if(this.cachedStoreData[h.internalId]!=undefined){g[h.internalId]=h}},this);return g}});Ext.define("Ext.ux.DataView.DragSelector",{init:function(b){this.dataview=b;
1b.mon(b,{beforecontainerclick:this.cancelClick,scope:this,render:{fn:this.onRender,scope:this,single:true}})},onRender:function(){this.tracker=Ext.create("Ext.dd.DragTracker",{dataview:this.dataview,el:this.dataview.el,dragSelector:this,onBeforeStart:this.onBeforeStart,onStart:this.onStart,onDrag:this.onDrag,onEnd:this.onEnd});this.dragRegion=Ext.create("Ext.util.Region")},onBeforeStart:function(b){return b.target==this.dataview.getEl().dom},onStart:function(g){var h=this.dragSelector,b=this.dataview;this.dragging=true;h.fillRegions();h.getProxy().show();b.getSelectionModel().deselectAll()},cancelClick:function(){return !this.tracker.dragging},onDrag:function(C){var g=this.dragSelector,B=g.dataview.getSelectionModel(),H=g.dragRegion,G=g.bodyRegion,E=g.getProxy(),w=g.regions,h=w.length,D=this.startXY,J=this.getXY(),q=Math.min(D[0],J[0]),o=Math.min(D[1],J[1]),b=Math.abs(D[0]-J[0]),I=Math.abs(D[1]-J[1]),F,z,A;Ext.apply(H,{top:o,left:q,right:q+b,bottom:o+I});H.constrainTo(G);E.setRegion(H);for(A=0;A<h;A++){F=w[A];z=H.intersect(F);if(z){B.select(A,true)}else{B.deselect(A)}}},onEnd:Ext.Function.createDelayed(function(h){var b=this.dataview,g=b.getSelectionModel(),o=this.dragSelector;this.dragging=false;o.getProxy().hide()},1),getProxy:function(){if(!this.proxy){this.proxy=this.dataview.getEl().createChild({tag:"div",cls:"x-view-selector"})}return this.proxy},fillRegions:function(){var b=this.dataview,g=this.regions=[];b.all.each(function(h){g.push(h.getRegion())});this.bodyRegion=b.getEl().getRegion()}});Ext.define("Ext.ux.DataView.Draggable",{ghostCls:"x-dataview-draggable-ghost",ghostTpl:['<tpl for=".">',"{title}","</tpl>"],init:function(b,g){this.dataview=b;b.on("render",this.onRender,this);Ext.apply(this,{itemSelector:b.itemSelector,ghostConfig:{}},g||{});Ext.applyIf(this.ghostConfig,{itemSelector:"img",cls:this.ghostCls,tpl:this.ghostTpl})},onRender:function(){var b=Ext.apply({},this.ddConfig||{},{dvDraggable:this,dataview:this.dataview,getDragData:this.getDragData,getTreeNode:this.getTreeNode,afterRepair:this.afterRepair,getRepairXY:this.getRepairXY});this.dragZone=Ext.create("Ext.dd.DragZone",this.dataview.getEl(),b)},getDragData:function(z){var b=this.dvDraggable,g=this.dataview,h=g.getSelectionModel(),w=z.getTarget(b.itemSelector),o,q;if(w){if(!g.isSelected(w)){h.select(g.getRecord(w))}o=g.getSelectedNodes();q={copy:true,nodes:o,records:h.getSelection(),item:true};if(o.length==1){q.single=true;q.ddel=w}else{q.multi=true;q.ddel=b.prepareGhost(h.getSelection()).dom}return q}return false},getTreeNode:function(){},afterRepair:function(){this.dragging=false;var b=this.dragData.nodes,h=b.length,g;for(g=0;g<h;g++){Ext.get(b[g]).frame("#8db2e3",1)}},getRepairXY:function(h){if(this.dragData.multi){return false}else{var b=Ext.get(this.dragData.ddel),g=b.getXY();g[0]+=b.getPadding("t")+b.getMargin("t");g[1]+=b.getPadding("l")+b.getMargin("l");return g}},prepareGhost:function(g){var h=this.createGhost(g),b=h.store;b.removeAll();b.add(g);return h.getEl()},createGhost:function(g){if(!this.ghost){var b=Ext.apply({},this.ghostConfig,{store:Ext.create("Ext.data.Store",{model:g[0].modelName})});this.ghost=Ext.create("Ext.view.View",b);this.ghost.render(document.createElement("div"))}return this.ghost}});Ext.define("Ext.ux.DataView.LabelEditor",{extend:Ext.Editor,alignment:"tl-tl",completeOnEnter:true,cancelOnEsc:true,shim:false,autoSize:{width:"boundEl",height:"field"},labelSelector:"x-editable",constructor:function(b){b.field=b.field||Ext.create("Ext.form.field.Text",{allowOnlyWhitespace:false,selectOnFocus:true});this.callParent([b])},init:function(b){this.view=b;this.mon(b,"afterrender",this.bindEvents,this);this.on("complete",this.onSave,this)},bindEvents:function(){this.mon(this.view.getEl(),{click:{fn:this.onClick,scope:this}})},onClick:function(q,o){var h=this,g,b;if(Ext.fly(o).hasCls(h.labelSelector)&&!h.editing&&!q.ctrlKey&&!q.shiftKey){q.stopEvent();g=h.view.findItemByChild(o);b=h.view.store.getAt(h.view.indexOf(g));h.startEdit(o,b.data[h.dataIndex]);h.activeRecord=b}else{if(h.editing){h.field.blur();q.preventDefault()}}},onSave:function(b,g){this.activeRecord.set(this.dataIndex,g)}});Ext.define("Ext.ux.FieldReplicator",{singleton:true,init:function(b){if(!b.replicatorId){b.replicatorId=Ext.id()}b.on("blur",this.onBlur,this)},onBlur:function(q){var g=q.ownerCt,o=q.replicatorId,z=Ext.isEmpty(q.getRawValue()),w=g.query("[replicatorId="+o+"]"),h=w[w.length-1]===q,A,b;
1if(z&&!h){Ext.Function.defer(q.destroy,10,q)}else{if(!z&&h){if(q.onReplicate){q.onReplicate()}A=q.cloneConfig({replicatorId:o});b=g.items.indexOf(q);g.add(b+1,A)}}}});Ext.define("Ext.ux.GMapPanel",{extend:Ext.panel.Panel,alias:"widget.gmappanel",initComponent:function(){Ext.applyIf(this,{plain:true,gmapType:"map",border:false});this.callParent()},onBoxReady:function(){var b=this.center;this.callParent(arguments);if(b){if(b.geoCodeAddr){this.lookupCode(b.geoCodeAddr,b.marker)}else{this.createMap(b)}}else{Ext.Error.raise("center is required")}},createMap:function(b,g){var h=Ext.apply({},this.mapOptions);h=Ext.applyIf(h,{zoom:14,center:b,mapTypeId:google.maps.MapTypeId.HYBRID});this.gmap=new google.maps.Map(this.body.dom,h);if(g){this.addMarker(Ext.applyIf(g,{position:b}))}Ext.each(this.markers,this.addMarker,this);this.fireEvent("mapready",this,this.gmap)},addMarker:function(b){b=Ext.apply({map:this.gmap},b);if(!b.position){b.position=new google.maps.LatLng(b.lat,b.lng)}var g=new google.maps.Marker(b);Ext.Object.each(b.listeners,function(h,o){google.maps.event.addListener(g,h,o)});return g},lookupCode:function(g,b){this.geocoder=new google.maps.Geocoder();this.geocoder.geocode({address:g},Ext.Function.bind(this.onLookupComplete,this,[b],true))},onLookupComplete:function(h,g,b){if(g!="OK"){Ext.MessageBox.alert("Error",'An error occured: "'+g+'"');return}this.createMap(h[0].geometry.location,b)},afterComponentLayout:function(b,g){this.callParent(arguments);this.redraw()},redraw:function(){var b=this.gmap;if(b){google.maps.event.trigger(b,"resize")}}});Ext.define("Ext.ux.GroupTabRenderer",{alias:"plugin.grouptabrenderer",extend:Ext.AbstractPlugin,tableTpl:new Ext.XTemplate('<div id="{view.id}-body" class="'+Ext.baseCSSPrefix+"{view.id}-table "+Ext.baseCSSPrefix+'grid-table-resizer" style="{tableStyle}">',"{%","values.view.renderRows(values.rows, values.viewStartIndex, out);","%}","</div>",{priority:5}),rowTpl:new Ext.XTemplate("{%",'Ext.Array.remove(values.itemClasses, "',Ext.baseCSSPrefix+'grid-row");','var dataRowCls = values.recordIndex === -1 ? "" : " '+Ext.baseCSSPrefix+'grid-data-row";',"%}",'<div {[values.rowId ? ("id=\\"" + values.rowId + "\\"") : ""]} ','data-boundView="{view.id}" ','data-recordId="{record.internalId}" ','data-recordIndex="{recordIndex}" ','class="'+Ext.baseCSSPrefix+'grouptab-row {[values.itemClasses.join(" ")]} {[values.rowClasses.join(" ")]}{[dataRowCls]}" ',"{rowAttr:attributes}>",'<tpl for="columns">{%',"parent.view.renderCell(values, parent.record, parent.recordIndex, parent.rowIndex, xindex - 1, out, parent)","%}","</tpl>","</div>",{priority:5}),cellTpl:new Ext.XTemplate('{%values.tdCls = values.tdCls.replace(" '+Ext.baseCSSPrefix+'grid-cell "," ");%}','<div class="'+Ext.baseCSSPrefix+'grouptab-cell {tdCls}" {tdAttr}>','<div {unselectableAttr} class="'+Ext.baseCSSPrefix+'grid-cell-inner" style="text-align: {align}; {style};">{value}</div>','<div class="x-grouptabs-corner x-grouptabs-corner-top-left"></div>','<div class="x-grouptabs-corner x-grouptabs-corner-bottom-left"></div>',"</div>",{priority:5}),selectors:{bodySelector:"div."+Ext.baseCSSPrefix+"grid-table-resizer",nodeContainerSelector:"div."+Ext.baseCSSPrefix+"grid-table-resizer",itemSelector:"div."+Ext.baseCSSPrefix+"grouptab-row",dataRowSelector:"div."+Ext.baseCSSPrefix+"grouptab-row",cellSelector:"div."+Ext.baseCSSPrefix+"grouptab-cell",getCellSelector:function(b){return b?b.getCellSelector():this.cellSelector}},init:function(g){var b=g.getView(),h=this;b.addTableTpl(h.tableTpl);b.addRowTpl(h.rowTpl);b.addCellTpl(h.cellTpl);Ext.apply(b,h.selectors)}});Ext.define("Ext.ux.GroupTabPanel",{extend:Ext.Container,alias:"widget.grouptabpanel",baseCls:Ext.baseCSSPrefix+"grouptabpanel",initComponent:function(b){var g=this;Ext.apply(g,b);g.store=g.createTreeStore();g.layout={type:"hbox",align:"stretch"};g.defaults={border:false};g.items=[{xtype:"treepanel",cls:"x-tree-panel x-grouptabbar",width:150,rootVisible:false,store:g.store,hideHeaders:true,animate:false,processEvent:Ext.emptyFn,border:false,plugins:[{ptype:"grouptabrenderer"}],viewConfig:{overItemCls:"",getRowClass:g.getRowClass},columns:[{xtype:"treecolumn",sortable:false,dataIndex:"text",flex:1,renderer:function(C,o,B,A,z,w,h){var q="";if(B.parentNode&&B.parentNode.parentNode===null){q+=" x-grouptab-first";if(B.previousSibling){q+=" x-grouptab-prev"}if(!B.get("expanded")||B.firstChild==null){q+=" x-grouptab-last"}}else{if(B.nextSibling===null){q+=" x-grouptab-last"}else{q+=" x-grouptab-center"}}if(B.data.activeTab){q+=" x-active-tab"}o.tdCls="x-grouptab"+q;return C}}]},{xtype:"container",flex:1,layout:"card",activeItem:g.mainItem,baseCls:Ext.baseCSSPrefix+"grouptabcontainer",items:g.cards}];g.addEvents("beforetabchange","tabchange","beforegroupchange","groupchange");g.callParent(arguments);g.setActiveTab(g.activeTab);g.setActiveGroup(g.activeGroup);g.mon(g.down("treepanel").getSelectionModel(),"select",g.onNodeSelect,g)},getRowClass:function(o,q,h,g){var b="";if(o.data.activeGroup){b+=" x-active-group"}return b},onNodeSelect:function(b,q){var o=this,g=o.store.getRootNode(),h;if(q.parentNode&&q.parentNode.parentNode===null){h=q}else{h=q.parentNode}
1if(o.setActiveGroup(h.get("id"))===false||o.setActiveTab(q.get("id"))===false){return false}while(g){g.set("activeTab",false);g.set("activeGroup",false);g=g.firstChild||g.nextSibling||g.parentNode.nextSibling}h.set("activeGroup",true);h.eachChild(function(w){w.set("activeGroup",true)});q.set("activeTab",true);b.view.refresh()},setActiveTab:function(g){var b=this,o=g,h;if(Ext.isString(g)){o=Ext.getCmp(o)}if(o===b.activeTab){return false}h=b.activeTab;if(b.fireEvent("beforetabchange",b,o,h)!==false){b.activeTab=o;if(b.rendered){b.down("container[baseCls="+Ext.baseCSSPrefix+"grouptabcontainer]").getLayout().setActiveItem(o)}b.fireEvent("tabchange",b,o,h)}return true},setActiveGroup:function(h){var g=this,o=h,b;if(Ext.isString(h)){o=Ext.getCmp(o)}if(o===g.activeGroup){return true}b=g.activeGroup;if(g.fireEvent("beforegroupchange",g,o,b)!==false){g.activeGroup=o;g.fireEvent("groupchange",g,o,b)}else{return false}return true},createTreeStore:function(){var g=this,b=g.prepareItems(g.items),h={text:".",children:[]},o=g.cards=[];g.activeGroup=g.activeGroup||0;Ext.each(b,function(z,q){var A=z.items.items,w=(A[z.mainItem]||A[0]),B={children:[]};B.id=w.id;B.text=w.title;B.iconCls=w.iconCls;B.expanded=true;B.activeGroup=(g.activeGroup===q);B.activeTab=B.activeGroup?true:false;if(B.activeTab){g.activeTab=B.id}if(B.activeGroup){g.mainItem=z.mainItem||0;g.activeGroup=B.id}Ext.each(A,function(C){if(C.id!==B.id){var D={id:C.id,leaf:true,text:C.title,iconCls:C.iconCls,activeGroup:B.activeGroup,activeTab:false};B.children.push(D)}delete C.title;delete C.iconCls;o.push(C)});h.children.push(B)});return Ext.create("Ext.data.TreeStore",{fields:["id","text","activeGroup","activeTab"],root:{expanded:true},proxy:{type:"memory",data:h}})},getActiveTab:function(){return this.activeTab},getActiveGroup:function(){return this.activeGroup}}); 2/*! 3 * Ext JS Library 4.0 4 * Copyright(c) 2006-2011 Sencha Inc. 5 * [email protected] 6 * http://www.sencha.com/license 7 */ 8Ext.define("Ext.ux.IFrame",{extend:Ext.Component,alias:"widget.uxiframe",loadMask:"Loading...",src:"about:blank",renderTpl:['<iframe src="{src}" name="{frameName}" width="100%" height="100%" frameborder="0"></iframe>'],initComponent:function(){this.callParent();this.frameName=this.frameName||this.id+"-frame";this.addEvents("beforeload","load");Ext.apply(this.renderSelectors,{iframeEl:"iframe"})},initEvents:function(){var b=this;b.callParent();b.iframeEl.on("load",b.onLoad,b)},initRenderData:function(){return Ext.apply(this.callParent(),{src:this.src,frameName:this.frameName})},getBody:function(){var b=this.getDoc();return b.body||b.documentElement},getDoc:function(){try{return this.getWin().document}catch(b){return null}},getWin:function(){var g=this,b=g.frameName,h=Ext.isIE?g.iframeEl.dom.contentWindow:window.frames[b];return h},getFrame:function(){var b=this;return b.iframeEl.dom},beforeDestroy:function(){this.cleanupListeners(true);this.callParent()},cleanupListeners:function(h){var g,o;if(this.rendered){try{g=this.getDoc();if(g){Ext.EventManager.removeAll(g);if(h){for(o in g){if(g.hasOwnProperty&&g.hasOwnProperty(o)){delete g[o]}}}}}catch(b){}}},onLoad:function(){var g=this,o=g.getDoc(),b=g.onRelayedEvent;if(o){try{Ext.EventManager.removeAll(o);Ext.EventManager.on(o,{mousedown:b,mousemove:b,mouseup:b,click:b,dblclick:b,scope:g})}catch(h){}Ext.EventManager.on(this.getWin(),"beforeunload",g.cleanupListeners,g);this.el.unmask();this.fireEvent("load",this)}else{if(g.src&&g.src!=""){this.el.unmask();this.fireEvent("error",this)}}},onRelayedEvent:function(h){var g=this.iframeEl,o=Ext.Element.getTrueXY(g),q=h.getXY(),b=Ext.EventManager.getPageXY(h.browserEvent);h.xy=[o[0]+b[0],o[1]+b[1]];h.injectEvent(g);h.xy=q},load:function(o){var b=this,h=b.loadMask,g=b.getFrame();if(b.fireEvent("beforeload",b,o)!==false){if(h&&b.el){b.el.mask(h)}g.src=b.src=(o||b.src)}}});Ext.define("Ext.ux.statusbar.StatusBar",{extend:Ext.toolbar.Toolbar,alternateClassName:"Ext.ux.StatusBar",alias:"widget.statusbar",cls:"x-statusbar",busyIconCls:"x-status-busy",busyText:"Loading...",autoClear:5000,emptyText:" 
8",activeThreadId:0,initComponent:function(){var b=this.statusAlign==="right";this.callParent(arguments);this.currIconCls=this.iconCls||this.defaultIconCls;this.statusEl=Ext.create("Ext.toolbar.TextItem",{cls:"x-status-text "+(this.currIconCls||""),text:this.text||this.defaultText||""});if(b){this.cls+=" x-status-right";this.add("->");this.add(this.statusEl)}else{this.insert(0,this.statusEl);this.insert(1,"->")}},setStatus:function(q){var b=this;q=q||{};Ext.suspendLayouts();if(Ext.isString(q)){q={text:q}}if(q.text!==undefined){b.setText(q.text)}if(q.iconCls!==undefined){b.setIcon(q.iconCls)}if(q.clear){var w=q.clear,h=b.autoClear,g={useDefaults:true,anim:true};if(Ext.isObject(w)){w=Ext.applyIf(w,g);if(w.wait){h=w.wait}}else{if(Ext.isNumber(w)){h=w;w=g}else{if(Ext.isBoolean(w)){w=g}}}w.threadId=this.activeThreadId;Ext.defer(b.clearStatus,h,b,[w])}Ext.resumeLayouts(true);return b},clearStatus:function(w){w=w||{};var h=this,g=h.statusEl;if(w.threadId&&w.threadId!==h.activeThreadId){return h}var q=w.useDefaults?h.defaultText:h.emptyText,b=w.useDefaults?(h.defaultIconCls?h.defaultIconCls:""):"";if(w.anim){g.el.puff({remove:false,useDisplay:true,callback:function(){g.el.show();h.setStatus({text:q,iconCls:b})}})}else{h.setStatus({text:q,iconCls:b})}return h},setText:function(g){var b=this;b.activeThreadId++;b.text=g||"";if(b.rendered){b.statusEl.setText(b.text)}return b},getText:function(){return this.text},setIcon:function(b){var g=this;g.activeThreadId++;b=b||"";if(g.rendered){if(g.currIconCls){g.statusEl.removeCls(g.currIconCls);g.currIconCls=null}if(b.length>0){g.statusEl.addCls(b);g.currIconCls=b}}else{g.currIconCls=b}return g},showBusy:function(b){if(Ext.isString(b)){b={text:b}}b=Ext.applyIf(b||{},{text:this.busyText,iconCls:this.busyIconCls});return this.setStatus(b)}});Ext.define("Ext.ux.LiveSearchGridPanel",{extend:Ext.grid.Panel,searchValue:null,indexes:[],currentIndex:null,searchRegExp:null,caseSensitive:false,regExpMode:false,matchCls:"x-livesearch-match",defaultStatusText:"Nothing Found",initComponent:function(){var b=this;b.tbar=["Search",{xtype:"textfield",name:"searchField",hideLabel:true,width:200,listeners:{change:{fn:b.onTextFieldChange,scope:this,buffer:500}}},{xtype:"button",text:"<",tooltip:"Find Previous Row",handler:b.onPreviousClick,scope:b},{xtype:"button",text:">",tooltip:"Find Next Row",handler:b.onNextClick,scope:b},"-",{xtype:"checkbox",hideLabel:true,margin:"0 0 0 4px",handler:b.regExpToggle,scope:b},"Regular expression",{xtype:"checkbox",hideLabel:true,margin:"0 0 0 4px",handler:b.caseSensitiveToggle,scope:b},"Case sensitive"];b.bbar=Ext.create("Ext.ux.StatusBar",{defaultText:b.defaultStatusText,name:"searchStatusBar"});b.callParent(arguments)},afterRender:function(){var b=this;b.callParent(arguments);b.textField=b.down("textfield[name=searchField]");b.statusBar=b.down("statusbar[name=searchStatusBar]")},tagsRe:/<[^>]*>/gm,tagsProtect:"\x0f",regExpProtect:/\\|\/|\+|\\|\.|\[|\]|\{|\}|\?|\$|\*|\^|\|/gm,getSearchValue:function(){var g=this,h=g.textField.getValue();if(h===""){return null}if(!g.regExpMode){h=h.replace(g.regExpProtect,function(o){return"\\"+o})}
8else{try{new RegExp(h)}catch(b){g.statusBar.setStatus({text:b.message,iconCls:"x-status-error"});return null}if(h==="^"||h==="$"){return null}}return h},onTextFieldChange:function(){var g=this,b=0;g.view.refresh();g.statusBar.setStatus({text:g.defaultStatusText,iconCls:""});g.searchValue=g.getSearchValue();g.indexes=[];g.currentIndex=null;if(g.searchValue!==null){g.searchRegExp=new RegExp(g.searchValue,"g"+(g.caseSensitive?"":"i"));g.store.each(function(q,o){var A=Ext.fly(g.view.getNode(o)).down("td"),h,z,w;while(A){h=A.down(".x-grid-cell-inner");z=h.dom.innerHTML.match(g.tagsRe);w=h.dom.innerHTML.replace(g.tagsRe,g.tagsProtect);w=w.replace(g.searchRegExp,function(B){b+=1;if(Ext.Array.indexOf(g.indexes,o)===-1){g.indexes.push(o)}if(g.currentIndex===null){g.currentIndex=o}return'<span class="'+g.matchCls+'">'+B+"</span>"});Ext.each(z,function(B){w=w.replace(g.tagsProtect,B)});h.dom.innerHTML=w;A=A.next()}},g);if(g.currentIndex!==null){g.getSelectionModel().select(g.currentIndex);g.statusBar.setStatus({text:b+" matche(s) found.",iconCls:"x-status-valid"})}}if(g.currentIndex===null){g.getSelectionModel().deselectAll()}g.textField.focus()},onPreviousClick:function(){var g=this,b;if((b=Ext.Array.indexOf(g.indexes,g.currentIndex))!==-1){g.currentIndex=g.indexes[b-1]||g.indexes[g.indexes.length-1];g.getSelectionModel().select(g.currentIndex)}},onNextClick:function(){var g=this,b;if((b=Ext.Array.indexOf(g.indexes,g.currentIndex))!==-1){g.currentIndex=g.indexes[b+1]||g.indexes[0];g.getSelectionModel().select(g.currentIndex)}},caseSensitiveToggle:function(g,b){this.caseSensitive=b;this.onTextFieldChange()},regExpToggle:function(g,b){this.regExpMode=b;this.onTextFieldChange()}});Ext.define("Ext.ux.PreviewPlugin",{extend:Ext.AbstractPlugin,alias:"plugin.preview",hideBodyCls:"x-grid-row-body-hidden",bodyField:"",previewExpanded:true,setCmp:function(g){this.callParent(arguments);var b=this.bodyField,o=this.hideBodyCls,h=[{ftype:"rowbody",getAdditionalData:function(C,w,A,D,z){var q=Ext.grid.feature.RowBody.prototype.getAdditionalData,B={rowBody:C[b],rowBodyCls:g.previewExpanded?"":o};if(q){Ext.apply(B,q.apply(this,arguments))}return B}},{ftype:"rowwrap"}];g.previewExpanded=this.previewExpanded;if(!g.features){g.features=[]}g.features=h.concat(g.features)},toggleExpanded:function(g){var b=this.getCmp();this.previewExpanded=b.previewExpanded=g;b.refresh()}});Ext.define("Ext.ux.ProgressBarPager",{width:225,defaultText:"Loading...",defaultAnimCfg:{duration:1000,easing:"bounceOut"},constructor:function(b){if(b){Ext.apply(this,b)}},init:function(g){var b;if(g.displayInfo){this.parent=g;b=g.child("#displayItem");if(b){g.remove(b,true)}this.progressBar=Ext.create("Ext.ProgressBar",{text:this.defaultText,width:this.width,animate:this.defaultAnimCfg,style:{cursor:"pointer"},listeners:{el:{scope:this,click:this.handleProgressBarClick}}});g.displayItem=this.progressBar;g.add(g.displayItem);Ext.apply(g,this.parentOverrides)}},handleProgressBarClick:function(A){var q=this.parent,h=q.displayItem,w=this.progressBar.getBox(),z=A.getXY(),g=z[0]-w.x,b=Math.ceil(q.store.getTotalCount()/q.pageSize),o=Math.max(Math.ceil(g/(h.width/b)),1);q.store.loadPage(o)},parentOverrides:{updateInfo:function(){if(this.displayItem){var o=this.store.getCount(),g=this.getPageData(),h=o===0?this.emptyMsg:Ext.String.format(this.displayMsg,g.fromRecord,g.toRecord,this.store.getTotalCount()),b=g.pageCount>0?(g.currentPage/g.pageCount):0;this.displayItem.updateProgress(b,h,this.animate||this.defaultAnimConfig)}}}});Ext.define("Ext.ux.SlidingPager",{constructor:function(b){if(b){Ext.apply(this,b)}},init:function(g){var b=g.items.indexOf(g.child("#inputItem")),h;Ext.each(g.items.getRange(b-2,b+2),function(o){o.hide()});h=Ext.create("Ext.slider.Single",{width:114,minValue:1,maxValue:1,hideLabel:true,tipText:function(o){return Ext.String.format("Page <b>{0}</b> of <b>{1}</b>",o.value,o.slider.maxValue)},listeners:{changecomplete:function(q,o){g.store.loadPage(o)}}});g.insert(b+1,h);g.on({change:function(o,q){h.setMaxValue(q.pageCount);h.setValue(q.currentPage)}})}});Ext.define("Ext.ux.Spotlight",{baseCls:"x-spotlight",animate:true,duration:250,easing:null,active:false,constructor:function(b){Ext.apply(this,b)},createElements:function(){var h=this,g=h.baseCls,b=Ext.getBody();h.right=b.createChild({cls:g});h.left=b.createChild({cls:g});h.top=b.createChild({cls:g});h.bottom=b.createChild({cls:g});h.all=Ext.create("Ext.CompositeElement",[h.right,h.left,h.top,h.bottom])},show:function(g,o,b){var h=this;h.el=Ext.get(g);if(!h.right){h.createElements()}
8if(!h.active){h.all.setDisplayed("");h.active=true;Ext.EventManager.onWindowResize(h.syncSize,h);h.applyBounds(h.animate,false)}else{h.applyBounds(false,false)}},hide:function(h,b){var g=this;Ext.EventManager.removeResizeListener(g.syncSize,g);g.applyBounds(g.animate,true)},syncSize:function(){this.applyBounds(false,false)},applyBounds:function(b,z){var B=this,q=B.el.getBox(),w=Ext.Element.getViewWidth(true),h=Ext.Element.getViewHeight(true),o=0,g=false,D,C,A;D={right:{x:q.right,y:h,width:(w-q.right),height:0},left:{x:0,y:0,width:q.x,height:0},top:{x:w,y:0,width:0,height:q.y},bottom:{x:0,y:(q.y+q.height),width:0,height:(h-(q.y+q.height))+"px"}};C={right:{x:q.right,y:q.y,width:(w-q.right)+"px",height:(h-q.y)+"px"},left:{x:0,y:0,width:q.x+"px",height:(q.y+q.height)+"px"},top:{x:q.x,y:0,width:(w-q.x)+"px",height:q.y+"px"},bottom:{x:0,y:(q.y+q.height),width:(q.x+q.width)+"px",height:(h-(q.y+q.height))+"px"}};if(z){A=Ext.clone(D);D=C;C=A}if(b){Ext.Array.forEach(["right","left","top","bottom"],function(E){B[E].setBox(D[E]);B[E].animate({duration:B.duration,easing:B.easing,to:C[E]})},this)}else{Ext.Array.forEach(["right","left","top","bottom"],function(E){B[E].setBox(Ext.apply(D[E],C[E]));B[E].repaint()},this)}},destroy:function(){var b=this;Ext.destroy(b.right,b.left,b.top,b.bottom);delete b.el;delete b.all}});Ext.define("Ext.ux.TabCloseMenu",{alias:"plugin.tabclosemenu",mixins:{observable:Ext.util.Observable},closeTabText:"Close Tab",showCloseOthers:true,closeOthersTabsText:"Close Other Tabs",showCloseAll:true,closeAllTabsText:"Close All Tabs",extraItemsHead:null,extraItemsTail:null,constructor:function(b){this.addEvents("aftermenu","beforemenu");this.mixins.observable.constructor.call(this,b)},init:function(b){this.tabPanel=b;this.tabBar=b.down("tabbar");this.mon(this.tabPanel,{scope:this,afterlayout:this.onAfterLayout,single:true})},onAfterLayout:function(){this.mon(this.tabBar.el,{scope:this,contextmenu:this.onContextMenu,delegate:".x-tab"})},onBeforeDestroy:function(){Ext.destroy(this.menu);this.callParent(arguments)},onContextMenu:function(o,w){var h=this,z=h.createMenu(),q=true,A=true,g=h.tabBar.getChildByElement(w),b=h.tabBar.items.indexOf(g);h.item=h.tabPanel.getComponent(b);z.child("#close").setDisabled(!h.item.closable);if(h.showCloseAll||h.showCloseOthers){h.tabPanel.items.each(function(B){if(B.closable){q=false;if(B!=h.item){A=false;return false}}return true});if(h.showCloseAll){z.child("#closeAll").setDisabled(q)}if(h.showCloseOthers){z.child("#closeOthers").setDisabled(A)}}o.preventDefault();h.fireEvent("beforemenu",z,h.item,h);z.showAt(o.getXY())},createMenu:function(){var g=this;if(!g.menu){var b=[{itemId:"close",text:g.closeTabText,scope:g,handler:g.onClose}];if(g.showCloseAll||g.showCloseOthers){b.push("-")}if(g.showCloseOthers){b.push({itemId:"closeOthers",text:g.closeOthersTabsText,scope:g,handler:g.onCloseOthers})}if(g.showCloseAll){b.push({itemId:"closeAll",text:g.closeAllTabsText,scope:g,handler:g.onCloseAll})}if(g.extraItemsHead){b=g.extraItemsHead.concat(b)}if(g.extraItemsTail){b=b.concat(g.extraItemsTail)}g.menu=Ext.create("Ext.menu.Menu",{items:b,listeners:{hide:g.onHideMenu,scope:g}})}return g.menu},onHideMenu:function(){var b=this;b.fireEvent("aftermenu",b.menu,b)},onClose:function(){this.tabPanel.remove(this.item)},onCloseOthers:function(){this.doClose(true)},onCloseAll:function(){this.doClose(false)},doClose:function(g){var b=[];this.tabPanel.items.each(function(h){if(h.closable){if(!g||h!=this.item){b.push(h)}}},this);Ext.suspendLayouts();Ext.Array.forEach(b,function(h){this.tabPanel.remove(h)},this);Ext.resumeLayouts(true)}});Ext.define("Ext.ux.TabReorderer",{extend:Ext.ux.BoxReorderer,itemSelector:".x-tab",init:function(g){var b=this;b.callParent([g.getTabBar()]);g.onAdd=Ext.Function.createSequence(g.onAdd,b.onAdd)},onBoxReady:function(){var h,b,g=0,o;this.callParent(arguments);for(h=this.container.items.items,b=h.length;g<b;g++){o=h[g];if(o.card){o.reorderable=o.card.reorderable}}},onAdd:function(g,b){g.tab.reorderable=g.reorderable},afterBoxReflow:function(){var b=this;Ext.ux.BoxReorderer.prototype.afterBoxReflow.apply(b,arguments);if(b.dragCmp){b.container.tabPanel.setActiveTab(b.dragCmp.card);b.container.tabPanel.move(b.startIndex,b.curIndex)}}});Ext.ns("Ext.ux");Ext.define("Ext.ux.TabScrollerMenu",{alias:"plugin.tabscrollermenu",pageSize:10,maxText:15,menuPrefixText:"Items",constructor:function(b){Ext.apply(this,b)},init:function(g){var b=this;b.tabPanel=g;g.on({render:function(){b.tabBar=g.tabBar;b.layout=b.tabBar.layout;b.layout.overflowHandler.handleOverflow=Ext.Function.bind(b.showButton,b);b.layout.overflowHandler.clearOverflow=Ext.Function.createSequence(b.layout.overflowHandler.clearOverflow,b.hideButton,b)},destroy:b.destroy,scope:b,single:true})},showButton:function(){var h=this,b=Ext.getClass(h.layout.overflowHandler).prototype.handleOverflow.apply(h.layout.overflowHandler,arguments),g=h.menuButton;if(h.tabPanel.items.getCount()>1){if(!g){g=h.menuButton=h.tabBar.body.createChild({cls:Ext.baseCSSPrefix+"tab-tabmenu-right"},h.tabBar.body.child("."+Ext.baseCSSPrefix+"box-scroller-right"));g.addClsOnOver(Ext.baseCSSPrefix+"tab-tabmenu-over");g.on("click",h.showTabsMenu,h)}g.setVisibilityMode(Ext.dom.Element.DISPLAY);g.show();b.reservedSpace+=g.getWidth()}else{h.hideButton()}return b},hideButton:function(){var b=this;if(b.menuButton){b.menuButton.hide()}},getPageSize:function(){return this.pageSize},setPageSize:function(b){this.pageSize=b},getMaxText:function(){return this.maxText},setMaxText:function(b){this.maxText=b},getMenuPrefixText:function(){return this.menuPrefixText},setMenuPrefixText:function(b){this.menuPrefixText=b},showTabsMenu:function(o){var b=this;if(b.tabsMenu){b.tabsMenu.removeAll()}else{b.tabsMenu=new Ext.menu.Menu()}b.generateTabMenuItems();var h=Ext.get(o.getTarget()),g=h.getXY();g[1]+=24;b.tabsMenu.showAt(g)},generateTabMenuItems:function(){var D=this,A=D.tabPanel,b=A.getActiveTab(),B=A.items.getRange(),E=D.getPageSize(),q=D.tabsMenu,I,o,G,w,C,g,F,H,h,z;q.suspendLayouts();
8B=Ext.Array.filter(B,function(J){if(J.id==b.id){return false}return J.hidden?!!J.hiddenByLayout:true});I=B.length;o=Math.floor(I/E);G=I%E;if(I>E){for(w=0;w<o;w++){C=(w+1)*E;g=[];for(F=0;F<E;F++){z=F+C-E;H=B[z];g.push(D.autoGenMenuItem(H))}q.add({text:D.getMenuPrefixText()+" "+(C-E+1)+" - "+C,menu:g})}if(G>0){h=o*E;g=[];for(w=h;w<I;w++){H=B[w];g.push(D.autoGenMenuItem(H))}D.tabsMenu.add({text:D.menuPrefixText+" "+(h+1)+" - "+(h+g.length),menu:g})}}else{for(w=0;w<I;++w){q.add(D.autoGenMenuItem(B[w]))}}q.resumeLayouts(true)},autoGenMenuItem:function(g){var b=this.getMaxText(),h=Ext.util.Format.ellipsis(g.title,b);return{text:h,handler:this.showTabFromMenu,scope:this,disabled:g.disabled,tabToShow:g,iconCls:g.iconCls}},showTabFromMenu:function(b){this.tabPanel.setActiveTab(b.tabToShow)},destroy:function(){Ext.destroy(this.tabsMenu,this.menuButton)}});Ext.define("Ext.ux.ToolbarDroppable",{constructor:function(b){Ext.apply(this,b)},init:function(b){this.toolbar=b;this.toolbar.on({scope:this,render:this.createDropTarget})},createDropTarget:function(){this.dropTarget=Ext.create("Ext.dd.DropTarget",this.toolbar.getEl(),{notifyOver:Ext.Function.bind(this.notifyOver,this),notifyDrop:Ext.Function.bind(this.notifyDrop,this)})},addDDGroup:function(b){this.dropTarget.addToGroup(b)},calculateEntryIndex:function(z){var B=0,C=this.toolbar,A=C.items.items,q=A.length,g=z.getXY()[0],w=0,h,o,b,D;for(;w<q;w++){h=A[w].getEl();o=h.getXY()[0];b=h.getWidth();D=o+b/2;if(g<D){B=w;break}else{B=w+1}}return B},canDrop:function(b){return true},notifyOver:function(b,g,h){return this.canDrop.apply(this,arguments)?this.dropTarget.dropAllowed:this.dropTarget.dropNotAllowed},notifyDrop:function(b,o,q){var h=this.canDrop(b,o,q),w=this.toolbar;if(h){var g=this.calculateEntryIndex(o);w.insert(g,this.createItem(q));w.doLayout();this.afterLayout()}return h},createItem:function(b){},afterLayout:Ext.emptyFn});Ext.define("Ext.ux.TreePicker",{extend:Ext.form.field.Picker,xtype:"treepicker",triggerCls:Ext.baseCSSPrefix+"form-arrow-trigger",config:{store:null,displayField:null,columns:null,selectOnTab:true,maxPickerHeight:300,minPickerHeight:100},editable:false,initComponent:function(){var b=this;b.callParent(arguments);b.addEvents("select");b.mon(b.store,{scope:b,load:b.onLoad,update:b.onUpdate})},createPicker:function(){var h=this,g=new Ext.tree.Panel({shrinkWrapDock:2,store:h.store,floating:true,displayField:h.displayField,columns:h.columns,minHeight:h.minPickerHeight,maxHeight:h.maxPickerHeight,manageHeight:false,shadow:false,listeners:{scope:h,itemclick:h.onItemClick},viewConfig:{listeners:{scope:h,render:h.onViewRender}}}),b=g.getView();if(Ext.isIE9&&Ext.isStrict){b.on({scope:h,highlightitem:h.repaintPickerView,unhighlightitem:h.repaintPickerView,afteritemexpand:h.repaintPickerView,afteritemcollapse:h.repaintPickerView})}return g},onViewRender:function(b){b.getEl().on("keypress",this.onPickerKeypress,this)},repaintPickerView:function(){var b=this.picker.getView().getEl().dom.style;b.display=b.display},alignPicker:function(){var g=this,b;if(g.isExpanded){b=g.getPicker();if(g.matchFieldWidth){b.setWidth(g.bodyEl.getWidth())}if(b.isFloating()){g.doAlign()}}},onItemClick:function(g,b,h,q,o){this.selectItem(b)},onPickerKeypress:function(h,g){var b=h.getKey();if(b===h.ENTER||(b===h.TAB&&this.selectOnTab)){this.selectItem(this.picker.getSelectionModel().getSelection()[0])}},selectItem:function(b){var g=this;g.setValue(b.getId());g.picker.hide();g.inputEl.focus();g.fireEvent("select",g,b)},onExpand:function(){var o=this,g=o.picker,b=g.store,q=o.value,h;if(q){h=b.getNodeById(q)}if(!h){h=b.getRootNode()}g.selectPath(h.getPath());Ext.defer(function(){g.getView().focus()},1)},setValue:function(h){var g=this,b;g.value=h;if(g.store.loading){return g}b=h?g.store.getNodeById(h):g.store.getRootNode();if(h===undefined){b=g.store.getRootNode();g.value=b.getId()}else{b=g.store.getNodeById(h)}g.setRawValue(b?b.get(g.displayField):"");return g},getSubmitValue:function(){return this.value},getValue:function(){return this.value},onLoad:function(){var b=this.value;if(b){this.setValue(b)}},onUpdate:function(b,q,g,h){var o=this.displayField;if(g==="edit"&&h&&Ext.Array.contains(h,o)&&this.value===q.getId()){this.setRawValue(q.get(o))}}});Ext.define("Ext.ux.ajax.Simlet",function(){var o=/([^?#]*)(#.*)?$/,b=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/,g=/^[+-]?\d+$/,h=/^[+-]?\d+\.\d+$/;function q(z){var w;if(Ext.isDefined(z)){z=decodeURIComponent(z);if(g.test(z)){z=parseInt(z,10)}else{if(h.test(z)){z=parseFloat(z)}else{if(!!(w=b.test(z))){z=new Date(Date.UTC(+w[1],+w[2]-1,+w[3],+w[4],+w[5],+w[6]))}}}}return z}return{alias:"simlet.basic",isSimlet:true,responseProps:["responseText","responseXML","status","statusText"],status:200,statusText:"OK",constructor:function(w){Ext.apply(this,w)},doGet:function(w){var A=this,z={};Ext.each(A.responseProps,function(B){if(B in A){z[B]=A[B]}});return z},doRedirect:function(w){return false},exec:function(B){var A=this,w={},C="do"+Ext.String.capitalize(B.method.toLowerCase()),z=A[C];if(z){w=z.call(A,A.getCtx(B.method,B.url,B))}else{w={status:405,statusText:"Method Not Allowed"}}return w},getCtx:function(A,w,z){return{method:A,params:this.parseQueryString(w),url:w,xhr:z}},openRequest:function(E,A,z,B){var w=this.getCtx(E,A),D=this.doRedirect(w),C;if(D){C=D}else{C=new Ext.ux.ajax.SimXhr({mgr:this.manager,simlet:this,options:z});C.open(E,A,B)}return C},parseQueryString:function(E){var z=o.exec(E),D={},G,F,C,w;if(z&&z[1]){var B,A=z[1].split("&");for(C=0,w=A.length;C<w;++C){if((B=A[C].split("="))[0]){G=decodeURIComponent(B.shift());F=q((B.length>1)?B.join("="):B[0]);if(!(G in D)){D[G]=F}else{if(Ext.isArray(D[G])){D[G].push(F)}else{D[G]=[D[G],F]}}}}}return D},redirect:function(A,w,z){switch(arguments.length){case 2:if(typeof w=="string"){break}z=w;case 1:w=A;A="GET";break}if(z){w=Ext.urlAppend(w,Ext.Object.toQueryString(z))}return this.manager.openRequest(A,w)}}}());Ext.define("Ext.ux.ajax.DataSimlet",function(){function g(w,q){var h=w.direction,o=(h&&h.toUpperCase()=="DESC")?-1:1;return function(A,B){var z=A[w.property],D=B[w.property],C=(z<D)?-1:((D<z)?1:0);if(C||!q){return C*o}return q(A,B)}}function b(h,q){for(var w=q,o=h&&h.length;o;){w=g(h[--o],w)}return w}return{extend:Ext.ux.ajax.Simlet,getData:function(q){var w=this,A=w.data,B=q.params,o=(B.group||"")+"-"+(B.sort||"")+"-"+(B.dir||""),h,z;if(!o){return A}q.groupSpec=B.group&&Ext.decode(B.group);if(o==w.currentOrder){return w.sortedData}h=B.sort;if(B.dir){h=[{direction:B.dir,property:h}]}else{h=Ext.decode(B.sort)}z=b((q.sortSpec=h));z=b(q.groupSpec,z);A=Ext.isArray(A)?A.slice(0):A;if(z){Ext.Array.sort(A,z)}w.sortedData=A;w.currentOrder=o;return A},getPage:function(o,z){var q=z,w=z.length,A=o.params.start||0,h=o.params.limit?Math.min(w,A+o.params.limit):w;if(A||h<w){q=q.slice(A,h)}return q},getGroupSummary:function(o,q,h){return q[0]},getSummary:function(F,z,A){var C=this,h=F.groupSpec[0].property,D,w={},B=[],o,q;Ext.each(A,function(G){o=G[h];w[o]=true});
8function E(){if(D){B.push(C.getGroupSummary(h,D,F));D=null}}Ext.each(z,function(G){o=G[h];if(q!==o){E();q=o}if(!w[o]){return !B.length}if(D){D.push(G)}else{D=[G]}return true});E();return B}}}());Ext.define("Ext.ux.ajax.JsonSimlet",{extend:Ext.ux.ajax.DataSimlet,alias:"simlet.json",doGet:function(g){var q=this,z=q.getData(g),w=q.getPage(g,z),b=g.xhr.options.proxy&&g.xhr.options.proxy.reader,o=q.callParent(arguments),h={};if(b&&b.root){h[b.root]=w;h[b.totalProperty]=z.length}else{h=w}if(g.groupSpec){h.summaryData=q.getSummary(g,z,w)}o.responseText=Ext.encode(h);return o}});Ext.define("Ext.ux.ajax.SimXhr",{readyState:0,mgr:null,simlet:null,constructor:function(b){var g=this;Ext.apply(g,b);g.requestHeaders={}},abort:function(){var b=this;if(b.timer){clearTimeout(b.timer);b.timer=null}b.aborted=true},getAllResponseHeaders:function(){var b=[];Ext.Object.each(this.responseHeaders,function(g,h){b.push(g+": "+h)});return b.join("\r\n")},getResponseHeader:function(g){var b=this.responseHeaders;return(b&&b[g])||null},open:function(w,h,o,b,g){var q=this;q.method=w;q.url=h;q.async=o!==false;q.user=b;q.password=g;q.setReadyState(1)},overrideMimeType:function(b){this.mimeType=b},schedule:function(){var b=this;b.timer=setTimeout(function(){b.onTick()},b.mgr.delay)},send:function(b){var g=this;g.body=b;if(g.async){g.schedule()}else{g.onComplete()}},setReadyState:function(g){var b=this;if(b.readyState!=g){b.readyState=g;b.onreadystatechange()}},setRequestHeader:function(g,b){this.requestHeaders[g]=b},onreadystatechange:Ext.emptyFn,onComplete:function(){var me=this,callback;me.readyState=4;Ext.apply(me,me.simlet.exec(me));callback=me.jsonpCallback;if(callback){var text=callback+"("+me.responseText+")";eval(text)}},onTick:function(){var b=this;b.timer=null;b.onComplete();b.onreadystatechange&&b.onreadystatechange()}});Ext.define("Ext.ux.ajax.SimManager",{singleton:true,defaultType:"basic",delay:150,ready:false,constructor:function(){this.simlets={}},getSimlet:function(g){var h=this,b=g.indexOf("?");if(b<0){b=g.indexOf("#")}if(b>0){g=g.substring(0,b)}return h.simlets[g]||h.defaultSimlet},getXhr:function(q,g,b,h){var o=this.getSimlet(g);if(o){return o.openRequest(q,g,b,h)}return null},init:function(b){var g=this;Ext.apply(g,b);if(!g.ready){g.ready=true;if(!("defaultSimlet" in g)){g.defaultSimlet=new Ext.ux.ajax.Simlet({status:404,statusText:"Not Found"})}g._openRequest=Ext.data.Connection.prototype.openRequest;Ext.data.Connection.override({openRequest:function(o,h,q){var w=!o.nosim&&g.getXhr(h.method,h.url,o,q);if(!w){w=this.callParent(arguments)}return w}});if(Ext.data.JsonP){Ext.data.JsonP.self.override({createScript:function(w,z,q){var h=Ext.urlAppend(w,Ext.Object.toQueryString(z)),o=!q.nosim&&g.getXhr("GET",h,q,true);if(!o){o=this.callParent(arguments)}return o},loadScript:function(o){var h=o.script;if(h.simlet){h.jsonpCallback=o.params[o.callbackKey];h.send(null)}else{this.callParent(arguments)}}})}}return g},openRequest:function(o,b,h){var g={method:o,url:b};return this._openRequest.call(Ext.data.Connection.prototype,{},g,h)},register:function(h){var g=this;g.init();function b(o){var q=o;if(!q.isSimlet){q=Ext.create("simlet."+(q.stype||g.defaultType),o)}g.simlets[o.url]=q;q.manager=g}if(Ext.isArray(h)){Ext.each(h,b)}else{if(h.isSimlet||h.url){b(h)}else{Ext.Object.each(h,function(o,q){q.url=o;b(q)})}}return g}});Ext.define("Ext.ux.ajax.XmlSimlet",{extend:Ext.ux.ajax.DataSimlet,alias:"simlet.xml",xmlTpl:["<{root}>\n",'<tpl for="data">'," <{parent.record}>\n",'<tpl for="parent.fields">'," <{name}>{[parent[values.name]]}</{name}>\n","</tpl>"," </{parent.record}>\n","</tpl>","</{root}>"],doGet:function(C){var A=this,g=A.getData(C),z=A.getPage(C,g),o=C.xhr.options.proxy&&C.xhr.options.proxy.reader,w=A.callParent(arguments),b={data:z,reader:o,fields:o&&o.model&&o.model.getFields(),root:o&&o.root,record:o&&o.record},q,h,B;if(C.groupSpec){b.summaryData=A.getSummary(C,g,z)}if(A.xmlTpl){q=Ext.XTemplate.getTpl(A,"xmlTpl");h=q.apply(b)}else{h=g}if(typeof DOMParser!="undefined"){B=(new DOMParser()).parseFromString(h,"text/xml")}else{B=new ActiveXObject("Microsoft.XMLDOM");B.async=false;B.loadXML(h)}w.responseText=h;w.responseXML=B;return w}});Ext.define("Ext.ux.data.PagingMemoryProxy",{extend:Ext.data.proxy.Memory,alias:"proxy.pagingmemory",alternateClassName:"Ext.data.PagingMemoryProxy",constructor:function(){Ext.log.warn("Ext.ux.data.PagingMemoryProxy functionality has been merged into Ext.data.proxy.Memory by using the enablePaging flag.");this.callParent(arguments)},read:function(h,z,A){var o=this.getReader(),B=o.read(this.data),q,b,w,g;A=A||this;b=h.filters;if(b.length>0){g=[];Ext.each(B.records,function(C){var H=true,I=b.length,D;for(D=0;D<I;D++){var G=b[D],F=G.filterFn,E=G.scope;H=H&&F.call(E,C)}if(H){g.push(C)}},this);B.records=g;B.totalRecords=B.total=g.length}q=h.sorters;if(q.length>0){w=function(E,D){var C=q[0].sort(E,D),G=q.length,F;for(F=1;F<G;F++){C=C||q[F].sort.call(this,E,D)}return C};B.records.sort(w)}if(h.start!==undefined&&h.limit!==undefined){B.records=B.records.slice(h.start,h.start+h.limit);B.count=B.records.length}Ext.apply(h,{resultSet:B});h.setCompleted();h.setSuccessful();Ext.Function.defer(function(){Ext.callback(z,A,[h])},10)}});Ext.define("Ext.ux.dd.CellFieldDropZone",{extend:Ext.dd.DropZone,constructor:function(b){b=b||{};if(b.onCellDrop){this.onCellDrop=b.onCellDrop}if(b.ddGroup){this.ddGroup=b.ddGroup}},init:function(b){var g=this;if(b.rendered){g.grid=b;b.getView().on({render:function(h){g.view=h;Ext.ux.dd.CellFieldDropZone.superclass.constructor.call(g,g.view.el)},single:true})}else{b.on("render",g.init,g,{single:true})}},containerScroll:true,getTargetFromEvent:function(q){var o=this,g=o.view;var b=q.getTarget(g.getCellSelector());if(b){var w=g.findItemByChild(b),h=b.cellIndex;if(w&&Ext.isDefined(h)){return{node:b,record:g.getRecord(w),fieldName:o.grid.columns[h].dataIndex}}}},onNodeEnter:function(z,b,w,q){delete this.dropOK;if(!z){return}var o=q.field;if(!o){return}var h=z.record.fields.get(z.fieldName).type,g=Ext.data.Types;switch(h){case g.FLOAT:case g.INT:if(!o.isXType("numberfield")){return}break;case g.DATE:if(!o.isXType("datefield")){return}break;case g.BOOL:if(!o.isXType("checkbox")){return}}this.dropOK=true;Ext.fly(z.node).addCls("x-drop-target-active")},onNodeOver:function(o,b,h,g){return this.dropOK?this.dropAllowed:this.dropNotAllowed},onNodeOut:function(o,b,h,g){Ext.fly(o.node).removeCls("x-drop-target-active")},onNodeDrop:function(q,b,o,h){if(this.dropOK){var g=h.field.getValue();q.record.set(q.fieldName,g);this.onCellDrop(q.fieldName,g);return true}},onCellDrop:Ext.emptyFn});Ext.define("Ext.ux.dd.PanelFieldDragZone",{extend:Ext.dd.DragZone,constructor:function(b){b=b||{};if(b.ddGroup){this.ddGroup=b.ddGroup}},init:function(b){if(b.nodeType){Ext.ux.dd.PanelFieldDragZone.superclass.init.apply(this,arguments)}else{if(b.rendered){Ext.ux.dd.PanelFieldDragZone.superclass.constructor.call(this,b.getEl())}else{b.on("afterrender",this.init,this,{single:true})}}},scroll:false,getDragData:function(q){var h=q.getTarget("label",null,true),g,o,b;if(h){o=Ext.getCmp(h.up("."+Ext.form.Labelable.prototype.formItemCls).id);g=o.preventMark;o.preventMark=true;if(o.isValid()){o.preventMark=g;b=document.createElement("div");b.className="x-form-text";b.appendChild(document.createTextNode(o.getRawValue()));Ext.fly(b).setWidth(o.getEl().getWidth());return{field:o,ddel:b}}else{q.stopEvent()}o.preventMark=g}},getRepairXY:function(){return this.dragData.field.getEl().getXY()}});Ext.define("Ext.ux.event.Driver",{extend:Ext.util.Observable,active:null,specialKeysByName:{PGUP:33,PGDN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40},specialKeysByCode:{},constructor:function(){var b=this;b.callParent(arguments);b.addEvents("start","stop")},getTextSelection:function(o){var q=o.ownerDocument,h,b,w,g;if(typeof o.selectionStart==="number"){w=o.selectionStart;g=o.selectionEnd}else{if(q.selection){h=q.selection.createRange();b=o.createTextRange();b.setEndPoint("EndToStart",h);w=b.text.length;g=w+h.text.length}}return[w,g]},getTime:function(){return new Date().getTime()},getTimestamp:function(){var b=this.getTime();return b-this.startTime},onStart:function(){},onStop:function(){},start:function(){var b=this;if(!b.active){b.active=new Date();b.startTime=b.getTime();b.onStart();b.fireEvent("start",b)}},stop:function(){var b=this;if(b.active){b.active=null;b.onStop();b.fireEvent("stop",b)}}},function(){var b=this.prototype;Ext.Object.each(b.specialKeysByName,function(g,h){b.specialKeysByCode[h]=g})});Ext.define("Ext.ux.event.Maker",{eventQueue:[],startAfter:500,timerIncrement:500,currentTiming:0,constructor:function(b){var g=this;g.currentTiming=g.startAfter;if(!Ext.isArray(b)){b=[b]}Ext.Array.each(b,function(h){h.el=h.el||"el";Ext.Array.each(Ext.ComponentQuery.query(h.cmpQuery),function(z){var w={},o,A,q;if(!h.domQuery){q=z[h.el]}else{q=z.el.down(h.domQuery)}w.target="#"+q.dom.id;w.type=h.type;w.button=b.button||0;o=q.getX()+(q.getWidth()/2);A=q.getY()+(q.getHeight()/2);w.xy=[o,A];w.ts=g.currentTiming;g.currentTiming+=g.timerIncrement;g.eventQueue.push(w)});if(h.screenshot){g.eventQueue[g.eventQueue.length-1].screenshot=true}});return g.eventQueue}});Ext.define("Ext.ux.event.Player",function(o){var A={},h={},b={},z,g={},w={resize:1,reset:1,submit:1,change:1,select:1,error:1,abort:1};Ext.each(["click","dblclick","mouseover","mouseout","mousedown","mouseup","mousemove"],function(B){w[B]=A[B]=h[B]={bubbles:true,cancelable:(B!="mousemove"),detail:1,screenX:0,screenY:0,clientX:0,clientY:0,ctrlKey:false,altKey:false,shiftKey:false,metaKey:false,button:0}});Ext.each(["keydown","keyup","keypress"],function(B){w[B]=A[B]=b[B]={bubbles:true,cancelable:true,ctrlKey:false,altKey:false,shiftKey:false,metaKey:false,keyCode:0,charCode:0}});Ext.each(["blur","change","focus","resize","scroll","select"],function(B){A[B]=g[B]={bubbles:(B in w),cancelable:false,detail:1}});var q={8:function(C,D,B){if(D<B){C.value=C.value.substring(0,D)+C.value.substring(B)}else{if(D>0){C.value=C.value.substring(0,--D)+C.value.substring(B)}}this.setTextSelection(C,D,D)},46:function(C,D,B){if(D<B){C.value=C.value.substring(0,D)+C.value.substring(B)}else{if(D<C.value.length-1){C.value=C.value.substring(0,D)+C.value.substring(D+1)}}this.setTextSelection(C,D,D)}};return{extend:Ext.ux.event.Driver,keyFrameEvents:{click:true},pauseForAnimations:true,speed:1,stallTime:0,_inputSpecialKeys:{INPUT:q,TEXTAREA:Ext.apply({},q)},tagPathRegEx:/(\w+)(?:\[(\d+)\])?/,constructor:function(B){var C=this;C.callParent(arguments);C.timerFn=function(){C.onTick()};C.attachTo=C.attachTo||window;z=C.attachTo.document},getElementFromXPath:function(I){var J=this,F=I.split("/"),K=J.tagPathRegEx,G,D,E,H,L,C,B=J.attachTo.document;B=(F[0]=="~")?B.body:B.getElementById(F[0].substring(1));for(G=1,D=F.length;B&&G<D;++G){E=K.exec(F[G]);H=E[2]?parseInt(E[2],10):1;L=E[1].toUpperCase();for(C=B.firstChild;C;C=C.nextSibling){if(C.tagName==L){if(H==1){break}--H}}B=C}return B},offsetToRangeCharacterMove:function(B,C){return C-(B.value.slice(0,C).split("\r\n").length-1)},setTextSelection:function(F,B,E){if(B<0){B+=F.value.length}if(E==null){E=B}if(E<0){E+=F.value.length}if(typeof F.selectionStart==="number"){F.selectionStart=B;F.selectionEnd=E}else{var D=F.createTextRange();var C=this.offsetToRangeCharacterMove(F,B);D.collapse(true);if(B==E){D.move("character",C)}else{D.moveEnd("character",this.offsetToRangeCharacterMove(F,E));D.moveStart("character",C)}D.select()}},getTimeIndex:function(){var B=this.getTimestamp()-this.stallTime;return B*this.speed},makeToken:function(B,E){var C=this,D;B[E]=true;B.defer=function(){B[E]=false;D=C.getTime()};B.finish=function(){B[E]=true;C.stallTime+=C.getTime()-D;C.schedule()}},nextEvent:function(C){var D=this,B=++D.queueIndex;if(D.keyFrameEvents[C.type]){Ext.Array.insert(D.eventQueue,B,[{keyframe:true,ts:C.ts}])}},peekEvent:function(){return this.eventQueue[this.queueIndex]||null},replaceEvent:function(B,E){for(var D,C=0,F=E.length;C<F;++C){if(C){D=E[C-1];delete D.afterplay;delete D.screenshot;delete E[C].beforeplay}}Ext.Array.replace(this.eventQueue,(B==null)?this.queueIndex:B,1,E)},processEvents:function(){var C=this,D=C.pauseForAnimations&&C.attachTo.Ext.fx.Manager.items,B;while((B=C.peekEvent())!==null){if(D&&D.getCount()){return true}if(B.keyframe){if(!C.processKeyFrame(B)){return false}
8C.nextEvent(B)}else{if(B.ts<=C.getTimeIndex()&&C.fireEvent("beforeplay",C,B)!==false&&C.playEvent(B)){C.nextEvent(B)}else{return true}}}C.stop();return false},processKeyFrame:function(B){var C=this;if(!B.defer){C.makeToken(B,"done");C.fireEvent("keyframe",C,B)}return B.done},injectEvent:function(G,F){var E=this,D=F.type,B=Ext.apply({},F,A[D]),C;if(D==="type"){C=E._inputSpecialKeys[G.tagName];if(C){return E.injectTypeInputEvent(G,F,C)}return E.injectTypeEvent(G,F)}if(D==="focus"&&G.focus){G.focus();return true}if(D==="blur"&&G.blur){G.blur();return true}if(D==="scroll"){G.scrollLeft=F.pos[0];G.scrollTop=F.pos[1];return true}if(D==="mduclick"){return E.injectEvent(G,Ext.applyIf({type:"mousedown"},F))&&E.injectEvent(G,Ext.applyIf({type:"mouseup"},F))&&E.injectEvent(G,Ext.applyIf({type:"click"},F))}if(h[D]){return o.injectMouseEvent(G,B,E.attachTo)}if(b[D]){return o.injectKeyEvent(G,B,E.attachTo)}if(g[D]){return o.injectUIEvent(G,D,B.bubbles,B.cancelable,B.view||E.attachTo,B.detail)}return false},injectTypeEvent:function(I,C){var K=this,M=C.text,G=[],B,F,H,E,D,L,J;if(M){delete C.text;L=M.toUpperCase();for(H=0,E=M.length;H<E;++H){B=M.charCodeAt(H);F=L.charCodeAt(H);G.push(Ext.applyIf({type:"keydown",charCode:F,keyCode:F},C),Ext.applyIf({type:"keypress",charCode:B,keyCode:B},C),Ext.applyIf({type:"keyup",charCode:F,keyCode:F},C))}}else{G.push(Ext.applyIf({type:"keydown",charCode:C.keyCode},C),Ext.applyIf({type:"keyup",charCode:C.keyCode},C))}for(H=0,E=G.length;H<E;++H){K.injectEvent(I,G[H])}return true},injectTypeInputEvent:function(F,D,B){var C=this,G=D.text,E,H;if(B){E=C.getTextSelection(F);if(G){H=E[0];F.value=F.value.substring(0,H)+G+F.value.substring(E[1]);H+=G.length;C.setTextSelection(F,H,H)}else{if(!(B=B[D.keyCode])){if("caret" in D){C.setTextSelection(F,D.caret,D.caret)}else{if(D.selection){C.setTextSelection(F,D.selection[0],D.selection[1])}}return C.injectTypeEvent(F,D)}B.call(this,F,E[0],E[1]);return true}}return true},playEvent:function(B){var D=this,E=D.getElementFromXPath(B.target),C;if(!E){return false}if(!D.playEventHook(B,"beforeplay")){return false}if(!B.injected){B.injected=true;C=D.translateEvent(B,E);D.injectEvent(E,C)}return D.playEventHook(B,"afterplay")},playEventHook:function(D,C){var E=this,B=C+".done",G=C+".fired",F=D[C];if(F&&!D[B]){if(!D[G]){D[G]=true;E.makeToken(D,B);if(E.eventScope&&Ext.isString(F)){F=E.eventScope[F]}if(F){F.call(E.eventScope||E,D)}}return false}return true},schedule:function(){var B=this;if(!B.timer){B.timer=setTimeout(B.timerFn,10)}},_translateAcross:["type","button","charCode","keyCode","caret","pos","text","selection"],translateEvent:function(I,E){var G=this,B={},H=I.modKeys||"",F=G._translateAcross,D=F.length,C,J;while(D--){C=F[D];if(C in I){B[C]=I[C]}}B.altKey=H.indexOf("A")>0;B.ctrlKey=H.indexOf("C")>0;B.metaKey=H.indexOf("M")>0;B.shiftKey=H.indexOf("S")>0;if(E&&"x" in I){J=Ext.fly(E).getXY();J[0]+=I.x;J[1]+=I.y}else{if("x" in I){J=[I.x,I.y]}else{if("px" in I){J=[I.px,I.py]}}}if(J){B.clientX=B.screenX=J[0];B.clientY=B.screenY=J[1]}if(I.key){B.keyCode=G.specialKeysByName[I.key]}if(I.type==="wheel"){if("onwheel" in G.attachTo.document){B.wheelX=I.dx;B.wheelY=I.dy}else{B.type="mousewheel";B.wheelDeltaX=-40*I.dx;B.wheelDeltaY=B.wheelDelta=-40*I.dy}}return B},onStart:function(){var B=this;B.queueIndex=0;B.schedule()},onStop:function(){var B=this;if(B.timer){clearTimeout(B.timer);B.timer=null}},onTick:function(){var B=this;B.timer=null;if(B.processEvents()){B.schedule()}},statics:{ieButtonCodeMap:{0:1,1:4,2:2},injectKeyEvent:function(G,C,B){var F=C.type,E=null;if(F==="textevent"){F="keypress"}B=B||window;if(z.createEvent){try{E=z.createEvent("KeyEvents");E.initKeyEvent(F,C.bubbles,C.cancelable,B,C.ctrlKey,C.altKey,C.shiftKey,C.metaKey,C.keyCode,C.charCode)}catch(D){try{E=z.createEvent("Events")}catch(H){E=z.createEvent("UIEvents")}finally{E.initEvent(F,C.bubbles,C.cancelable);E.view=B;E.altKey=C.altKey;E.ctrlKey=C.ctrlKey;
8E.shiftKey=C.shiftKey;E.metaKey=C.metaKey;E.keyCode=C.keyCode;E.charCode=C.charCode}}G.dispatchEvent(E)}else{if(z.createEventObject){E=z.createEventObject();E.bubbles=C.bubbles;E.cancelable=C.cancelable;E.view=B;E.ctrlKey=C.ctrlKey;E.altKey=C.altKey;E.shiftKey=C.shiftKey;E.metaKey=C.metaKey;E.keyCode=(C.charCode>0)?C.charCode:C.keyCode;G.fireEvent("on"+F,E)}else{return false}}return true},injectMouseEvent:function(F,C,B){var E=C.type,D=null;B=B||window;if(z.createEvent){D=z.createEvent("MouseEvents");if(D.initMouseEvent){D.initMouseEvent(E,C.bubbles,C.cancelable,B,C.detail,C.screenX,C.screenY,C.clientX,C.clientY,C.ctrlKey,C.altKey,C.shiftKey,C.metaKey,C.button,C.relatedTarget)}else{D=z.createEvent("UIEvents");D.initEvent(E,C.bubbles,C.cancelable);D.view=B;D.detail=C.detail;D.screenX=C.screenX;D.screenY=C.screenY;D.clientX=C.clientX;D.clientY=C.clientY;D.ctrlKey=C.ctrlKey;D.altKey=C.altKey;D.metaKey=C.metaKey;D.shiftKey=C.shiftKey;D.button=C.button;D.relatedTarget=C.relatedTarget}if(C.relatedTarget&&!D.relatedTarget){if(E=="mouseout"){D.toElement=C.relatedTarget}else{if(E=="mouseover"){D.fromElement=C.relatedTarget}}}F.dispatchEvent(D)}else{if(z.createEventObject){D=z.createEventObject();D.bubbles=C.bubbles;D.cancelable=C.cancelable;D.view=B;D.detail=C.detail;D.screenX=C.screenX;D.screenY=C.screenY;D.clientX=C.clientX;D.clientY=C.clientY;D.ctrlKey=C.ctrlKey;D.altKey=C.altKey;D.metaKey=C.metaKey;D.shiftKey=C.shiftKey;D.button=o.ieButtonCodeMap[C.button]||0;D.relatedTarget=C.relatedTarget;F.fireEvent("on"+E,D)}else{return false}}return true},injectUIEvent:function(E,C,B){var D=null;B=B||window;if(z.createEvent){D=z.createEvent("UIEvents");D.initUIEvent(C.type,C.bubbles,C.cancelable,B,C.detail);E.dispatchEvent(D)}else{if(z.createEventObject){D=z.createEventObject();D.bubbles=C.bubbles;D.cancelable=C.cancelable;D.view=B;D.detail=C.detail;E.fireEvent("on"+C.type,D)}else{return false}}return true}}}});Ext.define("Ext.ux.event.Recorder",function(h){function b(){var w=arguments,B=w.length,A={kind:"other"},z;for(z=0;z<B;++z){Ext.apply(A,arguments[z])}if(A.alt&&!A.event){A.event=A.alt}return A}function o(w){return b({kind:"keyboard",modKeys:true,key:true},w)}function g(w){return b({kind:"mouse",button:true,modKeys:true,xy:true},w)}var q={keydown:o(),keypress:o(),keyup:o(),dragmove:g({alt:"mousemove",pageCoords:true,whileDrag:true}),mousemove:g({pageCoords:true}),mouseover:g(),mouseout:g(),click:g(),wheel:g({wheel:true}),mousedown:g({press:true}),mouseup:g({release:true}),scroll:b({listen:false}),focus:b(),blur:b()};for(var o in q){if(!q[o].event){q[o].event=o}}q.wheel.event=null;return{extend:Ext.ux.event.Driver,eventsToRecord:q,ignoreIdRegEx:/ext-gen(?:\d+)/,inputRe:/^(input|textarea)$/i,constructor:function(w){var A=this,z=w&&w.eventsToRecord;if(z){A.eventsToRecord=Ext.apply(Ext.apply({},A.eventsToRecord),z);delete w.eventsToRecord}A.callParent(arguments);A.clear();A.modKeys=[];A.attachTo=A.attachTo||window},clear:function(){this.eventsRecorded=[]},listenToEvent:function(C){var B=this,A=B.attachTo.document.body,z=function(){return B.onEvent.apply(B,arguments)},w={};if(A.attachEvent&&A.ownerDocument.documentMode<10){C="on"+C;A.attachEvent(C,z);w.destroy=function(){if(z){A.detachEvent(C,z);z=null}}}else{A.addEventListener(C,z,true);w.destroy=function(){if(z){A.removeEventListener(C,z,true);z=null}}}return w},coalesce:function(F,D){var C=this,z=C.eventsRecorded,B=z.length,w=B&&z[B-1],E=(B>1)&&z[B-2],A=(B>2)&&z[B-3];if(!w){return false}if(F.type==="mousemove"){if(w.type==="mousemove"&&F.ts-w.ts<200){F.ts=w.ts;z[B-1]=F;return true}}else{if(F.type==="click"){if(E&&w.type==="mouseup"&&E.type==="mousedown"){if(F.button==w.button&&F.button==E.button&&F.target==w.target&&F.target==E.target&&C.samePt(F,w)&&C.samePt(F,E)){z.pop();E.type="mduclick";return true}}}else{if(F.type==="keyup"){if(E&&w.type==="keypress"&&E.type==="keydown"){if(F.target===w.target&&F.target===E.target){z.pop();E.type="type";E.text=String.fromCharCode(w.charCode);delete E.charCode;delete E.keyCode;if(A&&A.type==="type"){if(A.text&&A.target===E.target){A.text+=E.text;z.pop()}}return true}}else{if(C.completeKeyStroke(w,F)){w.type="type";C.completeSpecialKeyStroke(D.target,w,F);return true}else{if(w.type==="scroll"&&C.completeKeyStroke(E,F)){E.type="type";C.completeSpecialKeyStroke(D.target,E,F);z.pop();z.pop();z.push(w,E);return true}}}}}}return false}
8,completeKeyStroke:function(z,w){if(z&&z.type==="keydown"&&z.keyCode===w.keyCode){delete z.charCode;return true}return false},completeSpecialKeyStroke:function(A,B,w){var z=this.specialKeysByCode[w.keyCode];if(z&&this.inputRe.test(A.tagName)){delete B.keyCode;B.key=z;B.selection=this.getTextSelection(A);if(B.selection[0]===B.selection[1]){B.caret=B.selection[0];delete B.selection}return true}return false},getElementXPath:function(C){var F=this,E=false,z=[],D,B,A,w;for(A=C;A;A=A.parentNode){if(A==F.attachTo.document.body){z.unshift("~");E=true;break}if(A.id&&!F.ignoreIdRegEx.test(A.id)){z.unshift("#"+A.id);E=true;break}for(D=1,B=A;!!(B=B.previousSibling);){if(B.tagName==A.tagName){++D}}w=A.tagName.toLowerCase();if(D<2){z.unshift(w)}else{z.unshift(w+"["+D+"]")}}return E?z.join("/"):null},getRecordedEvents:function(){return this.eventsRecorded},onEvent:function(D){var C=this,A=Ext.EventObject.setEvent(D),w=C.eventsToRecord[A.type],E,F,B,z={type:A.type,ts:C.getTimestamp(),target:C.getElementXPath(A.target)},G;if(!w||!z.target){return}E=A.target.ownerDocument;E=E.defaultView||E.parentWindow;if(E!==C.attachTo){return}if(C.eventsToRecord.scroll){C.syncScroll(A.target)}if(w.xy){G=A.getXY();if(w.pageCoords||!z.target){z.px=G[0];z.py=G[1]}else{B=Ext.fly(A.getTarget()).getXY();G[0]-=B[0];G[1]-=B[1];z.x=G[0];z.y=G[1]}}if(w.button){if("buttons" in D){z.button=D.buttons}else{if(D.which==null){z.button=(D.button<2)?1:((D.button==4)?4:2)}else{if(D.which){z.button=(D.which<2)?1:((D.which==2)?4:2)}else{z.button=0}}}if(!z.button&&w.whileDrag){return}}if(w.wheel){z.type="wheel";if(w.event==="wheel"){z.dx=D.deltaX;z.dy=D.deltaY}else{if(typeof D.wheelDeltaX==="number"){z.dx=-1/40*D.wheelDeltaX;z.dy=-1/40*D.wheelDeltaY}else{if(D.wheelDelta){z.dy=-1/40*D.wheelDelta}else{if(D.detail){z.dy=D.detail}}}}}if(w.modKeys){C.modKeys[0]=A.altKey?"A":"";C.modKeys[1]=A.ctrlKey?"C":"";C.modKeys[2]=A.metaKey?"M":"";C.modKeys[3]=A.shiftKey?"S":"";F=C.modKeys.join("");if(F){z.modKeys=F}}if(w.key){z.charCode=A.getCharCode();z.keyCode=A.getKey()}if(C.coalesce(z,A)){C.fireEvent("coalesce",C,z)}else{C.eventsRecorded.push(z);C.fireEvent("add",C,z)}},onStart:function(){var A=this,B=A.attachTo.Ext.dd.DragDropManager,w=A.attachTo.Ext.EventObjectImpl.prototype,z=[];h.prototype.eventsToRecord.wheel.event=("onwheel" in A.attachTo.document)?"wheel":"mousewheel";A.listeners=[];Ext.Object.each(A.eventsToRecord,function(C,D){if(D&&D.listen!==false){if(!D.event){D.event=C}if(D.alt&&D.alt!==C){if(!A.eventsToRecord[D.alt]){z.push(D)}}else{A.listeners.push(A.listenToEvent(D.event))}}});Ext.each(z,function(C){A.eventsToRecord[C.alt]=C;A.listeners.push(A.listenToEvent(C.alt))});A.ddmStopEvent=B.stopEvent;B.stopEvent=Ext.Function.createSequence(B.stopEvent,function(C){A.onEvent(C)});A.evStopEvent=w.stopEvent;w.stopEvent=Ext.Function.createSequence(w.stopEvent,function(){A.onEvent(this)})},onStop:function(){var w=this;Ext.destroy(w.listeners);w.listeners=null;w.attachTo.Ext.dd.DragDropManager.stopEvent=w.ddmStopEvent;w.attachTo.Ext.EventObjectImpl.prototype.stopEvent=w.evStopEvent},samePt:function(z,w){return z.x==w.x&&z.y==w.y},syncScroll:function(A){var D=this,C=D.getTimestamp(),H,G,F,E,z,B;for(var w=A;w;w=w.parentNode){H=w.$lastScrollLeft;G=w.$lastScrollTop;F=w.scrollLeft;E=w.scrollTop;z=false;if(H!==F){if(F){z=true}w.$lastScrollLeft=F}if(G!==E){if(E){z=true}w.$lastScrollTop=E}if(z){D.eventsRecorded.push(B={type:"scroll",target:D.getElementXPath(w),ts:C,pos:[F,E]});D.fireEvent("add",D,B)}if(w.tagName==="BODY"){break}}}}});Ext.define("Ext.ux.event.RecorderManager",{extend:Ext.panel.Panel,alias:"widget.eventrecordermanager",layout:"fit",buttonAlign:"left",eventsToIgnore:{mousemove:1,mouseover:1,mouseout:1},bodyBorder:false,playSpeed:1,initComponent:function(){var g=this;g.recorder=new Ext.ux.event.Recorder({attachTo:g.attachTo,listeners:{add:g.updateEvents,coalesce:g.updateEvents,buffer:200,scope:g}});g.recorder.eventsToRecord=Ext.apply({},g.recorder.eventsToRecord);function h(q,o){return{text:q,speed:o,group:"speed",checked:o==g.playSpeed,handler:g.onPlaySpeed,scope:g}}g.tbar=[{text:"Record",xtype:"splitbutton",whenIdle:true,handler:g.onRecord,scope:g,menu:g.makeRecordButtonMenu()},{text:"Play",xtype:"splitbutton",whenIdle:true,handler:g.onPlay,scope:g,menu:[h("Recorded Speed (1x)",1),h("Double Speed (2x)",2),h("Quad Speed (4x)",4),"-",h("Full Speed",1000)]},{text:"Clear",whenIdle:true,handler:g.onClear,scope:g},"->
8",{text:"Stop",whenActive:true,disabled:true,handler:g.onStop,scope:g}];var b=g.attachTo&&g.attachTo.testEvents;g.items=[{xtype:"textarea",itemId:"eventView",fieldStyle:"font-family: monospace",selectOnFocus:true,emptyText:"Events go here!",value:b?g.stringifyEvents(b):"",scrollToBottom:function(){var o=this.inputEl.dom;o.scrollTop=o.scrollHeight}}];g.fbar=[{xtype:"tbtext",text:"Attached To: "+(g.attachTo&&g.attachTo.location.href)}];g.callParent()},makeRecordButtonMenu:function(){var g=[],h={},q=this.recorder.eventsToRecord,o=this.eventsToIgnore;Ext.Object.each(q,function(w,A){var z=h[A.kind];if(!z){h[A.kind]=z=[];g.push({text:A.kind,menu:z})}z.push({text:w,checked:true,handler:function(B){if(B.checked){q[w]=A}else{delete q[w]}}});if(o[w]){z[z.length-1].checked=false;Ext.Function.defer(function(){delete q[w]},1)}});function b(w,z){return(w.text<z.text)?-1:((z.text<w.text)?1:0)}g.sort(b);Ext.Array.each(g,function(w){w.menu.sort(b)});return g},getEventView:function(){return this.down("#eventView")},onClear:function(){var b=this.getEventView();b.setValue("")},onPlay:function(){var h=this,b=h.getEventView(),g=b.getValue();if(g){g=Ext.decode(g);if(g.length){h.player=Ext.create("Ext.ux.event.Player",{attachTo:window.opener,eventQueue:g,listeners:{stop:h.onPlayStop,scope:h}});h.player.start();h.syncBtnUI()}}},onPlayStop:function(){this.player=null;this.syncBtnUI()},onPlaySpeed:function(b){this.playSpeed=b.speed},onRecord:function(){this.recorder.start();this.syncBtnUI()},onStop:function(){var b=this;if(b.player){b.player.stop();b.player=null}else{b.recorder.stop()}b.syncBtnUI();b.updateEvents()},syncBtnUI:function(){var h=this,g=!h.player&&!h.recorder.active;Ext.each(h.query("[whenIdle]"),function(o){o.setDisabled(!g)});Ext.each(h.query("[whenActive]"),function(o){o.setDisabled(g)});var b=h.getEventView();b.setReadOnly(!g)},stringifyEvents:function(h){var g,b=[];Ext.each(h,function(o){g=[];Ext.Object.each(o,function(q,w){if(g.length){g.push(", ")}else{g.push(" { ")}g.push(q,": ");g.push(Ext.encode(w))});g.push(" }");b.push(g.join(""))});return"[\n"+b.join(",\n")+"\n]"},updateEvents:function(){var g=this,h=g.stringifyEvents(g.recorder.getRecordedEvents()),b=g.getEventView();b.setValue(h);b.scrollToBottom()}});Ext.define("Ext.ux.form.MultiSelect",{extend:Ext.form.FieldContainer,mixins:{bindable:Ext.util.Bindable,field:Ext.form.field.Field},alternateClassName:"Ext.ux.Multiselect",alias:["widget.multiselectfield","widget.multiselect"],layout:"anchor",ddReorder:false,appendOnly:false,displayField:"text",allowBlank:true,minSelections:0,maxSelections:Number.MAX_VALUE,blankText:"This field is required",minSelectionsText:"Minimum {0} item(s) required",maxSelectionsText:"Maximum {0} item(s) required",delimiter:",",dragText:"{0} Item{1}",ignoreSelectChange:0,initComponent:function(){var b=this;b.bindStore(b.store,true);if(b.store.autoCreated){b.valueField=b.displayField="field1";if(!b.store.expanded){b.displayField="field2"}}if(!Ext.isDefined(b.valueField)){b.valueField=b.displayField}b.items=b.setupItems();b.callParent();b.initField();b.addEvents("drop")},setupItems:function(){var b=this;b.boundList=Ext.create("Ext.view.BoundList",Ext.apply({anchor:"none 100%",deferInitialRefresh:false,border:1,multiSelect:true,store:b.store,displayField:b.displayField,disabled:b.disabled},b.listConfig));b.boundList.getSelectionModel().on("selectionchange",b.onSelectChange,b);if(!b.title){return b.boundList}b.boundList.border=false;return{border:true,anchor:"none 100%",layout:"anchor",title:b.title,tbar:b.tbar,items:b.boundList}},onSelectChange:function(b,g){if(!this.ignoreSelectChange){this.setValue(g)}},getSelected:function(){return this.boundList.getSelectionModel().getSelection()},isEqual:function(q,o){var g=Ext.Array.from,h=0,b;q=g(q);o=g(o);b=q.length;if(b!==o.length){return false}for(;h<b;h++){if(o[h]!==q[h]){return false}}return true},afterRender:function(){var g=this,b;g.callParent();if(g.selectOnRender){b=g.getRecordsForValue(g.value);if(b.length){++g.ignoreSelectChange;g.boundList.getSelectionModel().select(b);--g.ignoreSelectChange}delete g.toSelect}if(g.ddReorder&&!g.dragGroup&&!g.dropGroup){g.dragGroup=g.dropGroup="MultiselectDD-"+Ext.id()}if(g.draggable||g.dragGroup){g.dragZone=Ext.create("Ext.view.DragZone",{view:g.boundList,ddGroup:g.dragGroup,dragText:g.dragText})}if(g.droppable||g.dropGroup){g.dropZone=Ext.create("Ext.view.DropZone",{view:g.boundList,ddGroup:g.dropGroup,handleNodeDrop:function(B,A,h){var o=this.view,w=o.getStore(),q=B.records,z;B.view.store.remove(q);z=w.indexOf(A);if(h==="after"){z++}w.insert(z,q);o.getSelectionModel().select(q);g.fireEvent("drop",g,q)}})}},isValid:function(){var g=this,b=g.disabled,h=g.forceValidation||!b;return h?g.validateValue(g.value):b},validateValue:function(g){var b=this,o=b.getErrors(g),h=Ext.isEmpty(o);if(!b.preventMark){if(h){b.clearInvalid()}else{b.markInvalid(o)}}return h},markInvalid:function(h){var g=this,b=g.getActiveError();
8g.setActiveErrors(Ext.Array.from(h));if(b!==g.getActiveError()){g.updateLayout()}},clearInvalid:function(){var g=this,b=g.hasActiveError();g.unsetActiveError();if(b){g.updateLayout()}},getSubmitData:function(){var b=this,g=null,h;if(!b.disabled&&b.submitValue&&!b.isFileUpload()){h=b.getSubmitValue();if(h!==null){g={};g[b.getName()]=h}}return g},getSubmitValue:function(){var g=this,b=g.delimiter,h=g.getValue();return Ext.isString(b)?h.join(b):h},getValue:function(){return this.value||[]},getRecordsForValue:function(z){var w=this,b=[],A=w.store.getRange(),C=w.valueField,o=0,B=A.length,g,h,q;for(q=z.length;o<q;++o){for(h=0;h<B;++h){g=A[h];if(g.get(C)==z[o]){b.push(g)}}}return b},setupValue:function(z){var g=this.delimiter,o=this.valueField,q=0,h,b,w;if(Ext.isDefined(z)){if(g&&Ext.isString(z)){z=z.split(g)}else{if(!Ext.isArray(z)){z=[z]}}for(b=z.length;q<b;++q){w=z[q];if(w&&w.isModel){z[q]=w.get(o)}}h=Ext.Array.unique(z)}else{h=[]}return h},setValue:function(o){var h=this,g=h.boundList.getSelectionModel(),b=h.store;if(!b.getCount()){b.on({load:Ext.Function.bind(h.setValue,h,[o]),single:true});return}o=h.setupValue(o);h.mixins.field.setValue.call(h,o);if(h.rendered){++h.ignoreSelectChange;g.deselectAll();if(o.length){g.select(h.getRecordsForValue(o))}--h.ignoreSelectChange}else{h.selectOnRender=true}},clearValue:function(){this.setValue([])},onEnable:function(){var b=this.boundList;this.callParent();if(b){b.enable()}},onDisable:function(){var b=this.boundList;this.callParent();if(b){b.disable()}},getErrors:function(g){var b=this,h=Ext.String.format,q=[],o;g=Ext.Array.from(g||b.getValue());o=g.length;if(!b.allowBlank&&o<1){q.push(b.blankText)}if(o<b.minSelections){q.push(h(b.minSelectionsText,b.minSelections))}if(o>b.maxSelections){q.push(h(b.maxSelectionsText,b.maxSelections))}return q},onDestroy:function(){var b=this;b.bindStore(null);Ext.destroy(b.dragZone,b.dropZone);b.callParent()},onBindStore:function(b){var g=this.boundList;if(g){g.bindStore(b)}}});Ext.define("Ext.ux.form.ItemSelector",{extend:Ext.ux.form.MultiSelect,alias:["widget.itemselectorfield","widget.itemselector"],alternateClassName:["Ext.ux.ItemSelector"],hideNavIcons:false,buttons:["top","up","add","remove","down","bottom"],buttonsText:{top:"Move to Top",up:"Move Up",add:"Add to Selected",remove:"Remove from Selected",down:"Move Down",bottom:"Move to Bottom"},layout:{type:"hbox",align:"stretch"},initComponent:function(){var b=this;b.ddGroup=b.id+"-dd";b.callParent();b.bindStore(b.store)},createList:function(g){var b=this;return Ext.create("Ext.ux.form.MultiSelect",{submitValue:false,getSubmitData:function(){return null},getModelData:function(){return null},flex:1,dragGroup:b.ddGroup,dropGroup:b.ddGroup,title:g,store:{model:b.store.model,data:[]},displayField:b.displayField,valueField:b.valueField,disabled:b.disabled,listeners:{boundList:{scope:b,itemdblclick:b.onItemDblClick,drop:b.syncValue}}})},setupItems:function(){var b=this;b.fromField=b.createList(b.fromTitle);b.toField=b.createList(b.toTitle);return[b.fromField,{xtype:"container",margins:"0 4",layout:{type:"vbox",pack:"center"},items:b.createButtons()},b.toField]},createButtons:function(){var g=this,b=[];if(!g.hideNavIcons){Ext.Array.forEach(g.buttons,function(h){b.push({xtype:"button",tooltip:g.buttonsText[h],handler:g["on"+Ext.String.capitalize(h)+"BtnClick"],cls:Ext.baseCSSPrefix+"form-itemselector-btn",iconCls:Ext.baseCSSPrefix+"form-itemselector-"+h,navBtn:true,scope:g,margin:"4 0 0 0"})})}return b},getSelections:function(g){var b=g.getStore();return Ext.Array.sort(g.getSelectionModel().getSelection(),function(o,h){o=b.indexOf(o);h=b.indexOf(h);if(o<h){return -1}else{if(o>h){return 1}}return 0})},onTopBtnClick:function(){var h=this.toField.boundList,b=h.getStore(),g=this.getSelections(h);b.suspendEvents();b.remove(g,true);b.insert(0,g);b.resumeEvents();h.refresh();this.syncValue();h.getSelectionModel().select(g)},onBottomBtnClick:function(){var h=this.toField.boundList,b=h.getStore(),g=this.getSelections(h);b.suspendEvents();b.remove(g,true);b.add(g);b.resumeEvents();h.refresh();this.syncValue();h.getSelectionModel().select(g)},onUpBtnClick:function(){var w=this.toField.boundList,g=w.getStore(),q=this.getSelections(w),z,o=0,b=q.length,h=0;g.suspendEvents();for(;o<b;++o,h++){z=q[o];h=Math.max(h,g.indexOf(z)-1);g.remove(z,true);g.insert(h,z)}g.resumeEvents();w.refresh();this.syncValue();w.getSelectionModel().select(q)},onDownBtnClick:function(){var q=this.toField.boundList,b=q.getStore(),o=this.getSelections(q),w,h=o.length-1,g=b.getCount()-1;b.suspendEvents();for(;h>-1;--h,g--){w=o[h];g=Math.min(g,b.indexOf(w)+1);b.remove(w,true);b.insert(g,w)}b.resumeEvents();q.refresh();this.syncValue();q.getSelectionModel().select(o)},onAddBtnClick:function(){var g=this,b=g.getSelections(g.fromField.boundList);g.moveRec(true,b);g.toField.boundList.getSelectionModel().select(b)},onRemoveBtnClick:function(){var g=this,b=g.getSelections(g.toField.boundList);g.moveRec(false,b);g.fromField.boundList.getSelectionModel().select(b)},moveRec:function(w,q){var h=this,z=h.fromField,b=h.toField,g=w?z.store:b.store,o=w?b.store:z.store;g.suspendEvents();o.suspendEvents();g.remove(q);o.add(q);g.resumeEvents();o.resumeEvents();z.boundList.refresh();b.boundList.refresh();h.syncValue()},syncValue:function(){var b=this;b.mixins.field.setValue.call(b,b.setupValue(b.toField.store.getRange()))},onItemDblClick:function(b,g){this.moveRec(b===this.fromField.boundList,g)}
8,setValue:function(w){var o=this,z=o.fromField,b=o.toField,g=z.store,q=b.store,h;if(!o.fromStorePopulated){o.fromField.store.on({load:Ext.Function.bind(o.setValue,o,[w]),single:true});return}w=o.setupValue(w);o.mixins.field.setValue.call(o,w);h=o.getRecordsForValue(w);g.suspendEvents();q.suspendEvents();g.removeAll();q.removeAll();o.populateFromStore(o.store);Ext.Array.forEach(h,function(A){if(g.indexOf(A)>-1){g.remove(A)}q.add(A)});g.resumeEvents();q.resumeEvents();Ext.suspendLayouts();z.boundList.refresh();b.boundList.refresh();Ext.resumeLayouts(true)},onBindStore:function(b,g){var h=this;if(h.fromField){h.fromField.store.removeAll();h.toField.store.removeAll();if(b.getCount()){h.populateFromStore(b)}else{h.store.on("load",h.populateFromStore,h)}}},populateFromStore:function(b){var g=this.fromField.store;this.fromStorePopulated=true;g.add(b.getRange());g.fireEvent("load",g)},onEnable:function(){var b=this;b.callParent();b.fromField.enable();b.toField.enable();Ext.Array.forEach(b.query("[navBtn]"),function(g){g.enable()})},onDisable:function(){var b=this;b.callParent();b.fromField.disable();b.toField.disable();Ext.Array.forEach(b.query("[navBtn]"),function(g){g.disable()})},onDestroy:function(){this.bindStore(null);this.callParent()}});Ext.define("Ext.ux.form.SearchField",{extend:Ext.form.field.Trigger,alias:"widget.searchfield",trigger1Cls:Ext.baseCSSPrefix+"form-clear-trigger",trigger2Cls:Ext.baseCSSPrefix+"form-search-trigger",hasSearch:false,paramName:"query",initComponent:function(){var b=this;b.callParent(arguments);b.on("specialkey",function(g,h){if(h.getKey()==h.ENTER){b.onTrigger2Click()}});b.store.remoteFilter=true;if(!b.store.proxy.hasOwnProperty("filterParam")){b.store.proxy.filterParam=b.paramName}b.store.proxy.encodeFilters=function(g){return g[0].value}},afterRender:function(){this.callParent();this.triggerCell.item(0).setDisplayed(false)},onTrigger1Click:function(){var b=this;if(b.hasSearch){b.setValue("");b.store.clearFilter();b.hasSearch=false;b.triggerCell.item(0).setDisplayed(false);b.updateLayout()}},onTrigger2Click:function(){var b=this,g=b.getValue();if(g.length>0){b.store.filter({id:b.paramName,property:b.paramName,value:g});b.hasSearch=true;b.triggerCell.item(0).setDisplayed(true);b.updateLayout()}}});Ext.define("Ext.ux.grid.TransformGrid",{extend:Ext.grid.Panel,constructor:function(I,w){w=Ext.apply({},w);I=this.table=Ext.get(I);var B=w.fields||[],h=w.columns||[],C=[],E=[],q=I.query("thead th"),A=0,D=q.length,z=I.dom,g,H,F,o,G,b;for(;A<D;++A){o=q[A];G=o.innerHTML;b="tcol-"+A;C.push(Ext.applyIf(B[A]||{},{name:b,mapping:"td:nth("+(A+1)+")/@innerHTML"}));E.push(Ext.applyIf(h[A]||{},{text:G,dataIndex:b,width:o.offsetWidth,tooltip:o.title,sortable:true}))}if(w.width){g=w.width}else{g=I.getWidth()+1}if(w.height){H=w.height}Ext.applyIf(w,{store:{data:z,fields:C,proxy:{type:"memory",reader:{record:"tbody tr",type:"xml"}}},columns:E,width:g,height:H});this.callParent([w]);if(w.remove!==false){z.parentNode.removeChild(z)}},onDestroy:function(){this.callParent();this.table.remove();delete this.table}});Ext.define("Ext.ux.grid.filter.BooleanFilter",{extend:Ext.ux.grid.filter.Filter,alias:"gridfilter.boolean",defaultValue:false,yesText:"Yes",noText:"No",init:function(b){var h=Ext.id();this.options=[Ext.create("Ext.menu.CheckItem",{text:this.yesText,group:h,checked:this.defaultValue===true}),Ext.create("Ext.menu.CheckItem",{text:this.noText,group:h,checked:this.defaultValue===false})];this.menu.add(this.options[0],this.options[1]);for(var g=0;g<this.options.length;g++){this.options[g].on("click",this.fireUpdate,this);this.options[g].on("checkchange",this.fireUpdate,this)}},getValue:function(){return this.options[0].checked},setValue:function(b){this.options[b?0:1].setChecked(true)},getSerialArgs:function(){var b={type:"boolean",value:this.getValue()};return b},validateRecord:function(b){return b.get(this.dataIndex)==this.getValue()}});Ext.define("Ext.ux.grid.filter.DateFilter",{extend:Ext.ux.grid.filter.Filter,alias:"gridfilter.date",afterText:"After",beforeText:"Before",compareMap:{before:"lt",after:"gt",on:"eq"},dateFormat:"m/d/Y",menuItems:["before","after","-","on"],menuItemCfgs:{selectOnFocus:true,width:125},onText:"On",pickerOpts:{},init:function(o){var z=this,h,q,b,w,g;h=Ext.apply(z.pickerOpts,{xtype:"datepicker",minDate:z.minDate,maxDate:z.maxDate,format:z.dateFormat,listeners:{scope:z,select:z.onMenuSelect}});
8z.fields={};for(q=0,b=z.menuItems.length;q<b;q++){w=z.menuItems[q];if(w!=="-"){g={itemId:"range-"+w,text:z[w+"Text"],menu:Ext.create("Ext.menu.Menu",{plain:true,items:[Ext.apply(h,{itemId:w})]}),listeners:{scope:z,checkchange:z.onCheckChange}};w=z.fields[w]=Ext.create("Ext.menu.CheckItem",g)}z.menu.add(w)}z.values={}},onCheckChange:function(q,o){var h=this,g=q.menu.items.first(),w=g.itemId,b=h.values;if(o){b[w]=g.getValue()}else{delete b[w]}h.setActive(h.isActivatable());h.fireEvent("update",h)},onInputKeyUp:function(h,g){var b=g.getKey();if(b==g.RETURN&&h.isValid()){g.stopEvent();this.menu.hide()}},onMenuSelect:function(h,g){var b=this.fields,o=this.fields[h.itemId];o.setChecked(true);if(o==b.on){b.before.setChecked(false,true);b.after.setChecked(false,true)}else{b.on.setChecked(false,true);if(o==b.after&&this.getFieldValue("before")<g){b.before.setChecked(false,true)}else{if(o==b.before&&this.getFieldValue("after")>g){b.after.setChecked(false,true)}}}this.values[h.itemId]=g;this.fireEvent("update",this);h.up("menu").hide()},getValue:function(){var g,b={};for(g in this.fields){if(this.fields[g].checked){b[g]=this.getFieldValue(g)}}return b},setValue:function(h,g){var b;for(b in this.fields){if(h[b]){this.getPicker(b).setValue(h[b]);this.fields[b].setChecked(true)}else{if(!g){this.fields[b].setChecked(false)}}}this.fireEvent("update",this)},isActivatable:function(){var b;for(b in this.fields){if(this.fields[b].checked){return true}}return false},getSerialArgs:function(){var b=[];for(var g in this.fields){if(this.fields[g].checked){b.push({type:"date",comparison:this.compareMap[g],value:Ext.Date.format(this.getFieldValue(g),this.dateFormat)})}}return b},getFieldValue:function(b){return this.values[b]},getPicker:function(b){return this.fields[b].menu.items.first()},validateRecord:function(g){var h,q,o=g.get(this.dataIndex),b=Ext.Date.clearTime;if(!Ext.isDate(o)){return false}o=b(o,true).getTime();for(h in this.fields){if(this.fields[h].checked){q=b(this.getFieldValue(h),true).getTime();if(h=="before"&&q<=o){return false}if(h=="after"&&q>=o){return false}if(h=="on"&&q!=o){return false}}}return true}});Ext.define("Ext.ux.grid.filter.DateTimeFilter",{extend:Ext.ux.grid.filter.DateFilter,alias:"gridfilter.datetime",dateDefaults:{xtype:"datepicker",format:"m/d/Y"},timeDefaults:{xtype:"timepicker",width:100,height:200,format:"g:i A"},dockDefaults:{dock:"top",buttonText:"Filter"},selectDateToFilter:true,positionDatepickerFirst:true,reTime:/\s(am|pm)/i,addTimeSelection:function(h,C){var A=this,D=C.getSelectionModel().getSelection(),g,z,B,b,q=0,w=[],o=["setHours","setMinutes","setSeconds","setMilliseconds"];if(D.length){g=D[0].get("disp");w=g.replace(A.reTime,"").split(":");for(z=w.length;q<z;q++){B=o[q];b=w[q];if(b){h[B](parseInt(b,10))}}}return h},init:function(g){var D=this,b=Ext.applyIf(D.date||{},D.dateDefaults),F=Ext.applyIf(D.time||{},D.timeDefaults),o=D.dock,h={click:{scope:D,click:D.onMenuSelect},select:{scope:D,select:D.onMenuSelect}},B,w,A,E,z,C=[b,F],q=0;if(!D.positionDatepickerFirst){C=C.reverse();q=1}B=Ext.apply(D.pickerOpts,{xtype:!o?"container":"panel",layout:"hbox",items:C});if(!o){if(D.selectDateToFilter){b.listeners=h.select}else{F.listeners=h.select}}else{if(o){D.selectDateToFilter=null;if(o.dockedItems){B.dockedItems=o.dockedItems;B.dockedItems.items[o.bindToItem||0].listeners=h.click}else{if(Ext.isBoolean(o)){o={}}o=Ext.applyIf(o,D.dockDefaults);B.dockedItems={xtype:"toolbar",dock:o.dock,items:[{xtype:"button",text:o.buttonText,flex:1,listeners:h.click}]}}}}D.fields={};for(w=0,A=D.menuItems.length;w<A;w++){E=D.menuItems[w];if(E!=="-"){B.items[q].itemId=E;z={itemId:E,text:D[E+"Text"],menu:Ext.create("Ext.menu.Menu",{items:B}),listeners:{scope:D,checkchange:D.onCheckChange}};E=D.fields[E]=Ext.create("Ext.menu.CheckItem",z)}D.menu.add(E)}D.values={}},onCheckChange:function(q,o){var h=this,A=q.menu,g=A.down("timepicker"),w=A.down("datepicker"),z=w.itemId,b=h.values;if(o){b[z]=h.addTimeSelection(w.value,g)}else{delete b[z]}h.setActive(h.isActivatable());h.fireEvent("update",h)},onMenuSelect:function(h,g){var o=this,w=o.menu,b=o.fields,q;if(o.dock){h=w.getFocusEl().down("datepicker")}q=o.fields[h.itemId];q.setChecked(true);if(q==b.on){b.before.setChecked(false,true);b.after.setChecked(false,true)}else{b.on.setChecked(false,true);if(q==b.after&&o.getFieldValue("before")<g){b.before.setChecked(false,true)}else{if(q==b.before&&o.getFieldValue("after")>g){b.after.setChecked(false,true)}}}o.fireEvent("update",o);h.ownerCt.ownerCt.hide()},getSerialArgs:function(){var q=this,o,b=q.fields,h=[],g=Ext.apply(q.dateDefaults,q.date||{}),w=Ext.apply(q.timeDefaults,q.time||{});for(o in b){if(b[o].checked){h.push({type:"datetime",comparison:q.compareMap[o],value:Ext.Date.format(q.getFieldValue(o),g.format+" "+w.format)})}}return h},setValue:function(w,h){var o=this,b=o.fields,g,z,q;for(g in b){z=w[g];if(z){q=o.menu.down('datepicker[itemId="'+g+'"]');q.update(z);q.value=z;b[g].setChecked(true)}else{if(!h){b[g].setChecked(false)}}}o.fireEvent("update",o)},validateRecord:function(b){var h=this,g,q,o=b.get(h.dataIndex);if(!Ext.isDate(o)){return false}o=o.getTime();for(g in h.fields){if(h.fields[g].checked){q=h.getFieldValue(g).getTime();if(g=="before"&&q<=o){return false}if(g=="after"&&q>=o){return false}if(g=="on"&&q!=o){return false}}}return true}});Ext.define("Ext.ux.grid.filter.NumericFilter",{extend:Ext.ux.grid.filter.Filter,alias:"gridfilter.numeric",createMenu:function(b){var g=this,h;h=Ext.create("Ext.ux.grid.menu.RangeMenu",b);h.on("update",g.fireUpdate,g);return h},getValue:function(){return this.menu.getValue()},setValue:function(b){this.menu.setValue(b)},isActivatable:function(){var b=this.getValue(),g;
8for(g in b){if(b[g]!==undefined){return true}}return false},getSerialArgs:function(){var h,g=[],b=this.menu.getValue();for(h in b){g.push({type:"numeric",comparison:h,value:b[h]})}return g},validateRecord:function(b){var o=b.get(this.dataIndex),g=this.getValue(),h=Ext.isNumber;if(h(g.eq)&&o!=g.eq){return false}if(h(g.lt)&&o>=g.lt){return false}if(h(g.gt)&&o<=g.gt){return false}return true}});Ext.define("Ext.ux.grid.filter.StringFilter",{extend:Ext.ux.grid.filter.Filter,alias:"gridfilter.string",iconCls:"ux-gridfilter-text-icon",emptyText:"Enter Filter Text...",selectOnFocus:true,width:125,init:function(b){Ext.applyIf(b,{enableKeyEvents:true,labelCls:"ux-rangemenu-icon "+this.iconCls,hideEmptyLabel:false,labelSeparator:"",labelWidth:29,listeners:{scope:this,keyup:this.onInputKeyUp,el:{click:function(g){g.stopPropagation()}}}});this.inputItem=Ext.create("Ext.form.field.Text",b);this.menu.add(this.inputItem);this.menu.showSeparator=false;this.updateTask=Ext.create("Ext.util.DelayedTask",this.fireUpdate,this)},getValue:function(){return this.inputItem.getValue()},setValue:function(b){this.inputItem.setValue(b);this.fireEvent("update",this)},isActivatable:function(){return this.inputItem.getValue().length>0},getSerialArgs:function(){return{type:"string",value:this.getValue()}},validateRecord:function(b){var g=b.get(this.dataIndex);if(typeof g!="string"){return(this.getValue().length===0)}return g.toLowerCase().indexOf(this.getValue().toLowerCase())>-1},onInputKeyUp:function(h,g){var b=g.getKey();if(b==g.RETURN&&h.isValid()){g.stopEvent();this.menu.hide();return}this.updateTask.delay(this.updateBuffer)}});Ext.define("Ext.ux.grid.menu.ListMenu",{extend:Ext.menu.Menu,idField:"id",labelField:"text",loadingText:"Loading...",loadOnShow:true,single:false,plain:true,constructor:function(b){var h=this,g;h.selected=[];h.addEvents("checkchange");h.callParent(arguments);g=h.grid.store;if(h.store){h.add({text:h.loadingText,iconCls:"loading-indicator"});h.store.on("load",h.onLoad,h)}else{if(g.data.length){h.createMenuStore()}else{g.on("load",h.createMenuStore,h,{single:true})}}},destroy:function(){var g=this,b=g.store;if(b){if(g.autoStore){b.destroyStore()}else{b.un("unload",g.onLoad,g)}}g.callParent()},show:function(){var b=this;if(b.loadOnShow&&!b.loaded&&!b.store.loading){b.store.load()}b.callParent()},onLoad:function(h,g){var z=this,w,A,o,b,q={checkchange:z.checkChange,scope:z};Ext.suspendLayouts();z.removeAll(true);w=z.single?Ext.id():null;for(o=0,b=g.length;o<b;o++){A=g[o].get(z.idField);z.add(Ext.create("Ext.menu.CheckItem",{text:g[o].get(z.labelField),group:w,checked:Ext.Array.contains(z.selected,A),hideOnClick:false,value:A,listeners:q}))}z.loaded=true;Ext.resumeLayouts(true);z.fireEvent("load",z,g)},createMenuStore:function(){var o=this,g=[],h,b,q;o.options=o.grid.store.collect(o.dataIndex,false,true);for(h=0,b=o.options.length;h<b;h++){q=o.options[h];switch(Ext.type(q)){case"array":g.push(q);break;case"object":g.push([q[o.idField],q[o.labelField]]);break;default:if(q!=null){g.push([q,q])}}}o.store=Ext.create("Ext.data.ArrayStore",{fields:[o.idField,o.labelField],data:g,listeners:{load:o.onLoad,scope:o}});o.loaded=true;o.autoStore=true},getSelected:function(){return this.selected},setSelected:function(b){b=this.selected=[].concat(b);if(this.loaded){this.items.each(function(o){o.setChecked(false,true);for(var h=0,g=b.length;h<g;h++){if(o.value==b[h]){o.setChecked(true,true)}}})}},checkChange:function(g,b){var h=[];this.items.each(function(o){if(o.checked){h.push(o.value)}});this.selected=h;this.fireEvent("checkchange",g,b)}});Ext.define("Ext.ux.grid.menu.RangeMenu",{extend:Ext.menu.Menu,fieldCls:"Ext.form.field.Number",itemIconCls:{gt:"ux-rangemenu-gt",lt:"ux-rangemenu-lt",eq:"ux-rangemenu-eq"},fieldLabels:{gt:"Greater Than",lt:"Less Than",eq:"Equal To"},menuItemCfgs:{emptyText:"Enter Number...",selectOnFocus:false,width:155},menuItems:["lt","gt","-","eq"],plain:true,constructor:function(b){var w=this,h,z,g,q,A,o,B;w.callParent(arguments);h=w.fields=w.fields||{};z=w.fieldCfg=w.fieldCfg||{};w.addEvents("update");w.updateTask=Ext.create("Ext.util.DelayedTask",w.fireUpdate,w);for(g=0,q=w.menuItems.length;g<q;g++){A=w.menuItems[g];if(A!=="-"){o={itemId:"range-"+A,enableKeyEvents:true,hideEmptyLabel:false,labelCls:"ux-rangemenu-icon "+w.itemIconCls[A],labelSeparator:"",labelWidth:29,listeners:{scope:w,change:w.onInputChange,keyup:w.onInputKeyUp,el:{click:this.stopFn}},activate:Ext.emptyFn,deactivate:Ext.emptyFn};Ext.apply(o,Ext.applyIf(h[A]||{},z[A]),w.menuItemCfgs);B=o.fieldCls||w.fieldCls;A=h[A]=Ext.create(B,o)}w.add(A)}},stopFn:function(b){b.stopPropagation()},fireUpdate:function(){this.fireEvent("update",this)},getValue:function(){var g={},b=this.fields,h,o;for(h in b){if(b.hasOwnProperty(h)){o=b[h];if(o.isValid()&&o.getValue()!==null){g[h]=o.getValue()}}}return g},setValue:function(o){var h=this,b=h.fields,g,q;for(g in b){if(b.hasOwnProperty(g)){q=b[g];q.suspendEvents();q.setValue(g in o?o[g]:"");q.resumeEvents()}}h.fireEvent("update",h)},onInputKeyUp:function(g,b){if(b.getKey()===b.RETURN&&g.isValid()){b.stopEvent();this.hide()}},onInputChange:function(w){var q=this,h=q.fields,g=h.eq,o=h.gt,b=h.lt;if(w==g){if(o){o.setValue(null)}if(b){b.setValue(null)}}else{g.setValue(null)}this.updateTask.delay(this.updateBuffer)}});Ext.define("Ext.ux.layout.Center",{extend:Ext.layout.container.Fit,alias:"layout.ux.center",percentRe:/^\d+(?:\.\d+)?\%$/,itemCls:"ux-layout-center-item",initLayout:function(){this.callParent(arguments);this.owner.addCls("ux-layout-center")},getItemSizePolicy:function(b){var g=this.callParent(arguments);if(typeof b.width=="number"){g=this.sizePolicies[g.setsHeight?2:0]}return g},getPos:function(g,o,h){var b=g.props[h]+o.margins[h],q=Math.round((o.targetSize[h]-b)/2);return Math.max(q,0)},getSize:function(g,o,h){var b=g[h];if(typeof b=="string"&&this.percentRe.test(b)){b=parseFloat(b)/100}else{b=g[h+"Ratio"]}return o.targetSize[h]*(b||1)-o.margins[h]},positionItemX:function(b,h){var g=this.getPos(b,h,"width");b.setProp("x",g)},positionItemY:function(b,h){var g=this.getPos(b,h,"height");b.setProp("y",g)},setItemHeight:function(g,h){var b=this.getSize(g.target,h,"height");g.setHeight(b)},setItemWidth:function(g,h){var b=this.getSize(g.target,h,"width");g.setWidth(b)}});Ext.define("Ext.ux.statusbar.ValidationStatus",{extend:Ext.Component,errorIconCls:"x-status-error",errorListCls:"x-status-error-list",validIconCls:"x-status-valid",showText:"The form has errors (click for details...)",hideText:"Click again to hide the error list",submitText:"Saving...",init:function(g){var b=this;b.statusBar=g;g.on({single:true,scope:b,render:b.onStatusbarRender,beforedestroy:b.destroy});g.on({click:{element:"el",fn:b.onStatusClick,scope:b,buffer:200}})},onStatusbarRender:function(h){var g=this,b=function(){g.monitor=true};g.monitor=true;g.errors=Ext.create("Ext.util.MixedCollection");g.listAlign=(h.statusAlign==="right"?"br-tr?":"bl-tl?");if(g.form){g.formPanel=Ext.getCmp(g.form);g.basicForm=g.formPanel.getForm();g.startMonitoring();g.basicForm.on("beforeaction",function(q,o){if(o.type==="submit"){g.monitor=false}});g.basicForm.on("actioncomplete",b);g.basicForm.on("actionfailed",b)}},startMonitoring:function(){this.basicForm.getFields().each(function(b){b.on("val
8iditychange",this.onFieldValidation,this)},this)},stopMonitoring:function(){this.basicForm.getFields().each(function(b){b.un("validitychange",this.onFieldValidation,this)},this)},onDestroy:function(){this.stopMonitoring();this.statusBar.statusEl.un("click",this.onStatusClick,this);this.callParent(arguments)},onFieldValidation:function(g,h){var b=this,o;if(!b.monitor){return false}o=g.getErrors()[0];if(o){b.errors.add(g.id,{field:g,msg:o})}else{b.errors.removeAtKey(g.id)}this.updateErrorList();if(b.errors.getCount()>0){if(b.statusBar.getText()!==b.showText){b.statusBar.setStatus({text:b.showText,iconCls:b.errorIconCls})}}else{b.statusBar.clearStatus().setIcon(b.validIconCls)}},updateErrorList:function(){var g=this,h,b=g.getMsgEl();if(g.errors.getCount()>0){h=["<ul>"];this.errors.each(function(o){h.push('<li id="x-err-',o.field.id,'"><a href="#">',o.msg,"</a></li>")});h.push("</ul>");b.update(h.join(""))}else{b.update("")}b.setSize("auto","auto")},getMsgEl:function(){var h=this,b=h.msgEl,g;if(!b){b=h.msgEl=Ext.DomHelper.append(Ext.getBody(),{cls:h.errorListCls},true);b.hide();b.on("click",function(o){g=o.getTarget("li",10,true);if(g){Ext.getCmp(g.id.split("x-err-")[1]).focus();h.hideErrors()}},null,{stopEvent:true})}return b},showErrors:function(){var b=this;b.updateErrorList();b.getMsgEl().alignTo(b.statusBar.getEl(),b.listAlign).slideIn("b",{duration:300,easing:"easeOut"});b.statusBar.setText(b.hideText);b.formPanel.body.on("click",b.hideErrors,b,{single:true})},hideErrors:function(){var b=this.getMsgEl();if(b.isVisible()){b.slideOut("b",{duration:300,easing:"easeIn"});this.statusBar.setText(this.showText)}this.formPanel.body.un("click",this.hideErrors,this)},onStatusClick:function(){if(this.getMsgEl().isVisible()){this.hideErrors()}else{if(this.errors.getCount()>0){this.showErrors()}}}});/*! 9 * Adaptive JS Library 3.46.11. 10 * Copyright(c) 2014-2026 Asplan Viak AS. 11 * www.avinet.no / www.asplanviak.no 12 */
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.