Benutzeravatar
jeje
Beiträge: 175
Registriert: 14. Mai 2008, 17:54
Wohnort: Frankfurt/M
Kontaktdaten: Website

Re: TvsShop

11. Jun 2015, 13:31

Hallo Nuxx,

bin auch schon am basteln :)

Gruß
Jochen
Nicht ärgern - Lebbe geht weider | Mein-Office | Referenzen

Benutzeravatar
jeje
Beiträge: 175
Registriert: 14. Mai 2008, 17:54
Wohnort: Frankfurt/M
Kontaktdaten: Website

Re: TvsShop

11. Jun 2015, 15:41

Hallo Michael,

ich habe mal die Modulausgabe von Shopausgabe ein bischen angepasst, so könnte es gehen das bei der Bestellung AGB und Wiederuf berücksicht wird und darunter noch mal der Warenkorb um die Übersicht vor der Bestellung zu gewährleisten.

Code: Alles auswählen

<?php

	global $REX;

	require_once ($REX['INCLUDE_PATH'] .'/addons/tvsshop/classes/shopUrlRewrite.inc.php');

	if (!isset ($_SESSION)) { session_start(); }

	$table_pre	= $REX['TABLE_PREFIX'] . $REX['ADDON']['rxid']['tvsshop'];
	$thispage	= "tvsshop";
	$art_table	= $table_pre . "_articles";
	$cat_table	= $table_pre . "_categories";
	$orders_table= $table_pre . "_orders";
	
	$article_id	= "REX_ARTICLE_ID";		
	$tvsshop_mode	= rex_get('mode', 'string');
	if ($tvsshop_mode == "")
		$tvsshop_mode	= rex_post('mode', 'string');
		
	// Supported Modes:
	//	addtocart
	//	showbasket
	//	delorderpos
	//	clearbasket
	//	checkout
	//	sendorder
	//	orderfinished
	// ----------------
	
	$tvsshop_art_id		= rex_get('art_id', 'int', -1);
	if ($tvsshop_art_id == -1)
		$tvsshop_art_id		= rex_post('art_id', 'int', -1);

	if (!function_exists('clearBasket')) {
		function clearBasket() {
			global $_SESSION;
			$_SESSION['tvsshop']['cart']['art_id'] = "";
			$_SESSION['tvsshop']['cart']['art_count'] = "";
			$_SESSION['tvsshop']['cart']['art_sumtotal'] = 0;
			$_SESSION['tvsshop']['cart']['art_features'] = "";
			$_SESSION['tvsshop']['cart']['ordertext'] = "";
			$_SESSION['tvsshop']['cart']['mailordertext'] = "";
		}
	}

	if (!function_exists('backToShopLink')) {
		function backToShopLink() {
			echo "<p><a href=\"" . rex_getUrl('','', array('mode'=>''))  . "\">Zur&uuml;ck zum Onlineshop</a></p>";
		}
	}

	if (!function_exists('showBasketLink')) {
		function showBasketLink() {
	//		global $_SESSION;
	//		$articles_count	= 0;
	//		$articles_sum_count	= 0;
	//		
	//		if (!isset ($_SESSION)) {
	//			session_start();
	//		} else {
	//			$articles_count	= explode(",", $_SESSION['tvsshop']['cart']['art_count']);
	//			$articles_sum_count	= 0;
	//			if ($articles_count > 0) {
	//				foreach ($articles_count as $i => $value) {
	//					$articles_sum_count = $articles_sum_count + doubleval($value);
	//				}
	//			}
	//		}
	//		echo "<p><a href=\"" . rex_getUrl('','', array('mode'=>'showbasket'), '&') . "\" title=\"Warenkorb anzeigen\">Warenkorb anzeigen</a> (" . $articles_sum_count . " Artikel)</p>";
		}
	}
	
	
	// Rewriting benutzen...
	if (OOAddon :: isAvailable('rexseo') || OOAddon :: isAvailable('seo42'))
		$article_url = getTvsShopUrl($tvsshop_art_id, $REX['CUR_CLANG']);
	else
		$article_url = rex_getUrl('','', array('art_id'=>$tvsshop_art_id));
	//
		
	$tvsshop_cat		= rex_get('tvsshop_cat', 'int', -1);

	$tvsshop_sort		= rex_get('art_sort', 'int', -1);
	if ($tvsshop_sort == -1 && "REX_VALUE[3]" != "")
		$tvsshop_sort = "REX_VALUE[3]";
	
	if ($tvsshop_cat == -1 && "REX_VALUE[2]" != "")
		$tvsshop_cat = "REX_VALUE[2]";
	$tvsshop_art_count	= rex_get('art_count', 'int', -1);
	$tvsshop_art_feature= rex_get('art_feature', 'string', '');

	$tvsshop_tag	= rex_get('tag', 'string', '');
	$tvsshop_start	= rex_get('tvsshop_start', 'int', -1);
	
	if ($tvsshop_start != -1) {
		$tvsshop_limit = "REX_VALUE[1]";
	} else {
		if ("REX_VALUE[1]" == "") {
			$tvsshop_start = 0;
			$tvsshop_limit = 5;
		} else {
			$tvsshop_start = 0;
			$tvsshop_limit = "REX_VALUE[1]";
		}
	}

	if ("REX_VALUE[4]" == "" || "REX_VALUE[4]" == "A")
		$tvsshop_asc = " ASC";
	else
		$tvsshop_asc = " DESC";	

	// INI-Variablen
	$myIniFile	= $REX['INCLUDE_PATH'] . "/addons/" . $thispage . "/" . $thispage . ".ini";
	$settings	= parse_ini_file($myIniFile);
	$shopname	= $settings['Shopname'];
	$imagesize	= $settings['ImageSize'];
	$usefacebook= $settings['UseFacebook'];
	$currency	= $settings['Currency'];
	$shopmail	= $settings['Shopmail'];
	$shipping	= str_replace(",",".",$settings['Shipping']);
	$mwst		= $settings['MwSt'];
	if ($mwst > 1)
		$mwstfaktor	= ($mwst / 100) + 1;
		
	// Sortierung übergeben...
	$sql_sort = "";
	if ($tvsshop_sort > -1)
		if ($tvsshop_sort == 0)
			$sql_sort = "title";
		elseif ($tvsshop_sort == 1)
			$sql_sort = "price";
		elseif ($tvsshop_sort == 2)
			$sql_sort = "artnr";
		else
			$sql_sort = "title";
			
	$sql_limit	= " LIMIT " . $tvsshop_start . ", " . $tvsshop_limit;
	
	if($tvsshop_cat > -1) {
		$tvssql = " AND category_id = " . $tvsshop_cat;

		$sql = new rex_sql();
		$sql->setQuery("SELECT * FROM " . $cat_table . " WHERE id = " . $tvsshop_cat);
		if ($sql->getRows() > 0 ) {
			echo "<h1>Artikel in der Kategorie '" . $sql->getValue('title') . "':</h1>";
		}
	}
	else {
		$tvssql = "";	}
	
	if ($tvsshop_tag != "")
		$tvssql .= " AND keywords like '%" . $tvsshop_tag . "%'";
		
	// post_id hat Priorität...
	if ($tvsshop_art_id != -1)
		$tvssql .= " AND id = " . $tvsshop_art_id;

	//
	// Ab hier die Modus Operandi ausarbeiten ;-)
	//
	if ($tvsshop_mode == "addtocart") {
		// Ãœbergebenen Artikel dem Warenkorb hinzuf&uuml;gen...
		// Ãœbergebenen Artikel dem Warenkorb hinzuf&uuml;gen...
		if ($_SESSION[$thispage]['cart']['art_id'] == '') {
			$articles = array();
			$articles_count = array();
		}
		else {
			$articles = explode(",",$_SESSION[$thispage]['cart']['art_id']);
			$articles_count = explode(",", $_SESSION[$thispage]['cart']['art_count']);
		}
		
		$key = array_search($tvsshop_art_id, $articles);

		if ($key > -1) {
			$articles_count[$key] = doubleval($articles_count[$key]) + $tvsshop_art_count;
		} else {
			array_push($articles, $tvsshop_art_id);
			array_push($articles_count, $tvsshop_art_count);
		}
		$_SESSION[$thispage]['cart']['art_id'] = implode(",",$articles);
		$_SESSION[$thispage]['cart']['art_count'] = implode(",",$articles_count);
		$tvsshop_mode = "showbasket";
	}

	if ($tvsshop_mode == "clearbasket") {
		// Warenkorb l&ouml;schen...
		clearBasket();
		backToShopLink();
	}
	
	if ($tvsshop_mode == "delorderpos") {
		// Artikelposition löschen...
		$articles = explode(",",$_SESSION[$thispage]['cart']['art_id']);
		$articles_count = explode(",", $_SESSION[$thispage]['cart']['art_count']);
		
		$key = array_search($tvsshop_art_id, $articles);

		if ($key > -1) {
			array_splice ($articles, $key, 1);
			array_splice ($articles_count, $key, 1);
		}
		$_SESSION[$thispage]['cart']['art_id'] = implode(",",$articles);
		$_SESSION[$thispage]['cart']['art_count'] = implode(",",$articles_count);
		$tvsshop_mode = "showbasket";
	}
	
	if ($tvsshop_mode == "sendorder") {
		// Bestellformular senden...
		$kdnr		= urldecode(rex_get('tvsshop_kdnr', 'string'));
		$name		= urldecode(rex_get('tvsshop_name', 'string'));
		$strasse	= urldecode(rex_get('tvsshop_strasse', 'string'));
		$plzort		= urldecode(rex_get('tvsshop_plzort', 'string'));
		$email		= urldecode(rex_get('tvsshop_email', 'string'));
		$telefon	= urldecode(rex_get('tvsshop_telefon', 'string'));
		
		$errormsg = "";
		if ($settings['Name_required'] == "1" && trim($name) == "")
			$errormsg .= "Bitte NAMEN eingeben<br />";
		if ($settings['Street_required'] == "1" && trim($strasse) == "")
			$errormsg .= "Bitte STRASSE eingeben<br />";
		if ($settings['Town_required'] == "1" && trim($plzort) == "")
			$errormsg .= "Bitte PLZ und ORT eingeben<br />";
		if ($settings['Phone_required'] == "1" && trim($telefon) == "")
			$errormsg .= "Bitte TELEFON eingeben<br />";
		if ($settings['Email_required'] == "1" && trim($email) == "")
			$errormsg .= "Bitte EMAIL eingeben<br />";
			
		if ($errormsg != "") {
			echo "<h2>Folgende Informationen fehlen:</h2><p>" . $errormsg . "</p>";
			$tvsshop_mode = "checkout";
		} else {
			$order = file_get_contents( $REX['INCLUDE_PATH'] . "/addons/tvsshop/pages/order.txt");
//			$order = $_SESSION['tvsshop']['cart']['mailordertext'];
			$to_search = array("{datum}","{uhrzeit}","{shopname}","{kdnr}","{name}","{strasse}","{plzort}","{email}","{telefon}","{bestelltext}");
			$to_replace = array(date("d.m.Y"),date("H:i:s"),$shopname,$kdnr,$name,$strasse,$plzort,$email,$telefon,$_SESSION['tvsshop']['cart']['mailordertext']);
			$order = str_replace($to_search, $to_replace, $order);
			$header  = "MIME-Version: 1.0\r\n";
			$header .= "Content-Type: text/plain, charset=utf-8\r\n";
			$header .= "Content-Transfer-Encoding: 8bit\r\n";
			$header .= "From: $shopmail\r\n";
			$header .= "X-Mailer: PHP " . phpversion() . "\r\n";
			// Bestellung speichern...
			$sql = new rex_sql();
			$sql->setQuery("INSERT INTO " . $orders_table . " (customer, ordertext, status, create_date) VALUES ('" . $customer. "','" . $order . "',0," . time() . ")");
			//
			if ($shopmail != "") {
				mail($shopmail, $shopname . ": Neue Bestellung vom " . date("d.m.Y H:i:s"), $order, $header, "-f" . $shopmail);
			} else {
				echo "<p>Keine Shopbetreiber-EMail-Adresse angegeben!</p>";
				$tvsshop_mode = "checkout";
			}
			if ($email != "") {
				mail($email, $shopname . ": Ihre Bestellung vom " . date("d.m.Y H:i:s"), $order, $header, "-f" . $shopmail);
			}
			$tvsshop_mode = "orderfinished";
		}
	}
	
	if ($tvsshop_mode == "orderfinished") {
		// Bestellvorgang abgeschlossen...
		echo "<p>Vielen Dank für Ihre Bestellung!</p>";
		echo "<p>Sie sollten in wenigen Minuten eine Bestätigung in Ihrem EMail-Postfach erhalten!</p>";
		clearBasket();
		$tvsshop_mode == "";
		backToShopLink();
	} elseif ($tvsshop_mode == "checkout") {
		// Bestellformular zeigen...
		echo "<div class=\"tvsshop_checkout\">";
		echo "<h1>Kasse</h1>";
		echo "<form id=\"tvsshop_checkout\" method=\"get\" action=\"" . rex_getUrl('') . "\">";
	//	echo "<p>Artikelsumme: " . sprintf("%01.2f",$_SESSION[$thispage]['cart']['art_sumtotal']) . $currency . "</p>";
		//showBasketLink();
		echo "<input name=\"mode\" type=\"hidden\" value=\"sendorder\" />";
		echo "<input name=\"tvsshop_art_id\" type=\"hidden\" value=\"" . $_SESSION[$thispage]['cart']['art_id'] . "\" />";
		echo "<input name=\"tvsshop_art_count\" type=\"hidden\" value=\"" . $_SESSION[$thispage]['cart']['art_count'] . "\" />";
		echo "<label for=\"tvsshop_kdnr\">KdNr. (sofern vorhanden):</label>";
		echo "<input name=\"tvsshop_kdnr\" type=\"text\" value=\"" . $kdnr . "\" />";
		echo "<label for=\"tvsshop_name\">Vorname/Name:" . (($settings['Name_required'] == "1") ? " (*)" : "") . "</label>";
		echo "<input name=\"tvsshop_name\" type=\"text\" value=\"" . $name . "\" />";
		echo "<label for=\"tvsshop_strasse\">Strasse:" . (($settings['Street_required'] == "1") ? " (*)" : "") . "</label>";
		echo "<input name=\"tvsshop_strasse\" type=\"text\" value=\"" . $strasse . "\" />";
		echo "<label for=\"tvsshop_plzort\">PLZ/Ort:" . (($settings['Town_required'] == "1") ? " (*)" : "") . "</label>";
		echo "<input name=\"tvsshop_plzort\" type=\"text\" value=\"" . $plzort . "\" />";
		echo "<label for=\"tvsshop_telefon\">Telefon:" . (($settings['Phone_required'] == "1") ? " (*)" : "") . "</label>";
		echo "<input name=\"tvsshop_telefon\" type=\"text\" value=\"" . $telefon . "\" />";
		echo "<label for=\"tvsshop_email\">E-Mail:" . (($settings['Email_required'] == "1") ? " (*)" : "") . "</label>";
		echo "<input name=\"tvsshop_email\" type=\"text\" value=\"" . $email . "\" />";
		echo "<p style=\"clear:both;\">Ich habe die [<a href=\"" . rex_getUrl(3) . "\" title=\"AGB anzeigen\">AGB</a>] des Anbieters gelesen und erkläre mit dem Absenden der Bestellung mein Einverständnis.<br/>Die [<a href=\"" . rex_getUrl(4) . "\" title=\"Widerrufsbelehrung anzeigen\">Widerrufsbelehrung</a>]  habe ich zur Kenntnis genommen.</p>";
		echo "<p style=\"clear:both;\">(*) Angaben werden ben&ouml;tigt!</p>";
		echo "<input name=\"abschicken\" class=\"submit\" type=\"submit\" value=\"Zahlungspflichtig bestellen\" />";
		echo "</form>";
		
		echo "<p>---------------------------- Ihre Bestellung ----------------------------------</p>";
		// Warenkorb einfügen ==========================================================================
				echo "<div class=\"tvsshop_basket\">";
		echo "<h1>Warenkorb</h1>";
		if ($_SESSION[$thispage]['cart']['art_id'] != '') {
		
			$articles			= explode(",", $_SESSION[$thispage]['cart']['art_id']);
			$articles_count		= explode(",", $_SESSION[$thispage]['cart']['art_count']);
			$articles_sum_count	= 0;
			$articles_sum		= 0;
			$articles_ordertext	= "";
			$articles_mailordertext	= "";
			
			$articles_ordertext .= "<table class=\"tvsshop_art_table\" summary=\"Warenkorb\">";
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<th class=\"art_col_1\">Titel</th>";
			$articles_ordertext .= "	<th class=\"art_col_2\">Anzahl</th>";
			$articles_ordertext .= "	<th class=\"art_col_3\">Einzelpreis</th>";
			$articles_ordertext .= "	<th class=\"art_col_4\">Summe</th>";
			$articles_ordertext .= "	<th class=\"art_col_5\">&nbsp;</th>";
			$articles_ordertext .= "</tr>";
			$articles_mailordertext	.= "Titel" . chr(9) . "Anzahl" .  chr(9) . "Summe\n";
			
			$sql = new rex_sql();
			foreach ($articles as $i => $value) {

				$sql->setQuery("SELECT * FROM " . $art_table . " WHERE id = " . $value . " AND status = 1");

				if ($sql->getRows() > 0 )
				{
					$articles_ordertext .= "<tr>";
					$articles_ordertext .= "	<td class=\"art_col_1\"><a href=\"" . $article_url . "\" title=\"" . $sql->getValue('title') . "\">" . $sql->getValue('title') . "</a></td>";
					$articles_ordertext .= "	<td class=\"art_col_2\">" . $articles_count[$i] . "</td>";
					$articles_ordertext .= "	<td class=\"art_col_3\">" . sprintf("%01.2f",$sql->getValue('price')) . " " . $currency . "</td>";
					$articles_ordertext .= "	<td class=\"art_col_4\">" . sprintf("%01.2f",$sql->getValue('price') * doubleval($articles_count[$i])) . " " . $currency . "</td>";
					$articles_ordertext .= "	<td class=\"art_col_5\"><a href=\"" . rex_getUrl('','', array('mode'=>'delorderpos','art_id'=>$sql->getValue('id')))  . "\" title=\"Artikel entfernen\">entfernen</a></td>";
					$articles_sum = $articles_sum + $sql->getValue('price') * doubleval($articles_count[$i]);
					$articles_sum_count = $articles_sum_count + doubleval($articles_count[$i]);
					$articles_ordertext .= "</tr>";
					$articles_mailordertext	.= $sql->getValue('title') . chr(9) . $articles_count[$i] .  chr(9) . sprintf("%01.2f",$sql->getValue('price') * doubleval($articles_count[$i])) . " " . $currency . "\n";
					$sql->next();
				}
			}
			$_SESSION[$thispage]['cart']['art_sumtotal'] = $articles_sum;
			if ($mwst <> 0) {
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td>&nbsp;</td>";
				$articles_ordertext .= "</tr>";
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td class=\"art_col_1\">Summe Netto:</td>";
				$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_4\">" . sprintf("%01.2f",$articles_sum / $mwstfaktor) . " " . $currency . "</td>";
				$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
				$articles_ordertext .= "</tr>";
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td class=\"art_col_1\">zzgl. MwSt." . $mwst . "%:</td>";
				$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_4\">" . sprintf("%01.2f",$articles_sum - ($articles_sum / $mwstfaktor)) . " " . $currency . "</td>";
				$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
				$articles_ordertext .= "</tr>";
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td class=\"art_col_1\">Summe Brutto:</td>";
				$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_4\"><b>" . sprintf("%01.2f",$articles_sum) . " " . $currency . "</b></td>";
				$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
				$articles_ordertext .= "</tr>";
			}
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<td>&nbsp;</td>";
			$articles_ordertext .= "</tr>";
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<td class=\"art_col_1\">Versandkosten:</td>";
			$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_4\"><b>" . sprintf("%01.2f",$shipping) . " " . $currency . "</b></td>";
			$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
			$articles_ordertext .= "</tr>";
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<td class=\"art_col_1\"><b>Gesamtsumme:</b></td>";
			$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_4\"><b>" . sprintf("%01.2f",$articles_sum + $shipping) . " " . $currency . "</b></td>";
			$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
			$articles_ordertext .= "</tr>";
			$articles_ordertext .= "</table>";
			$articles_mailordertext	.= "Versandkosten" . chr(9) . chr(9) . sprintf("%01.2f",$shipping) . " " . $currency . "\n";
			$articles_mailordertext	.= "Gesamt:" . chr(9) . $articles_sum_count .  chr(9) . sprintf("%01.2f",$articles_sum + $shipping) . " " . $currency . "\n";
			
			echo $articles_ordertext;
			$_SESSION['tvsshop']['cart']['mailordertext'] = $articles_mailordertext;

			echo "<p>";
			echo "	<a href=\"" . rex_getUrl('','', array('mode'=>'clearbasket'))  . "\" title=\"Warenkorb l&ouml;schen\">Warenkorb l&ouml;schen</a>";
			echo "	&nbsp;&nbsp;&nbsp;";
	//		echo "	<a href=\"" . rex_getUrl('','', array('mode'=>'checkout'))  . "\" title=\"Zur Kasse gehen\">Zur Kasse gehen</a>";
			echo "</p>";
			
			backToShopLink();
		} else {
		//	echo "<p>Ihr Warenkorb ist leer!</p>";
			backToShopLink();
		}
		echo "</div>";
		// Warenkorb einfügen Ende ======================================================================
		
		echo "</div>";
		// Ende		
	}
	if ($tvsshop_mode == "showbasket") {
		// Warenkorb anzeigen
		echo "<div class=\"tvsshop_basket\">";
		echo "<h1>Warenkorb</h1>";
		if ($_SESSION[$thispage]['cart']['art_id'] != '') {
		
			$articles			= explode(",", $_SESSION[$thispage]['cart']['art_id']);
			$articles_count		= explode(",", $_SESSION[$thispage]['cart']['art_count']);
			$articles_sum_count	= 0;
			$articles_sum		= 0;
			$articles_ordertext	= "";
			$articles_mailordertext	= "";
			
			$articles_ordertext .= "<table class=\"tvsshop_art_table\" summary=\"Warenkorb\">";
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<th class=\"art_col_1\">Titel</th>";
			$articles_ordertext .= "	<th class=\"art_col_2\">Anzahl</th>";
			$articles_ordertext .= "	<th class=\"art_col_3\">Einzelpreis</th>";
			$articles_ordertext .= "	<th class=\"art_col_4\">Summe</th>";
			$articles_ordertext .= "	<th class=\"art_col_5\">&nbsp;</th>";
			$articles_ordertext .= "</tr>";
			$articles_mailordertext	.= "Titel" . chr(9) . "Anzahl" .  chr(9) . "Summe\n";
			
			$sql = new rex_sql();
			foreach ($articles as $i => $value) {

				$sql->setQuery("SELECT * FROM " . $art_table . " WHERE id = " . $value . " AND status = 1");

				if ($sql->getRows() > 0 )
				{
					$articles_ordertext .= "<tr>";
					$articles_ordertext .= "	<td class=\"art_col_1\"><a href=\"" . $article_url . "\" title=\"" . $sql->getValue('title') . "\">" . $sql->getValue('title') . "</a></td>";
					$articles_ordertext .= "	<td class=\"art_col_2\">" . $articles_count[$i] . "</td>";
					$articles_ordertext .= "	<td class=\"art_col_3\">" . sprintf("%01.2f",$sql->getValue('price')) . " " . $currency . "</td>";
					$articles_ordertext .= "	<td class=\"art_col_4\">" . sprintf("%01.2f",$sql->getValue('price') * doubleval($articles_count[$i])) . " " . $currency . "</td>";
					$articles_ordertext .= "	<td class=\"art_col_5\"><a href=\"" . rex_getUrl('','', array('mode'=>'delorderpos','art_id'=>$sql->getValue('id')))  . "\" title=\"Artikel entfernen\">entfernen</a></td>";
					$articles_sum = $articles_sum + $sql->getValue('price') * doubleval($articles_count[$i]);
					$articles_sum_count = $articles_sum_count + doubleval($articles_count[$i]);
					$articles_ordertext .= "</tr>";
					$articles_mailordertext	.= $sql->getValue('title') . chr(9) . $articles_count[$i] .  chr(9) . sprintf("%01.2f",$sql->getValue('price') * doubleval($articles_count[$i])) . " " . $currency . "\n";
					$sql->next();
				}
			}
			$_SESSION[$thispage]['cart']['art_sumtotal'] = $articles_sum;
			if ($mwst <> 0) {
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td>&nbsp;</td>";
				$articles_ordertext .= "</tr>";
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td class=\"art_col_1\">Summe Netto:</td>";
				$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_4\">" . sprintf("%01.2f",$articles_sum / $mwstfaktor) . " " . $currency . "</td>";
				$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
				$articles_ordertext .= "</tr>";
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td class=\"art_col_1\">zzgl. MwSt." . $mwst . "%:</td>";
				$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_4\">" . sprintf("%01.2f",$articles_sum - ($articles_sum / $mwstfaktor)) . " " . $currency . "</td>";
				$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
				$articles_ordertext .= "</tr>";
				$articles_ordertext .= "<tr>";
				$articles_ordertext .= "	<td class=\"art_col_1\">Summe Brutto:</td>";
				$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
				$articles_ordertext .= "	<td class=\"art_col_4\"><b>" . sprintf("%01.2f",$articles_sum) . " " . $currency . "</b></td>";
				$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
				$articles_ordertext .= "</tr>";
			}
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<td>&nbsp;</td>";
			$articles_ordertext .= "</tr>";
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<td class=\"art_col_1\">Versandkosten:</td>";
			$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_4\"><b>" . sprintf("%01.2f",$shipping) . " " . $currency . "</b></td>";
			$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
			$articles_ordertext .= "</tr>";
			$articles_ordertext .= "<tr>";
			$articles_ordertext .= "	<td class=\"art_col_1\"><b>Gesamtsumme:</b></td>";
			$articles_ordertext .= "	<td class=\"art_col_2\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_3\">&nbsp;</td>";
			$articles_ordertext .= "	<td class=\"art_col_4\"><b>" . sprintf("%01.2f",$articles_sum + $shipping) . " " . $currency . "</b></td>";
			$articles_ordertext .= "	<td class=\"art_col_5\">&nbsp;</td>";
			$articles_ordertext .= "</tr>";
			$articles_ordertext .= "</table>";
			$articles_mailordertext	.= "Versandkosten" . chr(9) . chr(9) . sprintf("%01.2f",$shipping) . " " . $currency . "\n";
			$articles_mailordertext	.= "Gesamt:" . chr(9) . $articles_sum_count .  chr(9) . sprintf("%01.2f",$articles_sum + $shipping) . " " . $currency . "\n";
			
			echo $articles_ordertext;
			$_SESSION['tvsshop']['cart']['mailordertext'] = $articles_mailordertext;

			echo "<p>";
			echo "	<a href=\"" . rex_getUrl('','', array('mode'=>'clearbasket'))  . "\" title=\"Warenkorb l&ouml;schen\">Warenkorb l&ouml;schen</a>";
			echo "	&nbsp;&nbsp;&nbsp;";
			echo "	<a href=\"" . rex_getUrl('','', array('mode'=>'checkout'))  . "\" title=\"Zur Kasse gehen\">Zur Kasse gehen</a>";
			echo "</p>";
			
			backToShopLink();
		} else {
			echo "<p>Ihr Warenkorb ist leer!</p>";
			backToShopLink();
		}
		echo "</div>";
	} elseif ($tvsshop_mode == "" && $tvsshop_art_id == -1) {
		// Normale Artikelübersicht...
		//
		// ..Link für Warenkorb anzeigen
		if ($_SESSION[$thispage]['cart']['art_id'] != "")
			$articles = explode(",", $_SESSION[$thispage]['cart']['art_id']);
		else
			$articles = array();
		echo "<div class=\"tvsshop_showbasket\">";
		//showBasketLink();
		if (count($articles) > 0) {
			$articles_count	= 0;
			$articles_count	= explode(",", $_SESSION['tvsshop']['cart']['art_count']);
			$articles_sum_count	= 0;
			if ($articles_count > 0) {
				foreach ($articles_count as $i => $value) {
					$articles_sum_count = $articles_sum_count + doubleval($value);
				}
			}
			echo "[<a href=\"" . rex_getUrl('','', array('mode'=>'showbasket')) . "\" title=\"Warenkorb anzeigen\">Warenkorb (" . $articles_sum_count . " Artikel)</a>]&nbsp;";
			echo "[<a href=\"" . rex_getUrl('','', array('mode'=>'checkout'))  . "\" title=\"Zur Kasse gehen\">Zur Kasse gehen</a>]";
		}
		echo "</div>";

		$sql = new rex_sql();
		$sql->setQuery("SELECT * FROM " . $art_table . " WHERE status = 1 " . $tvssql . " ORDER BY " . $sql_sort . $tvsshop_asc);
		$total_rows = $sql->getRows();
		
		$sql->setQuery("SELECT * FROM " . $art_table . " WHERE status = 1 " . $tvssql . " ORDER BY " . $sql_sort . $tvsshop_asc . " " . $sql_limit);

		if ($sql->getRows() > 0 ) {
			for ($i = 1; $i <= $sql->getRows(); $i++) {
				if (OOAddon :: isAvailable('rexseo') || OOAddon :: isAvailable('seo42'))
					$article_url = getTvsShopUrl($sql->getValue('id'), $REX['CUR_CLANG']);
				else
					$article_url = rex_getUrl('','', array('art_id'=>$sql->getValue('id')));

				$art_href = "<a href=\"" . $article_url . "\" title=\"" . $sql->getValue('title') . "\">";

				echo "<div class=\"tvsshop_article\">";
				if ($sql->getValue('filelist') != "") {
					$art_images = explode(",",$sql->getValue('filelist'));
					if ($imagesize != "")
						if (OOAddon::isAvailable("image_resize"))
							echo $art_href . "<img src=\"index.php?rex_resize=" . $imagesize . "w__" . $art_images[0] . "\" alt=\"" . $sql->getValue('title') . "\" title=\"" . $sql->getValue('title') . "\" /></a>";
						else
							echo $art_href . "<img src=\"files/" . $art_images[0] . "\" style=\"width:" . $imagesize  . "px;\" alt=\"" . $sql->getValue('title') . "\" title=\"" . $sql->getValue('title') . "\" /></a>";
					else
						echo $art_href . "<img src=\"files/$art_images[0]\" alt=\"" . $sql->getValue('title') . "\" title=\"" . $sql->getValue('title') . "\" /></a>";
				}
				if ($sql->getValue('title') != "")
					echo "<p class=\"art_title\">" . $art_href . $sql->getValue('title') . "</a></p>";
				if ($sql->getValue('description') != "") {
					echo "<p class=\"art_description\">";
					$tvsoutput = $sql->getValue('description');
					$article = new rex_article();
					echo $article->replaceLinks($tvsoutput);
					echo "</p>";
				}
				if ($sql->getValue('price') != "") {
					echo "<p class=\"art_price\">Preis: " . sprintf("%01.2f",$sql->getValue('price')) . " " . $currency . "</p>";
				}
	
				echo "	<div class=\"art_addtocart\">";
				echo "		<p>";
//				echo "		<form name=\"art_addtocart_\" method=\"post\" action=\"" . rex_getUrl('','', array('mode'=>'addtocart')) . "\">";
				echo "		<form name=\"art_addtocart_" . $sql->getValue('id') . "\" method=\"get\" action=\"" . rex_getUrl('') . "\">";
				echo "			<input type=\"hidden\" name=\"mode\" id=\"mode\" value=\"addtocart\" />";
				echo "			<input type=\"hidden\" name=\"art_id\" id=\"art_id\" value=\"" . $sql->getValue('id') . "\" />";
				echo "			<input class=\"art_input_text\" type=\"text\" name=\"art_count\" id=\"count" . $sql->getValue('id') . "\" value=\"1\" />&nbsp;";
				echo "			<input class=\"art_input_submit\" type=\"submit\" name=\"art_input_submit\" id=\"art_input_submit_" . $sql->getValue('id') . "\" value=\"In den Warenkorb\" />";
				echo"		</form>";
				echo "		</p>";
				echo "	</div>";
				
				if ($usefacebook == "1") {
					$url = urlencode("http://".$_SERVER["SERVER_NAME"] . $article_url);
?>
					<div style="text-align:left; padding-top: 10px;">
						<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo $url; ?>&layout=button_count&action=recommend" scrolling="no" frameborder="0" style="border:none; width:500px; height: 50px;"></iframe>
					</div>
<?php
				}

				if ($sql->getValue('keywords') != "") {
					echo "	<div class=\"art_tags\">";
					echo "		<h5>Schlagworte:</h5>";
					$tags = explode(",", $sql->getValue('keywords'));	
					$tags_out = "";
					foreach ($tags as $value) {
						$tags_out .= "<a href='" . rex_getUrl('','', array('tag'=>trim($value))) . "'>$value</a>, ";
					}
					$tags_out = substr($tags_out, 0, - 2);
					echo $tags_out;
					echo "	</div>";
				}
				echo "</div>";
				$sql->next();
			}
			
			if ($tvsshop_start > 0) {
				echo "<div class=\"tvsshop_navigation\">";
				echo "	<a href=\"" . rex_getUrl($article_id,'', array('tvsshop_start'=>trim($tvsshop_start - $tvsshop_limit), 'tvsshop_cat'=>trim($tvsshop_cat))) . "\">&laquo; Vorige Beiträge</a>";
				echo "</div>";
			}
			if (($tvsshop_start + $tvsshop_limit) < $total_rows) {
				echo "<div class=\"tvsshop_navigation\">";
				echo "	<a href=\"" . rex_getUrl($article_id,'', array('tvsshop_start'=>trim($tvsshop_start + $tvsshop_limit), 'tvsshop_cat'=>trim($tvsshop_cat))) . "\">Nächste Beiträge &raquo;</a>";
				echo "</div>";
			}
		}
	} elseif ($tvsshop_mode == "" && $tvsshop_art_id <> -1) {
		// Einzel-Artikelübersicht...
		//
		// ..Link für Warenkorb anzeigen
		if ($_SESSION[$thispage]['cart']['art_id'] != "")
			$articles = explode(",", $_SESSION[$thispage]['cart']['art_id']);
		else
			$articles = array();
		echo "<div class=\"tvsshop_showbasket\">";
		//showBasketLink();
		if (count($articles) > 0) {
			$articles_count	= 0;
			$articles_count	= explode(",", $_SESSION['tvsshop']['cart']['art_count']);
			$articles_sum_count	= 0;
			if ($articles_count > 0) {
				foreach ($articles_count as $i => $value) {
					$articles_sum_count = $articles_sum_count + doubleval($value);
				}
			}
			echo "[<a href=\"" . rex_getUrl('','', array('mode'=>'showbasket')) . "\" title=\"Warenkorb anzeigen\">Warenkorb (" . $articles_sum_count . " Artikel)</a>]&nbsp;";
			echo "[<a href=\"" . rex_getUrl('','', array('mode'=>'checkout'))  . "\" title=\"Zur Kasse gehen\">Zur Kasse gehen</a>]";
		}
		echo "</div>";

		$sql = new rex_sql();
		$sql->setQuery("SELECT * FROM " . $art_table . " WHERE status = 1 " . $tvssql . " ORDER BY " . $sql_sort . $tvsshop_asc);
		$total_rows = $sql->getRows();
		
		$sql->setQuery("SELECT * FROM " . $art_table . " WHERE status = 1 " . $tvssql . " ORDER BY " . $sql_sort . $tvsshop_asc . " " . $sql_limit);

		if ($sql->getRows() > 0 ) {
			if (OOAddon :: isAvailable('rexseo') || OOAddon :: isAvailable('seo42'))
				$article_url = getTvsShopUrl($sql->getValue('id'), $REX['CUR_CLANG']);
			else
				$article_url = rex_getUrl('','', array('art_id'=>$sql->getValue('id')));
			$art_href = "<a href=\"" . $article_url . "\" title=\"" . $sql->getValue('title') . "\">";

			echo "<div class=\"tvsshop_article\">";
			if ($sql->getValue('filelist') != "") {
				$art_images = explode(",",$sql->getValue('filelist'));
				if ($imagesize != "")
					if (OOAddon::isAvailable("image_resize"))
						echo $art_href . "<img src=\"index.php?rex_resize=" . $imagesize . "w__" . $art_images[0] . "\" alt=\"" . $sql->getValue('title') . "\" title=\"" . $sql->getValue('title') . "\" /></a>";
					else
						echo $art_href . "<img src=\"files/" . $art_images[0] . "\" style=\"width:" . $imagesize  . "px;\" alt=\"" . $sql->getValue('title') . "\" title=\"" . $sql->getValue('title') . "\" /></a>";
				else
					echo $art_href . "<img src=\"files/$art_images[0]\" alt=\"" . $sql->getValue('title') . "\" title=\"" . $sql->getValue('title') . "\" /></a>";
			}
			if ($sql->getValue('title') != "")
				echo "<p class=\"art_title\">" . $art_href . $sql->getValue('title') . "</a></p>";
			if ($sql->getValue('description') != "") {
				echo "<p class=\"art_description\">";
				$tvsoutput = $sql->getValue('description');
				$article = new rex_article();
				echo $article->replaceLinks($tvsoutput);
				echo "</p>";
			}
			if ($sql->getValue('price') != "") {
				echo "<p class=\"art_price\">Preis: " . sprintf("%01.2f",$sql->getValue('price')) . " " . $currency . "</p>";
			}

			echo "	<div class=\"art_addtocart\">";
			echo "		<p>";
//			echo "		<form name=\"art_addtocart_form\" method=\"post\" action=\"" . rex_getUrl('','', array('mode'=>'addtocart')) . "\">";
			echo "		<form name=\"art_addtocart_" . $sql->getValue('id') . "\" method=\"get\" action=\"" . rex_getUrl('','','') . "\">";
			echo "			<input type=\"hidden\" name=\"mode\" value=\"addtocart\" />";
			echo "			<input type=\"hidden\" name=\"art_id\" value=\"" . $sql->getValue('id') . "\" />";
			echo "			<input class=\"art_input_text\" type=\"text\" name=\"art_count\" id=\"count" . $sql->getValue('id') . "\" value=\"1\" />&nbsp;";
			echo "			<input class=\"art_input_submit\" type=\"submit\" name=\"art_input_submit\" id=\"art_input_submit_" . $sql->getValue('id') . "\" value=\"In den Warenkorb\" />";
			echo "		</form>";
			echo "		</p>";
			echo "	</div>";
			
			if ($usefacebook == "1") {
					$url = urlencode("http://".$_SERVER["SERVER_NAME"] . rex_getUrl('','', array('art_id'=>$sql->getValue('id'))));
?>
				<div style="text-align:left; padding-top: 10px;">
					<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo $url; ?>&layout=button_count&action=recommend" scrolling="no" frameborder="0" style="border:none; width:500px; height: 50px;"></iframe>
				</div>
				<?php
			}

			if ($sql->getValue('keywords') != "") {
				echo "	<div class=\"art_tags\">";
				echo "		<h5>Schlagworte:</h5>";
				$tags = explode(",", $sql->getValue('keywords'));	
				$tags_out = "";
				foreach ($tags as $value) {
					$tags_out .= "<a href='" . rex_getUrl('','', array('tag'=>trim($value))) . "'>$value</a>, ";
				}
				$tags_out = substr($tags_out, 0, - 2);
				echo $tags_out;
				echo "	</div>";
			}
			echo "</div>";
		}
	}
?>
Keine Garantie auf Rechtssicherheit :?
Gruß
Jochen
Nicht ärgern - Lebbe geht weider | Mein-Office | Referenzen

Popkultur
Beiträge: 82
Registriert: 1. Apr 2014, 19:55

Re: TvsShop

14. Jul 2015, 16:17

Hat schon jemand den tvsshop unter 4.6.1 und SEO42 4.1.2 laufen?

Ich kriege da nur einen weißen Screen im Frontend und den Fehler

Code: Alles auswählen

Warning: require_once(/kunden/123/xxx/195/207/webseiten/xxx.de-rex4.6.1/redaxo/include/addons/tvsshop/classes/../../seo42/classes/class.rexseo_rewrite.inc.php): failed to open stream: Datei oder Verzeichnis nicht gefunden in /kunden/123/xxx/195/207/webseiten/xxx.de-rex4.6.1/redaxo/include/addons/tvsshop/classes/shopUrlRewrite.inc.php on line 15

Fatal error: require_once(): Failed opening required '/kunden/123/gn2-hosting/195/207/webseiten/xxx.de-rex4.6.1/redaxo/include/addons/tvsshop/classes/../../seo42/classes/class.rexseo_rewrite.inc.php' (include_path='.:/usr/local/lib/php') in /kunden/123/xxx/195/207/webseiten/xxx.de-rex4.6.1/redaxo/include/addons/tvsshop/classes/shopUrlRewrite.inc.php on line 15
Wenn ich das SEO42 ganz deinstalliere, gehts. Allerdings werden die URLs immer noch umgeschrieben. Ich weiß nicht wieso und woher das kommt. Andere SEO Addons sind eigentlich nicht installiert.

Ich vermute den Fehler hier in der config.inc.php:

Code: Alles auswählen

	$tvsshopinifile = $REX['INCLUDE_PATH'] . "/addons/" . $tvsshop_addon . "/" . $tvsshop_addon . ".ini";

	// SEO-Integration
	if (OOAddon :: isAvailable('rexseo') || OOAddon :: isAvailable('seo42')) {	
		require_once dirname(__FILE__) ."/classes/shopUrlRewrite.inc.php";
		rex_register_extension('REXSEO_PATHLIST_CREATED', 'tvsshop_extended_urls');
		// URLs in Sitemap eintragen
		rex_register_extension('REXSEO_SITEMAP_ARRAY_CREATED', 'tvsshop_extended_sitemap');
	}

Benutzeravatar
michaelwandel
Beiträge: 325
Registriert: 1. Jul 2010, 13:54

Re: TvsShop

15. Jul 2015, 11:25

Hi,

das liegt an der fehlenden Unterstützung von SEO42 ab Version 4.x

Ich habe eine aktuelle Version in Vorbereitung, die vermutlich dann auch 1.00 final sein wird, ich werde sie in den nächsten Tagen mal online stellen, es sei denn Du brauchst dringend abhilfe :)

Gruß, Michael :)

Popkultur
Beiträge: 82
Registriert: 1. Apr 2014, 19:55

Re: TvsShop

15. Jul 2015, 12:57

Hi,

nein, ich habe in der config jetzt einfach mal die Rewriting-Klasse abgestellt, dann gehts (trotzdem o.o). Danke :)

Benutzeravatar
michaelwandel
Beiträge: 325
Registriert: 1. Jul 2010, 13:54

Neue Version TvsShop 0.9.9

21. Jul 2015, 14:38

So, ein wenig länger hats gedauert aber ich denke die Version 0.9.9 lasse ich mal auf Euch los ;-)

http://www.redaxo.org/de/download/addons/?addon_id=927

Änderungen wie folgt:
<h1><u>TvsShop v0.9.9</u></h1>
- SEO42-Kompatibilität ab 4.x
- Bootstrap 3.x-Kompatibilität
- neues Feld "new_tag" für Kennzeichnung neuer Artikel

<h2><u>TvsShop v0.9.8</u></h2>
- Verwandte Artikel
- Fehler bei Warenkorbausgabe behoben

<h2><u>TvsShop v0.9.7</u></h2>

- Importschnittstelle um Warengruppen erweitert
- Verknüpfung Artikel <-> Warengruppen geht nun über die category_id !
- Ausgabemodul angepasst !
- Hilfeseite
- Ein- und Ausgabemodul getrennt, da nun auf der Hilfeseite Standardmodul installiert werden kann
- Korrekte Berücksichtigung des Offline-Status von Artikel und Kategorien
So, wenn Ihr irgendwelche Features noch gerne reingenommen hättet, einfach rüber damit, damit es mal zu einer Final 1.00 kommen kann :)

Gruß, Michael

Benutzeravatar
ralf.schlott
Beiträge: 621
Registriert: 5. Dez 2007, 21:22
Wohnort: Hamburch
Kontaktdaten: Website

Re: TvsShop

22. Jul 2015, 11:01

Hey Michael,

toll, dass du ein Paket draus geschnürt hast! Super auch, dass die Schnipsel von mir mit eingeflossen sind :)
- Danke für Redaxo! -
http://www.prenzlweb.de

Benutzeravatar
RexDude
Beiträge: 2524
Registriert: 22. Apr 2010, 11:24

Re: TvsShop

5. Sep 2015, 19:42

Hier gibts noch ein Prob: http://www.redaxo.org/de/forum/addons-f ... ml#p115796
@Michael: Besser wäre es wenn du mit function_exists() überprüfst ob die Funktionen existieren vor Aufruf.

LPROG
Beiträge: 19
Registriert: 5. Sep 2015, 09:22

Re: TvsShop

9. Sep 2015, 09:53

Hallo,

vielleicht habe ich etwas übersehen und vielleicht bin ich schon der (gefühlte) Zehntausendste der fragt, aber wie ist der aktuelle Stand der Dinge?

Ich habe in diesem Beitrag schon Lösungsvorschläge zur Integration von Zahlungsmöglichkeiten (0.9.6) gelesen und auch schon die Umsetzung der Checkboxen für AGB und Widerrufsbelehrung gelesen. Angeblich braucht man nur eine PayPal-Mail-Adresse eingeben und dann würde diese Zahlungsmöglichkeit mit angeboten.

In der jetzigen Version 0.9.9 finde ich jedoch KEINE dieser hier dargestellten Lösungen. Ist eine Version mit diesen Features in Arbeit? Und wenn ja, wann kommt sie?

Trotzdem: Vielen Dank für den Supi-Shop. Geiles AddOn

Gruß

psgehe
Beiträge: 13
Registriert: 30. Apr 2014, 11:22

Re: TvsShop

23. Sep 2015, 14:03

Hi,

ich habe ein kleines Problem mit dem Addon, habe die vorangegangenen Seiten auch überflogen doch leider nichts gefunden. Eine Suche zu diesem Thema leider auch nicht.

Bei mir passiert folgendes: Wenn ich ein Artikel in den Warenkorb lege wird dieser dann in doppelter Anzahl in den Warenkorb gelegt.

Ich benutze Redaxo 4.6.1 und vom Shop die Version 0.99. Über Hilfe/ Lösungsansätze wäre ich sehr dankbar.

steri
Beiträge: 364
Registriert: 12. Jul 2007, 14:59

Re: Neue Version TvsShop 0.9.9

23. Mär 2016, 17:49

Hallo Zusammen,

vielen Dank für die neue (wenn auch schon wieder länger her) 0.99 Version mit seo Unterstützung!

Wenn ich einen Wunsch machen dürfte und dem Aufruf von Michael folge
michaelwandel hat geschrieben: So, wenn Ihr irgendwelche Features noch gerne reingenommen hättet, einfach rüber damit, damit es mal zu einer Final 1.00 kommen kann :)
dann würde ich mir bitte unbedingt wünschen das man Optionen bei den Artikel machen kann.
Also z.b.
Artikel "T-Shirt" mit
Auswahl Option für z.b. Grösse (S,M,L,XL) und für Farbe (blau, grün, weiss).

Das wär fein!
lg steri

Clark_K
Beiträge: 1
Registriert: 12. Apr 2016, 16:41

Versandkosten

12. Apr 2016, 17:08

Hallo! Tolles Add-On, gratuliere!

Meine Frage: Habe ich die Möglichkeit Versandkosten abhängig vom Warenwert und abhängig von der Lieferadresse zugestalten? Ich meine, dass zum Beispiel Versandkosten nach Frankreich anders berechnet werden, als Versandkosten innerhalb des Landes?

Gruß Clark

Benutzeravatar
nuxx
Beiträge: 163
Registriert: 16. Dez 2005, 18:45
Wohnort: Kaputtgart 21

Re: TvsShop

3. Jul 2016, 11:01

Hallo alle zusammen.
habe nun mal meinen Shop auf die Version 0.9.9 geuppt. Ich nutze also die vorhandenen Artikel mit der neuen Version.
Hier fällt mir auf, dass das Modul "TVS Shop Kategorien" nicht mehr korrekt arbeitet. Es wird an jede Kategorie URL ?tvsshop_cat=0 angehängt. (immer ID 0)
In der Artikelverwaltung fällt mir auf, dass bereits vorhandene Artikel keiner Kategorie mehr zugeordnet sind.

Hat jemand ähnliche Erfahrung und ggf schon Lösungen?
l.G. Nuxx
Halbwissen ist schonmal besser als Vollpfosten!

Benutzeravatar
michaelwandel
Beiträge: 325
Registriert: 1. Jul 2010, 13:54

Re: TvsShop

6. Jul 2016, 11:58

Hi,

nutzt Du auch das aktuelle Ausgabemodul ? Ich meine ich hätte das was geändert ;-)

Kann auch gerne mal die aktuelle Version hochladen, hat sich ein bisschen was getan :)

Gruß Michl :)

Benutzeravatar
CWS
Beiträge: 68
Registriert: 15. Jun 2014, 12:09

Re: TvsShop

11. Jul 2016, 17:05

Hey Michi,

was hast denn Neues hinzugefügt, bzw. geändert? Würde ich mir gern mal ansehen wollen.

Wird es denn den Blog, etc. auch irgendwann für die 5er geben????

LG Christian :-)
Blog über Spirituelles und Holistic Master Healing | Spirituelle Heilung & Entwicklung | Spirit & Soul - Spirituelle Entwicklung & Energiearbeit Schwierig sein kann es nur weil du es so glaubst ;-) Gedanken formen Realität, denk dran!

Benutzeravatar
michaelwandel
Beiträge: 325
Registriert: 1. Jul 2010, 13:54

Re: TvsShop

12. Jul 2016, 09:59

Hoi :)

Mmh, also hier mal die TVSShop-Historie:

<h1><u>TvsShop v0.9.12</u></h1>
- Neues Feld "stock" für die Lieferbarkeit von Artikeln

<h2><u>TvsShop v0.9.11</u></h1>
- DefaultImage für alle Artikel kann nun gesetzt werden
- Ausgabe von Alternativtext für Artikel ohne Preis

<h2><u>TvsShop v0.9.10</u></h2>
- Support für Website Manager (Nutzung von einer TVSShop-Datenbank)

<h2><u>TvsShop v0.9.10</u></h2>
- Produktmerkmale für Artikel setzbar
- Imagemanager-Template 'tvsshoppreview' nun für Bilder verwendet
- Alle Bilder eines Artikels werden nun ausgegeben
- Warenkorb-Knopf kann unterdrückt werden
- Ekko-Lightbox per CDN eingebunden, Imagemanager-Templates werden installiert

<h2><u>TvsShop v0.9.9</u></h2>
- SEO42-Kompatibilität ab 4.x
- Bootstrap 3.x-Kompatibilität
- neues Feld "new_tag" für Kennzeichnung neuer Artikel


TVSBlog wird auf jeden Fall für Rex5 erscheinen, kann aber nicht sagen ob ich das dieses Jahr noch schaffe...Ist eine komplette Neuprogrammierung..

Gruß, Michl :)

Benutzeravatar
nuxx
Beiträge: 163
Registriert: 16. Dez 2005, 18:45
Wohnort: Kaputtgart 21

Re: TvsShop

12. Jul 2016, 17:05

Hallo,
ja hatte das aktuelle Ausgabemodul verwendet. Mittlerweile bin ich darauf gekommen: Musste die Kategorien im Backend aufrufen und die ID manuell eintragen, und bei allen Artikeln noch einmal die Kategorie im Backend zuordnen, dann gings.
Halbwissen ist schonmal besser als Vollpfosten!

JulianSt
Beiträge: 2
Registriert: 2. Dez 2014, 10:03

Re: TvsShop

8. Aug 2016, 09:22

Hey Leute,

Ich bin relativ neu in Redaxo und kenne mich deshalb nicht so wirklich aus.
Nun habe ich das Addon istalliert. So, Module habe ich in der ZIP-Datei entdeckt und installiert. Doch ich blicke einfach nicht so wirklich durch, wo was hingehört. Also sprich, beim Modul Shop gibt es ja eine Eingabe-Datei und eine Ausgabe. Die muss ich ja einfach nur kopieren und dann einfügen doch wie sieht es mit den restlichen Dateien aus?
Tut mir leid, wenn das eine echt blöde Frage ist, aber ich kenne mich wie gesagt noch nicht so super gut mit Addons aus.
Danke für jede Hilfe

Redaxo 4.2.1
Tvs-Shop 0.9.9

Benutzeravatar
michaelwandel
Beiträge: 325
Registriert: 1. Jul 2010, 13:54

Re: TvsShop

13. Sep 2016, 10:30

Hi,

bist Du mit Deinem Problem weitergekommen ?

Hast Du mal geschaut beim TvsShop-Addon direkt, da gibt es den Menüpunkt "Hilfe" und dort kannst Du das Standardmodul automatisch installieren lassen ;-)

Gruß, Michael :-)

iceman-fx
Beiträge: 450
Registriert: 13. Feb 2007, 16:16
Wohnort: Sachsen
Kontaktdaten: Website

Re: TvsShop

21. Nov 2016, 13:46

Hi,
ich habe soeben den Shop testweise auf einer frischen Rex4.7 Installation aufgesetzt.
Das Std.modul ist installiert und die Artikel sehe ich auch.

Aber...

Es passiert nichts, wenn ich einen Artikel dem Warenkorb hinzufüge.
Außer einer Fehlermeldung wird nichts angezeigt:
Directory index forbidden by Options directive: /home/www/web118/html/files/, referer: http://web118.domain.de/index.php?mode= ... +Warenkorb

Fehlt da noch ein Modul für den Warenkorb bzw. den Bestellprozess ?


PROBLEM GEFUNDEN:
Du nutzt ZWINGEND das seo42 Addon.
Hat man es nicht installiert, schmiert der Shop ab.
VG iceman

_____________________________________________________________
www.fotodesign360.de / www.falkomueller.com

mot-K
Beiträge: 24
Registriert: 14. Okt 2014, 14:51

Re: TvsShop

12. Apr 2017, 23:36

Hallo zusammen,

ich benötige demnächst eine Shopanbindung für eine Redaxo-Seite (4er) und bin auf dieses Addon gestoßen. Im Downloadbereich kann man lediglich die Version 0.9.9 laden. Besteht die Möglichkeit, die neuste Version (laut diesem Thread die 0.9.12?) zur Verfügung zu stellen?

Ist momentan eine neue Version in Arbeit, beispielsweise mit der Möglichkeit zur PayPal-Anbindung?

Vielen Dank!

Gruß Jan

Benutzeravatar
michaelwandel
Beiträge: 325
Registriert: 1. Jul 2010, 13:54

Re: TvsShop

24. Apr 2017, 14:06

Hi,

ja es gibt eine 0.99.12-er Version, werde sie die Tage mal hochladen, hier mal die changelog der letzten Änderungen:

<h2><u>TvsShop v0.9.11</u></h1>
- DefaultImage für alle Artikel kann nun gesetzt werden
- Ausgabe von Alternativtext für Artikel ohne Preis

<h2><u>TvsShop v0.9.10</u></h2>
- Support für Website Manager (Nutzung von einer TVSShop-Datenbank)

<h2><u>TvsShop v0.9.10</u></h2>
- Produktmerkmale für Artikel setzbar
- Imagemanager-Template 'tvsshoppreview' nun für Bilder verwendet
- Alle Bilder eines Artikels werden nun ausgegeben
- Warenkorb-Knopf kann unterdrückt werden
- Ekko-Lightbox per CDN eingebunden, Imagemanager-Templates werden installiert

Paypal-Einbindung ist von mir nicht geplant weil die Zielsetzung des TVSShop beim Ansenden der Bestellmail immer enden sollte und die Einbindung nicht so ohne ist, es gibt aber wohl schon ein paar Jungs die da was gebaut haben ;-)

Gruß, Michael :-)

mot-K
Beiträge: 24
Registriert: 14. Okt 2014, 14:51

Re: TvsShop

25. Apr 2017, 14:13

Alles klar, vielen Dank!
Ich warte dann auf den Upload :)

Gruß Jan

Benutzeravatar
die su
Beiträge: 44
Registriert: 19. Jun 2008, 09:23
Wohnort: Heilbronn
Kontaktdaten: Website

Re: TvsShop

6. Mai 2017, 16:46

Installation tvsshop klappt nicht trotz SEO42
Bis jetzt ist es mir noch nicht einmal gelungen, dieses Addon zumindest einmal auszuprobieren, denn ich kann nicht installieren. Versuche auf
redaxo 4.6 + 4.7, und 4.7.2
seo42_v4.5.0, seo42_v4.5.1, seo42_v4.5.2

Fehlermeldung:
Call to undefined function rexseo_generate_pathlist() in ... redaxo/include/addons/tvsshop/install.inc.php on line 68
Wo ist das Problem? Kann mir bitte jemand helfen?

Benutzeravatar
runstop64
Beiträge: 339
Registriert: 23. Okt 2012, 21:34
Wohnort: Hamburg
Kontaktdaten: Website Facebook Twitter

Re: TvsShop

7. Mai 2017, 00:25

Da wird wohl eine Funktion vom Addon RexSEO erwartet. Hast du es schon mal damit probiert?
Viele Grüße,
Daniel


studio-ahoi.de | Referenzen | Friends Of REDAXO

Zurück zu „AddOns [R4]“