From 9454f7a6123404e50db253c34de295db2dec9802 Mon Sep 17 00:00:00 2001 From: mvc Date: Mon, 8 Sep 2025 23:06:12 -0400 Subject: [PATCH] initial commit --- ckSite/__init__.py | 0 ckSite/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 147 bytes ckSite/__pycache__/settings.cpython-311.pyc | Bin 0 -> 2593 bytes ckSite/__pycache__/urls.cpython-311.pyc | Bin 0 -> 1137 bytes ckSite/__pycache__/wsgi.cpython-311.pyc | Bin 0 -> 667 bytes ckSite/asgi.py | 16 +++ ckSite/settings.py | 125 ++++++++++++++++++ ckSite/urls.py | 22 +++ ckSite/wsgi.py | 16 +++ ckserver.log | 1 + db.sqlite3 | 0 manage.py | 22 +++ persistmods/__init__.py | 0 .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 152 bytes .../__pycache__/modtypes.cpython-311.pyc | Bin 0 -> 545 bytes persistmods/__pycache__/urls.cpython-311.pyc | Bin 0 -> 642 bytes persistmods/__pycache__/views.cpython-311.pyc | Bin 0 -> 3077 bytes persistmods/admin.py | 3 + persistmods/apps.py | 6 + persistmods/migrations/__init__.py | 0 persistmods/models.py | 3 + persistmods/modtypes.py | 5 + persistmods/tests.py | 3 + persistmods/urls.py | 12 ++ persistmods/views.py | 54 ++++++++ 25 files changed, 288 insertions(+) create mode 100644 ckSite/__init__.py create mode 100644 ckSite/__pycache__/__init__.cpython-311.pyc create mode 100644 ckSite/__pycache__/settings.cpython-311.pyc create mode 100644 ckSite/__pycache__/urls.cpython-311.pyc create mode 100644 ckSite/__pycache__/wsgi.cpython-311.pyc create mode 100644 ckSite/asgi.py create mode 100644 ckSite/settings.py create mode 100644 ckSite/urls.py create mode 100644 ckSite/wsgi.py create mode 100644 ckserver.log create mode 100644 db.sqlite3 create mode 100755 manage.py create mode 100644 persistmods/__init__.py create mode 100644 persistmods/__pycache__/__init__.cpython-311.pyc create mode 100644 persistmods/__pycache__/modtypes.cpython-311.pyc create mode 100644 persistmods/__pycache__/urls.cpython-311.pyc create mode 100644 persistmods/__pycache__/views.cpython-311.pyc create mode 100644 persistmods/admin.py create mode 100644 persistmods/apps.py create mode 100644 persistmods/migrations/__init__.py create mode 100644 persistmods/models.py create mode 100644 persistmods/modtypes.py create mode 100644 persistmods/tests.py create mode 100644 persistmods/urls.py create mode 100644 persistmods/views.py diff --git a/ckSite/__init__.py b/ckSite/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/ckSite/__pycache__/__init__.cpython-311.pyc b/ckSite/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..833213bfa6ab63b199b917e23594092552aebc4c GIT binary patch literal 147 zcmZ3^%ge<81O^KGGeGoX5CH>>P{wCAAY(d13PUi1CZpdn?iesXqjYEc=4ky(2KczG$)vkyYs10OrF+Y&_z|6?V M_<;dN6fpzE0AD>Hr2qf` literal 0 HcmV?d00001 diff --git a/ckSite/__pycache__/settings.cpython-311.pyc b/ckSite/__pycache__/settings.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a38ee5a321eb39e3931555ea8817fc81ecdadb9c GIT binary patch literal 2593 zcmb6b%Wm67aH+TTvaBevk~9E=JY1y_71wr}6p0&Jq8&A|W)t zE&BJZU*ib<L=6MPi%A>t$cR}@08;q5&?2L{;i_Z4hj z9}%{L1N0aZLf9{aaX^SPkucUoIQWthqVNsDH-^JP90Laju*ZwOq+|-mUIdzykic;v zi4!aiUn%1qw{^+m9$>IR`@4a}>OCF>du%i5B`p{$Ub z;GaadEURUHUMOI_VKO}@gAf|JS|C~hEEX)iB{$5%AmBpJytPH>&9XVtB8|}S3F^$>h zPv-8<%{H%*x!EU;?FZX4ySH=q?_bT|+QSdjy{$WWWBW3e>ba1e>6u{~x@H;j2Ggyo zeP)!}29Fmu1tabZ-$f`e&z$6@BecD~P5WsDWF zD;b38<|$iy4DTfj$np`-o*gyTch3yz^F7*-R_>$|IB8Yam}2+yAEKtQ$rJ%RmdWmr z=w~CbNKm}tI9S+2-Q-5M5r-5z`FhciR8nhs zU2hKQ#d>4Lv<=0y3wyhw43&gQ%D-*DGZEdf6|vd>QS$tAF%8d+MXE^J}Tk|6b8IpzzHv~#YbGV zNYH({FeMVTnLn#($2QH0xD6rFGj?np)6 zF#J$kCnAd8z2eagV(Q8>;)GgorD&EDSzvk2J837%bH!DzEvfVdR$}X{=azS}>{|VyxWe-MdTq5NK4vRrVAh}k6BV|)w8k!RVzE}@ zz+icq6NMV|Ok@oLE>GX7_OQzIt*R69XmtT{sDqE97l)HBaf|F)r7nVxnz&fzDy84h zJMTB-{q@3@u989-o6rXn6-KB_lLoQ^HkfjN>%Ex8nM+{0NF&;!Ods#|5yW6$XX=bJLgtH;>rQEcfBMjHY@fkg?(N!6i}%UT%p*(QmeIG)HPs~EaTXtibqj{b&dl)dALt_reb|AlBP_MUIRM}RJk$P+#dF6u#w6sA#4)3lL(TQf#TO>;<_KSQ|sU!ujcfBmC6GA9n7 zf1W#@Ii5M2Up=2)yO>=&H`XtV^-H4(CwITBAGMF3o*N4n#=^*~P3wn~>f=+8`8P2l BQ`i6i literal 0 HcmV?d00001 diff --git a/ckSite/__pycache__/wsgi.cpython-311.pyc b/ckSite/__pycache__/wsgi.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7aeb34742a01e1085f78770eb6ad6c65699686bc GIT binary patch literal 667 zcmY*X!EO^V5FPKP4Qy#Zi1utny+nfD0yl(^8nr}0kRDQ0l*?vWPm&E@d$o2_+EWkk z4O}@Dp?(CvkfI8tJw@WgEmChi)teqI^CJSIcsvSA?la=|H-v4_HY>OS!X@<>aMVZ!Bcj6!=ysvmjI-@MaSjbsn{ zsQvuRU!sw1?!MY-HTM1X-oZh$)oA-~_IKaD-aENlH18_ZIudBh3U9(%!AK~ zyUFqOt>?vazDO%3#rzXc?~Iz+gpiq4CZ!qV>OK(X^maa`@Obk7oPzbq`3)OCVPmrC hPPTV0pneJU3Dl>R>ZDS=sBB$Uwocdbk=`-IZvd?e)VwX*K*;r9+R78F_2~t^g!5w-7P{kp*2FjKT z1cg;s%s5RD?TWGT{OtF}dYM<(9Rk*Q@jg4l{gVz|*&EVaAXx&38<6k}lD%+%H~iWP zT7{!xZ7EFJ6BzGJJ1gyMb7+o`EI~oQBm`VCbnV z(;Oo#`t@Nui)%gT9REmvAk}SHMuo3wcG@8@@6eF7+kp{By-4@|n75gX>2KrOxorRZ kO4H0JaV`*Qi!oMn#s)R)!WZ3r{|fuN7Sp!v>pM*HAJ05#RR910 literal 0 HcmV?d00001 diff --git a/persistmods/__pycache__/urls.cpython-311.pyc b/persistmods/__pycache__/urls.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7d0e59c2e1e091e2cf01b30fdbaab705d7effc4f GIT binary patch literal 642 zcmZvYze^)Q6vy9W-)?rZh~lAga_uRr!9XD0Aqa|<*T`Lw;*KRVBpryV4!Un=|OeI`p7qGLsH^u~%y!pX<-}$_mH}7(4ssLnn-|rh64B(#$M&`Xb zPk+cc1rD4=5VI;{z;oP+a6i{ zOnxHc5|bY@?nK5T#vL=>d!}wzJzm&_z<)GQz%;hPwDCwSFoAuzCytc1RT|3F95%yP zXjEy^(s^+#YVA~Lw=UA3QBqghRpiyeDEb-{w9og$W<6PJ%ScJn01eXoTAFW3Q^O?3@VB*F7?sgcB@)K)^4Y6rVQ9+J}%QthcUPPi(W>(^Spp4~4L zwj;4FXDQFrug+;3Sd6g;_>{e!5AY#-I|mNf-pS_gh0f>h>e+UN#U2*>Sp17Fsq>w= z?&8@}hCvU5J_bYeV`r7%Q6rSCkwbxlYKTX<(CJK&2L>;M)5Pydj+KN&N0wd8LS|6y4cjDMx|1h&j z+u*1{3Q|;6sz8+zZb5=T6%IX=3lc)TbFh&S)<~5qp&qye6{IRB-i+59uj4}0x4YlI zd2eQR_x&*|prtg)Yc?+E zDP8i|4y1yh$F`9&awrv25i#=eDPlKEhmk4w6{EoS!3_+SPeLa^ip$TvORqOylIYR4LN4{NlJHJXJT@wP5i z)MLOo!PXd|yr;Ev|5^n(p5G9vC{|zrmQ_@N{+ZyRV3Hffl0_V_f0L6o#A%vk94+(~ zO4giBq8Uok4zaeC=FrkhDZ6BVVEfvW09C&;>bLp(~`*fL5mSc|CcX~cYF0(}WD%Y8lrVbs3m2wLk zm?hNcJ8MdFFOWnK$v|qR+#Vdf zE0BEdRbG3Nb31~m)497GswJhZJIv_v<21DHXx8TMKDQv87-<6buUg?)S&sm;a{(yqB((HfHHAe zy`o(}mlXwFKnfh~F06EvOK=Tt#yu5Z$Q2sbcRa#zsZ5GI1U1aEb49}3619^IT$zEk zAyi&@Y9@vORqi5`H%2F6-{;|Cw*b1kC=^*Ku4QVWSUnWmLW(}No^JFHteRh#pGR&* zR`e|mWKtpFFEQnB0Xwp8+~dcOyNUk^pz!dTUNgt)=2#VvF%f~A`%i|odtrRCKX`9Y z0raJz@SODi6g0G_^uCB!OGONlssj zgNA9ec!*hFQ-|0RIqOoFw0C2R;|z4lg;w&5L6i|E-qRLpLC5WS!qyy<`LrzyLNm|( z#UQTjL?D&1C7c7T(TzRW`(h?-+jI)V3Ak7mpnL4??s5-DCcm-1d+DqE*ZCiY?#$jD ztBstfkDL&lZ#h}VhxSrC;sd*5!JQTg3N zZEZXOwNk3M*(Pn)MOiA%kJ2ocd81UE$-ytg+sV`K%T6!bQPXT9_oNYSBiUP|eYTBb z%_{sleG&BH7mfV}09mFe4Kz{ppAGa})qgh7Xw`o<&`7m)Hc;=9JhluJFqZHGG`JM3 zqrtTg@4R~VSYzb0c+MFGk{A%O7!a~lAU2fgE#$#aK!IxD!9HCKJ?PbyXT{Kk-k{L# I2Km|l0zm9nj{pDw literal 0 HcmV?d00001 diff --git a/persistmods/admin.py b/persistmods/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/persistmods/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/persistmods/apps.py b/persistmods/apps.py new file mode 100644 index 0000000..9a0309c --- /dev/null +++ b/persistmods/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class PersistmodsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'persistmods' diff --git a/persistmods/migrations/__init__.py b/persistmods/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/persistmods/models.py b/persistmods/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/persistmods/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/persistmods/modtypes.py b/persistmods/modtypes.py new file mode 100644 index 0000000..96852c7 --- /dev/null +++ b/persistmods/modtypes.py @@ -0,0 +1,5 @@ +class zenroomnode: + pass + +class default: + pass diff --git a/persistmods/tests.py b/persistmods/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/persistmods/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/persistmods/urls.py b/persistmods/urls.py new file mode 100644 index 0000000..27eeed6 --- /dev/null +++ b/persistmods/urls.py @@ -0,0 +1,12 @@ + +from django.urls import path + +from . import views + +urlpatterns = [ + path("start", views.start, name="start"), + path("stop", views.stop, name="stop"), + path("execute", views.execute, name="execute"), + path("get_logs", views.get_logs, name="get_logs"), + path("set_call", views.set_call, name="set_call"), +] diff --git a/persistmods/views.py b/persistmods/views.py new file mode 100644 index 0000000..1437e8e --- /dev/null +++ b/persistmods/views.py @@ -0,0 +1,54 @@ +from django.shortcuts import render +from django.http import HttpResponse +from types import MethodType +import persistmods.modtypes +import logging + + + +mods={} + +logging.basicConfig(filename='ckserver.log', level=logging.INFO, + format='%(asctime)s - %(levelname)s - %(message)s') +def start(request): + nodetype = request.GET.get("nodetype") + nodename = request.GET.get("nodename") + args = request.GET.get("args") + + mods[nodename]="" + logging.info("module created") + + return HttpResponse(nodetype+" "+nodename) + +def stop(request): + nodename = request.GET.get("nodename") + + del(mods[nodename]) + logging.info("module deleted") + + return HttpResponse(nodename) + + +def execute(request): + nodename = request.GET.get("nodename") + mods[nodename].execute() + logging.info("module executed") + + return HttpResponse(nodename) + +def get_logs(request): + nodename = request.GET.get("nodename") + with open("ckserver.log", "r") as f: + lines = f.readlines() + + return HttpResponse(lines) + +def set_call(request): + nodename = request.GET.get("nodename") + code = tequest.GET.get("code") + + mods[nodename].execute=MethodType(eval(code),mods[nodename]) + logging.info("module code set") + + return HttpResponse(nodename) +# Create your views here.