Commit a4b8ed6705b9f2953f41acdd7052b1e803dba7ec
1 parent
1de58c6c
Exists in
master
parametrizando o perfil da barra que ser? compilado
Showing
31 changed files
with
228 additions
and
211 deletions
Show diff stats
app/barrabrasil.py
| ... | ... | @@ -14,8 +14,8 @@ def pagina_teste(): |
| 14 | 14 | return make_response("<h1>403 Forbidden</h1>", 403) |
| 15 | 15 | |
| 16 | 16 | @app.route('/barra.js') |
| 17 | -def barra(): | |
| 18 | - with app.open_resource('templates/barra-brasil.js') as f: | |
| 17 | +def barra(profile='default'): | |
| 18 | + with app.open_resource('templates/%s/barra-brasil.js' % profile) as f: | |
| 19 | 19 | conteudo = f.read().decode('utf-8') |
| 20 | 20 | etag = hashlib.sha1(conteudo.encode('utf-8')).hexdigest() |
| 21 | 21 | if request.if_none_match and \ |
| ... | ... | @@ -29,4 +29,9 @@ def barra(): |
| 29 | 29 | return resposta |
| 30 | 30 | |
| 31 | 31 | if __name__ == '__main__': |
| 32 | + from sys import argv | |
| 33 | + if len(argv) > 1: | |
| 34 | + profile = argv[1] | |
| 35 | + else: | |
| 36 | + profile = 'default' | |
| 32 | 37 | app.run(debug=False) | ... | ... |
assets/barra-brasil.coffee
| ... | ... | @@ -1,36 +0,0 @@ |
| 1 | - divBarra = document.getElementById("barra-brasil") | |
| 2 | - divBarra.parentNode.removeChild(divBarra) if divBarra | |
| 3 | - head = document.getElementsByTagName("head")[0] | |
| 4 | - body = document.getElementsByTagName("body")[0] | |
| 5 | - | |
| 6 | - link = document.createElement("link") | |
| 7 | - href = document.createAttribute("href") | |
| 8 | - | |
| 9 | - novaDiv = document.createElement("div") | |
| 10 | - idNovaDiv = document.createAttribute("id") | |
| 11 | - idNovaDiv.nodeValue = "barra-brasil" | |
| 12 | - novaDiv.setAttributeNode idNovaDiv | |
| 13 | - # conteudoBarra definido no barra-brasil-1.yaml e atribuido pelo assetgen | |
| 14 | - novaDiv.innerHTML = conteudoBarra | |
| 15 | - body.insertBefore(novaDiv, body.childNodes[0]) | |
| 16 | - | |
| 17 | - # src.nodeValue = "http://barra.brasil.gov.br/estilo-barra.css"; | |
| 18 | - # href.nodeValue = "http://189.9.137.173/estilo-barra.css"; | |
| 19 | - # href.nodeValue = "static/estilo-barra.css" | |
| 20 | - window._barrabrasil = | |
| 21 | - insere_css: (css) -> | |
| 22 | - style = document.createElement("style") | |
| 23 | - tipo = document.createAttribute("type") | |
| 24 | - tipo.nodeValue = "text/css" | |
| 25 | - media = document.createAttribute("media") | |
| 26 | - media.nodeValue = "all" | |
| 27 | - style.setAttributeNode tipo | |
| 28 | - style.setAttributeNode media | |
| 29 | - | |
| 30 | - if style.styleSheet #Hack para IE8 | |
| 31 | - style.styleSheet.cssText = css | |
| 32 | - else | |
| 33 | - style.appendChild document.createTextNode(css) | |
| 34 | - | |
| 35 | - head.appendChild style | |
| 36 | - |
assets/conteudo-barra.html
| ... | ... | @@ -1 +0,0 @@ |
| 1 | -<div id="wrapper-barra-brasil"><div class="brasil-flag"><a href="http://brasil.gov.br" class="link-barra">Brasil</a></div><span class="acesso-info"><a href="http://brasil.gov.br/barra#acesso-informacao" class="link-barra">Acesso à informação</a></span><ul class="list"><li class="list-item first"><a href="http://brasil.gov.br/barra#participe" class="link-barra">Participe</a></li><li class="list-item"><a href="http://www.servicos.gov.br/" class="link-barra">Serviços</a></li><li class="list-item"><a href="http://www.planalto.gov.br/legislacao" class="link-barra">Legislação</a></li><li class="list-item last last-item"><a href="http://brasil.gov.br/barra#orgaos-atuacao-canais" class="link-barra">Canais</a></li></ul></div> |
assets/estatisticas.coffee
| ... | ... | @@ -1,9 +0,0 @@ |
| 1 | - head = document.getElementsByTagName("head")[0] | |
| 2 | - novoScript = document.createElement("script") | |
| 3 | - tipo = document.createAttribute("type") | |
| 4 | - tipo.nodeValue = "text/javascript" | |
| 5 | - src = document.createAttribute("src") | |
| 6 | - src.nodeValue = "http://coletajavascript.serpro.gov.br/estatistica.js" | |
| 7 | - novoScript.setAttributeNode tipo | |
| 8 | - novoScript.setAttributeNode src | |
| 9 | - head.appendChild novoScript |
assets/estilo-barra.scss
| ... | ... | @@ -1,101 +0,0 @@ |
| 1 | -/* http://meyerweb.com/eric/tools/css/reset/ | |
| 2 | - v2.0 | 20110126 | |
| 3 | - License: none (public domain) | |
| 4 | -*/ | |
| 5 | - | |
| 6 | -/* Css reset mínimo */ | |
| 7 | -#barra-brasil { | |
| 8 | - div, a, ul, li { | |
| 9 | - margin: 0; | |
| 10 | - padding: 0; | |
| 11 | - border: 0; | |
| 12 | - font-size: 100%; | |
| 13 | - font-family: inherit; | |
| 14 | - vertical-align: baseline; | |
| 15 | - } | |
| 16 | -} | |
| 17 | - | |
| 18 | -#barra-brasil ul { | |
| 19 | - list-style: none; | |
| 20 | -} | |
| 21 | - | |
| 22 | -/* Css específico */ | |
| 23 | - | |
| 24 | -/* web font */ | |
| 25 | - | |
| 26 | -@font-face { | |
| 27 | - font-family: "Open Sans"; | |
| 28 | - font-style: normal; | |
| 29 | - font-weight: 700; | |
| 30 | - src: local("Open Sans Bold"), local("OpenSans-Bold"), url("http://barra.brasil.gov.br/static/opensans-bold.woff") format("woff"); | |
| 31 | -} | |
| 32 | - | |
| 33 | -/* fim da web font */ | |
| 34 | - | |
| 35 | -#barra-brasil { | |
| 36 | - height: 32px; | |
| 37 | - background: #f1f1f1; | |
| 38 | - font-weight: bold; | |
| 39 | - font-size: 12px; | |
| 40 | - line-height: 32px; | |
| 41 | - font-family: "Open Sans",Arial,Helvetica,sans-serif; | |
| 42 | - a { | |
| 43 | - text-decoration: none; | |
| 44 | - } | |
| 45 | -} | |
| 46 | - | |
| 47 | -div#wrapper-barra-brasil { | |
| 48 | - position: relative; | |
| 49 | - overflow: hidden; | |
| 50 | - margin: 0 auto; | |
| 51 | - width: 100%; | |
| 52 | - max-width: 960px; | |
| 53 | -} | |
| 54 | - | |
| 55 | -#barra-brasil .brasil-flag { | |
| 56 | - float: left; | |
| 57 | - padding: 7px 0 6px; | |
| 58 | - width: 115px; | |
| 59 | - height: 19px; | |
| 60 | - border-right: 2px solid #dfdfdf; | |
| 61 | -} | |
| 62 | - | |
| 63 | -#barra-brasil .brasil-flag .link-barra { | |
| 64 | - display: block; | |
| 65 | - padding-left: 42px; | |
| 66 | - width: 43px; | |
| 67 | - background: embed("imagens/bandeira-brasil.png") 8px center no-repeat; | |
| 68 | - text-transform: uppercase; | |
| 69 | - line-height: 19px; | |
| 70 | -} | |
| 71 | - | |
| 72 | -#barra-brasil .acesso-info { | |
| 73 | - position: absolute; | |
| 74 | - left: 130px; | |
| 75 | -} | |
| 76 | - | |
| 77 | -#barra-brasil .list { | |
| 78 | - position: absolute; | |
| 79 | - top: 0; | |
| 80 | - right: 0; | |
| 81 | -} | |
| 82 | - | |
| 83 | -#barra-brasil .list .first { border-left: 2px solid #dfdfdf; } | |
| 84 | - | |
| 85 | -#barra-brasil .list-item { | |
| 86 | - display: inline-block; | |
| 87 | - padding: 0 15px 0 13px; | |
| 88 | - height: 32px; | |
| 89 | - border-right: 2px solid #dfdfdf; | |
| 90 | -} | |
| 91 | - | |
| 92 | -#barra-brasil .link-barra { color: #606060; } | |
| 93 | - | |
| 94 | -@media screen and (max-width: 668px) { | |
| 95 | - #barra-brasil .list { top: -100px; } | |
| 96 | -} | |
| 97 | - | |
| 98 | -@media screen and (min-width: 960px) { | |
| 99 | - #wrapper-barra-brasil { width: 960px; } | |
| 100 | -} | |
| 101 | - |
assets/fonts/opensans-bold.woff
No preview for this file type
assets/fonts/opensans-extrabold.woff
No preview for this file type
assets/fonts/opensans.woff
No preview for this file type
assets/imagens/ai.png
5.58 KB
assets/imagens/bandeira-brasil.png
1.22 KB
assets/imagens/barra-brasil-v3-bgx.gif
43 Bytes
assets/imagens/barra-brasil-v3-bgx.png
183 Bytes
assets/imagens/brasil.png
5.6 KB
barra-brasil-1.yaml
| ... | ... | @@ -1,42 +0,0 @@ |
| 1 | -# configuracao do assetgen para: | |
| 2 | -# - gerar o script de comportamento, minificado | |
| 3 | -# - gerar o css com as imagens incorporadas | |
| 4 | - | |
| 5 | -generate: | |
| 6 | - | |
| 7 | -- barra-brasil.js: | |
| 8 | - source: | |
| 9 | - - assets/conteudo-barra.html | |
| 10 | - - assets/barra-brasil.coffee | |
| 11 | - - assets/estatisticas.coffee | |
| 12 | - - raw: "})();" # fechamento do escopo da funcao anonima (ver template abaixo) | |
| 13 | - template: | | |
| 14 | - (function(){ | |
| 15 | - var conteudoBarra = '${source|trim}'; | |
| 16 | - | |
| 17 | -- estilo-barra.css: | |
| 18 | - source: | |
| 19 | - - assets/estilo-barra.scss | |
| 20 | - depends: | |
| 21 | - - assets/imagens/* | |
| 22 | - embed.path.root: assets | |
| 23 | - embed.url.base: imagens/ | |
| 24 | - | |
| 25 | -- barra-brasil-css.js: | |
| 26 | - source: | |
| 27 | - - build/estilo-barra.css | |
| 28 | - template: | | |
| 29 | - window._barrabrasil.insere_css('${source|trim}'); | |
| 30 | - | |
| 31 | -css.embed: true | |
| 32 | -css.embed.only: true | |
| 33 | -css.compress: true | |
| 34 | -js.compress: false | |
| 35 | -js.uglify.bin: uglifyjs | |
| 36 | -output.directory: build | |
| 37 | -output.hashed: false | |
| 38 | -output.manifest: app/assets.json | |
| 39 | - | |
| 40 | -profile.dev: | |
| 41 | - css.compress: false | |
| 42 | - js.compress: false |
barra-brasil-2.yaml
| ... | ... | @@ -1,20 +0,0 @@ |
| 1 | -# configuracao do assetgen para: | |
| 2 | -# - mesclar o css com javascript de comportamento | |
| 3 | - | |
| 4 | -generate: | |
| 5 | - | |
| 6 | -- barra-brasil.js: | |
| 7 | - source: | |
| 8 | - - build/barra-brasil.js # parte de comportamento | |
| 9 | - - build/barra-brasil-css.js # codigo de insercao do css | |
| 10 | - uglify.bin: uglifyjs | |
| 11 | - | |
| 12 | -css.embed: true | |
| 13 | -css.embed.only: true | |
| 14 | -output.directory: app/templates | |
| 15 | -output.hashed: false | |
| 16 | -output.manifest: assets.json | |
| 17 | - | |
| 18 | -profile.dev: | |
| 19 | - css.compress: false | |
| 20 | - js.compress: false |
| ... | ... | @@ -0,0 +1,36 @@ |
| 1 | + divBarra = document.getElementById("barra-brasil") | |
| 2 | + divBarra.parentNode.removeChild(divBarra) if divBarra | |
| 3 | + head = document.getElementsByTagName("head")[0] | |
| 4 | + body = document.getElementsByTagName("body")[0] | |
| 5 | + | |
| 6 | + link = document.createElement("link") | |
| 7 | + href = document.createAttribute("href") | |
| 8 | + | |
| 9 | + novaDiv = document.createElement("div") | |
| 10 | + idNovaDiv = document.createAttribute("id") | |
| 11 | + idNovaDiv.nodeValue = "barra-brasil" | |
| 12 | + novaDiv.setAttributeNode idNovaDiv | |
| 13 | + # conteudoBarra definido no barra-brasil-1.yaml e atribuido pelo assetgen | |
| 14 | + novaDiv.innerHTML = conteudoBarra | |
| 15 | + body.insertBefore(novaDiv, body.childNodes[0]) | |
| 16 | + | |
| 17 | + # src.nodeValue = "http://barra.brasil.gov.br/estilo-barra.css"; | |
| 18 | + # href.nodeValue = "http://189.9.137.173/estilo-barra.css"; | |
| 19 | + # href.nodeValue = "static/estilo-barra.css" | |
| 20 | + window._barrabrasil = | |
| 21 | + insere_css: (css) -> | |
| 22 | + style = document.createElement("style") | |
| 23 | + tipo = document.createAttribute("type") | |
| 24 | + tipo.nodeValue = "text/css" | |
| 25 | + media = document.createAttribute("media") | |
| 26 | + media.nodeValue = "all" | |
| 27 | + style.setAttributeNode tipo | |
| 28 | + style.setAttributeNode media | |
| 29 | + | |
| 30 | + if style.styleSheet #Hack para IE8 | |
| 31 | + style.styleSheet.cssText = css | |
| 32 | + else | |
| 33 | + style.appendChild document.createTextNode(css) | |
| 34 | + | |
| 35 | + head.appendChild style | |
| 36 | + | ... | ... |
| ... | ... | @@ -0,0 +1 @@ |
| 1 | +<div id="wrapper-barra-brasil"><div class="brasil-flag"><a href="http://brasil.gov.br" class="link-barra">Brasil</a></div><span class="acesso-info"><a href="http://brasil.gov.br/barra#acesso-informacao" class="link-barra">Acesso à informação</a></span><ul class="list"><li class="list-item first"><a href="http://brasil.gov.br/barra#participe" class="link-barra">Participe</a></li><li class="list-item"><a href="http://www.servicos.gov.br/" class="link-barra">Serviços</a></li><li class="list-item"><a href="http://www.planalto.gov.br/legislacao" class="link-barra">Legislação</a></li><li class="list-item last last-item"><a href="http://brasil.gov.br/barra#orgaos-atuacao-canais" class="link-barra">Canais</a></li></ul></div> | ... | ... |
| ... | ... | @@ -0,0 +1,9 @@ |
| 1 | + head = document.getElementsByTagName("head")[0] | |
| 2 | + novoScript = document.createElement("script") | |
| 3 | + tipo = document.createAttribute("type") | |
| 4 | + tipo.nodeValue = "text/javascript" | |
| 5 | + src = document.createAttribute("src") | |
| 6 | + src.nodeValue = "http://coletajavascript.serpro.gov.br/estatistica.js" | |
| 7 | + novoScript.setAttributeNode tipo | |
| 8 | + novoScript.setAttributeNode src | |
| 9 | + head.appendChild novoScript | ... | ... |
| ... | ... | @@ -0,0 +1,101 @@ |
| 1 | +/* http://meyerweb.com/eric/tools/css/reset/ | |
| 2 | + v2.0 | 20110126 | |
| 3 | + License: none (public domain) | |
| 4 | +*/ | |
| 5 | + | |
| 6 | +/* Css reset mínimo */ | |
| 7 | +#barra-brasil { | |
| 8 | + div, a, ul, li { | |
| 9 | + margin: 0; | |
| 10 | + padding: 0; | |
| 11 | + border: 0; | |
| 12 | + font-size: 100%; | |
| 13 | + font-family: inherit; | |
| 14 | + vertical-align: baseline; | |
| 15 | + } | |
| 16 | +} | |
| 17 | + | |
| 18 | +#barra-brasil ul { | |
| 19 | + list-style: none; | |
| 20 | +} | |
| 21 | + | |
| 22 | +/* Css específico */ | |
| 23 | + | |
| 24 | +/* web font */ | |
| 25 | + | |
| 26 | +@font-face { | |
| 27 | + font-family: "Open Sans"; | |
| 28 | + font-style: normal; | |
| 29 | + font-weight: 700; | |
| 30 | + src: local("Open Sans Bold"), local("OpenSans-Bold"), url("http://barra.brasil.gov.br/static/opensans-bold.woff") format("woff"); | |
| 31 | +} | |
| 32 | + | |
| 33 | +/* fim da web font */ | |
| 34 | + | |
| 35 | +#barra-brasil { | |
| 36 | + height: 32px; | |
| 37 | + background: #f1f1f1; | |
| 38 | + font-weight: bold; | |
| 39 | + font-size: 12px; | |
| 40 | + line-height: 32px; | |
| 41 | + font-family: "Open Sans",Arial,Helvetica,sans-serif; | |
| 42 | + a { | |
| 43 | + text-decoration: none; | |
| 44 | + } | |
| 45 | +} | |
| 46 | + | |
| 47 | +div#wrapper-barra-brasil { | |
| 48 | + position: relative; | |
| 49 | + overflow: hidden; | |
| 50 | + margin: 0 auto; | |
| 51 | + width: 100%; | |
| 52 | + max-width: 960px; | |
| 53 | +} | |
| 54 | + | |
| 55 | +#barra-brasil .brasil-flag { | |
| 56 | + float: left; | |
| 57 | + padding: 7px 0 6px; | |
| 58 | + width: 115px; | |
| 59 | + height: 19px; | |
| 60 | + border-right: 2px solid #dfdfdf; | |
| 61 | +} | |
| 62 | + | |
| 63 | +#barra-brasil .brasil-flag .link-barra { | |
| 64 | + display: block; | |
| 65 | + padding-left: 42px; | |
| 66 | + width: 43px; | |
| 67 | + background: embed("imagens/bandeira-brasil.png") 8px center no-repeat; | |
| 68 | + text-transform: uppercase; | |
| 69 | + line-height: 19px; | |
| 70 | +} | |
| 71 | + | |
| 72 | +#barra-brasil .acesso-info { | |
| 73 | + position: absolute; | |
| 74 | + left: 130px; | |
| 75 | +} | |
| 76 | + | |
| 77 | +#barra-brasil .list { | |
| 78 | + position: absolute; | |
| 79 | + top: 0; | |
| 80 | + right: 0; | |
| 81 | +} | |
| 82 | + | |
| 83 | +#barra-brasil .list .first { border-left: 2px solid #dfdfdf; } | |
| 84 | + | |
| 85 | +#barra-brasil .list-item { | |
| 86 | + display: inline-block; | |
| 87 | + padding: 0 15px 0 13px; | |
| 88 | + height: 32px; | |
| 89 | + border-right: 2px solid #dfdfdf; | |
| 90 | +} | |
| 91 | + | |
| 92 | +#barra-brasil .link-barra { color: #606060; } | |
| 93 | + | |
| 94 | +@media screen and (max-width: 668px) { | |
| 95 | + #barra-brasil .list { top: -100px; } | |
| 96 | +} | |
| 97 | + | |
| 98 | +@media screen and (min-width: 960px) { | |
| 99 | + #wrapper-barra-brasil { width: 960px; } | |
| 100 | +} | |
| 101 | + | ... | ... |
No preview for this file type
No preview for this file type
No preview for this file type
5.58 KB
1.22 KB
43 Bytes
183 Bytes
5.6 KB
| ... | ... | @@ -0,0 +1,42 @@ |
| 1 | +# configuracao do assetgen para: | |
| 2 | +# - gerar o script de comportamento, minificado | |
| 3 | +# - gerar o css com as imagens incorporadas | |
| 4 | + | |
| 5 | +generate: | |
| 6 | + | |
| 7 | +- barra-brasil.js: | |
| 8 | + source: | |
| 9 | + - assets/conteudo-barra.html | |
| 10 | + - assets/barra-brasil.coffee | |
| 11 | + - assets/estatisticas.coffee | |
| 12 | + - raw: "})();" # fechamento do escopo da funcao anonima (ver template abaixo) | |
| 13 | + template: | | |
| 14 | + (function(){ | |
| 15 | + var conteudoBarra = '${source|trim}'; | |
| 16 | + | |
| 17 | +- estilo-barra.css: | |
| 18 | + source: | |
| 19 | + - assets/estilo-barra.scss | |
| 20 | + depends: | |
| 21 | + - assets/imagens/* | |
| 22 | + embed.path.root: assets | |
| 23 | + embed.url.base: imagens/ | |
| 24 | + | |
| 25 | +- barra-brasil-css.js: | |
| 26 | + source: | |
| 27 | + - build/estilo-barra.css | |
| 28 | + template: | | |
| 29 | + window._barrabrasil.insere_css('${source|trim}'); | |
| 30 | + | |
| 31 | +css.embed: true | |
| 32 | +css.embed.only: true | |
| 33 | +css.compress: true | |
| 34 | +js.compress: false | |
| 35 | +js.uglify.bin: uglifyjs | |
| 36 | +output.directory: build | |
| 37 | +output.hashed: false | |
| 38 | +output.manifest: app/assets.json | |
| 39 | + | |
| 40 | +profile.dev: | |
| 41 | + css.compress: false | |
| 42 | + js.compress: false | ... | ... |
| ... | ... | @@ -0,0 +1,20 @@ |
| 1 | +# configuracao do assetgen para: | |
| 2 | +# - mesclar o css com javascript de comportamento | |
| 3 | + | |
| 4 | +generate: | |
| 5 | + | |
| 6 | +- barra-brasil.js: | |
| 7 | + source: | |
| 8 | + - build/barra-brasil.js # parte de comportamento | |
| 9 | + - build/barra-brasil-css.js # codigo de insercao do css | |
| 10 | + uglify.bin: uglifyjs | |
| 11 | + | |
| 12 | +css.embed: true | |
| 13 | +css.embed.only: true | |
| 14 | +output.directory: app/templates | |
| 15 | +output.hashed: false | |
| 16 | +output.manifest: assets.json | |
| 17 | + | |
| 18 | +profile.dev: | |
| 19 | + css.compress: false | |
| 20 | + js.compress: false | ... | ... |