Compare commits
12 commits
86d48e415c
...
9ee827c106
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ee827c106 | ||
|
|
a4cc5c8efe | ||
|
|
19752f516e | ||
|
|
1fb4e47d8d | ||
|
|
01b4a374cf | ||
|
|
c9aefe7ecf | ||
|
|
d590c9ac45 | ||
|
|
186f7b80ba | ||
|
|
1dad073ea1 | ||
|
|
729d72e18a | ||
|
|
95bdf4615d | ||
|
|
5e78e67fc8 |
9 changed files with 36 additions and 13 deletions
|
|
@ -62,3 +62,12 @@ jobs:
|
|||
sshpass -p "$PASSWORD" rsync -az --delete -O \
|
||||
-e 'ssh -p 2244 -o StrictHostKeyChecking=no' \
|
||||
assets/ $USERNAME@$HOST:$PREPROD_PATH/assets/
|
||||
|
||||
echo "Deploying .user.ini"
|
||||
sshpass -p "$PASSWORD" rsync -az -O \
|
||||
-e 'ssh -p 2244 -o StrictHostKeyChecking=no' \
|
||||
.user.ini $USERNAME@$HOST:$PREPROD_PATH/.user.ini
|
||||
|
||||
echo "Fix ACL mask on writable directories"
|
||||
sshpass -p "$PASSWORD" ssh -p 2244 -o StrictHostKeyChecking=no $USERNAME@$HOST \
|
||||
"setfacl -m mask::rwx $PREPROD_PATH/site/accounts $PREPROD_PATH/site/cache $PREPROD_PATH/site/sessions $PREPROD_PATH/content $PREPROD_PATH/media"
|
||||
|
|
|
|||
|
|
@ -62,3 +62,12 @@ jobs:
|
|||
sshpass -p "$PASSWORD" rsync -az --delete -O \
|
||||
-e 'ssh -p 2244 -o StrictHostKeyChecking=no' \
|
||||
assets/ $USERNAME@$HOST:$PROD_PATH/assets/
|
||||
|
||||
echo "Deploying .user.ini"
|
||||
sshpass -p "$PASSWORD" rsync -az -O \
|
||||
-e 'ssh -p 2244 -o StrictHostKeyChecking=no' \
|
||||
.user.ini $USERNAME@$HOST:$PROD_PATH/.user.ini
|
||||
|
||||
echo "Fix ACL mask on writable directories"
|
||||
sshpass -p "$PASSWORD" ssh -p 2244 -o StrictHostKeyChecking=no $USERNAME@$HOST \
|
||||
"setfacl -m mask::rwx $PROD_PATH/site/accounts $PROD_PATH/site/cache $PROD_PATH/site/sessions $PROD_PATH/content $PROD_PATH/media"
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ deploy_preprod:
|
|||
build_prod:
|
||||
stage: build
|
||||
only:
|
||||
- prod
|
||||
- main
|
||||
image: composer:2
|
||||
script:
|
||||
- apk add --no-cache nodejs npm
|
||||
|
|
|
|||
|
|
@ -30,12 +30,12 @@ sections:
|
|||
fr: Ouvrir la plateforme
|
||||
en: Open platform
|
||||
value: Design to Pack
|
||||
link: https://designtopack.morphozbygroupepochet.com/
|
||||
link: https://designtopack.groupe-pochet.fr/
|
||||
icon: open
|
||||
- label:
|
||||
fr: Projet(s) en cours
|
||||
en: Current project(s)
|
||||
link: https://designtopack.morphozbygroupepochet.com/
|
||||
link: https://designtopack.groupe-pochet.fr/
|
||||
value: "{{ user.currentProjects.count }}"
|
||||
icon: folder
|
||||
content:
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ return [
|
|||
'pattern' => 'migrate-user-projects.json',
|
||||
'method' => 'POST',
|
||||
'action' => function () {
|
||||
ini_set('memory_limit', '512M');
|
||||
$user = kirby()->user();
|
||||
|
||||
if (!$user || $user->role()->id() !== 'admin') {
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
<script>
|
||||
if (location.href.includes('goguely')) {
|
||||
location.href = 'https://designtopack.morphozbygroupepochet.com' + location.pathname
|
||||
location.href = 'https://designtopack.groupe-pochet.fr' + location.pathname
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
|||
|
|
@ -11,11 +11,12 @@ function getProjectData($project, $user)
|
|||
{
|
||||
// Utiliser getNotificationsLight() avec cache pour optimiser les performances
|
||||
$notifications = [];
|
||||
try {
|
||||
$notifications = $project->getNotificationsLight($user);
|
||||
} catch (\Throwable $e) {
|
||||
error_log("Error getting notifications for project {$project->uri()}: " . $e->getMessage());
|
||||
$notifications = [];
|
||||
if ($project instanceof ProjectPage) {
|
||||
try {
|
||||
$notifications = $project->getNotificationsLight($user);
|
||||
} catch (\Throwable $e) {
|
||||
error_log("Error getting notifications for project {$project->uri()}: " . $e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
$data = [
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ const images = computed(() => {
|
|||
},
|
||||
];
|
||||
}
|
||||
return allVariations.value.map((variation) => getFrontView(variation)) ?? [];
|
||||
return allVariations.value.map((variation) => getFrontView(variation)).filter(Boolean) ?? [];
|
||||
});
|
||||
|
||||
const uri = addLocalePrefix(step.uri);
|
||||
|
|
@ -35,10 +35,13 @@ function getFrontView(variation) {
|
|||
const xMax = parseInt(
|
||||
variation.files[variation.files.length - 1].name.split('_')[1].split('.')[0]
|
||||
);
|
||||
const xFrontView = (xMax + 1) / 2;
|
||||
const xFrontView = Math.round((xMax + 1) / 2);
|
||||
const extension = variation.files[0].name.split('.')[1];
|
||||
const frontViewName = '0_' + xFrontView + '.' + extension;
|
||||
const frontView = variation.files.find((file) => file.name === frontViewName);
|
||||
return frontView;
|
||||
if (!frontView) {
|
||||
console.warn(`[VirtualSample] Front view "${frontViewName}" not found in variation "${variation.title}", falling back to first file.`);
|
||||
}
|
||||
return frontView ?? variation.files[0];
|
||||
}
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ export default defineConfig(({ mode }) => {
|
|||
},
|
||||
},
|
||||
sourcemap: mode === 'staging',
|
||||
minify: mode === 'production' ? 'esbuild' : false,
|
||||
minify: mode === 'production',
|
||||
},
|
||||
server: {
|
||||
cors: true,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue