Käyttöönotto

Tarjouksen voimassaolopäivämäärän näyttäminen

Tarjouksen voimasasolon näyttäminen tuotesivuilla

Tarvittavat ohjelmistot

Tässä työssä tarvitaan

  • verkkoselain (esim. Edge)
  • yksinkertainen tekstieditori (esim. Notepad++)
  • FTP-ohjelma (esim. Filezilla)

Toteutus (vaihe 1)

  • Kirjaudu verkkokaupan hallintaliittymään (demo).
  • Klikkaa ylhäältä asetukset / koodit ja ulkoasu.
  • Klikkaa Lisää uusi -painiketta.
  • Valitse tyypiksi "HTML5/JavaScript".
  • Syötä nimeksi "Tarjouksen voimassaolo" tai mitä tahansa.
  • Valitse Sivu-kohdasta "Tuotteet (yksittäiset tuotesivut)".
  • Valitse Sijainti-kohdasta "Verkkokaupan tuotesivulla ostoskoripainikkeen jälkeen".
  • Lisää Koodi-kohtaan:
    <div id="oma_tarjous_voimassaolo"></div>
    <script>  
    /* Näytetään tarjouslaatikko, jos tarjoushinta näkyy sivulla, laatikon div-elementti on olemassa, tuotteen id-numero on tiedossa ja PHP-ohjelma antaa vastauksena tekstin. */ 
    if (document.getElementsByClassName("product_price_sale").length >= 1 && document.getElementById('oma_tarjous_voimassaolo') && document.getElementById('csx4_connections_product_id')) {
      var $xhr1 = "$xhr1_tvooai"; /* pseudosatunnainen arvo varmuuden vuoksi */
      var $xhr1 = new XMLHttpRequest();
      var $nocache = Math.random();
      $xhr1.open("POST", "oma_tarjous_voimassaolo.php", true);
      $xhr1.onreadystatechange = function () {
          if ($xhr1.readyState == 4 && $xhr1.status == 200 && $xhr1.responseText) {
      		  document.getElementById('oma_tarjous_voimassaolo').style.display = 'inline-block';
              document.getElementById('oma_tarjous_voimassaolo').innerHTML = $xhr1.responseText;
          }
      }
      $xhr1.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
      var $query = "nocache=" + $nocache + "";
      $query += "&id=" + document.getElementById('csx4_connections_product_id').value + "";
      $query += "&href=" + window.location.href + "";
      $xhr1.send($query);
    }  
    </script>
    
  • Klikkaa Tallenna-painiketta.
  • Klikkaa Lisää uusi -painiketta.
  • Valitse tyypiksi "CSS".
  • Syötä nimeksi "Tarjouksen voimassaolo" tai mitä tahansa.
  • Lisää Koodi-kohtaan:
    #oma_tarjous_voimassaolo {
      background-color: rgb(240,60,72);
      color: rgb(0255,255,255);
      display: none;
      font-weight: bold;
      margin: 25px 0px 25px 0px;
      padding: 10px 15px 10px 15px;
    }
    
  • Klikkaa Tallenna-painiketta.

Toteutus (vaihe 2)

Luo omalle tietokoneellesi oma_tarjous_voimassaolo.php -niminen tekstitiedosto ja siirrä se FTP-ohjelmalla kotisivutilan kansioon, jossa verkkokaupan etusivun index.php -tiedosto sijaitsee. Tiedoston sisällön on oltava seuraavanlainen.

<?php

/* 	-----------------------------------------------------UTF-8---❤-----
	cat/oma_tarjous_voimassaolo.php (model example)

	Clover Shop(r) X4
	Copyright (c) 2013- Clover Shop Oy. All rights reserved.

	This is commercial software. Unauthorized use, reproduction,
	reverse engineering and/or distribution is strictly prohibited.

	For more information, please visit http://www.clovershop.com
	--------------------------------------------------------------------
	*/



// Säädetään virheilmoitusherkkyyttä

error_reporting (0);



// Luetaan asetukset

include "config/config_inc.php";

if (empty ($config['mysql5_read_username'])) {
	$config['mysql5_read_username'] = $config['mysql5_readwrite_username'];
	$config['mysql5_read_password'] = $config['mysql5_readwrite_password'];
}



// Avataan MySQL-yhteys

$mysql_link = @mysqli_connect ($config['mysql5_server'], $config['mysql5_read_username'], $config['mysql5_read_password'], $config['mysql5_database']);
if (!$mysql_link) {
	echo "Tietokantayhteys ei toimi, MySQL-virhe: ". mysqli_connect_error();
	exit;
}



mysqli_set_charset ($mysql_link, "utf8");



// Tarkistetaan muuttujat

if (!$_POST['id'] || !preg_match ("/[0-9]{1,10}/", $_POST['id'])) exit;
if (!$_POST['href'] || filter_var ($_POST['href'], FILTER_VALIDATE_URL) === false) exit;



// Näytetään tarjouksen voimassaoloteksti

$result = mysqli_query ($mysql_link, "SELECT cs_product_date_offer_to FROM csx4_products WHERE cs_product_id='". mysqli_real_escape_string ($mysql_link, $_POST['id']) ."' AND cs_product_date_offer_to IS NOT NULL LIMIT 1");

if (is_object ($result) && mysqli_num_rows ($result)) {

	$s = mysqli_fetch_array ($result);

	if (preg_match ("/-fi\.html/", $_POST['href'])) {
		echo "Tarjous on voimassa ". date ("j.n.Y", strtotime ($s['cs_product_date_offer_to'])) ." asti!";
	} else 	if (preg_match ("/-en\.html/", $_POST['href'])) {
		echo "Offer valid until ". date ("jS F, Y", strtotime ($s['cs_product_date_offer_to'])) ."!";
	}
	
}



// Suljetaan MySQL-yhteys

mysqli_close ($mysql_link);

?>

Vastuunrajoitus

Näillä ohjeilla ja koodiesimerkeillä ei ole minkäänlaista toimivuustakuuta. Emme vastaa välittömistä, välillisistä, satunnaisista tai epäsuorista vahingoista, menetyksistä, korvauksista, tai kolmannen osapuolen esittämistä vaatimuksista, jotka johtuvat näiden ohjeiden tai koodiesimerkkien noudattamisesta.

Tilaa asiakaskirjeemme

Asiakaskirjeen tilaajana saat sähköpostitse tärkeitä asiakastiedotteita noin 2-5 kertaa vuodessa. Asiakaskirjeen tilaaminen on tärkeää, jos käytät ohjelmistoa.

Tietosuojaseloste