From fa02287d7e08e4c0a2bc3e441ae05c7eedc44243 Mon Sep 17 00:00:00 2001
From: Brian Wood <legion.the.unforgiven@gmail.com>
Date: Mon, 21 Apr 2014 16:03:04 -0600
Subject: [PATCH] You can loan a movie but not yet return it

---
 project/controllers/loan.py                   |  34 +-
 project/model/Loan.py                         |   2 +-
 .../ui-darkness/images/animated-overlay.gif   | Bin 0 -> 1738 bytes
 .../images/ui-bg_flat_30_cccccc_40x100.png    | Bin 0 -> 220 bytes
 .../images/ui-bg_flat_50_5c5c5c_40x100.png    | Bin 0 -> 230 bytes
 .../images/ui-bg_glass_20_555555_1x400.png    | Bin 0 -> 260 bytes
 .../images/ui-bg_glass_40_0078a3_1x400.png    | Bin 0 -> 342 bytes
 .../images/ui-bg_glass_40_ffc73d_1x400.png    | Bin 0 -> 316 bytes
 .../ui-bg_gloss-wave_25_333333_500x100.png    | Bin 0 -> 3816 bytes
 .../ui-bg_highlight-soft_80_eeeeee_1x100.png  | Bin 0 -> 276 bytes
 .../ui-bg_inset-soft_25_000000_1x100.png      | Bin 0 -> 275 bytes
 .../ui-bg_inset-soft_30_f58400_1x100.png      | Bin 0 -> 340 bytes
 .../images/ui-icons_222222_256x240.png        | Bin 0 -> 6922 bytes
 .../images/ui-icons_4b8e0b_256x240.png        | Bin 0 -> 4549 bytes
 .../images/ui-icons_a83300_256x240.png        | Bin 0 -> 4549 bytes
 .../images/ui-icons_cccccc_256x240.png        | Bin 0 -> 6975 bytes
 .../images/ui-icons_ffffff_256x240.png        | Bin 0 -> 6299 bytes
 .../ui-darkness/jquery-ui-1.10.4.custom.css   | 650 ++++++++++++++++++
 .../jquery-ui-1.10.4.custom.min.css           |   7 +
 .../static/lib/jquery-ui-1.10.4.custom.min.js |   7 +
 project/templates/index.html                  |   2 +
 project/templates/library/library.html        |  25 +-
 .../templates/library/loanMovie_modal.html    |  51 ++
 project/templates/library/master.html         |   2 +-
 project/templates/modal_base.html             |  13 +-
 25 files changed, 782 insertions(+), 11 deletions(-)
 create mode 100755 project/static/css/ui-darkness/images/animated-overlay.gif
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_flat_30_cccccc_40x100.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_flat_50_5c5c5c_40x100.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_glass_20_555555_1x400.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_glass_40_0078a3_1x400.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_glass_40_ffc73d_1x400.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_gloss-wave_25_333333_500x100.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_highlight-soft_80_eeeeee_1x100.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_inset-soft_25_000000_1x100.png
 create mode 100755 project/static/css/ui-darkness/images/ui-bg_inset-soft_30_f58400_1x100.png
 create mode 100755 project/static/css/ui-darkness/images/ui-icons_222222_256x240.png
 create mode 100755 project/static/css/ui-darkness/images/ui-icons_4b8e0b_256x240.png
 create mode 100755 project/static/css/ui-darkness/images/ui-icons_a83300_256x240.png
 create mode 100755 project/static/css/ui-darkness/images/ui-icons_cccccc_256x240.png
 create mode 100755 project/static/css/ui-darkness/images/ui-icons_ffffff_256x240.png
 create mode 100755 project/static/css/ui-darkness/jquery-ui-1.10.4.custom.css
 create mode 100755 project/static/css/ui-darkness/jquery-ui-1.10.4.custom.min.css
 create mode 100755 project/static/lib/jquery-ui-1.10.4.custom.min.js
 create mode 100644 project/templates/library/loanMovie_modal.html

diff --git a/project/controllers/loan.py b/project/controllers/loan.py
index 5b9c0ed..7b8c8ac 100644
--- a/project/controllers/loan.py
+++ b/project/controllers/loan.py
@@ -1,6 +1,6 @@
 # -*- coding: utf-8 -*-
 from project import app, security
-from flask import render_template, request
+from flask import render_template, request, jsonify
 from flask.ext.wtf import Form, TextField, validators
 
 @app.route('/loaned')
@@ -40,4 +40,34 @@ def reminderEmail(user=None):
 	server.login(login,password)
 	problems = server.sendmail(from_addr, to_addr, message)
 	server.quit() 
-	return jsonify(response='success',type="reload")
\ No newline at end of file
+	return jsonify(response='success',type="reload")
+
+@app.route('/loan-movie', methods=['POST'])
+@security('user')
+def createLoan(user=None):
+	import smtplib
+	from datetime import datetime
+	borrower = request.form['email']
+	return_date = request.form['date'] or None
+	movie_id = request.form['movie']
+	if return_date:
+		return_date = datetime.strptime(return_date, '%m/%d/%Y')
+	
+	if not movie_id:
+		return jsonify(response='error',message='Invalid Movie given'),404
+	from project.model.Movie import Movie
+	movie = Movie.objects(id=movie_id).first()
+	if not movie:
+		return jsonify(response='error',message='Invalid Movie given'),404
+	
+	from project.model.Loan import Loan
+	loan = Loan.objects(user=user,movie=movie).first()
+	if loan:
+		return jsonify(response='error',message='A loan already exists for this movie'),404	
+
+	loan = Loan.create(user,movie,borrower,return_date)
+	from project.model.Library import Library
+	borrowed_lib = Library.objects(user=user,unit="Movie",name="Borrowed").first()
+	borrowed_lib.addUnit(movie)
+
+	return jsonify(response='success',type="reload")	
\ No newline at end of file
diff --git a/project/model/Loan.py b/project/model/Loan.py
index 7247cad..ee7eabc 100644
--- a/project/model/Loan.py
+++ b/project/model/Loan.py
@@ -12,7 +12,7 @@ class Loan(db.Document):
 
 	@staticmethod
 	def create(user,movie,email,expected_return_date=None):
-		info = Loan(user=user,movie=movie,email=email)
+		info = Loan(user=user,movie=movie,borrower_email=email)
 		if expected_return_date:
 			info.expected_return_date = expected_return_date
 		else:
diff --git a/project/static/css/ui-darkness/images/animated-overlay.gif b/project/static/css/ui-darkness/images/animated-overlay.gif
new file mode 100755
index 0000000000000000000000000000000000000000..d441f75ebfbdf26a265dfccd670120d25c0a341c
GIT binary patch
literal 1738
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
ILl_vW0W4M_7XSbN

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_flat_30_cccccc_40x100.png b/project/static/css/ui-darkness/images/ui-bg_flat_30_cccccc_40x100.png
new file mode 100755
index 0000000000000000000000000000000000000000..b22fa62b835698d9770d2f0c89cf3966f163cc96
GIT binary patch
literal 220
zcmeAS@N?(olHy`uVBq!ia0y~yV9;P-U`SzMU|?Vn`F~(J0|Nt7lDE4H1HYA#-C_m?
z2F?PH$YKTt1`jZHJDF|Az`!8q>EamTaXi_gnbn|&s}BV(Vq!=+WhMQ?USbgg1A}Ub
zYeY#(Vo9o1a#3nxNh*VpfuV`6fr+k>L5QKHm8q$fp{1^Yxs`!I%N6I@C>nC}Q!>*k
VaclV6`CA?2Y)@A|mvv4FO#p>xHpu`0

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_flat_50_5c5c5c_40x100.png b/project/static/css/ui-darkness/images/ui-bg_flat_50_5c5c5c_40x100.png
new file mode 100755
index 0000000000000000000000000000000000000000..5fb0ca98c2cae886535599a20230a865b6848256
GIT binary patch
literal 230
zcmeAS@N?(olHy`uVBq!ia0y~yV9;P-U`XL$U|?Xl$gjJMfq{W3$=lt9;eUJonf(k5
z44efXk;M!Q3?5+Yb~4)zq{q|6F(l&f+f#<T3=BNX3%J(S%WmCJ&Ut5vyP#{J2o!xR
zmU%mS?iu^Y*_{jw45}rr5hW>!C8<`)MX8A;sSHL2h9<fOCb~ujA%>P#rlwYgmbwP!
lRt5$wSDa^~Xvob^$xN%nt>J6uZ*`CdJYD@<);T3K0RU;xK3f0)

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_glass_20_555555_1x400.png b/project/static/css/ui-darkness/images/ui-bg_glass_20_555555_1x400.png
new file mode 100755
index 0000000000000000000000000000000000000000..152d6a3cebc18295055d5d06965e5d4bcc31235e
GIT binary patch
literal 260
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVpz`(#DwYbxTfq{W3$=luK|9_FyhG!WV
z7&r?&B8wRq7(Bq(?PRtc0|SGbr;B5V#pz^^Uxy94+yt)%W@tFSux%?)Z0qo8JK@fA
zky|1uS@Kb?q)@8Fq&&kVKItCDX&&*1Cwy#BES7bC)*5Ki)#1pH{EAU%r;V^F0|SF<
ziEBhjN@7W>RdP{kVo554k%6I!u7QcJkwJ)|rIo3vm7#^Mfw`4|fzo0ReH0D3`6-!c
WmAEwo|NAf*<ULPUKbLh*2~7Yfrb&+g

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_glass_40_0078a3_1x400.png b/project/static/css/ui-darkness/images/ui-bg_glass_40_0078a3_1x400.png
new file mode 100755
index 0000000000000000000000000000000000000000..4c75be471d0c90ff05ed9ee1a1377208f050d960
GIT binary patch
literal 342
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVp#K6F?VU^=~1_lPUByV?@|6srw@%;`1
z0|RG)M`SSr1A_+`yPeFoV_;yI;_2cT;&J@#c|$(NK#|sm)&GCr6IdOP$bN=xiV&~$
z1cRle0h(%pGi_glrm<=TYAl=Mw|IuvL9v!cVeuc;)h&%G@_ru|RZ>#wdu(y;`p&Xf
zFO^-tS6!BU=&)AUX~F7jr(->HW<+_q8f`Kb-MFF6%rlW!H_6M>_0N{>+%GO?W=u|g
zZy5b5;{6GywoAYJFZVsR*#DUI;ts`Edo|LN85kH;OI#yLQW8s2t&)pU6H8JVj0_A-
zbPY^&jSNBzEv-yVtqd)74a}_!3|g)@&qmRZo1c=IR*74~*UsPS3=9kmp00i_>zopr
E029G_{Qv*}

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_glass_40_ffc73d_1x400.png b/project/static/css/ui-darkness/images/ui-bg_glass_40_ffc73d_1x400.png
new file mode 100755
index 0000000000000000000000000000000000000000..2423c07962316df630bf3b97ec8fc74850d89fe1
GIT binary patch
literal 316
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV4NVp#K6F?VU^=~1_lPUByV?@|6srw@%;`1
z0|RG)M`SSr1A_+`yPeFoV_;yY@^o<w@i_kW{6fJ)4ic;nYv1#6_wg-YPg`_wDTCUL
zE0dx!m_*drSgkUd{8$h3$O?R3?Y|~!*~_}@C}sx%7RL|laZ>ZxWVae$SiagZIZ7%d
zDEWe#c=Pt15+P6bI$nMBA^X?1P%G&#=hU04;(1>EG1#zd-d{70ri3&*p4*ah`yC|@
zF)%QwmbgZgq$HN4S|t~yCYGc!7#SFv=o*;l8X1HbT3VT!S{YjC8kk!d7$`0F&_~gb
do1c=IR*73f@V^g}85kHCJYD@<);T3K0RUDKXX*d|

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_gloss-wave_25_333333_500x100.png b/project/static/css/ui-darkness/images/ui-bg_gloss-wave_25_333333_500x100.png
new file mode 100755
index 0000000000000000000000000000000000000000..997e311a7166cbf111222b853292e86c49c67cab
GIT binary patch
literal 3816
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

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_highlight-soft_80_eeeeee_1x100.png b/project/static/css/ui-darkness/images/ui-bg_highlight-soft_80_eeeeee_1x100.png
new file mode 100755
index 0000000000000000000000000000000000000000..625abae16a367a4c68a498482936579706d21647
GIT binary patch
literal 276
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU`P>QU|?V{x_<LN0|Nt7lDE6d|NkPZ4bL(#
zFmM)lL>4nJFnEBm+sSM@1_p*OPZ!4!iOWY1t(9~L5NUXr&*~}gCV{Cji>qv*)+*MV
zg<53+?|1Hh9v1z<PJidK#jI5ejc-k~$y7BxGTTCE$_4?gKaKf?>UoFK-n6})$bNGo
zqo(1r<N995roN2z_0nQsU{Eb_jVMV;EJ?LWE=o--No6oHFf`FMFwr$K2r;y@GBvd_
pwA3{)w=ytjx#Bz<MMG|WN@iLmZVg{Mf2)JM>*?y}vd$@?2>@RfSB?Mx

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_inset-soft_25_000000_1x100.png b/project/static/css/ui-darkness/images/ui-bg_inset-soft_25_000000_1x100.png
new file mode 100755
index 0000000000000000000000000000000000000000..02524f961f432491ccd57e2fe60058ac2cc699d8
GIT binary patch
literal 275
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU`P>QU|?V{x_<LN0|Nt7lDE6d|NkPZ4bL(#
zFmM)lL>4nJFnEBm+sSM@1_p*uPZ!4!iOb0e5)lOx8b1m!Z#HK3)@Gh9&HS5_?VKOm
zyF9kIc(#9>JWaxqE$YS{e#rv!4=PwrcC0dM&e3V!W7B-dnQf^G+tZ^wTK<w(u1H+D
z^rD#|KT}ccNY-o>1_lPz64!{5l*E!$tK_28#FA77BLhPdT>}$cBZCk_ODj`TD?@W#
n19K|_gDbBsj-hDC%}>cptHiBg>9&R{kZ(O*{an^LB{Ts5WN1(4

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-bg_inset-soft_30_f58400_1x100.png b/project/static/css/ui-darkness/images/ui-bg_inset-soft_30_f58400_1x100.png
new file mode 100755
index 0000000000000000000000000000000000000000..4063d6e743deef62e9b8515b4b54f129e56c5456
GIT binary patch
literal 340
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU`P>QVqjpHaZj*>fq{W7$=luKKNxUEe80oM
zz`$AH5n0T@z~BMKZYQ(t7#J8PdAc};Xq<mLVI$|E00x)$_pUn$C^dRGU5ZlKo7|E8
z!#do+qG@wP3Wu!XQsE`rJC2+RlU{wi@Q&=9wud#-CM>bHOJ2BGuHq$k^psuSc~#$K
zT)b7RHD%ZHHly<^0^YS*tP+}fuU%U!rrn~_(p2zy-XX@P>pE8y2tT^=sVn_`tF_mi
zpDjYATQW>nE$A)ZU-xo%1=H(&5;6?(Kg}2z7*tDKBT7;dOH!?pi&7IyQW=a43{7+m
zOmvM5LJTdfOiir}&2<gTtqcsVytX)oq9HdwB{QuOw}z$L8mbr=7#KWV{an^LB{Ts5
D-4=WQ

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-icons_222222_256x240.png b/project/static/css/ui-darkness/images/ui-icons_222222_256x240.png
new file mode 100755
index 0000000000000000000000000000000000000000..c1cb1170c8b3795835b8831ab81fa9ae63b606b1
GIT binary patch
literal 6922
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
BB7*<`

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-icons_4b8e0b_256x240.png b/project/static/css/ui-darkness/images/ui-icons_4b8e0b_256x240.png
new file mode 100755
index 0000000000000000000000000000000000000000..232832a5aa0a7883c1e0acacfec59e2d1c2088d4
GIT binary patch
literal 4549
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
G2~7aJHYxG|

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-icons_a83300_256x240.png b/project/static/css/ui-darkness/images/ui-icons_a83300_256x240.png
new file mode 100755
index 0000000000000000000000000000000000000000..bb22520bbb2a0f465c780e096552d6d8df8e51bd
GIT binary patch
literal 4549
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
G5}E)eswYVR

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-icons_cccccc_256x240.png b/project/static/css/ui-darkness/images/ui-icons_cccccc_256x240.png
new file mode 100755
index 0000000000000000000000000000000000000000..4185f972f582f949e023162978c0148e84158572
GIT binary patch
literal 6975
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

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/images/ui-icons_ffffff_256x240.png b/project/static/css/ui-darkness/images/ui-icons_ffffff_256x240.png
new file mode 100755
index 0000000000000000000000000000000000000000..4f624bb2b193750f1a5b36c8c307168c6681a861
GIT binary patch
literal 6299
zcmeAS@N?(olHy`uVBq!ia0y~yU}RumVEDkn!oa}bI<Lrqfq{W3$=lt9;eUJonf(k5
z44efXk;M!Q3?5+Yb~4+JfkAwSr;B4q#jUrou^p<%OaE2v-If*>xBNI$t98z%)sa1q
z78n@sV%{j%^iGXK^ELb3*Z?`6#@*8-)EOVIk@t1bZamSQD7!%+d&$kC4-#Y!c`2&Z
zc^FAwYf*5!CE9f3*a>_7nTit(y5iLmx+k~)TfNGzbk(lk_jcNc#v2#Ee;Zu->UmA*
z-Pq-;tQ1{ZdW0{Zb2w5W$SGi<#8~ph;f1fY@bOL$22tBL%s2QunI5Yh_;TByKlgpM
z@#po2+!~!ee>rX8_JU=CwSyKv=elpn{r;7&Y_lc8Z?y{Eo~mH{-_eiJ^E1;|K`q8(
z7a7-;T?ja$dn>WHq?234qk!Q71E-K<@pPkeGLtqLin!|BYUE|PvdZ0cnR=$^{*2UZ
zUt%+ZkMH@NRW`M-FW@Uf5&H}7mAt$3<s)BB;!M@Oduv$<XOL<6>-01p&&SqkJ4HQn
zH+Zeey<M0+;r6mQ<vaP;nC$*FbEi`=(}@Ku!+rUGujN#WZ{j+8S^u$wVII>N>#7^^
zDxY_OJp0Ha;Xwxrhs;EVMr9#|0v9HhK97b2V3`^Q<9Ay=*PqESl0T5|)^J+#vhZ`}
z6Pi2DUQV@ZxGg*HY3)LfOF4E8^VxmYIqhx?)4g9?y8F!gOZ)O`Zf(^+lhg34rh(_%
z#ScnTp5$*n9lNpi8MDXE$-(8vr#tR^_o!HL!Fl!v`(9goc*Xj|;N7>E#_|qX^>vk-
zFSpOx%sXp|iFn3io=Gz6HrvTNC{17eU(-wO?m?zy@s_dAnSHGPAMbg=$0t*$pn>dU
zB}OK96$h|?)R)g~oXPB4IA#Cuh|I@-=D!iERhnvWR%U`R``cK@cQb-DcGht!IDGl~
z`whQ?u8QwPGv4rj#+TI>iJ4p8I`&Pw(SHS7p??Nr%u#<Eu7v*i6(JM+1w9JB{dl4;
znDQ%qvk6z{Znh^vr&yHSa}HeX*!pMnbcXwnZl}H8p{*(D%<jKP{Zgsu+eyq?$?9uD
zeCK*E&4~MEGeKc`Y53B~vm0lfX33}$_K;h9T=Z1?+_$%O%r6w?e><tM=F7IVj4L^R
zy(qix=zH&p;f7a_YMeeA?c^>oj=1*lRnp&G8R6VTOWzd>-xSO1+Wj<&&!@cLg+Jrx
zxpm#gPguw+6daj&033TrK>>~07v0X?XM>irf3JHmxy7INM}^Dnqs41`zxgf|)M66h
zUR<-SIzOE8v9opTx;ekEHf*_?^R)N1Y2VzRn%#%v+TvbIDJV~8_;GaMCm}!i{<3~c
zb33jZB|md{6VLCD=e=?1h2-h%>fWSq)q<}Mcc(48F81P;^Fh1YD|b&zxGmQ4>+F)k
z=LeP@-`l#|`gxu7rO$TTcV!AYzl(~9lWdQk?=dUwW@1ipg!)$lU(N^djGoOq>MSR$
zzMx+F{Z?J|uXQ){n0CB&Fk3L2!KhJ(CF7e&K&XRsf9RqY54KMJrn&S!Tj;*q_nbXe
zu77sv5!bo*3JOc(k34zL7&B}2Ug;%Y&!*`~pJSh(<*>hTVwZlppVp!!&bqUzZ;7Wf
znKLdGl97=1kTJRTfc@ki_NUqTe~LPnO=qx=H?`c}F=2gEY|`&g{dm6p*#+M<b0^LF
zroXlDKJ$i-&x|2o=H&ZCS%7kkg@}v=dVnX~nX&n}R<T_J_oV%&mcQ8B_wSwO;_7!o
z#}mHyOx<fI@6hzb@Vlg{j!oHWIc}e~FLv$lij$jXF@66o-kfgz%=tpA8Wl{V-`%Zy
z-Q4@?(uuPC|KDUY*i`!GYL_MPE}yrx(t7F9#ZOef>c8CBu%CT{uhoRVp;wnKJiDZI
z&C?yreQ$m@Q26od*Ce*|oh3WJ+|{0)F7)g-(<-f;Uu=1wg(jJFM0@<5=CE5lfBStW
zC!@uy+do{_c`I0OW<?dl)xaBS+3U<Xcg$TIyS}gUQu7DfmVYN(CH%FY1zo7_mo(g8
z$7!Kqe6;jIB>Q~d?~e)<&ar>^_-*(0_6dP!SsyG9IT0Ek+wx|2w}|58wjfiN+nlDt
zjPH3>vf1A~*4cWOrSI^~SLWFp-}Wv$@2kSV?wEdThh4|J1X<(Drt;#TV3gtFLo1IA
zt64nKPe*TiVZiy|`RQpfW=~YNwt5s+==eXne2+ab?LyA(iurGs2(KwQabA&Y(vqYd
z+oG?9M=UUJC~x#*sGJfd_f{{ew99!KQwZObPubr$t*c+kQ<%{iUz5Fk<*r-5f9%bw
zI~XYFaR1%jzEkpfw~cHaC(ZuPY^J+2`~0qd{2P?k%+(Ege))R3$c(5z+xj{9js|SF
z|Ei4hXpHpipJ#Vkr0GBUr8{@6_nCrc-vlp3pKETiQq^(1>!bE2Sn`jW%MJCZGg&tI
zo_tXJ;+CDG`j4i)O#8T3iMy=`O}n3P<nJ}^``5j0JdtEwQ6?W~(eyL+=hr_!_LwO#
zF>JSQxPR*FuK0U<oqJWz=E*%3*tPA*>lnuGd`^vr{<jMLT65#o?;VNzyI-*Vf2-Vd
zXw6yn8B=~L>&!4^a*;7kJ1;I!xCW_o*AZg;wN!n9z2IN<jZ@^$-rH_<`2>f-8SOmr
z!`EiTl~w$TRk(8@joZXDNxu5&cU!Zv{ld0>kHRZN+$|0*{vqn!xX<`|_Rf;CliFh6
zb#dCH%M@`PyTi9=waEfTUQbuiZC3Uw5qw(q+qdq>;)ts*>shh>r2DKb{%XH^pH%Vf
zyt7vF<8_{&LTiOD3h4@7w9@4?J+M5mJ;eE+km-?a<&vibSSP<{WOx^$R($8!^g@1z
zuG>#{TJK0meJrk{+;#ft_QkW_sO?kSvfnmE+B@Y2d!oO0B7d|OKSPdWk@>ywqUldB
z^wi6rt`KmL|K7Wy%C1q@?a}PndiwLHZ*2R1`u);nO$^^Z`<F_!&3anRP}ibdxb1w<
zzskc>j}|+<(XQaX-SlVDGp~J10t^q|=3?FUVVk1rif-edqHXd=^-sN@pYZvEf?Xra
z@|Ku5k(6cblcs;xU*IR9dzK?^#((|~=U=^i6;<{k;DfTv)k7~LPjGBd%GkVB`oL9Y
zhWx1_3NeSGeL9+$N<XK2^q#MJR~LKcCEGvgdX5M38xJ0<m)6ic@;pKN{mL)*UReap
z_}{-_P4I#5b<>RN_cAf=Tzu-*IseF+tJyU)7`lH>T+a8}_g>}W%SVLj=G9xD_K-ia
z`^JG<2I&fM{)hj0c3N_;d}|b3?*5+Zqvappw=rq|^dC4f{AXY|%6jL&;fB1r%?-;7
zxR!6|3BKm{iP5HkouNSY&9cLP9QgAe3h6!6Jza9nj?dtT0K4w{&(l9f|J)dJI-Wn>
z;RmbPhDKq9IfBcl<VE(>`~BRU$f>u(sixa<`ow>1c5Uw&81x?asb&0kiPnF#$@m<9
z>x6Z33)-0#@_)1YeEn`}>E3wX!0xQpsi>1|o2-@g&aaU8&iH4^pIUk8Lp_W1Wd8&n
z7x>e1bN-X3r{A6T`n<S?$49n5@SXdN>83wVUpp@PJNZm6ryZLZzvtEEy5hCZ1SeE?
z6x+Tqt>t0sU9<E%=fY_duE*Q3@Lk!w`7z%+<{z?8zgJI_UU{;KVNQ6|uOC~}XPmn-
z#dOd5t#wC!G8{~vSi>l&D*$fmL0b$FI(wSJXSrVBoY3?jYDO;m)V`i|{bIERa$j|y
ze%$&lUs|evue0;M+!H$;)vreHGh?)5__K6z9h=0Kb=xoh;M&)8xi3Ju$3UxIvviVB
z;QU`MQ?9WImSt+nyX|m$ZIaUNnD>NP@OH`J38&}fe15U{;dT*!Gr@~u)&fB?Uw^!7
zoTGEbYVGA;El*r$<OCd_!m~nRg7?{nv+h{A+-})ZqPh6Do}l1e(d_LKK2jGgnH>EW
z%<o@#^{Vh!sov(oB7uwZpVo)36}_@Nhso>yBKc_|F>Go~f2|we3BI`BG2h5>%RKLE
ztd=f6Gouz=7OM>Wt1M-@?jY0cH8s1%s%QJwd$=fjt)A#|RW`;#^ZSOYS&PL=*D<`e
ztYP~7!?3Pl{$ty2{|)`NF^8nXrss+O5v~)zf0%7wyZQ(HYXLVSezj>_Kdw{yXVWwF
zH3o-#8BYAa{`!5u@1xE0a|^FM=3%JeJm6JV>GP5Cl-z?h!&&#1OZQeYY;E5Bl_9+I
zg?`5i(QU0?I&WOFUnln<pYuyBQ*HOO8DHc}zc94QEV^@#xo69rnbR8@C%xurc6<7J
zmD+Eu;O6HqVr)x|JL~*fs=oF&Gt6Ijf64iaKmV-n{P{Jq(2Qw`%aov5@%p|$%R64&
z{(1lY)hDh$bFP2z`nSXR-0}76_TDVqr^x729;<a_!kes1=Vo(V@sHi+;_P&CA)~O9
zn#0}r>qq{ieN18c@M-gx*s2+2FB5-N|JtG$zxHWf?wU`h{%nxj)fpU^H~HS#d=}rI
z9bMV~^P-s!6b8)ey<%*W|6pI}zSIzd?;;bXxjyGiQcq|*F0=EsQv2aQc6#5Nm^78E
zyX?;7|JnA^xvER?K&aH!$G_Cxo2{smKXt#^Yx1<z&$C5ttn!S#yerjGFz|fh9KBBy
zFaKG0{6H7eO4V=0PrpCU+PKzs!g}ip+4sL#dtP)fE~tKUyhV`V!L&-NbL<>47sWw6
z7-*{Ika;MmP%O<aadJV8S=ANi{#^5;mb+Jnac+nUJ5ZHfYqC|#!|}$+{qGN$t$rA_
zZ$-&=x5oR&_4FPa*|qvVZ2wWBn-*pr{yF~Uyrr-9J)iwUhr|B?r+{7e*{GVz-(87s
z57xbyu-l0zJ5xg0;n~enrCUoCd0$S@TF!3%K#@0Xg0ai*<SEay=gNkh+~B-GHe0Xj
z;e_Hh0oPZ4`XOO0w#)gj4g1V_jFb1(%B=qov}9VM!A~Di>#Z+N9+UdL)12Ms=M{<9
zN6Sqe%)ItEyR?TX`%Pvz8X-2{E%Do{&Fdb{vba{+Waq@G`bE&{pj3*7!Xn3)m!B7@
z3p;#mpP@b7DBolMn#Wd*3(hWDA*^tDS8U(OA{Gnh)jtmkB+LkZ%xC@hxGO_ZSmW&-
zMSn_Nk9`fW?wVs<uk}jZ>r`^D=ie&1?CJ7BOLM+Yc=UiX!GHcK$?!dFTD5bWndT;Q
zGPE+(%-`fUdrRamZAqp#PePCT|12_$;k)Q_O8CUn;K@<-rjIobADB=-yW`rY<`-6r
z69abT?EKQ{SFUux`RC2{Q~%T6Ec!1cbkWkAKVkiTJHfdNjkkEEXH4!`m-_tbch;H)
z5%Z5f|A=|sE0p)!xn=f_=u=BK#Jx+NwDzL;N8dk%KmY#zVe30h%XnUc_E*EgHIKbd
zt)KqUSn=zcX=gsIXZRt&@WDH+S@KYq+4)m72ahV>syuX_XQy5K3$=YYXKtO^_TjwR
z>34>=e+tX7e~4#j_#cuL{yKp_)5H1J(wloYb)w|wA2UCFZT`b`g4^eB|9xdu{pK9&
z=QpmDzt9T2$5$><`R(U~r*7xxWF&99fBc2v<NbH)P4=@(1kE?goNU&avAK>jVEsn3
z&*%RIABfd@cC6^Calw)e&bPOm^;_;FXT4a!ol&T6X8QFk#kQ?{H5o^2!mVfBWftH)
zeb|ZNewc+W(+T%gTYl|MsXDv)+QVS0=zp8%J)IDwm8U*A>dyJg=_}N)2nkO4%@ezA
zial$}|FgL-Ua=Tz8i_2;db!2Ot$agQ`v;*0@sIXvN?JtkoVlMi;Zgm^>|3*WW4?Pd
z?3?*i<(chv2Nj109OuOa7AiuzynK@xoL|>H6fa!8XW<^zyiO@Y{|j;=dBTDhbDuFj
z>)zTvLErCbqP|?R-4*%sQ;yXh<0uQPuF@%(7`VgTrTW^Fx>uG8%>4q#>)&X8xj(xq
zPtBp>cF2!8XY3xBPGeYa$n~^w!7YQ9tAAuX@0?y8qZm`PXm8PujQ**=pVs&Fy?Sjt
ztMRMdfwpBV42`inBF*df&JVbL?Gsx`tAyai%UfLhqfLKI&2!|O5c{8d{pNe@FIcCq
zN}Qc@`cTN{_ePT(f1Zq2i#g_)_rpY;Nxk0c|F<m*68$}r8#xUWgjX^C;XF`&Z`ZQw
z9`|(}>Bjr@8G|-`Hw@|9aQ*LB(KjqFgfGgyy(stdhv>5>2HFSy+?&F%Zm~ho-9IyL
z=02O>Dwoih&$Rm6e670Yr+DJiIX{%TEnLmMK{kv3$np9AY#U}b6;~9vt``5K8TLzL
z@r6*!vXxhUl`{87wZHf!GNE<mu8YU~8*Hx~$P%@QpKO<J`q;rEV3GUndygynS(O|1
zTmSIn`S|?j_w^5X|GeIE++cajw)af40+0M;XjHCZW`=d;q5W4ErWq0qQQpr5v=}>X
znmMv3#;k9dA(qGS-i*D0u`JsAx$rR!*^BE8q?T7P`*;fKZ_SdpkoS&5>cYAOj4d^l
zllAUjGuc{rolmCuEOY-2SKb?2&s;qiKL2cs5aX4KuUT?a3fX>gRYx|@W!Uz^j%C7<
zO^cW7#ZFL6j8^=aDXYhnqPC{)b&!D9<DDiqI1>8bt2qP<-(LEMji<QsgLz|l0ptCQ
zLff6q+&da_=H6jVJ!2DiE>58Qkgmy%2VM0x5i0o(y-&Mq_#ap??O_j?>)2vl;h7UZ
zW%K?YbM#mE>utM}{{83MCB>aDcufostV>9Wv}y-6+zV9<&;~f#JsE=HbmRmXw3wFs
z3|pCAcx}`5I<u0Jvr4@)yhT_%3M2CPK6CIzD(637+Sevt_~N4zXK_X1ZHdM^c4?I@
zyp_Fg1un)5cD!&s_3h}^Ub*Fu;tpM1vFCO9|A?m_H^{UGcD@tj_@cziQPQ82zx>|9
z;whG?!K;Jnmfu=hWBv8=&-ptqzs;Ov7Nh?}<<#_3`<GthTX>*vGDE{>hI=dwdsrAM
zgrzOwZ=Wh*p1q?}yMkqUL5KE^dn;D|Typ89%8Gu6dYk{=2lV$_&HZ01^yk?pdG-yH
zPKS$S@2Q(~qJ~kEuQ0yy;ziq>1lQY~+a0=`?;K=(^MEV*<dpXz@%PvM+rIVw|HL;_
ztusOX2;bm+b<s<~kF$5A?ECPhR&?9+Q#YQSe(_#x{dx0QTWsW}E&jlk_WtmWe)Eqy
zW(W39Ts(`nfHC3DqO8~P8%(!!cb}5o)0h3T`GNEfv3N0gu17Tu2Lx*wkw?J-1rL0+
zYgqS5y>Rc8_~Vn0>&-9uxlA{|J7)RoT87xC>vEr|=|Y5RQ{=@vok5C=uDea1Jk5Vs
z&E;w37Mr{eJl*8%F-36C=`-e{%l@?5<TZ)&{M_7CXOKSs>6Pdwp4~sD-~18tGv;ad
z=leGQZhK4-*!E*m%vsj_sck3NnpRz0u;iQf^kPZPC!7t>8TYK4D>=Vz{*S!BSslwh
z3V+}}v*KWW(3UGt>zNpSWM}^sO*j9@cWje~uWG|Ty;oIiF+~qp_wYTa+@lt@VQtf$
zU&3Lt*E8PvmC97Ie*O}h`+ol{?ggH)7h{_9W}VZ)_EZ0#DWvx+ILG$gb8}u)v#rx#
zt}r%llf7t4|KoXS|28Jvncg7S5S>xa`QqNu+n>X)Us%UI{mbvK3hU%fP5bwF$MTu=
zJhl#H!auaMtEc`{J2{`dK-m0q{;EHvs$z!e@!?DKEL|)kcFwC`HMcf&@{T9Dua|4c
zZ=JS(@yz-DTQ!?1cxHb~ezD}~+~bU5^$KaXm;)zID_3K9;kheLYrmiWwWhME@k^qY
z{t+|oFwFe9<g|Hi<!NO<4o;bi(h?YhFA4=K&Mnw=Iq>+J)5=i}-`Vu0-|xF|A@-@D
zar-aT1+!oF&5_!*_0E#bZ5+I6j4^CBhbC&oADeiI|H?z71y-tE%v-;Fb&p68N{|%b
z-O-a8Sl5y|QGuoMkjuM;8<f^r%Nf6#-tbf`>dTEyZFz66yDsQxyKrB8foE1?daT?<
zCXj<3IRt=*A>m~gcv#hNKg)}wj0+1L)E&MTnmNh0{5$gb?qRzy^?6<l7dSV}`tK{f
z?%Ld${}XQAjA41fa^w8}W!&Mf`<}@w*Hkk&t^anN=gcY<v6+=`O?1x4zh^wgRO@!Z
zPUy|%ylE{zv)gpn2ekeScm3(Ohh0LvgvrD9Kvw3gN9!Zi_k>#qs|WgDJRj&|UcZN<
zhjH^2W|z<YjQeaI%6HtqfAP#8TkjnmZXez<_Av*&KQz<+9&-=lua*gNd>3Y)JU8`|
z-~B&5FFGugH44tG*H=i=`BC3wAFxckeESIo1_sp<*NBpo#FA92<f7EXl2isG14Cn7
z10!7n!w>^gD`R6TLjzp{3o8Qy&4dG!P&DM`r(~v8;?@vhTcO9mz#s{-Aviy+q&%@G
lmBBG3KPgqgGdD3kH7GSPrLyp3stsuF!PC{xWt~$(69CM@!Ylv)

literal 0
HcmV?d00001

diff --git a/project/static/css/ui-darkness/jquery-ui-1.10.4.custom.css b/project/static/css/ui-darkness/jquery-ui-1.10.4.custom.css
new file mode 100755
index 0000000..7b951ab
--- /dev/null
+++ b/project/static/css/ui-darkness/jquery-ui-1.10.4.custom.css
@@ -0,0 +1,650 @@
+/*! jQuery UI - v1.10.4 - 2014-04-21
+* http://jqueryui.com
+* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css
+* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Segoe%20UI%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=333333&bgTextureHeader=gloss_wave&bgImgOpacityHeader=25&borderColorHeader=333333&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=000000&bgTextureContent=inset_soft&bgImgOpacityContent=25&borderColorContent=666666&fcContent=ffffff&iconColorContent=cccccc&bgColorDefault=555555&bgTextureDefault=glass&bgImgOpacityDefault=20&borderColorDefault=666666&fcDefault=eeeeee&iconColorDefault=cccccc&bgColorHover=0078a3&bgTextureHover=glass&bgImgOpacityHover=40&borderColorHover=59b4d4&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=f58400&bgTextureActive=inset_soft&bgImgOpacityActive=30&borderColorActive=ffaf0f&fcActive=ffffff&iconColorActive=222222&bgColorHighlight=eeeeee&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=80&borderColorHighlight=cccccc&fcHighlight=2e7db2&iconColorHighlight=4b8e0b&bgColorError=ffc73d&bgTextureError=glass&bgImgOpacityError=40&borderColorError=ffb73d&fcError=111111&iconColorError=a83300&bgColorOverlay=5c5c5c&bgTextureOverlay=flat&bgImgOpacityOverlay=50&opacityOverlay=80&bgColorShadow=cccccc&bgTextureShadow=flat&bgImgOpacityShadow=30&opacityShadow=60&thicknessShadow=7px&offsetTopShadow=-7px&offsetLeftShadow=-7px&cornerRadiusShadow=8px
+* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
+
+/* Layout helpers
+----------------------------------*/
+.ui-helper-hidden {
+	display: none;
+}
+.ui-helper-hidden-accessible {
+	border: 0;
+	clip: rect(0 0 0 0);
+	height: 1px;
+	margin: -1px;
+	overflow: hidden;
+	padding: 0;
+	position: absolute;
+	width: 1px;
+}
+.ui-helper-reset {
+	margin: 0;
+	padding: 0;
+	border: 0;
+	outline: 0;
+	line-height: 1.3;
+	text-decoration: none;
+	font-size: 100%;
+	list-style: none;
+}
+.ui-helper-clearfix:before,
+.ui-helper-clearfix:after {
+	content: "";
+	display: table;
+	border-collapse: collapse;
+}
+.ui-helper-clearfix:after {
+	clear: both;
+}
+.ui-helper-clearfix {
+	min-height: 0; /* support: IE7 */
+}
+.ui-helper-zfix {
+	width: 100%;
+	height: 100%;
+	top: 0;
+	left: 0;
+	position: absolute;
+	opacity: 0;
+	filter:Alpha(Opacity=0);
+}
+
+.ui-front {
+	z-index: 100;
+}
+
+
+/* Interaction Cues
+----------------------------------*/
+.ui-state-disabled {
+	cursor: default !important;
+}
+
+
+/* Icons
+----------------------------------*/
+
+/* states and images */
+.ui-icon {
+	display: block;
+	text-indent: -99999px;
+	overflow: hidden;
+	background-repeat: no-repeat;
+}
+
+
+/* Misc visuals
+----------------------------------*/
+
+/* Overlays */
+.ui-widget-overlay {
+	position: fixed;
+	top: 0;
+	left: 0;
+	width: 100%;
+	height: 100%;
+}
+.ui-datepicker {
+	width: 17em;
+	padding: .2em .2em 0;
+	display: none;
+}
+.ui-datepicker .ui-datepicker-header {
+	position: relative;
+	padding: .2em 0;
+}
+.ui-datepicker .ui-datepicker-prev,
+.ui-datepicker .ui-datepicker-next {
+	position: absolute;
+	top: 2px;
+	width: 1.8em;
+	height: 1.8em;
+}
+.ui-datepicker .ui-datepicker-prev-hover,
+.ui-datepicker .ui-datepicker-next-hover {
+	top: 1px;
+}
+.ui-datepicker .ui-datepicker-prev {
+	left: 2px;
+}
+.ui-datepicker .ui-datepicker-next {
+	right: 2px;
+}
+.ui-datepicker .ui-datepicker-prev-hover {
+	left: 1px;
+}
+.ui-datepicker .ui-datepicker-next-hover {
+	right: 1px;
+}
+.ui-datepicker .ui-datepicker-prev span,
+.ui-datepicker .ui-datepicker-next span {
+	display: block;
+	position: absolute;
+	left: 50%;
+	margin-left: -8px;
+	top: 50%;
+	margin-top: -8px;
+}
+.ui-datepicker .ui-datepicker-title {
+	margin: 0 2.3em;
+	line-height: 1.8em;
+	text-align: center;
+}
+.ui-datepicker .ui-datepicker-title select {
+	font-size: 1em;
+	margin: 1px 0;
+}
+.ui-datepicker select.ui-datepicker-month,
+.ui-datepicker select.ui-datepicker-year {
+	width: 49%;
+}
+.ui-datepicker table {
+	width: 100%;
+	font-size: .9em;
+	border-collapse: collapse;
+	margin: 0 0 .4em;
+}
+.ui-datepicker th {
+	padding: .7em .3em;
+	text-align: center;
+	font-weight: bold;
+	border: 0;
+}
+.ui-datepicker td {
+	border: 0;
+	padding: 1px;
+}
+.ui-datepicker td span,
+.ui-datepicker td a {
+	display: block;
+	padding: .2em;
+	text-align: right;
+	text-decoration: none;
+}
+.ui-datepicker .ui-datepicker-buttonpane {
+	background-image: none;
+	margin: .7em 0 0 0;
+	padding: 0 .2em;
+	border-left: 0;
+	border-right: 0;
+	border-bottom: 0;
+}
+.ui-datepicker .ui-datepicker-buttonpane button {
+	float: right;
+	margin: .5em .2em .4em;
+	cursor: pointer;
+	padding: .2em .6em .3em .6em;
+	width: auto;
+	overflow: visible;
+}
+.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
+	float: left;
+}
+
+/* with multiple calendars */
+.ui-datepicker.ui-datepicker-multi {
+	width: auto;
+}
+.ui-datepicker-multi .ui-datepicker-group {
+	float: left;
+}
+.ui-datepicker-multi .ui-datepicker-group table {
+	width: 95%;
+	margin: 0 auto .4em;
+}
+.ui-datepicker-multi-2 .ui-datepicker-group {
+	width: 50%;
+}
+.ui-datepicker-multi-3 .ui-datepicker-group {
+	width: 33.3%;
+}
+.ui-datepicker-multi-4 .ui-datepicker-group {
+	width: 25%;
+}
+.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
+.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
+	border-left-width: 0;
+}
+.ui-datepicker-multi .ui-datepicker-buttonpane {
+	clear: left;
+}
+.ui-datepicker-row-break {
+	clear: both;
+	width: 100%;
+	font-size: 0;
+}
+
+/* RTL support */
+.ui-datepicker-rtl {
+	direction: rtl;
+}
+.ui-datepicker-rtl .ui-datepicker-prev {
+	right: 2px;
+	left: auto;
+}
+.ui-datepicker-rtl .ui-datepicker-next {
+	left: 2px;
+	right: auto;
+}
+.ui-datepicker-rtl .ui-datepicker-prev:hover {
+	right: 1px;
+	left: auto;
+}
+.ui-datepicker-rtl .ui-datepicker-next:hover {
+	left: 1px;
+	right: auto;
+}
+.ui-datepicker-rtl .ui-datepicker-buttonpane {
+	clear: right;
+}
+.ui-datepicker-rtl .ui-datepicker-buttonpane button {
+	float: left;
+}
+.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
+.ui-datepicker-rtl .ui-datepicker-group {
+	float: right;
+}
+.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
+.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
+	border-right-width: 0;
+	border-left-width: 1px;
+}
+
+/* Component containers
+----------------------------------*/
+.ui-widget {
+	font-family: Segoe UI,Arial,sans-serif;
+	font-size: 1.1em;
+}
+.ui-widget .ui-widget {
+	font-size: 1em;
+}
+.ui-widget input,
+.ui-widget select,
+.ui-widget textarea,
+.ui-widget button {
+	font-family: Segoe UI,Arial,sans-serif;
+	font-size: 1em;
+}
+.ui-widget-content {
+	border: 1px solid #666666;
+	background: #000000 url("images/ui-bg_inset-soft_25_000000_1x100.png") 50% bottom repeat-x;
+	color: #ffffff;
+}
+.ui-widget-content a {
+	color: #ffffff;
+}
+.ui-widget-header {
+	border: 1px solid #333333;
+	background: #333333 url("images/ui-bg_gloss-wave_25_333333_500x100.png") 50% 50% repeat-x;
+	color: #ffffff;
+	font-weight: bold;
+}
+.ui-widget-header a {
+	color: #ffffff;
+}
+
+/* Interaction states
+----------------------------------*/
+.ui-state-default,
+.ui-widget-content .ui-state-default,
+.ui-widget-header .ui-state-default {
+	border: 1px solid #666666;
+	background: #555555 url("images/ui-bg_glass_20_555555_1x400.png") 50% 50% repeat-x;
+	font-weight: bold;
+	color: #eeeeee;
+}
+.ui-state-default a,
+.ui-state-default a:link,
+.ui-state-default a:visited {
+	color: #eeeeee;
+	text-decoration: none;
+}
+.ui-state-hover,
+.ui-widget-content .ui-state-hover,
+.ui-widget-header .ui-state-hover,
+.ui-state-focus,
+.ui-widget-content .ui-state-focus,
+.ui-widget-header .ui-state-focus {
+	border: 1px solid #59b4d4;
+	background: #0078a3 url("images/ui-bg_glass_40_0078a3_1x400.png") 50% 50% repeat-x;
+	font-weight: bold;
+	color: #ffffff;
+}
+.ui-state-hover a,
+.ui-state-hover a:hover,
+.ui-state-hover a:link,
+.ui-state-hover a:visited,
+.ui-state-focus a,
+.ui-state-focus a:hover,
+.ui-state-focus a:link,
+.ui-state-focus a:visited {
+	color: #ffffff;
+	text-decoration: none;
+}
+.ui-state-active,
+.ui-widget-content .ui-state-active,
+.ui-widget-header .ui-state-active {
+	border: 1px solid #ffaf0f;
+	background: #f58400 url("images/ui-bg_inset-soft_30_f58400_1x100.png") 50% 50% repeat-x;
+	font-weight: bold;
+	color: #ffffff;
+}
+.ui-state-active a,
+.ui-state-active a:link,
+.ui-state-active a:visited {
+	color: #ffffff;
+	text-decoration: none;
+}
+
+/* Interaction Cues
+----------------------------------*/
+.ui-state-highlight,
+.ui-widget-content .ui-state-highlight,
+.ui-widget-header .ui-state-highlight {
+	border: 1px solid #cccccc;
+	background: #eeeeee url("images/ui-bg_highlight-soft_80_eeeeee_1x100.png") 50% top repeat-x;
+	color: #2e7db2;
+}
+.ui-state-highlight a,
+.ui-widget-content .ui-state-highlight a,
+.ui-widget-header .ui-state-highlight a {
+	color: #2e7db2;
+}
+.ui-state-error,
+.ui-widget-content .ui-state-error,
+.ui-widget-header .ui-state-error {
+	border: 1px solid #ffb73d;
+	background: #ffc73d url("images/ui-bg_glass_40_ffc73d_1x400.png") 50% 50% repeat-x;
+	color: #111111;
+}
+.ui-state-error a,
+.ui-widget-content .ui-state-error a,
+.ui-widget-header .ui-state-error a {
+	color: #111111;
+}
+.ui-state-error-text,
+.ui-widget-content .ui-state-error-text,
+.ui-widget-header .ui-state-error-text {
+	color: #111111;
+}
+.ui-priority-primary,
+.ui-widget-content .ui-priority-primary,
+.ui-widget-header .ui-priority-primary {
+	font-weight: bold;
+}
+.ui-priority-secondary,
+.ui-widget-content .ui-priority-secondary,
+.ui-widget-header .ui-priority-secondary {
+	opacity: .7;
+	filter:Alpha(Opacity=70);
+	font-weight: normal;
+}
+.ui-state-disabled,
+.ui-widget-content .ui-state-disabled,
+.ui-widget-header .ui-state-disabled {
+	opacity: .35;
+	filter:Alpha(Opacity=35);
+	background-image: none;
+}
+.ui-state-disabled .ui-icon {
+	filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
+}
+
+/* Icons
+----------------------------------*/
+
+/* states and images */
+.ui-icon {
+	width: 16px;
+	height: 16px;
+}
+.ui-icon,
+.ui-widget-content .ui-icon {
+	background-image: url("images/ui-icons_cccccc_256x240.png");
+}
+.ui-widget-header .ui-icon {
+	background-image: url("images/ui-icons_ffffff_256x240.png");
+}
+.ui-state-default .ui-icon {
+	background-image: url("images/ui-icons_cccccc_256x240.png");
+}
+.ui-state-hover .ui-icon,
+.ui-state-focus .ui-icon {
+	background-image: url("images/ui-icons_ffffff_256x240.png");
+}
+.ui-state-active .ui-icon {
+	background-image: url("images/ui-icons_222222_256x240.png");
+}
+.ui-state-highlight .ui-icon {
+	background-image: url("images/ui-icons_4b8e0b_256x240.png");
+}
+.ui-state-error .ui-icon,
+.ui-state-error-text .ui-icon {
+	background-image: url("images/ui-icons_a83300_256x240.png");
+}
+
+/* positioning */
+.ui-icon-blank { background-position: 16px 16px; }
+.ui-icon-carat-1-n { background-position: 0 0; }
+.ui-icon-carat-1-ne { background-position: -16px 0; }
+.ui-icon-carat-1-e { background-position: -32px 0; }
+.ui-icon-carat-1-se { background-position: -48px 0; }
+.ui-icon-carat-1-s { background-position: -64px 0; }
+.ui-icon-carat-1-sw { background-position: -80px 0; }
+.ui-icon-carat-1-w { background-position: -96px 0; }
+.ui-icon-carat-1-nw { background-position: -112px 0; }
+.ui-icon-carat-2-n-s { background-position: -128px 0; }
+.ui-icon-carat-2-e-w { background-position: -144px 0; }
+.ui-icon-triangle-1-n { background-position: 0 -16px; }
+.ui-icon-triangle-1-ne { background-position: -16px -16px; }
+.ui-icon-triangle-1-e { background-position: -32px -16px; }
+.ui-icon-triangle-1-se { background-position: -48px -16px; }
+.ui-icon-triangle-1-s { background-position: -64px -16px; }
+.ui-icon-triangle-1-sw { background-position: -80px -16px; }
+.ui-icon-triangle-1-w { background-position: -96px -16px; }
+.ui-icon-triangle-1-nw { background-position: -112px -16px; }
+.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
+.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
+.ui-icon-arrow-1-n { background-position: 0 -32px; }
+.ui-icon-arrow-1-ne { background-position: -16px -32px; }
+.ui-icon-arrow-1-e { background-position: -32px -32px; }
+.ui-icon-arrow-1-se { background-position: -48px -32px; }
+.ui-icon-arrow-1-s { background-position: -64px -32px; }
+.ui-icon-arrow-1-sw { background-position: -80px -32px; }
+.ui-icon-arrow-1-w { background-position: -96px -32px; }
+.ui-icon-arrow-1-nw { background-position: -112px -32px; }
+.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
+.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
+.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
+.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
+.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
+.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
+.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
+.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
+.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
+.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
+.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
+.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
+.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
+.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
+.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
+.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
+.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
+.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
+.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
+.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
+.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
+.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
+.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
+.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
+.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
+.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
+.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
+.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
+.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
+.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
+.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
+.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
+.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
+.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
+.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
+.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
+.ui-icon-arrow-4 { background-position: 0 -80px; }
+.ui-icon-arrow-4-diag { background-position: -16px -80px; }
+.ui-icon-extlink { background-position: -32px -80px; }
+.ui-icon-newwin { background-position: -48px -80px; }
+.ui-icon-refresh { background-position: -64px -80px; }
+.ui-icon-shuffle { background-position: -80px -80px; }
+.ui-icon-transfer-e-w { background-position: -96px -80px; }
+.ui-icon-transferthick-e-w { background-position: -112px -80px; }
+.ui-icon-folder-collapsed { background-position: 0 -96px; }
+.ui-icon-folder-open { background-position: -16px -96px; }
+.ui-icon-document { background-position: -32px -96px; }
+.ui-icon-document-b { background-position: -48px -96px; }
+.ui-icon-note { background-position: -64px -96px; }
+.ui-icon-mail-closed { background-position: -80px -96px; }
+.ui-icon-mail-open { background-position: -96px -96px; }
+.ui-icon-suitcase { background-position: -112px -96px; }
+.ui-icon-comment { background-position: -128px -96px; }
+.ui-icon-person { background-position: -144px -96px; }
+.ui-icon-print { background-position: -160px -96px; }
+.ui-icon-trash { background-position: -176px -96px; }
+.ui-icon-locked { background-position: -192px -96px; }
+.ui-icon-unlocked { background-position: -208px -96px; }
+.ui-icon-bookmark { background-position: -224px -96px; }
+.ui-icon-tag { background-position: -240px -96px; }
+.ui-icon-home { background-position: 0 -112px; }
+.ui-icon-flag { background-position: -16px -112px; }
+.ui-icon-calendar { background-position: -32px -112px; }
+.ui-icon-cart { background-position: -48px -112px; }
+.ui-icon-pencil { background-position: -64px -112px; }
+.ui-icon-clock { background-position: -80px -112px; }
+.ui-icon-disk { background-position: -96px -112px; }
+.ui-icon-calculator { background-position: -112px -112px; }
+.ui-icon-zoomin { background-position: -128px -112px; }
+.ui-icon-zoomout { background-position: -144px -112px; }
+.ui-icon-search { background-position: -160px -112px; }
+.ui-icon-wrench { background-position: -176px -112px; }
+.ui-icon-gear { background-position: -192px -112px; }
+.ui-icon-heart { background-position: -208px -112px; }
+.ui-icon-star { background-position: -224px -112px; }
+.ui-icon-link { background-position: -240px -112px; }
+.ui-icon-cancel { background-position: 0 -128px; }
+.ui-icon-plus { background-position: -16px -128px; }
+.ui-icon-plusthick { background-position: -32px -128px; }
+.ui-icon-minus { background-position: -48px -128px; }
+.ui-icon-minusthick { background-position: -64px -128px; }
+.ui-icon-close { background-position: -80px -128px; }
+.ui-icon-closethick { background-position: -96px -128px; }
+.ui-icon-key { background-position: -112px -128px; }
+.ui-icon-lightbulb { background-position: -128px -128px; }
+.ui-icon-scissors { background-position: -144px -128px; }
+.ui-icon-clipboard { background-position: -160px -128px; }
+.ui-icon-copy { background-position: -176px -128px; }
+.ui-icon-contact { background-position: -192px -128px; }
+.ui-icon-image { background-position: -208px -128px; }
+.ui-icon-video { background-position: -224px -128px; }
+.ui-icon-script { background-position: -240px -128px; }
+.ui-icon-alert { background-position: 0 -144px; }
+.ui-icon-info { background-position: -16px -144px; }
+.ui-icon-notice { background-position: -32px -144px; }
+.ui-icon-help { background-position: -48px -144px; }
+.ui-icon-check { background-position: -64px -144px; }
+.ui-icon-bullet { background-position: -80px -144px; }
+.ui-icon-radio-on { background-position: -96px -144px; }
+.ui-icon-radio-off { background-position: -112px -144px; }
+.ui-icon-pin-w { background-position: -128px -144px; }
+.ui-icon-pin-s { background-position: -144px -144px; }
+.ui-icon-play { background-position: 0 -160px; }
+.ui-icon-pause { background-position: -16px -160px; }
+.ui-icon-seek-next { background-position: -32px -160px; }
+.ui-icon-seek-prev { background-position: -48px -160px; }
+.ui-icon-seek-end { background-position: -64px -160px; }
+.ui-icon-seek-start { background-position: -80px -160px; }
+/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
+.ui-icon-seek-first { background-position: -80px -160px; }
+.ui-icon-stop { background-position: -96px -160px; }
+.ui-icon-eject { background-position: -112px -160px; }
+.ui-icon-volume-off { background-position: -128px -160px; }
+.ui-icon-volume-on { background-position: -144px -160px; }
+.ui-icon-power { background-position: 0 -176px; }
+.ui-icon-signal-diag { background-position: -16px -176px; }
+.ui-icon-signal { background-position: -32px -176px; }
+.ui-icon-battery-0 { background-position: -48px -176px; }
+.ui-icon-battery-1 { background-position: -64px -176px; }
+.ui-icon-battery-2 { background-position: -80px -176px; }
+.ui-icon-battery-3 { background-position: -96px -176px; }
+.ui-icon-circle-plus { background-position: 0 -192px; }
+.ui-icon-circle-minus { background-position: -16px -192px; }
+.ui-icon-circle-close { background-position: -32px -192px; }
+.ui-icon-circle-triangle-e { background-position: -48px -192px; }
+.ui-icon-circle-triangle-s { background-position: -64px -192px; }
+.ui-icon-circle-triangle-w { background-position: -80px -192px; }
+.ui-icon-circle-triangle-n { background-position: -96px -192px; }
+.ui-icon-circle-arrow-e { background-position: -112px -192px; }
+.ui-icon-circle-arrow-s { background-position: -128px -192px; }
+.ui-icon-circle-arrow-w { background-position: -144px -192px; }
+.ui-icon-circle-arrow-n { background-position: -160px -192px; }
+.ui-icon-circle-zoomin { background-position: -176px -192px; }
+.ui-icon-circle-zoomout { background-position: -192px -192px; }
+.ui-icon-circle-check { background-position: -208px -192px; }
+.ui-icon-circlesmall-plus { background-position: 0 -208px; }
+.ui-icon-circlesmall-minus { background-position: -16px -208px; }
+.ui-icon-circlesmall-close { background-position: -32px -208px; }
+.ui-icon-squaresmall-plus { background-position: -48px -208px; }
+.ui-icon-squaresmall-minus { background-position: -64px -208px; }
+.ui-icon-squaresmall-close { background-position: -80px -208px; }
+.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
+.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
+.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
+.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
+.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
+.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
+
+
+/* Misc visuals
+----------------------------------*/
+
+/* Corner radius */
+.ui-corner-all,
+.ui-corner-top,
+.ui-corner-left,
+.ui-corner-tl {
+	border-top-left-radius: 6px;
+}
+.ui-corner-all,
+.ui-corner-top,
+.ui-corner-right,
+.ui-corner-tr {
+	border-top-right-radius: 6px;
+}
+.ui-corner-all,
+.ui-corner-bottom,
+.ui-corner-left,
+.ui-corner-bl {
+	border-bottom-left-radius: 6px;
+}
+.ui-corner-all,
+.ui-corner-bottom,
+.ui-corner-right,
+.ui-corner-br {
+	border-bottom-right-radius: 6px;
+}
+
+/* Overlays */
+.ui-widget-overlay {
+	background: #5c5c5c url("images/ui-bg_flat_50_5c5c5c_40x100.png") 50% 50% repeat-x;
+	opacity: .8;
+	filter: Alpha(Opacity=80);
+}
+.ui-widget-shadow {
+	margin: -7px 0 0 -7px;
+	padding: 7px;
+	background: #cccccc url("images/ui-bg_flat_30_cccccc_40x100.png") 50% 50% repeat-x;
+	opacity: .6;
+	filter: Alpha(Opacity=60);
+	border-radius: 8px;
+}
diff --git a/project/static/css/ui-darkness/jquery-ui-1.10.4.custom.min.css b/project/static/css/ui-darkness/jquery-ui-1.10.4.custom.min.css
new file mode 100755
index 0000000..1ecd2c0
--- /dev/null
+++ b/project/static/css/ui-darkness/jquery-ui-1.10.4.custom.min.css
@@ -0,0 +1,7 @@
+/*! jQuery UI - v1.10.4 - 2014-04-21
+* http://jqueryui.com
+* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css
+* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Segoe%20UI%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=333333&bgTextureHeader=gloss_wave&bgImgOpacityHeader=25&borderColorHeader=333333&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=000000&bgTextureContent=inset_soft&bgImgOpacityContent=25&borderColorContent=666666&fcContent=ffffff&iconColorContent=cccccc&bgColorDefault=555555&bgTextureDefault=glass&bgImgOpacityDefault=20&borderColorDefault=666666&fcDefault=eeeeee&iconColorDefault=cccccc&bgColorHover=0078a3&bgTextureHover=glass&bgImgOpacityHover=40&borderColorHover=59b4d4&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=f58400&bgTextureActive=inset_soft&bgImgOpacityActive=30&borderColorActive=ffaf0f&fcActive=ffffff&iconColorActive=222222&bgColorHighlight=eeeeee&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=80&borderColorHighlight=cccccc&fcHighlight=2e7db2&iconColorHighlight=4b8e0b&bgColorError=ffc73d&bgTextureError=glass&bgImgOpacityError=40&borderColorError=ffb73d&fcError=111111&iconColorError=a83300&bgColorOverlay=5c5c5c&bgTextureOverlay=flat&bgImgOpacityOverlay=50&opacityOverlay=80&bgColorShadow=cccccc&bgTextureShadow=flat&bgImgOpacityShadow=30&opacityShadow=60&thicknessShadow=7px&offsetTopShadow=-7px&offsetLeftShadow=-7px&cornerRadiusShadow=8px
+* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
+
+.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-widget{font-family:Segoe UI,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Segoe UI,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #666;background:#000 url("images/ui-bg_inset-soft_25_000000_1x100.png") 50% bottom repeat-x;color:#fff}.ui-widget-content a{color:#fff}.ui-widget-header{border:1px solid #333;background:#333 url("images/ui-bg_gloss-wave_25_333333_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #666;background:#555 url("images/ui-bg_glass_20_555555_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eee}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#eee;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #59b4d4;background:#0078a3 url("images/ui-bg_glass_40_0078a3_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#fff}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#fff;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #ffaf0f;background:#f58400 url("images/ui-bg_inset-soft_30_f58400_1x100.png") 50% 50% repeat-x;font-weight:bold;color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #ccc;background:#eee url("images/ui-bg_highlight-soft_80_eeeeee_1x100.png") 50% top repeat-x;color:#2e7db2}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#2e7db2}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #ffb73d;background:#ffc73d url("images/ui-bg_glass_40_ffc73d_1x400.png") 50% 50% repeat-x;color:#111}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#111}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#111}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_cccccc_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_cccccc_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_4b8e0b_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_a83300_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:6px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:6px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:6px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:6px}.ui-widget-overlay{background:#5c5c5c url("images/ui-bg_flat_50_5c5c5c_40x100.png") 50% 50% repeat-x;opacity:.8;filter:Alpha(Opacity=80)}.ui-widget-shadow{margin:-7px 0 0 -7px;padding:7px;background:#ccc url("images/ui-bg_flat_30_cccccc_40x100.png") 50% 50% repeat-x;opacity:.6;filter:Alpha(Opacity=60);border-radius:8px}
\ No newline at end of file
diff --git a/project/static/lib/jquery-ui-1.10.4.custom.min.js b/project/static/lib/jquery-ui-1.10.4.custom.min.js
new file mode 100755
index 0000000..09cb058
--- /dev/null
+++ b/project/static/lib/jquery-ui-1.10.4.custom.min.js
@@ -0,0 +1,7 @@
+/*! jQuery UI - v1.10.4 - 2014-04-20
+* http://jqueryui.com
+* Includes: jquery.ui.core.js, jquery.ui.datepicker.js
+* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
+
+(function(e,t){function i(t,i){var s,a,o,r=t.nodeName.toLowerCase();return"area"===r?(s=t.parentNode,a=s.name,t.href&&a&&"map"===s.nodeName.toLowerCase()?(o=e("img[usemap=#"+a+"]")[0],!!o&&n(o)):!1):(/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||i:i)&&n(t)}function n(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}var s=0,a=/^ui-id-\d+$/;e.ui=e.ui||{},e.extend(e.ui,{version:"1.10.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({focus:function(t){return function(i,n){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),n&&n.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),scrollParent:function(){var t;return t=e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(i){if(i!==t)return this.css("zIndex",i);if(this.length)for(var n,s,a=e(this[0]);a.length&&a[0]!==document;){if(n=a.css("position"),("absolute"===n||"relative"===n||"fixed"===n)&&(s=parseInt(a.css("zIndex"),10),!isNaN(s)&&0!==s))return s;a=a.parent()}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++s)})},removeUniqueId:function(){return this.each(function(){a.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,n){return!!e.data(t,n[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),s=isNaN(n);return(s||n>=0)&&i(t,!s)}}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(i,n){function s(t,i,n,s){return e.each(a,function(){i-=parseFloat(e.css(t,"padding"+this))||0,n&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var a="Width"===n?["Left","Right"]:["Top","Bottom"],o=n.toLowerCase(),r={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+n]=function(i){return i===t?r["inner"+n].call(this):this.each(function(){e(this).css(o,s(this,i)+"px")})},e.fn["outer"+n]=function(t,i){return"number"!=typeof t?r["outer"+n].call(this,t):this.each(function(){e(this).css(o,s(this,t,!0,i)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.support.selectstart="onselectstart"in document.createElement("div"),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,i,n){var s,a=e.ui[t].prototype;for(s in n)a.plugins[s]=a.plugins[s]||[],a.plugins[s].push([i,n[s]])},call:function(e,t,i){var n,s=e.plugins[t];if(s&&e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType)for(n=0;s.length>n;n++)e.options[s[n][0]]&&s[n][1].apply(e.element,i)}},hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var n=i&&"left"===i?"scrollLeft":"scrollTop",s=!1;return t[n]>0?!0:(t[n]=1,s=t[n]>0,t[n]=0,s)}})})(jQuery);(function(e,t){function i(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},e.extend(this._defaults,this.regional[""]),this.dpDiv=a(e("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}function a(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){e(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",function(){e.datepicker._isDisabledDatepicker(n.inline?t.parent()[0]:n.input[0])||(e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),e(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).addClass("ui-datepicker-next-hover"))})}function s(t,i){e.extend(t,i);for(var a in i)null==i[a]&&(t[a]=i[a]);return t}e.extend(e.ui,{datepicker:{version:"1.10.4"}});var n,r="datepicker";e.extend(i.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){return s(this._defaults,e||{}),this},_attachDatepicker:function(t,i){var a,s,n;a=t.nodeName.toLowerCase(),s="div"===a||"span"===a,t.id||(this.uuid+=1,t.id="dp"+this.uuid),n=this._newInst(e(t),s),n.settings=e.extend({},i||{}),"input"===a?this._connectDatepicker(t,n):s&&this._inlineDatepicker(t,n)},_newInst:function(t,i){var s=t[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:s,input:t,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:i,dpDiv:i?a(e("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")):this.dpDiv}},_connectDatepicker:function(t,i){var a=e(t);i.append=e([]),i.trigger=e([]),a.hasClass(this.markerClassName)||(this._attachments(a,i),a.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(i),e.data(t,r,i),i.settings.disabled&&this._disableDatepicker(t))},_attachments:function(t,i){var a,s,n,r=this._get(i,"appendText"),o=this._get(i,"isRTL");i.append&&i.append.remove(),r&&(i.append=e("<span class='"+this._appendClass+"'>"+r+"</span>"),t[o?"before":"after"](i.append)),t.unbind("focus",this._showDatepicker),i.trigger&&i.trigger.remove(),a=this._get(i,"showOn"),("focus"===a||"both"===a)&&t.focus(this._showDatepicker),("button"===a||"both"===a)&&(s=this._get(i,"buttonText"),n=this._get(i,"buttonImage"),i.trigger=e(this._get(i,"buttonImageOnly")?e("<img/>").addClass(this._triggerClass).attr({src:n,alt:s,title:s}):e("<button type='button'></button>").addClass(this._triggerClass).html(n?e("<img/>").attr({src:n,alt:s,title:s}):s)),t[o?"before":"after"](i.trigger),i.trigger.click(function(){return e.datepicker._datepickerShowing&&e.datepicker._lastInput===t[0]?e.datepicker._hideDatepicker():e.datepicker._datepickerShowing&&e.datepicker._lastInput!==t[0]?(e.datepicker._hideDatepicker(),e.datepicker._showDatepicker(t[0])):e.datepicker._showDatepicker(t[0]),!1}))},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t,i,a,s,n=new Date(2009,11,20),r=this._get(e,"dateFormat");r.match(/[DM]/)&&(t=function(e){for(i=0,a=0,s=0;e.length>s;s++)e[s].length>i&&(i=e[s].length,a=s);return a},n.setMonth(t(this._get(e,r.match(/MM/)?"monthNames":"monthNamesShort"))),n.setDate(t(this._get(e,r.match(/DD/)?"dayNames":"dayNamesShort"))+20-n.getDay())),e.input.attr("size",this._formatDate(e,n).length)}},_inlineDatepicker:function(t,i){var a=e(t);a.hasClass(this.markerClassName)||(a.addClass(this.markerClassName).append(i.dpDiv),e.data(t,r,i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(t),i.dpDiv.css("display","block"))},_dialogDatepicker:function(t,i,a,n,o){var u,c,h,l,d,p=this._dialogInst;return p||(this.uuid+=1,u="dp"+this.uuid,this._dialogInput=e("<input type='text' id='"+u+"' style='position: absolute; top: -100px; width: 0px;'/>"),this._dialogInput.keydown(this._doKeyDown),e("body").append(this._dialogInput),p=this._dialogInst=this._newInst(this._dialogInput,!1),p.settings={},e.data(this._dialogInput[0],r,p)),s(p.settings,n||{}),i=i&&i.constructor===Date?this._formatDate(p,i):i,this._dialogInput.val(i),this._pos=o?o.length?o:[o.pageX,o.pageY]:null,this._pos||(c=document.documentElement.clientWidth,h=document.documentElement.clientHeight,l=document.documentElement.scrollLeft||document.body.scrollLeft,d=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[c/2-100+l,h/2-150+d]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),p.settings.onSelect=a,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),e.blockUI&&e.blockUI(this.dpDiv),e.data(this._dialogInput[0],r,p),this},_destroyDatepicker:function(t){var i,a=e(t),s=e.data(t,r);a.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),e.removeData(t,r),"input"===i?(s.append.remove(),s.trigger.remove(),a.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):("div"===i||"span"===i)&&a.removeClass(this.markerClassName).empty())},_enableDatepicker:function(t){var i,a,s=e(t),n=e.data(t,r);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(a=s.children("."+this._inlineClass),a.children().removeClass("ui-state-disabled"),a.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}))},_disableDatepicker:function(t){var i,a,s=e(t),n=e.data(t,r);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(a=s.children("."+this._inlineClass),a.children().addClass("ui-state-disabled"),a.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}),this._disabledInputs[this._disabledInputs.length]=t)},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;this._disabledInputs.length>t;t++)if(this._disabledInputs[t]===e)return!0;return!1},_getInst:function(t){try{return e.data(t,r)}catch(i){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(i,a,n){var r,o,u,c,h=this._getInst(i);return 2===arguments.length&&"string"==typeof a?"defaults"===a?e.extend({},e.datepicker._defaults):h?"all"===a?e.extend({},h.settings):this._get(h,a):null:(r=a||{},"string"==typeof a&&(r={},r[a]=n),h&&(this._curInst===h&&this._hideDatepicker(),o=this._getDateDatepicker(i,!0),u=this._getMinMaxDate(h,"min"),c=this._getMinMaxDate(h,"max"),s(h.settings,r),null!==u&&r.dateFormat!==t&&r.minDate===t&&(h.settings.minDate=this._formatDate(h,u)),null!==c&&r.dateFormat!==t&&r.maxDate===t&&(h.settings.maxDate=this._formatDate(h,c)),"disabled"in r&&(r.disabled?this._disableDatepicker(i):this._enableDatepicker(i)),this._attachments(e(i),h),this._autoSize(h),this._setDate(h,o),this._updateAlternate(h),this._updateDatepicker(h)),t)},_changeDatepicker:function(e,t,i){this._optionDatepicker(e,t,i)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var i=this._getInst(e);i&&(this._setDate(i,t),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(e,t){var i=this._getInst(e);return i&&!i.inline&&this._setDateFromField(i,t),i?this._getDate(i):null},_doKeyDown:function(t){var i,a,s,n=e.datepicker._getInst(t.target),r=!0,o=n.dpDiv.is(".ui-datepicker-rtl");if(n._keyEvent=!0,e.datepicker._datepickerShowing)switch(t.keyCode){case 9:e.datepicker._hideDatepicker(),r=!1;break;case 13:return s=e("td."+e.datepicker._dayOverClass+":not(."+e.datepicker._currentClass+")",n.dpDiv),s[0]&&e.datepicker._selectDay(t.target,n.selectedMonth,n.selectedYear,s[0]),i=e.datepicker._get(n,"onSelect"),i?(a=e.datepicker._formatDate(n),i.apply(n.input?n.input[0]:null,[a,n])):e.datepicker._hideDatepicker(),!1;case 27:e.datepicker._hideDatepicker();break;case 33:e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 34:e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 35:(t.ctrlKey||t.metaKey)&&e.datepicker._clearDate(t.target),r=t.ctrlKey||t.metaKey;break;case 36:(t.ctrlKey||t.metaKey)&&e.datepicker._gotoToday(t.target),r=t.ctrlKey||t.metaKey;break;case 37:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,o?1:-1,"D"),r=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 38:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,-7,"D"),r=t.ctrlKey||t.metaKey;break;case 39:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,o?-1:1,"D"),r=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 40:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,7,"D"),r=t.ctrlKey||t.metaKey;break;default:r=!1}else 36===t.keyCode&&t.ctrlKey?e.datepicker._showDatepicker(this):r=!1;r&&(t.preventDefault(),t.stopPropagation())},_doKeyPress:function(i){var a,s,n=e.datepicker._getInst(i.target);return e.datepicker._get(n,"constrainInput")?(a=e.datepicker._possibleChars(e.datepicker._get(n,"dateFormat")),s=String.fromCharCode(null==i.charCode?i.keyCode:i.charCode),i.ctrlKey||i.metaKey||" ">s||!a||a.indexOf(s)>-1):t},_doKeyUp:function(t){var i,a=e.datepicker._getInst(t.target);if(a.input.val()!==a.lastVal)try{i=e.datepicker.parseDate(e.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,e.datepicker._getFormatConfig(a)),i&&(e.datepicker._setDateFromField(a),e.datepicker._updateAlternate(a),e.datepicker._updateDatepicker(a))}catch(s){}return!0},_showDatepicker:function(t){if(t=t.target||t,"input"!==t.nodeName.toLowerCase()&&(t=e("input",t.parentNode)[0]),!e.datepicker._isDisabledDatepicker(t)&&e.datepicker._lastInput!==t){var i,a,n,r,o,u,c;i=e.datepicker._getInst(t),e.datepicker._curInst&&e.datepicker._curInst!==i&&(e.datepicker._curInst.dpDiv.stop(!0,!0),i&&e.datepicker._datepickerShowing&&e.datepicker._hideDatepicker(e.datepicker._curInst.input[0])),a=e.datepicker._get(i,"beforeShow"),n=a?a.apply(t,[t,i]):{},n!==!1&&(s(i.settings,n),i.lastVal=null,e.datepicker._lastInput=t,e.datepicker._setDateFromField(i),e.datepicker._inDialog&&(t.value=""),e.datepicker._pos||(e.datepicker._pos=e.datepicker._findPos(t),e.datepicker._pos[1]+=t.offsetHeight),r=!1,e(t).parents().each(function(){return r|="fixed"===e(this).css("position"),!r}),o={left:e.datepicker._pos[0],top:e.datepicker._pos[1]},e.datepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),e.datepicker._updateDatepicker(i),o=e.datepicker._checkOffset(i,o,r),i.dpDiv.css({position:e.datepicker._inDialog&&e.blockUI?"static":r?"fixed":"absolute",display:"none",left:o.left+"px",top:o.top+"px"}),i.inline||(u=e.datepicker._get(i,"showAnim"),c=e.datepicker._get(i,"duration"),i.dpDiv.zIndex(e(t).zIndex()+1),e.datepicker._datepickerShowing=!0,e.effects&&e.effects.effect[u]?i.dpDiv.show(u,e.datepicker._get(i,"showOptions"),c):i.dpDiv[u||"show"](u?c:null),e.datepicker._shouldFocusInput(i)&&i.input.focus(),e.datepicker._curInst=i))}},_updateDatepicker:function(t){this.maxRows=4,n=t,t.dpDiv.empty().append(this._generateHTML(t)),this._attachHandlers(t),t.dpDiv.find("."+this._dayOverClass+" a").mouseover();var i,a=this._getNumberOfMonths(t),s=a[1],r=17;t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),s>1&&t.dpDiv.addClass("ui-datepicker-multi-"+s).css("width",r*s+"em"),t.dpDiv[(1!==a[0]||1!==a[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),t===e.datepicker._curInst&&e.datepicker._datepickerShowing&&e.datepicker._shouldFocusInput(t)&&t.input.focus(),t.yearshtml&&(i=t.yearshtml,setTimeout(function(){i===t.yearshtml&&t.yearshtml&&t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml),i=t.yearshtml=null},0))},_shouldFocusInput:function(e){return e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&!e.input.is(":focus")},_checkOffset:function(t,i,a){var s=t.dpDiv.outerWidth(),n=t.dpDiv.outerHeight(),r=t.input?t.input.outerWidth():0,o=t.input?t.input.outerHeight():0,u=document.documentElement.clientWidth+(a?0:e(document).scrollLeft()),c=document.documentElement.clientHeight+(a?0:e(document).scrollTop());return i.left-=this._get(t,"isRTL")?s-r:0,i.left-=a&&i.left===t.input.offset().left?e(document).scrollLeft():0,i.top-=a&&i.top===t.input.offset().top+o?e(document).scrollTop():0,i.left-=Math.min(i.left,i.left+s>u&&u>s?Math.abs(i.left+s-u):0),i.top-=Math.min(i.top,i.top+n>c&&c>n?Math.abs(n+o):0),i},_findPos:function(t){for(var i,a=this._getInst(t),s=this._get(a,"isRTL");t&&("hidden"===t.type||1!==t.nodeType||e.expr.filters.hidden(t));)t=t[s?"previousSibling":"nextSibling"];return i=e(t).offset(),[i.left,i.top]},_hideDatepicker:function(t){var i,a,s,n,o=this._curInst;!o||t&&o!==e.data(t,r)||this._datepickerShowing&&(i=this._get(o,"showAnim"),a=this._get(o,"duration"),s=function(){e.datepicker._tidyDialog(o)},e.effects&&(e.effects.effect[i]||e.effects[i])?o.dpDiv.hide(i,e.datepicker._get(o,"showOptions"),a,s):o.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?a:null,s),i||s(),this._datepickerShowing=!1,n=this._get(o,"onClose"),n&&n.apply(o.input?o.input[0]:null,[o.input?o.input.val():"",o]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),e.blockUI&&(e.unblockUI(),e("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(e.datepicker._curInst){var i=e(t.target),a=e.datepicker._getInst(i[0]);(i[0].id!==e.datepicker._mainDivId&&0===i.parents("#"+e.datepicker._mainDivId).length&&!i.hasClass(e.datepicker.markerClassName)&&!i.closest("."+e.datepicker._triggerClass).length&&e.datepicker._datepickerShowing&&(!e.datepicker._inDialog||!e.blockUI)||i.hasClass(e.datepicker.markerClassName)&&e.datepicker._curInst!==a)&&e.datepicker._hideDatepicker()}},_adjustDate:function(t,i,a){var s=e(t),n=this._getInst(s[0]);this._isDisabledDatepicker(s[0])||(this._adjustInstDate(n,i+("M"===a?this._get(n,"showCurrentAtPos"):0),a),this._updateDatepicker(n))},_gotoToday:function(t){var i,a=e(t),s=this._getInst(a[0]);this._get(s,"gotoCurrent")&&s.currentDay?(s.selectedDay=s.currentDay,s.drawMonth=s.selectedMonth=s.currentMonth,s.drawYear=s.selectedYear=s.currentYear):(i=new Date,s.selectedDay=i.getDate(),s.drawMonth=s.selectedMonth=i.getMonth(),s.drawYear=s.selectedYear=i.getFullYear()),this._notifyChange(s),this._adjustDate(a)},_selectMonthYear:function(t,i,a){var s=e(t),n=this._getInst(s[0]);n["selected"+("M"===a?"Month":"Year")]=n["draw"+("M"===a?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(n),this._adjustDate(s)},_selectDay:function(t,i,a,s){var n,r=e(t);e(s).hasClass(this._unselectableClass)||this._isDisabledDatepicker(r[0])||(n=this._getInst(r[0]),n.selectedDay=n.currentDay=e("a",s).html(),n.selectedMonth=n.currentMonth=i,n.selectedYear=n.currentYear=a,this._selectDate(t,this._formatDate(n,n.currentDay,n.currentMonth,n.currentYear)))},_clearDate:function(t){var i=e(t);this._selectDate(i,"")},_selectDate:function(t,i){var a,s=e(t),n=this._getInst(s[0]);i=null!=i?i:this._formatDate(n),n.input&&n.input.val(i),this._updateAlternate(n),a=this._get(n,"onSelect"),a?a.apply(n.input?n.input[0]:null,[i,n]):n.input&&n.input.trigger("change"),n.inline?this._updateDatepicker(n):(this._hideDatepicker(),this._lastInput=n.input[0],"object"!=typeof n.input[0]&&n.input.focus(),this._lastInput=null)},_updateAlternate:function(t){var i,a,s,n=this._get(t,"altField");n&&(i=this._get(t,"altFormat")||this._get(t,"dateFormat"),a=this._getDate(t),s=this.formatDate(i,a,this._getFormatConfig(t)),e(n).each(function(){e(this).val(s)}))},noWeekends:function(e){var t=e.getDay();return[t>0&&6>t,""]},iso8601Week:function(e){var t,i=new Date(e.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),t=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((t-i)/864e5)/7)+1},parseDate:function(i,a,s){if(null==i||null==a)throw"Invalid arguments";if(a="object"==typeof a?""+a:a+"",""===a)return null;var n,r,o,u,c=0,h=(s?s.shortYearCutoff:null)||this._defaults.shortYearCutoff,l="string"!=typeof h?h:(new Date).getFullYear()%100+parseInt(h,10),d=(s?s.dayNamesShort:null)||this._defaults.dayNamesShort,p=(s?s.dayNames:null)||this._defaults.dayNames,g=(s?s.monthNamesShort:null)||this._defaults.monthNamesShort,m=(s?s.monthNames:null)||this._defaults.monthNames,f=-1,_=-1,v=-1,k=-1,y=!1,b=function(e){var t=i.length>n+1&&i.charAt(n+1)===e;return t&&n++,t},D=function(e){var t=b(e),i="@"===e?14:"!"===e?20:"y"===e&&t?4:"o"===e?3:2,s=RegExp("^\\d{1,"+i+"}"),n=a.substring(c).match(s);if(!n)throw"Missing number at position "+c;return c+=n[0].length,parseInt(n[0],10)},w=function(i,s,n){var r=-1,o=e.map(b(i)?n:s,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)});if(e.each(o,function(e,i){var s=i[1];return a.substr(c,s.length).toLowerCase()===s.toLowerCase()?(r=i[0],c+=s.length,!1):t}),-1!==r)return r+1;throw"Unknown name at position "+c},M=function(){if(a.charAt(c)!==i.charAt(n))throw"Unexpected literal at position "+c;c++};for(n=0;i.length>n;n++)if(y)"'"!==i.charAt(n)||b("'")?M():y=!1;else switch(i.charAt(n)){case"d":v=D("d");break;case"D":w("D",d,p);break;case"o":k=D("o");break;case"m":_=D("m");break;case"M":_=w("M",g,m);break;case"y":f=D("y");break;case"@":u=new Date(D("@")),f=u.getFullYear(),_=u.getMonth()+1,v=u.getDate();break;case"!":u=new Date((D("!")-this._ticksTo1970)/1e4),f=u.getFullYear(),_=u.getMonth()+1,v=u.getDate();break;case"'":b("'")?M():y=!0;break;default:M()}if(a.length>c&&(o=a.substr(c),!/^\s+/.test(o)))throw"Extra/unparsed characters found in date: "+o;if(-1===f?f=(new Date).getFullYear():100>f&&(f+=(new Date).getFullYear()-(new Date).getFullYear()%100+(l>=f?0:-100)),k>-1)for(_=1,v=k;;){if(r=this._getDaysInMonth(f,_-1),r>=v)break;_++,v-=r}if(u=this._daylightSavingAdjust(new Date(f,_-1,v)),u.getFullYear()!==f||u.getMonth()+1!==_||u.getDate()!==v)throw"Invalid date";return u},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:1e7*60*60*24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(e,t,i){if(!t)return"";var a,s=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,n=(i?i.dayNames:null)||this._defaults.dayNames,r=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,o=(i?i.monthNames:null)||this._defaults.monthNames,u=function(t){var i=e.length>a+1&&e.charAt(a+1)===t;return i&&a++,i},c=function(e,t,i){var a=""+t;if(u(e))for(;i>a.length;)a="0"+a;return a},h=function(e,t,i,a){return u(e)?a[t]:i[t]},l="",d=!1;if(t)for(a=0;e.length>a;a++)if(d)"'"!==e.charAt(a)||u("'")?l+=e.charAt(a):d=!1;else switch(e.charAt(a)){case"d":l+=c("d",t.getDate(),2);break;case"D":l+=h("D",t.getDay(),s,n);break;case"o":l+=c("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":l+=c("m",t.getMonth()+1,2);break;case"M":l+=h("M",t.getMonth(),r,o);break;case"y":l+=u("y")?t.getFullYear():(10>t.getYear()%100?"0":"")+t.getYear()%100;break;case"@":l+=t.getTime();break;case"!":l+=1e4*t.getTime()+this._ticksTo1970;break;case"'":u("'")?l+="'":d=!0;break;default:l+=e.charAt(a)}return l},_possibleChars:function(e){var t,i="",a=!1,s=function(i){var a=e.length>t+1&&e.charAt(t+1)===i;return a&&t++,a};for(t=0;e.length>t;t++)if(a)"'"!==e.charAt(t)||s("'")?i+=e.charAt(t):a=!1;else switch(e.charAt(t)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":s("'")?i+="'":a=!0;break;default:i+=e.charAt(t)}return i},_get:function(e,i){return e.settings[i]!==t?e.settings[i]:this._defaults[i]},_setDateFromField:function(e,t){if(e.input.val()!==e.lastVal){var i=this._get(e,"dateFormat"),a=e.lastVal=e.input?e.input.val():null,s=this._getDefaultDate(e),n=s,r=this._getFormatConfig(e);try{n=this.parseDate(i,a,r)||s}catch(o){a=t?"":a}e.selectedDay=n.getDate(),e.drawMonth=e.selectedMonth=n.getMonth(),e.drawYear=e.selectedYear=n.getFullYear(),e.currentDay=a?n.getDate():0,e.currentMonth=a?n.getMonth():0,e.currentYear=a?n.getFullYear():0,this._adjustInstDate(e)}},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(t,i,a){var s=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},n=function(i){try{return e.datepicker.parseDate(e.datepicker._get(t,"dateFormat"),i,e.datepicker._getFormatConfig(t))}catch(a){}for(var s=(i.toLowerCase().match(/^c/)?e.datepicker._getDate(t):null)||new Date,n=s.getFullYear(),r=s.getMonth(),o=s.getDate(),u=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,c=u.exec(i);c;){switch(c[2]||"d"){case"d":case"D":o+=parseInt(c[1],10);break;case"w":case"W":o+=7*parseInt(c[1],10);break;case"m":case"M":r+=parseInt(c[1],10),o=Math.min(o,e.datepicker._getDaysInMonth(n,r));break;case"y":case"Y":n+=parseInt(c[1],10),o=Math.min(o,e.datepicker._getDaysInMonth(n,r))}c=u.exec(i)}return new Date(n,r,o)},r=null==i||""===i?a:"string"==typeof i?n(i):"number"==typeof i?isNaN(i)?a:s(i):new Date(i.getTime());return r=r&&"Invalid Date"==""+r?a:r,r&&(r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0)),this._daylightSavingAdjust(r)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,i){var a=!t,s=e.selectedMonth,n=e.selectedYear,r=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=r.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=r.getMonth(),e.drawYear=e.selectedYear=e.currentYear=r.getFullYear(),s===e.selectedMonth&&n===e.selectedYear||i||this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(a?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&""===e.input.val()?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(t){var i=this._get(t,"stepMonths"),a="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){e.datepicker._adjustDate(a,-i,"M")},next:function(){e.datepicker._adjustDate(a,+i,"M")},hide:function(){e.datepicker._hideDatepicker()},today:function(){e.datepicker._gotoToday(a)},selectDay:function(){return e.datepicker._selectDay(a,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return e.datepicker._selectMonthYear(a,this,"M"),!1},selectYear:function(){return e.datepicker._selectMonthYear(a,this,"Y"),!1}};e(this).bind(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t,i,a,s,n,r,o,u,c,h,l,d,p,g,m,f,_,v,k,y,b,D,w,M,C,x,I,N,T,A,E,S,Y,F,P,O,j,K,R,H=new Date,W=this._daylightSavingAdjust(new Date(H.getFullYear(),H.getMonth(),H.getDate())),L=this._get(e,"isRTL"),U=this._get(e,"showButtonPanel"),B=this._get(e,"hideIfNoPrevNext"),z=this._get(e,"navigationAsDateFormat"),q=this._getNumberOfMonths(e),G=this._get(e,"showCurrentAtPos"),J=this._get(e,"stepMonths"),Q=1!==q[0]||1!==q[1],V=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),$=this._getMinMaxDate(e,"min"),X=this._getMinMaxDate(e,"max"),Z=e.drawMonth-G,et=e.drawYear;if(0>Z&&(Z+=12,et--),X)for(t=this._daylightSavingAdjust(new Date(X.getFullYear(),X.getMonth()-q[0]*q[1]+1,X.getDate())),t=$&&$>t?$:t;this._daylightSavingAdjust(new Date(et,Z,1))>t;)Z--,0>Z&&(Z=11,et--);for(e.drawMonth=Z,e.drawYear=et,i=this._get(e,"prevText"),i=z?this.formatDate(i,this._daylightSavingAdjust(new Date(et,Z-J,1)),this._getFormatConfig(e)):i,a=this._canAdjustMonth(e,-1,et,Z)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"e":"w")+"'>"+i+"</span></a>":B?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"e":"w")+"'>"+i+"</span></a>",s=this._get(e,"nextText"),s=z?this.formatDate(s,this._daylightSavingAdjust(new Date(et,Z+J,1)),this._getFormatConfig(e)):s,n=this._canAdjustMonth(e,1,et,Z)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"w":"e")+"'>"+s+"</span></a>":B?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"w":"e")+"'>"+s+"</span></a>",r=this._get(e,"currentText"),o=this._get(e,"gotoCurrent")&&e.currentDay?V:W,r=z?this.formatDate(r,o,this._getFormatConfig(e)):r,u=e.inline?"":"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(e,"closeText")+"</button>",c=U?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(L?u:"")+(this._isInRange(e,o)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+r+"</button>":"")+(L?"":u)+"</div>":"",h=parseInt(this._get(e,"firstDay"),10),h=isNaN(h)?0:h,l=this._get(e,"showWeek"),d=this._get(e,"dayNames"),p=this._get(e,"dayNamesMin"),g=this._get(e,"monthNames"),m=this._get(e,"monthNamesShort"),f=this._get(e,"beforeShowDay"),_=this._get(e,"showOtherMonths"),v=this._get(e,"selectOtherMonths"),k=this._getDefaultDate(e),y="",D=0;q[0]>D;D++){for(w="",this.maxRows=4,M=0;q[1]>M;M++){if(C=this._daylightSavingAdjust(new Date(et,Z,e.selectedDay)),x=" ui-corner-all",I="",Q){if(I+="<div class='ui-datepicker-group",q[1]>1)switch(M){case 0:I+=" ui-datepicker-group-first",x=" ui-corner-"+(L?"right":"left");break;case q[1]-1:I+=" ui-datepicker-group-last",x=" ui-corner-"+(L?"left":"right");break;default:I+=" ui-datepicker-group-middle",x=""}I+="'>"}for(I+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+x+"'>"+(/all|left/.test(x)&&0===D?L?n:a:"")+(/all|right/.test(x)&&0===D?L?a:n:"")+this._generateMonthYearHeader(e,Z,et,$,X,D>0||M>0,g,m)+"</div><table class='ui-datepicker-calendar'><thead>"+"<tr>",N=l?"<th class='ui-datepicker-week-col'>"+this._get(e,"weekHeader")+"</th>":"",b=0;7>b;b++)T=(b+h)%7,N+="<th"+((b+h+6)%7>=5?" class='ui-datepicker-week-end'":"")+">"+"<span title='"+d[T]+"'>"+p[T]+"</span></th>";for(I+=N+"</tr></thead><tbody>",A=this._getDaysInMonth(et,Z),et===e.selectedYear&&Z===e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,A)),E=(this._getFirstDayOfMonth(et,Z)-h+7)%7,S=Math.ceil((E+A)/7),Y=Q?this.maxRows>S?this.maxRows:S:S,this.maxRows=Y,F=this._daylightSavingAdjust(new Date(et,Z,1-E)),P=0;Y>P;P++){for(I+="<tr>",O=l?"<td class='ui-datepicker-week-col'>"+this._get(e,"calculateWeek")(F)+"</td>":"",b=0;7>b;b++)j=f?f.apply(e.input?e.input[0]:null,[F]):[!0,""],K=F.getMonth()!==Z,R=K&&!v||!j[0]||$&&$>F||X&&F>X,O+="<td class='"+((b+h+6)%7>=5?" ui-datepicker-week-end":"")+(K?" ui-datepicker-other-month":"")+(F.getTime()===C.getTime()&&Z===e.selectedMonth&&e._keyEvent||k.getTime()===F.getTime()&&k.getTime()===C.getTime()?" "+this._dayOverClass:"")+(R?" "+this._unselectableClass+" ui-state-disabled":"")+(K&&!_?"":" "+j[1]+(F.getTime()===V.getTime()?" "+this._currentClass:"")+(F.getTime()===W.getTime()?" ui-datepicker-today":""))+"'"+(K&&!_||!j[2]?"":" title='"+j[2].replace(/'/g,"&#39;")+"'")+(R?"":" data-handler='selectDay' data-event='click' data-month='"+F.getMonth()+"' data-year='"+F.getFullYear()+"'")+">"+(K&&!_?"&#xa0;":R?"<span class='ui-state-default'>"+F.getDate()+"</span>":"<a class='ui-state-default"+(F.getTime()===W.getTime()?" ui-state-highlight":"")+(F.getTime()===V.getTime()?" ui-state-active":"")+(K?" ui-priority-secondary":"")+"' href='#'>"+F.getDate()+"</a>")+"</td>",F.setDate(F.getDate()+1),F=this._daylightSavingAdjust(F);I+=O+"</tr>"}Z++,Z>11&&(Z=0,et++),I+="</tbody></table>"+(Q?"</div>"+(q[0]>0&&M===q[1]-1?"<div class='ui-datepicker-row-break'></div>":""):""),w+=I}y+=w}return y+=c,e._keyEvent=!1,y},_generateMonthYearHeader:function(e,t,i,a,s,n,r,o){var u,c,h,l,d,p,g,m,f=this._get(e,"changeMonth"),_=this._get(e,"changeYear"),v=this._get(e,"showMonthAfterYear"),k="<div class='ui-datepicker-title'>",y="";if(n||!f)y+="<span class='ui-datepicker-month'>"+r[t]+"</span>";else{for(u=a&&a.getFullYear()===i,c=s&&s.getFullYear()===i,y+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>",h=0;12>h;h++)(!u||h>=a.getMonth())&&(!c||s.getMonth()>=h)&&(y+="<option value='"+h+"'"+(h===t?" selected='selected'":"")+">"+o[h]+"</option>");y+="</select>"}if(v||(k+=y+(!n&&f&&_?"":"&#xa0;")),!e.yearshtml)if(e.yearshtml="",n||!_)k+="<span class='ui-datepicker-year'>"+i+"</span>";else{for(l=this._get(e,"yearRange").split(":"),d=(new Date).getFullYear(),p=function(e){var t=e.match(/c[+\-].*/)?i+parseInt(e.substring(1),10):e.match(/[+\-].*/)?d+parseInt(e,10):parseInt(e,10);
+return isNaN(t)?d:t},g=p(l[0]),m=Math.max(g,p(l[1]||"")),g=a?Math.max(g,a.getFullYear()):g,m=s?Math.min(m,s.getFullYear()):m,e.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";m>=g;g++)e.yearshtml+="<option value='"+g+"'"+(g===i?" selected='selected'":"")+">"+g+"</option>";e.yearshtml+="</select>",k+=e.yearshtml,e.yearshtml=null}return k+=this._get(e,"yearSuffix"),v&&(k+=(!n&&f&&_?"":"&#xa0;")+y),k+="</div>"},_adjustInstDate:function(e,t,i){var a=e.drawYear+("Y"===i?t:0),s=e.drawMonth+("M"===i?t:0),n=Math.min(e.selectedDay,this._getDaysInMonth(a,s))+("D"===i?t:0),r=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(a,s,n)));e.selectedDay=r.getDate(),e.drawMonth=e.selectedMonth=r.getMonth(),e.drawYear=e.selectedYear=r.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(e)},_restrictMinMax:function(e,t){var i=this._getMinMaxDate(e,"min"),a=this._getMinMaxDate(e,"max"),s=i&&i>t?i:t;return a&&s>a?a:s},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return null==t?[1,1]:"number"==typeof t?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return new Date(e,t,1).getDay()},_canAdjustMonth:function(e,t,i,a){var s=this._getNumberOfMonths(e),n=this._daylightSavingAdjust(new Date(i,a+(0>t?t:s[0]*s[1]),1));return 0>t&&n.setDate(this._getDaysInMonth(n.getFullYear(),n.getMonth())),this._isInRange(e,n)},_isInRange:function(e,t){var i,a,s=this._getMinMaxDate(e,"min"),n=this._getMinMaxDate(e,"max"),r=null,o=null,u=this._get(e,"yearRange");return u&&(i=u.split(":"),a=(new Date).getFullYear(),r=parseInt(i[0],10),o=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(r+=a),i[1].match(/[+\-].*/)&&(o+=a)),(!s||t.getTime()>=s.getTime())&&(!n||t.getTime()<=n.getTime())&&(!r||t.getFullYear()>=r)&&(!o||o>=t.getFullYear())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t="string"!=typeof t?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,i,a){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var s=t?"object"==typeof t?t:this._daylightSavingAdjust(new Date(a,i,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),s,this._getFormatConfig(e))}}),e.fn.datepicker=function(t){if(!this.length)return this;e.datepicker.initialized||(e(document).mousedown(e.datepicker._checkExternalClick),e.datepicker.initialized=!0),0===e("#"+e.datepicker._mainDivId).length&&e("body").append(e.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof t||"isDisabled"!==t&&"getDate"!==t&&"widget"!==t?"option"===t&&2===arguments.length&&"string"==typeof arguments[1]?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof t?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this].concat(i)):e.datepicker._attachDatepicker(this,t)}):e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i))},e.datepicker=new i,e.datepicker.initialized=!1,e.datepicker.uuid=(new Date).getTime(),e.datepicker.version="1.10.4"})(jQuery);
\ No newline at end of file
diff --git a/project/templates/index.html b/project/templates/index.html
index d28cb64..0290748 100644
--- a/project/templates/index.html
+++ b/project/templates/index.html
@@ -8,6 +8,7 @@
         <title>{% block title %}My Movie Library{% endblock %}</title>
 
         <link rel="shortcut icon" href="{{ url_for('static', filename='images/favicon.ico') }}">
+        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/ui-darkness/jquery-ui-1.10.4.custom.min.css') }}">
         <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/bootstrap-slate.min.css') }}">
         <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/style.css') }}">
 
@@ -68,6 +69,7 @@
         <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.12.0/jquery.validate.min.js"></script>
         <!-- Include all compiled plugins (below), or include individual files as needed -->
         <script src="{{ url_for('static', filename='lib/bootstrap.min.js') }}"></script>
+        <script src="{{ url_for('static', filename='lib/jquery-ui-1.10.4.custom.min.js') }}"></script>
 
         {% block javascript %}
         {% endblock %}
diff --git a/project/templates/library/library.html b/project/templates/library/library.html
index 8bc3090..728d19e 100644
--- a/project/templates/library/library.html
+++ b/project/templates/library/library.html
@@ -23,14 +23,20 @@
                     </tr>
                 {% else %}
                     {% for movie in library.hydrateList() %}
+                    {% set loan = movie.getLoan(user) %}
                         <tr class='clickable' data-id='{{ loop.index }}'>
                         <td>
                             <img src="{{ movie.poster|default('') }}" style="max-width: 200px;" alt="{{ movie.title }}">
                             <p>{{ movie.title }}</p>
                              <div class="btn-group hidden-md hidden-lg">
-                              <button type="button" class="btn btn-default btn-small lend-movie" data-id='{{ loop.index }}'>Lend</button>
-                              <button type="button" class="btn btn-default btn-small borrow-movie" data-id='{{ loop.index }}'>Edit</button>
-                              <button type="button" class="btn btn-default btn-small remove-movie" data-id='{{ loop.index }}'>Remove</button>
+                              {% if loan == None %}  
+                                <button type="button" class="btn btn-default btn-small lend-movie" data-toggle="modal" data-target="#loan-form" data-id='{{ movie.id }}'>Lend</button>
+                              {% else %}  
+                                This movie is loaned to {{ loan.email }} and is due back on {{ loan.expected_return_date.strftime('%m-%d-%Y') }}
+                              {% endif %}
+                              {% if library.name != "Master" or loan == None %}
+                                <button type="button" class="btn btn-default btn-small remove-movie" data-id='{{ loop.index }}'>Remove</button>
+                              {% endif %}
                             </div>
                         </td>
                         <td>
@@ -51,9 +57,15 @@
                         </td>
                         <td class="hidden-xs">
                             <div class="btn-group-vertical">
-                              <button type="button" class="btn btn-default btn-small lend-movie" data-id='{{ loop.index }}'>Lend</button>
-                              <button type="button" class="btn btn-default btn-small borrow-movie" data-id='{{ loop.index }}'>Edit</button>
-                              <button type="button" class="btn btn-default btn-small remove-movie" data-id='{{ loop.index }}'>Remove</button>
+                              {% if loan == None %}    
+                                  <button type="button" class="btn btn-default btn-small lend-movie" data-toggle="modal" data-target="#loan-form" data-id='{{ movie.id }}'>Lend</button>
+                              {% else %}  
+                                This movie is loaned to {{ loan.borrower_email }} and is due back on {{ loan.expected_return_date.strftime('%m-%d-%Y') }}
+                              {% endif %}
+                              {% if library.name != "Master" or loan == None %}
+                                <button type="button" class="btn btn-default btn-small remove-movie" data-id='{{ loop.index }}'>Remove</button>
+                              {% endif %}
+                              
                             </div>
                         </td>
                     </tr>
@@ -114,4 +126,5 @@
 
 {% block modals %}
     {% include 'library/addmovie_modal.html' %}
+    {% include 'library/loanMovie_modal.html' %}
 {% endblock %}
\ No newline at end of file
diff --git a/project/templates/library/loanMovie_modal.html b/project/templates/library/loanMovie_modal.html
new file mode 100644
index 0000000..e1d9a98
--- /dev/null
+++ b/project/templates/library/loanMovie_modal.html
@@ -0,0 +1,51 @@
+{% extends "modal_base.html" %}
+{% block modal_title %} Lend Movie {% endblock %}
+{% block modal_content %}
+		<form class="form-horizontal" id="loan" role="form" method="post" action="{{ url_for('createLoan') }}">
+			<div class="form-group">
+				<label for="email" class="col-sm-3 control-label">Borrowers Email</label>
+				<div class="col-xs-9 col-md-6">
+					<input type="text" class="form-control" name="email" placeholder="Email">
+				</div>
+			</div>
+			<div class="form-group">
+				<label for="returnDate" class="col-sm-3 control-label">Return Date <i class="glyphicon glyphicon-calendar"> </i></label>
+		        <div class="col-xs-9 col-md-6">
+		            <input id="returnDate" type="text" name="date" class="date-picker form-control" />
+		        </div>
+	        </div>
+		    <div class="form-group">
+			    <div class="col-xs-9 col-md-6">
+		        	<input type="hidden" class="hidden" name="movie" />
+		    	</div>
+			</div>
+		</form>
+{% endblock %}
+{% block accept_button_text %}Create{% endblock %}
+{% block ajax_url %}'{{ url_for('createLoan') }}'{% endblock %}
+{% block form_id %}loan{% endblock %}
+{% block validation_rules %}
+rules: {
+	email: {
+		required: true,
+		email: true
+	},
+	date: "required",
+	movie: "required"
+}
+{% endblock %} 
+{% block additional_javascripts %}
+	<script>
+		$(function(){
+			$(".date-picker").datepicker();
+		});
+		$(".lend-movie").on('click', function (event) {
+			event.stopPropagation();
+			event.preventDefault();
+			modal = $(this).data('target');
+			$(modal).modal('toggle');
+	    	$(".modal-body input[name='movie']").val( $(this).data('id')); 
+	    });
+		
+	</script>
+{% endblock %}
\ No newline at end of file
diff --git a/project/templates/library/master.html b/project/templates/library/master.html
index 79d925a..7b7fd30 100644
--- a/project/templates/library/master.html
+++ b/project/templates/library/master.html
@@ -17,7 +17,7 @@
                 </tr>
             </thead>
             <tbody>
-            {% for library in libraries %}
+            {% for library in libraries if not library.name == 'Borrowed' %}
                 <tr class='clickable' data-name='{{ library.name }}'>
                     <td>
                         <a href="#">{{ library.name }}</a>
diff --git a/project/templates/modal_base.html b/project/templates/modal_base.html
index 777f7b6..6375046 100644
--- a/project/templates/modal_base.html
+++ b/project/templates/modal_base.html
@@ -35,7 +35,9 @@
         $(function(){
             var $form = $(document.getElementById("{{ self.form_id() }}"));
             var $acceptButton = $(document.getElementById("{{ self.form_id() }}-accept"));
-            $acceptButton.on('click',function(){
+            $acceptButton.on('click',function(event){
+                event.stopPropagation();
+                event.preventDefault();
                 $.ajax({
                     url: {% block ajax_url %}{% endblock %},
                     data: $form.serialize(),
@@ -75,7 +77,16 @@
                     $acceptButton.click();
                 }
             });
+            $('[data-dismiss]').on('click',function(){
+               $('input')
+                  .not(':button, :submit, :reset, :hidden')
+                  .val('')
+                  .removeAttr('checked')
+                  .removeAttr('selected');
+                  $(".{{ self.form_id() }}-error").html('').addClass('hide');
+            });
         });
+              
     </script>
 {% endblock %}
 {% block additional_javascripts %}
-- 
GitLab