get_session(); $request = http_request::getInstance(); $parm = $request->get_parms("deny", "accept", "accept_hd", "watermark", "template"); $usr_id = $session->get_usr_id(); phrasea::headers(); $templates = array(); if (!is_null($parm['template'])) { foreach ($parm['template'] as $tmp) { if (trim($tmp) != '') { $tmp = explode('_', $tmp); if (count($tmp) == 2) { $templates[$tmp[0]] = $tmp[1]; } } } } $deny = $accept = $options = array(); if (!is_null($parm['deny'])) { foreach ($parm['deny'] as $den) { $den = explode('_', $den); if (count($den) == 2 && !isset($templates[$den[0]])) { $deny[$den[0]][$den[1]] = $den[1]; } } } if (!is_null($parm['accept'])) { foreach ($parm['accept'] as $acc) { $acc = explode('_', $acc); if (count($acc) == 2 && !isset($templates[$acc[0]])) { $accept[$acc[0]][$acc[1]] = $acc[1]; $options[$acc[0]][$acc[1]] = array('HD' => false, 'WM' => false); } } } if (!is_null($parm['accept_hd'])) { foreach ($parm['accept_hd'] as $accHD) { $accHD = explode('_', $accHD); if (count($accHD) == 2 && isset($accept[$accHD[0]]) && isset($options[$accHD[0]][$accHD[1]])) { $options[$accHD[0]][$accHD[1]]['HD'] = true; } } } if (!is_null($parm['watermark'])) { foreach ($parm['watermark'] as $wm) { $wm = explode('_', $wm); if (count($wm) == 2 && isset($accept[$wm[0]]) && isset($options[$wm[0]][$wm[1]])) { $options[$wm[0]][$wm[1]]['WM'] = true; } } } if (!is_null($templates) || !is_null($parm['deny']) || !is_null($parm['accept'])) { $done = array(); $cache_to_update = array(); foreach ($templates as $usr => $template_id) { $user = User_Adapter::getInstance($usr, $appbox); $cache_to_update[$usr] = true; $user_template = User_Adapter::getInstance($template_id, $appbox); $base_ids = array_keys($user_template->ACL()->get_granted_base()); $user->ACL()->apply_model($user_template, $base_ids); if (!isset($done[$usr])) $done[$usr] = array(); foreach($base_ids as $base_id) { $done[$usr][$base_id] = true; } $sql = "DELETE FROM demand WHERE usr_id = :usr_id AND (base_id = ".implode(' OR base_id = ', $base_ids).")"; $stmt = $appbox->get_connection()->prepare($sql); $stmt->execute(array(':usr_id' => $usr)); $stmt->closeCursor(); } $sql = "UPDATE demand SET en_cours=0, refuser=1, date_modif=now() WHERE usr_id = :usr_id AND base_id = :base_id"; $stmt = $appbox->get_connection()->prepare($sql); foreach ($deny as $usr => $bases) { $cache_to_update[$usr] = true; foreach ($bases as $bas) { $stmt->execute(array(':usr_id' => $usr, ':base_id' => $bas)); if (!isset($done[$usr])) $done[$usr] = array(); $done[$usr][$bas] = false; } } $stmt->closeCursor(); foreach ($accept as $usr => $bases) { $user = User_Adapter::getInstance($usr, $appbox); $cache_to_update[$usr] = true; foreach ($bases as $bas) { $user->ACL()->give_access_to_sbas(array(phrasea::sbasFromBas($bas))); $rights = array( 'canputinalbum'=>'1' ,'candwnldhd'=> ($options[$usr][$bas]['HD'] ? '1' : '0') ,'nowatermark'=>($options[$usr][$bas]['WM'] ? '0':'1') ,'candwnldpreview'=>'1' ,'actif'=>'1' ); $user->ACL()->give_access_to_base(array($bas)); $user->ACL()->update_rights_to_base($bas, $rights); if (!isset($done[$usr])) $done[$usr] = array(); $done[$usr][$bas] = true; $sql = "DELETE FROM demand WHERE usr_id = :usr_id AND base_id = :base_id"; $stmt = $appbox->get_connection()->prepare($sql); $stmt->execute(array(':usr_id' => $usr, ':base_id' => $bas)); $stmt->closeCursor(); } } foreach ($cache_to_update as $usr_id => $true) { $user = User_Adapter::getInstance($usr_id, $appbox); $user->ACL()->delete_data_from_cache(); unset($user); } foreach ($done as $usr => $bases) { $sql = 'SELECT usr_mail FROM usr WHERE usr_id = :usr_id'; $stmt = $appbox->get_connection()->prepare($sql); $stmt->execute(array(':usr_id' => $usr)); $row = $stmt->fetch(PDO::FETCH_ASSOC); $stmt->closeCursor(); $accept = $deny = ''; if ($row) { require_once(__DIR__ . '/../../lib/vendor/PHPMailer_v5.1/class.phpmailer.php'); if (PHPMailer::ValidateAddress($row['usr_mail'])) { foreach ($bases as $bas => $isok) { if ($isok === true) $accept .= '
  • ' . phrasea::bas_names($bas) . "
  • \n"; if ($isok === false) $deny .= '
  • ' . phrasea::bas_names($bas) . "
  • \n"; } if (($accept != '' || $deny != '')) { mail::register_confirm($row['usr_mail'], $accept, $deny); } } } } } ?>
    get_connection()->prepare($sql); $stmt->execute(array(':date' => date('Y-m-d', $lastMonth))); $stmt->closeCursor(); $usr_id = $session->get_usr_id(); $user = User_Adapter::getInstance($usr_id, $appbox); $baslist = array_keys($user->ACL()->get_granted_base(array('canadmin'))); $models = ''; $sql = 'SELECT usr_id, usr_login FROM usr WHERE model_of = :usr_id'; $stmt = $appbox->get_connection()->prepare($sql); $stmt->execute(array(':usr_id' => $session->get_usr_id())); $rs = $stmt->fetchAll(PDO::FETCH_ASSOC); $stmt->closeCursor(); foreach ($rs as $row) { $models .= ''; } $sql = "SELECT demand.date_modif,demand.base_id,usr.usr_id , usr.usr_login ,usr.usr_nom,usr.usr_prenom, usr.societe,CONCAT(usr.usr_nom,' ',usr.usr_prenom,'\n',fonction,' (',societe,')') AS info FROM (demand INNER JOIN usr on demand.usr_id=usr.usr_id AND demand.en_cours=1) WHERE (base_id='" . implode("' OR base_id='", $baslist) . "') ORDER BY demand.usr_id DESC,demand.base_id ASC"; $stmt = $appbox->get_connection()->prepare($sql); $stmt->execute(); $rs = $stmt->fetchAll(PDO::FETCH_ASSOC); $stmt->closeCursor(); $out .= "
    "; $out .= "

    " . _('admin:: demandes en cours') . "

    "; $out .= "
    "; $out .= "" . "" . "" . "" . "" . "" . "" . "" . "" . "" . "" . "
    HDW" . _('admin::compte-utilisateur identifiant') . "" . _('admin::compte-utilisateur societe') . "" . _('admin::compte-utilisateur date d\'inscription') . "" . _('admin::collection') . "
    "; $out .= "
    "; $out .= "
    "; $out .= "" . "" . "" . "" . "" . "" . "" . "" . "" . "" . ""; $class = ''; $currentUsr = null; $sql = "SELECT * FROM usr WHERE usr_id = :usr_id"; $stmt = $appbox->get_connection()->prepare($sql); foreach ($rs as $row) { if ($row['usr_id'] != $currentUsr) { if ($currentUsr !== null) { $out .= '
    '; } $currentUsr = $row['usr_id']; $class = $class == 'g' ? '' : 'g'; $info = ""; $stmt->execute(array(':usr_id' => $row['usr_id'])); $rowInfo = $stmt->fetch(PDO::FETCH_ASSOC); if ($rowInfo) { $info .= "
    " . _('admin::compte-utilisateur identifiant') . " : " . ($rowInfo["usr_login"]) . "
    "; $info .= "
    " . _('admin::compte-utilisateur nom') . "/" . _('admin::compte-utilisateur prenom') . " : "; $info .= ( $rowInfo["usr_nom"]) . " "; $info .= ( $rowInfo["usr_prenom"]); $info .= "
    "; $info .= "
    " . _('admin::compte-utilisateur email') . " : "; $info .= ( $rowInfo["usr_mail"]); $info .= "
    "; $info .= "
    " . _('admin::compte-utilisateur telephone') . " : "; $info .= ( $rowInfo["tel"]); $info .= "
    "; $info .= "
    " . _('admin::compte-utilisateur poste') . " : "; $info .= ( $rowInfo["fonction"]); $info .= "
    "; $info .= "
    " . _('admin::compte-utilisateur societe') . " : "; $info .= ( $rowInfo["societe"]); $info .= "
    "; $info .= "
    " . _('admin::compte-utilisateur activite') . " : "; $info .= ( $rowInfo["activite"]); $info .= "
    "; $info .= "
    " . _('admin::compte-utilisateur adresse') . " : "; $info .= "" . ($rowInfo["adresse"]); $info .= "
    "; $info .= "
    "; $info .= ( $rowInfo["cpostal"]) . " "; $info .= ( $rowInfo["ville"]); $info .= "
    " . "
    "; } $info = "
    " . $info . "
    "; $out .= ''; $out .= ""; $out .= " "; $out .= ""; $out .= ""; $out .= " "; $out .= ""; $out .= ""; $out .= " "; $out .= ""; $out .= ""; $out .= " "; $out .= ""; $out .= ''; $out .= '' . ($row["usr_login"]); $out .= ''; $tmp = $row["usr_nom"] . " " . $row["usr_prenom"] . ( $row["societe"] ? " (" . $row["societe"] . ")" : "" ); $out .= '' . (trim($tmp)) . ''; $out .= ' ' . _('admin:: appliquer le modele ') . ' '; $out .= ''; $out .= '
    ' . "" . "" . "" . "" . "" . "" . "" . "" . "" . ""; } $out .= ''; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= ''; $out .= ''; $out .= ''; } $stmt->closeCursor(); $out .= "
    "; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= ""; $out .= "' . ($row["date_modif"]) . '' . phrasea::bas_names($row['base_id']) . '

    \n"; $out .= "
    \n"; $out .= ""; $out .= ""; $out .= "
    "; $out .= "
    "; $out .= " "; $out .= "
    "; $out .= "
    "; $out .= " "; $out .= ""; print($out); ?>