forum.coppermine-gallery.net

Support => Français (French) => Language Specific Support => cpg1.4.x Français (French) => Topic started by: Pascal YAP on September 07, 2006, 10:30:56 am

Title: [MOD/HACK] Comptabilisez les vues en Mode SlideShow
Post by: Pascal YAP on September 07, 2006, 10:30:56 am
Comptabilisez les vues en Mode SlideShow
Cpg 1.3.x & Cpg 1.4.x

Que fait ce MOD ? :

Il n'est pas prévu dans le code de Coppermine de comptabiliser les images vues pendant un Diaporama !
Pourtant ces images sont effectivement bien vues !
Avec ce MOD, Coppermine décomptera les images vues durant le diaporama.
Les dernières images vues sont également prises en compte (lashits)

1/ Editez include/slideshow.inc.php mais faites une sauvegarde de votre fichier :

Recherchez :
Code: [Select]
<script language="JavaScript" type="text/JavaScript">?
immédiatement après, ajoutez ceci :
Code: [Select]
var x1;

x1 = createRequestObject();

function createRequestObject() {
  var x = false;

  try {
    x = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      x = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      x = false;
    }
  }

  if (!x && typeof XMLHttpRequest != "undefined") {
    x = new XMLHttpRequest();
  }

  return x;
}

function addHit(pid) {
  x1.open('get','addHit.php?pid='+pid);
  x1.onreadystatechange = function() {
    if (x1.readyState == 4) {
      return (x1.responseText);
    }
  }
  x1.send(null);
}

Recherchez :
Code: [Select]
var Pic = new Array() // don't touch thisjuste après la ligne ci-dessus, ajoutez :
Code: [Select]
var Pid = new Array()
Trouvez :
Code: [Select]
echo "Pic[$i] = '" . $picture_url . "'\n";à la suite de quoi vous ajouterez ceci :
Code: [Select]
echo "Pid[$i] = '" . $picture['pid'] . "'\n";
Remplacez (ou mettez en commentaire) ceci :
Code: [Select]
        if (xIE4Up){
           document.images.SlideShow.filters.blendTrans.Play()
        }
par ceci :
Code: [Select]
        if (xIE4Up){
           document.images.SlideShow.filters.blendTrans.Play()
        }
        addHit(Pid[j])


2/ Créez un nouveau fichier nommez-le addHit.php. Vous le placerez à la racine de votre Coppermine.
Code: [Select]
<?php
define
('IN_COPPERMINE'true);

require(
'include/init.inc.php');

if (isset(
$_GET['pid'])) {
  
// Add 1 to hit counter
  
$pid = (int)$_GET['pid'];
  if (!
in_array($pid$USER['liv']) && isset($HTTP_COOKIE_VARS[$CONFIG['cookie_name'] . '_data'])) {
      
add_hit($pid);
      if (
count($USER['liv']) > 4array_shift($USER['liv']);
      
array_push($USER['liv'], $pid);
      
user_save_profile();
  }  
}
?>


PYAP
Title: Re: [MOD/HACK] Comptabilisez les vues en Mode SlideShow
Post by: marcoz71 on July 25, 2007, 10:56:31 pm
super !!!
je l'ai prouvé, mais il comptes en mode slideshow seulement si je souis logged in... c'est possible ?  :-\