From bb5770c80246241c0d14beb9e42252fe2bf38976 Mon Sep 17 00:00:00 2001 From: c21128207 <demetriadesz@cardiff.ac.uk> Date: Fri, 3 Dec 2021 10:03:24 +0000 Subject: [PATCH] Adding filtering system --- .vs/ProjectSettings.json | 3 ++ .vs/VSWorkspaceState.json | 7 +++++ .vs/client-project-15-main/v16/.suo | Bin 0 -> 18432 bytes .vs/slnx.sqlite | Bin 0 -> 90112 bytes main.py | 4 +++ static/Location.css | 35 +++++++++++++++++++++ static/scripts/Location.js | 47 ++++++++++++++++++++++++++++ templates/Locations.html | 26 +++++++++++++++ templates/main.html | 1 + 9 files changed, 123 insertions(+) create mode 100644 .vs/ProjectSettings.json create mode 100644 .vs/VSWorkspaceState.json create mode 100644 .vs/client-project-15-main/v16/.suo create mode 100644 .vs/slnx.sqlite create mode 100644 static/Location.css create mode 100644 static/scripts/Location.js create mode 100644 templates/Locations.html diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json new file mode 100644 index 0000000..f8b4888 --- /dev/null +++ b/.vs/ProjectSettings.json @@ -0,0 +1,3 @@ +{ + "CurrentProjectSetting": null +} \ No newline at end of file diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json new file mode 100644 index 0000000..d282b3b --- /dev/null +++ b/.vs/VSWorkspaceState.json @@ -0,0 +1,7 @@ +{ + "ExpandedNodes": [ + "" + ], + "SelectedNode": "\\README.md", + "PreviewInSolutionExplorer": false +} \ No newline at end of file diff --git a/.vs/client-project-15-main/v16/.suo b/.vs/client-project-15-main/v16/.suo new file mode 100644 index 0000000000000000000000000000000000000000..381e8b772446dfe9b5fc859d6374674e65bc497d GIT binary patch literal 18432 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 Weyg`v`F*R)|E~i5cXICb9sVCwwQ;)u literal 0 HcmV?d00001 diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..539c57ca73138669bcca56622d33f85059855353 GIT binary patch literal 90112 zcmeI4OKclSdVrfEMM{+D_N>Qd0w3HNEMPHqOJtMH#|#DtO|@)}DN5qQ9z!9BeiS9n z@Zlj_o)I!R(B2(n*TDdL%$_#6WPm*d$Yqg3E(_$4LoT@_i#=@)8w5ds1V}R298%Tq z7fp>kt7KL`VNvX^zpDQKtN;JI9+aC0wZ4j&-gq(;RVGVar9vU<_ZWtvs1^Kk1OJ$> zYxqONyuiOhj?eQxu27pfW|;`nzalc<qJOpi#roB?hw;x>U#|Qt7LFc-f3WoBQe)}8 zc}>9mZwvwAG1TnaS7OP>Y-o1SA1UaQ=IKxx54KUSKkBRf@u;hR93AcS2dJuat3g6^ zr6H7C0#mJT3-2?BXKJI9h%@-LSNF?zn2kesx1H4NdLovrU^VXtt63L^C|J2G3zV~K zE>MXGc9_autwwCE?^Vi8A@$vN*JDYR4Sk<gMQMP%rhBgwhBB@4y_yhUc_O}{bMZl} zDjm$XCEOPp%zmS~TW&mI9tuyGa=W!xt>b2Qg?bBXg@4+$+FhfS{mJ-QUqKURZBs@U zA%oBmc7%pduLw=%(5xYh)V_M!*|2WlCQ^14JZ|m%Z2|&gsFb$_SJAdm6YL^W869B# zQMplhP;P8+JfE@@_HZ?;?3@e+rw1qEpx^5wC8z=Sc$oDbVlT0InHHO+Wm!hkX<zCO zh=~?fub9UNeR8(RPJkp(nx|704K0M;TLdLz*FF!++E^Azd^W}(&o{sns*DFG!;xPu z5l_vw)?&#nj;pQ~SDL1>I2xfzMU;<G*RQ%BWnRH`ca(XH=eFaBId2{8d;Z=#sTb|I z7IB|-w21T8@?NjGBhFil`!^%bTjY$HGen#*pg}tOJjWGrTEB}O=Jou=3~Q%RroX$i zF$FE>HE;OhKRC!+r%!Q~G&7aig&BFR{t!)7arm^ukmS*-?&3^}^A+(#b~TpVN`;=& znkSmwlJ>gf&Ag#27B_~qU9TRrttXEuV^wmvmsw^QhMzI!9bIKlBC$#zp~(~nnlJM| zr&eOgR4Vl19nBBT#`NahSF3IxbQd~2&@6Bc(iuEY_Y6y6-5fj3rWa;evtP^9vs5NS z_I50m6j*b}ypG)67bj?>c1haymaPPipI6G+f@3JXVr0S)^mM+9A7`2h-U`H*XZND9 z<cB!(o!Xht5rszA{+f>b=Maw>_83zjZ?y%jEwJqsMqFQZPK$iq5-Pz8M;9n;*Ib}n z5ct%K2N69<SL`J1pykzb*&QI>Vn>L0i_RA+y3V$jpJ664cMR-Yr{ys+pCYewObK2u z!&j$-O^3Nx^-lw9;#A#}rfBjE;c1bbd5zg3vn}kD+qD)WpG>rfRn0VwgM1v0B{Mfe zvs+r2G?A+IM@L#r8}n`bPQ>j`emTvJwCTQHVP4Rt_Lri`J9k1)G|!oSgy(3eJ4GLz zpb?(6xi7;mzws1qjIi_H#Whp2`=MC!=FQM^q_t`2X8c-mwQ*?Nb-0{y=fXVgkvKTP z<LL3uHeRc}5l`Uv==w{F{w4j_^q(h6i5vI=UO)f{00AHX1b_e#00KY&2mpa!FM-)g zbeXEmI(YNw10<`J@u=57I+<v@(oMY5?91p6$cpwYL*U*?f1tRerf<E?9Coy=!MB>K zI8jfY8nR?1>nyG4>r%H6u06uX1Bv(_{?2lQs=Tp{q?4nTI5|S<w2jxg#=33#5S<=& zzVl&ZnR@4YcgRY(YM)^>^}X(C+IX?#x980&<D^`!r1bJ^UdkwJCZm+tQVz*PTq$Mw zVoAhhS%l<to|D;3E}vy{g<_f&v$DdXJfA`75?{z8d|S$La=ut#xnf3Ub8=o`MNZ7H zS*2LWNj;HMatd3JvXa6pS+<zXb8L<)C@k(G#};y2k3$^C=Vgv9rul4v$4V&qOpeWE zdOQ{?Wm&$M%l1${i^L+wmZV;>B$Z?ql@#1vx{$@)Wr?l@i7OO)d`2#?a-J*Z3$o1S z3u2MYmE=4tmXtKhNvN02mz1K^!$MLoSLAaAHZ7q%R$RdvU{hE*!zsNiuOL(^u}X={ za5As3r2;SFmawE);Ik~(<BNHzC-u^W0;}}o0$<9M*rFn0>!h5_N=lArGkIR&B)OOG z<ufc&iW$tjz-H4t&*t)ShAs6_8e5l_<r1GwXESLQ^-4t~mC~%#D@k}*P>z)(o@3L+ zbec=2<&v1svpp`WNW8?c1tne7$4)GyOUBqqd6dh_Y_Gt}#e$S(6@|wzd-*h5%Hy$< zm7bE$7qR6WhlLcB&maz~s~|RqIFS`IS!@T#Wu#1@gvp~D;Rv-wYkr13njAJ&#wQ~+ zb9*U5vDwN5i7Ha|CheyR`H;zMWlCFIn#(Ym%-i@Mm%9;)P`8s!d;&8Rja}KyW_FV& z>;EPC=M?=P_zhk_00;m9AOHk_01yBIKmZ5;0U!VbfWSA8z?(~9Hst++OLQ$1z8Nz1 zvZ8TpRg^xa=zpaDi2f=41$|8a+c(cp&=?2+0U!VbfB+Bx0zd!=00AHX1c1Q*4+6Ks zmC!4`*b*h>ulT;n^3Cu&p*deQiChnFg?wKP2)~Kf{@yPJEL{!XUUhv5K>Pkb-J$4z zrT?D(EBepq8NPrQ5C8%|00;m9AOHk_01yBIKmZ5;0U&U80&hj56u-I}H5UHn-;Zp5 zFddIp{^7^FE&eB~x0a*S7PT5}O~m2!7%AP__-MTO!P6rm(EQ^cPm+-+bqfnj)zbmm zl&4dxAgmYQ|0->JSJ)gXR>6{9a6BHO&0}>qFbm!YMX77lN_6v?)<`S+CqLEC|9?c$ zU()|V|A_uM{de?F&Tb$`0s$ZZ1b_e#00KY&2mk>f00e*l5C8&S2Z7%T^XB&kT-ygx za_H~dGgwZ9Z-uOlf(W^?b_c@b%GwfGiiWSP;(Y*p{r?M!{vZ0k=zquG0{A8Ui?2g( zXafiU0U!VbfB+Bx0zd!=00AHX1b_e#xKIL-@M<U;2~(kE@)jX)Ve+;V4pXc8`u~R% z{onLI(?7)j3&7vfe|e$WL1#b!2mk>f00e*l5C8%|00;m9AOHj|HG$ub@T<W`|2HCA zRKVH)mB=m1arm!Y+Nb~8rG5M#i(I3~`9Jylf9mR`1`Wmo0U!VbfB+Bx0zd!=00AHX z1b_e#_>Ct(&i`Tk{~JHdU?30x0zd!=00AHX1b_e#00KY&2wZXkaQ=VE9RSP+0zd!= z00AHX1b_e#00KY&2mpagK>*JGFU2r}kw5?l00AHX1b_e#00KY&2mk>faLEb4`Tr$% z05Bg200AHX1b_e#00KY&2mk>f00b@t0XYA^6vGTg0s$ZZ1b_e#00KY&2mk>f00e-* zB_{yu|4Z%wU_KB40zd!=00AHX1b_e#00KY&2wVyR@csWwG0b2j5C8%|00;m9AOHk_ z01yBIKmZ6_asp)iACHA8I)CM#u1wdzSiidVF#h@K%axzS!qJ2950<`MYAn5X$svLH zUx`5EFOrYh(CnZ;QqU*O)1fpTY@=R()K~lCQCI&sI@;+EP*v$xgM{cxLnyZdrdr<? z-e(Ta)J7)}XYgyU?w9W{8;9<0JE__AL@ZgsYTgf4vn~!%uyR)xC}-DPpb`=6FqOSp zjo4b>tCX8U>bvi*$C4}?`aY|Q(g1l)_g*IqWm@HXH6g(AM0`W%;)7UKI+$-uxGyxA z{YG`S+<3w~6rM2Uc5AO%$Ib2v^%m9&|FmnhyGASflku~@f+o(|ri?B^2B9JB2o0fL z5t_`QSwk49ef6}nVcoz@r0gnq+}iuw1O&!VDQ^p|qHUoj*hQu?I>7p)a-;H~+}PlF zK4mHF;c8adIT;L24^G5Ezt=}fPy_DqFzY?UUSjhyEjCNbvW%wFzSJKO6D_P>F^>=W z<ZP3j07;-UPp2vxS_r+j2ujATeIAyzu`H7KY>YpiZ-6OO84pf|BfnfCo|<i~#gbhd zS6wZxG)-l3G(wY#C?BJ)Uv)joyn^fQDDxK2ZO0LF-a6R#{JnQlFWPY};y&wW5$CPt zy<T%ioVOVFZ$_NA$Qd(dh&W?FgLL+Jjw|A{eiu8;>-mcr)=r~Le|KqP3R=!<-tfhL zaFDl7pW-ZOW-7A_GxA#fA)2b<@M(u3$)i=>#hDc6E8>alYAm^x3O%PaPc*wF?RCkU zc|%t$ZVYR?UOi}APaados^oAlv&=9IKV!^0y2_qJVwFBZlPL}~U*>;Kt;CY4ROrP! znje~t>CL;ZR^2}6E_8UHS>PO`GkBiv8J5DjId+;&FU+!Lzm}<IsZ56K?N}@+u;!3? z9l5(NPS8m0lC<qDTL~OLuavU|$5493$b=#2>3kPI&NLOg6^Jj-?nPtC4{_!@wKJb1 z3XQJ)H68iSAs#dAF{VJ?Y71IhVB0H<xW4S17Wuj*RDu<bE>PI6xj?xf@TnIMB6^ap z*h$(!%d6+IJ3zd}ju7z{oi9{$ooz2a!%SrE7}&W^%VT6dMPBEa61-l9uTBY@4s);S zp9a>%sk$dk(c~Gz(;_?b8nZ=aTi7YLYb{1TnP?HKnrRvb`8XU)W^RUNx3n;6B312= zj<lFI=G*$6h})n1a+(`y(|x_dyr50(FGZ7g?u4Fbo-_Rj&(TnKiat6)BRp$!Uxr<N z<0;%2VduY#Yo=!RL$Tz|o1y1OYtzup__gF}<IuS4a5>}7g?ZW|ad3ji(c_)^LsDD+ zQ=e0Gef{&b|6JQ!$;3X5{!OG7{!@JO!e5_VeKU5QWmjH4e%41Hlezl7s2*!iz&@IK zuMN(Rs={N&TgHgfMEr5J^#I3BrQK*&9|?Y$a?_Zqk@#xjB}S#i`11i%ZZh}8scQ~i zRqitL0+`5Gbida{^d~r}Lehk*SUqNT8hg9GUhT-m^O3!}eW`0{UlYyuHv`mji|jNv zzq-1<CN%Xw{gk==`?neVYk$)+6WigmT0OSw>h^htl1T5{GSzw=uR`C$>rNjDBDvGV z%X(WH8xt@}?>hA%Nyo&FQ%)joj&5`Fckg=io?4EPh`&nNvnYvGou`|BjIe_~z{})d zXJM*MZ6Z6{xE4zurb4qPo>|4VsETt}K{g*EcEg=Y-Gy`82z*SF=18Ko+b}VAQs4RH zTiOKndv`p~Xi~|pK(4O4bELb_kt*E<=gXLO8<wi}Bi49e+0J#2$Lwpayv@n7(>imR z<9h0wg1Q;6+DUoUO3Ho=ES|@oV_IW8Y+Azm?v10CI5|RU&{Js6PEBPzQqd=8sX-PF z+#7h;A?w<8(58nC)I&HK$f#?5BK}}*Jleit6~8$zSS*R)rUJvos)I+%`m8H}7Yy9h zMM`g@r)Z>zBXxn&*A^=s*wjL$J+(Ti&u-GOWHuXm>DVoClMY~dbzZnzOaf!xD)k5M z8CJ38{)rhjLGcwF_hya7f%cWREWJFx-b`ehbDk|g3%B8*wr>Bo3lW!IWJ1_stn@M` zdHfo)jkWXS-j_1=oW6Y}28SP2a;D=*E#5<mxhpj|{D8xcbM17z<`m34*SLI#AMp48 z7rw~>9RdL$00e*l5C8%|00;m9AOHk_01&uv0<iwSaOBV-5C8%|00;m9AOHk_01yBI zKmZ5;feR-9|Nq~GBZm%w01yBIKmZ5;0U!VbfB+Bx0zd!=TsQ$Z|G#kL&>;{20zd!= W00AHX1b_e#00KY&2mpZ#C-A@SjSijw literal 0 HcmV?d00001 diff --git a/main.py b/main.py index 14a2dbd..ba46803 100644 --- a/main.py +++ b/main.py @@ -15,6 +15,10 @@ def home(): def about(): return render_template("about.html") +@app.route("/Locations", methods = ["GET"]) +def Locations(): + return render_template("Locations.html") + @app.route("/contact-us", methods = ["GET"]) def contact(): return render_template("contact-us.html") diff --git a/static/Location.css b/static/Location.css new file mode 100644 index 0000000..18b4e40 --- /dev/null +++ b/static/Location.css @@ -0,0 +1,35 @@ +.container { + overflow: hidden; +} + +.filterDiv { + float: left; + background-color: #2196F3; + color: #ffffff; + width: 100px; + line-height: 100px; + text-align: center; + margin: 2px; + display: none; /* Hidden by default */ +} + +.show { + display: block; +} + +.btn { + border: none; + outline: none; + padding: 12px 16px; + background-color: #f1f1f1; + cursor: pointer; +} + +.btn:hover { + background-color: #ddd; +} + +.btn.active { + background-color: #666; + color: white; +} diff --git a/static/scripts/Location.js b/static/scripts/Location.js new file mode 100644 index 0000000..d940a35 --- /dev/null +++ b/static/scripts/Location.js @@ -0,0 +1,47 @@ +filterSelection("all") +function filterSelection(c) { + var x, i; + x = document.getElementsByClassName("filterDiv"); + if (c == "all") c = ""; + // Add the Show class + for (i = 0; i < x.length; i++) { + RemoveClass(x[i], "show"); + if (x[i].className.indexOf(c) > -1) AddClass(x[i], "show"); + } +} + +// Showing filtered elements +function AddClass(element, name) { + var i, arr1, arr2; + arr1 = element.className.split(" "); + arr2 = name.split(" "); + for (i = 0; i < arr2.length; i++) { + if (arr1.indexOf(arr2[i]) == -1) { + element.className += " " + arr2[i]; + } + } +} + +// Removing elements that are not selected +function RemoveClass(element, name) { + var i, arr1, arr2; + arr1 = element.className.split(" "); + arr2 = name.split(" "); + for (i = 0; i < arr2.length; i++) { + while (arr1.indexOf(arr2[i]) > -1) { + arr1.splice(arr1.indexOf(arr2[i]), 1); + } + } + element.className = arr1.join(" "); +} + +// Add active class to current control button +var btnContainer = document.getElementById("myBtnContainer"); +var btns = btnContainer.getElementsByClassName("btn"); +for (var i = 0; i < btns.length; i++) { + btns[i].addEventListener("click", function() { + var current = document.getElementsByClassName("active"); + current[0].className = current[0].className.replace(" active", ""); + this.className += " active"; + }); +} diff --git a/templates/Locations.html b/templates/Locations.html new file mode 100644 index 0000000..97c6bfb --- /dev/null +++ b/templates/Locations.html @@ -0,0 +1,26 @@ +{% extends "main.html" %} +{% block title %}Locations{% endblock %} +{% block mainBlock %} +<div id="myBtnContainer"> + <button class="btn active" onclick="filterSelection('all')"> Show all</button> + <button class="btn" onclick="filterSelection('Wales')"> Wales</button> + <button class="btn" onclick="filterSelection('North-England')"> North England</button> + <button class="btn" onclick="filterSelection('South-West-England')"> South West England</button> + <button class="btn" onclick="filterSelection('Midlands')"> Midlands</button> + <button class="btn" onclick="filterSelection('Scotland')"> Scotland<button> +</div> + +<div class="container"> + <div class="filterDiv Wales">Location 1</div> + <div class="filterDiv Wales">Location 2</div> + <div class="filterDiv North-England">Location 3</div> + <div class="filterDiv North-England">Location 4</div> + <div class="filterDiv South-West-England">Location 5</div> + <div class="filterDiv South-West-England">Location 6</div> + <div class="filterDiv South-West-England">Location 7</div> + <div class="filterDiv Midlands">Location 8</div> + <div class="filterDiv Midlands">Location 9</div> + <div class="filterDiv Scotland">Location 10</div> + <div class="filterDiv Scotland">Location 11</div> + <div class="filterDiv Scotland">Location 12</div> +</div> diff --git a/templates/main.html b/templates/main.html index 3c531ed..d390e91 100644 --- a/templates/main.html +++ b/templates/main.html @@ -24,6 +24,7 @@ <li><a href="/">Home</a></li> <li><a href="/map">Map</a></li> <li><a href="/contact-us">Contact Us</a></li> + <li><a href="/Locations">Locations</a></li> <li style="float:right"><a class="active" href="/about">About</a></li> </ul> </nav> -- GitLab