Commit 47fca3363cba953d63e7054713cd4de83b18880c

Authored by Augusto dos Anjos Almeida
2 parents 41911f31 d45221bf
Exists in refactory-sass

Merge branch 'master' into refactory-sass

css/hover.custom.css 0 → 100644
... ... @@ -0,0 +1,47 @@
  1 +/* Float Shadow */
  2 +.hvr-float-shadow {
  3 + display: inline-block;
  4 + vertical-align: middle;
  5 + -webkit-transform: translateZ(0);
  6 + transform: translateZ(0);
  7 + box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  8 + -webkit-backface-visibility: hidden;
  9 + backface-visibility: hidden;
  10 + -moz-osx-font-smoothing: grayscale;
  11 + position: relative;
  12 + -webkit-transition-duration: 0.3s;
  13 + transition-duration: 0.3s;
  14 + -webkit-transition-property: transform;
  15 + transition-property: transform;
  16 + overflow: visible;
  17 +}
  18 +.hvr-float-shadow:before {
  19 + pointer-events: none;
  20 + position: absolute;
  21 + z-index: -1;
  22 + content: '';
  23 + top: 100%;
  24 + left: 5%;
  25 + height: 10px;
  26 + width: 90%;
  27 + opacity: 0;
  28 + background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  29 + background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  30 + /* W3C */
  31 + -webkit-transition-duration: 0.3s;
  32 + transition-duration: 0.3s;
  33 + -webkit-transition-property: transform, opacity;
  34 + transition-property: transform, opacity;
  35 +}
  36 +.hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active {
  37 + -webkit-transform: translateY(-5px);
  38 + transform: translateY(-5px);
  39 + /* move the element up by 5px */
  40 +}
  41 +.hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before {
  42 + opacity: 1;
  43 + -webkit-transform: translateY(5px);
  44 + transform: translateY(5px);
  45 + /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
  46 +}
  47 +
... ...
data.json 0 → 100644
... ... @@ -0,0 +1,614 @@
  1 +{
  2 + "article": {
  3 + "id": 92856,
  4 + "body": "<p>Estamos construindo o Plano Plurianual (PPA) para os pr\u00f3ximos quatros anos. O Brasil fica melhor quando todos participam. Fa\u00e7a uma sugest\u00e3o para melhorar um programa, curta ideias de outros participantes e conte para n\u00f3s sua experi\u00eancia com iniciativas do governo. Aqui suas ideias viram propostas e voc\u00ea ajuda a melhorar o Brasil. Participe!</p>",
  5 + "abstract": "",
  6 + "title": "Dialoga Brasil",
  7 + "categories": [
  8 + {
  9 + "name": "Sa\u00fade",
  10 + "id": 180,
  11 + "slug": "saude",
  12 + "image": {
  13 + "url": "/image_uploads/public/0001/4546/sau.png"
  14 + }
  15 + },
  16 + {
  17 + "name": "Seguran\u00e7a",
  18 + "id": 182,
  19 + "slug": "seguranca",
  20 + "image": {
  21 + "url": "/image_uploads/public/0001/4552/seg.png"
  22 + }
  23 + },
  24 + {
  25 + "name": "Educa\u00e7\u00e3o",
  26 + "id": 181,
  27 + "slug": "educacao",
  28 + "image": {
  29 + "url": "/image_uploads/public/0001/4576/edu.png"
  30 + }
  31 + },
  32 + {
  33 + "name": "Redu\u00e7\u00e3o da Pobreza",
  34 + "id": 183,
  35 + "slug": "reducao-da-pobreza",
  36 + "image": null
  37 + }
  38 + ],
  39 + "image": null,
  40 + "children": [
  41 + {
  42 + "id": 93871,
  43 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Qualifica\u00e7\u00e3o dos Postos de Sa\u00fade<small>Estrutura adequada para atender melhor a popula\u00e7\u00e3o na aten\u00e7\u00e3o b\u00e1sica</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>A sa\u00fade tem o desafio de garantir ambiente adequado para o atendimento \u00e0 popula\u00e7\u00e3o nos postos de sa\u00fade, sempre perto de sua casa.</p>\r\n<p>\u00c9 no atendimento b\u00e1sico que 80% dos problemas de sa\u00fade s\u00e3o resolvidos. Por isso, o Governo Federal criou, em parceria com os munic\u00edpios, um programa para reformar, ampliar e construir novos postos de sa\u00fade.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\">\r\n<p>O Brasil tem 40,6 mil postos de sa\u00fade, que atendem 75% da popula\u00e7\u00e3o. Deles, 26 mil - mais da metade - est\u00e3o sendo reestruturados com cerca de R$ 5,6 bilh\u00f5es somente do Governo Federal.</p>\r\n<p>Al\u00e9m de melhorar as instala\u00e7\u00f5es, estamos apoiando tamb\u00e9m a informatiza\u00e7\u00e3o dos postos de sa\u00fade.</p>\r\n</div>\r\n<div class=\"col-md-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/5969/posto-saude-grafico1.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>De 2010 a 2014, o investimento federal na aten\u00e7\u00e3o b\u00e1sica mais que dobrou</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/5970/posto-saude-grafico2.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Compromissos do Programa</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/5971/posto-saude-imagem1.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<ul class=\"list-unstyled\">\r\n<li>At\u00e9 2018, completar todas as obras nos 26 mil postos de sa\u00fade que j\u00e1 come\u00e7aram</li>\r\n<li>Apoiar a melhoria da estrutura f\u00edsica nos outros 14 mil postos de sa\u00fade</li>\r\n<li>Apoiar os munic\u00edpios na informatiza\u00e7\u00e3o dos postos de sa\u00fade</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>",
  44 + "abstract": "<p>Estrutura adequada para atender melhor a popula\u00e7\u00e3o na aten\u00e7\u00e3o b\u00e1sica.</p>",
  45 + "title": "Qualifica\u00e7\u00e3o dos Postos de Sa\u00fade",
  46 + "categories": [
  47 + {
  48 + "name": "Sa\u00fade",
  49 + "id": 180,
  50 + "slug": "saude",
  51 + "image": {
  52 + "url": "/image_uploads/public/0001/4546/sau.png"
  53 + }
  54 + }
  55 + ],
  56 + "image": {
  57 + "url": "/image_uploads/public/0001/4913/postodesaude.png"
  58 + }
  59 + },
  60 + {
  61 + "id": 93796,
  62 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Programa mais m\u00e9dicos<small>Mais atendimentos nos munic\u00edpios que mais necessitam</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6036/mais-medicos-foto1.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6\">\r\n<p>O Mais M\u00e9dicos garante m\u00e9dicos nos postos de sa\u00fade de todo o Pa\u00eds. O programa come\u00e7ou em 2013 e j\u00e1 mostra resultados, sendo muito bem avaliado por 95% dos usu\u00e1rios. (Pesquisa UFMG / Ipesp, 2014)</p>\r\n<p>O Mais M\u00e9dicos veio para atender a demanda hist\u00f3rica de falta de m\u00e9dicos em muitos munic\u00edpios do Brasil. Antes do lan\u00e7amentodo programa, 22 estados possu\u00edam n\u00famero de m\u00e9dicos abaixo da m\u00e9dia nacional e cinco deles tinham menos de 1 m\u00e9dico para cada mil habitantes.</p>\r\n<p>Entre 2013 e 2014, o governo federal selecionou e levou, para 3.785 munic\u00edpios, 14.462 m\u00e9dicos. Isso melhorouo atendimento de 50 milh\u00f5es de pessoas.</p>\r\n<p>Agora, em 2015, j\u00e1 s\u00e3o mais de 18 mil m\u00e9dicos atendendo 63 milh\u00f5es de pessoas, em mais de 4 mil munic\u00edpios. E n\u00e3o h\u00e1 mais nem um munic\u00edpio sem atendimento m\u00e9dico no Pa\u00eds.</p>\r\n<p>A participa\u00e7\u00e3o recorde de profissionais brasileiros nas chamadas deste ano, que s\u00e3o 92% dos que aderiram, demonstraa consolida\u00e7\u00e3o do Programa Mais M\u00e9dicos.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<div class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6037/mais-medicos-foto2.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Evolu\u00e7\u00e3o do programa</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6038/mais-medicos-foto3.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row bloco-destaque\">\r\n<div class=\"col-md-12\">\r\n<h4>At\u00e9 agora j\u00e1 foram criadas 4.600 vagas de gradua\u00e7\u00e3o e 2.586 vagas de resid\u00eancia</h4>\r\n<div class=\"row\">\r\n<div class=\"col-md-5 col-sm-5\">\r\n<p>Al\u00e9m de levar mais m\u00e9dicos paraos munic\u00edpios, o Programa Mais M\u00e9dicos tamb\u00e9m pretende aumentar e levar para o interior novas vagasem cursos de medicina, investindona qualidade da forma\u00e7\u00e3o.</p>\r\n<p>Tamb\u00e9m ser\u00e3o oferecidas vagas de resid\u00eancia m\u00e9dica para formar especialistas que atendam as necessidades de cada regi\u00e3o.</p>\r\n</div>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6355/mais-medicos-foto5.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3 class=\"titulo-destaque\">Hoje, das 22.344 vagas de medicina, 52% est\u00e3o localizados no interior.</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6041/mais-medicos-foto6.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Compromissos para o futuro</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6042/mais-medicos-foto7.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<ul class=\"list-unstyled\">\r\n<li>Levar atendimento m\u00e9dico a mais 7 milh\u00f5es de brasileiros at\u00e9 2018, chegando a 70 milh\u00f5es de pessoas atendidas.</li>\r\n<li>At\u00e9 2017, criar 6,8 mil novas vagasem faculdades de medicina, chegando a 11,5 mil.</li>\r\n<li>At\u00e9 2018, criar 9,8 mil vagasde resid\u00eancia m\u00e9dica chegandoa 12,4 mil.</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>",
  63 + "abstract": "<p>Mais atendimento nos munic\u00edpios que mais precisa.</p>",
  64 + "title": "Mais M\u00e9dicos",
  65 + "categories": [
  66 + {
  67 + "name": "Sa\u00fade",
  68 + "id": 180,
  69 + "slug": "saude",
  70 + "image": {
  71 + "url": "/image_uploads/public/0001/4546/sau.png"
  72 + }
  73 + }
  74 + ],
  75 + "image": {
  76 + "url": "/image_uploads/public/0001/4885/maismedicos.png"
  77 + }
  78 + },
  79 + {
  80 + "id": 93857,
  81 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Assist\u00eancia Social<small>Garantir acesso \u00e0 prote\u00e7\u00e3o social</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>A Assist\u00eancia Social \u00e9 um direito de todos.</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0130/assistencia-social-imagem1.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>Assist\u00eancia Social \u00e9 a pol\u00edtica que <strong>oferece apoio e prote\u00e7\u00e3o para pessoas pobres</strong> e que <strong>enfrentam problemas na fam\u00edlia ou na conviv\u00eancia social.</strong></p>\r\n<p>O atendimento \u00e9 feito por profissionais como assistentes sociais e psic\u00f3logos, que procuram compreender a situa\u00e7\u00e3o de cada um e atuam para melhorar as <strong>condi\u00e7\u00f5es de vida</strong>, de <strong>relacionamento</strong> e de <strong>inclus\u00e3o social</strong>.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0131/assistencia-social-imagem2.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Quem deve procurar a Assist\u00eancia Social:</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0132/assistencia-social-imagem3.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<ul class=\"list-unstyled\">\r\n<li><span class=\"fa fa-check\">\u00a0</span> Pessoas com problemas de viol\u00eancia dentro da fam\u00edlia</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Mulheres v\u00edtimas de viol\u00eancia dom\u00e9stica</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Fam\u00edlias que tenham crian\u00e7as ou adolescentes no trabalho infantil</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Pessoas que sofrem discrimina\u00e7\u00e3o por g\u00eanero, ra\u00e7a, etnia ou orienta\u00e7\u00e3o sexual</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Idosos e pessoas com defici\u00eancia pobres que estejam vivendo sozinhos ou em fam\u00edlias que precisem de apoio para cuidar deles</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Pessoas sem fam\u00edlia ou em situa\u00e7\u00e3o de abandono</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Adolescentes em cumprimento de medida socioeducativa de liberdade assistida e de presta\u00e7\u00e3o de servi\u00e7os \u00e0 comunidade</li>\r\n<li><span class=\"fa fa-check\">\u00a0</span> Pessoas que estejam em situa\u00e7\u00e3o de pobreza, benefici\u00e1rias do Programa Bolsa Fam\u00edlia e do Benef\u00edcio de Presta\u00e7\u00e3o Continuada</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Onde procurar a Assist\u00eancia Social</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>As pessoas podem procurar a assist\u00eancia social em unidades p\u00fablicas de atendimento \u2013 <strong>Centros de Refer\u00eancia</strong> \u2013 ou em <strong>entidades privadas de assist\u00eancia social</strong>, devidamente habilitadas pelo poder p\u00fablico.</p>\r\n<p>A Assist\u00eancia Social \u00e9 porta de entrada para que as pessoas pobres ou vulner\u00e1veis tenham acesso a benef\u00edcios e servi\u00e7os p\u00fablicos. As pessoas s\u00e3o inscritas no <strong>Cadastro \u00danico</strong> para Programas Sociais do Governo Federal.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Centro de Refer\u00eancia de Assist\u00eancia Social \u2013 Cras</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0133/assistencia-social-imagem4.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>Garante o atendimento b\u00e1sico \u00e0s pessoas com problemas sociais ou familiares, como desemprego, falta de documentos ou dificuldades no cuidado dos filhos.</p>\r\n<blockquote>\r\n<p class=\"text-center\">Existem 7.511 Cras em todo o Brasil.</p>\r\n</blockquote>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Busca Ativa</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0134/assistencia-social-imagem5.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>Nas cidades com fam\u00edlias vivendo em <strong>\u00e1reas de dif\u00edcil acesso</strong>, os Cras possuem <strong>equipes volantes</strong> que v\u00e3o at\u00e9 as casas das pessoas.</p>\r\n<p>Um exemplo disso s\u00e3o as <strong>Lanchas da Assist\u00eancia Social</strong>, que levam o atendimento a popula\u00e7\u00f5es rurais, ribeirinhas, ind\u00edgenas e quilombolas.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Centro de Refer\u00eancia Especializado de Assist\u00eanciaSocial \u2013 Creas</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>As fam\u00edlias que enfrentam situa\u00e7\u00f5es de maior gravidade, como <strong>explora\u00e7\u00e3o sexual, trabalho infantil</strong> ou <strong>viol\u00eancia dom\u00e9stica</strong> s\u00e3o recebidas no Creas, que oferece atendimentos mais individualizados e com privacidade.</p>\r\n<p>Alguns Creas trabalham especialmente com a <strong>popula\u00e7\u00e3o que mora na rua</strong>, eles s\u00e3o chamados de <strong>Centros POP</strong>. L\u00e1, essas pessoas podem guardar seus pertences, fazer higiene pessoal, participar de oficinas e receber orienta\u00e7\u00f5es. S\u00e3o inclu\u00eddas no Cadastro \u00danico, podendo acessar outros programas sociais.</p>\r\n<blockquote>\r\n<p class=\"text-center\">Existem 2.292 Creas em todo o Brasil.</p>\r\n</blockquote>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Aumento do n\u00famero de Cras e Creas</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0135/assistencia-social-imagem6.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>A rede de prote\u00e7\u00e3o da Assist\u00eancia Social cresceu muito no \u00faltimo per\u00edodo, sempre buscando estar <strong>mais pr\u00f3ximo de quem dela precise.</strong></p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Abrigos</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>A Assist\u00eancia Social oferece servi\u00e7os de acolhimento, <strong>conhecidos como abrigos</strong>. H\u00e1 abrigos para mulheres, idosos, crian\u00e7as e adolescentes e pessoas em situa\u00e7\u00e3o de rua.</p>\r\n<p>Os abrigos funcionam como <strong>moradia provis\u00f3ria</strong> e oferecem prote\u00e7\u00e3o em <strong>situa\u00e7\u00f5es como abandono e viol\u00eancia</strong> que exijam o afastamento do conv\u00edvio com a fam\u00edlia, como crian\u00e7as, adolescentes e mulheres que sofrem viol\u00eancia em casa. <strong>Para idosos</strong>, os abrigos podem ser <strong>moradias permanentes</strong>. Existem 2.292 Creas em todo o Brasil.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Benef\u00edcio de Presta\u00e7\u00e3o Continuada</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0136/assistencia-social-imagem7.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>\u00c9 um benef\u00edcio no valor de <strong>um sal\u00e1rio m\u00ednimo</strong> para <strong>pessoas com defici\u00eancia</strong>, de qualquer idade, e para <strong>idosos</strong> a partir de 65 anos.</p>\r\n<p>Para receber o BPC, a renda familiar por pessoa antes do benef\u00edcio deve ser de \u00bc de sal\u00e1rio m\u00ednimo.</p>\r\n<p>Para ter acesso ao BPC n\u00e3o \u00e9 preciso intermedi\u00e1rio, nem atravessador, nem autoriza\u00e7\u00e3o de pol\u00edticos, nem pagar qualquer taxa!</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>BPC na Escola</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>Muitas crian\u00e7as e adolescentes com defici\u00eancia que recebiam o BPC <strong>estavam fora da escola</strong>. O governo federal percebeu isso e atuou fortemente para reverter esta situa\u00e7\u00e3o.</p>\r\n<p>De 2007 a 2014, o BPC na Escola inseriu <strong>310 mil benefici\u00e1rios de at\u00e9 18 anos na rede de educa\u00e7\u00e3o</strong>, identificando as crian\u00e7as e as barreiras que as impediam de frequentar a escola. Esse n\u00famero representa 70% do total do p\u00fablico.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0137/assistencia-social-imagem8.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>E o trabalho continua: <strong>transporte e cadeiras escolares adaptados, adequa\u00e7\u00e3o das instala\u00e7\u00f5es f\u00edsicas</strong> para acessar as salas de aula e orienta\u00e7\u00f5es \u00e0s fam\u00edlias e \u00e0s equipes escolares s\u00e3o medidas que garantem a inser\u00e7\u00e3o e a perman\u00eancia na escola.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Capacita\u00e7\u00e3o dos trabalhadores do Suas</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0138/assistencia-social-imagem9.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>A qualidade do trabalho desenvolvido nos Cras, Creas, abrigos e em outros equipamentos depende em grande parte da atua\u00e7\u00e3o dos profissionais da rede de Assist\u00eancia Social.</p>\r\n<p><strong>O Programa CapacitaSUAS</strong> foi criado em 2012 com o objetivo capacitar trabalhadores, gestores e conselheiros da Assist\u00eancia Social para aperfei\u00e7oar o atendimento \u00e0 popula\u00e7\u00e3o. Apoiado pelo governo federal, \u00e9 desenvolvido pelos Estados em parceria com Universidades.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Recursos da Assist\u00eancia Social cresceram 600%</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0139/assistencia-social-imagem10.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p><strong>O crescimento real de 600%</strong> nos recursos da Assist\u00eancia Social, entre 2003 e 2014, demonstra o esfor\u00e7o feito pelo governo federal para que os benef\u00edcios como o Bolsa Fam\u00edlia, o BPC e o atendimento nos equipamentos p\u00fablicos cheguem a popula\u00e7\u00e3o que mais precisa.</p>\r\n<p>\u00c9 a concretiza\u00e7\u00e3o do <strong>projeto de desenvolvimento com inclus\u00e3o social</strong> que prioriza a popula\u00e7\u00e3o pobre em nosso Pa\u00eds.</p>\r\n<p>O objetivo \u00e9 continuar avan\u00e7ando em uma pol\u00edtica de prote\u00e7\u00e3o social que tem como base a <strong>participa\u00e7\u00e3o</strong> e o reconhecimento do usu\u00e1rio em sua plena <strong>dignidade</strong>.</p>\r\n<p>Temos no Suas, o caminho para o <strong>enfrentamento da pobreza</strong> e da <strong>vulnerabilidade</strong> e a da <strong>promo\u00e7\u00e3o de direitos</strong> a todos os brasileiros.</p>\r\n<p><a href=\"#\">Saiba mais: MDS PRA VOC\u00ca</a></p>\r\n</div>\r\n</div>\r\n</div>",
  82 + "abstract": "<p>Garantir acesso \u00e0 prote\u00e7\u00e3o social.</p>",
  83 + "title": "Assist\u00eancia Social",
  84 + "categories": [
  85 + {
  86 + "name": "Redu\u00e7\u00e3o da Pobreza",
  87 + "id": 183,
  88 + "slug": "reducao-da-pobreza",
  89 + "image": null
  90 + }
  91 + ],
  92 + "image": {
  93 + "url": "/image_uploads/public/0001/5045/assistenciasocial.png"
  94 + }
  95 + },
  96 + {
  97 + "id": 93870,
  98 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Programa mais especialidades<small>Ampliar acesso a exames e a consultas com especialistas</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/5963/img-destaque-1.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6\">\r\n<p>Com o Mais M\u00e9dicos, o Brasil est\u00e1 ampliando e melhorando o atendimento nos postos de sa\u00fade. Com o Mais Especialidades, o Pa\u00eds dar\u00e1 mais um passo na amplia\u00e7\u00e3o e melhoria do atendimento \u00e0 popula\u00e7\u00e3o, enfrentando um dos grandes desafios atuais: o acesso aos servi\u00e7os especializados.</p>\r\n<p>O Programa tem o objetivo de garantir queos pacientes possam fazer exames, ser atendidos em consultas com especialistas e receber outros atendimentos para que todas as suas necessidades, em cada especialidade, sejam atendidas no tempo adequado.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Desafios futuros</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\">\r\n<p>Garantir que as pessoas possam fazer consultas, exames e tratamentos especializados. O programa vai come\u00e7ar com as seguintes especialidades:</p>\r\n<h4>Ortopedia</h4>\r\n<h4>Cardiologia</h4>\r\n<h4>Oftalmologia</h4>\r\n</div>\r\n<div class=\"col-md-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/5964/img-destaque-2.png\" alt=\"\" /></div>\r\n</div>\r\n</div>",
  99 + "abstract": "<p>Ampliar acesso a exames e consultas com especialistas.</p>",
  100 + "title": "Mais Especialidades",
  101 + "categories": [
  102 + {
  103 + "name": "Sa\u00fade",
  104 + "id": 180,
  105 + "slug": "saude",
  106 + "image": {
  107 + "url": "/image_uploads/public/0001/4546/sau.png"
  108 + }
  109 + }
  110 + ],
  111 + "image": {
  112 + "url": "/image_uploads/public/0001/4931/atendimentoesp.png"
  113 + }
  114 + },
  115 + {
  116 + "id": 93873,
  117 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Cuidar para uma vida mais saud\u00e1vel<small>De sa\u00fade se cuida todos os dias</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6033/img-destaque-1.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6\">\r\n<p>Para melhorar a qualidade de vida, o Governo Federal trabalha em medidas intersetoriais, de comunica\u00e7\u00e3o social e de mobiliza\u00e7\u00e3o da sociedade.</p>\r\n<p>S\u00e3o medidas de est\u00edmulo \u00e0 atividade f\u00edsica, \u00e0 alimenta\u00e7\u00e3o adequada, de combate ao tabagismo e ao uso abusivo de \u00e0lcool, fundamentais para reduzir os fatores de risco que causam doen\u00e7as respons\u00e1veis por 72% das mortes no Pa\u00eds: infarto, derrame, diabetes, canc\u00ear e doen\u00e7as respirat\u00f3rias.</p>\r\n<p>Os acidentes de tr\u00e2nsito s\u00e3o outra importante causa de morte e sofrimento que tem a aten\u00e7\u00e3o do Governo Federal.</p>\r\n<p>V\u00e1rios \u00f3rg\u00e3os trabalham conjuntamente para mudar esse quadro, desenvolvendo a\u00e7\u00f5es como a implanta\u00e7\u00e3o das Academias da Sa\u00fade, o est\u00edmulo \u00e0 alimenta\u00e7\u00e3o saud\u00e1vel na merenda escolar, o acompanhamento da avalia\u00e7\u00e3o nutricional das crian\u00e7as do Bolsa Fam\u00edlia e as campanhas para reduzir acidentes no tr\u00e2nsito.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Voc\u00ea sabia?</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>Mesmo com a redu\u00e7\u00e3o de acidentes nas rodovias federais, ano a ano, o n\u00famero de acidentes de tr\u00e2nsito t\u00eam crescido, especialmente com motocicletas.</p>\r\n<p class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6029/grafico-1.png\" alt=\"\" /></p>\r\n<p>\u00c9 cada vez menor o n\u00famero de fumantes no pa\u00eds</p>\r\n<p class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6030/grafico-2.png\" alt=\"\" /></p>\r\n<p>A atividade f\u00edsica est\u00e1 cada vez mais presente na rotina do brasileiro.</p>\r\n<p class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6031/grafico-3.png\" alt=\"\" /></p>\r\n<p>A atividade f\u00edsica est\u00e1 cada vez mais presente na rotina do brasileiro.</p>\r\n<p class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6032/grafico-4.png\" alt=\"\" /></p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Desafios futuros</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6034/img-destaque-2.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<ul class=\"list-unstyled\">\r\n<li>Reduzir os \u00edndices de obesidade e excesso de peso, inclusive entre crian\u00e7as e adolescentes</li>\r\n<li>Reduzir o tabagismo e o consumo de nocivo de \u00e1lcool</li>\r\n<li>Aumentar o consumo de frutas e hortali\u00e7as e reduzir o consumo de sal</li>\r\n<li>Aumentar a pr\u00e1tica de atividades f\u00edsicas</li>\r\n<li>Reduzir as mortes de provocadas pelo tr\u00e2nsito</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>",
  118 + "abstract": "<p>Da sa\u00fade se cuida todos os dias.</p>",
  119 + "title": "Cuidar para uma vida saud\u00e1vel",
  120 + "categories": [
  121 + {
  122 + "name": "Sa\u00fade",
  123 + "id": 180,
  124 + "slug": "saude",
  125 + "image": {
  126 + "url": "/image_uploads/public/0001/4546/sau.png"
  127 + }
  128 + }
  129 + ],
  130 + "image": {
  131 + "url": "/image_uploads/public/0001/4907/promocaodesaude.png"
  132 + }
  133 + },
  134 + {
  135 + "id": 93795,
  136 + "body": "<p>Enfrentar o problema das drogas a partir de uma abordagem multidisciplinar. O programa est\u00e1 estruturado em tr\u00eas eixos: preven\u00e7\u00e3o, cuidado e autoridade. As a\u00e7\u00f5es v\u00e3o desde a preven\u00e7\u00e3o em escolas, capacita\u00e7\u00e3o de profissionais at\u00e9 o enfrentamento ao tr\u00e1fico. Al\u00e9m disso, a estrutura\u00e7\u00e3o de rede de aten\u00e7\u00e3o ao usu\u00e1rio de drogas no \u00e2mbito do Sistema \u00danico de Sa\u00fade (SUS) e do Sistema \u00danico de Assist\u00eancia Social (Suas), com oferta de servi\u00e7os referenciados e constru\u00e7\u00e3o de equipamentos de sa\u00fade e prote\u00e7\u00e3o.</p>",
  137 + "abstract": "<p>Preven\u00e7\u00e3o, cuidado e combate ao tr\u00e1fico.</p>",
  138 + "title": "Crack, \u00e9 poss\u00edvel vencer!",
  139 + "categories": [
  140 + {
  141 + "name": "Seguran\u00e7a",
  142 + "id": 182,
  143 + "slug": "seguranca",
  144 + "image": {
  145 + "url": "/image_uploads/public/0001/4552/seg.png"
  146 + }
  147 + }
  148 + ],
  149 + "image": {
  150 + "url": "/image_uploads/public/0001/5075/crack.png"
  151 + }
  152 + },
  153 + {
  154 + "id": 93789,
  155 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Programa Bolsa Fam\u00edlia<small>Complemento \u00e0 renda e acompanhamento em Educa\u00e7\u00e3o e Sa\u00fade</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/thumbnails/public/0009/9997/educacao-bolsa-familia-imagem1_display.png\" alt=\"\" /></div>\r\n<div class=\"col-md-12\"><br />\r\n<p>O Bolsa Fam\u00edlia \u00e9 um programa que complementa mensamente a renda de 14 milh\u00f5es de fam\u00edlias pobres, garante que crian\u00e7as e adolescentes permane\u00e7am na escola e acompanha a sa\u00fade de crian\u00e7as, de mulheres gr\u00e1vidas e daquelas que est\u00e3o amamentando.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h3>educa\u00e7\u00e3o no bolsa fam\u00edlia</h3>\r\n<p>Na educa\u00e7\u00e3o, o Bolsa Fam\u00edlia faz o acompanhamento mensal da frequ\u00eancia escolar de 17 milh\u00f5es de crian\u00e7as e adolescentes de fam\u00edlias de baixa renda. Tamb\u00e9m ajuda a identificar dificuldades de acesso e de perman\u00eancia dos estudantes na escola.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/9998/educacao-bolsa-familia-imagem2.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/9999/educacao-bolsa-familia-imagem3.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0000/educacao-bolsa-familia-imagem4.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h3>Sa\u00fade no Bolsa Fam\u00edlia</h3>\r\n<p>Na sa\u00fade, o Programa acompanha a vacina\u00e7\u00e3o, o peso e a altura das crian\u00e7as com menos de 7 anos. Tamb\u00e9m faz o acompanhamento do pr\u00e9-natal das gestantes e orienta as mulheres em fase de amamenta\u00e7\u00e3o.</p>\r\n<p>Mais de 9 milh\u00f5es de fam\u00edlias s\u00e3o atendidas na \u00e1rea da sa\u00fade pelo Bolsa Fam\u00edlia e os efeitos do acompanhamento s\u00e3o percebidos na vida das pessoas.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>Redu\u00e7\u00e3o de quase 1 cm do deficit de altura das crian\u00e7as de 5 anos do Bolsa Fam\u00edlia:</p>\r\n<img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0001/educacao-bolsa-familia-imagem5.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0002/educacao-bolsa-familia-imagem6.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12 col-sm-12\">\r\n<h3>Cadastro \u00danico para acessar pol\u00edticas p\u00fablicas</h3>\r\n</div>\r\n<div class=\"col-md-12 col-sm-12\">\r\n<p>Para entrar no Programa, a fam\u00edlia faz um cadastro com informa\u00e7\u00f5es sobre moradia, renda, escolaridade e condi\u00e7\u00f5es de vida. Este \u00e9 o Cadastro \u00danico para Programas Sociais do governo federal, um mapa social que permite aos governos planejarem suas a\u00e7\u00f5es, a partir da identifica\u00e7\u00e3o das necessidades b\u00e1sicas das fam\u00edlias.</p>\r\n<p>A orienta\u00e7\u00e3o e o encaminhamento das fam\u00edlias s\u00e3o feitos pela rede de Assist\u00eancia Social para que os benefici\u00e1rios do Bolsa Fam\u00edlia acessem tamb\u00e9m outros programas como <strong>Pronatec</strong>, <strong>Luz para Todos</strong>, <strong>Programa Minha Casa</strong>, <strong>Minha Vida</strong>.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12 col-sm-12\">\r\n<h3>Quem entra no Bolsa Fam\u00edlia</h3>\r\n</div>\r\n<div class=\"col-md-12 col-sm-12\">\r\n<p>Podem participar as fam\u00edlias registradas no Cadastro \u00danico:</p>\r\n<ul class=\"list-styled\">\r\n<li>Com renda mensal, por pessoa, de at\u00e9 R$ 77, mesmo que n\u00e3o tenham gestantes, crian\u00e7as ou adolescentes na fam\u00edlia;</li>\r\n<li>Com renda familiar mensal, por pessoa, de at\u00e9 R$ 154, que tenham gestantes, crian\u00e7as ou adolescentes na fam\u00edlia.</li>\r\n</ul>\r\n<p>O valor repassado depende do <strong>tamanho da fam\u00edlia</strong>, da <strong>idade dos seus membros</strong> e da sua <strong>renda</strong>. H\u00e1 benef\u00edcios espec\u00edficos para fam\u00edlias com crian\u00e7as, jovens at\u00e9 17 anos, gestantes e m\u00e3esque amamentam.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12 col-sm-12\">\r\n<h3>Voc\u00ea sabia ?</h3>\r\n</div>\r\n<div class=\"col-md-12 col-sm-12\">\r\n<ul class=\"list-styled \">\r\n<li><strong>O valor m\u00e9dio pago aos benefici\u00e1rios do Bolsa Fam\u00edlia \u00e9 de R$ 168,00 mensais.</strong>;</li>\r\n<li><strong>As fam\u00edlias que participam do Programa t\u00eam, em m\u00e9dia, 2 filhos.</strong></li>\r\n</ul>\r\n</div>\r\n<div class=\"col-md-12 col-sm-12\">\r\n<blockquote class=\"text-center\">\r\n<p>Em 11 anos, 2,7 milh\u00f5es de fam\u00edlias sa\u00edram do programa Bolsa Fam\u00edlia e n\u00e3o precisaram mais voltar.</p>\r\n</blockquote>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-clock\" src=\"http://www.participa.br/articles/public/0010/0003/educacao-bolsa-familia-imagem7.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h3>Trabalho no Bolsa Fam\u00edlia</h3>\r\n<p>Os benefici\u00e1rios do Bolsa Fam\u00edlia trabalham e trabalham muito.</p>\r\n<p>A participa\u00e7\u00e3o dos adultos benefici\u00e1rios no mercado de trabalho formal e informal \u00e9 igual \u00e0 dos demais brasileiros.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12 col-sm-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0004/educacao-bolsa-familia-imagem8.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Controle e transpar\u00eancia</h3>\r\n<p>O governo est\u00e1 atento para que o benef\u00edcio s\u00f3 chegue a quem realmente precisa. H\u00e1 um trabalho cont\u00ednuo e rigoroso para garantir o controle e a transpar\u00eancia do Programa Bolsa Fam\u00edlia.</p>\r\n<ul class=\"list-styled \">\r\n<li>A lista dos benefici\u00e1rios com o valor do benef\u00edcio que recebem \u00e9 mantida p\u00fablica, no Portalda Transpar\u00eancia;</li>\r\n<li>Todos os benefici\u00e1rios t\u00eam que atualizar o seu cadastro a cada dois anos;</li>\r\n<li>O governo realiza cruzamentos do Cadastro \u00danico com outras bases de dados, rotineiramente.</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Acompanhe</h3>\r\n<p>Todo cidad\u00e3o tem o direito de saber como o governo utiliza os recursos p\u00fablicos. Para o Bolsa Fam\u00edlia existe um canal direto e gratuito para que qualquer pessoa possa obter informa\u00e7\u00f5es ou fazer sugest\u00f5es, reclama\u00e7\u00f5es e den\u00fancias: <strong>0800 707 2003</strong>.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>A renda do Bolsa Fam\u00edlia fortalece a economialocal e o desenvolvimento do Pa\u00eds</h3>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p><strong>Com o Bolsa Fam\u00edlia</strong> todos ganham. Ele beneficia diretamente mais de 50 milh\u00f5es de pessoas pobres, mas seus resultados v\u00e3o al\u00e9m do combate \u00e0 pobreza.</p>\r\n<p>O dinheiro repassado para as fam\u00edlias beneficiadas fica no mun\u00edcipio, circula na economia local e gera mais trabalho e renda para outras pessoas, contribuindo para o desenvolvimento do Pa\u00eds.</p>\r\n<p>O Bolsa Fam\u00edlia faz tanto pelo Brasil que todos os brasileiros acabam sendo beneficiados por ele.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0005/educacao-bolsa-familia-imagem10.png\" alt=\"\" /></div>\r\n</div>\r\n</div>",
  156 + "abstract": "<p>Complemento \u00e0 renda e acompanhamento em Educa\u00e7\u00e3o e Sa\u00fade.</p>",
  157 + "title": "Bolsa Fam\u00edlia",
  158 + "categories": [
  159 + {
  160 + "name": "Redu\u00e7\u00e3o da Pobreza",
  161 + "id": 183,
  162 + "slug": "reducao-da-pobreza",
  163 + "image": null
  164 + }
  165 + ],
  166 + "image": {
  167 + "url": "/image_uploads/public/0001/5069/bolsafamilia.png"
  168 + }
  169 + },
  170 + {
  171 + "id": 93790,
  172 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Programa Cisternas<small>Garantir \u00e1gua para beber e produzir</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><object width=\"100%\" height=\"438\">\r\n <param name=\"movie\" value=\"http://www.youtube.com/v/pe6bePBLZkc&amp;hl=fr&amp;fs=1&amp;rel=0&amp;color1=0x006699&amp;color2=0x54abd6&amp;border=1\" />\r\n <param name=\"allowFullScreen\" value=\"true\" />\r\n <embed src=\"http://www.youtube.com/v/pe6bePBLZkc&amp;hl=fr&amp;fs=1&amp;rel=0&amp;color1=0x006699&amp;color2=0x54abd6&amp;border=1\" type=\"application/x-shockwave-flash\" width=\"100%\" height=\"438\" />\r\n </object></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Transforma\u00e7\u00e3o no semi\u00e1rido</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p><strong>O acesso \u00e0 \u00e1gua de qualidade \u00e9 um direito de todos.</strong> Assegurar esse direito para quem vive no Semi\u00e1rido brasileiro \u00e9 um dos grandes desafios assumidos pelo governo federal.</p>\r\n<p>O Semi\u00e1rido brasileiro \u00e9 o maior e o mais populoso do mundo. A escassez de chuva, na maior parte do ano (pode chegar at\u00e9 a 8 meses), fazia com que as pessoas tivessem que resolver, cada uma a seu modo, os problemas decorrentes da falta de \u00e1gua, que afetava o bem estar das fam\u00edlias e a produ\u00e7\u00e3o de alimentos. Por isso, at\u00e9 h\u00e1 pouco tempo, a imagem da regi\u00e3o era associada \u00e0 pobreza, \u00e0 mis\u00e9ria e ao sofrimento.</p>\r\n<p>Iniciativas emergenciais que antes tinham foco no combate \u00e0 seca deram lugar a um conjunto de a\u00e7\u00f5es com objetivo de resgatar a <strong>cidadania</strong> e de promover a <strong>conviv\u00eancia com o Semi\u00e1rido</strong> de forma digna, transformando a vida das pessoas.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Transforma\u00e7\u00e3o no semi\u00e1rido</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>Da vontade pol\u00edtica, somada ao conhecimento da comunidade e de suas organiza\u00e7\u00f5es sociais, nasceu o Programa Cisternas. A a\u00e7\u00e3o transformou o conhecimento local em uma grande pol\u00edtica p\u00fablica e <strong>est\u00e1 mudando a vida de mais de 4 milh\u00f5es de pessoas pobres no Semi\u00e1rido, garantindo \u00e1gua para consumo e para produ\u00e7\u00e3o de alimentos.</strong></p>\r\n<p>As cisternas s\u00e3o tecnologias simples, eficientes e de baixo custo, que permitem a capta\u00e7\u00e3o e armazenamento de \u00e1gua da chuva.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0016/desenvolvimento-social-cisternas-imagem10.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Implanta\u00e7\u00e3o das cisternas no semi\u00e1rido</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>As a\u00e7\u00f5es de implanta\u00e7\u00e3o s\u00e3o financiadas e coordenadas pelo governo federal em parceria com organiza\u00e7\u00f5es da sociedade, governos estaduais e municipais.</p>\r\n<p><strong>Desde 2003, j\u00e1 foram entregues \u00e0 popula\u00e7\u00e3o mais de 1,1 milh\u00e3o de cisternas.</strong> Isso representa mais um milh\u00e3o de mulheres livres de carregar latas d'\u00e1gua na cabe\u00e7a, por quil\u00f4metros, muitas vezes com seus filhos.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0008/desenvolvimento-social-cisternas-imagem2.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0009/desenvolvimento-social-cisternas-imagem3.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Cisterna de \u00e1gua para consumo</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>A Cisterna de Consumo capta \u00e1gua da chuva que desce pelo telhado das casas que, armazenada, garante as necessidades b\u00e1sicas de uma fam\u00edlia de cinco pessoas por at\u00e9 oito meses. Quando a seca \u00e9 prolongada, as cisternas s\u00e3o abastecidas pelos carros-pipa, servindo tamb\u00e9m como reservat\u00f3rios para o suprimento emergencial de \u00e1gua.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0010/desenvolvimento-social-cisternas-imagem4.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Cisterna de \u00e1gua para produ\u00e7\u00e3o</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>H\u00e1 tecnologias que servem para capta\u00e7\u00e3o e armazenamento de \u00e1gua da chuva para a produ\u00e7\u00e3o e a cria\u00e7\u00e3o de pequenos animais. A mais utilizada \u00e9 a Cisterna Cal\u00e7ad\u00e3o de 52 mil litros. Existem outras, como o barreiro trincheira, o tanque de pedras e as barragens subterr\u00e2neas, que chegam a armazenar 500 mil litros de \u00e1gua.</p>\r\n<p>Essas tecnologias s\u00e3o implantadas junto com um quintal produtivo e \u00e9 feita a capacita\u00e7\u00e3o das fam\u00edlias para utiliza\u00e7\u00e3o da \u00e1gua e manejo da produ\u00e7\u00e3o.</p>\r\n<p>O resultado \u00e9 a amplia\u00e7\u00e3o da capacidade de produ\u00e7\u00e3o de alimentos pela fam\u00edlia, mesmo durante a seca, melhorando a seguran\u00e7a alimentar. \u00c9 mais comida e variedade na mesa e at\u00e9 a renda aumenta, porque o excedente \u00e9 comercializado localmente.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0017/desenvolvimento-social-cisternas-imagem11.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Cisterna na escola</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0011/desenvolvimento-social-cisternas-imagem5.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>A \u00e1gua \u00e9 um desafio t\u00e3o grande para o sertanejo, que at\u00e9 as escolas rurais sofrem com a falta dela. Quando isso acontece, as crian\u00e7as ficam em casa, sem aula. Para mudar essa situa\u00e7\u00e3o, o governo federal, em parceria com a Articula\u00e7\u00e3o no Semi\u00e1rido Brasileiro (ASA), est\u00e1 construindo <strong>cinco mil cisternas nas escolas, at\u00e9 2016. A meta \u00e9 que todas as escolas rurais da regi\u00e3o sejam atendidas at\u00e9 2018,</strong> de forma que nenhuma crian\u00e7a deixe de ir \u00e0 escola por falta de \u00e1gua.</p>\r\n</div>\r\n</div>\r\n<p>Cada Cisterna Escolar tem capacidade de 52 mil litros e conta com uma caixa d'\u00e1gua complementar com bomba el\u00e9trica. Os professores e funcion\u00e1rios da escola s\u00e3o capacitados para gest\u00e3o da cisterna, sua manuten\u00e7\u00e3o e preserva\u00e7\u00e3o da qualidade da \u00e1gua.</p>\r\n<p>O governo est\u00e1 estudando ampliar o atendimento a outros equipamentos p\u00fablicos, como os postos de sa\u00fade e de assist\u00eancia social.</p>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Quem participa do programa cisterna</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>S\u00e3o beneficiadas pelas cisternas, fam\u00edlias de <strong>baixa renda</strong> que <strong>vivem no meio rural do Semi\u00e1rido</strong> e est\u00e3o inclu\u00eddas no <strong>Cadastro \u00danico</strong> para programas sociais do governo federal. Para participar, a fam\u00edlia deve entrar em contato com o gestor do Programa Cisternas no munic\u00edpio, procurar a prefeitura, o sindicato de trabalhadores rurais o a assist\u00eancia t\u00e9cnica, com o cart\u00e3o do Bolsa Fam\u00edlia em m\u00e3os.</p>\r\n<p>Todas as constru\u00e7\u00f5es do Programa Cisternas est\u00e3o registradas em sistema informatizado que tem informa\u00e7\u00f5es das fam\u00edlias atendidas e um ponto de GPS, que permita localizar a cisterna.</p>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>M\u00e3o-de-obra local - oportunidade de trabalho e renda</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0012/desenvolvimento-social-cisternas-imagem6.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<p>A m\u00e3o-de-obra para constru\u00e7\u00e3o das cisternas \u00e9 escolhida, de prefer\u00eancia, na pr\u00f3pria comunidade, barateando custos, gerando oportunidade de trabalho e movimentando a economia local. As fam\u00edlias beneficiadas e os pedreiros ou cisterneiros s\u00e3o capacitados, tanto para constru\u00e7\u00e3o quanto para o uso adequado e cuidados b\u00e1sicos com a tecnologia.</p>\r\n<p>O pagamento desses prestadores de servi\u00e7o s\u00f3 \u00e9 realizado com o reconhecimento formal da fam\u00edlia atendida de que todas as atividades foram realizadas e que a cisterna est\u00e1 em funcionamento.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>\u00c1gua armazenada com as cisternas</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>Se somarmos a capacidade de armazenar \u00e1gua nas cisternas de consumo e nas cisternas de produ\u00e7\u00e3o j\u00e1 constru\u00eddas, chegamos a <strong>25 milh\u00f5es de litros d'\u00e1gua,</strong> atendendo a <strong>4,4 milh\u00f5es de pessoas.</strong></p>\r\n</div>\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0013/desenvolvimento-social-cisternas-imagem7.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>A vida fica melhor</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>Veja de que forma as pol\u00edticas de conviv\u00eancia com o Semi\u00e1rido vem transformando a realidade das pessoas que vivem na regi\u00e3o</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h4>Antes</h4>\r\n<p><strong>Sem as cisternas,</strong> as mulheres eram as mais afetadas pela seca. A maioria delas tinha que acordar de madrugada, andar horas - at\u00e9 6 horas por dia - em busca de \u00e1gua, em geral barrenta, disputada at\u00e9 com os animais. O sol escaldante tornava mais cruel essa rotina di\u00e1ria, que envolvia tamb\u00e9m as crian\u00e7as, muitas vezes privadas de ir \u00e0 escola.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h4>Hoje</h4>\r\n<p><strong>Com as cisternas</strong> instaladas ao lado de casa, ficou mais f\u00e1cil acessar a \u00e1gua para beber, cozinhar, tomar banho e fazer coisas rotineiras. Assim, as mulheres ganharam tempo para conviver com os filhos e se dedicar a outras atividades, como estudar e melhorar a produ\u00e7\u00e3o.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0014/desenvolvimento-social-cisternas-imagem8.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h4>Antes</h4>\r\n<p>era cena comum nos per\u00edodos de seca intensa, dezenas de milhares de fam\u00edlias abandonarem suas casas em dire\u00e7\u00e3o \u00e0s capitais ou a grandes centros urbanos. Rodovi\u00e1rias lotadas, periferias e favelas inchadas e as cidades sem condi\u00e7\u00f5es de receber e dar oportunidades para recuperar a dignidade dessas pessoas.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h4>Atualmente</h4>\r\n<p>a cisterna permite que o sertanejo armazene \u00e1gua e se prepare para os per\u00edodos cr\u00edticos sem chuva. Assim, mesmo diante de uma das secas mais severas das \u00faltimas d\u00e9cadas, recentemente registrada na regi\u00e3o, as fam\u00edlias t\u00eam experimentado a liberdade de poder permanecer no lugar onde vivem, de forma digna, com garantia de acesso \u00e0 \u00e1gua para beber e para produzir alimentos.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0015/desenvolvimento-social-cisternas-imagem9.png\" alt=\"\" /></div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h4>Antes</h4>\r\n<p>os indicadores sociais na regi\u00e3o so Semi\u00e1rido estavam entre os piores do mundo, com altos \u00edndices de mortalidade infantil, desnutri\u00e7\u00e3o aguda e problemas de sa\u00fade decorrentes da fome e da p\u00e9ssima qualidade da \u00e1gua consumida. Em muitas situa\u00e7\u00f5es, at\u00e9 o desenvolvimento f\u00edsico e mental das pessoas era afetado pelos longos per\u00edodos sem acesso regular aos alimentos e \u00e0 \u00e1gua.</p>\r\n</div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<h4>Atualmente</h4>\r\n<p>a garantia do acesso \u00e0 \u00e1gua vem tranformando muito esta situa\u00e7\u00e3o. Hoje o Semi\u00e1rido \u00e9 uma das regi\u00f5es mais din\u00e2micas do pa\u00eds e os seus indicadores sociais est\u00e3o cada vez mais pr\u00f3ximos da m\u00e9dia do Brasil.</p>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0010/0018/desenvolvimento-social-cisternas-imagem12.png\" alt=\"\" /></div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Programa cisternas vai agora para a regi\u00e3o norte</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>Al\u00e9m do Semi\u00e1rido, o governo est\u00e1 levando o Programa Cisternas para outras regi\u00f5es, como a Amaz\u00f4nia. L\u00e1, existe muita \u00e1gua, mas a popula\u00e7\u00e3o da floresta sofre por falta de \u00e1gua pot\u00e1vel para beber. Com solu\u00e7\u00f5es desenvolvidas nas florestas, o governo est\u00e1 transformando esse conhecimento em pol\u00edticas p\u00fablicas que permitir\u00e3o aos extrativistas, ribeirinhos e povos ind\u00edgenas terem acesso \u00e0 \u00e1gua de qualidade.</p>\r\n</div>\r\n</div>\r\n</div>\r\n</div>",
  173 + "abstract": "<p>Garantir \u00e1gua para beber e produzir.</p>",
  174 + "title": "Cisternas",
  175 + "categories": [
  176 + {
  177 + "name": "Redu\u00e7\u00e3o da Pobreza",
  178 + "id": 183,
  179 + "slug": "reducao-da-pobreza",
  180 + "image": null
  181 + }
  182 + ],
  183 + "image": {
  184 + "url": "/image_uploads/public/0001/5039/cisternas.png"
  185 + }
  186 + },
  187 + {
  188 + "id": 93866,
  189 + "body": "<p>Integra\u00e7\u00e3o de pol\u00edticas p\u00fablicas para redu\u00e7\u00e3o de homic\u00eddios Reduzir o n\u00famero de homic\u00eddios no Brasil, a partir da integra\u00e7\u00e3o de pol\u00edticas p\u00fablicas, em territ\u00f3rios que sofrem com maior viol\u00eancia.</p>",
  190 + "abstract": "<p>Integra\u00e7\u00e3o de pol\u00edticas p\u00fablicas para redu\u00e7\u00e3o de homic\u00eddios.</p>",
  191 + "title": "Brasil mais Seguro",
  192 + "categories": [
  193 + {
  194 + "name": "Seguran\u00e7a",
  195 + "id": 182,
  196 + "slug": "seguranca",
  197 + "image": {
  198 + "url": "/image_uploads/public/0001/4552/seg.png"
  199 + }
  200 + }
  201 + ],
  202 + "image": {
  203 + "url": "/image_uploads/public/0001/5051/brasilmaisseguro.png"
  204 + }
  205 + },
  206 + {
  207 + "id": 93872,
  208 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Incentivo ao Parto Normal<small>Parto normal: a melhor escolha \u00e9 se informar</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\">\r\n<p><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/5998/parto-normal-imagem1.png\" alt=\"\" /></p>\r\n</div>\r\n<div class=\"col-md-6\">\r\n<p>O Brasil vive uma verdadeira epidemia de cesarianas desnecess\u00e1rias. Quando corretamente indicada, essa cirurgia pode salvar vidas. Por\u00e9m, uma cesariana feita sem necessidade acaba gerando riscos e aumentando o n\u00famero de mortes de m\u00e3es e beb\u00eas. Nos hospitais particulares, a taxa de cesarianas chega a 84% dos partos. Na rede p\u00fablica, essa taxa \u00e9 de 40%.</p>\r\n<blockquote>\r\n<p class=\"text-center\">O governo federal est\u00e1 agindo para incentivar o parto normal, investindo em mudan\u00e7as na assist\u00eancia a gestantes em hospitais do SUS e privados, o que inclui os planos de sa\u00fade.</p>\r\n</blockquote>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>Cria\u00e7\u00e3o de plant\u00f5es obst\u00e9tricos, regulamenta\u00e7\u00e3o sobre orienta\u00e7\u00f5es na rede p\u00fablica e privada, acompanhamento da sa\u00fade das mulheres e campanhas de divulga\u00e7\u00e3o s\u00e3o medidas que estimulamo parto normal, garantem o acesso \u00e0 informa\u00e7\u00e3o e aumentam o preparo dos hospitais parao nascimento seguro e o desenvolvimento saud\u00e1vel dos beb\u00eas.</p>\r\n<p>A melhoria da aten\u00e7\u00e3o integral \u00e0 sa\u00fade das mulheres inclui o planejamento familiar, o pr\u00e9-natal e o parto humanizado.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Desafios que o Programa assume</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/5999/parto-normal-imagem2.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<ul class=\"list-unstyled\">\r\n<li>Aumentar o percentual de parto normal na rede p\u00fablica e privada.</li>\r\n<li>Diminuir a mortalidade materna e dos rec\u00e9m-nascidos (at\u00e9 28 dias de vida do beb\u00ea)</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-6\">\r\n<ul class=\"list-styled\">\r\n<li><strong>120 vezes maior probabilidade </strong>de o beb\u00ea ter problemas respirat\u00f3rios;</li>\r\n<li>Cerca de <strong>25% dos \u00f3bitos </strong>neonatais e <strong>16% dos \u00f3bitos </strong>infantis s\u00e3o causados por prematuridade;</li>\r\n<li><strong>Triplica o risco </strong>de mortalidade materna.</li>\r\n</ul>\r\n<p><small>Fonte: MARTINS-COSTA S H (org.). Projeto diretrizes.<br />Federa\u00e7\u00e3o Brasileira das Sociedades de Ginecologia e Obstetr\u00edcia (2002) *Dados do Sistema de Informa\u00e7\u00e3o sobre Mortalidade (SIM)</small></p>\r\n</div>\r\n<div class=\"col-md-6\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6000/parto-normal-imagem3.png\" alt=\"\" /></div>\r\n</div>\r\n</div>",
  209 + "abstract": "<p>A melhor escolha \u00e9 se informar.</p>",
  210 + "title": "Incentivo ao Parto Normal",
  211 + "categories": [
  212 + {
  213 + "name": "Sa\u00fade",
  214 + "id": 180,
  215 + "slug": "saude",
  216 + "image": {
  217 + "url": "/image_uploads/public/0001/4546/sau.png"
  218 + }
  219 + }
  220 + ],
  221 + "image": {
  222 + "url": "/image_uploads/public/0001/4901/redecegonha.png"
  223 + }
  224 + },
  225 + {
  226 + "id": 93855,
  227 + "body": "<p>A popula\u00e7\u00e3o pobre trabalha e trabalha muito. Para o Brasil continuar enfrentando a pobreza e reduzindo as desigualdades, \u00e9 preciso criar mais oportunidades. Na cidade \u00e9 necess\u00e1rio mais qualifica\u00e7\u00e3o profissional, melhor remunera\u00e7\u00e3o, empregos de mais qualidade, apoio ao empreendedorismo, amplia\u00e7\u00e3o do cr\u00e9dito e est\u00edmulo \u00e0 economia solid\u00e1ria. No campo \u00e9 preciso continuar ampliando a renda dos agricultores familiares, assentados da reforma agr\u00e1ria, povos e comunidades tradicionais, com acesso \u00e0 assist\u00eancia t\u00e9cnica, ao cr\u00e9dito, \u00e0 \u00e1gua para produ\u00e7\u00e3o, \u00e0s compras governamentais, fortalecimento do cooperativismo e comercializa\u00e7\u00e3o dos produtos.</p>",
  228 + "abstract": "<p>Ampliar oportunidades para os mais pobres no campo e na cidade.</p>",
  229 + "title": "Mais Inclus\u00e3o",
  230 + "categories": [
  231 + {
  232 + "name": "Redu\u00e7\u00e3o da Pobreza",
  233 + "id": 183,
  234 + "slug": "reducao-da-pobreza",
  235 + "image": null
  236 + }
  237 + ],
  238 + "image": {
  239 + "url": "/image_uploads/public/0001/5063/oportunidades.png"
  240 + }
  241 + },
  242 + {
  243 + "id": 93867,
  244 + "body": "<p>Aumentar a preven\u00e7\u00e3o, controle, fiscaliza\u00e7\u00e3o e repress\u00e3o dos delitos transfronteiri\u00e7os e dos delitos praticados na faixa de fronteira brasileira, por meio da integra\u00e7\u00e3o da seguran\u00e7a p\u00fablica, For\u00e7as Armadas, Receita Federal, outros \u00f3rg\u00e3os de fiscaliza\u00e7\u00e3o, munic\u00edpios e pa\u00edses vizinhos, para execu\u00e7\u00e3o de a\u00e7\u00f5es conjuntas, troca de informa\u00e7\u00f5es, parcerias e amplia\u00e7\u00e3o da estrutura dos \u00f3rg\u00e3os. Plano Estrat\u00e9gico de Fronteiras; Sistema de monitoramento de fronteiras (Sisfron).</p>",
  245 + "abstract": "<p>Prevenir e reprimiros crimes nas fronteiras.</p>",
  246 + "title": "Plano Estrat\u00e9gico de Fronteiras",
  247 + "categories": [
  248 + {
  249 + "name": "Seguran\u00e7a",
  250 + "id": 182,
  251 + "slug": "seguranca",
  252 + "image": {
  253 + "url": "/image_uploads/public/0001/4552/seg.png"
  254 + }
  255 + }
  256 + ],
  257 + "image": {
  258 + "url": "/image_uploads/public/0001/5033/fronteiras.png"
  259 + }
  260 + },
  261 + {
  262 + "id": 95414,
  263 + "body": "",
  264 + "abstract": "<p>Seguran\u00e7a no tr\u00e2nsito e nas estradas.</p>",
  265 + "title": "Pol\u00edcia Rodovi\u00e1ria Federal",
  266 + "categories": [
  267 + {
  268 + "name": "Seguran\u00e7a",
  269 + "id": 182,
  270 + "slug": "seguranca",
  271 + "image": {
  272 + "url": "/image_uploads/public/0001/4552/seg.png"
  273 + }
  274 + }
  275 + ],
  276 + "image": null
  277 + },
  278 + {
  279 + "id": 93865,
  280 + "body": "<p>O governo quer ampliar as oportunidades educacionais e de forma\u00e7\u00e3o profissional para jovens, trabalhadores e benefici\u00e1rios de programas de transfer\u00eancia de renda. Por isso, est\u00e1 expandindo e interiorizando a oferta de cursos de educa\u00e7\u00e3o profissional e tecnol\u00f3gica. Os cursos s\u00e3o ofertados de forma gratuita pelas redes federal, estaduais e municipais; pelos Sistemas Nacionais de Aprendizagem; e por institui\u00e7\u00f5es privadas habilitadas pelo MEC. At\u00e9 2014, foram oito milh\u00f5es de matr\u00edculas, em cursos t\u00e9cnicos e de qualifica\u00e7\u00e3o profissional. Para 2015-2018, a meta \u00e9 ofertar mais 12 milh\u00f5es de vagas.</p>",
  281 + "abstract": "<p>Programa Nacional de Acesso ao Ensino T\u00e9cnico e Emprego.</p>",
  282 + "title": "Pronatec",
  283 + "categories": [
  284 + {
  285 + "name": "Educa\u00e7\u00e3o",
  286 + "id": 181,
  287 + "slug": "educacao",
  288 + "image": {
  289 + "url": "/image_uploads/public/0001/4576/edu.png"
  290 + }
  291 + }
  292 + ],
  293 + "image": {
  294 + "url": "/image_uploads/public/0001/4997/pronatec.png"
  295 + }
  296 + },
  297 + {
  298 + "id": 93868,
  299 + "body": "<p>A proposta visa a mudan\u00e7a da Constitui\u00e7\u00e3o para ampliar a compet\u00eancia da Uni\u00e3o na \u00e1rea de seguran\u00e7a p\u00fablica. Com isso, haver\u00e1 regras e padr\u00f5es de atua\u00e7\u00e3o uniformes em todo o pa\u00eds, aumentando a efetividade da seguran\u00e7a p\u00fablica.</p>",
  300 + "abstract": "<p>Coopera\u00e7\u00e3o federativa.</p>",
  301 + "title": "For\u00e7a Nacional",
  302 + "categories": [
  303 + {
  304 + "name": "Seguran\u00e7a",
  305 + "id": 182,
  306 + "slug": "seguranca",
  307 + "image": {
  308 + "url": "/image_uploads/public/0001/4552/seg.png"
  309 + }
  310 + }
  311 + ],
  312 + "image": {
  313 + "url": "/image_uploads/public/0001/5027/mudancaconstituicao.png"
  314 + }
  315 + },
  316 + {
  317 + "id": 93862,
  318 + "body": "<p>\u00c9 uma das a\u00e7\u00f5es estrat\u00e9gicas do MEC induzir a amplia\u00e7\u00e3o da jornada escolar nas redes estaduais e municipais de ensino. Por isso, h\u00e1 repasse de recursos diretamente \u00e0s escolas p\u00fablicas que aderem ao programa. Em 2014, o programa recebeu ades\u00e3o de 61 mil escolas no pa\u00eds, que hoje incluem na jornada escolar a educa\u00e7\u00e3o ambiental; esporte e lazer; direitos humanos em educa\u00e7\u00e3o; cultura e artes; cultura digital; promo\u00e7\u00e3o da sa\u00fade; comunica\u00e7\u00e3o e uso de m\u00eddias; investiga\u00e7\u00e3o no campo das ci\u00eancias da natureza e educa\u00e7\u00e3o econ\u00f4mica.</p>",
  319 + "abstract": "<p>Educa\u00e7\u00e3o em Tempo Integral.</p>",
  320 + "title": "Mais Educa\u00e7\u00e3o",
  321 + "categories": [
  322 + {
  323 + "name": "Educa\u00e7\u00e3o",
  324 + "id": 181,
  325 + "slug": "educacao",
  326 + "image": {
  327 + "url": "/image_uploads/public/0001/4576/edu.png"
  328 + }
  329 + }
  330 + ],
  331 + "image": {
  332 + "url": "/image_uploads/public/0001/4961/maiseducacao.png"
  333 + }
  334 + },
  335 + {
  336 + "id": 93874,
  337 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Urg\u00eancia e emerg\u00eancia<small>Resgate e atendimento 24 horas, sete dias por semana</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6026/img-destaque-1.png\" alt=\"Ambulancha e SAMU 192\" /></p>\r\n<p>Os servi\u00e7os que comp\u00f5em o atendimento para as urg\u00eancias e emerg\u00eancias est\u00e3o sendo integrados e ampliados.</p>\r\n<p>Criado em 2003, o SAMU 192 realiza o socorro e o transporte de emerg\u00eancia e conta hoje com 3.300 ambul\u00e2ncias (autom\u00f3veis, motos, lanchas e helic\u00f3pteros).</p>\r\n<p>O SAMU atende 75% da popula\u00e7\u00e3o brasileira.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>SAMU 192 j\u00e1 chega a 153,9 milh\u00f5es de pessoas</h3>\r\n<p class=\"text-center\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6024/grafico-1.png\" alt=\"Em 2005 o SAMU chegou \u00e0 60 milh\u00f5es de pessoas. Em 2015 o SAMU chegou \u00e0 153,9 milh\u00f5es de pessoas.\" /></p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Unidades de Pronto Atendimento (UPA)</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6027/img-destaque-2.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6\">\r\n<p>As Unidades de Pronto Atendimento (UPA) podem resolver 90% das urg\u00eancias e emerg\u00eancias, como fraturas, problemas de press\u00e3o, derrame e infarto.</p>\r\n<p>As UPAs fazem parte de uma rede de atendimento, em conjunto com as emerg\u00eancias dos hospitais e a interna\u00e7\u00e3o domiciliar. Assim, ajudam a diminuir as filas nos pronto-socorros dos hospitais.</p>\r\n<blockquote>\r\n<p class=\"text-center\">J\u00e1 temos 400 UPAs em funcionamento no Brasil.</p>\r\n</blockquote>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Desafios futuros que o programa assume</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6\"><img class=\"img-responsive center-block\" src=\"http://www.participa.br/articles/public/0009/6025/grafico-2.png\" alt=\"Mapa dos desafios do programa\" /></div>\r\n<div class=\"col-md-6\">\r\n<ul class=\"list-unstyled\">\r\n<li>Levantar o atendimento do SAMU 192 para toda a popula\u00e7\u00e3o brasileira.</li>\r\n<li>Garantir a expans\u00e3o das Unidades de Pronto Atendimento (UPAs) em todas as regi\u00f5es do pa\u00eds.</li>\r\n<li>Garantir \u00e0 popula\u00e7\u00e3o o atendimento em hospitais de refer\u00eancia para situa\u00e7\u00f5es de urg\u00eancia (cirurgias, interna\u00e7\u00f5es e UTIs).</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>",
  338 + "abstract": "<p>Resgate e atendimento 24 horas, nos sete dias da semana.</p>",
  339 + "title": "Urg\u00eancia e Emerg\u00eancia",
  340 + "categories": [
  341 + {
  342 + "name": "Sa\u00fade",
  343 + "id": 180,
  344 + "slug": "saude",
  345 + "image": {
  346 + "url": "/image_uploads/public/0001/4546/sau.png"
  347 + }
  348 + }
  349 + ],
  350 + "image": {
  351 + "url": "/image_uploads/public/0001/4949/urgenciaeemergencia.png"
  352 + }
  353 + },
  354 + {
  355 + "id": 93794,
  356 + "body": "<p>A integra\u00e7\u00e3o das pol\u00edcias traz maior efetividade com a a\u00e7\u00e3o dos Centros Integrados de Comando e Controle - equipamentos que permitem uma melhor gest\u00e3o e governan\u00e7a da integra\u00e7\u00e3o dos \u00f3rg\u00e3os de seguran\u00e7a p\u00fablica - reproduzindo a experi\u00eancia exitosa da Copa do Mundo de 2014.</p>",
  357 + "abstract": "<p>Altera\u00e7\u00e3o da Constitui\u00e7\u00e3o, integra\u00e7\u00e3o e tecnologia.</p>",
  358 + "title": "Seguran\u00e7a P\u00fablica Integrada",
  359 + "categories": [
  360 + {
  361 + "name": "Seguran\u00e7a",
  362 + "id": 182,
  363 + "slug": "seguranca",
  364 + "image": {
  365 + "url": "/image_uploads/public/0001/4552/seg.png"
  366 + }
  367 + }
  368 + ],
  369 + "image": {
  370 + "url": "/image_uploads/public/0001/5081/policiaintegrada.png"
  371 + }
  372 + },
  373 + {
  374 + "id": 93856,
  375 + "body": "<p>odo mundo tem direito \u00e0 alimenta\u00e7\u00e3o adequada, saud\u00e1vel, acess\u00edvel, de qualidade e em quantidade suficiente e regular. O Brasil melhorou o acesso \u00e0 alimenta\u00e7\u00e3o para a popula\u00e7\u00e3o, principalmente para os mais pobres, mas novos desafios se colocam em rela\u00e7\u00e3o \u00e0 m\u00e1 alimenta\u00e7\u00e3o. Nossas crian\u00e7as, jovens adultos enfrentam a obesidade e outras doen\u00e7as. Por isso, \u00e9 preciso melhorar a oferta de alimentos saud\u00e1veis, principalmente aos mais pobres, promover a mudan\u00e7a de h\u00e1bitos e assegurar acesso \u00e0 alimenta\u00e7\u00e3o aos grupos populacionais em situa\u00e7\u00e3o de inseguran\u00e7a.</p>",
  376 + "abstract": "<p>Estimular a alimenta\u00e7\u00e3o saud\u00e1vel \u00e0 popula\u00e7\u00e3o vulner\u00e1vel.</p>",
  377 + "title": "Alimenta\u00e7\u00e3o saud\u00e1vel",
  378 + "categories": [
  379 + {
  380 + "name": "Redu\u00e7\u00e3o da Pobreza",
  381 + "id": 183,
  382 + "slug": "reducao-da-pobreza",
  383 + "image": null
  384 + }
  385 + ],
  386 + "image": {
  387 + "url": "/image_uploads/public/0001/5057/alimentacaosaudavel.png"
  388 + }
  389 + },
  390 + {
  391 + "id": 93875,
  392 + "body": "<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h2>Sa\u00fade N\u00e3o Tem Pre\u00e7o<small>Acesso a medicamentos gratuitos ou com desconto</small></h2>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<p>O Brasil possui 34,5 mil farm\u00e1cias populares que garantem o acesso gratuito ou com desconto a medicamentos para a popula\u00e7\u00e3o em 4,4 mil munic\u00edpios de todos os estados e no Distrito Federal.</p>\r\n<p>Nessas farm\u00e1cias, o Sa\u00fade N\u00e3o Tem Pre\u00e7o garantiu a 25 milh\u00f5es de pessoas, entre 2011 e fevereiro de 2015, a retirada gratuita de 14 medicamentos para o tratamento de hipertens\u00e3o, diabetes ou asma. Al\u00e9m desses medicamentos, outros 113 s\u00e3o vendidos com at\u00e9 90% de desconto.</p>\r\n<p>Al\u00e9m das farm\u00e1cias populares, o governo federal tamb\u00e9m ajuda a garantir o acesso gratuito a vacinas e medicamentos na rede do SUS. A lista de rem\u00e9dios dispon\u00edveis na rede p\u00fablica aumentou de 550 itens, em 2010, para 810 em 2014. Foram acrescentados medicamentos para tratamento de c\u00e2ncer, transplantes e esclerose m\u00faltipla.</p>\r\n<p>No caso da esclerose m\u00faltipla, com apenas um medicamento do tratamento, o usu\u00e1rio deixa de gastar R$ 6 mil por m\u00eas (R$ 73 mil em um ano), ao receber o rem\u00e9dio pelo SUS.</p>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Compromissos futuros</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-6 col-sm-6\"><img class=\"center-block img-responsive\" src=\"http://www.participa.br/articles/public/0009/6002/saude-medicamentos-imagem1.png\" alt=\"\" /></div>\r\n<div class=\"col-md-6 col-sm-6\">\r\n<ul class=\"list-unstyled\">\r\n<li>Garantir que a rede de farm\u00e1cias populares do Aqui Tem Farm\u00e1cia Popular continue, com especial aten\u00e7\u00e3o aos munic\u00edpios do Brasil Sem Mis\u00e9ria e os atendidos pelo Programa Mais M\u00e9dicos.</li>\r\n<li>Garantir o acesso gratuito dos medicamentos da lista em todas as unidades do SUS.</li>\r\n</ul>\r\n</div>\r\n</div>\r\n</div>\r\n<div class=\"container\">\r\n<div class=\"row\">\r\n<div class=\"col-md-12\">\r\n<h3>Expans\u00e3o do acesso a medicamentos</h3>\r\n</div>\r\n</div>\r\n<div class=\"row\">\r\n<div class=\"col-md-4\"><img class=\"img-responsive\" src=\"http://www.participa.br/articles/public/0009/6003/saude-medicamentos-imagem2.png\" alt=\"\" /></div>\r\n<div class=\"col-md-8\">\r\n<h4>30,4 milh\u00f5es de pessoas</h4>\r\n<p>j\u00e1 foram beneficiadas.</p>\r\n<br /><br />\r\n<h4>34,5 mil estabelecimentos,</h4>\r\n<p>sendo 532 da rede pr\u00f3pria e 33.982 da rede credenciada, que beneficiam 4.393 munic\u00edpios</p>\r\n<br /><br />\r\n<h4>4.393 munic\u00edpios</h4>\r\n<p>disponibilizam estabelecimentos da rede pr\u00f3pria e credenciada</p>\r\n</div>\r\n</div>\r\n</div>",
  393 + "abstract": "<p>Acesso a medicamentos gratuitos ou com desconto.</p>",
  394 + "title": "Sa\u00fade n\u00e3o tem Pre\u00e7o",
  395 + "categories": [
  396 + {
  397 + "name": "Sa\u00fade",
  398 + "id": 180,
  399 + "slug": "saude",
  400 + "image": {
  401 + "url": "/image_uploads/public/0001/4546/sau.png"
  402 + }
  403 + }
  404 + ],
  405 + "image": {
  406 + "url": "/image_uploads/public/0001/4943/acessomedicamentos.png"
  407 + }
  408 + },
  409 + {
  410 + "id": 93861,
  411 + "body": "<p>A constru\u00e7\u00e3o de creches e pr\u00e9-escolas e a aquisi\u00e7\u00e3o de equipamentos para a rede desse n\u00edvel educacional s\u00e3o indispens\u00e1veis para a melhoria da qualidade da educa\u00e7\u00e3o. Por isso, o governo federal presta assist\u00eancia financeira aos munic\u00edpios e ao Distrito Federal para garantir o acesso de crian\u00e7as de 0 a 6 anos a creches e escolas de educa\u00e7\u00e3o infantil da rede p\u00fablica. Desde 2011, 6.185 unidades foram contratadas pelo Governo Federal com os mun\u00edcipios. O Proinf\u00e2ncia repassa tamb\u00e9m recursos para equipar as escolas em fase final de constru\u00e7\u00e3o, com itens padronizados e adequados ao funcionamento das unidades.</p>",
  412 + "abstract": "<p>Mais creches e pr\u00e9-escolas.</p>",
  413 + "title": "Proinf\u00e2ncia",
  414 + "categories": [
  415 + {
  416 + "name": "Educa\u00e7\u00e3o",
  417 + "id": 181,
  418 + "slug": "educacao",
  419 + "image": {
  420 + "url": "/image_uploads/public/0001/4576/edu.png"
  421 + }
  422 + }
  423 + ],
  424 + "image": {
  425 + "url": "/image_uploads/public/0001/4979/proinfancia.png"
  426 + }
  427 + },
  428 + {
  429 + "id": 95416,
  430 + "body": "",
  431 + "abstract": "<p>Pol\u00edticas de renda, inclus\u00e3o produtiva e acesso a servi\u00e7os.</p>",
  432 + "title": "Brasil Sem Mis\u00e9ria",
  433 + "categories": [
  434 + {
  435 + "name": "Redu\u00e7\u00e3o da Pobreza",
  436 + "id": 183,
  437 + "slug": "reducao-da-pobreza",
  438 + "image": null
  439 + }
  440 + ],
  441 + "image": null
  442 + },
  443 + {
  444 + "id": 95415,
  445 + "body": "",
  446 + "abstract": "<p>Enfrentamento ao crime organizado.</p>",
  447 + "title": "Pol\u00edcia Federal",
  448 + "categories": [
  449 + {
  450 + "name": "Seguran\u00e7a",
  451 + "id": 182,
  452 + "slug": "seguranca",
  453 + "image": {
  454 + "url": "/image_uploads/public/0001/4552/seg.png"
  455 + }
  456 + }
  457 + ],
  458 + "image": null
  459 + },
  460 + {
  461 + "id": 93869,
  462 + "body": "<p>O Sinesp integra informa\u00e7\u00f5es e possibilita consultas operacionais, investigativas e estrat\u00e9gicas com foco em seguran\u00e7a p\u00fablica, drogas, justi\u00e7a e sistema prisional implementado em parceria com os estados. O aplicativo Sinesp Cidad\u00e3o permite consultas sobre pessoas desaparecidas, ve\u00edculos roubados e furtados, mandados de pris\u00e3o.</p>",
  463 + "abstract": "<p>Tecnologia a servi\u00e7o da seguran\u00e7a do cidad\u00e3o.</p>",
  464 + "title": "Sinesp",
  465 + "categories": [
  466 + {
  467 + "name": "Seguran\u00e7a",
  468 + "id": 182,
  469 + "slug": "seguranca",
  470 + "image": {
  471 + "url": "/image_uploads/public/0001/4552/seg.png"
  472 + }
  473 + }
  474 + ],
  475 + "image": {
  476 + "url": "/image_uploads/public/0001/5087/sinesp.png"
  477 + }
  478 + },
  479 + {
  480 + "id": 93793,
  481 + "body": "<p>Oferece aos estudantes brasileiros de gradua\u00e7\u00e3o e de p\u00f3s-gradua\u00e7\u00e3o oportunidades de estudo e pesquisa nas melhores universidades do exterior. O objetivo \u00e9 investir na forma\u00e7\u00e3o em compet\u00eancias e habilidades das \u00e1reas contempladas, como engenharias, ci\u00eancias, tecnologias. Os estudantes de gradua\u00e7\u00e3o, para participar, devem ter pontua\u00e7\u00e3o m\u00ednima de 600 pontos no Enem. Em 2014, atingiu-se a marca de 101,4 mil bolsas concedidas. Ser\u00e1 ampliado para outras 100 mil bolsas at\u00e9 final de 2018.</p>",
  482 + "abstract": "<p>Inova\u00e7\u00e3o e mobilidade internacional.</p>",
  483 + "title": "Ci\u00eancia Sem Fronteiras",
  484 + "categories": [
  485 + {
  486 + "name": "Educa\u00e7\u00e3o",
  487 + "id": 181,
  488 + "slug": "educacao",
  489 + "image": {
  490 + "url": "/image_uploads/public/0001/4576/edu.png"
  491 + }
  492 + }
  493 + ],
  494 + "image": {
  495 + "url": "/image_uploads/public/0001/4973/cienciasemfronteiras.png"
  496 + }
  497 + },
  498 + {
  499 + "id": 93792,
  500 + "body": "<p>Seleciona candidatos a vagas nas institui\u00e7\u00f5es p\u00fablicas de ensino superior. A sele\u00e7\u00e3o \u00e9 feita com base na nota obtida pelo candidato no Enem. No primeiro semestre de 2015, o sistema recebeu 2,8 milh\u00f5es de inscri\u00e7\u00f5es e ofertou 205 mil vagas, em 128 institui\u00e7\u00f5es participantes.</p>",
  501 + "abstract": "<p>Sistema de Sele\u00e7\u00e3o Unificada.</p>",
  502 + "title": "Sisu",
  503 + "categories": [
  504 + {
  505 + "name": "Educa\u00e7\u00e3o",
  506 + "id": 181,
  507 + "slug": "educacao",
  508 + "image": {
  509 + "url": "/image_uploads/public/0001/4576/edu.png"
  510 + }
  511 + }
  512 + ],
  513 + "image": {
  514 + "url": "/image_uploads/public/0001/5021/sisu.png"
  515 + }
  516 + },
  517 + {
  518 + "id": 93860,
  519 + "body": "<p>O Enem \u00e9 a porta de entrada para os principais programas do MEC como o Prouni, o Fies, o Ci\u00eancia sem Fronteiras e o Pronatec, al\u00e9m de ser o crit\u00e9rio de sele\u00e7\u00e3o para ingresso no ensino superior p\u00fablico por meio do Sisu. O exame tamb\u00e9m avalia o desempenho do estudante ao final da educa\u00e7\u00e3o b\u00e1sica. Em 2014, houve recorde com 8,7 milh\u00f5es de inscritos.</p>",
  520 + "abstract": "<p>Exame Nacional do Ensino M\u00e9dio.</p>",
  521 + "title": "Enem",
  522 + "categories": [
  523 + {
  524 + "name": "Educa\u00e7\u00e3o",
  525 + "id": 181,
  526 + "slug": "educacao",
  527 + "image": {
  528 + "url": "/image_uploads/public/0001/4576/edu.png"
  529 + }
  530 + }
  531 + ],
  532 + "image": {
  533 + "url": "/image_uploads/public/0001/4985/enem.png"
  534 + }
  535 + },
  536 + {
  537 + "id": 93859,
  538 + "body": "<p>Financia cursos de gradua\u00e7\u00e3o para estudantes matriculados em institui\u00e7\u00f5es n\u00e3o gratuitas de ensino superior, em cursos superiores com avalia\u00e7\u00e3o positiva pelo MEC (a partir de 3). Para pedir o financiamento, o estudante precisa obter nota m\u00ednima de 450 pontos no Enem. J\u00e1 foram firmados 1,9 milh\u00e3o de contratos em todo o pa\u00eds.</p>",
  539 + "abstract": "<p>Fundo de Financiamento Estudantil.</p>",
  540 + "title": "Fies",
  541 + "categories": [
  542 + {
  543 + "name": "Educa\u00e7\u00e3o",
  544 + "id": 181,
  545 + "slug": "educacao",
  546 + "image": {
  547 + "url": "/image_uploads/public/0001/4576/edu.png"
  548 + }
  549 + }
  550 + ],
  551 + "image": {
  552 + "url": "/image_uploads/public/0001/4955/fies.png"
  553 + }
  554 + },
  555 + {
  556 + "id": 93864,
  557 + "body": "<p>Articula e coordena a\u00e7\u00f5es entre a Uni\u00e3o e os governos estaduais e do Distrito Federal na formula\u00e7\u00e3o e implanta\u00e7\u00e3o de pol\u00edticas para elevar o padr\u00e3o de qualidade do Ensino M\u00e9dio. No primeiro momento, duas a\u00e7\u00f5es estrat\u00e9gicas est\u00e3o articuladas: o Programa Ensino M\u00e9dio Inovador (ProEMI) \u2013 estrat\u00e9gia de indu\u00e7\u00e3o e elabora\u00e7\u00e3o, pelas escolas, de redesenho curricular para a oferta de educa\u00e7\u00e3o de qualidade com foco na forma\u00e7\u00e3o humana integral \u2013 e a forma\u00e7\u00e3o continuada de professores.</p>",
  558 + "abstract": "<p>Pacto Nacional pelo Fortalecimento do Ensino M\u00e9dio.</p>",
  559 + "title": "Ensino M\u00e9dio",
  560 + "categories": [
  561 + {
  562 + "name": "Educa\u00e7\u00e3o",
  563 + "id": 181,
  564 + "slug": "educacao",
  565 + "image": {
  566 + "url": "/image_uploads/public/0001/4576/edu.png"
  567 + }
  568 + }
  569 + ],
  570 + "image": {
  571 + "url": "/image_uploads/public/0001/4967/ensinomedio.png"
  572 + }
  573 + },
  574 + {
  575 + "id": 93863,
  576 + "body": "<p>O Brasil est\u00e1 comprometido em alfabetizar em L\u00edngua Portuguesa e Matem\u00e1tica todas as crian\u00e7as de at\u00e9 os oito anos de idade, ao final do 3\u00ba ano do ensino fundamental. O pacto foi assumido pelos governos federal, dos estados, do Distrito Federal e dos munic\u00edpios para assegurar a\u00e7\u00f5es relacionadas \u00e0 forma\u00e7\u00e3o continuada dos professores alfabetizadores e seus orientadores de estudo; distribui\u00e7\u00e3o de materiais did\u00e1ticos e obras liter\u00e1rias; e de apoio pedag\u00f3gico. Mais de 300 mil professores alfabetizadores j\u00e1 foram atendidos.</p>",
  577 + "abstract": "<p>Pacto Nacional para alfabetiza\u00e7\u00e3o de crian\u00e7as.</p>",
  578 + "title": "Alfabetiza\u00e7\u00e3o na Idade Certa",
  579 + "categories": [
  580 + {
  581 + "name": "Educa\u00e7\u00e3o",
  582 + "id": 181,
  583 + "slug": "educacao",
  584 + "image": {
  585 + "url": "/image_uploads/public/0001/4576/edu.png"
  586 + }
  587 + }
  588 + ],
  589 + "image": {
  590 + "url": "/image_uploads/public/0001/4991/alfabetizacao.png"
  591 + }
  592 + },
  593 + {
  594 + "id": 93858,
  595 + "body": "<p>Concede bolsas de estudo integrais e parciais de 50% em institui\u00e7\u00f5es privadas de educa\u00e7\u00e3o superior. Para concorrer \u00e0s bolsas integrais, o candidato deve ter renda familiar bruta mensal de at\u00e9 um sal\u00e1rio m\u00ednimo e meio por pessoa; para as bolsas parciais de 50%, a renda por pessoa tem que ser de at\u00e9 tr\u00eas sal\u00e1rios m\u00ednimos. Como crit\u00e9rio de ingresso \u00e9 preciso ter obtido no m\u00ednimo 450 pontos no Enem. Atualmente, o programa tem 689 mil bolsas ativas e 1,5 milh\u00e3o de bolsas concedidas.</p>",
  596 + "abstract": "<p>Universidade para Todos.</p>",
  597 + "title": "Prouni",
  598 + "categories": [
  599 + {
  600 + "name": "Educa\u00e7\u00e3o",
  601 + "id": 181,
  602 + "slug": "educacao",
  603 + "image": {
  604 + "url": "/image_uploads/public/0001/4576/edu.png"
  605 + }
  606 + }
  607 + ],
  608 + "image": {
  609 + "url": "/image_uploads/public/0001/5003/prouni.png"
  610 + }
  611 + }
  612 + ]
  613 + }
  614 +}
0 615 \ No newline at end of file
... ...
index.html
... ... @@ -6,11 +6,93 @@
6 6 <meta http-equiv="X-UA-Compatible" content="IE=edge">
7 7 <meta name="viewport" content="width=device-width, initial-scale=1">
8 8  
9   - <link rel="stylesheet" href="css/bootstrap.min.css" />
10   - <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
11   - <link href='http://fonts.googleapis.com/css?family=Open+Sans:400,300,700' rel='stylesheet' type='text/css'>
12   - <link href='http://fonts.googleapis.com/css?family=Asap:400,700' rel='stylesheet' type='text/css'>
13   - <link rel="stylesheet" href="style.css" />
  9 + <script type='text/javascript'>
  10 + function removeUrlParameters(full_url){
  11 + var url_base = full_url.split('#').shift();
  12 + return url_base;
  13 + }
  14 + function addBaseUrl(filename){
  15 + var base = window.location.href;
  16 + if(base.match(/file:/) || filename.match(/http:/)){
  17 + base = '';
  18 + }else{
  19 + base = removeUrlParameters(base) + '/';
  20 + }
  21 + return base + filename;
  22 + }
  23 + function makeCSSLink(filename){
  24 + var fileref=document.createElement("link");
  25 + fileref.setAttribute("rel", "stylesheet");
  26 + fileref.setAttribute("type", "text/css");
  27 + fileref.setAttribute("href", addBaseUrl(filename));
  28 + return fileref;
  29 + }
  30 + function loadCSSFiles(){
  31 + var css_files = [
  32 + 'css/bootstrap.min.css',
  33 + 'css/hover.custom.css',
  34 + 'http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css',
  35 + 'http://fonts.googleapis.com/css?family=Open+Sans:400,300,700',
  36 + 'http://fonts.googleapis.com/css?family=Asap:400,700',
  37 + 'style.css'
  38 + ];
  39 + head = document.getElementsByTagName("head")[0]
  40 + for(i = 0; i < css_files.length; i++){
  41 + head.appendChild(makeCSSLink(css_files[i]));
  42 + }
  43 + }
  44 + function makeJSURL(filename){
  45 + var url = addBaseUrl(filename);
  46 +
  47 + return url;
  48 + }
  49 +
  50 + function loadJavaScriptSync(file_path){
  51 + var head = document.getElementsByTagName("head")[0];
  52 + var script_element = document.createElement("script");
  53 + script_element.type = "text/javascript";
  54 + var req = new XMLHttpRequest();
  55 + req.open("GET", file_path, false); // 'false': synchronous.
  56 + req.send(null);
  57 + script_element.text = req.responseText;
  58 + head.appendChild(script_element);
  59 + }
  60 +
  61 + function loadJavaScriptAsync(file_path){
  62 + var head = document.getElementsByTagName("head")[0];
  63 + var script_element = document.createElement("script");
  64 + script_element.type = "text/javascript";
  65 + script_element.src = file_path;
  66 + head.appendChild(script_element);
  67 + }
  68 +
  69 + function loadJSFiles(){
  70 + var js_files = [
  71 + 'js/jquery-2.1.3.min.js',
  72 + 'js/jquery-ui-1.11.4.custom/jquery-ui.min.js',
  73 + 'js/jquery.cookie.js',
  74 + 'js/handlebars-v3.0.1.js',
  75 + 'js/handlebars-helpers.js',
  76 + 'js/jquery.dotdotdot.min.js',
  77 + 'js/jquery.maxlength.min.js',
  78 + 'js/layout.js',
  79 + 'js/main.js'
  80 + ];
  81 +
  82 + var file_path = '';
  83 + for(i = 0; i < js_files.length; i++){
  84 + file_path = makeJSURL(js_files[i]);
  85 + if(file_path.match('layout.js') || file_path.match('main.js')){
  86 + loadJavaScriptAsync(file_path);
  87 + }else{
  88 + loadJavaScriptSync(file_path);
  89 + }
  90 + }
  91 + }
  92 +
  93 + loadCSSFiles();
  94 +
  95 + </script>
14 96  
15 97 </head>
16 98 <body>
... ... @@ -19,7 +101,7 @@
19 101  
20 102 <script id='proposal-template' type='text/x-handlebars-template'>
21 103 <header>
22   - <h1><a href="/">{{article.title}}</a></h1>
  104 + <h1><a href="#">{{article.title}}</a></h1>
23 105 <a id='display-contrast' href='#'>Alto Contraste</a>
24 106 </header>
25 107  
... ... @@ -42,7 +124,7 @@
42 124 <div id="proposal-categories-container">
43 125 {{#each article.categories}}
44 126 <li id='proposal-category-{{slug}}' class="proposal-category" data-category="{{slug}}">
45   - <a href="#/temas/{{slug}}/{{id}}" class="proposal-link" data-target="proposal-item-{{id}}">{{name}}</a>
  127 + <a href="#/temas/{{slug}}/{{id}}" class="proposal-link hvr-float-shadow" data-target="proposal-item-{{id}}">{{name}}</a>
46 128 <div class="arrow-box" style="display: none"></div>
47 129 </li>
48 130 {{/each}}
... ... @@ -120,7 +202,7 @@
120 202 <div class='send-proposal-button send-button'><a href='#'><span>Envie Sua Proposta</span></a></div>
121 203 <div class="login-container hide">Login</div>
122 204 <form class='make-proposal-form save-article-form hide' id='make-proposal-form-{{id}}'>
123   - <div class="message"></div>
  205 + <div class="message hide"></div>
124 206 <div>
125 207 <div><label for="article_abstract">Descrição</label></div>
126 208 <textarea id="article_abstract" class="countdown" name="article[abstract]" placeholder="Descrição" maxlength="200"></textarea>
... ... @@ -153,7 +235,7 @@
153 235 <div class='send-experience-button send-button'><a href='#'><span>Envie Sua Experiência</span></a></div>
154 236 <div class="login-container hide">Login</div>
155 237 <form class='make-experience-form save-article-form hide' id='make-experience-form-{{id}}'>
156   - <div class="message"></div>
  238 + <div class="message hide"></div>
157 239 <div>
158 240 <div><label for="article_abstract">Descrição</label></div>
159 241 <textarea id="article_abstract" class="countdown" name="article[abstract]" placeholder="Descrição" maxlength="5000"></textarea>
... ... @@ -225,7 +307,7 @@
225 307  
226 308 <script id='login' type='text/x-handlebars-template'>
227 309 <form id="login-form" class="login">
228   - <div class="message"></div>
  310 + <div class="message hide"></div>
229 311 <div class="username">
230 312 <label for="user_name" class="label">Nome de Usuário / E-mail:</label>
231 313 <input id="user_name" name="login" type="text" placeholder="Nome do usuário / E-mail">
... ... @@ -247,16 +329,10 @@
247 329 </form>
248 330 </script>
249 331  
250   - <script src='js/jquery-2.1.3.min.js'></script>
251   - <script src='js/jquery-ui-1.11.4.custom/jquery-ui.min.js'></script>
252   - <script src='js/jquery.cookie.js'></script>
253   - <script src='js/handlebars-v3.0.1.js'></script>
254   - <script src='js/handlebars-helpers.js'></script>
255   - <script src='js/jquery.dotdotdot.min.js'></script>
256   - <script src='js/jquery.maxlength.min.js'></script>
257   - <script src='js/layout.js'></script>
  332 + <script type='text/javascript'>
  333 + loadJSFiles();
  334 + </script>
258 335  
259   - <script src='js/main.js'></script>
260 336 </body>
261 337  
262 338 </html>
... ...
js/jquery-ui-1.11.4.custom/jquery-ui.css
1   -/*! jQuery UI - v1.11.4 - 2015-04-19
  1 +/*! jQuery UI - v1.11.4 - 2015-04-24
2 2 * http://jqueryui.com
3 3 * Includes: core.css, autocomplete.css, menu.css
4 4 * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
... ...
js/jquery-ui-1.11.4.custom/jquery-ui.js
1   -/*! jQuery UI - v1.11.4 - 2015-04-19
  1 +/*! jQuery UI - v1.11.4 - 2015-04-24
2 2 * http://jqueryui.com
3   -* Includes: core.js, widget.js, position.js, autocomplete.js, menu.js
  3 +* Includes: core.js, widget.js, position.js, autocomplete.js, menu.js, effect.js, effect-blind.js
4 4 * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
5 5  
6 6 (function( factory ) {
... ... @@ -2606,5 +2606,1373 @@ $.widget( &quot;ui.autocomplete&quot;, $.ui.autocomplete, {
2606 2606 var autocomplete = $.ui.autocomplete;
2607 2607  
2608 2608  
  2609 +/*!
  2610 + * jQuery UI Effects 1.11.4
  2611 + * http://jqueryui.com
  2612 + *
  2613 + * Copyright jQuery Foundation and other contributors
  2614 + * Released under the MIT license.
  2615 + * http://jquery.org/license
  2616 + *
  2617 + * http://api.jqueryui.com/category/effects-core/
  2618 + */
  2619 +
  2620 +
  2621 +var dataSpace = "ui-effects-",
  2622 +
  2623 + // Create a local jQuery because jQuery Color relies on it and the
  2624 + // global may not exist with AMD and a custom build (#10199)
  2625 + jQuery = $;
  2626 +
  2627 +$.effects = {
  2628 + effect: {}
  2629 +};
  2630 +
  2631 +/*!
  2632 + * jQuery Color Animations v2.1.2
  2633 + * https://github.com/jquery/jquery-color
  2634 + *
  2635 + * Copyright 2014 jQuery Foundation and other contributors
  2636 + * Released under the MIT license.
  2637 + * http://jquery.org/license
  2638 + *
  2639 + * Date: Wed Jan 16 08:47:09 2013 -0600
  2640 + */
  2641 +(function( jQuery, undefined ) {
  2642 +
  2643 + var stepHooks = "backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",
  2644 +
  2645 + // plusequals test for += 100 -= 100
  2646 + rplusequals = /^([\-+])=\s*(\d+\.?\d*)/,
  2647 + // a set of RE's that can match strings and generate color tuples.
  2648 + stringParsers = [ {
  2649 + re: /rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,
  2650 + parse: function( execResult ) {
  2651 + return [
  2652 + execResult[ 1 ],
  2653 + execResult[ 2 ],
  2654 + execResult[ 3 ],
  2655 + execResult[ 4 ]
  2656 + ];
  2657 + }
  2658 + }, {
  2659 + re: /rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,
  2660 + parse: function( execResult ) {
  2661 + return [
  2662 + execResult[ 1 ] * 2.55,
  2663 + execResult[ 2 ] * 2.55,
  2664 + execResult[ 3 ] * 2.55,
  2665 + execResult[ 4 ]
  2666 + ];
  2667 + }
  2668 + }, {
  2669 + // this regex ignores A-F because it's compared against an already lowercased string
  2670 + re: /#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,
  2671 + parse: function( execResult ) {
  2672 + return [
  2673 + parseInt( execResult[ 1 ], 16 ),
  2674 + parseInt( execResult[ 2 ], 16 ),
  2675 + parseInt( execResult[ 3 ], 16 )
  2676 + ];
  2677 + }
  2678 + }, {
  2679 + // this regex ignores A-F because it's compared against an already lowercased string
  2680 + re: /#([a-f0-9])([a-f0-9])([a-f0-9])/,
  2681 + parse: function( execResult ) {
  2682 + return [
  2683 + parseInt( execResult[ 1 ] + execResult[ 1 ], 16 ),
  2684 + parseInt( execResult[ 2 ] + execResult[ 2 ], 16 ),
  2685 + parseInt( execResult[ 3 ] + execResult[ 3 ], 16 )
  2686 + ];
  2687 + }
  2688 + }, {
  2689 + re: /hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,
  2690 + space: "hsla",
  2691 + parse: function( execResult ) {
  2692 + return [
  2693 + execResult[ 1 ],
  2694 + execResult[ 2 ] / 100,
  2695 + execResult[ 3 ] / 100,
  2696 + execResult[ 4 ]
  2697 + ];
  2698 + }
  2699 + } ],
  2700 +
  2701 + // jQuery.Color( )
  2702 + color = jQuery.Color = function( color, green, blue, alpha ) {
  2703 + return new jQuery.Color.fn.parse( color, green, blue, alpha );
  2704 + },
  2705 + spaces = {
  2706 + rgba: {
  2707 + props: {
  2708 + red: {
  2709 + idx: 0,
  2710 + type: "byte"
  2711 + },
  2712 + green: {
  2713 + idx: 1,
  2714 + type: "byte"
  2715 + },
  2716 + blue: {
  2717 + idx: 2,
  2718 + type: "byte"
  2719 + }
  2720 + }
  2721 + },
  2722 +
  2723 + hsla: {
  2724 + props: {
  2725 + hue: {
  2726 + idx: 0,
  2727 + type: "degrees"
  2728 + },
  2729 + saturation: {
  2730 + idx: 1,
  2731 + type: "percent"
  2732 + },
  2733 + lightness: {
  2734 + idx: 2,
  2735 + type: "percent"
  2736 + }
  2737 + }
  2738 + }
  2739 + },
  2740 + propTypes = {
  2741 + "byte": {
  2742 + floor: true,
  2743 + max: 255
  2744 + },
  2745 + "percent": {
  2746 + max: 1
  2747 + },
  2748 + "degrees": {
  2749 + mod: 360,
  2750 + floor: true
  2751 + }
  2752 + },
  2753 + support = color.support = {},
  2754 +
  2755 + // element for support tests
  2756 + supportElem = jQuery( "<p>" )[ 0 ],
  2757 +
  2758 + // colors = jQuery.Color.names
  2759 + colors,
  2760 +
  2761 + // local aliases of functions called often
  2762 + each = jQuery.each;
  2763 +
  2764 +// determine rgba support immediately
  2765 +supportElem.style.cssText = "background-color:rgba(1,1,1,.5)";
  2766 +support.rgba = supportElem.style.backgroundColor.indexOf( "rgba" ) > -1;
  2767 +
  2768 +// define cache name and alpha properties
  2769 +// for rgba and hsla spaces
  2770 +each( spaces, function( spaceName, space ) {
  2771 + space.cache = "_" + spaceName;
  2772 + space.props.alpha = {
  2773 + idx: 3,
  2774 + type: "percent",
  2775 + def: 1
  2776 + };
  2777 +});
  2778 +
  2779 +function clamp( value, prop, allowEmpty ) {
  2780 + var type = propTypes[ prop.type ] || {};
  2781 +
  2782 + if ( value == null ) {
  2783 + return (allowEmpty || !prop.def) ? null : prop.def;
  2784 + }
  2785 +
  2786 + // ~~ is an short way of doing floor for positive numbers
  2787 + value = type.floor ? ~~value : parseFloat( value );
  2788 +
  2789 + // IE will pass in empty strings as value for alpha,
  2790 + // which will hit this case
  2791 + if ( isNaN( value ) ) {
  2792 + return prop.def;
  2793 + }
  2794 +
  2795 + if ( type.mod ) {
  2796 + // we add mod before modding to make sure that negatives values
  2797 + // get converted properly: -10 -> 350
  2798 + return (value + type.mod) % type.mod;
  2799 + }
  2800 +
  2801 + // for now all property types without mod have min and max
  2802 + return 0 > value ? 0 : type.max < value ? type.max : value;
  2803 +}
  2804 +
  2805 +function stringParse( string ) {
  2806 + var inst = color(),
  2807 + rgba = inst._rgba = [];
  2808 +
  2809 + string = string.toLowerCase();
  2810 +
  2811 + each( stringParsers, function( i, parser ) {
  2812 + var parsed,
  2813 + match = parser.re.exec( string ),
  2814 + values = match && parser.parse( match ),
  2815 + spaceName = parser.space || "rgba";
  2816 +
  2817 + if ( values ) {
  2818 + parsed = inst[ spaceName ]( values );
  2819 +
  2820 + // if this was an rgba parse the assignment might happen twice
  2821 + // oh well....
  2822 + inst[ spaces[ spaceName ].cache ] = parsed[ spaces[ spaceName ].cache ];
  2823 + rgba = inst._rgba = parsed._rgba;
  2824 +
  2825 + // exit each( stringParsers ) here because we matched
  2826 + return false;
  2827 + }
  2828 + });
  2829 +
  2830 + // Found a stringParser that handled it
  2831 + if ( rgba.length ) {
  2832 +
  2833 + // if this came from a parsed string, force "transparent" when alpha is 0
  2834 + // chrome, (and maybe others) return "transparent" as rgba(0,0,0,0)
  2835 + if ( rgba.join() === "0,0,0,0" ) {
  2836 + jQuery.extend( rgba, colors.transparent );
  2837 + }
  2838 + return inst;
  2839 + }
  2840 +
  2841 + // named colors
  2842 + return colors[ string ];
  2843 +}
  2844 +
  2845 +color.fn = jQuery.extend( color.prototype, {
  2846 + parse: function( red, green, blue, alpha ) {
  2847 + if ( red === undefined ) {
  2848 + this._rgba = [ null, null, null, null ];
  2849 + return this;
  2850 + }
  2851 + if ( red.jquery || red.nodeType ) {
  2852 + red = jQuery( red ).css( green );
  2853 + green = undefined;
  2854 + }
  2855 +
  2856 + var inst = this,
  2857 + type = jQuery.type( red ),
  2858 + rgba = this._rgba = [];
  2859 +
  2860 + // more than 1 argument specified - assume ( red, green, blue, alpha )
  2861 + if ( green !== undefined ) {
  2862 + red = [ red, green, blue, alpha ];
  2863 + type = "array";
  2864 + }
  2865 +
  2866 + if ( type === "string" ) {
  2867 + return this.parse( stringParse( red ) || colors._default );
  2868 + }
  2869 +
  2870 + if ( type === "array" ) {
  2871 + each( spaces.rgba.props, function( key, prop ) {
  2872 + rgba[ prop.idx ] = clamp( red[ prop.idx ], prop );
  2873 + });
  2874 + return this;
  2875 + }
  2876 +
  2877 + if ( type === "object" ) {
  2878 + if ( red instanceof color ) {
  2879 + each( spaces, function( spaceName, space ) {
  2880 + if ( red[ space.cache ] ) {
  2881 + inst[ space.cache ] = red[ space.cache ].slice();
  2882 + }
  2883 + });
  2884 + } else {
  2885 + each( spaces, function( spaceName, space ) {
  2886 + var cache = space.cache;
  2887 + each( space.props, function( key, prop ) {
  2888 +
  2889 + // if the cache doesn't exist, and we know how to convert
  2890 + if ( !inst[ cache ] && space.to ) {
  2891 +
  2892 + // if the value was null, we don't need to copy it
  2893 + // if the key was alpha, we don't need to copy it either
  2894 + if ( key === "alpha" || red[ key ] == null ) {
  2895 + return;
  2896 + }
  2897 + inst[ cache ] = space.to( inst._rgba );
  2898 + }
  2899 +
  2900 + // this is the only case where we allow nulls for ALL properties.
  2901 + // call clamp with alwaysAllowEmpty
  2902 + inst[ cache ][ prop.idx ] = clamp( red[ key ], prop, true );
  2903 + });
  2904 +
  2905 + // everything defined but alpha?
  2906 + if ( inst[ cache ] && jQuery.inArray( null, inst[ cache ].slice( 0, 3 ) ) < 0 ) {
  2907 + // use the default of 1
  2908 + inst[ cache ][ 3 ] = 1;
  2909 + if ( space.from ) {
  2910 + inst._rgba = space.from( inst[ cache ] );
  2911 + }
  2912 + }
  2913 + });
  2914 + }
  2915 + return this;
  2916 + }
  2917 + },
  2918 + is: function( compare ) {
  2919 + var is = color( compare ),
  2920 + same = true,
  2921 + inst = this;
  2922 +
  2923 + each( spaces, function( _, space ) {
  2924 + var localCache,
  2925 + isCache = is[ space.cache ];
  2926 + if (isCache) {
  2927 + localCache = inst[ space.cache ] || space.to && space.to( inst._rgba ) || [];
  2928 + each( space.props, function( _, prop ) {
  2929 + if ( isCache[ prop.idx ] != null ) {
  2930 + same = ( isCache[ prop.idx ] === localCache[ prop.idx ] );
  2931 + return same;
  2932 + }
  2933 + });
  2934 + }
  2935 + return same;
  2936 + });
  2937 + return same;
  2938 + },
  2939 + _space: function() {
  2940 + var used = [],
  2941 + inst = this;
  2942 + each( spaces, function( spaceName, space ) {
  2943 + if ( inst[ space.cache ] ) {
  2944 + used.push( spaceName );
  2945 + }
  2946 + });
  2947 + return used.pop();
  2948 + },
  2949 + transition: function( other, distance ) {
  2950 + var end = color( other ),
  2951 + spaceName = end._space(),
  2952 + space = spaces[ spaceName ],
  2953 + startColor = this.alpha() === 0 ? color( "transparent" ) : this,
  2954 + start = startColor[ space.cache ] || space.to( startColor._rgba ),
  2955 + result = start.slice();
  2956 +
  2957 + end = end[ space.cache ];
  2958 + each( space.props, function( key, prop ) {
  2959 + var index = prop.idx,
  2960 + startValue = start[ index ],
  2961 + endValue = end[ index ],
  2962 + type = propTypes[ prop.type ] || {};
  2963 +
  2964 + // if null, don't override start value
  2965 + if ( endValue === null ) {
  2966 + return;
  2967 + }
  2968 + // if null - use end
  2969 + if ( startValue === null ) {
  2970 + result[ index ] = endValue;
  2971 + } else {
  2972 + if ( type.mod ) {
  2973 + if ( endValue - startValue > type.mod / 2 ) {
  2974 + startValue += type.mod;
  2975 + } else if ( startValue - endValue > type.mod / 2 ) {
  2976 + startValue -= type.mod;
  2977 + }
  2978 + }
  2979 + result[ index ] = clamp( ( endValue - startValue ) * distance + startValue, prop );
  2980 + }
  2981 + });
  2982 + return this[ spaceName ]( result );
  2983 + },
  2984 + blend: function( opaque ) {
  2985 + // if we are already opaque - return ourself
  2986 + if ( this._rgba[ 3 ] === 1 ) {
  2987 + return this;
  2988 + }
  2989 +
  2990 + var rgb = this._rgba.slice(),
  2991 + a = rgb.pop(),
  2992 + blend = color( opaque )._rgba;
  2993 +
  2994 + return color( jQuery.map( rgb, function( v, i ) {
  2995 + return ( 1 - a ) * blend[ i ] + a * v;
  2996 + }));
  2997 + },
  2998 + toRgbaString: function() {
  2999 + var prefix = "rgba(",
  3000 + rgba = jQuery.map( this._rgba, function( v, i ) {
  3001 + return v == null ? ( i > 2 ? 1 : 0 ) : v;
  3002 + });
  3003 +
  3004 + if ( rgba[ 3 ] === 1 ) {
  3005 + rgba.pop();
  3006 + prefix = "rgb(";
  3007 + }
  3008 +
  3009 + return prefix + rgba.join() + ")";
  3010 + },
  3011 + toHslaString: function() {
  3012 + var prefix = "hsla(",
  3013 + hsla = jQuery.map( this.hsla(), function( v, i ) {
  3014 + if ( v == null ) {
  3015 + v = i > 2 ? 1 : 0;
  3016 + }
  3017 +
  3018 + // catch 1 and 2
  3019 + if ( i && i < 3 ) {
  3020 + v = Math.round( v * 100 ) + "%";
  3021 + }
  3022 + return v;
  3023 + });
  3024 +
  3025 + if ( hsla[ 3 ] === 1 ) {
  3026 + hsla.pop();
  3027 + prefix = "hsl(";
  3028 + }
  3029 + return prefix + hsla.join() + ")";
  3030 + },
  3031 + toHexString: function( includeAlpha ) {
  3032 + var rgba = this._rgba.slice(),
  3033 + alpha = rgba.pop();
  3034 +
  3035 + if ( includeAlpha ) {
  3036 + rgba.push( ~~( alpha * 255 ) );
  3037 + }
  3038 +
  3039 + return "#" + jQuery.map( rgba, function( v ) {
  3040 +
  3041 + // default to 0 when nulls exist
  3042 + v = ( v || 0 ).toString( 16 );
  3043 + return v.length === 1 ? "0" + v : v;
  3044 + }).join("");
  3045 + },
  3046 + toString: function() {
  3047 + return this._rgba[ 3 ] === 0 ? "transparent" : this.toRgbaString();
  3048 + }
  3049 +});
  3050 +color.fn.parse.prototype = color.fn;
  3051 +
  3052 +// hsla conversions adapted from:
  3053 +// https://code.google.com/p/maashaack/source/browse/packages/graphics/trunk/src/graphics/colors/HUE2RGB.as?r=5021
  3054 +
  3055 +function hue2rgb( p, q, h ) {
  3056 + h = ( h + 1 ) % 1;
  3057 + if ( h * 6 < 1 ) {
  3058 + return p + ( q - p ) * h * 6;
  3059 + }
  3060 + if ( h * 2 < 1) {
  3061 + return q;
  3062 + }
  3063 + if ( h * 3 < 2 ) {
  3064 + return p + ( q - p ) * ( ( 2 / 3 ) - h ) * 6;
  3065 + }
  3066 + return p;
  3067 +}
  3068 +
  3069 +spaces.hsla.to = function( rgba ) {
  3070 + if ( rgba[ 0 ] == null || rgba[ 1 ] == null || rgba[ 2 ] == null ) {
  3071 + return [ null, null, null, rgba[ 3 ] ];
  3072 + }
  3073 + var r = rgba[ 0 ] / 255,
  3074 + g = rgba[ 1 ] / 255,
  3075 + b = rgba[ 2 ] / 255,
  3076 + a = rgba[ 3 ],
  3077 + max = Math.max( r, g, b ),
  3078 + min = Math.min( r, g, b ),
  3079 + diff = max - min,
  3080 + add = max + min,
  3081 + l = add * 0.5,
  3082 + h, s;
  3083 +
  3084 + if ( min === max ) {
  3085 + h = 0;
  3086 + } else if ( r === max ) {
  3087 + h = ( 60 * ( g - b ) / diff ) + 360;
  3088 + } else if ( g === max ) {
  3089 + h = ( 60 * ( b - r ) / diff ) + 120;
  3090 + } else {
  3091 + h = ( 60 * ( r - g ) / diff ) + 240;
  3092 + }
  3093 +
  3094 + // chroma (diff) == 0 means greyscale which, by definition, saturation = 0%
  3095 + // otherwise, saturation is based on the ratio of chroma (diff) to lightness (add)
  3096 + if ( diff === 0 ) {
  3097 + s = 0;
  3098 + } else if ( l <= 0.5 ) {
  3099 + s = diff / add;
  3100 + } else {
  3101 + s = diff / ( 2 - add );
  3102 + }
  3103 + return [ Math.round(h) % 360, s, l, a == null ? 1 : a ];
  3104 +};
  3105 +
  3106 +spaces.hsla.from = function( hsla ) {
  3107 + if ( hsla[ 0 ] == null || hsla[ 1 ] == null || hsla[ 2 ] == null ) {
  3108 + return [ null, null, null, hsla[ 3 ] ];
  3109 + }
  3110 + var h = hsla[ 0 ] / 360,
  3111 + s = hsla[ 1 ],
  3112 + l = hsla[ 2 ],
  3113 + a = hsla[ 3 ],
  3114 + q = l <= 0.5 ? l * ( 1 + s ) : l + s - l * s,
  3115 + p = 2 * l - q;
  3116 +
  3117 + return [
  3118 + Math.round( hue2rgb( p, q, h + ( 1 / 3 ) ) * 255 ),
  3119 + Math.round( hue2rgb( p, q, h ) * 255 ),
  3120 + Math.round( hue2rgb( p, q, h - ( 1 / 3 ) ) * 255 ),
  3121 + a
  3122 + ];
  3123 +};
  3124 +
  3125 +each( spaces, function( spaceName, space ) {
  3126 + var props = space.props,
  3127 + cache = space.cache,
  3128 + to = space.to,
  3129 + from = space.from;
  3130 +
  3131 + // makes rgba() and hsla()
  3132 + color.fn[ spaceName ] = function( value ) {
  3133 +
  3134 + // generate a cache for this space if it doesn't exist
  3135 + if ( to && !this[ cache ] ) {
  3136 + this[ cache ] = to( this._rgba );
  3137 + }
  3138 + if ( value === undefined ) {
  3139 + return this[ cache ].slice();
  3140 + }
  3141 +
  3142 + var ret,
  3143 + type = jQuery.type( value ),
  3144 + arr = ( type === "array" || type === "object" ) ? value : arguments,
  3145 + local = this[ cache ].slice();
  3146 +
  3147 + each( props, function( key, prop ) {
  3148 + var val = arr[ type === "object" ? key : prop.idx ];
  3149 + if ( val == null ) {
  3150 + val = local[ prop.idx ];
  3151 + }
  3152 + local[ prop.idx ] = clamp( val, prop );
  3153 + });
  3154 +
  3155 + if ( from ) {
  3156 + ret = color( from( local ) );
  3157 + ret[ cache ] = local;
  3158 + return ret;
  3159 + } else {
  3160 + return color( local );
  3161 + }
  3162 + };
  3163 +
  3164 + // makes red() green() blue() alpha() hue() saturation() lightness()
  3165 + each( props, function( key, prop ) {
  3166 + // alpha is included in more than one space
  3167 + if ( color.fn[ key ] ) {
  3168 + return;
  3169 + }
  3170 + color.fn[ key ] = function( value ) {
  3171 + var vtype = jQuery.type( value ),
  3172 + fn = ( key === "alpha" ? ( this._hsla ? "hsla" : "rgba" ) : spaceName ),
  3173 + local = this[ fn ](),
  3174 + cur = local[ prop.idx ],
  3175 + match;
  3176 +
  3177 + if ( vtype === "undefined" ) {
  3178 + return cur;
  3179 + }
  3180 +
  3181 + if ( vtype === "function" ) {
  3182 + value = value.call( this, cur );
  3183 + vtype = jQuery.type( value );
  3184 + }
  3185 + if ( value == null && prop.empty ) {
  3186 + return this;
  3187 + }
  3188 + if ( vtype === "string" ) {
  3189 + match = rplusequals.exec( value );
  3190 + if ( match ) {
  3191 + value = cur + parseFloat( match[ 2 ] ) * ( match[ 1 ] === "+" ? 1 : -1 );
  3192 + }
  3193 + }
  3194 + local[ prop.idx ] = value;
  3195 + return this[ fn ]( local );
  3196 + };
  3197 + });
  3198 +});
  3199 +
  3200 +// add cssHook and .fx.step function for each named hook.
  3201 +// accept a space separated string of properties
  3202 +color.hook = function( hook ) {
  3203 + var hooks = hook.split( " " );
  3204 + each( hooks, function( i, hook ) {
  3205 + jQuery.cssHooks[ hook ] = {
  3206 + set: function( elem, value ) {
  3207 + var parsed, curElem,
  3208 + backgroundColor = "";
  3209 +
  3210 + if ( value !== "transparent" && ( jQuery.type( value ) !== "string" || ( parsed = stringParse( value ) ) ) ) {
  3211 + value = color( parsed || value );
  3212 + if ( !support.rgba && value._rgba[ 3 ] !== 1 ) {
  3213 + curElem = hook === "backgroundColor" ? elem.parentNode : elem;
  3214 + while (
  3215 + (backgroundColor === "" || backgroundColor === "transparent") &&
  3216 + curElem && curElem.style
  3217 + ) {
  3218 + try {
  3219 + backgroundColor = jQuery.css( curElem, "backgroundColor" );
  3220 + curElem = curElem.parentNode;
  3221 + } catch ( e ) {
  3222 + }
  3223 + }
  3224 +
  3225 + value = value.blend( backgroundColor && backgroundColor !== "transparent" ?
  3226 + backgroundColor :
  3227 + "_default" );
  3228 + }
  3229 +
  3230 + value = value.toRgbaString();
  3231 + }
  3232 + try {
  3233 + elem.style[ hook ] = value;
  3234 + } catch ( e ) {
  3235 + // wrapped to prevent IE from throwing errors on "invalid" values like 'auto' or 'inherit'
  3236 + }
  3237 + }
  3238 + };
  3239 + jQuery.fx.step[ hook ] = function( fx ) {
  3240 + if ( !fx.colorInit ) {
  3241 + fx.start = color( fx.elem, hook );
  3242 + fx.end = color( fx.end );
  3243 + fx.colorInit = true;
  3244 + }
  3245 + jQuery.cssHooks[ hook ].set( fx.elem, fx.start.transition( fx.end, fx.pos ) );
  3246 + };
  3247 + });
  3248 +
  3249 +};
  3250 +
  3251 +color.hook( stepHooks );
  3252 +
  3253 +jQuery.cssHooks.borderColor = {
  3254 + expand: function( value ) {
  3255 + var expanded = {};
  3256 +
  3257 + each( [ "Top", "Right", "Bottom", "Left" ], function( i, part ) {
  3258 + expanded[ "border" + part + "Color" ] = value;
  3259 + });
  3260 + return expanded;
  3261 + }
  3262 +};
  3263 +
  3264 +// Basic color names only.
  3265 +// Usage of any of the other color names requires adding yourself or including
  3266 +// jquery.color.svg-names.js.
  3267 +colors = jQuery.Color.names = {
  3268 + // 4.1. Basic color keywords
  3269 + aqua: "#00ffff",
  3270 + black: "#000000",
  3271 + blue: "#0000ff",
  3272 + fuchsia: "#ff00ff",
  3273 + gray: "#808080",
  3274 + green: "#008000",
  3275 + lime: "#00ff00",
  3276 + maroon: "#800000",
  3277 + navy: "#000080",
  3278 + olive: "#808000",
  3279 + purple: "#800080",
  3280 + red: "#ff0000",
  3281 + silver: "#c0c0c0",
  3282 + teal: "#008080",
  3283 + white: "#ffffff",
  3284 + yellow: "#ffff00",
  3285 +
  3286 + // 4.2.3. "transparent" color keyword
  3287 + transparent: [ null, null, null, 0 ],
  3288 +
  3289 + _default: "#ffffff"
  3290 +};
  3291 +
  3292 +})( jQuery );
  3293 +
  3294 +/******************************************************************************/
  3295 +/****************************** CLASS ANIMATIONS ******************************/
  3296 +/******************************************************************************/
  3297 +(function() {
  3298 +
  3299 +var classAnimationActions = [ "add", "remove", "toggle" ],
  3300 + shorthandStyles = {
  3301 + border: 1,
  3302 + borderBottom: 1,
  3303 + borderColor: 1,
  3304 + borderLeft: 1,
  3305 + borderRight: 1,
  3306 + borderTop: 1,
  3307 + borderWidth: 1,
  3308 + margin: 1,
  3309 + padding: 1
  3310 + };
  3311 +
  3312 +$.each([ "borderLeftStyle", "borderRightStyle", "borderBottomStyle", "borderTopStyle" ], function( _, prop ) {
  3313 + $.fx.step[ prop ] = function( fx ) {
  3314 + if ( fx.end !== "none" && !fx.setAttr || fx.pos === 1 && !fx.setAttr ) {
  3315 + jQuery.style( fx.elem, prop, fx.end );
  3316 + fx.setAttr = true;
  3317 + }
  3318 + };
  3319 +});
  3320 +
  3321 +function getElementStyles( elem ) {
  3322 + var key, len,
  3323 + style = elem.ownerDocument.defaultView ?
  3324 + elem.ownerDocument.defaultView.getComputedStyle( elem, null ) :
  3325 + elem.currentStyle,
  3326 + styles = {};
  3327 +
  3328 + if ( style && style.length && style[ 0 ] && style[ style[ 0 ] ] ) {
  3329 + len = style.length;
  3330 + while ( len-- ) {
  3331 + key = style[ len ];
  3332 + if ( typeof style[ key ] === "string" ) {
  3333 + styles[ $.camelCase( key ) ] = style[ key ];
  3334 + }
  3335 + }
  3336 + // support: Opera, IE <9
  3337 + } else {
  3338 + for ( key in style ) {
  3339 + if ( typeof style[ key ] === "string" ) {
  3340 + styles[ key ] = style[ key ];
  3341 + }
  3342 + }
  3343 + }
  3344 +
  3345 + return styles;
  3346 +}
  3347 +
  3348 +function styleDifference( oldStyle, newStyle ) {
  3349 + var diff = {},
  3350 + name, value;
  3351 +
  3352 + for ( name in newStyle ) {
  3353 + value = newStyle[ name ];
  3354 + if ( oldStyle[ name ] !== value ) {
  3355 + if ( !shorthandStyles[ name ] ) {
  3356 + if ( $.fx.step[ name ] || !isNaN( parseFloat( value ) ) ) {
  3357 + diff[ name ] = value;
  3358 + }
  3359 + }
  3360 + }
  3361 + }
  3362 +
  3363 + return diff;
  3364 +}
  3365 +
  3366 +// support: jQuery <1.8
  3367 +if ( !$.fn.addBack ) {
  3368 + $.fn.addBack = function( selector ) {
  3369 + return this.add( selector == null ?
  3370 + this.prevObject : this.prevObject.filter( selector )
  3371 + );
  3372 + };
  3373 +}
  3374 +
  3375 +$.effects.animateClass = function( value, duration, easing, callback ) {
  3376 + var o = $.speed( duration, easing, callback );
  3377 +
  3378 + return this.queue( function() {
  3379 + var animated = $( this ),
  3380 + baseClass = animated.attr( "class" ) || "",
  3381 + applyClassChange,
  3382 + allAnimations = o.children ? animated.find( "*" ).addBack() : animated;
  3383 +
  3384 + // map the animated objects to store the original styles.
  3385 + allAnimations = allAnimations.map(function() {
  3386 + var el = $( this );
  3387 + return {
  3388 + el: el,
  3389 + start: getElementStyles( this )
  3390 + };
  3391 + });
  3392 +
  3393 + // apply class change
  3394 + applyClassChange = function() {
  3395 + $.each( classAnimationActions, function(i, action) {
  3396 + if ( value[ action ] ) {
  3397 + animated[ action + "Class" ]( value[ action ] );
  3398 + }
  3399 + });
  3400 + };
  3401 + applyClassChange();
  3402 +
  3403 + // map all animated objects again - calculate new styles and diff
  3404 + allAnimations = allAnimations.map(function() {
  3405 + this.end = getElementStyles( this.el[ 0 ] );
  3406 + this.diff = styleDifference( this.start, this.end );
  3407 + return this;
  3408 + });
  3409 +
  3410 + // apply original class
  3411 + animated.attr( "class", baseClass );
  3412 +
  3413 + // map all animated objects again - this time collecting a promise
  3414 + allAnimations = allAnimations.map(function() {
  3415 + var styleInfo = this,
  3416 + dfd = $.Deferred(),
  3417 + opts = $.extend({}, o, {
  3418 + queue: false,
  3419 + complete: function() {
  3420 + dfd.resolve( styleInfo );
  3421 + }
  3422 + });
  3423 +
  3424 + this.el.animate( this.diff, opts );
  3425 + return dfd.promise();
  3426 + });
  3427 +
  3428 + // once all animations have completed:
  3429 + $.when.apply( $, allAnimations.get() ).done(function() {
  3430 +
  3431 + // set the final class
  3432 + applyClassChange();
  3433 +
  3434 + // for each animated element,
  3435 + // clear all css properties that were animated
  3436 + $.each( arguments, function() {
  3437 + var el = this.el;
  3438 + $.each( this.diff, function(key) {
  3439 + el.css( key, "" );
  3440 + });
  3441 + });
  3442 +
  3443 + // this is guarnteed to be there if you use jQuery.speed()
  3444 + // it also handles dequeuing the next anim...
  3445 + o.complete.call( animated[ 0 ] );
  3446 + });
  3447 + });
  3448 +};
  3449 +
  3450 +$.fn.extend({
  3451 + addClass: (function( orig ) {
  3452 + return function( classNames, speed, easing, callback ) {
  3453 + return speed ?
  3454 + $.effects.animateClass.call( this,
  3455 + { add: classNames }, speed, easing, callback ) :
  3456 + orig.apply( this, arguments );
  3457 + };
  3458 + })( $.fn.addClass ),
  3459 +
  3460 + removeClass: (function( orig ) {
  3461 + return function( classNames, speed, easing, callback ) {
  3462 + return arguments.length > 1 ?
  3463 + $.effects.animateClass.call( this,
  3464 + { remove: classNames }, speed, easing, callback ) :
  3465 + orig.apply( this, arguments );
  3466 + };
  3467 + })( $.fn.removeClass ),
  3468 +
  3469 + toggleClass: (function( orig ) {
  3470 + return function( classNames, force, speed, easing, callback ) {
  3471 + if ( typeof force === "boolean" || force === undefined ) {
  3472 + if ( !speed ) {
  3473 + // without speed parameter
  3474 + return orig.apply( this, arguments );
  3475 + } else {
  3476 + return $.effects.animateClass.call( this,
  3477 + (force ? { add: classNames } : { remove: classNames }),
  3478 + speed, easing, callback );
  3479 + }
  3480 + } else {
  3481 + // without force parameter
  3482 + return $.effects.animateClass.call( this,
  3483 + { toggle: classNames }, force, speed, easing );
  3484 + }
  3485 + };
  3486 + })( $.fn.toggleClass ),
  3487 +
  3488 + switchClass: function( remove, add, speed, easing, callback) {
  3489 + return $.effects.animateClass.call( this, {
  3490 + add: add,
  3491 + remove: remove
  3492 + }, speed, easing, callback );
  3493 + }
  3494 +});
  3495 +
  3496 +})();
  3497 +
  3498 +/******************************************************************************/
  3499 +/*********************************** EFFECTS **********************************/
  3500 +/******************************************************************************/
  3501 +
  3502 +(function() {
  3503 +
  3504 +$.extend( $.effects, {
  3505 + version: "1.11.4",
  3506 +
  3507 + // Saves a set of properties in a data storage
  3508 + save: function( element, set ) {
  3509 + for ( var i = 0; i < set.length; i++ ) {
  3510 + if ( set[ i ] !== null ) {
  3511 + element.data( dataSpace + set[ i ], element[ 0 ].style[ set[ i ] ] );
  3512 + }
  3513 + }
  3514 + },
  3515 +
  3516 + // Restores a set of previously saved properties from a data storage
  3517 + restore: function( element, set ) {
  3518 + var val, i;
  3519 + for ( i = 0; i < set.length; i++ ) {
  3520 + if ( set[ i ] !== null ) {
  3521 + val = element.data( dataSpace + set[ i ] );
  3522 + // support: jQuery 1.6.2
  3523 + // http://bugs.jquery.com/ticket/9917
  3524 + // jQuery 1.6.2 incorrectly returns undefined for any falsy value.
  3525 + // We can't differentiate between "" and 0 here, so we just assume
  3526 + // empty string since it's likely to be a more common value...
  3527 + if ( val === undefined ) {
  3528 + val = "";
  3529 + }
  3530 + element.css( set[ i ], val );
  3531 + }
  3532 + }
  3533 + },
  3534 +
  3535 + setMode: function( el, mode ) {
  3536 + if (mode === "toggle") {
  3537 + mode = el.is( ":hidden" ) ? "show" : "hide";
  3538 + }
  3539 + return mode;
  3540 + },
  3541 +
  3542 + // Translates a [top,left] array into a baseline value
  3543 + // this should be a little more flexible in the future to handle a string & hash
  3544 + getBaseline: function( origin, original ) {
  3545 + var y, x;
  3546 + switch ( origin[ 0 ] ) {
  3547 + case "top": y = 0; break;
  3548 + case "middle": y = 0.5; break;
  3549 + case "bottom": y = 1; break;
  3550 + default: y = origin[ 0 ] / original.height;
  3551 + }
  3552 + switch ( origin[ 1 ] ) {
  3553 + case "left": x = 0; break;
  3554 + case "center": x = 0.5; break;
  3555 + case "right": x = 1; break;
  3556 + default: x = origin[ 1 ] / original.width;
  3557 + }
  3558 + return {
  3559 + x: x,
  3560 + y: y
  3561 + };
  3562 + },
  3563 +
  3564 + // Wraps the element around a wrapper that copies position properties
  3565 + createWrapper: function( element ) {
  3566 +
  3567 + // if the element is already wrapped, return it
  3568 + if ( element.parent().is( ".ui-effects-wrapper" )) {
  3569 + return element.parent();
  3570 + }
  3571 +
  3572 + // wrap the element
  3573 + var props = {
  3574 + width: element.outerWidth(true),
  3575 + height: element.outerHeight(true),
  3576 + "float": element.css( "float" )
  3577 + },
  3578 + wrapper = $( "<div></div>" )
  3579 + .addClass( "ui-effects-wrapper" )
  3580 + .css({
  3581 + fontSize: "100%",
  3582 + background: "transparent",
  3583 + border: "none",
  3584 + margin: 0,
  3585 + padding: 0
  3586 + }),
  3587 + // Store the size in case width/height are defined in % - Fixes #5245
  3588 + size = {
  3589 + width: element.width(),
  3590 + height: element.height()
  3591 + },
  3592 + active = document.activeElement;
  3593 +
  3594 + // support: Firefox
  3595 + // Firefox incorrectly exposes anonymous content
  3596 + // https://bugzilla.mozilla.org/show_bug.cgi?id=561664
  3597 + try {
  3598 + active.id;
  3599 + } catch ( e ) {
  3600 + active = document.body;
  3601 + }
  3602 +
  3603 + element.wrap( wrapper );
  3604 +
  3605 + // Fixes #7595 - Elements lose focus when wrapped.
  3606 + if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) {
  3607 + $( active ).focus();
  3608 + }
  3609 +
  3610 + wrapper = element.parent(); //Hotfix for jQuery 1.4 since some change in wrap() seems to actually lose the reference to the wrapped element
  3611 +
  3612 + // transfer positioning properties to the wrapper
  3613 + if ( element.css( "position" ) === "static" ) {
  3614 + wrapper.css({ position: "relative" });
  3615 + element.css({ position: "relative" });
  3616 + } else {
  3617 + $.extend( props, {
  3618 + position: element.css( "position" ),
  3619 + zIndex: element.css( "z-index" )
  3620 + });
  3621 + $.each([ "top", "left", "bottom", "right" ], function(i, pos) {
  3622 + props[ pos ] = element.css( pos );
  3623 + if ( isNaN( parseInt( props[ pos ], 10 ) ) ) {
  3624 + props[ pos ] = "auto";
  3625 + }
  3626 + });
  3627 + element.css({
  3628 + position: "relative",
  3629 + top: 0,
  3630 + left: 0,
  3631 + right: "auto",
  3632 + bottom: "auto"
  3633 + });
  3634 + }
  3635 + element.css(size);
  3636 +
  3637 + return wrapper.css( props ).show();
  3638 + },
  3639 +
  3640 + removeWrapper: function( element ) {
  3641 + var active = document.activeElement;
  3642 +
  3643 + if ( element.parent().is( ".ui-effects-wrapper" ) ) {
  3644 + element.parent().replaceWith( element );
  3645 +
  3646 + // Fixes #7595 - Elements lose focus when wrapped.
  3647 + if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) {
  3648 + $( active ).focus();
  3649 + }
  3650 + }
  3651 +
  3652 + return element;
  3653 + },
  3654 +
  3655 + setTransition: function( element, list, factor, value ) {
  3656 + value = value || {};
  3657 + $.each( list, function( i, x ) {
  3658 + var unit = element.cssUnit( x );
  3659 + if ( unit[ 0 ] > 0 ) {
  3660 + value[ x ] = unit[ 0 ] * factor + unit[ 1 ];
  3661 + }
  3662 + });
  3663 + return value;
  3664 + }
  3665 +});
  3666 +
  3667 +// return an effect options object for the given parameters:
  3668 +function _normalizeArguments( effect, options, speed, callback ) {
  3669 +
  3670 + // allow passing all options as the first parameter
  3671 + if ( $.isPlainObject( effect ) ) {
  3672 + options = effect;
  3673 + effect = effect.effect;
  3674 + }
  3675 +
  3676 + // convert to an object
  3677 + effect = { effect: effect };
  3678 +
  3679 + // catch (effect, null, ...)
  3680 + if ( options == null ) {
  3681 + options = {};
  3682 + }
  3683 +
  3684 + // catch (effect, callback)
  3685 + if ( $.isFunction( options ) ) {
  3686 + callback = options;
  3687 + speed = null;
  3688 + options = {};
  3689 + }
  3690 +
  3691 + // catch (effect, speed, ?)
  3692 + if ( typeof options === "number" || $.fx.speeds[ options ] ) {
  3693 + callback = speed;
  3694 + speed = options;
  3695 + options = {};
  3696 + }
  3697 +
  3698 + // catch (effect, options, callback)
  3699 + if ( $.isFunction( speed ) ) {
  3700 + callback = speed;
  3701 + speed = null;
  3702 + }
  3703 +
  3704 + // add options to effect
  3705 + if ( options ) {
  3706 + $.extend( effect, options );
  3707 + }
  3708 +
  3709 + speed = speed || options.duration;
  3710 + effect.duration = $.fx.off ? 0 :
  3711 + typeof speed === "number" ? speed :
  3712 + speed in $.fx.speeds ? $.fx.speeds[ speed ] :
  3713 + $.fx.speeds._default;
  3714 +
  3715 + effect.complete = callback || options.complete;
  3716 +
  3717 + return effect;
  3718 +}
  3719 +
  3720 +function standardAnimationOption( option ) {
  3721 + // Valid standard speeds (nothing, number, named speed)
  3722 + if ( !option || typeof option === "number" || $.fx.speeds[ option ] ) {
  3723 + return true;
  3724 + }
  3725 +
  3726 + // Invalid strings - treat as "normal" speed
  3727 + if ( typeof option === "string" && !$.effects.effect[ option ] ) {
  3728 + return true;
  3729 + }
  3730 +
  3731 + // Complete callback
  3732 + if ( $.isFunction( option ) ) {
  3733 + return true;
  3734 + }
  3735 +
  3736 + // Options hash (but not naming an effect)
  3737 + if ( typeof option === "object" && !option.effect ) {
  3738 + return true;
  3739 + }
  3740 +
  3741 + // Didn't match any standard API
  3742 + return false;
  3743 +}
  3744 +
  3745 +$.fn.extend({
  3746 + effect: function( /* effect, options, speed, callback */ ) {
  3747 + var args = _normalizeArguments.apply( this, arguments ),
  3748 + mode = args.mode,
  3749 + queue = args.queue,
  3750 + effectMethod = $.effects.effect[ args.effect ];
  3751 +
  3752 + if ( $.fx.off || !effectMethod ) {
  3753 + // delegate to the original method (e.g., .show()) if possible
  3754 + if ( mode ) {
  3755 + return this[ mode ]( args.duration, args.complete );
  3756 + } else {
  3757 + return this.each( function() {
  3758 + if ( args.complete ) {
  3759 + args.complete.call( this );
  3760 + }
  3761 + });
  3762 + }
  3763 + }
  3764 +
  3765 + function run( next ) {
  3766 + var elem = $( this ),
  3767 + complete = args.complete,
  3768 + mode = args.mode;
  3769 +
  3770 + function done() {
  3771 + if ( $.isFunction( complete ) ) {
  3772 + complete.call( elem[0] );
  3773 + }
  3774 + if ( $.isFunction( next ) ) {
  3775 + next();
  3776 + }
  3777 + }
  3778 +
  3779 + // If the element already has the correct final state, delegate to
  3780 + // the core methods so the internal tracking of "olddisplay" works.
  3781 + if ( elem.is( ":hidden" ) ? mode === "hide" : mode === "show" ) {
  3782 + elem[ mode ]();
  3783 + done();
  3784 + } else {
  3785 + effectMethod.call( elem[0], args, done );
  3786 + }
  3787 + }
  3788 +
  3789 + return queue === false ? this.each( run ) : this.queue( queue || "fx", run );
  3790 + },
  3791 +
  3792 + show: (function( orig ) {
  3793 + return function( option ) {
  3794 + if ( standardAnimationOption( option ) ) {
  3795 + return orig.apply( this, arguments );
  3796 + } else {
  3797 + var args = _normalizeArguments.apply( this, arguments );
  3798 + args.mode = "show";
  3799 + return this.effect.call( this, args );
  3800 + }
  3801 + };
  3802 + })( $.fn.show ),
  3803 +
  3804 + hide: (function( orig ) {
  3805 + return function( option ) {
  3806 + if ( standardAnimationOption( option ) ) {
  3807 + return orig.apply( this, arguments );
  3808 + } else {
  3809 + var args = _normalizeArguments.apply( this, arguments );
  3810 + args.mode = "hide";
  3811 + return this.effect.call( this, args );
  3812 + }
  3813 + };
  3814 + })( $.fn.hide ),
  3815 +
  3816 + toggle: (function( orig ) {
  3817 + return function( option ) {
  3818 + if ( standardAnimationOption( option ) || typeof option === "boolean" ) {
  3819 + return orig.apply( this, arguments );
  3820 + } else {
  3821 + var args = _normalizeArguments.apply( this, arguments );
  3822 + args.mode = "toggle";
  3823 + return this.effect.call( this, args );
  3824 + }
  3825 + };
  3826 + })( $.fn.toggle ),
  3827 +
  3828 + // helper functions
  3829 + cssUnit: function(key) {
  3830 + var style = this.css( key ),
  3831 + val = [];
  3832 +
  3833 + $.each( [ "em", "px", "%", "pt" ], function( i, unit ) {
  3834 + if ( style.indexOf( unit ) > 0 ) {
  3835 + val = [ parseFloat( style ), unit ];
  3836 + }
  3837 + });
  3838 + return val;
  3839 + }
  3840 +});
  3841 +
  3842 +})();
  3843 +
  3844 +/******************************************************************************/
  3845 +/*********************************** EASING ***********************************/
  3846 +/******************************************************************************/
  3847 +
  3848 +(function() {
  3849 +
  3850 +// based on easing equations from Robert Penner (http://www.robertpenner.com/easing)
  3851 +
  3852 +var baseEasings = {};
  3853 +
  3854 +$.each( [ "Quad", "Cubic", "Quart", "Quint", "Expo" ], function( i, name ) {
  3855 + baseEasings[ name ] = function( p ) {
  3856 + return Math.pow( p, i + 2 );
  3857 + };
  3858 +});
  3859 +
  3860 +$.extend( baseEasings, {
  3861 + Sine: function( p ) {
  3862 + return 1 - Math.cos( p * Math.PI / 2 );
  3863 + },
  3864 + Circ: function( p ) {
  3865 + return 1 - Math.sqrt( 1 - p * p );
  3866 + },
  3867 + Elastic: function( p ) {
  3868 + return p === 0 || p === 1 ? p :
  3869 + -Math.pow( 2, 8 * (p - 1) ) * Math.sin( ( (p - 1) * 80 - 7.5 ) * Math.PI / 15 );
  3870 + },
  3871 + Back: function( p ) {
  3872 + return p * p * ( 3 * p - 2 );
  3873 + },
  3874 + Bounce: function( p ) {
  3875 + var pow2,
  3876 + bounce = 4;
  3877 +
  3878 + while ( p < ( ( pow2 = Math.pow( 2, --bounce ) ) - 1 ) / 11 ) {}
  3879 + return 1 / Math.pow( 4, 3 - bounce ) - 7.5625 * Math.pow( ( pow2 * 3 - 2 ) / 22 - p, 2 );
  3880 + }
  3881 +});
  3882 +
  3883 +$.each( baseEasings, function( name, easeIn ) {
  3884 + $.easing[ "easeIn" + name ] = easeIn;
  3885 + $.easing[ "easeOut" + name ] = function( p ) {
  3886 + return 1 - easeIn( 1 - p );
  3887 + };
  3888 + $.easing[ "easeInOut" + name ] = function( p ) {
  3889 + return p < 0.5 ?
  3890 + easeIn( p * 2 ) / 2 :
  3891 + 1 - easeIn( p * -2 + 2 ) / 2;
  3892 + };
  3893 +});
  3894 +
  3895 +})();
  3896 +
  3897 +var effect = $.effects;
  3898 +
  3899 +
  3900 +/*!
  3901 + * jQuery UI Effects Blind 1.11.4
  3902 + * http://jqueryui.com
  3903 + *
  3904 + * Copyright jQuery Foundation and other contributors
  3905 + * Released under the MIT license.
  3906 + * http://jquery.org/license
  3907 + *
  3908 + * http://api.jqueryui.com/blind-effect/
  3909 + */
  3910 +
  3911 +
  3912 +var effectBlind = $.effects.effect.blind = function( o, done ) {
  3913 + // Create element
  3914 + var el = $( this ),
  3915 + rvertical = /up|down|vertical/,
  3916 + rpositivemotion = /up|left|vertical|horizontal/,
  3917 + props = [ "position", "top", "bottom", "left", "right", "height", "width" ],
  3918 + mode = $.effects.setMode( el, o.mode || "hide" ),
  3919 + direction = o.direction || "up",
  3920 + vertical = rvertical.test( direction ),
  3921 + ref = vertical ? "height" : "width",
  3922 + ref2 = vertical ? "top" : "left",
  3923 + motion = rpositivemotion.test( direction ),
  3924 + animation = {},
  3925 + show = mode === "show",
  3926 + wrapper, distance, margin;
  3927 +
  3928 + // if already wrapped, the wrapper's properties are my property. #6245
  3929 + if ( el.parent().is( ".ui-effects-wrapper" ) ) {
  3930 + $.effects.save( el.parent(), props );
  3931 + } else {
  3932 + $.effects.save( el, props );
  3933 + }
  3934 + el.show();
  3935 + wrapper = $.effects.createWrapper( el ).css({
  3936 + overflow: "hidden"
  3937 + });
  3938 +
  3939 + distance = wrapper[ ref ]();
  3940 + margin = parseFloat( wrapper.css( ref2 ) ) || 0;
  3941 +
  3942 + animation[ ref ] = show ? distance : 0;
  3943 + if ( !motion ) {
  3944 + el
  3945 + .css( vertical ? "bottom" : "right", 0 )
  3946 + .css( vertical ? "top" : "left", "auto" )
  3947 + .css({ position: "absolute" });
  3948 +
  3949 + animation[ ref2 ] = show ? margin : distance + margin;
  3950 + }
  3951 +
  3952 + // start at 0 if we are showing
  3953 + if ( show ) {
  3954 + wrapper.css( ref, 0 );
  3955 + if ( !motion ) {
  3956 + wrapper.css( ref2, margin + distance );
  3957 + }
  3958 + }
  3959 +
  3960 + // Animate
  3961 + wrapper.animate( animation, {
  3962 + duration: o.duration,
  3963 + easing: o.easing,
  3964 + queue: false,
  3965 + complete: function() {
  3966 + if ( mode === "hide" ) {
  3967 + el.hide();
  3968 + }
  3969 + $.effects.restore( el, props );
  3970 + $.effects.removeWrapper( el );
  3971 + done();
  3972 + }
  3973 + });
  3974 +};
  3975 +
  3976 +
2609 3977  
2610 3978 }));
2611 3979 \ No newline at end of file
... ...
js/jquery-ui-1.11.4.custom/jquery-ui.min.css
1   -/*! jQuery UI - v1.11.4 - 2015-04-19
  1 +/*! jQuery UI - v1.11.4 - 2015-04-24
2 2 * http://jqueryui.com
3 3 * Includes: core.css, autocomplete.css, menu.css
4 4 * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
... ...
js/jquery-ui-1.11.4.custom/jquery-ui.min.js
1   -/*! jQuery UI - v1.11.4 - 2015-04-19
  1 +/*! jQuery UI - v1.11.4 - 2015-04-24
2 2 * http://jqueryui.com
3   -* Includes: core.js, widget.js, position.js, autocomplete.js, menu.js
  3 +* Includes: core.js, widget.js, position.js, autocomplete.js, menu.js, effect.js, effect-blind.js
4 4 * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
5 5  
6 6 (function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e(jQuery)})(function(e){function t(t,s){var n,a,o,r=t.nodeName.toLowerCase();return"area"===r?(n=t.parentNode,a=n.name,t.href&&a&&"map"===n.nodeName.toLowerCase()?(o=e("img[usemap='#"+a+"']")[0],!!o&&i(o)):!1):(/^(input|select|textarea|button|object)$/.test(r)?!t.disabled:"a"===r?t.href||s:s)&&i(t)}function i(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}e.ui=e.ui||{},e.extend(e.ui,{version:"1.11.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({scrollParent:function(t){var i=this.css("position"),s="absolute"===i,n=t?/(auto|scroll|hidden)/:/(auto|scroll)/,a=this.parents().filter(function(){var t=e(this);return s&&"static"===t.css("position")?!1:n.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==i&&a.length?a:e(this[0].ownerDocument||document)},uniqueId:function(){var e=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++e)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,s){return!!e.data(t,s[3])},focusable:function(i){return t(i,!isNaN(e.attr(i,"tabindex")))},tabbable:function(i){var s=e.attr(i,"tabindex"),n=isNaN(s);return(n||s>=0)&&t(i,!n)}}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(t,i){function s(t,i,s,a){return e.each(n,function(){i-=parseFloat(e.css(t,"padding"+this))||0,s&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),a&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],a=i.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+i]=function(t){return void 0===t?o["inner"+i].call(this):this.each(function(){e(this).css(a,s(this,t)+"px")})},e.fn["outer"+i]=function(t,n){return"number"!=typeof t?o["outer"+i].call(this,t):this.each(function(){e(this).css(a,s(this,t,!0,n)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.fn.extend({focus:function(t){return function(i,s){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),s&&s.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),disableSelection:function(){var e="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(e+".ui-disableSelection",function(e){e.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(t){if(void 0!==t)return this.css("zIndex",t);if(this.length)for(var i,s,n=e(this[0]);n.length&&n[0]!==document;){if(i=n.css("position"),("absolute"===i||"relative"===i||"fixed"===i)&&(s=parseInt(n.css("zIndex"),10),!isNaN(s)&&0!==s))return s;n=n.parent()}return 0}}),e.ui.plugin={add:function(t,i,s){var n,a=e.ui[t].prototype;for(n in s)a.plugins[n]=a.plugins[n]||[],a.plugins[n].push([i,s[n]])},call:function(e,t,i,s){var n,a=e.plugins[t];if(a&&(s||e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType))for(n=0;a.length>n;n++)e.options[a[n][0]]&&a[n][1].apply(e.element,i)}};var s=0,n=Array.prototype.slice;e.cleanData=function(t){return function(i){var s,n,a;for(a=0;null!=(n=i[a]);a++)try{s=e._data(n,"events"),s&&s.remove&&e(n).triggerHandler("remove")}catch(o){}t(i)}}(e.cleanData),e.widget=function(t,i,s){var n,a,o,r,h={},l=t.split(".")[0];return t=t.split(".")[1],n=l+"-"+t,s||(s=i,i=e.Widget),e.expr[":"][n.toLowerCase()]=function(t){return!!e.data(t,n)},e[l]=e[l]||{},a=e[l][t],o=e[l][t]=function(e,t){return this._createWidget?(arguments.length&&this._createWidget(e,t),void 0):new o(e,t)},e.extend(o,a,{version:s.version,_proto:e.extend({},s),_childConstructors:[]}),r=new i,r.options=e.widget.extend({},r.options),e.each(s,function(t,s){return e.isFunction(s)?(h[t]=function(){var e=function(){return i.prototype[t].apply(this,arguments)},n=function(e){return i.prototype[t].apply(this,e)};return function(){var t,i=this._super,a=this._superApply;return this._super=e,this._superApply=n,t=s.apply(this,arguments),this._super=i,this._superApply=a,t}}(),void 0):(h[t]=s,void 0)}),o.prototype=e.widget.extend(r,{widgetEventPrefix:a?r.widgetEventPrefix||t:t},h,{constructor:o,namespace:l,widgetName:t,widgetFullName:n}),a?(e.each(a._childConstructors,function(t,i){var s=i.prototype;e.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete a._childConstructors):i._childConstructors.push(o),e.widget.bridge(t,o),o},e.widget.extend=function(t){for(var i,s,a=n.call(arguments,1),o=0,r=a.length;r>o;o++)for(i in a[o])s=a[o][i],a[o].hasOwnProperty(i)&&void 0!==s&&(t[i]=e.isPlainObject(s)?e.isPlainObject(t[i])?e.widget.extend({},t[i],s):e.widget.extend({},s):s);return t},e.widget.bridge=function(t,i){var s=i.prototype.widgetFullName||t;e.fn[t]=function(a){var o="string"==typeof a,r=n.call(arguments,1),h=this;return o?this.each(function(){var i,n=e.data(this,s);return"instance"===a?(h=n,!1):n?e.isFunction(n[a])&&"_"!==a.charAt(0)?(i=n[a].apply(n,r),i!==n&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):e.error("no such method '"+a+"' for "+t+" widget instance"):e.error("cannot call methods on "+t+" prior to initialization; "+"attempted to call method '"+a+"'")}):(r.length&&(a=e.widget.extend.apply(null,[a].concat(r))),this.each(function(){var t=e.data(this,s);t?(t.option(a||{}),t._init&&t._init()):e.data(this,s,new i(a,this))})),h}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,i){i=e(i||this.defaultElement||this)[0],this.element=e(i),this.uuid=s++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=e(),this.hoverable=e(),this.focusable=e(),i!==this&&(e.data(i,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===i&&this.destroy()}}),this.document=e(i.style?i.ownerDocument:i.document||i),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(t,i){var s,n,a,o=t;if(0===arguments.length)return e.widget.extend({},this.options);if("string"==typeof t)if(o={},s=t.split("."),t=s.shift(),s.length){for(n=o[t]=e.widget.extend({},this.options[t]),a=0;s.length-1>a;a++)n[s[a]]=n[s[a]]||{},n=n[s[a]];if(t=s.pop(),1===arguments.length)return void 0===n[t]?null:n[t];n[t]=i}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=i}return this._setOptions(o),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,"disabled"===e&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!t),t&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(t,i,s){var n,a=this;"boolean"!=typeof t&&(s=i,i=t,t=!1),s?(i=n=e(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),e.each(s,function(s,o){function r(){return t||a.options.disabled!==!0&&!e(this).hasClass("ui-state-disabled")?("string"==typeof o?a[o]:o).apply(a,arguments):void 0}"string"!=typeof o&&(r.guid=o.guid=o.guid||r.guid||e.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+a.eventNamespace,u=h[2];u?n.delegate(u,l,r):i.bind(l,r)})},_off:function(t,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.unbind(i).undelegate(i),this.bindings=e(this.bindings.not(t).get()),this.focusable=e(this.focusable.not(t).get()),this.hoverable=e(this.hoverable.not(t).get())},_delay:function(e,t){function i(){return("string"==typeof e?s[e]:e).apply(s,arguments)}var s=this;return setTimeout(i,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,s){var n,a,o=this.options[t];if(s=s||{},i=e.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],a=i.originalEvent)for(n in a)n in i||(i[n]=a[n]);return this.element.trigger(i,s),!(e.isFunction(o)&&o.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,i){e.Widget.prototype["_"+t]=function(s,n,a){"string"==typeof n&&(n={effect:n});var o,r=n?n===!0||"number"==typeof n?i:n.effect||i:t;n=n||{},"number"==typeof n&&(n={duration:n}),o=!e.isEmptyObject(n),n.complete=a,n.delay&&s.delay(n.delay),o&&e.effects&&e.effects.effect[r]?s[t](n):r!==t&&s[r]?s[r](n.duration,n.easing,a):s.queue(function(i){e(this)[t](),a&&a.call(s[0]),i()})}}),e.widget,function(){function t(e,t,i){return[parseFloat(e[0])*(p.test(e[0])?t/100:1),parseFloat(e[1])*(p.test(e[1])?i/100:1)]}function i(t,i){return parseInt(e.css(t,i),10)||0}function s(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var n,a,o=Math.max,r=Math.abs,h=Math.round,l=/left|center|right/,u=/top|center|bottom/,d=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,p=/%$/,f=e.fn.position;e.position={scrollbarWidth:function(){if(void 0!==n)return n;var t,i,s=e("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),a=s.children()[0];return e("body").append(s),t=a.offsetWidth,s.css("overflow","scroll"),i=a.offsetWidth,t===i&&(i=s[0].clientWidth),s.remove(),n=t-i},getScrollInfo:function(t){var i=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),s=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),n="scroll"===i||"auto"===i&&t.width<t.element[0].scrollWidth,a="scroll"===s||"auto"===s&&t.height<t.element[0].scrollHeight;return{width:a?e.position.scrollbarWidth():0,height:n?e.position.scrollbarWidth():0}},getWithinInfo:function(t){var i=e(t||window),s=e.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType;return{element:i,isWindow:s,isDocument:n,offset:i.offset()||{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:s||n?i.width():i.outerWidth(),height:s||n?i.height():i.outerHeight()}}},e.fn.position=function(n){if(!n||!n.of)return f.apply(this,arguments);n=e.extend({},n);var p,m,g,v,y,b,_=e(n.of),x=e.position.getWithinInfo(n.within),w=e.position.getScrollInfo(x),k=(n.collision||"flip").split(" "),T={};return b=s(_),_[0].preventDefault&&(n.at="left top"),m=b.width,g=b.height,v=b.offset,y=e.extend({},v),e.each(["my","at"],function(){var e,t,i=(n[this]||"").split(" ");1===i.length&&(i=l.test(i[0])?i.concat(["center"]):u.test(i[0])?["center"].concat(i):["center","center"]),i[0]=l.test(i[0])?i[0]:"center",i[1]=u.test(i[1])?i[1]:"center",e=d.exec(i[0]),t=d.exec(i[1]),T[this]=[e?e[0]:0,t?t[0]:0],n[this]=[c.exec(i[0])[0],c.exec(i[1])[0]]}),1===k.length&&(k[1]=k[0]),"right"===n.at[0]?y.left+=m:"center"===n.at[0]&&(y.left+=m/2),"bottom"===n.at[1]?y.top+=g:"center"===n.at[1]&&(y.top+=g/2),p=t(T.at,m,g),y.left+=p[0],y.top+=p[1],this.each(function(){var s,l,u=e(this),d=u.outerWidth(),c=u.outerHeight(),f=i(this,"marginLeft"),b=i(this,"marginTop"),D=d+f+i(this,"marginRight")+w.width,S=c+b+i(this,"marginBottom")+w.height,N=e.extend({},y),M=t(T.my,u.outerWidth(),u.outerHeight());"right"===n.my[0]?N.left-=d:"center"===n.my[0]&&(N.left-=d/2),"bottom"===n.my[1]?N.top-=c:"center"===n.my[1]&&(N.top-=c/2),N.left+=M[0],N.top+=M[1],a||(N.left=h(N.left),N.top=h(N.top)),s={marginLeft:f,marginTop:b},e.each(["left","top"],function(t,i){e.ui.position[k[t]]&&e.ui.position[k[t]][i](N,{targetWidth:m,targetHeight:g,elemWidth:d,elemHeight:c,collisionPosition:s,collisionWidth:D,collisionHeight:S,offset:[p[0]+M[0],p[1]+M[1]],my:n.my,at:n.at,within:x,elem:u})}),n.using&&(l=function(e){var t=v.left-N.left,i=t+m-d,s=v.top-N.top,a=s+g-c,h={target:{element:_,left:v.left,top:v.top,width:m,height:g},element:{element:u,left:N.left,top:N.top,width:d,height:c},horizontal:0>i?"left":t>0?"right":"center",vertical:0>a?"top":s>0?"bottom":"middle"};d>m&&m>r(t+i)&&(h.horizontal="center"),c>g&&g>r(s+a)&&(h.vertical="middle"),h.important=o(r(t),r(i))>o(r(s),r(a))?"horizontal":"vertical",n.using.call(this,e,h)}),u.offset(e.extend(N,{using:l}))})},e.ui.position={fit:{left:function(e,t){var i,s=t.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=e.left-t.collisionPosition.marginLeft,h=n-r,l=r+t.collisionWidth-a-n;t.collisionWidth>a?h>0&&0>=l?(i=e.left+h+t.collisionWidth-a-n,e.left+=h-i):e.left=l>0&&0>=h?n:h>l?n+a-t.collisionWidth:n:h>0?e.left+=h:l>0?e.left-=l:e.left=o(e.left-r,e.left)},top:function(e,t){var i,s=t.within,n=s.isWindow?s.scrollTop:s.offset.top,a=t.within.height,r=e.top-t.collisionPosition.marginTop,h=n-r,l=r+t.collisionHeight-a-n;t.collisionHeight>a?h>0&&0>=l?(i=e.top+h+t.collisionHeight-a-n,e.top+=h-i):e.top=l>0&&0>=h?n:h>l?n+a-t.collisionHeight:n:h>0?e.top+=h:l>0?e.top-=l:e.top=o(e.top-r,e.top)}},flip:{left:function(e,t){var i,s,n=t.within,a=n.offset.left+n.scrollLeft,o=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=e.left-t.collisionPosition.marginLeft,u=l-h,d=l+t.collisionWidth-o-h,c="left"===t.my[0]?-t.elemWidth:"right"===t.my[0]?t.elemWidth:0,p="left"===t.at[0]?t.targetWidth:"right"===t.at[0]?-t.targetWidth:0,f=-2*t.offset[0];0>u?(i=e.left+c+p+f+t.collisionWidth-o-a,(0>i||r(u)>i)&&(e.left+=c+p+f)):d>0&&(s=e.left-t.collisionPosition.marginLeft+c+p+f-h,(s>0||d>r(s))&&(e.left+=c+p+f))},top:function(e,t){var i,s,n=t.within,a=n.offset.top+n.scrollTop,o=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=e.top-t.collisionPosition.marginTop,u=l-h,d=l+t.collisionHeight-o-h,c="top"===t.my[1],p=c?-t.elemHeight:"bottom"===t.my[1]?t.elemHeight:0,f="top"===t.at[1]?t.targetHeight:"bottom"===t.at[1]?-t.targetHeight:0,m=-2*t.offset[1];0>u?(s=e.top+p+f+m+t.collisionHeight-o-a,(0>s||r(u)>s)&&(e.top+=p+f+m)):d>0&&(i=e.top-t.collisionPosition.marginTop+p+f+m-h,(i>0||d>r(i))&&(e.top+=p+f+m))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,s,n,o,r=document.getElementsByTagName("body")[0],h=document.createElement("div");t=document.createElement(r?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},r&&e.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(o in s)t.style[o]=s[o];t.appendChild(h),i=r||document.documentElement,i.insertBefore(t,i.firstChild),h.style.cssText="position: absolute; left: 10.7432222px;",n=e(h).offset().left,a=n>10&&11>n,t.innerHTML="",i.removeChild(t)}()}(),e.ui.position,e.widget("ui.menu",{version:"1.11.4",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},items:"> *",menus:"ul",position:{my:"left-1 top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item":function(e){e.preventDefault()},"click .ui-menu-item":function(t){var i=e(t.target);!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&e(this.document[0].activeElement).closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){if(!this.previousFilter){var i=e(t.currentTarget);i.siblings(".ui-state-active").removeClass("ui-state-active"),this.focus(t,i)}},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(e,t){var i=this.active||this.element.find(this.options.items).eq(0);t||this.focus(e,i)},blur:function(t){this._delay(function(){e.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(e){this._closeOnDocumentClick(e)&&this.collapseAll(e),this.mouseHandled=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeClass("ui-menu ui-widget ui-widget-content ui-menu-icons ui-front").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").removeUniqueId().removeClass("ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var t=e(this);t.data("ui-menu-submenu-carat")&&t.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(t){var i,s,n,a,o=!0;switch(t.keyCode){case e.ui.keyCode.PAGE_UP:this.previousPage(t);break;case e.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case e.ui.keyCode.HOME:this._move("first","first",t);break;case e.ui.keyCode.END:this._move("last","last",t);break;case e.ui.keyCode.UP:this.previous(t);break;case e.ui.keyCode.DOWN:this.next(t);break;case e.ui.keyCode.LEFT:this.collapse(t);break;case e.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case e.ui.keyCode.ENTER:case e.ui.keyCode.SPACE:this._activate(t);break;case e.ui.keyCode.ESCAPE:this.collapse(t);break;default:o=!1,s=this.previousFilter||"",n=String.fromCharCode(t.keyCode),a=!1,clearTimeout(this.filterTimer),n===s?a=!0:n=s+n,i=this._filterMenuItems(n),i=a&&-1!==i.index(this.active.next())?this.active.nextAll(".ui-menu-item"):i,i.length||(n=String.fromCharCode(t.keyCode),i=this._filterMenuItems(n)),i.length?(this.focus(t,i),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}o&&t.preventDefault()},_activate:function(e){this.active.is(".ui-state-disabled")||(this.active.is("[aria-haspopup='true']")?this.expand(e):this.select(e))},refresh:function(){var t,i,s=this,n=this.options.icons.submenu,a=this.element.find(this.options.menus);this.element.toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length),a.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-front").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=e(this),i=t.parent(),s=e("<span>").addClass("ui-menu-icon ui-icon "+n).data("ui-menu-submenu-carat",!0);i.attr("aria-haspopup","true").prepend(s),t.attr("aria-labelledby",i.attr("id"))}),t=a.add(this.element),i=t.find(this.options.items),i.not(".ui-menu-item").each(function(){var t=e(this);s._isDivider(t)&&t.addClass("ui-widget-content ui-menu-divider")}),i.not(".ui-menu-item, .ui-menu-divider").addClass("ui-menu-item").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),i.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!e.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(e,t){"icons"===e&&this.element.find(".ui-menu-icon").removeClass(this.options.icons.submenu).addClass(t.submenu),"disabled"===e&&this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this._super(e,t)},focus:function(e,t){var i,s;this.blur(e,e&&"focus"===e.type),this._scrollIntoView(t),this.active=t.first(),s=this.active.addClass("ui-state-focus").removeClass("ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),this.active.parent().closest(".ui-menu-item").addClass("ui-state-active"),e&&"keydown"===e.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=t.children(".ui-menu"),i.length&&e&&/^mouse/.test(e.type)&&this._startOpening(i),this.activeMenu=t.parent(),this._trigger("focus",e,{item:t})},_scrollIntoView:function(t){var i,s,n,a,o,r;this._hasScroll()&&(i=parseFloat(e.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(e.css(this.activeMenu[0],"paddingTop"))||0,n=t.offset().top-this.activeMenu.offset().top-i-s,a=this.activeMenu.scrollTop(),o=this.activeMenu.height(),r=t.outerHeight(),0>n?this.activeMenu.scrollTop(a+n):n+r>o&&this.activeMenu.scrollTop(a+n-o+r))},blur:function(e,t){t||clearTimeout(this.timer),this.active&&(this.active.removeClass("ui-state-focus"),this.active=null,this._trigger("blur",e,{item:this.active}))},_startOpening:function(e){clearTimeout(this.timer),"true"===e.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(e)},this.delay))},_open:function(t){var i=e.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(t,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:e(t&&t.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(t),this.activeMenu=s},this.delay)},_close:function(e){e||(e=this.active?this.active.parent():this.element),e.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find(".ui-state-active").not(".ui-state-focus").removeClass("ui-state-active")},_closeOnDocumentClick:function(t){return!e(t.target).closest(".ui-menu").length},_isDivider:function(e){return!/[^\-\u2014\u2013\s]/.test(e.text())},collapse:function(e){var t=this.active&&this.active.parent().closest(".ui-menu-item",this.element);t&&t.length&&(this._close(),this.focus(e,t))},expand:function(e){var t=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();t&&t.length&&(this._open(t.parent()),this._delay(function(){this.focus(e,t)}))},next:function(e){this._move("next","first",e)},previous:function(e){this._move("prev","last",e)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(e,t,i){var s;this.active&&(s="first"===e||"last"===e?this.active["first"===e?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[e+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.find(this.options.items)[t]()),this.focus(i,s)},nextPage:function(t){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=e(this),0>i.offset().top-s-n}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(t),void 0)},previousPage:function(t){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=e(this),i.offset().top-s+n>0}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items).first())),void 0):(this.next(t),void 0)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(t){this.active=this.active||e(t.target).closest(".ui-menu-item");var i={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(t,!0),this._trigger("select",t,i)},_filterMenuItems:function(t){var i=t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"),s=RegExp("^"+i,"i");return this.activeMenu.find(this.options.items).filter(".ui-menu-item").filter(function(){return s.test(e.trim(e(this).text()))})}}),e.widget("ui.autocomplete",{version:"1.11.4",defaultElement:"<input>",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var t,i,s,n=this.element[0].nodeName.toLowerCase(),a="textarea"===n,o="input"===n;this.isMultiLine=a?!0:o?!1:this.element.prop("isContentEditable"),this.valueMethod=this.element[a||o?"val":"text"],this.isNewMenu=!0,this.element.addClass("ui-autocomplete-input").attr("autocomplete","off"),this._on(this.element,{keydown:function(n){if(this.element.prop("readOnly"))return t=!0,s=!0,i=!0,void 0;t=!1,s=!1,i=!1;var a=e.ui.keyCode;switch(n.keyCode){case a.PAGE_UP:t=!0,this._move("previousPage",n);break;case a.PAGE_DOWN:t=!0,this._move("nextPage",n);break;case a.UP:t=!0,this._keyEvent("previous",n);break;case a.DOWN:t=!0,this._keyEvent("next",n);break;case a.ENTER:this.menu.active&&(t=!0,n.preventDefault(),this.menu.select(n));break;case a.TAB:this.menu.active&&this.menu.select(n);break;case a.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(n),n.preventDefault());break;default:i=!0,this._searchTimeout(n)}},keypress:function(s){if(t)return t=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&s.preventDefault(),void 0;if(!i){var n=e.ui.keyCode;switch(s.keyCode){case n.PAGE_UP:this._move("previousPage",s);break;case n.PAGE_DOWN:this._move("nextPage",s);break;case n.UP:this._keyEvent("previous",s);break;case n.DOWN:this._keyEvent("next",s)}}},input:function(e){return s?(s=!1,e.preventDefault(),void 0):(this._searchTimeout(e),void 0)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){return this.cancelBlur?(delete this.cancelBlur,void 0):(clearTimeout(this.searching),this.close(e),this._change(e),void 0)}}),this._initSource(),this.menu=e("<ul>").addClass("ui-autocomplete ui-front").appendTo(this._appendTo()).menu({role:null}).hide().menu("instance"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var i=this.menu.element[0];e(t.target).closest(".ui-menu-item").length||this._delay(function(){var t=this;this.document.one("mousedown",function(s){s.target===t.element[0]||s.target===i||e.contains(i,s.target)||t.close()})})},menufocus:function(t,i){var s,n;return this.isNewMenu&&(this.isNewMenu=!1,t.originalEvent&&/^mouse/.test(t.originalEvent.type))?(this.menu.blur(),this.document.one("mousemove",function(){e(t.target).trigger(t.originalEvent)}),void 0):(n=i.item.data("ui-autocomplete-item"),!1!==this._trigger("focus",t,{item:n})&&t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(n.value),s=i.item.attr("aria-label")||n.value,s&&e.trim(s).length&&(this.liveRegion.children().hide(),e("<div>").text(s).appendTo(this.liveRegion)),void 0)},menuselect:function(e,t){var i=t.item.data("ui-autocomplete-item"),s=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=s,this._delay(function(){this.previous=s,this.selectedItem=i})),!1!==this._trigger("select",e,{item:i})&&this._value(i.value),this.term=this._value(),this.close(e),this.selectedItem=i}}),this.liveRegion=e("<span>",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),"source"===e&&this._initSource(),"appendTo"===e&&this.menu.element.appendTo(this._appendTo()),"disabled"===e&&t&&this.xhr&&this.xhr.abort()},_appendTo:function(){var t=this.options.appendTo;return t&&(t=t.jquery||t.nodeType?e(t):this.document.find(t).eq(0)),t&&t[0]||(t=this.element.closest(".ui-front")),t.length||(t=this.document[0].body),t},_initSource:function(){var t,i,s=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(i,s){s(e.ui.autocomplete.filter(t,i.term))}):"string"==typeof this.options.source?(i=this.options.source,this.source=function(t,n){s.xhr&&s.xhr.abort(),s.xhr=e.ajax({url:i,data:t,dataType:"json",success:function(e){n(e)},error:function(){n([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){var t=this.term===this._value(),i=this.menu.element.is(":visible"),s=e.altKey||e.ctrlKey||e.metaKey||e.shiftKey;(!t||t&&!i&&!s)&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){return e=null!=e?e:this._value(),this.term=this._value(),e.length<this.options.minLength?this.close(t):this._trigger("search",t)!==!1?this._search(e):void 0},_search:function(e){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.cancelSearch=!1,this.source({term:e},this._response())},_response:function(){var t=++this.requestIndex;return e.proxy(function(e){t===this.requestIndex&&this.__response(e),this.pending--,this.pending||this.element.removeClass("ui-autocomplete-loading")},this)},__response:function(e){e&&(e=this._normalize(e)),this._trigger("response",null,{content:e}),!this.options.disabled&&e&&e.length&&!this.cancelSearch?(this._suggest(e),this._trigger("open")):this._close()},close:function(e){this.cancelSearch=!0,this._close(e)},_close:function(e){this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",e))},_change:function(e){this.previous!==this._value()&&this._trigger("change",e,{item:this.selectedItem})},_normalize:function(t){return t.length&&t[0].label&&t[0].value?t:e.map(t,function(t){return"string"==typeof t?{label:t,value:t}:e.extend({},t,{label:t.label||t.value,value:t.value||t.label})})},_suggest:function(t){var i=this.menu.element.empty();this._renderMenu(i,t),this.isNewMenu=!0,this.menu.refresh(),i.show(),this._resizeMenu(),i.position(e.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next()
7   -},_resizeMenu:function(){var e=this.menu.element;e.outerWidth(Math.max(e.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(t,i){var s=this;e.each(i,function(e,i){s._renderItemData(t,i)})},_renderItemData:function(e,t){return this._renderItem(e,t).data("ui-autocomplete-item",t)},_renderItem:function(t,i){return e("<li>").text(i.label).appendTo(t)},_move:function(e,t){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)?(this.isMultiLine||this._value(this.term),this.menu.blur(),void 0):(this.menu[e](t),void 0):(this.search(null,t),void 0)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(e,t),t.preventDefault())}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,i){var s=RegExp(e.ui.autocomplete.escapeRegex(i),"i");return e.grep(t,function(e){return s.test(e.label||e.value||e)})}}),e.widget("ui.autocomplete",e.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(e>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(t){var i;this._superApply(arguments),this.options.disabled||this.cancelSearch||(i=t&&t.length?this.options.messages.results(t.length):this.options.messages.noResults,this.liveRegion.children().hide(),e("<div>").text(i).appendTo(this.liveRegion))}}),e.ui.autocomplete});
8 7 \ No newline at end of file
  8 +},_resizeMenu:function(){var e=this.menu.element;e.outerWidth(Math.max(e.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(t,i){var s=this;e.each(i,function(e,i){s._renderItemData(t,i)})},_renderItemData:function(e,t){return this._renderItem(e,t).data("ui-autocomplete-item",t)},_renderItem:function(t,i){return e("<li>").text(i.label).appendTo(t)},_move:function(e,t){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)?(this.isMultiLine||this._value(this.term),this.menu.blur(),void 0):(this.menu[e](t),void 0):(this.search(null,t),void 0)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(e,t),t.preventDefault())}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,i){var s=RegExp(e.ui.autocomplete.escapeRegex(i),"i");return e.grep(t,function(e){return s.test(e.label||e.value||e)})}}),e.widget("ui.autocomplete",e.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(e>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(t){var i;this._superApply(arguments),this.options.disabled||this.cancelSearch||(i=t&&t.length?this.options.messages.results(t.length):this.options.messages.noResults,this.liveRegion.children().hide(),e("<div>").text(i).appendTo(this.liveRegion))}}),e.ui.autocomplete;var a="ui-effects-",o=e;e.effects={effect:{}},function(e,t){function i(e,t,i){var s=d[t.type]||{};return null==e?i||!t.def?null:t.def:(e=s.floor?~~e:parseFloat(e),isNaN(e)?t.def:s.mod?(e+s.mod)%s.mod:0>e?0:e>s.max?s.max:e)}function s(i){var s=l(),n=s._rgba=[];return i=i.toLowerCase(),f(h,function(e,a){var o,r=a.re.exec(i),h=r&&a.parse(r),l=a.space||"rgba";return h?(o=s[l](h),s[u[l].cache]=o[u[l].cache],n=s._rgba=o._rgba,!1):t}),n.length?("0,0,0,0"===n.join()&&e.extend(n,a.transparent),s):a[i]}function n(e,t,i){return i=(i+1)%1,1>6*i?e+6*(t-e)*i:1>2*i?t:2>3*i?e+6*(t-e)*(2/3-i):e}var a,o="backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",r=/^([\-+])=\s*(\d+\.?\d*)/,h=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[e[1],e[2],e[3],e[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[2.55*e[1],2.55*e[2],2.55*e[3],e[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(e){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(e){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(e){return[e[1],e[2]/100,e[3]/100,e[4]]}}],l=e.Color=function(t,i,s,n){return new e.Color.fn.parse(t,i,s,n)},u={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},d={"byte":{floor:!0,max:255},percent:{max:1},degrees:{mod:360,floor:!0}},c=l.support={},p=e("<p>")[0],f=e.each;p.style.cssText="background-color:rgba(1,1,1,.5)",c.rgba=p.style.backgroundColor.indexOf("rgba")>-1,f(u,function(e,t){t.cache="_"+e,t.props.alpha={idx:3,type:"percent",def:1}}),l.fn=e.extend(l.prototype,{parse:function(n,o,r,h){if(n===t)return this._rgba=[null,null,null,null],this;(n.jquery||n.nodeType)&&(n=e(n).css(o),o=t);var d=this,c=e.type(n),p=this._rgba=[];return o!==t&&(n=[n,o,r,h],c="array"),"string"===c?this.parse(s(n)||a._default):"array"===c?(f(u.rgba.props,function(e,t){p[t.idx]=i(n[t.idx],t)}),this):"object"===c?(n instanceof l?f(u,function(e,t){n[t.cache]&&(d[t.cache]=n[t.cache].slice())}):f(u,function(t,s){var a=s.cache;f(s.props,function(e,t){if(!d[a]&&s.to){if("alpha"===e||null==n[e])return;d[a]=s.to(d._rgba)}d[a][t.idx]=i(n[e],t,!0)}),d[a]&&0>e.inArray(null,d[a].slice(0,3))&&(d[a][3]=1,s.from&&(d._rgba=s.from(d[a])))}),this):t},is:function(e){var i=l(e),s=!0,n=this;return f(u,function(e,a){var o,r=i[a.cache];return r&&(o=n[a.cache]||a.to&&a.to(n._rgba)||[],f(a.props,function(e,i){return null!=r[i.idx]?s=r[i.idx]===o[i.idx]:t})),s}),s},_space:function(){var e=[],t=this;return f(u,function(i,s){t[s.cache]&&e.push(i)}),e.pop()},transition:function(e,t){var s=l(e),n=s._space(),a=u[n],o=0===this.alpha()?l("transparent"):this,r=o[a.cache]||a.to(o._rgba),h=r.slice();return s=s[a.cache],f(a.props,function(e,n){var a=n.idx,o=r[a],l=s[a],u=d[n.type]||{};null!==l&&(null===o?h[a]=l:(u.mod&&(l-o>u.mod/2?o+=u.mod:o-l>u.mod/2&&(o-=u.mod)),h[a]=i((l-o)*t+o,n)))}),this[n](h)},blend:function(t){if(1===this._rgba[3])return this;var i=this._rgba.slice(),s=i.pop(),n=l(t)._rgba;return l(e.map(i,function(e,t){return(1-s)*n[t]+s*e}))},toRgbaString:function(){var t="rgba(",i=e.map(this._rgba,function(e,t){return null==e?t>2?1:0:e});return 1===i[3]&&(i.pop(),t="rgb("),t+i.join()+")"},toHslaString:function(){var t="hsla(",i=e.map(this.hsla(),function(e,t){return null==e&&(e=t>2?1:0),t&&3>t&&(e=Math.round(100*e)+"%"),e});return 1===i[3]&&(i.pop(),t="hsl("),t+i.join()+")"},toHexString:function(t){var i=this._rgba.slice(),s=i.pop();return t&&i.push(~~(255*s)),"#"+e.map(i,function(e){return e=(e||0).toString(16),1===e.length?"0"+e:e}).join("")},toString:function(){return 0===this._rgba[3]?"transparent":this.toRgbaString()}}),l.fn.parse.prototype=l.fn,u.hsla.to=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t,i,s=e[0]/255,n=e[1]/255,a=e[2]/255,o=e[3],r=Math.max(s,n,a),h=Math.min(s,n,a),l=r-h,u=r+h,d=.5*u;return t=h===r?0:s===r?60*(n-a)/l+360:n===r?60*(a-s)/l+120:60*(s-n)/l+240,i=0===l?0:.5>=d?l/u:l/(2-u),[Math.round(t)%360,i,d,null==o?1:o]},u.hsla.from=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t=e[0]/360,i=e[1],s=e[2],a=e[3],o=.5>=s?s*(1+i):s+i-s*i,r=2*s-o;return[Math.round(255*n(r,o,t+1/3)),Math.round(255*n(r,o,t)),Math.round(255*n(r,o,t-1/3)),a]},f(u,function(s,n){var a=n.props,o=n.cache,h=n.to,u=n.from;l.fn[s]=function(s){if(h&&!this[o]&&(this[o]=h(this._rgba)),s===t)return this[o].slice();var n,r=e.type(s),d="array"===r||"object"===r?s:arguments,c=this[o].slice();return f(a,function(e,t){var s=d["object"===r?e:t.idx];null==s&&(s=c[t.idx]),c[t.idx]=i(s,t)}),u?(n=l(u(c)),n[o]=c,n):l(c)},f(a,function(t,i){l.fn[t]||(l.fn[t]=function(n){var a,o=e.type(n),h="alpha"===t?this._hsla?"hsla":"rgba":s,l=this[h](),u=l[i.idx];return"undefined"===o?u:("function"===o&&(n=n.call(this,u),o=e.type(n)),null==n&&i.empty?this:("string"===o&&(a=r.exec(n),a&&(n=u+parseFloat(a[2])*("+"===a[1]?1:-1))),l[i.idx]=n,this[h](l)))})})}),l.hook=function(t){var i=t.split(" ");f(i,function(t,i){e.cssHooks[i]={set:function(t,n){var a,o,r="";if("transparent"!==n&&("string"!==e.type(n)||(a=s(n)))){if(n=l(a||n),!c.rgba&&1!==n._rgba[3]){for(o="backgroundColor"===i?t.parentNode:t;(""===r||"transparent"===r)&&o&&o.style;)try{r=e.css(o,"backgroundColor"),o=o.parentNode}catch(h){}n=n.blend(r&&"transparent"!==r?r:"_default")}n=n.toRgbaString()}try{t.style[i]=n}catch(h){}}},e.fx.step[i]=function(t){t.colorInit||(t.start=l(t.elem,i),t.end=l(t.end),t.colorInit=!0),e.cssHooks[i].set(t.elem,t.start.transition(t.end,t.pos))}})},l.hook(o),e.cssHooks.borderColor={expand:function(e){var t={};return f(["Top","Right","Bottom","Left"],function(i,s){t["border"+s+"Color"]=e}),t}},a=e.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"}}(o),function(){function t(t){var i,s,n=t.ownerDocument.defaultView?t.ownerDocument.defaultView.getComputedStyle(t,null):t.currentStyle,a={};if(n&&n.length&&n[0]&&n[n[0]])for(s=n.length;s--;)i=n[s],"string"==typeof n[i]&&(a[e.camelCase(i)]=n[i]);else for(i in n)"string"==typeof n[i]&&(a[i]=n[i]);return a}function i(t,i){var s,a,o={};for(s in i)a=i[s],t[s]!==a&&(n[s]||(e.fx.step[s]||!isNaN(parseFloat(a)))&&(o[s]=a));return o}var s=["add","remove","toggle"],n={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};e.each(["borderLeftStyle","borderRightStyle","borderBottomStyle","borderTopStyle"],function(t,i){e.fx.step[i]=function(e){("none"!==e.end&&!e.setAttr||1===e.pos&&!e.setAttr)&&(o.style(e.elem,i,e.end),e.setAttr=!0)}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e.effects.animateClass=function(n,a,o,r){var h=e.speed(a,o,r);return this.queue(function(){var a,o=e(this),r=o.attr("class")||"",l=h.children?o.find("*").addBack():o;l=l.map(function(){var i=e(this);return{el:i,start:t(this)}}),a=function(){e.each(s,function(e,t){n[t]&&o[t+"Class"](n[t])})},a(),l=l.map(function(){return this.end=t(this.el[0]),this.diff=i(this.start,this.end),this}),o.attr("class",r),l=l.map(function(){var t=this,i=e.Deferred(),s=e.extend({},h,{queue:!1,complete:function(){i.resolve(t)}});return this.el.animate(this.diff,s),i.promise()}),e.when.apply(e,l.get()).done(function(){a(),e.each(arguments,function(){var t=this.el;e.each(this.diff,function(e){t.css(e,"")})}),h.complete.call(o[0])})})},e.fn.extend({addClass:function(t){return function(i,s,n,a){return s?e.effects.animateClass.call(this,{add:i},s,n,a):t.apply(this,arguments)}}(e.fn.addClass),removeClass:function(t){return function(i,s,n,a){return arguments.length>1?e.effects.animateClass.call(this,{remove:i},s,n,a):t.apply(this,arguments)}}(e.fn.removeClass),toggleClass:function(t){return function(i,s,n,a,o){return"boolean"==typeof s||void 0===s?n?e.effects.animateClass.call(this,s?{add:i}:{remove:i},n,a,o):t.apply(this,arguments):e.effects.animateClass.call(this,{toggle:i},s,n,a)}}(e.fn.toggleClass),switchClass:function(t,i,s,n,a){return e.effects.animateClass.call(this,{add:i,remove:t},s,n,a)}})}(),function(){function t(t,i,s,n){return e.isPlainObject(t)&&(i=t,t=t.effect),t={effect:t},null==i&&(i={}),e.isFunction(i)&&(n=i,s=null,i={}),("number"==typeof i||e.fx.speeds[i])&&(n=s,s=i,i={}),e.isFunction(s)&&(n=s,s=null),i&&e.extend(t,i),s=s||i.duration,t.duration=e.fx.off?0:"number"==typeof s?s:s in e.fx.speeds?e.fx.speeds[s]:e.fx.speeds._default,t.complete=n||i.complete,t}function i(t){return!t||"number"==typeof t||e.fx.speeds[t]?!0:"string"!=typeof t||e.effects.effect[t]?e.isFunction(t)?!0:"object"!=typeof t||t.effect?!1:!0:!0}e.extend(e.effects,{version:"1.11.4",save:function(e,t){for(var i=0;t.length>i;i++)null!==t[i]&&e.data(a+t[i],e[0].style[t[i]])},restore:function(e,t){var i,s;for(s=0;t.length>s;s++)null!==t[s]&&(i=e.data(a+t[s]),void 0===i&&(i=""),e.css(t[s],i))},setMode:function(e,t){return"toggle"===t&&(t=e.is(":hidden")?"show":"hide"),t},getBaseline:function(e,t){var i,s;switch(e[0]){case"top":i=0;break;case"middle":i=.5;break;case"bottom":i=1;break;default:i=e[0]/t.height}switch(e[1]){case"left":s=0;break;case"center":s=.5;break;case"right":s=1;break;default:s=e[1]/t.width}return{x:s,y:i}},createWrapper:function(t){if(t.parent().is(".ui-effects-wrapper"))return t.parent();var i={width:t.outerWidth(!0),height:t.outerHeight(!0),"float":t.css("float")},s=e("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),n={width:t.width(),height:t.height()},a=document.activeElement;try{a.id}catch(o){a=document.body}return t.wrap(s),(t[0]===a||e.contains(t[0],a))&&e(a).focus(),s=t.parent(),"static"===t.css("position")?(s.css({position:"relative"}),t.css({position:"relative"})):(e.extend(i,{position:t.css("position"),zIndex:t.css("z-index")}),e.each(["top","left","bottom","right"],function(e,s){i[s]=t.css(s),isNaN(parseInt(i[s],10))&&(i[s]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),t.css(n),s.css(i).show()},removeWrapper:function(t){var i=document.activeElement;return t.parent().is(".ui-effects-wrapper")&&(t.parent().replaceWith(t),(t[0]===i||e.contains(t[0],i))&&e(i).focus()),t},setTransition:function(t,i,s,n){return n=n||{},e.each(i,function(e,i){var a=t.cssUnit(i);a[0]>0&&(n[i]=a[0]*s+a[1])}),n}}),e.fn.extend({effect:function(){function i(t){function i(){e.isFunction(a)&&a.call(n[0]),e.isFunction(t)&&t()}var n=e(this),a=s.complete,r=s.mode;(n.is(":hidden")?"hide"===r:"show"===r)?(n[r](),i()):o.call(n[0],s,i)}var s=t.apply(this,arguments),n=s.mode,a=s.queue,o=e.effects.effect[s.effect];return e.fx.off||!o?n?this[n](s.duration,s.complete):this.each(function(){s.complete&&s.complete.call(this)}):a===!1?this.each(i):this.queue(a||"fx",i)},show:function(e){return function(s){if(i(s))return e.apply(this,arguments);var n=t.apply(this,arguments);return n.mode="show",this.effect.call(this,n)}}(e.fn.show),hide:function(e){return function(s){if(i(s))return e.apply(this,arguments);var n=t.apply(this,arguments);return n.mode="hide",this.effect.call(this,n)}}(e.fn.hide),toggle:function(e){return function(s){if(i(s)||"boolean"==typeof s)return e.apply(this,arguments);var n=t.apply(this,arguments);return n.mode="toggle",this.effect.call(this,n)}}(e.fn.toggle),cssUnit:function(t){var i=this.css(t),s=[];return e.each(["em","px","%","pt"],function(e,t){i.indexOf(t)>0&&(s=[parseFloat(i),t])}),s}})}(),function(){var t={};e.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,i){t[i]=function(t){return Math.pow(t,e+2)}}),e.extend(t,{Sine:function(e){return 1-Math.cos(e*Math.PI/2)},Circ:function(e){return 1-Math.sqrt(1-e*e)},Elastic:function(e){return 0===e||1===e?e:-Math.pow(2,8*(e-1))*Math.sin((80*(e-1)-7.5)*Math.PI/15)},Back:function(e){return e*e*(3*e-2)},Bounce:function(e){for(var t,i=4;((t=Math.pow(2,--i))-1)/11>e;);return 1/Math.pow(4,3-i)-7.5625*Math.pow((3*t-2)/22-e,2)}}),e.each(t,function(t,i){e.easing["easeIn"+t]=i,e.easing["easeOut"+t]=function(e){return 1-i(1-e)},e.easing["easeInOut"+t]=function(e){return.5>e?i(2*e)/2:1-i(-2*e+2)/2}})}(),e.effects,e.effects.effect.blind=function(t,i){var s,n,a,o=e(this),r=/up|down|vertical/,h=/up|left|vertical|horizontal/,l=["position","top","bottom","left","right","height","width"],u=e.effects.setMode(o,t.mode||"hide"),d=t.direction||"up",c=r.test(d),p=c?"height":"width",f=c?"top":"left",m=h.test(d),g={},v="show"===u;o.parent().is(".ui-effects-wrapper")?e.effects.save(o.parent(),l):e.effects.save(o,l),o.show(),s=e.effects.createWrapper(o).css({overflow:"hidden"}),n=s[p](),a=parseFloat(s.css(f))||0,g[p]=v?n:0,m||(o.css(c?"bottom":"right",0).css(c?"top":"left","auto").css({position:"absolute"}),g[f]=v?a:n+a),v&&(s.css(p,0),m||s.css(f,a+n)),s.animate(g,{duration:t.duration,easing:t.easing,queue:!1,complete:function(){"hide"===u&&o.hide(),e.effects.restore(o,l),e.effects.removeWrapper(o),i()}})}});
9 9 \ No newline at end of file
... ...
js/jquery-ui-1.11.4.custom/jquery-ui.structure.min.css
1   -/*! jQuery UI - v1.11.4 - 2015-04-19
  1 +/*! jQuery UI - v1.11.4 - 2015-04-24
2 2 * http://jqueryui.com
3 3 * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
4 4  
... ...
js/main.js
... ... @@ -30,7 +30,14 @@ if(participa){
30 30 //var proposal_discussion = '401'; //casa
31 31 }
32 32  
33   -var noosferoAPI = host + '/api/v1/articles/' + proposal_discussion + '?private_token=' + private_token + '&fields=id,children,categories,abstract,body,title,image,url';
  33 +// Set isProduction to true when at production environment
  34 +// Set isProduction to false when at development environment
  35 +var isProduction = true; // default is true
  36 +if( isProduction ){
  37 + var noosferoAPI = host + '/api/v1/articles/' + proposal_discussion + '?private_token=' + private_token + '&fields=id,children,categories,abstract,body,title,image,url';
  38 +} else {
  39 + var noosferoAPI = '/data.json';
  40 +}
34 41  
35 42 $.getJSON(noosferoAPI)
36 43 .done(function( data ) {
... ... @@ -78,12 +85,36 @@ $.getJSON(noosferoAPI)
78 85 // Update URL and Navigate
79 86 updateHash($link.attr('href'));
80 87 });
  88 +//TODO remove this
  89 +// $( '.proposal-category a' ).hover(function(event){
  90 +// $(this).stop().effect('shake', {distance:20}, 700);
  91 +// $(form).siblings('.success-sent').show();
  92 +//
  93 +// if(!$(this)..siblings.hasClass('animated')){
  94 +// if(!$(this).hasClass('animated')){
  95 +// $(this).addClass('animated');
  96 +// $(this).stop().effect('shake', {distance:20}, 700);
  97 +// }
  98 +// },
  99 +// function(){
  100 +// $(this).removeClass('animated');
  101 +// });
81 102  
82 103 $( '.proposal-category .go-back' ).click(function(event){
83 104 event.preventDefault();
84 105  
  106 + var oldHash = window.location.hash;
  107 + var regexSubpages = /sobre-o-programa$/;
  108 + var isSubpage = regexSubpages.exec(oldHash) !== null;
  109 + var newHash = '#/temas'; // default page
  110 +
  111 + if(isSubpage){
  112 + // return to proposal page
  113 + newHash = oldHash.split('/sobre-o-programa')[0];
  114 + }
  115 +
85 116 // Update URL and Navigate
86   - updateHash('#/temas');
  117 + updateHash(newHash);
87 118 });
88 119  
89 120 $( '.send-button a' ).click(function(event){
... ... @@ -131,6 +162,7 @@ $.getJSON(noosferoAPI)
131 162  
132 163 $( "#search-input" ).autocomplete({
133 164 source: availableTags,
  165 + minLength: 3,
134 166 select: function( event, ui ) {
135 167 updateHash(ui.item.value);
136 168 return false;
... ... @@ -147,6 +179,9 @@ $.getJSON(noosferoAPI)
147 179 e.preventDefault();
148 180 var proposal_id = this.id.split('-').pop();
149 181 var form = this;
  182 + var message = $(form).find('.message');
  183 + message.hide();
  184 + message.text('');
150 185 $.ajax({
151 186 type: 'post',
152 187 url: host + '/api/v1/articles/' + proposal_id + '/children',
... ... @@ -160,7 +195,8 @@ $.getJSON(noosferoAPI)
160 195 .fail(function( jqxhr, textStatus, error ) {
161 196 var err = textStatus + ", " + error;
162 197 console.log( "Request Failed: " + err );
163   - $(form).find('.message').text('Não foi possível enviar.');
  198 + message.show();
  199 + message.text('Não foi possível enviar.');
164 200 });
165 201 });
166 202  
... ... @@ -262,6 +298,9 @@ function oauthPluginHandleLoginResult(loggedIn, token) {
262 298  
263 299 jQuery(document).ready(function($) {
264 300 $(document).on('click', '.login-action', function(e) {
  301 + var message = $('.login .message')
  302 + message.hide();
  303 + message.text('');
265 304 $.ajax({
266 305 type: 'post',
267 306 url: host + '/api/v1/login',
... ... @@ -272,7 +311,8 @@ jQuery(document).ready(function($) {
272 311 }).done(function(data) {
273 312 loginCallback(true, data.private_token);
274 313 }).fail(function(data) {
275   - $('.login .message').text('Não foi possível logar');
  314 + message.show();
  315 + message.text('Não foi possível logar');
276 316 });
277 317 e.preventDefault();
278 318 });
... ... @@ -363,7 +403,7 @@ function display_proposal_by_category(item){
363 403 $('#nav-proposal-group a').removeClass('active');
364 404 $('.proposal-category-items').hide();
365 405 $('.proposal-detail').hide();
366   - $item.show();
  406 + $item.toggle( 'blind', 1000 );
367 407 $(".proposal-item p").dotdotdot();
368 408 $('.proposal-category .arrow-box').hide();
369 409 var categorySlug = $item.data('category');
... ...
sass/_proposal_categories.scss
... ... @@ -30,7 +30,6 @@
30 30 font-weight: 700;
31 31 text-align: center;
32 32 padding-top: 100px;
33   - overflow: hidden;
34 33 // border-width: 2px;
35 34 // border-style: solid;
36 35 background-size: 90px;
... ... @@ -192,4 +191,4 @@
192 191 .proposal-item {
193 192 width: 95% !important;
194 193 }
195   -}
196 194 \ No newline at end of file
  195 +}
... ...
sass/_proposal_detail.scss
... ... @@ -55,6 +55,8 @@
55 55 bottom: 140px;
56 56 font-size: 14px;
57 57 text-align: center;
  58 + word-break: break-word;
  59 + word-wrap: break-word;
58 60 }
59 61  
60 62 .show_body {
... ... @@ -669,6 +671,15 @@
669 671 margin: 0 !important;
670 672 min-height: 0 !important;
671 673 }
  674 + .send-experience-button {
  675 + text-align: center !important;
  676 + a {
  677 + position: relative !important;
  678 + left: inherit !important;
  679 + margin: auto !important;
  680 + bottom: inherit !important;
  681 + }
  682 + }
672 683 }
673 684 .talk-proposal-container {
674 685 height: auto !important;
... ...