Commit 9a7d948df614633f20d5d581849f510e36622e58

Authored by Edmar Moretti
1 parent e31bcdba

Inclusão de combo para escolha do tema na ferramenta cortina

Showing 1 changed file with 98 additions and 31 deletions   Show diff stats
ferramentas/cortina/index.js.php
... ... @@ -74,6 +74,7 @@ i3GEOF.cortina = {
74 74 }
75 75 catch(erro){alert(erro);}
76 76 i3GEOF.cortina.criaslide();
  77 + i3GEOF.cortina.comboTemas();
77 78 },
78 79 /*
79 80 Function: html
... ... @@ -85,13 +86,14 @@ i3GEOF.cortina = {
85 86 String com o código html
86 87 */
87 88 html:function(){
  89 + var ins = "<div id='i3GEOcortinaTemasDiv' style='text-align:left;font-size:11px'></div>";
88 90 if(navm){
89   - var ins = '<div id="slider-bg" class="yui-h-slider" style="background: url('+i3GEO.configura.locaplic+'/pacotes/yui270/build/slider/assets/bg-h.gif) no-repeat -108px 0;height: 28px;width: 210px;" tabindex="-1" title="Slider">' +
  91 + ins += '<div id="slider-bg" class="yui-h-slider" style="background: url('+i3GEO.configura.locaplic+'/pacotes/yui270/build/slider/assets/bg-h.gif) no-repeat -108px 0;height: 28px;width: 210px;" tabindex="-1" title="Slider">' +
90 92 '<div id="slider-thumb" class="yui-slider-thumb"><img src="'+i3GEO.configura.locaplic+'/pacotes/yui270/build/slider/assets/thumb-n.gif"></div>' +
91 93 '</div>';
92 94 }
93 95 else{
94   - var ins = '<div id="slider-bg" class="yui-h-slider" style="background: url('+i3GEO.configura.locaplic+'/pacotes/yui270/build/slider/assets/bg-h.gif) no-repeat 5px 0;height: 28px;width: 210px;" tabindex="-1" title="Slider">' +
  96 + ins += '<div id="slider-bg" class="yui-h-slider" style="background: url('+i3GEO.configura.locaplic+'/pacotes/yui270/build/slider/assets/bg-h.gif) no-repeat 5px 0;height: 28px;width: 210px;" tabindex="-1" title="Slider">' +
95 97 '<div id="slider-thumb" class="yui-slider-thumb"><img src="'+i3GEO.configura.locaplic+'/pacotes/yui270/build/slider/assets/thumb-n.gif"></div>' +
96 98 '</div>';
97 99 }
... ... @@ -105,51 +107,55 @@ i3GEOF.cortina = {
105 107 Parametro:
106 108  
107 109 tema {string} - codigo do tema
108   - */
  110 + */
109 111 criaJanelaFlutuante: function(tema){
110   - if(arguments.length == 0)
  112 + if(arguments.length === 0)
111 113 {tema = i3GEO.temaAtivo;}
  114 + else
  115 + {i3GEO.ativaTema(tema);}
  116 + minimiza = function(){
  117 + i3GEO.janela.minimiza("i3GEOF.cortina");
  118 + };
112 119 var janela,divid,temp,titulo;
113 120 i3GEOF.cortina.tema = tema;
114 121 //cria a janela flutuante
115   - titulo = "Cortina "+tema+" <a class=ajuda_usuario target=_blank href='" + i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=5&idajuda=86' >&nbsp;&nbsp;&nbsp;</a>";
  122 + titulo = "Cortina <a class=ajuda_usuario target=_blank href='" + i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=5&idajuda=86' >&nbsp;&nbsp;&nbsp;</a>";
116 123 janela = i3GEO.janela.cria(
117 124 "230px",
118   - "40px",
  125 + "60px",
119 126 "",
120 127 "",
121 128 "",
122 129 titulo,
123 130 "i3GEOF.cortina",
124 131 false,
125   - "hd"
  132 + "hd",
  133 + "",
  134 + minimiza
126 135 );
127 136 divid = janela[2].id;
128 137 $i("i3GEOF.cortina_corpo").style.backgroundColor = "white";
129 138 $i("i3GEOF.cortina_corpo").style.textAlign = "left";
130 139 i3GEOF.cortina.aguarde = $i("i3GEOF.cortina_imagemCabecalho").style;
131   - i3GEOF.cortina.inicia(divid);
132 140 temp = function(){
  141 + var layer,estilo;
133 142 if(i3GEO.Interface.ATUAL === "openlayers"){
134   - try{
135   - var divlayer = i3geoOL.getLayersByName(i3GEO.temaAtivo);
136   - var estilo = divlayer[0].div.style;
137   - if(navm)
138   - {estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";}
139   - else
140   - {estilo.clip = "";}
141   - }
142   - catch(e){}
  143 + layer = i3geoOL.getLayersByName(i3GEO.temaAtivo)[0];
  144 + estilo = layer.div.style;
143 145 }
144 146 if(i3GEO.Interface.ATUAL === "googlemaps"){
145   - var estilo = (i3GEO.Interface.googlemaps.retornaDivLayer(i3GEO.temaAtivo)).style;
146   - if(navm)
147   - {estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";}
148   - else
149   - {estilo.clip = "";}
  147 + layer = i3GEO.Interface.googlemaps.retornaDivLayer(i3GEO.temaAtivo);
  148 + estilo = layer.style;
150 149 }
  150 + estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";
  151 + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEOF.cortina.comboTemas()") > 0)
  152 + {i3GEO.eventos.ATUALIZAARVORECAMADAS.remove("i3GEOF.cortina.comboTemas()");}
  153 + i3GEOF.cortina.slider = null;
151 154 };
152 155 YAHOO.util.Event.addListener(janela[0].close, "click", temp);
  156 + if(i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search("i3GEOF.cortina.comboTemas()") < 0)
  157 + {i3GEO.eventos.ATUALIZAARVORECAMADAS.push("i3GEOF.cortina.comboTemas()");}
  158 + i3GEOF.cortina.inicia(divid);
153 159 },
154 160 /*
155 161 Function: criaslide
... ... @@ -157,32 +163,93 @@ i3GEOF.cortina = {
157 163 Cria a barra deslizante com base em YAHOO.widget.Slider
158 164 */
159 165 criaslide: function(){
160   - var slider = YAHOO.widget.Slider.getHorizSlider($i("slider-bg"),$i("slider-thumb"), 0, 200, 0),
161   - layer,
162   - estilo;
  166 + i3GEOF.cortina.slider = YAHOO.widget.Slider.getHorizSlider($i("slider-bg"),$i("slider-thumb"), 0, 200, 0);
  167 + var layer;
163 168 if(i3GEO.Interface.ATUAL === "openlayers"){
164 169 layer = i3geoOL.getLayersByName(i3GEOF.cortina.tema)[0];
165   - estilo = layer.div.style;
  170 + i3GEOF.cortina.estilo = layer.div.style;
166 171 }
167 172 if(i3GEO.Interface.ATUAL === "googlemaps"){
168 173 layer = i3GEO.Interface.googlemaps.retornaDivLayer(i3GEOF.cortina.tema);
169   - estilo = layer.style;
  174 + i3GEOF.cortina.estilo = layer.style;
170 175 }
171   - estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";
172   - slider.setValue(0,false);
173   - slider.subscribe("change", function(offsetFromStart) {
  176 + i3GEOF.cortina.estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";
  177 + i3GEOF.cortina.slider.setValue(0,false);
  178 + i3GEOF.cortina.slider.subscribe("change", function(offsetFromStart) {
174 179 var t=0,
175 180 r=i3GEO.parametros.w,
176 181 b=i3GEO.parametros.h,
177 182 l=0,
178 183 escala = r / 200;
179 184 l = l + (offsetFromStart * escala);
180   - estilo.clip = "rect("+t+"px,"+r+"px,"+b+"px,"+l+"px)";
  185 + i3GEOF.cortina.estilo.clip = "rect("+t+"px,"+r+"px,"+b+"px,"+l+"px)";
181 186 });
182 187 if(navm){
183 188 $i("slider-bg").style.left = "-100px";
184 189 $i("i3GEOF.cortina_corpo").style.background = "url("+i3GEO.configura.locaplic+"/pacotes/yui270/build/slider/assets/bg-h.gif) white no-repeat 10px 0px";
185 190 }
  191 + },
  192 + /*
  193 + Function: reiniciaSlide
  194 +
  195 + Zera a barra do slide
  196 + */
  197 + reiniciaSlide: function(){
  198 + var divlayer,layer;
  199 + i3GEOF.cortina.slider.setValue(0,false);
  200 + if(i3GEO.Interface.ATUAL === "openlayers"){
  201 + layer = i3geoOL.getLayersByName(i3GEOF.cortina.tema)[0];
  202 + i3GEOF.cortina.estilo = layer.div.style;
  203 + }
  204 + if(i3GEO.Interface.ATUAL === "googlemaps"){
  205 + layer = i3GEO.Interface.googlemaps.retornaDivLayer(i3GEOF.cortina.tema);
  206 + i3GEOF.cortina.estilo = layer.style;
  207 + }
  208 + i3GEOF.cortina.slider.subscribe("change", function(offsetFromStart) {
  209 + var t=0,
  210 + r=i3GEO.parametros.w,
  211 + b=i3GEO.parametros.h,
  212 + l=0,
  213 + escala = r / 200;
  214 + l = l + (offsetFromStart * escala);
  215 + i3GEOF.cortina.estilo.clip = "rect("+t+"px,"+r+"px,"+b+"px,"+l+"px)";
  216 + });
  217 + },
  218 + /*
  219 + Function: comboTemas
  220 +
  221 + Cria um combo com a lista de temas
  222 +
  223 + Veja:
  224 +
  225 + <i3GEO.util.comboTemas>
  226 + */
  227 + comboTemas: function(){
  228 + i3GEO.util.comboTemas(
  229 + "i3GEOcortinatemas",
  230 + function(retorno){
  231 + $i("i3GEOcortinaTemasDiv").innerHTML = retorno.dados;
  232 + $i("i3GEOcortinaTemasDiv").style.display = "block";
  233 + if ($i("i3GEOcortinatemas")){
  234 + $i("i3GEOcortinatemas").onchange = function(){
  235 + i3GEOF.cortina.estilo.clip = "rect(0px,"+i3GEO.parametros.w+"px,"+i3GEO.parametros.h+"px,0px)";
  236 + var t = $i("i3GEOcortinatemas").value;
  237 + i3GEO.mapa.ativaTema(t);
  238 + i3GEOF.cortina.tema = t;
  239 + i3GEOF.cortina.reiniciaSlide();
  240 + };
  241 + $i("i3GEOcortinatemas").style = "210px";
  242 + }
  243 + if(i3GEO.temaAtivo !== ""){
  244 + $i("i3GEOcortinatemas").value = i3GEO.temaAtivo;
  245 + $i("i3GEOcortinatemas").onchange.call();
  246 + }
  247 + },
  248 + "i3GEOcortinaTemasDiv",
  249 + "",
  250 + false,
  251 + "ligados"
  252 + );
186 253 }
187 254 };
188 255 <?php error_reporting(0);if(extension_loaded('zlib')){ob_end_flush();}?>
189 256 \ No newline at end of file
... ...