From b1dd3a8b015912ca1ad9fb0b2e373d2c98e0e748 Mon Sep 17 00:00:00 2001 From: Gustavo Date: Tue, 12 May 2026 23:27:37 +0000 Subject: [PATCH] fodase :) meco meram, meco meram, meco meram --- AgendaDigitalEstudantesApplication.class | Bin 0 -> 798 bytes AgendaDigitalEstudantesApplication.java | 12 + ConfiguracaoMongo.class | Bin 0 -> 509 bytes ConfiguracaoSeguranca.class | Bin 0 -> 9165 bytes DetalhesUsuarioPersonalizado.class | Bin 0 -> 1615 bytes Disciplina$DisciplinaBuilder.class | Bin 0 -> 2481 bytes Disciplina.class | Bin 0 -> 5135 bytes DisciplinaControlador.class | Bin 0 -> 5410 bytes DisciplinaRepositorio.class | Bin 0 -> 675 bytes DisciplinaServico.class | Bin 0 -> 6008 bytes EntidadeAuditoria.class | Bin 0 -> 2964 bytes Estudante$EstudanteBuilder.class | Bin 0 -> 2650 bytes Estudante.class | Bin 0 -> 5197 bytes EstudanteControlador.class | Bin 0 -> 3824 bytes EstudanteRepositorio.class | Bin 0 -> 726 bytes Evento$EventoBuilder.class | Bin 0 -> 3304 bytes Evento$TipoEvento.class | Bin 0 -> 1502 bytes Evento.class | Bin 0 -> 6671 bytes EventoControlador.class | Bin 0 -> 6948 bytes EventoRepositorio.class | Bin 0 -> 1467 bytes ExcecaoNegocio.class | Bin 0 -> 429 bytes ExcecaoRecursoNaoEncontrado.class | Bin 0 -> 468 bytes FiltroJwt.class | Bin 0 -> 3667 bytes HEAD | 1 + ManipuladorExcecaoGlobal.class | Bin 0 -> 5397 bytes RequisicaoCadastroDTO.class | Bin 0 -> 2797 bytes RequisicaoDisciplinaDTO.class | Bin 0 -> 2167 bytes RequisicaoEventoDTO.class | Bin 0 -> 2940 bytes RequisicaoLoginDTO.class | Bin 0 -> 1834 bytes RequisicaoTarefaDTO.class | Bin 0 -> 3400 bytes ResourceController.class | Bin 0 -> 757 bytes RespostaApi.class | Bin 0 -> 2153 bytes RespostaDisciplinaDTO.class | Bin 0 -> 1954 bytes RespostaEstudanteDTO.class | Bin 0 -> 1863 bytes RespostaEventoDTO.class | Bin 0 -> 2273 bytes RespostaLoginDTO.class | Bin 0 -> 1571 bytes RespostaTarefaDTO.class | Bin 0 -> 2281 bytes ServicoAutenticacaoUsuario.class | Bin 0 -> 2281 bytes Tarefa$Prioridade.class | Bin 0 -> 1403 bytes Tarefa$StatusTarefa.class | Bin 0 -> 1433 bytes Tarefa$TarefaBuilder.class | Bin 0 -> 3588 bytes Tarefa.class | Bin 0 -> 7164 bytes TarefaControlador.class | Bin 0 -> 6667 bytes TarefaRepositorio.class | Bin 0 -> 2002 bytes application-dev.properties | 6 + application-prod.properties | 8 + application.properties | 13 + applypatch-msg.sample | 15 + cadastro.css | 216 +-- cadastro.html | 213 ++- calendario.css | 891 ++++------ calendario.html | 1486 +++++++++++------ commit-msg.sample | 24 + config | 13 + description | 1 + engrenagem.png | Bin 0 -> 13977 bytes exclude | 6 + fsmonitor-watchman.sample | 174 ++ icone.png | Bin 0 -> 7127 bytes index | Bin 0 -> 7876 bytes index.html | 11 + login.css | 199 ++- login.html | 135 +- main | 1 + ...b7a6ce7e8de572d350421a1169ccc3ded36051.idx | Bin 0 -> 5244 bytes ...7a6ce7e8de572d350421a1169ccc3ded36051.pack | Bin 0 -> 79144 bytes ...b7a6ce7e8de572d350421a1169ccc3ded36051.rev | Bin 0 -> 648 bytes packed-refs | 3 + pom.xml | 141 ++ post-update.sample | 8 + pre-applypatch.sample | 14 + pre-commit.sample | 49 + pre-merge-commit.sample | 13 + pre-push.sample | 53 + pre-rebase.sample | 169 ++ pre-receive.sample | 24 + prepare-commit-msg.sample | 42 + push-to-checkout.sample | 78 + sendemail-validate.sample | 77 + sino.png | Bin 0 -> 8791 bytes style.css | 124 ++ update.sample | 128 ++ 82 files changed, 2932 insertions(+), 1416 deletions(-) create mode 100644 AgendaDigitalEstudantesApplication.class create mode 100644 AgendaDigitalEstudantesApplication.java create mode 100644 ConfiguracaoMongo.class create mode 100644 ConfiguracaoSeguranca.class create mode 100644 DetalhesUsuarioPersonalizado.class create mode 100644 Disciplina$DisciplinaBuilder.class create mode 100644 Disciplina.class create mode 100644 DisciplinaControlador.class create mode 100644 DisciplinaRepositorio.class create mode 100644 DisciplinaServico.class create mode 100644 EntidadeAuditoria.class create mode 100644 Estudante$EstudanteBuilder.class create mode 100644 Estudante.class create mode 100644 EstudanteControlador.class create mode 100644 EstudanteRepositorio.class create mode 100644 Evento$EventoBuilder.class create mode 100644 Evento$TipoEvento.class create mode 100644 Evento.class create mode 100644 EventoControlador.class create mode 100644 EventoRepositorio.class create mode 100644 ExcecaoNegocio.class create mode 100644 ExcecaoRecursoNaoEncontrado.class create mode 100644 FiltroJwt.class create mode 100644 HEAD create mode 100644 ManipuladorExcecaoGlobal.class create mode 100644 RequisicaoCadastroDTO.class create mode 100644 RequisicaoDisciplinaDTO.class create mode 100644 RequisicaoEventoDTO.class create mode 100644 RequisicaoLoginDTO.class create mode 100644 RequisicaoTarefaDTO.class create mode 100644 ResourceController.class create mode 100644 RespostaApi.class create mode 100644 RespostaDisciplinaDTO.class create mode 100644 RespostaEstudanteDTO.class create mode 100644 RespostaEventoDTO.class create mode 100644 RespostaLoginDTO.class create mode 100644 RespostaTarefaDTO.class create mode 100644 ServicoAutenticacaoUsuario.class create mode 100644 Tarefa$Prioridade.class create mode 100644 Tarefa$StatusTarefa.class create mode 100644 Tarefa$TarefaBuilder.class create mode 100644 Tarefa.class create mode 100644 TarefaControlador.class create mode 100644 TarefaRepositorio.class create mode 100644 application-dev.properties create mode 100644 application-prod.properties create mode 100644 application.properties create mode 100644 applypatch-msg.sample create mode 100644 commit-msg.sample create mode 100644 config create mode 100644 description create mode 100644 engrenagem.png create mode 100644 exclude create mode 100644 fsmonitor-watchman.sample create mode 100644 icone.png create mode 100644 index create mode 100644 index.html create mode 100644 main create mode 100644 pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.idx create mode 100644 pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.pack create mode 100644 pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.rev create mode 100644 packed-refs create mode 100644 pom.xml create mode 100644 post-update.sample create mode 100644 pre-applypatch.sample create mode 100644 pre-commit.sample create mode 100644 pre-merge-commit.sample create mode 100644 pre-push.sample create mode 100644 pre-rebase.sample create mode 100644 pre-receive.sample create mode 100644 prepare-commit-msg.sample create mode 100644 push-to-checkout.sample create mode 100644 sendemail-validate.sample create mode 100644 sino.png create mode 100644 style.css create mode 100644 update.sample diff --git a/AgendaDigitalEstudantesApplication.class b/AgendaDigitalEstudantesApplication.class new file mode 100644 index 0000000000000000000000000000000000000000..621ccff6e7d9751dba47222b803be7621adf0c1d GIT binary patch literal 798 zcmbVKO>Yx15PeRQCS3w8DHO`bfm72Q@C}3ll}doq@*#r4fz#~9-MZ}Bk=G0SElwZ~ z`~ZFwVr(KMhe${qc4qy?elzdczkdJt3E&CtcF_`enA=KHq0F3A?VC9nuSQPMczU zJWFsD`&|qKM%ERwUIhHiQKddx_fclndO3~Yn&>{R;W|rm4HIX>HQq@{bv@qHDcwY$ zTjSLiFDKTV>7sE#`C1=_Lpg{bSFjKJ8<^Stm&%{p`5Ovjd*ygzGPRA%)e9Y*J^J@G z-VfFY9KLP%-YYfJwGN{gV|~14raalGAR0uCw=5+}P)oa>vU6)v#<&M|j9(nk;y-=_ z9J{=doCW93=o@-pV>#g%%HR!`IQIW;;Cz`^JGg>fCJBchL^7Z^5Tozdd%rrLa0N&r e!-}Ja1KeQzCVw4%6r5T(jPVw3a}I6q0Dk~NRo8U@ literal 0 HcmV?d00001 diff --git a/AgendaDigitalEstudantesApplication.java b/AgendaDigitalEstudantesApplication.java new file mode 100644 index 0000000..b144574 --- /dev/null +++ b/AgendaDigitalEstudantesApplication.java @@ -0,0 +1,12 @@ +package com.agendaestudantil; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class AgendaDigitalEstudantesApplication { + + public static void main(String[] args) { + SpringApplication.run(AgendaDigitalEstudantesApplication.class, args); + } +} diff --git a/ConfiguracaoMongo.class b/ConfiguracaoMongo.class new file mode 100644 index 0000000000000000000000000000000000000000..12f5ff40ddcdb682608ad082856d690c87eb4a5a GIT binary patch literal 509 zcmbVJyH3ME5S$}VOdughNR)Iy!4(La5Tq!ADu4ti{o1~m3-%qd&%kd{AyM!Fd=z5O ziU0{Jnw^_{Xm;n`KVIJe46)I|lE6V^Gf9auF{#3pF&U>*8Cf&aNtshbR*rv=b88aY zLS3LYrw5WLnM7WOa}_y(=CL-~oe0!+cBcaMv5i%L8kRd~pefLuXrnI5EL8aog{czg zPi#c#lydF)B3XC0x)3;={A0C&KyYo#JW^-c3vB*ce&6pcuys}PrJ0)QLbLS980*Ms zYgqYcV)H~6_qjI7ET>F8+WgLY;?$Fq^ws+9j2~p_;h%#sIg*(-E)EyY%2VSHuG}1z zv39I9z&6-A{u?j~ZyCoHGg)zfK;mt?Fx4?4rjQaQ`}E GANU05QH_KE literal 0 HcmV?d00001 diff --git a/ConfiguracaoSeguranca.class b/ConfiguracaoSeguranca.class new file mode 100644 index 0000000000000000000000000000000000000000..a90d686a60e80aca62d38ee68650f7c67c95f37c GIT binary patch literal 9165 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 XEs+n~K+d*AK57Fw-x9e{JJaKTPV#Ji literal 0 HcmV?d00001 diff --git a/Disciplina$DisciplinaBuilder.class b/Disciplina$DisciplinaBuilder.class new file mode 100644 index 0000000000000000000000000000000000000000..3696b12a84910729e48f2c2448082ae039ab614b GIT binary patch literal 2481 zcmchZ?QRoC6o%h%VjDY~CZrTf10jLXI3}=Apaq=p5d%%C@S%o+P=AfRLo#GNW9^P3 z@sG>kGN=SX0;w0!i>i8NXTc_GVT&Su%e9CvZA9A(j-)lS-O~a6r z0mIZr_ra!#q}r-6O#j{?a7(PKT^Y+pC~hdF4L4G&*uE0#RzvUjzX~NHZbU$@jJ=Oa ztP^!q>6Tz9wIlsR#IcUZ6!VZXj5O_{uq>4{S7}*Ud`QpgIuK=yV9LWcm|&RLkV@R` zv>GCMz-fQGsc!P{A&;b8r^ZpUEh(Vojn7XGg?_)1&B5aTL6*R9*h3x#%KIH*wsmly zN4zDBh+_Njh=&pib~fXo>}Inb#@y_<2hYvsJ&apOzG1&4!%}7VxN1dI7%IbNri=wt zZT3$w=spR_rszvqtN`{I?Zn4$fXDVVLh8TB=>WBYc+; zchcLuX>|0=rrPP>*3vB&b!iw~Z)MIZM+d;DGBsP%rH z6jA44xG9aOO%!l(AC?*Z=s9|Knl_}03|83EY){9qOWQK+{X@^N3)?j8ow~*fTV(Lo z74@8Y$m3Yh7vG;@7jd28WG0vWvQxw=72u~`sa3gDl1A@Rz-u}-n4`iSAw?FDvqes; zVzMG1y60?dXKYmE85`Am#zvK&u~84$V=K`<)F^4M-km4O>XRpDjD9MwlB%!a N2I@GBo5`CC{{cg(_&ops literal 0 HcmV?d00001 diff --git a/Disciplina.class b/Disciplina.class new file mode 100644 index 0000000000000000000000000000000000000000..d64d7e2e408a976b9e56a83159b983b7ee45dabb GIT binary patch literal 5135 zcmcgwU2_{}6@J#%Y9)DXD|Vf9X&OT67+ba@%4Z|RNgc(h4Yr%c!KELNuC*I`V`*2_ zuF`~3D3otH1677Rlt@}Bpc z=REtq=bZN(sek_0yT1o8hc`9!DVQvK)x5cByOwGDLBlfLz^UYI{bv^A*$G%&!G?$K5O{Fs?QTuiER5?`%}; zdDry!D;qprsX$G3xwwL&(gzHsp1?gJd zyJ7pjSEtH1E8IwbSr*zx!>L#{rSp?h%LkvPefIITcro(liyw*izvSNPa)OcNidWt6 zw)0Qfu3a|+TlShLd6uo=Aq9p1{?!?b;;4>ecvwO5oZ~vdd7f@^YF)wbvg6vTjp~M7 zzh*L~5_zv|R@P1Cg6mkRZrXta>mi0UbK< z%tzUD7X+QbGg#Abl__u6bmXGra{^Vo-JK}rV-0!1mb3&-%6(iKRw~qlVm4InYBEP6 z>n>e7ghkya6WOE1P-y7rN5he|LlgN%Z7TMS7OBuTY+UKcE0hP<0<*lmV%FmOoZ2#d z7LLUNW*=CRNNnn`z_ohi>e9*r&%VT{)@{F02?z=grjPGBfI1#;e!OF6>Ugw~#CZ7P z%$nDzm+i}rw3gv^Q#>OPSMbCKckQa@ZhF=R=SSVnSIt_DjXi(KD>tefHS8LhvRA1v zyKMh#=~ip%um*}fvO2D1-_Do3YRzl7){?BG<+{B0%zNvs*X5Yk9qTsZVA(e~hhA;j zmaM|b$7fCog2HPorHh^y_(9#QMQy~-;5B?r!&eoIx2w!?Z+Y8xJlUeFeAz5>0N#;1 z{09sbc!R&CDHXlg49H z!*>*%-WR!UvC!~64x)phtm!ClteI7Ac*T~{=d%?vx$Ln?^vNLON()!K*nIZMGzy=b zK;e@ECwy|qgilTuK1Ycg!Z7h!u7u?XpVGT0sgwUwzs2Zt?_lg#l>1=tub_ZId??g_ zD-MV*40&1vspfuzNB6qxp}QUd@L`-JP?7m^2+^tDh&Y}OAv)a~5vSWBM3cP{aX21A zG~F8!XX_zEXL=+07#?Q@Wf}O+ycb9=nNQ}Xckt-1DRpK&O54#05vNW3qYC^u(JC7< zNfmtJaQaid(n~Qbi0RWI{U;BnKiw<6+>sW2CZzw=;q;Te(#zFr(GP_5pFW&^x>tI+ z(JgvCr2ov}^k;gdmqyW|9}MZA=vsn{ArLr`yN|Q{6#1Fs=K??T{FL6s0&q}mo@g}! ze)DII?XAsrM|lTJd-p%owWA!vXS)>nn2(p>+u+;!8l*u=&a*nvfp=VVj-Sl5QAvUJSS zB};IYKL@hxvT~L9)o%YG`Vu_EFlio4=iY{zxHtVrC_jbTe{cE^P*!Fb@s)5%;q2-R z{}d9lf5L!~cn?SJLZ3Af_i?3(C>B&giiM=13MTm;M($$JP>o~V;r4WDNm$M6rVbJX3zRg}@qN5VDTN zYN_n>U1+oSapNV?7Yhk77>U@Dk^+oOa|JatvGzizl%Y0F7YfPHlx&$;k&)MYK?_YR z#@I`1no5OKXiBwAEKzzL?_Mx3Mkk1m-;ZBl3l5L3;^(+YsgEiC8PhHW^BCS>SxCX0 zC#p(GW!bF2rIbX#ka?6e{E+|qqDCntNmoumf1ip3lddRCG#~GitiA3N#Te8kpovNB zR>iPn2ds_UtBt|hZg3ml#Spus_PMmZy4zyMbT`Mg?+2Rc&N#jt7H2)|tOld*GY5f> v25xcjijUj46x}y1O_L7LRzQn_ywtWlMtMV^6xsmQHm$S<5e282p&dwP!psCje81ms ze}W(Mle)B^uH|?AQ7-qLNhXiDOiCvfz_j?WfZD&(}pvpO_vRU?oqp>m5Z8V%IDh4R&UmH1rEkzxT}+B zNavX0&D#2e=4f+C$xa<%En%eY+3FeNYSnbjl4dt{3{Q>c`bKSMMs+KW zY0X@c!mr!T6?NA0D%|2$Y|AzB45fF2ATpEYjHP*1hj!ljFLfP>cT`{pLAjoGykaI; z6}5FBH$W?T&Qxj8oKd7Z7^35rWqX=u(o%tavEI0DOsmtTrK?)FR-GV-F|AUe+bDBO zRAv~ai178Jm$fUJ<7w(Ot!(PPPPHhfl#pDrj3kfP30uFBOJk!zZ|t!!Xr!*`M$@^- zVgov|*o>`dY~gu|-FFAFDATD48?J<5U_a1-34Ef=}}pPm}q6BtWlRN#>%l|<8of&#{+uYI)w&-W%#B=cxM&!Phv8SGXmRU z!?qx4D44=ilAG0%q?^FuW^M-Mhe(o$%5~r@&ZY4*%S%Gg& zie>(2p`8M|?*u%)00?CDu+|Fn$4iJKu|T^cO9Vr`WN~ixew4og8=^^b>P97+jJwMw zMLQF=ldp9Y%sLT2)soI~YS_2UeqQeW1Qo}xOMY6c$_8kZCM4Jub&af3vQq7hJvwpK z=#f#JZ-U#j9TvJ4@-e9 ziJr2r$o6Pa$zT?45Rf&vGguP3kB(RuZK_C=T4Qx$!P4r zm+?ZWTs0&2qW9xqEy_cQqnM zulr@TWy{;@-)QQlvIMAF#Z)6zK^d_u!x<`Tu4}MJbTqYq?C074@V5w-7kMq`tc~+D z+L1zrPbWF1IA;5A@w5GBto(sbDXiw-RsPPkXvI3Ny%(K)w=P(XF3OYtvc6R29L`q= zK1fw-u$F4pah~F~`#4IaJsj8b)4?=_`#E`lABo``>S^Ve{|y_?-NJ)oJGReb(>xxQ zWB)vM%JI>8?2+UCc^vBh2`lCN$UKe}e#G!?JihZbCVoLNh3_dSfWMJuN+s>Q3w2^6 zaXg4k{NIZ$ycliu&FK#mhvww*ES@9QcK&#C0T(H0AJ;t(jS#0PjX!Wmvn2YO#m{mo zSoU?=9$0Mn7O&#lOZ?27hj20LTb>qtVftbKgTiHGx}-HU=JMDM+Hf0l(t;L009h^p z`lz+vN4qK55TfnkO|3$a8RESPhpSz#SHd?Q-_&3Z@C(7>b1j5@m1wZ4=7@k`3hh%!>TDeGN ziPBj@C89^`7<5J^w-Mf|gbeJjjP0c4VDP%cGfyrE|B>1s zK$ZqCf-KSYhB-l}_@JB`CwQr~@xm*kiRyTzGe^j1e32oqUN4~6XHcirpdZHQhqPcF gYS5-#4LYz%wLw8rsl(Px++G~+K$rGSy4nNy0{#Wrr2qf` literal 0 HcmV?d00001 diff --git a/DisciplinaServico.class b/DisciplinaServico.class new file mode 100644 index 0000000000000000000000000000000000000000..7217ad83676e9c9c2c4e26e00bb0000521ed6523 GIT binary patch literal 6008 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 literal 0 HcmV?d00001 diff --git a/Estudante$EstudanteBuilder.class b/Estudante$EstudanteBuilder.class new file mode 100644 index 0000000000000000000000000000000000000000..ca03ba2a6f174713ab5172666fa8243fe4125f33 GIT binary patch literal 2650 zcmcJQ?QRoC6o%h%VlQ?!Bn@As(A1#`*bd-+mtq1XE+GMvR1Km+{2F_w$&mGqwL6Z) zzg|W!qm`(rsMHJSMO8hsvvoFJ3tOQ6*xfV7XP!B8=AGle|9SlvfHgdFkYl*fQQbP< z6M@G?r28HZwDjwO-X8Zv{a)e|%L8k@FMUsh4yGCApYuar_j#~a-)TP=9nFxF9>YTG z=!ab$%3!a-aN&nOVY^~0IFylW`{Hg8D9yE0L1d=*s@qlv_4^_aA=kpADS6T5(r1_s zR9Db262U&FZ>JwdioxlLP%4kCQ>g{F0xkALNYe|qWFYlzhN(*R2~nEL6D3UHl#4mc zGt9MQAh!G6wg?|{O2}lPI^2K4Lutl|b6W39%J63EZEHoTY*$hlCMBu9J+KId4_xF? zphI{h^uF@G=OOP3EyBqB_@Rp;3dZ`#Maf!AE@rItu?yEs-AQNlU)|m@t;;TEagq+H zZG^(GTA3Kwa8P5oGGUoZsN$+Q$!iR~^hT2MW()q#o-60?EJ)VIi0?}NsST61-iIjySRaG7|wP1foQ6r!}X6+?~@g2 zy1b;*pVP4auNDb;M4AkxUDXdeVndocb#l-;uA3rJJ=T@dkq&v!DmN2cmA5u^Zjs9j(F_rUG{veo5~$iMGH^9(cZpmRm|4^m~o$*`z$jCO&@A6C=W( zrQ%1NPJ(E1-`|y5H0BCeJAv=$(jV=7U?uIdBE2PEQv0@u^rnh5mZ+ypkq`^W znf^l~CmvA@eRHPmWPH?sGCpcW86P#JjE|bhkgrJVQ2(a2(ks75-a17x`sQn|u<%=) z&S`oZC@_mN^mc6k&f*-6s7>L0+RiYjLGT>??$lO)$NAc?Waco8I%`7`6a^>sxIoc) zL!KvoaXkOx#C%)ZgkOyLrSbg5iTU=N5`HP>&y44nC+6ETPxv!2-yP4tG%?@mC*iv> ze-_K*&Ua;EzSUyFpN;ufP$3x%>*oPo2BW$1pQt{qy(9^}#6@}*=_%85iJp~LSRE}a ztI_g6qt{8;*)<*}x?UpINd6!A~1D2t_Zi literal 0 HcmV?d00001 diff --git a/Estudante.class b/Estudante.class new file mode 100644 index 0000000000000000000000000000000000000000..056f696838548a7789ef14a0d9bec6b3a4bd8b1e GIT binary patch literal 5197 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 tSaT5yUp$H9>Rzr(zEjqs1%W@aRhUe`~}Vp^j;( zyS`#5dLn9tvc+jVs%3|!#YQFz@nqDJ9bX3As2TUT=Bp~?4Aa&R zW3}5bhwqbN+q9$GW4C1>^&N(h%KQ%5QCFTQVFYI#OyO;YiG~csdbiya;Wj64jf)0i zhlkSa6XB@dljQ!bZ1(r1fQ(qJq$53l5~v~=-gl747-jX5(0j^z%tPK5T7;4Lc-cV_ zV`lY%gOXj%Iw+e9yOnGzd!m10BR_QD;FPgr-oa^W$2A8N#*U378UylmVtqFpOyVsn zmZqtDhDs$HRIPxU46|9PvV=w4GF9^l!=D2Znoe;hNfy|Lq~4=dq>0F=xqj&dOZX^l-kX#RaD}0?rMh8DtVlx^W!vgEOcW_#%S!1;hrDBZ zGb&*Ps|7ry5<85u3=Y)3aIJ?n5-Yr=Rrt(=XpQ0L-asU$E#N8-JYPh!4W;(Go!YUn z=)1W6tRn^-|FH*QK>8AhI`{o8sYPvK3=hW9U}z_9_Yqx1dP{8Ka?fL6w)QnJt5?r~ z6?c@GV{(tb_ON@rPw0J#%@g;p1@zq1eI7-ED&S|-O0SMh5H;I6g=1Ak8Z*R&Bh&}u$Qk~oU4eFH9;Z2HXgeh%0#C_^%2P6; z+LVk)HzgzbP05HhkI2eo550|KQ?G?*Nb1r_MsvRU0`L45n|+Rc4Je4)-=$y29>6rt z(~bxk7s&0SKs5r-(f302+V6O;`YSDSI0|*v9!a3+a1ytRbUJU4Ckeke9RE^ge4B#= zzZm0}hU3p<#<%%Q@Jlg%c{u)+%=or868v(E@8IgN_|Ij=w{@1_n-`bS+deeEmCX3I zW)u9=G5*AG{Ay-=TmK3EM2tU)g<t|a@@A{KJV_6%;@`?#y5CGyYm!Z`sa^z>eUUJzr8z+O>AR_aGt~ni~j+M C2FI-c literal 0 HcmV?d00001 diff --git a/Evento$TipoEvento.class b/Evento$TipoEvento.class new file mode 100644 index 0000000000000000000000000000000000000000..b4402fc7b0a3e230586430c7fd724e85dc051dcc GIT binary patch literal 1502 zcmbVMT~8B16g@*fwp|uM&?<-`Sfnj#1r^a&q~IdNLJ8Y8Ha-pQ2us>svfYvpU;HQj z1+5Pdjl^evl=03Kr7tF8lbt(fX6~7L@0{BoKfjy+c!rl6dKl7Gw~^*M!l`l5^jkIV z_;x)lXsq#?NSg;Vb>l^Q-|b8_1Q{;u@dKW&b7v=QI;{pnFjvaw7-sV4WXmvwHn$38 z@{JU?a!a}VYJnkaTE)@}nuN^Pxpk9lp;X)=+-q)>*5l<|zGPYqvv2<6x=6NKw;kJG zU}1xGhGTjljK z_iTyPqK*KDC~SY%ZZha`K@Sjjc!N&&b%5*DY=_qw2G)hY>((~8N87&e=zREq*IR-n z4-?7rmrut7Jks!xsJqH?*z`riz#JYkM7ihj!>YS~$dKwTUSWGrRQ=3aS3Q3(Q9&6r z6{_vmT{p+Ms4$ zb({X;4CyOC{jMzzOT7YQNvg_{N|hynDoff_mShPGj7U+EXOPr<0sX`?K6nh$(P2sKBrS*Fp-6DsUsLz?cH#ngSCF#3Kq!4uroEU!aYcRSC8+Y*j*S zj9Qg&8)H^QYh%KyMB13NK4a<=UEhNwjXGIi0vi}dO0CKrYGE2>urrjpNw#;>n7#9n zb~;gY$VvZdMRLsJ$!SC>vhr$ukfo0C^gGz!{bVR1hG*~P8!RZY=U7xWhb6M|FN<^s LliqYituOxq(Q8(3 literal 0 HcmV?d00001 diff --git a/Evento.class b/Evento.class new file mode 100644 index 0000000000000000000000000000000000000000..652db72d6a685e75f415608a97ae6530ebb9a61a GIT binary patch literal 6671 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 literal 0 HcmV?d00001 diff --git a/EventoControlador.class b/EventoControlador.class new file mode 100644 index 0000000000000000000000000000000000000000..6d56ebd6934fb436694265cda4371131500264f0 GIT binary patch literal 6948 zcmcgw`F9i78NE+32-(Bt#v~>o!9c(^hDj3#CpIyrgO>4+X4gQk-A;~eV{j(JtVO9h*h$@VFA5&HG+L}0&OF9 z!E8qo9U4;51d_ddb7=@{(69z;1vZXbC3CW}G;caNW4>q#bdKA3qc~?cmb?!hwt43* zS70!D{o9g412#>V-g&!_H5_Bf^h}4EI`Y)-_zVi1Zedu#v-N57nTq9FdBgT+kLIR^ z`o?W%QFqIZRa#t-N-x{aMg6?zl{wul+a=e`&|ThDE}ovT7E6X#acJ8s@6|d-qKWbG z6Oii}$I4cWS#=wShlYv1d%8kHmdrU)KzAG~m2A)OELte=cq9v#&3S#^Diw4ioU3OE zV8SSuNf&kQXx16JrAhhL@e9U9!|@FLl2Nn@YE6AkUQ$E+m8JKXKF96C)u9v~6xbCR z`b;FQQ80tpZ^t%tw4(<*Q`o_LiIiy(92$1vVI~dTUnw%#?&!@5My|nYg8lJ#0KBUWyQ?_FW++Sl*2BNNJjvAhs4H1Qz1aITR5V(GG1)`Fb*^F^i9-z>2)HW#u}>@-@TcuDBXLj?;Ad$aLmdE;B0d zaAc;ddRLdCFV5hp6h0}ir{yBeMEYvd4m{p#W1xe z(|Ml82po-s5mPPeXOiFq_TLWp%BDv@nQ9*)usd3ESqm1n*>E4!`jz*g5@hY&b zxk==%mYbVTXVIcsCu=*IV0T1EHSrRZ+ST;xml}Cpt$d8`s(P?$1{JxP8>a~|r0TTD zo-DiaU}Ty^b>5R^L*re;R$3uV_vvBv(yxV=V}KuB>oOJU`%A88-Q^L)u8fmgbEj10>ii4lkR#N{YEy7+YD> zvFrkK#f~t_UnZizw0yCeSp4t%yJ8HI?pE|}Zxw!exkh*VFbp<$Y7@zzh!$M1oh8F- z+>zEc5GT|d3MMU8-y_5SPU5@9W~QhjJ<4u*E;lxjk?HU)4PV5!1?KLOAD1N%t1-XI z@)l#WyJfu5tOaXHpeqPy$G&1M*{)wum{mQkJrPWmmi$n|3o@}g<|}SqmE5s{z*I}S z)VJqqt0(!3s=mHy?@D9bh`wX@Zmz%F!Rptn!ga~a&osP$hF{`$0#{;_uzUv;6~4Fe zmA_Z2$D2I5xsoqdtnj4b`6wtWJ}+Z?I4O|F9L(NQnS?WgF(oMB#X0_GEN+r`7DH^V8x+&b`fm&oNEDNHB zZ*rPj|3FXSO`?n1^vCH}Dg1-`$af>nrow*5cF^!)g&v;iC3$+ujhsB#g>9#A;-QIwy;W?lVz(Uo ztJo*UN2(Z<0)Bq-xOOI`qR?(@IR)59d-f}|+kJr$?Pi{Ze3mNH#QQmXp0mHe`C9noIX($sPV$A|hUiNn z%r8g4{EC9vmkeMg@I1x7%Dbkb8t20`~>k&($*;g z%rfVnWX?}B=VzGnvp9*lhQP~)JY+*2vMT!%)N)E?f08n3mHlmD_KSM<2L$;Q;N=Ea z{yrq=56cLOaOD}&E$cvc&6R(=fxob_iItVj_vll^bhaV>xJ)qu(zJ*#v6DGZ*yGa+2T8E)Bgt;bK@!i literal 0 HcmV?d00001 diff --git a/EventoRepositorio.class b/EventoRepositorio.class new file mode 100644 index 0000000000000000000000000000000000000000..6c5948bde70337240820c68a2fbf4646cc4c1540 GIT binary patch literal 1467 zcmcIk+iuf95S`7H^a5#tLb(PJDWFyuig>{k)T%`wxuP_v?;Cq!w%EIoy-ta$^3E^u zzz6VAh*>){AvIDW#KR_@S)DU8XLjbt&u`xWU=!|Dp}=6nRiVXwlpe=eCmxqt1XhGS z6$`B*p{(6LO05n?o+^|W)Q@*-T{N9u8`jLV0V}YzV#S1A2_2(ZEcwChnXuenK~lYHiKGQ_>$`+ zLI%zhkQYvF-BhXYxQD}{?UzJ7|67+dpZXr^kILKUraX;N%wRc7dq>2s=mkP@llOx6 zhk5^8X=wbkJlS5^X81SWS=yB zjpTl^-e?Bt*T(57gNl&C6^cQzD?$bh)1duGeHNjLvnL-@L6muO`&oDP8F*j38t&n1F5vB;Y>9+uPhEeXOhzdn$0Q>@2 Cy}|DQ literal 0 HcmV?d00001 diff --git a/ExcecaoNegocio.class b/ExcecaoNegocio.class new file mode 100644 index 0000000000000000000000000000000000000000..273234af2821395c542ca19e667b88f402429a32 GIT binary patch literal 429 zcmb79!AiqG5PcKdMq{QbyZ|?xkF$@t9MyV}hm9xnd*RIKwak_~4IptK@_;Q6eoZD2}5G}&~ zgL+bNp-dj%H6kwAiyob}hR`|FM!N}N_b~a#vzCWIx|wOr?2|KuU`uh}hZcB?8?vg1lN zL{r;TDPL(HW%&F4Q*VI-kmUD|2&P WTf#(-ZS=&cFMXSYc;g+Z0R~_9;b`Lk literal 0 HcmV?d00001 diff --git a/ExcecaoRecursoNaoEncontrado.class b/ExcecaoRecursoNaoEncontrado.class new file mode 100644 index 0000000000000000000000000000000000000000..1af8c2c46f8d4b303d87df1c6a24348c35dda1ad GIT binary patch literal 468 zcmbVIJxc>Y5Pf?lIXyoTBU)H#=LdML7)>LwI)fyVezP|uD|frHw1+EmJuolS`_6olE0&kR zV3al9$=t?h2<$(|Cz%$~%+gWKl_iCWN3X3BXkBWfeP3YrDErZkz0+paJDvzMu5C^U zRV#ce3H<8-$^G+^5l42GPbo-bfd#w2Y>v`S?GsD2)-;l!N%tyLd>ks7%{d^PG7P5!cl~T jeX__l7s_?!drK8Iu*r<|*g~5-bvSMcCZX{*`v~1HNve40 literal 0 HcmV?d00001 diff --git a/FiltroJwt.class b/FiltroJwt.class new file mode 100644 index 0000000000000000000000000000000000000000..3d4b20379089b6dadfcf9d27598d32ccdc4a0d8b GIT binary patch literal 3667 zcmbtW>sJ(I9Dd%tFv~I^j+L!l#L8k}WlGYL%}hZPLqSneyAHcAFfcnqGqWh&wfp^k z(Z8WDol_KbP9N=@KJ*XO@$|g20|AS+$IgM--+TGpp5N{LJXiCw!|S&w2igc}|W;x210m zyCpdy{S)$qDn%(?=?iF83Zw{u{Ls3()VUp6zU`T(YFCQ_Mm3QBfDA3$2}Y$qXP2bF zfuZ#*2xO`1+u^)f@_cD3zH*JvJXI%ylA9i}T|0bK!0l|$nICJ0K)a4KniOT|(2x<>Fl4*(ShX@P{gc+XL*I=duVgu6gh{RA%~UvL2Lku4 z@5tI9()sqIGMw_tBbJIE!$al`!IW2Z%E!Frh!r}ArmY#v4=s}b&N(tPr^0a7Jj{=Z z1vlat7xQOZa2xK>a67GNkV(g#*ecLExh&??i9vyzI`dRJXPJ)WPMV{kO0!}H+XRG} z#ogGh;T}4$_KJ>saUY|~q_Z5lbF(sjNy_l}v@C_RGK0K8i)p)MdA?^VtT-8T3+U#A z#mw^D9)2>|A&@bH&2&CQ0t$W)IJmD@7fTD8U(4T_iRG=3}yFI>_KLbuTjK0GT6OSwnuUrc@0zh%$qn znzfY0#tJ}UgNgoVXq9G;TC;H`wU@nG!4A4i3)gZ4g2vOJ0i%Lh&kba;?q*GE|CD9B zMO7r(gXc?fHne$L!;nD7T7TmVT)w8^n82ne=IkJY!^;O5jL^^hRVKV|zsRV1u1eMu zI!19)pqcr1SXyP(qwZaqG)qCPhb;pds2z}&FZ~V`$kRH`;4EbY)$t(8Sd}1y>m+g( zPvcn)&#+7yY=SzTQ)X_anFr&>ECbu0KR{%;E*smE&1uHDV6TtFOzBDloimCf%^cqRN{zw7- zWh<0X0%(|{y6Z}|Rsk1{LuKWN6$G5!<<$s9LR)YiFKU=?D00_8NykfgS)eVB9E&fs zB|G!2OATHPe6!zk9QI}wC4H>oRW%Y{Q;D~t?Be!)t(~=U@?$FTF6g+3H<&p=edg@y zY#^&w!@{Q2g17LFhPMT7Tic9QbT1w6;yw2CrA8_+P~Sk;jL*7mxO^VBOVtrGzO1bT zy6PC}2XoBHaW@gYz@pYFa7P{M3ftAQXe#c7=}@&7vM)Uc*>$*5!H(Z!0>uVkyhe6V zRom*k6gYl;ajUO4lEze$9rdbyNzzGHWt;NV_xK9!QG-GtccRLMQjueJVDmY(-*r7T z_c?SF$mr2}jCM4>z6$M0UL_{e?3Gx8V z32uX$5edk}TK|l-y4{P|B5<@|bS&Vm%XqF}bVkHj!RU$z9u*eQa~T5#V`oGZ3&w*H zv9n<8j);80cz6MQm(fu$_D00!g0U|m+6u=0h)5^DOMOQxl95weB1G<_U0ZP%UD-># zPLrDE`d{bVW#?S7IWH9lxS_CZ~ym_nCQh$`qPUM>|&?ijpy+Y;n@uj4`ZIM#0vyX zLG^Uat7WJz#!%5yypIovfTBLcN7R{R6aSd-rKqinPe`Sy)5oWzny4v{&+s`x_IUFP td`W;6%o~xoieAE8`}>O#P 1778625373 -0300 clone: from https://git.morpheusnox.shop/axel/FocusAgenda.git diff --git a/ManipuladorExcecaoGlobal.class b/ManipuladorExcecaoGlobal.class new file mode 100644 index 0000000000000000000000000000000000000000..e4fc6c94dd102fc1e5973e8c87cebf55afab832d GIT binary patch literal 5397 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 literal 0 HcmV?d00001 diff --git a/RequisicaoDisciplinaDTO.class b/RequisicaoDisciplinaDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..2bc1531eb386a04913c22491848a081ebb5693f9 GIT binary patch literal 2167 zcmbtWTW=Fb7(L_oo~1FtF>%Tz1ybw{u+Wy?oI*)Lz*2w;qC9~5FtMk}lJ$<+T}SGF z>O+xgRmwwuKz~%#GhRF1SZ*Y!rP;accfQ-4?_2-<&+%UXen2yal)&AV?l^K^`E9Af zsMnT$01O1+Kr}5U9TFQEf-#OIz&YlW(B>gtg>6Y|%W#F3q;LrdTEEJJ7tBV$9<5ksy6|X+EaL%a9 zM>@7O&-`Dpa0yohwrblSdIOEA-scZwcwi!6%(Z&c*tl+C88-y(e~gW$K$Z-U9`9(O zmdMwOy|=0rHR`X8iJFBK)CHb=go$Z7X>`r?-ROb9&q<@hOG-fg*GYX>;M!?2{Uig~ zQIQG~>?~picP!X&21zBT^h`wux_u(d!|EQWfhHr$gYaNATb~n}& z7I7cnnTPDkqkHD*d*n!W-LKANIP9 zGt)K%nqt~iVJmREkq(lO4Nrz)@?eLkkTi2ye3i$Vz;)9t8Yku2FvZ$n zsWuXYI>&r*lsPIKiyTV=R@3)YFz`u*Icy57j59aIjZqSE*b=yMwkX*bXN-%uui+kx zdWJ;LVBRzZq>$q-%hNpP0!JR=f_Z`x>;i+CJzy}i0}N)?|CvbBIx_f#mZoSg$J*zp zX@zovbH@GyrQf+o(P-?BdD0J_fFeaIV*}$l2`NuPatX-nR7hnKl21UasgT7NjwYi=jsmyR>+5Qu^?bSX?_N_k3_U%3@b~W9{ zqFv4OvGkrY$;%!)XE<0ws=|o|D(RRlce!22kW?TSz>gC6IRZaKphx%kOyLWB$+=9& zz9;Pj8vIl601xTXBdqgHk!Krtj3=n#DfesCW=eofh`TZEW75Zzj|p$+J|Xolu}H$F literal 0 HcmV?d00001 diff --git a/RequisicaoEventoDTO.class b/RequisicaoEventoDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..596c33fe2acd987908c67343236b17ae1a41fef9 GIT binary patch literal 2940 zcmb7G+fv(B6kRd~8Bj2gKyd?v255{RQPTA8T!Ey}I*@`(+vMqBYd}Frt|T+lFX~Gl znwfe!!$UuyAJyqPl8p~Wp|NL<&qaH$v#(3~=ik%60X)QO9T^QPRsYx$2ewxeb{I8k z!iyZ&sztuFWB<}{LZ>SHXD7B7`RkQ!9a#;dZ^VhPT;Uy1r0NGX4Fi!AHC$iAc)9a% zHwql@proO&(;(=vy+^ct*M91Gek3Bt_d*RzR5%hrB&-wRI<@%Ns`6132*-;;Ys-&T zdDjtfX3pbOeyyL!8m!r2HIN2t$VN_`)4g)4dvu3))od&AY@tHoWXWra?_ttb!*waz z@A_5YYA|X}Sas^I_KRlG|-O$4f(R;*;|d{eLJWKhEoPz0`G~yk^A^iDtu^QNGjYXaIaC2`ZETG zVaU}D10xuatB(xiCFb?Eu_=y8xdj8G7?Z1y4U9{TT;wM{jkEZc4BUdLVYQfU**nUw zlp3Mjp$HFUlr;1emo_E-9Rtg-nEqbzH(ARpd*QM)CuAYC^Rd1E#;!)CrB@REzJa^= zRKr@2@M(Cw@PXqw(IXANsTZ~iKv8L*^qR{Qh>l-v(D)=JnHQCp_B7l)--$0pAdcR@#&cJg>hN_6~0yDt}IM+>J|CjAwFUJd^YOM}u6bNL;*qm^Ss}Dy>bi@LFOaCoED<F|TV+I18O6<>OrGxs%PU~xJ;r~r8*KCpY>e-@cKmNKM>0FQd5R*?twaKB zC2fo^ua#EPRHfU%@3BZH)2h&wRPelA;GJ)<-K0oOxnc>n+a literal 0 HcmV?d00001 diff --git a/RequisicaoLoginDTO.class b/RequisicaoLoginDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..5d12a16e49a8da5822b7008a61518359781e0984 GIT binary patch literal 1834 zcmb7EYflqP7=ETuTFRaR6~W8FJJJ?)@p!jtB3>d%y+jEg^wZEzU}d|5yHk?$pZuVS z#)J?40DsiUd1iNMw}2Qv?7TbgywCGqXMX*+^Ao^BJSre3u+Y*SSFWp|EmdT?Z5bHP zciTq0Z`G%+7kMqIn|j>~p02zuU|3+{quiFRFN1Yjv~<`O$g7U@e1S@{fA-FVUa;N} zIQh0q%8ptk*P5>$2Z1)ycshs#E)%dRLnGa7>3i*1?Y4MiLg@u2a-UgZlGOfW_)424 z#*+GXZ|85OB%||NOkOEUx%etFOFW%uNx~)bbFzz6a5z3|)s8`+2nhIAWGq8E; zmh@L;=-GX&w18s{#w?&{bi!6)ou?g4VMgF_wRwa}Hx3M~xFMqr8=k;WwYF^OPdhk) zzXcYLNWUyF!v0F1T{vFN)Zz8oN7XWo+I!1>&cQ6s3oIRt{UAE}d*B70c_c8O^_SK? z14%WtRe=kGt$ZUx*-=J?nIS4+2$vmPz&h{rIOy=25DwSF~Sj2UK(Y0L$fv?##ylJ!0?VQJIHM{uQx zn*w9;g>J+bWn7@luOi?q2Z0J>e<~{Ap1@qcDu*Ok0B_})!%aCJNj3PBJS(`)D>cL+ z%%Ng0B4vTQ5@nHcH2w$5$Q^^#aJ9OMy@RRk2pM+miV&%V)#l-l`!{@3F&|fp{fplm z5rQ&b|Az7x{^T&h)e?auld%TejrC~vxc&`UWiMH=M>ff4!y%>hKTn6TtNIR(1A9Rt z13H0|2Y^lipW`6=VP`?JIFo{^^pvAzvA(c_vxlL0IdKugxJ2to3)*c;QgR!%ORa6- zc>M?F>I>gdu3!0%%2%qg1?)#s;>iq#rYXo~1v@a!%xxp8cAI18z%qlLYg}`vV}Y{F s`2V3!;0A8tHttYY;_fc);{i+Zko!ei+d1NM5F-ZX#!gLg(wmh30iA!6oB#j- literal 0 HcmV?d00001 diff --git a/RequisicaoTarefaDTO.class b/RequisicaoTarefaDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..7e6bc0018360e8635631f4782142c4d289b5e3c4 GIT binary patch literal 3400 zcmb7GZByJ-6n;X1z!J(!3+{Ha+iA$Vj^hR*uwBR3P$FPoc!4mVi-v85%VwQhfhTMy z@Xa+hSms&#^fTS|GJO{MEAsN%DE?ChvUxc;Re@=22`sWr*a6 zdrsiVT{@eHh*q?kHMcGrt0IuJy83@%-){y@Pp*3#p7cooA%54z&6~o%VPFV`h8xGlcM+{TTrx0Y!(cR=m9o*LNXZpan zXi|{&%1QH|PjR-?&{;7Z%9wQfn;5S}=Yf%H-uSHLNJWT1jOVa^B| zeI$cD*Gi1Ze__*YdUbic z*wR21A8Q!gX?xJ{BAo==dG78@GqQdt9IGMyxti`X+)l9$R@cm{P1(LtJ@6s=@>6+O)Km$bVn~%o51+u98pwH&V*uJ2 z^&hmLtcNq@Ikp_4aS~97dwfIhQ&oSyFNI;XLn>6F(19@fSHR(N5#sSN;uCzwn_4uk*jUF!ry%2aD~=?G>o5>S zH2?l}!TGG)k(AqsTuw?^$Y=^OndC%qlB7$eooq0IWGTzZV%F_g;&zN5Ur--MVzvlc6 zzQYddug?8|U8~fGUpKxn3MzqOAkrJ9Hqj0v50xU;o3^x^iMO*t63K`Xkua6rC zQBEFG;Yy#-zO%tQW5~DB5a^w#QzebEnfw}`P!a@MyV~mTQJ}uQF%W3%yOg@9V`dIb zv;-C+ZRtyy$K=1M*pNU!a)~kn<#kox{A`3{T?o979;0nXps8(2KLwW7H=pX9@>uG`gm2 zo+?xFI6`*tOki>7{8;&PTN;;XyLlXP!=^BtO_7{BSQA*CqS%6J0baWsX!mI1_$OU? zwDRu)Hmk7&-ae?d2;|9yUn7#YE8D?qums*bII>4*acpxXISbCsHy7xf^Pz?=$Lbmk znB_Qk4dDEQD}i||FsjGrd9I%F*Z&StU~xkDj_c}ey}xwE=`P*u9lH9IZuviSEBEMD V@6+`jpsV5er0I)^zG{k>z+Y)FtVaL< literal 0 HcmV?d00001 diff --git a/RespostaApi.class b/RespostaApi.class new file mode 100644 index 0000000000000000000000000000000000000000..f874df0d081855652cbf7a55f811bfe9aa80bb54 GIT binary patch literal 2153 zcma)8ZBr9h6n<_($P2546j7>GTM%~_HKO(nC{>|U+W1nFaYp@gN$$XEvYYO1?DRkN zL!BvOhtBi|^hb62+}#Zu9L@@K>3Y)C#!Ag?(nMV`7MF5mJFpprFMArbo-5JhARTa zy0hcTu;(j*Y@xbzCQ06SzMh?o=pAMu+OOUI|{81}0z#6hbe)udror7_f0OD*H$^PO=)gbI@glT^a1^iZT19 zwWakg8MuWzG-{64JJuF!p?>bkHlsc_pcd9Et@aB8ck!jb%7|)H6-<(6y%Jc`4Vk+7 z|KgUA#jaffq}yt%V7}&gZ+qRL z35aT&02}Pi4HYzfryF{H8nWJ&L6Bx7Nqn7(aDa90fy0oJl1z@{egTgJX7uV?NjBPw zjy76dlLB*m7WkL~#+K_UKQga^Je~+#JJdM9Vn5zIo(Wt&U6ef-Cx?f)JXqr7WZ8LH zRP>~g%9F}~%SjIw&lNpZ{4J0^gR_*3B_>fO_XnZ`f6x8}@zSnL{fUo0VD@)%viO8= ztr0|A=G%xRBRjyABb)-Mt9){T*PvhypVE!k)Mt^YYvgKWIr|UHX$zT@g~d_NI*s<$FsDjhohzp@>F#pidKfnryq?F}v$Z z{3jl$goTs`egHoTac0+P7HbtL5)XIo%c$!xA7*Y=PND0)&k$$e?SV!E7WgrC>m`Gr?)h-qk}@gTS(b3M~4* zAF3ZFqeB(#%fo;v8+|>H!GVl?vrab+;B5ysEHk_8pqkCzaZt-MyiuhI*WAh1-_()4^J})yv~#1hp+TY)ybkC%WxQ|_(osrmy@w~E<-cm{;y-z zRq-J5$BB;ekljGWaeiaQ^0Qppg6jWK<4hgP7VcER{@n71Uamzw)1cm)_Vi41dTh;Q zfhAglwn|&0t6y%_$c)_5`k+A4iVS16 zdxH0Yd639~uHgfQ8k+N<>%ea*tt%WeqVu3lY|TI|Rw^;3>TaJf!#OCy2VtABrqmw2 zO~2*-iJR{B6ie>SDH`srDOTNPd5Sf+S(#$pZCX=oyk=znCqFw$hhLf&rNXPys<@7(4)+uwgqe*t)o*BW9B^A%Yu@qOV~TzG!N;*M`u zOO`K7AB0zzp3m1?*J5pFOGBJt@Q@$#Qk6UVWK)r@#SpV;$(B1mZ2PY5?3)a6N7e*G zLe#ijC0%K_o@CJK!nLJEyWt3G)A7Z=a0!+x6eIT?Z>!Q0X)p}vNFYhNY&+szqqZm9 z9llqkNZGQi@aisiZFLSV6<}D0hNRk!=tzaTD>~B3$;g>t?Ie`#H60mTVo3Qi%ppsy zyP;zY;|!~X@`ajb_ADuNz`X-i7DHd5xTyl%(lLSC42u^Iu*r}VUmCpXsj4C!+}b-7 z72hm=RQ_jlOrgNAc2WPm98$z3+p+y+hR@N6tv8E6{_m#!9L3!X`Y@-Xi20yZyTrt| z!atDKd+zd@@P$iNXSQX-t%wa%MfOkku;pyy!)%r=KEjdqh9OycQJ(l2}aP8N--unQBPQU_{MeK+V>84lwkSWJz)) zqa=9-ebaG-8{{H94J!=OosRVg-!5Lm8pHVcrbMT(Q?v=cF1Sa7*hjQYAghL+c3Cyc zfu>0gG|h3KX?7^)j8NNi)(3;|Kb`(~xUPs|##P4pXcO=OMvCUQnT z-o&VpPc)G~A)DySb#hpsUq%x2;#4F_iX=^vA&H|zYYcaZML>?KdqOr0Phnz-{sfot ff)Y@+46m??b>y)@=SlJwaxG+9$g_}T0muFV`m&9p literal 0 HcmV?d00001 diff --git a/RespostaEventoDTO.class b/RespostaEventoDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..a284b910ca1f2ad6bff28bc63bb4577dcd3fb25b GIT binary patch literal 2273 zcmcgtUvt|;5dWPMTe5v2acCOUkcNhq+DcQ?@*nko(h`H)lqQo0c)D0OiCRT6(m6AH z6+QzGbOsMIdEf)^p&0gbb|Z|)v@d;F?dr6@-Mih}pZ@y$ z0{xyXYQT983l(j>$6*`m0!P(Y?{n0Qb&;cPtPeQ2PO&uJO2I~Tybn2M@D80!#imU2 z)QpcfF5@c0y=M3I+u;?S**+BMp*}amRI}C5(bqVdxW>?av*;b_nEYuV!jxg5nXB*i z{&U$=Uh4-P{9}%F++eu>M!}1sQMy|}6sS84zvR=6Zc`5OmR1Tn*xIXM3ZHS@#OGOo z_h=#>OLZ9gPeme*q>>4htF{vllAe4N=qq;qKZA5#j|u@F#IZ_MBKjsmTEi{ev2dGV z<#d>m0Zk;`c~kX~C&yjfqe0pqM__oFuUQZs$1h~tcyEcw4`q6}8^q&pCR# zLYk2-yT7CH8yO|MOV3KSSi!k$1@vYWLKY?=Rt{npLKY_>b`DZ4ggBFsY7SB>ge*-$ zYB@-~5VAZ8splZP5VA4};W@|*E>Yd)sDk+-uTDZ{UO^hf+2g)krAFw!SndhIF$tnS z)TlEJqT<#lPafm~zh*9{?aYJLaeV}8Ql=7l+V0v3+Gn8{k<=&TtB>@Ibd~f?_YZvP zt_{&}uMM%_t`D*3I@3cqu2UXj$#p72EW3_1#ER?KL#)31-(7t{UoP2nIqBFWHi=GA zBdL>ck{Oa|d`Zs|zQWg}FVHdWlMllKY~mpv;TvqBgKzO2y7XOtd5mp*4~I5Q8>YBs VfXw)q;W49Q2FHwz8JcWl{s9U<&X)iH literal 0 HcmV?d00001 diff --git a/RespostaLoginDTO.class b/RespostaLoginDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..bedb8d0621fd2f6eb675baf430bb530f654195ed GIT binary patch literal 1571 zcmb7ET~8B16g^XDx0IEZ3M!)D2S~dhD}HPJilC9CiV?ztK25umvasE$yHgVXlMj+e zOnC4I_@j(>wp&=RKzP{9*FERVJ#+8=`MdWUz;jd#q!`L|*|d2>_zoALYCGIlu4g++ z+Mh(&lA+>N*>L@(wG{*X424a;&25kS4LYyOz+p%$xg~stV)fu`RRyl!s4xt4Nd<#l zJyq*Xd<8*zgdQoCdy)1pN=FQU!8DOZh9O^deet2)tchTa*F4fHR%M-g>pXDvI^J9$ zy0cwDiwv7EkY&g!*-5KN_Klb*VwB-!>2$`fft8-gWH)%Yp%Y^0E0vcu`Iw0dxXdtr zCh}#5jQHB-UdS+7O8B-?+Z1(GDSy`76DGzn$?)nd+`Y(1?V0Pl>IK76QZ0V^(``BQ z*5&ma`f$_4HB3cDtW&MM7ivQ~A9=u=LWzL#%B{+FP#14q{l=q5D|B8LAmLt1sX`U- zR)-+W!NQz@S%%4j5)Il^=}lpG+=(Mi+{QdrZLQ0|u#-&A^|z_m?N0PN?mM0cr>atJ zwOf^hNnH;P)MDV;x0YBEVLfnLN(M>DqQ}E9xe;@GNznFCKU7okL+3LnXR$zS5p`x| zzXkIQgY*@sah82w1d*l)4LoF+{_n26k~Hv`VdCUaDvXXJH0k^!ut06pN5z+-rlE$V zSyA^CjTt&gL$_IuR?{>x8q?NK4E~@=3g_Y=5W!Hi0}3&a?*SA MMll+#-z9pLe~h(z$N&HU literal 0 HcmV?d00001 diff --git a/RespostaTarefaDTO.class b/RespostaTarefaDTO.class new file mode 100644 index 0000000000000000000000000000000000000000..251dc654cfcde7f13100cc64dc68c174fc46e993 GIT binary patch literal 2281 zcmb_d+j7%Z6kT!>OSYAZT}*1yrXfJF6@m-BS3rS;i>V=$Wb)8Homi)dz>!?(n3?`a zzoHLirk>8^p&!tX>U2r6v8t*WnCZjTK04ZKU(P;z>CeAT{s3?jyE+OQte$_|7KhSv zgbdZt5uS4UZAba-XEGf4p%Qx{kUxm+y&WC18kU}mm!jPl-XRToe&A>*xO~*Q(+|5U zaJ@rYLs7YE*!MM*92xckwtcr4YC?>rTOIF?EVJgV}pKMZ>Ez8hVwv;P{StI?nkc-Qw; zr~)xaJcMQ3z%3m&d26Pl6bw0!9D?M;$Cf6(#%&JO!Nh}xSLyR|y_fzA*-oq<3eV}w z@M72ZUknHKsdbKldp`~2c08~H=ZxPX%?_k9I&XNN~u$pDGkaBWtFlF0D)Uf<-9xk$JX*EsnzoDl=Hhx4-n3*tX&+?gr~xizjP4YGh=Vv}h*)1XaU9fO*TRG_6{ZJeNe8cHKweN5XW zT0f&MQD3)y$0ydt2vzIK2z6_7gk`HSJ3_;1%#E;OHHsswS`B@KHLGEau>R^lv-+H0 z&Kta(ESq9bq7Y?Dg)&cBpv>Y6J`4B~Us0c98Fy%-;V!mu5BKo^57EIRe1k5(M_(Re f2j8N>q?s`NCIgg=Pcl5o=p=)aj7>5$@yPrQhLzFW literal 0 HcmV?d00001 diff --git a/ServicoAutenticacaoUsuario.class b/ServicoAutenticacaoUsuario.class new file mode 100644 index 0000000000000000000000000000000000000000..efc883fb2e94302ac77be62f8a6503b504ad60e7 GIT binary patch literal 2281 zcmb_eYfl?T6g>kDix)RIZbIumVw#Y~HYA&*O=+@e8X%C+m`5=n<>RnBmPW_#Oft;Y2KpOzWt_!!7`=)v!^l0UWPG3DZuyiLm2HO1g7$@tVZ4(=7H1iT%a!dc zC=oeW7-bl*NhMa3gB=lW@|}PpDb%#bgKbKg*|!ff@t%wr+`+EAN%|?I{ECS8w7YPIflMJJ~Qu*^o%RWQ7H}<6Mqb_H^bL&W|LLS}%|?2-haK3-mWZ zfX0K#6sF@r3AgZB%V-v#<2GrxeYpkXZIg7mG@({oisbT36rUEpJjUIwu@RCn!5IT4 o9U1y(#jNh*YkHg82lSq!Cr9hYg!Bzou!=Q0G1Xni1~yUr2j7mIj{pDw literal 0 HcmV?d00001 diff --git a/Tarefa$Prioridade.class b/Tarefa$Prioridade.class new file mode 100644 index 0000000000000000000000000000000000000000..603d7094e77c7e4208a42a8d47bbf81da7a61b4b GIT binary patch literal 1403 zcmbVMZBtS~6n<7-F5p#>O!F;!!2&c1GkXC|GAbrOCy~Um88dg!KD+0fea_iu`T6VX8GtoB(=fmguUgGGuM4xrMayZ|xak;; zxS+AdYa(9aw%Ft0ZQHPHwW7hzFnquddAz~RdOTycn+%@k>Fm2SLn3#{bV-WMXI^9} z)}79k$Y?unUu6oV48vfiu#*p$)482Ykzx7$f8_S1stv<5oOK3QBwD6JHm#cQ!4m+( zsE!b>FnCivm+?sMqOhW48)iM3jh6l7dsT-AULQ0GuIbPu@JTSO!zY1Xg6lf`@XFZ@ z9RUn7jN}Yc6xz*QVVC%BLokGLR+Tr(+%_auivhSWO5~hH^EI z876Nq1oOh#w`$wmrfo;qKjNY!DO6IMyW7@4(Q4aO@zRhtGT2r5l60nWi$>k#PTQuP&Ayy6LF&?+*Xc|> zYnsAVBt=U@iXr?j&xDk4@$MLW1$v;bt(LQqAbq*$4SO~wr78ikBuHgRi^`G=f#8%B zA$htGzEww6l=*7_}StO_iS%nr`m^s1ii$E{Y zL@!8Ja}8lx4(`(DAHaN&^3vx=1kqkitJDdZZM=iI${Sbgtdf#M^RDSr#1=o(PM1|T zIXh?MCpjg0jACTv(SZ<)onrY1*x%zM6%WbqlWgv)O8*Ftm3@MzWaU2$LlSFrIqPaY F`5V5fM9BaE literal 0 HcmV?d00001 diff --git a/Tarefa$StatusTarefa.class b/Tarefa$StatusTarefa.class new file mode 100644 index 0000000000000000000000000000000000000000..554a43b88c6170d0a82a17e9cf10654e43cf8ff5 GIT binary patch literal 1433 zcmbVMTW=CU6#k}M7UNr(?-3RAibEM{36`{qwl z`p`yW&a}i>?hxADm?J|ph$3Cg(87Z zf;kmF3H%b=P~nGHu5PLbV3c7zXPBbUY3>QD#P=G4A(U%Xd85oNLt^PGg6%Z zSrVpWNt2ExIRe31DMs>ilU7xXQQQ?m9|_A}=^I!jH10Y@@C1_%m~uN{+5s~j2h2KP z-s^w`WNz2fa+K|jIb7s@+=Tl5Z)1!7o36t|sSc|wy%Z^>S U&+weA{HI|^VuLPc)7ek{220&fYybcN literal 0 HcmV?d00001 diff --git a/Tarefa$TarefaBuilder.class b/Tarefa$TarefaBuilder.class new file mode 100644 index 0000000000000000000000000000000000000000..cd8c78e15b04f5c89429365768db0cad39e5cde6 GIT binary patch literal 3588 zcmcgv>rxa)6#ja-4D1d;h?f|1K?E~^I#JAZ#V9C3T!8?=5R)IxP75uwGt^8kDc>Xy zkOxSrOqnuOK0qEIkCV#j=@E9BDR#n-{OIX9XHI|T^ttZ-_0Ox<0A}!`g%ZP!df0IJ zwg@~fV%79`prr2#dV1Uw?mCaeQ$A+4*{1Y85n1SFIQ5M0bJyp=w!6IbOw<)aNqP*! zwZjilHG1!-}-15cUAP5y#G7MsU#19)=;ja5Y1R~-}cyy#!N!9d2 zhJH`P^+?t^y_feQ8Agd^4A*OgOkX)TqETbg+9aLR#SX6};^y{ryy9`i?*}Rp+nnKy zxvIXHTMO&lzel!{l&6;Xbj}2^#}= zi{WAF260OJ@|uky8PoVwXXj@O zf9E7lHkEQXMHG#-guGaew8bm88gop^^e0`1eJV8Fis3Z5Fe6h&6*CrYwKYC-!p3cU z#bE7ozbTfVGF)zTl4*|B9LQnn!gp=VVvgZlgYSyDFsO6&SgIX*ixqWZs_SA8%j#V-J=9=~*IczozRjeYuXBtFY#sa>!ut@oL=w})1hr7Zx zH#DA@=XDiE&$WvlGW^`?h*a7DF7UwfMLbpu!`@b!FNK)n zzP~1^;ScuWK_8YFeoC+1)@>c>&9EyYW}4}@gK?&b!+EADia8CZMCfqNBxK7#(R9m1 znPC$&aTWuboO3>pV-Z{UhQa-h1xFD)tUe3tG+qlKv{oS5(M}GudBVbX4C9%I=f%*% z_cT|I7o|~Z0#3!dL=IU9V}*;<9J{El`cTqCi71OGz4y^x(z7VTqp6hP(bUNBsHbOm z)Q>Yf>dYA)_2?tK3fV&gpKNNi@CUU0k4@ zx9vHTP-l%u3Pr-H-#*j|G_t;6e`oxW!uTczDSm%~ zU+#=QS{UENGsQ0__!W$G^3Ql-e3Kg~ekH*lz(<|%ox=Dg&r1b+~do$#j$FPzk)i z2(3|Ct;;2>Ha&mfOJX@@n=)IX@D=U= z$EkEvl|8sez$M&oyWl+Ww8|Q-M_49m6x~>%-)gIO&SQ=CZ)vALI@qA{eT+>!q1N$3 Hf;9avG?6Wd literal 0 HcmV?d00001 diff --git a/Tarefa.class b/Tarefa.class new file mode 100644 index 0000000000000000000000000000000000000000..4ac600dd13a9289a68cef520ce0ccd3ee2fb6fa4 GIT binary patch literal 7164 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 Z(kJ+o&$9hD_#HkwKg>hOQT(B&^aaxcO9B7@ literal 0 HcmV?d00001 diff --git a/TarefaRepositorio.class b/TarefaRepositorio.class new file mode 100644 index 0000000000000000000000000000000000000000..5c862ec072c6bbc99f0f28714948134737d9923f GIT binary patch literal 2002 zcmcIlTTc@~6h2d+m782t6ueNhQV?_nU(|X-!GxqJQlrm9_jDcH&NMr-kcJSS{YyUh z1N>3OGrNVBvI$$G58LjZ`}xk9Z+`v$@e=@^!~Gm&7_3%R-QgZem!meJ%cT*%6JSGW zVN@WL^N|Nw<2!9h4*D64@9}-^_*{C<``taPnjB;qlvLn3x)BKJ)dF6}0~LIATyD5i zSJG4NZaZ?**|MUOxJ?EVH6h*C&5c$axal$|ER@@sD#k`GEykkIR$3O?lo$+FgeSQP z17uK6;qt7U*f&!5E_bojbm;|!9zMn;s%Lx)%@^fvbK9Q5Kr@&*Q}&v4D~75e<>!QA zQspkh5n}X{TK@KbBKLqyR=1j*j1gEDx+)sJklapg#69&nn}pIjt;U8l0eYOllca{C z;Tus$r>v^nCkIRdga55>5A9CxgtQ)Y{3Nv4^>Ix~Mg0pUY0Qtxy=?x65Q8SI*1$gZ zL)zH+!(zvh6`$r`K3vWh?YU`zV?`@R4En8%?9ajSHJSrN$>3dDSmG0PKF<69G++ zLHf$T5RB0O05LS!8)+0So~Xtm)nLY|U_4S!BzaCos!MR0lEgu;z!bR*Q_8FKT+=Y! z8EPi7zYaG}>~D74--_%<`=Zpd6e}P3%u#j6ImWtuZg=LOa-kpY&~F9`t*Y)u9$Bhr Rp5#S(hUk3(?!oe_=|BHCUT6RS literal 0 HcmV?d00001 diff --git a/application-dev.properties b/application-dev.properties new file mode 100644 index 0000000..065dda3 --- /dev/null +++ b/application-dev.properties @@ -0,0 +1,6 @@ +spring.data.mongodb.uri=${MONGO_URI:mongodb://localhost:27017/agenda_estudantil} +cors.allowed.origins=${CORS_ORIGINS:http://localhost:8080,http://localhost:3000} +jwt.secret=${JWT_SECRET:8a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t1u2v3w4x5y6z7A8B9C0D1E2F3} +logging.level.org.springframework.data.mongodb=DEBUG +springdoc.api-docs.enabled=true +springdoc.swagger-ui.enabled=true diff --git a/application-prod.properties b/application-prod.properties new file mode 100644 index 0000000..aa893be --- /dev/null +++ b/application-prod.properties @@ -0,0 +1,8 @@ +spring.data.mongodb.uri=${MONGO_URI} +cors.allowed.origins=${CORS_ORIGINS} +jwt.secret=${JWT_SECRET} +springdoc.api-docs.enabled=false +springdoc.swagger-ui.enabled=false +logging.level.root=WARN +logging.level.root=WARN +logging.level.com.agendaestudantil=INFO diff --git a/application.properties b/application.properties new file mode 100644 index 0000000..ba96003 --- /dev/null +++ b/application.properties @@ -0,0 +1,13 @@ +spring.application.name=${APP_NAME:Focus Agenda} +server.port=${SERVER_PORT:8080} +server.servlet.context-path=/ +spring.web.resources.static-locations=classpath:/static/ +spring.mvc.static-path-pattern=/** +spring.mvc.contentnegotiation.favor-parameter=true +spring.web.resources.add-mappings=true +spring.servlet.multipart.enabled=false + +spring.web.resources.cache.cachecontrol.max-age=3600 +spring.web.resources.cache.cachecontrol.cache-public=true + +spring.profiles.active=${SPRING_PROFILES_ACTIVE:dev} diff --git a/applypatch-msg.sample b/applypatch-msg.sample new file mode 100644 index 0000000..a5d7b84 --- /dev/null +++ b/applypatch-msg.sample @@ -0,0 +1,15 @@ +#!/bin/sh +# +# An example hook script to check the commit log message taken by +# applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. The hook is +# allowed to edit the commit message file. +# +# To enable this hook, rename this file to "applypatch-msg". + +. git-sh-setup +commitmsg="$(git rev-parse --git-path hooks/commit-msg)" +test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"} +: diff --git a/cadastro.css b/cadastro.css index 9ffecc6..7aa8b34 100644 --- a/cadastro.css +++ b/cadastro.css @@ -1,103 +1,113 @@ -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body { - min-height: 100vh; - font-family: 'Poppins', sans-serif; - display: flex; - align-items: center; - justify-content: center; - padding: 80px 20px 20px; - background: #f5f5f5; -} - -#topo { - width: 100%; - height: 50px; - position: fixed; - top: 0; - left: 0; - background: linear-gradient(to right, #c0392b 47%, #7a4951 73%, #114455 87%); - display: flex; - align-items: center; - z-index: 10; -} - -#textotop { - padding-left: 20px; - font-size: clamp(22px, 5vw, 38px); - color: #fff; - font-weight: 500; -} - -#log { - width: 100%; - max-width: 360px; - display: flex; - flex-direction: column; - gap: 16px; -} - -.mens { - text-align: center; - color: #1f2937; -} - -.campo { - display: flex; - flex-direction: column; - gap: 8px; -} - -label { - font-weight: 700; - color: #1f2937; -} - -#emailid, -#senhaid, -#nomeid, -#csenhaid { - height: 46px; - width: 100%; - padding: 10px; - font-size: 16px; - border: 1px solid #c7c7c7; - border-radius: 6px; -} - -form { - display: flex; - flex-direction: column; - gap: 16px; -} - -#logbtn { - align-self: center; - width: 50%; - padding: 12px; - font-size: 18px; - font-weight: bold; - background-color: #c0392b; - color: #fff; - border: none; - border-radius: 6px; - cursor: pointer; - transition: background-color 0.2s ease; -} - -#logbtn:hover { - background-color: #a03224; -} - -a { - color: #111; - text-decoration: none; -} - -a:hover { - text-decoration: underline; -} +* { margin: 0; padding: 0; box-sizing: border-box; } + + +body { + min-height: 100vh; + font-family: 'Poppins', Arial, sans-serif; + display: flex; + align-items: center; + justify-content: center; + padding: 80px 20px 20px; + background: #f5f5f5; +} + +#topo { + width: 100%; + height: 50px; + position: fixed; + top: 0; left: 0; + background: linear-gradient(to right, #c0392b 47%, #7a4951 73%, #114455 87%); + display: flex; + align-items: center; + z-index: 10; +} + +#textotop { + padding-left: 20px; + font-size: clamp(22px, 5vw, 38px); + color: #fff; +} + +#log { + width: 100%; + max-width: 400px; + display: flex; + flex-direction: column; + gap: 16px; + background-color: white; + border: rgba(0, 0, 0, 0.174) solid 3px; + border-radius: 10px; + padding: 10px; + border-top: 0px; + border-left: 0px; +} + +.mens { text-align: center; color: #1f2937; } +.campo { display: flex; flex-direction: column; gap: 8px; } +label { font-weight: 700; color: #1f2937; } + +input, select { + height: 46px; + width: 100%; + padding: 10px; + font-size: 16px; + border: 1px solid #c7c7c7; + border-radius: 6px; + font-family: inherit; + background: #fff; +} + +form { display: flex; flex-direction: column; gap: 16px; } + +.linha-dupla { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } + +#logbtn { + align-self: center; + width: 50%; + padding: 12px; + font-size: 18px; + font-weight: bold; + background-color: #c0392b; + color: #fff; + border: none; + border-radius: 6px; + cursor: pointer; + transition: background-color 0.2s ease; + border: rgba(124, 20, 20, 0.496) solid 2px; + border-radius: 10px; + padding: 10px; + border-top: 0px; + border-left: 0px; +} + +#logbtn:hover { + background-color: #114455; + border: #14323c6f solid 2px; + border-radius: 10px; + padding: 10px; + border-top: 0px; + border-left: 0px;} +#logbtn:disabled { background-color: #ccc; cursor: not-allowed; } + +a { color: #111; text-decoration: none; } +a:hover { text-decoration: underline; } + +#mensagem-erro { + background: #fee2e2; + border: 1px solid #fca5a5; + color: #b91c1c; + padding: 10px 14px; + border-radius: 6px; + font-size: 14px; + display: none; +} + +#mensagem-sucesso { + background: #d1fae5; + border: 1px solid #6ee7b7; + color: #065f46; + padding: 10px 14px; + border-radius: 6px; + font-size: 14px; + display: none; +} diff --git a/cadastro.html b/cadastro.html index 3107970..a1271ce 100644 --- a/cadastro.html +++ b/cadastro.html @@ -1,62 +1,151 @@ - - - - - - - Cadastro - - - - - -
-

Focus Agenda

-
- - -
-

Crie Sua Conta

- -
-
- - -
- -
- - -
- -
- - -
- -
- - -
- - -
- -

Ja tem uma conta?

-
- - - - + + + + + + + + + Cadastro – Focus Agenda + + +
+

Focus Agenda

+
+ +
+

Crie Sua Conta

+ + +
+ +
+
+ + +
+ +
+ + +
+ +
+ + +
+ +
+
+ + +
+
+ +
+ + +
+ +
+ + +
+ + +
+ +

Já tem uma conta?

+
+ + + + diff --git a/calendario.css b/calendario.css index be5cbe2..340e4f1 100644 --- a/calendario.css +++ b/calendario.css @@ -1,587 +1,304 @@ -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body { - font-family: 'Poppins', sans-serif; - background: #f5f5f5; -} - -/* HEADER */ -#header { - width: 100%; - height: 50px; - position: fixed; - top: 0; - left: 0; - background: linear-gradient(to right, #c0392b, #114455); - display: flex; - align-items: center; - z-index: 10; -} - -#title { - color: #fff; - padding-left: 20px; - font-size: 28px; -} - -/* BARRA ESQUERDA */ -#barraesquerda { - position: fixed; - top: 50px; - left: 0; - width: 320px; - height: calc(100vh - 50px); - background: #c0392b; - padding: 15px; - color: #fff; - display: flex; - flex-direction: column; - font-family: 'Inter', sans-serif; - overflow-y: auto; -} - -#calendario { - margin-top: 10px; -} - -.calendariotop { - display: flex; - justify-content: space-between; - align-items: center; - margin-bottom: 10px; -} - -#mes { - font-size: 18px; - font-weight: 600; -} - -#calendarseta { - display: flex; - gap: 15px; -} - -#calendarseta button { - background: transparent; - border: none; - color: #fff; - font-size: 26px; - cursor: pointer; - padding: 5px 10px; - transition: transform 0.2s ease; -} - -#calendarseta button:hover { - transform: scale(1.2); -} - -.calendariodia { - width: 100%; - border-collapse: collapse; -} - -.calendariodia th { - font-size: 11px; - opacity: 0.8; -} - -.calendariodia td { - text-align: center; - padding: 6px; - font-size: 12px; - border-radius: 50%; - position: relative; -} - -.calendariodia td::after { - content: ""; - width: 5px; - height: 5px; - background: #fff; - border-radius: 50%; - position: absolute; - bottom: -2px; - left: 50%; - transform: translateX(-50%); -} - -.calendariodia td.today { - background: #114455; - color: #fff; - font-weight: 600; -} - -.outromes { - opacity: 0.45; -} - -/* AGENDA */ -.agenda-header { - margin-top: 15px; - border-top: 1px solid rgba(255, 255, 255, 0.3); - border-bottom: 1px solid rgba(255, 255, 255, 0.3); - padding: 8px 0; - font-size: 13px; -} - -.agenda-empty { - margin-top: 10px; - font-size: 13px; - opacity: 0.85; -} - -.evento { - margin-top: 10px; - padding-left: 10px; - border-left: 3px solid #fff; -} - -.evento.azul, -.calendar-event.azul { - border-color: #00c2ff; -} - -.evento.verde, -.calendar-event.verde { - border-color: #2ecc71; -} - -.evento.vermelho, -.calendar-event.vermelho { - border-color: #e74c3c; -} - -.evento.roxo, -.calendar-event.roxo { - border-color: #9b59b6; -} - -.evento.laranja, -.calendar-event.laranja { - border-color: #e67e22; -} - -.evento.amarelo, -.calendar-event.amarelo { - border-color: #f1c40f; -} - -.evento.rosa, -.calendar-event.rosa { - border-color: #ff6b81; -} - -.evento.ciano, -.calendar-event.ciano { - border-color: #1abc9c; -} - -.evento.marinho, -.calendar-event.marinho { - border-color: #2c3e50; -} - -.evento.lilas, -.calendar-event.lilas { - border-color: #a29bfe; -} - -.evento.salmao, -.calendar-event.salmao { - border-color: #fa8072; -} - -.evento.menta, -.calendar-event.menta { - border-color: #55efc4; -} - -.hora { - font-size: 11px; - opacity: 0.8; -} - -.titulo { - font-size: 13px; -} - -.link { - font-size: 11px; - color: #ffdede; -} - -/* FERIADOS */ -.feriados-header { - margin-top: 15px; - font-weight: 600; -} - -.feriado { - display: flex; - gap: 8px; - margin-top: 8px; - font-size: 13px; -} - -.dot { - width: 6px; - height: 6px; - background: #d4ff6a; - border-radius: 50%; - margin-top: 6px; - flex-shrink: 0; -} - -/* MAIN */ -.main { - margin-left: 320px; - margin-top: 50px; - min-height: calc(100vh - 50px); - display: flex; - flex-direction: column; - background: #f5f5f5; -} - -/* TOPBAR */ -.topbar { - min-height: 70px; - background: #eaeaea; - border-bottom: 3px solid #c0392b; - display: flex; - align-items: center; - justify-content: space-between; - padding: 0 25px; - gap: 12px; -} - -.topbar h1 { - font-size: 24px; - color: #1f3b57; -} - -.user-area { - display: flex; - align-items: center; - gap: 20px; -} - -.perfil { - display: flex; - align-items: center; - gap: 10px; -} - -.avatar { - width: 40px; - height: 40px; - border-radius: 50%; - background: url('https://i.pravatar.cc/100') center/cover; -} - -.info { - display: flex; - flex-direction: column; -} - -.nome { - font-weight: 600; - color: #1f3b57; -} - -.cargo { - font-size: 12px; - color: #666; -} - -.icone-img { - width: 20px; - height: 20px; - cursor: pointer; - object-fit: contain; - transition: transform 0.2s ease; -} - -.icone-img:hover { - transform: scale(1.15); -} - -/* HEADER CALENDARIO */ -.calendar-header { - display: flex; - justify-content: space-between; - align-items: center; - gap: 12px; - padding: 10px 20px; - background: #eee; - border-bottom: 1px solid #ccc; -} - -.mes-nav { - position: relative; - display: flex; - align-items: center; - justify-content: center; - width: min(360px, 100%); - padding: 0 42px; -} - -.titulo-mes { - font-size: 18px; - font-weight: 600; - color: #1f3b57; - text-align: center; - width: 100%; -} - -.seta { - position: absolute; - top: 50%; - transform: translateY(-50%); - background: transparent; - border: none; - font-size: 22px; - cursor: pointer; - color: #c0392b; -} - -.antGrande { - left: 8px; -} - -.proxGrande { - right: 8px; -} - -.view-switch { - display: flex; - gap: 10px; -} - -.view-switch button { - border: none; - padding: 6px 14px; - border-radius: 8px; - background: transparent; - cursor: pointer; - font-weight: 500; - color: #1f3b57; -} - -.view-switch .active { - background: #c0392b; - color: #fff; -} - -/* CALENDARIO GRANDE */ -.calendar-area { - width: 100%; -} - -.calendar-area.month-view { - display: grid; - grid-template-columns: repeat(7, 1fr); - grid-template-rows: 40px repeat(6, 120px); -} - -.dia-semana { - background: #f0f0f0; - text-align: center; - font-weight: 600; - font-size: 13px; - padding: 10px 0; - border: 1px solid #ddd; -} - -.dia-box { - background: #fff; - border: 1px solid #ddd; - padding: 8px; - color: #1f2937; -} - -.dia-box:hover { - background: #eaeaff; -} - -.dia-box.today { - background: #fff5f2; - border-color: #c0392b; - font-weight: 700; - color: #c0392b; -} - -.outro-mes { - opacity: 0.45; -} - -.calendar-area.week-view { - display: grid; - grid-template-columns: repeat(7, minmax(150px, 1fr)); - gap: 0; - overflow-x: auto; - border-top: 1px solid #ddd; -} - -.week-col { - min-height: 420px; - min-width: 150px; - border-right: 1px solid #ddd; - border-bottom: 1px solid #ddd; - background: #fff; - display: flex; - flex-direction: column; -} - -.week-col.today { - background: #fffaf8; -} - -.week-col-head { - padding: 10px; - font-size: 13px; - font-weight: 700; - color: #1f3b57; - text-align: center; - border-bottom: 1px solid #ddd; - background: #f6f6f6; -} - -.week-col-date { - display: block; - margin-top: 4px; - font-size: 11px; - font-weight: 500; - color: #6b7280; -} - -.week-events { - padding: 10px; - display: flex; - flex-direction: column; - gap: 8px; -} - -.week-empty, -.day-empty { - font-size: 13px; - color: #6b7280; -} - -.calendar-area.day-view { - display: block; - padding: 16px; -} - -.day-panel { - background: #fff; - border: 1px solid #ddd; - border-radius: 10px; - padding: 14px; -} - -.day-panel-header { - font-size: 15px; - font-weight: 700; - color: #1f3b57; - margin-bottom: 12px; -} - -.day-events { - display: flex; - flex-direction: column; - gap: 10px; -} - -.calendar-event { - border-left: 3px solid #c0392b; - background: #fafafa; - border-radius: 6px; - padding: 8px 10px; -} - -.calendar-event-hora { - font-size: 12px; - color: #6b7280; -} - -.calendar-event-titulo { - font-size: 14px; - color: #1f2937; - margin-top: 2px; -} - -/* RESPONSIVO */ -@media (max-width: 1024px) { - body { - padding-top: 50px; - } - - #barraesquerda { - position: static; - top: auto; - width: 100%; - height: auto; - max-height: none; - } - - .main { - margin-left: 0; - margin-top: 0; - min-height: auto; - } - - .calendar-area.month-view { - grid-template-rows: 40px repeat(6, 90px); - } -} - -@media (max-width: 700px) { - #title { - font-size: 22px; - } - - .topbar { - padding: 12px 16px; - flex-wrap: wrap; - } - - .topbar h1 { - font-size: 20px; - } - - .calendar-header { - flex-direction: column; - align-items: flex-start; - } - - .mes-nav { - width: 100%; - } - - .view-switch { - width: 100%; - justify-content: flex-start; - flex-wrap: wrap; - } - - .calendar-area.month-view { - grid-template-rows: 36px repeat(6, 72px); - } - - .dia-box { - padding: 6px; - font-size: 14px; - } - - .week-col { - min-height: 320px; - } - - .calendar-area.day-view { - padding: 12px; - } -} +* { margin: 0; padding: 0; box-sizing: border-box; } + +body { + font-family: 'Poppins', sans-serif; + background: #f5f5f5; +} + +/* ===== HEADER ===== */ +#header { + width: 100%; + height: 50px; + position: fixed; + top: 0; left: 0; + background: linear-gradient(to right, #c0392b, #114455); + display: flex; + align-items: center; + z-index: 10; +} + +#title { + padding-left: 20px; + font-size: clamp(22px, 5vw, 38px); + color: #fff; +} + +/* ===== BARRA ESQUERDA ===== */ +#barraesquerda { + position: fixed; + top: 50px; left: 0; + width: 280px; + height: calc(100vh - 50px); + background: #c0392b; + padding: 15px; + color: #fff; + display: flex; + flex-direction: column; + font-family: 'Inter', sans-serif; + overflow-y: auto; + z-index: 5; +} + +/* Mini Calendário */ +#calendario { margin-top: 10px; } +.calendariotop { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; } +#mes { font-size: 16px; font-weight: 600; } +#calendarseta { display: flex; gap: 10px; } +#calendarseta button { background: transparent; border: none; color: #fff; font-size: 24px; cursor: pointer; padding: 2px 8px; transition: transform 0.2s; } +#calendarseta button:hover { transform: scale(1.2); } + +.calendariodia { width: 100%; border-collapse: collapse; } +.calendariodia th { font-size: 10px; opacity: 0.8; padding: 3px; text-align: center; } +.calendariodia td { text-align: center; padding: 4px; font-size: 11px; border-radius: 50%; cursor: pointer; transition: background 0.15s; } +.calendariodia td:hover { background: rgba(255,255,255,0.2); } +.calendariodia td.outromes { opacity: 0.4; } +.calendariodia td.today { background: #fff; color: #c0392b; font-weight: 700; border-radius: 50%; } +.calendariodia td.selecionado { background: rgba(255,255,255,0.35); border-radius: 50%; } + +/* Agenda */ +#agenda { margin-top: 18px; } +.agenda-header { font-size: 12px; font-weight: 700; opacity: 0.8; margin-bottom: 8px; letter-spacing: 0.5px; } +.agenda-empty { font-size: 12px; opacity: 0.7; font-style: italic; } +.evento { background: rgba(255,255,255,0.15); border-radius: 8px; padding: 8px 10px; margin-bottom: 8px; cursor: pointer; transition: background 0.15s; } +.evento:hover { background: rgba(255,255,255,0.25); } +.evento .hora { font-size: 11px; opacity: 0.8; } +.evento .titulo { font-size: 13px; font-weight: 600; } + +/* Feriados */ +#feriados { margin-top: 16px; } +.feriados-header { font-size: 12px; font-weight: 700; opacity: 0.8; margin-bottom: 8px; letter-spacing: 0.5px; } +.feriado { display: flex; align-items: center; gap: 8px; font-size: 12px; margin-bottom: 4px; } +.dot { width: 8px; height: 8px; background: #fff; border-radius: 50%; flex-shrink: 0; } + +/* ===== MAIN ===== */ +.main { + margin-left: 280px; + margin-top: 50px; + padding: 24px; + min-height: calc(100vh - 50px); +} + +/* Topbar */ +.topbar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; } +.topbar h1 { font-size: 24px; color: #1f2937; } + +.user-area { display: flex; align-items: center; gap: 14px; } +.icone-img { width: 28px; height: 28px; cursor: pointer; opacity: 0.7; transition: opacity 0.2s; } +.icone-img:hover { opacity: 1; } + +.perfil { display: flex; align-items: center; gap: 10px; } +.avatar { width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, #c0392b, #114455); } +.info { display: flex; flex-direction: column; } +.nome { font-size: 14px; font-weight: 600; color: #1f2937; } +.cargo { font-size: 12px; color: #6b7280; } + +/* Botão logout */ +#btnLogout { + background: transparent; + border: 1px solid #d1d5db; + border-radius: 6px; + padding: 6px 12px; + font-size: 13px; + cursor: pointer; + color: #6b7280; + transition: all 0.2s; +} +#btnLogout:hover { background: #fee2e2; border-color: #c0392b; color: #c0392b; } + +/* Calendar header */ +.calendar-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; flex-wrap: wrap; gap: 10px; } + +.mes-nav { display: flex; align-items: center; gap: 12px; } +.seta { background: transparent; border: 1px solid #d1d5db; border-radius: 6px; width: 32px; height: 32px; font-size: 20px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background 0.15s; } +.seta:hover { background: #f3f4f6; } +.titulo-mes { font-size: 18px; font-weight: 600; color: #1f2937; min-width: 200px; text-align: center; } + +.view-switch { display: flex; gap: 4px; background: #f3f4f6; padding: 4px; border-radius: 8px; } +.view-switch button { border: none; background: transparent; padding: 6px 14px; border-radius: 6px; font-size: 14px; cursor: pointer; color: #6b7280; transition: all 0.2s; font-family: inherit; } +.view-switch button.active { background: #fff; color: #1f2937; font-weight: 600; box-shadow: 0 1px 3px rgba(0,0,0,0.12); } + +/* Botão novo evento */ +#btnNovoEvento { + background: #c0392b; + color: #fff; + border: none; + border-radius: 8px; + padding: 8px 18px; + font-size: 14px; + font-weight: 600; + cursor: pointer; + transition: background 0.2s; + font-family: inherit; +} +#btnNovoEvento:hover { background: #a03224; } + +/* Calendar area */ +.calendar-area { background: #fff; border-radius: 12px; box-shadow: 0 1px 4px rgba(0,0,0,0.08); overflow: hidden; } + +/* Month view */ +.month-view { display: grid; grid-template-columns: repeat(7, 1fr); } +.dia-semana { text-align: center; padding: 10px; font-size: 12px; font-weight: 600; color: #6b7280; background: #f9fafb; border-bottom: 1px solid #e5e7eb; } +.dia-box { min-height: 100px; padding: 8px; border-right: 1px solid #f0f0f0; border-bottom: 1px solid #f0f0f0; cursor: pointer; transition: background 0.1s; } +.dia-box:hover { background: #fef2f2; } +.dia-box:nth-child(7n) { border-right: none; } +.dia-box.outro-mes { background: #fafafa; color: #d1d5db; } +.dia-box.outro-mes .num-dia { color: #d1d5db; } +.num-dia { font-size: 13px; font-weight: 500; color: #374151; margin-bottom: 4px; } +.dia-box.today .num-dia { background: #c0392b; color: #fff; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 12px; } +.dia-box.selecionado { background: #fef2f2; } +.evento-mini { font-size: 10px; background: #c0392b; color: #fff; border-radius: 3px; padding: 1px 4px; margin-top: 2px; truncate: clip; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } +.evento-mini.verde { background: #16a34a; } +.evento-mini.azul { background: #1d4ed8; } +.evento-mini.amarelo { background: #d97706; } +.mais-eventos { font-size: 10px; color: #6b7280; margin-top: 2px; cursor: pointer; } + +/* Week view */ +.week-view { display: grid; grid-template-columns: repeat(7, 1fr); } +.week-col { border-right: 1px solid #e5e7eb; padding: 10px 8px; min-height: 300px; } +.week-col:last-child { border-right: none; } +.week-col.today { background: #fef9f9; } +.week-col-head { font-size: 13px; font-weight: 600; color: #6b7280; margin-bottom: 6px; } +.week-col-date { display: block; font-size: 11px; font-weight: 400; color: #9ca3af; } +.week-events { display: flex; flex-direction: column; gap: 6px; } +.week-empty { font-size: 11px; color: #d1d5db; font-style: italic; } + +/* Day view */ +.day-panel { padding: 20px; } +.day-panel-header { font-size: 16px; font-weight: 600; color: #374151; margin-bottom: 16px; } +.day-events { display: flex; flex-direction: column; gap: 10px; } +.day-empty { color: #9ca3af; font-style: italic; font-size: 14px; } + +/* Event cards */ +.calendar-event { border-radius: 6px; padding: 8px 10px; background: #fee2e2; border-left: 4px solid #c0392b; } +.calendar-event.verde { background: #d1fae5; border-color: #16a34a; } +.calendar-event.azul { background: #dbeafe; border-color: #1d4ed8; } +.calendar-event.amarelo { background: #fef3c7; border-color: #d97706; } +.calendar-event.rosa { background: #fce7f3; border-color: #db2777; } +.calendar-event-hora { font-size: 11px; color: #6b7280; } +.calendar-event-titulo { font-size: 13px; font-weight: 600; color: #1f2937; } + +/* ===== LOADING SPINNER ===== */ +.loading { display: flex; align-items: center; justify-content: center; padding: 40px; color: #9ca3af; gap: 10px; font-size: 14px; } +.spinner { width: 20px; height: 20px; border: 2px solid #e5e7eb; border-top-color: #c0392b; border-radius: 50%; animation: spin 0.7s linear infinite; } +@keyframes spin { to { transform: rotate(360deg); } } + +/* ===== MODAL ===== */ +.modal-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0,0,0,0.45); + z-index: 100; + align-items: center; + justify-content: center; +} +.modal-overlay.aberto { display: flex; } + +.modal { + background: #fff; + border-radius: 12px; + padding: 28px; + width: 100%; + max-width: 480px; + margin: 20px; + box-shadow: 0 20px 60px rgba(0,0,0,0.2); + max-height: 90vh; + overflow-y: auto; +} + +.modal-titulo { font-size: 18px; font-weight: 700; color: #1f2937; margin-bottom: 20px; } + +.modal-campo { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; } +.modal-campo label { font-size: 13px; font-weight: 600; color: #374151; } +.modal-campo input, +.modal-campo select, +.modal-campo textarea { + border: 1px solid #d1d5db; + border-radius: 8px; + padding: 10px 12px; + font-size: 14px; + font-family: inherit; + transition: border-color 0.2s; + background: #fff; +} +.modal-campo input:focus, +.modal-campo select:focus, +.modal-campo textarea:focus { + outline: none; + border-color: #c0392b; +} +.modal-campo textarea { resize: vertical; min-height: 70px; } + +.modal-linha { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } + +.modal-acoes { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; } + +.btn-secundario { + background: transparent; + border: 1px solid #d1d5db; + border-radius: 8px; + padding: 9px 18px; + font-size: 14px; + cursor: pointer; + color: #6b7280; + font-family: inherit; + transition: all 0.2s; +} +.btn-secundario:hover { background: #f3f4f6; } + +.btn-primario { + background: #c0392b; + color: #fff; + border: none; + border-radius: 8px; + padding: 9px 18px; + font-size: 14px; + font-weight: 600; + cursor: pointer; + font-family: inherit; + transition: background 0.2s; +} +.btn-primario:hover { background: #a03224; } +.btn-primario:disabled { background: #ccc; cursor: not-allowed; } + +.btn-perigo { + background: transparent; + border: 1px solid #fca5a5; + color: #c0392b; + border-radius: 8px; + padding: 9px 18px; + font-size: 14px; + cursor: pointer; + font-family: inherit; + transition: all 0.2s; + margin-right: auto; +} +.btn-perigo:hover { background: #fee2e2; } + +/* Toast de feedback */ +#toast { + position: fixed; + bottom: 24px; + right: 24px; + background: #1f2937; + color: #fff; + padding: 12px 18px; + border-radius: 8px; + font-size: 14px; + z-index: 200; + transform: translateY(80px); + opacity: 0; + transition: all 0.3s; + max-width: 320px; +} +#toast.visivel { transform: translateY(0); opacity: 1; } +#toast.sucesso { background: #065f46; } +#toast.erro { background: #b91c1c; } + +/* Responsivo */ +@media (max-width: 768px) { + #barraesquerda { display: none; } + .main { margin-left: 0; } + .month-view { font-size: 12px; } + .dia-box { min-height: 60px; padding: 4px; } +} diff --git a/calendario.html b/calendario.html index f940cdd..138234c 100644 --- a/calendario.html +++ b/calendario.html @@ -1,526 +1,960 @@ - - - - - - Focus Agenda - - - - - - - - - - -
- -
-
-
-
- - -
-
- - - - - - - - - - - - - - -
DOMSEGTERQUAQUISEXSAB
-
- - -
- - -
-
- - -
-
-

Calendario

- -
- Notificacoes - -
-
-
- Usuario - Admin -
-
- - Configuracoes -
-
- -
-
- - Janeiro, 2025 - -
- -
- - - -
-
- - -
-
- - - - + + + + + + Focus Agenda + + + + + + + + + + + + +
+
+
+
+
+ + +
+
+ + + + + + + + +
DOMSEGTERQUAQUISEXSAB
+
+ +
+
+
+ + +
+
+

Calendário

+
+
+
+
+ Carregando... + +
+
+ +
+
+ +
+
+ + Janeiro, 2025 + +
+ +
+ + + +
+ + +
+ +
+
+ + + + + + + + +
+ + + + diff --git a/commit-msg.sample b/commit-msg.sample new file mode 100644 index 0000000..b58d118 --- /dev/null +++ b/commit-msg.sample @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to check the commit log message. +# Called by "git commit" with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, rename this file to "commit-msg". + +# Uncomment the below to add a Signed-off-by line to the message. +# Doing this in a hook is a bad idea in general, but the prepare-commit-msg +# hook is more suited to it. +# +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" + +# This example catches duplicate Signed-off-by lines. + +test "" = "$(grep '^Signed-off-by: ' "$1" | + sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { + echo >&2 Duplicate Signed-off-by lines. + exit 1 +} diff --git a/config b/config new file mode 100644 index 0000000..1c01fd3 --- /dev/null +++ b/config @@ -0,0 +1,13 @@ +[core] + repositoryformatversion = 0 + filemode = false + bare = false + logallrefupdates = true + symlinks = false + ignorecase = true +[remote "origin"] + url = https://git.morpheusnox.shop/axel/FocusAgenda.git + fetch = +refs/heads/*:refs/remotes/origin/* +[branch "main"] + remote = origin + merge = refs/heads/main diff --git a/description b/description new file mode 100644 index 0000000..498b267 --- /dev/null +++ b/description @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. diff --git a/engrenagem.png b/engrenagem.png new file mode 100644 index 0000000000000000000000000000000000000000..108ff4366fa93dc5e29b914313328c8020b82fca GIT binary patch literal 13977 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, @{$o->{files}}); + } +} + +sub output_result { + my ($clockid, @files) = @_; + + # Uncomment for debugging watchman output + # open (my $fh, ">", ".git/watchman-output.out"); + # binmode $fh, ":utf8"; + # print $fh "$clockid\n@files\n"; + # close $fh; + + binmode STDOUT, ":utf8"; + print $clockid; + print "\0"; + local $, = "\0"; + print @files; +} + +sub watchman_clock { + my $response = qx/watchman clock "$git_work_tree"/; + die "Failed to get clock id on '$git_work_tree'.\n" . + "Falling back to scanning...\n" if $? != 0; + + return $json_pkg->new->utf8->decode($response); +} + +sub watchman_query { + my $pid = open2(\*CHLD_OUT, \*CHLD_IN, 'watchman -j --no-pretty') + or die "open2() failed: $!\n" . + "Falling back to scanning...\n"; + + # In the query expression below we're asking for names of files that + # changed since $last_update_token but not from the .git folder. + # + # To accomplish this, we're using the "since" generator to use the + # recency index to select candidate nodes and "fields" to limit the + # output to file names only. Then we're using the "expression" term to + # further constrain the results. + my $last_update_line = ""; + if (substr($last_update_token, 0, 1) eq "c") { + $last_update_token = "\"$last_update_token\""; + $last_update_line = qq[\n"since": $last_update_token,]; + } + my $query = <<" END"; + ["query", "$git_work_tree", {$last_update_line + "fields": ["name"], + "expression": ["not", ["dirname", ".git"]] + }] + END + + # Uncomment for debugging the watchman query + # open (my $fh, ">", ".git/watchman-query.json"); + # print $fh $query; + # close $fh; + + print CHLD_IN $query; + close CHLD_IN; + my $response = do {local $/; }; + + # Uncomment for debugging the watch response + # open ($fh, ">", ".git/watchman-response.json"); + # print $fh $response; + # close $fh; + + die "Watchman: command returned no output.\n" . + "Falling back to scanning...\n" if $response eq ""; + die "Watchman: command returned invalid output: $response\n" . + "Falling back to scanning...\n" unless $response =~ /^\{/; + + return $json_pkg->new->utf8->decode($response); +} + +sub is_work_tree_watched { + my ($output) = @_; + my $error = $output->{error}; + if ($retry > 0 and $error and $error =~ m/unable to resolve root .* directory (.*) is not watched/) { + $retry--; + my $response = qx/watchman watch "$git_work_tree"/; + die "Failed to make watchman watch '$git_work_tree'.\n" . + "Falling back to scanning...\n" if $? != 0; + $output = $json_pkg->new->utf8->decode($response); + $error = $output->{error}; + die "Watchman: $error.\n" . + "Falling back to scanning...\n" if $error; + + # Uncomment for debugging watchman output + # open (my $fh, ">", ".git/watchman-output.out"); + # close $fh; + + # Watchman will always return all files on the first query so + # return the fast "everything is dirty" flag to git and do the + # Watchman query just to get it over with now so we won't pay + # the cost in git to look up each individual file. + my $o = watchman_clock(); + $error = $output->{error}; + + die "Watchman: $error.\n" . + "Falling back to scanning...\n" if $error; + + output_result($o->{clock}, ("/")); + $last_update_token = $o->{clock}; + + eval { launch_watchman() }; + return 0; + } + + die "Watchman: $error.\n" . + "Falling back to scanning...\n" if $error; + + return 1; +} + +sub get_working_dir { + my $working_dir; + if ($^O =~ 'msys' || $^O =~ 'cygwin') { + $working_dir = Win32::GetCwd(); + $working_dir =~ tr/\\/\//; + } else { + require Cwd; + $working_dir = Cwd::cwd(); + } + + return $working_dir; +} diff --git a/icone.png b/icone.png new file mode 100644 index 0000000000000000000000000000000000000000..4eb80c94f4c0c513498e7188fbdc67a1df8ebac5 GIT binary patch literal 7127 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 literal 0 HcmV?d00001 diff --git a/index b/index new file mode 100644 index 0000000000000000000000000000000000000000..5be78a9518161433970dfb7e1a37ef83915f117d GIT binary patch literal 7876 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 YMO%ln=Okr0il*gmiTcYRHlefnzuQDYYybcN literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..36a3af3 --- /dev/null +++ b/index.html @@ -0,0 +1,11 @@ + + + + + + Focus Agenda + + + + + diff --git a/login.css b/login.css index 5a2c631..a4c6381 100644 --- a/login.css +++ b/login.css @@ -1,100 +1,99 @@ -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body { - min-height: 100vh; - font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; - display: flex; - align-items: center; - justify-content: center; - padding: 80px 20px 20px; - background: #f5f5f5; -} - -#topo { - width: 100%; - height: 50px; - position: fixed; - top: 0; - left: 0; - background: linear-gradient(to right, #c0392b 47%, #7a4951 73%, #114455 87%); - display: flex; - align-items: center; - z-index: 10; -} - -#textotop { - padding-left: 20px; - font-size: clamp(22px, 5vw, 38px); - color: #fff; -} - -#log { - width: 100%; - max-width: 360px; - display: flex; - flex-direction: column; - gap: 16px; -} - -.mens { - text-align: center; - color: #1f2937; -} - -.campo { - display: flex; - flex-direction: column; - gap: 8px; -} - -label { - font-weight: 700; - color: #1f2937; -} - -#emailid, -#senhaid { - height: 46px; - width: 100%; - padding: 10px; - font-size: 16px; - border: 1px solid #c7c7c7; - border-radius: 6px; -} - -form { - display: flex; - flex-direction: column; - gap: 16px; -} - -#logbtn { - align-self: center; - width: 50%; - padding: 12px; - font-size: 18px; - font-weight: bold; - background-color: #c0392b; - color: #fff; - border: none; - border-radius: 6px; - cursor: pointer; - transition: background-color 0.2s ease; -} - -#logbtn:hover { - background-color: #a03224; -} - -#linkcada { - color: #111; - text-decoration: none; -} - -#linkcada:hover { - text-decoration: underline; -} +* { margin: 0; padding: 0; box-sizing: border-box; } + +body { + min-height: 100vh; + font-family: 'Poppins', 'Trebuchet MS', Arial, sans-serif; + display: flex; + align-items: center; + justify-content: center; + padding: 80px 20px 20px; + background: #f5f5f5; +} + +#topo { + width: 100%; + height: 50px; + position: fixed; + top: 0; left: 0; + background: linear-gradient(to right, #c0392b 47%, #7a4951 73%, #114455 87%); + display: flex; + align-items: center; + z-index: 10; +} + +#textotop { + padding-left: 20px; + font-size: clamp(22px, 5vw, 38px); + color: #fff; +} + +#log { + width: 100%; + max-width: 360px; + display: flex; + flex-direction: column; + gap: 16px; + background-color: white; + border: rgba(0, 0, 0, 0.174) solid 3px; + border-radius: 10px; + padding: 10px; + border-top: 0px; + border-left: 0px; +} + +.mens { text-align: center; color: #1f2937; } + +.campo { display: flex; flex-direction: column; gap: 8px; } +label { font-weight: 700; color: #1f2937; } + +input[type="email"], input[type="password"] { + height: 46px; + width: 100%; + padding: 10px; + font-size: 16px; + border: 1px solid #c7c7c7; + border-radius: 6px; + font-family: inherit; +} + +form { display: flex; flex-direction: column; gap: 16px; } + +#logbtn { + align-self: center; + width: 50%; + padding: 12px; + font-size: 18px; + font-weight: bold; + background-color: #c0392b; + color: #fff; + border: none; + border-radius: 6px; + cursor: pointer; + transition: background-color 0.2s ease; + border: rgba(124, 20, 20, 0.496) solid 2px; + border-radius: 10px; + padding: 10px; + border-top: 0px; + border-left: 0px; +} + +#logbtn:hover { background-color: #114455; + border: #14323c6f solid 2px; + border-radius: 10px; + padding: 10px; + border-top: 0px; + border-left: 0px;} +#logbtn:disabled { background-color: #ccc; cursor: not-allowed; } + +a { color: #111; text-decoration: none; } +a:hover { text-decoration: underline; } + +#mensagem-erro { + background: #fee2e2; + border: 1px solid #fca5a5; + color: #b91c1c; + padding: 10px 14px; + border-radius: 6px; + font-size: 14px; + display: none; +} diff --git a/login.html b/login.html index 641932a..1e7db21 100644 --- a/login.html +++ b/login.html @@ -1,38 +1,97 @@ - - - - - - - - Login - - - -
-

Focus Agenda

-
- - -
-

Bem-vindo!

-

Faça seu login

- -
-
- - -
- -
- - -
- - -
- -

Cadastrar-se

-
- - + + + + + + + + + Login – Focus Agenda + + +
+

Focus Agenda

+
+ +
+

Bem-vindo!

+

Faça seu login

+ + + +
+
+ + +
+
+ + +
+ +
+ +

Cadastrar-se

+
+ + + + diff --git a/main b/main new file mode 100644 index 0000000..85b5cb1 --- /dev/null +++ b/main @@ -0,0 +1 @@ +02cfd71cf4d0075701aa28ffec79d5047bc80214 diff --git a/pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.idx b/pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.idx new file mode 100644 index 0000000000000000000000000000000000000000..943586229f6a90792b6f31a394e0d8ef1a203415 GIT binary patch literal 5244 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 literal 0 HcmV?d00001 diff --git a/pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.pack b/pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.pack new file mode 100644 index 0000000000000000000000000000000000000000..a38525502a60ab9a28f1141ad6e59ad1720e58f4 GIT binary patch literal 79144 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 NYBk=sF>9#wzW~(X2e$wK literal 0 HcmV?d00001 diff --git a/pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.rev b/pack-b5b7a6ce7e8de572d350421a1169ccc3ded36051.rev new file mode 100644 index 0000000000000000000000000000000000000000..63ba6b8ff875cff064f187a8e6cf3bde47db9996 GIT binary patch literal 648 zcmXZYNi!Az0LJl`N~!FkL{SndAxa4m3N4miZ7PLIJK9OKSP~U|hQ5Jmrb{y#x2DV6 zxr=e?(ns(!(=+p%=l*Z5t3DS91j7Ei=9l-JBgBxzTUyx9de*R!O=Pl}+uWp!vwY+c z^;GeST+Z;BcxD*oIzjf4Kon^tQ%xsViDe~+*+nF4sbrXDvN=FHhuFzQvbexD#yG|h zwcO(qCs@s6mb(=5fi~XrfOZ<$N&|WHlFD8lvVmu;AcF`>>0^K`oMIKHDI$kx!kFef zgS=xm1&lLAIWJkqC7v+BQM%c~c1E~C4Y#<%U0ONLeGZby3&MHINy><$j(jF5;R=PM z&_O> + + 4.0.0 + + + org.springframework.boot + spring-boot-starter-parent + 3.2.0 + + + + com.agendaestudantil + agenda-digital-estudantes + 1.0.0 + Agenda Digital para Estudantes + Backend para agenda digital destinado a estudantes com dificuldade de organização + + + 17 + 17 + 17 + 1.18.30 + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-data-mongodb + + + + org.springframework.boot + spring-boot-starter-validation + + + + + + org.springframework.boot + spring-boot-starter-security + + + + io.jsonwebtoken + jjwt-api + 0.12.3 + + + + io.jsonwebtoken + jjwt-impl + 0.12.6 + runtime + + + + io.jsonwebtoken + jjwt-jackson + 0.12.3 + runtime + + + + org.springdoc + springdoc-openapi-starter-webmvc-ui + 2.3.0 + + + + io.github.cdimascio + dotenv-java + 2.3.2 + + + + org.projectlombok + lombok + true + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.mockito + mockito-core + test + + + + org.springframework.security + spring-security-test + test + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 17 + 17 + + -parameters + + + + org.projectlombok + lombok + ${lombok.version} + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + diff --git a/post-update.sample b/post-update.sample new file mode 100644 index 0000000..ec17ec1 --- /dev/null +++ b/post-update.sample @@ -0,0 +1,8 @@ +#!/bin/sh +# +# An example hook script to prepare a packed repository for use over +# dumb transports. +# +# To enable this hook, rename this file to "post-update". + +exec git update-server-info diff --git a/pre-applypatch.sample b/pre-applypatch.sample new file mode 100644 index 0000000..4142082 --- /dev/null +++ b/pre-applypatch.sample @@ -0,0 +1,14 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed +# by applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-applypatch". + +. git-sh-setup +precommit="$(git rev-parse --git-path hooks/pre-commit)" +test -x "$precommit" && exec "$precommit" ${1+"$@"} +: diff --git a/pre-commit.sample b/pre-commit.sample new file mode 100644 index 0000000..29ed5ee --- /dev/null +++ b/pre-commit.sample @@ -0,0 +1,49 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed. +# Called by "git commit" with no arguments. The hook should +# exit with non-zero status after issuing an appropriate message if +# it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-commit". + +if git rev-parse --verify HEAD >/dev/null 2>&1 +then + against=HEAD +else + # Initial commit: diff against an empty tree object + against=$(git hash-object -t tree /dev/null) +fi + +# If you want to allow non-ASCII filenames set this variable to true. +allownonascii=$(git config --type=bool hooks.allownonascii) + +# Redirect output to stderr. +exec 1>&2 + +# Cross platform projects tend to avoid non-ASCII filenames; prevent +# them from being added to the repository. We exploit the fact that the +# printable range starts at the space character and ends with tilde. +if [ "$allownonascii" != "true" ] && + # Note that the use of brackets around a tr range is ok here, (it's + # even required, for portability to Solaris 10's /usr/bin/tr), since + # the square bracket bytes happen to fall in the designated range. + test $(git diff-index --cached --name-only --diff-filter=A -z $against | + LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0 +then + cat <<\EOF +Error: Attempt to add a non-ASCII file name. + +This can cause problems if you want to work with people on other platforms. + +To be portable it is advisable to rename the file. + +If you know what you are doing you can disable this check using: + + git config hooks.allownonascii true +EOF + exit 1 +fi + +# If there are whitespace errors, print the offending file names and fail. +exec git diff-index --check --cached $against -- diff --git a/pre-merge-commit.sample b/pre-merge-commit.sample new file mode 100644 index 0000000..399eab1 --- /dev/null +++ b/pre-merge-commit.sample @@ -0,0 +1,13 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed. +# Called by "git merge" with no arguments. The hook should +# exit with non-zero status after issuing an appropriate message to +# stderr if it wants to stop the merge commit. +# +# To enable this hook, rename this file to "pre-merge-commit". + +. git-sh-setup +test -x "$GIT_DIR/hooks/pre-commit" && + exec "$GIT_DIR/hooks/pre-commit" +: diff --git a/pre-push.sample b/pre-push.sample new file mode 100644 index 0000000..4ce688d --- /dev/null +++ b/pre-push.sample @@ -0,0 +1,53 @@ +#!/bin/sh + +# An example hook script to verify what is about to be pushed. Called by "git +# push" after it has checked the remote status, but before anything has been +# pushed. If this script exits with a non-zero status nothing will be pushed. +# +# This hook is called with the following parameters: +# +# $1 -- Name of the remote to which the push is being done +# $2 -- URL to which the push is being done +# +# If pushing without using a named remote those arguments will be equal. +# +# Information about the commits which are being pushed is supplied as lines to +# the standard input in the form: +# +# +# +# This sample shows how to prevent push of commits where the log message starts +# with "WIP" (work in progress). + +remote="$1" +url="$2" + +zero=$(git hash-object --stdin &2 "Found WIP commit in $local_ref, not pushing" + exit 1 + fi + fi +done + +exit 0 diff --git a/pre-rebase.sample b/pre-rebase.sample new file mode 100644 index 0000000..6cbef5c --- /dev/null +++ b/pre-rebase.sample @@ -0,0 +1,169 @@ +#!/bin/sh +# +# Copyright (c) 2006, 2008 Junio C Hamano +# +# The "pre-rebase" hook is run just before "git rebase" starts doing +# its job, and can prevent the command from running by exiting with +# non-zero status. +# +# The hook is called with the following parameters: +# +# $1 -- the upstream the series was forked from. +# $2 -- the branch being rebased (or empty when rebasing the current branch). +# +# This sample shows how to prevent topic branches that are already +# merged to 'next' branch from getting rebased, because allowing it +# would result in rebasing already published history. + +publish=next +basebranch="$1" +if test "$#" = 2 +then + topic="refs/heads/$2" +else + topic=`git symbolic-ref HEAD` || + exit 0 ;# we do not interrupt rebasing detached HEAD +fi + +case "$topic" in +refs/heads/??/*) + ;; +*) + exit 0 ;# we do not interrupt others. + ;; +esac + +# Now we are dealing with a topic branch being rebased +# on top of master. Is it OK to rebase it? + +# Does the topic really exist? +git show-ref -q "$topic" || { + echo >&2 "No such branch $topic" + exit 1 +} + +# Is topic fully merged to master? +not_in_master=`git rev-list --pretty=oneline ^master "$topic"` +if test -z "$not_in_master" +then + echo >&2 "$topic is fully merged to master; better remove it." + exit 1 ;# we could allow it, but there is no point. +fi + +# Is topic ever merged to next? If so you should not be rebasing it. +only_next_1=`git rev-list ^master "^$topic" ${publish} | sort` +only_next_2=`git rev-list ^master ${publish} | sort` +if test "$only_next_1" = "$only_next_2" +then + not_in_topic=`git rev-list "^$topic" master` + if test -z "$not_in_topic" + then + echo >&2 "$topic is already up to date with master" + exit 1 ;# we could allow it, but there is no point. + else + exit 0 + fi +else + not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"` + /usr/bin/perl -e ' + my $topic = $ARGV[0]; + my $msg = "* $topic has commits already merged to public branch:\n"; + my (%not_in_next) = map { + /^([0-9a-f]+) /; + ($1 => 1); + } split(/\n/, $ARGV[1]); + for my $elem (map { + /^([0-9a-f]+) (.*)$/; + [$1 => $2]; + } split(/\n/, $ARGV[2])) { + if (!exists $not_in_next{$elem->[0]}) { + if ($msg) { + print STDERR $msg; + undef $msg; + } + print STDERR " $elem->[1]\n"; + } + } + ' "$topic" "$not_in_next" "$not_in_master" + exit 1 +fi + +<<\DOC_END + +This sample hook safeguards topic branches that have been +published from being rewound. + +The workflow assumed here is: + + * Once a topic branch forks from "master", "master" is never + merged into it again (either directly or indirectly). + + * Once a topic branch is fully cooked and merged into "master", + it is deleted. If you need to build on top of it to correct + earlier mistakes, a new topic branch is created by forking at + the tip of the "master". This is not strictly necessary, but + it makes it easier to keep your history simple. + + * Whenever you need to test or publish your changes to topic + branches, merge them into "next" branch. + +The script, being an example, hardcodes the publish branch name +to be "next", but it is trivial to make it configurable via +$GIT_DIR/config mechanism. + +With this workflow, you would want to know: + +(1) ... if a topic branch has ever been merged to "next". Young + topic branches can have stupid mistakes you would rather + clean up before publishing, and things that have not been + merged into other branches can be easily rebased without + affecting other people. But once it is published, you would + not want to rewind it. + +(2) ... if a topic branch has been fully merged to "master". + Then you can delete it. More importantly, you should not + build on top of it -- other people may already want to + change things related to the topic as patches against your + "master", so if you need further changes, it is better to + fork the topic (perhaps with the same name) afresh from the + tip of "master". + +Let's look at this example: + + o---o---o---o---o---o---o---o---o---o "next" + / / / / + / a---a---b A / / + / / / / + / / c---c---c---c B / + / / / \ / + / / / b---b C \ / + / / / / \ / + ---o---o---o---o---o---o---o---o---o---o---o "master" + + +A, B and C are topic branches. + + * A has one fix since it was merged up to "next". + + * B has finished. It has been fully merged up to "master" and "next", + and is ready to be deleted. + + * C has not merged to "next" at all. + +We would want to allow C to be rebased, refuse A, and encourage +B to be deleted. + +To compute (1): + + git rev-list ^master ^topic next + git rev-list ^master next + + if these match, topic has not merged in next at all. + +To compute (2): + + git rev-list master..topic + + if this is empty, it is fully merged to "master". + +DOC_END diff --git a/pre-receive.sample b/pre-receive.sample new file mode 100644 index 0000000..a1fd29e --- /dev/null +++ b/pre-receive.sample @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to make use of push options. +# The example simply echoes all push options that start with 'echoback=' +# and rejects all pushes when the "reject" push option is used. +# +# To enable this hook, rename this file to "pre-receive". + +if test -n "$GIT_PUSH_OPTION_COUNT" +then + i=0 + while test "$i" -lt "$GIT_PUSH_OPTION_COUNT" + do + eval "value=\$GIT_PUSH_OPTION_$i" + case "$value" in + echoback=*) + echo "echo from the pre-receive-hook: ${value#*=}" >&2 + ;; + reject) + exit 1 + esac + i=$((i + 1)) + done +fi diff --git a/prepare-commit-msg.sample b/prepare-commit-msg.sample new file mode 100644 index 0000000..10fa14c --- /dev/null +++ b/prepare-commit-msg.sample @@ -0,0 +1,42 @@ +#!/bin/sh +# +# An example hook script to prepare the commit log message. +# Called by "git commit" with the name of the file that has the +# commit message, followed by the description of the commit +# message's source. The hook's purpose is to edit the commit +# message file. If the hook fails with a non-zero status, +# the commit is aborted. +# +# To enable this hook, rename this file to "prepare-commit-msg". + +# This hook includes three examples. The first one removes the +# "# Please enter the commit message..." help message. +# +# The second includes the output of "git diff --name-status -r" +# into the message, just before the "git status" output. It is +# commented because it doesn't cope with --amend or with squashed +# commits. +# +# The third example adds a Signed-off-by line to the message, that can +# still be edited. This is rarely a good idea. + +COMMIT_MSG_FILE=$1 +COMMIT_SOURCE=$2 +SHA1=$3 + +/usr/bin/perl -i.bak -ne 'print unless(m/^. Please enter the commit message/..m/^#$/)' "$COMMIT_MSG_FILE" + +# case "$COMMIT_SOURCE,$SHA1" in +# ,|template,) +# /usr/bin/perl -i.bak -pe ' +# print "\n" . `git diff --cached --name-status -r` +# if /^#/ && $first++ == 0' "$COMMIT_MSG_FILE" ;; +# *) ;; +# esac + +# SOB=$(git var GIT_COMMITTER_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# git interpret-trailers --in-place --trailer "$SOB" "$COMMIT_MSG_FILE" +# if test -z "$COMMIT_SOURCE" +# then +# /usr/bin/perl -i.bak -pe 'print "\n" if !$first_line++' "$COMMIT_MSG_FILE" +# fi diff --git a/push-to-checkout.sample b/push-to-checkout.sample new file mode 100644 index 0000000..af5a0c0 --- /dev/null +++ b/push-to-checkout.sample @@ -0,0 +1,78 @@ +#!/bin/sh + +# An example hook script to update a checked-out tree on a git push. +# +# This hook is invoked by git-receive-pack(1) when it reacts to git +# push and updates reference(s) in its repository, and when the push +# tries to update the branch that is currently checked out and the +# receive.denyCurrentBranch configuration variable is set to +# updateInstead. +# +# By default, such a push is refused if the working tree and the index +# of the remote repository has any difference from the currently +# checked out commit; when both the working tree and the index match +# the current commit, they are updated to match the newly pushed tip +# of the branch. This hook is to be used to override the default +# behaviour; however the code below reimplements the default behaviour +# as a starting point for convenient modification. +# +# The hook receives the commit with which the tip of the current +# branch is going to be updated: +commit=$1 + +# It can exit with a non-zero status to refuse the push (when it does +# so, it must not modify the index or the working tree). +die () { + echo >&2 "$*" + exit 1 +} + +# Or it can make any necessary changes to the working tree and to the +# index to bring them to the desired state when the tip of the current +# branch is updated to the new commit, and exit with a zero status. +# +# For example, the hook can simply run git read-tree -u -m HEAD "$1" +# in order to emulate git fetch that is run in the reverse direction +# with git push, as the two-tree form of git read-tree -u -m is +# essentially the same as git switch or git checkout that switches +# branches while keeping the local changes in the working tree that do +# not interfere with the difference between the branches. + +# The below is a more-or-less exact translation to shell of the C code +# for the default behaviour for git's push-to-checkout hook defined in +# the push_to_deploy() function in builtin/receive-pack.c. +# +# Note that the hook will be executed from the repository directory, +# not from the working tree, so if you want to perform operations on +# the working tree, you will have to adapt your code accordingly, e.g. +# by adding "cd .." or using relative paths. + +if ! git update-index -q --ignore-submodules --refresh +then + die "Up-to-date check failed" +fi + +if ! git diff-files --quiet --ignore-submodules -- +then + die "Working directory has unstaged changes" +fi + +# This is a rough translation of: +# +# head_has_history() ? "HEAD" : EMPTY_TREE_SHA1_HEX +if git cat-file -e HEAD 2>/dev/null +then + head=HEAD +else + head=$(git hash-object -t tree --stdin &2 + exit 1 +} + +unset GIT_DIR GIT_WORK_TREE +cd "$worktree" && + +if grep -q "^diff --git " "$1" +then + validate_patch "$1" +else + validate_cover_letter "$1" +fi && + +if test "$GIT_SENDEMAIL_FILE_COUNTER" = "$GIT_SENDEMAIL_FILE_TOTAL" +then + git config --unset-all sendemail.validateWorktree && + trap 'git worktree remove -ff "$worktree"' EXIT && + validate_series +fi diff --git a/sino.png b/sino.png new file mode 100644 index 0000000000000000000000000000000000000000..75756e55ef541912751d7eb0fe890a46f619b4c2 GIT binary patch literal 8791 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 Ib@1W;0|5y5)&Kwi literal 0 HcmV?d00001 diff --git a/style.css b/style.css new file mode 100644 index 0000000..e2962a3 --- /dev/null +++ b/style.css @@ -0,0 +1,124 @@ +* { + padding: 0; + margin: 0; +} + +p, +h1, +h2, +h3 { + color: black; + margin: 0; + font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif +} + +label{ +display: block; +} + +body { + height: 100vh; + display: flex; + justify-content: center; + align-items: center; +} + +@media (max-width: 768px) { +body { + padding-left: 20px; + padding-right: 20px; + justify-content: center; +} +} + +@media (max-width: 480px) { +#log { + width: 100% !important; + max-width: 320px; +} +} +#topo { + width: 100%; + height: 50px; + background-color: #111; + position: fixed; + top: 0; + left: 0; + background: linear-gradient(to right, #C0392B 47%, #7A4951 73%, #114455 87%); + display: flex; + align-items: center; + justify-content: flex-start; +} + +#textotop { + padding-left: 20px; + font-size: 38px; + margin: 0; + font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; +} + +#log { + width: 350px; + display: flex; + flex-direction: column; + gap: 15px; + color: white; + margin-top: 70px; /* Compensa a barra fixa do topo */ +} +#campo { + display: flex; + flex-direction: column; + gap: 15px; + align-self: center; +} +#menslog{ +font-size: 20px; +} + +#emailid, #senhaid { +height: 50px; +width: 100%; +padding: 10px; +font-size: 16px; +border: 1px solid #ccc; +border-radius: 4px; +box-sizing: border-box; +} + +label { +display: block; +margin-bottom: 5px; +font-weight: bold; +color: white; +} + +form { +display: flex; +flex-direction: column; +gap: 15px; +width: 100%; +} + +#logbtn { +align-self: center; +width: 50%; +padding: 12px; +font-size: 18px; +font-weight: bold; +background-color: #C0392B; +color: white; +border: none; +border-radius: 4px; +cursor: pointer; +transition: background-color 0.3s; +} + +#logbtn:hover { +background-color: #A03224; +} +.mens { +align-self: center; +} +#linkcada{ + color: #111; +} \ No newline at end of file diff --git a/update.sample b/update.sample new file mode 100644 index 0000000..c4d426b --- /dev/null +++ b/update.sample @@ -0,0 +1,128 @@ +#!/bin/sh +# +# An example hook script to block unannotated tags from entering. +# Called by "git receive-pack" with arguments: refname sha1-old sha1-new +# +# To enable this hook, rename this file to "update". +# +# Config +# ------ +# hooks.allowunannotated +# This boolean sets whether unannotated tags will be allowed into the +# repository. By default they won't be. +# hooks.allowdeletetag +# This boolean sets whether deleting tags will be allowed in the +# repository. By default they won't be. +# hooks.allowmodifytag +# This boolean sets whether a tag may be modified after creation. By default +# it won't be. +# hooks.allowdeletebranch +# This boolean sets whether deleting branches will be allowed in the +# repository. By default they won't be. +# hooks.denycreatebranch +# This boolean sets whether remotely creating branches will be denied +# in the repository. By default this is allowed. +# + +# --- Command line +refname="$1" +oldrev="$2" +newrev="$3" + +# --- Safety check +if [ -z "$GIT_DIR" ]; then + echo "Don't run this script from the command line." >&2 + echo " (if you want, you could supply GIT_DIR then run" >&2 + echo " $0 )" >&2 + exit 1 +fi + +if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +# --- Config +allowunannotated=$(git config --type=bool hooks.allowunannotated) +allowdeletebranch=$(git config --type=bool hooks.allowdeletebranch) +denycreatebranch=$(git config --type=bool hooks.denycreatebranch) +allowdeletetag=$(git config --type=bool hooks.allowdeletetag) +allowmodifytag=$(git config --type=bool hooks.allowmodifytag) + +# check for no description +projectdesc=$(sed -e '1q' "$GIT_DIR/description") +case "$projectdesc" in +"Unnamed repository"* | "") + echo "*** Project description file hasn't been set" >&2 + exit 1 + ;; +esac + +# --- Check types +# if $newrev is 0000...0000, it's a commit to delete a ref. +zero=$(git hash-object --stdin &2 + echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2 + exit 1 + fi + ;; + refs/tags/*,delete) + # delete tag + if [ "$allowdeletetag" != "true" ]; then + echo "*** Deleting a tag is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/tags/*,tag) + # annotated tag + if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1 + then + echo "*** Tag '$refname' already exists." >&2 + echo "*** Modifying a tag is not allowed in this repository." >&2 + exit 1 + fi + ;; + refs/heads/*,commit) + # branch + if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then + echo "*** Creating a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/heads/*,delete) + # delete branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/remotes/*,commit) + # tracking branch + ;; + refs/remotes/*,delete) + # delete tracking branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a tracking branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + *) + # Anything else (is there anything else?) + echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2 + exit 1 + ;; +esac + +# --- Finished +exit 0