<?php

chdir($_SERVER['DOCUMENT_ROOT']);

include_once("common/constants.inc");
include_once("common/db_utils.php");
include_once("common/segf.php");


class mobileappserver {

  var $isAuthenticated;
  var $user = null;

  public function __construct() {
    $this->isAuthenticated = false;
  }

  private function login($username, $password) {
    $this->isAuthenticated = false;
    $this->user = login($username, $password);
    if ($this->user != null)
      $this->isAuthenticated = true;

    return $this->isAuthenticated;
  }

  // input: array("username", "password", "kezdodatum", "vegsodatum") or json format
  // output: feluletek in json format
  public function getFeluletek($params) {
    $data = null;
    $ret = json_encode(array("false"));
    if (is_array($params))
      $data = $params;
    else
      $data = json_decode($params, true);

    if (isset($data["username"]) && isset($data["password"]) && isset($data["kezdodatum"]) && isset($data["vegsodatum"])) {
      if ($this->login($data["username"], $data["password"])) {
        $feluletek = GetFeluletek($data["kezdodatum"], $data["vegsodatum"], $this->user["user_id"], $this->user["isadmin"], "", "");
//        errorlog(serialize($feluletek));
        $ret = json_encode($feluletek);
      }
    }
    return $ret;
  }

  public function getFtpParams($params) {
    $data = null;
    $ret = json_encode(array("false"));
    if (is_array($params))
      $data = $params;
    else
      $data = json_decode($params, true);

    if (isset($data["username"]) && isset($data["password"])) {
      if ($this->login($data["username"], $data["password"])) {
        $data = array("ftp_server" => FTP_SERVER, "ftp_port" => FTP_PORT, "ftp_username" => FTP_USERNAME, "ftp_password" => FTP_PASSWORD, "ftp_use_ssl" => FTP_USE_SSL);
        $ret = json_encode($data);
      }
    }
    return $ret;
  }
  
  public function processImages($params) {
    $data = null;
    $ret = json_encode(array("false"));
    if (is_array($params))
      $data = $params;
    else
      $data = json_decode($params, true);

    if (isset($data["username"]) && isset($data["password"]) && isset($data["filename"])) {
      if ($this->login($data["username"], $data["password"])) {
        if (!is_null($data["filename"]) && trim($data["filename"]) != "") {
          $ret_ = importZipFile(MOBILEAPP_DIRECTORY . $data["filename"]);
          if ($ret_["isComplete"]) {
            $ret = json_encode(array("true"));
            errorlog("Kepek feltoltese sikeresen megtortent NetFoto App-on keresztul!");
            mail("nagytamas@recomp.hu", "Kepfeltoltes NetFoto App-al", iconv("UTF-8", "ISO-8859-2", "Képek feltöltése sikeresen megtörtént NetFoto App-on keresztül!"), MAILHEADER);
          }
        }
      }
    }
    
    return $ret;
  }
}


$params = array("uri" => "mobileappserver.php");
$server = new SoapServer(null, $params);
$server->setClass("mobileappserver");
$server->handle();

?>
