diff options
| author | polo <ordipolo@gmx.fr> | 2025-10-26 22:48:49 +0100 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2025-10-26 22:48:49 +0100 |
| commit | 959527bb712fcd05351d8b4b52ff17786baad454 (patch) | |
| tree | 459f66a07e443a971930e5aa3bce257c33079f20 /public/js/menu.js | |
| parent | e73ea91a5999dc2cbadc00dfda18c839ef1a158b (diff) | |
| download | cms-959527bb712fcd05351d8b4b52ff17786baad454.zip | |
modification du nom et plus seulement de l'URL des entrées "URL" du menu, header/footer: renommage de classes et input absents du HTML sans être adminHEADmain
Diffstat (limited to 'public/js/menu.js')
| -rw-r--r-- | public/js/menu.js | 78 |
1 files changed, 12 insertions, 66 deletions
diff --git a/public/js/menu.js b/public/js/menu.js index ef58c42..5e02387 100644 --- a/public/js/menu.js +++ b/public/js/menu.js | |||
| @@ -147,22 +147,27 @@ function checkMenuEntry(page_id){ | |||
| 147 | }); | 147 | }); |
| 148 | } | 148 | } |
| 149 | 149 | ||
| 150 | // seul la modification des URL est possible pour l'instant, les noms des entrées de menu attendront | 150 | function editUrl(page_id, selector){ |
| 151 | function editUrlEntry(page_id){ | ||
| 152 | const parent_div = document.getElementById(page_id); | 151 | const parent_div = document.getElementById(page_id); |
| 153 | const url_input = parent_div.querySelector('.url').querySelector('input').value; | 152 | const input_data = parent_div.querySelector('.' + selector).querySelector('input').value; |
| 154 | 153 | ||
| 155 | fetch('index.php?menu_edit=edit_url_entry', { | 154 | fetch('index.php?menu_edit=url_edit', { |
| 156 | method: 'POST', | 155 | method: 'POST', |
| 157 | headers: { | 156 | headers: { |
| 158 | 'Content-Type': 'application/json' | 157 | 'Content-Type': 'application/json' |
| 159 | }, | 158 | }, |
| 160 | body: JSON.stringify({ id: page_id, url_input: url_input }) | 159 | body: JSON.stringify({ id: page_id, field: selector, input_data: input_data }) |
| 161 | }) | 160 | }) |
| 162 | .then(response => response.json()) | 161 | .then(response => response.json()) |
| 163 | .then(data => { | 162 | .then(data => { |
| 164 | if(data.success){ | 163 | if(data.success){ |
| 165 | findParentByTagName(document.getElementById('m_' + page_id), 'a').href = data.url_input; // MAJ menu | 164 | // MAJ menu |
| 165 | if(selector === 'url_name'){ | ||
| 166 | document.getElementById('m_' + page_id).innerHTML = data.url_data; | ||
| 167 | } | ||
| 168 | else if(selector === 'url_content'){ | ||
| 169 | findParentByTagName(document.getElementById('m_' + page_id), 'a').href = data.url_data; | ||
| 170 | } | ||
| 166 | toastNotify("Nouvelle adresse enregistrée avec succès") | 171 | toastNotify("Nouvelle adresse enregistrée avec succès") |
| 167 | } | 172 | } |
| 168 | else{ | 173 | else{ |
| @@ -173,63 +178,4 @@ function editUrlEntry(page_id){ | |||
| 173 | .catch(error => { | 178 | .catch(error => { |
| 174 | console.error('Erreur:', error); | 179 | console.error('Erreur:', error); |
| 175 | }); | 180 | }); |
| 176 | } | 181 | } \ No newline at end of file |
| 177 | |||
| 178 | |||
| 179 | |||
| 180 | // code à recycler pour pouvoir modifier le nom de l'entrée de menu correspondant aux liens | ||
| 181 | /*function editUrlEntry(page_id){ | ||
| 182 | const parent_div = document.getElementById(page_id); | ||
| 183 | parent_div.querySelector('i').classList.add('hidden'); | ||
| 184 | parent_div.querySelector('.url').querySelector('input').classList.remove('hidden'); | ||
| 185 | parent_div.querySelector('#edit-i' + page_id).classList.add('hidden'); | ||
| 186 | parent_div.querySelector('#delete-i' + page_id).querySelector('input[type=image]').classList.add('hidden'); | ||
| 187 | parent_div.querySelector('#cancel-i' + page_id).querySelector('button').classList.remove('hidden'); | ||
| 188 | parent_div.querySelector('#submit-i' + page_id).querySelector('input[type=submit]').classList.remove('hidden'); | ||
| 189 | } | ||
| 190 | function cancelUrlEntry(page_id){ | ||
| 191 | const parent_div = document.getElementById(page_id); | ||
| 192 | parent_div.querySelector('.url').querySelector('input').value = parent_div.querySelector('i').textContent; // textContent (contrairement à innerHTML) ne transforme pas les & en entités HTML | ||
| 193 | closeUrlEntry(page_id, parent_div); | ||
| 194 | } | ||
| 195 | function submitUrlEntry(page_id){ | ||
| 196 | const parent_div = document.getElementById(page_id); | ||
| 197 | const url_input = parent_div.querySelector('.url').querySelector('input').value; | ||
| 198 | |||
| 199 | fetch('index.php?menu_edit=edit_url_entry', { | ||
| 200 | method: 'POST', | ||
| 201 | headers: { | ||
| 202 | 'Content-Type': 'application/json' | ||
| 203 | }, | ||
| 204 | body: JSON.stringify({ id: page_id, url_input: url_input }) | ||
| 205 | }) | ||
| 206 | .then(response => response.json()) | ||
| 207 | .then(data => { | ||
| 208 | if(data.success){ | ||
| 209 | parent_div.querySelector('i').innerHTML = data.url_input; // MAJ <i> | ||
| 210 | findParentByTagName(document.getElementById('m_' + page_id), 'a').href = data.url_input; // MAJ menu | ||
| 211 | closeUrlEntry(page_id, parent_div); | ||
| 212 | } | ||
| 213 | else{ | ||
| 214 | toastNotify("Erreur rencontrée par le serveur, changements non pris en compte"); | ||
| 215 | console.error("Erreur rencontrée par le serveur, changements non pris en compte"); | ||
| 216 | } | ||
| 217 | }) | ||
| 218 | .catch(error => { | ||
| 219 | console.error('Erreur:', error); | ||
| 220 | }); | ||
| 221 | } | ||
| 222 | function closeUrlEntry(page_id, parent_div){ | ||
| 223 | parent_div.querySelector('i').classList.remove('hidden'); | ||
| 224 | parent_div.querySelector('.url').querySelector('input').classList.add('hidden'); | ||
| 225 | parent_div.querySelector('#edit-i' + page_id).classList.remove('hidden'); | ||
| 226 | parent_div.querySelector('#delete-i' + page_id).querySelector('input[type=image]').classList.remove('hidden'); | ||
| 227 | parent_div.querySelector('#cancel-i' + page_id).querySelector('button').classList.add('hidden'); | ||
| 228 | parent_div.querySelector('#submit-i' + page_id).querySelector('input[type=submit]').classList.add('hidden'); | ||
| 229 | }*/ | ||
| 230 | |||
| 231 | /*function deleteUrlEntry(page_id){ | ||
| 232 | const selected_div = document.getElementById(page_id); | ||
| 233 | console.log(selected_div.id); | ||
| 234 | }*/ | ||
| 235 | |||
