Compare commits
6 Commits
master
...
ex2_pizzas
Author | SHA1 | Date | |
---|---|---|---|
![]() |
5b75d45910 | ||
![]() |
9cc85a2525 | ||
![]() |
c4c52809d2 | ||
![]() |
432e75526f | ||
![]() |
b218b7c7e3 | ||
![]() |
7c29c46eec |
5
src/lib/components/form/Boolean.svelte
Normal file
5
src/lib/components/form/Boolean.svelte
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<script>
|
||||||
|
export let value = false;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<input type="checkbox" bind:checked={value} class="size-5 mx-2" />
|
@ -14,6 +14,8 @@
|
|||||||
|
|
||||||
export let is_logedin = false;
|
export let is_logedin = false;
|
||||||
|
|
||||||
|
export let is_loaded = false;
|
||||||
|
|
||||||
export let on_logout = () => {};
|
export let on_logout = () => {};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -23,7 +25,7 @@
|
|||||||
bg-[var(--w-bg-second)] dark:bg-[#111]"
|
bg-[var(--w-bg-second)] dark:bg-[#111]"
|
||||||
>
|
>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
{#if is_logedin}
|
{#if is_logedin && is_loaded}
|
||||||
{#each Object.entries(db_scheme) as page_name}
|
{#each Object.entries(db_scheme) as page_name}
|
||||||
{#if check_access(page_name[0])}
|
{#if check_access(page_name[0])}
|
||||||
<button
|
<button
|
||||||
@ -45,7 +47,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="space-x-4 flex justify-center items-center">
|
<div class="space-x-4 flex justify-center items-center">
|
||||||
<ThemeSwitch></ThemeSwitch>
|
<ThemeSwitch></ThemeSwitch>
|
||||||
{#if is_logedin}
|
{#if is_logedin && is_loaded}
|
||||||
<Button
|
<Button
|
||||||
on_click={on_logout}
|
on_click={on_logout}
|
||||||
class_name={"!text-black hover:!text-white dark:!text-white bg-[var(--w-red)] dark:bg-[var(--b-red)]"}
|
class_name={"!text-black hover:!text-white dark:!text-white bg-[var(--w-red)] dark:bg-[var(--b-red)]"}
|
||||||
|
@ -104,7 +104,7 @@ WHERE id = ${current_item.id}`;
|
|||||||
export let db;
|
export let db;
|
||||||
|
|
||||||
/** @type {string} */
|
/** @type {string} */
|
||||||
let current_page = "Запросы";
|
let current_page = "Пиццерия";
|
||||||
|
|
||||||
let current_table = "";
|
let current_table = "";
|
||||||
let current_view = "";
|
let current_view = "";
|
||||||
@ -114,8 +114,7 @@ WHERE id = ${current_item.id}`;
|
|||||||
export let is_dialog_item_add = false;
|
export let is_dialog_item_add = false;
|
||||||
|
|
||||||
let is_logedin = false;
|
let is_logedin = false;
|
||||||
|
export let is_login_requied = true;
|
||||||
export let data_access;
|
|
||||||
|
|
||||||
let access_level = "";
|
let access_level = "";
|
||||||
/**
|
/**
|
||||||
@ -135,6 +134,11 @@ WHERE id = ${current_item.id}`;
|
|||||||
onMount(async () => {
|
onMount(async () => {
|
||||||
await load_db();
|
await load_db();
|
||||||
is_loaded = true;
|
is_loaded = true;
|
||||||
|
if (!is_login_requied) {
|
||||||
|
is_logedin = true;
|
||||||
|
check_access = () => true;
|
||||||
|
check_login = async () => [true, ""];
|
||||||
|
}
|
||||||
});
|
});
|
||||||
$: cur_dialog_name = is_dialog_item_add
|
$: cur_dialog_name = is_dialog_item_add
|
||||||
? `Добавить в ${db_scheme[current_page].tables[current_table]}`
|
? `Добавить в ${db_scheme[current_page].tables[current_table]}`
|
||||||
@ -143,23 +147,27 @@ WHERE id = ${current_item.id}`;
|
|||||||
|
|
||||||
<NavBar
|
<NavBar
|
||||||
{is_logedin}
|
{is_logedin}
|
||||||
|
{is_loaded}
|
||||||
{db_scheme}
|
{db_scheme}
|
||||||
bind:current_page
|
bind:current_page
|
||||||
bind:is_view_open
|
bind:is_view_open
|
||||||
check_access={(name) => check_access(access_level, name, null)}
|
check_access={(name) => check_access(access_level, name, null)}
|
||||||
on_logout={() => {
|
on_logout={() => {
|
||||||
is_logedin = false;
|
if (is_login_requied) {
|
||||||
// @ts-ignore
|
is_logedin = false;
|
||||||
access_level = "";
|
// @ts-ignore
|
||||||
current_page = "Запросы";
|
access_level = "";
|
||||||
current_table = "";
|
current_page = "Запросы";
|
||||||
current_view = "";
|
current_table = "";
|
||||||
|
current_view = "";
|
||||||
|
}
|
||||||
}}
|
}}
|
||||||
></NavBar>
|
></NavBar>
|
||||||
|
|
||||||
<div class="w-full h-[calc(100vh-88px)] flex">
|
<div class="w-full h-[calc(100vh-88px)] flex">
|
||||||
<SideMenu
|
<SideMenu
|
||||||
{is_logedin}
|
{is_logedin}
|
||||||
|
{is_loaded}
|
||||||
bind:current_table
|
bind:current_table
|
||||||
bind:current_view
|
bind:current_view
|
||||||
bind:is_view_open
|
bind:is_view_open
|
||||||
|
@ -8,13 +8,15 @@
|
|||||||
export let check_access = (name) => false;
|
export let check_access = (name) => false;
|
||||||
|
|
||||||
export let is_logedin = false;
|
export let is_logedin = false;
|
||||||
|
|
||||||
|
export let is_loaded = false;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
class="w-[240px] h-full text-xl p-3 mr-2 flex-initial rounded-tr-xl
|
class="w-[240px] h-full text-xl p-3 mr-2 flex-initial rounded-tr-xl
|
||||||
bg-[var(--w-bg-second)] dark:bg-[var(--b-bg-second)]"
|
bg-[var(--w-bg-second)] dark:bg-[var(--b-bg-second)]"
|
||||||
>
|
>
|
||||||
{#if is_logedin}
|
{#if is_logedin && is_loaded}
|
||||||
{#if Object.entries(db_scheme.viewes).length !== 0 && Object.entries(db_scheme.viewes).some( (el) => check_access(el[0]), )}
|
{#if Object.entries(db_scheme.viewes).length !== 0 && Object.entries(db_scheme.viewes).some( (el) => check_access(el[0]), )}
|
||||||
<button
|
<button
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user