Skip to content

Commit

Permalink
Evarisk#1485 Evarisk#1509 [PublicControl] add: responsive view and fi…
Browse files Browse the repository at this point in the history
…x inconsistency
  • Loading branch information
nicolas-eoxia committed Aug 25, 2023
1 parent 0ef9161 commit d536f6c
Show file tree
Hide file tree
Showing 5 changed files with 139 additions and 97 deletions.
2 changes: 1 addition & 1 deletion class/actions_digiquali.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -377,7 +377,7 @@ public function printMainArea(array $parameters): int
global $conf, $mysoc;

// Do something only for the current context.
if (in_array($parameters['currentcontext'], ['publiccontrol', 'publicsurvey'])) {
if (in_array($parameters['currentcontext'], ['publiccontrol', 'publicsurvey', 'publiccontrolhistory'])) {
if (!empty($conf->global->SATURNE_SHOW_COMPANY_LOGO)) {
// Define logo and logoSmall.
$logoSmall = $mysoc->logo_small;
Expand Down
14 changes: 6 additions & 8 deletions core/tpl/digiquali_control_list.tpl.php
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@
$disableSortField = dol_strlen($fromtype) > 0 ? preg_match('/'. $invertedElementElementFields[$fromtype] .'/',$key) : 0;

$cssforfield = (empty($val['csslist']) ? (empty($val['css']) ? 'maxwidthsearch' : $val['css']) : $val['csslist']);
if ($key == 'status') $cssforfield .= ($cssforfield ? ' ' : '').'center';
if (in_array($key, ['days_remaining_before_next_control', 'status', 'verdict'])) $cssforfield .= ($cssforfield ? ' ' : '').'center';
elseif (in_array($val['type'], array('date', 'datetime', 'timestamp'))) $cssforfield .= ($cssforfield ? ' ' : '').'center';
elseif (in_array($val['type'], array('timestamp'))) $cssforfield .= ($cssforfield ? ' ' : '').'nowrap';
elseif (in_array($val['type'], array('double(24,8)', 'double(6,3)', 'integer', 'real', 'price')) && $val['label'] != 'TechnicalID') $cssforfield .= ($cssforfield ? ' ' : '').'right';
Expand Down Expand Up @@ -377,7 +377,7 @@
{
$cssforfield = (empty($val['css']) ? '' : $val['css']);
if (in_array($val['type'], array('date', 'datetime', 'timestamp'))) $cssforfield .= ($cssforfield ? ' ' : '').'center';
elseif ($key == 'status') $cssforfield .= ($cssforfield ? ' ' : '').'center';
elseif (in_array($key, ['days_remaining_before_next_control', 'status', 'verdict'])) $cssforfield .= ($cssforfield ? ' ' : '').'center';

if (in_array($val['type'], array('timestamp'))) $cssforfield .= ($cssforfield ? ' ' : '').'nowrap';
elseif ($key == 'ref') $cssforfield .= ($cssforfield ? ' ' : '').'nowrap';
Expand All @@ -397,17 +397,15 @@
print $sheet->getNomUrl(1);
}
elseif ($key == 'verdict') {
print dol_strlen($object->$key) > 0 ? $object->fields[$key]['arrayofkeyval'][$object->$key] : "N/A";
$verdictColor = $object->$key == 1 ? 'green' : ($object->$key == 2 ? 'red' : 'grey');
print dol_strlen($object->$key) > 0 ? '<div class="wpeo-button button-' . $verdictColor . '">' . $object->fields['verdict']['arrayofkeyval'][(!empty($object->$key)) ? $object->$key : 3] . '</div>' : "N/A";
}
elseif ($key == 'days_remaining_before_next_control') {
if (dol_strlen($object->next_control_date) > 0) {
$nextControl = floor(($object->next_control_date - dol_now('tzuser'))/(3600 * 24));
} else {
$nextControl = 0;
$nextControlColor = $nextControl < 0 ? 'red' : ($nextControl <= 30 ? 'orange' : ($nextControl <= 60 ? 'yellow' : 'green'));
print '<div class="wpeo-button button-'. $nextControlColor .'">' . $nextControl . '</div>';
}
$nextControlColor = $nextControl < 0 ? 'red' : ($nextControl <= 30 ? 'orange' : ($nextControl <= 60 ? 'yellow' : 'green'));

print '<div class="wpeo-button center button-'. $nextControlColor .'">' . $nextControl . '<br>' . $langs->trans('Days') . '</div>';
}
elseif (in_array($key, $revertedElementFields)) {
$linkedElement = $linkNameElementCorrespondance[$elementElementFields[$key]];
Expand Down
118 changes: 54 additions & 64 deletions core/tpl/digiquali_public_control.tpl.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<div class="signature-container" style="max-width: 1000px;">
<div class="wpeo-gridlayout grid-2">
<div style="display: flex; justify-content: center; align-items: center;"><?php echo saturne_show_medias_linked('digiquali', $conf->digiquali->multidir_output[$conf->entity] . '/' . $object->element . '/'. $object->ref . '/photos/', 'small', '', 0, 0, 0, 200, 200, 0, 0, 1, $object->element . '/'. $object->ref . '/photos/', $object, 'photo', 0, 0,0, 1); ?></div>
<div style="display: flex; justify-content: center; align-items: center;"><?php print saturne_show_medias_linked('digiquali', $conf->digiquali->multidir_output[$conf->entity] . '/' . $object->element . '/'. $object->ref . '/photos/', 'small', '', 0, 0, 0, 200, 200, 0, 0, 1, $object->element . '/'. $object->ref . '/photos/', $object, 'photo', 0, 0,0, 1); ?></div>
<div class="informations">
<?php foreach ($elementArray as $linkableObjectType => $linkableObject) {
if ($linkableObject['conf'] > 0 && (!empty($object->linkedObjectsIds[$linkableObject['link_name']]))) {
Expand Down Expand Up @@ -29,73 +29,63 @@
$objectName = $linkedObject->$objectNameField;
} ?>

<div style="margin-bottom: 10px"><strong><?php echo img_picto('', $linkableObject['picto'], 'class="pictofixedwidth"') . $langs->transnoentities($linkableObject['langs']); ?></strong></div>
<div class="wpeo-table table-flex">
<div class="table-row">
<div class="table-cell table-250">
<?php echo img_picto('', $linkableObject['picto'], 'class="pictofixedwidth"') . $objectName . '<br><i class="far fa-check-circle pictofixedwidth"></i>' . $langs->trans('VerdictObject'); ?>
<?php if ($linkedObject->array_options['options_qc_frequency'] > 0 && getDolGlobalInt('SHOW_QC_FREQUENCY_PUBLIC_INTERFACE')) {
print '<br>' . $langs->transnoentities('QcFrequency') . ' : ' . $linkedObject->array_options['options_qc_frequency'];
} ?>
</div>
<div class="table-cell table-end">
<?php if ($object->status == $object::STATUS_DRAFT) {
$verdictObjectColor = 'primary';
$pictoObjectColor = 'hourglass-start';
} elseif ($object->status == $object::STATUS_VALIDATED) {
$verdictObjectColor = 'primary';
$pictoObjectColor = 'hourglass-half';
} elseif (!empty($object->next_control_date) && $object->next_control_date - dol_now() < 0) {
$verdictObjectColor = 'red';
$pictoObjectColor = 'exclamation';
} elseif ($object->verdict > 1) {
$verdictObjectColor = 'red';
$pictoObjectColor = 'exclamation';
} else {
$verdictObjectColor = 'green';
$pictoObjectColor = 'check';
}
print '<div class="wpeo-button button-' . $verdictObjectColor . ' button-square-60"><i class="fas fa-2x fa-' . $pictoObjectColor . ' button-icon"></i></div><br>'; ?>
</div>
</div>
</div>
<div style="margin-bottom: 10px"><strong><?php print img_picto('', $linkableObject['picto'], 'class="pictofixedwidth"') . $langs->transnoentities($linkableObject['langs']); ?></strong></div>
<table class="centpercent" style="background: rgba(0,0,0,.05); padding: 10px;">
<tr><td class="tdoverflowmax200" style="min-width: 125px;">
<?php print img_picto('', $linkableObject['picto'], 'class="pictofixedwidth"') . $objectName . '<br><i class="far fa-check-circle pictofixedwidth"></i>' . $langs->trans('VerdictObject'); ?>
<?php if ($linkedObject->array_options['options_qc_frequency'] > 0 && getDolGlobalInt('SHOW_QC_FREQUENCY_PUBLIC_INTERFACE')) {
print '<br>' . $langs->transnoentities('QcFrequency') . ' : ' . $linkedObject->array_options['options_qc_frequency'];
} ?>
</td>
<td class="tdoverflowmax200 center">
<?php if ($object->status == $object::STATUS_DRAFT) {
$verdictObjectColor = 'primary';
$pictoObjectColor = 'hourglass-start';
} elseif ($object->status == $object::STATUS_VALIDATED) {
$verdictObjectColor = 'primary';
$pictoObjectColor = 'hourglass-half';
} elseif (!empty($object->next_control_date) && $object->next_control_date - dol_now() < 0) {
$verdictObjectColor = 'red';
$pictoObjectColor = 'exclamation';
} elseif ($object->verdict > 1) {
$verdictObjectColor = 'red';
$pictoObjectColor = 'exclamation';
} else {
$verdictObjectColor = 'green';
$pictoObjectColor = 'check';
}
print '<div class="wpeo-button button-' . $verdictObjectColor . ' button-square-60"><i class="fas fa-2x fa-' . $pictoObjectColor . ' button-icon"></i></div><br>'; ?>
</td></tr>
</table>
<?php }
}
} ?>
<br><div style="margin-bottom: 10px"><strong><?php echo $sheet->getNomUrl(1, 'nolink', 0, '', -1, 1); ?></strong></div>
<div class="wpeo-table table-flex">
<div class="table-row">
<div class="table-cell table-200">
<?php echo $object->getNomUrl(1, 'nolink') . '<br>';
echo '<i class="far fa-check-circle"></i> ' . $langs->trans('Verdict') . '<br>';
echo img_picto('', 'calendar', 'class="pictofixedwidth"') . $langs->trans('ControlDate'); ?>
</div>
<div class="table-cell table-end">
<?php $verdictColor = $object->verdict == 1 ? 'green' : ($object->verdict == 2 ? 'red' : 'grey');
if ($object->status < $object::STATUS_LOCKED) {
print $object->getLibStatut(5);
print '<br>';
print '<i class="fas fa-exclamation-triangle"></i> ' . $langs->trans('NonFinalVerdict');
} else {
print '<div class="wpeo-button button-'. $verdictColor .'">' . $object->fields['verdict']['arrayofkeyval'][(!empty($object->verdict)) ? $object->verdict : 3] . '</div>';
}
<br><div style="margin-bottom: 10px"><strong><?php print $sheet->getNomUrl(1, 'nolink', 1, '', -1, 1); ?></strong></div>
<table class="centpercent" style="background: rgba(0,0,0,.05); padding: 10px;">
<tr><td class="tdoverflowmax200">
<?php print $object->getNomUrl(1, 'nolink', 1) . '<br>';
print '<i class="far fa-check-circle"></i> ' . $langs->trans('Verdict') . '<br>';
print '<div style="margin-top: 10px">' . saturne_show_medias_linked('digiquali', $conf->digiquali->multidir_output[$conf->entity] . '/control/' . $object->ref . '/qrcode/', 'small', 1, 0, 0, 0, 70, 70, 0, 0, 1, 'control/'. $object->ref . '/qrcode/', $object, '', 0, 0) . '</div>'; ?>
</td>
<td class="tdoverflowmax200 center">
<?php $verdictColor = $object->verdict == 1 ? 'green' : ($object->verdict == 2 ? 'red' : 'grey');
if ($object->status < $object::STATUS_LOCKED) {
print $object->getLibStatut(5);
print '<br>';
echo dol_print_date($object->control_date, 'day'); ?>
</div>
</div>
<?php if (!empty($object->next_control_date)) : ?>
<div class="table-row" style="background: rgba(0,0,0,.05) !important;">
<div class="table-cell table-300">
<?php echo img_picto('', $object->picto, 'class="pictofixedwidth"') . $langs->trans('NextControl') . '<br>';
echo img_picto('', 'calendar', 'class="pictofixedwidth"') . $langs->trans('NextControlDate'); ?>
</div>
<div class="table-cell table-100 table-end">
<?php echo '<div class="badge badge-status ' . ((($object->next_control_date - dol_now()) > 0) ? 'badge-status4' : 'badge-status8') . '">' . floor(($object->next_control_date - dol_now())/(3600 * 24)) . ' ' . $langs->trans('Days') . '</div><br>';
echo dol_print_date($object->next_control_date, 'day'); ?>
</div>
</div>
<?php endif; ?>
</div>
print '<i class="fas fa-exclamation-triangle"></i> ' . $langs->trans('NonFinalVerdict');
} else {
print '<div class="wpeo-button button-' . $verdictColor . ' button-square-60">' . $object->fields['verdict']['arrayofkeyval'][(!empty($object->verdict)) ? $object->verdict : 3] . '</div>';
}
if (!empty($object->next_control_date)) {
print '<hr><div style="font-size: 8px; font-weight: bold">' . $langs->trans('NextControl') . '<br>';
$nextControl = floor(($object->next_control_date - dol_now())/(3600 * 24));
$nextControlColor = $nextControl < 0 ? 'red' : ($nextControl <= 30 ? 'orange' : ($nextControl <= 60 ? 'yellow' : 'green'));
print dol_print_date($object->next_control_date, 'day') . '<br>' . $langs->trans('Remain') . '<br>';
print '</div>';
print '<div class="wpeo-button button-' . $nextControlColor . '" style="padding: 0; font-size: 10px;">' . $nextControl . ' ' . $langs->trans('Days') . '</div>';
} ?>
</td></tr>
</table>
</div>
</div>
</div>
Expand Down
1 change: 1 addition & 0 deletions langs/fr_FR/digiquali.lang
Original file line number Diff line number Diff line change
Expand Up @@ -364,3 +364,4 @@ ImportFinishWith = L'import des %s a été terminé avec %s err
SelectProducts = Sélectionner un produit
SelectProductsOrServices = Sélectionner un produit / service
Contact = Contact/Adresse
Remain = reste
Loading

0 comments on commit d536f6c

Please sign in to comment.