PHP-Export - myconfig.php

Aus OpenEstate-Wiki

Wechseln zu: Navigation, Suche
Website-Export via ImmoTool
PHP-Export - myconfig.php

Inhaltsverzeichnis

Was macht diese Datei?

In der Datei myconfig.php werden PHP-Funktionen definiert, über die das Verhalten der Skripte individuell angepasst werden kann.

Änderungen an dieser Datei bleiben erhalten!

  • Beim ersten PHP-Export via ImmoTool wird eine leere myconfig.php auf den FTP-Server übertragen.
  • Bei jedem folgenden Export wird die Datei nicht erneut exportiert, solange diese nicht vom FTP-Server gelöscht wurde.

Allgemeine Einstellungen

Um die allgemeinen Konfigurationen zu überschreiben, kann die Funktion load_config_default verwendet werden.

  /**
   * Allgemeine Konfiguration überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_default( &$config )
  {
    // ggf. individuelle Konfigurationswerte einfügen
  }

Alle Variablen der Klasse immotool_setup können überschrieben werden.

  /**
   * Allgemeine Konfiguration überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_default( &$config )
  {
    // ggf. individuelle Konfigurationswerte einfügen
    $config->DefaultLanguage = 'en';
    $config->AdditionalStylesheet = 'http://www.mywebsite.de/mystyle.css';
    $config->Timezone = 'Europe/Berlin';
    $config->ShowLanguageSelection = false;
    $config->DefaultLanguage = 'en';
    $config->MailMethod = 'sendmail';
    $config->ExposeUrlTemplate = 'http://www.mustermann-makler.de/immobilien/expose.php?id={ID}&lang={LANG}';
  }

Immobilienübersicht

Um die Konfiguration der Immobilienübersicht zu überschreiben, kann die Funktion load_config_index verwendet werden.

  /**
   * Konfiguration der Immobilienübersicht überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_index( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );  
 
    // ggf. individuelle Konfigurationswerte einfügen
  }

Alle Variablen der Klasse immotool_setup_index können überschrieben werden.

  /**
   * Konfiguration der Immobilienübersicht überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_index( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );  
 
    // ggf. individuelle Konfigurationswerte einfügen
    $config->ElementsPerPage = 5;
    $config->OrderOptions = array( 'id', 'city', 'price', 'rooms', 'area' );
    $config->DefaultOrderBy = 'area';
    $config->DefaultOrderDir = 'desc';
    $config->FilterOptions = array( 'type', 'neubau' );
    $config->FilterAllEstateTypes = false;
  }

Detailansicht

Um die Konfiguration der Detailansicht zu überschreiben, kann die Funktion load_config_expose verwendet werden.

  /**
   * Konfiguration der Exposédarstellung überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_expose( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );
 
    // ggf. individuelle Konfigurationswerte einfügen
  }

Alle Variablen der Klasse immotool_setup_expose können überschrieben werden.

  /**
   * Konfiguration der Exposédarstellung überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_expose( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );
 
    // ggf. individuelle Konfigurationswerte einfügen
    $config->ShowTerms = true;
    $config->ShowContactPerson = false;
    $config->ShowContactForm = true;
    $config->ShowContactCaptcha = true;
    $config->ShowContactTerms = true;
    $config->ContactRequiredFields = array( 'name', 'firstname', 'email', 'message' );
    $config->GalleryHandler = 'lightbox2';
    $config->ViewMode = 'listing';
    $config->ViewOrder = array( 'gallery', 'texts', 'details', 'contact', 'terms' );
  }

Stylesheets

Um die Konfiguration des Stylesheets zu überschreiben, kann die Funktion load_config_style verwendet werden.

  /**
   * Konfiguration des Stylesheets überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_style( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );
 
    // ggf. individuelle Konfigurationswerte einfügen
  }

Alle Variablen der Klasse immotool_setup_style können überschrieben werden.

  /**
   * Konfiguration des Stylesheets überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_style( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );
 
    // ggf. individuelle Konfigurationswerte einfügen
    $config->ShowGeneralStyles = false;
    $config->GeneralTextColor = 'blue';
    $config->LightBackgroundColor = '#FFFFFF';
    $config->DarkBackgroundColor = '#C0C0C0';
    $config->BorderColor = 'red';
  }

XML-Feeds

Um die Konfiguration der XML-Feeds zu überschreiben, kann die Funktion load_config_feeds verwendet werden.

  /**
   * Konfiguration der Immobilien-Feeds überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_feeds( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );  
 
    // ggf. individuelle Konfigurationswerte einfügen
  }

Alle Variablen der Klasse immotool_setup_trovit können überschrieben werden.

  /**
   * Konfiguration der Immobilien-Feeds überschreiben.
   * @param object $config Konfigurations-Objekt
   */
  function load_config_feeds( &$config )
  {
    // allgemeine Konfiguration (siehe oben)
    immotool_myconfig::load_config_default( $config );  
 
    // ggf. individuelle Konfigurationswerte einfügen
    $config->PublishAtomFeed = true;
    $config->PublishImmobiliareFeed = false;
    $config->PublishRssFeed = true;
    $config->PublishTrovitFeed = false;
    $config->AtomFeedLimit = 10;
    $config->RssFeedLimit = 5;
  }

Externer Mailversand

Mit Hilfe der Funktion send_mail kann ein individueller Mailversand durchgeführt werden.

  • Dies kann sinnvoll sein, wenn der PHP-Export in eine bestehende Webseite integriert wird, die bereits einen PHPmailer (der einen anderen E-Mailmechanismus) verwendet.
  • Wenn der Standard-Mailversand durchgeführt werden soll, kann return null; eingetragen werden. In diesem Falle erfolgt der Mailversand über den mitgelieferten PHPmailer.
  /**
   * Mailversand durchführen.
   * @param object $setup Konfigurations-Objekt
   * @param string $subject Betreff
   * @param string $body Mitteilung
   * @param string $mailToAdress Mailadresse des Empfängers
   * @param string $replyToAdress Mailadresse des Antwort-Empfängers
   * @param string $replyToName Name des Antwort-Empfängers
   * @return mixed Im Erfolgsfall 'true', sonst eine Fehlermeldung oder 'null' wenn kein Versand über die Funktion stattfand
   */
  function send_mail( &$setup, $subject, $body, $mailToAdress, $replyToAdress, $replyToName )
  {
    return null;
  }

Beispiele für externen Mailversand

Übersetzungstexte bearbeiten

Mit Hilfe der Funktion load_translations können die Übersetzungstexte individuell korrigiert oder erweitert werden.

  • Auf diesem Wege können die standardmäßig ausgelieferten Übersetzungstexte geändert werden.
  • Sollten eigene Erweiterungen vorgenommen werden, können auf diesem Wege weitere Übersetzungstexte hinterlegt werden.
  /**
   * Übersetzungen überschreiben / ergänzen.
   * @param array $translations verwendete Übersetzungen
   * @param string $lang zweistelliger ISO-Sprachcode
   */
  function load_translations( &$translations, $lang )
  {
    // ggf. individuelle Übersetzungen einfügen
  }

Die aktuell verwendeten Übersetzungen werden als Array im Parameter $translations übermittelt. Die derzeitige Sprache wird im Parameter $lang als zweistelliger Sprachcode angegeben. Um z.B. die Überschriften in der Immobilienübersicht auszutauschen, kann folgender Code verwendet werden.

  /**
   * Übersetzungen überschreiben / ergänzen.
   * @param array $translations verwendete Übersetzungen
   * @param string $lang zweistelliger ISO-Sprachcode
   */
  function load_translations( &$translations, $lang )
  {
    // ggf. individuelle Übersetzungen einfügen
    if ($lang=='de')
    {
      $translations['labels']['title.index'] = 'Übersicht';
      $translations['labels']['title.fav'] = 'Vormerkliste';
    }
    else if ($lang=='en')
    {
      $translations['labels']['title.index'] = 'Summary';
      $translations['labels']['title.fav'] = 'Favourites';
    }
  }

Die Standard-Übersetzungstexte können den Übersetzungsdateien data/i18n_XX.php entnommen werden.

Persönliche Werkzeuge