From 057f53dd47e9c064b65d2e7274d8413acde151ca Mon Sep 17 00:00:00 2001 From: kangkang Date: Wed, 3 Jul 2019 15:34:22 +0800 Subject: [PATCH 1/3] test --- .idea/Python.iml | 2 +- .idea/encodings.xml | 4 ++ .idea/misc.xml | 2 +- .idea/workspace.xml | 59 +++++++++++---------------- "unittest\344\275\277\347\224\250.py" | 2 +- 5 files changed, 30 insertions(+), 39 deletions(-) create mode 100644 .idea/encodings.xml diff --git a/.idea/Python.iml b/.idea/Python.iml index b4e13b8..5a21be2 100644 --- a/.idea/Python.iml +++ b/.idea/Python.iml @@ -2,7 +2,7 @@ - + diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..15a15b2 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 7064634..fe78e36 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,5 +3,5 @@ - + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml index a580eb4..805cc94 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -2,9 +2,11 @@ - + + + - + + + + - - - - - - - - - - - - - - + + @@ -85,7 +78,7 @@ - + @@ -166,22 +159,22 @@ 1562076330859 + - - - + - + @@ -214,13 +207,7 @@ - - - - - - - + @@ -228,22 +215,22 @@ - - - - - - - - + + + + + + + + \ No newline at end of file diff --git "a/unittest\344\275\277\347\224\250.py" "b/unittest\344\275\277\347\224\250.py" index a3f52ab..e41557a 100644 --- "a/unittest\344\275\277\347\224\250.py" +++ "b/unittest\344\275\277\347\224\250.py" @@ -48,7 +48,7 @@ def setUp(self): 类似于类的init方法,在测试执行之初制动执行,通常用来做测试数据的准备 """ self.a = 1 #测试使用的参数1 - self.b = 1 #测试使用的参数2 + self.b = 2 #测试使用的参数2 self.result = 3 #预期的结果 def test_add(self): """ From ea31ef4beec27abd4fcb8d7aaef36ffc820d1958 Mon Sep 17 00:00:00 2001 From: kangkang Date: Sat, 20 Jul 2019 16:46:19 +0800 Subject: [PATCH 2/3] this login --- .idea/encodings.xml | 6 - Xiangmu/.idea/Xiangmu.iml | 26 + Xiangmu/.idea/dataSources.local.xml | 13 + Xiangmu/.idea/dataSources.xml | 22 + .../8fbae963-7d0e-4aac-b7fd-eaee1002aa01.xml | 504 ++++++++++++++++++ .../storage_v2/_src_/schema/main.uQUzAA.meta | 2 + Xiangmu/.idea/encodings.xml | 4 + Xiangmu/.idea/misc.xml | 7 + Xiangmu/.idea/modules.xml | 8 + Xiangmu/.idea/workspace.xml | 378 +++++++++++++ Xiangmu/Login/__init__.py | 0 .../Login/__pycache__/__init__.cpython-35.pyc | Bin 0 -> 125 bytes .../Login/__pycache__/admin.cpython-35.pyc | Bin 0 -> 170 bytes .../Login/__pycache__/models.cpython-35.pyc | Bin 0 -> 433 bytes .../Login/__pycache__/views.cpython-35.pyc | Bin 0 -> 2718 bytes Xiangmu/Login/admin.py | 3 + Xiangmu/Login/apps.py | 5 + Xiangmu/Login/migrations/0001_initial.py | 22 + Xiangmu/Login/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-35.pyc | Bin 0 -> 711 bytes .../__pycache__/__init__.cpython-35.pyc | Bin 0 -> 136 bytes Xiangmu/Login/models.py | 7 + Xiangmu/Login/tests.py | 3 + Xiangmu/Login/views.py | 90 ++++ Xiangmu/Xiangmu/__init__.py | 0 .../__pycache__/__init__.cpython-35.pyc | Bin 0 -> 127 bytes .../__pycache__/settings.cpython-35.pyc | Bin 0 -> 2437 bytes .../Xiangmu/__pycache__/urls.cpython-35.pyc | Bin 0 -> 1154 bytes .../Xiangmu/__pycache__/wsgi.cpython-35.pyc | Bin 0 -> 548 bytes Xiangmu/Xiangmu/settings.py | 126 +++++ Xiangmu/Xiangmu/urls.py | 28 + Xiangmu/Xiangmu/wsgi.py | 16 + Xiangmu/db.sqlite3 | Bin 0 -> 44032 bytes Xiangmu/manage.py | 15 + Xiangmu/static/images/12.jpg | Bin 0 -> 35046 bytes Xiangmu/static/js/jquery.min.js | 2 + Xiangmu/templates/Login.html | 27 + Xiangmu/templates/base.html | 47 ++ Xiangmu/templates/index.html | 7 + Xiangmu/templates/regiester.html | 50 ++ 40 files changed, 1412 insertions(+), 6 deletions(-) create mode 100644 Xiangmu/.idea/Xiangmu.iml create mode 100644 Xiangmu/.idea/dataSources.local.xml create mode 100644 Xiangmu/.idea/dataSources.xml create mode 100644 Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01.xml create mode 100644 Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01/storage_v2/_src_/schema/main.uQUzAA.meta create mode 100644 Xiangmu/.idea/encodings.xml create mode 100644 Xiangmu/.idea/misc.xml create mode 100644 Xiangmu/.idea/modules.xml create mode 100644 Xiangmu/.idea/workspace.xml create mode 100644 Xiangmu/Login/__init__.py create mode 100644 Xiangmu/Login/__pycache__/__init__.cpython-35.pyc create mode 100644 Xiangmu/Login/__pycache__/admin.cpython-35.pyc create mode 100644 Xiangmu/Login/__pycache__/models.cpython-35.pyc create mode 100644 Xiangmu/Login/__pycache__/views.cpython-35.pyc create mode 100644 Xiangmu/Login/admin.py create mode 100644 Xiangmu/Login/apps.py create mode 100644 Xiangmu/Login/migrations/0001_initial.py create mode 100644 Xiangmu/Login/migrations/__init__.py create mode 100644 Xiangmu/Login/migrations/__pycache__/0001_initial.cpython-35.pyc create mode 100644 Xiangmu/Login/migrations/__pycache__/__init__.cpython-35.pyc create mode 100644 Xiangmu/Login/models.py create mode 100644 Xiangmu/Login/tests.py create mode 100644 Xiangmu/Login/views.py create mode 100644 Xiangmu/Xiangmu/__init__.py create mode 100644 Xiangmu/Xiangmu/__pycache__/__init__.cpython-35.pyc create mode 100644 Xiangmu/Xiangmu/__pycache__/settings.cpython-35.pyc create mode 100644 Xiangmu/Xiangmu/__pycache__/urls.cpython-35.pyc create mode 100644 Xiangmu/Xiangmu/__pycache__/wsgi.cpython-35.pyc create mode 100644 Xiangmu/Xiangmu/settings.py create mode 100644 Xiangmu/Xiangmu/urls.py create mode 100644 Xiangmu/Xiangmu/wsgi.py create mode 100644 Xiangmu/db.sqlite3 create mode 100644 Xiangmu/manage.py create mode 100644 Xiangmu/static/images/12.jpg create mode 100644 Xiangmu/static/js/jquery.min.js create mode 100644 Xiangmu/templates/Login.html create mode 100644 Xiangmu/templates/base.html create mode 100644 Xiangmu/templates/index.html create mode 100644 Xiangmu/templates/regiester.html diff --git a/.idea/encodings.xml b/.idea/encodings.xml index ad9800e..15a15b2 100644 --- a/.idea/encodings.xml +++ b/.idea/encodings.xml @@ -1,10 +1,4 @@ -<<<<<<< HEAD -======= - - - ->>>>>>> new \ No newline at end of file diff --git a/Xiangmu/.idea/Xiangmu.iml b/Xiangmu/.idea/Xiangmu.iml new file mode 100644 index 0000000..a230676 --- /dev/null +++ b/Xiangmu/.idea/Xiangmu.iml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Xiangmu/.idea/dataSources.local.xml b/Xiangmu/.idea/dataSources.local.xml new file mode 100644 index 0000000..faa70e2 --- /dev/null +++ b/Xiangmu/.idea/dataSources.local.xml @@ -0,0 +1,13 @@ + + + + + + " + + + false + *:@ + + + \ No newline at end of file diff --git a/Xiangmu/.idea/dataSources.xml b/Xiangmu/.idea/dataSources.xml new file mode 100644 index 0000000..756b990 --- /dev/null +++ b/Xiangmu/.idea/dataSources.xml @@ -0,0 +1,22 @@ + + + + + sqlite.xerial + true + org.sqlite.JDBC + jdbc:sqlite:D:\DjangoProject\Xiangmu\db.sqlite3 + + + + + + file://$APPLICATION_CONFIG_DIR$/jdbc-drivers/Xerial SQLiteJDBC/3.25.1/license.txt + + + file://$APPLICATION_CONFIG_DIR$/jdbc-drivers/Xerial SQLiteJDBC/3.25.1/sqlite-jdbc-3.25.1.jar + + + + + \ No newline at end of file diff --git a/Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01.xml b/Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01.xml new file mode 100644 index 0000000..18cbea8 --- /dev/null +++ b/Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01.xml @@ -0,0 +1,504 @@ + + + + + 3.25.1 + + + 1 + 1 + + + + + +
+
+
+
+
+
+
+
+
+
+
+ 1 +
+ + 1 +
+ + 1 + integer|0s + 1 + 1 + + + 2 + varchar(32)|0s + 1 + + + 3 + varchar(32)|0s + 1 + + + id + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + varchar(80)|0s + 1 + + + 1 + name + + 1 + + + id + 1 + + + name + sqlite_autoindex_auth_group_1 + + + 1 + integer|0s + 1 + 1 + + + 2 + integer|0s + 1 + + + 3 + integer|0s + 1 + + + group_id +permission_id + + 1 + + + group_id + + + + permission_id + + + + id + 1 + + + group_id + auth_group + id + 1 + 1 + + + permission_id + auth_permission + id + 1 + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + integer|0s + 1 + + + 3 + varchar(100)|0s + 1 + + + 4 + varchar(255)|0s + 1 + + + content_type_id +codename + + 1 + + + content_type_id + + + + id + 1 + + + content_type_id + django_content_type + id + 1 + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + varchar(128)|0s + 1 + + + 3 + datetime|0s + + + 4 + bool|0s + 1 + + + 5 + varchar(150)|0s + 1 + + + 6 + varchar(30)|0s + 1 + + + 7 + varchar(254)|0s + 1 + + + 8 + bool|0s + 1 + + + 9 + bool|0s + 1 + + + 10 + datetime|0s + 1 + + + 11 + varchar(150)|0s + 1 + + + 1 + username + + 1 + + + id + 1 + + + username + sqlite_autoindex_auth_user_1 + + + 1 + integer|0s + 1 + 1 + + + 2 + integer|0s + 1 + + + 3 + integer|0s + 1 + + + user_id +group_id + + 1 + + + user_id + + + + group_id + + + + id + 1 + + + user_id + auth_user + id + 1 + 1 + + + group_id + auth_group + id + 1 + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + integer|0s + 1 + + + 3 + integer|0s + 1 + + + user_id +permission_id + + 1 + + + user_id + + + + permission_id + + + + id + 1 + + + user_id + auth_user + id + 1 + 1 + + + permission_id + auth_permission + id + 1 + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + datetime|0s + 1 + + + 3 + text|0s + + + 4 + varchar(200)|0s + 1 + + + 5 + text|0s + 1 + + + 6 + integer|0s + + + 7 + integer|0s + 1 + + + 8 + smallint unsigned|0s + 1 + + + content_type_id + + + + user_id + + + + id + 1 + + + content_type_id + django_content_type + id + 1 + 1 + + + user_id + auth_user + id + 1 + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + varchar(100)|0s + 1 + + + 3 + varchar(100)|0s + 1 + + + app_label +model + + 1 + + + id + 1 + + + 1 + integer|0s + 1 + 1 + + + 2 + varchar(255)|0s + 1 + + + 3 + varchar(255)|0s + 1 + + + 4 + datetime|0s + 1 + + + id + 1 + + + 1 + varchar(40)|0s + 1 + + + 2 + text|0s + 1 + + + 3 + datetime|0s + 1 + + + 1 + session_key + + 1 + + + expire_date + + + + session_key + 1 + sqlite_autoindex_django_session_1 + + + 1 + text|0s + + + 2 + text|0s + + + 3 + text|0s + + + 4 + int|0s + + + 5 + text|0s + + + 1 + + + 2 + +
+
\ No newline at end of file diff --git a/Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01/storage_v2/_src_/schema/main.uQUzAA.meta b/Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01/storage_v2/_src_/schema/main.uQUzAA.meta new file mode 100644 index 0000000..8dab49c --- /dev/null +++ b/Xiangmu/.idea/dataSources/8fbae963-7d0e-4aac-b7fd-eaee1002aa01/storage_v2/_src_/schema/main.uQUzAA.meta @@ -0,0 +1,2 @@ +#n:main +! [0, 0, null, null, -2147483648, -2147483648] diff --git a/Xiangmu/.idea/encodings.xml b/Xiangmu/.idea/encodings.xml new file mode 100644 index 0000000..15a15b2 --- /dev/null +++ b/Xiangmu/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Xiangmu/.idea/misc.xml b/Xiangmu/.idea/misc.xml new file mode 100644 index 0000000..f16ac0a --- /dev/null +++ b/Xiangmu/.idea/misc.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/Xiangmu/.idea/modules.xml b/Xiangmu/.idea/modules.xml new file mode 100644 index 0000000..b6b6fad --- /dev/null +++ b/Xiangmu/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Xiangmu/.idea/workspace.xml b/Xiangmu/.idea/workspace.xml new file mode 100644 index 0000000..adb4fc3 --- /dev/null +++ b/Xiangmu/.idea/workspace.xml @@ -0,0 +1,378 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1563529169711 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Xiangmu/Login/__init__.py b/Xiangmu/Login/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Xiangmu/Login/__pycache__/__init__.cpython-35.pyc b/Xiangmu/Login/__pycache__/__init__.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a5ce66356d44f467c19486a30fde8e9ffc751f9f GIT binary patch literal 125 zcmWgR<>eAwWEjf;1dl-k3@`#24nSPY0whux7=kq!{Z=v*frJsnFD)0V7?-TXy!8Bl zqWrAXeAwWEktjz`*brh~a<<$Z`PUVi6#b0z`}qISdTBj0{nX42&sE48fYrFM%=) znvAzt6H{_C^ZYcKqWDs>67$mY^^)`RN{TX*ia>^}WGG?=Qefhjx{Fne3s_A+QGQlx qa!E`?CQwIiX^c;PdS+e>*d)Dz%3B;Zx%nxjIjMGxK)uC4%m4t6Jtsr} literal 0 HcmV?d00001 diff --git a/Xiangmu/Login/__pycache__/models.cpython-35.pyc b/Xiangmu/Login/__pycache__/models.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..075fc9a2c11b4d292f9994660777cc8b8186d1e6 GIT binary patch literal 433 zcmZWl%}T>S5T4B@H4O=f2hTm4g9X8ph!iY((IONk7 z1WE@s6cP&Dg?a34aRg#w235m_)C(K_2t{Xts*lkKuyBZ;I3OsLu3dxJ8z71IFEg;) z=CNynt0pgMcB_RlL6to-De8Q^+>Q`(7Vj9Ju{x^+VIkeLHA!CniCi{wVu-6RF zmzlaKgyhC=5zW?&zsj_JY7~D56=GLsz7D1*>9ox1ytz?LDHiMWuE3~j(~eBqpE_Q> wD0`v(J#9@$_DGkRA@3pY0LJ{GU+-Pp|LMwqn|d$8S>vDfB%g4*&oF literal 0 HcmV?d00001 diff --git a/Xiangmu/Login/__pycache__/views.cpython-35.pyc b/Xiangmu/Login/__pycache__/views.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1bdc5a3f6280ab74ed9d28f1708400233403fc26 GIT binary patch literal 2718 zcma)8&1)M+6o0!b?Mm{>aqJ}hNcvq`mQsftdMTz9oX}5{5GN3Xi%_%^dlgCR%#8A3 z+(U6`a|!7oloopEp()9sm_VT+hMsfkt(T?r(l}}Ug`WC*Z{@Y)CQwN;nm7A)=gsf; zdv9l7ygx7r_phE349nIZnJ16LT8D(4y_V>>d=Zq zU6)oc@s*qDo)MpVv%#kN`OC8sm5AHS9P!=<=wRpzTfCyiBBT~rt2WI-8= zxGGC+V=kmR)>W)?lk_CwG~l5)5v#)-nbRmLSN>IRYX~moXj908oeY60Nx0 zTaWSVLP`SnDmh(W(D!J?6F1DebT)SmWFs!wityploQ2pxj)RSr8d+rs2@KkOwOmV} zoQtx@<=|kC^>Hw&Wx?#xqaS^6WG?d-l+6O8j7idgE+g_RNKZ5VCiBlEJqy{D&mS(pic7oe-8K7RJpm<>XA_8#?>ZPr3R4W(qu+ z(}KI-VE`7SWl|uC8Bfr-D^QC-ku(f-uGD;{EHl6mxWN-h-rWXuiRZVVhFK#0D_OuR zSiLSWO|8aaD5Jy0Q@5CnE_lYn})3mb=6#h zwMG_n(t%Y2n?Yj7j?SGBG&KtidVWfdKc9LH$LO2BH#|ohCR-Gy&QF9;wN52NYLIAvOApoE@5v@#rZ~%vSK|Qs}uSYZIKz5$3Ft$>a=>xGyVoY061Ja*a%Y0+o zc4)FPid?FB{`9U&nQn-C?JL$~$}scNJXUzx;Kc>mx4Lujh0| zLFT=8(*?5l4uHgvD_L9%c`^yde81$i8qPe7u4Af)B0( z+-A`XOBb(HH!m{vSoM@uqdJ3Gd5ye+=k1KNnhtGC z3dl)bQeO2a7UawL+}jDsw?Eku5cX*nHKX0X7pr{3X1hk$tiHEo|0x?vEO M!&M>?WHnaG)1Ba6@~b+KLkhp+Z+hNVGztmC!24a@W(;A%ECeV7Zn9 z55k34@|9CxffHkIt8&1KNAvs5=b3CzCh4P}yB}UMfZy=XiAdk0YaWx3^aW4>)B!94 zs2MC61g|6m8Nzo8hJXQ-AzXy82th{hZaTQ6LYOj})~e8=S8Zc#T(=S{vvi^Bvqj1t zUGswkf@?tir~$Pku!8gmZ~$ctn}!502Y^E;MRZ0l zD0-B3+-X${z2+ZrZ4=5>qEg@Rz-FIOpSA|M2V<}2cC@1K2D%nsd4)~UpI<(pIoMGr zjQP@Pc{Cl{5%)Em+mv$};i^K?GtNJ)MCIzq8mdP1)XHWOJ8UF2ONB<$Ucrv{J-0(Q zd>uMZ@`5NIxF^_T|6J&enzkKYt?C!(dz9$KpC|LD`MeZO(Z1DfiOW8JugI!bxt~aW zv*CO;o9*%|Dm&d;yZvQ`J@$?~^>jT$AH1Qk(e4w5 R9X;Dj;JJH{{n6}wN(HB literal 0 HcmV?d00001 diff --git a/Xiangmu/Login/migrations/__pycache__/__init__.cpython-35.pyc b/Xiangmu/Login/migrations/__pycache__/__init__.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9b83e999b10ac065fc8a43a763c93878482c701a GIT binary patch literal 136 zcmWgR<>eAwWEjf;1dl-k3@`#24nSPY0whux7=kq!{Z=v*frJsnFH;w*7?-TXy!8Bl zqWrAXTZlX-=vg K$hcx4W&i-*d?1$q literal 0 HcmV?d00001 diff --git a/Xiangmu/Login/models.py b/Xiangmu/Login/models.py new file mode 100644 index 0000000..360a127 --- /dev/null +++ b/Xiangmu/Login/models.py @@ -0,0 +1,7 @@ +from django.db import models + +#创建表 +class Login_User(models.Model): + username = models.CharField(max_length=32)#用户名 + password = models.CharField(max_length=32)#登录密码 +# Create your models here. diff --git a/Xiangmu/Login/tests.py b/Xiangmu/Login/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/Xiangmu/Login/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/Xiangmu/Login/views.py b/Xiangmu/Login/views.py new file mode 100644 index 0000000..e20c779 --- /dev/null +++ b/Xiangmu/Login/views.py @@ -0,0 +1,90 @@ +from django.shortcuts import render,render_to_response,redirect +from Login.models import Login_User +from django.http import JsonResponse,HttpResponseRedirect +import hashlib +#密码加密 +def setPassword(password): + #对密码进行加密 + md5 = hashlib.md5() + md5.update(password.encode()) + return md5.hexdigest() + +#测试模板页面 +def base(request): + return render(request,'base.html')#用于测试 +# Create your views here. + +#主页面 +def index(request): + username = request.COOKIES.get('username') # 获取穿过来的cookie + session_user = request.session.get('username') # 获取session + if username and session_user: + user = Login_User.objects.filter(username=username).first() + if user and username == session_user: + return render(request,'index.html',locals())#返回主页面 + # return render(request,'Login.html') + return HttpResponseRedirect('/login/')#指向路径 +#登录页面 +def login(request): + result = {'content':''} + if request.method == "POST": + username = request.POST.get('username')#获取前端变量 + password = request.POST.get('password')#获取前端变量 + if username and password:#判断存在 + user = Login_User.objects.filter(username=username).first()#从数据库查找 + if user : + if setPassword(password) == user.password:#对比变量 + response = HttpResponseRedirect('/index/') + response.set_cookie('username',username)#生成cookie + request.session['username'] = user.username#生成session + return response + else: + result['content'] = '密码错误' + else: + result['content'] = '用户名不存在' + + return render(request,'Login.html') + +#注册页面 +def regiester(request): + result = {'content': ''} + if request.method == "POST": + username = request.POST.get('username')#获取前端变量 + password = request.POST.get('password')#获取前端变量 + if username and password: + user =Login_User.objects.filter(username=username).first()#从数据库查找 + if user: + result['content'] = '用户名重复不可用' + else: + user = Login_User()#保存数据 + user.username = username + user.password = setPassword(password)#对比变量 + user.save()#保存到数据库 + return redirect('/login/')#返回注册页面 + else: + result['content'] = '用户密码不可为空' + return render(request, 'regiester.html', locals()) + +#ajax的后台验证 +def ajax_register(request): + result = {'status':'error','content':''} + username = request.GET.get('username')#获取前端的值 + if username : + user = Login_User.objects.filter(username=username).first()#去数库中查找 + if user: + result['content'] = '用名重复'#判断用户 + else: + result['content'] = '用户名可以用' + result['status'] = 'success' + else: + result['content'] = '用户名或密码不可以为空' + return JsonResponse(result)#结果返回到前端 + + +#退出页面 +def out_login(request): + response = HttpResponseRedirect('/login/')#返回到登录页面 + response.delete_cookie('username')#删除cookie + return response + + diff --git a/Xiangmu/Xiangmu/__init__.py b/Xiangmu/Xiangmu/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Xiangmu/Xiangmu/__pycache__/__init__.cpython-35.pyc b/Xiangmu/Xiangmu/__pycache__/__init__.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..af6a551ff4f094f0e086b554b346028b4f1c8a9f GIT binary patch literal 127 zcmWgR<>iv>GmK>bg2x~N1{i@12OutH0TL+;48fX=ek&P@K*9*(myU~7j7wHxUV45& tQGQlxa!E`?CXkm~3a8`aGxIV_;^XxSDsOSvj&F zPx{uM(!ZeBKJ_p3saLX`xDMwuwdC>jUB3Ix)xDCgRx0H`e%ttYp@Pt#XzDW$@+R{ z$Yq4jAv});1!RC+LHInv7ZARP@K*?5LUh4s}JwEuW{J z_r-t#ikN~vk~XC05WNMMj^`7Rx&ZH3oO-SZC*P-#klJJo@{{sD=Ogx_TE$+EN#h(7 z20hQI61NI~Rql;wk5wmxt7CY+PsDy;+oDYw7rp+;hAbCDB0_!flVt~l{hwSu=}#s4 zD{k6W_=vL2U+~jU4~EV|I$RAm**){N(;JY3+XpL~d~kG#pZd?9;MLLU(yJwFY5j*4 zJ<68HM{|J!}Zj~p%~lb(DI4INH6dyKa#XmXdc_bC$oqt2Wcu^8|$W`mQN>v z3+s5UR7-yT!_)(O%MbQ-QOanAB@JxH+!jRMfLC zY{I6!gQ3+sfZmthZ~2x(+M~G1*;L$oI#p8O+bk-)mTPa-mJ(J|I8L0A4HG8q0SJ=lTgv+%)eqSHPS zCVRmkTsecMPd>sd@o+WuJ#Ol__+LPdFG~1$#`(D5UkI4k!o^A54%vW8)@TI9POfBB zz@%>lHjf0gwOwzi$9<0XPO8X0+LV*WQNATN)vyevR1?0LVUzUD$YSi!^RWpx3yPCG zQkM~5=JCu1oM_acwiVCCyRnDohcC~H)TAzT0;fUT0pCA~|M9Hx<1y)^98UmVofV)J zIK-#D(+G3KT@RR%>*}?zScQ8!%uCe}#=`RTs9>6KTQ#-<5viLrfpZYGedQ`CX zSfVMKW_(jIO{4f)*3`Huqq3&fc2wPbtNs+tDeCL)c2toYjrOjpm~Yyeu0`kTElmd% zD4>(IsNAe8N<-b1chqQpr`^`g?oOlDZf!;Rp-0`Qq^r$NL)KL-y11)t*W;*0y(Y)4 zAC(kYm*eDGv?zD=H)coHwB7cOV!o3bbuhMJcq$FKwcVAsRkPMsQ~<0uRnus<)Tr16 z+Vzd+t+CYDc-V@BSf?AX6CHBYVm8smvAk7ps9G|6za#$+JROqd?=|Jc2PGNX&iD!X zA?@Mg-^tTU8XZN&?;Q^ZHhFn2ehGrNA0%Ywb1MZQCuB=PE^~5}@+WdGQ_2Z>0jyWD b@j5v!2|^*45i+;RrCfYmC<@v15QOYML>CHz literal 0 HcmV?d00001 diff --git a/Xiangmu/Xiangmu/__pycache__/urls.cpython-35.pyc b/Xiangmu/Xiangmu/__pycache__/urls.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..481cf422fd789480a5404da696f40019ffb1dcb7 GIT binary patch literal 1154 zcma)5(QeZ)6uoKFc1_m}A;hyK9@?OhXnU*xfi@;4O$f0ep=c<0joZ3P;>dPj>np#& zPw)}^NM3p37kJ{@O{#)~v{_xR@FaOhq9IQ;m?1^5YDPap9MeAPFc5`YM2 z2a*<~4rDEeTHu&{8`3spE=2Bn??T#vOXfn-0oH>;ce4dr${kwB=Ebnh9E`CsA5DhHt`5P3#|(^ z3ByE8Rgf$(vnZrkvZ)THA`4j_9tDS?76qTG&^U*fUWMMP8=7G(HStc%d}`RO)7qei z0eP7ugyw{2g^+qe$V`fiWVbObirTp4e^mS1lCglT3h^iwyBLo~2X$Qwk+B1k(~LbE z89eg6eRNY=gwR+Kxly-vkEL;;&jBV({} zN51d92eZ*Tnlsu#!DV{shq)n%a?TJmd&9S_xDt5(@YOEfq)Db`n1xr%F6xkib~ zHB_pOWm0u)!l=LD5%o7TqTydGs=-!UeFr(jEOz=mKABvd*w%l$ZvCtJ7u>8SaZub= cJ5Mu_lqq|@kB8L*oVw0E9A5jrv%4980Diw&^Z)<= literal 0 HcmV?d00001 diff --git a/Xiangmu/Xiangmu/__pycache__/wsgi.cpython-35.pyc b/Xiangmu/Xiangmu/__pycache__/wsgi.cpython-35.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0b83b9bfcccc7fb90fd9a2152afd83bcc682d6db GIT binary patch literal 548 zcmYjN!EO^V5S{h5NwrWZ5~vb4ABhCJD#r>Tic+E=NRd(mii$R7J=r+&+N-sb(q4P# z$~W*uNWOC77dSDS6co#T9(nxcy_uuK!{pJoNxSnk1cALJg$eYj=x6vHj?IxT6^@7(-MK2C-sURX0%C7;`de^SDf z)r!}RU1H(WBpG>*Uu)~oalb&mB?zs>7mZvvE_h|-O5;8QFvIQ&)c_r$3{3Byg3~Y&-2OI#l>hmoaFD$ z2Or*^-SqCdPaS%%OzHaF(9LtQkmrF}7kXPGX+i$ewrs;lD0I=RRbx#^h$wL`R@#Sq yJBmM`N$BGS{yZL>Tn;u3z26S`@=o^u-BwQP>u~UVJK7fqM0PE7*nQSx57=M%T&4&B literal 0 HcmV?d00001 diff --git a/Xiangmu/Xiangmu/settings.py b/Xiangmu/Xiangmu/settings.py new file mode 100644 index 0000000..2e75740 --- /dev/null +++ b/Xiangmu/Xiangmu/settings.py @@ -0,0 +1,126 @@ +""" +Django settings for Xiangmu project. + +Generated by 'django-admin startproject' using Django 2.1.8. + +For more information on this file, see +https://docs.djangoproject.com/en/2.1/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/2.1/ref/settings/ +""" + +import os + +# Build paths inside the project like this: os.path.join(BASE_DIR, ...) +BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/2.1/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = 'is7^d5v(jm0ij+z7s&_!mcgek!k*7tgywd5r64d+p+#@#a#-=*' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = ['*'] + + +# Application definition + +INSTALLED_APPS = [ + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', + 'Login', +] + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'Xiangmu.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [ + os.path.join(BASE_DIR,'templates') + ], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] + +WSGI_APPLICATION = 'Xiangmu.wsgi.application' + + +# Database +# https://docs.djangoproject.com/en/2.1/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + } +} + + +# Password validation +# https://docs.djangoproject.com/en/2.1/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/2.1/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'UTC' + +USE_I18N = True + +USE_L10N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/2.1/howto/static-files/ + +STATIC_URL = '/static/' +STATICFILES_DIRS = ( + os.path.join(BASE_DIR,'static'), +) \ No newline at end of file diff --git a/Xiangmu/Xiangmu/urls.py b/Xiangmu/Xiangmu/urls.py new file mode 100644 index 0000000..deb0488 --- /dev/null +++ b/Xiangmu/Xiangmu/urls.py @@ -0,0 +1,28 @@ +"""Xiangmu URL Configuration + +The `urlpatterns` list routes URLs to views. For more information please see: + https://docs.djangoproject.com/en/2.1/topics/http/urls/ +Examples: +Function views + 1. Add an import: from my_app import views + 2. Add a URL to urlpatterns: path('', views.home, name='home') +Class-based views + 1. Add an import: from other_app.views import Home + 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') +Including another URLconf + 1. Import the include() function: from django.urls import include, path + 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) +""" +from django.contrib import admin +from django.urls import path +from Login.views import * + +urlpatterns = [ + path('admin/', admin.site.urls), + path('base/',base),#模板页面 + path('index/',index),#主页面 + path('login/',login),#登录页面 + path('regiester/',regiester),#注册页面 + path('out_login/',out_login),#退出 + path('ajax_register/',ajax_register),#ajax的效验 +] diff --git a/Xiangmu/Xiangmu/wsgi.py b/Xiangmu/Xiangmu/wsgi.py new file mode 100644 index 0000000..4626dc6 --- /dev/null +++ b/Xiangmu/Xiangmu/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for Xiangmu project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/2.1/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'Xiangmu.settings') + +application = get_wsgi_application() diff --git a/Xiangmu/db.sqlite3 b/Xiangmu/db.sqlite3 new file mode 100644 index 0000000000000000000000000000000000000000..b82e283580a911f0a09c84607dc26f65d0a000b1 GIT binary patch literal 44032 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 M{V}w}3eFJzFHx}cNdN!< literal 0 HcmV?d00001 diff --git a/Xiangmu/manage.py b/Xiangmu/manage.py new file mode 100644 index 0000000..9f48063 --- /dev/null +++ b/Xiangmu/manage.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +import os +import sys + +if __name__ == '__main__': + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'Xiangmu.settings') + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) diff --git a/Xiangmu/static/images/12.jpg b/Xiangmu/static/images/12.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1b2f2987745f076e73fd3d02533519117264754f GIT binary patch literal 35046 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 bWGVn8<2gKiXsF;STP(*N@H+cZK+pf#`p9?a literal 0 HcmV?d00001 diff --git a/Xiangmu/static/js/jquery.min.js b/Xiangmu/static/js/jquery.min.js new file mode 100644 index 0000000..4d9b3a2 --- /dev/null +++ b/Xiangmu/static/js/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.3.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,s=n.push,u=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,p=f.toString,d=p.call(Object),h={},g=function e(t){return"function"==typeof t&&"number"!=typeof t.nodeType},y=function e(t){return null!=t&&t===t.window},v={type:!0,src:!0,noModule:!0};function m(e,t,n){var i,o=(t=t||r).createElement("script");if(o.text=e,n)for(i in v)n[i]&&(o[i]=n[i]);t.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var b="3.3.1",w=function(e,t){return new w.fn.init(e,t)},T=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn=w.prototype={jquery:"3.3.1",constructor:w,length:0,toArray:function(){return o.call(this)},get:function(e){return null==e?o.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,y,v,m,x,b="sizzle"+1*new Date,w=e.document,T=0,C=0,E=ae(),k=ae(),S=ae(),D=function(e,t){return e===t&&(f=!0),0},N={}.hasOwnProperty,A=[],j=A.pop,q=A.push,L=A.push,H=A.slice,O=function(e,t){for(var n=0,r=e.length;n+~]|"+M+")"+M+"*"),z=new RegExp("="+M+"*([^\\]'\"]*?)"+M+"*\\]","g"),X=new RegExp(W),U=new RegExp("^"+R+"$"),V={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+W),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+P+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},G=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Q=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,K=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){p()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{L.apply(A=H.call(w.childNodes),w.childNodes),A[w.childNodes.length].nodeType}catch(e){L={apply:A.length?function(e,t){q.apply(e,H.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,s,l,c,f,h,v,m=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!i&&((t?t.ownerDocument||t:w)!==d&&p(t),t=t||d,g)){if(11!==T&&(f=J.exec(e)))if(o=f[1]){if(9===T){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return L.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return L.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!S[e+" "]&&(!y||!y.test(e))){if(1!==T)m=t,v=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=b),s=(h=a(e)).length;while(s--)h[s]="#"+c+" "+ve(h[s]);v=h.join(","),m=K.test(e)&&ge(t.parentNode)||t}if(v)try{return L.apply(r,m.querySelectorAll(v)),r}catch(e){}finally{c===b&&t.removeAttribute("id")}}}return u(e.replace(B,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function se(e){return e[b]=!0,e}function ue(e){var t=d.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function pe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function de(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return se(function(t){return t=+t,se(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},p=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==d&&9===a.nodeType&&a.documentElement?(d=a,h=d.documentElement,g=!o(d),w!==d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=ue(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=ue(function(e){return e.appendChild(d.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=Q.test(d.getElementsByClassName),n.getById=ue(function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},v=[],y=[],(n.qsa=Q.test(d.querySelectorAll))&&(ue(function(e){h.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&y.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||y.push("\\["+M+"*(?:value|"+P+")"),e.querySelectorAll("[id~="+b+"-]").length||y.push("~="),e.querySelectorAll(":checked").length||y.push(":checked"),e.querySelectorAll("a#"+b+"+*").length||y.push(".#.+[+~]")}),ue(function(e){e.innerHTML="";var t=d.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&y.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&y.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&y.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),y.push(",.*:")})),(n.matchesSelector=Q.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),v.push("!=",W)}),y=y.length&&new RegExp(y.join("|")),v=v.length&&new RegExp(v.join("|")),t=Q.test(h.compareDocumentPosition),x=t||Q.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===d||e.ownerDocument===w&&x(w,e)?-1:t===d||t.ownerDocument===w&&x(w,t)?1:c?O(c,e)-O(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===d?-1:t===d?1:i?-1:o?1:c?O(c,e)-O(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?ce(a[r],s[r]):a[r]===w?-1:s[r]===w?1:0},d):d},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==d&&p(e),t=t.replace(z,"='$1']"),n.matchesSelector&&g&&!S[t+" "]&&(!v||!v.test(t))&&(!y||!y.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,d,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==d&&p(e),x(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&N.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(D),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:se,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return V.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace($," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",y=t.parentNode,v=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(y){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?y.firstChild:y.lastChild],a&&m){x=(d=(l=(c=(f=(p=y)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&y.childNodes[d];while(p=++d&&p&&p[g]||(x=d=0)||h.pop())if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)while(p=++d&&p&&p[g]||(x=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===v:1===p.nodeType)&&++x&&(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p===t))break;return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[b]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=O(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:se(function(e){var t=[],n=[],r=s(e.replace(B,"$1"));return r[b]?se(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:se(function(e){return function(t){return oe(e,t).length>0}}),contains:se(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:se(function(e){return U.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:de(!1),disabled:de(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return G.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function be(e,t,n){for(var r=0,i=t.length;r-1&&(o[l]=!(a[l]=f))}}else v=we(v===a?v.splice(h,v.length):v),i?i(null,a,v,u):L.apply(a,v)})}function Ce(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],u=a?1:0,c=me(function(e){return e===t},s,!0),f=me(function(e){return O(t,e)>-1},s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u1&&xe(p),u>1&&ve(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(B,"$1"),n,u0,i=e.length>0,o=function(o,a,s,u,c){var f,h,y,v=0,m="0",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG("*",c),E=T+=null==w?1:Math.random()||.1,k=C.length;for(c&&(l=a===d||a||c);m!==k&&null!=(f=C[m]);m++){if(i&&f){h=0,a||f.ownerDocument===d||(p(f),s=!g);while(y=e[h++])if(y(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!y&&f)&&v--,o&&x.push(f))}if(v+=m,n&&m!==v){h=0;while(y=t[h++])y(x,b,a,s);if(o){if(v>0)while(m--)x[m]||b[m]||(b[m]=j.call(u));b=we(b)}L.apply(u,b),c&&!o&&b.length>0&&v+t.length>1&&oe.uniqueSort(u)}return c&&(T=E,l=w),x};return n?se(o):o}return s=oe.compile=function(e,t){var n,r=[],i=[],o=S[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Ce(t[n]))[b]?r.push(o):i.push(o);(o=S(e,Ee(i,r))).selector=e}return o},u=oe.select=function(e,t,n,i){var o,u,l,c,f,p="function"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&"ID"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}o=V.needsContext.test(e)?0:u.length;while(o--){if(l=u[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),K.test(u[0].type)&&ge(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&ve(u)))return L.apply(n,i),n;break}}}return(p||s(e,d))(i,t,!g,n,!t||K.test(e)&&ge(t.parentNode)||t),n},n.sortStable=b.split("").sort(D).join("")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ue(function(e){return 1&e.compareDocumentPosition(d.createElement("fieldset"))}),ue(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&ue(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ue(function(e){return null==e.getAttribute("disabled")})||le(P,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var k=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},D=w.expr.match.needsContext;function N(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var A=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return u.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&D.test(e)?w(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:L.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),A.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,q=w(r);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?u.call(w(e),this[0]):u.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return k(e,"parentNode")},parentsUntil:function(e,t,n){return k(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return k(e,"nextSibling")},prevAll:function(e){return k(e,"previousSibling")},nextUntil:function(e,t,n){return k(e,"nextSibling",n)},prevUntil:function(e,t,n){return k(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return N(e,"iframe")?e.contentDocument:(N(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(O[e]||w.uniqueSort(i),H.test(e)&&i.reverse()),this.pushStack(i)}});var M=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(M)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1){n=a.shift();while(++s-1)o.splice(n,1),n<=s&&s--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function I(e){return e}function W(e){throw e}function $(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t=o&&(r!==W&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:I,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:I)),n[2][3].add(a(0,e,g(r)?r:W))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),s=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&($(e,a.done(s(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)$(i[n],s(n),a.reject);return a.promise()}});var B=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&B.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function _(){r.removeEventListener("DOMContentLoaded",_),e.removeEventListener("load",_),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",_),e.addEventListener("load",_));var z=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===x(n)){i=!0;for(s in n)z(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){K.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=J.get(e,t),n&&(!r||Array.isArray(n)?r=J.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return J.get(e,n)||J.access(e,n,{empty:w.Callbacks("once memory").add(function(){J.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ye(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&N(e,t)?w.merge([e],n):n}function ve(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ye(f.appendChild(o),"script"),l&&ve(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var be=r.documentElement,we=/^key/,Te=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function ke(){return!1}function Se(){try{return r.activeElement}catch(e){}}function De(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)De(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=ke;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,y=J.get(e);if(y){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(be,i),n.guid||(n.guid=w.guid++),(u=y.events)||(u=y.events={}),(a=y.handle)||(a=y.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(M)||[""]).length;while(l--)d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=w.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=w.event.special[d]||{},c=w.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),w.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,y=J.hasData(e)&&J.get(e);if(y&&(u=y.events)){l=(t=(t||"").match(M)||[""]).length;while(l--)if(s=Ce.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){f=w.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,y.handle)||w.removeEvent(e,d,y.handle),delete u[d])}else for(d in u)w.event.remove(e,d+t[l],n,r,!0);w.isEmptyObject(u)&&J.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,s,u=new Array(arguments.length),l=(J.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(u[0]=t,n=1;n=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u\x20\t\r\n\f]*)[^>]*)\/>/gi,Ae=/\s*$/g;function Le(e,t){return N(e,"table")&&N(11!==t.nodeType?t:t.firstChild,"tr")?w(e).children("tbody")[0]||e:e}function He(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Oe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Pe(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(J.hasData(e)&&(o=J.access(e),a=J.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;n1&&"string"==typeof y&&!h.checkClone&&je.test(y))return e.each(function(i){var o=e.eq(i);v&&(t[0]=y.call(this,i,o.html())),Re(o,t,n,r)});if(p&&(i=xe(t,e[0].ownerDocument,!1,e,r),o=i.firstChild,1===i.childNodes.length&&(i=o),o||r)){for(u=(s=w.map(ye(i,"script"),He)).length;f")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=w.contains(e.ownerDocument,e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ye(s),r=0,i=(o=ye(e)).length;r0&&ve(a,!u&&ye(e,"script")),s},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(Y(n)){if(t=n[J.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[J.expando]=void 0}n[K.expando]&&(n[K.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Ie(this,e,!0)},remove:function(e){return Ie(this,e)},text:function(e){return z(this,function(e){return void 0===e?w.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Le(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ye(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return w.clone(this,e,t)})},html:function(e){return z(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ae.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n=0&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))),u}function et(e,t,n){var r=$e(e),i=Fe(e,t,r),o="border-box"===w.css(e,"boxSizing",!1,r),a=o;if(We.test(i)){if(!n)return i;i="auto"}return a=a&&(h.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===w.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=G(t),u=Xe.test(t),l=e.style;if(u||(t=Je(s)),a=w.cssHooks[t]||w.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=ue(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(w.cssNumber[s]?"":"px")),h.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=G(t);return Xe.test(t)||(t=Je(s)),(a=w.cssHooks[t]||w.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Ve&&(i=Ve[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each(["height","width"],function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!ze.test(w.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):se(e,Ue,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=$e(e),a="border-box"===w.css(e,"boxSizing",!1,o),s=r&&Ze(e,t,r,a,o);return a&&h.scrollboxSize()===o.position&&(s-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),s&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=w.css(e,t)),Ke(e,n,s)}}}),w.cssHooks.marginLeft=_e(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-se(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),w.each({margin:"",padding:"",border:"Width"},function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(w.cssHooks[e+t].set=Ke)}),w.fn.extend({css:function(e,t){return z(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=$e(e),i=t.length;a1)}});function tt(e,t,n,r,i){return new tt.prototype.init(e,t,n,r,i)}w.Tween=tt,tt.prototype={constructor:tt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||w.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(w.cssNumber[n]?"":"px")},cur:function(){var e=tt.propHooks[this.prop];return e&&e.get?e.get(this):tt.propHooks._default.get(this)},run:function(e){var t,n=tt.propHooks[this.prop];return this.options.duration?this.pos=t=w.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):tt.propHooks._default.set(this),this}},tt.prototype.init.prototype=tt.prototype,tt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=w.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){w.fx.step[e.prop]?w.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[w.cssProps[e.prop]]&&!w.cssHooks[e.prop]?e.elem[e.prop]=e.now:w.style(e.elem,e.prop,e.now+e.unit)}}},tt.propHooks.scrollTop=tt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},w.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},w.fx=tt.prototype.init,w.fx.step={};var nt,rt,it=/^(?:toggle|show|hide)$/,ot=/queueHooks$/;function at(){rt&&(!1===r.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(at):e.setTimeout(at,w.fx.interval),w.fx.tick())}function st(){return e.setTimeout(function(){nt=void 0}),nt=Date.now()}function ut(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=oe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function lt(e,t,n){for(var r,i=(pt.tweeners[t]||[]).concat(pt.tweeners["*"]),o=0,a=i.length;o1)},removeAttr:function(e){return this.each(function(){w.removeAttr(this,e)})}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?dt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&"radio"===t&&N(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(M);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),dt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\w+/g),function(e,t){var n=ht[t]||w.find.attr;ht[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=ht[a],ht[a]=i,i=null!=n(e,t,r)?a:null,ht[a]=o),i}});var gt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;w.fn.extend({prop:function(e,t){return z(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[w.propFix[e]||e]})}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,"tabindex");return t?parseInt(t,10):gt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),h.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){w.propFix[this.toLowerCase()]=this});function vt(e){return(e.match(M)||[]).join(" ")}function mt(e){return e.getAttribute&&e.getAttribute("class")||""}function xt(e){return Array.isArray(e)?e:"string"==typeof e?e.match(M)||[]:[]}w.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(g(e))return this.each(function(t){w(this).addClass(e.call(this,t,mt(this)))});if((t=xt(e)).length)while(n=this[u++])if(i=mt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=t[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(g(e))return this.each(function(t){w(this).removeClass(e.call(this,t,mt(this)))});if(!arguments.length)return this.attr("class","");if((t=xt(e)).length)while(n=this[u++])if(i=mt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=t[a++])while(r.indexOf(" "+o+" ")>-1)r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){w(this).toggleClass(e.call(this,n,mt(this),t),t)}):this.each(function(){var t,i,o,a;if(r){i=0,o=w(this),a=xt(e);while(t=a[i++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else void 0!==e&&"boolean"!==n||((t=mt(this))&&J.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":J.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+vt(mt(n))+" ").indexOf(t)>-1)return!0;return!1}});var bt=/\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=g(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=w.map(i,function(e){return null==e?"":e+""})),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(bt,""):null==n?"":n}}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,"value");return null!=t?t:vt(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each(["radio","checkbox"],function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},h.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),h.focusin="onfocusin"in e;var wt=/^(?:focusinfocus|focusoutblur)$/,Tt=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,i,o){var a,s,u,l,c,p,d,h,v=[i||r],m=f.call(t,"type")?t.type:t,x=f.call(t,"namespace")?t.namespace.split("."):[];if(s=h=u=i=i||r,3!==i.nodeType&&8!==i.nodeType&&!wt.test(m+w.event.triggered)&&(m.indexOf(".")>-1&&(m=(x=m.split(".")).shift(),x.sort()),c=m.indexOf(":")<0&&"on"+m,t=t[w.expando]?t:new w.Event(m,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=x.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+x.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:w.makeArray(n,[t]),d=w.event.special[m]||{},o||!d.trigger||!1!==d.trigger.apply(i,n))){if(!o&&!d.noBubble&&!y(i)){for(l=d.delegateType||m,wt.test(l+m)||(s=s.parentNode);s;s=s.parentNode)v.push(s),u=s;u===(i.ownerDocument||r)&&v.push(u.defaultView||u.parentWindow||e)}a=0;while((s=v[a++])&&!t.isPropagationStopped())h=s,t.type=a>1?l:d.bindType||m,(p=(J.get(s,"events")||{})[t.type]&&J.get(s,"handle"))&&p.apply(s,n),(p=c&&s[c])&&p.apply&&Y(s)&&(t.result=p.apply(s,n),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||d._default&&!1!==d._default.apply(v.pop(),n)||!Y(i)||c&&g(i[m])&&!y(i)&&((u=i[c])&&(i[c]=null),w.event.triggered=m,t.isPropagationStopped()&&h.addEventListener(m,Tt),i[m](),t.isPropagationStopped()&&h.removeEventListener(m,Tt),w.event.triggered=void 0,u&&(i[c]=u)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each(function(){w.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),h.focusin||w.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=J.access(r,t);i||r.addEventListener(e,n,!0),J.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=J.access(r,t)-1;i?J.access(r,t,i):(r.removeEventListener(e,n,!0),J.remove(r,t))}}});var Ct=e.location,Et=Date.now(),kt=/\?/;w.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||w.error("Invalid XML: "+t),n};var St=/\[\]$/,Dt=/\r?\n/g,Nt=/^(?:submit|button|image|reset|file)$/i,At=/^(?:input|select|textarea|keygen)/i;function jt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,function(t,i){n||St.test(e)?r(e,i):jt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==x(t))r(e,t);else for(i in t)jt(e+"["+i+"]",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,function(){i(this.name,this.value)});else for(n in e)jt(n,e[n],t,i);return r.join("&")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=w.prop(this,"elements");return e?w.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!w(this).is(":disabled")&&At.test(this.nodeName)&&!Nt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,function(e){return{name:t.name,value:e.replace(Dt,"\r\n")}}):{name:t.name,value:n.replace(Dt,"\r\n")}}).get()}});var qt=/%20/g,Lt=/#.*$/,Ht=/([?&])_=[^&]*/,Ot=/^(.*?):[ \t]*([^\r\n]*)$/gm,Pt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Mt=/^(?:GET|HEAD)$/,Rt=/^\/\//,It={},Wt={},$t="*/".concat("*"),Bt=r.createElement("a");Bt.href=Ct.href;function Ft(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(M)||[];if(g(n))while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function _t(e,t,n,r){var i={},o=e===Wt;function a(s){var u;return i[s]=!0,w.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||o||i[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),a(l),!1)}),u}return a(t.dataTypes[0])||!i["*"]&&a("*")}function zt(e,t){var n,r,i=w.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&w.extend(!0,e,r),e}function Xt(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}function Ut(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}w.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Ct.href,type:"GET",isLocal:Pt.test(Ct.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":w.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,w.ajaxSettings),t):zt(w.ajaxSettings,e)},ajaxPrefilter:Ft(It),ajaxTransport:Ft(Wt),ajax:function(t,n){"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,u,l,c,f,p,d,h=w.ajaxSetup({},n),g=h.context||h,y=h.context&&(g.nodeType||g.jquery)?w(g):w.event,v=w.Deferred(),m=w.Callbacks("once memory"),x=h.statusCode||{},b={},T={},C="canceled",E={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s){s={};while(t=Ot.exec(a))s[t[1].toLowerCase()]=t[2]}t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(e,t){return null==c&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==c&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)E.always(e[E.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||C;return i&&i.abort(t),k(0,t),this}};if(v.promise(E),h.url=((t||h.url||Ct.href)+"").replace(Rt,Ct.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(M)||[""],null==h.crossDomain){l=r.createElement("a");try{l.href=h.url,l.href=l.href,h.crossDomain=Bt.protocol+"//"+Bt.host!=l.protocol+"//"+l.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=w.param(h.data,h.traditional)),_t(It,h,n,E),c)return E;(f=w.event&&h.global)&&0==w.active++&&w.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Mt.test(h.type),o=h.url.replace(Lt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(qt,"+")):(d=h.url.slice(o.length),h.data&&(h.processData||"string"==typeof h.data)&&(o+=(kt.test(o)?"&":"?")+h.data,delete h.data),!1===h.cache&&(o=o.replace(Ht,"$1"),d=(kt.test(o)?"&":"?")+"_="+Et+++d),h.url=o+d),h.ifModified&&(w.lastModified[o]&&E.setRequestHeader("If-Modified-Since",w.lastModified[o]),w.etag[o]&&E.setRequestHeader("If-None-Match",w.etag[o])),(h.data&&h.hasContent&&!1!==h.contentType||n.contentType)&&E.setRequestHeader("Content-Type",h.contentType),E.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+$t+"; q=0.01":""):h.accepts["*"]);for(p in h.headers)E.setRequestHeader(p,h.headers[p]);if(h.beforeSend&&(!1===h.beforeSend.call(g,E,h)||c))return E.abort();if(C="abort",m.add(h.complete),E.done(h.success),E.fail(h.error),i=_t(Wt,h,n,E)){if(E.readyState=1,f&&y.trigger("ajaxSend",[E,h]),c)return E;h.async&&h.timeout>0&&(u=e.setTimeout(function(){E.abort("timeout")},h.timeout));try{c=!1,i.send(b,k)}catch(e){if(c)throw e;k(-1,e)}}else k(-1,"No Transport");function k(t,n,r,s){var l,p,d,b,T,C=n;c||(c=!0,u&&e.clearTimeout(u),i=void 0,a=s||"",E.readyState=t>0?4:0,l=t>=200&&t<300||304===t,r&&(b=Xt(h,E,r)),b=Ut(h,b,E,l),l?(h.ifModified&&((T=E.getResponseHeader("Last-Modified"))&&(w.lastModified[o]=T),(T=E.getResponseHeader("etag"))&&(w.etag[o]=T)),204===t||"HEAD"===h.type?C="nocontent":304===t?C="notmodified":(C=b.state,p=b.data,l=!(d=b.error))):(d=C,!t&&C||(C="error",t<0&&(t=0))),E.status=t,E.statusText=(n||C)+"",l?v.resolveWith(g,[p,C,E]):v.rejectWith(g,[E,C,d]),E.statusCode(x),x=void 0,f&&y.trigger(l?"ajaxSuccess":"ajaxError",[E,h,l?p:d]),m.fireWith(g,[E,C]),f&&(y.trigger("ajaxComplete",[E,h]),--w.active||w.event.trigger("ajaxStop")))}return E},getJSON:function(e,t,n){return w.get(e,t,n,"json")},getScript:function(e,t){return w.get(e,void 0,t,"script")}}),w.each(["get","post"],function(e,t){w[t]=function(e,n,r,i){return g(n)&&(i=i||r,r=n,n=void 0),w.ajax(w.extend({url:e,type:t,dataType:i,data:n,success:r},w.isPlainObject(e)&&e))}}),w._evalUrl=function(e){return w.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},w.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){w(this).wrapInner(e.call(this,t))}):this.each(function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){w(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){w(this).replaceWith(this.childNodes)}),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},w.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Vt={0:200,1223:204},Gt=w.ajaxSettings.xhr();h.cors=!!Gt&&"withCredentials"in Gt,h.ajax=Gt=!!Gt,w.ajaxTransport(function(t){var n,r;if(h.cors||Gt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Vt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),w.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),w.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return w.globalEval(e),e}}}),w.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),w.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(i,o){t=w(" + + + +

+
+ {% block content %} + + {% endblock %} +
+
+ + + \ No newline at end of file diff --git a/Xiangmu/templates/index.html b/Xiangmu/templates/index.html new file mode 100644 index 0000000..9c68fba --- /dev/null +++ b/Xiangmu/templates/index.html @@ -0,0 +1,7 @@ +{% extends 'base.html' %} +{% block content %} +

index

+{#

欢迎:{{ user.username }}

#} + 欢迎:{{ user.username }} + 退出 +{% endblock %} \ No newline at end of file diff --git a/Xiangmu/templates/regiester.html b/Xiangmu/templates/regiester.html new file mode 100644 index 0000000..a2b56e9 --- /dev/null +++ b/Xiangmu/templates/regiester.html @@ -0,0 +1,50 @@ +{% extends 'base.html' %} +{% block styles %} + input{ + width: 300px; + height: 50px; + } +{% endblock %} +{% block content %} +
+ {% csrf_token %} +

+ 用户: + + +

+

+ 密码: + +

+

+ +

+ {{ result.content }} +
+{% endblock %} +{% block style %} +{# #} + +{% endblock %} From 48eff7da583ba709a735329abb53a8be59103efc Mon Sep 17 00:00:00 2001 From: kangkang Date: Sat, 20 Jul 2019 16:52:59 +0800 Subject: [PATCH 3/3] 123 --- 3.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 3.txt diff --git a/3.txt b/3.txt new file mode 100644 index 0000000..e69de29