Update 3.1.4

This commit is contained in:
Alchemy
2011-02-24 14:23:54 +01:00
parent b12242f3f4
commit d6c7c7b206
31 changed files with 2373 additions and 2146 deletions

View File

@@ -71,7 +71,7 @@ class answer
$preview = '/include/directprev.php%3F'."bas%3D".$base_id."%26rec%3D".$record_id; $preview = '/include/directprev.php%3F'."bas%3D".$base_id."%26rec%3D".$record_id;
$JS_roll = '<div class="imgTips" style="z-index:99;width:'.((int)$sd["preview"]["width"]+10).'px;height:'.((int)$sd["preview"]["height"]+10).'px" id="rolloverpreview"></div> $JS_roll = '<div class="imgTips" style="z-index:99;width:'.((int)$sd["preview"]["width"]+10).'px;height:'.((int)$sd["preview"]["height"]+10).'px" id="rolloverpreview"></div>
<script type="text/javascript">flowplayer("rolloverpreview", {src:"/include/flowplayer/flowplayer-3.2.2.swf", wmode: "transparent"}, {clip:{url:"'.$preview.'",autoPlay: true,autoBuffering:true,provider: "h264streaming",scaling:"fit"}, onError:function(code,message){getNewVideoToken('.$base_id.', '.$record_id.', this);},plugins: {h264streaming: {url: "/include/flowplayer/flowplayer.pseudostreaming-3.2.2.swf"}}});</script>'; <script type="text/javascript">flowplayer("rolloverpreview", {src:"/include/flowplayer/flowplayer-3.2.6.swf", wmode: "transparent"}, {clip:{url:"'.$preview.'",autoPlay: true,autoBuffering:true,provider: "h264streaming",scaling:"fit"}, onError:function(code,message){getNewVideoToken('.$base_id.', '.$record_id.', this);},plugins: {h264streaming: {url: "/include/flowplayer/flowplayer.pseudostreaming-3.2.6.swf"}}});</script>';
} }
} }
@@ -256,12 +256,12 @@ class answer
$token = md5(time().mt_rand(100000,999999)); $token = md5(time().mt_rand(100000,999999));
$html_view = '<div class="record record_video" style="width:'.$width.'px;height:'.$height.'px;"> $html_view = '<div class="record record_video" style="width:'.$width.'px;height:'.$height.'px;">
<div id="preview_'.$base_id.'_'.$record_id.'_'.$token.'" class="PNB" style=""></div> <div id="rolloverpreview" class="PNB" style=""></div>
<input type="hidden" name="width" value="'.$width.'"/> <input type="hidden" name="width" value="'.$width.'"/>
<input type="hidden" name="height" value="'.$height.'"/> <input type="hidden" name="height" value="'.$height.'"/>
</div><script type="text/javascript">flowplayer("preview_'.$base_id.'_'.$record_id.'_'.$token.'",{src:"/include/flowplayer/flowplayer-3.2.2.swf", wmode: "transparent"},{clip:{url:"'.$preview.'",autoPlay: true,autoBuffering:true,provider: "h264streaming",scaling:"fit"},onError:function(code,message){getNewVideoToken('.$base_id.', '.$record_id.', this);},plugins: {h264streaming: {url: "/include/flowplayer/flowplayer.pseudostreaming-3.2.2.swf"}}});</script>'; </div><script type="text/javascript">flowplayer("rolloverpreview",{src:"/include/flowplayer/flowplayer-3.2.6.swf", wmode: "transparent"},{clip:{url:"'.$preview.'",autoPlay: true,autoBuffering:true,provider: "h264streaming",scaling:"fit"},onError:function(code,message){getNewVideoToken('.$base_id.', '.$record_id.', this);},plugins: {h264streaming: {url: "/include/flowplayer/flowplayer.pseudostreaming-3.2.6.swf"}}});</script>';
$preview = '<div id="FLASHPREVIEW" class="PREVIEW_PIC" style="margin:0 auto;width: 600px; height: 300px;" ></div>'; $preview = '<div id="rolloverpreview" class="PREVIEW_PIC" style="margin:0 auto;width: 600px; height: 300px;" ></div>';
// $width = $height = '200'; // $width = $height = '200';
} }
elseif(in_array($sdMain[$typedoc]['mime'],$gviewer_docs)) elseif(in_array($sdMain[$typedoc]['mime'],$gviewer_docs))
@@ -453,7 +453,6 @@ class answer
$basesettings = phrasea::load_settings($locale); $basesettings = phrasea::load_settings($locale);
$captions = _('reponses::record::Pas de description'); $captions = _('reponses::record::Pas de description');
$xsl = ''; $xsl = '';
@@ -470,8 +469,8 @@ class answer
if($dom_doc->loadXML($xml)) if($dom_doc->loadXML($xml))
{ {
$XPATH_thesaurus = databox::get_xpath_thesaurus($sbas_id); $XPATH_thesaurus = databox::get_xpath_thesaurus($sbas_id);
$XPATH_struct = databox::get_xpath_structure($sbas_id); $XPATH_struct = databox::get_xpath_structure($sbas_id);
$DOM_thFields = array(); $DOM_thFields = array();
if($XPATH_struct) if($XPATH_struct)
@@ -496,16 +495,16 @@ class answer
$context_noacc = noaccent_utf8($context_noacc, PARSED); $context_noacc = noaccent_utf8($context_noacc, PARSED);
if($context_noacc) if($context_noacc)
{ {
$q = "($tbranch)//sy[@w='".$term_noacc."' and @k='".$context_noacc."']"; $q = "//sy[@w='".$term_noacc."' and @k='".$context_noacc."']";
} }
else else
{ {
$q = "($tbranch)//sy[@w='".$term_noacc."' and not(@k)]"; $q = "//sy[@w='".$term_noacc."' and not(@k)]";
} }
$t = ""; $t = "";
foreach($DOM_branchs as $DOM_branch) foreach($DOM_branchs as $DOM_branch)
{ {
$nodes = $XPATH_thesaurus->query($q, $DOM_branch); $nodes = $XPATH_thesaurus->cache_query($q, $DOM_branch, $tbranch);
if($nodes->length > 0) if($nodes->length > 0)
{ {
$lngfound = false; $lngfound = false;
@@ -529,12 +528,12 @@ class answer
$t .= "');return(false);\"]]"; $t .= "');return(false);\"]]";
$t .= $fvalue; $t .= $fvalue;
$t .= "[[/a]]"; $t .= "[[/a]]";
$lngfound = true; $lngfound = true;
break; break;
} }
$synonyms = $XPATH_thesaurus->query("sy[@lng='" . $session->usr_i18 . "']", $node->parentNode); $synonyms = $XPATH_thesaurus->query("sy[@lng='" . $session->usr_i18n . "']", $node->parentNode);
foreach($synonyms as $synonym) foreach($synonyms as $synonym)
{ {
$k = $synonym->getAttribute("k"); $k = $synonym->getAttribute("k");
@@ -554,7 +553,6 @@ class answer
$t .= "');return(false);\"]]"; $t .= "');return(false);\"]]";
$t .= $link; $t .= $link;
$t .= "[[/a]]"; $t .= "[[/a]]";
$lngfound = true; $lngfound = true;
break; break;
} }
@@ -1204,3 +1202,5 @@ class answer
return($value); return($value);
} }
} }

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +1,21 @@
<?php <?php
/*
* This file is part of Phraseanet
*
* (c) 2005-2010 Alchemy
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
class connection class connection
{ {
private $private_connect = false; private $private_connect = false;
private $private_lockedtables; // tableau assoc. des bases lockees private $private_lockedtables; // tableau assoc. des bases lockees
private static $_instance = array(); private static $_instance = array();
private static $_PDO_instance = array();
private static $_query_counter = array(); private static $_query_counter = array();
private $_id; private $_id;
private $_name = false; private $_name = false;
@@ -35,16 +45,58 @@ class connection
} }
} }
// if(!self::$_instance[$name]->isok())
// {
// header("HTTP/1.0 500 Internal Server Error");
// die('<h2>HTTP/1.0 500 Internal Server Error</h2><h2>Can\'t establish database connection<h2>');
// }
return array_key_exists($name, self::$_instance) ? self::$_instance[$name] : false; return array_key_exists($name, self::$_instance) ? self::$_instance[$name] : false;
} }
/**
*
* @param string $name
* @return PDO
*/
public static function getPDOConnection($name = null)
{
if (!isset(self::$_PDO_instance[$name]))
{
$hostname = $port = $user = $password = $dbname = false;
$connection_params = array();
if (trim($name) !== '')
{
$connection_params = phrasea::sbas_params();
}
else
{
require (dirname(__FILE__) . '/../../config/connexion.inc');
$name = 'app_box';
}
if (isset($connection_params[$name]))
{
$hostname = $connection_params[$name]['host'];
$port = $connection_params[$name]['port'];
$user = $connection_params[$name]['user'];
$password = $connection_params[$name]['pwd'];
$dbname = $connection_params[$name]['dbname'];
}
$dsn = 'mysql:dbname=' . $dbname . ';host=' . $hostname.';port='.$port.';';
try
{
self::$_PDO_instance[$name] = new PDO($dsn, $user, $password);
self::$_PDO_instance[$name]->query("SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'");
}
catch (Exception $e)
{
throw new Exception('Connection not avalaible');
}
}
if (array_key_exists($name, self::$_PDO_instance))
return self::$_PDO_instance[$name];
throw new Exception('Connection not avalaible');
}
function __construct($name) function __construct($name)
{ {

File diff suppressed because it is too large Load Diff

View File

@@ -699,7 +699,19 @@ class export
if(GV_modxsendfile) if(GV_modxsendfile)
{ {
$file_xaccel = str_replace(array(GV_X_Accel_Redirect, GV_RootPath.'tmp/download/'), array('/'.GV_X_Accel_Redirect_mount_point.'/', '/download/'), $file); $file_xaccel = str_replace(
array(
GV_X_Accel_Redirect,
GV_RootPath . 'tmp/download/',
GV_RootPath . 'tmp/lazaret/'
)
, array(
'/' . GV_X_Accel_Redirect_mount_point . '/',
'/download/',
'/lazaret/'
)
, $file
);
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");

View File

@@ -3,265 +3,272 @@
class mail class mail
{ {
public static function mail_test($email) public static function mail_test($email)
{ {
$from = array('email'=>GV_defaulmailsenderaddr,'name'=>GV_defaulmailsenderaddr); $from = array('email' => GV_defaulmailsenderaddr, 'name' => GV_defaulmailsenderaddr);
$subject = _('mail:: test d\'envoi d\'email'); $subject = _('mail:: test d\'envoi d\'email');
$message = sprintf(_('Ce mail est un test d\'envoi de mail depuis %s'),GV_ServerName); $message = sprintf(_('Ce mail est un test d\'envoi de mail depuis %s'), GV_ServerName);
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $message, $to, $from); return self::send_mail($subject, $message, $to, $from);
} }
public static function send_validation_results($email,$subject,$from, $message) public static function send_validation_results($email, $subject, $from, $message)
{ {
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $message, $to, $from); return self::send_mail($subject, $message, $to, $from);
} }
public static function hack_alert($email, $body) public static function hack_alert($email, $body)
{ {
$subject = 'Hack on '.GV_homeTitle; $subject = 'Hack on ' . GV_homeTitle;
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function ftp_sent($email, $subject, $body) public static function ftp_sent($email, $subject, $body)
{ {
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function ftp_receive($email, $body) public static function ftp_receive($email, $body)
{ {
$subject = _("task::ftp:Someone has sent some files onto FTP server"); $subject = _("task::ftp:Someone has sent some files onto FTP server");
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function send_documents($email, $url,$from, $message='',$accuse) public static function send_documents($email, $url, $from, $endate_obj, $message='', $accuse)
{ {
$subject = _('export::vous avez recu des documents'); $subject = _('export::vous avez recu des documents');
$body = '<div>'._('Vous avez recu des documents, vous pourrez les telecharger a ladresse suivante ')."</div>\n"; $body = '<div>' . _('Vous avez recu des documents, vous pourrez les telecharger a ladresse suivante ') . "</div>\n";
$body .= "<a title='' href='".$url."'>".$url."</a>\n"; $body .= "<a title='' href='" . $url . "'>" . $url . "</a>\n";
if($message != '') $body .= '<br><div>' .
{ sprintf(
$body .= "<div>---------------------------------------------------</div>\n".$message; _('Attention, ce lien lien est valable jusqu\'au %s'),
} phraseadate::getDate($endate_obj) . ' ' . phraseadate::getTime($endate_obj)
)
. '</div>';
$to = array('email'=>$email,'name'=>$email);
return self::send_mail($subject, $body, $to, $from, array(), $accuse); if ($message != '')
} {
$body .= "<div>---------------------------------------------------</div>\n" . $message;
}
public static function forgot_passord($email, $login, $url) $to = array('email' => $email, 'name' => $email);
{
$subject = _('login:: Forgot your password') ; // Registration order on .
$body = "<div>"._('login:: Quelqu\'un a demande a reinitialiser le mode passe correspondant au login suivant : ') . "</div><div>\n\n" . $login . "</div>\n\n"; return self::send_mail($subject, $body, $to, $from, array(), $accuse);
$body .= "<div>"._('login:: Visitez le lien suivant et suivez les instructions pour continuer, sinon ignorez cet email et il ne se passera rien') . "</div>\n\n" ; }
$body .= "<div>".'<a href="'.$url.'">'.$url.'</a>'."</div>\n" ;
$to = array('email'=>$email,'name'=>$email); public static function forgot_passord($email, $login, $url)
{
$subject = _('login:: Forgot your password'); // Registration order on .
return self::send_mail($subject, $body, $to); $body = "<div>" . _('login:: Quelqu\'un a demande a reinitialiser le mode passe correspondant au login suivant : ') . "</div><div>\n\n" . $login . "</div>\n\n";
} $body .= "<div>" . _('login:: Visitez le lien suivant et suivez les instructions pour continuer, sinon ignorez cet email et il ne se passera rien') . "</div>\n\n";
$body .= "<div>" . '<a href="' . $url . '">' . $url . '</a>' . "</div>\n";
$to = array('email' => $email, 'name' => $email);
public static function register_confirm($email, $accept, $deny) return self::send_mail($subject, $body, $to);
{ }
$subject = sprintf(_('login::register:email: Votre compte %s'), GV_homeTitle); public static function register_confirm($email, $accept, $deny)
{
$body = '<div>'._('login::register:email: Voici un compte rendu du traitement de vos demandes d\'acces :')."</div>\n"; $subject = sprintf(_('login::register:email: Votre compte %s'), GV_homeTitle);
if($accept != '') $body = '<div>' . _('login::register:email: Voici un compte rendu du traitement de vos demandes d\'acces :') . "</div>\n";
{
$body .= "<br/>\n<div>"._('login::register:email: Vous avez ete accepte sur les collections suivantes : ')."</div>\n<ul>".$accept."</ul>\n";
}
if($deny != '')
{
$body .= "<br/>\n<div>"._('login::register:email: Vous avez ete refuse sur les collections suivantes : ')."</div>\n<ul>".$deny."</ul>\n";
}
$to = array('email'=>$email,'name'=>$email); if ($accept != '')
{
$body .= "<br/>\n<div>" . _('login::register:email: Vous avez ete accepte sur les collections suivantes : ') . "</div>\n<ul>" . $accept . "</ul>\n";
}
if ($deny != '')
{
$body .= "<br/>\n<div>" . _('login::register:email: Vous avez ete refuse sur les collections suivantes : ') . "</div>\n<ul>" . $deny . "</ul>\n";
}
return self::send_mail($subject, $body, $to); $to = array('email' => $email, 'name' => $email);
}
return self::send_mail($subject, $body, $to);
}
public static function register_user($email, $auto, $others) public static function register_user($email, $auto, $others)
{ {
$subject = sprintf(_('login::register:email: Votre compte %s'),GV_homeTitle); $subject = sprintf(_('login::register:email: Votre compte %s'), GV_homeTitle);
$body = "<div>"._('login::register:Votre inscription a ete prise en compte')."</div>\n"; $body = "<div>" . _('login::register:Votre inscription a ete prise en compte') . "</div>\n";
if($auto != '') if ($auto != '')
{ {
$body .= "<br/>\n<div>"._('login::register: vous avez des a present acces aux collections suivantes : ')."</div>\n<ul>".$auto."</ul>\n"; $body .= "<br/>\n<div>" . _('login::register: vous avez des a present acces aux collections suivantes : ') . "</div>\n<ul>" . $auto . "</ul>\n";
} }
if($others != '') if ($others != '')
{ {
$body .= "<br/>\n<div>"._('login::register: vos demandes concernat les collections suivantes sont sujettes a approbation d\'un administrateur')."</div>\n<ul>".$others."</ul>\n"; $body .= "<br/>\n<div>" . _('login::register: vos demandes concernat les collections suivantes sont sujettes a approbation d\'un administrateur') . "</div>\n<ul>" . $others . "</ul>\n";
$body .= "<br/>\n<div>"._('login::register : vous serez avertis par email lorsque vos demandes seront traitees')."</div>\n"; $body .= "<br/>\n<div>" . _('login::register : vous serez avertis par email lorsque vos demandes seront traitees') . "</div>\n";
} }
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function reset_email($email,$usr_id) public static function reset_email($email, $usr_id)
{ {
$date = new DateTime('1 day'); $date = new DateTime('1 day');
$date = phraseadate::format_mysql($date); $date = phraseadate::format_mysql($date);
$token = random::getUrlToken('email',$usr_id,$date,$email); $token = random::getUrlToken('email', $usr_id, $date, $email);
$url = GV_ServerName.'login/reset-email.php?token='.$token; $url = GV_ServerName . 'login/reset-email.php?token=' . $token;
$subject = _('login::register: sujet email : confirmation de votre adresse email'); $subject = _('login::register: sujet email : confirmation de votre adresse email');
$body = "<div>"._('admin::compte-utilisateur: email changement de mot d\'email Bonjour, nous avons bien recu votre demande de changement d\'adresse e-mail. Pour la confirmer, veuillez suivre le lien qui suit. SI vous recevez ce mail sans l\'avoir sollicite, merci de le detruire et de l\'ignorer.')."</div>\n"; $body = "<div>" . _('admin::compte-utilisateur: email changement de mot d\'email Bonjour, nous avons bien recu votre demande de changement d\'adresse e-mail. Pour la confirmer, veuillez suivre le lien qui suit. SI vous recevez ce mail sans l\'avoir sollicite, merci de le detruire et de l\'ignorer.') . "</div>\n";
$body .= '<div><a href="'.$url.'">'.$url.'</a></div>\n'; $body .= '<div><a href="' . $url . '">' . $url . '</a></div>\n';
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function mail_confirm_registered($email) public static function mail_confirm_registered($email)
{ {
$subject = _('login::register: sujet email : confirmation de votre adresse email'); $subject = _('login::register: sujet email : confirmation de votre adresse email');
$body = "<div>"._('login::register: merci d\'avoir confirme votre adresse email')."</div>\n"; $body = "<div>" . _('login::register: merci d\'avoir confirme votre adresse email') . "</div>\n";
$body .= "<br/><div>"._('login::register: vous pouvez maintenant vous connecter a l\'adresse suivante : ')."</div>\n"; $body .= "<br/><div>" . _('login::register: vous pouvez maintenant vous connecter a l\'adresse suivante : ') . "</div>\n";
$body .= "<div><a href='".GV_ServerName."' target='_blank'>".GV_ServerName."</a></div>\n"; $body .= "<div><a href='" . GV_ServerName . "' target='_blank'>" . GV_ServerName . "</a></div>\n";
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function mail_confirm_unregistered($email, $others) public static function mail_confirm_unregistered($email, $others)
{ {
$subject = _('login::register: sujet email : confirmation de votre adresse email'); $subject = _('login::register: sujet email : confirmation de votre adresse email');
$body = "<div>"._('login::register: merci d\'avoir confirme votre adresse email')."</div>\n"; $body = "<div>" . _('login::register: merci d\'avoir confirme votre adresse email') . "</div>\n";
$body .= "<br/>\n<div>"._('login::register: vous devez attendre la confirmation d\'un administrateur ; vos demandes sur les collections suivantes sont toujours en attente : ')."</div>\n<ul>".$others."</ul>\n"; $body .= "<br/>\n<div>" . _('login::register: vous devez attendre la confirmation d\'un administrateur ; vos demandes sur les collections suivantes sont toujours en attente : ') . "</div>\n<ul>" . $others . "</ul>\n";
$body .= "<br/>\n<div>"._('login::register : vous serez avertis par email lorsque vos demandes seront traitees')."</div>\n"; $body .= "<br/>\n<div>" . _('login::register : vous serez avertis par email lorsque vos demandes seront traitees') . "</div>\n";
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function mail_confirmation($email,$usr_id) public static function mail_confirmation($email, $usr_id)
{ {
$expire = new DateTime('+3 days'); $expire = new DateTime('+3 days');
$expire = phraseadate::format_mysql($expire); $expire = phraseadate::format_mysql($expire);
$token = random::getUrlToken('password',$usr_id,$expire,$email); $token = random::getUrlToken('password', $usr_id, $expire, $email);
$subject = _('login::register: sujet email : confirmation de votre adresse email'); $subject = _('login::register: sujet email : confirmation de votre adresse email');
$body = "<div>"._('login::register: email confirmation email Pour valider votre inscription a la base de donnees, merci de confirmer votre e-mail en suivant le lien ci-dessous.')."</div>\n"; $body = "<div>" . _('login::register: email confirmation email Pour valider votre inscription a la base de donnees, merci de confirmer votre e-mail en suivant le lien ci-dessous.') . "</div>\n";
$body .= "<br/>\n<div><a href='".GV_ServerName."register-confirm=".$token."' target='_blank'>".GV_ServerName."register-confirm=".$token."</a></div>\n"; $body .= "<br/>\n<div><a href='" . GV_ServerName . "register-confirm=" . $token . "' target='_blank'>" . GV_ServerName . "register-confirm=" . $token . "</a></div>\n";
$to = array('email'=>$email,'name'=>$email); $to = array('email' => $email, 'name' => $email);
return self::send_mail($subject, $body, $to); return self::send_mail($subject, $body, $to);
} }
public static function send_mail($subject, $body, $to, $from=false, $files=array(), $reading_confirm_to=false)
{
require_once(GV_RootPath . 'lib/PHPMailer_v5.1/class.phpmailer.php');
public static function send_mail($subject,$body,$to,$from=false,$files=array(),$reading_confirm_to=false) if (!isset($to['email']) || !PHPMailer::ValidateAddress($to['email']))
{ return false;
require_once(GV_RootPath.'lib/PHPMailer_v5.1/class.phpmailer.php');
if(!isset($to['email']) || !PHPMailer::ValidateAddress($to['email'])) $mail = new PHPMailer();
return false;
$mail = new PHPMailer(); $body = eregi_replace("[\]", '', $body);
$body = eregi_replace("[\]",'',$body); $body .= "<br/><br/><br/><br/>\n\n\n\n";
$body .= '<div style="font-style:italic;">' . _('phraseanet::signature automatique des notifications par mail, infos a l\'url suivante') . "</div>\n";
$body .= '<div><a href="' . GV_ServerName . '">' . GV_ServerName . "</a></div>\n";
$body = '<body>' . $body . '</body>';
$body .= "<br/><br/><br/><br/>\n\n\n\n"; try
$body .= '<div style="font-style:italic;">'._('phraseanet::signature automatique des notifications par mail, infos a l\'url suivante')."</div>\n"; {
$body .= '<div><a href="'.GV_ServerName.'">'.GV_ServerName."</a></div>\n"; $mail->CharSet = 'utf-8';
$body = '<body>'.$body.'</body>'; $mail->Encoding = 'base64'; //'quoted-printable';
try { if (GV_smtp)
$mail->CharSet = 'utf-8'; {
$mail->Encoding = 'base64';//'quoted-printable'; $mail->IsSMTP();
if (GV_smtp_host != '')
if(GV_smtp) $mail->Host = GV_smtp_host;
{
$mail->IsSMTP();
if(GV_smtp_host != '')
$mail->Host = GV_smtp_host;
// $mail->SMTPDebug = 2; // enables SMTP debug information (for testing) // $mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
if(GV_smtp_auth) if (GV_smtp_auth)
{ {
$mail->SMTPAuth = true; $mail->SMTPAuth = true;
if(GV_smtp_secure === true) if (GV_smtp_secure === true)
{ {
$mail->SMTPSecure = "ssl"; $mail->SMTPSecure = "ssl";
} }
$mail->Host = GV_smtp_host; $mail->Host = GV_smtp_host;
$mail->Port = GV_smtp_port; $mail->Port = GV_smtp_port;
$mail->Username = GV_smtp_user; $mail->Username = GV_smtp_user;
$mail->Password = GV_smtp_password; $mail->Password = GV_smtp_password;
} }
} }
if($from && trim($from['email']) != '') if ($from && trim($from['email']) != '')
$mail->AddReplyTo($from['email'],$from['name']); $mail->AddReplyTo($from['email'], $from['name']);
$mail->AddAddress($to['email'], $to['name']); $mail->AddAddress($to['email'], $to['name']);
$mail->SetFrom(GV_defaulmailsenderaddr, GV_homeTitle); $mail->SetFrom(GV_defaulmailsenderaddr, GV_homeTitle);
$mail->Subject = $subject; $mail->Subject = $subject;
$mail->AltBody = html_entity_decode(strip_tags($body),ENT_QUOTES,'UTF-8'); $mail->AltBody = html_entity_decode(strip_tags($body), ENT_QUOTES, 'UTF-8');
if($reading_confirm_to) if ($reading_confirm_to)
{ {
$mail->ConfirmReadingTo = $reading_confirm_to; $mail->ConfirmReadingTo = $reading_confirm_to;
} }
$mail->MsgHTML(p4string::cleanTags($body)); $mail->MsgHTML(p4string::cleanTags($body));
foreach($files as $f) foreach ($files as $f)
{ {
$mail->AddAttachment($f); // attachment $mail->AddAttachment($f); // attachment
} }
$mail->Send();
return true;
}
catch (phpmailerException $e)
{
return $e->errorMessage();
}
catch (Exception $e)
{
return $e->getMessage();
}
}
$mail->Send();
return true;
}
catch (phpmailerException $e)
{
return $e->errorMessage();
}
catch (Exception $e)
{
return $e->getMessage();
}
}
} }

View File

@@ -37,7 +37,7 @@ class phraseadate
$diff = $compareTo->format('U') - $date->format('U'); $diff = $compareTo->format('U') - $date->format('U');
$dayDiff = floor($diff / 86400); $dayDiff = floor($diff / 86400);
if(is_nan($dayDiff) || $dayDiff < 0) { if(is_nan($dayDiff)) {
return ''; return '';
} }

View File

@@ -247,7 +247,6 @@ class query
$dstatus = status::getDisplayStatus(); $dstatus = status::getDisplayStatus();
$array_icons = array( $array_icons = array(
'flash' => '', 'flash' => '',
'document' => '', 'document' => '',
@@ -309,6 +308,7 @@ class query
$thumbnail = answer::getThumbnail($session->ses_id, $data["base_id"], $data["record_id"],GV_zommPrev_rollover_clientAnswer); $thumbnail = answer::getThumbnail($session->ses_id, $data["base_id"], $data["record_id"],GV_zommPrev_rollover_clientAnswer);
if($thumbnail['sha256']) if($thumbnail['sha256'])
$rsScreen[$irec]['sha256'] = $thumbnail['sha256']; $rsScreen[$irec]['sha256'] = $thumbnail['sha256'];
@@ -322,6 +322,7 @@ class query
if(isset($data) && isset($data["status"])) if(isset($data) && isset($data["status"]))
{ {

View File

@@ -453,6 +453,7 @@ function getPreviewWindow($usr,$ses,$lng,$env,$pos,$contId,$roll)
$prev = answer::get_preview($bas,$rec,$isFullyPublic); $prev = answer::get_preview($bas,$rec,$isFullyPublic);
$preview_html = $prev['html'];
$preview = $prev['preview']; $preview = $prev['preview'];
$flashcontent = $prev['flashcontent']; $flashcontent = $prev['flashcontent'];
$width = $prev['width']; $width = $prev['width'];
@@ -678,6 +679,7 @@ function getPreviewWindow($usr,$ses,$lng,$env,$pos,$contId,$roll)
return p4string::jsonencode(array( return p4string::jsonencode(array(
"prev"=>$preview "prev"=>$preview
,"prev_html"=>$preview_html
,"flashcontent"=>$flashcontent ,"flashcontent"=>$flashcontent
,"desc"=>p4string::entitydecode($caption) ,"desc"=>p4string::entitydecode($caption)
,"width"=>$width ,"width"=>$width

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<record> <record>
<path>{{datapathnoweb}}{{basename}}/documents</path> <path>{{datapathnoweb}}{{basename}}/documents</path>
<subdefs> <subdefs>
<subdefgroup name="image"> <subdefgroup name="image">
<subdef class="preview" name="preview" downloadable="true"> <subdef class="preview" name="preview" downloadable="true">
<path>{{datapathnoweb}}{{basename}}/subdefs</path> <path>{{datapathnoweb}}{{basename}}/subdefs</path>
@@ -13,9 +13,9 @@
<quality>75</quality> <quality>75</quality>
<meta>yes</meta> <meta>yes</meta>
<baseurl></baseurl> <baseurl></baseurl>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<label lang="fr">Prévisualisation</label> <label lang="fr">Prévisualisation</label>
<label lang="en">Preview</label> <label lang="en">Preview</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnail" downloadable="true"> <subdef class="thumbnail" name="thumbnail" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
@@ -25,10 +25,10 @@
<strip>yes</strip> <strip>yes</strip>
<quality>75</quality> <quality>75</quality>
<meta>no</meta> <meta>no</meta>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<baseurl>{{dataurl}}{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}{{basename}}/subdefs</baseurl>
<label lang="fr">Imagette</label> <label lang="fr">Imagette</label>
<label lang="en">Thumbnail</label> <label lang="en">Thumbnail</label>
</subdef> </subdef>
</subdefgroup> </subdefgroup>
@@ -36,171 +36,187 @@
<subdef class="preview" name="preview" downloadable="true"> <subdef class="preview" name="preview" downloadable="true">
<path>{{datapathnoweb}}{{basename}}/subdefs</path> <path>{{datapathnoweb}}{{basename}}/subdefs</path>
<size>800</size> <size>800</size>
<mediatype>video</mediatype> <mediatype>video</mediatype>
<writeDatas>yes</writeDatas> <writeDatas>yes</writeDatas>
<baseurl></baseurl> <baseurl></baseurl>
<acodec>faac</acodec> <acodec>faac</acodec>
<vcodec>libx264</vcodec> <vcodec>libx264</vcodec>
<bitrate>1000</bitrate> <bitrate>1000</bitrate>
<threads>8</threads> <threads>8</threads>
<fps>15</fps> <fps>15</fps>
<label lang="fr">Prévisualisation</label> <label lang="fr">Prévisualisation</label>
<label lang="en">Preview</label> <label lang="en">Preview</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnailGIF" downloadable="true"> <subdef class="thumbnail" name="thumbnailGIF" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<size>200</size> <size>200</size>
<mediatype>gif</mediatype> <mediatype>gif</mediatype>
<delay>1</delay> <delay>1</delay>
<writeDatas>no</writeDatas> <writeDatas>no</writeDatas>
<baseurl>{{dataurl}}/{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}/{{basename}}/subdefs</baseurl>
<label lang="fr">Animation GIF</label> <label lang="fr">Animation GIF</label>
<label lang="en">GIF Animation</label> <label lang="en">GIF Animation</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnail" downloadable="true"> <subdef class="thumbnail" name="thumbnail" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<size>200</size> <size>200</size>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<writeDatas>no</writeDatas> <writeDatas>no</writeDatas>
<baseurl>{{dataurl}}{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}{{basename}}/subdefs</baseurl>
<label lang="fr">Imagette</label> <label lang="fr">Imagette</label>
<label lang="en">Thumbnail</label> <label lang="en">Thumbnail</label>
</subdef> </subdef>
</subdefgroup> </subdefgroup>
<subdefgroup name="audio"> <subdefgroup name="audio">
<subdef class="preview" name="preview" downloadable="true"> <subdef class="preview" name="preview" downloadable="true">
<path>{{datapathnoweb}}{{basename}}/subdefs</path> <path>{{datapathnoweb}}{{basename}}/subdefs</path>
<mediatype>audio</mediatype> <mediatype>audio</mediatype>
<writeDatas>yes</writeDatas> <writeDatas>yes</writeDatas>
<baseurl></baseurl> <baseurl></baseurl>
<label lang="fr">Prévisualisation</label> <label lang="fr">Prévisualisation</label>
<label lang="en">Preview</label> <label lang="en">Preview</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnail" downloadable="true"> <subdef class="thumbnail" name="thumbnail" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<writeDatas>no</writeDatas> <writeDatas>no</writeDatas>
<baseurl>{{dataurl}}{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}{{basename}}/subdefs</baseurl>
<label lang="fr">Imagette</label> <label lang="fr">Imagette</label>
<label lang="en">Thumbnail</label> <label lang="en">Thumbnail</label>
</subdef> </subdef>
</subdefgroup> </subdefgroup>
</subdefs> </subdefs>
<description> <description>
<!-- 2:5 --> <!-- 2:5 -->
<Object src="/rdf:RDF/rdf:Description/IPTC:ObjectName" /> <Object src="/rdf:RDF/rdf:Description/IPTC:ObjectName" />
<!-- 2:15 --> <!-- 2:15 -->
<Category src="/rdf:RDF/rdf:Description/IPTC:Category"/> <Category src="/rdf:RDF/rdf:Description/IPTC:Category"/>
<!-- 2:20 --> <!-- 2:20 -->
<SupplCategory src="/rdf:RDF/rdf:Description/IPTC:SupplementalCategories"/> <SupplCategory src="/rdf:RDF/rdf:Description/IPTC:SupplementalCategories"/>
<!-- 2:25 --> <!-- 2:25 -->
<Keywords src="/rdf:RDF/rdf:Description/IPTC:Keywords" multi="1"/> <Keywords src="/rdf:RDF/rdf:Description/IPTC:Keywords" multi="1"/>
<!-- 2:40 --> <!-- 2:40 -->
<SpecialInstruct src="/rdf:RDF/rdf:Description/IPTC:SpecialInstructions"/> <SpecialInstruct src="/rdf:RDF/rdf:Description/IPTC:SpecialInstructions"/>
<!-- 2:55 --> <!-- 2:55 -->
<Date src="/rdf:RDF/rdf:Description/IPTC:DateCreated" type="date" regdate="1" /> <Date src="/rdf:RDF/rdf:Description/IPTC:DateCreated" type="date" regdate="1" />
<!-- 2:80 --> <!-- 2:80 -->
<Byline src="/rdf:RDF/rdf:Description/IPTC:By-line"/> <Byline src="/rdf:RDF/rdf:Description/IPTC:By-line"/>
<!-- 2:85 --> <!-- 2:85 -->
<BylineTitle src="/rdf:RDF/rdf:Description/IPTC:By-lineTitle"/> <BylineTitle src="/rdf:RDF/rdf:Description/IPTC:By-lineTitle"/>
<!-- 2:90 --> <!-- 2:90 -->
<City src="/rdf:RDF/rdf:Description/IPTC:City" /> <City src="/rdf:RDF/rdf:Description/IPTC:City" />
<!-- 2:95 --> <!-- 2:95 -->
<Province src="/rdf:RDF/rdf:Description/IPTC:Province-State" /> <Province src="/rdf:RDF/rdf:Description/IPTC:Province-State" />
<!-- 2:101 --> <!-- 2:101 -->
<Country src="/rdf:RDF/rdf:Description/IPTC:Country-PrimaryLocationName" /> <Country src="/rdf:RDF/rdf:Description/IPTC:Country-PrimaryLocationName" />
<!-- 2:103 --> <!-- 2:103 -->
<OriginalRef src="/rdf:RDF/rdf:Description/IPTC:OriginalTransmissionReference" /> <OriginalRef src="/rdf:RDF/rdf:Description/IPTC:OriginalTransmissionReference" />
<!-- 2:105 --> <!-- 2:105 -->
<Headline src="/rdf:RDF/rdf:Description/IPTC:Headline" report="1" regname="1" /> <Headline src="/rdf:RDF/rdf:Description/IPTC:Headline" report="1" regname="1" />
<!-- 2:110 --> <!-- 2:110 -->
<Credit src="/rdf:RDF/rdf:Description/IPTC:Credit" report="1" /> <Credit src="/rdf:RDF/rdf:Description/IPTC:Credit" report="1" />
<!-- 2:115 --> <!-- 2:115 -->
<Source src="/rdf:RDF/rdf:Description/IPTC:Source" /> <Source src="/rdf:RDF/rdf:Description/IPTC:Source" />
<!-- 2:120 --> <!-- 2:120 -->
<Caption src="/rdf:RDF/rdf:Description/IPTC:Caption-Abstract" regdesc="1" /> <Caption src="/rdf:RDF/rdf:Description/IPTC:Caption-Abstract" regdesc="1" />
<!-- 2:122 --> <!-- 2:122 -->
<CaptionWriter src="/rdf:RDF/rdf:Description/IPTC:Writer-Editor" /> <CaptionWriter src="/rdf:RDF/rdf:Description/IPTC:Writer-Editor" />
<!-- 2:25 --> <!-- 2:25 -->
<Longitude src="/rdf:RDF/rdf:Description/GPS:GPSLongitude" readonly="1"/> <Longitude src="/rdf:RDF/rdf:Description/GPS:GPSLongitude" readonly="1"/>
<!-- 2:25 --> <!-- 2:25 -->
<Latitude src="/rdf:RDF/rdf:Description/GPS:GPSLatitude" readonly="1"/> <Latitude src="/rdf:RDF/rdf:Description/GPS:GPSLatitude" readonly="1"/>
<!-- 2:25 --> <!-- 2:25 -->
<CameraModel src="/rdf:RDF/rdf:Description/IFD0:Model" readonly="1"/> <CameraModel src="/rdf:RDF/rdf:Description/IFD0:Model" readonly="1"/>
<!-- Technical Fields --> <!-- Technical Fields -->
<FileName src="tf-filename" readonly="1" type="text" /> <FileName src="tf-filename" readonly="1" type="text" />
<FilePath src="tf-filepath" index="0" readonly="1" type="text" /> <FilePath src="tf-filepath" index="0" readonly="1" type="text" />
<Recordid src="tf-recordid" index="0" readonly="1" type="number" /> <Recordid src="tf-recordid" index="0" readonly="1" type="number" />
<MimeType src="tf-mimetype" index="0" readonly="1" type="text" /> <MimeType src="tf-mimetype" index="0" readonly="1" type="text" />
<Size src="tf-size" index="0" readonly="1" type="number" /> <Size src="tf-size" index="0" readonly="1" type="number" />
<Extension src="tf-extension" index="0" readonly="1" type="text" /> <Extension src="tf-extension" index="0" readonly="1" type="text" />
<Width src="tf-width" index="0" readonly="1" type="number" /> <Width src="tf-width" index="0" readonly="1" type="number" />
<Height src="tf-height" index="0" readonly="1" type="number" /> <Height src="tf-height" index="0" readonly="1" type="number" />
<Bits src="tf-bits" index="0" readonly="1" type="number" /> <Bits src="tf-bits" index="0" readonly="1" type="number" />
<Channels src="tf-channels" index="0" readonly="1" type="number" /> <Channels src="tf-channels" index="0" readonly="1" type="number" />
</description> </description>
<statbits> <statbits>
<bit n="4">Online</bit> <bit n="4">Online</bit>
</statbits> </statbits>
<!-- ==== Debut layout homeThumbPubli=== --> <!-- ==== Debut layout homeThumbPubli=== -->
<layout name="homeThumbPubli" skin="" type=""> <layout name="homeThumbPubli" skin="" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
<layout name="homeThumbPubli" skin="fr" type=""> <layout name="homeThumbPubli" skin="fr" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
<!-- ==== Fin layout homeThumbPubli === --> <!-- ==== Fin layout homeThumbPubli === -->
<!-- ==== Debut layout homePrevPubli === --> <!-- ==== Debut layout homePrevPubli === -->
<layout name="homePrevPubli" skin="" type=""> <layout name="homePrevPubli" skin="" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
<layout name="homePrevPubli" skin="fr" type=""> <layout name="homePrevPubli" skin="fr" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
</record> </record>

View File

@@ -1,208 +1,224 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<record> <record>
<path>{{datapathnoweb}}{{basename}}/documents</path> <path>{{datapathnoweb}}{{basename}}/documents</path>
<subdefs> <subdefs>
<subdefgroup name="image"> <subdefgroup name="image">
<subdef class="preview" name="preview" downloadable="true"> <subdef class="preview" name="preview" downloadable="true">
<path>{{datapathnoweb}}{{basename}}/subdefs</path> <path>{{datapathnoweb}}{{basename}}/subdefs</path>
<size>800</size> <size>800</size>
<method>resample</method> <method>resample</method>
<dpi>72</dpi> <dpi>72</dpi>
<strip>no</strip> <strip>no</strip>
<quality>75</quality> <quality>75</quality>
<meta>yes</meta> <meta>yes</meta>
<baseurl></baseurl> <baseurl></baseurl>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<label lang="fr">Prévisualisation</label> <label lang="fr">Prévisualisation</label>
<label lang="en">Preview</label> <label lang="en">Preview</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnail" downloadable="true"> <subdef class="thumbnail" name="thumbnail" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<size>200</size> <size>200</size>
<method>resample</method> <method>resample</method>
<dpi>72</dpi> <dpi>72</dpi>
<strip>yes</strip> <strip>yes</strip>
<quality>75</quality> <quality>75</quality>
<meta>no</meta> <meta>no</meta>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<baseurl>{{dataurl}}{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}{{basename}}/subdefs</baseurl>
<label lang="fr">Imagette</label> <label lang="fr">Imagette</label>
<label lang="en">Thumbnail</label> <label lang="en">Thumbnail</label>
</subdef> </subdef>
</subdefgroup> </subdefgroup>
<subdefgroup name="video"> <subdefgroup name="video">
<subdef class="preview" name="preview" downloadable="true"> <subdef class="preview" name="preview" downloadable="true">
<path>{{datapathnoweb}}{{basename}}/subdefs</path> <path>{{datapathnoweb}}{{basename}}/subdefs</path>
<size>800</size> <size>800</size>
<mediatype>video</mediatype> <mediatype>video</mediatype>
<writeDatas>yes</writeDatas> <writeDatas>yes</writeDatas>
<baseurl></baseurl> <baseurl></baseurl>
<acodec>faac</acodec> <acodec>faac</acodec>
<vcodec>libx264</vcodec> <vcodec>libx264</vcodec>
<bitrate>1000</bitrate> <bitrate>1000</bitrate>
<threads>8</threads> <threads>8</threads>
<fps>15</fps> <fps>15</fps>
<label lang="fr">Prévisualisation</label> <label lang="fr">Prévisualisation</label>
<label lang="en">Preview</label> <label lang="en">Preview</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnailGIF" downloadable="true"> <subdef class="thumbnail" name="thumbnailGIF" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<size>200</size> <size>200</size>
<mediatype>gif</mediatype> <mediatype>gif</mediatype>
<delay>1</delay> <delay>1</delay>
<writeDatas>no</writeDatas> <writeDatas>no</writeDatas>
<baseurl>{{dataurl}}/{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}/{{basename}}/subdefs</baseurl>
<label lang="fr">Animation GIF</label> <label lang="fr">Animation GIF</label>
<label lang="en">GIF Animation</label> <label lang="en">GIF Animation</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnail" downloadable="true"> <subdef class="thumbnail" name="thumbnail" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<size>200</size> <size>200</size>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<writeDatas>no</writeDatas> <writeDatas>no</writeDatas>
<baseurl>{{dataurl}}{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}{{basename}}/subdefs</baseurl>
<label lang="fr">Imagette</label> <label lang="fr">Imagette</label>
<label lang="en">Thumbnail</label> <label lang="en">Thumbnail</label>
</subdef> </subdef>
</subdefgroup> </subdefgroup>
<subdefgroup name="audio"> <subdefgroup name="audio">
<subdef class="preview" name="preview" downloadable="true"> <subdef class="preview" name="preview" downloadable="true">
<path>{{datapathnoweb}}{{basename}}/subdefs</path> <path>{{datapathnoweb}}{{basename}}/subdefs</path>
<mediatype>audio</mediatype> <mediatype>audio</mediatype>
<writeDatas>yes</writeDatas> <writeDatas>yes</writeDatas>
<baseurl></baseurl> <baseurl></baseurl>
<label lang="fr">Prévisualisation</label> <label lang="fr">Prévisualisation</label>
<label lang="en">Preview</label> <label lang="en">Preview</label>
</subdef> </subdef>
<subdef class="thumbnail" name="thumbnail" downloadable="true"> <subdef class="thumbnail" name="thumbnail" downloadable="true">
<path>{{datapathweb}}{{basename}}/subdefs</path> <path>{{datapathweb}}{{basename}}/subdefs</path>
<mediatype>image</mediatype> <mediatype>image</mediatype>
<writeDatas>no</writeDatas> <writeDatas>no</writeDatas>
<baseurl>{{dataurl}}{{basename}}/subdefs</baseurl> <baseurl>{{dataurl}}{{basename}}/subdefs</baseurl>
<label lang="fr">Imagette</label> <label lang="fr">Imagette</label>
<label lang="en">Thumbnail</label> <label lang="en">Thumbnail</label>
</subdef> </subdef>
</subdefgroup> </subdefgroup>
</subdefs> </subdefs>
<description> <description>
<!-- 2:5 --> <!-- 2:5 -->
<Objet src="/rdf:RDF/rdf:Description/IPTC:ObjectName" /> <Objet src="/rdf:RDF/rdf:Description/IPTC:ObjectName" />
<!-- 2:15 --> <!-- 2:15 -->
<Categorie src="/rdf:RDF/rdf:Description/IPTC:Category"/> <Categorie src="/rdf:RDF/rdf:Description/IPTC:Category"/>
<!-- 2:20 --> <!-- 2:20 -->
<AutresCategories src="/rdf:RDF/rdf:Description/IPTC:SupplementalCategories"/> <AutresCategories src="/rdf:RDF/rdf:Description/IPTC:SupplementalCategories"/>
<!-- 2:25 --> <!-- 2:25 -->
<MotsCles src="/rdf:RDF/rdf:Description/IPTC:Keywords" multi="1"/> <MotsCles src="/rdf:RDF/rdf:Description/IPTC:Keywords" multi="1"/>
<!-- 2:40 --> <!-- 2:40 -->
<Observations src="/rdf:RDF/rdf:Description/IPTC:SpecialInstructions"/> <Observations src="/rdf:RDF/rdf:Description/IPTC:SpecialInstructions"/>
<!-- 2:55 --> <!-- 2:55 -->
<Date src="/rdf:RDF/rdf:Description/IPTC:DateCreated" type="date" regdate="1" /> <Date src="/rdf:RDF/rdf:Description/IPTC:DateCreated" type="date" regdate="1" />
<!-- 2:80 --> <!-- 2:80 -->
<Signature src="/rdf:RDF/rdf:Description/IPTC:By-line"/> <Signature src="/rdf:RDF/rdf:Description/IPTC:By-line"/>
<!-- 2:85 --> <!-- 2:85 -->
<TitreCredits src="/rdf:RDF/rdf:Description/IPTC:By-lineTitle"/> <TitreCredits src="/rdf:RDF/rdf:Description/IPTC:By-lineTitle"/>
<!-- 2:90 --> <!-- 2:90 -->
<Ville src="/rdf:RDF/rdf:Description/IPTC:City" /> <Ville src="/rdf:RDF/rdf:Description/IPTC:City" />
<!-- 2:95 --> <!-- 2:95 -->
<Province src="/rdf:RDF/rdf:Description/IPTC:Province-State" /> <Province src="/rdf:RDF/rdf:Description/IPTC:Province-State" />
<!-- 2:101 --> <!-- 2:101 -->
<Pays src="/rdf:RDF/rdf:Description/IPTC:Country-PrimaryLocationName" /> <Pays src="/rdf:RDF/rdf:Description/IPTC:Country-PrimaryLocationName" />
<!-- 2:103 --> <!-- 2:103 -->
<ReferencesOriginales src="/rdf:RDF/rdf:Description/IPTC:OriginalTransmissionReference" /> <ReferencesOriginales src="/rdf:RDF/rdf:Description/IPTC:OriginalTransmissionReference" />
<!-- 2:105 --> <!-- 2:105 -->
<Titre src="/rdf:RDF/rdf:Description/IPTC:Headline" report="1" regname="1" /> <Titre src="/rdf:RDF/rdf:Description/IPTC:Headline" report="1" regname="1" />
<!-- 2:110 --> <!-- 2:110 -->
<Credit src="/rdf:RDF/rdf:Description/IPTC:Credit" report="1" /> <Credit src="/rdf:RDF/rdf:Description/IPTC:Credit" report="1" />
<!-- 2:115 --> <!-- 2:115 -->
<Source src="/rdf:RDF/rdf:Description/IPTC:Source" /> <Source src="/rdf:RDF/rdf:Description/IPTC:Source" />
<!-- 2:120 --> <!-- 2:120 -->
<Legende src="/rdf:RDF/rdf:Description/IPTC:Caption-Abstract" regdesc="1" /> <Legende src="/rdf:RDF/rdf:Description/IPTC:Caption-Abstract" regdesc="1" />
<!-- 2:122 --> <!-- 2:122 -->
<Redacteur src="/rdf:RDF/rdf:Description/IPTC:Writer-Editor" /> <Redacteur src="/rdf:RDF/rdf:Description/IPTC:Writer-Editor" />
<!-- 2:25 --> <!-- 2:25 -->
<Longitude src="/rdf:RDF/rdf:Description/GPS:GPSLongitude" readonly="1"/> <Longitude src="/rdf:RDF/rdf:Description/GPS:GPSLongitude" readonly="1"/>
<!-- 2:25 --> <!-- 2:25 -->
<Latitude src="/rdf:RDF/rdf:Description/GPS:GPSLatitude" readonly="1"/> <Latitude src="/rdf:RDF/rdf:Description/GPS:GPSLatitude" readonly="1"/>
<!-- 2:25 --> <!-- 2:25 -->
<AppareilPhoto src="/rdf:RDF/rdf:Description/IFD0:Model" readonly="1"/> <AppareilPhoto src="/rdf:RDF/rdf:Description/IFD0:Model" readonly="1"/>
<!-- Champs Techniques --> <!-- Champs Techniques -->
<NomDeFichier src="tf-filename" readonly="1" type="text" /> <NomDeFichier src="tf-filename" readonly="1" type="text" />
<Chemin src="tf-filepath" index="0" readonly="1" type="text" /> <Chemin src="tf-filepath" index="0" readonly="1" type="text" />
<Recordid src="tf-recordid" index="0" readonly="1" type="number" /> <Recordid src="tf-recordid" index="0" readonly="1" type="number" />
<TypeMime src="tf-mimetype" index="0" readonly="1" type="text" /> <TypeMime src="tf-mimetype" index="0" readonly="1" type="text" />
<Taille src="tf-size" index="0" readonly="1" type="number" /> <Taille src="tf-size" index="0" readonly="1" type="number" />
<Extension src="tf-extension" index="0" readonly="1" type="text" /> <Extension src="tf-extension" index="0" readonly="1" type="text" />
<Largeur src="tf-width" index="0" readonly="1" type="number" /> <Largeur src="tf-width" index="0" readonly="1" type="number" />
<Hauteur src="tf-height" index="0" readonly="1" type="number" /> <Hauteur src="tf-height" index="0" readonly="1" type="number" />
<Bits src="tf-bits" index="0" readonly="1" type="number" /> <Bits src="tf-bits" index="0" readonly="1" type="number" />
<Couche src="tf-channels" index="0" readonly="1" type="number" /> <Couche src="tf-channels" index="0" readonly="1" type="number" />
</description> </description>
<statbits> <statbits>
<bit n="4">Online</bit> <bit n="4">Online</bit>
</statbits> </statbits>
<!-- ==== Debut layout homeThumbPubli=== --> <!-- ==== Debut layout homeThumbPubli=== -->
<layout name="homeThumbPubli" skin="" type=""> <layout name="homeThumbPubli" skin="" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
<layout name="homeThumbPubli" skin="fr" type=""> <layout name="homeThumbPubli" skin="fr" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
<!-- ==== Fin layout homeThumbPubli === --> <!-- ==== Fin layout homeThumbPubli === -->
<!-- ==== Debut layout homePrevPubli === --> <!-- ==== Debut layout homePrevPubli === -->
<layout name="homePrevPubli" skin="" type=""> <layout name="homePrevPubli" skin="" type="">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/> <xsl:output method="html"/>
<xsl:template match="/record/description/*"> <xsl:template match="/record/description/*">
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <b>
</xsl:template> <xsl:value-of select="name()" />
</xsl:stylesheet> </b> :
</layout> <xsl:value-of select="current()" />
<layout name="homePrevPubli" skin="fr" type=""> <br />
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> </xsl:template>
<xsl:output method="html"/> </xsl:stylesheet>
<xsl:template match="/record/description/*"> </layout>
<b><xsl:value-of select="name()" /></b> : <xsl:value-of select="current()" /><br /> <layout name="homePrevPubli" skin="fr" type="">
</xsl:template> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:stylesheet> <xsl:output method="html"/>
</layout> <xsl:template match="/record/description/*">
<b>
<xsl:value-of select="name()" />
</b> :
<xsl:value-of select="current()" />
<br />
</xsl:template>
</xsl:stylesheet>
</layout>
</record> </record>

View File

@@ -1849,7 +1849,7 @@ function make1subdef($infile, $sd, $physdpath, $infos)
// attention, au cas ou il y aurait des espaces dans le path, il faut des quotes // attention, au cas ou il y aurait des espaces dans le path, il faut des quotes
// windows n'accepte pas les simple quotes // windows n'accepte pas les simple quotes
// pour mac les quotes pour les noms de fichiers sont indispensables car si il y a un espace -> ca plante // pour mac les quotes pour les noms de fichiers sont indispensables car si il y a un espace -> ca plante
$array = array('application/pdf','image/psd','image/vnd.adobe.photoshop','image/photoshop','image/ai','image/illustrator','image/vnd.adobe.illustrator'); $array = array('image/tiff', 'application/pdf','image/psd','image/vnd.adobe.photoshop','image/photoshop','image/ai','image/illustrator','image/vnd.adobe.illustrator');
if( in_array($infos['mime'], $array ) ) if( in_array($infos['mime'], $array ) )
$cmd .= ' "'.$infile .'[0]" "'. $outfile .'"'; $cmd .= ' "'.$infile .'[0]" "'. $outfile .'"';
else else

View File

@@ -46,7 +46,7 @@
{% endif %} {% endif %}
{# MODULE #} {# MODULE #}
{% if module == "validation" %} {% if module == "lightbox" %}
<b>{% trans 'admin::monitor: module validation' %}</b> <b>{% trans 'admin::monitor: module validation' %}</b>
{% else %} {% else %}
<a id="validation_link" style="display:" <a id="validation_link" style="display:"

View File

@@ -138,4 +138,9 @@
{% if lazaret|length == 0 %} {% if lazaret|length == 0 %}
<div style="margin:20px 10px;">{% trans 'Aucun document dans la quarantaine actuellement' %}</div> <div style="margin:20px 10px;">{% trans 'Aucun document dans la quarantaine actuellement' %}</div>
{% endif %} {% endif %}
<script type="text/javascript">
$(document).ready(function(){
$('.tooltip').tooltip();
});
</script>
</div> </div>

View File

@@ -135,8 +135,7 @@ if($request->has_post_datas() && $user->is_admin === true)
} }
} }
} }
elseif($parm['mount_base'] && $parm['new_hostname'] && $parm['new_port'] && $parm['new_user'] elseif($parm['mount_base'])
&& $parm['new_password'] && $parm['new_dbname'])
{ {
if(!$parm['new_settings'] && $parm['new_dbname']) if(!$parm['new_settings'] && $parm['new_dbname'])
{ {
@@ -160,9 +159,8 @@ if($request->has_post_datas() && $user->is_admin === true)
} }
} }
elseif($parm['new_settings'] && $parm['new_hostname'] && $parm['new_port'] && $parm['new_user'] elseif($parm['new_settings'] && $parm['new_hostname'] && $parm['new_port'] && $parm['new_user']
&& $parm['new_password'] && $parm['new_dbname'] && $parm['new_data_template']) && $parm['new_password'] && $parm['new_dbname'])
{ {
if(p4string::hasAccent($parm['new_dbname'])) if(p4string::hasAccent($parm['new_dbname']))
$error['new_dbname'] = 'No special chars in dbname'; $error['new_dbname'] = 'No special chars in dbname';
@@ -170,7 +168,7 @@ if($request->has_post_datas() && $user->is_admin === true)
{ {
if( ($base = new databox(false,$parm['new_hostname'],$parm['new_port'],$parm['new_user'],$parm['new_password'])) !== false ) if( ($base = new databox(false,$parm['new_hostname'],$parm['new_port'],$parm['new_user'],$parm['new_password'])) !== false )
{ {
if($base->mount($parm['new_dbname'])) if($base->mount($parm['new_dbname'], $usr_id))
{ {
$sbas_id = $base->save($usr_id); $sbas_id = $base->save($usr_id);
@@ -181,12 +179,12 @@ if($request->has_post_datas() && $user->is_admin === true)
$base->registerAdminThesaurus($usr_id, true); $base->registerAdminThesaurus($usr_id, true);
$base->registerPublication($usr_id, true); $base->registerPublication($usr_id, true);
$mountBase = true; $mountBase = true;
} }
} }
} }
} }
} }
} }
} }

View File

@@ -92,19 +92,30 @@ if($connbas)
if($parm["act"]=="CHGSTRUCTURE") if($parm["act"]=="CHGSTRUCTURE")
{ {
$errors = databox::get_structure_errors($parm["str"]); $errors = databox::get_structure_errors($parm["str"]);
if(count($errors) == 0 && $domst = @DOMDocument::loadXML($parm["str"])) // simplexml_load_string($parm["str"])) if(count($errors) == 0)
{ {
$domst->documentElement->setAttribute("modification_date", $now = date("YmdHis")); $domst = new DOMDocument('1.0', 'UTF-8');
$domst->preserveWhiteSpace = false;
$domst->formatOutput = true;
if(@$domst->loadXML($parm["str"]))
{
$domst->documentElement->setAttribute("modification_date", $now = date("YmdHis"));
$sql = "UPDATE pref SET value='" . $conn->escape_string($parm["str"] = $domst->saveXML()) . "', updated_on='" . $now . "' WHERE prop='structure'" ; $sql = "UPDATE pref SET value='" . $conn->escape_string($parm["str"] = $domst->saveXML()) . "', updated_on='" . $now . "' WHERE prop='structure'" ;
$connbas->query($sql); $connbas->query($sql);
$cache_appbox = cache_appbox::getInstance(); $cache_appbox = cache_appbox::getInstance();
$cache_appbox->delete('list_bases'); $cache_appbox->delete('list_bases');
cache_databox::update($parm["p0"],'structure'); cache_databox::update($parm["p0"],'structure');
}
else
{
$errors[] = "Error loadXML(structure)";
}
} }
else
if(count($errors) != 0)
{ {
$msg .= p4string::MakeString(_('admin::base: xml invalide, les changements ne seront pas appliques'), 'js') . "" ; $msg .= p4string::MakeString(_('admin::base: xml invalide, les changements ne seront pas appliques'), 'js') . "" ;
$loadit = false; $loadit = false;

View File

@@ -662,7 +662,7 @@ if($cssfile)
<input type="hidden" name="app" value="client"> <input type="hidden" name="app" value="client">
</form> </form>
<script type="text/javascript" src="/include/minify/g=client"></script> <script type="text/javascript" src="/include/minify/g=client"></script>
<script type="text/javascript" src="/include/flowplayer/flowplayer-3.2.2.min.js"></script> <script type="text/javascript" src="/include/flowplayer/flowplayer-3.2.6.min.js"></script>
<script type="text/javascript"> <script type="text/javascript">

View File

@@ -94,7 +94,7 @@ function openPreview(env, pos, contId, reload){
'display': 'none' 'display': 'none'
}); });
$('#PREVIEWIMGCONT').empty(); empty_preview();
prevAjax = $.ajax({ prevAjax = $.ajax({
type: "POST", type: "POST",
@@ -114,6 +114,7 @@ function openPreview(env, pos, contId, reload){
$('#current_result_n').empty().append(parseInt(pos)+1); $('#current_result_n').empty().append(parseInt(pos)+1);
prevAjaxrunning = true; prevAjaxrunning = true;
$('#PREVIEWIMGDESC, #PREVIEWOTHERS').addClass('loading'); $('#PREVIEWIMGDESC, #PREVIEWOTHERS').addClass('loading');
empty_preview();
}, },
error: function(data){ error: function(data){
prevAjaxrunning = false; prevAjaxrunning = false;
@@ -139,9 +140,16 @@ function openPreview(env, pos, contId, reload){
return; return;
} }
$('#PREVIEWIMGCONT').empty().append(data.prev); if((data.type == 'video'))
{
$('#PREVIEWIMGCONT').html(data.prev_html);
}
else
{
$('#PREVIEWIMGCONT').html(data.prev);
}
$('#PREVIEWIMGDESCINNER').empty().append(data.desc); $('#PREVIEWIMGDESCINNER').empty().append(data.desc);
$('#HISTORICOPS').empty().append(data.history); $('#HISTORICOPS').empty().append(data.history);
$('#popularity').empty().append(data.popularity); $('#popularity').empty().append(data.popularity);
@@ -171,7 +179,8 @@ function openPreview(env, pos, contId, reload){
p4.preview.current.pos = data.pos; p4.preview.current.pos = data.pos;
p4.preview.current.flashcontent = data.flashcontent; p4.preview.current.flashcontent = data.flashcontent;
if ((data.type == 'video' || data.type == 'audio' || data.type == 'flash')) { if ((data.type == 'video' || data.type == 'audio' || data.type == 'flash'))
{
if(data.type != 'video' && p4.preview.current.flashcontent.url) if(data.type != 'video' && p4.preview.current.flashcontent.url)
{ {
var flashvars = false; var flashvars = false;
@@ -192,22 +201,32 @@ function openPreview(env, pos, contId, reload){
} }
else else
{ {
flowplayer("FLASHPREVIEW", '/include/flowplayer/flowplayer-3.2.2.swf', { // alert(data.flashcontent.flv);
clip: { // try
autoPlay: true, // {
autoBuffering:true, // flowplayer("FLASHPREVIEW", {src:"/include/flowplayer/flowplayer-3.2.6.swf", wmode: "transparent"}, {
provider: 'h264streaming', // clip: {
metadata: false, // autoPlay: true,
scaling:'fit', // autoBuffering:true,
url: data.flashcontent.flv // provider: 'h264streaming',
}, // metadata: false,
onError:function(code,message){getNewVideoToken(data.base_id, data.record_id, this);}, // scaling:'fit',
plugins: { // url: data.flashcontent.flv
h264streaming: { // },
url: '/include/flowplayer/flowplayer.pseudostreaming-3.2.2.swf' // onError:function(code,message){getNewVideoToken(data.base_id, data.record_id, this);},
} // plugins: {
} // h264streaming: {
}); // url: '/include/flowplayer/flowplayer.pseudostreaming-3.2.6.swf'
// }
// }
// });
// $('#PREVIEWIMGDESCINNER').empty().append('<textarea></textarea>').find('textarea').val($('#FLASHPREVIEW').html());
//
// }
// catch(err)
// {
// alert(err);
// }
} }
} }
@@ -365,10 +384,20 @@ function setTitle(title){
function cancelPreview(){ function cancelPreview(){
$('#PREVIEWIMGDESCINNER').empty(); $('#PREVIEWIMGDESCINNER').empty();
$('#PREVIEWIMGCONT').empty(); empty_preview();
p4.preview.current = false; p4.preview.current = false;
} }
function empty_preview()
{
var player_cont = $('#PREVIEWIMGCONT object').parent();
if(player_cont.attr('id') != 'PREVIEWIMGCONT')
{
player_cont.empty();
player_cont.remove();
}
$('#PREVIEWIMGCONT').empty();
}
function startSlide(){ function startSlide(){
if (!p4.slideShow) { if (!p4.slideShow) {
@@ -580,6 +609,7 @@ function doudouMode(){
function closePreview(){ function closePreview(){
p4.preview.open = false; p4.preview.open = false;
empty_preview();
hideOverlay(); hideOverlay();
$('#PREVIEWBOX').fadeTo(500, 0); $('#PREVIEWBOX').fadeTo(500, 0);

View File

@@ -143,7 +143,12 @@
// save elements title before the tooltip is displayed // save elements title before the tooltip is displayed
function save(event) { function save(event) {
// if this is the current source, or it has no title (occurs with click event), stop // if this is the current source, or it has no title (occurs with click event), stop
if ( $.tooltip.blocked || this == $.tooltip.current || (!this.tooltipText && !settings(this).bodyHandler) ) if(event.stopPropagation)
event.stopPropagation();
event.cancelBubble = true;
if ( $.tooltip.blocked || this == $.tooltip.current || (!this.tooltipText && !settings(this).bodyHandler) )
return; return;
// save current // save current
@@ -509,6 +514,9 @@
$.tooltip.current = null; $.tooltip.current = null;
function complete() { function complete() {
helper.parent.removeClass( tsettings.extraClass ).hide().css("opacity", ""); helper.parent.removeClass( tsettings.extraClass ).hide().css("opacity", "");
var el =helper.parent.find('object').parent();
el.empty();
el.remove();
} }
if ((!IE || !$.fn.bgiframe) && tsettings.fade) { if ((!IE || !$.fn.bgiframe) && tsettings.fade) {
if (helper.parent.is(':animated')) if (helper.parent.is(':animated'))

View File

@@ -95,7 +95,7 @@ $groups = array(
,'//prod/jquery.order.js' ,'//prod/jquery.order.js'
,'//include/jslibs/jquery.sprintf.1.0.3.js' ,'//include/jslibs/jquery.sprintf.1.0.3.js'
, '//include/jquery.tooltip.js' , '//include/jquery.tooltip.js'
, '//include/flowplayer/flowplayer-3.2.2.min.js' , '//include/flowplayer/flowplayer-3.2.6.min.js'
, '//include/jquery.p4.preview.js' , '//include/jquery.p4.preview.js'
, '//prod/jquery.edit.js' , '//prod/jquery.edit.js'
, '//include/jslibs/jquery.color.animation.js' , '//include/jslibs/jquery.color.animation.js'
@@ -134,7 +134,7 @@ $groups = array(
,'//include/jslibs/jquery.contextmenu_scroll.js' ,'//include/jslibs/jquery.contextmenu_scroll.js'
,'//include/jquery.common.js' ,'//include/jquery.common.js'
,'//lightbox/jquery.lightbox.js' ,'//lightbox/jquery.lightbox.js'
, '//include/flowplayer/flowplayer-3.2.2.min.js' , '//include/flowplayer/flowplayer-3.2.6.min.js'
), ),
'lightboxie6' => array( 'lightboxie6' => array(
'//include/jslibs/jquery-1.4.4.js' '//include/jslibs/jquery-1.4.4.js'
@@ -148,7 +148,7 @@ $groups = array(
, '//include/jslibs/jquery.contextmenu_scroll.js' , '//include/jslibs/jquery.contextmenu_scroll.js'
,'//include/jquery.common.js' ,'//include/jquery.common.js'
,'//lightbox/jquery.lightbox.ie6.js' ,'//lightbox/jquery.lightbox.ie6.js'
, '//include/flowplayer/flowplayer-3.2.2.min.js' , '//include/flowplayer/flowplayer-3.2.6.min.js'
) )
); );

View File

@@ -117,7 +117,7 @@ phrasea::headers();
padding:50px 0 20px; padding:50px 0 20px;
} }
</style> </style>
<script type="text/javascript" src="/include/flowplayer/flowplayer-3.2.2.min.js"></script> <script type="text/javascript" src="/include/flowplayer/flowplayer-3.2.6.min.js"></script>
</head> </head>
<body> <body>
<?php <?php
@@ -142,7 +142,7 @@ phrasea::headers();
$embed = '<img src="'.$url.'" title="" />'; $embed = '<img src="'.$url.'" title="" />';
break; break;
case 'video': case 'video':
$embed = '<div style="width: 600px; height: 400px;" id="flash_preview"></div><script type="text/javascript">flowplayer("flash_preview", "/include/flowplayer/flowplayer-3.2.2.swf", "'.$url.'");</script>'; $embed = '<div style="width: 600px; height: 400px;" id="flash_preview"></div><script type="text/javascript">flowplayer("flash_preview", "/include/flowplayer/flowplayer-3.2.6.swf", "'.$url.'");</script>';
break; break;
case 'document': case 'document':
$embed = '<object width="850" height="500" type="application/x-shockwave-flash" data="/include/FlexPaper_flash/FlexPaperViewer.swf" style="visibility: visible; width: 850px; height: 500px; top: 0px;"> $embed = '<object width="850" height="500" type="application/x-shockwave-flash" data="/include/FlexPaper_flash/FlexPaperViewer.swf" style="visibility: visible; width: 850px; height: 500px; top: 0px;">

View File

@@ -52,7 +52,8 @@ $list = $download->prepare_export($parm['obj'], $titre);
$list['export_name'] = $exportname.'.zip'; $list['export_name'] = $exportname.'.zip';
$endDate = phraseadate::format_mysql(new DateTime('+1 day')); $endate_obj = new DateTime('+1 day');
$endDate = phraseadate::format_mysql($endate_obj);
$token = random::getUrlToken('download',false,$endDate,serialize($list)); $token = random::getUrlToken('download',false,$endDate,serialize($list));
@@ -75,7 +76,7 @@ if($parm['reading_confirm'] == '1')
foreach($dest as $email) foreach($dest as $email)
{ {
if(($result = mail::send_documents(trim($email), $url,$from, $parm["textmail"], $reading_confirm_to))!==true) if(($result = mail::send_documents(trim($email), $url,$from, $endate_obj, $parm["textmail"], $reading_confirm_to))!==true)
$res[] = $email; $res[] = $email;
} }

View File

@@ -51,7 +51,7 @@ try
'baskets_collection' => $basket_collection, 'baskets_collection' => $basket_collection,
'basket' => $basket, 'basket' => $basket,
'local_title' => strip_tags($basket->name), 'local_title' => strip_tags($basket->name),
'module' => 'validation', 'module' => 'lightbox',
'module_name' => _('admin::monitor: module validation') 'module_name' => _('admin::monitor: module validation')
) )
); );

View File

@@ -26,10 +26,10 @@ $item = $defaultchannel->appendChild($defaultdom->createElement('item'));
$title = $item->appendChild($defaultdom->createElement('title')); $title = $item->appendChild($defaultdom->createElement('title'));
$title->appendChild($defaultdom->createTextNode(GV_homeTitle)); $title->appendChild($defaultdom->createTextNode(GV_homeTitle));
if(file_exists(GV_RootPath.'config/home.jpg')) if(file_exists(GV_RootPath.'www/custom/home.jpg'))
{ {
$pathPic = GV_RootPath.'config/home.jpg'; $pathPic = GV_RootPath.'www/custom/home.jpg';
$urlPic = '/config/home.jpg'; $urlPic = '/custom/home.jpg';
} }
else else
{ {

View File

@@ -1,233 +1,233 @@
<?php <?php
require_once dirname( __FILE__ ) . "/../../lib/bootstrap.php"; require_once dirname(__FILE__) . "/../../lib/bootstrap.php";
$session = session::getInstance(); $session = session::getInstance();
require_once( GV_RootPath . 'lib/unicode/lownodiacritics_utf8.php' ); require_once( GV_RootPath . 'lib/unicode/lownodiacritics_utf8.php' );
$request = httpRequest::getInstance(); $request = httpRequest::getInstance();
if(!isset($parm)) if (!isset($parm))
$parm = $request->get_parms("bas", "qry", "pag" $parm = $request->get_parms("bas", "qry", "pag"
, "sel", "ord" , "sel", "ord"
, "search_type", "recordtype", "status", "fields", "datemin", "datemax", "datefield"); , "search_type", "recordtype", "status", "fields", "datemin", "datemax", "datefield");
if(isset($session->usr_id) && isset($session->ses_id)) if (isset($session->usr_id) && isset($session->ses_id))
{ {
$ses_id = $session->ses_id; $ses_id = $session->ses_id;
$usr_id = $session->usr_id; $usr_id = $session->usr_id;
if(!($ph_session = phrasea_open_session((int)$ses_id, $usr_id))) if (!($ph_session = phrasea_open_session((int) $ses_id, $usr_id)))
{ {
header("Location: /login/?err=no-session"); header("Location: /login/?err=no-session");
exit(); exit();
} }
} }
else else
{ {
$request = httpRequest::getInstance(); $request = httpRequest::getInstance();
if($request->is_ajax()) if ($request->is_ajax())
{ {
echo _('Votre session est expiree, veuillez vous reconnecter'); echo _('Votre session est expiree, veuillez vous reconnecter');
} }
else else
{ {
header("Location: /login/"); header("Location: /login/");
} }
exit(); exit();
} }
if(!($ph_session = phrasea_open_session($ses_id,$usr_id))) if (!($ph_session = phrasea_open_session($ses_id, $usr_id)))
{ {
die(); die();
} }
if($parm["ord"]===NULL) if ($parm["ord"] === NULL)
$parm["ord"] = PHRASEA_ORDER_DESC; $parm["ord"] = PHRASEA_ORDER_DESC;
else else
$parm["ord"] = (int)$parm["ord"]; $parm["ord"] = (int) $parm["ord"];
$parm['sel'] = explode(';',$parm['sel']); $parm['sel'] = explode(';', $parm['sel']);
if(!$parm['bas']) if (!$parm['bas'])
$parm['bas'] = array(); $parm['bas'] = array();
if(!$parm["pag"]===NULL) if (!$parm["pag"] === NULL)
$parm["pag"] = "0"; $parm["pag"] = "0";
if(trim($parm["qry"])==='') if (trim($parm["qry"]) === '')
$parm["qry"] = "all"; $parm["qry"] = "all";
$mod = user::getPrefs('view'); $mod = user::getPrefs('view');
$options = array( $options = array(
'type' => $parm['search_type'], 'type' => $parm['search_type'],
'bases' => $parm['bas'], 'bases' => $parm['bas'],
'champs' => $parm['fields'], 'champs' => $parm['fields'],
'status' => $parm['status'], 'status' => $parm['status'],
'date' => array( 'date' => array(
'minbound'=>$parm['datemin'], 'minbound' => $parm['datemin'],
'maxbound'=>$parm['datemax'], 'maxbound' => $parm['datemax'],
'field'=>explode('|',$parm['datefield']) 'field' => explode('|', $parm['datefield'])
) )
); );
if($parm['recordtype'] != '' && in_array($parm['recordtype'],array('image','video','audio','document','flash'))) if ($parm['recordtype'] != '' && in_array($parm['recordtype'], array('image', 'video', 'audio', 'document', 'flash')))
{ {
$parm['qry'] .= ' AND recordtype='.$parm['recordtype']; $parm['qry'] .= ' AND recordtype=' . $parm['recordtype'];
} }
$query = new query($options); $query = new query($options);
$result = $query->results($parm['qry'], $parm["pag"]);//$parm['search_type'],
$result = $query->results($parm['qry'], $parm["pag"]); //$parm['search_type'],
$proposals = trim($parm['pag']) === '' ? $query->proposals() : false; $proposals = trim($parm['pag']) === '' ? $query->proposals() : false;
$npages = $result['pages']; $npages = $result['pages'];
$page = $result['current_page']; $page = $result['current_page'];
$string =''; $string = '';
if($npages>1) if ($npages > 1)
{ {
$d2top = ($npages - $page); $d2top = ($npages - $page);
$d2bottom = $page; $d2bottom = $page;
if(min($d2top,$d2bottom) < 4) if (min($d2top, $d2bottom) < 4)
{ {
if($d2bottom < 4) if ($d2bottom < 4)
{ {
for($i=1;($i<=4 && (($i<=$npages)===true));$i++) for ($i = 1; ($i <= 4 && (($i <= $npages) === true)); $i++)
{ {
if($i == $page) if ($i == $page)
$string .= '<input onkeypress="if(event.keyCode == 13 && !isNaN(parseInt(this.value)))gotopage(parseInt(this.value))" type="text" value="'.$i.'" size="'.(strlen((string)$i)).'" />'; $string .= '<input onkeypress="if(event.keyCode == 13 && !isNaN(parseInt(this.value)))gotopage(parseInt(this.value))" type="text" value="' . $i . '" size="' . (strlen((string) $i)) . '" />';
else else
$string .= "<a onclick='gotopage(".$i.");return false;'>".$i."</a>"; $string .= "<a onclick='gotopage(" . $i . ");return false;'>" . $i . "</a>";
} }
if($npages >4) if ($npages > 4)
$string .= "<a onclick='gotopage(".($npages).");return false;'>&gt;&gt;</a>"; $string .= "<a onclick='gotopage(" . ($npages) . ");return false;'>&gt;&gt;</a>";
} }
else else
{ {
$start = $npages-4; $start = $npages - 4;
if(($start)>0) if (($start) > 0)
$string .= "<a onclick='gotopage(1);return false;'>&lt;&lt;</a>"; $string .= "<a onclick='gotopage(1);return false;'>&lt;&lt;</a>";
else else
$start = 1; $start = 1;
for($i=($start);$i<=$npages;$i++) for ($i = ($start); $i <= $npages; $i++)
{ {
if($i == $page) if ($i == $page)
$string .= '<input onkeypress="if(event.keyCode == 13 && !isNaN(parseInt(this.value)))gotopage(parseInt(this.value))" type="text" value="'.$i.'" size="'.(strlen((string)$i)).'" />'; $string .= '<input onkeypress="if(event.keyCode == 13 && !isNaN(parseInt(this.value)))gotopage(parseInt(this.value))" type="text" value="' . $i . '" size="' . (strlen((string) $i)) . '" />';
else else
$string .= "<a onclick='gotopage(".$i.");return false;'>".$i."</a>"; $string .= "<a onclick='gotopage(" . $i . ");return false;'>" . $i . "</a>";
} }
} }
} }
else else
{ {
$string .= "<a onclick='gotopage(1);return false;'>&lt;&lt;</a>"; $string .= "<a onclick='gotopage(1);return false;'>&lt;&lt;</a>";
for($i=($page-2);$i<=($page+2);$i++) for ($i = ($page - 2); $i <= ($page + 2); $i++)
{ {
if($i == $page) if ($i == $page)
$string .= '<input onkeypress="if(event.keyCode == 13 && !isNaN(parseInt(this.value)))gotopage(parseInt(this.value))" type="text" value="'.$i.'" size="'.(strlen((string)$i)).'" />'; $string .= '<input onkeypress="if(event.keyCode == 13 && !isNaN(parseInt(this.value)))gotopage(parseInt(this.value))" type="text" value="' . $i . '" size="' . (strlen((string) $i)) . '" />';
else else
$string .= "<a onclick='gotopage(".$i.");return false;'>".$i."</a>"; $string .= "<a onclick='gotopage(" . $i . ");return false;'>" . $i . "</a>";
} }
$string .= "<a onclick='gotopage(".($npages).");return false;'>&gt;&gt;</a>"; $string .= "<a onclick='gotopage(" . ($npages) . ");return false;'>&gt;&gt;</a>";
}
}
$string .= '<div style="display:none;"><div id="NEXT_PAGE"></div><div id="PREV_PAGE"></div></div>';
} $explain = $result['explain'];
$infoResult = ' | <a href="#" class="infoDialog" infos="' . str_replace('"', '&quot;', $explain) . '">' . sprintf(_('reponses:: %d reponses'), $session->prod['query']['nba']) . '</a> | ' . sprintf(_('reponses:: %s documents selectionnes'), '<span id="nbrecsel"></span>');
echo "<script type='text/javascript'>$('#tool_results').empty().append('" . str_replace("'", "\'", $infoResult) . "');</script>";
echo "<script type='text/javascript'>$('#tool_navigate').empty().append('" . str_replace("'", "\'", $string) . "');</script>";
} $rsScreen = $result['result'];
$string .= '<div style="display:none;"><div id="NEXT_PAGE"></div><div id="PREV_PAGE"></div></div>';
$explain = $result['explain'];
$infoResult = ' | <a href="#" class="infoDialog" infos="'.str_replace('"','&quot;',$explain).'">'.sprintf(_('reponses:: %d reponses'),$session->prod['query']['nba']).'</a> | '.sprintf(_('reponses:: %s documents selectionnes'),'<span id="nbrecsel"></span>');
echo "<script type='text/javascript'>$('#tool_results').empty().append('".str_replace("'","\'",$infoResult)."');</script>";
echo "<script type='text/javascript'>$('#tool_navigate').empty().append('".str_replace("'","\'",$string)."');</script>";
$rsScreen = $result['result'];
if(count($rsScreen)>0)
{
if($mod == 'thumbs')
require("answergrid.php");
else
require("answerlist.php");
}
else
{
echo '<div style="float:left;">';
phrasea::getHome('HELP','prod');
echo '</div>';
}
if (count($rsScreen) > 0)
{
if ($mod == 'thumbs')
require("answergrid.php");
else
require("answerlist.php");
}
else
{
echo '<div style="float:left;">';
phrasea::getHome('HELP', 'prod');
echo '</div>';
}
function proposalsToHTML(&$proposals) function proposalsToHTML(&$proposals)
{ {
$html = "<div class=\"proposals\">"; $html = "<div class=\"proposals\">";
$nbasesWprop = count($proposals["BASES"]); $nbasesWprop = count($proposals["BASES"]);
$b = 0; $b = 0;
foreach($proposals["BASES"] as $zbase) foreach ($proposals["BASES"] as $zbase)
{ {
if((int)(count($zbase["TERMS"]) > 0)) if ((int) (count($zbase["TERMS"]) > 0))
{ {
if(($nbasesWprop > 1)) if (($nbasesWprop > 1))
{ {
$style = $b==0 ? "style=\"margin-top:0px;\"":""; $style = $b == 0 ? "style=\"margin-top:0px;\"" : "";
$html .= "<h1".$style.">". sprintf(_('reponses::propositions pour la base %s'),$zbase["NAME"])."</h1>"; $html .= "<h1" . $style . ">" . sprintf(_('reponses::propositions pour la base %s'), $zbase["NAME"]) . "</h1>";
} }
$t = 0; $t = 0;
foreach($zbase["TERMS"] as $path=>$props) foreach ($zbase["TERMS"] as $path => $props)
{ {
$style = $t==0 ? "style=\"margin-top:0px;\"":""; $style = $t == 0 ? "style=\"margin-top:0px;\"" : "";
$html .= "<h2 $style>" . sprintf(_('reponses::propositions pour le terme %s'), $props["TERM"]) . "</h2>"; $html .= "<h2 $style>" . sprintf(_('reponses::propositions pour le terme %s'), $props["TERM"]) . "</h2>";
$html .= $props["HTML"]; $html .= $props["HTML"];
$t++; $t++;
} }
$b++; $b++;
} }
} }
$html .= "</div>"; $html .= "</div>";
return($html); return($html);
} }
?> ?>
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function(){ $(document).ready(function(){
<?php <?php
if($proposals) if ($proposals)
{ {
?> ?>
$('#proposals').empty().append("<?php echo $proposals?>"); $('#proposals').empty().append("<?php echo $proposals ?>");
$('.activeproposals').show(); $('.activeproposals').show();
<?php <?php
} }
elseif(trim($parm['pag']) === '') elseif (trim($parm['pag']) === '')
{ {
?> ?>
$('#proposals').empty(); $('#proposals').empty();
<?php <?php
} }
?> ?>
<?php if($page>1 && $session->prod['query']['nba']>0){ ?> <?php if ($page > 1 && $session->prod['query']['nba'] > 0)
$("#PREV_PAGE").bind('click',function(){gotopage(<?php echo ($page-1)?>)}); { ?>
<?php }else{?> $("#PREV_PAGE").bind('click',function(){gotopage(<?php echo ($page - 1) ?>)});
$("#PREV_PAGE").unbind('click'); <?php }
<?php } else
if($page<$npages && $session->prod['query']['nba']>0){ ?> { ?>
$("#NEXT_PAGE").bind('click',function(){gotopage(<?php echo ($page+1)?>)}); $("#PREV_PAGE").unbind('click');
<?php }else{?> <?php }
$("#NEXT_PAGE").unbind('click'); if ($page < $npages && $session->prod['query']['nba'] > 0)
<?php }?> { ?>
p4.tot = <?php echo ((is_int((int)$session->prod['query']['nba']) && (int)$session->prod['query']['nba']>=0)?(int)$session->prod['query']['nba']:0)?>; $("#NEXT_PAGE").bind('click',function(){gotopage(<?php echo ($page + 1) ?>)});
}); <?php }
else
{ ?>
$("#NEXT_PAGE").unbind('click');
<?php } ?>
p4.tot = <?php echo ((is_int((int) $session->prod['query']['nba']) && (int) $session->prod['query']['nba'] >= 0) ? (int) $session->prod['query']['nba'] : 0) ?>;
});
</script> </script>

View File

@@ -910,7 +910,7 @@ function HTML_Thesaurus(&$html)
$class_status = ''; $class_status = '';
} }
?> ?>
<div pos="<?php echo $idia ?>" id="idEditDiapo_<?php echo $idia ?>" class="diapo <?php echo $class_status; ?>" style="<?php echo $diapostyle ?>;"> <div pos="<?php echo $idia ?>" id="idEditDiapo_<?php echo $idia ?>" class="diapo <?php echo $class_status; ?> <?php echo $basrec['type'] ?>_bloc" style="<?php echo $diapostyle ?>;">
<div class='titre'> <div class='titre'>
<?php echo p4string::MakeString($basrec['originalname'], 'html') . "\n" ?> <?php echo p4string::MakeString($basrec['originalname'], 'html') . "\n" ?>
</div> </div>

View File

@@ -776,6 +776,8 @@ $rss_infos = user::getMyRss();
<script type="text/javascript" src="/include/swfobject/swfobject.js"></script> <script type="text/javascript" src="/include/swfobject/swfobject.js"></script>
<script type="text/javascript" src="/include/jslibs/jquery-1.4.4.js"></script> <script type="text/javascript" src="/include/jslibs/jquery-1.4.4.js"></script>
<script type="text/javascript" src="/include/jslibs/jquery-ui-1.7.2.js"></script> <script type="text/javascript" src="/include/jslibs/jquery-ui-1.7.2.js"></script>
<script type="text/javascript" src="/include/colorpicker/js/colorpicker.js"></script>
<script type="text/javascript" src="/include/jslibs/json2.js"></script>
<script type="text/javascript" src="/include/jslibs/jquery.cookie.js"></script> <script type="text/javascript" src="/include/jslibs/jquery.cookie.js"></script>
<script type="text/javascript" src="/include/jquery.common.js"></script> <script type="text/javascript" src="/include/jquery.common.js"></script>
<script type="text/javascript" src="/include/jslibs/jquery.form.2.49.js"></script> <script type="text/javascript" src="/include/jslibs/jquery.form.2.49.js"></script>
@@ -783,6 +785,7 @@ $rss_infos = user::getMyRss();
<script type="text/javascript" src="/include/jslibs/json2.js"></script> <script type="text/javascript" src="/include/jslibs/json2.js"></script>
<script type="text/javascript" src="/include/jslibs/jquery.sprintf.1.0.3.js"></script> <script type="text/javascript" src="/include/jslibs/jquery.sprintf.1.0.3.js"></script>
<script type="text/javascript" src="/include/jquery.tooltip.js"></script> <script type="text/javascript" src="/include/jquery.tooltip.js"></script>
<script type="text/javascript" src="/include/flowplayer/flowplayer-3.2.6.min.js"></script>
<script type="text/javascript" src="/include/jquery.p4.preview.js"></script> <script type="text/javascript" src="/include/jquery.p4.preview.js"></script>
<script type="text/javascript" src="/prod/jquery.edit.js"></script> <script type="text/javascript" src="/prod/jquery.edit.js"></script>
<script type="text/javascript" src="/include/jslibs/jquery.color.animation.js"></script> <script type="text/javascript" src="/include/jslibs/jquery.color.animation.js"></script>
@@ -1245,6 +1248,17 @@ $rss_infos = user::getMyRss();
?> ?>
<!-- <li><a href="#popular-queries">Popular</a></li>--> <!-- <li><a href="#popular-queries">Popular</a></li>-->
</ul> </ul>
<div id="bases-queries" class="PNB" style="top:30px;overflow:hidden;">
<div class="PNB10" style="overflow-y:auto;overflow-x:auto;">
<?php echo $outB.str_replace('__UNIQUEID__',mt_rand(10000,99999),implode('<div><hr/></div>',$sbase));?>
</div>
</div>
<div id="history-queries" class="PNB" style="top:30px;overflow:hidden;">
<div class="PNB10" style="overflow-y:auto;overflow-x:auto;">
<?php echo queries::history(); ?>
</div>
</div>
<?php <?php
if(queries::topics_exists()) if(queries::topics_exists())
{ {
@@ -1262,17 +1276,6 @@ $rss_infos = user::getMyRss();
<?php <?php
} }
?> ?>
<div id="bases-queries" class="PNB" style="top:30px;overflow:hidden;">
<div class="PNB10" style="overflow-y:auto;overflow-x:auto;">
<?php echo $outB.str_replace('__UNIQUEID__',mt_rand(10000,99999),implode('<div><hr/></div>',$sbase));?>
</div>
</div>
<div id="history-queries" class="PNB" style="top:30px;overflow:hidden;">
<div class="PNB10" style="overflow-y:auto;overflow-x:auto;">
<?php echo queries::history(); ?>
</div>
</div>
<!-- <div id="popular-queries" class="PNB" style="top:30px;overflow:hidden;">--> <!-- <div id="popular-queries" class="PNB" style="top:30px;overflow:hidden;">-->
<!-- <div class="PNB10" style="overflow-y:auto;overflow-x:auto;">--> <!-- <div class="PNB10" style="overflow-y:auto;overflow-x:auto;">-->
<!----> <!---->

View File

@@ -852,7 +852,7 @@ function edit_clk_editimg(evt, i)
} }
} }
$('#TH_Opreview .PNB10').empty(); empty_preview_edit();
var selected = $('#EDIT_FILM2 .diapo.selected'); var selected = $('#EDIT_FILM2 .diapo.selected');
if(selected.length == 1) if(selected.length == 1)
@@ -1234,6 +1234,7 @@ function edit_applyMultiDesc(evt)
var sendorder = ""; var sendorder = "";
var sendChuOrder = ""; var sendChuOrder = "";
empty_preview_edit();
var t = ""; var t = "";
if(p4.edit.textareaIsDirty && edit_validField(evt, "ask_ok")==false) if(p4.edit.textareaIsDirty && edit_validField(evt, "ask_ok")==false)
@@ -1334,7 +1335,7 @@ function edit_applyMultiDesc(evt)
function edit_cancelMultiDesc(evt) function edit_cancelMultiDesc(evt)
{ {
empty_preview_edit();
var dirty = false; var dirty = false;
evt.cancelBubble = true; evt.cancelBubble = true;
@@ -1502,6 +1503,7 @@ function EditThesaurusSeeker(sbas_id)
this.jq = $.ajax({ this.jq = $.ajax({
url: url, url: url,
data: parms, data: parms,
type:'POST',
success: function(ret) success: function(ret)
{ {
me.TH_P_node.html("..."); me.TH_P_node.html("...");
@@ -1855,7 +1857,7 @@ function vsplit2()
function setPreviewEdit() function setPreviewEdit()
{ {
if(!$('#EDITWINDOW').is(':visible')) if(!$('#TH_Opreview').is(':visible'))
return false; return false;
var selected = $('#EDIT_FILM2 .diapo.selected'); var selected = $('#EDIT_FILM2 .diapo.selected');
@@ -1936,10 +1938,21 @@ function setPreviewEdit()
} }
function empty_preview_edit()
{
var el = $('#TH_Opreview .PNB10 object').parent();
if(el.parent().attr('id') != 'TH_Opreview')
{
el.empty();
el.remove();
}
$('#TH_Opreview .PNB10').empty();
}
function previewEdit(r) function previewEdit(r)
{ {
empty_preview_edit();
$('#TH_Opreview .PNB10').empty().append(p4.edit.T_records[r].preview.preview); $('#TH_Opreview .PNB10').append(p4.edit.T_records[r].preview.preview);
var data = p4.edit.T_records[r].preview; var data = p4.edit.T_records[r].preview;
@@ -1964,7 +1977,7 @@ function previewEdit(r)
} }
else else
{ {
flowplayer("FLASHPREVIEW", '/include/flowplayer/flowplayer-3.2.2.swf',{ flowplayer("rolloverpreview", '/include/flowplayer/flowplayer-3.2.6.swf',{
clip: { clip: {
autoPlay: true, autoPlay: true,
autoBuffering:true, autoBuffering:true,
@@ -1978,7 +1991,7 @@ function previewEdit(r)
}, },
plugins: { plugins: {
h264streaming: { h264streaming: {
url: '/include/flowplayer/flowplayer.pseudostreaming-3.2.2.swf' url: '/include/flowplayer/flowplayer.pseudostreaming-3.2.6.swf'
} }
} }
}); });
@@ -2000,7 +2013,22 @@ function startThisEditing(sbas_id,what,regbasprid,ssel)
p4.edit.regbasprid = regbasprid; p4.edit.regbasprid = regbasprid;
p4.edit.ssel = ssel; p4.edit.ssel = ssel;
$('#EDIT_MID_R .tabs').tabs(); $('#EDIT_MID_R .tabs').tabs(
{
select: function(event, ui)
{
var bloc = $('#EDIT_FILM2 .diapo.video_bloc .previewTips');
if($(ui.panel).attr('id') == 'TH_Opreview')
{
bloc.hide();
}
else
{
bloc.show();
}
}
}
);
$('#divS div.edit_field:odd').addClass('odd'); $('#divS div.edit_field:odd').addClass('odd');
$('#divS div').bind('mouseover',function(){ $('#divS div').bind('mouseover',function(){

View File

@@ -61,7 +61,7 @@ if($request->has_post_datas())
try{ try{
$story = new basket(); $story = new basket();
$story->name = $parm['name']; $story->name = $parm['name'];
$story->desc = $parm['desc']; $story->desc = strip_tags(str_replace('<br>',"\n",$parm['desc']));
$story->is_grouping = true; $story->is_grouping = true;
$story->base_id = $parm['coll']; $story->base_id = $parm['coll'];
$story->save(); $story->save();

View File

@@ -114,7 +114,7 @@ $right = false;
switch($type) switch($type)
{ {
case 'video': case 'video':
$embed = '<object width="100%" height="100%" type="application/x-shockwave-flash" data="'.GV_ServerName.'include/flowplayer/flowplayer-3.2.2.swf">'. $embed = '<object width="100%" height="100%" type="application/x-shockwave-flash" data="'.GV_ServerName.'include/flowplayer/flowplayer-3.2.6.swf">'.
'<param value="true" name="allowfullscreen">'. '<param value="true" name="allowfullscreen">'.
'<param value="always" name="allowscriptaccess">'. '<param value="always" name="allowscriptaccess">'.
'<param value="high" name="quality">'. '<param value="high" name="quality">'.

View File

@@ -184,13 +184,14 @@ function T_filter_delayed2(f, delay, mode)
var zurl = "/xmlhttp/search_th_term_prod.j.php" var zurl = "/xmlhttp/search_th_term_prod.j.php"
+ "?sbid=" + sbas[i].sbid + "?sbid=" + sbas[i].sbid
+ "&t=" + encodeURIComponent(f); + "&t=" + encodeURIComponent(f);
sbas[i].seeker = $.get(
zurl, sbas[i].seeker = $.ajax({
[], url: zurl,
function(j, status) type:'POST',
{ data: [],
if(status == 'success') dataType:'json',
{ success: function(j)
{
var z = '#TX_P\\.' + j.parm['sbid'] + '\\.T'; var z = '#TX_P\\.' + j.parm['sbid'] + '\\.T';
var o = $(z); var o = $(z);
@@ -200,10 +201,17 @@ function T_filter_delayed2(f, delay, mode)
if(isLast) if(isLast)
$(z).addClass('last'); $(z).addClass('last');
} },
}, error:function(){
"json"
); },
timeout:function(){
}
});
} }
} }
else if(mode=='CANDIDATE') else if(mode=='CANDIDATE')
@@ -219,13 +227,13 @@ function T_filter_delayed2(f, delay, mode)
zurl += "&t=" + encodeURIComponent(f) zurl += "&t=" + encodeURIComponent(f)
+ "&field=" + encodeURIComponent(trees.C._selInfos.field); + "&field=" + encodeURIComponent(trees.C._selInfos.field);
} }
sbas[i].seeker = $.get( sbas[i].seeker = $.ajax({
zurl, url: zurl,
[], type:'POST',
function(j, status) data: [],
{ dataType:'json',
if(status == 'success') success: function(j)
{ {
var z = '#TX_P\\.' + j.parm['sbid'] + '\\.T'; var z = '#TX_P\\.' + j.parm['sbid'] + '\\.T';
var o = $(z); var o = $(z);
@@ -235,10 +243,15 @@ function T_filter_delayed2(f, delay, mode)
if(isLast) if(isLast)
$(z).addClass('last'); $(z).addClass('last');
} },
}, error:function(){
"json"
); },
timeout:function(){
}
});
} }
} }
}, },
@@ -358,6 +371,8 @@ function T_acceptCandidates_OK(dlgnode)
// $("#THPD_confirm_accept_dlg_msg").dialog("close"); // $("#THPD_confirm_accept_dlg_msg").dialog("close");
}, },
error:function(){},
timeout:function(){},
_ret: null // private alchemy _ret: null // private alchemy
}; };
@@ -878,40 +893,12 @@ function replaceEditSel(value)
return; return;
} }
function crossBrowser_XMLHttpRequest()
{
var xmlhttp=false;
var e;
try
{
xmlhttp=new XMLHttpRequest();
}
catch(e)
{
try
{
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
xmlhttp=false;
}
}
}
return xmlhttp;
}
function ThesauThesaurusSeeker(sbas_id) function ThesauThesaurusSeeker(sbas_id)
{ {
this.sbas_id = sbas_id; this.sbas_id = sbas_id;
this._ctimer = null; this._ctimer = null;
this._xmlhttp = new crossBrowser_XMLHttpRequest(); this._xmlhttp = null;
this.tObj = { 'TH_searching':null , 'TH_P':null , 'TH_K':null }; this.tObj = { 'TH_searching':null , 'TH_P':null , 'TH_K':null };
this.search = function(txt) { this.search = function(txt) {
if(this._ctimer) if(this._ctimer)
@@ -921,69 +908,100 @@ function ThesauThesaurusSeeker(sbas_id)
} ; } ;
this.search_delayed = function(txt) { this.search_delayed = function(txt) {
var me = this; var me = this;
this._xmlhttp.abort(); if($this._xmlttp.abort && typeof $this._xmlttp.abort == 'function')
{
this._xmlhttp.abort();
}
var url = "/xmlhttp/openbranches_prod.x.php"; var url = "/xmlhttp/openbranches_prod.x.php";
var parms = "bid=" + this.sbas_id + "&lng=<?php echo $lng?>" + "&t=" + encodeURIComponent(txt); var parms = {
parms += "&mod=TREE"; bid : this.sbas_id,
this._xmlhttp.open("POST", url, true); // yes, BEFORE setting callback lng : "<?php echo $lng?>",
this._xmlhttp.onreadystatechange = function() { me.xmlhttpstatechanged(); } ; t : txt,
this._xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); mod : "TREE"
this._xmlhttp.send(parms); };
this._xmlhttp = $.ajax({
url: url,
type:'POST',
data: parms,
success: function(ret)
{
me.xmlhttpstatechanged(ret);
},
error:function(){
},
timeout:function(){
}
});
this._ctimer = null; this._ctimer = null;
} ; } ;
this.openBranch = function(id, thid) { this.openBranch = function(id, thid) {
var me = this; var me = this;
this._xmlhttp.abort(); if($this._xmlttp.abort && typeof $this._xmlttp.abort == 'function')
{
this._xmlhttp.abort();
}
var url = "/xmlhttp/getterm_prod.x.php"; var url = "/xmlhttp/getterm_prod.x.php";
var parms = "bid=" + sbas_id; var parms = {
parms += "&lng=<?php echo $lng?>"; bid : this.sbas_id,
parms += "&sortsy=1"; lng : "<?php echo $lng?>",
parms += "&id=" + thid; sortsy : 1,
parms += "&typ=TH"; id : thid,
this._xmlhttp.open("POST", url, true); // yes, BEFORE setting callback typ : "TH"
this._xmlhttp.onreadystatechange = function() { me.xmlhttpstatechanged(id); } ; }
this._xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
this._xmlhttp.send(parms); this._xmlhttp = $.ajax({
url: url,
type:'POST',
data: parms,
success: function(ret)
{
me.xmlhttpstatechanged(ret, id);
},
error:function(){
},
timeout:function(){
}
});
}; };
this.xmlhttpstatechanged = function(id) { this.xmlhttpstatechanged = function(ret, id) {
try try
{ {
if (this._xmlhttp.readyState==4) if(!this.tObj["TH_searching"])
{ this.tObj["TH_searching"] = document.getElementById("TH_searching");
if(!this.tObj["TH_searching"]) this.tObj["TH_searching"].src = "/skins/icons/ftp-loader-blank.gif";
this.tObj["TH_searching"] = document.getElementById("TH_searching");
this.tObj["TH_searching"].src = "/skins/icons/ftp-loader-blank.gif";
if (this._xmlhttp.status==200) if(ret) // && (typeof(ret.parsed)=="undefined" || ret.parsed))
{ {
var ret = this._xmlhttp.responseXML; var htmlnodes = ret.getElementsByTagName("html");
if(ret) // && (typeof(ret.parsed)=="undefined" || ret.parsed)) if(htmlnodes && htmlnodes.length==1 && (htmlnode=htmlnodes.item(0).firstChild))
{ {
var htmlnodes = ret.getElementsByTagName("html"); if(typeof(id)=="undefined")
if(htmlnodes && htmlnodes.length==1 && (htmlnode=htmlnodes.item(0).firstChild)) {
{ // called from search or 'auto' : full thesaurus search
if(typeof(id)=="undefined") if(!this.tObj["TH_P"])
{ this.tObj["TH_P"] = document.getElementById("TH_P."+this.sbas_id+".T");
// called from search or 'auto' : full thesaurus search if(!this.tObj["TH_K"])
if(!this.tObj["TH_P"]) this.tObj["TH_K"] = document.getElementById("TH_K."+this.sbas_id+".T");
this.tObj["TH_P"] = document.getElementById("TH_P."+this.sbas_id+".T"); this.tObj["TH_P"].innerHTML = "...";
if(!this.tObj["TH_K"]) this.tObj["TH_K"].className = "h";
this.tObj["TH_K"] = document.getElementById("TH_K."+this.sbas_id+".T"); this.tObj["TH_K"].innerHTML = htmlnode.nodeValue;
this.tObj["TH_P"].innerHTML = "..."; }
this.tObj["TH_K"].className = "h"; else
this.tObj["TH_K"].innerHTML = htmlnode.nodeValue; {
} // called from 'openBranch'
else // var js = "document.getElementById('TH_K."+thid+"').innerHTML = \""+htmlnode.nodeValue+"\"";
{ // self.setTimeout(js, 10);
// called from 'openBranch' document.getElementById("TH_K."+id).innerHTML = htmlnode.nodeValue;
// var js = "document.getElementById('TH_K."+thid+"').innerHTML = \""+htmlnode.nodeValue+"\""; }
// self.setTimeout(js, 10); }
document.getElementById("TH_K."+id).innerHTML = htmlnode.nodeValue; }
}
}
}
}
}
} }
catch(err) catch(err)
{ {