Compare commits
No commits in common. "4a3422889f32aca43e7ff305d635092fcce55196" and "efb228639effb6501f2ff99cbda487adbcdc6bdf" have entirely different histories.
4a3422889f
...
efb228639e
10 changed files with 9 additions and 65 deletions
3
.idea/dictionaries/project.xml
generated
3
.idea/dictionaries/project.xml
generated
|
@ -1,3 +0,0 @@
|
||||||
<component name="ProjectDictionaryState">
|
|
||||||
<dictionary name="project" />
|
|
||||||
</component>
|
|
7
.idea/jsLibraryMappings.xml
generated
7
.idea/jsLibraryMappings.xml
generated
|
@ -1,7 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="JavaScriptLibraryMappings">
|
|
||||||
<file url="file://$PROJECT_DIR$/src" libraries="{web/src/node_modules}" />
|
|
||||||
<file url="PROJECT" libraries="{@types/tailwindcss, web/src/node_modules}" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
6
.idea/tailwindcss.xml
generated
6
.idea/tailwindcss.xml
generated
|
@ -1,6 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="TailwindSettings">
|
|
||||||
<option name="lspConfiguration" value="{ "includeLanguages": { "ftl": "html", "jinja": "html", "jinja2": "html", "smarty": "html", "tmpl": "gohtml", "cshtml": "html", "vbhtml": "html", "razor": "html", "scss": "scss", "html": "html", "javascript": "javascript", "typescript": "typescript", "css": "css", "vue": "vue", "sass": "sass", "twig": "twig" }, "files": { "exclude": [ "**/.git/**", "**/node_modules/**", "**/.hg/**", "**/.svn/**" ] }, "emmetCompletions": false, "classAttributes": ["class", "className", "ngClass"], "colorDecorators": true, "showPixelEquivalents": true, "rootFontSize": 16, "hovers": true, "suggestions": true, "codeActions": true, "validate": true, "lint": { "invalidScreen": "error", "invalidVariant": "error", "invalidTailwindDirective": "error", "invalidApply": "error", "invalidConfigPath": "error", "cssConflict": "warning", "recommendedVariantOrder": "warning" }, "experimental": { "configFile": null, "classRegex": [] } }" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
1
.idea/web.iml
generated
1
.idea/web.iml
generated
|
@ -4,6 +4,5 @@
|
||||||
<content url="file://$MODULE_DIR$" />
|
<content url="file://$MODULE_DIR$" />
|
||||||
<orderEntry type="inheritedJdk" />
|
<orderEntry type="inheritedJdk" />
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
<orderEntry type="library" name="@types/tailwindcss" level="application" />
|
|
||||||
</component>
|
</component>
|
||||||
</module>
|
</module>
|
17
.idea/workspace.xml
generated
17
.idea/workspace.xml
generated
|
@ -5,10 +5,8 @@
|
||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="5e320804-68c9-4504-97d5-d421de3438b2" name="Changes" comment="">
|
<list default="true" id="5e320804-68c9-4504-97d5-d421de3438b2" name="Changes" comment="">
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/web.iml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/web.iml" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/pages/lists/[id].vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/pages/lists/[id].vue" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/pages/lists/[id].vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/pages/lists/[id].vue" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/pages/lists/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/pages/lists/index.vue" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/pages/schedule/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/pages/schedule/index.vue" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/pages/schedule/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/pages/schedule/index.vue" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
@ -16,7 +14,7 @@
|
||||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ComposerSettings" synchronizationState="SYNCHRONIZE">
|
<component name="ComposerSettings">
|
||||||
<execution />
|
<execution />
|
||||||
</component>
|
</component>
|
||||||
<component name="FileTemplateManagerImpl">
|
<component name="FileTemplateManagerImpl">
|
||||||
|
@ -25,7 +23,6 @@
|
||||||
<option value="CSS File" />
|
<option value="CSS File" />
|
||||||
<option value="Vue Single File Component" />
|
<option value="Vue Single File Component" />
|
||||||
<option value="TypeScript File" />
|
<option value="TypeScript File" />
|
||||||
<option value="Vue Composition API Component" />
|
|
||||||
</list>
|
</list>
|
||||||
</option>
|
</option>
|
||||||
</component>
|
</component>
|
||||||
|
@ -79,14 +76,9 @@
|
||||||
"npm.dev.executor": "Run",
|
"npm.dev.executor": "Run",
|
||||||
"prettierjs.PrettierConfiguration.Package": "/home/tiradoe/Projects/movie-night/web/src/node_modules/prettier",
|
"prettierjs.PrettierConfiguration.Package": "/home/tiradoe/Projects/movie-night/web/src/node_modules/prettier",
|
||||||
"rearrange.code.on.save": "true",
|
"rearrange.code.on.save": "true",
|
||||||
"settings.editor.selected.configurable": "configurable.group.editor",
|
"settings.editor.selected.configurable": "settings.vue",
|
||||||
"ts.external.directory.path": "/home/tiradoe/Projects/movie-night/web/src/node_modules/typescript/lib",
|
"ts.external.directory.path": "/home/tiradoe/Projects/movie-night/web/src/node_modules/typescript/lib",
|
||||||
"vue.rearranger.settings.migration": "true"
|
"vue.rearranger.settings.migration": "true"
|
||||||
},
|
|
||||||
"keyToStringList": {
|
|
||||||
"vue.recent.templates": [
|
|
||||||
"Vue Composition API Component"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}]]></component>
|
}]]></component>
|
||||||
<component name="RecentsManager">
|
<component name="RecentsManager">
|
||||||
|
@ -141,10 +133,7 @@
|
||||||
<workItem from="1743904898331" duration="20256000" />
|
<workItem from="1743904898331" duration="20256000" />
|
||||||
<workItem from="1743998844137" duration="23268000" />
|
<workItem from="1743998844137" duration="23268000" />
|
||||||
<workItem from="1744430699183" duration="32152000" />
|
<workItem from="1744430699183" duration="32152000" />
|
||||||
<workItem from="1745179755243" duration="40533000" />
|
<workItem from="1745179755243" duration="37963000" />
|
||||||
<workItem from="1745366380362" duration="223000" />
|
|
||||||
<workItem from="1745366610986" duration="319000" />
|
|
||||||
<workItem from="1745366940811" duration="1222000" />
|
|
||||||
</task>
|
</task>
|
||||||
<servers />
|
<servers />
|
||||||
</component>
|
</component>
|
||||||
|
|
Binary file not shown.
|
@ -1,15 +0,0 @@
|
||||||
<script lang="ts" setup></script>
|
|
||||||
|
|
||||||
<template>
|
|
||||||
<video
|
|
||||||
alt="Loading"
|
|
||||||
autoplay
|
|
||||||
class="flex absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2"
|
|
||||||
loop
|
|
||||||
muted
|
|
||||||
src="/assets/img/movie-loader.webm"
|
|
||||||
type="video/webm"
|
|
||||||
/>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<style scoped></style>
|
|
|
@ -1,5 +1,4 @@
|
||||||
<template>
|
<template>
|
||||||
<LoadingIcon v-if="loading" />
|
|
||||||
<div v-if="list_id !== 0" class="p-5 sm:p-0">
|
<div v-if="list_id !== 0" class="p-5 sm:p-0">
|
||||||
<Modal ref="movie_modal">
|
<Modal ref="movie_modal">
|
||||||
<ShowMovie
|
<ShowMovie
|
||||||
|
@ -74,7 +73,6 @@ import { useCookie } from "#app";
|
||||||
|
|
||||||
const list_id = ref(0);
|
const list_id = ref(0);
|
||||||
const list = defineModel<MovieList>("movie_list", { default: [] });
|
const list = defineModel<MovieList>("movie_list", { default: [] });
|
||||||
const loading = ref(true);
|
|
||||||
const modal_movie: Ref<Movie | null> = ref(null);
|
const modal_movie: Ref<Movie | null> = ref(null);
|
||||||
const movies = defineModel<Movie[] | []>("movies", {
|
const movies = defineModel<Movie[] | []>("movies", {
|
||||||
default: [],
|
default: [],
|
||||||
|
@ -85,7 +83,6 @@ const logged_in = ref(false);
|
||||||
const hide_scheduled = ref(false);
|
const hide_scheduled = ref(false);
|
||||||
|
|
||||||
const getList = async function (list_id: number) {
|
const getList = async function (list_id: number) {
|
||||||
loading.value = true;
|
|
||||||
let config = useRuntimeConfig();
|
let config = useRuntimeConfig();
|
||||||
let headers: any = {
|
let headers: any = {
|
||||||
"Content-type": "application/json",
|
"Content-type": "application/json",
|
||||||
|
@ -103,7 +100,6 @@ const getList = async function (list_id: number) {
|
||||||
list.value = data;
|
list.value = data;
|
||||||
movies.value = data?.movies || [];
|
movies.value = data?.movies || [];
|
||||||
filtered_movies.value = movies.value;
|
filtered_movies.value = movies.value;
|
||||||
loading.value = false;
|
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
if (err.statusCode === 401) {
|
if (err.statusCode === 401) {
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="p-5 sm:p-0">
|
<div class="p-5 sm:p-0">
|
||||||
<div v-if="lists.length < 1 && !loading">
|
<div v-if="lists.length < 1">
|
||||||
<p>No lists found</p>
|
<p>No lists found</p>
|
||||||
</div>
|
</div>
|
||||||
<LoadingIcon v-if="loading" />
|
|
||||||
|
|
||||||
<ul class="grid grid-cols-2 gap-3 mt-5">
|
<ul class="grid grid-cols-2 gap-3 mt-5">
|
||||||
<li v-for="list in lists" class="movie-card neon-border p-5 rounded">
|
<li v-for="list in lists" class="movie-card neon-border p-5 rounded">
|
||||||
<div class="grid grid-rows-2 gap-3">
|
<div class="grid grid-rows-2 gap-3">
|
||||||
|
@ -23,10 +21,7 @@ import type { MovieList } from "~/types/movielist";
|
||||||
import { useCookie } from "#app";
|
import { useCookie } from "#app";
|
||||||
|
|
||||||
const lists = defineModel<MovieList[]>("movie_list", { default: [] });
|
const lists = defineModel<MovieList[]>("movie_list", { default: [] });
|
||||||
const loading = ref(true);
|
|
||||||
|
|
||||||
const updateLists = async function () {
|
const updateLists = async function () {
|
||||||
loading.value = true;
|
|
||||||
let config = useRuntimeConfig();
|
let config = useRuntimeConfig();
|
||||||
let headers: any = {
|
let headers: any = {
|
||||||
"Content-type": "application/json",
|
"Content-type": "application/json",
|
||||||
|
@ -42,7 +37,6 @@ const updateLists = async function () {
|
||||||
})
|
})
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
lists.value = data || [];
|
lists.value = data || [];
|
||||||
loading.value = false;
|
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
if (err.statusCode === 401) {
|
if (err.statusCode === 401) {
|
||||||
|
|
|
@ -1,12 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="p-5 sm:p-0">
|
<div class="p-5 sm:p-0">
|
||||||
<div
|
<div v-if="schedule && schedule?.showings.length < 1" class="p-5">
|
||||||
v-if="schedule && schedule?.showings.length < 1 && !loading"
|
|
||||||
class="p-5"
|
|
||||||
>
|
|
||||||
<span>No Showings Found</span>
|
<span>No Showings Found</span>
|
||||||
</div>
|
</div>
|
||||||
<LoadingIcon v-if="loading" />
|
|
||||||
<ul class="flex flex-col gap-5">
|
<ul class="flex flex-col gap-5">
|
||||||
<li
|
<li
|
||||||
v-for="showing in schedule?.showings"
|
v-for="showing in schedule?.showings"
|
||||||
|
@ -40,6 +36,7 @@
|
||||||
>
|
>
|
||||||
Previous Showings
|
Previous Showings
|
||||||
</span>
|
</span>
|
||||||
|
<span id="loader" class="hidden">Loading...</span>
|
||||||
<ul class="flex flex-col gap-5">
|
<ul class="flex flex-col gap-5">
|
||||||
<li v-for="showing in past_showings" class="p-5 movie-card neon-border">
|
<li v-for="showing in past_showings" class="p-5 movie-card neon-border">
|
||||||
<div class="sm:grid grid-cols-2 lg:grid-cols-3">
|
<div class="sm:grid grid-cols-2 lg:grid-cols-3">
|
||||||
|
@ -71,7 +68,6 @@ const schedule = defineModel<Schedule>("schedule");
|
||||||
const past_showings = defineModel<Showing[]>("past_showings", {
|
const past_showings = defineModel<Showing[]>("past_showings", {
|
||||||
default: [],
|
default: [],
|
||||||
});
|
});
|
||||||
const loading = ref(true);
|
|
||||||
const got_previous = ref(false);
|
const got_previous = ref(false);
|
||||||
const months = [
|
const months = [
|
||||||
"January",
|
"January",
|
||||||
|
@ -96,12 +92,13 @@ const formatDate = function (date_string: string) {
|
||||||
};
|
};
|
||||||
|
|
||||||
const getSchedule = async function (previous = false) {
|
const getSchedule = async function (previous = false) {
|
||||||
loading.value = true;
|
|
||||||
let config = useRuntimeConfig();
|
let config = useRuntimeConfig();
|
||||||
if (got_previous.value) {
|
if (got_previous.value) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
document.getElementById("loader")?.classList.toggle("hidden");
|
||||||
|
|
||||||
let params = "";
|
let params = "";
|
||||||
if (previous) params = "?past_showings=true";
|
if (previous) params = "?past_showings=true";
|
||||||
|
|
||||||
|
@ -123,7 +120,7 @@ const getSchedule = async function (previous = false) {
|
||||||
} else {
|
} else {
|
||||||
schedule.value = data;
|
schedule.value = data;
|
||||||
}
|
}
|
||||||
loading.value = false;
|
document.getElementById("loader")?.classList.toggle("hidden");
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
switch (err.statusCode) {
|
switch (err.statusCode) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue