get_parms("act", "lst", "SSTTID"); $lng = isset($session->locale)?$session->locale:GV_default_lng; if(isset($session->usr_id) && isset($session->ses_id)) { $ses_id = $session->ses_id; $usr_id = $session->usr_id; if(!($ph_session = phrasea_open_session((int)$ses_id, $usr_id))) { header("Location: /login/?err=no-session"); exit(); } } else { header("Location: /login/"); exit(); } ?> escape_string($usr_id).'" AND bu.usr_id = u.usr_id'; if($rs = $conn->query($sql)) { while($row = $conn->fetch_assoc($rs)) { $usrRight[$row["base_id"]] = $row["chgstatus"]; } $conn->free_result($rs); } if($parm['SSTTID']!='' && ($parm['lst']==null || $parm['lst']=='')) { // WARNIING : on demande le print d'un element de la zone temporaire $continu = true ; $parm['lst'] = ';'; $sql = 'SELECT * FROM (ssel LEFT JOIN sselcont ON ( ssel.ssel_id=sselcont.ssel_id AND ssel.ssel_id="'.$conn->escape_string($parm['SSTTID']).'") )' . ' WHERE ssel.ssel_id="'.$conn->escape_string($parm['SSTTID']).'" AND usr_id="' . $conn->escape_string($usr_id).'" ' ; $sql = 'SELECT s.*, c.*, sb.*, u.mask_and, u.mask_xor' . ' FROM ssel s, sselcont c, sbas sb, bas b, basusr u' . ' WHERE (s.usr_id="'.$conn->escape_string($usr_id).'"' . ' OR (s.public="1" AND s.pub_restrict="0")' . ' OR (s.public="1" AND s.pub_restrict="1" AND c.base_id IN' . ' (SELECT base_id FROM basusr WHERE usr_id = "'.$conn->escape_string($usr_id).'" AND actif = "1"))' . ' ) AND s.ssel_id="'.$conn->escape_string($parm["SSTTID"]) .'" AND s.ssel_id = c.ssel_id' . ' AND b.base_id = c.base_id AND b.sbas_id = sb.sbas_id AND u.usr_id = "'.$conn->escape_string($usr_id).'" AND u.base_id = b.base_id' . ' ORDER BY c.ord asc, sselcont_id DESC'; if($rs = $conn->query($sql)) { while( ($row=$conn->fetch_assoc($rs)) && $continu ) { $parm['lst'] .= $row['base_id'] . '_' . $row['record_id'].';' ; } $conn->free_result($rs); } } elseif($parm['SSTTID']!='' && $parm['lst']!=null && $parm['lst']!='') { } $lst = liste::filter(explode(';',$parm['lst'] )); foreach($lst as $basrec) { if($basrec && count($basrec)==2) { $sbasid = phrasea::sbasFromBas($basrec[0]); if(!isset($ndocs[$sbasid])) $ndocs[$sbasid] = 0; $ndocs[$sbasid]++; } } $parm['lst'] = implode(';',$lst); $tmpbasrec = liste::addType($lst); $types = null; $baseprefs = null; $dstatus = status::getDisplayStatus(); foreach($tmpbasrec as $onebasrec) { if($onebasrec!='') { // on va regarder le nb de sustitution $basrec = explode('_',$onebasrec); if(sizeof($basrec)==3) { $sbasid = phrasea::sbasFromBas($basrec[0]); // on verifie que on a le droits de changer les status sur les collections des documents droppe if(!isset($sbasSet[$sbasid])) { $baseprefs[$sbasid] = databox::get_sxml_structure($sbasid); $types[$sbasid] = null; $tmp_lst[$sbasid] = ''; $sbasSet[$sbasid] = true; $tbits[$sbasid] = isset($dstatus[$sbasid]) ? $dstatus[$sbasid] : array(); foreach($tbits[$sbasid] as $bit=>$values) $tbits[$sbasid][$bit]['nset'] = 0; $nrecs[$sbasid] = 0; $nbgrouping[$sbasid] = 0; } if(!isset($types[$sbasid][$basrec[2]])) $types[$sbasid][$basrec[2]] = null; $types[$sbasid][$basrec[2]][] = $basrec[0].'_'.$basrec[1]; if( function_exists("phrasea_isgrp") && phrasea_isgrp($ses_id, $basrec[0], $basrec[1])) { $nbgrouping[$sbasid]++; } $nrecs[$sbasid]++; $sta = strrev(phrasea_status($ses_id, (int)$basrec[0], (int)$basrec[1])); foreach($tbits[$sbasid] as $bit=>$values) $tbits[$sbasid][$bit]["nset"] += substr($sta, $bit, 1)!="0" ? 1 : 0; $tmp_lst[$sbasid] = ($tmp_lst[$sbasid]!=''?';':'').$basrec[1]; } } } ?>
$truth) { echo "

".$sbasNames[$sbasid]."

"; if($nrecs[$sbasid]==0 && $nbgrouping[$sbasid]>0) echo '
',sprintf(_('prod::status: edition de status de %d regroupements'),$nbgrouping[$sbasid]),'
'; if($nrecs[$sbasid]>0 && $nbgrouping[$sbasid]==0) echo '
',sprintf(_('prod::status: edition de status de %d documents'),$nrecs[$sbasid]),'
'; foreach($tbits[$sbasid] as $bit=>$values) $tbits[$sbasid][$bit]["status"] = $values["nset"]==0 ? 0 : ($values["nset"]==$nrecs[$sbasid] ? 1 : 2); // if(isset($baseprefs[$sbasid]) && $baseprefs[$sbasid]->statbits->bit) // { $nsb[$sbasid]=count($tbits[$sbasid]); // foreach($baseprefs[$sbasid]->statbits->bit as $sb) // { // $bit = (int)($sb["n"]); // if($bit>=0 && $bit<=63) // { // $tbits[$sbasid][$bit]["name"] = (string)($sb); // if((string)($sb) !==null) // $nsb[$sbasid]++; // // $tbits[$sbasid][$bit]["labelOn"] = (string)($sb["labelOn"]); // $tbits[$sbasid][$bit]["labelOff"] = (string)($sb["labelOff"]); // // } // } if($nsb[$sbasid] > 19) echo "
"; else echo "
"; echo "
"; foreach($tbits[$sbasid] as $bit=>$values) { // if($tbits[$sbasid][$bit]["name"]!==null) // { if(!isset($ndefined[$sbasid])) $ndefined[$sbasid] = 0; $ndefined[$sbasid]++; $inverse = ($values["status"]=="2"?"2":($values["status"]=="0"?"1":"0")); echo "" . "" . "" . ""; // } } ?>
" . "" . ""; if($values['img_off']) echo ' '; echo $values["labeloff"]."". "" . "" . ""; if($values['img_on']) echo ' '; echo $values["labelon"]."". "
0 ? _('prod::status: remettre a zero les status non nommes') : _('prod::status: remetter a zero tous les status'); if($ndefined[$sbasid]==0) echo _('prod::status: aucun status n\'est defini sur cette base') . "
\n"; echo "
"; if($nbgrouping[$sbasid]>0) { ?>
" />
$typeBR) { if(!$first) echo '
'; $first = false; echo '
'.$sbasNames[$sbas_id]."
"; //check des differents types pour cette SBAS $connsbas = connection::getInstance($sbas_id); if($connsbas) { $result = $connsbas->query("SHOW COLUMNS FROM record LIKE 'type'"); $arryEnum = false; if($connsbas->num_rows( $result ) > 0 ) { $row=$connsbas->fetch_assoc($result); preg_match_all("/'(.*?)'/", $row['Type'], $matches); $arryEnum = $matches[1]; } } $selectGal = '


'; echo $selectGal; unset($selectGal); foreach($typeBR as $type=>$BR) { echo '
'; foreach($BR as $rec) { $rec2 = explode('_',$rec); if(sizeof($rec2)==2) { $tmpsd = phrasea_subdefs($ses_id, $rec2[0],$rec2[1]); $dis = ''; $class = 'select'.$sbas_id; if( function_exists("phrasea_isgrp") && phrasea_isgrp($ses_id, $rec2[0], $rec2[1])) { $dis = 'disabled="disabled"'; $class = 'selectREG'.$sbas_id; } $select = ''; echo '
Record '.$rec2[1]."
"; $thumbnail = answer::getThumbnail($ses_id, $rec2[0],$rec2[1]); echo '
'; echo '
'.$select.'
'; flush(); } } echo '
'; } } ?>