From b90127efa68cd913f1dc8c003d7228e8fae7df21 Mon Sep 17 00:00:00 2001 From: jayanthchandra Date: Wed, 31 Jul 2019 11:47:28 +0530 Subject: [PATCH 1/6] Addition of Backend Module --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 5f23e42..dcc46f9 100644 --- a/README.md +++ b/README.md @@ -2,3 +2,11 @@ Web application for sepsis clinical assessment scores using batch ICU patient data Backend of the application will be in Flask and the project will be completely python based Frontend will be purely based on html, css and may be on javascript. + +# Dependencies +1. Python 3.7 + +# Installation +1. Setup virtualenv for the project by running `virtualenv -p python3 venv` +2. Activate the environment by `source venv/bin/activate` +3. Install project requirements using `pip install -r requirements.txt` \ No newline at end of file From 830c15bd28ebe2cf685845b420f400bcc264ba69 Mon Sep 17 00:00:00 2001 From: jayanthchandra Date: Wed, 31 Jul 2019 11:47:28 +0530 Subject: [PATCH 2/6] Addition of Backend Module --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 5f23e42..dcc46f9 100644 --- a/README.md +++ b/README.md @@ -2,3 +2,11 @@ Web application for sepsis clinical assessment scores using batch ICU patient data Backend of the application will be in Flask and the project will be completely python based Frontend will be purely based on html, css and may be on javascript. + +# Dependencies +1. Python 3.7 + +# Installation +1. Setup virtualenv for the project by running `virtualenv -p python3 venv` +2. Activate the environment by `source venv/bin/activate` +3. Install project requirements using `pip install -r requirements.txt` \ No newline at end of file From b12e1d7f0a0f5d0bc29cb0fb49c1f651d69635d9 Mon Sep 17 00:00:00 2001 From: jayanthchandra Date: Wed, 31 Jul 2019 11:54:41 +0530 Subject: [PATCH 3/6] Addition of Backend Module with requirements --- .gitignore | 2 + __init__.py | 0 requirements.txt | 10 +++ run.py | 10 +++ scasBackend/__init__.py | 82 ++++++++++++++++++ scasBackend/__init__.pyc | Bin 0 -> 2482 bytes .../__pycache__/__init__.cpython-37.pyc | Bin 0 -> 1787 bytes scasBackend/__pycache__/config.cpython-37.pyc | Bin 0 -> 1712 bytes scasBackend/__pycache__/utils.cpython-37.pyc | Bin 0 -> 478 bytes scasBackend/api_routes/__init__.py | 16 ++++ scasBackend/api_routes/__init__.pyc | Bin 0 -> 309 bytes .../__pycache__/__init__.cpython-37.pyc | Bin 0 -> 267 bytes .../__pycache__/index.cpython-37.pyc | Bin 0 -> 430 bytes scasBackend/api_routes/index.py | 18 ++++ scasBackend/api_routes/index.pyc | Bin 0 -> 828 bytes scasBackend/config.py | 66 ++++++++++++++ scasBackend/config.pyc | Bin 0 -> 2212 bytes scasBackend/models/__init__.py | 8 ++ scasBackend/models/__init__.pyc | Bin 0 -> 247 bytes .../__pycache__/__init__.cpython-37.pyc | Bin 0 -> 221 bytes scasBackend/models/base.py | 34 ++++++++ scasBackend/utils.py | 19 ++++ scasBackend/utils.pyc | Bin 0 -> 656 bytes 23 files changed, 265 insertions(+) create mode 100644 .gitignore create mode 100755 __init__.py create mode 100755 requirements.txt create mode 100755 run.py create mode 100755 scasBackend/__init__.py create mode 100755 scasBackend/__init__.pyc create mode 100644 scasBackend/__pycache__/__init__.cpython-37.pyc create mode 100644 scasBackend/__pycache__/config.cpython-37.pyc create mode 100644 scasBackend/__pycache__/utils.cpython-37.pyc create mode 100755 scasBackend/api_routes/__init__.py create mode 100755 scasBackend/api_routes/__init__.pyc create mode 100644 scasBackend/api_routes/__pycache__/__init__.cpython-37.pyc create mode 100644 scasBackend/api_routes/__pycache__/index.cpython-37.pyc create mode 100755 scasBackend/api_routes/index.py create mode 100755 scasBackend/api_routes/index.pyc create mode 100755 scasBackend/config.py create mode 100755 scasBackend/config.pyc create mode 100755 scasBackend/models/__init__.py create mode 100755 scasBackend/models/__init__.pyc create mode 100644 scasBackend/models/__pycache__/__init__.cpython-37.pyc create mode 100755 scasBackend/models/base.py create mode 100755 scasBackend/utils.py create mode 100755 scasBackend/utils.pyc diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1363bed --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.log +venv/ \ No newline at end of file diff --git a/__init__.py b/__init__.py new file mode 100755 index 0000000..e69de29 diff --git a/requirements.txt b/requirements.txt new file mode 100755 index 0000000..319f9b8 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,10 @@ +Click==7.0 +Flask==1.1.1 +Flask-Cors==3.0.8 +Flask-SQLAlchemy==2.4.0 +itsdangerous==1.1.0 +Jinja2==2.10.1 +MarkupSafe==1.1.1 +six==1.12.0 +SQLAlchemy==1.3.6 +Werkzeug==0.15.5 diff --git a/run.py b/run.py new file mode 100755 index 0000000..efc46f7 --- /dev/null +++ b/run.py @@ -0,0 +1,10 @@ + +# Import app and run +##################### + +from scasBackend import app + +if __name__ == '__main__': + app.run() + +############################################################################### diff --git a/scasBackend/__init__.py b/scasBackend/__init__.py new file mode 100755 index 0000000..0970a73 --- /dev/null +++ b/scasBackend/__init__.py @@ -0,0 +1,82 @@ + +# Imports +########## + +from flask import abort, Flask, request + +from scasBackend.utils import get_instance_folder_path +from scasBackend.api_routes import * +from scasBackend.config import configure_app +from scasBackend.models import db +from flask_cors import CORS + +############################################################################### + + +# Initialise +############# + +app = Flask( + __name__, + instance_path=get_instance_folder_path(), + instance_relative_config=True) + +configure_app(app) # load configurations +db.init_app(app) # init app to db +CORS(app) #Cross Origin Resource Sharing Plugin + +############################################################################### + + +# Error Handling +################# + +@app.errorhandler(404) +def page_not_found(error): + app.logger.error('Page not found: %s', (request.path, error)) + return "404" + +@app.errorhandler(500) +def internal_server_error(error): + app.logger.error('Server Error: %s', (error)) + return "500" + +@app.errorhandler(Exception) +def unhandled_exception(error): + app.logger.exception(error) + app.logger.error('Unhandled Exception: %s', (error)) + return "500" + +############################################################################### + + +# Pre/Post Request Processing +############################## + +@app.before_first_request +def initialize_database(): + db.create_all() + +@app.after_request +def after_request(response): + header = response.headers + header['Access-Control-Allow-Origin'] = '*' + return response + +############################################################################### + + +# Routings +########### + +@app.route('/') +@app.route('//') +def home(lang_code=None): + return "homepage" + abort(404) + + +# register all routes +app.register_blueprint(api_routes, url_prefix='/api/v1') + +############################################################################### diff --git a/scasBackend/__init__.pyc b/scasBackend/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..e7e7c84b55807685dfc4f4c4bc8cadc8b3d828a4 GIT binary patch literal 2482 zcmcgt-)|d55S~5TiS5|=;WTZkrpQ7n+55rn zUT6?JrO!O^k0N-7nLYbl!E4Idw>SIk-t2zg%+A&R?6!aV?vL*$u)H?t`8D14QUFBs z7oY(W0V4rP0HXks8jNZncq{;2hok|cM%k}{-hkIUQU|>WNfSoRa-;#e1xXu5?XtfC zdJB>cj5;7N0PI4v3D|&JdbbI<4Ywi~?EsR!LpDun!(zAUbSi5H7JCr2cuv%YcfiJ| z$HRsR4j}5mJHa-u z{>YCW0X~LkA0l2$i0A;W2KPzW_;0!fHL_fT8a2+0^VT<7*&o~{VFrIJ(7FLd0Nf!p zGjuXetyAd)VIPC1%PKK&ju`p@6fItXQ9q!Gc;ZrG$u14vv9m}MLlE=1G>w` zz94J(#-g#qg}PCxn-5=PlOn;?t&wpSYc#Kj9Uf0v^I>vxmghrB630%;r}>TBCPz8# zRnlHbaN6s~gjil2f+G?C^}ZO);GBmaQ1iYRB*VWn*rgd)Xs*%pUoxjkfiF%@yiDO1 z%?LZ(cy28A2V;3a&g0afNtKqQ8f{B@sXwKGCE0yZ1-;_Q!xc{^N#}FfuW=Immp3c( zCY`G^(irt$zMWw1;w)wQA!{;VW!KzYi@La)^*<=FPwN${{mE+O&j_}hixBJzQi3hM zI4VBkoF^soTS6lWu0LcK1J2cu-*jziCI%_nq|$nwtlql2jAaI#zp>Ks&nP41)L2>k zl3>f5fxyR+%_@!@6^hjY;8&`i6gO%EI3;L#WHOxBZkO#%$sJWDP5^IVRu1-Luzd{Weu@>nh_=P3cpxV1!EIF8rQ z^0eWpR_TmtT7=JsRc5m)RXj-TF@ zpg-(>$X8u1`s~q{pR!JvaEE|!k6p03Rn-VN*WEp8#yHLBJ2#Dub*tEiT-CydJcak^ zIrvpCvJ}I|jPsYs;4HSBGGkp}Zm0};E!VWyG4$5mWowgGKPAlyjn8?9_6apdRAAa- fmw(Ng*bptz3fiJ8+ReiT{W`sRuhS77(cAb3JJBZg literal 0 HcmV?d00001 diff --git a/scasBackend/__pycache__/__init__.cpython-37.pyc b/scasBackend/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cb0369889a3de603bbd400e26d7a2eefb5b8b9de GIT binary patch literal 1787 zcmaJ>y>A;g6esUPI?2-6mgSGcX<-y73I%cG0x3`wMi9qM(a9<5WFb%-sN<7-4)0DS zDJL=9$yu}Y53tAnOSg9F)TKj_sgIN;D;dfIAITrdcfa?=r|ou=VEg;Q!7rjt$e(sG zYavdaVAubm5JXT(a>{7#F)#O-Pc7!jAP-sS=Dw`Guvj4LdBh@zg|d-1S<}sHaw%`I z7A4?88^TK>>LPmYvlt?XFDc^9t7V92EWIO_l&ykAT8Oko?2wK{ zU=5LFvEq;}#HZ_GRdn2H16P}3O?2IA6Hjl6^=s7MX=p}ya4xYUW+v2X+ ze(xdY&12I0>@T#Q^!zI1gHo9){6TX4s;VpabpqP-Xtgy0lVpW9yhtG#mQsL9#@w9X z9=(sEotDKg8%-1>d^|?L69bgN;q#x5U-UfIo?o`N*w%chKys6vK{8d4{Z0uQ5ebig*Br`-QaAQie*Hr^{gZ4Yimm`|po@KWFth?o3%BCrn;9_XYi!;pWTYgcm}B*m?FQg|W%X!V*=hc)b_g z5@ijT?f)O=waH9hGC%*oGOnQ@UW+2>8WkLILpW!dgX+b|32XtL;} z%)#cbt3*sDYaUW-%+-8KB(OJr#8cBm@&l?iadlqr^KsTc`x-AdCrTz`1;gx(jlw+^ z4($u$bSvvSSB-3Sp`ad4OeVFm)z3B-aa5Y9a$-QU<d2KNP<33amE~my7HSOfn5`C( zr{=YP&jev^F_c$H|tYg7eZ170Tv@J7b##3U9# z;Sbq2NRgD@O1??3D^>RXhMS}c;+ULv27eCZq-6Y>$7+`9yOOHdmW8a`hB(P%U^x{aQW!o{g4gP z@sw8B!GnW)_v3I&M)aIUJN%R~7LMTH@&+4(tQHP_p)om(W+RSi?CVZEipK1$Qz>yH z2!vq}a4QI=GqQ*TT?~TPi!gHuoZ4_|{TA0f$MudoE&hr7W7}@mpE)m1f`;wcHQRN9 ze(#uDu2b(hUhv#G;d||Fs|BZnX1Djk_IUY{Z+Gjqciio89o{n<$0J_as+^ykw*L`$ z0dL+(Q15n{$6#G+JN~}gfBCZ8^PEP|wmYr9-E!PNrKAiA&(J?lt9?cjR-J?wVVs^- z8?(V;O5^lO@+&=c>$Y3n$w_sPrTcJxk;vdlcw@H!8Aw422FQLI;7ot5=m^do34_~! zt`!|a(V@|x;2Ke(v>LzJ5G9(;#e?z+d(GvYZHafEbeKyY`tqa4PdXJnQNewp2?Qe` zC5AwzKw>tMfhBmysk+vLjA%mt2Cwj1&v-pQ z4|*fxjZ80t-dxEWPu9Ay!h$A}SP~t7zuC6k=lN{3`n_zHl8@m@OKX#f!EofkmeSZb zf_6(vpi6EDR0LEhay(;P8_|@;=UmHecwv~#rorrVLI>%FnO_XSL9z!%ywC*lSr`)# zaD&mbEz-u#<}8_pX$rz32(LIz%r;1^kdTd8Md5NdpZkUU#%%3y{cPjY9A0|bX=c&K zyp*3`Bs2i?#~@;&-6dQ^WmJ{{;Af%aOORD8ervbru+V7460x3>PX)??(ef~}iOvQh q5lxkRE|BoD^MY)!vS%1SI^e~fJ8@r$tx2Z zGZXKnL=_TG^7;I1pYJ>z4E6}r>Fd|s3nkPWJ(lM(KDG+6{{Z1 zOwkERc0S<*8E1%H^?;0ExFY~h3i`%cjC{PNYrI9rNiVS4g}9M^5&9~(Mpim-t7X}? zxDfNa)Iz)y+XtBzzAw^Sr>#p1xst{&(wjP4R@(S&=TXllqw7iPGUfE$yTjv|bar+oebQi_EE|s>e7ks7jvJX6oHlpauV&h*qeqPmTS?Wvtb%&NY G=g|-1TWIhA literal 0 HcmV?d00001 diff --git a/scasBackend/api_routes/__init__.py b/scasBackend/api_routes/__init__.py new file mode 100755 index 0000000..f203a29 --- /dev/null +++ b/scasBackend/api_routes/__init__.py @@ -0,0 +1,16 @@ + +# Import and Set +################# + +from flask import Blueprint +api_routes = Blueprint('api_routes', __name__) + +############################################################################### + + +# List of all router files +########################### + +from .index import * + +############################################################################### \ No newline at end of file diff --git a/scasBackend/api_routes/__init__.pyc b/scasBackend/api_routes/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..63d85290b1ae62e76d4487b055e4eb5610266db1 GIT binary patch literal 309 zcmYL@&q@O^5XL9FTd4)n$5@1#7bv3QQLI#ZsfUm@BSw>K*vvxr?A>=2A3!JD!VZ() z{NYQ!l)q=Q?}wk)9UPl40V z|2S&F9i1}nT!*o>foR5)j#jlzN0@9@9Avq>e5@y2DC5oP^ts{&Xv$D3Xpc&*hBvdo z27~)L3r3_Rk8+)`P4YwcI?%hkZ+4x>K;vfHScmPC(}eTEM*99XMmhdVDrJKurLJN> T*e`rzI)~TUI8}@baX$SA4&X;P literal 0 HcmV?d00001 diff --git a/scasBackend/api_routes/__pycache__/__init__.cpython-37.pyc b/scasBackend/api_routes/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6668b859d347ab8eb7f644e7230869a10aeaa51e GIT binary patch literal 267 zcmYLCF;2uV5L_oQ%0=8Kt_ubJ074MxkZ1zUQ5X|1!kptowj;QjcklqdYO32H zp&MyOJF}~qX1T0@u=@OYcw_+Iv-n3&%LPqX5oyrOLeJKW0WzIo_K~e~o$JCDcc6I- z_0f+0pk`^&*a=5(TuhZ3jr7A5G3+RRzOs|snkW8jRoM89yi`i*RF6{nxiWF%G`@d< zUy%Bv-y3ls&7xV5cb7MNGVi2Lf0&{x^$|l0v$TBpf0H@19J_w(6|Is$ghavV!X>wsZ5`?zK6UNukjHJ%d_QsrQm@zY{9lghYBJ}rKT3Xp8z z@XTJcRGKaLis#jwJr!}Cp}I5kDc{G#{+Q{Q>j96KG8cCIzg(8&LVn$pE8{iMl~w8@ z5T^smereb;-ZbTUd6Ytwy*2Ja7rF78H#cQxO~>fMRt5K2A?j2rEXbeEXpukcYaZ=Hf$i>8159t*ChCiKf9n#)~)Q7k>pxqZ^ z0*sGF)p;&j#S5(g`3OyBaNAx2iZZO^Lv2tjP`1XWk)y0Sa$_+#ov9H9C4s;RWovd%gs&WP3C Mppb=ZCphrG03*7yZU6uP literal 0 HcmV?d00001 diff --git a/scasBackend/config.py b/scasBackend/config.py new file mode 100755 index 0000000..75ae91b --- /dev/null +++ b/scasBackend/config.py @@ -0,0 +1,66 @@ + +# Imports +########## + +from scasBackend.models import db +import os +import logging + +############################################################################### + + +# Configs +########## + +# Base +class BaseConfig(object): + DEBUG = False + TESTING = False + # sqlite :memory: identifier is the default if no filepath is present + SQLALCHEMY_DATABASE_URI = 'sqlite://' + SECRET_KEY = '123' + LOGGING_FORMAT = '%(asctime)s - %(name)s - %(levelname)s - %(message)s' + LOGGING_LOCATION = 'scasBackend.log' + LOGGING_LEVEL = logging.DEBUG + SECURITY_CONFIRMABLE = False + SUPPORTED_LANGUAGES = {'en': 'English'} + +# Development +class DevelopmentConfig(BaseConfig): + DEBUG = True + TESTING = False + SQLALCHEMY_DATABASE_URI = 'sqlite:///scasBackend.sqlite3' + SECRET_KEY = '456' + +# Testing +class TestingConfig(BaseConfig): + DEBUG = False + TESTING = True + SQLALCHEMY_DATABASE_URI = 'sqlite://scasBackend.sqlite3' + SECRET_KEY = '789' + +config = { + "development": "scasBackend.config.DevelopmentConfig", + "testing": "scasBackend.config.TestingConfig", + "default": "scasBackend.config.DevelopmentConfig" +} + +############################################################################### + + +# Set configiuration +##################### +def configure_app(app): + # Configure above configuraton + config_name = os.getenv('FLASK_CONFIGURATION', 'default') + app.config.from_object(config[config_name]) + app.config.from_pyfile('config.cfg', silent=True) # if it exists (for production) + + # Configure logging + handler = logging.FileHandler(app.config['LOGGING_LOCATION']) + handler.setLevel(app.config['LOGGING_LEVEL']) + formatter = logging.Formatter(app.config['LOGGING_FORMAT']) + handler.setFormatter(formatter) + app.logger.addHandler(handler) + +############################################################################### \ No newline at end of file diff --git a/scasBackend/config.pyc b/scasBackend/config.pyc new file mode 100755 index 0000000000000000000000000000000000000000..3f9c853ee4458868ca16eab746a017b477bcfac8 GIT binary patch literal 2212 zcmcgtTW=ay5S|6h%{WcclqywQ`Js`hsu;CN+>5HJTo!C)1I_^|nLMo4>;XfUOF74p zEICi^b07NNA6fMWwBO8vvE9d71$OqFIdkUv&5-hHo;z=v}_*lYG8D2J{yil zH=?QH$Q*!ZXmLoxd$^|LnQkn%<%SgY~(Y5_l8xxEmDC(x?mBnH& znvZM-YTVf<8k!*)y5!`;z%HnQyB`i|%RX-#zwg?N;LunyQ{_-{*tg(NSA<-Ma5p zTFqXi>2^wB(}ox>T)AiT(v&B`c`&o5<@$VZHq|q`;hfCJkzO7}fz?lkQDA;9OBTxm z0m9zmTrp1Ad-D(^?ckdbid7DeeE@cy>oQ-k>RSln+k&87EN&nuCD;LifE^$x!^mJb z8cy^TGGcf3;{7wh$@3TcB`&1miYW$@O@VZmXIcrLtFIVeieas`K{jcT)m`O=Q}PKO z!*5Q*dIJ zS8)0lPAnHE+@QyNboyXr5Tik6 zCWfNNMY7ygjrnpKSc@aJjiU{NJ>-FgGxj|Q!_5-^ B-^>62 literal 0 HcmV?d00001 diff --git a/scasBackend/models/__init__.py b/scasBackend/models/__init__.py new file mode 100755 index 0000000..8f8d5c9 --- /dev/null +++ b/scasBackend/models/__init__.py @@ -0,0 +1,8 @@ + +# Imports and Initialise db object +################################### + +from flask_sqlalchemy import SQLAlchemy +db = SQLAlchemy() + +############################################################################### \ No newline at end of file diff --git a/scasBackend/models/__init__.pyc b/scasBackend/models/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..83be2e3d390e35346354ceb9095ab875073cdd24 GIT binary patch literal 247 zcmYLC!3u&v5S>+m2m*hgyO-J@h)C#`L?vD9u&nNe)~=en9z1vNU!xDG(E^8=H*ek> zX59C5@(f?+6#n60Ut^gWg1{u805pM^0FeY90I>tYfyj4pBmZFd1eu*6M29d?X(n~M z>uu|ycv0Nkn7J$dvyP~N?H-B5@Av>_iz7W5SsQxgEiY_FH)YyrS=d2I%3R5Mueg=- l{y5cbP*qfyLMlTU%ZuDHwy0V=#(PWD8zomGg`k0;RbhqAvsK#~=<2Faa43KwK;aBvKes7;_kM8KW2(8B!UW8KRg{n1UHJ znO_3s7&IAgaRmqZIOZg0q~=!oX);F%q~#JJ h{rLFIyv&mLc)fzkTO2k(!P1;mJ653C#UQ(Q7y-!(IzRvb literal 0 HcmV?d00001 diff --git a/scasBackend/models/base.py b/scasBackend/models/base.py new file mode 100755 index 0000000..9194728 --- /dev/null +++ b/scasBackend/models/base.py @@ -0,0 +1,34 @@ + +# Imports +########## + +from . import db + +############################################################################### + + +# Base Class +############# + +class Base(db.Model): + __abstract__ = True + + created_on = db.Column(db.DateTime, default=db.func.now()) + updated_on = db.Column(db.DateTime, default=db.func.now(), onupdate=db.func.now()) + + def serialize(self, return_fields=[]): + serialize_exclude = getattr(self, '__serialize_exclude__', set()) + return_fields = self.__dict__.keys() if not return_fields else return_fields + return { + key: value for key, value in self.__dict__.items() + # Do not serialize 'private' attributes + # (SQLAlchemy-internal attributes are among those, too) + if not key.startswith('_') + and key in return_fields + and key not in serialize_exclude} + + def create(self): + db.session.add(self) + db.session.commit() + +############################################################################### \ No newline at end of file diff --git a/scasBackend/utils.py b/scasBackend/utils.py new file mode 100755 index 0000000..c61f804 --- /dev/null +++ b/scasBackend/utils.py @@ -0,0 +1,19 @@ + +# Imports +########## + +import os + +############################################################################### + + +# Utility Methods +################## + +def get_app_base_path(): + return os.path.dirname(os.path.realpath(__file__)) + +def get_instance_folder_path(): + return os.path.join(get_app_base_path(), 'instance') + +############################################################################### \ No newline at end of file diff --git a/scasBackend/utils.pyc b/scasBackend/utils.pyc new file mode 100755 index 0000000000000000000000000000000000000000..983b50eea2888ecca9475f1e4c73008bf34504ce GIT binary patch literal 656 zcmcIhJx|0i40W1A6vRoeAO-K5GNQ>g?eIvA;jMRgH@f4OF78et>fD!>nl~e$+K$kZg+2_Q|E<|_9d={Mcc-`)5c!3 zgF8Z&XXS)!Td|T>3936sr==!={T6zR?nx+z(a&uRP$FGPyaHWYC+kf4k)_0xl726_ zY;>K{940Xy{gI**WF|%17DUmQTyRLau3 IAB21S3ol)jRsaA1 literal 0 HcmV?d00001 From e64ed0d77a1c33be476575a071187e63170e540f Mon Sep 17 00:00:00 2001 From: jayanthchandra Date: Wed, 31 Jul 2019 11:56:06 +0530 Subject: [PATCH 4/6] Removing binary Files --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 1363bed..abd0fe1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.log -venv/ \ No newline at end of file +venv/ +*.pyc \ No newline at end of file From dd13adec841d46203be398410d3b05ac57d1f29c Mon Sep 17 00:00:00 2001 From: jayanthchandra Date: Wed, 31 Jul 2019 12:01:14 +0530 Subject: [PATCH 5/6] Inclusion of pycache in gitignore --- .gitignore | 5 +++++ scasBackend/__init__.pyc | Bin 2482 -> 0 bytes scasBackend/__pycache__/__init__.cpython-37.pyc | Bin 1787 -> 0 bytes scasBackend/__pycache__/config.cpython-37.pyc | Bin 1712 -> 0 bytes scasBackend/__pycache__/utils.cpython-37.pyc | Bin 478 -> 0 bytes scasBackend/api_routes/__init__.pyc | Bin 309 -> 0 bytes .../__pycache__/__init__.cpython-37.pyc | Bin 267 -> 0 bytes .../api_routes/__pycache__/index.cpython-37.pyc | Bin 430 -> 0 bytes scasBackend/api_routes/index.pyc | Bin 828 -> 0 bytes scasBackend/config.pyc | Bin 2212 -> 0 bytes scasBackend/models/__init__.pyc | Bin 247 -> 0 bytes .../models/__pycache__/__init__.cpython-37.pyc | Bin 221 -> 0 bytes scasBackend/utils.pyc | Bin 656 -> 0 bytes 13 files changed, 5 insertions(+) delete mode 100755 scasBackend/__init__.pyc delete mode 100644 scasBackend/__pycache__/__init__.cpython-37.pyc delete mode 100644 scasBackend/__pycache__/config.cpython-37.pyc delete mode 100644 scasBackend/__pycache__/utils.cpython-37.pyc delete mode 100755 scasBackend/api_routes/__init__.pyc delete mode 100644 scasBackend/api_routes/__pycache__/__init__.cpython-37.pyc delete mode 100644 scasBackend/api_routes/__pycache__/index.cpython-37.pyc delete mode 100755 scasBackend/api_routes/index.pyc delete mode 100755 scasBackend/config.pyc delete mode 100755 scasBackend/models/__init__.pyc delete mode 100644 scasBackend/models/__pycache__/__init__.cpython-37.pyc delete mode 100755 scasBackend/utils.pyc diff --git a/.gitignore b/.gitignore index abd0fe1..cab2a73 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,8 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + *.log venv/ *.pyc \ No newline at end of file diff --git a/scasBackend/__init__.pyc b/scasBackend/__init__.pyc deleted file mode 100755 index e7e7c84b55807685dfc4f4c4bc8cadc8b3d828a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2482 zcmcgt-)|d55S~5TiS5|=;WTZkrpQ7n+55rn zUT6?JrO!O^k0N-7nLYbl!E4Idw>SIk-t2zg%+A&R?6!aV?vL*$u)H?t`8D14QUFBs z7oY(W0V4rP0HXks8jNZncq{;2hok|cM%k}{-hkIUQU|>WNfSoRa-;#e1xXu5?XtfC zdJB>cj5;7N0PI4v3D|&JdbbI<4Ywi~?EsR!LpDun!(zAUbSi5H7JCr2cuv%YcfiJ| z$HRsR4j}5mJHa-u z{>YCW0X~LkA0l2$i0A;W2KPzW_;0!fHL_fT8a2+0^VT<7*&o~{VFrIJ(7FLd0Nf!p zGjuXetyAd)VIPC1%PKK&ju`p@6fItXQ9q!Gc;ZrG$u14vv9m}MLlE=1G>w` zz94J(#-g#qg}PCxn-5=PlOn;?t&wpSYc#Kj9Uf0v^I>vxmghrB630%;r}>TBCPz8# zRnlHbaN6s~gjil2f+G?C^}ZO);GBmaQ1iYRB*VWn*rgd)Xs*%pUoxjkfiF%@yiDO1 z%?LZ(cy28A2V;3a&g0afNtKqQ8f{B@sXwKGCE0yZ1-;_Q!xc{^N#}FfuW=Immp3c( zCY`G^(irt$zMWw1;w)wQA!{;VW!KzYi@La)^*<=FPwN${{mE+O&j_}hixBJzQi3hM zI4VBkoF^soTS6lWu0LcK1J2cu-*jziCI%_nq|$nwtlql2jAaI#zp>Ks&nP41)L2>k zl3>f5fxyR+%_@!@6^hjY;8&`i6gO%EI3;L#WHOxBZkO#%$sJWDP5^IVRu1-Luzd{Weu@>nh_=P3cpxV1!EIF8rQ z^0eWpR_TmtT7=JsRc5m)RXj-TF@ zpg-(>$X8u1`s~q{pR!JvaEE|!k6p03Rn-VN*WEp8#yHLBJ2#Dub*tEiT-CydJcak^ zIrvpCvJ}I|jPsYs;4HSBGGkp}Zm0};E!VWyG4$5mWowgGKPAlyjn8?9_6apdRAAa- fmw(Ng*bptz3fiJ8+ReiT{W`sRuhS77(cAb3JJBZg diff --git a/scasBackend/__pycache__/__init__.cpython-37.pyc b/scasBackend/__pycache__/__init__.cpython-37.pyc deleted file mode 100644 index cb0369889a3de603bbd400e26d7a2eefb5b8b9de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1787 zcmaJ>y>A;g6esUPI?2-6mgSGcX<-y73I%cG0x3`wMi9qM(a9<5WFb%-sN<7-4)0DS zDJL=9$yu}Y53tAnOSg9F)TKj_sgIN;D;dfIAITrdcfa?=r|ou=VEg;Q!7rjt$e(sG zYavdaVAubm5JXT(a>{7#F)#O-Pc7!jAP-sS=Dw`Guvj4LdBh@zg|d-1S<}sHaw%`I z7A4?88^TK>>LPmYvlt?XFDc^9t7V92EWIO_l&ykAT8Oko?2wK{ zU=5LFvEq;}#HZ_GRdn2H16P}3O?2IA6Hjl6^=s7MX=p}ya4xYUW+v2X+ ze(xdY&12I0>@T#Q^!zI1gHo9){6TX4s;VpabpqP-Xtgy0lVpW9yhtG#mQsL9#@w9X z9=(sEotDKg8%-1>d^|?L69bgN;q#x5U-UfIo?o`N*w%chKys6vK{8d4{Z0uQ5ebig*Br`-QaAQie*Hr^{gZ4Yimm`|po@KWFth?o3%BCrn;9_XYi!;pWTYgcm}B*m?FQg|W%X!V*=hc)b_g z5@ijT?f)O=waH9hGC%*oGOnQ@UW+2>8WkLILpW!dgX+b|32XtL;} z%)#cbt3*sDYaUW-%+-8KB(OJr#8cBm@&l?iadlqr^KsTc`x-AdCrTz`1;gx(jlw+^ z4($u$bSvvSSB-3Sp`ad4OeVFm)z3B-aa5Y9a$-QU<d2KNP<33amE~my7HSOfn5`C( zr{=YP&jev^F_c$H|tYg7eZ170Tv@J7b##3U9# z;Sbq2NRgD@O1??3D^>RXhMS}c;+ULv27eCZq-6Y>$7+`9yOOHdmW8a`hB(P%U^x{aQW!o{g4gP z@sw8B!GnW)_v3I&M)aIUJN%R~7LMTH@&+4(tQHP_p)om(W+RSi?CVZEipK1$Qz>yH z2!vq}a4QI=GqQ*TT?~TPi!gHuoZ4_|{TA0f$MudoE&hr7W7}@mpE)m1f`;wcHQRN9 ze(#uDu2b(hUhv#G;d||Fs|BZnX1Djk_IUY{Z+Gjqciio89o{n<$0J_as+^ykw*L`$ z0dL+(Q15n{$6#G+JN~}gfBCZ8^PEP|wmYr9-E!PNrKAiA&(J?lt9?cjR-J?wVVs^- z8?(V;O5^lO@+&=c>$Y3n$w_sPrTcJxk;vdlcw@H!8Aw422FQLI;7ot5=m^do34_~! zt`!|a(V@|x;2Ke(v>LzJ5G9(;#e?z+d(GvYZHafEbeKyY`tqa4PdXJnQNewp2?Qe` zC5AwzKw>tMfhBmysk+vLjA%mt2Cwj1&v-pQ z4|*fxjZ80t-dxEWPu9Ay!h$A}SP~t7zuC6k=lN{3`n_zHl8@m@OKX#f!EofkmeSZb zf_6(vpi6EDR0LEhay(;P8_|@;=UmHecwv~#rorrVLI>%FnO_XSL9z!%ywC*lSr`)# zaD&mbEz-u#<}8_pX$rz32(LIz%r;1^kdTd8Md5NdpZkUU#%%3y{cPjY9A0|bX=c&K zyp*3`Bs2i?#~@;&-6dQ^WmJ{{;Af%aOORD8ervbru+V7460x3>PX)??(ef~}iOvQh q5lxkRE|BoD^MY)!vS%1SI^e~fJ8@r$tx2Z zGZXKnL=_TG^7;I1pYJ>z4E6}r>Fd|s3nkPWJ(lM(KDG+6{{Z1 zOwkERc0S<*8E1%H^?;0ExFY~h3i`%cjC{PNYrI9rNiVS4g}9M^5&9~(Mpim-t7X}? zxDfNa)Iz)y+XtBzzAw^Sr>#p1xst{&(wjP4R@(S&=TXllqw7iPGUfE$yTjv|bar+oebQi_EE|s>e7ks7jvJX6oHlpauV&h*qeqPmTS?Wvtb%&NY G=g|-1TWIhA diff --git a/scasBackend/api_routes/__init__.pyc b/scasBackend/api_routes/__init__.pyc deleted file mode 100755 index 63d85290b1ae62e76d4487b055e4eb5610266db1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 309 zcmYL@&q@O^5XL9FTd4)n$5@1#7bv3QQLI#ZsfUm@BSw>K*vvxr?A>=2A3!JD!VZ() z{NYQ!l)q=Q?}wk)9UPl40V z|2S&F9i1}nT!*o>foR5)j#jlzN0@9@9Avq>e5@y2DC5oP^ts{&Xv$D3Xpc&*hBvdo z27~)L3r3_Rk8+)`P4YwcI?%hkZ+4x>K;vfHScmPC(}eTEM*99XMmhdVDrJKurLJN> T*e`rzI)~TUI8}@baX$SA4&X;P diff --git a/scasBackend/api_routes/__pycache__/__init__.cpython-37.pyc b/scasBackend/api_routes/__pycache__/__init__.cpython-37.pyc deleted file mode 100644 index 6668b859d347ab8eb7f644e7230869a10aeaa51e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 267 zcmYLCF;2uV5L_oQ%0=8Kt_ubJ074MxkZ1zUQ5X|1!kptowj;QjcklqdYO32H zp&MyOJF}~qX1T0@u=@OYcw_+Iv-n3&%LPqX5oyrOLeJKW0WzIo_K~e~o$JCDcc6I- z_0f+0pk`^&*a=5(TuhZ3jr7A5G3+RRzOs|snkW8jRoM89yi`i*RF6{nxiWF%G`@d< zUy%Bv-y3ls&7xV5cb7MNGVi2Lf0&{x^$|l0v$TBpf0H@19J_w(6|Is$ghavV!X>wsZ5`?zK6UNukjHJ%d_QsrQm@zY{9lghYBJ}rKT3Xp8z z@XTJcRGKaLis#jwJr!}Cp}I5kDc{G#{+Q{Q>j96KG8cCIzg(8&LVn$pE8{iMl~w8@ z5T^smereb;-ZbTUd6Ytwy*2Ja7rF78H#cQxO~>fMRt5K2A?j2rEXbeEXpukcYaZ=Hf$i>8159t*ChCiKf9n#)~)Q7k>pxqZ^ z0*sGF)p;&j#S5(g`3OyBaNAx2iZZO^Lv2tjP`1XWk)y0Sa$_+#ov9H9C4s;RWovd%gs&WP3C Mppb=ZCphrG03*7yZU6uP diff --git a/scasBackend/config.pyc b/scasBackend/config.pyc deleted file mode 100755 index 3f9c853ee4458868ca16eab746a017b477bcfac8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2212 zcmcgtTW=ay5S|6h%{WcclqywQ`Js`hsu;CN+>5HJTo!C)1I_^|nLMo4>;XfUOF74p zEICi^b07NNA6fMWwBO8vvE9d71$OqFIdkUv&5-hHo;z=v}_*lYG8D2J{yil zH=?QH$Q*!ZXmLoxd$^|LnQkn%<%SgY~(Y5_l8xxEmDC(x?mBnH& znvZM-YTVf<8k!*)y5!`;z%HnQyB`i|%RX-#zwg?N;LunyQ{_-{*tg(NSA<-Ma5p zTFqXi>2^wB(}ox>T)AiT(v&B`c`&o5<@$VZHq|q`;hfCJkzO7}fz?lkQDA;9OBTxm z0m9zmTrp1Ad-D(^?ckdbid7DeeE@cy>oQ-k>RSln+k&87EN&nuCD;LifE^$x!^mJb z8cy^TGGcf3;{7wh$@3TcB`&1miYW$@O@VZmXIcrLtFIVeieas`K{jcT)m`O=Q}PKO z!*5Q*dIJ zS8)0lPAnHE+@QyNboyXr5Tik6 zCWfNNMY7ygjrnpKSc@aJjiU{NJ>-FgGxj|Q!_5-^ B-^>62 diff --git a/scasBackend/models/__init__.pyc b/scasBackend/models/__init__.pyc deleted file mode 100755 index 83be2e3d390e35346354ceb9095ab875073cdd24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 247 zcmYLC!3u&v5S>+m2m*hgyO-J@h)C#`L?vD9u&nNe)~=en9z1vNU!xDG(E^8=H*ek> zX59C5@(f?+6#n60Ut^gWg1{u805pM^0FeY90I>tYfyj4pBmZFd1eu*6M29d?X(n~M z>uu|ycv0Nkn7J$dvyP~N?H-B5@Av>_iz7W5SsQxgEiY_FH)YyrS=d2I%3R5Mueg=- l{y5cbP*qfyLMlTU%ZuDHwy0V=#(PWD8zomGg`k0;RbhqAvsK#~=<2Faa43KwK;aBvKes7;_kM8KW2(8B!UW8KRg{n1UHJ znO_3s7&IAgaRmqZIOZg0q~=!oX);F%q~#JJ h{rLFIyv&mLc)fzkTO2k(!P1;mJ653C#UQ(Q7y-!(IzRvb diff --git a/scasBackend/utils.pyc b/scasBackend/utils.pyc deleted file mode 100755 index 983b50eea2888ecca9475f1e4c73008bf34504ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 656 zcmcIhJx|0i40W1A6vRoeAO-K5GNQ>g?eIvA;jMRgH@f4OF78et>fD!>nl~e$+K$kZg+2_Q|E<|_9d={Mcc-`)5c!3 zgF8Z&XXS)!Td|T>3936sr==!={T6zR?nx+z(a&uRP$FGPyaHWYC+kf4k)_0xl726_ zY;>K{940Xy{gI**WF|%17DUmQTyRLau3 IAB21S3ol)jRsaA1 From 4e802f10a4eb7f9d434cbdb7fd8b4133142336ed Mon Sep 17 00:00:00 2001 From: jayanthchandra Date: Fri, 22 May 2020 00:06:34 +0530 Subject: [PATCH 6/6] Remove octothorps --- run.py | 8 +------- scasBackend/__init__.py | 27 --------------------------- scasBackend/api_routes/__init__.py | 14 +------------- scasBackend/api_routes/index.py | 13 +------------ scasBackend/config.py | 18 +----------------- scasBackend/models/__init__.py | 8 +------- scasBackend/models/base.py | 14 +------------- scasBackend/utils.py | 12 ------------ 8 files changed, 6 insertions(+), 108 deletions(-) diff --git a/run.py b/run.py index efc46f7..7c6c1fb 100755 --- a/run.py +++ b/run.py @@ -1,10 +1,4 @@ - -# Import app and run -##################### - from scasBackend import app if __name__ == '__main__': - app.run() - -############################################################################### + app.run() \ No newline at end of file diff --git a/scasBackend/__init__.py b/scasBackend/__init__.py index 0970a73..ebcc660 100755 --- a/scasBackend/__init__.py +++ b/scasBackend/__init__.py @@ -1,7 +1,3 @@ - -# Imports -########## - from flask import abort, Flask, request from scasBackend.utils import get_instance_folder_path @@ -10,11 +6,6 @@ from scasBackend.models import db from flask_cors import CORS -############################################################################### - - -# Initialise -############# app = Flask( __name__, @@ -25,12 +16,6 @@ db.init_app(app) # init app to db CORS(app) #Cross Origin Resource Sharing Plugin -############################################################################### - - -# Error Handling -################# - @app.errorhandler(404) def page_not_found(error): app.logger.error('Page not found: %s', (request.path, error)) @@ -47,12 +32,6 @@ def unhandled_exception(error): app.logger.error('Unhandled Exception: %s', (error)) return "500" -############################################################################### - - -# Pre/Post Request Processing -############################## - @app.before_first_request def initialize_database(): db.create_all() @@ -63,12 +42,6 @@ def after_request(response): header['Access-Control-Allow-Origin'] = '*' return response -############################################################################### - - -# Routings -########### - @app.route('/') @app.route('//') def home(lang_code=None): diff --git a/scasBackend/api_routes/__init__.py b/scasBackend/api_routes/__init__.py index f203a29..f47e650 100755 --- a/scasBackend/api_routes/__init__.py +++ b/scasBackend/api_routes/__init__.py @@ -1,16 +1,4 @@ - -# Import and Set -################# - from flask import Blueprint api_routes = Blueprint('api_routes', __name__) -############################################################################### - - -# List of all router files -########################### - -from .index import * - -############################################################################### \ No newline at end of file +from .index import * \ No newline at end of file diff --git a/scasBackend/api_routes/index.py b/scasBackend/api_routes/index.py index c78abeb..93d0919 100755 --- a/scasBackend/api_routes/index.py +++ b/scasBackend/api_routes/index.py @@ -1,18 +1,7 @@ - -# Imports -########## - from flask import current_app from . import api_routes -############################################################################### - -# Routes -######### - @api_routes.route('/') def index(): current_app.logger.info('/api/v1/') - return "this is /api/v1/" - -############################################################################### + return "this is /api/v1/" \ No newline at end of file diff --git a/scasBackend/config.py b/scasBackend/config.py index 75ae91b..ac450fe 100755 --- a/scasBackend/config.py +++ b/scasBackend/config.py @@ -1,18 +1,9 @@ - -# Imports -########## - from scasBackend.models import db import os import logging -############################################################################### - - # Configs -########## -# Base class BaseConfig(object): DEBUG = False TESTING = False @@ -45,11 +36,6 @@ class TestingConfig(BaseConfig): "default": "scasBackend.config.DevelopmentConfig" } -############################################################################### - - -# Set configiuration -##################### def configure_app(app): # Configure above configuraton config_name = os.getenv('FLASK_CONFIGURATION', 'default') @@ -61,6 +47,4 @@ def configure_app(app): handler.setLevel(app.config['LOGGING_LEVEL']) formatter = logging.Formatter(app.config['LOGGING_FORMAT']) handler.setFormatter(formatter) - app.logger.addHandler(handler) - -############################################################################### \ No newline at end of file + app.logger.addHandler(handler) \ No newline at end of file diff --git a/scasBackend/models/__init__.py b/scasBackend/models/__init__.py index 8f8d5c9..589c64f 100755 --- a/scasBackend/models/__init__.py +++ b/scasBackend/models/__init__.py @@ -1,8 +1,2 @@ - -# Imports and Initialise db object -################################### - from flask_sqlalchemy import SQLAlchemy -db = SQLAlchemy() - -############################################################################### \ No newline at end of file +db = SQLAlchemy() \ No newline at end of file diff --git a/scasBackend/models/base.py b/scasBackend/models/base.py index 9194728..0de8e0c 100755 --- a/scasBackend/models/base.py +++ b/scasBackend/models/base.py @@ -1,15 +1,5 @@ - -# Imports -########## - from . import db -############################################################################### - - -# Base Class -############# - class Base(db.Model): __abstract__ = True @@ -29,6 +19,4 @@ def serialize(self, return_fields=[]): def create(self): db.session.add(self) - db.session.commit() - -############################################################################### \ No newline at end of file + db.session.commit() \ No newline at end of file diff --git a/scasBackend/utils.py b/scasBackend/utils.py index c61f804..de7a89c 100755 --- a/scasBackend/utils.py +++ b/scasBackend/utils.py @@ -1,19 +1,7 @@ - -# Imports -########## - import os -############################################################################### - - -# Utility Methods -################## - def get_app_base_path(): return os.path.dirname(os.path.realpath(__file__)) def get_instance_folder_path(): return os.path.join(get_app_base_path(), 'instance') - -############################################################################### \ No newline at end of file