From f870a52b5df55d951dd4e9be9535387f6b5902d9 Mon Sep 17 00:00:00 2001 From: Babak Alizadeh Date: Fri, 21 Mar 2025 20:09:28 +0000 Subject: [PATCH] add default images --- .gitignore | 2 +- hesabixArchive/avatars/default.png | Bin 0 -> 6393 bytes hesabixArchive/avatars/index.php | 1 + hesabixArchive/support/index.php | 1 + .../application/buttons/notifications_btn.vue | 28 ++++---- .../acc/component/notifications/icon.vue | 65 ++++++++++-------- 6 files changed, 54 insertions(+), 43 deletions(-) create mode 100644 hesabixArchive/avatars/default.png create mode 100755 hesabixArchive/avatars/index.php create mode 100755 hesabixArchive/support/index.php diff --git a/.gitignore b/.gitignore index d316c39..c0b332f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ -hesabixArchive/ + hesabixBackup/ backup/ .idea/ diff --git a/hesabixArchive/avatars/default.png b/hesabixArchive/avatars/default.png new file mode 100644 index 0000000000000000000000000000000000000000..f945669b8928438fa695d2485637947683302615 GIT binary patch literal 6393 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 Hu0mjfd1+&J literal 0 HcmV?d00001 diff --git a/hesabixArchive/avatars/index.php b/hesabixArchive/avatars/index.php new file mode 100755 index 0000000..b3d9bbc --- /dev/null +++ b/hesabixArchive/avatars/index.php @@ -0,0 +1 @@ + ({ items: [], + timeoutId: null as number | null, // برای ذخیره ID تایمر }), - components: { - - }, + components: {}, mounted() { this.loadData(); }, + beforeUnmount() { + // پاک کردن تایمر هنگام تخریب کامپوننت + if (this.timeoutId) { + clearTimeout(this.timeoutId); + } + }, methods: { jump(item) { axios.post('/api/notifications/read/' + item.id).then((response) => { if (item.url.startsWith('http')) { window.location.href = item.url; - } - else { + } else { this.$router.push(item.url); } - - }) + }); }, loadData() { axios.post('/api/notifications/list/new').then((response) => { if (response.data.length != 0) { this.items = response.data; - } - else { + } else { this.items = []; } + }).finally(() => { + // تنظیم تایمر جدید و ذخیره ID آن + this.timeoutId = setTimeout(this.loadData, 10000); }); - setTimeout(this.loadData, 10000); } } - -}) +}); diff --git a/webUI/src/views/acc/component/notifications/icon.vue b/webUI/src/views/acc/component/notifications/icon.vue index 8131ca5..b508646 100644 --- a/webUI/src/views/acc/component/notifications/icon.vue +++ b/webUI/src/views/acc/component/notifications/icon.vue @@ -3,37 +3,45 @@ import axios from "axios"; export default { name: "icon", - data: ()=>{return{ - items:undefined, - }}, - created() { - this.loadData() + data: () => { + return { + items: undefined, + timeoutId: null, // برای ذخیره ID تایمر + }; }, - methods:{ - jump(item){ - axios.post('/api/notifications/read/' + item.id).then((response)=>{ - if(item.url.startsWith('http')){ - window.location.href = item.url; - } - else{ - this.$router.push(item.url); - } - - }) - }, - loadData(){ - axios.post('/api/notifications/list/new').then((response)=>{ - if(response.data.length !== 0){ - this.items = response.data; - } - else{ - this.items = undefined; + created() { + this.loadData(); + }, + beforeDestroy() { // یا destroyed بسته به نسخه Vue + // پاک کردن تایمر هنگام تخریب کامپوننت + if (this.timeoutId) { + clearTimeout(this.timeoutId); + } + }, + methods: { + jump(item) { + axios.post('/api/notifications/read/' + item.id).then((response) => { + if (item.url.startsWith('http')) { + window.location.href = item.url; + } else { + this.$router.push(item.url); } }); - setTimeout(this.loadData, 10000); - } - } -} + }, + loadData() { + axios.post('/api/notifications/list/new').then((response) => { + if (response.data.length !== 0) { + this.items = response.data; + } else { + this.items = undefined; + } + }).finally(() => { + // تنظیم تایمر جدید و ذخیره ID آن + this.timeoutId = setTimeout(this.loadData, 10000); + }); + }, + }, +}; \ No newline at end of file