/**
  * Constructor
  * @param adminDb $db
  * @param bool $showTypeID
  */
 public function __construct(adminDb $db, $showTypeID = false)
 {
     $this->db = $db;
     $this->servKey = $db->getServKey();
     $query = "SELECT a.*,d.id_doc,d.basename,d.dirname,t.nom type FROM acces a\n\t\t\t LEFT JOIN documents d USING(id_doc)\n\t\t\t LEFT JOIN types t USING (id_type)";
     if ($showTypeID !== false) {
         $query .= " WHERE t.id_type = {$showTypeID}";
     }
     $query .= " ORDER BY a.id_type, a.name";
     $stmt = $db->query($query);
     $stmt->setFetchMode(PDO::FETCH_CLASS, 'AdminDocumentAccess', array($this->servKey, $db));
     $this->access = $stmt->fetchAll();
     unset($stmt);
 }
 /**
  * Constructor
  * @param adminDb $db
  * @param bool $showTypeID
  */
 public function __construct(adminDb $db, $showTypeID = false)
 {
     $this->db = $db;
     $this->servKey = $db->getServKey();
     $query = "\n          SELECT\n            aa.*,\n            a.*,\n            t.nom type\n          FROM archives_acces aa\n            LEFT JOIN archives a USING (id_archive)\n            LEFT JOIN types t USING (id_type)";
     if ($showTypeID !== false) {
         $query .= " WHERE t.id_type = {$showTypeID}";
     }
     $query .= " ORDER BY aa.id_type, aa.rank";
     $stmt = $db->query($query);
     $stmt->setFetchMode(PDO::FETCH_CLASS, 'AdminArchiveAccess', array($this->servKey, $db));
     $this->access = $stmt->fetchAll();
     unset($stmt);
 }
Example #3
0
require 'classes/adminDb.class.php';
require 'classes/AdminImageAccessList.class.php';
require 'classes/AdminImageAccess.class.php';
$id_avion = $_GET['id_avion'];
// Supprimer tous les fichiers zip présent dans le répertoire en premier lieu
foreach (glob('*.zip') as $filename) {
    unlink($filename);
}
try {
    $db = new adminDb(DSN, USER, PASSW);
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
} catch (PDOException $e) {
    die("Erreur PDO : <br />" . $e->getMessage() . "<br />Trace : " . $e->getTraceAsString());
}
$avion = $db->query(sprintf('SELECT nom FROM produits WHERE id_avion=%d', $id_avion))->fetchColumn();
// Images activées
$allMediasAccess = new AdminImageAccessList($db, $id_avion);
$filename = $avion . '_' . date('mdY') . '.zip';
$zip = new ZipArchive();
if (file_exists($filename)) {
    unlink($filename);
}
$open = $zip->open($filename, ZipArchive::CREATE);
// Création d'une nouvelle archive
if ($open) {
    foreach ($allMediasAccess as $mediaAccess) {
        $zip->addFile($mediaAccess->srcname, $mediaAccess->basename);
    }
    $zip->close();
    header('Content-Disposition: attachment; filename="' . $filename . '"');
$title_line = 3;
$thead_line = 5;
$first = true;
$current_type = 'new';
$current_cat = 'new';
$current_product = 'new';
$i = 1;
$sheet_cnt = 0;
$workbook = new PHPExcel();
/* -------------------------------------------------------------------- */
/* -------------------------------------------------------------------- */
/* ----------------------------- Brochures ---------------------------- */
/* -------------------------------------------------------------------- */
/* -------------------------------------------------------------------- */
$query = "\n\t SELECT a.*,d.id_doc,d.basename,d.dirname,t.nom type, c.nom categorie, c.id_categorie,p.id_avion, p.nom avion\n\t FROM acces a\n\t JOIN documents d USING(id_doc)\n\t JOIN types t USING (id_type)\n\t JOIN acces_avion aa USING(id_doc)\n\t JOIN produits p USING (id_avion)\n\t JOIN categories c ON c.id_categorie=t.id_categorie\n\t ORDER BY p.menu ASC,c.id_categorie, a.id_type, a.name\n";
$stmt = $db->query($query);
$sheet_indexes = array();
// Lister toutes les brochures
while ($docAccess = $stmt->fetchObject('AdminDocumentAccess', array($servKey, $db))) {
    $new_type = $docAccess->getTypeId() != $current_type;
    $new_cat = $docAccess->getCatId() != $current_cat;
    $new_product = $docAccess->id_avion != $current_product;
    // Nouveau produit
    if ($new_product) {
        if ($sheet_cnt == 0) {
            $sheet = $workbook->getActiveSheet();
        } else {
            $sheet = $workbook->createSheet();
        }
        $sheet->getDefaultStyle()->applyFromArray($default_style);
        $sheet->getColumnDimension('A')->setAutoSize(true);
Example #5
0
require 'classes/AdminArchiveAccess.class.php';
require 'classes/image.class.php';
require 'classes/httpQueryStr.class.php';
require 'classes/locale.class.php';
try {
    $db = new adminDb(DSN, USER, PASSW);
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
} catch (PDOException $e) {
    die("Erreur PDO : <br />" . $e->getMessage() . "<br />Trace : " . $e->getTraceAsString());
}
$httpQuery = new httpQueryStr();
$httpQuery->setIndexDefVal('p', 'inactiveDocs');
//$httpQuery->setIndexDefVal('productID', $db->query('SELECT id_avion FROM produits ORDER BY menu LIMIT 1')->fetchColumn());
try {
    // Contrôleur
    require_once 'adminCtrl/' . $httpQuery->p . '.php';
    if (!$httpQuery->has('productID')) {
        $httpQuery->productID = $db->query('SELECT id_avion FROM produits ORDER BY menu LIMIT 1')->fetchColumn();
    }
} catch (PDOException $e) {
    $db->rollback();
    die($e->getMessage() . "<br />Détail :<br />" . $e->getTraceAsString());
    $error = $e->getMessage() . "<br />Détail :<br />" . $e->getTraceAsString();
} catch (Exception $e) {
    die($e->getMessage() . "<br />Détail :<br />" . $e->getTraceAsString());
    $error = $e->getMessage() . "<br />Détail :<br />" . $e->getTraceAsString();
}
include_once 'adminHtml/header.php';
include_once 'adminHtml/' . $httpQuery->p . '.php';
include_once 'adminHtml/footer.htm';
// $sheet->getColumnDimension('B')->setWidth(60);
// $sheet->getColumnDimension('C')->setWidth(64);
// $sheet->getColumnDimension('D')->setWidth(8);
// DATE
$sheet->setCellValue('A1', 'Generated : ' . date('D,M dS Y'));
$sheet->mergeCells('A1:' . numToLetter($theads_cnt) . '1');
// TITRE FEUILLE
$sheet->setTitle("Marketingfalcon Users");
$sheet->setCellValue('A' . $title_line, "Marketingfalcon Users");
$sheet->duplicateStyleArray($style_titre, 'A' . $title_line . ':' . numToLetter($theads_cnt) . $title_line);
$sheet->mergeCells('A' . $title_line . ':' . numToLetter($theads_cnt) . $title_line);
// EN TETES
foreach ($theads as $i => $val) {
    $sheet->setCellValue(numToLetter($i + 1) . $thead_line, $val);
}
$stmt = $db->query("\n\t SELECT *\n\t FROM utilisateurs\n\t ORDER BY login ASC\n");
// Lister tous les utilisateurs
while ($user = $stmt->fetch(PDO::FETCH_ASSOC)) {
    // Ligne utilisateur
    $sheet->setCellValue('A' . $row_cnt, $user['id']);
    // ID
    $sheet->setCellValue('B' . $row_cnt, $user['login']);
    // Document Name
    $sheet->setCellValue('C' . $row_cnt, $user['description']);
    // Link
    $sheet->duplicateStyleArray($style_user_line, 'A' . $row_cnt . ':' . numToLetter($theads_cnt) . $row_cnt);
    $row_cnt++;
}
$stmt = NULL;
unset($stmt);
$workbook->setActiveSheetIndex(0);