Solution Technologies
Управление сайтом без ограничений
<?php
/**
 * XS2:
 *
 * This file is developed by Solutecs, LLC for the purpose of the company
 * and is provided together with XS2 Framework as and inherent part of the
 * system. This file can be used on the terms of License Agreement.
 *
 * +7 (495) 585-0833 / 13 Rusakovskaya street, Moscow 107140 Russia
 *
 * @link http://www.solutecs.com
 * @copyright ©1998-2007 Solutecs, LLC
 * @package XS2-MODCOM
 * @subpackage proc-photorating
 * @version 1.XX
 */



// Опция $cookieVoteLifetime: срок (в секундах), после которого опять можно голосовать
$cookieVoteLifetime = 60*60*24;

$ratingScale = xs2GetNodes(array('NType'=>'score'));

// Если не задан номер снимка, показать галерею
if(!$_THE['PARAMS'][0]) {
  header('location: '.xs2Href(array('mod'=>$_THE['QUE']['MOD'],
                                    'obj'=>$_THE['QUE']['OBJ'],
                                    'met'=>'list')));
}

$nodeId = $_THE['PARAMS'][0];

$photo = xs2GetNode(array('NodId'=>$nodeId));

$voted = array_unique(array_filter(explode('.', $_COOKIE['voted'])));

if ($_POST['action']=='voteForm' && !in_array($nodeId, $voted)) {
  $photo['Total'] += $_POST['Score'];
  ++$photo['Votes'];
  $photo['Rating'] = $photo['Total']/$photo['Votes'];
  if(xs2UpdateNode(array('NodId' =>$nodeId,
                         'NType' =>'photo',
                         'Total'=>$photo['Total'],
                         'Rating'=>$photo['Rating'],
                         'Votes' =>$photo['Votes']))) {
    array_push($voted, $nodeId);
  };
};

if($_POST['action']=='commentForm') {
  xs2InsertNode(array('NName' => 'comment',
                      'Text'  => $_POST['Text'],
                      'NType' => 'comment',
                      'NFlag' => 1,
                      'ParId' => $nodeId));
};

if(in_array($nodeId, $voted))
  $photo['_Voted'] = true;

setcookie('voted', join('.', $voted), time()+$cookieVoteLifetime, '/');

$_HTML->assign('photo', $photo);
$_HTML->assign('ratingScale', $ratingScale);

?>
Copyright ©1998-2008 Солютекс. Все права защищены.
Этот сайт сделан в designLab | Работает на технологии XS2
Условия использования | О защите конфиденциальности