Drupal CMS for marketing sites

Size: px
Start display at page:

Download "Drupal CMS for marketing sites"

Transcription

1 Drupal CMS for marketing sites

2 Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit Testing Routing Data binding Data validation Frontend Javascript Libraries Css Stylesheets Messages Common Smarty variables from controllers Variable references from Javascript Deployment What is included in the deployments Packaging with maven (if required) Creating a tag release and version increment Training resources Drupal: Smarty: PHP:

3 Intro The structure for the Drupal CMS marketing sites is a different setup to a typical drupal CMS build. The applications are designed to have a clear separation between frontend and cms. This design is so that we can strip out the Drupal CMS at any time with a different cms and not have to change the frontend of the websites. This allows a lot more freedom on the application builds and no strong dependencies on the CMS. Sample sites: Hahn Facebook app: Direct desktop access: Mobile version: James Boag James Boag's Premium: James Boag's Draught: upcoming James Boag's Masterbrand: upcoming James Squire Main website: upcoming Corporate Lion corporate site: upcoming Lion career site: upcoming End to End flow The end to end flow of the website structure happens in the below diagram. The web request comes into the server, the htaccess routes through to a controller php file. A php service model is then retrieved from the facade, this model will talk to the json services from drupal cms. The data is then set into a model object with key value pairs, which is then rendered through a smarty template. The smarty template is then output as a string to the client as html.

4 Folder Structure The projects are maven projects so a specific folder structure must be adhered to. The diagram below has highlighted some key folders in the structure which should have specific files stored in.

5 Project setup Each project has it's own unqiue database name, user and password. This should be defined in the readme.md of the project root. When setting up your development machine make sure to match your user and password to that defined in the readme.md. This is because we have multiple developers working on the project at the same time and want everyone to have the same settings for when files are checked in and out of source control we do not override the settings. Content Folder Every project has it's own content folder which is stored outside of the drupal cms folder. This is so we can easily make deployments to the different servers without worrying about the content folder being overridden. To have this setup on your local dev machine first download a copy of the content folder from the staging or live environment.

6 Then when you create your virtual host in apache reference the folder by the environment variable WEBDEV_CONTENT. This can be seen in the virtual host configuration below. The content alias is pointing to the content folder and the WEBDEV_CONTENT variable is pointing to it's parent folder. This is because in drupal settings.php we are creating content reference with WEBDEV_CONTENT/{project name}. <VirtualHost *:80 > ServerName hahn.dev.local DocumentRoot "/home/aiden/development/gitrepos/lio0035_hahnpioneeringbeering/hahnpioneeringbeeringwebapp/src/main/webapp" DirectoryIndex index.php index.html index.htm <Directory "/home/aiden/development/gitrepos/lio0035_hahnpioneeringbeering/hahnpioneeringbeeringwebapp/src/main/webapp"> AllowOverride all Order allow,deny Allow from all </Directory> <Directory "C:/opt/temp/DevSitesContent/HahnPioneeringBeering"> AllowOverride all Order allow,deny Allow from all </Directory> Alias /content "C:/opt/temp/DevSitesContent/HahnPioneeringBeering" SetEnv WEBDEV_CONTENT "C:/opt/temp/DevSitesContent" </VirtualHost> Data Store (Drupal CMS) Drupal CMS is used as a data store only. There are no templates or frontend code coming from the CMS. This is a slightly different way of thinking to the ordinary CMS setup where everything comes from the CMS. The only information that should be stored in the CMS is the editable content (data only). For instance in the editable content is the modules. The content editor wanted the ability to change the modules in the page with the image details, copy etc. This data is then retrieved from Drupal using the services module and outputting that information through json feeds. The setup of the data is quite simple where we have Node Content Types with properties of the data we want to store, Image Styles for the resizing of images for the frontend, Taxonomy for tagging content to use as filters. Views are then setup to output those Content Types and Taxonomy Terms as json feeds. Node Types can be edited in the below page of the cms.

7 Service Views can be edited in the below page of the cms.

8 Individual JSON Service views created in the cms.

9 Importing/Exporting Content To export content from a staging to production environment and vice versa please use the content import/export module. In the drupal shortcuts menu there are two links 1 for export content and 1 for import content. To export just click the export content and it will prompt to save a txt file of the content. To import this content click the import content and you will see a form with some options. Select the export file as the file to import and then select the parameters of the import for which content types to import etc.

10 Database Migrations The database of drupal is very complex so data migrations can be a real pain. The solution at the moment is to do the following steps. This is currently in the process of being automated Export the content from the admin panel. Make a copy of the database. Export your current database. Import your database on the server. Import the content that was exported in step 1.

11 Backend The backend is a simple mvc structure which has a lot of helper classes which allow you to easily get request information and to mock requests for unit testing. The php folder is where all the controllers and business logic should be stored. Please refer to previous projects on the structure of the controllers and models. The webapp folder is the web root of the website. No php files are needed here other than the files which are currently in the existing structure. The WEB-INF/views is the smarty views folder. All smarty views should be stored in this location. Config The configuration of the website is controlled by WEB-INF/config.ini This configuration should have all of the settings which are needed to control the application and which change between environments. This file has references to css and javascript which will be changed in the final deployment through the maven configuration. This happens by updating the pom.xml where the plugin maven-minify-plugin is setup. This plugin needs to reference the same css and js as referenced in the config.ini. This will enabled the css and js to be merged and minified in the deployment process. Please make sure to look at the overriding configuration which is stored in assembly/config.ini. This overriding config.ini should be the same as the WEB-INF/config.ini except with dynamic variables to change settings between the different environments. These settings come from the pom.xml when processing the config.ini, see below snippet for pom.xml configuration. <plugin> <groupid>net.rumati.maven.plugins</groupid> <artifactid>velocity-maven-plugin</artifactid> <version>0.1.2</version> <executions> <execution> <id>config-override</id> <phase>prepare-package</phase> <goals> <goal>velocity</goal> </goals> <configuration> <template>${basedir}/src/main/assembly/config.ini</template> <outputfile>${basedir}/target/auto-generation/webapp/web-inf/config.ini</outputfile> <properties>... <googleanalyticsid>${googleanalyticsid}</googleanalyticsid> <buildfinalname>${buildfinalname}</buildfinalname> <publiccontentlocation>${publiccontentlocation}</publiccontentlocation>... </properties> </configuration> </execution> </executions> </plugin>

12 Unit Testing All php code should be developed to be easily mockable and testable. This should use interfaces for model services so a mocked version and an implementation can be created. There should be no direct references to $_SERVER variables, the HttpServletRequest object in the facade should be used to pull out variables such as server name and request parameters etc. This allows controllers and models to be built and tested without the need for running through a web server. All unit tests should be stored under test/php, please refer to previous projects for references. Routing All routes should be defined in.htaccess file. Any dynamic parts of the url structure should be passed through to the controller as redirect parameters. This allows the controller to be completely separated from the route so there are no dependencies on url structures etc. An example of a route which does this in hahn is below. You will see in this example we have api/modules/{service_method}.json as the route. The Service method is the dynamic parameter to pass to the controller so that is defined by using the redirect parameter E=ServiceMethod:$1 RewriteRule ^api/modules/([^/\.]+)\.json$ view.requesthandler.php [E=ExecuteController:APIModulesCommand,E=ServiceMethod:$1,L] This is then picked up by the controller using the following code. $servicemethod = $request->getredirectparam("servicemethod"); Data binding Data binding throughout the application uses annotations which are parsed through an annotation parser and used to bind data between the frontend requests, drupal and traction. These can be seen by the below example from an entity class. You will notice annotations for DrupalField and TracField. In the drupal annotation parser it will look for properties with DrupalField and if found will bind the node object field which is retrieved from drupal to the property in the entity class. In the traction sdk it will look for properties with TracField and if found will add that property into a request to send to traction.

13 /** class ContactEntity{ /** integer $nodeid public $nodeid; /** * Special field used for when inserting into traction. * Response object id will be populated integer $id public $tractioncustomerid; /** string $firstname public $firstname = null; /** string $lastname public $lastname = null; } If you are doing html form binding this can be done by using the below annotations to bind fields to specific data types automatically. You will notice BindType annotation is used here. See RequestBindUtils::bindToRequest for supported binding types.

14 /** class NominationEntity{ /** string $story_description public $story_description = null; /** string $friend_ public $friend_ = null; /** DateTime $invitation_date public $invitation_date = null; /** bool $optin_nominee public $optin_nominee = false; } A controller which handles this bind can be seen with the code snippet below. // create bind model $bindmodel = new WinnerFormVO(); RequestBindUtils::bindToRequest($bindModel, $request, array("winner_country","winner_state","winner_postcode","agreeterms","optin"), null); Data validation Data validation uses a simple validation api with a lot of helper methods. See ValidationUtils for supported methods. An example use of a validator class snippet is below.

15 class NominationWinnerValidator{ public function construct(){ } /** * Validates model parameters NominationEntity $model HttpServletRequest $request * Errors public function validate($model, $request){ $errors = new Errors(); ValidationUtils::rejectIfNullOrEmpty($errors, "winner_firstname", $model->winner_firstname); ValidationUtils::rejectIfMax($errors, "winner_firstname", $model->winner_firstname, 50); ValidationUtils::rejectIfNotPattern($errors, "winner_firstname", $model->winner_firstname, "/^[^\\d]+$/"); return $errors; } } Frontend The frontend uses standard html markup running through smarty templates. All templates should be named with.tpl extension. Templates should not contain any php code. If data needs to be parsed to the templates that should come from the model object that the controllers pass to smarty. Static file references should always use the model attribute called {$cdnresourcespath}. This allows all css, js, images etc anything which is sitting under the webapp/resources path to be referenced. This allows for a lot of flexibility if needing to store files on a cdn or updating the path references for deployments. For example: If you are referencing a css file in resources/css/file1.css and the application is already deployed then when you make updates to this file you want updates to be rendered immediately without clients clearing their cache. By adding {$cdnresourcespath} infront of the file to look like this {$cdnresourcespath}/css/file1.css then the deployed file will look like main.com/static/ /css/file1.css. This makes deployments extremely simple since all static resources are time stamped for each deployment so references to them are updated immediately and no references to the updated files need to be changed in html.

16 Javascript Libraries All javascript files should be added in the webapp/resources path under js folder. To import the javascript file into the html do not create a script reference in the html! You will need to add the reference in the webapp/web-inf/config.ini and the pom.xml. This is because the config.ini will be used to retrieve the list of javascript files and the pom.xml will be used to minify those javascript libraries into a single js file. Please refer to the below snippets from a previous project. Config.ini... desktop_view_js[] = "/frontend/js/lib/jquery/jquery js" desktop_view_js[] = "/frontend/js/lib/jquery/jquery-class.js"... pom.xml... <jssourcefile>lib/jquery/jquery js</jssourcefile> <jssourcefile>lib/jquery/jquery-class.js</jssourcefile>... Css Stylesheets All css files should be added in the webapp/resources path under css folder. To import the css file into the html do not create a link reference in the html! You will need to add the reference in the webapp/web-inf/config.ini and the pom.xml. This is because the config.ini will be used to retrieve the list of css files and the pom.xml will be used to minify those css files into a single css file. Please refer to the below snippets from a previous project. Config.ini... desktop_view_css[] = "/frontend/css/core.css" desktop_view_css[] = "/frontend/css/main.css"... pom.xml

17 ... <csssourcefile>core.css</csssourcefile> <csssourcefile>main.css</csssourcefile>... Messages All copy in the frontend should come from the messages.ini file unless coming from the cms. This allows for translations to be done on the copy in the website or the copy can be migrated to the cms at a later stage. The messages file is a standard php ini file, use below references for example. To retrieve a message in smarty templates call the message like the following. <p>{$messages["messagesgroupname"]["messagekey"]}</p> For example if your messages file looks like this. [messages] mymessagekey="lorem ipsum" Then you would call this message like so. <p>{$messages["messages"]["mymessagekey"]}</p> <!-- Output would be <p>lorem ipsum</p> --> Common Smarty variables from controllers The table below is a list of variables which can be accessed from smarty templates in the existing projects. This can be used as a reference to what variables you can use. These variables are inserted from the php controller by calling SupportUtils::addDefaultModelVariables($model, $facade). Variable Description Type {$config} The config ini object Array {$messages} The messages ini object Array {$browser} {$ismobile} The browser object to retrieve user agent data The is mobile boolean to determine if user agent is mobile. This is short syntax for calling browser->ismobile() Browser Boolean

18 {$istablet} {$request} {$webrootpath} {$cdnrootpath} {$resourcespath} {$cdnresourcespath} {$contentpath} {$cdncontentpath} The is tablet boolean to determine if user agent is tablet. This is short syntax for calling browser->istablet() The http request object. This can be referenced if requiring to check for server params etc. The absolute path to web root. Use this for any files which need to be reference from the root of the website The absolute path to the cdn root. Use this for any files which are static and referenced from the root of the cdn. If cdn paths are not defined this defaults back to webrootpath The absolute path to the static resources from the root of the website. This should only be used if your wanting to reference files on the root of the website otherwise cdnresourcespath should be used. This path references files under webapp/resources. So if you have a files in webapp/resources/js/file1.js you would reference it by {$resourcespath}/js/file1.js The absolute path to the static resources from the root of the cdn. This path references files under webapp/resources. So if you have a files in webapp/resources/js/file1.js you would reference it by {$cdnresourcespath}/js/file1.js The absolute path to the static content from the root of the website. This should only be used if your wanting to reference files on the root of the website otherwise cdncontentpath should be used. This path references files under the content alias for cms uploaded content. The absolute path to the static content from the root of the cdn. This path references files under the content alias for cms uploaded content. Boolean HttpServletRequest String String String String String String {$metadata} The current metadata object for the current page. MetadataVO

19 Variable references from Javascript Sometimes you may want to get absolute path references in javascript files. These can be referenced by a window variable MainConfig. This config object is inserted into the html page by the php controller calling SupportUtils::getHtmlConfig($model, $facade). Here is an example of how to get the cdn resources path from javascript. var imagepath = window.mainconfig["cdnresourcespath"] + "/images/myimage.jpg"; Deployment The deployment process of the site happens with a maven packaging command which generates a deployable zip file that can then be extracted to the server. Most projects should be running through Bamboo build server which automatically runs the maven packaging commands and deploys to the servers. If the project is setup in Bamboo all which is required is to adhere to the documentation on frontend and backend in this document. Once you have completed development of a feature or bug fix etc commit all your code into git and push to the origin server. This will then trigger an update in Bamboo and the code will be automatically deployed to the staging server within about 10 minutes. If you and the producer are then happy with the staging deployment ask your Tech Lead to click the deploy to live in Bamboo. What is included in the deployments Currently only files in source control are deployed to the different servers. A solution is being worked on for content deployments, so if you need to migrate content from staging to live and vice versa please use the import/ export module. Packaging with maven (if required) If it is required that you have to package up the project with maven to do a manual deployment please following the following steps. Browse to the root of you project. Package for staging server. mvn clean mvn -Pstaging package Package for live server. mvn clean mvn package

20 Creating a tag release and version increment Once you do a live production deployment it is good practice to create a tag in the source control and increment the version of the project. You can do this using the maven release plugin by following the below steps. This will ask you a series of questions which you can hit enter on all of them except if you want to change the version names. Browse to the root of you project. Create release mvn clean mvn release:prepare mvn release:perform mvn release:clean This would have created a tag in the repository and increased the version in the maven pom.xml files. We then want to push up the changes to the origin. git push origin --tags git push origin master Training resources Drupal: Drupal Essential Training: Drupal Advanced Training: Responsive Design with Drupal: Services Module used to pass the data from CMS to frontend: Smarty: Crash course: Best practices: PHP: PHP ini:

Content Management System

Content Management System Content Management System XT-CMS INSTALL GUIDE Requirements The cms runs on PHP so the host/server it is intended to be run on should ideally be linux based with PHP 4.3 or above. A fresh install requires

More information

5.1 Features 1.877.204.6679. sales@fourwindsinteractive.com Denver CO 80202

5.1 Features 1.877.204.6679. sales@fourwindsinteractive.com Denver CO 80202 1.877.204.6679 www.fourwindsinteractive.com 3012 Huron Street sales@fourwindsinteractive.com Denver CO 80202 5.1 Features Copyright 2014 Four Winds Interactive LLC. All rights reserved. All documentation

More information

ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved

ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved 1 1. Update Before you start updating, please refer to 2. Important changes to check if there are any additional instructions

More information

EZcast technical documentation

EZcast technical documentation EZcast technical documentation Document written by > Michel JANSENS > Arnaud WIJNS from ULB PODCAST team http://podcast.ulb.ac.be http://ezcast.ulb.ac.be podcast@ulb.ac.be SOMMAIRE SOMMAIRE 2 1. INTRODUCTION

More information

Bazaarvoice for Magento Extension Implementation Guide v6.3.4

Bazaarvoice for Magento Extension Implementation Guide v6.3.4 Bazaarvoice Bazaarvoice for Magento Extension Implementation Guide v6.3.4 Version 6.3.4 Bazaarvoice Inc. 03/25/2016 Introduction Bazaarvoice maintains a pre-built integration into the Magento platform.

More information

Portals and Hosted Files

Portals and Hosted Files 12 Portals and Hosted Files This chapter introduces Progress Rollbase Portals, portal pages, portal visitors setup and management, portal access control and login/authentication and recommended guidelines

More information

Localizing dynamic websites created from open source content management systems

Localizing dynamic websites created from open source content management systems Localizing dynamic websites created from open source content management systems memoqfest 2012, May 10, 2012, Budapest Daniel Zielinski Martin Beuster Loctimize GmbH [daniel martin]@loctimize.com www.loctimize.com

More information

Magento Extension Developer s Guide

Magento Extension Developer s Guide Magento Extension Developer s Guide Copyright 2012 X.commerce, Inc. All rights reserved. No part of this Guide shall be reproduced, stored in a retrieval system, or transmitted by any means, electronic,

More information

WHAT'S NEW IN SHAREPOINT 2013 WEB CONTENT MANAGEMENT

WHAT'S NEW IN SHAREPOINT 2013 WEB CONTENT MANAGEMENT CHAPTER 1 WHAT'S NEW IN SHAREPOINT 2013 WEB CONTENT MANAGEMENT SharePoint 2013 introduces new and improved features for web content management that simplify how we design Internet sites and enhance the

More information

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. 20486B: Developing ASP.NET MVC 4 Web Applications Course Overview This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. Course Introduction Course Introduction

More information

JMS MULTISITE for joomla!

JMS MULTISITE for joomla! JMS MULTISITE for joomla! Extends joomla! with multisite functionality «Technical (workshop) presentation» Joomla Day Mallorca 9 th and 10 th april 2010 08-Apr-2010 Page : 1 Table of content Why did we

More information

Installation, Configuration, and Usage

Installation, Configuration, and Usage Installation, Configuration, and Usage Copyright Free Lunch Labs www.freelunchlabs.com Installation BEFORE INSTALLING THIS EXTENSION CREATE OF BACKUP OF YOUR MAGENTO INSTALLATION AND ALL ASSOCISTED FILES

More information

Graphviz Website Installation, Administration and Maintenance

Graphviz Website Installation, Administration and Maintenance Graphviz Website Installation, Administration and Maintenance 1 Overview The graphviz.org website is based on the Drupal content management system. Drupal uses a MySql database to store web pages and information

More information

Site Store Pro. INSTALLATION GUIDE WPCartPro Wordpress Plugin Version

Site Store Pro. INSTALLATION GUIDE WPCartPro Wordpress Plugin Version Site Store Pro INSTALLATION GUIDE WPCartPro Wordpress Plugin Version WPCARTPRO INTRODUCTION 2 SYSTEM REQUIREMENTS 4 DOWNLOAD YOUR WPCARTPRO VERSION 5 EXTRACT THE FOLDERS FROM THE ZIP FILE TO A DIRECTORY

More information

Windows Azure Support in Kentico CMS 5.5 R2

Windows Azure Support in Kentico CMS 5.5 R2 Windows Azure Support in Kentico CMS 5.5 R2 Table of Contents Introduction and prerequisites... 3 Deployment to Windows Azure (using a prepared package)... 4 Conversion of an existing Kentico website to

More information

Sitecore InDesign Connector 1.1

Sitecore InDesign Connector 1.1 Sitecore Adaptive Print Studio Sitecore InDesign Connector 1.1 - User Manual, October 2, 2012 Sitecore InDesign Connector 1.1 User Manual Creating InDesign Documents with Sitecore CMS User Manual Page

More information

Implementing HTTPS in CONTENTdm 6 September 5, 2012

Implementing HTTPS in CONTENTdm 6 September 5, 2012 Implementing HTTPS in CONTENTdm 6 This is an overview for CONTENTdm server administrators who want to configure their CONTENTdm Server and Website to make use of HTTPS. While the CONTENTdm Server has supported

More information

Acquia Introduction December 9th, 2009

Acquia Introduction December 9th, 2009 Acquia Introduction December 9 th, 2009 Agenda 1. Content Management 2. Web Application Framework 3. Architecture principles 1. Modular 2. Event driven 3. Skinnable 4. Secure 5. Accessible 4. Enterprise

More information

MASTERTAG DEVELOPER GUIDE

MASTERTAG DEVELOPER GUIDE MASTERTAG DEVELOPER GUIDE TABLE OF CONTENTS 1 Introduction... 4 1.1 What is the zanox MasterTag?... 4 1.2 What is the zanox page type?... 4 2 Create a MasterTag application in the zanox Application Store...

More information

FileMaker Server 14. Custom Web Publishing Guide

FileMaker Server 14. Custom Web Publishing Guide FileMaker Server 14 Custom Web Publishing Guide 2004 2015 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and FileMaker Go are trademarks

More information

FileMaker Server 15. Custom Web Publishing Guide

FileMaker Server 15. Custom Web Publishing Guide FileMaker Server 15 Custom Web Publishing Guide 2004 2016 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and FileMaker Go are trademarks

More information

Developers Guide. Designs and Layouts HOW TO IMPLEMENT WEBSITE DESIGNS IN DYNAMICWEB. Version: 1.3 2013.10.04 English

Developers Guide. Designs and Layouts HOW TO IMPLEMENT WEBSITE DESIGNS IN DYNAMICWEB. Version: 1.3 2013.10.04 English Developers Guide Designs and Layouts HOW TO IMPLEMENT WEBSITE DESIGNS IN DYNAMICWEB Version: 1.3 2013.10.04 English Designs and Layouts, How to implement website designs in Dynamicweb LEGAL INFORMATION

More information

Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI)

Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI) i Sonatype CLM Enforcement Points - Continuous Integration (CI) Sonatype CLM Enforcement Points - Continuous Integration (CI) ii Contents 1

More information

Certified PHP/MySQL Web Developer Course

Certified PHP/MySQL Web Developer Course Course Duration : 3 Months (120 Hours) Day 1 Introduction to PHP 1.PHP web architecture 2.PHP wamp server installation 3.First PHP program 4.HTML with php 5.Comments and PHP manual usage Day 2 Variables,

More information

Bazaarvoice for Magento

Bazaarvoice for Magento Bazaarvoice Bazaarvoice for Magento Extension Implementation Guide v6.1.2.3 Version 6.1.2.3 Bazaarvoice Inc. 8/5/2015 Introduction Bazaarvoice maintains a pre-built integration into the Magento platform.

More information

Installing an open source version of MateCat

Installing an open source version of MateCat Installing an open source version of MateCat This guide is meant for users who want to install and administer the open source version on their own machines. Overview 1 Hardware requirements 2 Getting started

More information

Social Enterprise Java Apps

Social Enterprise Java Apps Social Enterprise Java Apps Safe Harbor Statement Safe harbor statement under the Private Securities Litigation Reform Act of 1995. This presentation may contain forward-looking statements that involve

More information

Esigate Module Documentation

Esigate Module Documentation PORTAL FACTORY 1.0 Esigate Module Documentation Rooted in Open Source CMS, Jahia s Digital Industrialization paradigm is about streamlining Enterprise digital projects across channels to truly control

More information

WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide

WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide This document is intended to help you get started using WebSpy Vantage Ultimate and the Web Module. For more detailed information, please see

More information

shweclassifieds v 3.3 Php Classifieds Script (Joomla Extension) User Manual (Revision 2.0)

shweclassifieds v 3.3 Php Classifieds Script (Joomla Extension) User Manual (Revision 2.0) shweclassifieds v 3.3 Php Classifieds Script (Joomla Extension) User Manual (Revision 2.0) Contents Installation Procedure... 4 What is in the zip file?... 4 Installing from Extension Manager... 6 Updating

More information

Developing Web Views for VMware vcenter Orchestrator

Developing Web Views for VMware vcenter Orchestrator Developing Web Views for VMware vcenter Orchestrator vcenter Orchestrator 5.1 This document supports the version of each product listed and supports all subsequent versions until the document is replaced

More information

Listed below are the common process in creating a new content type, and listing a summary of all contents via view and/or panel custom page.

Listed below are the common process in creating a new content type, and listing a summary of all contents via view and/or panel custom page. Why Features? Basically, in Drupal, one has to undergo series of configurations to be able to create content type, views and/or panels, etc. depending on the functionality one wants to achieve. For a single

More information

ResPAK Internet Module

ResPAK Internet Module ResPAK Internet Module This document provides an overview of the ResPAK Internet Module which consists of the RNI Web Services application and the optional ASP.NET Reservations web site. The RNI Application

More information

Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014

Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014 This presentation was originally given at DrupalCamp Scotland, 2014. http://camp.drupalscotland.org/ The University of Edinburgh 1 We are 2 of the developers working on the University s ongoing project

More information

FileMaker Server 9. Custom Web Publishing with PHP

FileMaker Server 9. Custom Web Publishing with PHP FileMaker Server 9 Custom Web Publishing with PHP 2007 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker is a trademark of FileMaker,

More information

Introduction to XML Applications

Introduction to XML Applications EMC White Paper Introduction to XML Applications Umair Nauman Abstract: This document provides an overview of XML Applications. This is not a comprehensive guide to XML Applications and is intended for

More information

Builder User Guide. Version 6.0.1. Visual Rules Suite - Builder. Bosch Software Innovations

Builder User Guide. Version 6.0.1. Visual Rules Suite - Builder. Bosch Software Innovations Visual Rules Suite - Builder Builder User Guide Version 6.0.1 Bosch Software Innovations Americas: Bosch Software Innovations Corp. 161 N. Clark Street Suite 3500 Chicago, Illinois 60601/USA Tel. +1 312

More information

MAGENTO Migration Tools

MAGENTO Migration Tools MAGENTO Migration Tools User Guide Copyright 2014 LitExtension.com. All Rights Reserved. Magento Migration Tools: User Guide Page 1 Content 1. Preparation... 3 2. Setup... 5 3. Plugins Setup... 7 4. Migration

More information

Dashboard Skin Tutorial. For ETS2 HTML5 Mobile Dashboard v3.0.2

Dashboard Skin Tutorial. For ETS2 HTML5 Mobile Dashboard v3.0.2 Dashboard Skin Tutorial For ETS2 HTML5 Mobile Dashboard v3.0.2 Dashboard engine overview Dashboard menu Skin file structure config.json Available telemetry properties dashboard.html dashboard.css Telemetry

More information

ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved

ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved ultimo theme Update Guide Copyright 2012-2013 Infortis All rights reserved 1 1. Update Before you start updating, please refer to 2. Important changes to check if there are any additional instructions

More information

Sonatype CLM for Maven. Sonatype CLM for Maven

Sonatype CLM for Maven. Sonatype CLM for Maven Sonatype CLM for Maven i Sonatype CLM for Maven Sonatype CLM for Maven ii Contents 1 Introduction 1 2 Creating a Component Index 3 2.1 Excluding Module Information Files in Continuous Integration Tools...........

More information

How to start with 3DHOP

How to start with 3DHOP How to start with 3DHOP Package content, local setup, online deployment http://3dhop.net 30/6/2015 The 3DHOP distribution Where to find it, what s inside The 3DHOP distribution package From the page http://3dhop.net/download.php

More information

X-POS GUIDE. v3.4 INSTALLATION. 2015 SmartOSC and X-POS

X-POS GUIDE. v3.4 INSTALLATION. 2015 SmartOSC and X-POS GUIDE INSTALLATION X-POS v3.4 2015 SmartOSC and X-POS 1. Prerequisites for Installing and Upgrading Server has Apache/PHP 5.2.x/MySQL installed. Magento Community version 1.7.x or above already installed

More information

Instant Chime for IBM Sametime Installation Guide for Apache Tomcat and Microsoft SQL

Instant Chime for IBM Sametime Installation Guide for Apache Tomcat and Microsoft SQL Instant Chime for IBM Sametime Installation Guide for Apache Tomcat and Microsoft SQL Spring 2015 Copyright and Disclaimer This document, as well as the software described in it, is furnished under license

More information

The truth about Drupal

The truth about Drupal The truth about Drupal Why Drupal is great Large community of 3rd party developer Quality control over contributed code Most of the indispensable contributed modules are maintained by solid development

More information

Customer Tips. Xerox Network Scanning HTTP/HTTPS Configuration using Microsoft IIS. for the user. Purpose. Background

Customer Tips. Xerox Network Scanning HTTP/HTTPS Configuration using Microsoft IIS. for the user. Purpose. Background Xerox Multifunction Devices Customer Tips June 5, 2007 This document applies to these Xerox products: X WC Pro 232/238/245/ 255/265/275 for the user Xerox Network Scanning HTTP/HTTPS Configuration using

More information

An Introduction to Developing ez Publish Extensions

An Introduction to Developing ez Publish Extensions An Introduction to Developing ez Publish Extensions Felix Woldt Monday 21 January 2008 12:05:00 am Most Content Management System requirements can be fulfilled by ez Publish without any custom PHP coding.

More information

Sitecore Dashboard User Guide

Sitecore Dashboard User Guide Sitecore Dashboard User Guide Contents Overview... 2 Installation... 2 Getting Started... 3 Sample Widgets... 3 Logged In... 3 Job Viewer... 3 Workflow State... 3 Publish Queue Viewer... 4 Quick Links...

More information

SEO Checker User manual

SEO Checker User manual SEO Checker User manual 1 INTRODUCTION... 4 2 INSTALLATION... 5 2.1 Install a license... 5 2.2 Give a user access to SEO Checker... 6 3 SEO CHECKER FOR CONTENT EDITORS... 7 4 VALIDATE PAGES... 8 4.1 Manual

More information

Git - Working with Remote Repositories

Git - Working with Remote Repositories Git - Working with Remote Repositories Handout New Concepts Working with remote Git repositories including setting up remote repositories, cloning remote repositories, and keeping local repositories in-sync

More information

Configuring the JEvents Component

Configuring the JEvents Component Configuring the JEvents Component The JEvents Control Panel's Configuration button takes you to the JEvents Global Configuration page. Here, you may set a very wide array of values that control the way

More information

MASTER DRUPAL 7 MODULE DEVELOPMENT

MASTER DRUPAL 7 MODULE DEVELOPMENT MASTER DRUPAL 7 MODULE DEVELOPMENT by blair wadman sample available for purchase at http://befused.com/master-drupal/ LESSON 1 INTRODUCTION In this section, you will be introduced to the core Drupal concepts

More information

SIMGallery. User Documentation

SIMGallery. User Documentation SIMGallery Joomla Component Joomla Modules Joomla/CB Plugin For Joomla and Community Builder / JomSocial http://www.joomla.org http://www.joomlapolis.com http://www.jomsocial.com User Documentation Product

More information

JTouch Mobile Extension for Joomla! User Guide

JTouch Mobile Extension for Joomla! User Guide JTouch Mobile Extension for Joomla! User Guide A Mobilization Plugin & Touch Friendly Template for Joomla! 2.5 Author: Huy Nguyen Co- Author: John Nguyen ABSTRACT The JTouch Mobile extension was developed

More information

Quick Start Guide Mobile Entrée 4

Quick Start Guide Mobile Entrée 4 Table of Contents Table of Contents... 1 Installation... 2 Obtaining the Installer... 2 Installation Using the Installer... 2 Site Configuration... 2 Feature Activation... 2 Definition of a Mobile Application

More information

Cross-platform Programming Lecture 3

Cross-platform Programming Lecture 3 Crossplatform Programming Lecture 3 Introduction to Titanium http://dsg.ce.unipr.it/ http://dsg.ce.unipr.it/?q=node/37 alessandro.grazioli81@gmail.com 2015 Parma Outline Introduction Installation and Configuration

More information

CEFNS Web Hosting a Guide for CS212

CEFNS Web Hosting a Guide for CS212 CEFNS Web Hosting a Guide for CS212 INTRODUCTION: TOOLS: In CS212, you will be learning the basics of web development. Therefore, you want to keep your tools to a minimum so that you understand how things

More information

Installation & User Guide

Installation & User Guide SharePoint List Filter Plus Web Part Installation & User Guide Copyright 2005-2011 KWizCom Corporation. All rights reserved. Company Headquarters KWizCom 50 McIntosh Drive, Unit 109 Markham, Ontario ON

More information

Builder User Guide. Version 5.4. Visual Rules Suite - Builder. Bosch Software Innovations

Builder User Guide. Version 5.4. Visual Rules Suite - Builder. Bosch Software Innovations Visual Rules Suite - Builder Builder User Guide Version 5.4 Bosch Software Innovations Americas: Bosch Software Innovations Corp. 161 N. Clark Street Suite 3500 Chicago, Illinois 60601/USA Tel. +1 312

More information

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved.

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, 2015. Copyright 2015 MarkLogic Corporation. All rights reserved. Reference Application Architecture Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents

More information

Magento 1.3: PHP Developer's Guide

Magento 1.3: PHP Developer's Guide Magento 1.3: PHP Developer's Guide Jamie Huskisson Chapter No. 3 "Magento's Architecture" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter

More information

The easy way to a nice looking website design. By a total non-designer (Me!)

The easy way to a nice looking website design. By a total non-designer (Me!) The easy way to a nice looking website design By a total non-designer (Me!) Website Refresher Three types of Website 1.Hand rolled HTML. Lightweight static pages. 2.Scripted Website. (PHP, ASP.NET etc.)

More information

Elgg 1.8 Social Networking

Elgg 1.8 Social Networking Elgg 1.8 Social Networking Create, customize, and deploy your very networking site with Elgg own social Cash Costello PACKT PUBLISHING open source* community experience distilled - BIRMINGHAM MUMBAI Preface

More information

DreamFactory & Modus Create Case Study

DreamFactory & Modus Create Case Study DreamFactory & Modus Create Case Study By Michael Schwartz Modus Create April 1, 2013 Introduction DreamFactory partnered with Modus Create to port and enhance an existing address book application created

More information

Getting Started with the Ed-Fi ODS and Ed-Fi ODS API

Getting Started with the Ed-Fi ODS and Ed-Fi ODS API Getting Started with the Ed-Fi ODS and Ed-Fi ODS API Ed-Fi ODS and Ed-Fi ODS API Version 2.0 - Technical Preview October 2014 2014 Ed-Fi Alliance, LLC. All rights reserved. Ed-Fi is a registered trademark

More information

PHP Integration Kit. Version 2.5.1. User Guide

PHP Integration Kit. Version 2.5.1. User Guide PHP Integration Kit Version 2.5.1 User Guide 2012 Ping Identity Corporation. All rights reserved. PingFederate PHP Integration Kit User Guide Version 2.5.1 December, 2012 Ping Identity Corporation 1001

More information

Shop by Manufacturer Custom Module for Magento

Shop by Manufacturer Custom Module for Magento Shop by Manufacturer Custom Module for Magento TABLE OF CONTENTS Table of Contents Table Of Contents... 2 1. INTRODUCTION... 3 2. Overview...3 3. Requirements... 3 4. Features... 4 4.1 Features accessible

More information

DevShop. Drupal Infrastructure in a Box. Jon Pugh CEO, Founder ThinkDrop Consulting Brooklyn NY

DevShop. Drupal Infrastructure in a Box. Jon Pugh CEO, Founder ThinkDrop Consulting Brooklyn NY DevShop Drupal Infrastructure in a Box Jon Pugh CEO, Founder ThinkDrop Consulting Brooklyn NY Who? Jon Pugh ThinkDrop Consulting Building the web since 1997. Founded in 2009 in Brooklyn NY. Building web

More information

Develop a Native App (ios and Android) for a Drupal Website without Learning Objective-C or Java. Drupaldelphia 2014 By Joe Roberts

Develop a Native App (ios and Android) for a Drupal Website without Learning Objective-C or Java. Drupaldelphia 2014 By Joe Roberts Develop a Native App (ios and Android) for a Drupal Website without Learning Objective-C or Java Drupaldelphia 2014 By Joe Roberts Agenda What is DrupalGap and PhoneGap? How to setup your Drupal website

More information

SizmekFeatures. HTML5JSSyncFeature

SizmekFeatures. HTML5JSSyncFeature Features HTML5JSSyncFeature Table of Contents Overview... 2 Supported Platforms... 2 Demos/Downloads... 3 Note... 3 For Tags Served in iframes... 3 Features... 3 Use Case... 3 Included Files... 4 Implementing

More information

Evaluation. Chapter 1: An Overview Of Ruby Rails. Copy. 6) Static Pages Within a Rails Application... 1-10

Evaluation. Chapter 1: An Overview Of Ruby Rails. Copy. 6) Static Pages Within a Rails Application... 1-10 Chapter 1: An Overview Of Ruby Rails 1) What is Ruby on Rails?... 1-2 2) Overview of Rails Components... 1-3 3) Installing Rails... 1-5 4) A Simple Rails Application... 1-6 5) Starting the Rails Server...

More information

Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator

Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator Written by: Chris Jaun (cmjaun@us.ibm.com) Sudha Piddaparti (sudhap@us.ibm.com) Objective In this

More information

Insight Video Net. LLC. CMS 2.0. Quick Installation Guide

Insight Video Net. LLC. CMS 2.0. Quick Installation Guide Insight Video Net. LLC. CMS 2.0 Quick Installation Guide Table of Contents 1. CMS 2.0 Installation 1.1. Software Required 1.2. Create Default Directories 1.3. Create Upload User Account 1.4. Installing

More information

Elle Décor Lookbook ipad Application

Elle Décor Lookbook ipad Application Elle Décor Lookbook ipad Application www.appnovation.com Elle Décor Lookbook ipad Application Contents 1.0 Background P. 3 2.0 Project Overview P. 4 3.0 Goals & Requirements P. 5 4.0 Development P. 8 P.2

More information

PhoneGap Build Starter

PhoneGap Build Starter PhoneGap Build Starter Painless Mobile Apps Development Zainul Setyo Pamungkas This book is for sale at http://leanpub.com/phonegapbuild This version was published on 2015-05-26 This is a Leanpub book.

More information

Adobe Summit 2015 Lab 712: Building Mobile Apps: A PhoneGap Enterprise Introduction for Developers

Adobe Summit 2015 Lab 712: Building Mobile Apps: A PhoneGap Enterprise Introduction for Developers Adobe Summit 2015 Lab 712: Building Mobile Apps: A PhoneGap Enterprise Introduction for Developers 1 Table of Contents INTRODUCTION MODULE 1 AEM & PHONEGAP ENTERPRISE INTRODUCTION LESSON 1- AEM BASICS

More information

Hudson configuration manual

Hudson configuration manual Hudson configuration manual 1 Chapter 1 What is Hudson? Hudson is a powerful and widely used open source continuous integration server providing development teams with a reliable way to monitor changes

More information

Beyond The Web Drupal Meets The Desktop (And Mobile) Justin Miller Code Sorcery Workshop, LLC http://codesorcery.net/dcdc

Beyond The Web Drupal Meets The Desktop (And Mobile) Justin Miller Code Sorcery Workshop, LLC http://codesorcery.net/dcdc Beyond The Web Drupal Meets The Desktop (And Mobile) Justin Miller Code Sorcery Workshop, LLC http://codesorcery.net/dcdc Introduction Personal introduction Format & conventions for this talk Assume familiarity

More information

Sizmek Formats. IAB Mobile Pull. Build Guide

Sizmek Formats. IAB Mobile Pull. Build Guide Sizmek Formats IAB Mobile Pull Build Guide Table of Contents Overview...3 Supported Platforms... 6 Demos/Downloads... 6 Known Issues... 6 Implementing a IAB Mobile Pull Format...6 Included Template Files...

More information

Configuring Secure Socket Layer (SSL) for use with BPM 7.5.x

Configuring Secure Socket Layer (SSL) for use with BPM 7.5.x Configuring Secure Socket Layer (SSL) for use with BPM 7.5.x Configuring Secure Socket Layer (SSL) communication for a standalone environment... 2 Import the Process Server WAS root SSL certificate into

More information

Module developer s tutorial

Module developer s tutorial Module developer s tutorial Revision: May 29, 2011 1. Introduction In order to keep future updates and upgrades easy and simple, all changes to e-commerce websites built with LiteCommerce should be made

More information

Build it with Drupal 8

Build it with Drupal 8 Build it with Drupal 8 Comprehensive guide for building common websites in Drupal 8. No programming knowledge required! Antonio Torres This book is for sale at http://leanpub.com/drupal-8-book This version

More information

Integration Guide. SafeNet Authentication Service. Using SAS as an Identity Provider for Drupal

Integration Guide. SafeNet Authentication Service. Using SAS as an Identity Provider for Drupal SafeNet Authentication Service Integration Guide Technical Manual Template Release 1.0, PN: 000-000000-000, Rev. A, March 2013, Copyright 2013 SafeNet, Inc. All rights reserved. 1 Document Information

More information

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc.

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc. WA2088 WebSphere Application Server 8.5 Administration on Windows Student Labs Web Age Solutions Inc. Copyright 2013 Web Age Solutions Inc. 1 Table of Contents Directory Paths Used in Labs...3 Lab Notes...4

More information

Wakanda Studio Features

Wakanda Studio Features Wakanda Studio Features Discover the many features in Wakanda Studio. The main features each have their own chapters and other features are documented elsewhere: Wakanda Server Administration Data Browser

More information

Open Source Content Management System for content development: a comparative study

Open Source Content Management System for content development: a comparative study Open Source Content Management System for content development: a comparative study D. P. Tripathi Assistant Librarian Biju Patnaik Central Library NIT Rourkela dptnitrkl@gmail.com Designing dynamic and

More information

Workshop on Using Open Source Content Management System Drupal to build Library Websites Hasina Afroz Auninda Rumy Saleque

Workshop on Using Open Source Content Management System Drupal to build Library Websites Hasina Afroz Auninda Rumy Saleque Workshop on Using Open Source Content Management System Drupal to build Library Websites Hasina Afroz Auninda Rumy Saleque Funded by: INASP, UK October 7, 2012 Ayesha Abed Library http://library.bracu.ac.bd

More information

Learn how to create web enabled (browser) forms in InfoPath 2013 and publish them in SharePoint 2013. InfoPath 2013 Web Enabled (Browser) forms

Learn how to create web enabled (browser) forms in InfoPath 2013 and publish them in SharePoint 2013. InfoPath 2013 Web Enabled (Browser) forms Learn how to create web enabled (browser) forms in InfoPath 2013 and publish them in SharePoint 2013. InfoPath 2013 Web Enabled (Browser) forms InfoPath 2013 Web Enabled (Browser) forms Creating Web Enabled

More information

Developing ASP.NET MVC 4 Web Applications MOC 20486

Developing ASP.NET MVC 4 Web Applications MOC 20486 Developing ASP.NET MVC 4 Web Applications MOC 20486 Course Outline Module 1: Exploring ASP.NET MVC 4 The goal of this module is to outline to the students the components of the Microsoft Web Technologies

More information

Use ArcGIS Online to Manage

Use ArcGIS Online to Manage Use ArcGIS Online to Manage Your Own Custom Map Gallery By Keith Mann, Esri Start customizing the template by changing the graphics and the web page title. Wouldn t it be great if you could create a dynamic

More information

WESTERNACHER OUTLOOK E-MAIL-MANAGER OPERATING MANUAL

WESTERNACHER OUTLOOK E-MAIL-MANAGER OPERATING MANUAL TABLE OF CONTENTS 1 Summary 3 2 Software requirements 3 3 Installing the Outlook E-Mail Manager Client 3 3.1 Requirements 3 3.1.1 Installation for trial customers for cloud-based testing 3 3.1.2 Installing

More information

Startup Guide. Version 2.3.9

Startup Guide. Version 2.3.9 Startup Guide Version 2.3.9 Installation and initial setup Your welcome email included a link to download the ORBTR plugin. Save the software to your hard drive and log into the admin panel of your WordPress

More information

metaengine DataConnect For SharePoint 2007 Configuration Guide

metaengine DataConnect For SharePoint 2007 Configuration Guide metaengine DataConnect For SharePoint 2007 Configuration Guide metaengine DataConnect for SharePoint 2007 Configuration Guide (2.4) Page 1 Contents Introduction... 5 Installation and deployment... 6 Installation...

More information

FileMaker Server 12. Custom Web Publishing with XML

FileMaker Server 12. Custom Web Publishing with XML FileMaker Server 12 Custom Web Publishing with XML 2007 2012 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and Bento are trademarks

More information

Web Dashboard User Guide

Web Dashboard User Guide Web Dashboard User Guide Version 10.2 The software supplied with this document is the property of RadView Software and is furnished under a licensing agreement. Neither the software nor this document may

More information

HOW TO SETUP AN APACHE WEB SERVER AND INTEGRATE COLDFUSION

HOW TO SETUP AN APACHE WEB SERVER AND INTEGRATE COLDFUSION HOW TO SETUP AN APACHE WEB SERVER AND INTEGRATE COLDFUSION Draft version 1.0 July 15 th 2010 Software XAMPP is an open source package designed to take almost all the work out of setting up and integrating

More information

Enterprise Knowledge Platform

Enterprise Knowledge Platform Enterprise Knowledge Platform EKP Status Monitor Guide 2.1 Document Information Document ID: EN150 Document title: EKP Status Monitor Guide Version: 2.1 Document date: 14 April 2009 This document may be

More information

Page Editor Recommended Practices for Developers

Page Editor Recommended Practices for Developers Page Editor Recommended Practices for Developers Rev: 7 July 2014 Sitecore CMS 7 and later Page Editor Recommended Practices for Developers A Guide to Building for the Page Editor and Improving the Editor

More information

Automation Services 9.5 Workflow Reference

Automation Services 9.5 Workflow Reference Automation Services 9.5 Workflow Reference CONTENTS Contents Introduction...3 Where we're coming from...3 Conventions in this book...3 Understanding workflows...5 Workflows...6 Execute QPP Script...6 Export

More information

MAGENTO THEME SHOE STORE

MAGENTO THEME SHOE STORE MAGENTO THEME SHOE STORE Developer: BSEtec Email: support@bsetec.com Website: www.bsetec.com Facebook Profile: License: GPLv3 or later License URL: http://www.gnu.org/licenses/gpl-3.0-standalone.html 1

More information