Jump to content

Edit History

Natc77

Natc77

Merci @Eolia, depuis j'ai avancé et en en effet trouvé la partie à changer dans StoresController.php qui a une présentation différente de la tienne.
Je ne dois pas bloquer d'office des jours car les jours d'ouvertures peuvent changer, si l'horaire est renseigné, on affiche le jour, si l'horaire est vide, on affiche pas le jour.

Le code se présente ainsi :

$temp = json_decode($store['hours'], true);
            unset($store['hours']);
			$store['business_hours'] = 
                [
                    'day' => $this->trans('Monday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[0],
                ], [
                    'day' => $this->trans('Tuesday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[1],
                ], [
                    'day' => $this->trans('Wednesday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[2],
                ], [
                    'day' => $this->trans('Thursday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[3],
                ], [
                    'day' => $this->trans('Friday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[4],
                ], [
                    'day' => $this->trans('Saturday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[5],
                ], [
                    'day' => $this->trans('Sunday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[6],
                ],
            ];
			

Alors j'ai commencé par séparer chaque jour (ça fonctionne j'ai les 7 jours d'affichés) , puis j'ai voulu appliqué une condition si temp[..] est vide, alors pas de ligne dans le tableau, si horaire alors ligne.

Exemple sur le lundi, j'ai essayé :

			if (!empty($temp[0])) {
				$store['business_hours'][0] = [
				'day' => $this->trans('Monday', array(), 'Shop.Theme.Global'),
				'hours' => $temp[0]
				];
			}

Ça ne fonctionne pas, si le lundi a un horaire, il ne s'affiche pas.
Alors j'ai essayé :

			if (strlen($temp[0])>2) {
				$store['business_hours'][0] = [
				'day' => $this->trans('Monday', array(), 'Shop.Theme.Global'),
				'hours' => $temp[0]
				];
			}

Idem, si horaire, pas d'affichage
Je dois mal faire ma condition ?
Je continue à chercher et à tester :)
 

Natc77

Natc77

Merci @Eolia, depuis j'ai avancé et en en effet trouvé la partie à changer dans StoresController.php qui a une présentation différente de la tienne.
Je ne dois pas bloquer d'office des jours car les jours d'ouvertures peuvent changer, si l'horaire est renseigné, on affiche le jour, si l'horaire est vide, on affiche pas le jour.

Le code se présente ainsi :

$temp = json_decode($store['hours'], true);
            unset($store['hours']);
			$store['business_hours'] = 
                [
                    'day' => $this->trans('Monday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[0],
                ], [
                    'day' => $this->trans('Tuesday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[1],
                ], [
                    'day' => $this->trans('Wednesday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[2],
                ], [
                    'day' => $this->trans('Thursday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[3],
                ], [
                    'day' => $this->trans('Friday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[4],
                ], [
                    'day' => $this->trans('Saturday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[5],
                ], [
                    'day' => $this->trans('Sunday', array(), 'Shop.Theme.Global'),
                    'hours' => $temp[6],
                ],
            ];
			

Alors j'ai commencé par séparer chaque jour (ça fonctionne j'ai les 7 jours d'afficher) , puis j'ai voulu appliqué une condition si temp[..] est vide, alors pas de ligne dans le tableau, si horaire alors ligne.

Exemple sur le lundi, j'ai essayé :

			if (!empty($temp[0])) {
				$store['business_hours'][0] = [
				'day' => $this->trans('Monday', array(), 'Shop.Theme.Global'),
				'hours' => $temp[0]
				];
			}

Ça ne fonctionne pas, si le lundi a un horaire, il ne s'affiche pas.
Alors j'ai essayé :

			if (strlen($temp[0])>2) {
				$store['business_hours'][0] = [
				'day' => $this->trans('Monday', array(), 'Shop.Theme.Global'),
				'hours' => $temp[0]
				];
			}

Idem, si horaire, pas d'affichage
Je dois mal faire ma condition ?
Je continue à chercher et à tester :)
 

×
×
  • Create New...