From 4d80fa4e7c848c54ef49393bfc41cf534511633f Mon Sep 17 00:00:00 2001 From: Damien De Paoli Date: Sat, 20 Sep 2025 19:32:21 +1000 Subject: [PATCH] first pass at new query table --- query.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 query.py diff --git a/query.py b/query.py new file mode 100644 index 0000000..7b97c29 --- /dev/null +++ b/query.py @@ -0,0 +1,40 @@ +#from main import db +#from sqlalchemy import Sequence +#from flask import request, redirect, make_response, jsonify +#from flask_login import UserMixin, login_required +#from main import db, app, ma +#from sqlalchemy.exc import SQLAlchemyError + + +# pylint: disable=no-member + +################################################################################ +# Class describing Person in the database and DB via sqlalchemy +# id is unique id in DB +# dn is ldap distinguised name +# any entry in this DB is effectively a record you already authed successfully +# so acts as a session marker. If you fail ldap auth, you dont get a row here +################################################################################ +class Query(UserMixin,db.Model): + __tablename__ = "query" + id = db.Column(db.Integer, db.Sequence('query_id_seq'), primary_key=True) + path_type = db.Column(db.String) + noo = db.Column(db.String) + grouping = db.Column(db.String) + q_offset = db.Column(db.Integer) + folders = db.Column(db.Boolean) + root = db.Column(db.String) + cwd = db.Column(db.String) + search_term = db.Column(db.String) + current = db.Column(db.Integer) + created = db.Column(db.DateTime(timezone=True)) + + def __repr__(self): + str=f"<{self.__class__.__name__}(" + for k, v in self.__dict__.items(): + str += f"{k}={v!r}, " + str=str.rstrip(", ") + ")>" + return str + + def get_id(self): + return self.dn