Remontée des paniers et affichage du jeu

Etapes et exemples d'utilisation dans le langage de la technologie choisie pour remonter les paniers et afficher un jeu.

Intégration en JAVA

Description et emplacement des fichiers à utiliser

java/luckycart.jar : la librairie Java
java/lc_plugin_sample.jsp : un exemple d’utilisation
java/lc-dependencies.zip : les dépendances de la librairie
java/lc-javadoc.zip : la documentation de la librairie

Etapes d'intégration

1. Installation de la librairie

Copiez la librairie luckycart.jar, ainsi que ses dépendances (contenu de lc-dependencies.zip), dans le dossier lib de votre application web ou de votre serveur d’application.

Attention à ne pas laisser des librairies en doublon. Il est probable que vous ayez déjà une version de log4, commons-logging ou commons-codec installée sur votre serveur d’application.

2. Inclusion de la librairie

Modifiez le code de la page de confirmation de commande pour inclure la librairie :

// Include LC library
import com.luckycart.client.LuckyCart;
import com.luckycart.client.domain.*;

3. Initialisation de la librairie et envoi des données

Toujours dans le code de la page de confirmation de commande :

// Create a LuckyCart object with your key and secret
LuckyCart luckyCart = LuckyCart.builder().setKey("key").setSecret("secret").createLuckyCart();

// Create a LuckyCartTransaction object
// Assuming data from the site are store in a customer and cart object. 
LuckyCartTransaction transaction = new LuckyCartTransaction();
// mandatory data
transaction.setCustomerId(customer.getId());
transaction.setCartId(cart.getId());
transaction.setTtc(cart.getTtc());
transaction.setHt(cart.getHt());
transaction.setCountry(customer.getCountry());
transaction.setEmail(customer.getEmail());
transaction.setPayment(cart.getPayment());
transaction.setFirstName(customer.getFirstName());
transaction.setLastName(customer.getLastName());
transaction.setCodePromo(cart.getCode());
transaction.setCurrency(cart.getCurrency());
transaction.setLang(cart.getLang());
transaction.setProducts(Arrays.asList(
  new LuckyCartProduct(cart.products[0].getId(), cart.products[0].getHt(),
    cart.products[0].getTtc(), cart.products[0].getQty()),
  new LuckyCartProduct(cart.products[1].getId(), cart.products[1].getHt(),
    cart.products[1].getTtc(), cart.products[1].getQty())
);

// You can add more transaction information by overriding the LuckyCartTransaction class

// Sends the request to LC servers
LuckyCartPluginResponse pluginResponse = luckyCart.plugin(transaction);

4. Affichage du jeu

Il s’effectue en positionnant les containers suivants sur la page de confirmation de commande :

<body>
...
<!-- Add this div tag anywhere in the order confirmation page to render the game plugin -->
<% out.println(pluginResponse.getGamediv()); %>
...
<!-- Add this script tag at the bottom of the page (in order not to interfere with page loading) -->
<% out.println(pluginResponse.getScript()); %>
</body>

5. Envoi de données supplémentaires

La classe LuckyCartTransaction contient des attributs obligatoires et optionnels prédéfinis.

Si besoin, il est possible d'envoyer pour chaque panier des informations supplémentaires en surchargeant LuckyCartTransaction selon la méthode suivante :

public class MyCompanyLuckyCartTransaction extends LuckyCartTransaction
{
    private String myExtraInfo;
    public String getMyExtraInfo() {
        return myExtraInfo;
    }

    public void setMyExtraInfo(String myExtraInfo) {
        this.myExtraInfo = myExtraInfo;
    }
}