<?php

include_once("common.php");


if ($_SESSION["user"]["isadmin"] && isset($_SESSION["userId"]))
  $userId = $_SESSION["userId"];
else {
  $userId = $_SESSION["user"]["user_id"];
  if ($_SESSION["user"]["isadmin"] && isset($_GET["userid"]) && $_GET["userid"] != 0)
    $userId = $_GET["userid"];
}


if (isset($_POST["admin"])) {

  $page = $_POST['page'];
  $limit = $_POST['rows'];
  $sidx = $_POST['sidx'];
  $sord = $_POST['sord'];
  if (!$sidx)
    $sidx = 1;
  
  // levalogatjuk a feluleteket a feltetelek alapjan
  $kezdodatum = $_POST['kezdodatum'];
  $vegsodatum = $_POST['vegsodatum'];
  
  if ($_POST['userid'] == null)
    $userId = array();
  else
    $userId = $_POST['userid'];
  $isAdmin = $_SESSION["user"]["isadmin"];
  $varosId = $_POST['varosid'];
  $kampanyId = trim($_POST['kampanyid']);
  $feluletKod = trim($_POST['feluletkod']);
  $searchFeluletKodCenter = $_POST['searchfeluletkodcenter'];
  $surfaceId = $_POST['surfaceid'];
  $isNeedPhoto = $_POST['isneedphoto'];
  $plakatNev = $_POST['plakatnev'];
  $fkezdodatum = $_POST['fkezdodatum'];
  $fvegsodatum = $_POST['fvegsodatum'];
  $uploadedPhoto = trim($_POST['uploadedphoto']);
  $cegId = $_POST['cegid'];
  $surfaceType = 0;
  if (isset($_POST['surfacetype']))
    $surfaceType = $_POST['surfacetype'];

  if ($_SESSION["user"]["isadmin"] == 2)
    $userId = $_SESSION["user"]["user_id"];

  if ($_POST['filter']) {
    $surfaces = GetFeluletek($kezdodatum, $vegsodatum, $userId, $isAdmin, $varosId, $kampanyId, $feluletKod, $searchFeluletKodCenter, $surfaceId, false, $isNeedPhoto, $fkezdodatum, $fvegsodatum, $uploadedPhoto, $cegId, $plakatNev, $surfaceType);
    $_SESSION['surfaces'] = $surfaces;
    $page = 1;
  } else {
    if (isset($_SESSION['surfaces']))
      $surfaces = $_SESSION['surfaces'];
    else {
      $surfaces = GetFeluletek($kezdodatum, $vegsodatum, $userId, $isAdmin, $varosId, $kampanyId, $feluletKod, $searchFeluletKodCenter, $surfaceId, false, $isNeedPhoto, $fkezdodatum, $fvegsodatum, $uploadedPhoto, $cegId, $plakatNev, $surfaceType);
      $_SESSION['surfaces'] = $surfaces;
      $page = 1;
    }
  }

  if ($fkezdodatum != "" || $fvegsodatum != "") {
    $surfaces_ = array();
    foreach ($surfaces as $surface) {
      $feluletId = $surface["ragacslist_id"];
      $feluletKod = $surface["felulet_kod"];
      $sajatKod = $surface["sajat_kod"];
      $kampanyId = $surface["kampany_id"];
      $ragacsDatumAsTimeStamp = strtotime($surface["ragasztas_datum"]);
      $ragasztasDatum = date("Y.m.d.", $ragacsDatumAsTimeStamp);
      $fkezdodatumAsTimeStamp = 0;
      if ($fkezdodatum != "")
        $fkezdodatumAsTimeStamp = strtotime(substr($fkezdodatum, 0, 4) . "-" . substr($fkezdodatum, 5, 2) . "-" . substr($fkezdodatum, 8, 2));
      $fvegsodatumAsTimeStamp = 0;
      if ($fvegsodatum != "")
        $fvegsodatumAsTimeStamp = strtotime(substr($fvegsodatum, 0, 4) . "-" . substr($fvegsodatum, 5, 2) . "-" . substr($fvegsodatum, 8, 2) . " 23:59:59");
      $kKepek = array();
      if (trim($surface['kihelyezesi_foto_datumok']) != "")
        $kKepek = json_decode($surface['kihelyezesi_foto_datumok'], true);
      $jKepek = array();
      if (trim($surface['javito_foto_datumok']) != "")
        $jKepek = json_decode($surface['javito_foto_datumok'], true);

      if ($surface["uploadedphoto"] > 0 && (count($kKepek) == 0 && count($jKepek) == 0))
        updateFotoDatumok($feluletId);

      $surfaceAdd = false;
      foreach ($kKepek as $kKep) {
        $imgTimestamp = strtotime(substr($kKep["timestamp"], 0, 4) . "-" . substr($kKep["timestamp"], 5, 2) . "-" . substr($kKep["timestamp"], 8, 2));
        if ($fkezdodatumAsTimeStamp > 0 && $fvegsodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp && $imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        } else if ($fkezdodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp)
            $surfaceAdd = true;
        } else if ($fvegsodatumAsTimeStamp > 0) {
          if ($imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        }
      }
  
      foreach ($jKepek as $jKep) {
        $imgTimestamp = strtotime(substr($jKep["timestamp"], 0, 4) . "-" . substr($jKep["timestamp"], 5, 2) . "-" . substr($jKep["timestamp"], 8, 2));
        if ($fkezdodatumAsTimeStamp > 0 && $fvegsodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp && $imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        } else if ($fkezdodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp)
            $surfaceAdd = true;
        } else if ($fvegsodatumAsTimeStamp > 0) {
          if ($imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        }
      }
  
      if ($surfaceAdd) {
        $surfaces_[] = $surface;
      }
    }
    $surfaces = $surfaces_;
  }
  $_SESSION['surfaces'] = $surfaces;

  usort($surfaces, 'cmpi');
  
  if ($sord == 'desc')
    $surfaces = array_reverse($surfaces);
  
  header("Content-type: text/xml;charset=utf-8");
  
  $count = count($surfaces);
  if ($count == 0)
    $limit = 0;
  
  if ($count > 0 && $limit > 0)
    $total_pages = ceil($count/$limit);
  else
    $total_pages = 0;
  
  if ($page > $total_pages)
    $page = $total_pages;
  
  $count_ = $page * $limit;
  if ($limit > 0 &&  $page == $total_pages)
    $count_ = $count;
  
  $ret = "<?xml version='1.0' encoding='utf-8' ?>";
  $ret .= "<rows>";
  
  $ret .= "<page>".$page."</page>";
  $ret .= "<total>".$total_pages."</total>";
  $ret .= "<records>".$count."</records>";
  
  for ($i=($page-1)*$limit;$i<$count_;$i++) {
    $row = $surfaces[$i];
    $ret .= "<row id='".$row['ragacslist_id']."'>";
    if (SERVER_SIDE && $row['ceg_id'] == 17)
      $ret .= "<cell>".str_replace("-", "", $row['felulet_kod'])."</cell>";
    else
      $ret .= "<cell>".$row['felulet_kod']."</cell>";
    $ret .= "<cell>".$row['sajat_kod']."</cell>";
    $ret .= "<cell><![CDATA[".$row['felulettipus']."]]></cell>";
    $ret .= "<cell><![CDATA[".$row['varos']."]]></cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['felulet_cim']) ."]]></cell>";
    $ret .= "<cell>".$row['kampany_id']."</cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['kampany_nev']) ."]]></cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['plakat']) ."]]></cell>";
    $ret .= "<cell><![CDATA[".$row['ragaszto']."]]></cell>";
    $ret .= "<cell>".$row['ragasztas_datum']."</cell>";
    $ret .= "<cell>".$row['lastuploadedphoto_datum']."</cell>";
    $ret .= "<cell>".$row['uploadedphoto']."</cell>";
    $ret .= "<cell>".$row['lezarva']."</cell>";

    if (trim($row['kihelyezesi_foto_datumok']) != "") {
      $kfotoStr = "";
      $kKepek = json_decode($row['kihelyezesi_foto_datumok'], true);
      foreach ($kKepek as $kep) {
        if ($kfotoStr == "")
          $kfotoStr .= $kep["timestamp"];
        else
          $kfotoStr .= ", " . $kep["timestamp"];
      }
      $ret .= "<cell><![CDATA[".$kfotoStr."]]></cell>";
    } else
      $ret .= "<cell></cell>";
    if (trim($row['javito_foto_datumok']) != "") {
      $jfotoStr = "";
      $jKepek = json_decode($row['javito_foto_datumok'], true);
      foreach ($jKepek as $kep) {
        if ($jfotoStr == "")
          $jfotoStr .= $kep["timestamp"];
        else
          $jfotoStr .= ", " . $kep["timestamp"];
      }
      $ret .= "<cell><![CDATA[".$jfotoStr."]]></cell>";
    } else
      $ret .= "<cell></cell>";
    
    $ret .= "</row>";
  }
  
  $ret .= "</rows>";
  
  echo $ret;

} else if (isset($_POST["ragaszto"])) {
  
  $page = $_POST['page'];
  $limit = $_POST['rows'];
  $sidx = $_POST['sidx'];
  $sord = $_POST['sord'];
  if (!$sidx)
    $sidx = 1;
  
  // levalogatjuk a feluleteket a feltetelek alapjan
  $kezdodatum = $_POST['kezdodatum'];
  $vegsodatum = $_POST['vegsodatum'];
  
  $varosId = $_POST['varosid'];
  $kampanyId = trim($_POST['kampanyid']);
  $feluletKod = trim($_POST['feluletkod']);
  $searchFeluletKodCenter = $_POST['searchfeluletkodcenter'];
  $surfaceId = $_POST['surfaceid'];
  $isNeedPhoto = $_POST['isneedphoto'];
  $plakatNev = $_POST['plakatnev'];
  $fkezdodatum = $_POST['fkezdodatum'];
  $fvegsodatum = $_POST['fvegsodatum'];
  
  if ($_POST['filter']) {
    $surfaces = GetFeluletek($kezdodatum, $vegsodatum, $userId, $_SESSION["user"]["isadmin"], $varosId, $kampanyId, $feluletKod, $searchFeluletKodCenter, $surfaceId, false, $isNeedPhoto, $fkezdodatum, $fvegsodatum, "", 0, $plakatNev);
    $_SESSION['surfaces'] = $surfaces;
    $page = 1;
  } else {
    if (isset($_SESSION['surfaces']))
      $surfaces = $_SESSION['surfaces'];
    else {
      $surfaces = GetFeluletek($kezdodatum, $vegsodatum, $userId, $_SESSION["user"]["isadmin"], $varosId, $kampanyId, $feluletKod, $searchFeluletKodCenter, $surfaceId, false, $isNeedPhoto, $fkezdodatum, $fvegsodatum, "", 0, $plakatNev);
      $_SESSION['surfaces'] = $surfaces;
      $page = 1;
    }
  }

  if ($fkezdodatum != "" || $fvegsodatum != "") {
    $surfaces_ = array();
    foreach ($surfaces as $surface) {
      $feluletId = $surface["ragacslist_id"];
      $feluletKod = $surface["felulet_kod"];
      $sajatKod = $surface["sajat_kod"];
      $kampanyId = $surface["kampany_id"];
      $ragacsDatumAsTimeStamp = strtotime($surface["ragasztas_datum"]);
      $ragasztasDatum = date("Y.m.d.", $ragacsDatumAsTimeStamp);
      $fkezdodatumAsTimeStamp = 0;
      if ($fkezdodatum != "")
        $fkezdodatumAsTimeStamp = strtotime(substr($fkezdodatum, 0, 4) . "-" . substr($fkezdodatum, 5, 2) . "-" . substr($fkezdodatum, 8, 2));
      $fvegsodatumAsTimeStamp = 0;
      if ($fvegsodatum != "")
        $fvegsodatumAsTimeStamp = strtotime(substr($fvegsodatum, 0, 4) . "-" . substr($fvegsodatum, 5, 2) . "-" . substr($fvegsodatum, 8, 2) . " 23:59:59");
      $kKepek = array();
      if (trim($surface['kihelyezesi_foto_datumok']) != "")
        $kKepek = json_decode($surface['kihelyezesi_foto_datumok'], true);
      $jKepek = array();
      if (trim($surface['javito_foto_datumok']) != "")
        $jKepek = json_decode($surface['javito_foto_datumok'], true);

      if ($surface["uploadedphoto"] > 0 && (count($kKepek) == 0 && count($jKepek) == 0))
        updateFotoDatumok($feluletId);

      $surfaceAdd = false;
      foreach ($kKepek as $kKep) {
        $imgTimestamp = strtotime(substr($kKep["timestamp"], 0, 4) . "-" . substr($kKep["timestamp"], 5, 2) . "-" . substr($kKep["timestamp"], 8, 2));
        if ($fkezdodatumAsTimeStamp > 0 && $fvegsodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp && $imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        } else if ($fkezdodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp)
            $surfaceAdd = true;
        } else if ($fvegsodatumAsTimeStamp > 0) {
          if ($imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        }
      }
  
      foreach ($jKepek as $jKep) {
        $imgTimestamp = strtotime(substr($jKep["timestamp"], 0, 4) . "-" . substr($jKep["timestamp"], 5, 2) . "-" . substr($jKep["timestamp"], 8, 2));
        if ($fkezdodatumAsTimeStamp > 0 && $fvegsodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp && $imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        } else if ($fkezdodatumAsTimeStamp > 0) {
          if ($fkezdodatumAsTimeStamp <= $imgTimestamp)
            $surfaceAdd = true;
        } else if ($fvegsodatumAsTimeStamp > 0) {
          if ($imgTimestamp <= $fvegsodatumAsTimeStamp)
            $surfaceAdd = true;
        }
      }
  
      if ($surfaceAdd) {
        $surfaces_[] = $surface;
      }
    }
    $surfaces = $surfaces_;
  }
  $_SESSION['surfaces'] = $surfaces;

  usort($surfaces, 'cmpi');
  
  if ($sord == 'desc')
    $surfaces = array_reverse($surfaces);
  
  header("Content-type: text/xml;charset=utf-8");
  
  $count = count($surfaces);
  if ($count == 0)
    $limit = 0;
  
  if ($count > 0 && $limit > 0)
    $total_pages = ceil($count/$limit);
  else
    $total_pages = 0;
  
  if ($page > $total_pages)
    $page = $total_pages;
  
  $count_ = $page * $limit;
  if ($limit > 0 &&  $page == $total_pages)
    $count_ = $count;
  
  $ret = "<?xml version='1.0' encoding='utf-8' ?>";
  $ret .= "<rows>";
  
  $ret .= "<page>".$page."</page>";
  $ret .= "<total>".$total_pages."</total>";
  $ret .= "<records>".$count."</records>";
  
  for ($i=($page-1)*$limit;$i<$count_;$i++) {
    $row = $surfaces[$i];
    $ret .= "<row id='".$row['ragacslist_id']."'>";
    if (SERVER_SIDE && $row['ceg_id'] == 17)
      $ret .= "<cell>".str_replace("-", "", $row['felulet_kod'])."</cell>";
    else
      $ret .= "<cell>".$row['felulet_kod']."</cell>";
    $ret .= "<cell>".$row['sajat_kod']."</cell>";
    $ret .= "<cell><![CDATA[".$row['felulettipus']."]]></cell>";
    $ret .= "<cell><![CDATA[".$row['varos']."]]></cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['felulet_cim']) ."]]></cell>";
    $ret .= "<cell>".$row['kampany_id']."</cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['kampany_nev']) ."]]></cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['plakat']) ."]]></cell>";
    $ret .= "<cell><![CDATA[".$row['ragaszto']."]]></cell>";
    $ret .= "<cell>".$row['ragasztas_datum']."</cell>";
    $ret .= "<cell>".$row['lastuploadedphoto_datum']."</cell>";
    $ret .= "<cell>".$row['uploadedphoto']."</cell>";
    $ret .= "<cell>".$row['lezarva']."</cell>";

    if (trim($row['kihelyezesi_foto_datumok']) != "") {
      $kfotoStr = "";
      $kKepek = json_decode($row['kihelyezesi_foto_datumok'], true);
      foreach ($kKepek as $kep) {
        if ($kfotoStr == "")
          $kfotoStr .= $kep["timestamp"];
        else
          $kfotoStr .= ", " . $kep["timestamp"];
      }
      $ret .= "<cell><![CDATA[".$kfotoStr."]]></cell>";
    } else
      $ret .= "<cell></cell>";
    if (trim($row['javito_foto_datumok']) != "") {
      $jfotoStr = "";
      $jKepek = json_decode($row['javito_foto_datumok'], true);
      foreach ($jKepek as $kep) {
        if ($jfotoStr == "")
          $jfotoStr .= $kep["timestamp"];
        else
          $jfotoStr .= ", " . $kep["timestamp"];
      }
      $ret .= "<cell><![CDATA[".$jfotoStr."]]></cell>";
    } else
      $ret .= "<cell></cell>";

    $ret .= "</row>";
  }
  
  $ret .= "</rows>";
  
  echo $ret;

} else if (isset($_POST["photo"])) {
  
  $page = $_POST['page'];
  $limit = $_POST['rows'];
  $sidx = $_POST['sidx'];
  $sord = $_POST['sord'];
  if (!$sidx)
    $sidx = 1;
  
  // levalogatjuk a feluleteket a feltetelek alapjan
  $datumFrom = $_POST['datumfrom'];
  $datumTo = $_POST['datumto'];
  $isNeedPhoto = $_POST['isneedphoto'];
  $plakatNev = $_POST['plakatnev'];
  $varosId = $_POST['varosid'];
  $kampanyId = $_POST['kampanyid'];
  $feluletKod = $_POST['feluletkod'];
  $searchFeluletKodCenter = $_POST['searchfeluletkodcenter'];
  $surfaceId = 0;
  if (isset($_POST['surfaceid']))
    $surfaceId = $_POST['surfaceid'];

  if ($_POST['filter']) {
    $surfaces = GetFeluletek($datumFrom, $datumTo, $userId, $_SESSION["user"]["isadmin"], $varosId, $kampanyId, $feluletKod, $searchFeluletKodCenter, $surfaceId, true, $isNeedPhoto, "", "", "", 0, $plakatNev);
    $_SESSION['surfaces'] = $surfaces;
    $page = 1;
  } else {
    if (isset($_SESSION['surfaces']))
      $surfaces = $_SESSION['surfaces'];
    else {
      $surfaces = GetFeluletek($datumFrom, $datumTo, $userId, $_SESSION["user"]["isadmin"], $varosId, $kampanyId, $feluletKod, $searchFeluletKodCenter, $surfaceId, true, $isNeedPhoto, "", "", "", 0, $plakatNev);
      $_SESSION['surfaces'] = $surfaces;
      $page = 1;
    }
  }
  
  usort($surfaces, 'cmpi');
  
  if ($sord == 'desc')
    $surfaces = array_reverse($surfaces);
  
  header("Content-type: text/xml;charset=utf-8");
  
  $count = count($surfaces);
  if ($count == 0)
    $limit = 0;
  
  if ($count > 0 && $limit > 0)
    $total_pages = ceil($count/$limit);
  else
    $total_pages = 0;
  
  if ($page > $total_pages)
    $page = $total_pages;
  
  $count_ = $page * $limit;
  if ($limit > 0 &&  $page == $total_pages)
    $count_ = $count;
  
  $ret = "<?xml version='1.0' encoding='utf-8' ?>";
  $ret .= "<rows>";
  
  $ret .= "<page>".$page."</page>";
  $ret .= "<total>".$total_pages."</total>";
  $ret .= "<records>".$count."</records>";
  
  for ($i=($page-1)*$limit;$i<$count_;$i++) {
    $row = $surfaces[$i];
    $ret .= "<row id='".$row['ragacslist_id']."'>";
    if (SERVER_SIDE && $row['ceg_id'] == 17)
      $ret .= "<cell>".str_replace("-", "", $row['felulet_kod'])."</cell>";
    else
      $ret .= "<cell>".$row['felulet_kod']."</cell>";
    $ret .= "<cell>".$row['sajat_kod']."</cell>";
    $ret .= "<cell><![CDATA[".$row['varos'].", " . str_replace("", "", $row['felulet_cim']) ."]]></cell>";
    $ret .= "<cell>".$row['ragasztas_datum']."</cell>";
    $ret .= "<cell><![CDATA[". str_replace("", "", $row['plakat']) ."]]></cell>";
    $ret .= "<cell>".$row['uploadedphoto']."</cell>";
    $ret .= "</row>";
  }
  
  $ret .= "</rows>";
  
  echo $ret;
  
}

?>
