From 6b6f5ff1f4b2f964d6a75fb72093211a3a0db724 Mon Sep 17 00:00:00 2001 From: bradybodily Date: Fri, 27 Apr 2018 10:12:40 -0600 Subject: [PATCH] finished product --- .idea/cs2610hw7.iml | 29 + .../inspectionProfiles/profiles_settings.xml | 7 + .idea/misc.xml | 4 + .idea/modules.xml | 8 + .idea/workspace.xml | 744 ++++++++++++++++++ conversion/__init__.py | 0 .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 164 bytes conversion/__pycache__/admin.cpython-36.pyc | Bin 0 -> 205 bytes conversion/__pycache__/apps.cpython-36.pyc | Bin 0 -> 388 bytes conversion/__pycache__/models.cpython-36.pyc | Bin 0 -> 576 bytes conversion/__pycache__/urls.cpython-36.pyc | Bin 0 -> 324 bytes conversion/__pycache__/views.cpython-36.pyc | Bin 0 -> 980 bytes conversion/admin.py | 3 + conversion/apps.py | 6 + conversion/migrations/0001_initial.py | 22 + conversion/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-36.pyc | Bin 0 -> 692 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 175 bytes conversion/models.py | 10 + conversion/tests.py | 3 + conversion/urls.py | 8 + conversion/views.py | 32 + cs2610hw7/__init__.py | 0 cs2610hw7/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 163 bytes cs2610hw7/__pycache__/settings.cpython-36.pyc | Bin 0 -> 2338 bytes cs2610hw7/__pycache__/urls.cpython-36.pyc | Bin 0 -> 1056 bytes cs2610hw7/__pycache__/wsgi.cpython-36.pyc | Bin 0 -> 570 bytes cs2610hw7/settings.py | 122 +++ cs2610hw7/urls.py | 26 + cs2610hw7/wsgi.py | 16 + db.sqlite3 | Bin 0 -> 135168 bytes main/__init__.py | 0 main/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 158 bytes main/__pycache__/admin.cpython-36.pyc | Bin 0 -> 199 bytes main/__pycache__/apps.cpython-36.pyc | Bin 0 -> 370 bytes main/__pycache__/models.cpython-36.pyc | Bin 0 -> 196 bytes main/__pycache__/urls.cpython-36.pyc | Bin 0 -> 287 bytes main/__pycache__/views.cpython-36.pyc | Bin 0 -> 621 bytes main/admin.py | 3 + main/apps.py | 5 + main/migrations/__init__.py | 0 .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 169 bytes main/models.py | 3 + main/static/main/styles.css | 79 ++ main/templates/main/index.html | 97 +++ main/tests.py | 3 + main/urls.py | 7 + main/views.py | 14 + manage.py | 15 + 49 files changed, 1266 insertions(+) create mode 100644 .idea/cs2610hw7.iml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/workspace.xml create mode 100644 conversion/__init__.py create mode 100644 conversion/__pycache__/__init__.cpython-36.pyc create mode 100644 conversion/__pycache__/admin.cpython-36.pyc create mode 100644 conversion/__pycache__/apps.cpython-36.pyc create mode 100644 conversion/__pycache__/models.cpython-36.pyc create mode 100644 conversion/__pycache__/urls.cpython-36.pyc create mode 100644 conversion/__pycache__/views.cpython-36.pyc create mode 100644 conversion/admin.py create mode 100644 conversion/apps.py create mode 100644 conversion/migrations/0001_initial.py create mode 100644 conversion/migrations/__init__.py create mode 100644 conversion/migrations/__pycache__/0001_initial.cpython-36.pyc create mode 100644 conversion/migrations/__pycache__/__init__.cpython-36.pyc create mode 100644 conversion/models.py create mode 100644 conversion/tests.py create mode 100644 conversion/urls.py create mode 100644 conversion/views.py create mode 100644 cs2610hw7/__init__.py create mode 100644 cs2610hw7/__pycache__/__init__.cpython-36.pyc create mode 100644 cs2610hw7/__pycache__/settings.cpython-36.pyc create mode 100644 cs2610hw7/__pycache__/urls.cpython-36.pyc create mode 100644 cs2610hw7/__pycache__/wsgi.cpython-36.pyc create mode 100644 cs2610hw7/settings.py create mode 100644 cs2610hw7/urls.py create mode 100644 cs2610hw7/wsgi.py create mode 100644 db.sqlite3 create mode 100644 main/__init__.py create mode 100644 main/__pycache__/__init__.cpython-36.pyc create mode 100644 main/__pycache__/admin.cpython-36.pyc create mode 100644 main/__pycache__/apps.cpython-36.pyc create mode 100644 main/__pycache__/models.cpython-36.pyc create mode 100644 main/__pycache__/urls.cpython-36.pyc create mode 100644 main/__pycache__/views.cpython-36.pyc create mode 100644 main/admin.py create mode 100644 main/apps.py create mode 100644 main/migrations/__init__.py create mode 100644 main/migrations/__pycache__/__init__.cpython-36.pyc create mode 100644 main/models.py create mode 100644 main/static/main/styles.css create mode 100644 main/templates/main/index.html create mode 100644 main/tests.py create mode 100644 main/urls.py create mode 100644 main/views.py create mode 100755 manage.py diff --git a/.idea/cs2610hw7.iml b/.idea/cs2610hw7.iml new file mode 100644 index 0000000..267edfb --- /dev/null +++ b/.idea/cs2610hw7.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..c23ecac --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..0ed3b43 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..aaeaeee --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..d1e7012 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,744 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + DEFINITION_ORDER + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1524703109530 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file://$PROJECT_DIR$/main/templates/main/index.html + 65 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DjangoModelDependency + #cs2610hw7 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/conversion/__init__.py b/conversion/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/conversion/__pycache__/__init__.cpython-36.pyc b/conversion/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..db37fcfcdf6aab1903a5055b9e449fb91c1631a3 GIT binary patch literal 164 zcmXr!<>lHg^)QM72p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUxE6e#i>Qb`bkBJ zDV0h2DVaHy`a!7$`Nf$f`9+zj#rn>{MrMWv`pLy0Dx=&SnU$Yc2GpCGpQj%mpP83g a5+AQuPlHg^)Skwfq~&M5W@izkmUfx#R5Pgg&~D8has0Sijk2ag(;Xplldi3ltGj6 z7HeWkZf2gJCQ}q&N>*ZCdcIzAeqKpYW>OKzfRzkI%s>iE{PNQeElw>e)=w%*OsP!D zPsz-w)DKE6$S=+;$uG)GE!KAqHZn6b&`&M~Q5ogt$gKRlGN9hf{5*ZIg?a^*w>WHa R^HWN5QtcRlRuls<0{}_|G?)MY literal 0 HcmV?d00001 diff --git a/conversion/__pycache__/apps.cpython-36.pyc b/conversion/__pycache__/apps.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e7785802de4164ba2ac4d2bedbd41514e8fd30c8 GIT binary patch literal 388 zcmYjNy-ve05I)C2N<%C45m>X-{7A4MRMdfq4y{SALBkn4{Y%1_>zDEvj?El3E7$VZWmw5fIxXYSC&3vEnT*v&~(W4j% P7oGOUpZOo@=8Wk#IVxV` literal 0 HcmV?d00001 diff --git a/conversion/__pycache__/models.cpython-36.pyc b/conversion/__pycache__/models.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3800034728236b417005f99b95a5c2454b886071 GIT binary patch literal 576 zcmYjOJ5R$f5I*P8N0cJOz}%%n5F$JzSP(+01QSI9v1GB*o=a1?3D_x6#70+Uegpr6 z-;fa&`WKiuC%jJj&UfeY=kw>CR?D-W-=YrycqjatL(w5YuaQGQCSk%N#^4yxLVFHq z3pTbM?Z`$4-8n=K*3KcQFQ^{^R@5dL3aJMs{V|(@LxOIT6A&?k$P)J0L59{7i(HCp zj}X<-CMu_BcC++Gs9dPUE1e)#ZxY{eDbmY))C(F#gYz_=2+j+SbGmRUP3&`iJ&k3x zqbxc}OruyGB|>81PSYgUg?A*gIR7r)#BwTLK((m1bf2f;g%(POeHG)ZpJ5_r;hDI~ zbdqN(5jyOiZ|`nxh68Pu(e2*q{%8Z%Sv~&r2 znH;hQ7z2R~tyLg7tloXCqu1M=VPGkbI+Rb2G;y?$!@tqh5|xWO=Q>xMH!0CZ0$|F} r_5!zP;y6w(vkmN5;OjA~n@h_VUJMp5g53T)Ns$f7jX43EV$ zE}*Gw?N)o=2A^P~&j^x0AM`UsTwoeU58B)C&U{V@!uNxE4%!E`^%aa;2c{j>lkQzG xgY!lQb-%g1zBpGefu7y*=6~eu0eg+Jing!%F=p$|!M@eEbV8v0d6J7W{sY00R5t(s literal 0 HcmV?d00001 diff --git a/conversion/__pycache__/views.cpython-36.pyc b/conversion/__pycache__/views.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6531e67971089869eca72df6479d109a9da6e7bd GIT binary patch literal 980 zcmYjQOK%e~5cYE)X^Kk4LkNU=4TpqMUWW=H3Zh(cXyLLKw29qjSKf87omQx3?M{8D-jtG8%mke%MjKXT}k`AKWK}+tCOFO=T6GjzUCLQe(k?f+5gT%YY zWp&;q@L~%7X|Qs=Afdc;?D9KT%f!?QjQp+h=@o?ftN|#_`o$;);y7gQvnz=R5C^X1?YUH7ZSU{J-sGz*l0+> sUQGaNN;fkb;1p?!ac`s$dS_xD*)F&(lzbEZAU4q7hfE+BoUv^4A43J>X#fBK literal 0 HcmV?d00001 diff --git a/conversion/admin.py b/conversion/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/conversion/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/conversion/apps.py b/conversion/apps.py new file mode 100644 index 0000000..7bf9e48 --- /dev/null +++ b/conversion/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ConversionConfig(AppConfig): + name = 'conversion' + diff --git a/conversion/migrations/0001_initial.py b/conversion/migrations/0001_initial.py new file mode 100644 index 0000000..3d35c7c --- /dev/null +++ b/conversion/migrations/0001_initial.py @@ -0,0 +1,22 @@ +# Generated by Django 2.0.2 on 2018-04-27 03:22 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Converter', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('units', models.CharField(max_length=200)), + ('value', models.FloatField()), + ], + ), + ] diff --git a/conversion/migrations/__init__.py b/conversion/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/conversion/migrations/__pycache__/0001_initial.cpython-36.pyc b/conversion/migrations/__pycache__/0001_initial.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c74ed69c1795fb11e6dc68fc9c2dd010203dd53d GIT binary patch literal 692 zcmYjP%We}f6tz9hVK2#_y>>mUt4Ua(>3hVHVV@KIqht7}u0&UcFnFn6=&=yrqzPHDRLWRRsC zSSo<0LB>*von^NPkG*9dIDHa2(A~0`aFD>bvIYXm=7SyO1cQD1Q5LxRdB};Q{;qN?vwGn>mpWe~5tr@7?%ZGw?tB>gzG{7y@{v-c#5za9 zu~J{xI&Uu1s%I!JW%M!N3QNFpX3$yc2=jw+TjE)xp$(dy@HJIFX%Y~%g|<5wP4Y_D zdt9w>ul_G)ACpsS{(Vk95jB@gt%l9C0+Vl&54ftFsVhqvlkvr~7ssPy=9=H)+spf? z712>gle^v~qtWPC?W;dpZEW*sx-{J(nZA%hO38(I$PamYc23HNu+(K%9l^9^*pg}w X?<(D)Cltf?U+qLYX}G&ak_W+mX7j?A literal 0 HcmV?d00001 diff --git a/conversion/migrations/__pycache__/__init__.cpython-36.pyc b/conversion/migrations/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3dbf701e01fb1f1a5a357589a62e7cc886e8c996 GIT binary patch literal 175 zcmXr!<>lHg^)QM72p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUorZj#i>Qb`bkBJ zDV0h2DVaHy`a!7$`Nf$f`9+zj#rn>{MrMWv`pLy0Dx=&SnU$Yc2GpCGpQoRjnO>Aw j0%R5I$H!;pWtPOp>lIYq;;_lhPbtkwwFB8&48#loS?Ddr literal 0 HcmV?d00001 diff --git a/conversion/models.py b/conversion/models.py new file mode 100644 index 0000000..f9eac2e --- /dev/null +++ b/conversion/models.py @@ -0,0 +1,10 @@ +from django.db import models + +# Create your models here. + +class Converter(models.Model): + units = models.CharField(max_length=200) + value = models.FloatField() + +def __str__(self): + return '%s, %f' % (self.units, self.value) \ No newline at end of file diff --git a/conversion/tests.py b/conversion/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/conversion/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/conversion/urls.py b/conversion/urls.py new file mode 100644 index 0000000..2955ccc --- /dev/null +++ b/conversion/urls.py @@ -0,0 +1,8 @@ +from django.urls import path + +from . import views + +urlpatterns = [ + path('json', views.get, name='get'), + path('', views.init, name='init'), +] \ No newline at end of file diff --git a/conversion/views.py b/conversion/views.py new file mode 100644 index 0000000..70d2893 --- /dev/null +++ b/conversion/views.py @@ -0,0 +1,32 @@ +from django.shortcuts import render +from django.http import HttpResponse +from conversion.models import Converter +import math +import json + + +# Create your views here. +def get(request): + print(request) + value = request.GET.get('value') + frm = request.GET['from'] + to = request.GET['to'] + print(value, " ", to, " ", frm) + tmp = Converter.objects.get(units=frm) + print(tmp) + total = tmp.value * float(value) + print(str(total)) + + data = {} + data['units'] = to + data['value'] = total + json_data = json.dumps(data) + print(json_data) + return HttpResponse(json_data) + +def init(request): + Converter.objects.all().delete(); + this = Converter(units='lbs', value='14.5833') + this.save() + + return HttpResponse('Data Base Initialized') diff --git a/cs2610hw7/__init__.py b/cs2610hw7/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/cs2610hw7/__pycache__/__init__.cpython-36.pyc b/cs2610hw7/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9a0380af6397be531d0a0796dba7ff3bd0406cdd GIT binary patch literal 163 zcmXr!<>gv0`7nwB2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUjh1|#i>Qb`bkBJ zDV0h2DVaHy`a!7$`Nf$f`9+zj#rn>{MrMWv`pLy0Dx=&SD=R)eGcU6wK3=b&@)n0p RZhlH>PO2TqreYvw008jOC$j(m literal 0 HcmV?d00001 diff --git a/cs2610hw7/__pycache__/settings.cpython-36.pyc b/cs2610hw7/__pycache__/settings.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..13bab242a32bea66b8183d93cbc885aef665481c GIT binary patch literal 2338 zcmb7F>sH%F5cWmb#sP98mnLbWl-y{G6d)%wJxv;6E5s+h9m|GR=d?PqXDu($#nG+; zs6X=>d4ax6A3#6bUwwuC>PWW1HJnq*qV??T%r~>&&Pbb!i^bBff9O9iq*8yTrv3^j zzru(8juWKx6r>?zr}Z>R?`QV2Q?o$kKBnWL=OC-+LC_0UN}q>0$Uz5G(@+lPV=Y|6$7fzEr|#my&}i)2*3Y zOr(4|4+YoAHti)2{z@o zblinf;M**e$2gogLmL}W>LLJfVbUm4IqAvvc$?{0@De#W}H#)j2GE@*dlXhhL9vW3Z&OV@A(Fj+qWOXN-?oJi}qKw<<*WZKd>9t(SG7Txn@h zL1{LPM9Mds?MkDrg||)!J75-#3m17#E-}gj>6?Mgk9z^SC;YMZHsxe9ETVEOuV$j0 zTHmSE)kvr-HPz2!M-IfJmwntXulQ{TlRkMd@hC7Oa^#P1)&&aU~uwpwdemA0xym-e)sN^D=Pl$5wqB4OX7ZZuz3+DaT;i*72N_8X(AXxd(*RW^2& zY6UkNSZ0e=rM}Zqc2uL(D60rtsi}tEz_KWGFzw3vxAl=!U4K%Kag{78;@cEF-9Zz4^s>h AxBvhE literal 0 HcmV?d00001 diff --git a/cs2610hw7/__pycache__/urls.cpython-36.pyc b/cs2610hw7/__pycache__/urls.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..77f0b4597dcc8f35019cbc62946de13d9cb88151 GIT binary patch literal 1056 zcma)5L2uJA7l-i*$vY-5==uG9soC!675bA#3S`M4J&gZNS27?sX9?#|b2_8354pwok zwj=d{uSGW8gF2K4s~r`3LLk6(r@o)4>-Li*{sD&?B|+7qObV5RRpb+|It_c-uII_J zEfnK-WVs`$Q1$9%7cAXyV`2Nra_`T_>TgRZ;mG@Br|JxcaKMJc>`~(hsLqIyKk%sP zZWuLi_mGMFbYz9&Rpjkg-Hjvh6`9zR{P6RfTv-r6MuxJ*NHb9^$OSJotkp(vOHMBR meImcF)jyH%k(P^U`-RkOUhr3YP}}xkh=N}5IO@UJ3w{BsghsRg literal 0 HcmV?d00001 diff --git a/cs2610hw7/__pycache__/wsgi.cpython-36.pyc b/cs2610hw7/__pycache__/wsgi.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9e0e03fa759d79c27ec5b4eb0e819968eb995d66 GIT binary patch literal 570 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 literal 0 HcmV?d00001 diff --git a/main/__init__.py b/main/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/main/__pycache__/__init__.cpython-36.pyc b/main/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fb610a965093399494af2ee592b8f1e97f8b9dbb GIT binary patch literal 158 zcmXr!<>gu^^)QM72p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CU*7tm#i>Qb`bkBJ zDV0h2DVaHy`a!7$`Nf$f`9+zj#rn>{MrMWv`pLy0Dx=&SiItm}nWrBgpP83g5+AQu WPgu^^)Skwfq~&M5W@izkmUfx#R5Pgg&~D8has0Sijk2ag(;Xplldi3ltGj6 z7HeWkZf2gJCQ}q&N>*ZCdcIzAeqKpYW>OKzfRzkI%s>iE{PNHbElw>e)=w%*OsP!D zPsz-w)DKE6$S=+;$uG)GE!KAqHZn6b&`&M~Q5ogtNUYq%%shRtReA-Lw>WHa^HWN5 NQtcRlh8F`d0|4d_G1~wD literal 0 HcmV?d00001 diff --git a/main/__pycache__/apps.cpython-36.pyc b/main/__pycache__/apps.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8e7a8df9e83a2b1ac8118536b2fb8b1ea0633f12 GIT binary patch literal 370 zcmYjNy-ve05I)C2N<%C02&`Rdek52BD(cXQ4n!HJNd80#OCB~p8x?_4Gqf~gC$^u`~{FJ_RRAL;|!)d zACv`C=0_LCEOdKQm78$$V~oh0-0cx4$Qc4vvYcZ?)!e6-Mb!>P%o z=~F2ijoUi#v6T1QqW)Im5MRNLsBaISOL6U#bz*G`?A98qx)WE*XjeUGTPY_N+0n`2 zf!MeZZXZwou`pQ_#<-d3ET@*?7hFV;u>QQFU3c-WXiGf{c{XUh^0&djQWAV}HmrRf J-rx5b^DkrwR^b2u literal 0 HcmV?d00001 diff --git a/main/__pycache__/models.cpython-36.pyc b/main/__pycache__/models.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ea3a1845ca5c0730fe5fad4032867670a55ee5bf GIT binary patch literal 196 zcmXr!<>gu^^)Skkfq~&M5W@izkmUfx#R5Pgg&~D8has0Sijk2ag(;Xplldi3ltGj6 z7F%w9N@`BApC;2S&Xlagy!3p%l%yh%=9LUZEIe)=w%*OsP!DPsz-w z)DKE6$S=+;$uG)GE!KAqHZn6b&`&M~Q5ogtNUYq%%shRFHF^b=w>WHo?9!Z6J4T@C I#X!se09jly9{>OV literal 0 HcmV?d00001 diff --git a/main/__pycache__/urls.cpython-36.pyc b/main/__pycache__/urls.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3ffa17655f6753a35e32841088be753be569c81b GIT binary patch literal 287 zcmYjLJ5B>J5FM}AOO($+wpsI$pg{#o^(6MT`zeYW>y zhAKgvB_-V&$h+_Xewu|0KacVykPmX@6^^S8wHf6z^m(Bj> bAG1n3nJt@sjFVg2;m*)q{x)Ric`@g|96m`U literal 0 HcmV?d00001 diff --git a/main/__pycache__/views.cpython-36.pyc b/main/__pycache__/views.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e8858b87a11fdd807fde06f0504de5f4368415c0 GIT binary patch literal 621 zcmYjOJ#X7E5GD0t$%@=$$lP6v)eoRuilRW4Oc|VZ;Zi8#A*Ml!DoMq0;7rah=-fY$ zzofC9`WG_w$U1>3+|$F|@$nt`el{z9t$(whl#oB!B?bi{#SA*6x`{~XEOsgU_!&`;f4ipVW4#_&JtFPm|&b?*w+Y-tSF~DdQSzp zk6g5+t9To2$u8PabQE3O9jiukwLm|&^QBX=N{m++%WH7o9jIP54vZHz{)Vd9yZJGI zbz}Zq9A!_oJ~>GP7nw!XcC)O$S$gqo$yuDUF*4BYUA3$+2ClKPk-z37`EFSU-G8U%vPsBP5<> literal 0 HcmV?d00001 diff --git a/main/admin.py b/main/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/main/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/main/apps.py b/main/apps.py new file mode 100644 index 0000000..833bff6 --- /dev/null +++ b/main/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class MainConfig(AppConfig): + name = 'main' diff --git a/main/migrations/__init__.py b/main/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/main/migrations/__pycache__/__init__.cpython-36.pyc b/main/migrations/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..27c2050cc7fe34a929ca3e152daa125e0decf6ec GIT binary patch literal 169 zcmXr!<>gu^^)QM72p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUt#*8#i>Qb`bkBJ zDV0h2DVaHy`a!7$`Nf$f`9+zj#rn>{MrMWv`pLy0Dx=&SiItm}nWvwdnO>Awl9``Z htREkrnU`4-AFo$Xd5gm)H$SB`C)EyQUoj9f0014>D+mAp literal 0 HcmV?d00001 diff --git a/main/models.py b/main/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/main/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/main/static/main/styles.css b/main/static/main/styles.css new file mode 100644 index 0000000..b632af4 --- /dev/null +++ b/main/static/main/styles.css @@ -0,0 +1,79 @@ +#fib { + display: inline-block; +} + +.fib { + background-color: rgba(0,0,255,0.1); +} + +.fib-left { + float: left; + display: inline-block; + margin-right: 4px; +} + +.fib-right { + float: right; + display: inline-block; + margin-left: 4px; +} + +.shadowed { + text-shadow: 1px 1px 2px black; + color: white; +} + +.nice-box { + font-family: 'helvetica neue', helvetica, sans-serif; + padding: 3px 10px; + margin: 10px; + border-radius: 10px; + border-width: 2px; + border-style: solid; +} + +.flex-rows { + display: flex; + flex-direction: row; +} + +#quandl { + margin: 10px; +} + +.stuff-box { + font-family: 'helvetica neue', helvetica, sans-serif; + letter-spacing: 1px; + text-transform: capitalize; + text-align: center; + padding: 3px 10px; + margin: 10px; + cursor: pointer; + border-radius: 10px; + border-width: 2px; + border-style: solid; +} + +.red { + border-color: rgb(255,0,0); + background: rgb(180,60,60); + box-shadow: 1px 1px 2px rgba(200,0,0,0.4); +} + +.yellow { + border-color: rgb(255,255,0); + background: rgb(180,180,60); + box-shadow: 1px 1px 2px rgba(200,200,0,0.4); +} + +.blue { + border-color: rgb(0,0,255); + background: rgb(60,60,180); + box-shadow: 1px 1px 2px rgba(0,0,200,0.4); +} + +.green { + border-color: rgb(0,255,0); + background: rgb(60,180,60); + box-shadow: 1px 1px 2px rgba(0,200,0,0.4); +} \ No newline at end of file diff --git a/main/templates/main/index.html b/main/templates/main/index.html new file mode 100644 index 0000000..1b4f3c4 --- /dev/null +++ b/main/templates/main/index.html @@ -0,0 +1,97 @@ + + + + + {% load static %} + Fetching data from Quandl + + + +
+

Worth Your Weight In Gold

+
+ +
+ +
+ +
+
+

+
+
+ + + + + + \ No newline at end of file diff --git a/main/tests.py b/main/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/main/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/main/urls.py b/main/urls.py new file mode 100644 index 0000000..3ef24d9 --- /dev/null +++ b/main/urls.py @@ -0,0 +1,7 @@ +from django.urls import path + +from . import views + +urlpatterns = [ + path('', views.index, name='index'), +] \ No newline at end of file diff --git a/main/views.py b/main/views.py new file mode 100644 index 0000000..af6b743 --- /dev/null +++ b/main/views.py @@ -0,0 +1,14 @@ +from django.shortcuts import render +from django.http import HttpResponse +from django.template import loader +from django.utils import timezone +from django.urls import reverse +from django.http import HttpResponseRedirect + +# Create your views here. +def index(request): + template = loader.get_template('main/index.html') + context = { + + } + return HttpResponse(template.render(context, request)) diff --git a/manage.py b/manage.py new file mode 100755 index 0000000..4edeae8 --- /dev/null +++ b/manage.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +import os +import sys + +if __name__ == "__main__": + os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cs2610hw7.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)