Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 525 → Rev 526

/trunk/jrest/services/squelettes/doublon_defaut.tpl.html
4,18 → 4,29
<title>Images en doublon - <?=$utilisateur?></title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html, body {
html, body{
margin:0;
padding:0;
height: 100%;
font-family: Arial;
font-size: 12px;}
#carte {
width:100%;
height:100%;
font-size: 12px;
}
ul{
list-style-type:none;
}
.doublon{
float:left;
}
.doublon-liste{
clear:left;
}
</style>
<link rel="stylesheet" type="text/css" href="http://www.tela-botanica.org/commun/jquery/fancybox/1.3.2/jquery.fancybox-1.3.2.css" media="screen" />
<!-- JavaScript -->
<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/1.4.4/jquery-1.4.4.min.js"></script>
<script type="text/javascript" src="http://www.tela-botanica.org/commun/jquery/fancybox/1.3.2/jquery.fancybox-1.3.2.pack.js"></script>
</head>
 
<body>
22,12 → 33,23
<h1>Images en doublon - <?=$utilisateur?></h1>
<ul>
<?php foreach ($doublons as $doublon) : ?>
<li>
<li class="doublon-liste">
<?php foreach ($doublon as $img) : ?>
<?=$img['num']?><img src="<?=$img['url']?>" />
<ul class="doublon">
<li>Image : <?=$img['img_ordre']?></li>
<li>Observation(s) : <?=implode(', ', $img['obs_ordre'])?></li>
<li><img src="<?=$img['url']?>" alt="Id #<?=$img['img_id']?>"/></li>
</ul>
<?php endforeach; ?>
</li>
<?php endforeach; ?>
</ul>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function(){
$('img').lazyload();
});
//]]>
</script>
</body>
</html>
/trunk/jrest/services/CelImageDoublon.php
82,34 → 82,47
 
// Traitement
$doublons = array();
$images_doublons_id = array();
$md5 = array();
foreach ($images as $img) {
if (!isset($md5[$img['ci_md5']])) {
$md5[$img['ci_md5']][] = array('url' => $this->creerUrlImage($img['ci_id_image']), 'num' => $img['ci_ordre']);
$md5[$img['ci_md5']] = array(
'url' => $this->getUrlImage($img['ci_id_image'], 'S'),
'obs_ordre' => array(),
'img_ordre' => $img['ci_ordre'],
'img_id' => $img['ci_id_image']);
} else {
if (!isset($doublons[$img['ci_md5']])) {
$doublons[$img['ci_md5']] = $md5[$img['ci_md5']];
$id_img = $md5[$img['ci_md5']]['img_id'];
$doublons[$img['ci_md5']][$id_img] = $md5[$img['ci_md5']];
$images_doublons_id[] = $this->bdd->quote($id_img);
}
$doublons[$img['ci_md5']][] = array('url' => $this->creerUrlImage($img['ci_id_image']), 'num' => $img['ci_ordre']);
$doublons[$img['ci_md5']][$img['ci_id_image']] = array(
'url' => $this->getUrlImage($img['ci_id_image'], 'S'),
'obs_ordre' => array(),
'img_ordre' => $img['ci_ordre'],
'img_id' => $img['ci_id_image']);
$images_doublons_id[] = $this->bdd->quote($img['ci_id_image']);
}
}
$requete = 'SELECT ci_id_image, ci_nom_original, ci_md5, ordre '.
'FROM cel_images AS cim '.
' LEFT JOIN cel_obs_images AS coi '.
' ON (coi.coi_ce_image = cim.ci_id_image) '.
' LEFT JOIN cel_inventory AS ci '.
' ON (coi.coi_ce_observation = ci.ordre AND coi.coi_ce_utilisateur = ci.identifiant) '.
"WHERE cim.ci_ce_utilisateur = '$utilisateur' ".
' AND cim.ci_id_image IN ('.implode(',', $images_doublons_id).')';
$infos = $this->executerRequete($requete);
foreach ($infos as $info) {
if (isset($doublons[$info['ci_md5']][$info['ci_id_image']]) && ! $this->etreNull($info['ordre'])) {
$doublons[$info['ci_md5']][$info['ci_id_image']]['obs_ordre'][] = $info['ordre'];
}
}
}
 
//echo '<pre>'.print_r($doublons, true).'</pre>';
return $doublons;
}
 
private function creerUrlImage($id_image, $taille = 'S') {
$chemin_sur_serveur = $this->config['cel_db']['url_images'];
$id_image = sprintf('%09s', $id_image);
$id_image = wordwrap($id_image, 3 , '_', true);
 
$niveauDossier = split('_', $id_image);
$dossierNiveau1 = $niveauDossier[0];
$dossierNiveau2 = $niveauDossier[1];
 
$chemin_sur_serveur_final = $chemin_sur_serveur.'/'.$dossierNiveau1.'/'.$dossierNiveau2;
$chemin_img = "$chemin_sur_serveur_final/$taille/{$id_image}_$taille.jpg";
return $chemin_img;
}
}