22 lines
668 B
Python
22 lines
668 B
Python
import db
|
|
|
|
from .ensure_schema import ensure_schema
|
|
|
|
|
|
def create_screen(slug, name, is_template=False):
|
|
ensure_schema(slug)
|
|
conn = db.connect(slug)
|
|
if is_template:
|
|
order_index = 0
|
|
else:
|
|
max_order = conn.execute("SELECT MAX(order_index) AS m FROM _screens WHERE is_template = 0").fetchone()["m"]
|
|
order_index = (max_order or 0) + 1
|
|
conn.execute(
|
|
"INSERT INTO _screens (name, order_index, is_template) VALUES (?, ?, ?)",
|
|
(name, order_index, 1 if is_template else 0),
|
|
)
|
|
screen_id = conn.execute("SELECT last_insert_rowid() AS id").fetchone()["id"]
|
|
conn.commit()
|
|
conn.close()
|
|
return screen_id
|