Commit 29dfc08b authored by Mat's avatar Mat

partage la fonction qui affiche une info, et affiche le contenu des blocs sortable

parent 75543b25
......@@ -137,14 +137,13 @@ function displayReadInfo(jsonRow)
let mTitle = modal.querySelector('h2#read-info');
mTitle.textContent = "Aperçu de l'actualité n°" + jsonRow.id;
displayBodyOneInfo(modal, jsonRow);
let mBody = modal.querySelector('.modal-body');
displayBodyOneInfo(mBody, jsonRow);
let mFooter = modal.querySelector('.modal-footer');
mFooter.childElementCount > 1 ?
mFooter.removeChild(mFooter.lastChild) : null ;
mFooter.appendChild(displayEditInfo(jsonRow));
mFooter.lastChild.classList.remove('btn-sm');
mFooter.lastChild.addEventListener('click', function() {
$('.read-info-modal').modal('hide'); // en jquery
......@@ -155,26 +154,6 @@ function displayReadInfo(jsonRow)
}
/*
* Affiche une Actualité dans une modale
*/
function displayBodyOneInfo(modal, jsonRow)
{
let mBody = modal.querySelector('.modal-body');
let subtitle = jsonRow.subtitle ? '<h4>' + jsonRow.subtitle + '</h4>' : '';
let publiDate = (typeof jsonRow.posted_at !== 'undefined') ?
'<span class="posted">' + formatStringDateTime(jsonRow.posted_at, true, true, false, false) + '</span>' :
'';
mBody.innerHTML = '<div style="color: ' + jsonRow.color + ';">'
+ '<h2>' + jsonRow.title + '</h2>'
+ subtitle
+ publiDate
+ '<p>' + jsonRow.text + '</p>'
+ '</div>'
;
}
/*
* Affiche un bouton pour éditer une rangée
* @param json object jsonRow
......@@ -261,7 +240,8 @@ function displayInsertInfo(jsonRow)
let mTitle = modal.querySelector('h2#form-lettre-infos-insert');
mTitle.textContent = "Insérer l'actualité # " + infoId + " dans une infolettre";
displayBodyOneInfo(modal, jsonRow);
let mBody = modal.querySelector('.modal-body');
displayBodyOneInfo(mBody, jsonRow);
AJAX('GET', submitURL, function()
{
......
......@@ -35,6 +35,7 @@ function buildItemLettreInfos(jsonRow)
div.classList.add('ui-state-default', 'info');
div.dataset.infoId = jsonRow.id;
displayBodyOneInfo(div, jsonRow);
return div;
}
......
......@@ -235,7 +235,8 @@ function setFormSelectBoolValue(form, select, value)
* Cacher/Montrer un élément si le déclencheur est on/off
* déclencheur: select / input checkbox
*/
function boolTriggerHideTarget(trigger, target) {
function boolTriggerHideTarget(trigger, target)
{
if (trigger.value === '1' || trigger.checked) {
target.classList.remove('hidden');
} else {
......@@ -243,11 +244,31 @@ function boolTriggerHideTarget(trigger, target) {
}
}
/*
* Affiche une Actualité
*/
function displayBodyOneInfo(body, info)
{
let subtitle = info.subtitle ? '<h4>' + info.subtitle + '</h4>' : '';
let publiDate = (typeof info.posted_at !== 'undefined') ?
'<span class="posted">' + formatStringDateTime(info.posted_at, true, true, false, false) + '</span>' :
'';
let color = info.color ? ' style="color: ' + info.color + ';"' : '';
body.innerHTML = '<div class="info"'
+ color + '>'
+ '<h2>' + info.title + '</h2>'
+ subtitle
+ publiDate
+ '<p>' + info.text + '</p>'
+ '</div>'
;
}
/*
* F O N C T I O N S A J A X
*/
function handleErrors(response)
{
let message = response.status + '\n' + response.statusText + '\n\n';
......@@ -267,6 +288,7 @@ function handleErrors(response)
}
alert(message);
}
function AJAX(type, url, successCallBack, post = null)
{
let xhr = new XMLHttpRequest();
......
/*
* ajoute des "0" devant un nombre
* @param charsize est le nombre total de chiffres qu'on veut
......@@ -105,3 +106,4 @@ function sleep (time)
{
return new Promise((resolve) => setTimeout(resolve, time));
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment