Jump to content

[Résolu] Modifier Client


Recommended Posts

Bonjour, 

 

J'ai ajouté deux nouveaux champ à renseigner lors de l'inscription d'un client, ça marche ils sont bien insérés en base et cela s'affiche dans le back-office maintenant il me reste à pouvoir modifier ces champ dans le back-office et je ne trouve pas l'endroit dans les fichiers où rajouter les deux champ pour qu'ils s'affichent dans le formulaire de modification d'un client, 

Je suis sous prestashop 1.5

 

Merci 

 

(PS: J'aimerais juste que l'on me donne le fichier et si possible la ligne après je me débrouillerais tout seul )

Edited by albert-art (see edit history)
Link to comment
Share on other sites

Bonjour

 

d'abord merci pour votre réponse si rapide, 

 

J'ai commencé par chercher ici car étant donné que c'est le fichier où l'on ajoute les champ pour les rendre visible dans l'onglets client du back-office.

 

Peut-être auriez vous l'endroit ou cela se passe ? un nom de méthode ?

 

Merci 

Link to comment
Share on other sites

$this->_select = '
		a.date_add,
		IF (YEAR(`birthday`) = 0, "-", (YEAR(CURRENT_DATE)-YEAR(`birthday`)) - (RIGHT(CURRENT_DATE, 5) < RIGHT(birthday, 5))) AS `age`, (
			SELECT c.date_add FROM '._DB_PREFIX_.'guest g
			LEFT JOIN '._DB_PREFIX_.'connections c ON c.id_guest = g.id_guest
			WHERE g.id_customer = a.id_customer
			ORDER BY c.date_add DESC
			LIMIT 1
		) as connect';
		$this->fields_list = array(
			'id_customer' => array(
				'title' => $this->l('ID'),
				'align' => 'center',
				'width' => 20
			),
			'id_gender' => array(
				'title' => $this->l('Title'),
				'width' => 70,
				'align' => 'center',
				'icon' => $genders_icon,
				'orderby' => false,
				'type' => 'select',
				'list' => $genders,
				'filter_key' => 'a!id_gender',
			),
			'lastname' => array(
				'title' => $this->l('Last name'),
				'width' => 'auto'
			),
			'firstname' => array(
				'title' => $this->l('First Name'),
				'width' => 'auto'
			),
			'email' => array(
				'title' => $this->l('Email address'),
				'width' => 140,
			),
			'age' => array(
				'title' => $this->l('Age'),
				'width' => 20,
				'search' => false,
				'align' => 'center'
			),
			'codevdi' => array(
				'title' => $this->l('Code VDI'),
				'width' => 'auto',
			),
			'telhotesse' => array(
				'title' => $this->l('Telephonne Hôte'),
				'width' => 'auto',
			),
			'active' => array(
				'title' => $this->l('Enabled'),
				'width' => 70,
				'align' => 'center',
				'active' => 'status',
				'type' => 'bool',
				'orderby' => false,
				'filter_key' => 'a!active',
			),
			'newsletter' => array(
				'title' => $this->l('News.'),
				'width' => 70,
				'align' => 'center',
				'type' => 'bool',
				'callback' => 'printNewsIcon',
				'orderby' => false
			),
			'optin' => array(
				'title' => $this->l('Opt.'),
				'width' => 70,
				'align' => 'center',
				'type' => 'bool',
				'callback' => 'printOptinIcon',
				'orderby' => false
			),
			'date_add' => array(
				'title' => $this->l('Registration'),
				'width' => 150,
				'type' => 'date',
				'align' => 'right'
			),
			'connect' => array(
				'title' => $this->l('Last visit'),
				'width' => 100,
				'type' => 'datetime',
				'search' => false,
				'havingFilter' => true
			),
		);

Voila j'ai ajouté le champ codevdi et telhotesse pour les rendre visibles au back-office dans l'onglet clients.(modification qui marche)

Mais voila maintenant j'aimerais quand je clique sur modifier un client, dans le formulaire qui s'affiche, qu'on retrouve ces deux champs pour pouvoir les modifier.

Edited by albert-art (see edit history)
Link to comment
Share on other sites

J'ai trouvé il suffit d'aller ajouter les champ dans la méthode :renderForm() un peu plus bas aux alentour de la ligne 250 ce que j'avais essayé de faire mais qui ne marchais pas à cause d'une erreur de syntaxe toute bête ! 

En tout cas merci d'avoir pris la peine et le temps pour m'aider ! :)

Edited by albert-art (see edit history)
Link to comment
Share on other sites

Le début de l'affichage:

 

Rajoutes dans la méthode   

public function renderForm()

                    'desc' => $this->l('Customer will receive your ads via email.')
                ),
                array(
                    'type' => 'text',
                    'label' => $this->l('Codevi:'),
                    'name' => 'codevdi',
                    'size' => 33,
                    'required' => true,
                    'hint' => $this->l('Invalid characters:').' 0-9!<>,;?=+()@#"�{}_$%:'
                ),

                array(
                    'type' => 'text',
                    'label' => $this->l('Tél hotesse:'),
                    'name' => 'telhotesse',
                    'size' => 33,
                    'required' => true,
                    'hint' => $this->l('Invalid characters:').' 0-9!<>,;?=+()@#"�{}_$%:'
                ),
            )
        );
Link to comment
Share on other sites

 

 

'hint' => $this->l('Invalid characters:').' 0-9!<>,;?=+()@#"�{}_$%:'

 

Si je rajoute cette ligne plus personne ne rentrera de chiffre et donc plus de code ^^ idem pour le téléphone de l'hôtesse,

 

J'ai trouver je vais mettre le topic en résolu merci encore.

 

(PS: La solution est dans mon précédent message ) 

Link to comment
Share on other sites

Dommage : nos mails se sont croisés, pas de notification de nouveaux Posts. J'ai cherché pour rien. :angry:

 

Tu adaptes en fonction des souhaits :

required (true ou false)

Invalid characters

'required' => true,
'hint' => $this->l('Invalid characters:').

Mets en [Résolu] Tes trois posts correspondant à ta demande

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...