Support A2Billing :

provided by Star2Billing S.L.

Support A2Billing :
It is currently Tue Apr 16, 2024 10:53 pm
Hosted Voice Broadcast


All times are UTC




Post new topic Reply to topic  [ 3 posts ] 
Author Message
 Post subject: Integration with CMS
PostPosted: Mon Jun 15, 2009 12:05 am 
Offline

Joined: Mon Jun 01, 2009 11:52 am
Posts: 17
I don't know if this is the right sub-forum for this topic, so moderators, please move to appropriate place.

I am starting a new business using a2billing. I will use the 1.4.1 despite the warnings :).

I like the a2billing very much (looking from admin's point of view). You pretty much thought of almost everything and that's good.

When I installed a2b I first browsed lightly through directory structure and I saw you were using Smarty, which is great because it's a very powerful templating engine.
So I thought it would be easy to adapt the looks of A2B to blend into my website. Well, I was wrong, and I do have to criticize you on that point. The design is not separated from the engine so it's impossible to adapt the template to fit the main website - because there is no template. You are using Smarty only to attach header and footer to pages and you render the contents of pages from within the scripts which is wrong. That's not how Smarty should be used.

Then I tried to set up Paypal payments. Bump. I see many other people have problem with it, so did I.

These two factors made me decide to redo (from scratch) the A2B customer interface for the needs of my business.

I used the original queries from A2B to acquire data from A2B database. The new customer UI is integrated into the MODx CMS ( http://www.modxcms.com ). I didn't do the whole customer UI, only the things I thought necessary for my business, meaning: Account info, SIP info, Call History, and Payment history. I also programmed the new Paypal payment module, based on my previous experience with it, and using a very simple PHP class by Micah Carrick here:

http://www.micahcarrick.com/04-19-2005/ ... class.html

I saw that you were using payment methods developed by OSCommerce. I also saw a cc_paypal table in the A2B database that was not used, but I used it in my new payment module to log Paypal payments.

For displaying table data, I used Matt Kruse's javascript table toolbox here:

http://www.javascripttoolbox.com/lib/table/index.php

This looks fantastic, and is also highly templatable through CSS. The other main feature is that this javascript library does all the pagination, sorting by columns, and even filtering within the client's browser. So there is only one MySQL query needed to spit out the data to client's web browser and then the javascript takes over. This, I think, greatly reduces stress on the MySQL database on the server, because it would not be bothered by new queries. The only place where I don't find this applicable is on very large tables. Maybe I'm wrong on this.

The main feature of my adapted customer UI is that is far, far simpler than the original A2B interface and it is highly templatable through the MODx CMS' templating system, so it can be adapted to any site design.

I didn't do the signup script because it proved to be more complicated than I thought. I will have to think of how to integrate the signup process of A2B and MODx, but it shouldn't be too complicated. Once I do that, I will be able to use MODx sofisticated session management, instead of my own which is not very good.

I would have done this much easier if some of the basic A2B include files that load the A2B configuration setting from the database didn't break MODx's and mine session by destroying it. Therefore, to ease up the integration process into other CMS' I propose that you consider keeping session management in a separate small script that would load on each page that should be protected by login/session. It would also have been much easier if the code was object oriented.

I am willing to develop the full feature set of the customer UI integrated with MODx and share it with the A2B and MODx community if people are interested in having it. If not I will also share it with the community (because I'm obligated by licence), but I will not develop the full feature set. I am also willing to consider developing the admin UI as well if there is interest in the community.

Currently the script doesn't load all the config settings from A2B database because it's kind of closely tailored to my needs, and because of the above described problem with session management. If I decide to continue/finish developing for the community I will import all config settings from the A2B database.

MODx itself is going to have major overhauling this year and fully transfer to Smarty templating system which, after modifying my A2B plugin, would make things even more interesting for the community.

I will post the link to my site and give you a demo account to see how it looks like as soon as I have it decent for public. ;)

I expect further instructions from jroper and areski on how to share my code. Just a note: plugins (or snippets they call them) for MODx are usually placed within the MODx management backend, and not in separate files. They are written into MODx's database and parsed and executed from there.

Oh, let me post some screenshots:

Image

Image

Image

Image

Image

Image


Top
 Profile  
 
 Post subject: Re: Integration with CMS
PostPosted: Thu Jun 18, 2009 5:20 am 
Offline

Joined: Fri Jan 18, 2008 9:54 pm
Posts: 135
Hello,

Nice work and orientation..

Very interested in the update.

Plz keep us posted

Regards


Top
 Profile  
 
 Post subject: Re: Integration with CMS
PostPosted: Thu Jun 18, 2009 4:47 pm 
Offline

Joined: Sun Mar 12, 2006 2:49 pm
Posts: 954
Location: Barcelona
Quote:
When I installed a2b I first browsed lightly through directory structure and I saw you were using Smarty, which is great because it's a very powerful templating engine.
So I thought it would be easy to adapt the looks of A2B to blend into my website. Well, I was wrong, and I do have to criticize you on that point. The design is not separated from the engine so it's impossible to adapt the template to fit the main website - because there is no template. You are using Smarty only to attach header and footer to pages and you render the contents of pages from within the scripts which is wrong. That's not how Smarty should be used.


I can't be more agree with you, it s due to the story of the project itself.
A2Billing never had a template system, we attempted to include Smarty on top of it, but as you might know Smarty, you have to think from the ground how to build all your pages with it, so the job involved to included fulled Smarty was huge and at the end of the day it will be better for many other reasons to rewrite it from Scratch. This is what we are willing to do in the future, not by using a CMS, neither ModX, Drupal or Joomla framework, but we are willing to direct the project and use one of the best existing development framework as CakePHP, Symfony, Cognition, etc.. the choice is still to make but the next version will go in this direction.

For sure, in order to share your contribution,
we will be happy to host on svn your contribution, contact me by mail when you can.

Yours,
/Areski


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 3 posts ] 
Voice Broadcast System


All times are UTC


Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group