Magento one page checkout : display shopping cart details in sidebar

magentoonepagecheckoutorder

There are a lot of discussions going on about Magento's one page checkout procedure : it is supposed to enhance customer payment experience by probviding ajax based single page order progress. But there are alos some discussions in the forum on how to enhance this process which is quite unusual and might discourage some customers. In a previous post I reviewed the code that produces sidebar shopping cart in default pages with right margin. The solution below explains how to add a full shopping cart display for the customer's that trying to complete an order.

Read more

Silverstripe CRUD / DATA management

With new versions coming up regularly, Silverstripe proves to be one of the best and usable Content Management System, including full website page content management fetaures and full relational database content management. Like most opensoruce projects, one big asset missing is a documentation, we hope this is getting better especially with the release of the Silverstripe book english translation, to be published in august. Finding one's way in the plethora of modules and code hacks available for Silverstripe is a rough job, but it pays. Data management in silverstripe  is actually, in my opinion, one of the most integrated and flexible solutions available out there. Another good source of information for developers can be found at the newly built ssbits website that develops hacks and tricks.

In detail

Two different options exist in Silverstripe for data management

  • DataObjectManager  is a plugin developed by Uncle Cheese, also known as Aaron Carlino. His dataObjectManager allows the building of data management interafaces within page types, with many features including HTML field, file upload. A good example of the dataobjectmanager is the image_gallery module that improves the standard lightbox gallery that we used in Silverstripe. 
  • ModelAdmin is the new scaffolder for Silverstripe : it allows the building of data mangement systems within the Silverstripe admin. The documentation is a bit sparse but there's a public presentation that explains it quite extensively.

Database comparison tools

After a few schema problmes on some obscure CMS installation, I decided to go for an automatic comparison of database schemas. Here is a list of tools you might try

EXTJS EditorAutoGrid – CRUD enabled (2)

I have been working on the autogrid (see 1st implementation)  to provide  server based column model tools, including automatic grid layout, column model definition, and editor component definition. Here is a new implementation of  the editor autogrid extension for ext js 2.2 only - see known bug with extjs 3  below-   that now features :

  • AJAX based combo box editor field for n to 1 data relationship reading from AJAX meta columns via data type :
    {"name":"Categories_title","header"
    :"Categories_title","related":"Category","dataType":"leftJoin","width":250}
  • GridSearch plugin integration

editorautogrid

Download : [download id="3"] - the zip  includes

  • AutoGrid.js : editor auto grid code (exstends EditorGridPanel)
  • taskGrid.js / CatGrid.js : javascript code for the 2 database tables in the  example above (TASKS + CATEGORY).
  • tasks-json.txt :JSON data for main table (TASK)
  • tasks-category-combo-json : JSON data sample for related table data in combobox

Please note that this download does not include server code. among known bugs I can remember the nasty "load twice when doing a search", or the extjs 3.0 rc1.1 "getCellEditor is not a function" error when trying to edit.

extJS Row Editor component

EXTJS 3.0 is coming with a new release candidate that illustrates a new feature we've been waiting for : the row editor component comines grid / grideditor features to allow single line editing features, as illustrated below. The row editor class works with the add button and the live example provided is a nice show case of  grid linking with charts.

Create sample screen of your apps in minutes

Application developpers like to illustrate the process and layout of the work they are planning. Customers like to have a visual sample of what's coming, and that's exactly the kind of step that clarifies discussions when negociating work and contracts.  Balsamiq mockups is a basic ilsutration application  that you can use to very quickly build a UI mockup. A lot of softwares do that, wbut this one is rellay simple to use and very light to install, the free version is actually browser based ! Mockup below took approximately... 15 minutes !

gestionlocative

PDF Publishing: comparing solutions

A lot of magazine publishers now use online readers to let subscribers read thei publications online, via what is called a PDF book reader. Online services provide such an interface, with functions and prices that vary. We've investigated two of these providers : ISSUUE and CAMELEO. More here

  Issuu Calameo
Flash based reader yes yes
Suggestions/related yes yes
Multimedia (sound) yes yes
Messaging yes yes
Formats (output) web, PDF web, PDF
Private publishing yes yes
input file formats PDF, Word, PowerPoint, OpenOffice, RTF, Word Perfect and ODT, WPD, SXW, ODP, SXI PDF, OpenOffice, MS Office, and text
Directory yes yes
Tags yes yes
Upload multiple documents yes yes
Groups no yes
Comments yes yes
Share yes yes
Ads yes no
Free plan yes yes

EXTJS enhanced AutoGrid : CRUD enabled

The Autogrid ext js extension, delivered via the ext js forums, is a quick grid extension that does not come with inline editing features but is ready for the job. The purpose of this autogrid is to enable quick building of datagrid via server side loading of meta information for columns. The autosave feature allows the user to keep the grid's configueration over various sessions. 

I have worked a few hours to deliver this refoactoring of the autogrid that is an extension of the EditorGridPanel, and it brinbgs new features :

  • save order and direction of query sort
  • allow inline editing including specific field for dates (can easily be extended)
  • sends new data to server in the form of field name / field value, allowing quick writing of generic save queries.

[download id="2"]

Read more