From 624ee33537982ba11f08f3e169b0c789828afbbc Mon Sep 17 00:00:00 2001 From: "snehalathad@aissel.com" Date: Tue, 19 Nov 2024 18:27:30 +0530 Subject: [PATCH] api implementation and other changes --- assets/introduction_animation/care_image.png | Bin 0 -> 43004 bytes .../events3.jpg | Bin .../introduction_animation.png | Bin 0 -> 420561 bytes .../introduction_image.png | Bin 0 -> 60048 bytes .../introduction_image1.png | Bin 0 -> 14852 bytes .../mood_dairy_image.png | Bin 0 -> 63119 bytes assets/introduction_animation/relax_image.png | Bin 0 -> 65801 bytes assets/introduction_animation/welcome.png | Bin 0 -> 69728 bytes assets/medicalinsightform.json | 184 ++ ios/Podfile.lock | 36 +- ios/Runner.xcodeproj/project.pbxproj | 7 +- .../interactionform/configprovider.dart | 55 + .../interactionform/interaction_screen.dart | 11 +- .../interactionform/interactionprovider.dart | 4 +- .../model/save_interaction.dart | 5 + .../model/save_interaction.g.dart | 7 +- .../interactionform/new_dynamicform.dart | 45 +- .../view_interaction_screen.dart | 2 +- .../viewinteractionprovider.dart | 8 +- .../ui_screen/new_editinteraction.dart | 35 +- .../ui_screen/new_viewinteraction.dart | 3 +- lib/main.dart | 157 +- lib/model/affiliationsmodel.dart | 50 +- lib/model/events_details.dart | 347 +++ lib/model/events_list_resp_2.dart | 219 ++ lib/model/eventspeakers.dart | 330 +++ lib/model/eventspeakers.g.dart | 98 + lib/model/my_events_list_model.dart | 486 +++++ lib/model/neweventsmodel.dart | 818 ++++--- lib/model/specialtymodel.dart | 14 +- lib/model/topics_cloud_model.dart | 7 + lib/utils/apicall.dart | 687 +++++- lib/utils/constants.dart | 24 + lib/utils/dateformater.dart | 18 +- lib/view/eventslist.dart | 609 ++++-- lib/view/eventslistoffline.dart | 1664 +++++++++++++++ lib/view/eventstab.dart | 14 - lib/view/hcplist.dart | 1 - lib/view/helpdesk.dart | 226 ++ lib/view/home.dart | 768 ++++--- lib/view/homeoffline.dart | 1890 +++++++++++++++++ lib/view/insights.dart | 131 +- lib/view/login.dart | 2 +- lib/view/login_components/care_view.dart | 120 ++ .../login_components/center_next_button.dart | 202 ++ lib/view/login_components/homescreen.dart | 1 + lib/view/login_components/intropaging.dart | 137 ++ lib/view/login_components/mood_diary_vew.dart | 119 ++ lib/view/login_components/relax_view.dart | 120 ++ lib/view/login_components/slidesview.dart | 1 + lib/view/login_components/splash_view.dart | 105 + .../login_components/top_back_skip_view.dart | 81 + lib/view/login_components/welcome_view.dart | 97 + lib/view/navigation_home_screen.dart | 3 +- lib/view/profileview.dart | 224 +- lib/viewmodel/eventsprovider.dart | 224 +- lib/viewmodel/hcpprofprovider.dart | 11 +- lib/viewmodel/offlineeventsprovider.dart | 325 +++ lib/widgets/autocompletetags_widget.dart | 1 + lib/widgets/home_drawer.dart | 149 +- lib/widgets/piechart.dart | 8 +- macos/Podfile.lock | 115 +- pubspec.lock | 40 + pubspec.yaml | 6 +- 64 files changed, 9726 insertions(+), 1325 deletions(-) create mode 100644 assets/introduction_animation/care_image.png rename assets/{images => introduction_animation}/events3.jpg (100%) create mode 100644 assets/introduction_animation/introduction_animation.png create mode 100644 assets/introduction_animation/introduction_image.png create mode 100644 assets/introduction_animation/introduction_image1.png create mode 100644 assets/introduction_animation/mood_dairy_image.png create mode 100644 assets/introduction_animation/relax_image.png create mode 100644 assets/introduction_animation/welcome.png create mode 100644 assets/medicalinsightform.json create mode 100644 lib/model/events_details.dart create mode 100644 lib/model/events_list_resp_2.dart create mode 100644 lib/model/eventspeakers.dart create mode 100644 lib/model/eventspeakers.g.dart create mode 100644 lib/model/my_events_list_model.dart create mode 100644 lib/view/eventslistoffline.dart create mode 100644 lib/view/helpdesk.dart create mode 100644 lib/view/homeoffline.dart create mode 100644 lib/view/login_components/care_view.dart create mode 100644 lib/view/login_components/center_next_button.dart create mode 100644 lib/view/login_components/homescreen.dart create mode 100644 lib/view/login_components/intropaging.dart create mode 100644 lib/view/login_components/mood_diary_vew.dart create mode 100644 lib/view/login_components/relax_view.dart create mode 100644 lib/view/login_components/slidesview.dart create mode 100644 lib/view/login_components/splash_view.dart create mode 100644 lib/view/login_components/top_back_skip_view.dart create mode 100644 lib/view/login_components/welcome_view.dart create mode 100644 lib/viewmodel/offlineeventsprovider.dart diff --git a/assets/introduction_animation/care_image.png b/assets/introduction_animation/care_image.png new file mode 100644 index 0000000000000000000000000000000000000000..7881c2b36d6fe48e13f9ed4e3e5fd357e4b5b17b GIT binary patch literal 43004 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 z

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

T5yvH@`igas|+D1s5YQghzAPSVO7b?%s%(T=4 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 z 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%0DBUD9fbXpO~1MII<{&kR6s2 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

# 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 literal 0 HcmV?d00001 diff --git a/assets/introduction_animation/introduction_image.png b/assets/introduction_animation/introduction_image.png new file mode 100644 index 0000000000000000000000000000000000000000..703317a271b80e112aa3edd960fcb49a07c1b369 GIT binary patch literal 60048 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 z%0ADs7QdK-yn^Yv?lDiJBE|a0p+}%HlfN*t0J|yP@dAL8nzU^h|xG|&y7`&>#cX~bf1X_qS z6@z2QIy=))Sm9ylVM*5XCrGZ^BJ*gMDxhueQM3MKzkbpAGZC_r&4bTe3L<@v6!eO# zJ{X!tXk!=Dq{Zd(-2}Xhq&d-=S77f;{~Y4d*+%_uMmXI`rKMM%yQqx;OXYiopEx>tc23dX zf79nDqi+0N=o)U&TqQa7Ge|TJAlo*?CAqSUJxLMLop)0|5G=ukc;5y}3Vk>K%Pv$1 zVz(n-&*Q+%+eujf_|49mgNg)(xszq#u$fyR*+qHDtObIhC7n|(N`6d!0QDa|ppqEA zU{ldxwx};b@mPKTvC8a~xW)r2yvLFk$Uj7elyjxJ%vv3(V>_E6&G*7P?KWe` zXwtSI4SkQ5(T#v2RAW6qDT_Z+9W{5d3SCuKeOI{9m_m_Zq*tgx&h(v$62J!yK7t|i z-yi^rho7X35w9#;6%XwLbmhjvmTzz{pV#R0+coS24WQTBN_gwfS2Atk3_1A{7#yVV z`MLuLqAa)QT=jBu9}FE$Rn)7$N61~Sv({5b&{c*hA3ac)YKfxg$~{g&f&;Im-C=0I zqIkA~5-P5Z1$5k{L*T>@b@M02N|%5WZe8>Ni4~!Y1~l4#T}G>)78*C_7EO-Nz4(-> zwC)z!adU-K62!xAKh!c&zyV72qsHqQv&=i)IeRb7Eo2xC(LquBC)Y-N!AyrWb>8&%P-T3)+cTA~ zC2{&V^InZ7T>??^o6E!iTfKSK)>fD2F@Te;sQ1~A`yGSeGJqHx_wk>&6O?f2u@HQ8 z#tcP++0nPY{G#mJHr*`qp90|-I$w*ISxYo1r5NC=^{lpALy15aB%36}+tYMd)9zci zIH2pjIcLcZ5g%bEbXaZqI3+aM@KmLTxVEE%b0KEj5=II7d>OQEOC4zGB|n3n>FN|( z_;|vsal4XcM&RvVdZNU47pbFnQ>g6W1G(3I75eR11QPo%p7!a&E59E*n%$WUm>dP0 zw8DpBe){Upn`{64GOziKftVbpWP^Q2Fo&2#_KLH(C)8A(ESLs%_a<~la3r8a`v9HD zF1cXis|H;-9kR|W>stUv;mUsV+Ah`K_K=GKWyv0StWzGenm-54h$stCi7_X^OxTfG zGp)Mz+7Sn(`mD_Gd43oRo|W|t&`Grn$Ft}|n5;v&eA&r4$u}p%E+A8O;i-vbMD3hm zr?qI`_iJ;iex(F|4)UB()MptK9`O*|RZa3xujDk^7%mK2*vZ5 zUjWV%djTTWtXnq@qRF4DXRvemTY2XdPE16_YM-zPOOWta&?#rpaatspF_5&hwQ&i< zqBt|8>wl_c0z55sV3V5%VB0h8dYNlROyLTK5v~_eQc$Rgk{-}*r^Q8tU7i={wJnz6 zHMuv*RT2k3ca?SY{Hk@>+FZf06d`^JVBad*?y)&2%_(4GosTOuMRpCk?7)_h*BD~& zVx-Tjcy51VU{{kAOVHO|L|=ZFm&y;P{z6gWKJQOulqCp~&VMwPqMrF1F+W_TB(>Z6 zTT|~iLTu>`=(rrBOr$uWzwJBowD!x9`S2Y4YZtJMT|#KK#r>F#h#(0 z{Bj%?)~5$(UPKraQ9R7}OWBdLqo)YDO(+4oaE$VJ+=4`vi(HbihO{vzfL1 z0)6EQV$Osd*N7GlJKcyUL)jWj#WqdF7xYYK%K=P;?ARF^vIM&H>+OM==skqH+{KMr zF~4ai$7H-FSc1-buzpvK*_}(s%q{|cLfc8pAfDZ!^8QI#8!*_out*@1s-U_JUyvwD zS;S7ciQ;5ILafNz6bU6H7YoTQWCRM1lc#^S@d8e+Ec{V~?Da1nnJRyQxj9AWvLX$ z=pOL~+&FO?*AE|KW@{^TEh~BMuV;O0_+^z$gDIK*ih(Jb1@v~?>cNd))o(Ff=xLUK zbDwxgw|)da_M_z_rU?i~qF3GPdk8Y|I>^{kJEy!i4Eo}2SeewhYeS3Cg_YwrhL8Gt z-wr=7)3v1^LEh7r?a7nW4Ad)rw|^p{N}^4*>qNw|7+O2LPS!ZDM7u_B)6O|EAE8v6Pco^~^VSzMD6hG% z0Kd?^R@iZfOQRqoN6pj>U>iMg`LOi}fVf6wpvWlLRN60^0yKEKro6tLnk?%qE029K zkB-~>t$6l}taTo5jxyHq9BpDhz@(CH=Jx1%uUvm#4JT}O4I#TB3{`M_;lb@h{FS47MAC_EW~ zIQ0Znsrny<(QZK+g~IN*-4Bb+pKcmCYNAVWG7m~4>=Nw$&}M#1N`uEY>}oR!RH(~n zAPL|>942w!c-Z1;4r4lDng)=)T!W9V=50S**hv+$q`&EbmCEijXU01wA=k8^&O^L{ z+wI&CuIFSqxGl?I0P*2+zstba0^ug>s#SB`+9i&fbr1i8W3Psu%ZxSf9|hg%-c#1C zk|ei|b2GKoQi-#9*k4vn^T?LvO~>&5(W55=|9Vo>Ji@)&p-^~Ru#F20C~7in)nax8 z@kzH>tZi^-1dI&pwvb7p{d4$-+QTZoU7@&Zm@BS2NfTB!=#8v{`qvy2^yN&YmskBn zRA3ceexfjw9qbE>3KL(Fp+2Be&zRw&*y}XK{i@X8P5f@LW!UHQj_1@|EfYtidh=K9 z5f%5S>IhhfgGV=@|F2g|%vQr0p?>qlQQM^0{d=p*yBkAX1KLmh!lQ@iMOMAldUXmV zDI?OitKF+#XbATpTI1?E_tEANMEx^3>nPKy=>50dDbeqHedKqiD|Q_oquNxvZVjNs zfKZZ&vD)w3w25ak;+Vs7pZCJ~=43d36J3(2peDmF2S(=bX>zxxqd5lbby019?yEKn zDRog7s(LnUFCrN*$rsWSd7hmoGf1#rG;Qqvo3mQKUCC=l0%ePQcIp7O3VD{cv9Smb z74JiRl!^AH2G+GNs_a(wCZ3C&Ueq|U^ivwi|McRCu;ywLPD*qj&*#dnGw2c+z64k<%~g$j~tZw0GV zic(gdbIwvMlO>Rrfw*1((|?pMwmrV zz;M<0BA&N}J7sI+EI6mg#r3Ix?4_TIglsHcbL^)$%N*lCT9)$?NTRLKetLR!NRE*@ z1zJPA^k0yWu+V^@@W4#Kl%wsQmiF8)7j0(_jXnb(aRX30v`ie(%Iz3ozkgcY%hfo) zC?X!BkUODk$&Q9d$nB&^D{DP>D3rQ8Y5ZW?w?e^N!K9>6Wb+!mzwbZQmuhcaiRu-< z6o2WHf6vH}DwU9tOLUnC3UVP0W1X+jdE_^!nyQotAbQ8L*IGMVw}w~^aL7R+vA?L# z!gJ;&J)%bYBZM#hLWz=*Z}capXYVL*gg`5t&R27hmLaT^Of|LRO;e$%=nWrdz*ZgW zL+yq<_aNeUA2U)_-skaz%ErobT`Hi(oN&z_eiNW4+xO64S@e>UhR7LV#uNU_`#;ib z)^vpJyBrIDc66C>JJv7413jWQ(pKzzaYRHpbg~#sVYGT>GImdnYSBmUh0KK zQ3uRAky;he&@Ned?&ZxJ$PS1*OsR#dL!dOj@7Wu+40>W7?4+cm$!Msh@DlWtI^Lh0 z@r-rb{6{@aqoG6RQL4(q_n*&&q7I zAExYihx;|RxiBrcX^rRf!*__?-->{O`6l&zyyr2yE8ni83LM~LdNyfu$u3lr6At?L zdWErJ~Uij!7W*91S&T(=?^q zEY_pC>o%Oj;}Sly*p!?LSu6S>WMC8Coez-8-$`*HM z35`*7$VEt?n~Ps)zRG_V9)`n$ojcx0X`%DcHT*ai^4g#j<0-m8;_Yp)${;aRy+=QK zvh5%KzVC0wAs7s~w)$6-8Ltl*pZ#v#{sN@5u1!oTs_k6oWW#Cd;5J7nFJ)3<&rw1J zB~-rZ*UhwLmh>hXRb=uhj~2+xwZoPzq0og3f>`3MuHWQkVD;i%=@i={Djl3bD)J2i zku9jMIuxl1E}<~4G8{!#%kPl;R?+-(t{Dr;G=fr@5(D3{70Tp{%)3+j%J@J36?UG{ za7ACkClW1s9Yloay$wPldhd)fYIHMdbV5W6GbBNDBYGJ#y3q+Sh%!2(C)%hX5kl%S z|Mh-+pK|Y7`@>y#uXWD3Yu&T=*?a%?#$d;vhylZBzoU;qU8@x@D7DqgYa(_u-M2qq zx%?hzhrzS156&S9EzLD!Nj|)B_gUXWedZ0lN^fh>iqXux6daXAmrKajsFl2pl~(SN z!>g2xL!I|mqp83#6IQ^2VGw)E@)0P3H|s<62M_Z}N#98I0@QDipIpGIHxE#PF+N?b z8~|V?rFkpdxmW&);yOZk`SG1JAxR#+;yNYyuELM*LnRl zd$m$EZYrN|E|gD8h4tY{x*dt|MxKGgLjd>y8!!dQB6C3V{jcss*EggP)bS(px^`y*g9#o?N`6`#NWR_QANX zxOZ{``kGx)Qgfr`4XMVYXi{*3ZzjP_Gi_lb1LR>R-jSCL&nLP74%WQV)`NNKEuN4< zTULG*$CN!LIh`)1Ws7E|qT~J_v6yhZ)2uqrYP06>(=2HXRyLYg`MaCl&e`z8V-5|6 z+Vv2Y7+Nk_3Ys_GG=aCgC4(a+uj8&q>4)u9M_-ovDurCDH5Y9$HP1(n(3;>m>%%Y4 zI%BIpv!)VJ!vM@P=<#A7wwp;+?pAGFXIeDH+>gh~>FQEt zSlA?5b^Q{Uu?aEc94ujBZot*?D7_1oo*2n`)|~sgN)}+5Sdn6;1tRs=4-S4=zP!s{ z5Ke)M?ui(v?8yxAt)~Stu<%vQ9iOj7DlV@+j-@vfgYO;_!(Pori0p9>3nzU^18L(3 zbGZaHl3R|W$>kqZ!d0&TsttuLnC(csA2<&PC@5 z!(%0-js72`Eu}ujyxOae?st**ge6IA(#B*>S}j;*DmOTY zKOAA>FNc8{N4>Q5&)wGhZ>BRS>#8*mxX8<-vuQv&=4g=9HJ;=(=Myhum8#CGJdtRW z^ABJ(|(byZ<2Re}kV)4M|)#2d}PAqm?Cu6069MekGo-0i4D_qZvp*}G*%U@lL$H*K^ zZ(D=;x-GR)ew_eC8z=v8*1VaJe>!kGnQ@= zaPHx=ajI2gU`%z;)4mFg^X|+`58N&o!ugA2(V7pZKb!4(9n}r{>PX)Dm-{Asr7p8| z$3>@f{;s!15Uw(EwJ!EAa%I_J8Zbsj(KLM1(s=2TQxm~0vf}v{tZ6jXs9)eCOd!ns zTJy-i8d9%#vGx0+&q-03{~&2`>)AARcD z^3xryigQdB9}1qc*N%?M^+{=#z~uFm*y{)d1oQ{1U?bSiZ!@Nv(+X-3h-U~G10mzP zUpd)iw<>}?Qkf4FlwH%PEG-Cp5Z`{gN!PR-yx{o!DCqaZShEX_(ajqK5m)5a z!%ofh^IIh&p)=FDk^+)Y+WrZUm#0iJ;092de1Yg9TK1~Pv`>;(kXjku0H(`BvIJ3^ zmp0E?!|vEq`mA}`#}tY=#iuqk*#$`VrzVdsnN9wRJUmI)`o+$8+B@|W=KQg%Ijg*n z&sFa!7|rAPp-oy~)hPbCXU>}9QL_VZ*xR#!lGAfq{-Muj`1<35;UNG}j?u51^W@$`qVkjC=rc;m#F&2W{u|Sn~nr&-E5z_*e^fYVpQI8R<-~A4!{j=AG zc3qil8hU_+f7V?S*6W)>IoWEv3t_00qw2^HDi?a_0?X>Fi?G^7sux)+3kaZY%k`$Q zd+S@XGgh;}UfWX(`2s_CARY!{yt_nN(3xmUV87}sqy)XtsUUee>e-jw8*ZfLE^ zzS=Xhu=`qxLQdZcC$Do0vOf)WHf;Kmvr`m2sk&?3H{F|Q-+s8>26Mdl>Fjd0po9!@ zK1N#ahsbahYsSnwQrMwb<^2M?4>XrHS{YFCw^@B?kWPd-9)@6Mr^`PBly!gwZ5(;F;`i8ku1dcpKz4G>f48 zL(my^{c#+gQHPsn-O>3#H}lN?#dLivHMEdV2lX>o>~q=TT;3}_T<2TWigq0>U#Rbs zC=c?Xr3ru^JU^iBpBy8hhhD~(v#p=`J3O3TDvz^xUG>`Ls!;OiucN3$U+tpJ(xiTL!%PkhL0Zi8d_W~9Vh!ktXdx$@D8c70HG3{%+%Trj!-3nZ1XKx z7hMaY|E=?p5dLqhMbCM*sEBk7`>Uz$<kJp#l6=yc>p`W6_=YCN@nYsNUbd z#A)m|#Qb!!`Pz^9{mwM+2B=h4j**dI_FPyaL;gNf(E5hHnD=~ZWy9$0W8?btT%79c zvq|iGGz>KY=PEJ_QF=yxKhge@Ct$t-A1bvHq~DInWRJt{iEQg!7~L0<%-+2?{B=~c z){aPZ_`|iTqdkY^#d>w-Q(+(Yh@q4VrTsyQC)*CG?PBW;eaf~yuJ>se2o5)SUXDTz(Ch0Y{+l@>lZ^>dUGjbiZelA#F{&p%-^FGazi!#w zU<>%Y7{KmEYiZpq?%d{Q%~fG5gU8tIJbMy3^o4&E!^IGApfLa48=*wDk#ULbe!)(A z>TL0@w@Tsbq{Ad_$OT|(G3!&;qnh=}6#u&}xn0f;{#eZUE!1;*o0^bEAl1m_$ITn) z<)F;Y3=s$Ll%uF)i@%jdPt z8b^ro)POkEO;F^_N#su`xOK_VYBdMT0^#*ZL|CSzYM_r=3#}R6=YUL2}*DoB>1W1%Kn*i zZ~Z{wU;Vas_@D6F!dv=hf}#1l&2rB>ox89#Cw+$|N_~US-Wb*6w*|gZQqZ>b-9`T7 z)2dh@6{ZGA!I$k?kcZZfImgvwTi|_33b@}wWDU4(YBfd0_Q#j@`~_)N9$MY3l9@;$ za=A=%H>RZM46PDU#ljoYF)_mnVf2L|{c~iH9plc(9(0y|>noHP5}VyeBSp%_1#_>Z zXVPS~=DXJ;px0#iq6&?ZA#ZesR;GrX=Ausnm)-ZzO_<;?m5nv z>H0H=XOwUFb75NK;~c&_>zNcuzg(1{o-T_5>f+2L)!u+pdz?LA{#4s2?Aj z16ISA#qFHRFI_(2#?qy-O6>|$n+r!PcDA?~`y&+3T%n&;I<34@q~mejhD9oyD1c-4 zEG;Z=t)o8Y?OM>1pWt)8`Y^p?i@fWypZigKL-p&QqLf7W1<)R-6sE$h@?294J}y-N zcxl+nc6Hcx$7Uh3ayXJETc;Q32fr(|7^c2d8B;35X~0Nuka*$41^@iatSeZ1DlXvS+V;O(SZB0WNkWxnKIv#?Io`4Jiw`<-wCi<) zzQT9|7%nic9Q*iwDO0(<-1MqyqAqO)MBWBZ63uoi=gA4HI;5=JX;#umVFTL9{EtFS z28Ii#+AU&SzIYi!)4t zrLSrigC?t+G^kIdl34vlD`8g7DH<0jskvmG`|Jth-zcir`SqOnAKiZo=n5aDcp~-f zcpz*aDyRHL1PyI?PqiZg?Y3N{A_l{#c2XID6E7M{AI_+T4c=FQd4)S1ogU{EcBv-k0(SX*$it|n!)WaDt`2bVKW<6v2IR{M9R#q zd8u-ImVf5fx0QZ~z4+D@L>LF99NMy|ZY;RXnclk3AHcGqLIk(aP^0POg;#o2?#i%aW zNN7T&Di;jBvZ$+;YMNjm4j}SijP7TYC@(Q_KD3QhK9O22CsOUukbw3=^oRzv4+%GT z)f84VBbsx$4M^0dGju?eKG9W6LV1{23}-_L`fU*+%dO2erA@~}9Peg5>9l2J1^6`a`t*;hG{sU^o?dH7J3^*(?|ga3b=hz0>#>c{ww->N&44)!jkVDDKzLC}tIq z#!_tK@|ADv9q=z7Xkao4B%9}mMYq-ZU+G8Yt^g39W$X7#I_EJ3Cxvi;NTZ#Q<5%Ov z#$1pO##kzzJ%_KNDyA5m!mplem)3;Tpqa${?B;spg!1}Do&afe5%t7rzTfe6zii_# zPEKA;S*dpPLr2E1Orc0Amd%oE4YiBv+P9ex>gHPa6|_Uzd`8;zliFwt-*)Y0%lWM}4R3d|L#Tg{7f{>xLZ9*|6s}wb$Ri3?B(59HWvee)F{{0(FdOajWfo zv)kAs#B_RWRXzmebrm=BtXB>b#&=SefL1OHpa&7Es*ddWap$viZe9*h2d^YdM9a)A zZ(jKH(^gw(_U;}m;EjcirBP6A zwvUV0$(+1H*U5xf`x*MaOH1De&G+Hq`Vx=y%W$M81_?2n#Wo8|f3nMT#H?+!PCOKcVmyb zi6==B^2^W|#mwlrm0pDX-{Vz>qyXv&sItLaqRc`~6{m*TLPe!PiMc?;{T~xVvk_$e zjW6D{SAZklqCEI6GUV0P5%n%G%*2U5JM?U?5=V!sOP);mcZd#qbclnh| zL60&YDn477T`3Ya=S7&}nZiwJa3p2!e)#MzTX1~+5%7Vx`3`P?rN!>z`^SSUit5)q z;_0&M@9y*}_MH!$UH$!w_@TtfRb$?XA(peZUl}?|9ibenw^q zv}gLloJ_;0OC~URIrYys0^v1}%Y&u70u~<^l*CYNatDgWIvYeeV3l--=IOgg!c%HF zOG*)x{ws31T^-kpPD*DBayT3ZNKjFO#d)3L^#kCfv1K)1&2Yv0)D^3G3Zk{tXVK_wYPcnSU!z>RREf~5)Za3`)TZBtepENE zXo&ZXXE^D~7U9~$Mr{wpQHq&Q%Jjc)85tL%Cz3!=4w;#<@!5Khm%P|cyx%TPLhcal z3Qq#OWo}@H4tu-OeE$R^wRnbeasEhoa7eK>O~iLLxu#@zvS}JS8bXuTt938$zab7{ zj5C1MCt7wGz^IuvbKL>nV6&)bVPD*}TcHbap@8^S?t7)nuS0l0EPkWQBV}w->wN$1 z20^Gp>GAXLjYU%~>Un^r;dz?2g6&Dr6H9sql;H-SOJM6-nZzD^E^DBd$)sbk^=ePW z;9}JcJm*&UuSN%*x=!ku(o|02dxY-2D^9F~LmD3VC)7yfyRm9$!<2%yw1%Sl`Ba;` zhZbr~+Hxb$v)Qcj`V6wVpwqDe8e}dhj4~RmGVcv0rleKUy{6zT1R|%#oL?b)oucy1 zo8feA%crxghQ2R>nU&7Q-Ze1SuzC+(RXGBu%{lO5#?Z2AiH)>}hP!Kb1fsiH@JwTF z#fU~7c#_ItT*%5|Z@+s=L|X*NUbr|uwoT&|O$CTr6a{Z3n&^3n>9!>Edg#cuJzBh; z0oyEr`NWU1s!5yTwXFp9;=uT zg>EvS|AWs6ON9Dwp*LXpAep#0%EXPxAd?k|*A*aA5?4g904*)Gv~7~o2$ln9a(vvH zhk!OEl6zaF7xW3}zpex3KhRRsv^kqHvV7UV*wH%f{$nn`RUxAh0K+~FQ`mT1@jQEO zabQ?EJu(KUd7t?u1f(dS<4O4f$>vt(N&Uu?=K}mjeNjIE>U(`xj`+o3h8bVN_DuRE zTixsB^_z4;hWSchYNZu=sF(AuB|t&;P{*82SE>AubXWQhI3;FZV z@ko1u-)H7ad4qr&S8>UX=f4VEFkW6UZ?+gvhoxc5dQ!Ta^BRS|8+~zVd}HBK%bxu0 zi3>POj0$8AyO(PI@U0JNiu14 z^xR(M3UMM=CHt;sS1tXhYL2Two^}d&Qc7H?SAYVt3Ca8D%H(z?b}@@C^s8sC#Tc@K zu$B!@^;5QEYh;zav)L22$uggt44REm>Bg)6S~jB*>2%|WWv$Kk#KK)pUYOs~Vpf*ya)V_)-u>~R zrscFzCxW$GPjx%)J|G?(45xlncs@68?+(0OZ7Nm#kdB>@h_p^qcXc6hLB_06IA!*I z9F?-d6NEBisOkx6_id4Ntr&X&d7%C+17TnuxrR+45Fv2~^;#T)HL0Vzk05hwG1ND7 zA%Ra*(wZf>pOF!>)hsXH{6yz0>V#U-MxgIS9f&img3O2{m9;nEVHa2Psp3hV-?BwT zJDh3OrYf`*{D17Awx1`#Hy3xJAtFu+;xLoTCSF*0cK6w$T|AXB$%|xLtZii8Ov$1T zAEsH6JM{z{Rv4#&f6^-EEuEB905i~jFmez)LD(C4*cGrPRz6GR_%ud(F8O`z0XdFK z-r`ri7cr_Rq=!`EIvwfVKDYaIold~v=tA9^>@u~>%T68({Hjj{U^0H*0#R*wS}T)i%WFj! zGF@P#KA>#agVVN_*X|2>os%0}x;$L~9&j7Hr*BZcI6v?+$}r(}lNRV6OA4t+D!@Ej z_%@57y=1F{^>`#G2LxgT35!W2NNU#5s5<~C_gb25_hgj5`i&<p173W`61`1D zaXw;@bNi3J0>FfR>nUUIZ8Xf5tqBYxPaKmcrs|&<&gU`DSfyw+fZMpcewg^@^4B%2 zD*Ss28kY8RxT*JqX+ZWcu+u6hXSgdBjAWGYrsPbpW_9I&M+)a~BF)&?;z7LD9yLg$ z_$=JQGNnAilkDTmYb739Vlwt{VCD%o?MT)<%I7_5!@B)1o(QqfRYv%57&xfnc>+(> z>c(94FbGbhEvw8BKofM!5^Zw`w56OEw$+DKFK-`)*{=!`tDadC;Oid*P4s-`mC{Vq z;>+$~uYJvC4xVx#%~;_`TQE(jt)MuiHlt>xj2cLjRnx;$+W3x4Cf@@JO*-`#N>Zx9 zs^glEogK%;e=B)|Qi^`9s3NoxMoGEj`j&>5oN9reC*;Qsnr8 zH)!1Ttg8~^sRyG8?tlc{73PL>W@Um}Y4C=ZDwonb{XNH=>t~;cF=nHhIA%s=z`W5B z?VtH}5W}%#=l9-ZB5T3h|Jx$VRvXp_`LHY9NWnhm2E{wfLmC;F-ukk%C8#H*z}>$7 zY_Z0r^)^3sIVC4uXTFH=ps)1Uw-;xPdwCed+py|7^S_F6dVeljkx-IE9Um`IjS3s^ zZMp|Cj#H^%3vYTh=ebb)HkS6IENahn>5v5j(F=qwlwY!2k>EsZ)~SOFxl?mdm!U_| zi^ELmR}^|`AxjM%Y1p><^o8BD&|;%*UY%mlFeQnyuu>SLEMdN3C$!pc0|6%R?pOUx_6W{qi`V~hQpC3ClDg^tPi2W{h5h%c|NnDhx&D82|9AO6&Z@(I!0&m%g@%R=tKx{C@$p=hiy_ literal 0 HcmV?d00001 diff --git a/assets/introduction_animation/introduction_image1.png b/assets/introduction_animation/introduction_image1.png new file mode 100644 index 0000000000000000000000000000000000000000..d39b34546bec6e72a341a315a147b0e36dd3f04d GIT binary patch literal 14852 zcmcgz2UrtX*QSf0q9_)M#wf0eflPX$k=_&pBWrIVnUH8mLK37X&4Qw$U_a7N&Qe&8@rMHhA||%s(iJR5z-3}*k-hQW5@(n%@CcW}Gs36& zal)5!=v=J*WXz;c24D~f%h{OFK%q#+2xVdwd>P<7a@!7zQ7n-!Wnvu>K+J4!UyQR@ z3S-E&6dVU45inG`Ekwc738V=a0v@8;;i+~I5r>BucnX6^$Ef~b0h*M{W3XJ@R9N7O ziRH`X5{8{!NJxln2+>w74X}ggbh;g$U`HU}zzUo!OeANA;zY7hC|$L3Z7h!9V~!pE#>eVti3vScxhm2)@VG`Jm1OTwFJvxkqo#C_^{3J z?p>3%;YixWNe6R)AAkl#wLlWSST2_F#sA_{_0KA`xf}*hEDdA>V+#V=0kEA!6oAMl zVK_@+#D0Eau@DV=&o;ASoSiWQf-N31c9uZI6^F>iwWESv*m9VO1&Khz;R!fA-4CKM zNDzZWw?WbYuUzUa<_dUWKU_*;KqMPHxos)PLM~g*)?~4_H-iO>xB?_KoP}(ejER*< z#bO=ZM8MG?E)7Sd(y4SdmBNN$ z3d+q>B$Km692gM;nBG=9G*WJ(6@_Y z#tb=IDi4i#TCS ztQ%V>gMYBfXBjM&NChGgD5@pEo(urS4d%cg%an!D7Zf(3z+cLihG8JGEgrbK%_PoZ zp;!vM4rC*?zwhbntQK0va(BXbx;j%JI)#EG*g{Cb13@Ym$c3<~dO8Z_s&7I8l1dCA zTLf}86vu^m>|miBJ9(;D1ap8na0EPlk{wbXg#tjL_@<<`YsV9q9K?hREEOz+xo%Q% zAVyKU7=jZjkiXMc7I=T?Ia)DcU zbUH*MbMZJb9%KegCy_ybKs+3vCXl!wW*{mJr5FEvlqwYfF8!B0umjdms_h|=fh-SG z8FU65)Mi>m5oWMCNG36{GB&UdA{wa7KQ;{o;?M~c4vs@0KsXMOM8mQDAqtMogNZN) zPoza_h2?5An4|7%2$7 zJ$eHfz%JwaALhV9p*ZCG`%Xfz*J^jWld6bn9pq5SHY0>B=kVR7;$X=SrBfE`_WK(^ z=*|d02oRN+SQllR$0#{r6s!~zi)t0Jt6*aB$mF0PRm>f1uKb9KyhuT7QUyN9<2W^r!R~A5eGHA28~G4_J1MPgaB<4Fd2~RCJBaPwu2W*wJ-B z2OPUbSLjYcVvo|}*z2r0sbk~;h8kew5x=YF42>1uD03@R)pk%Ty1VRZ=V zals{`XsV#=Y<7gD2D(#_au2C}_|wX(U8htY;n+30qToVQB<2VN)N2~UcdodAQHP*I zSayxCh&qUfXir1aMPvBRu7}X1RcQ}6c8w0g-JMBN*j^p78l$TzRIVqXX`@01zjuvJ zP?S5Q*+Iy@sE4C#r+g=%98~ClW7p^q9;x;uG6Me-g9g4+wO6x1weK$Okv^-Mb08Ax zIE{_p)?8KA?=_!5J3?u-CaAMNXOx7G<-KSLe zYKti00mrV1`G8^9*vNbZY)?ie4G53AQghwaQx$4^Qqyxkk!{p=x%3D z#Wov!fZaxq<3LS;#vsZ;i4A`4I`^rHvvs68(GY6=y$`dWz%F1yB7PJGBGQh9q` z_|zmS{5Bp+0g&r%Bmf6XNaa;@e)Zvy=A~Cnf=Zyip^^YxcO!wa^MlWyn?2Oy3Mzs6 zhDw6&XAi1!`cdpUs68%%keURQKz&0c0l4nk1_ZFv2Fa(`Z-dVs?>y8bDhb+nC?!Cy zyO974pU6oQGJ=B79!sDmK_yV%P)Pu;yO99AU0kB)x6H&7H~vf^-ppx)qVoUZCKG&E8>olYPuyY>=9Q0|kET21M3 zy#&!y&Z+kVC0FZYM0JPevvJ~({B>4F( z?L>(@CGPY@Sh1qrM2EtGmu8W#>bG^lh5CJ8@S+nFD+O=!o((7fZwvQL^mK9b3r(p{ z2}>CC*eb`~_}WU^N{o4o;Yf?=b4MGyX>U(Wy*VoMhRy8KBz+w2-tTd*{^JQqD=yjz0vrkOztR)2oG=SY3nm+(W&c{|d!eDw3Kf4}=p zOR4-y+43v3Qo(VO_nsxct}Di^Wy~$GiIdnyh@BUfwXvdgWkW?*IEUjM+-dsgn6k<2g}t zSMEuS&Ud>~ACMJZZc@|Gp!H;yFu~~CspD=oH$t+0aTtg{C;2j&(Ov`zPc%W%q$K#C2&5LWjJar(~7M6^sWDag?kcgE#~AKJ?Q)F zI;&Lc_(oPtMfief?`B!-GHsFL$s0pr-s&3MeXVnRn)SeV=+k3egf7?X$`tNVS2 z8ZLPHFDLvV}F@TGCh8uM>{^IQmOo&fY9Z>fq|$a@W!`ZU??aX;08w=uF8v zWEjkQ-JHW4yg$J3w4EgK;vHP|$17Tsv_mg1y*%c`l!M=*tiODFSaW4Y+G(=`27M>J zD>~xve8rH7C#l6jnZq{Kp0Emk8enB!yJQIY$z##m2+^|n4fvd93hgAdFeo#5MR4oT zrA-3X#lLWpz844ZuG}e@KiXl=I|h+%sgB87TO3wZgb%cQdfR5jNVx$|XO@l? zHszbF94`NBXrSN7A#CRTRZHs=9H?5oviZiO-QSEa^s2Uco17VaIC^;;#n3p-Vy@K) zr>(A*7j;8)h`!-d=ey}-44iy&;(jw5LXiGwFWPW}X}{$BQ+=V-(PPb9lfA=lAH8%+ z?}_){jc zb8q`kUfaw!t%>8k{mO@H42q{TX6(^Vc{%ZNubR3)o;7@#ez{@k!&keDr=@@C)i|zk zB6oS+%9&>}qZi!ImP~F;I(YKkgNV(yVD9Eq+dYg!dlfQL<0cKBj#y6QYCrl>YVdq< zNco()sV|LEXEj&;SukqV(!;OwWGz;B$rA%E?RlT3%$UQLPd6OJa?kqieh^``TJ(r; z{%`Wgv?I=LCy!u{rEaFkR`^ zDI&YPm#m#7zD*ea*Zwdk3Z{6M%)>gy3dSX zRlnA9RODRUoY^OPb9OeB#q-zH#g6&yOQK|x{-NyOP1cRUu&)J;y7>0vUrdwKVUM_` zzFVh^5$XNDcT&q*pu$t_16$(y9^w8i%yMi!o_95O=!Wb3@;8%S{iRpT9anI$)ob)n zABJvC>&FXb7fQ!ktdnt~-+xB^v8~yNo?&o8FLJNJ-i^-&=UOz4*kAWKLFVJ~#@~MD z{$H_10~2eX77Q40>dxAlUAy9nZ%${2I2rxvScB0eR^OemXXWeaVt z+i=Tv&dhzE^wQ=SwtD*VBui0qf43WN7LW$_Ps#qrca&nXy#Pb8sUZHrhv^&0X|K; zr>z0hOnR#uDyu{Lhkf|1^su#ym$dIyzYSBJo*6yR`)qK8bZ+`GZY+DOL1Mww zx7!aMx4BWWdcg#E??K_x#q;jkJM|7Zn00=t@S5+*ysK_zk|FOyWAofFYc{rqR|;ou z6fSyBw6&mU7aCf6%U(CksdoP`;%496y&o{{CHrRIGMJIFuV}~erl0}MW~;n2KUzqB zHU1-DUc~j{f~s<-x@(Drw_3-Tu8Z2=B%8P70j1>)Zuk0Nt2@`Ulk@WV;^haHRI%=R zZ625<<}}}3TM=GwcxZ_@`;B&y`3g_`mAt0U+f9k<44&T|b7)UY?;ZbKO2jdAV3z$F zzayvrViFDKE)(h&zl_Zsj*E-zH@dh&Kbh>6*{GM(EG#`ScD}y|7laW#5ymQJZRS5F{Xc*O}IOz1c9s$GGuOQ1RAl2K8FomOy5i$Lq0E znPq9C9qrc`R`##ld(zeBAN{ejjtmvf>n++e$9;rR8SROGwr5CGulmS$Gvd$sTwhT* zu($cnPg)PL1|KBz#Zi@WDVeke)eYf)BPX{B+4N_8pwQbw*xxz_SeAaJ~GH z`QmLA;WK@bE5i3!KHVK{de4i!M91y$mN@^G_#wCZtXz0(YurvP+P2idbjz@1Uc<-y z&MR?|i=Vt5dwR(ef&X(}!tIfZZ*Tb$ls!4-Y3mYANs%8+(7t35HtuR=cEt4jk!8Y5z3_!&=f$T_*?s)nwxnTwB83CKoC#~)nr2tz z74UBH_7c7w*QfOuzh%$9bdSeI#|@5f{fX<37CmsJ>_7kU(>;ej2k%;7A5i_`S+C() z&7hRu)oCqZ75hli%LW9dW$IpfQP}Tbeg2qT515;apR?_(hfXzLlY*sCLoK-Wm%Sy{ zmj_*%ag#UO$El!_#9i^};pctnDN)+^y^XWy{jx3fBPbfR_W{S9;U}%o|qgTc&=gzDfiutW&K__OEqlkZKDo)3x$ zsMGn>e|-@EG#xQ@N?OB>qG+DOL%!waK2O75>I+Uip>L{Xu4;Ojnb3NESnnfI{i(wu zc582(YCSOMoHS$bqLD2%gX-qwf5~eoY3*M>dZX!w6}orIeN6MiYCXTMIK4d2>TT&p z|DhGK6i&FE`{CR9p8nKp`p|V#?ty@nk0N8!yvok{=3fdsJn+$?4CgIYt>Jt92vFaW z>_mqz(J|+W(q?6HpRLy8Yt7AT1);bICXAt8q z7c34~Y0>O>ZL3XR>kS|r$DiLI@+q$ZJ-(vPpsjOPTKqBQ#&OP|!d9{F)r^G7-*82> z5u?Kej^bn{VbLh<FR;+k|LUD=} zcbCWieCIps-uLdao3*m?li4$~XV1)@nLUYCSCxN)LxBST0G=o+$Y=rpXeN(e7#R5Y z1YIHD=kW*ISwYVY0Ko70=ZlugjQz@V_z(skEWc_C!(>b^NyhRcJ!YlN6{m)}|1pHqh?slRG$$tpKbyd{i(oU|Ha6UE; zR&x#xJ~+Q18z&zRKQA{6oQs2tlbwT$os*Z9lT(P7ONf&j{_hXsk(#T8m5`>4+`nl( z-iab?+})jp*x9|jyx6?B*_>Rh**OIT1^>ap#l`vv!RqGY=#KJcb#$ZqZwxY)ZsxAG z&hEBOj_`jlqRgB;+(i+Ooc`Ao9Gw4y*3s?XVtN!9yEn?2os*5@pDFzd(8BybaLyjC z_WvSoVa{%8Z|Pv^=2yt=$PoR%VV}Wu<{l5ZRm_J3Of|Ap4e#_|#A|ASuq7nqxqmAeQCj~WG>`p} zefEEh_P=Jr{(qk2zux^12L9jRk6z=S%m28m$D98+JWIz%FX#H`&PrS+Y5{3LE|Wx4IQ?%z+({EF*uJ>S-EYAS0kYc3yq+V2PeDL^O*KXMM(%VoyP zeVTefkvwE^o%cX7P*}5~z!klQhs2jhC;;g@Fvo08+kUmJWs{SW`?V}A9JFq3^?3vx z$gWMKPfb1feDbYzFy>4&h&r&{FYUme=G?QYbL|6Vvbie^3z!S=hGrPX4R8uR@1r6R z{RV0Wsf!2phuziB{}rTOwm$4`*;>0~4pg}8RvlYe3b09}%c0Gch=KFve~ zdv87qYRCy$mF9mr9VGVl^0+`HR zH{^hh!=~irmG}7Y=jq?sM`?&qU;S{wZ@=Srs{>rXU~mH#uwj9wyDte0>dQt^lBmCx zp(bklFiG{i&jc+|UIq;l0s(X$`qX?rs=q~m2y`uIe@G*tx*#ksrH3Ph2--DrdG!7{w`lVv{E#>ErOTY*z@#~6GuIbmDA(I{ zEC?`fHy9iaA6i#U0D~o>;03=!D1QJTG9U=&?u~AshkqV!E=*(KGM3~sWEJBhpd0iL zTaw-oExffB`6Ib;n`m4Ff|i3D;e4qFgVIulV#WX@C9ot|NLndFFq00AqyP~7(J%l4 z0o1i(PToTO!(ugr2aX)W>2YSeYeuBff=$%vmX8#DqaV3n>j%sk6 z03-nhgvSojqGGn;9!vKtYWTmilqg?je-duc|HYm$t?k)pePdKFm?p1#jw694_h;VL z!yTO+!UVc$LuznEVE~SR#&Fz2dX_>h&FG!s!QId*l}vr~RWkRARh)Dg1y1!6J1!vN zOI*#D7*ZL*uKkacMD8Cby}(rax3YM8f;gdMre;{XlK%ALfg|Eg&Te)O9YQA3>Yj=F zi!JB-bKD=~SBdla#?cv0%nd}|=3oK=IGC6oHWmXev2jhf|r#oOH6 zO@a|qn14YjXqLKB*q|+BbAiqgT*D) zhgq7S=47ivn4Srmcx6$Hm}KskxyzH%cM4IAFd!`%2*9uk|G{`LJ2JAU(xK4z^5pF5 z6>l@>j4`Gx#6pn%Ra`Is^G1$;)|u2k@rVqCM+TBj@n*%_Lc>VxEc)C!+v>q>SBDR8 zn$~__z2H1z8?NAQbYwO~Rv%?Z5BD-y6?d3k6@#d}p^X3oz>=o2U~d3qv$Ae(p_@cT zN2OIS$Do2OM`8PAFb)}IF4lU|^O;9#Cj0pzcytE@cX$F_Amp_l0!KFt{W$SFHvq5~ zuwU;Rd9&adTlwP!_a4LDs)gduJnCX&sZ7h7Sd!{cOcwogPYMoKb!CP+k5(kNONP;NFPAXy(aGVBzNFD9_k-~lM0x!w7ClOY)4mdtEpBFZ5j+P zmd3b_Zc|W5x~xnPeb6}<4TL-^FsU~R4g?ay^8g{>*wMx;s(OOS{WQmsp4!;dZ$%}7 zq61LGXCC<`A}j_JE}HKE&9W5>EAU+qjc*}MDDq1 z`{Ci>@y)Qs^W4^EDt#VGY=2_xi*mLf_HVztASaGj zh9n+ccR?5-N7l5Y%j4h0Z@<7QSjnvnEG0CMqlp|q8<|8(p=Q4WYBQ};)@ok0?1*pA zFfgMBV~KIC?{+v)Yp$mc15@xT5`I$J!)->}1`9c&GR_K6eZAW;|hIY)PKYksYcg=KLWpGt z9!8(yTATag+Tv0(UDLeA)%uL{^bE2%(R&1|GE+ym^6vNT#N?o_B?=>4x1W|1PFhRt zeS<+MtVrHnK5&%O(+PkJXjB9_yCa`NbtM$^FiZKw8|y9#el2k<+%4VTS~I!yAR49^ zBQH47!imKOg49HGj0)1!1Jf*}a6*S0+Wt0vJ;;s7kArFm-zy_s$BLYY z4N7D(_nPL|H?;6)&aJjBXmKIMul!v?@o7|IC}BGcHQkXd!7F_3q4ukH#@CfJ?e|XY z*9-}x{I_=O(zGc6&1sCj=^=$N&NXO800_7Ye=1@3%W+}L(ZOO*dfoMqB`$bSUot-t zZ+W~@m-82NWOPzh#I;GU^f^w%T~aFJAEQ3An09=}AD3h}NCjsHlWln7 z>(VgRUGHkNO(0{LT2d~NjCv@K{~yGKmsGO(W0bNQ7U}v4LZz;{(Oez$pw@nW7OPWT z@oLofK-%ex1tMW(ATfXp=LD%Fu!`3sRsCcxb1&X5QrN&0D|#Aaliq4h@4_Yza)^tP zf)!0AuEM58XkQh73eo!j9aP-rB9j-ve;stS<@;2OHeV_ZVE9|S#g|ijCUY-4PDgF~ z_gBqmVkkY(j4`9cRp#84koU#dN;SSjR4xD!&1X=#PZO}WBObU@`BzR<<>k(NNs#wV zKJteHD6Z=bRU?}F#mevXJ!aCM=XujOXdS|RaZwtCboo)ECodS+S-nTf>nPsVkGqa& zkj40a0_)yq(ZLZ>n9~YL-eU8MPu>4auMCyS+gM@KNkxRhStPy_`~XornxD>zDv6Ao zYspgM;fQLvvXIpqo*!9Wd4=k~Mf!DnXaN!({q{3J0cS=^d#aWjs{>P=Z!P-Ogl6gv z+g^SwgtilM3{CHxfl=mz4qWHrj1yQmrXj)o1^q^WR;p|4d|X5{Ao`Yu*1h2ol->U1 zRd1=Ay2BUsx3BxlK7glG9tB{muTl7bqfq-c@bcWR;oP8*j%482u-Afm1Bd01Dnd= zh?gCNAZr50Y>fih9ri}E#j4YOr65K_OJtPt?xR0Wf~f8X=R3b!Q8MkNd%UkQbf^<9 zE%SW)|PL|g46j|EFG77R`f{T7K&<(dgxpznEf zIP4X<+Wj9AEx*+@{}i(K+4O*U)ofVA=**J=^&%4SCi|I-N zch}?{$|;+#f-lf zo135#o)Q$2|C47GcjFfq_6| zhz3VWKILQE3p(W6WPGxj0}Ai9$M|x>@9J_IT`^WNP-4nZOTV4HaM&0Hd^ftZ2zMHnf% zxfC2n1c%7&VjD|r)M`{5MWW3bCU17mgUM^oqLHp(q&Buf8jr8;T7<1ghjg-2^mnx^ zC1l8Bj)v>E5E3LxTL(G+ZC$VKl*rzcDNLc*U#021Ny&>f<_u%CjGjdI&BdDpz;?(~;+PP!GU0$B zRWXUV0aPSBp!sEW@m|IP(DmYzF0t}jwvR*Q7 z9cy!W^(Bz-@3H`vrS+uW`%NE0*%3jBsMV;i2pRQoi7ipw_dVDx{1V;=XcDD4kpf*M zvx5rM12`K}Z+WINr+UAZ@@W~$QqkpU<3MNp4l35Z{m@hro);uLom+NA&;P8u1@DWm zCL7PI&y6QEi?k>HEVc5*jSkR-0ESbd3uNMZ^0{^TXpZlG;bfwj_K<+M>>9F;CtBjY0LO^B6D-ulHdGn%u<3;3g_eY8K|(<%$cbK# zV9V;dx2qsPi#Os)un=G9a)@BbW_6Q~S5=Fpf0Opi)9*|bQk zwNa$q6;aABNe%#!Yw}>|#svLb-0!XHHh9|RwdGJ2Kpp+Ez-JhmIgq!l?i$5u)ykw1 z{{o?k9+`nbQX3X3*{mr-o8)$vHEb|aC3aMiEu81EJ4jN6cNg-!?=fnv*#aOb={_17 zMbpu-iPtt=cKu9<{sBstN#xk^#L{7}U-S{3C@hU43y)ABep{#T8|e@S=&NG_3!I}M z=}8e_MOr{?T&(cI89^y;oDc?$Mug=lJCF%&sKcEx+FFNXT1{v3z2ehp4I0R;g3cFu zZuR9%^ZcF7?5Z4rEXO5#C&Q8Rh7^J_&peBMSyAb+g4ZuydHJ1!9)uHEM*Vjum1K}? zf4UN#DkftHnJ6h55qwL{-#j?8U%GI$??yzW#7*AzE)9d2AFbhJl(nmoh>@3{+h|-@ zEkBuIS~W)`%SsSl!xx@(|CCJ?{OU&i9 zuV>)Sc2Rd_ro9{5;Uc4{6ZaD{aHSGHXWPWz_Mi_-HV)oKce~%F`mGeg3*uO0Ks@ws zY*0ldwE-_P>7}AK(zr39WKaAP1}+ydgNRxl_ceKAZwL&Ah)K;T>n%3+J^C{$QlN_Ufq3xRep~UlKqjdY23kbQI5B0(su==LiKOzXV)Ed7=R_yBu^p9bu;fy}3 z-eyOGhYOO;dH0BA1kM`@UdXulsJwdm0+wR=EwO-&B2{1_?}>i|BJHq5g1MqE{-;Ze z_n;p;c!)Y+f5Ldt_6h#^T>9MEb(ir4N#DD$rqAg!r#hqTn|xGELZFAXl|cftndN6I zJaa7*yk+TH?g1k;9Jq`a$n1a*k;3=;931)#08YtBtb|f0?iQ-4t*#(oE@W&jLG*0s z>Lj6XWRvOm`PDUn$pdN7^;s;9;kEZr86}6+`Jyj8B3#Ligu1j5o;I{I23Hpk`*}B- zDAm#EW~3o*iFiIJVem5DSe)N)mHril*qD%X7`Hnow9tY(PV^7QiM*tHaB%LSdM{Ue%6_`I z7^~Gd_HW;T;bry1@>0uH=XZ)ya49Akr+K2?;~5MUd5;7U^>%T*vsoi;8c_3?R-TF) zLh+_HtNYz^ba=jWYRHH?;V=tZwpgU%RKlfN1YR}_olu%0ImNt!>$z=$G+ zU^rQ*WOZxMUVe0bZ|O-PlPXA=YFU_hOC|Wv{um&b$i0zU0@lV_pyKS$DRJ0om1JD4 z+y&lJJi~a*kxqiHgYI0{;A*iGvk$!Xg|=pZW!|<^^Uht=k`} zJ?p*9A#{8$VKGS&-^f8wRG~z5Z*v4%RD&`f`n}=LSk7nUl7~{%1I$?kBO$tslItEl z8eGkde9bM6vI9srGQ#}zz>8(!cJeqx_oDDYL_q#&a`7)~rh&H}Lt}NWE<4MUFKJA& z%Smgb71gnvW;g1W_Nex0>>aKb^N!Ndo&)}RRkfX6M<=9Pcyf|jYGBYF477@t3j2e` zIJ(p*WiPmPTWC3gvA%|4Rcgb?v*GU@ zAn1J%F8xCjkuvqS_jqW?veB`!5WjlYbE3p5nGr&>oEqyf@|aLq?Qs7X*w*uMF84c8 zYVuN^`>Hf%yI03wHI#wO$heT=2zi4o2`Zf)-sAIY`{S8`S4G&t-|(`b>rsmZ^BzH>6ekaq=vZ>D3Tf^MjKz)L zn(A9xthRr`ULmUzCnP{oUEQ?=ldr!e2uM2KT&gl~@%iROJWaYk-ZXAK?JW9nuy3~# zm{!+(_x;K?LJ5?Jgj7Oc`EbSwq0&j@+wC*C&FRUNc;uLUK7>q z7ZQ&ZNAVj+p<8fkunv>gG{J;b0scr{_&ZVGjlkjs4xv5I#o4Cok%(9eJaErPRte9x zS&>>1=69sHxeC?Lx3dfLzm)Dvepqt}VI(j;OV$LvbUT|Znw?4>p2bk_z3R|sJ7EG- z(y!F)xHZ@bkWfa0Ns}|Z0=v2R+*$Q?(OPbAxyA12;UUxe2cC6n1cF{14BC53Hss!a;_^_#X66@gUYh{YY`ON`ZiL@u# z{;Nq#*H2AGCOjK{svsh|P{=l$oHsUQWQ=GaGc>8sq53+nnTzRZzOq}69TfY`HIptH zdEe@d>2svK_#F4=`EQQLEK8jji!AB(bCwkq^IX79!oznO+d}rB^aSfc(v}Ep7^$X2F5ZdY5-DJ9t+B@TUiz)1Zo+Q zo%#{!5meoQ#Scrj<>J@ZI|sYPJ{2Bo$M%WmEX8+$A3Zh#ygEI_zKLDj{v|p&%lMq4 zI@$GSgrz8&2!AT}o@1ykM??QKXcVO?d z_Q^>8fxms*^*8xnYHF|OShSaGbSWeEd%HtGi~>^92`_GaxG!T=@z&xrvtq2@=U=C= z<3tzPR>BsrDLtH)OJJ4r1>qd`%kNm8U4(?8wwuS&QO|=F>?r+wzOnLlA2qHrG*81C*$O=1&QSTE@FAxG0Bdb^tIlfzvh<^fo%I?H0lI2W$+Z9-;dwC zPisHgJChT6rnk6bwHHGDb#p+hRXu2Z_j>kDSCk(^FW=xHR%sxZn4)+dr-C8Z7n`)M} z-rav+ioE?UuV!2CV%_jpXq1&l>}2Mz+Yj8t3*7Ht@+PH9mvN#na+vJng9T;%nml>C zUsrnx9pl!#YX)@7Yrmu1UcdpDZS0!WasCmA6HQYI>3W_b1|r|F78_04zSs3Qrv~$W z!IuH!cSk7zarE2`OSSCUM5Df2-^^XzSCx)#HI76~^9>ema15|e3+z(wl>GED0~Eaq48v(@tqnOF`+CF7VvX5@?yA016V1W_8H8Y~hB*GaHBON?(~YJhkG7T)?k z9gOJ%edoOtL@}`gH~G1PIz499jO5Km{NjBZqt+?IW2&?)>9mj7C0Q{O1NLnG{XMa2 z#~$=0G(Q-l2eI(_!noc0i9(j1vH$k%Y|+)#=MJUXmM{LC`h#LR+4zb4H*;`Lr4QEko^$pp(W5&cUk^s-aG+l8zvwIWvs+qFhT*Q zyFi4W+UR8WTK7iIRfeuHBVQI0^*)}S?qBTV8a|T&F!3aX02CVYZGAkikGOYgq#&jf zM!l7RX~H^aRdz98T$=a!RM3jg32Qwo%y~8&NF|j&gQ)YHpzGnV`HPQulvuo$X;Q7^ zL65cTb!yy2r~$?c0rxaUEXLlQ(qkPAie-gA=q@ZTa0&eu{SI0==(qu4wPK@CKnS+T zm5A{C-hl(unRbyu;xNh9`>||-0>gX7J3$V&hd8|m^k0#YO1qkiZr^$6=(y8vUJ0bkIufwW z&kuA$Wbr0P7do!<3|MY&!T#&%&p~$!!>6X1>R^`=2Ltc+>=z$ssZlu#XMbl`U>t$DPjo%u?#M>`O~uu!QL=fDXrvv%l6JGrLy084l%Or1}dJ z<`s&@GyT)doSUK9BE5AtlxJvG;BOUf(zV4yZ=%m@eBc6(7?|`tUU2@9BSWj}j)Z$? zAx7%iJH1ia#7=~`N8=H->{PS#qIxm*creZG0>!RF$guibiW!vc)y>Oew-k+|uSm$^ z%~4+0<&h?*(&s725lgpO8Q6OiksF=D5!_K3|24q0_p3GWC5X}spP$_X?s*E8=YHJR zEJvB%44<2xim?ncnyzyX37`D!JW=tbUnzSESIAgTKg-5dd^eHu7|ysfvgg4EKhr_F z&_#C78_o%&*)_t*)}nM*oF(5TCs>>|no|;(FD|IJ?INoMrOa`X-#?m+xo4Z(7Qs0a za%=w5-3KX4SwK$7jKc-f*EA%|Jm6+)M7J&TE;A>ZiBTaSSnv#s1I@LgK}`W6Bg4gg*0EiBZuhtWi9GGG zGapcb$J-fQpoMtP@b0$sYBbyUBjS9z310OA2NEud%DZ>A$YCCMPkRS`!&BnEQMjOj z77fwxXPrLl0d;@iaB=4$Y45gJtEm&%{ucMMX|4W_bR5?Yh4C@?;K0$rq!~}IOcsY< z7!99CN~;ith~Gn?9vC#0p2jOBO-s-Rvk)B$-7>Yq3@C2+up58Vd) zS4N^y#LT_!deih0Gz~dwT|5$TsgJ$wI`;4W=ZsnU*m9mLtLtuf}%S=Z_~Il4H>-rA3yJ> z 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 z%0D-qTt;P=Tl~D;zS^J{7xz0*IO(*{bpraWt5J)<<>b}$Qr=g5vAqLe$ManjJ4?H+<6m1}5hK0kYqz%iL zF2-B_wGHMN_h1M%VN<|v%$=o>eWDRbg$)m<_A-<4NcUoQ*w z%8uk}2XL8o)#k-y>z-XYyfLXW=QnWi0W#$nK_51_R7PO`_Q-kr0lKeMBSAHTw%deZ zH?nV~-=A01&~@;7jS?u&=cV3oDkjIW%6Y9|mo6_migY?XY+8lGEv=1GzrZTp|MV^c zvD&lVWX@QamzS3k_?~0X#ehW?IIq!j`Fd_}^0EA}QL#}%`}f7|PRO-Y)J3lLk>751 zr3BK;@S^isOoQLSf6%I`nJh`#O2L?T>!t61gE{c5`>rpkQWX#4+-v zBOLH3GCdC7VX|QQo`yCE+Nmen9tC)rem8gCvWk(*$!*EWZCzbmQC-}26NJ;^PNbyT zWtj|&%%UbD6)rLuTa{rIfsqnlWzfJ4ZiR!1?2XI0wx@QJyA5WdE3#NAQ zFLNk=g&YjuZf~P^q+?0wJUmbS=7wBc-Cf7_=xE~(&4HN2n`TUt!kJC|5l&>o zDX_LKZ#-j6Mf)w?+Ex4Ptq|}!2CdcgK${;E-?ujPkTIwWWIdor?`|1b+glI!Q4i^? z>63_3_BdFSi`Ui$z8X|xYIIE5rxzClOXoe^-R;7}?K-7t2Nz`)y4`4Acd|4j9O1ggS+k52QnYuOj_K4 zK%Wx3=XY}w)445X1NFrO)IBKC!cCYUJst^Y8GCdw4@9dDOjBR$OQd@%_$%>ll_N;JHBB}tVQfoHKHXCH#kN7`<- zWW)Ww_R2JMM0k+=-QON*38HTO-kCA==TF(!uWfeKb;hVJAiFR{ zS92cXSJs(0<*f6YJw5h&u%ONuroli=yKpZ*(W$`14G>Yyn*EOfEZFU#u0?iE9+Ax- zt_`d`tMp|60G%ds^Zhg(rBH(xriL@Q4Qu6D6w*mO=P6L)MP(7@2v_0%+$saYp;NIF` z_}O$idRCZvZ>dEgwGUsZqRyDSW5lD$phV7V~U*6)!`*Ws)}p!Z^#9&|M6=+ zJ$)Q<=!I{BWDwY@ZpFT6$o0mhM(fR%DxjS`0|RAK`{<7AN)NDzR}9Q=cem`XVOgTH zmBm}*ALN2p{%Cd(zA^1xE3c}=uJ=tb@xP4^AL0DY$c+TEvVH=yS-duJ6f^Po40%y7 zTko-BfSyvMA^x6b@KAH1?CXY4tRwmSTr~WVOmQCBw@+2xMf_lP#4Fwe86`6}ZvzRZ z_(x3Dqyqpm?)DbAg7>eZ3}h+<;}t3CZU8jyAB8*KyWgWdZ1Le3k@^FU(^dl_c==E} z-sPpLsZzJtVq#b_C~EIAv)t@1BIK@#?eah-d9^3pet!A7y8Gz~Zd0PF)u-gtVY>+~6Se?Q#*11>iY zW^Mk^#855@#--aSw_CQ`Sp|8IKki^mn9ryF>79i`R@I0^>Iu>c6&tEC-w4R3oSY`_ zLm0TG`69906f-&C@_Qm63Etxy>tL{Mc?xA4Z@DGd3cqOcOpPSSkVtswTWzPd#XOrQ-mtre87N!x8C! zb{$1Z|9EIVYhk|hA(EJUbB05{KIB~CqUk{PqLULZJ)g?)Qk-)o;)W~94tRbl6iIt$ z)tT#4xx8(fs`ox!2R;qu>yVv=wMidUenC@bmswx=OufK|0=7w$#&Wq6hbjKt1wV&&0@Y(6EK*3+i_YtD90gHm@Go*5LA7* zAFy$IeWh@@#pG7ouBt(rj88J`72kFJThaC)cOl^Xxh~>En)bV;W4N{!|G1zx{hXrJ zIO-FBr6A%}2@4$la^pcp*;1n%w4tK03RXT{z=vBvElGk^!RrEIbL&hNS4YWsSNEa> zKwf@dHn#zy?2~n1hlALpB`H0~&Mrcgn3zw)=+kmRe5OLZ`&Ne+y?nj9qn$6i0ilK{ z1S(S|BWA<^=F7Yn1qUSa+zmhkFa?-}TpR#!l{*&Ds)_S;cmbv<+TX>;$H&?l8pDCl zV=|Kf z6EtfO`GAk%$)_QMl5q!&2>`WRG&47~cx_z#gt7EKJ13LXt6p2ykUz^ktWu|)s~?!< zyoH~)?L^1;#nZ2bq|v(r%Q@7;)eG@iaaG^gsH#@Mc}M?qE#x&Gbpx=sCk+)fdTu`9 zFB}QE>zcqi^}Z*H$gNw@)Bn?jc2GB9r%>B(Lc`ikgNrk3lrC9`Hv zuXjELiw@kMs5O}YLL8XA&*w8-+>k$03kj3Yd_HtlBOa?It(0VknA%RXD`4n}6(1ag z(Qt4&4_EegU3d15Bu88|-=ZJOd9QrmFtP+I4|iPd&&ILM*uMb|3VSbf=Ed|;$;21j zJ?%Olc$!%I%lzNJZUCP&c+UZ)uggo5Pj5Q@{4lyq{Si!}?5Qygi)mWi zh1__9PLAa5E>xFI`faNhOS)jmEw?rpA*CK>2^&3$lqqx@P7o6VP@a}Ra{ov zN=sJ(!TY9{y7co~EySTCU}Z&oa=8CBv0^3Wb-)_BHso&sn?;>($>J^-V;W9JX&5y> z!E2Hv$n)M+?~Oiq(vwhSv6PX@r|dhqlKy`OEUs6wp!WS;R{doh^BHcV$RA_kt%SfX zP2e}T_M=05of!{8EJ|jXRx_uBTAZILedU}unU1czxB!ZKG#U-;42T96e1l>lsoH%2 z1doEOn3%Y@w7j^esI1Y$^@nR#bsvZA$>=UfJj?IB+(kMqR&Ttn3V;ippcy}I{ zZMNF}JXfxPm$&;p;lP?z^GkuZWxO%|zQ@=fuiS2`$DaU|Pm8|KrhPNix0X>gTmv@+ z_V8W-gxCZHz?QH5vaS zJI$kIKLai|Fq*5F%e-kY=*90IC(v=z zgubF*_-wMA7l-a>-xT?0y;EKuRt{YStJe4p(N`Mp+0-<^6xX%4Qmp9;aS{bcg9ucJ2fP`y^}lZc{oj}W|NsB`l@7<Y23$` z%PSXIU3UNgtM8vTFoh9|3;;kTwbjt^&{0wpFn4xjF|}|uvt;pcba_Do079ZZE~e)8 zmL3o@OKV#vVdzO~Clq39Aq>^#R$^0fk+ih2mGyJ8RQG$QVeV&d&Tjz~6@du(2)qz* zwDd5A_&7Q^xeNFRL;por;HCXfH!BqKFNlY|FjV{>h7cVk6^Nv>n;N}ou=Y;(G1%2V>W??0u29y3bua`SvsEvn* zivTODx3@QoHz$j;n>8ytKR^FJG&nezUl7dhzD^#dKFm(;)c;KZX6bJ3X6xc%>+A&i zhoY&Ov!{nJ^hMJDQo+&XKV+TU|81rhgR%OUy0Egdu>GUbzkn9z|G~Lhh|9SjBF?cbplG1;8{4Zs3bo>tscMmDA7d8HE zkpCsxUBlPKl2y&p-PzO4+)~QxMNH~{v~dxTbh9+|aCXyhc6RvhiBkD*ks%x$ESwNJ zB~x=-r+<{7{~v}}!c09Zg`xk<8#5aZGdsTqJEs6AuK+tcBOA8>C)7ufm94|e19vqU35cAOBo8}34-Yd33;VysRZHHI#|9FpptgZXYy!!q-c+@Rj|J`!1h5XB51We8U2?SxN z`9B_DX#xFrx9$J71^$byw~gfs(f|B^>Xu{glFmWlI7f9(%J1X^DqE#pCShn*YH_9e6+2x zT=0C2Qq^#^YTbO^?mQa6y2D?;-J=5mfoVVzP^#!6I@Qmz5j|SrnO;jy-ZwIWzoK_R z*PV@mi&(8IsWuDA7OJ?8YWU&_0C70+SGdHO`MCRb)*8h`^R?dNX14!Ypsp^mM#0wv zeUR_lD!|rHN*fgaZ{KJPt)uxsBK{i zZDbDu0Ey-Yr2m>o;hoCBx+yv2@2Vc|H7h_o+?8w4+jL@>Oal8@gc5e#QgIe!<5O~r zfB+QC+S1LmwzaB+*lm)rvKh(B!f7B71Sp)&(m||c0DCC1&Fb9#vL38^RQE-=X0k0bL!ox4#1cODwfe_y75EFAH2cdFq(N;g z60-G7O1O0LC}2|@01UwtUv5*@cI_q?-x#Iu^LH_@i?dMK+sN(5gU3#ClP}3LdbWt5 zzKXN#vw#PO)!VCn!NM^7vLC1$7|oQVt5-nv>?@v$Iwq=&ef8v}JOY!{w?;O?lnO55 zMM6R0F+!nI;8$QNq+{wt(W#gylpgK5*<9cCTROQ^fg>60*CH+7EIy@=Y~yxpg4t6X zl7$&yW;pm_FuIRe0kr%>FMco~j@hr;dzdXro_8-8fe0yZALpmt98Ctx634K-jZXd< zhR+y2(7hETb1riZBfv!IEy)eMYDqJGZD~u3Q9oI_Vy6{gOr2zIrs_Nj2olrz`cS(u z#PJ!-fkur6M2L=zgg{?`+kkQ3DM>|4Jm~=toFv?JIYxJkHy{9&EsVjd6U2xxKFy>c z1@o7_r-JZ{FXVV0ldD`;UpENBvUbSq4`%t_>K$F@wYwCw*ZjSq{@A=cn_PvH@2;K# zf5>Mn4o`O(4K+o0>lz*pe?<%jCICse!d&wKvhcsJbx`&@A6TF2?_)NPUL!~TIGh(C zq?NMb!@|S>$p-11hGkBXsse}|2rrv>=Cu4)n5_+tzbMB9o?Ykc)A#Y?UqyYYZm*{%4FRS*zLx1V z?JU6$ZFc33VxkkP9CuJD!(l)|v353W=bJb3=D`DqYdVe{F9i3YGcawDQU4BQI^9g< z{{7C?@DP@`a@0EX`jens2vmjbl^1&$l8y=(jNG{v#jrV`Jfx8G@PjKD_GL9mGB!~Q z_3`<3?P;~)*b4ze?{;Qbv7|78LHB9BS4PBjyW0wEXEndasI{j0_*{dL07d+_e}kUpjD9{Th9-JPgqYY-I8QgbTHN0tu6mW{ zn?d9ZHmpHLNhJB6rDJF27UZ5yOLZ}rd67%cdudZK%ZD1PoW98#9gj_sG$$^>0rY`A zfP1b~Se24YWN0bCCbTC}(c(SwTHQg`9qKJgs z{07adH-LAB~gHGe444&PRw zgCN6X_PuA{y5&^TkHykFh^Y|3l}eSXe*@PRN4H4;Hs(UC7Y}G^uednsJsW?^+2MmfqQfKcG%!HN^ z5F!oo6BcM<}M#3?`U(zL)`~4f`rB-7TN|2j5-*A?H{O#Cd z=|Oy=6!oM}6kEG7`c_yTcbgoV2vyyYUX=QQO{S0A;6R`2&EVLm=YktNOyg&x$M;hye%M%QfL=H7}7uKj(rUT~^IE_~~>yk^pjifS7?o*xeh2>t7ka=xkgg9;R~Tjx}0HsG+oeIgVqDE$!x23AHgH@%Fvx)KM- zxjZENWho9wy{Ls+5qAt`->WQ-epU$ zuU4!rRy(j7`g8YK*!#~2P=((;)RGHrC*7-X*dVW=zKwnQou|BZoflK62OtR(j8V+YTTR zph9Ck;74ICK<0ZKa}#MLWFZPfbk(kr2sIG5GC^`;Yj$<@PuB@{^}7A_a8{EL(ABzyBb6#L z6C(zOii7Rzg(e(wYa2|M(K$c5BPH^dnU)M=0D!Jt@Y0mo0m)x__lq~fK6G89(UHaE z{e%#p$2hkYVHPKPzZBr{>*0>EEC_*CMXp~!J)49XaHnoz-UZs%#*8U8tV7;d!N@3~Ti8?W) z9#`({A&XTg_-dm+@M!#lat?o8&2M^%9WM$d9WCLl{Z9r%;AYywxS5plc)}$G?8Y=o zuwmSHSNkvYfELgz2GT(_h|1zG33bQoCMQ<%y7rN*-m#JL?=1m#lb`2t`6O`zg0+TF zDc&dZ1{CYC#H!UKMSyX-7X!GW&zM|i1sZ#>q-=zeS)uBf^{upT-K?E4D)7?u#fmkC z5fEhM?TZ5@t{=LHvB5gEqt-K|0^t)hRiw}sv!Ake2REZH9{P3{(oUTe1t zkG!(|u!|p7f@4*~Dl(*ed)}>0T63GfuNH3=I{!}R@dug&+kDH4JWo!s?KT#Jade^K z3F>ruoVtmYAM$&BZ}DiJ%BH|d+A;EBA3iUByhoT&L`|z3S3?5xSY6lcs|JjIS6Esi zTOX@GY9CCQ(ozv4-g;CeePoAId0+YzAF@JlaN#4=2x3t( za(`>>LJkHVQ;ykG8vU&5Is;!LX=i@xz zU8nZHKGfCKTUB?iTKz87Z$Nl=74C<-ZvcBe`GYdK9KDxzMz@OXh zvgr~d-^&JVW8ePkhyDnX4l=uAq~tmH_Ntygr-A;EOgYa{NQM;GnaFFxJ46!9FW+I7 zL3%>CUU2B_7dd<>>MTphXM80Irb!Pucq=5_``cJ_uF&zSxU8iPk+r)0rcF4^l=!{r z3^8RQ_?2p$z6#f4a|!C@mp_t!4W;M@yH(JpJ}e)3k6>Si6DK5(olSQ6G#pi8ZXU*6 z&Qy!sGHbuWiDtv>pI2MK-o9q4#+I35F)^ z)I#&!%kJL;1JOIT(H^;9X5WTaeU}r8MXMWKXh+m*F-8zao%6~ zi{6$URaRmPKM_xOO{E#{UVbMmpgp@g%F1C{jef6Le9cQr$$#FZSU+ydp%=dc;!Pw{2tJN@@pW1~mdb`%g!-@eW>#?Fh0r-c)t=R;1>`n znd4wzd?{7@vC(lL9b1E)zmwIM8Dm`v%*IFft!U+++GbzzPrRDNEBL}s7>VO>A zk9ydA6rYmaX!Zh?K&s$Tjxys97Mj52!{r>rF4()&fuA~rAM1RIWKn}m9=fp0BlW^9 zrf!KKU2pv z0Hlt6we{oJJ%Om${1bw1+aZ0YY|7o&Y1ho{XUhtzq(rumS7JiZo8buw{KuC)#lA47 zU*$7b6|vGy&W2il_`D+_VuZ;y@^xHD4qjG)o0UebL4W>)VZk_0?7v+JKa@fchY5$N zWj^vH6HOR3e{Tu0w5I@tGKq@tp7#x@52jxEVDwcWv5gs|j{GrL^yP|V%VEQ(|CHik zB4b#3eBHy7kDdSJ~!J+=K~D2prKh{`QnE3cADL+NfgP+w?Vc z>w}2rn(fgzi`)j&M4?Sl>V zW6%K)pLLW^MZCD#tD}md-s6^tr3s3K4y>Y>MBlCaPue#Fr5)A1YL)}+-FgFoZxZ(a zt?qP+k)+Tcp-glV$dwsDn=|k~0n_SrG(5xDTf}l+y7!4PJ1ChGbhD&kdhb|*ikCXubsgFXK z!dH29S`cAp0PuZ`)B0R!L~Sbf^bvy5fCZ1bjYkYno9Xa(6+fmk03WkhU-Tk_?D@wa zau!^Nl@;4zs)fSdE?z;dPES7zB&$2F?(Qm=2GD314yrq`p!}xprpGrM1{~3$w-Gc- z=QO}nw~zsL5FPwm=Zt=f$oUTvl!s!Jts;p$3{?owIuPt9yrswed4W3g2UFx|v3+2g`Tb$8D$9v5bQ%rg$*} z&oxZ?Ibt~h3gW##Q6dNMbOhJ0YX>Q5r8@6hJ6oOCp5zh*DA#MRsSSEWeSsLxhwn>Dddg35_MBh^>xcLGNCyDMg2H%8CnCa(xFFug< zwzaiD)FfxlxLNs;)Ivwb?R(0q>`o7V%dMY#pZKRP6}0`Zv(fZ82q8mKz%ueNY`vdUTDbvaP^hcShnwbg~C?wDk z$P9XwJT|tm6ZTWo^UR{U_2|QTPfyQep-ddRdgmB z$X#@SH%jfel`i4SYE4NUNmUjBI*Lrc?->13#@FIWp0 zl`IZTIHhCnI4~I6Q+FT_0Y}`j6b}eCgCL|=sD>!JGVBe=pA$bG&h^eYtt_vu&KAZN zS{$2fCVsMhdhC2^s?vKdo(O#EsU+Jm@-_8zbYH)4Wd+ITXDwWP;pIf1y=vq!Otp07 zIK2AY4R(t$wQLpjVV39d>&ncU@fUyLLy0p&`(Q zORRKHP7mOE12xHY2(1T+jt)lmTl(?H=GS#tH05mU4&ql=4%kE0uISMpbaUS*_LHoP zj7l}T(cu6_taL}G9K1WUr66)7jx`NmP-~{3hAID@HF_EIc~tr z<#_N-@TGU?>TUJD6=rNPQ$Q^3-hE5IeT&*r3NUE&JXj8B#|#Qf5F?%ks)^U->4DYT zhB;omkUFx-f2At&WG`PONu1tV<@5rp2cV&*~PA@Ulwm>^m@+`0WPD^(4tk-5>M?=I9y5&6HxlY=4ffz$+6nm$thdN zHxyJcqD%h7rh^z7Bdywrj!-0ILE_}-k>vAbwv?{AphuszJ>cjtf~e#4Pg>CPTCIC| zllB!8Yw@^IyW5^lD{x?`>A7n^1-*SNP8Y}I^~HS;0t9WrX7m%Ez1QrALb|aY`4mp? z^{d5gwkW?xi=W21Ik$ggMC;m`j&$d!zRuX|tuNH?q`tn7B-%xYGXvxA$hx`KDy8U1 z(ZQi+s@9(~vQbSI=wU@obl=}f77Lo^LEhIQfN^)iX3)=3mEoO$d>{_K(jMaPDwi6@ zBQx3Ay2^uIx>+OYi>%UsgwHg7c@{8H00mljs2*#WIIEI0i*g7BRLPlX;T1+*mYN5v zG^%gdGzo%a+5J|yF2Hf1y>j$C%&uV@xd3s4ve8-vArpZHq?eVi_T0PnTv#3axRl0X zNP>k59VZU>-96oT6JzXiSSyn(kySE{y10anshj-<2MxU6mEOG8P$*u{x%8J&V0(#( zMMi%~9-^Qwfxq)~@$soyc=|NXZ)-~%=&}}qXrDGA_4wKbxu>ujGQo+!hNgOG)meS@ zdaqbFndY5KdJ%wu!m>sEQHP~H;Kg9tJNlQ#&t#o-!L}l$NO68g+hh9Y*ij$8+T4K9 z5EHE1?C5kg?HS&FAr>o?!Ht~5*uSg|AJ(r{Azjl)5rZQC@edNL@c6v0wb~9WR4OeN z>&CxmRqtPMZHxlp0RPmu7B{)Zy)1LfxwccPY80*RpWNcKkACRIo#^i^!G9dqt=pu( zO>7R3S;yp z!L2XleaQyTOTSi5$HhJV@cN3D|u zW$?hqGp0MO<1wpL{G|XLgH&nX+;pY}p7V#ApKw!g*cl9AAQx=u50o?%`0Ml>#UoR6V@YfkD5g>*ACo_n`cyE8Pv`wrIvYC+ki;$6 z$qhaYzN39+8k+Z^N|g^QKFOU5sytr#-f(sDv_cuUfkzqmC-IXWBcRBPG#z~gk%b{R z+3Yz1z=luk^2&_HRfrq|M@%Kj^y9bR`Q?$pSKZSxh-*(CEKHF$m4?Q~jH|WoRa%wg z0yV+DRbjatbiP8NOvqWqa!ebF-JvJfn@dfjCV%^C3sK2t#JPq!1j(ga#-{naX0?Pm zr)@MDjEK_kOkkSe0|6*}K%q|_)eor1EA{eXrBK6&kKD|>BY!nCp6vx3lkL?lcV6;I@D1duF> zh4_26W)$AsR+r-*I7fYRwqR-mT6Tw2fg7!IM6o~Me1con^NU(3vH;Us)E(@Nl zr%Io!dQCZ)wkaKOXB+`5O3hyE6+9D6JR$gOVIVqW+BEO41V9tiA)X>~`Q$;2rfRWd zz8~Tt1hV}DL$Z#`?+Zw`0yH&miQ-*CKs3rJ-(Uc~)Y3udBEO)MBp760DXz)_vSXSlz+~Xoa$y=ce5tAX zKgn{D54&Klm>gWqa6L^;O-{4bV|!r!K>P&*jc;WJa5)VyU4c)*O!Vtv8cJ7VBML zO+OCya$-*((paO;w_Ku{K1ATChT#juVLb9~4agF)rxImmVOcX=biRY&0eMX}~8J(WR_Dx8K1Yd3(_WBNRR*hP3PZeJfNWGNTef0)kVlTKJV1 z;Hd5hAc#>U9uEC2_9K6|VyvDInc-p~d8!B_5i7LICs$3t<}gQ>Cu`2wC2VBTYi0JJ zspHzLxMew05P{RbU=k<_crA8K=urK=a%R=b+dnc^>E}_lUfflP@cl=0C~m%DU$4cX z>3JF)Q}^dMNg|MUyr&GK=9 zr6;x*r;gO$-e3a33BY-)AsdtWZ+iAOK{n{NBfR+d-Z-&T`je8L6^!Cop+zB(bY&b zaHJU-ajfMIqc`Xb+xti5GGFC`?4|HzcmWWp!}MaY`vfG4y8P@`kM*n0r?g>oze1LI z{0u3bH;Je3Rg)ovAXIbJlh{3Cw$y6^uvBI?&Ye}7Y=$zqs=zJW$K zF+KwcTB)pW>eqLgIGSa|&4^f$1b;~@H?f609{!M6K1lFnn8tILlakErpWj=jVcCg#)D`B& z+&oq8_`l_ffB3erZ|DF4tJo52J{{y$t!#Ep5V3en|0a z^&S!dPPn+(8B<L;jWct-*KENz7nPM)3oxh0|q>wLbc04&eI<14gV zeeH(;_92Z>;3)&uSu(km%6g%*nynwU@%|!_E8mdm?X$XbVoI zM_=}jevgYOBjt?RPRq;3*N!ZcY$O*l_2~7AaGuIrzm6Fly9R7#renw1D;|69!bx4t z(z92w5ks`Y2BNQBO%aq+4UBP2z2t=4#v|h6c4BvM=%wlJ4!kve!Graj^)WFq2M31g zJV)NBsG&mc{#VD3e?N%)vYV)=suF#?a3{+mgXxg>%f!D9T<_NoI-?bNDv)`{dT1Q} zi{Dgi@_m4@z09ad@>?;~h`wBRIF=20V>;N^>|XttDwpeXfrW2u3K$>W|Zghb>w$0$&t9uBbeH@eEQ6OMbr_Q$Z1~YQY{B9mZ!aANds0-Z!S-v!6Ws zj2ZD;~WG48%}f-TSkF@)H~;w=c?$P)3+KJPLHUtQ96uIQ%Ee!UtK+Ps_-@z4c_W9I4H!<5vXmW)sU}cJeLdimi=`L36G3o!h|wNh*?<6 zgypKKHfUWxz`p^RB4=&}_J)`y;wc5MZp=TnpG_TX^}&F52nZ%Xmd2%{7dJKkfJJfV z{B-c#1XYvg&dT{bTQj@*z2Qzd_&)gdZm#2sH)snz_`vyLV=6@IRC3w@HOCjPG$D4R zQb}!yIRsP#vVebAn;t*}Gq6)Fj$yBEnO~#u3{x0|^S#3@@gNaL<9Nhc!oKfTlKTUcinBKfI&tuI%KCyhx882296c@rC zV@Y*1msyX-7md0xBMVE=0jL7$kdBZWtgNeqIh6+{a@?h^U*+!xf!N^qXCY^s0?EQh zmTv(V>7V3Nf{yOuf}i6$eYUr>X+V__HZURH4OSF#Hom=~uS9|%iIm*+)QqAV#MkCI z=$+vZN7|JB_8^zgp@Yw7i4AdBh51XO4V7=ub0!sKde_3ct>~MYBjCBO{!$+oeJW&i zcDe$e#`_b{p03?Bbk5i{KHZ)?pqsbh&Lr33S3m(aT#JnMSq zdHN4OX+;}Oeu_{^y}BJ1y3aW=YV~1Pp8kBD2M}>N8(rTVY)~_=W(c6J-#TWVqqsq$ zZOo^Wg(HmaMu$H!U-QhO z<4PRsXxn`Ze4t&*!J^vg5x{uK2X8i8TD_8^%lK%(78bOjVnu<3pv;ualTTMV-{3FD zJDZ7W@^}zE6gPMTqM2_Hp;?4bSpqmX77eX!iG$*x$qd2GpYP_AbHL+NgMEXv@I-y( zQDsC#|Ax+dEg?x0EpW2-0Lu@Zb1bWUQk^wV^WE#k&hYU`Y%cqUkd80J7@HZ1Q9o5u z2WGc}bjoJ4!sP){k%<<=p3G4)*e}Y9K2JPvKA$~beauF744`4~58S|_6gjMDby?ro z-_NxER+8e$6e`O#-hm9mPjr8nDz|=~e13d>Iqn^KKG?`bJT)oprl(Qz^SbT29hs|M z?r@6L%2Z3m=C$6wK33lFDRFAi@4wid1eWNtng`?-V_-_9s`zom5|I(TYhV+xUHeVd zN{#idW)o&`6GtLi;k`X>+=e??t45lzXw+=|90CC$!NtFwG-WamBG9D4NqSygLV%abCFHDq`IHqI99|W%eH70U8_+C8anqkU88`RG?l#fKT%H*oy zJ)wY}Y|DkU+ofPyrD^A&bNvAyq#j>{@hJ=Q0x&_2Jc62P((~AOMi;EN1(rpXMMFD^V!#oUd3c&NAaD{ZmJn7B2S-QSxV5Wd+kti-+rne z&fpm6liT2PP2wLS=0HIoE~tydnuO{}#8`-Ll+p46bqfsULdPHAEi>dvBb%mFz&{JhtIRyVjkB-_ZJ47Q2O=ow$xMR%`CbDi( zBSnhTsMMm2m-d`tTLd8B5;U6j{|d-mqKmhS`%Y(8oW#}H-V(Ss5ceVe^{GuJQy_28 z^GAhYmqBe;G;Buv)9i-v?M3vVa+@uJhyET9Y#hOyZR2};(Y4%+=ac6T!FL-9)wkmC z((P@+t*%tBs?$;30sDT&={;p5=Wx?k? zyS|jxn<>rfHO8Z{1#5qbFuo;IB?pRC8i~3c+LTWNVOFyP;ihy zM1AP?^~+ZA1!{Ol$l-R&5P}aj!0>NVnX2?+L+%Tw*H7%WM#rJ4UMb0upEX3|S&iFM zi}^u>o09Swe(k>gmTxf1rTxRBBP-ltNTBfD`F_{BW@{WADKXoe#fRmsa$0PPuMFI8 z+RisKx!a^h=cB;7soTC*ZA_rb9n>N&219avC|oReCvcxu^s@7rGWeq1+L&hZp5Wy4 zW57k$n%~)QvBIT%K0i92;n!JfY)XT**9ILyjKjEv2r9_}2jqxJ2pS#F{+-XLGV$a$ zhsL)Kh0|WXRo_rjGulx_uIhsuE~08u>toULJ|H;I(WjqT-EL(ilc`f1Z2&6fnVNK8 zO4#HJ%Ltvq5iZN!Z7z1S=m11+@i~#dmlj`5cay8a zHf%ruQ_XKgkg^RWU5$*{Fs7w>9m=s2aPx!TwTJq#Eve}lrT5}v;DqXySY}{?mp}L}a z4r*SEVo;nKyab^bM?%J8#<)}>E%9jfMl+6#+`Hpx#)B*ygmOjjFOiEr+UFV3=baZn zBS7?w!<^Jid+I64n?IyAzT2N;S!-tL%UQ^v8)`%?{2?IrrnKXF)V(^d^(JE?fE3vc zRcoG~&^7&!EK+3u4{9hJ4~DbzcPy}Ffb_w8G&64N83`ngr<3(Xmt3ZoNgXSJqV#NIs6jaMF$>WNJfJePs7UwXkadw|8rN?>-tTg zDLzhPBb+c29F^|a*(%j*N~{%{FEQXtp(`~yfXzI_;@8=)Fr;9)YPnf9 z{-L+!#A4BwG!D}~={rLz_nH{i3*|;@?^@iOtJ1=>+Gm}f_t4YIQOC2Zw6F3pQZHwtoczxf(Xp2F*x6uYB zsfaUg8MD;MmwY!8qHbA1Qf1HyG^WZ%oDcBU0%fS)hbvsZ`1N~kNL$BuFHg^z0ymZk zZUcSeC337EHbm|V3lCk^n0OVJn9RHgIJF&Lyy}gr=jxf1r(w2R_d&OqIvjt&DSTAo zu4a|ygi?Ba{0DcB9gVjEg{u|eUsbYK4X4+Q>vkdP4sEa2RH6~yg)eN!W=M{>Cf^){ z6>-%61Z8U$m5*iVx7Y9&qBPl$2j9$3$-EZXlx`mz^9&0(+odv|3@F+AP{6VMkW&6q zgqfet5cD}zacuN_*qwy@jd?c+i<0%qy$cWIuBG(YyfE~-rbUKp@-I+fWbgPA?(j@x z=i z#uxpKy(pROK4fClHr2j3Bm`c^MI=6fEvE8mb>B&F@RF?};)`K9LpJC#rF)lE*&rPj zV(78LPOpO|?6eL|s~IhfZA!l{Qx~@}$o&#k!YOskBpg`M6+9t6dMh zw`Cz7D^whpcd0V$J{7fPY2WejVMp}3;A7A?&FUC;J}D6~F_y1BMJp!iLk6qNzqH>b zgD|qUW(BeY4=Uv+GaMp2$Aaor}DTmuJGOw2YLqE@L#lq&R687!_7vT0FMXW|k6K8z+#7pVaOs@;XwKTk5*j2Ph@>u|z?Bj0&o zA4u*N4v2*DDQ~Rji@NYwi*H5D_|>abx@H7KOO*M2-^&6DPM2b$6w*c8i^qXvvwHmW z;!0F28zOeTjUC|^OX$q#!pBGSv^cQRya`M@Fv zt{;V_?ON#N4I|psEKEnO9$Sm{X;l;gzT2mKnjMt=iOP{b)Q4RnefJ6G9z#EqhiHC*T9GdHsK>-K!-pDhZaZm zx#H4x5cx>c<0DrQrib|xm4dHAp^Q>}YH}x7Z-%B+FWPGxNn3{%ks%pgm6Ay6o~{k}9|j?>oDDk# z<{VgixE+u9#}hYe(7shtpq$3Ykw5JI(;d`HP^Hi1%|O)BjzlSgR|Ws65)cM zqByJ^pG1Tg!Js)>A@*4n3RgdUu&iZa4M13vd4s~t%Cmds! zn3+0kSQkcu&OjtVgFSQu{PZV^OxHS@zxJf-@}S8tJ6~&{(5}6%p=HK~S9oINlLr?$ z^rh4f{Tw@!nOBLe zV`BOfrG@4QpC{=D98=r_RlN|KFJG!0}o2Nv*njGadK#1h%@aX^v1+j(>-G}*^pswQ#Zi4|+<8tRwN+wG#VjG**}K!r)M9_1rp zu96a+htJP9m%FH@P^{e=6fC+U}t#hI$yz2VK6c zJ8%Fls0OS7v8X2#EGwk-rK_qVW zd5I0Ba*gIsJC$6}r^3^Cc{A;b7VoMuUzec-H%BLjOXFsb%Yntafb!Zlw$|s1-k^qU zlAM7G0O%)BMJGz=a=+iby6xd?cJ`_}BjaP9fT!D9T?2pQaxu1xvMJ^##Ee9wE-HRJ zllF`+3$t|l@!!K}6td|YrCkvm7QT?yuGlo#$881PYbAMD`jg4gS2E1Vr+(>R*R!|I zx$;ci!mLiISDI>GaDcG2IK2IPH8IZQA>d0&q>)^!-q_Z^LVDjc0$ zamSjLuyaNF;bDAZ8iAz;Ul$dViq=+~?1*F}X|@13$cZBbX=Qz#H0W{GQnt9nC*jtA zD$S2qMEEvx#)+qOr`vyI5}6RzK;P|+FxsyLULMZOTrOBS`Z`(>^YAt{oeQzfr~$)& z=~dsiYa2h#dguD>^%HH zRvVRo!8hhZn}4c9#+x60PMw7a$1p*QNL0Y+NchOI1GpD&n2fQoJ4!|@i1b@_TSu^x z-nh`}H6J7_+sYlKTW*q#EBb~-c64!-|2?LbwluCGzCixjMYquL{b6|U8&7 zM}DnR`Q|tRC1X@suAnjxdP!ldqkF%2-Em%dB62iiC$2*EOT#%DR0}Z8wS4tkC5y;; zMX0H<&fC@0)%5tTlE5;+vT)?Zf%n!|L^&?bqbN7QD?L=?E^VYL#CAl{m=LT&;orZ!khL ztlZg%p(?El`%d1UgvzzP>g((4WlXwgIBM)SWbQBxOzz20I#LJ;R5WZb886I#_q}hV zVrDP}?C0XE5D`oO$>zHRb;-#-%S7Pe(sv13(lOe&%FeQZJ|y zN+1DOD^b-@P+%UQDwBTv3TZHvDZT86bn0zElYw}(^X8AO=y7D)#1M%{8YoLW_nQCi z{A8Sd_rQ_ghhl4La^_}m%{K_Co9ALfHT;Et% zsC>`M*%8rLJ{YJRwL<{R(o6w_zF#pq%UNkpkzypRmCbWS3K0m21U!KQd-fhZexir^ zg_mEyzOvdKjyAWpydW@IDBRdm?gJtt=L>_F6>;Mi(|Hyt)(4=a*}OKQUg*-8RI!Z(F!yvt&L|yk@7r2 zbO1$H#*I@`!8^B8vFT{cH5jMa#89X$3jr7wa@N;c`@u6WzuIWeJp9Nbc{G$P)kV9J zof2sJe&28Qy~gHdZ~ew=Gj8=)KmS+uEzHnZdJo5Pz0N|DxrfX0x~MSH^`TA>_3K@T_Rw_mqvh2jklLz}2!{^-_-kK#`juA)X=eNo1dTFAYn$g;nvo{lJuFyiTM#Lv zXgI<&dEof**DqelY+4P27^OcLIOm+R^)RezG;Evo+Cz^$zTO{RzP)<+)~(H6KW7<^ zhC!HVt%ZdENu00nX0>wt=E|YD*#{0C*wd(y%aC*2sV8>z#pN#ApT#LBV_ZOR8YU>6 zl1n7KsA43~InQ057rnVO&%rTUC)SFylII}I&H=MHC(cc@B?Ry6I07P(%9V16V3ZJn zR%Emgp;4qXYAs5UF`@4%t&!9i04%iGfdL%?m&D{9I6|f-H5CZvxg8Fabu*2|O+R?; z?716j>yJJBaHr8QAm}m?>wpPyWb;ish_li1T=m4U2OmFuI8eYYFA540R5IabgMy+g z0aYZv)^VPT&0U^4=a5C5V{64RF@tsDc*-C^-q`;tg^-jYrI-MeLahK1m10s(X$UGC zQTEI$uPx3rA2@!vU9C8qjJ#&|^<7^f*Sd!A8*%DK8W$M+xD zGe4g@w>#?LJr^1Z#cm5YvhJ1Z*Z%y;r-o_Lnwc#$FIilp*%%B4qv5DC({av?{Z@)m z+p-9?&c&l)HSmrs%-S@*yt0l+*3!mcz~C&W6~9(j&<_2h$BwzM^32oETw7VS0?HT^ zAS6vnlP>y`gbE37ZgkIGxbkYf)=Tp%ch>$ zmsv*OTv&ih*I!{_rL;DlHinGxf&h(Hz9(9C4A-K{upE-o+6clNaFH9ufsrIcu6822tVPn_JlXKBGx%+7*1 zL{=aglx9%?N&ubXJa=h|>{Jm|vs}`YolWD|j)hSQaTgR;h*a!SAexH80Mj)ff{0^= zaTmma5D{tRNV7Jv3C?d1pFel?fjzT(w64swLxlyHA%sB4CGUy^L6iYwEMWrR@DB3W zTM=kw3JjGU^t7z+5~X@dcbyEPG;-_sm%sPw zxrB@{2HCpYW?3o%S)QdX_dL%FjM!W``@rEthxhIcJU>rTyc==)-fCVtU<=qyl0W_S zlNbgrjr)Usz10Fh$KrXuz#vOAaZ*^J5{|WCv9uu@bbHEis}jcRt3UbS$LP5iE?m2j z0EdC^Mk#Y{z;%Mkv3*O&PM-YVzWAm7Fk+?0QhJg^N#F;{BVl1?7GR=olub~+~TgmdAXohw|YMVLg$G9;E*w1}ix-0k)@ zHaJT?Ra6kD5fRY`@PLGo1(hb)VYCYaaS2cCU?h{N3@U0*D(AI$0>$Q>lXVPdFW*?P z`tSXN|7bSpeed^wx3BT|zGci)hd{=l(V_{pR>osQU8$H#Rr?+hDNh%xQD8cMdy5o( z?4~%L<{rbMlqkJo`P|m_#ak=u!>A&>Pz_Jc%{(|aQy~Ok!h-u%xbX;xpw0I-YG?K> zUAS^>H4|p%`F;j48jd{UrFj-qD@rSN)+4AI{gWU1$kObbE9$S(fmo0nzhoNK>)rJ*^bNZsM~<90b^7e3i9E~*4u4UspMi4ft<8cT7WXk2Be~hk}Ms@N*NJ$!fdk; z>G2as=6~xS{F^`hv+q3n-P;cz{`@cebZ#B92%!a=r@0Z)&M82RWDt~qjpCK-x8gwr z*7=$|QX~=(q3;ul8he^TVFTru7z|QjBhP?59*u*t<+*DrYeEW>H;_k5@RC_;fF$-H zICJ7SWP|#@C(IK~$VwqIILNEh(jpWw#zBaBIa&lDUKXk;|!hRmfcn3y2mZ;rUwa z%+aG;=Psq0bxySBRU4|?@7Jm|rIZp-A~o%u+`oT*cHSssomD&X`4dT+dkuyJ5Jkf% zx_awoCJX>XRH;^yBwJrwo1L9S#2^f;&4*z?DY^XghaW$4`m{wlfAMk@C$(m|lXgAFQV)XiEKB3KQmYx?V~`BM5v>nL zfAQ>dd76CW)Jce<9a4UA6axr=W>*7Id7f@=uHRl!#W5}jLPk&vJGKB!V;d3{%K|js zv;5}bt~)YDcY$%s?uCdDh_HxrSrTV?9t0r*uaFj!Fte6d=V~2 zBWJ8nPJwkGY!TTYRzVrS(dO3eo3|v2>e^I|sixMqf`G(8;7ZhUDibdN4;Imgz}96k zc^(*rN@K}Hk^l$kJakmf^>;O#H6e?Y>Wd+t-GS)t#cQJSt*T5i6D9&8BIir zSv#%;`q48F23{a6B$IPxf*;*`yoO?BXEyKldPv010-`ZSfE-JAyW4CwwANZ{Qj}$> z@w_{_@5A9xDOK?dizHbt%o=5;7Cv{c$ zW>N~3)<_0PGa`sCY)}wO>n)b{MA#}Ug&T`7)$Vj2UziP-7GsOniY5xR=dp`6H*c=3o7@=@iekue$=O-f zpcE18tozBQrILAsz(_)vu*5DKr5OPlqm|M?T1o*(fnDhVAQjefV`td1pb#0KFgSLf zP|b?#$6x&N7k}wfAEWkhsn_BpC1!(U0Dx$t-(MT_nUD!v)q1O1_rk!sJhl178#nzt zYtGGkVUT9IIHujRFLwxV3V=n*QTK9t?e_Y$_4Tk?J9PBedYpFSL`WAx6@~PjLrSde z52I?Q1yD>?iGVm#7D$;8wJ*w4eLFutcWY(U+CuYCjP{CzvB;{zYHiQq!&t3@BFa;n z#89vSr?}yAPq873JLjCs^L%HeA{t|=H8mOzhr>~&QVA;+5f}^x?M|mu_z)@X!6+I9 zK^TMqOJ*GxYXq6+>fz%jj->0W3e}#u*)(@+y?&b8M!nwc_etq$)e{h5HbxgDT(+Df z2@8ak3KAkP0;Op-7>*RGRO|Ioa(iRza6K%2@Cq44ln}8dI9yrXxV19q_gSf+(M+5h zB#BL8-?}=gnOY@45I~2R6U9mo0ef*2r5TU?YH^CMC?ZNJ&+`i*Gn@(v0>I2^nmOlK zQNlLP^US#<&ru{EjsmS`8qG!!wtO>F2|@sq=ir&c=5(cFF#ycsXf)c~ ztmfAC`svoDh?p>_X^l!z;iv+H<@{u!0x{LeDQ%a~GC06g(Ws&Zo}Vx$nMEhscv`E% z%Gi+hji*T!k7ty`4oYKhCo&ogilc~&Q4QwYT6Ru^$@4F5t#VbtO!JlPtu1HgtJRv; z;2bfq)|;c~g-e&Wv&{Nlyn1slWo()H_yPoJ2uk%iESBvGW2?CRw!{r=FeRAYpd-e7Cc-|Y3`em~6YQoRuz zI|`ZvFjEvUZzjpL-r(lOMn4+yRI*tN)E7{qFd3;gT-3<8DBc6lJ`Y3Uf6A0YeG} zGstu5=E=li~A zP(+w3UQi1wo;Co$!kgW$1Ia}M(K4@ZZVCb^?SM1utg~^F*s&5+lI05r_FmdtzrL}$ zztcIsXV2bRy-KR4G?A9DYW-lP*Y78By0MWv7ic|Gtt~X$^>!0CH#WAny&yRA;DZO3 z_BN~4Y8dE3?Y7`|vzrDY9FSA`>e~9b8@HrV>qW`6=bm5Ow=ZZk0g=m5^rE8#Il#zr zj*2ybE7Y$gN0pNI)T`&7e)-kf%*>%9hqF8{$eakM5Rs)kYlu*pQI>z}xo2N^>80D} z&i>VpedPFoWladeSmt@-nUNnlI=q{qK?zhnf3DpDYY~AaioyWE(5TmYz5e>fdb`zX zHXCV@YNZt^qYaVbvY{;^jKG?ZgjFGKAp*?Kx;)PXAj@nNC1uy2%DlrlmnP+S6*Jr1 z3bW_?MZ}8Y(P%U>zQ4FIk0_4aFpAdJHvmp>k$aK01pVRQ=7o!cmDP5$C5`&cmDL+- ztG74S^U+9K7XY-ppry@-RARiCdFbrgV0iA@^|M!RBzaCo7b4e+ln9sJL(FBaE1-xF zkjqB&4voGvH9#0Q*hnE11aF0yy7cPm&0DM2pLKqo$+sMtiOKs%C*&%?r`7=6E`A7BqGd=0;(LZFWH?y=t^`KSp;=K zvm7Hkh^4%g00Q~d#^x|0kd5BeSFc`QXtj?lFE7o^G>i!s79Vaj!<*MHuH3r4u@2S= z;Z_`XhY{Sm0SJufL|(agsoiKi@zIYy^1zwJPFo>6$By}qHLn3iQ6yQWkSrh~YHiXi zgESE;i+@!RT>)cKJ?*cH8aW6>RY43h8P)CgtuQOx=ymz>6=4QaqzYfc@)e7t(z07w zU%Phe)?hTOg`rZa*WI3Px6tJP1fmM&y-a#s_d;kO0dUd?!o73z+Z&r%med=yTCHA8 zFes(MFcg3^N#i)F*XrwQYe5hIh;s~5INz2!hKjHn_@yojb3t+;qGFEMS;_OlMi>ge z6%Y^>LL#lS)`P(yP1AO}BO*wu*V~RpL*MrsjfP{V6ak`RamA)ZAf?gwFJ8U!M_>Na zo7b+j>-99v;xuyt)>+H0j#yD@x!pN=t`>Db3y2{3ky3No)nWIyV}*ew3Yg z`0>G|S9$F^=8j6+7%0X?O2Ax@02nbPOpWT3tVE-WD{JR&tZerC8CwRinurjXOMOd1 z(59#}iw?I;Mo175P?(F{nM%~QY-l(n2ZctOVg^*iz@T&lv>hdvFJ4mT&dyY8hZgtj znVav-%&JNt0Rssl87i1!0svYe(N+|H@z1~h+zT&$?k7L-#D_lwSuT!cJiAir zPzg7JO1oAIeZN#0%B@&Kdk697GYsVaD*<2W9vX`-wQ&XCSctgSc3%G+c!V| zkq6FPyM1eWI9T7@)Y>!}t>T}3KM;X9j*}!YS_?A>ct!zmnxmr0oXFI zlwR?KEKX1yyWHl*VIPJe0y=BixhRS{Gc(pY=bYBsGll^Mg8>UPnytX|a6AkM0Kjam zbpQoB=(!hO{PS;p>*~!Ld79>qbL*^QppusqF&^4~X!+0)tW?i;M`vGteQh}CCh;Im zB9|9hxW#&LoHSqwPPhh03=*6101RpbOJO|Fe2E0H}U)r~S-xELi$)EW2Po)J(5N1i|-{pUcK&>=cR zN0b>eM7XxOarXMP8(W*bBPWNmXj<;;O&5LFBngPROq!p`8g2<(g-z6EneCT1?vP{nvaTPD!g zcoNMr_pI%u>FQ{7rQbi_?Jlh}_cogcXJ%)8-*--|9YgDwBMm_hP-UUtIdq_P_|V7p z?q522!ViK2SN|^F=sUALY;_yt> zySTA+wKre_0%RZ-H}>Bk0I=*v{h>_~4={=1L9ee6JrG~f(#-6|_1;>X`CgdCki(M|qY;BVZQK_bb(k%QI_j97V<$1tuO1l_}W+DB>$M-)tHziwK@% z+9&{`6lzsY`D>-bGKvt9BIT^LHm_DH#`EGR%F@*HJm2>bkl7I;BH1K`JXICH68M4` zrRjH{d+z+DOMr!xp-j}Mchp^#zO}V|eXR>XN_lCPIG1|9@;p6Rg+&oeV|(MN{-o?k zm%O=*licko?kGLT&U-0vEk+Pj7IBoOYqxG)x^;7@(_UNHbFkfBY&6}yvfko?wfGen}g#CwcV8F$^ToVCMc?4 zR2HOzi9c#7O*bBsFM26u?uN>2^mYa#W@ek6+4jbE zd#ihE5OuAjTr|yvfdCW&A~+EuAtN-?XwJ0T?3@Nfn;+V{cxh{}ap{`p8ImAQ6Hw?W zZ+tK^B4#$X)&{;GCOEKi&fc1ptC*mWDA;Jn~34 zj?P}YCQ3J2%`DBj-EEuOO060ML8sGRU0GpfjRcmnH1l^mQ8fUZ>{!fOzBj z_1m{s;y5uT80WD#r5(m17C;C+(#l$lqhxbyb1>LycNz-|vq~4muuLCmcTC>y=0Uz| zRMz5=6A^iyW4Y1o-&)(8Z#GUGICyN&QY)y0)h3V@KdjF$?mc?UUs?um6MF%f$eS=I zL!H_7WZUgoTHLd=IQ>vR^zjdW=;I%Tl6?V7`Swo2$-K z{oD?1-m}@Y^|jY7UA(=u>6CJ$v@tkVRk>rI{|F|cMF1IhX3Qp<7Bp`C7OZk9N6?V6 zJb&i7XXj=+VY}tVSaNX>bD)S#qQd#5+0N0*v*#`huii{@t4Imw0#wjtQA}W}eg!%N zCk`Fhzr4?~0}$YBvD4T;+q`rgELib0S#o*i3eLO~&ft(+DnrSp(j87sFIB@KU5JZepq3;zB&}h?(wh^%2Y}ni; z5Y5ibCTTJl4uc@9R01v_N`W-Z`n{eoFNS)qQG4|G(T_g%NFI&OojV^zF_r$>g;`c{ z&QnQBM~8w$;&RvP4zFKd708`r-Y6Q4qDHggn33*0;&vZe0za_sRx2kr+^KFmf9+ zYrN2SfdK$u2ZT@wsZxzLAx2n1_sX>^uU)&kF&H3`1ilm`a4C$??}ckpYwRAP!a_i! zEGj^R#-|byGV`TNm!c@bb_;hWaZY&|RTHYEjCn#?s+=>zh~Q8}fLIg=AnU-Zo!WQc zp{0er4d25|T&xtb%L1(qF0_v=&%bi{T5h~bHFRm3rzs+8LUuOJGUIt+7_eis`Jwr_ zBTIYR^?Du;Q7LCh#1$1SY4kkr&ZFr^4MUc|xQI}e|HOk2c}QRW_P1|rZ7I)pC}E{y zJQGLJ+S=OO>};)8ix|=*WniCyoYTxTL+yIi)2hImxYR2t%t(ktd`%Uj6++G|z)C4+ zZJMT9QQ!wzmd8n|l&Lowgo>T(_xnkbcv{ak>!GGF9Ua@daBO+6L9ikl8yi`g67G`5 zDQHv0J|s|x23QUH!}YaQkX#@$Mr!q-S_>xh-EoKV{ag9CBXK4$(Mm!PqG6VACCMWn z`*^P(|IwGe93{z5eCm_OPM$`BG|8f2WQ<>HhPyk@Z+HO(z~#*O&V-YKiBeQ~!?Xfn zsMeB3<6<1YcJAzzjrBp6#m*sVoY-%wvC%0A5y|^|uVg$&yMrmbfov^hfxy!)yyMD; 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 literal 0 HcmV?d00001 diff --git a/assets/introduction_animation/welcome.png b/assets/introduction_animation/welcome.png new file mode 100644 index 0000000000000000000000000000000000000000..c980acd1a8eb982dca16719e0081e37e9a4c4780 GIT binary patch literal 69728 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

>zGQn{sk4L1uZ)=c%SNqkys8_nun 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 literal 0 HcmV?d00001 diff --git a/assets/medicalinsightform.json b/assets/medicalinsightform.json new file mode 100644 index 0000000..aee1992 --- /dev/null +++ b/assets/medicalinsightform.json @@ -0,0 +1,184 @@ +{ + "data": [ + { + "id": "MedInsight", + "name": "Medical Insights Form", + "form-fields": [ + { + "sectionName": "Medical Insight", + "multiple": false, + "sectionList": [ + { + "name": "HCP Name", + "id": "hcpname", + "depid": "", + "widget": "label", + "input": "label", + "validation": { + "isRequired": false + } + }, + { + "name": "Date", + "id": "date", + "depid": "", + "widget": "text", + "input": "Date", + "validation": { + "isRequired": true + } + }, + { + "name": "Therapeutic Area", + "param": "therapeutic_area", + "id": "therapeutic", + "selectedValue": [], + "depid": "", + "widget": "dropdown", + "input": "dropdown", + "inputList": [ + { + "id": "1", + "name": "Acute Neurology1" + }, + { + "id": "2", + "name": "Cystic Fibrosis" + } + ], + "validation": { + "isRequired": true + } + }, + { + "name": "Product", + "id": "product", + "depid": "therapeutic", + "widget": "dropdown", + "input": "dropdown", + "inputList": [ + { + "id": "11", + "pid": "1", + "name": "Prometra Pump" + }, + { + "id": "12", + "pid": "2", + "name": "Prometra Pump" + }, + { + "id": "13", + "pid": "2", + "name": "Prometra Catheter" + } + ], + "validation": { + "isRequired": true + } + }, + { + "name": "Source Type", + "id": "sourcetype", + "depid": "", + "widget": "dropdown", + "input": "dropdown", + "inputList": [ + { + "id": "21", + "name": "Advisory Board/Expert Committee" + }, + { + "id": "22", + "name": "Congress" + }, + { + "id": "23", + "name": "Industry professional direct knowledge " + } + ], + "validation": { + "isRequired": true + } + }, + { + "name": "Congress Source", + "id": "congresssource", + "depid": "sourcetype", + "widget": "dropdown", + "input": "dropdown", + "inputList": [ + { + "id": "31", + "pid": "22", + "name": "Industry professional" + }, + { + "id": "32", + "pid": "22", + "name": "Symposium" + } + + ], + "validation": { + "isRequired": false + } + }, + { + "name": "Congress Name", + "id": "congressName", + "depid": "sourcetype", + "widget": "text", + "input": "text", + "validation": { + "isRequired": false + } + } + ] + }, + { + "sectionName": "Key Insight Topics", + "multiple": false, + "sectionList": [ + { + "name": "Key Insight Topics", + "id": "keyinsighttopics", + "depid": "", + "param": "keyinsighttopics", + "widget": "dropdown", + "input": "dropdown", + "inputList": [ + { + "id": "41", + "name": "Data Gap" + } + + ], + "validation": { + "isRequired": true + } + } + ] + }, + { + "sectionName": "Medical Insights Details", + "multiple": false, + "sectionList": [ + { + "name": "Medical Insight Summary", + "id": "summary", + "depid": "", + "widget": "text", + "input": "textArea", + "validation": { + "isRequired": true, + "maxchars": "300" + } + } + + ] + } + ] + } + ] + } \ No newline at end of file diff --git a/ios/Podfile.lock b/ios/Podfile.lock index eedaa08..a7979f8 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -3,9 +3,7 @@ PODS: - Flutter - connectivity_plus (0.0.1): - Flutter - - ReachabilitySwift - - device_info_plus (0.0.1): - - Flutter + - FlutterMacOS - DKImagePickerController/Core (4.3.4): - DKImagePickerController/ImageDataManager - DKImagePickerController/Resource @@ -94,7 +92,7 @@ PODS: - mobile_device_identifier (0.0.1): - Flutter - JNKeychain - - package_info_plus (0.4.5): + - open_file (0.0.1): - Flutter - path_provider_foundation (0.0.1): - Flutter @@ -102,31 +100,33 @@ PODS: - permission_handler_apple (9.3.0): - Flutter - PromisesObjC (2.4.0) - - ReachabilitySwift (5.0.0) - SDWebImage (5.18.10): - SDWebImage/Core (= 5.18.10) - SDWebImage/Core (5.18.10) - shared_preferences_foundation (0.0.1): - Flutter - FlutterMacOS + - sqflite (0.0.3): + - Flutter + - FlutterMacOS - SwiftyGif (5.4.4) - url_launcher_ios (0.0.1): - Flutter DEPENDENCIES: - add_2_calendar (from `.symlinks/plugins/add_2_calendar/ios`) - - connectivity_plus (from `.symlinks/plugins/connectivity_plus/ios`) - - device_info_plus (from `.symlinks/plugins/device_info_plus/ios`) + - connectivity_plus (from `.symlinks/plugins/connectivity_plus/darwin`) - file_picker (from `.symlinks/plugins/file_picker/ios`) - firebase_core (from `.symlinks/plugins/firebase_core/ios`) - firebase_remote_config (from `.symlinks/plugins/firebase_remote_config/ios`) - Flutter (from `Flutter`) - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) - mobile_device_identifier (from `.symlinks/plugins/mobile_device_identifier/ios`) - - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) + - open_file (from `.symlinks/plugins/open_file/ios`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) + - sqflite (from `.symlinks/plugins/sqflite/darwin`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) SPEC REPOS: @@ -144,7 +144,6 @@ SPEC REPOS: - GoogleUtilities - JNKeychain - PromisesObjC - - ReachabilitySwift - SDWebImage - SwiftyGif @@ -152,9 +151,7 @@ EXTERNAL SOURCES: add_2_calendar: :path: ".symlinks/plugins/add_2_calendar/ios" connectivity_plus: - :path: ".symlinks/plugins/connectivity_plus/ios" - device_info_plus: - :path: ".symlinks/plugins/device_info_plus/ios" + :path: ".symlinks/plugins/connectivity_plus/darwin" file_picker: :path: ".symlinks/plugins/file_picker/ios" firebase_core: @@ -167,24 +164,25 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/image_picker_ios/ios" mobile_device_identifier: :path: ".symlinks/plugins/mobile_device_identifier/ios" - package_info_plus: - :path: ".symlinks/plugins/package_info_plus/ios" + open_file: + :path: ".symlinks/plugins/open_file/ios" path_provider_foundation: :path: ".symlinks/plugins/path_provider_foundation/darwin" permission_handler_apple: :path: ".symlinks/plugins/permission_handler_apple/ios" shared_preferences_foundation: :path: ".symlinks/plugins/shared_preferences_foundation/darwin" + sqflite: + :path: ".symlinks/plugins/sqflite/darwin" url_launcher_ios: :path: ".symlinks/plugins/url_launcher_ios/ios" SPEC CHECKSUMS: add_2_calendar: 5eee66d5a3b99cd5e1487a7e03abd4e3ac4aff11 - connectivity_plus: 413a8857dd5d9f1c399a39130850d02fe0feaf7e - device_info_plus: c6fb39579d0f423935b0c9ce7ee2f44b71b9fce6 + connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 - file_picker: 15fd9539e4eb735dc54bae8c0534a7a9511a03de + file_picker: 09aa5ec1ab24135ccd7a1621c46c84134bfd6655 Firebase: 0312a2352584f782ea56f66d91606891d4607f06 firebase_core: 0b39f4f424e02eecabb2356ddf331fa07b772af8 firebase_remote_config: f57c28ff78d1d933bbe1b2cc11659cc82f9978e8 @@ -200,13 +198,13 @@ SPEC CHECKSUMS: image_picker_ios: b545a5f16c0fa88e3ecbbce3ed4de45567a8ec18 JNKeychain: fb6cc9ec95959ba46cd95d0ee6f7a05e41da9f42 mobile_device_identifier: 34f80c8985bb1506880c2ae10cb24cfb9918f1a7 - package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85 + open_file: 02eb5cb6b21264bd3a696876f5afbfb7ca4f4b7d path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2 PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 - ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825 SDWebImage: fc8f2d48bbfd72ef39d70e981bd24a3f3be53fec shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 + sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f url_launcher_ios: 6116280ddcfe98ab8820085d8d76ae7449447586 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 0f1ee7f..4622697 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -490,7 +490,7 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 69ERN967NS; + DEVELOPMENT_TEAM = 44SNAJ6T8L; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -668,8 +668,10 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 69ERN967NS; + DEVELOPMENT_TEAM = 44SNAJ6T8L; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -678,6 +680,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.example.konectarEvents; PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; diff --git a/lib/contacts_module/ui_screen/interactionform/configprovider.dart b/lib/contacts_module/ui_screen/interactionform/configprovider.dart index b6e79d2..5b32eee 100644 --- a/lib/contacts_module/ui_screen/interactionform/configprovider.dart +++ b/lib/contacts_module/ui_screen/interactionform/configprovider.dart @@ -3,6 +3,9 @@ // import 'package:konectar_events/ui_screen/interactionform/model/interaction_config_data.dart'; // import 'package:konectar_events/ui_screen/interactionform/model/interaction_data.dart'; // import 'package:konectar_events/ui_screen/interactionform/util.dart'; +import 'dart:convert'; + +import 'package:flutter/services.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/NewtworkConnectivity.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/mockapi.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/model/interaction_config_data.dart'; @@ -151,6 +154,39 @@ class ConfigDataProvider extends ChangeNotifier { notifyListeners(); } + Future initConfigUIDataMediccalInsight() async { + List interactionConfigData = []; + // interactionConfigData = await fetchInteactionConfigData(); + //interactionConfigData = fetchInteactionUIConfigData(jsonResult); + + NetworkConnectivity networkConnectivity = NetworkConnectivity(); + bool isOnline = await networkConnectivity.isInternetAvailable(); + if (isOnline) { + // if (await InternetConnectionChecker().hasConnection) { + interactionConfigData = await fetchLocalMedicalInsight(); + var box = Hive.box('InteractionConfigDataBox'); + + if (!box.isOpen) { + box = await Hive.openBox( + 'InteractionConfigDataBox'); + } + + if (box.isEmpty) { + for (InteractionConfigData data in interactionConfigData) { + box.put(await getNextAutoIncrementValue(), data); + } + } else { + box.clear(); + print("IamELse"); + + for (InteractionConfigData data in interactionConfigData) { + box.put(await getNextAutoIncrementValue(), data); + } + } + } + notifyListeners(); + } + Future> fetchLocalInteactionConfigDataMedical() async { // dynamic jsonResult = jsonDecode( @@ -171,6 +207,25 @@ class ConfigDataProvider extends ChangeNotifier { return interactionConfigData; } + Future> fetchLocalMedicalInsight() async { + dynamic jsonResult = jsonDecode( + await rootBundle.loadString("assets/medicalinsightform.json")); + //dynamic jsonResult = await MockApiCall().getConfigDataMedical(); + + List interactionConfigData = []; + + ResponseData responseData = ResponseDataFromJson(jsonResult); + print('Response_data_is: $responseData'); + print('Response_data_dta_is: ${responseData.data}'); + + for (InteractionResultData obj in responseData.data) { + interactionConfigData + .add(InteractionConfigData(widgets: obj, id: obj.id, name: obj.name)); + } + print("interactionConfigData_issss: ${interactionConfigData.length}"); + return interactionConfigData; + } + Future initConfigUIDataEng() async { List interactionConfigData = []; // interactionConfigData = await fetchInteactionConfigData(); diff --git a/lib/contacts_module/ui_screen/interactionform/interaction_screen.dart b/lib/contacts_module/ui_screen/interactionform/interaction_screen.dart index a7f47e5..b7a813a 100644 --- a/lib/contacts_module/ui_screen/interactionform/interaction_screen.dart +++ b/lib/contacts_module/ui_screen/interactionform/interaction_screen.dart @@ -560,11 +560,12 @@ class _InteractionScreenState extends State { ), ), ); - case InteractionWidget.DROPDOWN: - // return customdropdown(sectionItem, provider, list, multiple); - return customAutoCompletedropdown( - sectionItem, provider, list, multiple); + case InteractionWidget.DROPDOWN: + return customdropdown(sectionItem, provider, list, multiple); + + // return customAutoCompletedropdown( + // sectionItem, provider, list, multiple); } } @@ -671,7 +672,7 @@ class _InteractionScreenState extends State { backgroundColor: Colors.green.shade500, onPressed: () async { String record = - await provider.saveJsonObject(context, widget.form); + await provider.saveJsonObject(context, widget.form, "hc"); print("Validation_isss: ${provider.isLoading}"); diff --git a/lib/contacts_module/ui_screen/interactionform/interactionprovider.dart b/lib/contacts_module/ui_screen/interactionform/interactionprovider.dart index 51ffe72..7dce420 100644 --- a/lib/contacts_module/ui_screen/interactionform/interactionprovider.dart +++ b/lib/contacts_module/ui_screen/interactionform/interactionprovider.dart @@ -1496,7 +1496,8 @@ class InteractionProvider extends ChangeNotifier { return false; } - Future saveJsonObject(BuildContext context, String form, + Future saveJsonObject( + BuildContext context, String form, String? title, {bool isEdit = false}) async { print("form_data: $form"); // for (var ob in interactionReponseList) { @@ -1562,6 +1563,7 @@ class InteractionProvider extends ChangeNotifier { id: generateId, updatedTime: DateTime.now().toString(), form: form, + hcp: title, intId: intId ?? "id", intName: intName ?? "name"); var box = Hive.box('InteractionDataBox'); diff --git a/lib/contacts_module/ui_screen/interactionform/model/save_interaction.dart b/lib/contacts_module/ui_screen/interactionform/model/save_interaction.dart index e34b857..a646c7c 100644 --- a/lib/contacts_module/ui_screen/interactionform/model/save_interaction.dart +++ b/lib/contacts_module/ui_screen/interactionform/model/save_interaction.dart @@ -38,6 +38,8 @@ class SaveInteraction { String intId; @HiveField(5) String intName; + @HiveField(6) + String? hcp; SaveInteraction( {required this.save, @@ -45,6 +47,7 @@ class SaveInteraction { this.form, this.updatedTime, required this.intId, + this.hcp, required this.intName}); factory SaveInteraction.fromJson(Map json) => @@ -53,6 +56,7 @@ class SaveInteraction { json["save"].map((x) => SaveData.fromJson(x))), intId: 'intId', intName: 'intName', + hcp: 'hcp', id: 'id'); Map toJson() => { @@ -62,6 +66,7 @@ class SaveInteraction { Map savetoJson() => { "form": form, "intId": intId, + "hcp": hcp, }; @override diff --git a/lib/contacts_module/ui_screen/interactionform/model/save_interaction.g.dart b/lib/contacts_module/ui_screen/interactionform/model/save_interaction.g.dart index fb41995..83bfdb7 100644 --- a/lib/contacts_module/ui_screen/interactionform/model/save_interaction.g.dart +++ b/lib/contacts_module/ui_screen/interactionform/model/save_interaction.g.dart @@ -22,6 +22,7 @@ class SaveInteractionAdapter extends TypeAdapter { form: fields[2] as String?, updatedTime: fields[3] as String?, intId: fields[4] as String, + hcp: fields[6] as String?, intName: fields[5] as String, ); } @@ -29,7 +30,7 @@ class SaveInteractionAdapter extends TypeAdapter { @override void write(BinaryWriter writer, SaveInteraction obj) { writer - ..writeByte(6) + ..writeByte(7) ..writeByte(0) ..write(obj.id) ..writeByte(1) @@ -41,7 +42,9 @@ class SaveInteractionAdapter extends TypeAdapter { ..writeByte(4) ..write(obj.intId) ..writeByte(5) - ..write(obj.intName); + ..write(obj.intName) + ..writeByte(6) + ..write(obj.hcp); } @override diff --git a/lib/contacts_module/ui_screen/interactionform/new_dynamicform.dart b/lib/contacts_module/ui_screen/interactionform/new_dynamicform.dart index 75ff031..0f28f25 100644 --- a/lib/contacts_module/ui_screen/interactionform/new_dynamicform.dart +++ b/lib/contacts_module/ui_screen/interactionform/new_dynamicform.dart @@ -5,6 +5,7 @@ import 'package:konectar_events/contacts_module/constants.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/interactionprovider.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/model/interaction_data.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/util.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/viewinteractionprovider.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/widget/custombutton.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/widget/customrangeslider.dart'; import 'package:konectar_events/contacts_module/ui_screen/interactionform/widget/responsive_ext.dart'; @@ -34,7 +35,9 @@ import 'widget/interatciontextfield.dart'; class InteractionScreen1 extends StatefulWidget { int index; String form; - InteractionScreen1({super.key, required this.index, required this.form}); + String? title; + InteractionScreen1( + {super.key, required this.index, required this.form, this.title}); @override State createState() => _InteractionScreen1State(); @@ -119,10 +122,11 @@ class _InteractionScreen1State extends State { child: Scaffold( backgroundColor: Colors.white, appBar: AppBar( - title: const FittedBox( + backgroundColor: Constants.k2color, + title: FittedBox( fit: BoxFit.scaleDown, child: Text( - 'Record New Interaction', + widget.title ?? 'Record New Interaction', style: TextStyle(color: Colors.white, fontSize: 18.0), ), ), @@ -316,7 +320,7 @@ class _InteractionScreen1State extends State { : 4.8 : isTablet ? 2.8 - : 4.5, + : 5.5, children: List.generate( sectionList.length, @@ -484,7 +488,9 @@ class _InteractionScreen1State extends State { onPressed: () async { String record = await provider.saveJsonObject( - context, widget.form); + context, + widget.form, + widget.title); print( "Validation_isss: ${provider.isLoading}"); @@ -618,7 +624,14 @@ class _InteractionScreen1State extends State { : buildRadio(sectionItem, provider); case InteractionWidget.LABEL: - return Text(sectionItem.input!); + sectionItem.selectedValue!.add(widget.title ?? "NA"); + return Padding( + padding: const EdgeInsets.all(8.0), + child: Text( + "${widget.title}", + style: TextStyle(fontSize: 18), + ), + ); case InteractionWidget.RANGESLIDER: return CustomRangeSlider( @@ -687,8 +700,8 @@ class _InteractionScreen1State extends State { // maxchars: int.parse(sectionItem.validation!.chars ?? "0"), controller: sectionItem.controller!, labelText: sectionItem.name, - // maxlines: 8, - //minlines: 4, + maxlines: 8, + minlines: 8, onChanged: (val) { sectionItem.selectedValue = []; setState(() {}); @@ -997,10 +1010,10 @@ class _InteractionScreen1State extends State { ), ); case InteractionWidget.DROPDOWN: - // return customdropdown(sectionItem, provider, list, multiple); + return customdropdown(sectionItem, provider, list, multiple); - return customAutoCompletedropdown( - sectionItem, provider, list, multiple); + // return customAutoCompletedropdown( + // sectionItem, provider, list, multiple); } } @@ -1015,11 +1028,13 @@ class _InteractionScreen1State extends State { } Widget buildDateWidget(SectionList sectionItem) { + // sectionItem.controller!.text = + // DateFormat('yyyy-MM-dd').format(DateTime.now()); return Padding( padding: const EdgeInsets.only(left: 8.0, right: 8.0), child: SizedBox( // width: isTablet ? 200 : MediaQuery.of(context).size.width, - // height: isTablet ? 50 : 40, + height: isTablet ? 50 : 40, width: MediaQuery.of(context).size.width, child: TextField( controller: @@ -1106,8 +1121,8 @@ class _InteractionScreen1State extends State { child: CustomButton( backgroundColor: Colors.green.shade500, onPressed: () async { - String record = - await provider.saveJsonObject(context, widget.form); + String record = await provider.saveJsonObject( + context, widget.form, widget.title); print("Validation_isss: ${provider.isLoading}"); @@ -1843,6 +1858,8 @@ class _InteractionScreen1State extends State { Widget cancelButton = TextButton( child: const Text("Ok"), onPressed: () async { + await Provider.of(context, listen: false) + .getRecords(widget.form, hcp: widget.title ?? ""); Navigator.of(context).pop(); Navigator.of(context).pop(); }, diff --git a/lib/contacts_module/ui_screen/interactionform/view_interaction_screen.dart b/lib/contacts_module/ui_screen/interactionform/view_interaction_screen.dart index 8e4afc2..2deaa2e 100644 --- a/lib/contacts_module/ui_screen/interactionform/view_interaction_screen.dart +++ b/lib/contacts_module/ui_screen/interactionform/view_interaction_screen.dart @@ -300,7 +300,7 @@ class _ViewInteractionScreenState extends State { sectionItem.id, sectionItem.selectedValue!.last)); case InteractionWidget.LABEL: - return Text(sectionItem.input!); + return Text(sectionItem.selectedValue!.last.toString()); case InteractionWidget.RANGESLIDER: return Text(sectionItem.selectedValue!.isNotEmpty diff --git a/lib/contacts_module/ui_screen/interactionform/viewinteractionprovider.dart b/lib/contacts_module/ui_screen/interactionform/viewinteractionprovider.dart index 03b50ee..8f71e9c 100644 --- a/lib/contacts_module/ui_screen/interactionform/viewinteractionprovider.dart +++ b/lib/contacts_module/ui_screen/interactionform/viewinteractionprovider.dart @@ -61,13 +61,13 @@ class ViewInteractionProvider extends ChangeNotifier { notifyListeners(); } - Future getRecords(String formname) async { + Future getRecords(String formname, {String? hcp}) async { var box = await Hive.openBox('InteractionDataBox'); savedList = box.values.toList(); savedList = savedList - .where( - (element) => element.form == formname, - ) + .where((element) => element.form == formname && element.hcp != null + ? element.hcp == hcp + : element.form == formname) .toList(); notifyListeners(); } diff --git a/lib/contacts_module/ui_screen/new_editinteraction.dart b/lib/contacts_module/ui_screen/new_editinteraction.dart index e4183b7..825eb8a 100644 --- a/lib/contacts_module/ui_screen/new_editinteraction.dart +++ b/lib/contacts_module/ui_screen/new_editinteraction.dart @@ -122,6 +122,7 @@ class _EditInteractionScreenState extends State { return SafeArea( child: Scaffold( appBar: AppBar( + backgroundColor: Constants.k2color, title: Text( widget.saveInteraction.id, style: TextStyle( @@ -258,7 +259,7 @@ class _EditInteractionScreenState extends State { : 4.8 : isTablet ? 2.8 - : 3.5, + : 4.5, children: List.generate( sectionList.length, (i) { @@ -474,7 +475,13 @@ class _EditInteractionScreenState extends State { : buildRadio(sectionItem, provider); case InteractionWidget.LABEL: - return Text(sectionItem.input!); + return Padding( + padding: const EdgeInsets.all(8.0), + child: Text( + sectionItem.selectedValue!.last.toString(), + style: TextStyle(fontSize: 18), + ), + ); case InteractionWidget.RANGESLIDER: return CustomRangeSlider( @@ -579,10 +586,10 @@ class _EditInteractionScreenState extends State { ), ); case InteractionWidget.DROPDOWN: - // return customdropdown(sectionItem, provider, list, multiple); + return customdropdown(sectionItem, provider, list, multiple); - return customAutoCompletedropdown( - sectionItem, provider, list, multiple); + // return customAutoCompletedropdown( + // sectionItem, provider, list, multiple); } } @@ -593,7 +600,7 @@ class _EditInteractionScreenState extends State { // width: isTablet ? 200 : MediaQuery.of(context).size.width, width: MediaQuery.of(context).size.width, - // height: isTablet ? 50 : 40, + height: isTablet ? 50 : 40, child: TextField( controller: sectionItem.controller, //editing controller of this TextField @@ -764,13 +771,17 @@ class _EditInteractionScreenState extends State { // sectionItem.value = ''; // print("%%%%${sectionItem.selectedValue!.last}"); print("ItemList_is: $list"); + // if (list.isEmpty) { + // print("###list empty###"); + // list = []; + // InputClass inputClass = + // InputClass(id: "no value", name: "Select ${sectionItem.name}"); + // list.add(inputClass); + // sectionItem.selectedObject = list[0]; + // } + if (list.isEmpty) { - print("###list empty###"); - list = []; - InputClass inputClass = - InputClass(id: "no value", name: "Select ${sectionItem.name}"); - list.add(inputClass); - sectionItem.selectedObject = list[0]; + list = sectionItem.inputList!; } // InputClass selectedObj = list[0]; return Padding( diff --git a/lib/contacts_module/ui_screen/new_viewinteraction.dart b/lib/contacts_module/ui_screen/new_viewinteraction.dart index 1d63cc4..f1917a0 100644 --- a/lib/contacts_module/ui_screen/new_viewinteraction.dart +++ b/lib/contacts_module/ui_screen/new_viewinteraction.dart @@ -63,6 +63,7 @@ class _ViewInteractionScreenState extends State { backgroundColor: Colors.white, //resizeToAvoidBottomInset: false, appBar: AppBar( + backgroundColor: Constants.k2color, title: Text( widget.saveInteraction.id, style: TextStyle( @@ -320,7 +321,7 @@ class _ViewInteractionScreenState extends State { case InteractionWidget.LABEL: return Text( - sectionItem.input!, + sectionItem.selectedValue!.last.toString(), style: TextStyle(fontSize: 18.0), ); diff --git a/lib/main.dart b/lib/main.dart index 48f16fb..24ca5f0 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'dart:convert'; import 'dart:io'; +import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:dio/dio.dart'; import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_remote_config/firebase_remote_config.dart'; @@ -70,10 +71,12 @@ import 'package:konectar_events/model/userdata_model.dart'; import 'package:konectar_events/utils/sessionmanager.dart'; import 'package:konectar_events/view/home.dart'; import 'package:konectar_events/view/login.dart'; +import 'package:konectar_events/view/login_components/intropaging.dart'; import 'package:konectar_events/view/navigation_home_screen.dart'; import 'package:konectar_events/viewmodel/eventsprovider.dart'; import 'package:konectar_events/viewmodel/hcpprofprovider.dart'; import 'package:konectar_events/viewmodel/loginprovider.dart'; +import 'package:overlay_support/overlay_support.dart'; import 'package:provider/provider.dart'; @@ -190,11 +193,25 @@ Future main() async { // userInfo = await credential!.getUserInfo(); //runApp(const MyApp()); // activateTimer(); - SharedPreferences.getInstance().then((instance) async { + SharedPreferences.getInstance().then((instance) { //StorageService().sharedPreferencesInstance = instance; bool isloggedIn = instance.getBool('isloggedin') ?? false; - String secretkey = instance.getString('secretkey') ?? ""; + print("checkhere before:$isloggedIn"); + String secretkey = instance.getString('secretkey') ?? ""; + OverlaySupportEntry entry; + Connectivity().onConnectivityChanged.listen((event) { + print("CHECK INTERNET"); + print(event); + if (event.toString().contains("ConnectivityResult.none")) { + entry = showOverlayNotification((context) { + return Text("this is a message from simple notification"); + }, duration: Duration(hours: 1)); + } + }); + OverlaySupport overlaySupport = OverlaySupport.global( + child: Text("ONLINE"), + ); runApp( MultiProvider( providers: [ @@ -242,32 +259,38 @@ Future main() async { ], child: SafeArea( top: true, - child: MaterialApp( - theme: ThemeData( - fontFamily: "OpenSans", + child: new OverlaySupport.global( + toastTheme: ToastThemeData(background: Colors.green), + child: MaterialApp( + theme: ThemeData( + //fontFamily: "SourceSerif", + ), + debugShowCheckedModeBanner: false, + title: 'Dynamic Links Example', + initialRoute: '/', + routes: { + '/': (BuildContext context) => FutureBuilder( + future: SessionManager().isLoggedIn(), + builder: (context, snapshot) { + print("Data_is : $snapshot"); + if (snapshot.connectionState == + ConnectionState.waiting) { + return const CircularProgressIndicator(); + } else if (snapshot.hasError) { + return Text('Error: ${snapshot.error}'); + } else { + final isLoggedIn = snapshot.data ?? false; + print("isLoggedIn_is : $isLoggedIn"); + print("secret : $secretkey"); + return isLoggedIn + ? IntroductionAnimationScreen() + : IntroductionAnimationScreen(); + } + }, + ), //userInfo != null ? const Home() : OpenidScreen(credential: credential,), + // '/details': (BuildContext context) => const HomeScreen(), + }, ), - debugShowCheckedModeBanner: false, - title: 'Dynamic Links Example', - initialRoute: '/', - routes: { - '/': (BuildContext context) => FutureBuilder( - future: SessionManager().isLoggedIn(), - builder: (context, snapshot) { - print("Data_is : $snapshot"); - if (snapshot.connectionState == ConnectionState.waiting) { - return const CircularProgressIndicator(); - } else if (snapshot.hasError) { - return Text('Error: ${snapshot.error}'); - } else { - final isLoggedIn = snapshot.data ?? false; - print("isLoggedIn_is : $isLoggedIn"); - print("secret : $secretkey"); - return isLoggedIn ? MyApp() : LoginScreen(); - } - }, - ), //userInfo != null ? const Home() : OpenidScreen(credential: credential,), - // '/details': (BuildContext context) => const HomeScreen(), - }, ), ), ), @@ -275,7 +298,27 @@ Future main() async { }); } -class MyApp extends StatelessWidget { +class MyApp extends StatefulWidget { + @override + _MyAppState createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + OverlaySupportEntry entry; + Connectivity().onConnectivityChanged.listen((event) { + print("CHECK INTERNET"); + print(event); + if (event.toString().contains("ConnectivityResult.wifi")) { + entry = showOverlayNotification((context) { + return Text("this is a message from simple notification"); + }, duration: Duration(hours: 1)); + } + }); + super.initState(); + } + @override Widget build(BuildContext context) { SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle( @@ -287,15 +330,55 @@ class MyApp extends StatelessWidget { systemNavigationBarDividerColor: Colors.transparent, systemNavigationBarIconBrightness: Brightness.dark, )); - return MaterialApp( - title: 'Flutter UI', - debugShowCheckedModeBanner: false, - // theme: ThemeData( - // primarySwatch: Colors.blue, - // textTheme: AppTheme.textTheme, - // platform: TargetPlatform.iOS, - // ), - home: NavigationHomeScreen(), + return OverlaySupport( + child: MaterialApp( + title: 'Flutter UI', + debugShowCheckedModeBanner: false, + // theme: ThemeData( + // primarySwatch: Colors.blue, + // textTheme: AppTheme.textTheme, + // platform: TargetPlatform.iOS, + // ), + home: NavigationHomeScreen(), + ), ); } + + @override + State createState() { + // TODO: implement createState + throw UnimplementedError(); + } } + +// class App extends StatefulWidget { +// @override +// _AppState createState() => _AppState(); +// } + +// class _AppState extends State { +// @override +// void initState() { +// OverlaySupportEntry entry; +// Connectivity().onConnectivityChanged.listen((event) { +// print(event); +// if (event.toString().contains("ConnectivityResult.none")) { +// entry = showOverlayNotification((context) { +// return Text("this is a message from simple notification"); +// }, duration: Duration(hours: 1)); +// } +// }); +// super.initState(); +// } + +// @override +// Widget build(BuildContext context) { +// return OverlaySupport( +// child: MaterialApp( +// title: 'Network Checker App', +// debugShowCheckedModeBanner: false, +// home: Homepage(), +// ), +// ); +// } +// } diff --git a/lib/model/affiliationsmodel.dart b/lib/model/affiliationsmodel.dart index 5e5b448..b590f60 100644 --- a/lib/model/affiliationsmodel.dart +++ b/lib/model/affiliationsmodel.dart @@ -47,24 +47,54 @@ class AffiliationsResp { }; } +List affiliationsFromJson(String str) => List.from( + json.decode(str).map((x) => Affiliations.fromJson(x))); + +String affiliationsToJson(List data) => + json.encode(List.from(data.map((x) => x.toJson()))); + class Affiliations { - List affiliationNames; - List affiliationCount; + String? id; + String? orgCount; + String? orgName; Affiliations({ - required this.affiliationNames, - required this.affiliationCount, + this.id, + this.orgCount, + this.orgName, }); factory Affiliations.fromJson(Map json) => Affiliations( - affiliationNames: - List.from(json["affiliationNames"].map((x) => x)), - affiliationCount: - List.from(json["affiliationCount"].map((x) => x)), + id: json["id"], + orgCount: json["org_count"], + orgName: json["org_name"], ); Map toJson() => { - "affiliationNames": List.from(affiliationNames.map((x) => x)), - "affiliationCount": List.from(affiliationCount.map((x) => x)), + "id": id, + "org_count": orgCount, + "org_name": orgName, }; } + +// class Affiliations { +// List affiliationNames; +// List affiliationCount; + +// Affiliations({ +// required this.affiliationNames, +// required this.affiliationCount, +// }); + +// factory Affiliations.fromJson(Map json) => Affiliations( +// affiliationNames: +// List.from(json["affiliationNames"].map((x) => x)), +// affiliationCount: +// List.from(json["affiliationCount"].map((x) => x)), +// ); + +// Map toJson() => { +// "affiliationNames": List.from(affiliationNames.map((x) => x)), +// "affiliationCount": List.from(affiliationCount.map((x) => x)), +// }; +// } diff --git a/lib/model/events_details.dart b/lib/model/events_details.dart new file mode 100644 index 0000000..05640d6 --- /dev/null +++ b/lib/model/events_details.dart @@ -0,0 +1,347 @@ +// To parse this JSON data, do +// +// final eventsOverviewDetails = eventsOverviewDetailsFromJson(jsonString); + +import 'dart:convert'; + +EventsOverviewDetails eventsOverviewDetailsFromJson(String str) => + EventsOverviewDetails.fromJson(json.decode(str)); + +String eventsOverviewDetailsToJson(EventsOverviewDetails data) => + json.encode(data.toJson()); + +class EventsOverviewDetails { + OverviewData? data; + + EventsOverviewDetails({ + this.data, + }); + + factory EventsOverviewDetails.fromJson(Map json) => + EventsOverviewDetails( + data: json["data"] == null ? null : OverviewData.fromJson(json["data"]), + ); + + Map toJson() => { + "data": data?.toJson(), + }; +} + +class OverviewData { + int? projectKolAttendee; + bool? cal; + int? grid; + String? eventFor; + String? eventId; + List? eventData; + dynamic eventTopics; + List? eventSponsers; + bool? eventUserAttendee; + bool? eventUserInterest; + List? arrEvents; + int? attendeeCount; + + OverviewData({ + this.projectKolAttendee, + this.cal, + this.grid, + this.eventFor, + this.eventId, + this.eventData, + this.eventTopics, + this.eventSponsers, + this.eventUserAttendee, + this.eventUserInterest, + this.arrEvents, + this.attendeeCount, + }); + + factory OverviewData.fromJson(Map json) => OverviewData( + projectKolAttendee: json["project_kol_attendee"], + cal: json["cal"], + grid: json["grid"], + eventFor: json["eventFor"], + eventId: json["eventId"], + eventData: json["eventData"] == null + ? [] + : List.from( + json["eventData"]!.map((x) => TopSpeakers.fromJson(x))), + eventTopics: json["eventTopics"], + eventSponsers: json["eventSponsers"] == null + ? [] + : List.from( + json["eventSponsers"]!.map((x) => EventSponser.fromJson(x))), + eventUserAttendee: json["event_user_attendee"], + eventUserInterest: json["event_user_interest"], + arrEvents: json["arrEvents"] == null + ? [] + : List.from( + json["arrEvents"]!.map((x) => ArrEvent.fromJson(x))), + attendeeCount: json["attendeeCount"], + ); + + Map toJson() => { + "project_kol_attendee": projectKolAttendee, + "cal": cal, + "grid": grid, + "eventFor": eventFor, + "eventId": eventId, + "eventData": eventData == null + ? [] + : List.from(eventData!.map((x) => x.toJson())), + "eventTopics": eventTopics, + "eventSponsers": eventSponsers == null + ? [] + : List.from(eventSponsers!.map((x) => x.toJson())), + "event_user_attendee": eventUserAttendee, + "event_user_interest": eventUserInterest, + "arrEvents": arrEvents == null + ? [] + : List.from(arrEvents!.map((x) => x.toJson())), + "attendeeCount": attendeeCount, + }; +} + +class ArrEvent { + String? sponsorType; + String? sponsorTypeName; + String? id; + String? kolId; + String? type; + String? eventType; + String? eventId; + String? sessionType; + String? sessionName; + String? role; + dynamic topic; + String? start; + String? end; + String? organizer; + String? sessionSponsor; + String? organizerType; + String? location; + String? address; + String? cityId; + String? stateId; + String? countryId; + String? postalCode; + dynamic subject; + String? url1; + dynamic url2; + dynamic notes; + String? createdBy; + DateTime? createdOn; + dynamic modifiedBy; + DateTime? modifiedOn; + String? clientId; + dynamic projectId; + String? activityType; + String? profileType; + dynamic globalEventId; + String? eventUniqueId; + String? name; + String? confEventType; + String? country; + dynamic eventTopic; + String? confSessionType; + String? region; + String? city; + + ArrEvent({ + this.sponsorType, + this.sponsorTypeName, + this.id, + this.kolId, + this.type, + this.eventType, + this.eventId, + this.sessionType, + this.sessionName, + this.role, + this.topic, + this.start, + this.end, + this.organizer, + this.sessionSponsor, + this.organizerType, + this.location, + this.address, + this.cityId, + this.stateId, + this.countryId, + this.postalCode, + this.subject, + this.url1, + this.url2, + this.notes, + this.createdBy, + this.createdOn, + this.modifiedBy, + this.modifiedOn, + this.clientId, + this.projectId, + this.activityType, + this.profileType, + this.globalEventId, + this.eventUniqueId, + this.name, + this.confEventType, + this.country, + this.eventTopic, + this.confSessionType, + this.region, + this.city, + }); + + factory ArrEvent.fromJson(Map json) => ArrEvent( + sponsorType: json["sponsor_type"], + sponsorTypeName: json["sponsor_type_name"], + id: json["id"], + kolId: json["kol_id"], + type: json["type"], + eventType: json["event_type"], + eventId: json["event_id"], + sessionType: json["session_type"], + sessionName: json["session_name"], + role: json["role"], + topic: json["topic"], + start: json["start"], + end: json["end"], + organizer: json["organizer"], + sessionSponsor: json["session_sponsor"], + organizerType: json["organizer_type"], + location: json["location"], + address: json["address"], + cityId: json["city_id"], + stateId: json["state_id"], + countryId: json["country_id"], + postalCode: json["postal_code"], + subject: json["subject"], + url1: json["url1"], + url2: json["url2"], + notes: json["notes"], + createdBy: json["created_by"], + createdOn: json["created_on"] == null + ? null + : DateTime.parse(json["created_on"]), + modifiedBy: json["modified_by"], + modifiedOn: json["modified_on"] == null + ? null + : DateTime.parse(json["modified_on"]), + clientId: json["client_id"], + projectId: json["project_id"], + activityType: json["activity_type"], + profileType: json["profile_type"], + globalEventId: json["global_event_id"], + eventUniqueId: json["event_unique_id"], + name: json["name"], + confEventType: json["conf_event_type"], + country: json["country"], + eventTopic: json["event_topic"], + confSessionType: json["conf_session_type"], + region: json["region"], + city: json["city"], + ); + + Map toJson() => { + "sponsor_type": sponsorType, + "sponsor_type_name": sponsorTypeName, + "id": id, + "kol_id": kolId, + "type": type, + "event_type": eventType, + "event_id": eventId, + "session_type": sessionType, + "session_name": sessionName, + "role": role, + "topic": topic, + "start": start, + "end": end, + "organizer": organizer, + "session_sponsor": sessionSponsor, + "organizer_type": organizerType, + "location": location, + "address": address, + "city_id": cityId, + "state_id": stateId, + "country_id": countryId, + "postal_code": postalCode, + "subject": subject, + "url1": url1, + "url2": url2, + "notes": notes, + "created_by": createdBy, + "created_on": createdOn?.toIso8601String(), + "modified_by": modifiedBy, + "modified_on": modifiedOn?.toIso8601String(), + "client_id": clientId, + "project_id": projectId, + "activity_type": activityType, + "profile_type": profileType, + "global_event_id": globalEventId, + "event_unique_id": eventUniqueId, + "name": name, + "conf_event_type": confEventType, + "country": country, + "event_topic": eventTopic, + "conf_session_type": confSessionType, + "region": region, + "city": city, + }; +} + +class TopSpeakers { + String? firstName; + dynamic middleName; + dynamic lastName; + String? numSess; + + TopSpeakers({ + this.firstName, + this.middleName, + this.lastName, + this.numSess, + }); + + factory TopSpeakers.fromJson(Map json) => TopSpeakers( + firstName: json["first_name"], + middleName: json["middle_name"], + lastName: json["last_name"], + numSess: json["num_sess"], + ); + + Map toJson() => { + "first_name": firstName, + "middle_name": middleName, + "last_name": lastName, + "num_sess": numSess, + }; +} + +class EventSponser { + String? numSess; + String? sessionSponsor; + String? type; + String? sponsorsType; + + EventSponser({ + this.numSess, + this.sessionSponsor, + this.type, + this.sponsorsType, + }); + + factory EventSponser.fromJson(Map json) => EventSponser( + numSess: json["num_sess"], + sessionSponsor: json["session_sponsor"], + type: json["type"], + sponsorsType: json["sponsors_type"], + ); + + Map toJson() => { + "num_sess": numSess, + "session_sponsor": sessionSponsor, + "type": type, + "sponsors_type": sponsorsType, + }; +} diff --git a/lib/model/events_list_resp_2.dart b/lib/model/events_list_resp_2.dart new file mode 100644 index 0000000..b2b1625 --- /dev/null +++ b/lib/model/events_list_resp_2.dart @@ -0,0 +1,219 @@ +class EventsListResp2 { + int? code; + String? message; + List? data; + int? lastPage; + int? lastRow; + int? count; + + EventsListResp2( + {this.code, + this.message, + this.data, + this.lastPage, + this.lastRow, + this.count}); + + EventsListResp2.fromJson(Map json) { + if (json["code"] is int) { + code = json["code"]; + } + if (json["message"] is String) { + message = json["message"]; + } + if (json["data"] is List) { + data = json["data"] == null + ? null + : (json["data"] as List) + .map((e) => EventsListingData.fromJson(e)) + .toList(); + } + if (json["last_page"] is int) { + lastPage = json["last_page"]; + } + if (json["last_row"] is int) { + lastRow = json["last_row"]; + } + if (json["count"] is int) { + count = json["count"]; + } + } + + Map toJson() { + final Map _data = {}; + _data["code"] = code; + _data["message"] = message; + if (data != null) { + _data["data"] = data?.map((e) => e.toJson()).toList(); + } + _data["last_page"] = lastPage; + _data["last_row"] = lastRow; + _data["count"] = count; + return _data; + } +} + +class EventsListingData { + String? uniqueId; + String? sessionName; + String? startDate; + String? endDate; + String? organizer; + String? sessionSponsor; + dynamic location; + dynamic address; + dynamic postalCode; + dynamic url; + String? activityType; + String? role; + String? eventTypeName; + String? countryName; + String? stateName; + String? cityName; + String? organizerTypeName; + String? sponsorTypeName; + String? sessionTypeName; + String? kolName; + dynamic kolUniqueId; + String? eventName; + String? eventUniqueId; + String? createdByUser; + String? updatedByUser; + String? formattedCreatedAt; + String? formattedUpdatedAt; + + EventsListingData( + {this.uniqueId, + this.sessionName, + this.startDate, + this.endDate, + this.organizer, + this.sessionSponsor, + this.location, + this.address, + this.postalCode, + this.url, + this.activityType, + this.role, + this.eventTypeName, + this.countryName, + this.stateName, + this.cityName, + this.organizerTypeName, + this.sponsorTypeName, + this.sessionTypeName, + this.kolName, + this.kolUniqueId, + this.eventName, + this.eventUniqueId, + this.createdByUser, + this.updatedByUser, + this.formattedCreatedAt, + this.formattedUpdatedAt}); + + EventsListingData.fromJson(Map json) { + if (json["unique_id"] is String) { + uniqueId = json["unique_id"]; + } + if (json["session_name"] is String) { + sessionName = json["session_name"]; + } + if (json["start_date"] is String) { + startDate = json["start_date"]; + } + if (json["end_date"] is String) { + endDate = json["end_date"]; + } + if (json["organizer"] is String) { + organizer = json["organizer"]; + } + if (json["session_sponsor"] is String) { + sessionSponsor = json["session_sponsor"]; + } + location = json["location"]; + address = json["address"]; + postalCode = json["postal_code"]; + url = json["url"]; + if (json["activity_type"] is String) { + activityType = json["activity_type"]; + } + if (json["role"] is String) { + role = json["role"]; + } + if (json["event_type_name"] is String) { + eventTypeName = json["event_type_name"]; + } + if (json["country_name"] is String) { + countryName = json["country_name"]; + } + if (json["state_name"] is String) { + stateName = json["state_name"]; + } + if (json["city_name"] is String) { + cityName = json["city_name"]; + } + if (json["organizer_type_name"] is String) { + organizerTypeName = json["organizer_type_name"]; + } + if (json["sponsor_type_name"] is String) { + sponsorTypeName = json["sponsor_type_name"]; + } + if (json["session_type_name"] is String) { + sessionTypeName = json["session_type_name"]; + } + if (json["kol_name"] is String) { + kolName = json["kol_name"]; + } + kolUniqueId = json["kol_unique_id"]; + if (json["event_name"] is String) { + eventName = json["event_name"]; + } + if (json["event_unique_id"] is String) { + eventUniqueId = json["event_unique_id"]; + } + if (json["created_by_user"] is String) { + createdByUser = json["created_by_user"]; + } + if (json["updated_by_user"] is String) { + updatedByUser = json["updated_by_user"]; + } + if (json["formatted_created_at"] is String) { + formattedCreatedAt = json["formatted_created_at"]; + } + if (json["formatted_updated_at"] is String) { + formattedUpdatedAt = json["formatted_updated_at"]; + } + } + + Map toJson() { + final Map _data = {}; + _data["unique_id"] = uniqueId; + _data["session_name"] = sessionName; + _data["start_date"] = startDate; + _data["end_date"] = endDate; + _data["organizer"] = organizer; + _data["session_sponsor"] = sessionSponsor; + _data["location"] = location; + _data["address"] = address; + _data["postal_code"] = postalCode; + _data["url"] = url; + _data["activity_type"] = activityType; + _data["role"] = role; + _data["event_type_name"] = eventTypeName; + _data["country_name"] = countryName; + _data["state_name"] = stateName; + _data["city_name"] = cityName; + _data["organizer_type_name"] = organizerTypeName; + _data["sponsor_type_name"] = sponsorTypeName; + _data["session_type_name"] = sessionTypeName; + _data["kol_name"] = kolName; + _data["kol_unique_id"] = kolUniqueId; + _data["event_name"] = eventName; + _data["event_unique_id"] = eventUniqueId; + _data["created_by_user"] = createdByUser; + _data["updated_by_user"] = updatedByUser; + _data["formatted_created_at"] = formattedCreatedAt; + _data["formatted_updated_at"] = formattedUpdatedAt; + return _data; + } +} diff --git a/lib/model/eventspeakers.dart b/lib/model/eventspeakers.dart new file mode 100644 index 0000000..69de2bb --- /dev/null +++ b/lib/model/eventspeakers.dart @@ -0,0 +1,330 @@ +// To parse this JSON data, do +// +// final speakersResponse = speakersResponseFromJson(jsonString); + +import 'dart:convert'; + +import 'package:hive_flutter/hive_flutter.dart'; +import 'package:konectar_events/contacts_module/model_class/speaker.dart'; + +part 'eventspeakers.g.dart'; + +SpeakersResponse speakersResponseFromJson(String str) => + SpeakersResponse.fromJson(json.decode(str)); + +String speakersResponseToJson(SpeakersResponse data) => + json.encode(data.toJson()); + +class SpeakersResponse { + int? code; + String? message; + List? data; + int? lastPage; + int? lastRow; + int? count; + + SpeakersResponse({ + this.code, + this.message, + this.data, + this.lastPage, + this.lastRow, + this.count, + }); + + factory SpeakersResponse.fromJson(Map json) => + SpeakersResponse( + code: json["code"], + message: json["message"], + data: json["data"] == null + ? [] + : List.from( + json["data"]!.map((x) => SpeakersList.fromJson(x))), + lastPage: json["last_page"], + lastRow: json["last_row"], + count: json["count"], + ); + + Map toJson() => { + "code": code, + "message": message, + "data": data == null + ? [] + : List.from(data!.map((x) => x.toJson())), + "last_page": lastPage, + "last_row": lastRow, + "count": count, + }; +} + +class SpeakersResponse1 { + Data1? data; + + SpeakersResponse1({ + this.data, + }); + + factory SpeakersResponse1.fromJson(Map json) => + SpeakersResponse1( + data: json["data"] == null ? null : Data1.fromJson(json["data"]), + ); + + Map toJson() => { + "data": data?.toJson(), + }; +} + +class Data1 { + List? data; + + Data1({ + this.data, + }); + + factory Data1.fromJson(Map json) => Data1( + data: json["data"] == null + ? [] + : List.from( + json["data"]!.map((x) => SpeakersList.fromJson(x))), + ); + + Map toJson() => { + "data": data == null + ? [] + : List.from(data!.map((x) => x.toJson())), + }; +} + +@HiveType(typeId: 25) +class SpeakersList { + @HiveField(0) + String? uniqueId; + @HiveField(1) + String? hcpFullName; + @HiveField(2) + String? hcpPin; + @HiveField(3) + int? npiNum; + @HiveField(4) + String? specialty; + @HiveField(5) + String? organization; + @HiveField(6) + String? therapeuticArea; + @HiveField(7) + dynamic cleansStatus; + @HiveField(8) + int? isDeleted; + @HiveField(9) + CreatedByUser? createdByUser; + @HiveField(10) + CreatedByUser? updatedByUser; + @HiveField(11) + String? cityName; + @HiveField(12) + String? stateName; + @HiveField(13) + String? countryName; + @HiveField(14) + dynamic deletedByUser; + @HiveField(15) + DateTime? formattedCreatedAt; + @HiveField(16) + DateTime? formattedUpdatedAt; + @HiveField(17) + dynamic formattedDeletedAt; + @HiveField(18) + List? sessionNames; + @HiveField(19) + List? topics; + + SpeakersList({ + this.uniqueId, + this.hcpFullName, + this.hcpPin, + this.npiNum, + this.specialty, + this.organization, + this.therapeuticArea, + this.cleansStatus, + this.isDeleted, + this.createdByUser, + this.updatedByUser, + this.cityName, + this.stateName, + this.countryName, + this.deletedByUser, + this.formattedCreatedAt, + this.formattedUpdatedAt, + this.formattedDeletedAt, + this.sessionNames, + this.topics, + }); + + // SpeakersList.fromJson(Map json) { + + // if (json["unique_id"] is String) { + // city = json["city_name"] ?? null; + // } + // if (json["country_name"] is String) { + // country = json["country_name"] ?? null; + // } + // if (json["state_name"] is String) { + // region = json["state_name"] ?? null; + // } + // if (json["activity_type"] is String) { + // activityType = json["activity_type"]; + // } + // if (json["address"] is String) { + // address = json["address"]; + // } + // if (json["city_id"] is String) { + // cityId = json["city_id"]; + // } + // if (json["client_id"] is String) { + // clientId = json["client_id"]; + // } + // if (json["cnt"] is String) { + // cnt = json["cnt"]; + // } + // if (json["country_id"] is String) { + // countryId = json["country_id"]; + // } + // if (json["created_by"] is String) { + // createdBy = json["created_by"]; + // } + // if (json["created_on"] is String) { + // createdOn = json["created_on"]; + // } + // if (json["dAllowed"] is bool) { + // dAllowed = json["dAllowed"]; + // } + // if (json["eAllowed"] is bool) { + // eAllowed = json["eAllowed"]; + // } + // if (json["end_date"] is String) { + // end = json["end_date"]; + // } + // if (json["eventLat"] is String) { + // eventLat = json["eventLat"]; + // } + // if (json["eventLong"] is String) { + // eventLong = json["eventLong"]; + // } + // if (json["unique_id"] is String) { + // eventId = json["unique_id"]; + // } + // if (json["event_type_name"] is String) { + // eventType = json["event_type_name"]; + // } + // if (json["event_unique_id"] is String) { + // eventUniqueId = json["event_unique_id"]; + // } + // if (json["event_user_attendee"] is bool) { + // eventUserAttendee = json["event_user_attendee"]; + // } + // if (json["global_event_id"] is String) { + // globalEventId = json["global_event_id"]; + // } + // if (json["hcp_pin"] is String) { + // hcpPin = json["hcp_pin"]; + // } + // if (json["id"] is String) { + // id = json["id"]; + // } + // if (json["kol_id"] is String) { + // kolId = json["kol_id"]; + // } + // if (json["location"] is String) { + // location = json["location"]; + // } + // if (json["modified_by"] is String) { + // modifiedBy = json["modified_by"]; + // } + // if (json["modified_on"] is String) { + // modifiedOn = json["modified_on"]; + // } + // if (json["event_name"] is String) { + // name1 = json["event_name"]; + // } + + // } + factory SpeakersList.fromJson(Map json) => SpeakersList( + uniqueId: json["unique_id"], + hcpFullName: json["hcp_full_name"] ?? null, + hcpPin: json["hcp_pin"] ?? null, + npiNum: json["npi_num"] ?? null, + specialty: json["specialty"] ?? null, + organization: json["organization"] ?? null, + therapeuticArea: json["therapeutic_area"] ?? null, + cleansStatus: json["cleans_status"] ?? null, + isDeleted: json["is_deleted"] ?? null, + createdByUser: CreatedByUserValues.map[json["created_by_user"]] ?? null, + updatedByUser: CreatedByUserValues.map[json["updated_by_user"]] ?? null, + cityName: json["city_name"] ?? null, + stateName: json["state_name"] ?? null, + countryName: json["country_name"] ?? null, + deletedByUser: json["deleted_by_user"], + formattedCreatedAt: json["formatted_created_at"] == null + ? null + : DateTime.parse(json["formatted_created_at"]), + formattedUpdatedAt: json["formatted_updated_at"] == null + ? null + : DateTime.parse(json["formatted_updated_at"]), + formattedDeletedAt: json["formatted_deleted_at"], + sessionNames: json["session_names"] == null + ? [] + : List.from(json["session_names"]!.map((x) => x)), + topics: json["topics"] == null + ? [] + : List.from(json["topics"]!.map((x) => x)), + ); + + Map toJson() => { + "unique_id": uniqueId, + "hcp_full_name": hcpFullName, + "hcp_pin": hcpPin, + "npi_num": npiNum, + "specialty": specialty, + "organization": organization, + "therapeutic_area": therapeuticAreaValues.reverse[therapeuticArea], + "cleans_status": cleansStatus, + "is_deleted": isDeleted, + "created_by_user": CreatedByUserValues.reverse[createdByUser], + "updated_by_user": CreatedByUserValues.reverse[updatedByUser], + "city_name": cityName, + "state_name": stateName, + "country_name": countryName, + "deleted_by_user": deletedByUser, + "formatted_created_at": formattedCreatedAt?.toIso8601String(), + "formatted_updated_at": formattedUpdatedAt?.toIso8601String(), + "formatted_deleted_at": formattedDeletedAt, + "session_names": sessionNames == null + ? [] + : List.from(sessionNames!.map((x) => x)), + "topics": + topics == null ? [] : List.from(topics!.map((x) => x)), + }; +} + +enum CreatedByUser { ADMIN_SUPER_ROOT } + +final CreatedByUserValues = + EnumValues({"admin super root": CreatedByUser.ADMIN_SUPER_ROOT}); + +enum TherapeuticArea { ONCOLOGY_WOMENS_HEALTH } + +final therapeuticAreaValues = EnumValues( + {"Oncology | Womens Health": TherapeuticArea.ONCOLOGY_WOMENS_HEALTH}); + +class EnumValues { + Map map; + late Map reverseMap; + + EnumValues(this.map); + + Map get reverse { + reverseMap = map.map((k, v) => MapEntry(v, k)); + return reverseMap; + } +} diff --git a/lib/model/eventspeakers.g.dart b/lib/model/eventspeakers.g.dart new file mode 100644 index 0000000..d944da1 --- /dev/null +++ b/lib/model/eventspeakers.g.dart @@ -0,0 +1,98 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'eventspeakers.dart'; + +// ************************************************************************** +// TypeAdapterGenerator +// ************************************************************************** + +class SpeakersListAdapter extends TypeAdapter { + @override + final int typeId = 25; + + @override + SpeakersList read(BinaryReader reader) { + final numOfFields = reader.readByte(); + final fields = { + for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), + }; + return SpeakersList( + uniqueId: fields[0] as String?, + hcpFullName: fields[1] as String?, + hcpPin: fields[2] as String?, + npiNum: fields[3] as int?, + specialty: fields[4] as String?, + organization: fields[5] as String?, + therapeuticArea: fields[6] as String?, + cleansStatus: fields[7] as dynamic, + isDeleted: fields[8] as int?, + createdByUser: fields[9] as CreatedByUser?, + updatedByUser: fields[10] as CreatedByUser?, + cityName: fields[11] as String?, + stateName: fields[12] as String?, + countryName: fields[13] as String?, + deletedByUser: fields[14] as dynamic, + formattedCreatedAt: fields[15] as DateTime?, + formattedUpdatedAt: fields[16] as DateTime?, + formattedDeletedAt: fields[17] as dynamic, + sessionNames: (fields[18] as List?)?.cast(), + topics: (fields[19] as List?)?.cast(), + ); + } + + @override + void write(BinaryWriter writer, SpeakersList obj) { + writer + ..writeByte(20) + ..writeByte(0) + ..write(obj.uniqueId) + ..writeByte(1) + ..write(obj.hcpFullName) + ..writeByte(2) + ..write(obj.hcpPin) + ..writeByte(3) + ..write(obj.npiNum) + ..writeByte(4) + ..write(obj.specialty) + ..writeByte(5) + ..write(obj.organization) + ..writeByte(6) + ..write(obj.therapeuticArea) + ..writeByte(7) + ..write(obj.cleansStatus) + ..writeByte(8) + ..write(obj.isDeleted) + ..writeByte(9) + ..write(obj.createdByUser) + ..writeByte(10) + ..write(obj.updatedByUser) + ..writeByte(11) + ..write(obj.cityName) + ..writeByte(12) + ..write(obj.stateName) + ..writeByte(13) + ..write(obj.countryName) + ..writeByte(14) + ..write(obj.deletedByUser) + ..writeByte(15) + ..write(obj.formattedCreatedAt) + ..writeByte(16) + ..write(obj.formattedUpdatedAt) + ..writeByte(17) + ..write(obj.formattedDeletedAt) + ..writeByte(18) + ..write(obj.sessionNames) + ..writeByte(19) + ..write(obj.topics); + } + + @override + int get hashCode => typeId.hashCode; + + @override + bool operator ==(Object other) => + identical(this, other) || + other is SpeakersListAdapter && + runtimeType == other.runtimeType && + typeId == other.typeId; +} diff --git a/lib/model/my_events_list_model.dart b/lib/model/my_events_list_model.dart new file mode 100644 index 0000000..5ac4b2e --- /dev/null +++ b/lib/model/my_events_list_model.dart @@ -0,0 +1,486 @@ +import 'package:hive_flutter/hive_flutter.dart'; + +class MyEventsListModel { + int? code; + String? message; + List? data; + int? lastPage; + int? lastRow; + int? count; + + MyEventsListModel( + {this.code, + this.message, + this.data, + this.lastPage, + this.lastRow, + this.count}); + + MyEventsListModel.fromJson(Map json) { + if (json["code"] is int) { + code = json["code"]; + } + if (json["message"] is String) { + message = json["message"]; + } + if (json["data"] is List) { + data = json["data"] == null + ? null + : (json["data"] as List) + .map((e) => MyEventsData.fromJson(e)) + .toList(); + } + if (json["last_page"] is int) { + lastPage = json["last_page"]; + } + if (json["last_row"] is int) { + lastRow = json["last_row"]; + } + if (json["count"] is int) { + count = json["count"]; + } + } + + Map toJson() { + final Map _data = {}; + _data["code"] = code; + _data["message"] = message; + if (data != null) { + _data["data"] = data?.map((e) => e.toJson()).toList(); + } + _data["last_page"] = lastPage; + _data["last_row"] = lastRow; + _data["count"] = count; + return _data; + } +} + +class MyEventsData { + String? uniqueId; + dynamic switchedId; + String? createdByUser; + String? updatedByUser; + dynamic deletedByUser; + String? formattedCreatedAt; + String? formattedUpdatedAt; + dynamic formattedDeletedAt; + List? events; + + MyEventsData( + {this.uniqueId, + this.switchedId, + this.createdByUser, + this.updatedByUser, + this.deletedByUser, + this.formattedCreatedAt, + this.formattedUpdatedAt, + this.formattedDeletedAt, + this.events}); + + MyEventsData.fromJson(Map json) { + if (json["unique_id"] is String) { + uniqueId = json["unique_id"]; + } + switchedId = json["switched_id"]; + if (json["created_by_user"] is String) { + createdByUser = json["created_by_user"]; + } + if (json["updated_by_user"] is String) { + updatedByUser = json["updated_by_user"]; + } + deletedByUser = json["deleted_by_user"]; + if (json["formatted_created_at"] is String) { + formattedCreatedAt = json["formatted_created_at"]; + } + if (json["formatted_updated_at"] is String) { + formattedUpdatedAt = json["formatted_updated_at"]; + } + formattedDeletedAt = json["formatted_deleted_at"]; + if (json["events"] is List) { + events = json["events"] == null + ? null + : (json["events"] as List) + .map((e) => MyEventsList.fromJson(e)) + .toList(); + } + } + + Map toJson() { + final Map _data = {}; + _data["unique_id"] = uniqueId; + _data["switched_id"] = switchedId; + _data["created_by_user"] = createdByUser; + _data["updated_by_user"] = updatedByUser; + _data["deleted_by_user"] = deletedByUser; + _data["formatted_created_at"] = formattedCreatedAt; + _data["formatted_updated_at"] = formattedUpdatedAt; + _data["formatted_deleted_at"] = formattedDeletedAt; + if (events != null) { + _data["events"] = events?.map((e) => e.toJson()).toList(); + } + return _data; + } +} + +@HiveType(typeId: 101) +class MyEventsList { + @HiveField(0) + String? myeventid; + @HiveField(1) + String? eventid; + @HiveField(2) + String? sessionName; + @HiveField(3) + String? start; + @HiveField(4) + String? end; + @HiveField(5) + String? organizer; + @HiveField(6) + String? sessionSponsor; + @HiveField(7) + dynamic location; + @HiveField(8) + dynamic address; + @HiveField(9) + dynamic postalCode; + @HiveField(10) + String? url; + @HiveField(11) + String? activityType; + @HiveField(12) + dynamic topic; + @HiveField(13) + String? role; + @HiveField(14) + String? eventTypeName; + @HiveField(15) + String? country; + @HiveField(16) + String? region; + @HiveField(17) + String? city; + @HiveField(18) + String? organizerTypeName; + @HiveField(19) + String? sponsorTypeName; + @HiveField(20) + String? sessionTypeName; + @HiveField(21) + String? kolName; + @HiveField(22) + dynamic kolUniqueId; + @HiveField(23) + String? name1; + @HiveField(24) + String? eventUniqueId; + @HiveField(25) + String? createdByUser; + @HiveField(26) + String? updatedByUser; + @HiveField(27) + String? formattedCreatedAt; + @HiveField(28) + String? formattedUpdatedAt; + @HiveField(29) + List? attendees; + @HiveField(30) + bool isfav = false; + @HiveField(31) + bool isAttending = false; + @HiveField(32) + String? speakerscount; + @HiveField(33) + String? topTopics; + @HiveField(34) + String? topSpeakers; + + MyEventsList( + {this.eventid, + this.sessionName, + this.start, + this.end, + this.organizer, + this.sessionSponsor, + this.location, + this.address, + this.postalCode, + this.url, + this.activityType, + this.topic, + this.role, + this.eventTypeName, + this.country, + this.region, + this.city, + this.organizerTypeName, + this.sponsorTypeName, + this.sessionTypeName, + this.kolName, + this.kolUniqueId, + this.name1, + this.eventUniqueId, + this.createdByUser, + this.updatedByUser, + this.formattedCreatedAt, + this.formattedUpdatedAt, + this.attendees}); + + MyEventsList.fromJson(Map json) { + if (json["unique_id"] is String) { + eventid = json["unique_id"]; + } + if (json["session_name"] is String) { + sessionName = json["session_name"]; + } + if (json["start_date"] is String) { + start = json["start_date"]; + } + if (json["end_date"] is String) { + end = json["end_date"]; + } + if (json["organizer"] is String) { + organizer = json["organizer"]; + } + if (json["session_sponsor"] is String) { + sessionSponsor = json["session_sponsor"]; + } + location = json["location"]; + address = json["address"]; + postalCode = json["postal_code"]; + if (json["url"] is String) { + url = json["url"]; + } + if (json["activity_type"] is String) { + activityType = json["activity_type"]; + } + topic = json["topic"]; + if (json["role"] is String) { + role = json["role"]; + } + if (json["event_type_name"] is String) { + eventTypeName = json["event_type_name"]; + } + if (json["country_name"] is String) { + country = json["country_name"]; + } + if (json["state_name"] is String) { + region = json["state_name"]; + } + if (json["city_name"] is String) { + city = json["city_name"]; + } + if (json["organizer_type_name"] is String) { + organizerTypeName = json["organizer_type_name"]; + } + if (json["sponsor_type_name"] is String) { + sponsorTypeName = json["sponsor_type_name"]; + } + if (json["session_type_name"] is String) { + sessionTypeName = json["session_type_name"]; + } + if (json["kol_name"] is String) { + kolName = json["kol_name"]; + } + kolUniqueId = json["kol_unique_id"]; + if (json["event_name"] is String) { + name1 = json["event_name"]; + } + if (json["event_unique_id"] is String) { + eventUniqueId = json["event_unique_id"]; + } + if (json["created_by_user"] is String) { + createdByUser = json["created_by_user"]; + } + if (json["updated_by_user"] is String) { + updatedByUser = json["updated_by_user"]; + } + if (json["formatted_created_at"] is String) { + formattedCreatedAt = json["formatted_created_at"]; + } + if (json["formatted_updated_at"] is String) { + formattedUpdatedAt = json["formatted_updated_at"]; + } + if (json["attendees"] is List) { + attendees = json["attendees"] == null + ? null + : (json["attendees"] as List) + .map((e) => Attendees.fromJson(e)) + .toList(); + } + } + + Map toJson() { + final Map _data = {}; + _data["unique_id"] = eventid; + _data["session_name"] = sessionName; + _data["start_date"] = start; + _data["end_date"] = end; + _data["organizer"] = organizer; + _data["session_sponsor"] = sessionSponsor; + _data["location"] = location; + _data["address"] = address; + _data["postal_code"] = postalCode; + _data["url"] = url; + _data["activity_type"] = activityType; + _data["topic"] = topic; + _data["role"] = role; + _data["event_type_name"] = eventTypeName; + _data["country_name"] = country; + _data["state_name"] = region; + _data["city_name"] = city; + _data["organizer_type_name"] = organizerTypeName; + _data["sponsor_type_name"] = sponsorTypeName; + _data["session_type_name"] = sessionTypeName; + _data["kol_name"] = kolName; + _data["kol_unique_id"] = kolUniqueId; + _data["event_name"] = name1; + _data["event_unique_id"] = eventUniqueId; + _data["created_by_user"] = createdByUser; + _data["updated_by_user"] = updatedByUser; + _data["formatted_created_at"] = formattedCreatedAt; + _data["formatted_updated_at"] = formattedUpdatedAt; + if (attendees != null) { + _data["attendees"] = attendees?.map((e) => e.toJson()).toList(); + } + return _data; + } +} + +@HiveType(typeId: 102) +class Attendees { + @HiveField(0) + String? uniqueId; + @HiveField(1) + int? kolEventId; + @HiveField(2) + int? kolId; + @HiveField(3) + String? hcpFullName; + @HiveField(4) + String? hcpPin; + @HiveField(5) + int? npiNum; + @HiveField(6) + dynamic specialty; + @HiveField(7) + dynamic organization; + @HiveField(8) + String? therapeuticArea; + @HiveField(9) + dynamic cityId; + @HiveField(10) + dynamic stateId; + @HiveField(11) + dynamic countryId; + @HiveField(12) + dynamic cleansStatus; + @HiveField(13) + int? isDeleted; + @HiveField(14) + String? createdByUser; + @HiveField(15) + String? updatedByUser; + @HiveField(16) + dynamic deletedByUser; + @HiveField(17) + String? formattedCreatedAt; + @HiveField(18) + String? formattedUpdatedAt; + @HiveField(19) + dynamic formattedDeletedAt; + + Attendees( + {this.uniqueId, + this.kolEventId, + this.kolId, + this.hcpFullName, + this.hcpPin, + this.npiNum, + this.specialty, + this.organization, + this.therapeuticArea, + this.cityId, + this.stateId, + this.countryId, + this.cleansStatus, + this.isDeleted, + this.createdByUser, + this.updatedByUser, + this.deletedByUser, + this.formattedCreatedAt, + this.formattedUpdatedAt, + this.formattedDeletedAt}); + + Attendees.fromJson(Map json) { + if (json["unique_id"] is String) { + uniqueId = json["unique_id"]; + } + if (json["kol_event_id"] is int) { + kolEventId = json["kol_event_id"]; + } + if (json["kol_id"] is int) { + kolId = json["kol_id"]; + } + if (json["hcp_full_name"] is String) { + hcpFullName = json["hcp_full_name"]; + } + if (json["hcp_pin"] is String) { + hcpPin = json["hcp_pin"]; + } + if (json["npi_num"] is int) { + npiNum = json["npi_num"]; + } + specialty = json["specialty"]; + organization = json["organization"]; + if (json["therapeutic_area"] is String) { + therapeuticArea = json["therapeutic_area"]; + } + cityId = json["city_id"]; + stateId = json["state_id"]; + countryId = json["country_id"]; + cleansStatus = json["cleans_status"]; + if (json["is_deleted"] is int) { + isDeleted = json["is_deleted"]; + } + if (json["created_by_user"] is String) { + createdByUser = json["created_by_user"]; + } + if (json["updated_by_user"] is String) { + updatedByUser = json["updated_by_user"]; + } + deletedByUser = json["deleted_by_user"]; + if (json["formatted_created_at"] is String) { + formattedCreatedAt = json["formatted_created_at"]; + } + if (json["formatted_updated_at"] is String) { + formattedUpdatedAt = json["formatted_updated_at"]; + } + formattedDeletedAt = json["formatted_deleted_at"]; + } + + Map toJson() { + final Map _data = {}; + _data["unique_id"] = uniqueId; + _data["kol_event_id"] = kolEventId; + _data["kol_id"] = kolId; + _data["hcp_full_name"] = hcpFullName; + _data["hcp_pin"] = hcpPin; + _data["npi_num"] = npiNum; + _data["specialty"] = specialty; + _data["organization"] = organization; + _data["therapeutic_area"] = therapeuticArea; + _data["city_id"] = cityId; + _data["state_id"] = stateId; + _data["country_id"] = countryId; + _data["cleans_status"] = cleansStatus; + _data["is_deleted"] = isDeleted; + _data["created_by_user"] = createdByUser; + _data["updated_by_user"] = updatedByUser; + _data["deleted_by_user"] = deletedByUser; + _data["formatted_created_at"] = formattedCreatedAt; + _data["formatted_updated_at"] = formattedUpdatedAt; + _data["formatted_deleted_at"] = formattedDeletedAt; + return _data; + } +} diff --git a/lib/model/neweventsmodel.dart b/lib/model/neweventsmodel.dart index 228698d..fe1fbd0 100644 --- a/lib/model/neweventsmodel.dart +++ b/lib/model/neweventsmodel.dart @@ -1,4 +1,5 @@ import 'package:hive_flutter/hive_flutter.dart'; +import 'package:konectar_events/contacts_module/model_class/k2_api_model/kol_event_k2.dart'; part 'neweventsmodel.g.dart'; class EventsResp { @@ -27,12 +28,10 @@ class EventsData { EventsData({this.events}); EventsData.fromJson(Map json) { - if (json["events"] is List) { - events = json["events"] == null + if (json["data"] is List) { + events = json["data"] == null ? null - : (json["events"] as List) - .map((e) => EventsList.fromJson(e)) - .toList(); + : (json["data"] as List).map((e) => EventsList.fromJson(e)).toList(); } } @@ -67,6 +66,61 @@ class EventsDataStaging { } } +// RESPONSE FROM K2 + +class EventsListRespK2 { + int? code; + String? message; + List? data; + int? lastPage; + int? lastRow; + int? count; + + EventsListRespK2( + {this.code, + this.message, + this.data, + this.lastPage, + this.lastRow, + this.count}); + + EventsListRespK2.fromJson(Map json) { + if (json["code"] is int) { + code = json["code"]; + } + if (json["message"] is String) { + message = json["message"]; + } + if (json["data"] is List) { + data = json["data"] == null + ? null + : (json["data"] as List).map((e) => EventsList.fromJson(e)).toList(); + } + if (json["last_page"] is int) { + lastPage = json["last_page"]; + } + if (json["last_row"] is int) { + lastRow = json["last_row"]; + } + if (json["count"] is int) { + count = json["count"]; + } + } + + Map toJson() { + final Map _data = {}; + _data["code"] = code; + _data["message"] = message; + if (data != null) { + _data["data"] = data?.map((e) => e.toJson()).toList(); + } + _data["last_page"] = lastPage; + _data["last_row"] = lastRow; + _data["count"] = count; + return _data; + } +} + @HiveType(typeId: 2) class EventsList { @HiveField(0) @@ -195,319 +249,449 @@ class EventsList { String? topSpeakers; @HiveField(62) String? sponsors; + @HiveField(63) + bool? eventUserInterest = false; - EventsList( - {this.city, - this.sponsors, - this.speakerscount, - this.topSpeakers, - this.topTopics, - this.isfav = false, - this.isAttending = false, - this.country, - this.region, - this.activityType, - this.address, - this.cityId, - this.clientId, - this.cnt, - this.countryId, - this.createdBy, - this.createdOn, - this.dAllowed, - this.eAllowed, - this.end, - this.eventLat, - this.eventLong, - this.eventId, - this.eventType, - this.eventUniqueId, - this.eventUserAttendee, - this.globalEventId, - this.hcpPin, - this.id, - this.kolId, - this.location, - this.modifiedBy, - this.modifiedOn, - this.name1, - this.notes, - this.organizer, - this.organizerAlias, - this.organizerType, - this.otype, - this.partialcount, - this.partiallyReleasedEvent, - this.postalCode, - this.profileType, - this.projectId, - this.role, - this.sessionName, - this.sessionNote, - this.sessionNote1, - this.sessionSponsor, - this.sessionType, - this.sponsorType, - this.start, - this.stateId, - this.stype, - this.subject, - this.therapeuticArea, - this.topic, - this.topicName, - this.type, - this.updated, - this.url1, - this.url2, - this.userCount}); + EventsList({ + this.city, + this.sponsors, + this.speakerscount, + this.topSpeakers, + this.topTopics, + this.isfav = false, + this.isAttending = false, + this.country, + this.region, + this.activityType, + this.address, + this.cityId, + this.clientId, + this.cnt, + this.countryId, + this.createdBy, + this.createdOn, + this.dAllowed, + this.eAllowed, + this.end, + this.eventLat, + this.eventLong, + this.eventId, + this.eventType, + this.eventUniqueId, + this.eventUserAttendee, + this.globalEventId, + this.hcpPin, + this.id, + this.kolId, + this.location, + this.modifiedBy, + this.modifiedOn, + this.name1, + this.notes, + this.organizer, + this.organizerAlias, + this.organizerType, + this.otype, + this.partialcount, + this.partiallyReleasedEvent, + this.postalCode, + this.profileType, + this.projectId, + this.role, + this.sessionName, + this.sessionNote, + this.sessionNote1, + this.sessionSponsor, + this.sessionType, + this.sponsorType, + this.start, + this.stateId, + this.stype, + this.subject, + this.therapeuticArea, + this.topic, + this.topicName, + this.type, + this.updated, + this.url1, + this.url2, + this.userCount, + this.eventUserInterest, + }); - EventsList.fromJson(Map json) { - isfav = false; - if (json["City"] is String) { - city = json["City"] ?? null; - } - if (json["Country"] is String) { - country = json["Country"] ?? null; - } - if (json["Region"] is String) { - region = json["Region"] ?? null; - } - if (json["activity_type"] is String) { - activityType = json["activity_type"]; - } - if (json["address"] is String) { - address = json["address"]; - } - if (json["city_id"] is String) { - cityId = json["city_id"]; - } - if (json["client_id"] is String) { - clientId = json["client_id"]; - } - if (json["cnt"] is String) { - cnt = json["cnt"]; - } - if (json["country_id"] is String) { - countryId = json["country_id"]; - } - if (json["created_by"] is String) { - createdBy = json["created_by"]; - } - if (json["created_on"] is String) { - createdOn = json["created_on"]; - } - if (json["dAllowed"] is bool) { - dAllowed = json["dAllowed"]; - } - if (json["eAllowed"] is bool) { - eAllowed = json["eAllowed"]; - } - if (json["end"] is String) { - end = json["end"]; - } - if (json["eventLat"] is String) { - eventLat = json["eventLat"]; - } - if (json["eventLong"] is String) { - eventLong = json["eventLong"]; - } - if (json["event_id"] is String) { - eventId = json["event_id"]; - } - if (json["event_type"] is String) { - eventType = json["event_type"]; - } - if (json["event_unique_id"] is String) { - eventUniqueId = json["event_unique_id"]; - } - if (json["event_user_attendee"] is bool) { - eventUserAttendee = json["event_user_attendee"]; - } - if (json["global_event_id"] is String) { - globalEventId = json["global_event_id"]; - } - if (json["hcp_pin"] is String) { - hcpPin = json["hcp_pin"]; - } - if (json["id"] is String) { - id = json["id"]; - } - if (json["kol_id"] is String) { - kolId = json["kol_id"]; - } - if (json["location"] is String) { - location = json["location"]; - } - if (json["modified_by"] is String) { - modifiedBy = json["modified_by"]; - } - if (json["modified_on"] is String) { - modifiedOn = json["modified_on"]; - } - if (json["name1"] is String) { - name1 = json["name1"]; - } - if (json["notes"] is String) { - notes = json["notes"]; - } - if (json["organizer"] is String) { - organizer = json["organizer"]; - } - if (json["organizerAlias"] is String) { - organizerAlias = json["organizerAlias"]; - } - if (json["organizer_type"] is String) { - organizerType = json["organizer_type"]; - } - if (json["otype"] is String) { - otype = json["otype"]; - } - if (json["partialcount"] is String) { - partialcount = json["partialcount"]; - } - if (json["partially_released_event"] is String) { - partiallyReleasedEvent = json["partially_released_event"]; - } - if (json["postal_code"] is String) { - postalCode = json["postal_code"]; - } - if (json["profile_type"] is String) { - profileType = json["profile_type"]; - } - if (json["project_id"] is String) { - projectId = json["project_id"]; - } - if (json["role"] is String) { - role = json["role"]; - } - if (json["session_name"] is String) { - sessionName = json["session_name"]; - } - if (json["session_note"] is String) { - sessionNote = json["session_note"]; - } - if (json["session_note1"] is String) { - sessionNote1 = json["session_note1"]; - } - if (json["session_sponsor"] is String) { - sessionSponsor = json["session_sponsor"]; - } - if (json["session_type"] is String) { - sessionType = json["session_type"]; - } - if (json["sponsor_type"] is String) { - sponsorType = json["sponsor_type"]; - } - if (json["start"] is String) { - start = json["start"]; - } - if (json["state_id"] is String) { - stateId = json["state_id"]; - } - if (json["stype"] is String) { - stype = json["stype"]; - } - if (json["subject"] is String) { - subject = json["subject"]; - } - if (json["therapeutic_area"] is String) { - therapeuticArea = json["therapeutic_area"]; - } - if (json["topic"] is String) { - topic = json["topic"]; - } - if (json["topic_name"] is String) { - topicName = json["topic_name"]; - } - if (json["type"] is String) { - type = json["type"]; - } - if (json["updated"] is bool) { - updated = json["updated"]; - } - if (json["url1"] is String) { - url1 = json["url1"]; - } - if (json["url2"] is String) { - url2 = json["url2"]; - } - if (json["user_count"] is String) { - userCount = json["user_count"]; - } + factory EventsList.fromJson(Map json) => EventsList( + therapeuticArea: json["therapeutic_area"], + hcpPin: json["hcp_pin"], + cnt: json["cnt"], + id: json["id"], + kolId: json["kol_id"], + type: json["type"], + eventType: json["event_type"], + eventId: json["event_id"], + sessionType: json["session_type"], + sessionName: json["session_name"], + role: json["role"], + topic: json["topic"], + start: json["start"], + end: json["end"], + organizer: json["organizer"], + sponsorType: json["sponsor_type"], + sessionSponsor: json["session_sponsor"], + organizerType: json["organizer_type"], + location: json["location"], + address: json["address"], + cityId: json["city_id"], + stateId: json["state_id"], + countryId: json["country_id"], + postalCode: json["postal_code"], + subject: json["subject"], + url1: json["url1"], + url2: json["url2"], + notes: json["notes"], + createdBy: json["created_by"], + createdOn: json["created_on"], + modifiedBy: json["modified_by"], + modifiedOn: json[ + "modified_on"], // == null ? null : DateTime.parse(json["modified_on"]), + clientId: json["client_id"], + projectId: json["project_id"], + activityType: json["activity_type"], + profileType: json["profile_type"], + globalEventId: json["global_event_id"], + eventUniqueId: json["event_unique_id"], + stype: json["stype"], + otype: json["otype"], + // name: json["name"], + partiallyReleasedEvent: json["partially_released_event"], + country: json["Country"], + region: json["Region"], + city: json["City"], + topicName: json["topic_name"], + eventLat: json["eventLat"], + eventLong: json["eventLong"], + userCount: json["user_count"], + partialcount: json["partialcount"], + sessionNote1: json["session_note1"], + sessionNote: json["session_note"], + organizerAlias: json["organizerAlias"], + eAllowed: json["eAllowed"], + dAllowed: json["dAllowed"], + updated: json["updated"], + eventUserAttendee: json["event_user_attendee"], + eventUserInterest: json["event_user_interest"], + name1: json["name1"], + ); - if (json["speakerscount"] is String) { - speakerscount = json["speakerscount"]; - } - if (json["topTopics"] is String) { - topTopics = json["topTopics"]; - } - if (json["topSpeakers"] is String) { - topSpeakers = json["topSpeakers"]; - } - if (json["sponsors"] is String) { - sponsors = json["sponsors"]; - } - } - - Map toJson() { - final Map _data = {}; - _data["City"] = city; - _data["country"] = country; - _data["region"] = region; - _data["activity_type"] = activityType; - _data["address"] = address; - _data["city_id"] = cityId; - _data["client_id"] = clientId; - _data["cnt"] = cnt; - _data["country_id"] = countryId; - _data["created_by"] = createdBy; - _data["created_on"] = createdOn; - _data["dAllowed"] = dAllowed; - _data["eAllowed"] = eAllowed; - _data["end"] = end; - _data["eventLat"] = eventLat; - _data["eventLong"] = eventLong; - _data["event_id"] = eventId; - _data["event_type"] = eventType; - _data["event_unique_id"] = eventUniqueId; - _data["event_user_attendee"] = eventUserAttendee; - _data["global_event_id"] = globalEventId; - _data["hcp_pin"] = hcpPin; - _data["id"] = id; - _data["kol_id"] = kolId; - _data["location"] = location; - _data["modified_by"] = modifiedBy; - _data["modified_on"] = modifiedOn; - _data["name1"] = name1; - _data["notes"] = notes; - _data["organizer"] = organizer; - _data["organizerAlias"] = organizerAlias; - _data["organizer_type"] = organizerType; - _data["otype"] = otype; - _data["partialcount"] = partialcount; - _data["partially_released_event"] = partiallyReleasedEvent; - _data["postal_code"] = postalCode; - _data["profile_type"] = profileType; - _data["project_id"] = projectId; - _data["role"] = role; - _data["session_name"] = sessionName; - _data["session_note"] = sessionNote; - _data["session_note1"] = sessionNote1; - _data["session_sponsor"] = sessionSponsor; - _data["session_type"] = sessionType; - _data["sponsor_type"] = sponsorType; - _data["start"] = start; - _data["state_id"] = stateId; - _data["stype"] = stype; - _data["subject"] = subject; - _data["therapeutic_area"] = therapeuticArea; - _data["topic"] = topic; - _data["topic_name"] = topicName; - _data["type"] = type; - _data["updated"] = updated; - _data["url1"] = url1; - _data["url2"] = url2; - _data["user_count"] = userCount; - return _data; - } + Map toJson() => { + "therapeutic_area": therapeuticArea, + "hcp_pin": hcpPin, + "cnt": cnt, + "id": id, + "kol_id": kolId, + "type": type, + "event_type": eventType, + "event_id": eventId, + "session_type": sessionType, + "session_name": sessionName, + "role": role, + "topic": topic, + "start": start, + "end": end, + "organizer": organizer, + "sponsor_type": sponsorType, + "session_sponsor": sessionSponsor, + "organizer_type": organizerType, + "location": location, + "address": address, + "city_id": cityId, + "state_id": stateId, + "country_id": countryId, + "postal_code": postalCode, + "subject": subject, + "url1": url1, + "url2": url2, + "notes": notes, + "created_by": createdBy, + "created_on": createdOn, + "modified_by": modifiedBy, + "modified_on": modifiedOn, + "client_id": clientId, + "project_id": projectId, + "activity_type": activityType, + "profile_type": profileType, + "global_event_id": globalEventId, + "event_unique_id": eventUniqueId, + "stype": stype, + "otype": otype, + // "name": name, + "partially_released_event": partiallyReleasedEvent, + "Country": country, + "Region": region, + "City": city, + "topic_name": topicName, + "eventLat": eventLat, + "eventLong": eventLong, + "user_count": userCount, + "partialcount": partialcount, + "session_note1": sessionNote1, + "session_note": sessionNote, + "organizerAlias": organizerAlias, + "eAllowed": eAllowed, + "dAllowed": dAllowed, + "updated": updated, + "event_user_attendee": eventUserAttendee, + "event_user_interest": eventUserInterest, + "name1": name1, + }; } + +// EventsList.fromJson(Map json) { +// isfav = false; +// if (json["city_name"] is String) { +// city = json["city_name"] ?? null; +// } +// if (json["country_name"] is String) { +// country = json["country_name"] ?? null; +// } +// if (json["state_name"] is String) { +// region = json["state_name"] ?? null; +// } +// if (json["activity_type"] is String) { +// activityType = json["activity_type"]; +// } +// if (json["address"] is String) { +// address = json["address"]; +// } +// if (json["city_id"] is String) { +// cityId = json["city_id"]; +// } +// if (json["client_id"] is String) { +// clientId = json["client_id"]; +// } +// if (json["cnt"] is String) { +// cnt = json["cnt"]; +// } +// if (json["country_id"] is String) { +// countryId = json["country_id"]; +// } +// if (json["created_by"] is String) { +// createdBy = json["created_by"]; +// } +// if (json["created_on"] is String) { +// createdOn = json["created_on"]; +// } +// if (json["dAllowed"] is bool) { +// dAllowed = json["dAllowed"]; +// } +// if (json["eAllowed"] is bool) { +// eAllowed = json["eAllowed"]; +// } +// if (json["end_date"] is String) { +// end = json["end_date"]; +// } +// if (json["eventLat"] is String) { +// eventLat = json["eventLat"]; +// } +// if (json["eventLong"] is String) { +// eventLong = json["eventLong"]; +// } +// if (json["unique_id"] is String) { +// eventId = json["unique_id"]; +// } +// if (json["event_type_name"] is String) { +// eventType = json["event_type_name"]; +// } +// if (json["event_unique_id"] is String) { +// eventUniqueId = json["event_unique_id"]; +// } +// if (json["event_user_attendee"] is bool) { +// eventUserAttendee = json["event_user_attendee"]; +// } +// if (json["global_event_id"] is String) { +// globalEventId = json["global_event_id"]; +// } +// if (json["hcp_pin"] is String) { +// hcpPin = json["hcp_pin"]; +// } +// if (json["id"] is String) { +// id = json["id"]; +// } +// if (json["kol_id"] is String) { +// kolId = json["kol_id"]; +// } +// if (json["location"] is String) { +// location = json["location"]; +// } +// if (json["modified_by"] is String) { +// modifiedBy = json["modified_by"]; +// } +// if (json["modified_on"] is String) { +// modifiedOn = json["modified_on"]; +// } +// if (json["event_name"] is String) { +// name1 = json["event_name"]; +// } +// if (json["notes"] is String) { +// notes = json["notes"]; +// } +// if (json["organizer"] is String) { +// organizer = json["organizer"]; +// } +// if (json["organizerAlias"] is String) { +// organizerAlias = json["organizerAlias"]; +// } +// if (json["organizer_type_name"] is String) { +// organizerType = json["organizer_type_name"]; +// } +// if (json["otype"] is String) { +// otype = json["otype"]; +// } +// if (json["partialcount"] is String) { +// partialcount = json["partialcount"]; +// } +// if (json["partially_released_event"] is String) { +// partiallyReleasedEvent = json["partially_released_event"]; +// } +// if (json["postal_code"] is String) { +// postalCode = json["postal_code"]; +// } +// if (json["profile_type"] is String) { +// profileType = json["profile_type"]; +// } +// if (json["project_id"] is String) { +// projectId = json["project_id"]; +// } +// if (json["role"] is String) { +// role = json["role"]; +// } +// if (json["session_name"] is String) { +// sessionName = json["session_name"]; +// } +// if (json["session_note"] is String) { +// sessionNote = json["session_note"]; +// } +// if (json["session_note1"] is String) { +// sessionNote1 = json["session_note1"]; +// } +// if (json["session_sponsor"] is String) { +// sessionSponsor = json["session_sponsor"]; +// } +// if (json["session_type"] is String) { +// sessionType = json["session_type"]; +// } +// if (json["sponsor_type_name"] is String) { +// sponsorType = json["sponsor_type_name"]; +// } +// if (json["start_date"] is String) { +// start = json["start_date"]; +// } +// if (json["state_id"] is String) { +// stateId = json["state_id"]; +// } +// if (json["stype"] is String) { +// stype = json["stype"]; +// } +// if (json["subject"] is String) { +// subject = json["subject"]; +// } +// if (json["therapeutic_area"] is String) { +// therapeuticArea = json["therapeutic_area"]; +// } +// if (json["topic"] is String) { +// topic = json["topic"]; +// } +// if (json["topic_name"] is String) { +// topicName = json["topic_name"]; +// } +// if (json["type"] is String) { +// type = json["type"]; +// } +// if (json["updated"] is bool) { +// updated = json["updated"]; +// } +// if (json["url"] is String) { +// url1 = json["url"]; +// } +// if (json["url2"] is String) { +// url2 = json["url2"]; +// } +// if (json["user_count"] is String) { +// userCount = json["user_count"]; +// } + +// if (json["speakerscount"] is String) { +// speakerscount = json["speakerscount"]; +// } +// if (json["topTopics"] is String) { +// topTopics = json["topTopics"]; +// } +// if (json["topSpeakers"] is String) { +// topSpeakers = json["topSpeakers"]; +// } +// if (json["sponsors"] is String) { +// sponsors = json["sponsors"]; +// } +// } + +// Map toJson() { +// final Map _data = {}; +// _data["City"] = city; +// _data["country"] = country; +// _data["region"] = region; +// _data["activity_type"] = activityType; +// _data["address"] = address; +// _data["city_id"] = cityId; +// _data["client_id"] = clientId; +// _data["cnt"] = cnt; +// _data["country_id"] = countryId; +// _data["created_by"] = createdBy; +// _data["created_on"] = createdOn; +// _data["dAllowed"] = dAllowed; +// _data["eAllowed"] = eAllowed; +// _data["end"] = end; +// _data["eventLat"] = eventLat; +// _data["eventLong"] = eventLong; +// _data["event_id"] = eventId; +// _data["event_type"] = eventType; +// _data["event_unique_id"] = eventUniqueId; +// _data["event_user_attendee"] = eventUserAttendee; +// _data["global_event_id"] = globalEventId; +// _data["hcp_pin"] = hcpPin; +// _data["id"] = id; +// _data["kol_id"] = kolId; +// _data["location"] = location; +// _data["modified_by"] = modifiedBy; +// _data["modified_on"] = modifiedOn; +// _data["name1"] = name1; +// _data["notes"] = notes; +// _data["organizer"] = organizer; +// _data["organizerAlias"] = organizerAlias; +// _data["organizer_type"] = organizerType; +// _data["otype"] = otype; +// _data["partialcount"] = partialcount; +// _data["partially_released_event"] = partiallyReleasedEvent; +// _data["postal_code"] = postalCode; +// _data["profile_type"] = profileType; +// _data["project_id"] = projectId; +// _data["role"] = role; +// _data["session_name"] = sessionName; +// _data["session_note"] = sessionNote; +// _data["session_note1"] = sessionNote1; +// _data["session_sponsor"] = sessionSponsor; +// _data["session_type"] = sessionType; +// _data["sponsor_type"] = sponsorType; +// _data["start"] = start; +// _data["state_id"] = stateId; +// _data["stype"] = stype; +// _data["subject"] = subject; +// _data["therapeutic_area"] = therapeuticArea; +// _data["topic"] = topic; +// _data["topic_name"] = topicName; +// _data["type"] = type; +// _data["updated"] = updated; +// _data["url1"] = url1; +// _data["url2"] = url2; +// _data["user_count"] = userCount; +// return _data; +// } +// } diff --git a/lib/model/specialtymodel.dart b/lib/model/specialtymodel.dart index 6eb51f0..8034a6f 100644 --- a/lib/model/specialtymodel.dart +++ b/lib/model/specialtymodel.dart @@ -46,13 +46,19 @@ class Specialtyresp { }; } +List specialtyFromJson(String str) => + List.from(json.decode(str).map((x) => Specialty.fromJson(x))); + +String specialtyToJson(List data) => + json.encode(List.from(data.map((x) => x.toJson()))); + class Specialty { - String specialtyCount; - String specialtyName; + String? specialtyCount; + String? specialtyName; Specialty({ - required this.specialtyCount, - required this.specialtyName, + this.specialtyCount, + this.specialtyName, }); factory Specialty.fromJson(Map json) => Specialty( diff --git a/lib/model/topics_cloud_model.dart b/lib/model/topics_cloud_model.dart index 3afbca0..2848079 100644 --- a/lib/model/topics_cloud_model.dart +++ b/lib/model/topics_cloud_model.dart @@ -54,6 +54,13 @@ class Topicsresp { }; } +List topicsCloudDataFromJson(String str) => + List.from( + json.decode(str).map((x) => TopicsCloudData.fromJson(x))); + +String topicsCloudDataToJson(List data) => + json.encode(List.from(data.map((x) => x.toJson()))); + class TopicsCloudData { String? total; String? topic; diff --git a/lib/utils/apicall.dart b/lib/utils/apicall.dart index 96cfdb7..fd0f49f 100644 --- a/lib/utils/apicall.dart +++ b/lib/utils/apicall.dart @@ -5,9 +5,11 @@ import 'package:dio/dio.dart'; import 'package:dio/io.dart'; import 'package:flutter/services.dart'; import 'package:konectar_events/model/affiliationsmodel.dart'; +import 'package:konectar_events/model/events_list_resp_2.dart'; import 'package:konectar_events/model/eventsdetailmodel.dart'; import 'package:konectar_events/model/eventsmodel.dart'; import 'package:konectar_events/model/eventsoverview.dart'; +import 'package:konectar_events/model/eventspeakers.dart'; import 'package:konectar_events/model/keywords_model.dart'; import 'package:konectar_events/model/neweventsmodel.dart'; import 'package:konectar_events/model/scope_model.dart'; @@ -19,6 +21,7 @@ import 'package:konectar_events/utils/constants.dart'; class ApiCall { final dio = Dio(); + //K1 API CALLS Future parseInfo() async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = @@ -42,30 +45,6 @@ class ApiCall { return response.data; } - //https://cardio-staging.konectar.io/notifications/list_all_notifications - Future listnotifications() async { - Dio dio = Dio(); - (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = - (HttpClient client) { - client.badCertificateCallback = - (X509Certificate cert, String host, int port) => true; - return client; - }; - Response response; - response = await dio.post( - 'https://cardio-staging.konectar.io/requested_kols/list_my_pending_approvals/', - options: Options( - followRedirects: false, - validateStatus: (status) { - return status! < 500; - }, - headers: {'Content-type': 'application/json; charset=UTF-8'}), - data: {"rows": "10", "page": "1", "sidx": "name", "sord": "desc"}); - print("response user settings here "); - print(response.data.toString()); - return response.data; - } - Future> getscopes() async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = @@ -122,7 +101,7 @@ class ApiCall { return keywordList; } - Future?> getStagingEvents() async { + Future> getEventsFromK1({String? type}) async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = (HttpClient client) { @@ -134,10 +113,222 @@ class ApiCall { var formData = FormData.fromMap({ "user_email": "vinodh@aissel.com", "project_id": "", - "start": "", + "start": DateTime.now().toString, "end": "", "order_by": "7", - "type": "1" + "type": type ?? "1" + }); + response = await dio.post( + '${EventsConstants.devUrl}${EventsConstants.eventslistapi}', + options: Options(), + queryParameters: { + "user_email": "vinodh@aissel.com", + "project_id": "", + "start": DateTime.now().toString, + "end": "", + "order_by": "7", + "type": type ?? "1" + }, + data: formData); + print("response user eventssssss here!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + Map jsondata = json.decode(response.data); + + EventsData eventresponse = EventsData.fromJson(jsondata); + List? eventdata = eventresponse.events; + return eventdata!; + } + + Future followUnfollowEvent(String flag, String eventid) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = FormData.fromMap( + {"user_email": "vinodh@aissel.com", "eid": eventid, "flag": flag}); + response = await dio.post( + '${EventsConstants.devUrl}${EventsConstants.followUnfollowEvent}', + options: Options(), + queryParameters: { + "user_email": "vinodh@aissel.com", + "eid": eventid, + "flag": flag, + }, + data: formData); + print("response user FOLLOW UNFOLLOW here!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + + return response.data.toString(); + } + + Future attendNotAttendEvent(String flag, String eventid) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = FormData.fromMap( + {"user_email": "vinodh@aissel.com", "eid": eventid, "flag": flag}); + response = await dio.post( + '${EventsConstants.devUrl}${EventsConstants.attendNotAttendEvent}', + options: Options(), + queryParameters: { + "user_email": "vinodh@aissel.com", + "eid": eventid, + "flag": flag, + }, + data: formData); + print("response user FOLLOW UNFOLLOW here!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + + return response.data.toString(); + } + + Future> specialtyOfSpeakers({ + required String eventid, + required String startDate, + required String endDate, + }) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = FormData.fromMap({ + "user_email": "vinodh@aissel.com", + "eventId": eventid, + "sd": "\"$startDate\"", + "ed": "\"$endDate\"", + "type": "\"1\"", + }); + print("FORMDATA:${formData.toString()},$startDate,$endDate"); + response = await dio.post( + '${EventsConstants.devUrl}${EventsConstants.specialtyOfSpeakers}', + options: Options(), + queryParameters: { + "user_email": "vinodh@aissel.com", + "eventId": eventid, + "sd": "\"$startDate\"", + "ed": "\"$endDate\"", + "type": "\"1\"", + }, + data: formData); + print("response SPECIALTY SPEAKERS here!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + // Map jsondata = json.decode(response.data); + + // Specialtyresp resp = Specialtyresp.fromJson(jsondata); + List data = specialtyFromJson(response.data); + return data; + } + + Future> insightsTopicsCloud({ + required String eventid, + required String startDate, + required String endDate, + }) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = FormData.fromMap({ + "user_email": "vinodh@aissel.com", + "eventId": eventid, + "sd": "\"$startDate\"", + "ed": "\"$endDate\"", + "type": "\"1\"", + }); + print("FORMDATA:${formData.toString()},$startDate,$endDate"); + response = await dio.post( + '${EventsConstants.devUrl}${EventsConstants.insightsTopicsCloud}', + options: Options(), + queryParameters: { + "user_email": "vinodh@aissel.com", + "eventId": eventid, + "sd": "\"$startDate\"", + "ed": "\"$endDate\"", + "type": "\"1\"", + }, + data: formData); + print("response SPECIALTY SPEAKERS here!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + // Map jsondata = json.decode(response.data); + + // Specialtyresp resp = Specialtyresp.fromJson(jsondata); + List data = topicsCloudDataFromJson(response.data); + return data; + } + + Future> insightsBarChart({ + required String eventid, + required String startDate, + required String endDate, + }) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = FormData.fromMap({ + "user_email": "vinodh@aissel.com", + "eventId": eventid, + "sd": "\"$startDate\"", + "ed": "\"$endDate\"", + "type": "\"1\"", + }); + print("FORMDATA:${formData.toString()},$startDate,$endDate"); + response = await dio.post( + '${EventsConstants.devUrl}${EventsConstants.insightsBarChart}', + options: Options(), + queryParameters: { + "user_email": "vinodh@aissel.com", + "eventId": eventid, + "sd": "\"$startDate\"", + "ed": "\"$endDate\"", + "type": "\"1\"", + }, + data: formData); + print("response SPECIALTY SPEAKERS here!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + // Map jsondata = json.decode(response.data); + + // Specialtyresp resp = Specialtyresp.fromJson(jsondata); + List data = affiliationsFromJson(response.data); + return data; + } + + Future getEventsOverview( + String eventid, String startDate, String endDate) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = FormData.fromMap({ + "user_email": "vinodh@aissel.com", + "start": startDate, + "end": endDate, + "event_id": eventid, }); response = await dio.post( '${EventsConstants.stagingUrl}${EventsConstants.eventslistapi}', @@ -149,14 +340,16 @@ class ApiCall { print("response user eventssssss here!!!!!!!!!!!!!!!!!!!!! "); print(response.data.toString()); Map jsondata = json.decode(response.data); - EventsDataStaging? eventdata = EventsDataStaging.fromJson(jsondata); - List? eventList = eventdata.events; + EventsDetailsResp? eventdata = EventsDetailsResp.fromJson(jsondata); + OverviewData overviewData = eventdata.data; - return eventList; + return overviewData; } - Future verifyEmail( - String email, String deviceid, String platform) async { + //************ K2 API CALLS *********************************************************************************************************************************** + + Future> getEventsFromK2(int page, String search, + {String? startdate, String? enddate}) async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = (HttpClient client) { @@ -165,27 +358,178 @@ class ApiCall { return client; }; Response response; - var formData = FormData.fromMap({ - "email": email, - }); - response = await dio.post('${EventsConstants.getTokenApi}', - options: Options(), - queryParameters: { - "email": email, - "device_id": deviceid, - "platform": platform, - }, + var formData; + if (startdate != "") { + formData = { + "page": page, + "limit": 20, + "start_date": startdate, + "end_date": enddate, + }; + } else { + formData = { + "page": page, + "limit": 20, + "conditions": [ + {"field": "event_name", "type": "like", "value": search} + ] + }; + } + + response = await dio.post('${EventsConstants.eventslistapifromk2}', + options: Options(headers: { + "Authorization": + "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a", + HttpHeaders.contentTypeHeader: "application/json", + }), + // queryParameters: { + // "page": page, + // "limit": 20, + // // "id": "11c39192480587d2d6213bfef6744571", + // "conditions": jsonEncode([ + // {"field": eventfield, "type": "like", "value": searchkey} + // ]) + // }, data: formData); if (response.statusCode == 200) { - print("response user login!!!!!!!!!!!!!!!!!!!!! "); + print("response EVENTS!!!!!!!!!!!!!!!!!!!! "); print(response.data.toString()); - return response.data; + Map jsondata = response.data; + EventsListRespK2 eventresponse = EventsListRespK2.fromJson(jsondata); + List? eventdata = eventresponse.data; + + return eventdata!; } else { - print("isEmplty"); - return null; + print("isEmpty"); + return []; } } + Future> getMyEventsFromK2(int page, String search, + {String? startdate, String? enddate}) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData; + if (startdate != "") { + formData = { + "page": page, + "limit": 20, + "id": "11c39192480587d2d6213bfef6744571", + "start_date": startdate, + "end_date": enddate, + }; + } else { + formData = { + "page": page, + "limit": 20, + "id": "11c39192480587d2d6213bfef6744571", + "conditions": [ + {"field": "event_name", "type": "like", "value": search} + ] + }; + } + + response = await dio.post('${EventsConstants.eventslistapifromk2}', + options: Options(headers: { + "Authorization": + "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a", + HttpHeaders.contentTypeHeader: "application/json", + }), + // queryParameters: { + // "page": page, + // "limit": 20, + // // "id": "11c39192480587d2d6213bfef6744571", + // "conditions": jsonEncode([ + // {"field": eventfield, "type": "like", "value": searchkey} + // ]) + // }, + data: formData); + + if (response.statusCode == 200) { + print("response MY EVENTS!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + Map jsondata = response.data; + EventsListRespK2 eventresponse = EventsListRespK2.fromJson(jsondata); + List? eventdata = eventresponse.data; + + return eventdata!; + } else { + print("isEmpty"); + return []; + } + } + +//ADD TO FAVS + Future addEventsToFav(String eventid) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + + response = await dio.post( + '${EventsConstants.addToMyEventsApi}', + options: Options(headers: { + "Authorization": + "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a" + }), + queryParameters: { + "event_id": eventid, + "user_id": "11c39192480587d2d6213bfef6744571", + }, + ); + print("response user keywords here########## "); + print(response.data.toString()); + Map jsondata = json.decode(response.toString()); + String message = jsondata["message"]; + print("***$message"); + + return message; + } + +//REMOVE FROM FAVS + + Future removeEventsFromFav(String eventid) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + + response = await dio.post( + '${EventsConstants.removeFromMyEventsApi}', + options: Options(headers: { + "Authorization": + "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a", + }), + queryParameters: { + "event_id": eventid, + "user_id": "11c39192480587d2d6213bfef6744571", + }, + ); + print("response user keywords here########## "); + print(response.data.toString()); + Map jsondata = json.decode(response.toString()); + String message = jsondata["message"]; + print("***$message"); + + return message; + } + + //GET MY EVENTS + Future verifyCode(String email, String code) async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = @@ -238,8 +582,151 @@ class ApiCall { return response.data; } - Future getEventsOverview( - String eventid, String startDate, String endDate) async { + //SEARCH EVENTS API FROM K2 + + Future> getSearchedEventsFromK2( + int page, String eventfield, String searchkey) async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = { + "page": page, + "limit": 20, + "conditions": [ + {"field": eventfield, "type": "like", "value": searchkey} + ] + }; + response = await dio.post('${EventsConstants.eventslistapifromk2}', + options: Options(headers: { + "Authorization": + "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a", + HttpHeaders.contentTypeHeader: "application/json", + }), + // queryParameters: { + // "page": page, + // "limit": 20, + // // "id": "11c39192480587d2d6213bfef6744571", + // "conditions": jsonEncode([ + // {"field": eventfield, "type": "like", "value": searchkey} + // ]) + // }, + data: formData); + if (response.statusCode == 200) { + print("response SEARCH EVENTS!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + Map jsondata = response.data; + EventsListRespK2 eventresponse = EventsListRespK2.fromJson(jsondata); + List? eventdata = eventresponse.data; + + return eventdata!; + } else { + print("isEmpty"); + return []; + } + } + +//SPEAKERS LIST FROM K2 + Future> getSpeakersFromK2( + int page, String eventid, String event_unique_id, + {String? searchkey}) async { + Dio dio = Dio(); + print("see pages^^^^^^^ : $page"); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = { + "page": page, + "limit": 40, + "id": eventid, + "event_id": event_unique_id, + "hcp_full_name": searchkey + // "conditions": [ + // {"field": eventfield, "type": "like", "value": searchkey} + // ] + }; + response = await dio.post('${EventsConstants.speakerslistapifromk2}', + options: Options(headers: { + "Authorization": + "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a", + HttpHeaders.contentTypeHeader: "application/json", + }), + // queryParameters: { + // "page": page, + // "limit": 20, + // // "id": "11c39192480587d2d6213bfef6744571", + // "conditions": jsonEncode([ + // {"field": eventfield, "type": "like", "value": searchkey} + // ]) + // }, + data: formData); + if (response.statusCode == 200) { + print("respons Speakers !!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + Map jsondata = response.data; + SpeakersResponse resp = SpeakersResponse.fromJson(jsondata); + List? data = resp.data; + var respdata = {"count": resp.count, "list": data ?? []}; + + return respdata; + } else { + print("isEmpty"); + return {}; + } + } + + //************ OTHER API CALLS *********************************************************************************************************************************** + + Future dummyapi() async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + response = await dio.get('http://203.129.219.14:3043/weather?city=London', + options: Options()); + print("response PLATFORMATIC here "); + print(response.data.toString()); + return response.data; + } + + //https://cardio-staging.konectar.io/notifications/list_all_notifications + Future listnotifications() async { + Dio dio = Dio(); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + response = await dio.post( + 'https://cardio-staging.konectar.io/requested_kols/list_my_pending_approvals/', + options: Options( + followRedirects: false, + validateStatus: (status) { + return status! < 500; + }, + headers: {'Content-type': 'application/json; charset=UTF-8'}), + data: {"rows": "10", "page": "1", "sidx": "name", "sord": "desc"}); + print("response user settings here "); + print(response.data.toString()); + return response.data; + } + + Future verifyEmail( + String email, String deviceid, String platform) async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = (HttpClient client) { @@ -249,25 +736,24 @@ class ApiCall { }; Response response; var formData = FormData.fromMap({ - "user_email": "vinodh@aissel.com", - "start": startDate, - "end": endDate, - "event_id": eventid, + "email": email, }); - response = await dio.post( - '${EventsConstants.stagingUrl}${EventsConstants.eventslistapi}', + response = await dio.post('${EventsConstants.getTokenApi}', options: Options(), queryParameters: { - "user_email": "vinodh@aissel.com", + "email": email, + "device_id": deviceid, + "platform": platform, }, data: formData); - print("response user eventssssss here!!!!!!!!!!!!!!!!!!!!! "); - print(response.data.toString()); - Map jsondata = json.decode(response.data); - EventsDetailsResp? eventdata = EventsDetailsResp.fromJson(jsondata); - OverviewData overviewData = eventdata.data; - - return overviewData; + if (response.statusCode == 200) { + print("response user login!!!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + return response.data; + } else { + print("isEmplty"); + return null; + } } Future?> getEvents() async { @@ -324,29 +810,6 @@ class ApiCall { return eventsdetailList; } - Future addEventsToFav(String eventid) async { - Dio dio = Dio(); - (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = - (HttpClient client) { - client.badCertificateCallback = - (X509Certificate cert, String host, int port) => true; - return client; - }; - Response response; - - response = await dio.post( - '${EventsConstants.domainUrl}eventsapi.api.addEventsToFav?eventid=$eventid', - options: Options(), - ); - print("response user keywords here########## "); - print(response.data.toString()); - Map jsondata = json.decode(response.toString()); - String message = jsondata["message"]; - print("***$message"); - - return message; - } - Future attendEvents(String eventid) async { Dio dio = Dio(); (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = @@ -619,4 +1082,58 @@ class ApiCall { return data; } + + Future> getSpeakersFromLocal( + int page, String eventid, String event_unique_id, + {String? searchkey}) async { + Dio dio = Dio(); + print("see pages^^^^^^^ : $page"); + (dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate = + (HttpClient client) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return client; + }; + Response response; + var formData = { + "page": page, + "limit": 40, + "id": eventid, + "event_id": event_unique_id, + "hcp_full_name": searchkey + // "conditions": [ + // {"field": eventfield, "type": "like", "value": searchkey} + // ] + }; + response = await dio.post( + '${EventsConstants.speakerslistapifromLocal}', + // options: Options(headers: { + // "Authorization": + // "Bearer 242|f4s7EfBjD01z1tuGeJfgKm7v2WzZk22uDOehqFyla72c481a", + // HttpHeaders.contentTypeHeader: "application/json", + // }), + // queryParameters: { + // "page": page, + // "limit": 20, + // // "id": "11c39192480587d2d6213bfef6744571", + // "conditions": jsonEncode([ + // {"field": eventfield, "type": "like", "value": searchkey} + // ]) + // }, + // data: formData + ); + if (response.statusCode == 200) { + print("respons Speakers !!!!!!!!!!!!!!!!!!!! "); + print(response.data.toString()); + Map jsondata = response.data; + SpeakersResponse1 resp = SpeakersResponse1.fromJson(jsondata); + List? data = resp.data!.data; + var respdata = {"count": 92, "list": data ?? []}; + + return respdata; + } else { + print("isEmpty"); + return {}; + } + } } diff --git a/lib/utils/constants.dart b/lib/utils/constants.dart index 418d016..a1dd382 100644 --- a/lib/utils/constants.dart +++ b/lib/utils/constants.dart @@ -14,14 +14,38 @@ class EventsConstants { static const Color btnBlueColor = Color.fromARGB(255, 0, 102, 204); // static const String domainUrl = "http://192.0.0.2:8007/api/method/"; static const String domainUrl = "http://192.168.2.109:8007/api/method/"; + //192.0.0.2:8007 - iphone // 192.168.2.109:8007 - office static const String stagingUrl = "https://cardio-staging.konectar.io/reports/"; + static const String devUrl = "http://192.168.2.130/konectar-sandbox/reports/"; static const String eventslistapi = "load_future_events"; + static const String followUnfollowEvent = "save_user_interested_event/"; + static const String attendNotAttendEvent = "save_user_attending_event/"; + static const String specialtyOfSpeakers = "get_top_specialities_donut_chart"; + static const String insightsTopicsCloud = "get_topic_clouds_chart/"; + static const String insightsBarChart = "get_top_affiliation_bar_chart/"; static const String speakerslistapi = "view_micro_event_data"; static const String eventdetailsapi = "view_micro_event"; + static const String eventslistapifromk2 = + "http://192.168.2.130:8888/api/kolevents/v1/en/fetch"; + + static const String speakerslistapifromk2 = + "http://192.168.2.130:8888/api/kolevents/v1/en/event_speakers"; + static const String speakerslistapifromLocal = + "http://events.localhost:8007/api/method/speakerslist"; + static const String addToMyEventsApi = + "http://192.168.2.130:8888/api/kolevents/v1/en/add_to_my_event"; + + static const String removeFromMyEventsApi = + "http://192.168.2.130:8888/api/kolevents/v1/en/delete_my_event"; + + static const String fetchMyEventsApi = + "http://192.168.2.130:8888/api/kolevents/v1/en/list_my_events"; + static const String unfollowMyEventsApi = + "http://192.168.2.130:8888/api/kolevents/v1/en/delete_my_event"; static const String getTokenApi = "http://192.168.2.155:8002/api/auth/mobile/get_token"; static const String validateTokenApi = diff --git a/lib/utils/dateformater.dart b/lib/utils/dateformater.dart index 5552860..8b2251d 100644 --- a/lib/utils/dateformater.dart +++ b/lib/utils/dateformater.dart @@ -3,13 +3,29 @@ import 'package:intl/intl.dart'; class CustomDateFormatter { DateTime convertStringToDate(String datestring) { print("Date string : $datestring"); - List datearray = datestring.split('/'); + String char = "/"; + if (datestring.contains("-")) { + char = "-"; + } + List datearray = datestring.split(char); DateTime outputDate = DateTime(int.parse(datearray[2]), int.parse(datearray[0]), int.parse(datearray[1])); print("Output date : $outputDate"); return outputDate; } + String convertDateTimeToDate(String datestring) { + print("Date string : $datestring"); + List datearray1 = datestring.split(' '); + print("Date string22 : $datearray1[0]"); + List datearray = datearray1[0].split('-'); + DateTime outputDate = DateTime(int.parse(datearray[0]), + int.parse(datearray[1]), int.parse(datearray[2])); + final DateFormat formatter = DateFormat('dd-MM-yyyy'); + print("Output date : $outputDate"); + return formatter.format(outputDate); + } + String formatDate() { final DateFormat formatter = DateFormat('yyyy-MM-dd hh:mm'); final String formatted = formatter.format(DateTime.now()); diff --git a/lib/view/eventslist.dart b/lib/view/eventslist.dart index 532996b..0dbc047 100644 --- a/lib/view/eventslist.dart +++ b/lib/view/eventslist.dart @@ -2,22 +2,19 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:flutter/widgets.dart'; -import 'package:intl/intl.dart'; +import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; import 'package:konectar_events/model/eventsdetailmodel.dart'; -import 'package:konectar_events/model/eventsmodel.dart'; +import 'package:konectar_events/model/eventspeakers.dart'; import 'package:konectar_events/model/neweventsmodel.dart'; import 'package:konectar_events/utils/constants.dart'; import 'package:konectar_events/utils/dateformater.dart'; import 'package:konectar_events/utils/util.dart'; -import 'package:konectar_events/view/hcplist.dart'; import 'package:konectar_events/view/home.dart'; import 'package:konectar_events/view/insights.dart'; +import 'package:konectar_events/view/login_components/intropaging.dart'; import 'package:konectar_events/view/profileview.dart'; import 'package:konectar_events/view/socialmedia.dart'; import 'package:konectar_events/viewmodel/eventsprovider.dart'; -import 'package:konectar_events/viewmodel/hcpprofprovider.dart'; -import 'package:konectar_events/widgets/customappbar.dart'; -import 'package:konectar_events/widgets/gridview.dart'; import 'package:konectar_events/widgets/snackbar.dart'; import 'package:provider/provider.dart'; import 'package:url_launcher/url_launcher.dart'; @@ -39,7 +36,10 @@ class _EventsListingScreenState extends State bool isExtended = false; bool isExtendedInterested = false; final ScrollController _scrollController = ScrollController(); - + final PagingController pagingController = + PagingController(firstPageKey: 1); + static const _pageSize = 20; + String searchSpeaker = ""; @override void initState() { super.initState(); @@ -47,6 +47,45 @@ class _EventsListingScreenState extends State WidgetsBinding.instance.addPostFrameCallback((timeStamp) { init(); }); + pagingController.addPageRequestListener((pageKey) { + _fetchPage(pageKey); + }); + } + + Future _fetchPage(int pageKey) async { + //await initConnectivity(); + // if (connectionStatus.toString().contains("ConnectivityResult.none")) { + // try { + // final newItems = + // await Provider.of(context, listen: false) + // .getOfflineMyEvents(); + // final isLastPage = newItems.length < _pageSize; + // if (isLastPage) { + // _pagingController.appendLastPage(newItems); + // } else { + // final nextPageKey = pageKey + newItems.length; + // _pagingController.appendPage(newItems, nextPageKey); + // } + // } catch (error) { + // _pagingController.error = error; + // } + // } else { + try { + final newItems = await Provider.of(context, listen: false) + .getSpeakersDetails(pageKey, widget.event.eventId!, + widget.event.eventUniqueId!, searchSpeaker); + final isLastPage = newItems.isEmpty; + if (isLastPage) { + pagingController.appendLastPage(newItems); + } else { + final nextPageKey = pageKey + 1; + + pagingController.appendPage(newItems, nextPageKey); + } + } catch (error) { + pagingController.error = error; + } + // } } init() async { @@ -54,15 +93,22 @@ class _EventsListingScreenState extends State CustomDateFormatter().convertStringToDate(widget.event.start!)); String end = CustomDateFormatter().formatYearDate( CustomDateFormatter().convertStringToDate(widget.event.end!)); + // await Provider.of(context, listen: false) + // .getSessionCount(widget.event.eventId!, widget.event.eventUniqueId!); + final provider = Provider.of(context, listen: false); + + // pagingController.addPageRequestListener((pageKey) { + // _fetchPage(pageKey); + // }); + // await Provider.of(context, listen: false) + // .getEventsDetails(widget.event.eventId!); + // await Provider.of(context, listen: false).getSessionCount(); await Provider.of(context, listen: false) - .getEventsDetails(widget.event.eventId!); - await Provider.of(context, listen: false).getSessionCount(); + .getTopicsCloud(widget.event); await Provider.of(context, listen: false) - .getTopicsCloud(widget.event.eventId!); + .getSpecialtyData(widget.event); await Provider.of(context, listen: false) - .getSpecialtyData(widget.event.eventId!); - await Provider.of(context, listen: false) - .getAffiliations(widget.event.eventId!); + .getAffiliations(widget.event); // await Provider.of(context, listen: false) // .getOverviewData(widget.event.eventId!, start, end); setState(() {}); @@ -71,6 +117,7 @@ class _EventsListingScreenState extends State @override void dispose() { _tabController.dispose(); + pagingController.dispose(); super.dispose(); } @@ -78,7 +125,7 @@ class _EventsListingScreenState extends State return Consumer( builder: (BuildContext context, provider, Widget? child) { return DefaultTabController( - length: 4, + length: 3, //child: SafeArea( // appBar: CustomAppBar(title: "", backgroundcolor: Constants.bgcolor), //body: @@ -214,7 +261,18 @@ class _EventsListingScreenState extends State ), ), ), - // const Spacer(), + const Spacer(), + IconButton( + icon: Icon( + provider.ifOfflineExists(widget.event.eventId!) + ? Icons.bookmark + : Icons.bookmark_add_outlined, + color: Colors.white, + size: isTablet ? 14 : 18), + onPressed: () async { + setState(() {}); + }, + ) // widget.event.isfav // ? RichText( // text: TextSpan( @@ -271,6 +329,17 @@ class _EventsListingScreenState extends State tooltip: 'Actions', // heroTag: "floatbtn232342", onPressed: () { + if (provider.offlineEvents.isNotEmpty) { + provider.offlineEvents.forEach( + (element) { + if (element.eventId == widget.event.eventId) { + provider.offlineExists = true; + } else { + provider.offlineExists = false; + } + }, + ); + } showModalBottomSheet( context: context, builder: (BuildContext context) { @@ -292,6 +361,25 @@ class _EventsListingScreenState extends State // 'Actions', // style: TextStyle(fontSize: 18), // )), + // ),IntroductionAnimationScreen + // InkWell( + // onTap: () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (BuildContext context) => + // IntroductionAnimationScreen(), + // ), + // ); + // // Navigator.pop(context); + // }, + // child: ListTile( + // title: Text("GOTO"), + // leading: Icon( + // Icons.calendar_month, + // color: Colors.green, + // ), + // ), // ), InkWell( onTap: () { @@ -309,11 +397,30 @@ class _EventsListingScreenState extends State ), ), InkWell( - onTap: () { + onTap: () async { + if (provider.offlineEvents.isEmpty) { + await provider.saveEventsData(widget.event); + SnackBarWidget.displaySnackBar( + "Event Saved Offline", context); + } else { + if (!provider.offlineExists) { + await provider.saveEventsData(widget.event); + SnackBarWidget.displaySnackBar( + "Event Saved Offline", context); + } else { + await provider.delateOfflineEvent(widget.event); + provider.offlineExists = false; + SnackBarWidget.displaySnackBar( + "Removed from Offline", context); + } + } + Navigator.pop(context); }, child: ListTile( - title: Text("Download Pdf"), + title: Text(provider.offlineExists + ? "Remove the event from offline" + : "Save the event offline"), leading: Icon( Icons.download, color: Colors.blue, @@ -322,8 +429,8 @@ class _EventsListingScreenState extends State ), InkWell( onTap: () { - if (widget.event.isAttending) { - widget.event.isAttending = false; + if (widget.event.eventUserAttendee!) { + widget.event.eventUserAttendee = false; // if (event.isAttending) { // SnackBarWidget.displaySnackBar( @@ -428,10 +535,7 @@ class _EventsListingScreenState extends State ProfileInfoItem( "Session(s)", provider.eventSessionCount), ProfileInfoItem( - "Speakers(s)", - // int.parse( - // provider.overviewData!.attendeeCount - 0), + "Speaker(s)", provider.speakercount), //ProfileInfoItem("Note(s)", 1), ], widget.event, provider), SizedBox( @@ -465,14 +569,14 @@ class _EventsListingScreenState extends State //controller: _tabController, children: [ expandableDetails(), - speakersList(provider), + speakersList(context, provider), EventsInsights( eventid: widget.event.eventId!, kFlutterHashtags: provider.kFlutterHashtags, specialtyList: provider.specialtyList, affiliations: provider.affiliations, ), - SocialMedia(), + //SocialMedia(), ], ), ), @@ -861,7 +965,8 @@ class _EventsListingScreenState extends State ), InkWell( onTap: () async { - await _launchUrl(provider.eventdetailList[0].url1!); + print("URL:${event.url1!}"); + await _launchUrl(event.url1!); }, child: RichText( text: TextSpan( @@ -967,7 +1072,7 @@ class _EventsListingScreenState extends State } Widget favbtn(EventsList event, EventsProvider provider) { - return event.isfav + return event.eventUserInterest! ? SizedBox( height: 40, child: TextButton( @@ -977,18 +1082,19 @@ class _EventsListingScreenState extends State onPressed: () async { // String msg = await provider // .addEventsToFavs(event.eventId!); - setState(() { - event.isfav = !event.isfav; - if (event.isfav) { - provider.favsEventsData(event); - SnackBarWidget.displaySnackBar( - "You are following the event!", context); - } else { - provider.delateEventsData(event); - SnackBarWidget.displaySnackBar("Not Following", context); - } - }); + event.eventUserInterest = !event.eventUserInterest!; + + if (event.eventUserInterest!) { + await provider.addEventsToFavs(event.eventId!); + SnackBarWidget.displaySnackBar( + "You are following the event!", context); + } else { + // provider.delateOfflineEvent(event); + await provider.removeEventsToFavs(event.eventId!); + SnackBarWidget.displaySnackBar("Not Following", context); + } + setState(() {}); }, child: AnimatedSwitcher( duration: Duration(seconds: 1), @@ -1025,18 +1131,19 @@ class _EventsListingScreenState extends State // String msg = await provider // .addEventsToFavs(event.eventId!); - setState(() { - event.isfav = !event.isfav; + event.eventUserInterest = !event.eventUserInterest!; - if (event.isfav) { - provider.favsEventsData(event); - SnackBarWidget.displaySnackBar( - "You are following the event!", context); - } else { - provider.delateEventsData(event); - SnackBarWidget.displaySnackBar("Not Following", context); - } - }); + if (event.eventUserInterest!) { + await provider.addEventsToFavs(event.eventId!); + SnackBarWidget.displaySnackBar( + "You are following the event!", context); + } else { + // provider.delateOfflineEvent(event); + await provider.removeEventsToFavs(event.eventId!); + SnackBarWidget.displaySnackBar("Not Following", context); + } + + setState(() {}); }, label: AnimatedSwitcher( duration: Duration(seconds: 1), @@ -1058,14 +1165,16 @@ class _EventsListingScreenState extends State // ), Icon( Icons.favorite, - color: event.isfav ? Colors.red : Colors.grey, + color: event.eventUserInterest! + ? Colors.white + : Colors.grey, size: 14, ), const SizedBox( width: 10, ), Text( - event.isfav ? "Following" : "Follow", + event.eventUserInterest! ? "Following" : "Follow", style: TextStyle(color: Colors.black), ) ], @@ -1074,7 +1183,7 @@ class _EventsListingScreenState extends State } Widget attendingbtn(EventsList event, EventsProvider provider) { - return event.isAttending + return event.eventUserAttendee! ? SizedBox( height: 40, child: TextButton( @@ -1082,22 +1191,18 @@ class _EventsListingScreenState extends State // : Colors.transparent, onPressed: () async { - if (!event.isfav) { - event.isfav = !event.isfav; - // String msg1 = await provider - // .addEventsToFavs(event.eventId!); - } - + event.eventUserAttendee = !event.eventUserAttendee!; // String msg = await provider // .markAttending(event.eventId!); + if (event.eventUserAttendee!) { + await provider.attendNotAttendEvent(event.eventId!, "1"); + SnackBarWidget.displaySnackBar("Attending", context); + } else { + await provider.attendNotAttendEvent(event.eventId!, "0"); + SnackBarWidget.displaySnackBar("Not Attending", context); + } setState(() { - event.isAttending = !event.isAttending; - - if (event.isAttending) { - SnackBarWidget.displaySnackBar("Attending", context); - } else { - SnackBarWidget.displaySnackBar("Not Attending", context); - } + // }); }, child: AnimatedSwitcher( @@ -1131,23 +1236,26 @@ class _EventsListingScreenState extends State elevation: 1, backgroundColor: EventsConstants.bgcolor, onPressed: () async { - if (!event.isfav) { - event.isfav = !event.isfav; + if (!event.eventUserInterest!) { + await provider.addEventsToFavs(event.eventId!); + event.eventUserInterest = !event.eventUserInterest!; // String msg1 = await provider // .addEventsToFavs(event.eventId!); } // String msg = await provider // .markAttending(event.eventId!); - setState(() { - event.isAttending = !event.isAttending; - - if (event.isAttending) { - SnackBarWidget.displaySnackBar("Attending", context); - } else { - SnackBarWidget.displaySnackBar("Not Attending", context); - } - }); + event.eventUserAttendee = !event.eventUserAttendee!; + // String msg = await provider + // .markAttending(event.eventId!); + if (event.eventUserAttendee!) { + await provider.attendNotAttendEvent(event.eventId!, "1"); + SnackBarWidget.displaySnackBar("Attending", context); + } else { + await provider.attendNotAttendEvent(event.eventId!, "0"); + SnackBarWidget.displaySnackBar("Not Attending", context); + } + setState(() {}); }, //heroTag: "attending545", label: AnimatedSwitcher( @@ -1162,7 +1270,7 @@ class _EventsListingScreenState extends State axis: Axis.horizontal, ), ), - child: event.isAttending + child: event.eventUserAttendee! ? Row( children: [ Padding( @@ -1228,12 +1336,12 @@ class _EventsListingScreenState extends State SizedBox( height: 3, ), - listViewTopicCard( - "Speakers with most sessions", widget.event.topSpeakers!, true), + listViewTopicCard("Speakers with most sessions", + widget.event.topSpeakers ?? "", true), SizedBox( height: 3, ), - listViewTopicCard("Sponsors", widget.event.sponsors!, true) + listViewTopicCard("Sponsors", widget.event.sponsors ?? "", true) ]), ), ); @@ -1314,8 +1422,14 @@ class _EventsListingScreenState extends State ); } - Widget speakersList(EventsProvider provider) { + void _updateSearchTerm(String searchTerm) { + setState(() => searchSpeaker = searchTerm); + pagingController.refresh(); + } + + Widget speakersList(BuildContext context, EventsProvider provider) { var searchtextEditingController; + // pagingController.refresh(); return Container( width: double.maxFinite, padding: EdgeInsets.only(left: 8), @@ -1332,15 +1446,15 @@ class _EventsListingScreenState extends State // decoration: BoxDecoration( // // color: Colors.white, // borderRadius: BorderRadius.circular(5.0)), + child: TextField( controller: searchtextEditingController, onChanged: (String txt) async { - if (txt.length >= 2) { - provider.OnSearchSpeakers(txt); + if (txt.length >= 1) { + _updateSearchTerm(txt); } - if (txt.length < 2) { - await provider - .onSearchSpeakersReset(widget.event.eventId!); + if (txt.length == 0) { + _updateSearchTerm(""); } }, decoration: InputDecoration( @@ -1374,155 +1488,166 @@ class _EventsListingScreenState extends State ), ), Expanded( - child: ListView.separated( - padding: const EdgeInsets.all(8), - itemCount: provider.isSearchSpeakers - ? provider.srcheventdetailList.length - : provider.eventdetailList.length, - itemBuilder: (BuildContext context, int index) { - Eventsdetail detail = provider.isSearchSpeakers - ? provider.srcheventdetailList[index] - : provider.eventdetailList[index]; - return GestureDetector( - onTap: () { - Navigator.of(context).push( - MaterialPageRoute( - builder: (context) => HCPProfileScreen( - eventsdetail: detail, - eventid: widget.event.eventId!, - title: widget.event.name1!, + child: PagedListView.separated( + pagingController: pagingController, + builderDelegate: PagedChildBuilderDelegate( + //padding: const EdgeInsets.all(8), + // itemCount: provider.isSearchSpeakers + // ? provider.srcheventdetailList.length + // : provider.eventdetailList.length, + itemBuilder: (BuildContext context, detail, int index) { + // Eventsdetail detail = provider.isSearchSpeakers + // ? provider.srcheventdetailList[index] + // : provider.eventdetailList[index]; + + return GestureDetector( + onTap: () { + Navigator.of(context).push( + MaterialPageRoute( + builder: (context) => HCPProfileScreen( + eventsdetail: detail, + eventid: widget.event.eventId!, + title: widget.event.name1!, + ), ), - ), - ); - }, - child: Container( - // height: double.infinity, - child: Column( - children: [ - Row( - children: [ - Center( - child: CircleAvatar( - radius: 24, - backgroundColor: Colors.grey, - // child: Icon( - // Icons.person, - // size: 18, - // color: Colors.white, - // ), - child: Text( - detail.kolFullName![0], - style: TextStyle( - fontWeight: FontWeight.bold, - color: Colors.white), + ); + }, + child: Container( + // height: double.infinity, + child: Column( + children: [ + Row( + children: [ + Center( + child: CircleAvatar( + radius: 24, + backgroundColor: Colors.grey, + // child: Icon( + // Icons.person, + // size: 18, + // color: Colors.white, + // ), + child: Text( + detail.hcpFullName![0], + style: TextStyle( + fontWeight: FontWeight.bold, + color: Colors.white), + ), ), ), - ), - // Container( - // width: 45, - // height: 45, - // decoration: const BoxDecoration( - // color: Colors.black, - // shape: BoxShape.circle, - // image: DecorationImage( - // fit: BoxFit.cover, - // image: NetworkImage( - // 'https://cardio-staging.konectar.io/images/kol_images/resized/1093755944.jpeg')), - // // 'https://images.unsplash.com/photo-1438761681033-6461ffad8d80?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1470&q=80')), - // ), - // ), - SizedBox( - width: 20, - ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - detail.kolFullName!, - style: TextStyle( - fontWeight: FontWeight.bold, - fontSize: 14, - ), - maxLines: 2, - softWrap: true, - overflow: TextOverflow.ellipsis, - ), - SizedBox( - width: isTablet - ? MediaQuery.of(context).size.width * 0.25 - : MediaQuery.of(context).size.width * 0.5, - child: Text( - detail.eventTopics ?? - 'Programmed Cell Death 1 Receptor | Human Epidermal Growth Factor Receptor 2 +6more', - maxLines: 3, - style: TextStyle( - // decoration: TextDecoration.underline, - // decorationColor: Colors.blue, + // Container( + // width: 45, + // height: 45, + // decoration: const BoxDecoration( + // color: Colors.black, + // shape: BoxShape.circle, + // image: DecorationImage( + // fit: BoxFit.cover, + // image: NetworkImage( + // 'https://cardio-staging.konectar.io/images/kol_images/resized/1093755944.jpeg')), + // // 'https://images.unsplash.com/photo-1438761681033-6461ffad8d80?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1470&q=80')), + // ), + // ), + SizedBox( + width: 20, + ), + Padding( + padding: const EdgeInsets.all(8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "$index : ${detail.hcpFullName!}", + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 14, + ), + maxLines: 2, + softWrap: true, + overflow: TextOverflow.ellipsis, + ), + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width * + 0.25 + : MediaQuery.of(context).size.width * + 0.5, + child: Text( + detail.topics!.join(" | "), + maxLines: 3, + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, - color: Colors.black, + color: Colors.black, - //fontStyle: FontStyle.italic, - fontSize: 14), - ), + //fontStyle: FontStyle.italic, + fontSize: 14), + ), + ), + ], ), - ], - ), - // const Spacer(), - // SizedBox( - // height: 30, - // child: OutlinedButton( - // onPressed: () {}, - // child: Icon( - // Icons.add, - // size: 24, - // color: Colors.white, - // ), - // style: OutlinedButton.styleFrom( - // shape: CircleBorder(), - // backgroundColor: Constants.bgcolor, - // ), - // ), - // ), - ], - ), - // SEE ALL BUTTON CODE.. - // index == provider.eventdetailList.length - 1 - // ? Padding( - // padding: const EdgeInsets.all(8.0), - // child: Container( - // height: 30, - // child: OutlinedButton( - // onPressed: () { - // setState(() { - // itemcount = 15; - // }); - // // Navigator.of(context).push( - // // MaterialPageRoute( - // // builder: (context) => HcpListScreen(), - // // ), - // // ); - // }, - // child: Text( - // 'See All', - // style: TextStyle( - // // fontFamily: "SourceSerif", - // fontSize: 14, - // color: Colors.black, - // fontWeight: FontWeight.normal), - // ), - // style: OutlinedButton.styleFrom( - // shape: StadiumBorder(), - // ), - // ), - // ), - // ) - // : SizedBox.shrink() - ], - )), - ); - }, + ), + // const Spacer(), + // SizedBox( + // height: 30, + // child: OutlinedButton( + // onPressed: () {}, + // child: Icon( + // Icons.add, + // size: 24, + // color: Colors.white, + // ), + // style: OutlinedButton.styleFrom( + // shape: CircleBorder(), + // backgroundColor: Constants.bgcolor, + // ), + // ), + // ), + ], + ), + // SEE ALL BUTTON CODE.. + // index == provider.eventdetailList.length - 1 + // ? Padding( + // padding: const EdgeInsets.all(8.0), + // child: Container( + // height: 30, + // child: OutlinedButton( + // onPressed: () { + // setState(() { + // itemcount = 15; + // }); + // // Navigator.of(context).push( + // // MaterialPageRoute( + // // builder: (context) => HcpListScreen(), + // // ), + // // ); + // }, + // child: Text( + // 'See All', + // style: TextStyle( + // // fontFamily: "SourceSerif", + // fontSize: 14, + // color: Colors.black, + // fontWeight: FontWeight.normal), + // ), + // style: OutlinedButton.styleFrom( + // shape: StadiumBorder(), + // ), + // ), + // ), + // ) + // : SizedBox.shrink() + ], + )), + ); + }, + ), separatorBuilder: (BuildContext context, int index) { - return Divider(); + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 14.0), + child: Divider(), + ); }, ), ), @@ -1562,7 +1687,7 @@ class _EventsListingScreenState extends State Padding( padding: const EdgeInsets.all(8.0), child: Text( - item.value.toString(), + item.value.toString() == 0 ? "..." : item.value.toString(), style: const TextStyle( fontWeight: FontWeight.bold, fontSize: 14, @@ -1642,7 +1767,7 @@ const _tabs = [ Tab(text: "Details"), Tab(text: "Speakers"), Tab(text: "Insights"), - Tab(text: "Social Media"), + //Tab(text: "Social Media"), ]; class _SliverAppBarDelegate extends SliverPersistentHeaderDelegate { @@ -1666,3 +1791,27 @@ class _SliverAppBarDelegate extends SliverPersistentHeaderDelegate { return true; } } + +class ContestTabHeader extends SliverPersistentHeaderDelegate { + ContestTabHeader( + this.searchUI, + ); + final TabBar searchUI; + + @override + Widget build( + BuildContext context, double shrinkOffset, bool overlapsContent) { + return Container(color: Colors.white, child: searchUI); + } + + @override + double get maxExtent => 52.0; + + @override + double get minExtent => 52.0; + + @override + bool shouldRebuild(SliverPersistentHeaderDelegate oldDelegate) { + return true; + } +} diff --git a/lib/view/eventslistoffline.dart b/lib/view/eventslistoffline.dart new file mode 100644 index 0000000..1dc486b --- /dev/null +++ b/lib/view/eventslistoffline.dart @@ -0,0 +1,1664 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/rendering.dart'; +import 'package:flutter/widgets.dart'; +import 'package:konectar_events/model/eventsdetailmodel.dart'; +import 'package:konectar_events/model/eventsmodel.dart'; +import 'package:konectar_events/model/neweventsmodel.dart'; + +import 'package:konectar_events/utils/constants.dart'; +import 'package:konectar_events/utils/dateformater.dart'; +import 'package:konectar_events/utils/util.dart'; +import 'package:konectar_events/view/hcplist.dart'; +import 'package:konectar_events/view/home.dart'; +import 'package:konectar_events/view/insights.dart'; +import 'package:konectar_events/view/profileview.dart'; +import 'package:konectar_events/view/socialmedia.dart'; +import 'package:konectar_events/viewmodel/eventsprovider.dart'; +import 'package:konectar_events/viewmodel/hcpprofprovider.dart'; +import 'package:konectar_events/viewmodel/offlineeventsprovider.dart'; +import 'package:konectar_events/widgets/customappbar.dart'; +import 'package:konectar_events/widgets/gridview.dart'; +import 'package:konectar_events/widgets/snackbar.dart'; +import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; +import 'package:add_2_calendar/add_2_calendar.dart'; + +class EventsListingOfflineScreen extends StatefulWidget { + EventsList event; + EventsListingOfflineScreen({super.key, required this.event}); + + @override + State createState() => + _EventsListingOfflineScreenState(); +} + +class _EventsListingOfflineScreenState extends State + with TickerProviderStateMixin { + late final TabController _tabController; + int itemcount = 3; + bool isExtended = false; + bool isExtendedInterested = false; + final ScrollController _scrollController = ScrollController(); + + @override + void initState() { + super.initState(); + _tabController = TabController(length: 2, vsync: this); + WidgetsBinding.instance.addPostFrameCallback((timeStamp) { + init(); + }); + } + + init() async { + await Provider.of(context, listen: false) + .getEventsDetails(widget.event.eventId!); + await Provider.of(context, listen: false) + .getSessionCount(); + await Provider.of(context, listen: false) + .getTopicsCloud(widget.event.eventId!); + setState(() {}); + } + + @override + void dispose() { + _tabController.dispose(); + super.dispose(); + } + + Widget build(BuildContext context) { + return Consumer( + builder: (BuildContext context, provider, Widget? child) { + return DefaultTabController( + length: 4, + //child: SafeArea( + // appBar: CustomAppBar(title: "", backgroundcolor: EventsConstants.bgcolor), + //body: + // NestedScrollView( + // headerSliverBuilder: + // (BuildContext context, bool innerBoxIsScrolled) { + // return [ + // SliverAppBar.medium( + // expandedHeight: MediaQuery.of(context).size.height / 3, + // //expandedHeight: double.minPositive, + + // automaticallyImplyLeading: false, + // floating: false, + // pinned: true, + // stretch: false, + // backgroundColor: EventsConstants.bgcolor, + // flexibleSpace: FlexibleSpaceBar( + // centerTitle: false, + // expandedTitleScale: 2.4, + // collapseMode: CollapseMode.parallax, + // title: const Text("", + // style: TextStyle( + // color: Colors.white, + // fontSize: 2.0, + // )), + // background: buildCardView(context, widget.event, provider) + + // // Image.network( + // // "https://images.pexels.com/photos/417173/pexels-photo-417173.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260", + // // fit: BoxFit.cover, + // // ) + // ), + // ), + // SliverPersistentHeader( + // floating: true, + // delegate: _SliverAppBarDelegate( + // const TabBar( + // indicatorSize: TabBarIndicatorSize.label, + // labelColor: Colors.black, + // unselectedLabelColor: Colors.grey, + // tabs: _tabs, + // ), + // ), + // pinned: true, + // ), + // ]; + // }, + // body: TabBarView( + // //controller: _tabController, + // children: [ + // expandableDetails(), + // speakersList(provider), + // ], + // ), + // ), + child: headerview(context, provider), + // ), + ); + }); + } + + Event buildEvent({Recurrence? recurrence}) { + return Event( + title: widget.event.name1!, + description: widget.event.name1!, + location: widget.event.region, + startDate: CustomDateFormatter().convertStringToDate(widget.event.start!), + endDate: CustomDateFormatter().convertStringToDate(widget.event.end!), + allDay: false, + iosParams: IOSParams( + reminder: Duration(minutes: 40), + url: widget.event.url1, + ), + androidParams: const AndroidParams( + emailInvites: ["test@aissel.com"], + ), + recurrence: recurrence, + ); + } + + Widget headerview(BuildContext context, EventsOfflineProvider provider) { + //return SafeArea( + return Container( + child: Scaffold( + backgroundColor: EventsConstants.bgcolor, + appBar: AppBar( + // title: Text(""), + automaticallyImplyLeading: false, + backgroundColor: EventsConstants.blueColor, + centerTitle: false, + flexibleSpace: Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.start, + children: [ + IconButton( + iconSize: 18, + icon: Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.white, + ), + onPressed: () { + Navigator.pop(context); + }, + ), + Container( + margin: EdgeInsets.all(5.0), + padding: EdgeInsets.all(3.0), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.all( + Radius.circular(4), + )), + child: Text( + (CustomDateFormatter().convertStringToDate(widget.event.end!)) + .isBefore(DateTime.now()) + ? "Event ended" + : ((CustomDateFormatter() + .convertStringToDate(widget.event.start!)) + .isBefore(DateTime.now()) && + (CustomDateFormatter() + .convertStringToDate(widget.event.end!)) + .isAfter(DateTime.now())) + ? "Ongoing" + : "Starting soon", + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, + color: EventsConstants.blueColor, + + //fontWeight: FontWeight.bold, + fontSize: isTablet ? 22 : 14, + ), + ), + ), + // const Spacer(), + // widget.event.isfav + // ? RichText( + // text: TextSpan( + // children: [ + // WidgetSpan( + // child: Icon(Icons.check, + // color: Colors.grey[600], + // size: isTablet ? 14 : 12), + // ), + // TextSpan( + // text: ' following', + // style: TextStyle( + // color: Colors.grey[600], + // fontSize: isTablet ? 14 : 12), + // ), + // ], + // ), + // ) + // : Center( + // child: RichText( + // text: TextSpan( + // children: [ + // TextSpan( + // text: 'follow ', + // style: TextStyle( + // color: Colors.grey[600], + // fontSize: isTablet ? 14 : 12), + // ), + // ], + // ), + // ), + // ), + // Expanded( + // child: Text( + // widget.event.name1 ?? "", + // maxLines: 3, + // style: TextStyle( + // // decoration: TextDecoration.underline, + // // decorationColor: Colors.blue, + // color: Colors.white, + + // //fontWeight: FontWeight.bold, + // fontSize: isTablet ? 22 : 16, + // ), + // ), + // ), + ], + ), + ), + floatingActionButtonLocation: FloatingActionButtonLocation.miniEndFloat, + floatingActionButton: FloatingActionButton( + // backgroundColor: const Color.fromARGB(255, 222, 237, 247), + backgroundColor: EventsConstants.blueColor, + tooltip: 'Actions', + // heroTag: "floatbtn232342", + onPressed: () { + showModalBottomSheet( + context: context, + builder: (BuildContext context) { + return Container( + color: EventsConstants.bgcolor, + width: MediaQuery.of(context).size.width, + height: 240, + child: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + mainAxisSize: MainAxisSize.max, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Padding( + // padding: const EdgeInsets.all(8.0), + // child: Align( + // alignment: Alignment.topLeft, + // child: const Text( + // 'Actions', + // style: TextStyle(fontSize: 18), + // )), + // ), + InkWell( + onTap: () { + Add2Calendar.addEvent2Cal( + buildEvent(), + ); + Navigator.pop(context); + }, + child: ListTile( + title: Text("Add to my calendar"), + leading: Icon( + Icons.calendar_month, + color: Colors.green, + ), + ), + ), + InkWell( + onTap: () { + SnackBarWidget.displaySnackBar( + "Event saved offline", context); + Navigator.pop(context); + }, + child: ListTile( + title: Text("Save this event offline"), + leading: Icon( + Icons.download, + color: Colors.blue, + ), + ), + ), + InkWell( + onTap: () { + if (widget.event.isAttending) { + widget.event.isAttending = false; + + // if (event.isAttending) { + // SnackBarWidget.displaySnackBar( + // "Attending", context); + // } else { + SnackBarWidget.displaySnackBar( + "Marked as not attending", context); + // } + setState(() {}); + Navigator.pop(context); + } else { + Navigator.pop(context); + } + }, + child: ListTile( + title: Text("Mark as not attending"), + leading: Icon( + Icons.remove_circle, + color: Colors.red, + ), + ), + ), + // Container( + // padding: EdgeInsets.symmetric(horizontal: 8.0), + // width: MediaQuery.of(context).size.width, + // child: ElevatedButton( + // child: const Text( + // 'Add to My Calendar', + // style: TextStyle(color: Colors.black), + // ), + // onPressed: () { + // Add2Calendar.addEvent2Cal( + // buildEvent(), + // ); + // Navigator.pop(context); + // }), + // ), + // Container( + // padding: EdgeInsets.symmetric(horizontal: 8.0), + // width: MediaQuery.of(context).size.width, + // child: ElevatedButton( + // child: const Text('Download excel sheet', + // style: TextStyle(color: Colors.black)), + // onPressed: () => Navigator.pop(context), + // ), + // ), + // Container( + // padding: EdgeInsets.symmetric(horizontal: 8.0), + // width: MediaQuery.of(context).size.width, + // child: ElevatedButton( + // child: const Text('Remove from my events', + // style: TextStyle(color: Colors.black)), + // onPressed: () => Navigator.pop(context), + // ), + // ), + // ElevatedButton( + // child: const Text('Close'), + // onPressed: () => Navigator.pop(context), + // ), + ], + ), + ), + ); + }, + ); + }, + child: const Icon( + Icons.more_horiz, + size: 28, + color: Colors.white, + ), + ), + body: Stack( + children: [ + InkWell( + splashColor: Colors.transparent, + focusColor: Colors.transparent, + highlightColor: Colors.transparent, + hoverColor: Colors.transparent, + onTap: () { + FocusScope.of(context).requestFocus(FocusNode()); + }, + child: NestedScrollView( + controller: _scrollController, + headerSliverBuilder: + (BuildContext context, bool innerBoxIsScrolled) { + return [ + SliverList( + delegate: SliverChildBuilderDelegate( + (BuildContext context, int index) { + return Column( + children: [ + Container( + color: EventsConstants.blueColor, + child: Column( + children: [ + buildCardView( + context, widget.event, provider), + + // getTimeDateUI(), + ], + ), + ), + SizedBox( + height: 10, + ), + _ProfileInfoRow([ + ProfileInfoItem( + "Session(s)", provider.eventSessionCount), + ProfileInfoItem("Speakers(s)", + int.parse(widget.event.speakerscount!)), + //ProfileInfoItem("Note(s)", 1), + ], widget.event, provider), + SizedBox( + height: 5, + ), + ], + ); + }, childCount: 1), + ), + SliverPersistentHeader( + pinned: true, + floating: true, + delegate: ContestTabHeader( + const TabBar( + indicatorSize: TabBarIndicatorSize.tab, + labelColor: Colors.black, + tabAlignment: TabAlignment.fill, + indicatorColor: EventsConstants.blueColor, + unselectedLabelColor: Colors.grey, + labelStyle: TextStyle( + fontWeight: FontWeight.bold, + ), + labelPadding: EdgeInsets.all(2), + tabs: _tabs, + ), + ), + ), + ]; + }, + body: TabBarView( + //controller: _tabController, + children: [ + expandableDetails(), + speakersList(provider), + // EventsInsights( + // eventid: widget.event.eventId!, + // kFlutterHashtags: provider.kFlutterHashtags, affiliations: null, + // ), + SocialMedia(), + ], + ), + ), + ), + ], + ), + ), + // ), + ); + } + + Widget getSearchBarUI() { + return Padding( + padding: const EdgeInsets.only(left: 16, right: 16, top: 8, bottom: 8), + child: Row( + children: [ + Expanded( + child: Padding( + padding: const EdgeInsets.only(right: 16, top: 8, bottom: 8), + child: Container( + decoration: BoxDecoration( + color: EventsConstants.bgcolor, + borderRadius: const BorderRadius.all( + Radius.circular(38.0), + ), + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.2), + offset: const Offset(0, 2), + blurRadius: 8.0), + ], + ), + child: Padding( + padding: const EdgeInsets.only( + left: 16, right: 16, top: 4, bottom: 4), + child: TextField( + onChanged: (String txt) {}, + style: const TextStyle( + fontSize: 18, + ), + cursorColor: Colors.blue, + decoration: InputDecoration( + border: InputBorder.none, + hintText: 'Search for events...', + ), + ), + ), + ), + ), + ), + Container( + decoration: BoxDecoration( + color: Colors.blue, + borderRadius: const BorderRadius.all( + Radius.circular(38.0), + ), + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.4), + offset: const Offset(0, 2), + blurRadius: 8.0), + ], + ), + child: Material( + color: Colors.transparent, + child: InkWell( + borderRadius: const BorderRadius.all( + Radius.circular(32.0), + ), + onTap: () { + FocusScope.of(context).requestFocus(FocusNode()); + }, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Icon(FontAwesomeIcons.magnifyingGlass, + size: 20, color: Colors.black), + ), + ), + ), + ), + ], + ), + ); + } + + Widget getAppBarUI(EventsList eventsList) { + return Container( + decoration: BoxDecoration( + color: EventsConstants.blueColor, + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.2), + offset: const Offset(0, 2), + blurRadius: 8.0), + ], + ), + child: Padding( + padding: EdgeInsets.only(top: 2, left: 8, right: 8), + child: Row( + children: [ + Container( + alignment: Alignment.topLeft, + // width: AppBar().preferredSize.height, + // height: AppBar().preferredSize.height, + child: Material( + color: Colors.transparent, + child: InkWell( + borderRadius: const BorderRadius.all( + Radius.circular(32.0), + ), + onTap: () { + Navigator.pop(context); + }, + child: Padding( + padding: const EdgeInsets.all(8.0), + child: Icon( + Icons.arrow_back_ios_new, + size: 18, + color: Colors.white, + ), + ), + ), + ), + // SizedBox( + // height: 30, + // // width: 100, + // child: FloatingActionButton.extended( + // elevation: 1, + // backgroundColor: Colors.transparent, + // onPressed: () { + // Navigator.pop(context); + // }, + // label: AnimatedSwitcher( + // duration: Duration(seconds: 1), + // transitionBuilder: + // (Widget child, Animation animation) => + // FadeTransition( + // opacity: animation, + // child: SizeTransition( + // child: child, + // sizeFactor: animation, + // axis: Axis.horizontal, + // ), + // ), + // child: Row( + // children: [ + // // Padding( + // // padding: const EdgeInsets.only(right: 4.0), + // // child: Icon(Icons.arrow_back_ios_new), + // // ), + // Text( + // "Back to events", + // style: TextStyle(color: Colors.white), + // ) + // ], + // )), + // )), + ), + Expanded( + child: Text( + "", + maxLines: 1, + softWrap: true, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: isTablet ? 18 : 14, + overflow: TextOverflow.ellipsis, + ), + ), + ), + // Container( + // width: AppBar().preferredSize.height, + // height: AppBar().preferredSize.height, + // child: Row( + // crossAxisAlignment: CrossAxisAlignment.center, + // mainAxisAlignment: MainAxisAlignment.end, + // children: [ + // Material( + // color: Colors.transparent, + // child: InkWell( + // borderRadius: const BorderRadius.all( + // Radius.circular(32.0), + // ), + // onTap: () {}, + // child: Padding( + // padding: const EdgeInsets.all(8.0), + // child: Icon( + // Icons.favorite_outlined, + // color: eventsList.isfav ? Colors.red : Colors.black, + // ), + // ), + // ), + // ), + // ], + // ), + // ) + ], + ), + ), + ); + } + + Future _launchUrl(String urlstr) async { + final Uri url = Uri.parse(urlstr); + if (!await launchUrl(url)) { + throw Exception('Could not launch $url'); + } + } + + // @override + // Widget build(BuildContext context) { + // var selecttextEditingController; + // return Scaffold( + // // backgroundColor: Color.fromARGB(179, 248, 238, 238), + // // appBar: CustomAppBar(), + // //backgroundColor: const Color.fromARGB(255, 222, 237, 247), + // body: Column( + // children: [ + // buildCardView(context), + // SizedBox( + // height: 5, + // ), + // Container( + // color: Colors.white, + // height: 50, + // child: TabBar( + // controller: _tabController, + // tabAlignment: TabAlignment.start, + // isScrollable: true, + // indicatorColor: Colors.black, + // indicatorWeight: 0.2, + // tabs: [ + // Padding( + // padding: const EdgeInsets.all(8.0), + // child: Text( + // 'Details', + // style: TextStyle( + // color: Colors.black, + // //fontWeight: FontWeight.bold, + // fontFamily: "SourceSerif", + // letterSpacing: 0.3, + // fontSize: isTablet ? 20 : 16), + // ), + // ), + // Padding( + // padding: const EdgeInsets.all(8.0), + // child: Text( + // 'Speakers', + // style: TextStyle( + // color: Colors.black, + // //fontWeight: FontWeight.bold, + // fontFamily: "SourceSerif", + // fontSize: isTablet ? 20 : 16), + // ), + // ), + // ], + // ), + // ), + // Expanded( + // child: TabBarView( + // controller: _tabController, + // children: [ + // expandableDetails(), + // speakersList(), + // ], + // ), + // ) + // ], + // )); + // } + + buildCardView( + BuildContext context, EventsList event, EventsOfflineProvider provider) { + double height = isTablet + ? MediaQuery.of(context).size.height * 0.35 + : MediaQuery.of(context).size.height / 1.2; + + // return Container( + // decoration: BoxDecoration( + // color: Constants.bgcolor, + // ),x + // //height: 360, + // height: double.infinity, + // padding: isTablet + // ? EdgeInsets.symmetric(horizontal: 8.0, vertical: 2.0) + // : EdgeInsets.symmetric( + // horizontal: 6.0, + // ), + // child: + + return Padding( + padding: const EdgeInsets.only(left: 8.0, right: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + //mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + // Container( + // color: Constants.bgcolor, + // padding: const EdgeInsets.only(left: 8.0), + // height: double.minPositive, + // child: + + // RichText( + // text: TextSpan( + // children: [ + // WidgetSpan( + // child: + Text( + event.name1 ?? "", + maxLines: 3, + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, + color: Colors.white, + + //fontWeight: FontWeight.bold, + fontSize: isTablet ? 22 : 18, + ), + ), + // ), + + // TextSpan( + // text: event.name1 ?? "", + // style: TextStyle( + // color: Colors.white, + // // fontStyle: FontStyle.italic, + // letterSpacing: 0.3, + // fontSize: isTablet ? 22 : 18), + // // ), + // ], + // ), + // ), + SizedBox( + height: 15, + ), + + RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Icon( + Icons.calendar_month, + size: 18, + color: Colors.white, + ), + ), + TextSpan( + text: ' ${event.start} to ${event.end}', + style: TextStyle( + color: Colors.white, + // fontStyle: FontStyle.italic, + letterSpacing: 0.3, + fontSize: isTablet ? 20 : 14), + ), + ], + ), + ), + SizedBox( + height: 8.0, + ), + RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Icon( + Icons.location_on, + size: 18, + color: Colors.white, + ), + ), + TextSpan( + text: + ' ${event.city != null ? "${event.city}, " : ""}${event.region != null ? "${event.region}, " : ""}${event.country != null ? "${event.country}" : ""}', + style: TextStyle( + color: Colors.white, + //fontStyle: FontStyle.italic, + letterSpacing: 0.3, + fontSize: isTablet ? 20 : 14), + ), + ], + ), + ), + SizedBox( + height: 8.0, + ), + InkWell( + onTap: () async { + await _launchUrl(provider.eventdetailList[0].url1!); + }, + child: RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Icon( + Icons.link, + size: 18, + color: Colors.white, + ), + ), + TextSpan( + text: ' Visit Website', + style: TextStyle( + decoration: TextDecoration.underline, + color: Colors.white, + // fontStyle: FontStyle.italic, + letterSpacing: 0.6, + fontSize: isTablet ? 20 : 14), + ), + ], + ), + ), + ), + + Padding( + padding: const EdgeInsets.only(top: 8.0, right: 8.0, left: 1), + child: Text( + 'Event by: ${event.organizer}', + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, + color: Colors.white, + //fontWeight: FontWeight.italic, + fontSize: isTablet ? 18 : 14, + + letterSpacing: 0.3, + ), + maxLines: isTablet ? 3 : 3, + softWrap: true, + overflow: TextOverflow.ellipsis, + ), + ), + SizedBox( + height: 10.0, + ), + Align( + alignment: Alignment.bottomCenter, + child: Padding( + padding: const EdgeInsets.only(left: 1.0, right: 8.0), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + // SizedBox( + // width: 15, + // ), + attendingbtn(widget.event, provider), + // const Spacer(), + favbtn(widget.event, provider) + ], + ), + ), + ), + // SizedBox( + // height: 8.0, + // ), + // RichText( + // text: TextSpan( + // children: [ + // WidgetSpan( + // child: Icon(Icons.person, size: 18), + // ), + // TextSpan( + // text: ' d attendees', + // style: TextStyle( + // color: Colors.black, + // //fontStyle: FontStyle.italic, + // letterSpacing: 0.3, + // fontFamily: "SourceSerif", + // fontSize: isTablet ? 20 : 14), + // ), + // ], + // ), + // ), + // SizedBox( + // height: 10, + // ), + // Positioned( + // child: + + SizedBox( + height: 10, + ), + // Image.asset( + // "assets/images/events2.jpg", + // fit: BoxFit.cover, + // ), + // ), + ], + // ), + ), + ); + } + + Widget favbtn(EventsList event, EventsOfflineProvider provider) { + return event.isfav + ? SizedBox( + height: 40, + child: TextButton( + // elevation: 1, + // : Colors.transparent, + + onPressed: () async { + // String msg = await provider + // .addEventsToFavs(event.eventId!); + setState(() { + event.isfav = !event.isfav; + + if (event.isfav) { + provider.favsEventsData(event); + SnackBarWidget.displaySnackBar( + "You are following the event!", context); + } else { + provider.delateEventsData(event); + SnackBarWidget.displaySnackBar("Not Following", context); + } + }); + }, + child: AnimatedSwitcher( + duration: Duration(seconds: 1), + transitionBuilder: + (Widget child, Animation animation) => + FadeTransition( + opacity: animation, + child: SizeTransition( + child: child, + sizeFactor: animation, + axis: Axis.horizontal, + ), + ), + child: Row( + children: [ + Padding( + padding: const EdgeInsets.only(right: 4.0), + child: Icon( + Icons.favorite, + color: Colors.red, + ), + ), + Text("Following", style: TextStyle(color: Colors.white)) + ], + )))) + : SizedBox( + height: 45, + child: FloatingActionButton.extended( + elevation: 1, + // heroTag: "following45", + backgroundColor: EventsConstants.bgcolor, + //backgroundColor: Colors.red, + onPressed: () async { + // String msg = await provider + // .addEventsToFavs(event.eventId!); + + setState(() { + event.isfav = !event.isfav; + + if (event.isfav) { + provider.favsEventsData(event); + SnackBarWidget.displaySnackBar( + "You are following the event!", context); + } else { + provider.delateEventsData(event); + SnackBarWidget.displaySnackBar("Not Following", context); + } + }); + }, + label: AnimatedSwitcher( + duration: Duration(seconds: 1), + transitionBuilder: + (Widget child, Animation animation) => + FadeTransition( + opacity: animation, + child: SizeTransition( + child: child, + sizeFactor: animation, + axis: Axis.horizontal, + ), + ), + child: Row( + children: [ + // Padding( + // padding: const EdgeInsets.only(right: 4.0), + // child: Icon(Icons.add), + // ), + Icon( + Icons.favorite, + color: event.isfav ? Colors.red : Colors.grey, + size: 14, + ), + const SizedBox( + width: 10, + ), + Text( + event.isfav ? "Following" : "Follow", + style: TextStyle(color: Colors.black), + ) + ], + ))), + ); + } + + Widget attendingbtn(EventsList event, EventsOfflineProvider provider) { + return event.isAttending + ? SizedBox( + height: 40, + child: TextButton( + // elevation: 1, + // : Colors.transparent, + + onPressed: () async { + if (!event.isfav) { + event.isfav = !event.isfav; + // String msg1 = await provider + // .addEventsToFavs(event.eventId!); + } + + // String msg = await provider + // .markAttending(event.eventId!); + setState(() { + event.isAttending = !event.isAttending; + + if (event.isAttending) { + SnackBarWidget.displaySnackBar("Attending", context); + } else { + SnackBarWidget.displaySnackBar("Not Attending", context); + } + }); + }, + child: AnimatedSwitcher( + duration: Duration(seconds: 1), + transitionBuilder: + (Widget child, Animation animation) => + FadeTransition( + opacity: animation, + child: SizeTransition( + child: child, + sizeFactor: animation, + axis: Axis.horizontal, + ), + ), + child: Row( + children: [ + Padding( + padding: const EdgeInsets.only(right: 4.0), + child: Icon( + Icons.check, + color: Colors.white, + ), + ), + Text("I am Attending", + style: TextStyle(color: Colors.white)) + ], + )))) + : SizedBox( + height: 45, + child: FloatingActionButton.extended( + elevation: 1, + backgroundColor: EventsConstants.bgcolor, + onPressed: () async { + if (!event.isfav) { + event.isfav = !event.isfav; + // String msg1 = await provider + // .addEventsToFavs(event.eventId!); + } + + // String msg = await provider + // .markAttending(event.eventId!); + setState(() { + event.isAttending = !event.isAttending; + + if (event.isAttending) { + SnackBarWidget.displaySnackBar("Attending", context); + } else { + SnackBarWidget.displaySnackBar("Not Attending", context); + } + }); + }, + //heroTag: "attending545", + label: AnimatedSwitcher( + duration: Duration(seconds: 1), + transitionBuilder: + (Widget child, Animation animation) => + FadeTransition( + opacity: animation, + child: SizeTransition( + child: child, + sizeFactor: animation, + axis: Axis.horizontal, + ), + ), + child: event.isAttending + ? Row( + children: [ + Padding( + padding: const EdgeInsets.only(right: 4.0), + child: Icon( + Icons.check, + color: Colors.black, + ), + ), + Text( + "I am Attending", + style: TextStyle( + color: Colors.black, + fontWeight: FontWeight.bold), + ) + ], + ) + : Row( + children: [ + // Padding( + // padding: const EdgeInsets.only(right: 4.0), + // child: Icon(Icons.add), + // ), + Text( + "I am Attending", + style: TextStyle( + color: Colors.black, + ), + ) + ], + ))), + ); + } + + Widget expandableDetails() { + return + // isTablet + // ? Container( + // margin: EdgeInsets.symmetric(vertical: 20.0), + // height: 200.0, + // child: Row( + // mainAxisAlignment: MainAxisAlignment.spaceEvenly, + // children: [ + // _topicCard("Top 3 topics", + // " 1. Hematologic Neoplasms \n 2. Antibodies, Bispecific \n 3. Multiple Myeloma"), + // _topicCard("Speakers with most sessions", + // " 1. James A. Davis \n 2. Sandra Cuellar \n 3. Allison Butts"), + // _topicCard("Sponsors", + // " 1. Amgen Inc \n 2. Bristol-Myers Squibb Company \n 3. Genmab A/S") + // ], + // )) + // : + Container( + height: MediaQuery.of(context).size.height, + color: EventsConstants.bgcolor, + padding: EdgeInsets.only(left: 8, right: 8), + child: SingleChildScrollView( + child: Column(children: [ + SizedBox( + height: 5, + ), + listViewTopicCard("Top 3 topics", widget.event.topTopics ?? "", true), + SizedBox( + height: 3, + ), + listViewTopicCard( + "Speakers with most sessions", widget.event.topSpeakers!, true), + SizedBox( + height: 3, + ), + listViewTopicCard("Sponsors", widget.event.sponsors!, true) + ]), + ), + ); + } + + Widget _topicCard(String title, String content) { + return SizedBox( + width: MediaQuery.of(context).size.width / 3.2, + child: Card( + child: Padding( + padding: const EdgeInsets.only(top: 18.0, left: 3.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Center( + child: Text( + title, + style: TextStyle(fontSize: 16), + maxLines: 2, + ), + ), + SizedBox( + height: 20, + ), + Text( + content, + style: TextStyle(fontSize: 16), + maxLines: 6, + ), + ], + ), + ), + ), + ); + } + + Widget listViewTopicCard(String title, String content, bool visible) { + return Visibility( + visible: visible, + child: Card( + // color: Colors.white, + surfaceTintColor: Colors.white, + child: Container( + padding: EdgeInsets.all(8.0), + width: double.maxFinite, + decoration: BoxDecoration( + // color: Color.fromARGB(179, 248, 238, 238, + borderRadius: BorderRadius.all(Radius.circular(20)), + color: Colors.white, + ), + child: Padding( + padding: const EdgeInsets.only(left: 8.0, right: 14.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: TextStyle( + fontSize: isTablet ? 22 : 16, + fontWeight: FontWeight.bold, + ), + ), + SizedBox( + height: 5, + ), + Text( + content, + style: TextStyle( + fontSize: isTablet ? 22 : 14, + color: Colors.grey[900], + ), + ), + ], + ), + ), + ), + ), + ); + } + + Widget speakersList(EventsOfflineProvider provider) { + var searchtextEditingController; + return Container( + width: double.maxFinite, + padding: EdgeInsets.only(left: 8), + decoration: BoxDecoration( + // color: Color.fromARGB(179, 248, 238, 238), + color: EventsConstants.bgcolor, + ), + child: Column( + children: [ + Padding( + padding: const EdgeInsets.all(8.0), + child: Container( + height: 40, + // decoration: BoxDecoration( + // // color: Colors.white, + // borderRadius: BorderRadius.circular(5.0)), + child: TextField( + controller: searchtextEditingController, + onChanged: (String txt) async { + if (txt.length >= 2) { + provider.OnSearchSpeakers(txt); + } + if (txt.length < 2) { + await provider + .onSearchSpeakersReset(widget.event.eventId!); + } + }, + decoration: InputDecoration( + //fillColor: Constants.blueColor, + enabledBorder: UnderlineInputBorder( + // borderRadius: BorderRadius.zero, + borderSide: BorderSide( + width: 1, + style: BorderStyle.solid, + color: Colors.grey)), + border: UnderlineInputBorder( + // borderRadius: BorderRadius.zero, + borderSide: BorderSide( + width: 1, + style: BorderStyle.solid, + color: Colors.grey)), + contentPadding: EdgeInsets.symmetric(vertical: 9.0), + focusedBorder: UnderlineInputBorder( + borderSide: BorderSide( + width: 1, + style: BorderStyle.solid, + color: Colors.grey)), + // border: OutlineInputBorder(), + hintText: "Search...", + // labelText: ' Search', + prefixIcon: Icon( + Icons.search, + ), + ), + ), + ), + ), + Expanded( + child: ListView.separated( + padding: const EdgeInsets.all(8), + itemCount: provider.isSearchSpeakers + ? provider.srcheventdetailList.length + : provider.eventdetailList.length, + itemBuilder: (BuildContext context, int index) { + Eventsdetail detail = provider.isSearchSpeakers + ? provider.srcheventdetailList[index] + : provider.eventdetailList[index]; + return GestureDetector( + onTap: () { + // Navigator.of(context).push( + // MaterialPageRoute( + // builder: (context) => HCPProfileScreen( + // eventsdetail: detail, + // eventid: widget.event.eventId!, + // title: widget.event.name1!, + // ), + // ), + // ); + }, + child: Container( + // height: double.infinity, + child: Column( + children: [ + Row( + children: [ + Center( + child: CircleAvatar( + radius: 24, + backgroundColor: Colors.grey, + // child: Icon( + // Icons.person, + // size: 18, + // color: Colors.white, + // ), + child: Text( + detail.kolFullName![0], + style: TextStyle( + fontWeight: FontWeight.bold, + color: Colors.white), + ), + ), + ), + // Container( + // width: 45, + // height: 45, + // decoration: const BoxDecoration( + // color: Colors.black, + // shape: BoxShape.circle, + // image: DecorationImage( + // fit: BoxFit.cover, + // image: NetworkImage( + // 'https://cardio-staging.konectar.io/images/kol_images/resized/1093755944.jpeg')), + // // 'https://images.unsplash.com/photo-1438761681033-6461ffad8d80?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1470&q=80')), + // ), + // ), + SizedBox( + width: 20, + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + detail.kolFullName!, + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 14, + ), + maxLines: 2, + softWrap: true, + overflow: TextOverflow.ellipsis, + ), + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width * 0.25 + : MediaQuery.of(context).size.width * 0.5, + child: Text( + detail.eventTopics ?? + 'Programmed Cell Death 1 Receptor | Human Epidermal Growth Factor Receptor 2 +6more', + maxLines: 3, + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, + + color: Colors.black, + + //fontStyle: FontStyle.italic, + fontSize: 14), + ), + ), + ], + ), + // const Spacer(), + // SizedBox( + // height: 30, + // child: OutlinedButton( + // onPressed: () {}, + // child: Icon( + // Icons.add, + // size: 24, + // color: Colors.white, + // ), + // style: OutlinedButton.styleFrom( + // shape: CircleBorder(), + // backgroundColor: Constants.bgcolor, + // ), + // ), + // ), + ], + ), + // SEE ALL BUTTON CODE.. + // index == provider.eventdetailList.length - 1 + // ? Padding( + // padding: const EdgeInsets.all(8.0), + // child: Container( + // height: 30, + // child: OutlinedButton( + // onPressed: () { + // setState(() { + // itemcount = 15; + // }); + // // Navigator.of(context).push( + // // MaterialPageRoute( + // // builder: (context) => HcpListScreen(), + // // ), + // // ); + // }, + // child: Text( + // 'See All', + // style: TextStyle( + // // fontFamily: "SourceSerif", + // fontSize: 14, + // color: Colors.black, + // fontWeight: FontWeight.normal), + // ), + // style: OutlinedButton.styleFrom( + // shape: StadiumBorder(), + // ), + // ), + // ), + // ) + // : SizedBox.shrink() + ], + )), + ); + }, + separatorBuilder: (BuildContext context, int index) { + return Divider(); + }, + ), + ), + ], + )); + } + + Widget _ProfileInfoRow(List countslist, EventsList event, + EventsOfflineProvider provider) { + return Container( + height: 60, + constraints: const BoxConstraints(maxWidth: 400), + child: Center( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: countslist + .map((item) => Expanded( + child: Row( + children: [ + if (countslist.indexOf(item) != 0) + const VerticalDivider(), + Expanded( + child: _singleItem(context, item, event, provider)), + ], + ))) + .toList(), + ), + ), + ); + } + + Widget _singleItem(BuildContext context, ProfileInfoItem item, + EventsList event, EventsOfflineProvider provider) { + return Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: const EdgeInsets.all(8.0), + child: Text( + item.value.toString(), + style: const TextStyle( + fontWeight: FontWeight.bold, + fontSize: 14, + ), + ), + ), + item.title == "Attending" + ? attendingbtn(event, provider) + : Text( + item.title, + style: Theme.of(context).textTheme.bodyLarge, + ) + ], + ); + } +} + +// class _ProfileInfoRow extends StatelessWidget { +// List countslist; +// _ProfileInfoRow({Key? key, required this.countslist}) : super(key: key); + +// @override +// Widget build(BuildContext context) { +// return Container( +// height: 60, +// constraints: const BoxConstraints(maxWidth: 400), +// child: Center( +// child: Row( +// mainAxisAlignment: MainAxisAlignment.spaceEvenly, +// children: countslist +// .map((item) => Expanded( +// child: Row( +// children: [ +// if (countslist.indexOf(item) != 0) +// const VerticalDivider(), +// Expanded(child: _singleItem(context, item)), +// ], +// ))) +// .toList(), +// ), +// ), +// ); +// } + +// Widget _singleItem(BuildContext context, ProfileInfoItem item) => Column( +// mainAxisAlignment: MainAxisAlignment.center, +// children: [ +// Padding( +// padding: const EdgeInsets.all(8.0), +// child: Text( +// item.value.toString(), +// style: const TextStyle( +// fontWeight: FontWeight.bold, +// fontSize: 14, +// ), +// ), +// ), +// Text( +// item.title, +// style: Theme.of(context).textTheme.bodyLarge, +// ) +// ], +// ); +// } + +class ProfileInfoItem { + final String title; + final int value; + + const ProfileInfoItem( + this.title, + this.value, + ); +} + +const _tabs = [ + Tab(text: "Details"), + Tab(text: "Speakers"), + Tab(text: "Insights"), + Tab(text: "Social Media"), +]; + +class _SliverAppBarDelegate extends SliverPersistentHeaderDelegate { + _SliverAppBarDelegate(this._tabBar); + + final TabBar _tabBar; + + @override + double get minExtent => _tabBar.preferredSize.height; + @override + double get maxExtent => _tabBar.preferredSize.height; + + @override + Widget build( + BuildContext context, double shrinkOffset, bool overlapsContent) { + return Container(color: EventsConstants.tabbgColor, child: _tabBar); + } + + @override + bool shouldRebuild(_SliverAppBarDelegate oldDelegate) { + return true; + } +} diff --git a/lib/view/eventstab.dart b/lib/view/eventstab.dart index cd58ddd..4f579dd 100644 --- a/lib/view/eventstab.dart +++ b/lib/view/eventstab.dart @@ -1,26 +1,12 @@ import 'package:flutter/cupertino.dart'; -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter/widgets.dart'; -import 'package:konectar_events/model/eventsmodel.dart'; import 'package:konectar_events/model/neweventsmodel.dart'; import 'package:konectar_events/utils/constants.dart'; -import 'package:konectar_events/view/eventdetailstab.dart'; -import 'package:konectar_events/view/eventsdetails.dart'; import 'package:konectar_events/view/eventslist.dart'; -import 'package:konectar_events/view/insights.dart'; -import 'package:konectar_events/view/socialmedia.dart'; -import 'package:konectar_events/widgets/autocompletetags_widget.dart'; -import 'package:konectar_events/widgets/customactionsheet.dart'; -import 'package:konectar_events/widgets/gridview.dart'; -import 'package:konectar_events/widgets/word_cloud.dart'; import 'package:word_cloud/word_cloud_data.dart'; -import 'package:word_cloud/word_cloud_shape.dart'; import 'package:word_cloud/word_cloud_tap.dart'; -import 'package:word_cloud/word_cloud_tap_view.dart'; -import 'package:word_cloud/word_cloud_view.dart'; -import 'package:flutter/material.dart'; import 'package:add_2_calendar/add_2_calendar.dart'; class EventsTab extends StatefulWidget { diff --git a/lib/view/hcplist.dart b/lib/view/hcplist.dart index 5d221e8..7ae022c 100644 --- a/lib/view/hcplist.dart +++ b/lib/view/hcplist.dart @@ -2,7 +2,6 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:konectar_events/utils/util.dart'; import 'package:konectar_events/widgets/customappbar.dart'; -import 'package:konectar_events/widgets/customeventsappbar.dart'; class HcpListScreen extends StatefulWidget { const HcpListScreen({super.key}); diff --git a/lib/view/helpdesk.dart b/lib/view/helpdesk.dart new file mode 100644 index 0000000..c1ab037 --- /dev/null +++ b/lib/view/helpdesk.dart @@ -0,0 +1,226 @@ +import 'dart:convert'; +import 'dart:io'; + +import 'package:file_picker/file_picker.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/widget/custombutton.dart'; +import 'package:konectar_events/utils/constants.dart'; +import 'package:konectar_events/widgets/customappbar.dart'; +import 'package:konectar_events/widgets/customtextfield.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:path/path.dart' as p; + +class HelpDeskScreen extends StatefulWidget { + const HelpDeskScreen({super.key}); + + @override + State createState() => _HelpDeskScreenState(); +} + +class _HelpDeskScreenState extends State { + TextEditingController subjectTextController = TextEditingController(text: ""); + TextEditingController TextController = TextEditingController(text: ""); + String? _selectedValue; + + final List type = [ + "Question", + "Software Issue", + "Content Issue", + "Training Request", + "Callback Request", + "Feature Request", + ]; + + Widget dropDown({ + Widget? underline, + Widget? icon, + TextStyle? style, + TextStyle? hintStyle, + Color? dropdownColor, + }) => + DropdownButton( + value: _selectedValue, + underline: underline, + icon: Align(alignment: Alignment.centerRight, child: icon), + dropdownColor: dropdownColor, + isExpanded: true, + style: TextStyle( + //fontFamily: "SourceSerif", + color: Colors.black, + fontSize: 14.0, + ), + // iconEnabledColor: iconEnabledColor, + onChanged: (String? newValue) { + setState(() { + _selectedValue = newValue; + }); + }, + hint: Text("Select Type", style: hintStyle), + items: type + .map((session) => DropdownMenuItem( + value: session, child: Text(session))) + .toList()); + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text( + "Help Desk", + style: TextStyle(color: Colors.white), + ), + automaticallyImplyLeading: false, + backgroundColor: EventsConstants.blueColor, + centerTitle: true, + ), + body: Container( + height: MediaQuery.of(context).size.height / 2, + padding: EdgeInsets.symmetric(horizontal: 8.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox( + height: 30, + ), + CustomTextField( + labelText: "Subject*", controller: subjectTextController), + SizedBox( + height: 30, + ), + Container( + padding: const EdgeInsets.all(8.0), + decoration: BoxDecoration( + border: Border.all(color: Colors.grey), + borderRadius: BorderRadius.circular(8.0)), + child: dropDown(underline: Container())), + SizedBox( + height: 30, + ), + TextFormField( + validator: (value) { + // add email validation + if (value == null || value.isEmpty) { + return 'Please enter some text'; + } + + // bool emailValid = RegExp( + // r"^[a-zA-Z0-9.a-zA-Z0-9.!#$%&'*+-/=?^_`{|}~]+@[a-zA-Z0-9]+\.[a-zA-Z]+") + // .hasMatch(value); + // if (!emailValid) { + // return 'Please enter a valid email'; + // } + + return null; + }, + maxLines: 3, + decoration: const InputDecoration( + labelText: 'Description', + hintText: 'Description', + border: OutlineInputBorder(), + ), + ), + SizedBox( + height: 10, + ), + Row( + children: [ + Text("Attach a file :"), + SizedBox( + width: 10, + ), + CustomButton( + backgroundColor: const Color.fromARGB(255, 233, 229, 229), + onPressed: () async { + // sectionItem.selectedValue = []; + // sectionItem.extension = []; + // sectionItem.fileName = []; + await getEncodedFile(); + + setState(() {}); + }, + width: 120, + height: 40, + fontsize: 12, + textColor: Colors.black, + title: "Choose file"), + ], + ), + SizedBox( + height: 30, + ), + Center( + child: CustomButton( + backgroundColor: EventsConstants.blueColor, + onPressed: () => (), + title: "Submit", + textColor: Colors.white, + ), + ) + ], + ), + ), + ); + } + + Future getEncodedFile() async { + String base64Image = ''; + var status = Platform.isAndroid + ? await Permission.manageExternalStorage.status + : await Permission.storage.status; + if (status.isGranted) { + FilePickerResult? result = + await FilePicker.platform.pickFiles(allowMultiple: true); + + if (result != null) { + print(result.files.first.path); + print(result.files.last.path); + for (var files in result.files) { + File file = File(files.path!); + print("check file path : ${file.path}"); + var fileName = file.path.split('/').last; + // Get the application folder directory + Directory? directory = Platform.isAndroid + ? await getExternalStorageDirectory() //FOR ANDROID + : await getApplicationDocumentsDirectory(); + String newPath = ""; //FOR ios + String convertedDirectoryPath = (directory?.path).toString(); + + print("see the converted directory path $convertedDirectoryPath"); + + newPath = "$convertedDirectoryPath/konectar/files"; + print("new path :$newPath"); + directory = Directory(newPath); + if (!await directory.exists()) { + await directory.create(recursive: true); + } + File newFile = await file.copy('${directory.path}/$fileName'); + print("new path is ${newFile.path}"); + final extension = p.extension(newFile.path); + List imageBytes = await newFile.readAsBytes(); + Uint8List imageUint8List = Uint8List.fromList(imageBytes); + base64Image = base64Encode(imageUint8List); + // sectionItem.selectedValue!.add(base64Image); + // sectionItem.extension!.add(extension); + // sectionItem.fileName!.add(fileName); + } + } + } else { + print("not permitted"); + await requestPermission(Platform.isAndroid + ? Permission.manageExternalStorage + : Permission.storage); + } + } + + Future requestPermission(Permission permission) async { + final status = await permission.request(); + + setState(() { + print(status); + // _permissionStatus = status; + // print(_permissionStatus); + }); + } +} diff --git a/lib/view/home.dart b/lib/view/home.dart index 5528224..e3f31af 100644 --- a/lib/view/home.dart +++ b/lib/view/home.dart @@ -1,11 +1,21 @@ +import 'dart:async'; + +import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/painting.dart'; import 'package:flutter/rendering.dart'; +import 'package:flutter/services.dart'; import 'package:flutter/widgets.dart'; + +import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; +import 'package:konectar_events/contacts_module/custom_widget/show_alert.dart'; import 'package:konectar_events/model/keywords_model.dart'; import 'package:konectar_events/model/neweventsmodel.dart'; +import 'package:konectar_events/utils/apicall.dart'; import 'package:konectar_events/utils/constants.dart'; +import 'package:konectar_events/utils/dateformater.dart'; import 'package:konectar_events/utils/util.dart'; import 'package:konectar_events/view/eventslist.dart'; import 'package:konectar_events/view/eventstab.dart'; @@ -43,16 +53,30 @@ class _HomeScreenState extends State with TickerProviderStateMixin { List selectedIndex = []; bool selectedFav = false; bool isExtended = false; - + String search = ""; final ScrollController _scrollController = ScrollController(); final GlobalKey _scaffoldKey = GlobalKey(); AnimationController? animationController; bool _isSearch = false; List therapeuticList = []; + + static const _pageSize = 20; + String filter_startdate = ""; + String filter_enddate = ""; + + final PagingController pagingController = + PagingController(firstPageKey: 0); + + List connectionStatus = [ConnectivityResult.none]; + final Connectivity _connectivity = Connectivity(); + get developer => null; + late StreamSubscription> _connectivitySubscription; + @override void dispose() { animationController?.dispose(); + pagingController.dispose(); super.dispose(); } @@ -61,18 +85,95 @@ class _HomeScreenState extends State with TickerProviderStateMixin { animationController = AnimationController( duration: const Duration(milliseconds: 1000), vsync: this); WidgetsBinding.instance.addPostFrameCallback((timeStamp) { + initConnectivity(); + + _connectivitySubscription = + _connectivity.onConnectivityChanged.listen(_updateConnectionStatus); init(); }); - + pagingController.addPageRequestListener((pageKey) { + _fetchPage(pageKey); + }); super.initState(); } + Future initConnectivity() async { + late List result; + // Platform messages may fail, so we use a try/catch PlatformException. + try { + result = await _connectivity.checkConnectivity(); + } on PlatformException catch (e) { + developer.log('Couldn\'t check connectivity status', error: e); + return; + } + + // If the widget was removed from the tree while the asynchronous platform + // message was in flight, we want to discard the reply rather than calling + // setState to update our non-existent appearance. + if (!mounted) { + return Future.value(null); + } + + return _updateConnectionStatus(result); + } + + Future _updateConnectionStatus(List result) async { + setState(() { + connectionStatus = result; + }); + + // ignore: avoid_print + print('Connectivity changed: $connectionStatus'); + } + + Future _fetchPage(int pageKey) async { + print("DATE SELECTED :$filter_enddate,$filter_startdate"); + await initConnectivity(); + if (connectionStatus.toString().contains("ConnectivityResult.none")) { + try { + final newItems = + await Provider.of(context, listen: false) + .getOfflineMyEvents(); + final isLastPage = newItems.length < _pageSize; + if (isLastPage) { + pagingController.appendLastPage(newItems); + } else { + final nextPageKey = pageKey + newItems.length; + pagingController.appendPage(newItems, nextPageKey); + } + } catch (error) { + pagingController.error = error; + } + } else { + try { + final newItems = + await Provider.of(context, listen: false).getEvents( + pageKey, + searchtxt: search, + startdate: filter_startdate, + enddate: filter_enddate); + // final newItems = + // await Provider.of(context, listen: false) + // .getOfflineMyEvents(); + final isLastPage = newItems.length < _pageSize; + if (isLastPage) { + pagingController.appendLastPage(newItems); + } else { + final nextPageKey = pageKey + newItems.length; + pagingController.appendPage(newItems, nextPageKey); + } + } catch (error) { + pagingController.error = error; + } + } + } + init() async { await Provider.of(context, listen: false).initFiltersData(); - await Provider.of(context, listen: false).getEvents(); + // await Provider.of(context, listen: false).getMyEvents(0); await Provider.of(context, listen: false) .getAddedSessionNotes(); - + //await ApiCall().dummyapi(); setState(() {}); } @@ -228,12 +329,31 @@ class _HomeScreenState extends State with TickerProviderStateMixin { borderRadius: BorderRadius.circular(5.0)), child: TextField( controller: searchtextEditingController, + onEditingComplete: () { + String txt = searchtextEditingController.text; + if (txt.length >= 2) { + search = txt; + provider.isSearch = true; + pagingController.refresh(); + // await provider.OnSearch(txt); + } + if (txt.length == 0) { + provider.isSearch = false; + + pagingController.refresh(); + } + }, onChanged: (String txt) async { if (txt.length >= 2) { - provider.OnSearch(txt); + search = txt; + provider.isSearch = true; + pagingController.refresh(); + // await provider.OnSearch(txt); } - if (txt.length < 2) { - await provider.onSearchReset(); + if (txt.length == 0) { + provider.isSearch = false; + search = txt; + pagingController.refresh(); } }, decoration: InputDecoration( @@ -268,6 +388,8 @@ class _HomeScreenState extends State with TickerProviderStateMixin { _isSearch = !_isSearch; if (!_isSearch) { searchtextEditingController.clear(); + search = ""; + pagingController.refresh(); } }); }, @@ -277,58 +399,58 @@ class _HomeScreenState extends State with TickerProviderStateMixin { )) ], ), - body: Stack( - children: [ - InkWell( - splashColor: Colors.transparent, - focusColor: Colors.transparent, - highlightColor: Colors.transparent, - hoverColor: Colors.transparent, - onTap: () { - FocusScope.of(context).requestFocus(FocusNode()); - }, - child: NestedScrollView( - controller: _scrollController, - headerSliverBuilder: - (BuildContext context, bool innerBoxIsScrolled) { - return [ - // SliverList( - // delegate: SliverChildBuilderDelegate( - // (BuildContext context, int index) { - // return Container( - // color: Constants.blueColor, - // child: Column( - // children: [ - // // CustomAppBar( - // // title: "Events", - // // backgroundcolor: - // // Color.fromARGB(255, 0, 71, 132), - // // ), - // // getSearchBarUI(provider), - // ], - // ), - // ); - // }, childCount: 1), - // ), - SliverPersistentHeader( - pinned: true, - floating: true, - delegate: ContestTabHeader( - getFilterBarUI(provider), - ), + body: Stack(children: [ + InkWell( + splashColor: Colors.transparent, + focusColor: Colors.transparent, + highlightColor: Colors.transparent, + hoverColor: Colors.transparent, + onTap: () { + FocusScope.of(context).requestFocus(FocusNode()); + }, + child: NestedScrollView( + controller: _scrollController, + headerSliverBuilder: + (BuildContext context, bool innerBoxIsScrolled) { + return [ + // SliverList( + // delegate: SliverChildBuilderDelegate( + // (BuildContext context, int index) { + // return Container( + // color: Constants.blueColor, + // child: Column( + // children: [ + // // CustomAppBar( + // // title: "Events", + // // backgroundcolor: + // // Color.fromARGB(255, 0, 71, 132), + // // ), + // // getSearchBarUI(provider), + // ], + // ), + // ); + // }, childCount: 1), + // ), + SliverPersistentHeader( + pinned: true, + floating: true, + delegate: ContestTabHeader( + getFilterBarUI(provider), ), - ]; - }, - body: Container( - color: EventsConstants.bgcolor, - child: buildListView(context, provider)), - ), + ), + ]; + }, + body: Container( + color: EventsConstants.bgcolor, + child: buildPaginationListView(context, provider)), ), - ], - ), + ), + ]), ), - // ), ); + + // ), + // ); } Widget getFilterBarUI(EventsProvider provider) { @@ -422,12 +544,24 @@ class _HomeScreenState extends State with TickerProviderStateMixin { child: CupertinoSwitch( activeColor: Color.fromARGB(255, 0, 71, 132), value: provider.isFavSeleted, - onChanged: (value) async { + onChanged: (value) { provider.isFavSeleted = value; if (provider.isFavSeleted) { - await provider.onSelectMy(); + pagingController.refresh(); + + //_pagingController. + // _pagingController + // .addPageRequestListener((pageKey) { + // await _fetchPage(0); + // }); } else { - await provider.onSelectAll(); + provider.isFavSeleted = false; + provider.isAllSelected = !provider.isAllSelected; + pagingController.refresh(); + // _pagingController + // .addPageRequestListener((pageKey) { + // await _fetchPage(0); + // }); } setState(() {}); }, @@ -551,10 +685,15 @@ class _HomeScreenState extends State with TickerProviderStateMixin { child: TextField( onChanged: (String txt) async { if (txt.length >= 3) { - provider.OnSearch(txt); + search = txt; + provider.isSearch = true; + pagingController.refresh(); + // await provider.OnSearch(txt); } if (txt.length <= 3) { - await provider.onSearchReset(); + provider.isSearch = false; + pagingController.refresh(); + //await provider.onSearchReset(); } }, style: const TextStyle( @@ -591,10 +730,17 @@ class _HomeScreenState extends State with TickerProviderStateMixin { ), onTap: () async { FocusScope.of(context).requestFocus(FocusNode()); - if (searchtextEditingController.text.length >= 3) - provider.OnSearch(searchtextEditingController.text); - else - await provider.onSearchReset(); + if (searchtextEditingController.text.length >= 3) { + search = searchtextEditingController.text; + provider.isSearch = true; + pagingController.refresh(); + // await provider.OnSearch(searchtextEditingController.text); + } else { + //search = searchtextEditingController.text; + provider.isSearch = false; + pagingController.refresh(); + } + // await provider.onSearchReset(); }, child: Padding( padding: const EdgeInsets.all(16.0), @@ -769,7 +915,7 @@ class _HomeScreenState extends State with TickerProviderStateMixin { child: SingleChildScrollView( scrollDirection: Axis.vertical, child: Column( - crossAxisAlignment: CrossAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.end, children: [ // DrawerHeader( // child: Center( @@ -779,7 +925,7 @@ class _HomeScreenState extends State with TickerProviderStateMixin { // ), // ), Container( - //color: Colors.transparent, + color: EventsConstants.bgcolor, padding: EdgeInsets.only(top: 20, left: 5.0), ), @@ -805,37 +951,29 @@ class _HomeScreenState extends State with TickerProviderStateMixin { style: TextStyle(fontSize: 20), ), const Spacer(), - Align( - alignment: Alignment.topRight, - child: Container( - height: 30, - child: OutlinedButton( - onPressed: () { - print("&&&"); - print(provider.selectedTherapeutic); - if (provider.selectedTherapeutic.isNotEmpty) { - provider.OnFilters(); - } + // Align( + // alignment: Alignment.topRight, + // child: Container( + // height: 30, + // child: OutlinedButton( + // onPressed: () { - setState(() { - Navigator.pop(context); - }); - }, - child: Text( - 'Apply', - style: TextStyle( - // fontFamily: "SourceSerif", - fontSize: 14, - color: Colors.white, - fontWeight: FontWeight.normal), - ), - style: OutlinedButton.styleFrom( - shape: StadiumBorder(), - backgroundColor: Colors.green, - ), - ), - ), - ), + // }, + // child: Text( + // 'Apply', + // style: TextStyle( + // // fontFamily: "SourceSerif", + // fontSize: 14, + // color: Colors.white, + // fontWeight: FontWeight.normal), + // ), + // style: OutlinedButton.styleFrom( + // shape: StadiumBorder(), + // backgroundColor: Colors.green, + // ), + // ), + // ), + // ), SizedBox( width: 8.0, ), @@ -994,22 +1132,6 @@ class _HomeScreenState extends State with TickerProviderStateMixin { ], ), - // Center( - // child: SizedBox( - // width: 200, - // height: 40, - // child: ListTile( - // title: Container( - // color: Colors.blue, - // child: Center( - // child: Text( - // 'Apply', - // style: TextStyle(color: Colors.white), - // ))), - // onTap: () {}, - // ), - // ), - // ), Divider( height: 1, color: Colors.black, @@ -1044,72 +1166,68 @@ class _HomeScreenState extends State with TickerProviderStateMixin { ), ], ), - // Row( - // children: [ - // SizedBox( - // width: (MediaQuery.of(context).size.width * 0.99) / 2, - // child: ListTile( - // title: Text('City'), - // subtitle: customAutoCompletedropdown( - // ["Chicago", "Seattle", "San Deigo"]), - // onTap: () {}, - // ), - // ), - // SizedBox( - // width: (MediaQuery.of(context).size.width * 0.99) / 2, - // child: ListTile( - // title: Text('State'), - // subtitle: customAutoCompletedropdown( - // ["California", "Illinois", "New York"]), - // onTap: () {}, - // ), - // ), - // ], - // ), - // Row( - // children: [ - // SizedBox( - // width: (MediaQuery.of(context).size.width * 0.99) / 2, - // child: ListTile( - // title: Text('Country'), - // subtitle: customAutoCompletedropdown([ - // "Netherlands", - // "Switzerland", - // "United States" - // ]), - // onTap: () {}, - // ), - // ), - // SizedBox( - // width: (MediaQuery.of(context).size.width * 0.99) / 2, - // child: ListTile( - // title: Text('Number of Attendees'), - // subtitle: buildTextFieldWidget(), - // onTap: () {}, - // ), - // ), - // ], - // ), - // Row( - // children: [ - // SizedBox( - // width: (MediaQuery.of(context).size.width * 0.99) / 2, - // child: ListTile( - // title: Text('Client Attendees'), - // subtitle: buildTextFieldWidget(), - // onTap: () {}, - // ), - // ), - // SizedBox( - // width: (MediaQuery.of(context).size.width * 0.99) / 2, - // child: ListTile( - // title: Text('New Attendees'), - // subtitle: buildTextFieldWidget(), - // onTap: () {}, - // ), - // ), - // ], - // ), + ], + ), + SizedBox( + height: 20, + ), + Column( + children: [ + Align( + alignment: Alignment.bottomCenter, + child: SizedBox( + width: 200, + height: 50, + child: FloatingActionButton.extended( + backgroundColor: Colors.green, + onPressed: () { + print("&&&"); + print(provider.selectedTherapeutic); + if (provider.selectedTherapeutic.isNotEmpty) { + provider.OnFilters(); + } + pagingController.refresh(); + + setState(() { + Navigator.pop(context); + }); + }, + elevation: 0, + label: const Text("Apply Filters", + style: TextStyle( + color: Colors.white, + )), + ), + ), + ), + SizedBox( + height: 10, + ), + Align( + alignment: Alignment.bottomCenter, + child: SizedBox( + width: 200, + height: 50, + child: FloatingActionButton.extended( + backgroundColor: Colors.blue, + onPressed: () { + startDatetextEditingController.clear(); + endDatetextEditingController.clear(); + filter_enddate = ""; + filter_startdate = ""; + setState(() {}); + + pagingController.refresh(); + Navigator.pop(context); + }, + elevation: 0, + label: const Text("Clear Filters", + style: TextStyle( + color: Colors.white, + )), + ), + ), + ), ], ), ], @@ -1122,21 +1240,24 @@ class _HomeScreenState extends State with TickerProviderStateMixin { Widget buildDateWidget(TextEditingController controller, String hint) { return SizedBox( - width: isTablet ? 200 : MediaQuery.of(context).size.width, + //width: isTablet ? 200 : MediaQuery.of(context).size.width, height: isTablet ? 50 : 40, child: TextField( controller: controller, //editing controller of this TextField decoration: InputDecoration( - // border: OutlineInputBorder(), + border: OutlineInputBorder(), // border: OutlineInputBorder( // borderRadius: BorderRadius.circular(10.0), // ), // labelStyle: const TextStyle(fontSize: 16), - suffixIcon: const Icon(Icons.calendar_today), //icon of text field + suffixIcon: const Icon( + Icons.calendar_today, + size: 16, + ), //icon of text field // labelText: "Enter Date" //label text of field - hintText: hint, + // hintText: hint, ), readOnly: true, //set it true, so that user will not able to edit text @@ -1145,8 +1266,8 @@ class _HomeScreenState extends State with TickerProviderStateMixin { context: context, anchorPoint: Offset(20.0, 30.0), initialDate: DateTime.now(), - firstDate: DateTime( - 2000), //DateTime.now() - not to allow to choose before today. + firstDate: DateTime + .now(), //DateTime.now() - not to allow to choose before today. lastDate: DateTime(2101)); if (pickedDate != null) { @@ -1156,9 +1277,14 @@ class _HomeScreenState extends State with TickerProviderStateMixin { print( formattedDate); //formatted date output using intl package => 2021-03-16 //you can implement different kind of Date Format here according to your requirement - + if (hint == "Start Date") { + filter_startdate = formattedDate; + } else { + filter_enddate = formattedDate; + } setState(() { // output date to TextField value. + controller.text = formattedDate; }); } else { @@ -1316,6 +1442,35 @@ class _HomeScreenState extends State with TickerProviderStateMixin { ); } + Set selectedIndexes = {}; + Widget buildPaginationListView( + BuildContext context, EventsProvider provider) { + return RefreshIndicator( + onRefresh: () async => pagingController.refresh(), + child: PagedListView( + pagingController: pagingController, + builderDelegate: PagedChildBuilderDelegate( + itemBuilder: (BuildContext context, item, int index) { + final int count = provider.eventList.length > 10 + ? 10 + : provider.eventList.length; + final Animation animation = + Tween(begin: 0.0, end: 1.0).animate(CurvedAnimation( + parent: animationController!, + curve: Interval((1 / count) * index, 1.0, + curve: Curves.fastOutSlowIn))); + animationController?.forward(); + return _buildlistCard( + animation: animation, + animationController: animationController!, + provider: provider, + eventsList: provider.isSearch ? item : item, + ); + }, + )), + ); + } + Widget _buildlistCard( {required Animation? animation, required AnimationController? animationController, @@ -1421,8 +1576,7 @@ class _HomeScreenState extends State with TickerProviderStateMixin { ); } - buildCardView( - BuildContext context, EventsList event, EventsProvider provider) { + buildCardView(BuildContext context, dynamic event, EventsProvider provider) { double height = isTablet ? MediaQuery.of(context).size.height * 0.35 : MediaQuery.of(context).size.height * 0.65; @@ -1458,20 +1612,34 @@ class _HomeScreenState extends State with TickerProviderStateMixin { children: [ Align( alignment: FractionalOffset.topLeft, - child: Text( - event.name1 ?? "", - style: TextStyle( - // decoration: TextDecoration.underline, - // decorationColor: Colors.blue, - color: Colors.black, - fontWeight: FontWeight.bold, - fontSize: isTablet ? 22 : 16, - // fontFamily: "SourceSerif", + child: RichText( + text: TextSpan(children: [ + // WidgetSpan( + // child: Icon(Icons.bookmark, + // color: EventsConstants.blueColor, + // size: isTablet ? 14 : 18) + // // provider.ifOfflineExists(event.eventId!) + // // ? Icon(Icons.bookmark, + // // color: EventsConstants.blueColor, + // // size: isTablet ? 14 : 18) + // // : SizedBox.shrink(), + // ), + TextSpan( + text: event.name1 ?? "", + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, + color: Colors.black, + fontWeight: FontWeight.bold, + fontSize: isTablet ? 22 : 16, + + // fontFamily: "SourceSerif", + ), + // maxLines: isTablet ? 4 : 4, + // softWrap: true, + // overflow: TextOverflow.ellipsis, ), - maxLines: isTablet ? 4 : 4, - softWrap: true, - overflow: TextOverflow.ellipsis, - ), + ])), ), SizedBox( @@ -1496,11 +1664,12 @@ class _HomeScreenState extends State with TickerProviderStateMixin { child: Icon(Icons.calendar_month, size: 16), ), TextSpan( - text: ' ${event.start} to ${event.end}', + text: + ' ${CustomDateFormatter().formatYearDate(CustomDateFormatter().convertStringToDate(event.start))} to ${CustomDateFormatter().formatYearDate(CustomDateFormatter().convertStringToDate(event.end))}', style: TextStyle( color: Colors.black, //fontStyle: FontStyle.italic, - fontSize: isTablet ? 20 : 14), + fontSize: isTablet ? 20 : 12), ), ], ), @@ -1521,7 +1690,8 @@ class _HomeScreenState extends State with TickerProviderStateMixin { style: TextStyle( color: Colors.black, //fontStyle: FontStyle.italic, - fontSize: isTablet ? 20 : 14), + + fontSize: isTablet ? 20 : 12), ), ], ), @@ -1531,101 +1701,115 @@ class _HomeScreenState extends State with TickerProviderStateMixin { Align( alignment: FractionalOffset.bottomRight, - child: Column( - crossAxisAlignment: CrossAxisAlignment.end, - mainAxisAlignment: MainAxisAlignment.spaceBetween, + child: Row( children: [ - SizedBox( - width: 40, - height: 30, - child: FloatingActionButton.extended( - elevation: 1, - shape: CircleBorder(), - backgroundColor: EventsConstants.bgcolor, - onPressed: () async { - // String msg = await provider - // .addEventsToFavs(event.eventId!); + Column( + crossAxisAlignment: CrossAxisAlignment.end, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + provider.ifOfflineExists(event.eventId!) + ? Padding( + padding: EdgeInsets.only(right: 10), + child: Icon(Icons.bookmark, + color: EventsConstants.blueColor, + size: isTablet ? 14 : 18), + ) + : SizedBox.shrink(), + SizedBox( + width: 40, + height: 30, + child: FloatingActionButton.extended( + elevation: 1, + shape: CircleBorder(), + backgroundColor: EventsConstants.bgcolor, + onPressed: () async { + // event.isfav = !event.isfav; - setState(() { - event.isfav = !event.isfav; - - if (event.isfav) { - SnackBarWidget.displaySnackBar( - "Added to favorites!", context); - } else { - SnackBarWidget.displaySnackBar( - "Removed from favorites!", context); - } - }); - if (event.isfav) { - await provider.favsEventsData(event); - } else { - await provider.delateEventsData(event); - } - }, - label: AnimatedSwitcher( - duration: Duration(seconds: 1), - transitionBuilder: (Widget child, - Animation animation) => - FadeTransition( - opacity: animation, - child: SizeTransition( - child: child, - sizeFactor: animation, - axis: Axis.horizontal, - ), - ), - child: event.isfav - ? Column( - children: [ - Icon( - Icons.favorite, - color: Colors.red, - size: 14, + if (event.isfav) { + //If event is added to fav then unfollow + String msg = await provider + .removeEventsToFavs(event.eventId!); + SnackBarWidget.displaySnackBar( + "Removed from My Events!", context); + } else { + String msg = await provider + .addEventsToFavs(event.eventId!); + SnackBarWidget.displaySnackBar( + "Added to My Events", context); + } + pagingController.refresh(); + setState(() {}); + // if (event.isfav) { + // // await provider.favsEventsData(event); + // } else { + // // await provider.delateEventsData(event); + // } + }, + label: AnimatedSwitcher( + duration: Duration(seconds: 1), + transitionBuilder: (Widget child, + Animation animation) => + FadeTransition( + opacity: animation, + child: SizeTransition( + child: child, + sizeFactor: animation, + axis: Axis.horizontal, ), - ], - ) - : Icon( - Icons.favorite, - color: Colors.grey, - size: 14, - ))), - ), - SizedBox( - height: 2, - ), - event.isfav - ? RichText( - text: TextSpan( - children: [ - WidgetSpan( - child: Icon(Icons.check, - color: Colors.grey[600], - size: isTablet ? 14 : 12), + ), + child: event.eventUserInterest! + ? Column( + children: [ + Icon( + Icons.favorite, + color: Colors.red, + size: 14, + ), + ], + ) + : Icon( + Icons.favorite, + color: Colors.grey, + size: 14, + ))), + ), + SizedBox( + height: 2, + ), + event.eventUserInterest + ? RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Icon(Icons.check, + color: Colors.grey[600], + size: isTablet ? 14 : 10), + ), + TextSpan( + text: ' Following', + style: TextStyle( + color: Colors.grey[600], + fontSize: isTablet ? 14 : 10), + ), + ], ), - TextSpan( - text: ' following', - style: TextStyle( - color: Colors.grey[600], - fontSize: isTablet ? 14 : 12), - ), - ], - ), - ) - : Center( - child: RichText( - text: TextSpan( - children: [ - TextSpan( - text: 'follow ', - style: TextStyle( - color: Colors.grey[600], - fontSize: isTablet ? 14 : 12), + ) + : Center( + child: RichText( + text: TextSpan( + children: [ + TextSpan( + text: 'Follow ', + style: TextStyle( + color: Colors.grey[600], + fontSize: isTablet ? 14 : 10), + ), + ], ), - ], + ), ), - ), - ), + ], + ), ], ), ), diff --git a/lib/view/homeoffline.dart b/lib/view/homeoffline.dart new file mode 100644 index 0000000..68fc5c7 --- /dev/null +++ b/lib/view/homeoffline.dart @@ -0,0 +1,1890 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/rendering.dart'; +import 'package:flutter/widgets.dart'; +import 'package:konectar_events/model/eventsmodel.dart'; +import 'package:konectar_events/model/keywords_model.dart'; +import 'package:konectar_events/model/neweventsmodel.dart'; +import 'package:konectar_events/utils/apicall.dart'; +import 'package:konectar_events/utils/constants.dart'; +import 'package:konectar_events/utils/util.dart'; + +import 'package:konectar_events/view/eventsdetails.dart'; +import 'package:konectar_events/view/eventslist.dart'; +import 'package:konectar_events/view/eventslistoffline.dart'; +import 'package:konectar_events/view/eventstab.dart'; +import 'package:konectar_events/viewmodel/eventsprovider.dart'; +import 'package:konectar_events/viewmodel/offlineeventsprovider.dart'; +import 'package:konectar_events/widgets/autocompletetags_widget.dart'; +import 'package:konectar_events/widgets/customappbar.dart'; +import 'package:konectar_events/widgets/custombutton.dart'; +import 'package:konectar_events/widgets/customdropdown.dart'; + +import 'package:dropdown_button2/dropdown_button2.dart'; +import 'package:intl/intl.dart'; +import 'package:konectar_events/widgets/gridview.dart'; +import 'package:konectar_events/widgets/responsive_utils.dart'; +import 'package:konectar_events/widgets/snackbar.dart'; +import 'package:provider/provider.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; + +class OfflineHomeScreen extends StatefulWidget { + const OfflineHomeScreen({super.key}); + + @override + State createState() => _OfflineHomeScreenState(); +} + +class _OfflineHomeScreenState extends State + with TickerProviderStateMixin { + String? dvalue; + final TextEditingController textEditingController = TextEditingController(); + final TextEditingController startDatetextEditingController = + TextEditingController(); + final TextEditingController endDatetextEditingController = + TextEditingController(); + final TextEditingController datetextEditingController = + TextEditingController(); + final TextEditingController selecttextEditingController = + TextEditingController(); + final TextEditingController searchtextEditingController = + TextEditingController(); + Color? iconColor = Colors.blueGrey[300]; + IconData icon = Icons.favorite; + List selectedIndex = []; + bool selectedFav = false; + bool isExtended = false; + + final ScrollController _scrollController = ScrollController(); + final GlobalKey _scaffoldKey = GlobalKey(); + + AnimationController? animationController; + bool _isSearch = false; + List therapeuticList = []; + @override + void dispose() { + animationController?.dispose(); + super.dispose(); + } + + @override + void initState() { + animationController = AnimationController( + duration: const Duration(milliseconds: 1000), vsync: this); + WidgetsBinding.instance.addPostFrameCallback((timeStamp) { + init(); + }); + + super.initState(); + } + + init() async { + await Provider.of(context, listen: false) + .initFiltersData(); + await Provider.of(context, listen: false) + .getEvents(); + await Provider.of(context, listen: false) + .getAddedSessionNotes(); + + setState(() {}); + } + + @override + Widget build(BuildContext context) { + return Consumer( + builder: (BuildContext context, provider, Widget? child) { + // return SafeArea( + // top: false, + // child: Scaffold( + // appBar: CustomAppBar( + // title: "Events", + // backgroundcolor: Color.fromARGB(255, 0, 71, 132), + // ), + // // backgroundColor: const Color.fromARGB(255, 222, 237, 247), + // backgroundColor: Constants.bgcolor, + // // endDrawer: populateDrawer(provider),Color(0xf6f8fc) + // // backgroundColor:Color(0xf6f8fc), + // body: Padding( + // padding: const EdgeInsets.all(8.0), + // child: Column( + // children: [ + // Row( + // children: [ + // Expanded( + // child: Padding( + // padding: const EdgeInsets.only(left: 5.0), + // child: Container( + // padding: const EdgeInsets.all(20.0), + // decoration: BoxDecoration( + // borderRadius: BorderRadius.circular(30.0), + // //color: Color.fromARGB(179, 248, 238, 238), + // color: Colors.white, + // ), + // height: 60, + // child: Center( + // child: Expanded( + // child: TextField( + // textAlignVertical: TextAlignVertical.center, + // cursorHeight: 14.0, + // maxLines: 1, + // controller: + // selecttextEditingController, //editing controller of this TextField + // decoration: InputDecoration( + // // border: OutlineInputBorder(), + // hintText: 'Search Events', + + // enabledBorder: OutlineInputBorder( + // borderRadius: BorderRadius.circular(20.0), + // borderSide: const BorderSide( + // color: Colors.transparent, + // width: 0.0), + // ), + // focusedBorder: OutlineInputBorder( + // borderSide: const BorderSide( + // color: Colors.transparent, + // width: 0.0), + // ), + + // contentPadding: EdgeInsets.symmetric( + // vertical: 10.0, horizontal: 20.0), + // border: OutlineInputBorder( + // borderRadius: + // BorderRadius.circular(20.0), + // borderSide: + // BorderSide(color: Colors.yellow)), + // // prefixIcon: Icon( + // // Icons.search, + // // size: 16, + // // ), + // // suffixIcon: IconButton( + // // onPressed: () {}, + // // icon: Icon( + // // Icons.filter_list_alt, + // // size: 16, + // // ), + // // ), + + // hintStyle: const TextStyle(fontSize: 16), + // ), + // ), + // ), + // ), + // ), + // ), + // ), + // Padding( + // padding: const EdgeInsets.only(right: 5.0), + // child: Align( + // alignment: Alignment.topRight, + // child: IconButton( + // icon: Icon( + // Icons.sort_rounded, + // size: isTablet ? 24 : 20, + // ), + // onPressed: () { + // dialogBuilder(context, provider); + // // showModalBottomSheet( + // // context: context, + // // scrollControlDisabledMaxHeightRatio: 1.0, + // // isScrollControlled: true, + // // builder: (context) { + // // return DraggableScrollableSheet( + // // initialChildSize: 0.5, + // // minChildSize: 0.25, + // // maxChildSize: 0.75, + // // expand: true, + // // builder: (context, scrollController) { + // // return Container(); + // // }); + // // }); + // // return FractionallySizedBox( + // // heightFactor: 0.5, + // // child: populateDrawer(provider), + // // ); + // // }); + // }, + // ), + // ), + // ) + // ], + // ), + // buildListView(context, provider), + // // buildEventsGrid(context, provider), + // ], + // ), + // )), + // ); + return headerview(context, provider); + }); + } + + Widget headerview(BuildContext context, EventsOfflineProvider provider) { + // return SafeArea( + return Container( + child: Scaffold( + key: _scaffoldKey, + endDrawer: populateDrawer(provider), + appBar: AppBar( + automaticallyImplyLeading: false, + backgroundColor: EventsConstants.blueColor, + centerTitle: false, + title: _isSearch + ? Container( + height: 40, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(5.0)), + child: TextField( + controller: searchtextEditingController, + onChanged: (String txt) async { + if (txt.length >= 2) { + provider.OnSearch(txt); + } + if (txt.length < 2) { + await provider.onSearchReset(); + } + }, + decoration: InputDecoration( + fillColor: EventsConstants.blueColor, + contentPadding: EdgeInsets.symmetric(vertical: 9.0), + border: OutlineInputBorder(), + hintText: "Search for events...", + // labelText: ' Search', + prefixIcon: Icon( + Icons.search, + ), + ), + ), + ) + : Text( + "Events", + style: TextStyle(color: Colors.white), + ), + actions: [ + IconButton( + onPressed: () async { + await provider.onSearchReset(); + setState(() { + _isSearch = !_isSearch; + if (!_isSearch) { + searchtextEditingController.clear(); + } + }); + }, + icon: Icon( + _isSearch ? Icons.close : Icons.search, + color: Colors.white, + )) + ], + ), + body: Stack( + children: [ + InkWell( + splashColor: Colors.transparent, + focusColor: Colors.transparent, + highlightColor: Colors.transparent, + hoverColor: Colors.transparent, + onTap: () { + FocusScope.of(context).requestFocus(FocusNode()); + }, + child: NestedScrollView( + controller: _scrollController, + headerSliverBuilder: + (BuildContext context, bool innerBoxIsScrolled) { + return [ + // SliverList( + // delegate: SliverChildBuilderDelegate( + // (BuildContext context, int index) { + // return Container( + // color: Constants.blueColor, + // child: Column( + // children: [ + // // CustomAppBar( + // // title: "Events", + // // backgroundcolor: + // // Color.fromARGB(255, 0, 71, 132), + // // ), + // // getSearchBarUI(provider), + // ], + // ), + // ); + // }, childCount: 1), + // ), + SliverPersistentHeader( + pinned: true, + floating: true, + delegate: ContestTabHeader( + getFilterBarUI(provider), + ), + ), + ]; + }, + body: Container( + color: EventsConstants.bgcolor, + child: buildListView(context, provider)), + ), + ), + ], + ), + ), + // ), + ); + } + + Widget getFilterBarUI(EventsOfflineProvider provider) { + return Stack( + children: [ + Positioned( + top: 0, + left: 0, + right: 0, + child: Container( + height: 24, + decoration: BoxDecoration( + color: EventsConstants.bgcolor, + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.2), + offset: const Offset(0, -2), + blurRadius: 8.0), + ], + ), + ), + ), + Container( + color: EventsConstants.bgcolor, + child: Padding( + padding: + const EdgeInsets.only(left: 16, right: 16, top: 8, bottom: 4), + child: Row( + children: [ + // Container( + // height: 40, + // child: OutlinedButton( + // onPressed: () async { + // // setState(() { + // await provider.onSelectAll(); + // // }); + // setState(() {}); + // }, + // child: Text( + // 'All', + // style: TextStyle( + // // fontFamily: "SourceSerif", + // fontSize: 14, + // color: provider.isAllSelected + // ? Colors.white + // : Colors.black, + // fontWeight: FontWeight.normal), + // ), + // style: OutlinedButton.styleFrom( + // shape: StadiumBorder(), + // backgroundColor: + // provider.isAllSelected ? Colors.green : Colors.white, + // ), + // ), + // ), + // const SizedBox( + // width: 8, + // ), + // Container( + // height: 40, + // child: OutlinedButton( + // onPressed: () async { + // // setState(() { + // await provider.onSelectMy(); + // // }); + // setState(() {}); + // }, + // child: Text( + // 'My Events', + // style: TextStyle( + // // fontFamily: "SourceSerif", + // fontSize: 14, + // color: provider.isFavSeleted + // ? Colors.white + // : Colors.grey, + // fontWeight: FontWeight.normal), + // ), + // style: OutlinedButton.styleFrom( + // shape: StadiumBorder(), + // backgroundColor: + // provider.isFavSeleted ? Colors.green : Colors.white, + // ), + // ), + // ), + Container( + child: Wrap( + children: [ + Padding( + padding: const EdgeInsets.only(left: 8.0, right: 2.0), + child: CupertinoSwitch( + activeColor: Color.fromARGB(255, 0, 71, 132), + value: provider.isFavSeleted, + onChanged: (value) async { + provider.isFavSeleted = value; + if (provider.isFavSeleted) { + await provider.onSelectMy(); + } else { + await provider.onSelectAll(); + } + setState(() {}); + }, + ), + ), + Padding( + padding: const EdgeInsets.only(right: 8.0, top: 9.0), + child: !provider.isFavSeleted + ? const Text( + 'My Events', + style: + TextStyle(fontSize: 15, color: Colors.grey), + ) + : const Text( + 'My Events', + style: TextStyle( + fontSize: 15, + ), + ), + ) + ], + ), + ), + + const Spacer(), + // Expanded( + // child: Padding( + // padding: const EdgeInsets.all(8.0), + // child: Text( + // '530 hotels found', + // style: TextStyle( + // fontWeight: FontWeight.w100, + // fontSize: 16, + // ), + // ), + // ), + // ), + Material( + color: Colors.transparent, + child: InkWell( + focusColor: Colors.transparent, + highlightColor: Colors.transparent, + hoverColor: Colors.transparent, + splashColor: Colors.grey.withOpacity(0.2), + borderRadius: const BorderRadius.all( + Radius.circular(4.0), + ), + onTap: () { + FocusScope.of(context).requestFocus(FocusNode()); + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (BuildContext context) => + // populateDrawer(provider), + // fullscreenDialog: false), + // ); + _scaffoldKey.currentState?.openEndDrawer(); + }, + child: Padding( + padding: const EdgeInsets.only(left: 8), + child: Row( + children: [ + Text( + 'Filters', + style: TextStyle( + fontWeight: FontWeight.w100, + fontSize: 16, + ), + ), + Padding( + padding: const EdgeInsets.all(8.0), + child: Icon( + Icons.sort, + color: Color.fromARGB(255, 0, 71, 132), + ), + ), + ], + ), + ), + ), + ), + ], + ), + ), + ), + const Positioned( + top: 0, + left: 0, + right: 0, + child: Divider( + height: 1, + ), + ) + ], + ); + } + + Widget getSearchBarUI(EventsOfflineProvider provider) { + return Padding( + padding: const EdgeInsets.only(left: 16, right: 16, top: 8, bottom: 8), + child: Row( + children: [ + Padding( + padding: const EdgeInsets.only(right: 12, top: 8, bottom: 8), + child: Container( + decoration: BoxDecoration( + color: EventsConstants.bgcolor, + borderRadius: const BorderRadius.all( + Radius.circular(24.0), + ), + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.2), + offset: const Offset(0, 2), + blurRadius: 8.0), + ], + ), + child: Padding( + padding: + const EdgeInsets.only(left: 8, right: 8, top: 1, bottom: 1), + child: TextField( + onChanged: (String txt) async { + if (txt.length >= 3) { + provider.OnSearch(txt); + } + if (txt.length <= 3) { + await provider.onSearchReset(); + } + }, + style: const TextStyle( + fontSize: 14, + ), + cursorColor: Colors.blue, + controller: searchtextEditingController, + decoration: InputDecoration( + border: InputBorder.none, + hintText: ' Search for events...', + ), + ), + ), + ), + ), + Container( + // decoration: BoxDecoration( + // color: Constants.blueColor, + // borderRadius: const BorderRadius.all( + // Radius.circular(24.0), + // ), + // boxShadow: [ + // BoxShadow( + // color: Colors.grey.withOpacity(0.4), + // offset: const Offset(0, 2), + // blurRadius: 8.0), + // ], + // ), + child: Material( + color: Colors.transparent, + child: InkWell( + borderRadius: const BorderRadius.all( + Radius.circular(28.0), + ), + onTap: () async { + FocusScope.of(context).requestFocus(FocusNode()); + if (searchtextEditingController.text.length >= 3) + provider.OnSearch(searchtextEditingController.text); + else + await provider.onSearchReset(); + }, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Icon(FontAwesomeIcons.magnifyingGlass, + size: 18, color: Colors.white), + ), + ), + ), + ), + ], + ), + ); + } + + Widget getAppBarUI() { + return Container( + decoration: BoxDecoration( + color: Color.fromARGB(255, 0, 71, 132), + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.2), + offset: const Offset(0, 2), + blurRadius: 8.0), + ], + ), + child: Padding( + padding: EdgeInsets.only( + top: MediaQuery.of(context).padding.top, left: 8, right: 8), + child: Row( + children: [ + Container( + alignment: Alignment.centerLeft, + width: AppBar().preferredSize.height + 40, + height: AppBar().preferredSize.height, + // child: Material( + // color: Colors.transparent, + // child: InkWell( + // borderRadius: const BorderRadius.all( + // Radius.circular(32.0), + // ), + // onTap: () { + // Navigator.pop(context); + // }, + // child: Padding( + // padding: const EdgeInsets.all(8.0), + // child: Icon(Icons.arrow_back), + // ), + // ), + // ), + ), + Center( + child: Text( + 'Events', + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 22, + ), + ), + ), + Container( + width: AppBar().preferredSize.height + 40, + height: AppBar().preferredSize.height, + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Material( + color: Colors.transparent, + child: InkWell( + borderRadius: const BorderRadius.all( + Radius.circular(32.0), + ), + onTap: () {}, + child: Padding( + padding: const EdgeInsets.all(8.0), + child: Icon(Icons.favorite_border), + ), + ), + ), + Material( + color: Colors.transparent, + child: InkWell( + borderRadius: const BorderRadius.all( + Radius.circular(32.0), + ), + onTap: () {}, + child: Padding( + padding: const EdgeInsets.all(8.0), + child: Icon(Icons.local_activity), + ), + ), + ), + ], + ), + ) + ], + ), + ), + ); + } + + Future dialogBuilder( + BuildContext context, EventsOfflineProvider provider) { + return showDialog( + context: context, + builder: (BuildContext context) { + // return AlertDialog( + // title: const Text('Session Notes'), + return populateDrawer(provider); + // actions: [ + // TextButton( + // style: TextButton.styleFrom( + // textStyle: Theme.of(context).textTheme.labelLarge, + // ), + // child: const Text('Submit'), + // onPressed: () { + // Navigator.of(context).pop(); + // }, + // ), + // TextButton( + // style: TextButton.styleFrom( + // textStyle: Theme.of(context).textTheme.labelLarge, + // ), + // child: const Text('Cancel'), + // onPressed: () { + // Navigator.of(context).pop(); + // }, + // ), + // ], + // ); + }, + ); + } + + List sortEvents = ["All Events", "My Events"]; + Widget dropDown({ + Widget? underline, + Widget? icon, + TextStyle? style, + TextStyle? hintStyle, + Color? dropdownColor, + }) => + DropdownButton( + value: dvalue, + underline: underline, + icon: Align(alignment: Alignment.centerRight, child: icon), + dropdownColor: dropdownColor, + isExpanded: true, + style: TextStyle( + fontFamily: "SourceSerif", + color: Colors.black, + fontSize: 12.0, + ), + // iconEnabledColor: iconEnabledColor, + onChanged: (String? newValue) { + setState(() { + dvalue = newValue; + }); + }, + hint: Text("Select", style: hintStyle), + items: sortEvents + .map((session) => DropdownMenuItem( + value: session, child: Text(session))) + .toList()); + + populateDrawer(EventsOfflineProvider provider) { + return Theme( + data: Theme.of(context).copyWith(canvasColor: EventsConstants.bgcolor), + child: Container( + width: MediaQuery.of(context).size.width * 0.60, + color: EventsConstants.bgcolor, + child: Drawer( + child: SingleChildScrollView( + scrollDirection: Axis.vertical, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // DrawerHeader( + // child: Center( + // child: Text('Filters'), + // // child: Image.asset("assets/images/lf_logo.png", + // // height: 100, width: 100), + // ), + // ), + Container( + //color: Colors.transparent, + padding: EdgeInsets.only(top: 20, left: 5.0), + ), + + Padding( + padding: const EdgeInsets.only(left: 8.0), + child: Row( + children: [ + InkWell( + onTap: () { + Navigator.pop(context); + }, + child: Icon( + Icons.arrow_back_ios, + color: Colors.black, + size: isTablet ? 20 : 16, + ), + ), + SizedBox( + width: 8.0, + ), + Text( + 'Filters', + style: TextStyle(fontSize: 20), + ), + const Spacer(), + Align( + alignment: Alignment.topRight, + child: Container( + height: 30, + child: OutlinedButton( + onPressed: () { + print("&&&"); + print(provider.selectedTherapeutic); + if (provider.selectedTherapeutic.isNotEmpty) { + provider.OnFilters(); + } + + setState(() { + Navigator.pop(context); + }); + }, + child: Text( + 'Apply', + style: TextStyle( + // fontFamily: "SourceSerif", + fontSize: 14, + color: Colors.white, + fontWeight: FontWeight.normal), + ), + style: OutlinedButton.styleFrom( + shape: StadiumBorder(), + backgroundColor: Colors.green, + ), + ), + ), + ), + SizedBox( + width: 8.0, + ), + ], + ), + ), + Divider( + height: 7, + color: Colors.black, + ), + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('Search Scope'), + // subtitle: customAutoCompletedropdown(), + // onTap: () {}, + // ), + // ), + // StringAutoCompleteTags( + // initialTags: [ + // TagsData(name: "cancer screening ", id: "1"), + // TagsData(name: "cosmetic surgery", id: "2"), + // TagsData(name: "sleep medicine", id: "3"), + // TagsData(name: "ADHD", id: "4"), + // ], + // hintText: "Enter scope", + // ), + // Container( + // padding: const EdgeInsets.all(4.0), + // height: 40, + // width: double.infinity, + // decoration: BoxDecoration( + // border: Border.all(color: Colors.grey), + // borderRadius: BorderRadius.circular(8.0)), + // child: dropDown(underline: Container())), + Wrap( + //spacing: 4, + // runSpacing: 4, + // crossAxisAlignment: WrapCrossAlignment.start, + // runAlignment: WrapAlignment.spaceEvenly, + // alignment: WrapAlignment.spaceEvenly, + // direction: Axis.horizontal, + // mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width / 2 + : MediaQuery.of(context).size.width, + child: ListTile( + //title: Text('Search Scope'), + subtitle: StringAutoCompleteTags( + initialTags: provider.therapeuticList + .map((e) => + TagsData(id: e.id, name: e.therapeuticName)) + .toList(), + hintText: "Enter scope", + filtername: "scope", + getList: (TextEditingValue textEditingValue) { + List taglist = []; + taglist = provider.therapeuticList + .map((e) => + TagsData(id: e.id, name: e.therapeuticName)) + .toList(); + + if (textEditingValue.text == '') { + return const Iterable.empty(); + } + + if (textEditingValue.text.length > 1) { + return taglist.where((TagsData option) { + return option.name.contains( + textEditingValue.text.toLowerCase()); + }); + } + + return taglist.where((TagsData option) { + return option.name.contains( + textEditingValue.text.toLowerCase()); + }); + }, + ), + onTap: () {}, + selectedColor: Colors.white, + selectedTileColor: Colors.white, + ), + ), + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width / 2 + : MediaQuery.of(context).size.width, + child: ListTile( + // title: Text('Search Keyword'), + subtitle: StringAutoCompleteTags( + initialTags: provider.keywordList + .map((e) => TagsData(id: e.id, name: e.name)) + .toList(), + filtername: "keyword", + hintText: "Enter Keyword", + getList: (TextEditingValue textEditingValue) async { + if (textEditingValue.text == '') { + return const Iterable.empty(); + } + if (textEditingValue.text.length >= 3) { + List keywordlist = await provider + .getKeywordList(textEditingValue.text); + + return keywordlist + .map((e) => TagsData(id: e.id, name: e.name)) + .toList() + .where((TagsData option) { + return option.name.contains( + textEditingValue.text.toLowerCase()); + }); + } else { + return const Iterable.empty(); + } + }, + ), + onTap: () {}, + ), + ), + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width / 2 + : MediaQuery.of(context).size.width, + child: ListTile( + // title: Text('Search Speakers'), + subtitle: StringAutoCompleteTags( + initialTags: [ + TagsData(name: "Gavino Casu", id: "1"), + TagsData(name: "Calvin Marentz", id: "2"), + TagsData(name: "Vineet Bhandari", id: "3"), + TagsData(name: "Jose Travino", id: "4"), + ], + hintText: "Enter Speakers", + filtername: "speakers", + getList: (TextEditingValue textEditingValue) { + if (textEditingValue.text == '') { + return const Iterable.empty(); + } + + return [ + TagsData(name: "Gavino Casu", id: "1"), + TagsData(name: "Calvin Marentz", id: "2"), + TagsData(name: "Vineet Bhandari", id: "3"), + TagsData(name: "Jose Travino", id: "4"), + ].where((TagsData option) { + return option.name.contains( + textEditingValue.text.toLowerCase()); + }); + }, + ), + onTap: () {}, + ), + ), + ], + ), + + // Center( + // child: SizedBox( + // width: 200, + // height: 40, + // child: ListTile( + // title: Container( + // color: Colors.blue, + // child: Center( + // child: Text( + // 'Apply', + // style: TextStyle(color: Colors.white), + // ))), + // onTap: () {}, + // ), + // ), + // ), + Divider( + height: 1, + color: Colors.black, + ), + ExpansionTile( + shape: Border(), + title: Text("More"), + children: [ + Column( + children: [ + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width / 2 + : MediaQuery.of(context).size.width, + child: ListTile( + title: Text('Start Date'), + subtitle: buildDateWidget( + startDatetextEditingController, "Start Date"), + onTap: () {}, + ), + ), + SizedBox( + width: isTablet + ? MediaQuery.of(context).size.width / 2 + : MediaQuery.of(context).size.width, + child: ListTile( + title: Text('End Date'), + subtitle: buildDateWidget( + endDatetextEditingController, "End Date"), + onTap: () {}, + ), + ), + ], + ), + // Row( + // children: [ + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('City'), + // subtitle: customAutoCompletedropdown( + // ["Chicago", "Seattle", "San Deigo"]), + // onTap: () {}, + // ), + // ), + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('State'), + // subtitle: customAutoCompletedropdown( + // ["California", "Illinois", "New York"]), + // onTap: () {}, + // ), + // ), + // ], + // ), + // Row( + // children: [ + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('Country'), + // subtitle: customAutoCompletedropdown([ + // "Netherlands", + // "Switzerland", + // "United States" + // ]), + // onTap: () {}, + // ), + // ), + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('Number of Attendees'), + // subtitle: buildTextFieldWidget(), + // onTap: () {}, + // ), + // ), + // ], + // ), + // Row( + // children: [ + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('Client Attendees'), + // subtitle: buildTextFieldWidget(), + // onTap: () {}, + // ), + // ), + // SizedBox( + // width: (MediaQuery.of(context).size.width * 0.99) / 2, + // child: ListTile( + // title: Text('New Attendees'), + // subtitle: buildTextFieldWidget(), + // onTap: () {}, + // ), + // ), + // ], + // ), + ], + ), + ], + ), + ), + ), + ), + ); + } + + Widget buildDateWidget(TextEditingController controller, String hint) { + return SizedBox( + width: isTablet ? 200 : MediaQuery.of(context).size.width, + height: isTablet ? 50 : 40, + child: TextField( + controller: controller, + + //editing controller of this TextField + decoration: InputDecoration( + // border: OutlineInputBorder(), + // border: OutlineInputBorder( + // borderRadius: BorderRadius.circular(10.0), + // ), + // labelStyle: const TextStyle(fontSize: 16), + suffixIcon: const Icon(Icons.calendar_today), //icon of text field + // labelText: "Enter Date" //label text of field + hintText: hint, + ), + readOnly: true, //set it true, so that user will not able to edit text + + onTap: () async { + DateTime? pickedDate = await showDatePicker( + context: context, + anchorPoint: Offset(20.0, 30.0), + initialDate: DateTime.now(), + firstDate: DateTime( + 2000), //DateTime.now() - not to allow to choose before today. + lastDate: DateTime(2101)); + + if (pickedDate != null) { + print( + pickedDate); //pickedDate output format => 2021-03-10 00:00:00.000 + String formattedDate = DateFormat('yyyy-MM-dd').format(pickedDate); + print( + formattedDate); //formatted date output using intl package => 2021-03-16 + //you can implement different kind of Date Format here according to your requirement + + setState(() { + // output date to TextField value. + controller.text = formattedDate; + }); + } else { + print("Date is not selected"); + } + }, + ), + ); + } + + Widget buildTextFieldWidget() { + return SizedBox( + width: isTablet ? 200 : MediaQuery.of(context).size.width, + height: isTablet ? 50 : 40, + child: TextField( + controller: + selecttextEditingController, //editing controller of this TextField + decoration: InputDecoration( + // border: OutlineInputBorder(), + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(10.0), + ), + labelStyle: const TextStyle(fontSize: 16), + ), + ), + ); + } + + Widget customAutoCompletedropdown(List list) { + // sectionItem.value = list[0].name; + + // if (list.isEmpty) { + // print("list is empty"); + + //} + //InputClass selectedObj = list[0]; + return SizedBox( + width: isTablet ? 200 : MediaQuery.of(context).size.width, + height: isTablet ? 60 : 40, + child: DropdownButtonFormField2( + isExpanded: true, + decoration: InputDecoration( + // Add Horizontal padding using menuItemStyleData.padding so it matches + // the menu padding when button's width is not specified. + contentPadding: const EdgeInsets.symmetric(vertical: 5), + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(15), + ), + // Add more decoration.. + ), + hint: Text( + 'Select Item', + style: TextStyle( + fontSize: 14, + color: Theme.of(context).hintColor, + ), + ), + items: list + .map((item) => DropdownMenuItem( + value: item, + child: Text( + item, + style: const TextStyle( + fontSize: 14, + ), + ), + )) + .toList(), + value: list[0], + onSaved: (value) {}, + onChanged: (value) { + // setState(() { + }, + + buttonStyleData: const ButtonStyleData( + padding: EdgeInsets.symmetric(horizontal: 16), + height: 40, + width: 200, + ), + dropdownStyleData: const DropdownStyleData( + maxHeight: 200, + ), + menuItemStyleData: const MenuItemStyleData( + height: 40, + ), + dropdownSearchData: DropdownSearchData( + searchController: textEditingController, + searchInnerWidgetHeight: 50, + searchInnerWidget: Container( + height: 50, + padding: const EdgeInsets.only( + top: 8, + bottom: 4, + right: 8, + left: 8, + ), + child: TextFormField( + expands: true, + maxLines: null, + controller: textEditingController, + decoration: InputDecoration( + isDense: true, + contentPadding: const EdgeInsets.symmetric( + horizontal: 10, + vertical: 8, + ), + hintText: 'Search...', + hintStyle: const TextStyle(fontSize: 12), + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(8), + ), + ), + ), + ), + searchMatchFn: (item, searchValue) { + return item.value!.toString().contains(searchValue); + }, + ), + //This to clear the search value when you close the menu + onMenuStateChange: (isOpen) { + if (!isOpen) { + textEditingController.clear(); + } + }, + ), + ); + } + + Widget buildListView(BuildContext context, EventsOfflineProvider provider) { + return ListView.builder( + itemCount: provider.isSearch + ? provider.searchList.length + : provider.eventList.length, + padding: const EdgeInsets.only(top: 2), + shrinkWrap: true, + scrollDirection: Axis.vertical, + itemBuilder: (BuildContext context, int index) { + final int count = + provider.eventList.length > 10 ? 10 : provider.eventList.length; + final Animation animation = Tween(begin: 0.0, end: 1.0) + .animate(CurvedAnimation( + parent: animationController!, + curve: Interval((1 / count) * index, 1.0, + curve: Curves.fastOutSlowIn))); + animationController?.forward(); + return ListTile( + contentPadding: EdgeInsets.zero, + onLongPress: () {}, + leading: Checkbox( + onChanged: (value) => () {}, + value: true, + ), + title: _buildlistCard( + animation: animation, + index: index, + animationController: animationController!, + provider: provider, + eventsList: provider.isSearch + ? provider.searchList[index] + : provider.eventList[index], + ), + ); + }, + ); + } + + Widget _buildlistCard( + {required Animation? animation, + required AnimationController? animationController, + required EventsOfflineProvider provider, + required int index, + required EventsList eventsList}) { + return AnimatedBuilder( + animation: animationController!, + builder: (BuildContext context, Widget? child) { + return FadeTransition( + opacity: animation!, + child: Transform( + transform: Matrix4.translationValues( + 0.0, 50 * (1.0 - animation.value), 0.0), + child: Padding( + padding: const EdgeInsets.only( + left: 10, right: 10, top: 8, bottom: 12), + child: InkWell( + splashColor: Colors.transparent, + onTap: () { + // if (index == 0) { + // Navigator.of(context, rootNavigator: true) + // .push(MaterialPageRoute( + // builder: (context) => EventsListingScreen2( + // event: eventsList, + // ), + // )); + // } else { + Navigator.of(context, rootNavigator: true) + .push(MaterialPageRoute( + builder: (context) => EventsListingOfflineScreen( + event: eventsList, + ), + )); + //} + }, + child: Card( + elevation: 4, + surfaceTintColor: Colors.white, + // shadowColor: Constants.bgcolor, + child: buildCardView(context, eventsList, provider), + ), + )))); + }); + } + + Widget buildEventsGrid(BuildContext context, EventsOfflineProvider provider) { + final textTheme = Theme.of(context) + .textTheme + .apply(displayColor: Theme.of(context).colorScheme.onSurface); + + // Set the default number of columns to 3. + int columnsCount = 2; + + // Define the icon size based on the screen width + + // Use the ResponsiveUtils class to determine the device's screen size. + if (ResponsiveUtils.isMobile(context)) { + columnsCount = 1; + } else if (ResponsiveUtils.isDesktop(context)) { + columnsCount = 3; + } + + // Build the grid view using the number of columns. + return Expanded( + child: GridView.builder( + // Set padding and spacing between cards. + padding: const EdgeInsets.symmetric(vertical: 5), + scrollDirection: Axis.vertical, + + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( + // Set the number of columns based on the device's screen size. + crossAxisCount: columnsCount, + + // Set the aspect ratio of each card. + // childAspectRatio: isTablet ? 2 : 2, + // crossAxisSpacing: isTablet ? 30 : 20, + // mainAxisSpacing: isTablet ? 40 : 20, + + childAspectRatio: isTablet ? 2 : 2.2, + crossAxisSpacing: isTablet ? 30 : 1, + mainAxisSpacing: isTablet ? 40 : 4, + ), + // Set the number of items in the grid view. + itemCount: provider.eventList.length, + itemBuilder: (BuildContext context, int index) { + // Build each card in the grid view. + return InkWell( + onTap: () { + Navigator.of(context, rootNavigator: true) + .push(MaterialPageRoute( + builder: (context) => EventsTab( + event: provider.eventList[index], + ), + )); + // Navigator.of(context).push(new MaterialPageRoute( + // builder: (BuildContext context) { + // return new EventsTab(); + // }, + // fullscreenDialog: true)); + }, + child: Card( + elevation: 2, + shadowColor: EventsConstants.bgcolor, + child: buildCardView( + context, provider.eventList[index], provider))); + }, + // Set the grid view to shrink wrap its contents. + shrinkWrap: true, + // Disable scrolling in the grid view. + // physics: const NeverScrollableScrollPhysics(), + ), + ); + } + + buildCardView( + BuildContext context, EventsList event, EventsOfflineProvider provider) { + double height = isTablet + ? MediaQuery.of(context).size.height * 0.35 + : MediaQuery.of(context).size.height * 0.65; + return ConstrainedBox( + constraints: BoxConstraints.tightFor(), + child: Container( + decoration: BoxDecoration( + // color: Color.fromARGB(179, 248, 238, 238), + + color: Colors.white, + borderRadius: BorderRadius.all(Radius.circular(20))), + // height: MediaQuery.of(context).size.height * 0.2, + // height: double.minPositive, + padding: isTablet + ? EdgeInsets.symmetric(horizontal: 8.0, vertical: 2.0) + : EdgeInsets.symmetric(horizontal: 10.0, vertical: 10.0), + child: + // Column( + // crossAxisAlignment: CrossAxisAlignment.end, + // // mainAxisAlignment: MainAxisAlignment.spaceEvenly, + // children: [ + // SizedBox( + // height: isTablet ? 1 : 3, + // ), + // Container( + // // height: isTablet ? height * 0.50 : height * 0.30, + // padding: const EdgeInsets.only(top: 5.0), + // width: double.maxFinite, + // child: + Column( + // crossAxisAlignment: CrossAxisAlignment.end, + // mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + Align( + alignment: FractionalOffset.topLeft, + child: Text( + event.name1 ?? "", + style: TextStyle( + // decoration: TextDecoration.underline, + // decorationColor: Colors.blue, + color: Colors.black, + fontWeight: FontWeight.bold, + fontSize: isTablet ? 22 : 16, + // fontFamily: "SourceSerif", + ), + maxLines: isTablet ? 4 : 4, + softWrap: true, + overflow: TextOverflow.ellipsis, + ), + ), + + SizedBox( + height: 14, + ), + // Positioned( + // child: + Align( + alignment: FractionalOffset.bottomLeft, + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.end, + children: [ + RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Icon(Icons.calendar_month, size: 16), + ), + TextSpan( + text: ' ${event.start} to ${event.end}', + style: TextStyle( + color: Colors.black, + //fontStyle: FontStyle.italic, + fontSize: isTablet ? 20 : 14), + ), + ], + ), + ), + SizedBox( + height: 5.0, + ), + RichText( + textAlign: TextAlign.justify, + text: TextSpan( + children: [ + WidgetSpan( + child: Icon(Icons.location_on, size: 16), + ), + TextSpan( + text: + ' ${event.city != null ? "${event.city}, " : ""}${event.region != null ? "${event.region}, " : ""}${event.country != null ? "${event.country}" : ""}', + style: TextStyle( + color: Colors.black, + //fontStyle: FontStyle.italic, + fontSize: isTablet ? 20 : 14), + ), + ], + ), + ), + ], + ), + + Align( + alignment: FractionalOffset.bottomRight, + child: Column( + crossAxisAlignment: CrossAxisAlignment.end, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + SizedBox( + width: 40, + height: 30, + child: FloatingActionButton.extended( + elevation: 1, + shape: CircleBorder(), + backgroundColor: EventsConstants.bgcolor, + onPressed: () async { + // String msg = await provider + // .addEventsToFavs(event.eventId!); + + setState(() { + event.isfav = !event.isfav; + + if (event.isfav) { + SnackBarWidget.displaySnackBar( + "Added to favorites!", context); + } else { + SnackBarWidget.displaySnackBar( + "Removed from favorites!", context); + } + }); + if (event.isfav) { + await provider.favsEventsData(event); + } else { + await provider.delateEventsData(event); + } + }, + label: AnimatedSwitcher( + duration: Duration(seconds: 1), + transitionBuilder: (Widget child, + Animation animation) => + FadeTransition( + opacity: animation, + child: SizeTransition( + child: child, + sizeFactor: animation, + axis: Axis.horizontal, + ), + ), + child: event.isfav + ? Column( + children: [ + Icon( + Icons.favorite, + color: Colors.red, + size: 14, + ), + ], + ) + : Icon( + Icons.favorite, + color: Colors.grey, + size: 14, + ))), + ), + SizedBox( + height: 2, + ), + event.isfav + ? RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Icon(Icons.check, + color: Colors.grey[600], + size: isTablet ? 14 : 12), + ), + TextSpan( + text: ' following', + style: TextStyle( + color: Colors.grey[600], + fontSize: isTablet ? 14 : 12), + ), + ], + ), + ) + : Center( + child: RichText( + text: TextSpan( + children: [ + TextSpan( + text: 'follow ', + style: TextStyle( + color: Colors.grey[600], + fontSize: isTablet ? 14 : 12), + ), + ], + ), + ), + ), + ], + ), + ), + // Align( + // alignment: Alignment.bottomRight, + // child: SizedBox( + // height: 30, + // child: OutlinedButton( + // onPressed: () { + // setState(() { + // // selectedIndex.add(index); + // if (selectedIndex.isNotEmpty) { + // int count = selectedIndex + // .where( + // (element) => element == index, + // ) + // .length; + // if (count >= 1) { + // iconColor = Colors.grey; + // selectedFav = false; + // icon = Icons.favorite; + // selectedIndex.remove(index); + // } else { + // selectedIndex.add(index); + // if (selectedIndex.contains(index)) { + // iconColor = Colors.red; + // icon = Icons.favorite; + // selectedFav = true; + // } + // } + // } else { + // selectedIndex.add(index); + // if (selectedIndex.contains(index)) { + // iconColor = Colors.red; + // icon = Icons.favorite; + // selectedFav = true; + // } + // //} + // } + // }); + // }, + // child: Icon( + // icon, + // size: isTablet ? 20 : 18, + // color: selectedFav && selectedIndex.contains(index) + // ? iconColor + // : Colors.grey, + // ), + // style: OutlinedButton.styleFrom( + // shape: CircleBorder(), + // ), + // ), + // ), + // ), + ], + ), + ), + // ), + ], + ), + + // Image.asset( + // "assets/images/events2.jpg", + // fit: BoxFit.cover, + // ), + //), + // Divider( + // color: Colors.blueGrey, + // thickness: 2, + // height: 2, + // ), + + // SizedBox( + // height: 5, + // ), + // Text( + // 'Organizer: Hematology/Oncology Pharmacy Association (HOPA)', + // style: TextStyle( + // color: Colors.black, + // fontStyle: FontStyle.italic, + // fontFamily: "SourceSerif", + // fontSize: isTablet ? 18 : 14), + // maxLines: 2, + // softWrap: true, + // overflow: TextOverflow.ellipsis, + // ), + // SizedBox( + // // height: 100, + // child: Padding( + // padding: const EdgeInsets.symmetric(vertical: 4.0), + // child: Column( + // mainAxisAlignment: MainAxisAlignment.start, + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // Row( + // children: [], + // ), + + // RichText( + // text: TextSpan( + // children: [ + // WidgetSpan( + // child: SizedBox( + // width: 80, + // height: 18, + // child: WidgetStack( + // stackedWidgets: [ + // for (var n = 0; n < 5; n++) + // CircleAvatar( + // child: Icon( + // Icons.person, + // size: 14, + // color: Colors.blueGrey[300], + // )) + // ], + // positions: RestrictedPositions( + // maxCoverage: 0.3, + // minCoverage: 0.4, + // ), + // buildInfoWidget: (surplus) { + // return Center( + // child: Text( + // '+$surplus', + // style: Theme.of(context).textTheme.headline5, + // )); + // }, + // ), + // ), + // ), + // TextSpan( + // text: '5', + // style: TextStyle( + // color: Colors.black, + // fontFamily: "SourceSerif", + // fontSize: 16), + // ), + // TextSpan( + // text: ' attendees', + // style: TextStyle( + // color: Colors.black, + // fontFamily: "SourceSerif", + // fontSize: 14), + // ), + // ], + // ), + // ), + // RichText( + // text: TextSpan( + // children: [ + // WidgetSpan( + // child: SizedBox( + // width: 50, + // height: 18, + // child: WidgetStack( + // stackedWidgets: [ + // for (var n = 0; n < 3; n++) + // CircleAvatar( + // child: Icon( + // Icons.person, + // size: 14, + // color: Colors.blueGrey[300], + // )) + // ], + // positions: RestrictedPositions( + // maxCoverage: 0.3, + // minCoverage: 0.4, + // ), + // buildInfoWidget: (surplus) { + // return Center( + // child: Text( + // '+$surplus', + // style: Theme.of(context).textTheme.headline5, + // )); + // }, + // ), + // ), + // ), + // TextSpan( + // text: '3', + // style: TextStyle( + // color: Colors.black, + // fontFamily: "SourceSerif", + // fontSize: 16), + // ), + // TextSpan( + // text: ' client attendees', + // style: TextStyle( + // color: Colors.black, + // fontFamily: "SourceSerif", + // fontSize: 14), + // ), + // ], + // ), + // ), + // ], + // ), + // ), + // ), + // Row( + // children: [ + // SizedBox( + // height: 30, + // child: OutlinedButton( + // onPressed: () {}, + // child: Text('Add to My Events'), + // style: OutlinedButton.styleFrom( + // shape: StadiumBorder(), + // ), + // ), + // ), + // ], + // ) + // ], + // ), + ), + ); + } +} + +class ContestTabHeader extends SliverPersistentHeaderDelegate { + ContestTabHeader( + this.searchUI, + ); + final Widget searchUI; + + @override + Widget build( + BuildContext context, double shrinkOffset, bool overlapsContent) { + return Container(color: Colors.white, child: searchUI); + } + + @override + double get maxExtent => 52.0; + + @override + double get minExtent => 52.0; + + @override + bool shouldRebuild(SliverPersistentHeaderDelegate oldDelegate) { + return true; + } +} diff --git a/lib/view/insights.dart b/lib/view/insights.dart index 9264cee..13b763a 100644 --- a/lib/view/insights.dart +++ b/lib/view/insights.dart @@ -1,34 +1,23 @@ import 'dart:math'; import 'package:fl_chart/fl_chart.dart'; -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_scatter/flutter_scatter.dart'; import 'package:konectar_events/model/affiliationsmodel.dart'; -import 'package:konectar_events/model/eventsdetailmodel.dart'; -import 'package:konectar_events/model/neweventsmodel.dart'; import 'package:konectar_events/model/specialtymodel.dart'; import 'package:konectar_events/utils/constants.dart'; -import 'package:konectar_events/utils/util.dart'; -import 'package:konectar_events/viewmodel/eventsprovider.dart'; import 'package:konectar_events/viewmodel/hcpprofprovider.dart'; import 'package:konectar_events/widgets/chartline.dart'; -import 'package:konectar_events/widgets/customappbar.dart'; -import 'package:konectar_events/widgets/customeventsappbar.dart'; -import 'package:konectar_events/widgets/flutter_hashtags.dart'; import 'package:konectar_events/widgets/piechart.dart'; import 'package:konectar_events/widgets/word_cloud.dart'; import 'package:provider/provider.dart'; -import 'package:word_cloud/word_cloud_data.dart'; -import 'package:word_cloud/word_cloud_view.dart'; class EventsInsights extends StatefulWidget { //EventsList eventsdetail; String eventid; List kFlutterHashtags = []; List specialtyList = []; - Affiliations affiliations; + List affiliations; EventsInsights( {super.key, required this.eventid, @@ -67,10 +56,14 @@ class _EventsInsightsState extends State { final screenSize = MediaQuery.of(context).size; final ratio = screenSize.width / (screenSize.height / 2); List affCountList = []; - for (var obj in widget.affiliations.affiliationCount) { - affCountList.add(int.parse(obj)); + int maximum = 0; + if (widget.affiliations.isNotEmpty) { + for (var obj in widget.affiliations) { + affCountList.add(int.parse(obj.orgCount!)); + } + maximum = affCountList.reduce(max); } - int maximum = affCountList.reduce(max); + return Consumer( builder: (BuildContext context, provider, Widget? child) { List widgets = []; @@ -121,28 +114,31 @@ class _EventsInsightsState extends State { // height: 20, // ), labelWidget("Topics Discussed"), - Card( - surfaceTintColor: Colors.white, - child: Container( - padding: EdgeInsets.all(2.0), - margin: EdgeInsets.all(2.0), - height: screenSize.height / 2, - width: screenSize.width, - decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.all(Radius.circular(20))), - child: Center( - child: FittedBox( - child: Scatter( - fillGaps: true, - delegate: - ArchimedeanSpiralScatterDelegate(ratio: ratio), - children: widgets, + widgets.isNotEmpty + ? Card( + surfaceTintColor: Colors.white, + child: Container( + padding: EdgeInsets.all(2.0), + margin: EdgeInsets.all(2.0), + height: screenSize.height / 2, + width: screenSize.width, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: + BorderRadius.all(Radius.circular(20))), + child: Center( + child: FittedBox( + child: Scatter( + fillGaps: true, + delegate: ArchimedeanSpiralScatterDelegate( + ratio: ratio), + children: widgets, + ), + ), + ), ), - ), - ), - ), - ), + ) + : SizedBox.shrink(), SizedBox( height: 20, ), @@ -177,37 +173,38 @@ class _EventsInsightsState extends State { height: 20, ), labelWidget("Speaker counts by providers"), - Card( - surfaceTintColor: Colors.white, - child: Container( - padding: EdgeInsets.all(12.0), - // margin: EdgeInsets.all(10.0), - // height: screenSize.height / 3, - width: screenSize.width, - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(20)), - color: Colors.white, - ), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: List.generate( - widget.affiliations.affiliationCount.length, - (index) { - return ChartLine( - title: - widget.affiliations.affiliationNames[index], - number: int.parse( - widget.affiliations.affiliationCount[index]), - rate: int.parse(widget.affiliations - .affiliationCount[index]) == - maximum - ? 1 - : int.parse(widget.affiliations - .affiliationCount[index]) / - maximum); - }), - )), - ), + widget.affiliations.isNotEmpty + ? Card( + surfaceTintColor: Colors.white, + child: Container( + padding: EdgeInsets.all(12.0), + // margin: EdgeInsets.all(10.0), + // height: screenSize.height / 3, + width: screenSize.width, + decoration: BoxDecoration( + borderRadius: + BorderRadius.all(Radius.circular(20)), + color: Colors.white, + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: List.generate( + widget.affiliations.length, (index) { + return ChartLine( + title: widget.affiliations[index].orgName!, + number: int.parse( + widget.affiliations[index].orgCount!), + rate: int.parse(widget.affiliations[index] + .orgCount!) == + maximum + ? 1 + : int.parse(widget.affiliations[index] + .orgCount!) / + maximum); + }), + )), + ) + : SizedBox.shrink(), SizedBox( height: 20, ), diff --git a/lib/view/login.dart b/lib/view/login.dart index bbd276f..a56a1cb 100644 --- a/lib/view/login.dart +++ b/lib/view/login.dart @@ -381,7 +381,7 @@ class _LoginScreenState extends State { return isloggedout; }); }); - await SessionManager().setLoggedIn(isloggedin); + // await SessionManager().setLoggedIn(isloggedin); // UserData userData = // UserData(email: email, name: token, domainUrl: domain, secretkey: key); // await provider.saveUserData(userData); diff --git a/lib/view/login_components/care_view.dart b/lib/view/login_components/care_view.dart new file mode 100644 index 0000000..80d3eb2 --- /dev/null +++ b/lib/view/login_components/care_view.dart @@ -0,0 +1,120 @@ +import 'package:flutter/material.dart'; + +class CareView extends StatelessWidget { + final AnimationController animationController; + + const CareView({Key? key, required this.animationController}) + : super(key: key); + + @override + Widget build(BuildContext context) { + final _firstHalfAnimation = + Tween(begin: Offset(1, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.2, + 0.4, + curve: Curves.fastOutSlowIn, + ), + )); + final _secondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-1, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.4, + 0.6, + curve: Curves.fastOutSlowIn, + ), + )); + final _relaxFirstHalfAnimation = + Tween(begin: Offset(2, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.2, + 0.4, + curve: Curves.fastOutSlowIn, + ), + )); + final _relaxSecondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-2, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.4, + 0.6, + curve: Curves.fastOutSlowIn, + ), + )); + + final _imageFirstHalfAnimation = + Tween(begin: Offset(4, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.2, + 0.4, + curve: Curves.fastOutSlowIn, + ), + )); + final _imageSecondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-4, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.4, + 0.6, + curve: Curves.fastOutSlowIn, + ), + )); + + return SlideTransition( + position: _firstHalfAnimation, + child: SlideTransition( + position: _secondHalfAnimation, + child: Padding( + padding: const EdgeInsets.only(bottom: 100), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SlideTransition( + position: _relaxFirstHalfAnimation, + child: SlideTransition( + position: _relaxSecondHalfAnimation, + child: Text( + "Track Events Everywhere", + style: + TextStyle(fontSize: 26.0, fontWeight: FontWeight.bold), + ), + ), + ), + Padding( + padding: + EdgeInsets.only(left: 64, right: 64, bottom: 16, top: 16), + child: Text( + "Available on your phone,tablet and laptop", + textAlign: TextAlign.center, + ), + ), + SlideTransition( + position: _imageFirstHalfAnimation, + child: SlideTransition( + position: _imageSecondHalfAnimation, + child: Container( + constraints: BoxConstraints(maxWidth: 350, maxHeight: 250), + child: Image.asset( + 'assets/introduction_animation/events3.jpg', + fit: BoxFit.contain, + ), + ), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/view/login_components/center_next_button.dart b/lib/view/login_components/center_next_button.dart new file mode 100644 index 0000000..9d9cc7f --- /dev/null +++ b/lib/view/login_components/center_next_button.dart @@ -0,0 +1,202 @@ +import 'package:animations/animations.dart'; +import 'package:flutter/material.dart'; + +class CenterNextButton extends StatelessWidget { + final AnimationController animationController; + final VoidCallback onNextClick; + const CenterNextButton( + {Key? key, required this.animationController, required this.onNextClick}) + : super(key: key); + + @override + Widget build(BuildContext context) { + final _topMoveAnimation = + Tween(begin: Offset(0, 5), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.0, + 0.2, + curve: Curves.fastOutSlowIn, + ), + )); + final _signUpMoveAnimation = + Tween(begin: 0, end: 1.0).animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + final _loginTextMoveAnimation = + Tween(begin: Offset(0, 5), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + + return Padding( + padding: + EdgeInsets.only(bottom: 16 + MediaQuery.of(context).padding.bottom), + child: Column( + mainAxisAlignment: MainAxisAlignment.end, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + SlideTransition( + position: _topMoveAnimation, + child: AnimatedBuilder( + animation: animationController, + builder: (context, child) => AnimatedOpacity( + opacity: animationController.value >= 0.2 && + animationController.value <= 0.6 + ? 1 + : 0, + duration: Duration(milliseconds: 480), + child: _pageView(), + ), + ), + ), + SlideTransition( + position: _topMoveAnimation, + child: AnimatedBuilder( + animation: animationController, + builder: (context, child) => Padding( + padding: EdgeInsets.only( + bottom: 38 - (38 * _signUpMoveAnimation.value)), + child: Container( + height: 58, + width: 58 + (200 * _signUpMoveAnimation.value), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular( + 8 + 32 * (1 - _signUpMoveAnimation.value)), + color: Color(0xff132137), + ), + child: PageTransitionSwitcher( + duration: Duration(milliseconds: 480), + reverse: _signUpMoveAnimation.value < 0.7, + transitionBuilder: ( + Widget child, + Animation animation, + Animation secondaryAnimation, + ) { + return SharedAxisTransition( + fillColor: Colors.transparent, + child: child, + animation: animation, + secondaryAnimation: secondaryAnimation, + transitionType: SharedAxisTransitionType.vertical, + ); + }, + child: _signUpMoveAnimation.value > 0.7 + ? InkWell( + key: ValueKey('Sign Up button'), + onTap: onNextClick, + child: Padding( + padding: EdgeInsets.only(left: 16.0, right: 16.0), + child: Row( + mainAxisAlignment: + MainAxisAlignment.spaceBetween, + children: [ + Text( + 'Sign In', + style: TextStyle( + color: Colors.white, + fontSize: 18, + fontWeight: FontWeight.w500, + ), + ), + Icon(Icons.arrow_forward_rounded, + color: Colors.white), + ], + ), + ), + ) + : InkWell( + key: ValueKey('next button'), + onTap: onNextClick, + child: Padding( + padding: EdgeInsets.all(16.0), + child: Icon(Icons.arrow_forward_ios_rounded, + color: Colors.white), + ), + ), + ), + ), + ), + ), + ), + Padding( + padding: const EdgeInsets.only(top: 8), + child: SlideTransition( + position: _loginTextMoveAnimation, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Already have an account? ', + style: TextStyle( + color: Colors.grey, + fontSize: 14, + fontWeight: FontWeight.normal, + ), + ), + Text( + 'Login', + style: TextStyle( + color: Color(0xff132137), + fontSize: 16, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + ), + ], + ), + ); + } + + Widget _pageView() { + int _selectedIndex = 0; + + if (animationController.value >= 0.7) { + _selectedIndex = 3; + } else if (animationController.value >= 0.5) { + _selectedIndex = 2; + } else if (animationController.value >= 0.3) { + _selectedIndex = 1; + } else if (animationController.value >= 0.1) { + _selectedIndex = 0; + } + + return Padding( + padding: const EdgeInsets.only(bottom: 16), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + for (var i = 0; i < 4; i++) + Padding( + padding: const EdgeInsets.all(4), + child: AnimatedContainer( + duration: Duration(milliseconds: 480), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(32), + color: _selectedIndex == i + ? Color(0xff132137) + : Color(0xffE3E4E4), + ), + width: 10, + height: 10, + ), + ) + ], + ), + ); + } +} diff --git a/lib/view/login_components/homescreen.dart b/lib/view/login_components/homescreen.dart new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/view/login_components/homescreen.dart @@ -0,0 +1 @@ + diff --git a/lib/view/login_components/intropaging.dart b/lib/view/login_components/intropaging.dart new file mode 100644 index 0000000..89cbcef --- /dev/null +++ b/lib/view/login_components/intropaging.dart @@ -0,0 +1,137 @@ +import 'package:flutter/material.dart'; +import 'package:konectar_events/utils/constants.dart'; +import 'package:konectar_events/view/login.dart'; +import 'package:konectar_events/view/login_components/care_view.dart'; +import 'package:konectar_events/view/login_components/center_next_button.dart'; +import 'package:konectar_events/view/login_components/mood_diary_vew.dart'; +import 'package:konectar_events/view/login_components/relax_view.dart'; +import 'package:konectar_events/view/login_components/splash_view.dart'; +import 'package:konectar_events/view/login_components/top_back_skip_view.dart'; +import 'package:konectar_events/view/login_components/welcome_view.dart'; +import 'package:konectar_events/view/navigation_home_screen.dart'; + +class IntroductionAnimationScreen extends StatefulWidget { + const IntroductionAnimationScreen({Key? key}) : super(key: key); + + @override + _IntroductionAnimationScreenState createState() => + _IntroductionAnimationScreenState(); +} + +class _IntroductionAnimationScreenState + extends State with TickerProviderStateMixin { + AnimationController? _animationController; + + @override + void initState() { + _animationController = + AnimationController(vsync: this, duration: Duration(seconds: 8)); + _animationController?.animateTo(0.2); + super.initState(); + } + + @override + void dispose() { + _animationController?.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + print(_animationController?.value); + return Scaffold( + appBar: AppBar( + backgroundColor: EventsConstants.bgcolor, + title: Container( + // constraints: BoxConstraints(maxWidth: 350, maxHeight: 350), + child: Image.asset( + 'assets/introduction_animation/introduction_image1.png', + fit: BoxFit.contain, + ), + ), + centerTitle: true, + ), + backgroundColor: EventsConstants.bgcolor, + body: ClipRect( + child: Stack( + children: [ + // SplashView( + // animationController: _animationController!, + // ), + CareView( + animationController: _animationController!, + ), + RelaxView( + animationController: _animationController!, + ), + CareView( + animationController: _animationController!, + ), + // MoodDiaryVew( + // animationController: _animationController!, + // ), + WelcomeView( + animationController: _animationController!, + ), + TopBackSkipView( + onBackClick: _onBackClick, + onSkipClick: _onSkipClick, + animationController: _animationController!, + ), + CenterNextButton( + animationController: _animationController!, + onNextClick: _onNextClick, + ), + ], + ), + ), + ); + } + + void _onSkipClick() { + _animationController?.animateTo(0.8, + duration: Duration(milliseconds: 1200)); + } + + void _onBackClick() { + // if (_animationController!.value >= 0 && + // _animationController!.value <= 0.2) { + // _animationController?.animateTo(0.0); + // } else + if (_animationController!.value > 0.2 && + _animationController!.value <= 0.4) { + _animationController?.animateTo(0.2); + } else if (_animationController!.value > 0.4 && + _animationController!.value <= 0.6) { + _animationController?.animateTo(0.4); + } else if (_animationController!.value > 0.6 && + _animationController!.value <= 0.8) { + _animationController?.animateTo(0.6); + } else if (_animationController!.value > 0.8 && + _animationController!.value <= 1.0) { + _animationController?.animateTo(0.8); + } + } + + void _onNextClick() { + if (_animationController!.value >= 0 && + _animationController!.value <= 0.2) { + _animationController?.animateTo(0.4); + } else if (_animationController!.value > 0.2 && + _animationController!.value <= 0.4) { + _animationController?.animateTo(0.6); + } else if (_animationController!.value > 0.4 && + _animationController!.value <= 0.6) { + _animationController?.animateTo(0.8); + } else if (_animationController!.value > 0.6 && + _animationController!.value <= 0.8) { + _signUpClick(); + } + } + + void _signUpClick() { + Navigator.of(context).pushReplacement( + MaterialPageRoute(builder: (context) => NavigationHomeScreen()), + ); + } +} diff --git a/lib/view/login_components/mood_diary_vew.dart b/lib/view/login_components/mood_diary_vew.dart new file mode 100644 index 0000000..207657c --- /dev/null +++ b/lib/view/login_components/mood_diary_vew.dart @@ -0,0 +1,119 @@ +import 'package:flutter/material.dart'; + +class MoodDiaryVew extends StatelessWidget { + final AnimationController animationController; + + const MoodDiaryVew({Key? key, required this.animationController}) + : super(key: key); + + @override + Widget build(BuildContext context) { + final _firstHalfAnimation = + Tween(begin: Offset(1, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.4, + 0.6, + curve: Curves.fastOutSlowIn, + ), + )); + final _secondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-1, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + + final _moodFirstHalfAnimation = + Tween(begin: Offset(2, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.4, + 0.6, + curve: Curves.fastOutSlowIn, + ), + )); + final _moodSecondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-2, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + final _imageFirstHalfAnimation = + Tween(begin: Offset(4, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.4, + 0.6, + curve: Curves.fastOutSlowIn, + ), + )); + final _imageSecondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-4, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + + return SlideTransition( + position: _firstHalfAnimation, + child: SlideTransition( + position: _secondHalfAnimation, + child: Padding( + padding: const EdgeInsets.only(bottom: 100), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "Mood Dairy", + style: TextStyle(fontSize: 26.0, fontWeight: FontWeight.bold), + ), + SlideTransition( + position: _moodFirstHalfAnimation, + child: SlideTransition( + position: _moodSecondHalfAnimation, + child: Padding( + padding: EdgeInsets.only( + left: 64, right: 64, top: 16, bottom: 16), + child: Text( + "Lorem ipsum dolor sit amet,consectetur adipiscing elit,sed do eiusmod tempor incididunt ut labore", + textAlign: TextAlign.center, + ), + ), + ), + ), + SlideTransition( + position: _imageFirstHalfAnimation, + child: SlideTransition( + position: _imageSecondHalfAnimation, + child: Container( + constraints: BoxConstraints(maxWidth: 350, maxHeight: 250), + child: Image.asset( + 'assets/introduction_animation/mood_dairy_image.png', + fit: BoxFit.contain, + ), + ), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/view/login_components/relax_view.dart b/lib/view/login_components/relax_view.dart new file mode 100644 index 0000000..fa7a796 --- /dev/null +++ b/lib/view/login_components/relax_view.dart @@ -0,0 +1,120 @@ +import 'package:flutter/material.dart'; + +class RelaxView extends StatelessWidget { + final AnimationController animationController; + + const RelaxView({Key? key, required this.animationController}) + : super(key: key); + + @override + Widget build(BuildContext context) { + final _firstHalfAnimation = + Tween(begin: Offset(0, 1), end: Offset(0, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.0, + 0.2, + curve: Curves.fastOutSlowIn, + ), + ), + ); + final _secondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-1, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.2, + 0.4, + curve: Curves.fastOutSlowIn, + ), + ), + ); + final _textAnimation = + Tween(begin: Offset(0, 0), end: Offset(-2, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.2, + 0.4, + curve: Curves.fastOutSlowIn, + ), + ), + ); + final _imageAnimation = + Tween(begin: Offset(0, 0), end: Offset(-4, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.2, + 0.4, + curve: Curves.fastOutSlowIn, + ), + ), + ); + + final _relaxAnimation = + Tween(begin: Offset(0, -2), end: Offset(0, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.0, + 0.2, + curve: Curves.fastOutSlowIn, + ), + ), + ); + return SlideTransition( + position: _firstHalfAnimation, + child: SlideTransition( + position: _secondHalfAnimation, + child: Padding( + padding: const EdgeInsets.only(bottom: 100), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + // SlideTransition( + // position: _relaxAnimation, + // child: Container( + // constraints: BoxConstraints(maxWidth: 350, maxHeight: 350), + // child: Image.asset( + // 'assets/introduction_animation/introduction_image1.png', + // fit: BoxFit.contain, + // ), + // ), + // ), + SlideTransition( + position: _relaxAnimation, + child: Text( + "There's a plan for every event ", + style: TextStyle(fontSize: 26.0, fontWeight: FontWeight.bold), + ), + ), + SlideTransition( + position: _textAnimation, + child: Padding( + padding: + EdgeInsets.only(left: 64, right: 64, top: 16, bottom: 16), + child: Text( + "Single solution for more impactful event experience", + textAlign: TextAlign.center, + ), + ), + ), + SlideTransition( + position: _imageAnimation, + child: Container( + constraints: BoxConstraints(maxWidth: 350, maxHeight: 250), + child: Image.asset( + 'assets/introduction_animation/events3.jpg', + fit: BoxFit.contain, + ), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/view/login_components/slidesview.dart b/lib/view/login_components/slidesview.dart new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/view/login_components/slidesview.dart @@ -0,0 +1 @@ + diff --git a/lib/view/login_components/splash_view.dart b/lib/view/login_components/splash_view.dart new file mode 100644 index 0000000..db5d6f4 --- /dev/null +++ b/lib/view/login_components/splash_view.dart @@ -0,0 +1,105 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; + +class SplashView extends StatefulWidget { + final AnimationController animationController; + + const SplashView({Key? key, required this.animationController}) + : super(key: key); + + @override + _SplashViewState createState() => _SplashViewState(); +} + +class _SplashViewState extends State { + @override + Widget build(BuildContext context) { + final _introductionanimation = + Tween(begin: Offset(0, 0), end: Offset(0.0, -1.0)) + .animate(CurvedAnimation( + parent: widget.animationController, + curve: Interval( + 0.0, + 0.2, + curve: Curves.fastOutSlowIn, + ), + )); + return SlideTransition( + position: _introductionanimation, + child: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.only(bottom: 100.0), + child: Column( + children: [ + SizedBox( + height: 40, + ), + // Padding( + // padding: EdgeInsets.all(8.0), + // child: SizedBox( + // //width: MediaQuery.of(context).size.width, + // child: Image.asset( + // 'assets/introduction_animation/introduction_image1.png', + // fit: BoxFit.cover, + // ), + // ), + // ), + SizedBox( + height: 80, + ), + Padding( + padding: EdgeInsets.only(top: 8.0, bottom: 8.0), + child: Text( + "Track Events Everywhere", + style: TextStyle(fontSize: 25.0, fontWeight: FontWeight.bold), + ), + ), + Align( + alignment: Alignment.bottomCenter, + child: Padding( + padding: EdgeInsets.only(left: 64, right: 64), + child: Text( + "Available on your phone,tablet and laptop", + textAlign: TextAlign.center, + ), + ), + ), + SizedBox( + height: 100, + ), + Padding( + padding: EdgeInsets.only( + bottom: MediaQuery.of(context).padding.bottom), + child: InkWell( + onTap: () { + widget.animationController.animateTo(0.2); + }, + child: Container( + height: 58, + padding: EdgeInsets.only( + left: 56.0, + right: 56.0, + top: 16, + bottom: 16, + ), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(38.0), + color: Color(0xff132137), + ), + child: Text( + "Let's begin", + style: TextStyle( + fontSize: 18, + color: Colors.white, + ), + ), + ), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/view/login_components/top_back_skip_view.dart b/lib/view/login_components/top_back_skip_view.dart new file mode 100644 index 0000000..5afde6f --- /dev/null +++ b/lib/view/login_components/top_back_skip_view.dart @@ -0,0 +1,81 @@ +import 'package:flutter/material.dart'; + +class TopBackSkipView extends StatelessWidget { + final AnimationController animationController; + final VoidCallback onBackClick; + final VoidCallback onSkipClick; + + const TopBackSkipView({ + Key? key, + required this.onBackClick, + required this.onSkipClick, + required this.animationController, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + final _animation = + Tween(begin: Offset(0, -1), end: Offset(0.0, 0.0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.0, + 0.2, + curve: Curves.fastOutSlowIn, + ), + )); + + // final _backAnimation = + // Tween(begin: Offset(0, 0), end: Offset(-2, 0)) + // .animate(CurvedAnimation( + // parent: animationController, + // curve: Interval( + // 0.6, + // 0.8, + // curve: Curves.fastOutSlowIn, + // ), + // )); + final _skipAnimation = Tween(begin: Offset(0, 0), end: Offset(2, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + + return SlideTransition( + position: _animation, + child: Padding( + padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top), + child: Container( + height: 58, + child: Padding( + padding: const EdgeInsets.only(left: 8, right: 16), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + // SlideTransition( + // position: _backAnimation, + // child: + IconButton( + onPressed: onBackClick, + icon: Icon(Icons.arrow_back_ios_new_rounded), + // ), + ), + SlideTransition( + position: _skipAnimation, + child: IconButton( + onPressed: onSkipClick, + icon: Text('Skip'), + ), + ), + ], + ), + ), + ), + ), + ); + } +} diff --git a/lib/view/login_components/welcome_view.dart b/lib/view/login_components/welcome_view.dart new file mode 100644 index 0000000..649ed25 --- /dev/null +++ b/lib/view/login_components/welcome_view.dart @@ -0,0 +1,97 @@ +import 'package:flutter/material.dart'; + +class WelcomeView extends StatelessWidget { + final AnimationController animationController; + const WelcomeView({Key? key, required this.animationController}) + : super(key: key); + + @override + Widget build(BuildContext context) { + final _firstHalfAnimation = + Tween(begin: Offset(1, 0), end: Offset(0, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + ), + ); + final _secondHalfAnimation = + Tween(begin: Offset(0, 0), end: Offset(-1, 0)).animate( + CurvedAnimation( + parent: animationController, + curve: Interval( + 0.8, + 1.0, + curve: Curves.fastOutSlowIn, + ), + ), + ); + + final _welcomeFirstHalfAnimation = + Tween(begin: Offset(2, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + + final _welcomeImageAnimation = + Tween(begin: Offset(4, 0), end: Offset(0, 0)) + .animate(CurvedAnimation( + parent: animationController, + curve: Interval( + 0.6, + 0.8, + curve: Curves.fastOutSlowIn, + ), + )); + return SlideTransition( + position: _firstHalfAnimation, + child: SlideTransition( + position: _secondHalfAnimation, + child: Padding( + padding: const EdgeInsets.only(bottom: 100), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + // SlideTransition( + // position: _welcomeFirstHalfAnimation, + // child: Container( + // constraints: BoxConstraints(maxWidth: 350, maxHeight: 350), + // child: Image.asset( + // 'assets/introduction_animation/introduction_image1.png', + // fit: BoxFit.contain, + // ), + // ), + // ), + SizedBox( + height: 50, + ), + SlideTransition( + position: _welcomeFirstHalfAnimation, + child: Text( + "Welcome", + style: TextStyle(fontSize: 25.0, fontWeight: FontWeight.bold), + ), + ), + Padding( + padding: + EdgeInsets.only(left: 64, right: 64, top: 16, bottom: 16), + child: Text( + "HCP Management Platform Aissel's Cutting-Edge Product Solutions", + textAlign: TextAlign.center, + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/view/navigation_home_screen.dart b/lib/view/navigation_home_screen.dart index 52c1068..77ba8b6 100644 --- a/lib/view/navigation_home_screen.dart +++ b/lib/view/navigation_home_screen.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:konectar_events/contacts_module/ui_screen/new_contacts.dart'; import 'package:konectar_events/utils/app_theme.dart'; +import 'package:konectar_events/view/helpdesk.dart'; import 'package:konectar_events/view/home.dart'; import 'package:konectar_events/widgets/drawerusercontroller.dart'; import 'package:konectar_events/widgets/home_drawer.dart'; @@ -61,7 +62,7 @@ class _NavigationHomeScreenState extends State { break; case DrawerIndex.FeedBack: setState(() { - screenView = HomeScreen(); + screenView = HelpDeskScreen(); }); break; case DrawerIndex.Invite: diff --git a/lib/view/profileview.dart b/lib/view/profileview.dart index 8cc0a79..bc1b9fc 100644 --- a/lib/view/profileview.dart +++ b/lib/view/profileview.dart @@ -6,7 +6,16 @@ import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:flutter/widgets.dart'; import 'package:intl/intl.dart'; +import 'package:konectar_events/contacts_module/model_class/speaker.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/configprovider.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/interactionlistscreen.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/interactionprovider.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/new_dynamicform.dart'; +import 'package:konectar_events/contacts_module/ui_screen/interactionform/viewinteractionprovider.dart'; +import 'package:konectar_events/contacts_module/ui_screen/new_editinteraction.dart'; +import 'package:konectar_events/contacts_module/ui_screen/new_viewinteraction.dart'; import 'package:konectar_events/model/eventsdetailmodel.dart'; +import 'package:konectar_events/model/eventspeakers.dart'; import 'package:konectar_events/model/sessionnotesmodel.dart'; import 'package:konectar_events/utils/constants.dart'; import 'package:konectar_events/utils/dateformater.dart'; @@ -16,7 +25,7 @@ import 'package:konectar_events/widgets/customdropdown.dart'; import 'package:provider/provider.dart'; class HCPProfileScreen extends StatefulWidget { - Eventsdetail eventsdetail; + SpeakersList eventsdetail; String eventid; String title; HCPProfileScreen( @@ -151,8 +160,19 @@ class _HCPProfileScreenState extends State { init() async { await Provider.of(context, listen: false) .getSessionData(); - await Provider.of(context, listen: false) - .getCounts(widget.eventsdetail); + // await Provider.of(context, listen: false) + // .getCounts(widget.eventsdetail); + + await Provider.of(context, listen: false) + .initConfigData(); + + await Provider.of(context, listen: false).getRecords(); + String formname = Provider.of(context, listen: false) + .intConfigDataList[0] + .name; + + await Provider.of(context, listen: false) + .getRecords(formname, hcp: widget.eventsdetail.hcpFullName); setState(() {}); } @@ -290,7 +310,7 @@ class _HCPProfileScreenState extends State { }); } - buildprofile(BuildContext context, Eventsdetail eventsdetail, String title) { + buildprofile(BuildContext context, SpeakersList eventsdetail, String title) { MediaQuery.of(context).size.height * 0.35; return Container( @@ -323,7 +343,7 @@ class _HCPProfileScreenState extends State { SizedBox( height: 15, ), - Text(eventsdetail.kolFullName!, + Text(eventsdetail.hcpFullName!, style: TextStyle( fontSize: 20, // fontFamily: "SourceSerif", @@ -335,7 +355,7 @@ class _HCPProfileScreenState extends State { // // fontFamily: "SourceSerif", // )), Text( - "${eventsdetail.orgName ?? ""} ${eventsdetail.country ?? ""} ${eventsdetail.city ?? ""}", + "${eventsdetail.organization ?? ""} ${eventsdetail.countryName ?? ""} ${eventsdetail.cityName ?? ""}", softWrap: true, maxLines: 2, textAlign: TextAlign.center, @@ -409,7 +429,7 @@ class _HCPProfileScreenState extends State { )); } - Widget buildCardView(BuildContext context, Eventsdetail eventsdetail, + Widget buildCardView(BuildContext context, SpeakersList eventsdetail, HcpProfileProvider provider) { return Container( // color: Constants.bgcolor, @@ -419,7 +439,7 @@ class _HCPProfileScreenState extends State { // title: eventsdetail.kolFullName!, // eventsdetail: eventsdetail, // ), - buildprofile(context, eventsdetail, eventsdetail.kolFullName!), + buildprofile(context, eventsdetail, eventsdetail.hcpFullName!), // Padding( // padding: const EdgeInsets.all(8.0), // child: Column( @@ -519,8 +539,9 @@ class _HCPProfileScreenState extends State { // const Spacer(), Center( child: _ProfileInfoRow(items: [ - ProfileInfoItem("Topic(s)", provider.totalTopics), - ProfileInfoItem("Session(s)", provider.totalSessions), + ProfileInfoItem("Topic(s)", widget.eventsdetail.topics!.length), + ProfileInfoItem( + "Session(s)", widget.eventsdetail.sessionNames!.length), ProfileInfoItem("Note(s)", provider.totalNotes), ])), // SizedBox( @@ -531,9 +552,9 @@ class _HCPProfileScreenState extends State { ); } - Widget sessionNotes(BuildContext context, Eventsdetail eventsdetail, + Widget sessionNotes(BuildContext context, SpeakersList eventsdetail, HcpProfileProvider provider) { - sessionList = eventsdetail.sessionName!.split(","); + sessionList = eventsdetail.sessionNames!; return Container( color: EventsConstants.bgcolor, child: Column( @@ -604,13 +625,13 @@ class _HCPProfileScreenState extends State { .add("${_selectedFruit} \n\n ${notesController.text}"); // }); print( - " eventid:${widget.eventid},hcp:${widget.eventsdetail.kolId}"); + " eventid:${widget.eventid},hcp:${widget.eventsdetail.uniqueId}"); SessionNotesModel notesModel = SessionNotesModel( notes: notesController.text, addedBy: "user", addedDate: CustomDateFormatter().formatDate(), eventid: widget.eventid, - hcpid: widget.eventsdetail.kolId, + hcpid: widget.eventsdetail.uniqueId, selectedSession: _selectedFruit); print( "${notesModel.addedBy},${notesModel.notes},${notesModel.addedDate},${notesModel.eventid},${notesModel.hcpid},${notesModel.selectedSession}"); @@ -723,9 +744,9 @@ class _HCPProfileScreenState extends State { ); } - Widget topicsTab(Eventsdetail eventsdetail) { - print("${eventsdetail.sessionName!.split(",").length} @@@lengtg"); - List sessions = eventsdetail.sessionName!.split(","); + Widget topicsTab(SpeakersList eventsdetail) { + print("${eventsdetail.sessionNames!.join(",").length} @@@lengtg"); + List sessions = eventsdetail.sessionNames!; return Container( width: double.maxFinite, padding: EdgeInsets.only(left: 8), @@ -737,7 +758,7 @@ class _HCPProfileScreenState extends State { padding: EdgeInsets.only(top: 10.0, left: 4.0), itemCount: sessions.length, itemBuilder: (context, index) { - List topics = eventsdetail.eventTopics!.split("|"); + List topics = eventsdetail.topics!; return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -856,25 +877,156 @@ class _HCPProfileScreenState extends State { } Widget medicalInsights() { - return Container( - color: EventsConstants.bgcolor, - child: Center( - child: FloatingActionButton.extended( - backgroundColor: Colors.green, - onPressed: () {}, - heroTag: 'medicalinsights', - elevation: 0, - label: const Text("Add Medical Insights", - style: TextStyle( - color: Colors.white, - )), - icon: const Icon( - Icons.add, - color: Colors.white, - ), + return Consumer( + builder: (BuildContext context, provider, Widget? child) { + return Container( + color: EventsConstants.bgcolor, + child: Column( + children: [ + SizedBox( + height: 20, + ), + Center( + child: FloatingActionButton.extended( + backgroundColor: Colors.green, + onPressed: () async { + final ConfigDataProvider configDataProvider = + ConfigDataProvider(); + + await configDataProvider.initConfigUIDataMediccalInsight(); + await Provider.of(context, listen: false) + .initConfigData(); + + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => InteractionScreen1( + index: 0, + form: Provider.of(context, + listen: false) + .intConfigDataList[0] + .name, + title: "${widget.eventsdetail.hcpFullName}", + ))); + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => const InteractionListScreen())); + }, + heroTag: 'medicalinsights', + elevation: 0, + label: const Text("Add Medical Insights", + style: TextStyle( + color: Colors.white, + )), + icon: const Icon( + Icons.add, + color: Colors.white, + ), + ), + ), + SizedBox( + height: 20, + ), + provider.savedList.isEmpty + ? SizedBox.shrink() + : ListView.builder( + itemCount: provider.savedList.length, + shrinkWrap: true, + cacheExtent: + double.parse(provider.savedList.length.toString()), + itemBuilder: (context, index) { + return Column( + children: [ + ListTile( + subtitle: Text( + 'Updated on ${CustomDateFormatter().convertDateTimeToDate(provider.savedList[index].updatedTime!)}', + //style: TextStyle(fontStyle: FontStyle.italic), + ), + title: Text( + provider.savedList[index].id, + ), + trailing: SizedBox( + width: 100, + child: Row(children: [ + IconButton( + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => + ViewInteractionScreen1( + saveInteraction: + provider.savedList[index], + ))); + }, + icon: const Icon( + Icons.info_outline, + size: 24, + color: Color.fromARGB(255, 8, 39, 92), + ), + ), + IconButton( + onPressed: () async { + await provider.initConfigData().then({ + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (BuildContext context) => + // EditInteractionScreen( + // saveInteraction: provider + // .savedList[index], + // ))) + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => + EditInteractionScreen1( + saveInteraction: provider + .savedList[index], + ))) + }); + }, + icon: const Icon( + Icons.edit, + size: 24, + color: Color.fromARGB(255, 8, 39, 92), + ), + ), + // IconButton( + // onPressed: () { + // showDeleteRecordAlertDialog( + // context, + // provider.savedList[index].id, + // provider.savedList[index]); + // }, + // icon: const Icon( + // Icons.delete, + // size: 24, + // color: Color.fromARGB(255, 8, 39, 92), + // ), + // ), + ]), + ), + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => + ViewInteractionScreen1( + saveInteraction: + provider.savedList[index], + ))); + }, + ), + const Divider(), + ], + ); + }), + ], ), - ), - ); + ); + }); } } diff --git a/lib/viewmodel/eventsprovider.dart b/lib/viewmodel/eventsprovider.dart index 741c622..19c11af 100644 --- a/lib/viewmodel/eventsprovider.dart +++ b/lib/viewmodel/eventsprovider.dart @@ -1,13 +1,19 @@ import 'dart:async'; import 'dart:math'; +import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:hive_flutter/hive_flutter.dart'; +import 'package:konectar_events/contacts_module/model_class/k2_api_model/kol_event_k2.dart'; import 'package:konectar_events/model/affiliationsmodel.dart'; +import 'package:konectar_events/model/events_list_resp_2.dart'; import 'package:konectar_events/model/eventsdetailmodel.dart'; import 'package:konectar_events/model/eventsmodel.dart'; import 'package:konectar_events/model/eventsoverview.dart'; +import 'package:konectar_events/model/eventspeakers.dart'; import 'package:konectar_events/model/keywords_model.dart'; +import 'package:konectar_events/model/my_events_list_model.dart'; import 'package:konectar_events/model/neweventsmodel.dart'; import 'package:konectar_events/model/scope_model.dart'; import 'package:konectar_events/model/sessionnotesmodel.dart'; @@ -21,43 +27,54 @@ class EventsProvider extends ChangeNotifier { List keywordList = []; List therapeuticList = []; List eventList = []; + List neweventList = []; List searchList = []; List myEvents = []; + List offlineEvents = []; List eventdetailList = []; List srcheventdetailList = []; List selectedTherapeutic = []; List addedSessionNotes = []; + List speakersList = []; + List myEventids = []; + bool showCheckbox = false; + bool offlineExists = false; int eventSessionCount = 0; String message = ""; + int speakercount = 0; late Box box; + // late Box myeventsbox; late Box sessionBox; bool isAllSelected = true; - bool isFavSeleted = false; + bool isFavSeleted = true; bool isSearch = false; bool isSearchSpeakers = false; List kFlutterHashtags = []; List topics = []; List specialtyList = []; OverviewData? overviewData; - Affiliations affiliations = - Affiliations(affiliationCount: [], affiliationNames: []); + List affiliations = []; - onSelectAll() async { - // isFavSeleted = false; - // isAllSelected = !isAllSelected; - eventList = await getEvents(); + late StreamSubscription> connectivitySubscription; + + Future onSelectAll(int page) async { + isFavSeleted = false; + isAllSelected = !isAllSelected; + eventList = await getEvents(page); notifyListeners(); } - onSelectMy() async { - // isFavSeleted = !isFavSeleted; - eventList = await getMyEventsData(); + Future onSelectMy() async { + isFavSeleted = !isFavSeleted; + eventList = []; + eventList = await getMyEvents(1); notifyListeners(); } - OnSearch(String searchtxt) { + OnSearch(String searchtxt) async { + print("Searching......."); // searchtxt = searchtxt.toLowerCase(); isSearch = true; if (isFavSeleted) { @@ -71,25 +88,45 @@ class EventsProvider extends ChangeNotifier { // element.country!.toLowerCase().contains(searchtxt))) .toList(); } else { - searchList = eventList - .where((element) => element.name1!.toLowerCase().contains(searchtxt)) - // element.city!.toLowerCase().contains(searchtxt) || - // element.region!.toLowerCase().contains(searchtxt) || - // element.country!.toLowerCase().contains(searchtxt)) - .toList(); + eventList = + await ApiCall().getSearchedEventsFromK2(1, "event_name", searchtxt); + // searchList = eventList + // .where((element) => element.name1!.toLowerCase().contains(searchtxt)) + // // element.city!.toLowerCase().contains(searchtxt) || + // // element.region!.toLowerCase().contains(searchtxt) || + // // element.country!.toLowerCase().contains(searchtxt)) + // .toList(); } print("###$searchList@@@"); notifyListeners(); } - getSessionCount() { + bool ifOfflineExists(String eventid) { + if (offlineEvents.isNotEmpty) { + offlineEvents.forEach( + (element) { + if (element.eventId == eventid) { + offlineExists = true; + } else { + offlineExists = false; + } + }, + ); + } + + return offlineExists; + } + + Future getSessionCount(String eventid, String event_unique_id) async { List sessions = []; eventSessionCount = 0; - for (var obj in eventdetailList) { - sessions.addAll(obj.sessionName!.split(',')); - - eventSessionCount += int.parse(obj.numSess ?? "0"); + Map data = + (await ApiCall().getSpeakersFromK2(0, eventid, event_unique_id)); + speakercount = data["count"]; + List speakersList = data["list"]; + for (var obj in speakersList) { + sessions.addAll(obj.sessionNames!); } print("Count ${sessions.toSet().toList().length}"); print("Count2 ${sessions.toList().length}"); @@ -118,9 +155,9 @@ class EventsProvider extends ChangeNotifier { onFilterReset() async { if (isFavSeleted) { - eventList = await getMyEventsData(); + myEvents = await getMyEvents(1); } else { - eventList = await getEvents(); + eventList = await getEvents(1); } isSearch = false; @@ -131,9 +168,9 @@ class EventsProvider extends ChangeNotifier { onSearchReset() async { if (isFavSeleted) { - eventList = await getMyEventsData(); + myEvents = await getMyEvents(1); } else { - eventList = await getEvents(); + eventList = await getEvents(1); } isSearch = false; @@ -176,16 +213,53 @@ class EventsProvider extends ChangeNotifier { //notifyListeners(); } - Future> getEvents() async { - eventList = await getAllEventsData(); + Future> getEvents(int page, + {String? searchtxt, String? startdate, String? enddate}) async { + // eventList = await getAllEventsData(); + + eventList.clear(); + eventList = []; + + offlineEvents = await getOfflineMyEvents(); + eventList = isFavSeleted + ? await ApiCall().getEventsFromK1(type: "2") + : await ApiCall().getEventsFromK1(); + print("see the list : $neweventList"); if (eventList.isEmpty) { - eventList = (await ApiCall().getEvents())!; + // eventList = (await ApiCall().getEvents())!; + eventList = isFavSeleted + ? await ApiCall().getEventsFromK1(type: "2") + : await ApiCall().getEventsFromK1(); //eventList = (await ApiCall().getStagingEvents())!; for (var events in eventList) { await saveEventsData(events); } } + if (myEventids.isNotEmpty) { + for (var events in eventList) { + if (myEventids.contains(events.eventId)) { + events.isfav = true; + } + } + } return eventList; + + //notifyListeners(); + } + + Future> getMyEvents(int page) async { + // eventList = await getAllEventsData(); + myEvents = await ApiCall().getEventsFromK1(type: "2"); + print("see the list : $myEvents"); + if (myEvents.isEmpty) { + // eventList = (await ApiCall().getEvents())!; + myEvents = await ApiCall().getEventsFromK1(type: "2"); + //eventList = (await ApiCall().getStagingEvents())!; + } + for (var events in myEvents) { + myEventids.add(events.eventId!); + } + return myEvents; //notifyListeners(); } @@ -209,14 +283,50 @@ class EventsProvider extends ChangeNotifier { } Future> getEventsDetails(String eventid) async { - eventdetailList = (await ApiCall().getLocalEventsDetail(eventid))!; + eventdetailList = (await ApiCall().getLocalEventsDetail("142682"))!; return eventdetailList; //notifyListeners(); } - Future addEventsToFavs(String eventid) async { - message = await ApiCall().addEventsToFav(eventid); + Future> getSpeakersDetails(int page, String eventid, + String event_unique_id, String searchkey) async { + Map data = (await ApiCall().getSpeakersFromK2( + page, eventid, event_unique_id, + searchkey: searchkey)); + // speakercount = data["count"]; + speakersList = data["list"]; + // getSessionCount(); + return speakersList; + //notifyListeners(); + } + Future addEventsToFavs(String eventid) async { + message = await ApiCall().followUnfollowEvent("1", eventid); + if (myEventids.isNotEmpty) { + if (!myEventids.contains(eventid)) { + myEventids.add(eventid); + } + } else { + myEventids.add(eventid); + } + return message; + //notifyListeners(); + } + + Future attendNotAttendEvent(String eventid, String flag) async { + message = await ApiCall().attendNotAttendEvent(flag, eventid); + + return message; + //notifyListeners(); + } + + Future removeEventsToFavs(String eventid) async { + message = await ApiCall().followUnfollowEvent("0", eventid); + if (myEventids.isNotEmpty) { + if (myEventids.contains(eventid)) { + myEventids.remove(eventid); + } + } return message; //notifyListeners(); } @@ -231,7 +341,9 @@ class EventsProvider extends ChangeNotifier { box = await Hive.openBox('EventsListBox'); box.add(eventsData); - List eventsData2 = await getMyEventsData(); + offlineEvents.clear(); + offlineEvents = await getOfflineMyEvents(); + print("OFFLINE TOTAL :${offlineEvents.length}"); notifyListeners(); } @@ -242,26 +354,11 @@ class EventsProvider extends ChangeNotifier { (element) => element.eventId == eventsData.eventId, ); box.putAt(index, eventsData); - List eventsData2 = await getMyEventsData(); + // List eventsData2 = await getMyEventsData(); notifyListeners(); } - Future> getMyEventsData() async { - box = await Hive.openBox('EventsListBox'); - Iterable data = box.values; - myEvents = data - .where( - (element) => element.isfav == true, - ) - .toList(); - // EventsList eventsdata = EventsList(); - // for (var obj in data) { - // eventsdata = new EventsList.fromJson(obj.toJson()); - // } - return myEvents; - } - - Future> getAllEventsData() async { + Future> getOfflineMyEvents() async { box = await Hive.openBox('EventsListBox'); Iterable data = box.values; myEvents = data.toList(); @@ -288,7 +385,7 @@ class EventsProvider extends ChangeNotifier { box.clear(); } - FutureOr delateEventsData(EventsList event) async { + FutureOr delateOfflineEvent(EventsList event) async { //DELETE // box = await Hive.openBox('EventsListBox'); // List data = box.values.toList(); @@ -303,8 +400,11 @@ class EventsProvider extends ChangeNotifier { (element) => element.eventId == event.eventId, ); event.isfav = false; - box.putAt(index, event); - eventList = await getMyEventsData(); + // box.putAt(index, event); + box.deleteAt(index); + //eventList = await getMyEventsData(); + offlineEvents.clear(); + offlineEvents = await getOfflineMyEvents(); notifyListeners(); } @@ -316,9 +416,9 @@ class EventsProvider extends ChangeNotifier { notifyListeners(); } - FutureOr getTopicsCloud(String eventid) async { - List topics = - (await ApiCall().getTopicsCloudData(eventid))!; + FutureOr getTopicsCloud(EventsList event) async { + List topics = (await ApiCall().insightsTopicsCloud( + eventid: event.eventId!, startDate: event.start!, endDate: event.end!)); // for (var events in eventList) { // await saveEventsData(events); // } @@ -332,14 +432,16 @@ class EventsProvider extends ChangeNotifier { notifyListeners(); } - FutureOr getSpecialtyData(String eventid) async { - specialtyList = (await ApiCall().getSpecialty(eventid))!; + FutureOr getSpecialtyData(EventsList event) async { + specialtyList = (await ApiCall().specialtyOfSpeakers( + eventid: event.eventId!, startDate: event.start!, endDate: event.end!)); notifyListeners(); } - FutureOr getAffiliations(String eventid) async { - affiliations = (await ApiCall().getSpeakerCounts(eventid))!; + FutureOr getAffiliations(EventsList event) async { + affiliations = (await ApiCall().insightsBarChart( + eventid: event.eventId!, startDate: event.start!, endDate: event.end!)); notifyListeners(); } @@ -351,4 +453,6 @@ class EventsProvider extends ChangeNotifier { notifyListeners(); } + + //INTERNET CONNECTIVITY } diff --git a/lib/viewmodel/hcpprofprovider.dart b/lib/viewmodel/hcpprofprovider.dart index c549470..28d5a0f 100644 --- a/lib/viewmodel/hcpprofprovider.dart +++ b/lib/viewmodel/hcpprofprovider.dart @@ -4,6 +4,7 @@ import 'dart:math'; import 'package:flutter/cupertino.dart'; import 'package:hive_flutter/hive_flutter.dart'; import 'package:konectar_events/model/eventsdetailmodel.dart'; +import 'package:konectar_events/model/eventspeakers.dart'; import 'package:konectar_events/model/sessionnotesmodel.dart'; import 'package:konectar_events/model/topics_cloud_model.dart'; import 'package:konectar_events/utils/apicall.dart'; @@ -33,9 +34,9 @@ class HcpProfileProvider extends ChangeNotifier { } List getSessionNotesList( - String eid, Eventsdetail eventsdetail) { + String eid, SpeakersList eventsdetail) { print("Check hcp id"); - print("$eid,${eventsdetail.kolId}"); + print("$eid,${eventsdetail.uniqueId}"); sessionNotesList = sessionNotesList .where( (element) => element.eventid == eid, @@ -50,10 +51,10 @@ class HcpProfileProvider extends ChangeNotifier { String fname = element.hcpname!.split(" ")[0]; String lname = element.hcpname!.split(" ").last; print("${element.hcpname}"); - return fname.toLowerCase() == eventsdetail.firstName!.toLowerCase() && - lname.toLowerCase() == eventsdetail.lastName!.toLowerCase(); + return fname.toLowerCase() == eventsdetail.hcpFullName!.toLowerCase() && + lname.toLowerCase() == eventsdetail.hcpFullName!.toLowerCase(); } else { - return element.hcpid == eventsdetail.kolId; + return element.hcpid == eventsdetail.uniqueId; } }).toList(); totalNotes = sessionNotesList.length; diff --git a/lib/viewmodel/offlineeventsprovider.dart b/lib/viewmodel/offlineeventsprovider.dart new file mode 100644 index 0000000..91300d6 --- /dev/null +++ b/lib/viewmodel/offlineeventsprovider.dart @@ -0,0 +1,325 @@ +import 'dart:async'; + +import 'package:flutter/material.dart'; +import 'package:hive_flutter/hive_flutter.dart'; +import 'package:konectar_events/model/eventsdetailmodel.dart'; +import 'package:konectar_events/model/eventsmodel.dart'; +import 'package:konectar_events/model/keywords_model.dart'; +import 'package:konectar_events/model/neweventsmodel.dart'; +import 'package:konectar_events/model/scope_model.dart'; +import 'package:konectar_events/model/sessionnotesmodel.dart'; +import 'package:konectar_events/model/topics_cloud_model.dart'; +import 'package:konectar_events/utils/apicall.dart'; +import 'package:konectar_events/utils/dateformater.dart'; +import 'package:konectar_events/widgets/word_cloud.dart'; + +class EventsOfflineProvider extends ChangeNotifier { + List keywordList = []; + List therapeuticList = []; + List eventList = []; + List searchList = []; + List myEvents = []; + List eventdetailList = []; + List srcheventdetailList = []; + List selectedTherapeutic = []; + List addedSessionNotes = []; + int eventSessionCount = 0; + String message = ""; + late Box box; + late Box sessionBox; + bool isAllSelected = true; + bool isFavSeleted = false; + bool isSearch = false; + bool isSearchSpeakers = false; + List kFlutterHashtags = []; + List topics = []; + + onSelectAll() async { + // isFavSeleted = false; + // isAllSelected = !isAllSelected; + eventList = await getEvents(); + + notifyListeners(); + } + + onSelectMy() async { + // isFavSeleted = !isFavSeleted; + eventList = await getMyEventsData(); + + notifyListeners(); + } + + OnSearch(String searchtxt) { + // searchtxt = searchtxt.toLowerCase(); + isSearch = true; + if (isFavSeleted) { + searchList = eventList + .where((element) => element.name1!.toLowerCase().contains(searchtxt)) + // (element.city != "" && + // element.city!.toLowerCase().contains(searchtxt)) || + // (element.region != "" && + // element.region!.toLowerCase().contains(searchtxt)) || + // (element.country != "" && + // element.country!.toLowerCase().contains(searchtxt))) + .toList(); + } else { + searchList = eventList + .where((element) => element.name1!.toLowerCase().contains(searchtxt)) + // element.city!.toLowerCase().contains(searchtxt) || + // element.region!.toLowerCase().contains(searchtxt) || + // element.country!.toLowerCase().contains(searchtxt)) + .toList(); + } + + print("###$searchList@@@"); + notifyListeners(); + } + + getSessionCount() { + List sessions = []; + eventSessionCount = 0; + for (var obj in eventdetailList) { + sessions.addAll(obj.sessionName!.split(',')); + + eventSessionCount += int.parse(obj.numSess ?? "0"); + } + print("Count ${sessions.toSet().toList().length}"); + print("Count2 ${sessions.toList().length}"); + print("SEE SESSIONS ${sessions.toSet().toList()}"); + eventSessionCount = sessions.toSet().toList().length; + notifyListeners(); + } + + OnFilters() { + isSearch = true; + if (isFavSeleted) { + searchList = myEvents + .where((element) => + selectedTherapeutic.contains(element.therapeuticArea)) + .toList(); + } else { + searchList = myEvents + .where((element) => + selectedTherapeutic.contains(element.therapeuticArea)) + .toList(); + } + + print("###$searchList@@@"); + notifyListeners(); + } + + onFilterReset() async { + if (isFavSeleted) { + eventList = await getMyEventsData(); + } else { + eventList = await getEvents(); + } + + isSearch = false; + + searchList.clear(); + notifyListeners(); + } + + onSearchReset() async { + if (isFavSeleted) { + eventList = await getMyEventsData(); + } else { + eventList = await getEvents(); + } + + isSearch = false; + + searchList.clear(); + notifyListeners(); + } + + OnSearchSpeakers(String searchtxt) { + searchtxt = searchtxt.toLowerCase(); + isSearchSpeakers = true; + + srcheventdetailList = eventdetailList + .where((element) => + element.kolFullName!.toLowerCase().contains(searchtxt) || + element.eventTopics!.toLowerCase().contains(searchtxt)) + .toList(); + + notifyListeners(); + } + + onSearchSpeakersReset(String eventid) async { + eventdetailList = await getEventsDetails(eventid); + + isSearchSpeakers = false; + + srcheventdetailList.clear(); + notifyListeners(); + } + + initFiltersData() async { + // keywordList = await ApiCall().getkeywords(''); + therapeuticList = await ApiCall().getscopes(); + notifyListeners(); + } + + Future> getKeywordList(String keyword) async { + keywordList = await ApiCall().getkeywords(keyword); + return keywordList; + //notifyListeners(); + } + + Future> getEvents() async { + eventList = await getAllEventsData(); + if (eventList.isEmpty) { + eventList = (await ApiCall().getEvents())!; + for (var events in eventList) { + await saveEventsData(events); + } + } + return eventList; + //notifyListeners(); + } + + Future> getAddedSessionNotes() async { + addedSessionNotes = await getAllSessionNotesList(); + if (addedSessionNotes.isEmpty && eventList.isNotEmpty) { + addedSessionNotes = (await ApiCall().getSessionNotes())!; + for (SessionNotesModel notes in addedSessionNotes) { + int i = + eventList.indexWhere((element) => element.name1 == notes.eventname); + if (i != -1) { + notes.eventid = eventList[i].eventId; + } + notes.addedBy = "user"; + notes.addedDate = CustomDateFormatter().formatDate(); + await saveSessionDataFromResp(notes); + } + } + return addedSessionNotes; + //notifyListeners(); + } + + Future> getEventsDetails(String eventid) async { + eventdetailList = (await ApiCall().getLocalEventsDetail(eventid))!; + return eventdetailList; + //notifyListeners(); + } + + Future addEventsToFavs(String eventid) async { + message = await ApiCall().addEventsToFav(eventid); + + return message; + //notifyListeners(); + } + + Future markAttending(String eventid) async { + message = await ApiCall().attendEvents(eventid); + return message; + //notifyListeners(); + } + + FutureOr saveEventsData(EventsList eventsData) async { + box = await Hive.openBox('EventsListBox'); + + box.add(eventsData); + List eventsData2 = await getMyEventsData(); + notifyListeners(); + } + + FutureOr favsEventsData(EventsList eventsData) async { + box = await Hive.openBox('EventsListBox'); + List data = box.values.toList(); + int index = data.indexWhere( + (element) => element.eventId == eventsData.eventId, + ); + box.putAt(index, eventsData); + List eventsData2 = await getMyEventsData(); + notifyListeners(); + } + + Future> getMyEventsData() async { + box = await Hive.openBox('EventsListBox'); + Iterable data = box.values; + myEvents = data + .where( + (element) => element.isfav == true, + ) + .toList(); + // EventsList eventsdata = EventsList(); + // for (var obj in data) { + // eventsdata = new EventsList.fromJson(obj.toJson()); + // } + return myEvents; + } + + Future> getAllEventsData() async { + box = await Hive.openBox('EventsListBox'); + Iterable data = box.values; + myEvents = data.toList(); + // EventsList eventsdata = EventsList(); + // for (var obj in data) { + // eventsdata = new EventsList.fromJson(obj.toJson()); + // } + return myEvents; + } + + Future> getAllSessionNotesList() async { + sessionBox = await Hive.openBox('SessionNotesModelBox'); + Iterable data = sessionBox.values; + addedSessionNotes = data.toList(); + // EventsList eventsdata = EventsList(); + // for (var obj in data) { + // eventsdata = new EventsList.fromJson(obj.toJson()); + // } + return addedSessionNotes; + } + + FutureOr deleteAllEventsData() async { + box = await Hive.openBox('EventsListBox'); + box.clear(); + } + + FutureOr delateEventsData(EventsList event) async { + //DELETE + // box = await Hive.openBox('EventsListBox'); + // List data = box.values.toList(); + // int index = data.indexWhere( + // (element) => element.eventId == eventid, + // ); + // await box.deleteAt(index); + //REMOVE FROM FAVS + box = await Hive.openBox('EventsListBox'); + List data = box.values.toList(); + int index = data.indexWhere( + (element) => element.eventId == event.eventId, + ); + event.isfav = false; + box.putAt(index, event); + eventList = await getMyEventsData(); + notifyListeners(); + } + + FutureOr saveSessionDataFromResp(SessionNotesModel notesModel) async { + sessionBox = await Hive.openBox('SessionNotesModelBox'); + + sessionBox.add(notesModel); + + notifyListeners(); + } + + FutureOr getTopicsCloud(String eventid) async { + List topics = + (await ApiCall().getTopicsCloudData(eventid))!; + // for (var events in eventList) { + // await saveEventsData(events); + // } + //notifyListeners(); + kFlutterHashtags = []; + for (var topic in topics) { + kFlutterHashtags + .add(FlutterHashtag(topic.topic!, int.parse(topic.total!), false)); + } + + notifyListeners(); + } +} diff --git a/lib/widgets/autocompletetags_widget.dart b/lib/widgets/autocompletetags_widget.dart index fd4dc56..0a280f0 100644 --- a/lib/widgets/autocompletetags_widget.dart +++ b/lib/widgets/autocompletetags_widget.dart @@ -196,6 +196,7 @@ class _StringAutoCompleteTagsState extends State { width: 1.0, ), ), + //helperText: 'Enter language...', helperStyle: const TextStyle( color: Colors.black, diff --git a/lib/widgets/home_drawer.dart b/lib/widgets/home_drawer.dart index 7aac0f4..5f33f3f 100644 --- a/lib/widgets/home_drawer.dart +++ b/lib/widgets/home_drawer.dart @@ -42,22 +42,24 @@ class _HomeDrawerState extends State { void setDrawerListArray() { drawerList = [ - DrawerList( - index: DrawerIndex.HOME, - labelName: 'Events', - //icon: Icon(Icons.home), - ), DrawerList( index: DrawerIndex.Help, labelName: 'Contacts', + icon: Icon(Icons.account_circle), // isAssetsImage: true, // imageName: 'assets/images/supportIcon.png', ), - // DrawerList( - // index: DrawerIndex.FeedBack, - // labelName: 'FeedBack', - // icon: Icon(Icons.help), - // ), + DrawerList( + index: DrawerIndex.HOME, + labelName: 'Events', + icon: Icon(Icons.event), + ), + + DrawerList( + index: DrawerIndex.FeedBack, + labelName: 'HelpDesk', + icon: Icon(Icons.help), + ), // DrawerList( // index: DrawerIndex.Invite, // labelName: 'Invite Friend', @@ -95,68 +97,64 @@ class _HomeDrawerState extends State { crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start, children: [ - AnimatedBuilder( - animation: widget.iconAnimationController!, - builder: (BuildContext context, Widget? child) { - return ScaleTransition( - scale: AlwaysStoppedAnimation(1.0 - - (widget.iconAnimationController!.value) * 0.2), - child: RotationTransition( - turns: AlwaysStoppedAnimation(Tween( - begin: 0.0, end: 24.0) - .animate(CurvedAnimation( - parent: widget.iconAnimationController!, - curve: Curves.fastOutSlowIn)) - .value / - 360), - child: Container( - height: 100, - width: 100, - decoration: BoxDecoration( - shape: BoxShape.circle, - boxShadow: [ - BoxShadow( - color: AppTheme.grey.withOpacity(0.6), - offset: const Offset(2.0, 4.0), - blurRadius: 8), - ], - ), - child: ClipRRect( - borderRadius: - const BorderRadius.all(Radius.circular(60.0)), - child: CircleAvatar( - radius: 24, - backgroundColor: EventsConstants.blueColor, - // child: Icon( - // Icons.person, - // size: 18, - // color: Colors.white, - // ), - child: Text( - "S", - style: TextStyle( - fontSize: 24, - fontWeight: FontWeight.bold, - color: Colors.white), - ), - ), - ), - ), - ), - ); - }, - ), - Padding( - padding: const EdgeInsets.only(top: 8, left: 4), - child: Text( - 'Snehalatha Desai', - style: TextStyle( - fontWeight: FontWeight.w600, - color: isLightMode ? AppTheme.grey : AppTheme.white, - fontSize: 18, - ), + SizedBox( + height: 30, + child: Image.asset( + "assets/images/konector_image_logo.png", + fit: BoxFit.cover, ), ), + // AnimatedBuilder( + // animation: widget.iconAnimationController!, + // builder: (BuildContext context, Widget? child) { + // return ScaleTransition( + // scale: AlwaysStoppedAnimation(1.0 - + // (widget.iconAnimationController!.value) * 0.2), + // child: RotationTransition( + // turns: AlwaysStoppedAnimation(Tween( + // begin: 0.0, end: 24.0) + // .animate(CurvedAnimation( + // parent: widget.iconAnimationController!, + // curve: Curves.fastOutSlowIn)) + // .value / + // 360), + // child: Container( + // height: 100, + // width: 100, + // decoration: BoxDecoration( + // shape: BoxShape.circle, + // boxShadow: [ + // BoxShadow( + // color: AppTheme.grey.withOpacity(0.6), + // offset: const Offset(2.0, 4.0), + // blurRadius: 8), + // ], + // ), + // child: ClipRRect( + // borderRadius: + // const BorderRadius.all(Radius.circular(60.0)), + // child: CircleAvatar( + // radius: 24, + // backgroundColor: EventsConstants.blueColor, + // // child: Icon( + // // Icons.person, + // // size: 18, + // // color: Colors.white, + // // ), + // child: Text( + // "S", + // style: TextStyle( + // fontSize: 24, + // fontWeight: FontWeight.bold, + // color: Colors.white), + // ), + // ), + // ), + // ), + // ), + // ); + // }, + // ), ], ), ), @@ -178,6 +176,17 @@ class _HomeDrawerState extends State { }, ), ), + Padding( + padding: const EdgeInsets.only(top: 8, left: 4), + child: Text( + 'Logged in as Snehalatha Desai', + style: TextStyle( + fontWeight: FontWeight.w300, + color: isLightMode ? AppTheme.grey : AppTheme.white, + fontSize: 18, + ), + ), + ), Divider( height: 1, color: AppTheme.grey.withOpacity(0.6), diff --git a/lib/widgets/piechart.dart b/lib/widgets/piechart.dart index cb2e58a..2ad3a2c 100644 --- a/lib/widgets/piechart.dart +++ b/lib/widgets/piechart.dart @@ -66,7 +66,7 @@ class CustomPieChartState extends State { return Indicator( size: 10, color: AppColors().appcolors[i], - text: widget.specialtyList[i].specialtyName, + text: widget.specialtyList[i].specialtyName!, isSquare: true, ); }) @@ -131,7 +131,7 @@ class CustomPieChartState extends State { List showingSections(List specialtyList) { double total = 0.0; for (var obj in specialtyList) { - total += double.parse(obj.specialtyCount); + total += double.parse(obj.specialtyCount!); } return List.generate(specialtyList.length, (i) { @@ -141,10 +141,10 @@ class CustomPieChartState extends State { const shadows = [Shadow(color: Colors.black, blurRadius: 2)]; return PieChartSectionData( color: AppColors().appcolors[i], - value: ((double.parse(specialtyList[i].specialtyCount) / total) * 100) + value: ((double.parse(specialtyList[i].specialtyCount!) / total) * 100) .roundToDouble(), title: - '${((double.parse(specialtyList[i].specialtyCount) / total) * 100).roundToDouble()}%', + '${((double.parse(specialtyList[i].specialtyCount!) / total) * 100).floorToDouble()}%', radius: radius, titleStyle: TextStyle( fontSize: fontSize, diff --git a/macos/Podfile.lock b/macos/Podfile.lock index 7fe40b8..ee757e6 100644 --- a/macos/Podfile.lock +++ b/macos/Podfile.lock @@ -1,75 +1,134 @@ PODS: - connectivity_plus (0.0.1): - - FlutterMacOS - - ReachabilitySwift - - device_info_plus (0.0.1): + - Flutter - FlutterMacOS - file_selector_macos (0.0.1): - FlutterMacOS - - flutter_inappwebview_macos (0.0.1): + - Firebase/CoreOnly (10.25.0): + - FirebaseCore (= 10.25.0) + - Firebase/RemoteConfig (10.25.0): + - Firebase/CoreOnly + - FirebaseRemoteConfig (~> 10.25.0) + - firebase_core (2.31.0): + - Firebase/CoreOnly (~> 10.25.0) - FlutterMacOS - - OrderedSet (~> 5.0) + - firebase_remote_config (4.4.5): + - Firebase/CoreOnly (~> 10.25.0) + - Firebase/RemoteConfig (~> 10.25.0) + - firebase_core + - FlutterMacOS + - FirebaseABTesting (10.28.0): + - FirebaseCore (~> 10.0) + - FirebaseCore (10.25.0): + - FirebaseCoreInternal (~> 10.0) + - GoogleUtilities/Environment (~> 7.12) + - GoogleUtilities/Logger (~> 7.12) + - FirebaseCoreInternal (10.28.0): + - "GoogleUtilities/NSData+zlib (~> 7.8)" + - FirebaseInstallations (10.28.0): + - FirebaseCore (~> 10.0) + - GoogleUtilities/Environment (~> 7.8) + - GoogleUtilities/UserDefaults (~> 7.8) + - PromisesObjC (~> 2.1) + - FirebaseRemoteConfig (10.25.0): + - FirebaseABTesting (~> 10.0) + - FirebaseCore (~> 10.0) + - FirebaseInstallations (~> 10.0) + - FirebaseRemoteConfigInterop (~> 10.23) + - FirebaseSharedSwift (~> 10.0) + - GoogleUtilities/Environment (~> 7.8) + - "GoogleUtilities/NSData+zlib (~> 7.8)" + - FirebaseRemoteConfigInterop (10.28.0) + - FirebaseSharedSwift (10.28.0) - FlutterMacOS (1.0.0) - - OrderedSet (5.0.0) - - package_info_plus (0.0.1): - - FlutterMacOS + - GoogleUtilities/Environment (7.13.3): + - GoogleUtilities/Privacy + - PromisesObjC (< 3.0, >= 1.2) + - GoogleUtilities/Logger (7.13.3): + - GoogleUtilities/Environment + - GoogleUtilities/Privacy + - "GoogleUtilities/NSData+zlib (7.13.3)": + - GoogleUtilities/Privacy + - GoogleUtilities/Privacy (7.13.3) + - GoogleUtilities/UserDefaults (7.13.3): + - GoogleUtilities/Logger + - GoogleUtilities/Privacy - path_provider_foundation (0.0.1): - Flutter - FlutterMacOS - - ReachabilitySwift (5.0.0) + - PromisesObjC (2.4.0) - shared_preferences_foundation (0.0.1): - Flutter - FlutterMacOS + - sqflite (0.0.3): + - Flutter + - FlutterMacOS - url_launcher_macos (0.0.1): - FlutterMacOS DEPENDENCIES: - - connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos`) - - device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`) + - connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/darwin`) - file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`) - - flutter_inappwebview_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos`) + - firebase_core (from `Flutter/ephemeral/.symlinks/plugins/firebase_core/macos`) + - firebase_remote_config (from `Flutter/ephemeral/.symlinks/plugins/firebase_remote_config/macos`) - FlutterMacOS (from `Flutter/ephemeral`) - - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) + - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/darwin`) - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) SPEC REPOS: trunk: - - OrderedSet - - ReachabilitySwift + - Firebase + - FirebaseABTesting + - FirebaseCore + - FirebaseCoreInternal + - FirebaseInstallations + - FirebaseRemoteConfig + - FirebaseRemoteConfigInterop + - FirebaseSharedSwift + - GoogleUtilities + - PromisesObjC EXTERNAL SOURCES: connectivity_plus: - :path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos - device_info_plus: - :path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos + :path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/darwin file_selector_macos: :path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos - flutter_inappwebview_macos: - :path: Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos + firebase_core: + :path: Flutter/ephemeral/.symlinks/plugins/firebase_core/macos + firebase_remote_config: + :path: Flutter/ephemeral/.symlinks/plugins/firebase_remote_config/macos FlutterMacOS: :path: Flutter/ephemeral - package_info_plus: - :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos path_provider_foundation: :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin shared_preferences_foundation: :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin + sqflite: + :path: Flutter/ephemeral/.symlinks/plugins/sqflite/darwin url_launcher_macos: :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos SPEC CHECKSUMS: - connectivity_plus: 18d3c32514c886e046de60e9c13895109866c747 - device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f + connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db file_selector_macos: 468fb6b81fac7c0e88d71317f3eec34c3b008ff9 - flutter_inappwebview_macos: 9600c9df9fdb346aaa8933812009f8d94304203d + Firebase: 0312a2352584f782ea56f66d91606891d4607f06 + firebase_core: fdf12e0c4349815c2e832d9dcad59fbff0ff394b + firebase_remote_config: 610707ec6f4efbf11225da2c6598e4b092962308 + FirebaseABTesting: 589bc28c0ab3e5554336895a34aa262e24276665 + FirebaseCore: 7ec4d0484817f12c3373955bc87762d96842d483 + FirebaseCoreInternal: 58d07f1362fddeb0feb6a857d1d1d1c5e558e698 + FirebaseInstallations: 60c1d3bc1beef809fd1ad1189a8057a040c59f2e + FirebaseRemoteConfig: 9f3935cefecd85d5b312192117f444957de24a75 + FirebaseRemoteConfigInterop: 70d200c6956ef3b5c3592a95e824c1210682d785 + FirebaseSharedSwift: 48de4aec81a6b79bb30404e5e6db43ea74848fed FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 - OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c - package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce + GoogleUtilities: ea963c370a38a8069cc5f7ba4ca849a60b6d7d15 path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c - ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825 + PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 + sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95 PODFILE CHECKSUM: 236401fc2c932af29a9fcf0e97baeeb2d750d367 diff --git a/pubspec.lock b/pubspec.lock index bda8eb4..9bab846 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -41,6 +41,14 @@ packages: url: "https://pub.dev" source: hosted version: "6.4.1" + animations: + dependency: "direct main" + description: + name: animations + sha256: d3d6dcfb218225bbe68e87ccf6378bbb2e32a94900722c5f81611dad089911cb + url: "https://pub.dev" + source: hosted + version: "2.0.11" archive: dependency: transitive description: @@ -574,6 +582,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.2.0" + flutter_staggered_grid_view: + dependency: transitive + description: + name: flutter_staggered_grid_view + sha256: "19e7abb550c96fbfeb546b23f3ff356ee7c59a019a651f8f102a4ba9b7349395" + url: "https://pub.dev" + source: hosted + version: "0.7.0" flutter_svg: dependency: "direct main" description: @@ -768,6 +784,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.2.1+1" + infinite_scroll_pagination: + dependency: "direct main" + description: + name: infinite_scroll_pagination + sha256: b68bce20752fcf36c7739e60de4175494f74e99e9a69b4dd2fe3a1dd07a7f16a + url: "https://pub.dev" + source: hosted + version: "4.0.0" info_popup: dependency: "direct main" description: @@ -952,6 +976,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.4.8" + overlay_support: + dependency: "direct main" + description: + name: overlay_support + sha256: fc39389bfd94e6985e1e13b2a88a125fc4027608485d2d4e2847afe1b2bb339c + url: "https://pub.dev" + source: hosted + version: "2.1.0" package_config: dependency: transitive description: @@ -1269,6 +1301,14 @@ packages: description: flutter source: sdk version: "0.0.99" + sliver_tools: + dependency: transitive + description: + name: sliver_tools + sha256: eae28220badfb9d0559207badcbbc9ad5331aac829a88cb0964d330d2a4636a6 + url: "https://pub.dev" + source: hosted + version: "0.2.12" source_gen: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index a29e31f..263fe7c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -90,7 +90,9 @@ dependencies: cached_network_image: ^3.4.0 url_launcher: ^6.3.0 - + infinite_scroll_pagination: ^4.0.0 + animations: ^2.0.11 + overlay_support: ^2.1.0 dev_dependencies: @@ -141,6 +143,8 @@ flutter: - assets/contact.json - assets/section.json - assets/images/ + - assets/icon/ + - assets/introduction_animation/ - assets/response.json - shorebird.yaml - assets/