<?php

include_once(DATEIPFAD . "includes/shopinitialize.inc.php");

/**
 * 
 * Copyright (C) Die Randgruppe GmbH
 * 
 * http://www.randshop.com
 * http://www.dierandgruppe.com
 * 
 * Unter der Lizenz von Die Randgruppe GmbH:
 * http://www.randshop.com/Lizenz
 *  
 * $Author$
 * $Date$
 * $Revision$
 * 
 */

function DeleteHersteller($HerstellerID) {
    
    $SQLString = 'DELETE FROM ' . TABLE_HERSTELLER . ' ';
    $SQLString .= 'WHERE ';
    $SQLString .= TABLE_HERSTELLER . '.id = \'' . $HerstellerID . '\' ';
    
    $MySQLQueryReferenz = errorlogged_mysql_query($SQLString);

    $SQLString = 'SELECT ';
    $SQLString .= TABLE_ARTIKEL . '.id ';
    $SQLString .= 'FROM ';
    $SQLString .= TABLE_ARTIKEL . ' ';
    $SQLString .= 'WHERE ';
    $SQLString .= TABLE_ARTIKEL . '.hersteller_id = \'' . $HerstellerID . '\' ';
    
    $MySQLQueryReferenz = errorlogged_mysql_query($SQLString);
    
    while ($ArtikelRow = mysql_fetch_array($MySQLQueryReferenz, MYSQL_ASSOC)) {
        
        $SQLString = 'SELECT ';
        $SQLString .= TABLE_LANGUAGE . '.language_id ';
        $SQLString .= 'FROM ';
        $SQLString .= TABLE_LANGUAGE . ' ';
        $SQLString .= 'WHERE ';
        $SQLString .= "(";
        $SQLString .= '(' . TABLE_LANGUAGE . '.language_active = 1) AND ';
        $SQLString .= " 1)";
        
        $MySQLQueryLanguageReference = errorlogged_mysql_query($SQLString);
        
        while ($LanguageRow = mysql_fetch_array($MySQLQueryLanguageReference, MYSQL_ASSOC)) {
        
            DeleteArtikelSEOURLElement($ArtikelRow['id'], 0, $HerstellerID, 0, $LanguageRow['language_id'], GetArtikelSEOURL($ArtikelRow['id'], $LanguageRow['language_id']), true);
            
        }
        
    }
    
    $SQLString = 'UPDATE ' . TABLE_ARTIKEL . ' SET ';
    $SQLString .= TABLE_ARTIKEL . '.hersteller_id = 0 ';
    $SQLString .= 'WHERE ';
    $SQLString .= TABLE_ARTIKEL . '.hersteller_id = \'' . $HerstellerID . '\' ';
    
    $MySQLQueryReferenz = errorlogged_mysql_query($SQLString);
    
    // SEOURL loeschen
    DeleteHerstellerSEOURL($HerstellerID);
    
}

function GetHerstellerDataArray($SortField = "", $SortOrder = "") {
    
    if (!$SortField) {
        $SortField = TABLE_HERSTELLER . ".name";
        $SortOrder = "ASC";
    }

    $HerstellerDataArray = array();

    // alle Hersteller einlesen 
    $SQLString = "SELECT ";
    $SQLString .= TABLE_HERSTELLER . ".id, ";
    $SQLString .= TABLE_HERSTELLER . ".name, ";
    $SQLString .= TABLE_HERSTELLER . ".url_name_vorgabe, ";
    $SQLString .= TABLE_HERSTELLER . ".url_name ";
    $SQLString .= "FROM ";
    $SQLString .= TABLE_HERSTELLER . " ";

    // Sortierung
    if ($SortField && $SortOrder) {
        $SQLString .= "ORDER BY " . $SortField . " " . $SortOrder . " "; 
    }

//    echo '$SQLString: ' . $SQLString . '<br>';

    $MySQLQueryReferenz = errorlogged_mysql_query($SQLString);
        
    while ($HerstellerRow = mysql_fetch_array($MySQLQueryReferenz, MYSQL_ASSOC)) {

        $HerstellerDataArray[] = $HerstellerRow;
        
    }

    return $HerstellerDataArray;

}

function GetHerstellerDetail($HerstellerID, $LanguageID = false) {

    $DefaultLanguageID = GetDefaultLanguageID();    
    if($LanguageID === false)
        $LanguageID = $DefaultLanguageID;
    
    $SQLString = "SELECT ";
    $SQLString .= TABLE_HERSTELLER . ".id, ";
    $SQLString .= TABLE_HERSTELLER . ".name, ";
    $SQLString .= 'IFNULL(' . TABLE_HERSTELLER_LANGU . ".beschreibung, std_langu.beschreibung) as beschreibung, ";
    $SQLString .= TABLE_HERSTELLER . ".url_name_vorgabe, ";
    $SQLString .= TABLE_HERSTELLER . ".url_name ";
    $SQLString .= "FROM ";
    $SQLString .= TABLE_HERSTELLER . " ";
    $SQLString .= 'LEFT JOIN ' . TABLE_HERSTELLER_LANGU . ' ON ' . TABLE_HERSTELLER . '.id = ' . TABLE_HERSTELLER_LANGU . '.hersteller_id AND ' . TABLE_HERSTELLER_LANGU . '.language_id = ' . $LanguageID . ' ';
    $SQLString .= 'LEFT JOIN ' . TABLE_HERSTELLER_LANGU . ' std_langu ON ' . TABLE_HERSTELLER . '.id = ' . TABLE_HERSTELLER_LANGU . '.hersteller_id AND ' . TABLE_HERSTELLER_LANGU . '.language_id = ' . $DefaultLanguageID . ' ';
    $SQLString .= "WHERE ";
    $SQLString .= TABLE_HERSTELLER . ".id = '" . $HerstellerID . "' ";

//    echo '$SQLString: ' . $SQLString . '<br>';

    $HerstellerObject = mysql_fetch_object(errorlogged_mysql_query($SQLString));

    return $HerstellerObject;

}

function SaveHersteller($HerstellerID, $Name, $Beschreibung, $URLNameVorgabe, $LanguageID) {
    
    // SEO Einstellungen einlesen
    $Einstellungen = GetEinstellungen('', 'seo');
    
    if ($Einstellungen->seo->sprechende_urls_aktiv || $URLNameVorgabe) {
        
        if ($URLNameVorgabe) {
            $URLName = DecodeHerstellerSEOName($URLNameVorgabe); 
        } else {
            $URLName = DecodeHerstellerSEOName($Name);
        }
        
    } else {
        
        $URLNameVorgabe = '';
        $URLName = '';
                
    }
    
    // ********************************************************************************
    // ** Daten speichern
    // ********************************************************************************
    
    // Hersteller schon vorhanden
    if ($HerstellerID) {
        
        $SQLString = "UPDATE " . TABLE_HERSTELLER . " SET ";
        $SQLString .= TABLE_HERSTELLER . ".name = '" . $Name . "', ";
        $SQLString .= TABLE_HERSTELLER . ".url_name_vorgabe = '" . $URLNameVorgabe . "', ";
        $SQLString .= TABLE_HERSTELLER . ".url_name = '" . $URLName . "', ";
        $SQLString .= TABLE_HERSTELLER . ".beschreibung = '" . $Beschreibung . "' ";
        $SQLString .= "WHERE ";
        $SQLString .= TABLE_HERSTELLER . ".id = '" . $HerstellerID . "'";
        
        $MySQLQueryReference = errorlogged_mysql_query($SQLString);
        
    // Hersteller neu anlegen
    } else {

        $SQLString = "INSERT INTO " . TABLE_HERSTELLER . " SET ";
        $SQLString .= TABLE_HERSTELLER . ".name = '" . $Name . "', ";
        $SQLString .= TABLE_HERSTELLER . ".url_name_vorgabe = '" . $URLNameVorgabe . "', ";
        $SQLString .= TABLE_HERSTELLER . ".url_name = '" . $URLName . "', ";
        $SQLString .= TABLE_HERSTELLER . ".beschreibung = '" . $Beschreibung . "' ";
                
        $MySQLQueryReference = errorlogged_mysql_query($SQLString);
        
        $HerstellerID = mysql_insert_id();
        
    }   
    
    $SQLString = 'INSERT INTO ' . TABLE_HERSTELLER_LANGU . ' SET ';
    $SQLString .= TABLE_HERSTELLER_LANGU . '.hersteller_id = ' . $HerstellerID . ', ';
    $SQLString .= TABLE_HERSTELLER_LANGU . '.language_id = ' . $LanguageID . ', ';
    $SQLString .= TABLE_HERSTELLER_LANGU . '.beschreibung = \'' . $Beschreibung . '\' ';
    $SQLString .= ' ON DUPLICATE KEY UPDATE ';
    $SQLString .= TABLE_HERSTELLER_LANGU . '.beschreibung = \'' . $Beschreibung . '\' ';
    
    errorlogged_mysql_query($SQLString);
    

    // SEO URLs neu definiern 
    if ($Einstellungen->seo->sprechende_urls_aktiv) {
        
        // alle aktiven Sprachen einlesen
        $SQLString = 'SELECT ';
        $SQLString .= TABLE_LANGUAGE . '.language_id ';
        $SQLString .= 'FROM ';
        $SQLString .= TABLE_LANGUAGE . ' ';
        $SQLString .= 'WHERE ';
        $SQLString .= "(";
        $SQLString .= '(' . TABLE_LANGUAGE . '.language_active = 1) AND ';
        $SQLString .= " 1)";
        
        $MySQLQueryReference = errorlogged_mysql_query($SQLString);
        
        while ($LanguageRow = mysql_fetch_array($MySQLQueryReference, MYSQL_ASSOC)) {
            
            SetHerstellerSEOURLs($HerstellerID, $LanguageRow['language_id']);
            SetArtikelHerstellerSEOURLs($HerstellerID, $LanguageRow['language_id']);
            
        }
    
    }
    
    
    return $HerstellerID;
    
}


function GetHersteller() {
	$SQLString = "SELECT * FROM " . TABLE_HERSTELLER ." where id = '".$herstellerid."'"; 
	$QuerryReferenz = errorlogged_mysql_query($SQLString);
	$QuerryResult = mysql_fetch_array($QuerryReferenz, MYSQL_ASSOC);
	return $QuerryResult->name;
}


function GetAnzahlHersteller() {
	
	$SQLString = "SELECT COUNT(*) AS Herstelleranzahl FROM " . TABLE_HERSTELLER; 
	$QuerryObject = mysql_fetch_object(errorlogged_mysql_query($SQLString));
	
	return $QuerryObject->Herstelleranzahl;

}

?>