Joomla is widely used for portals and business websites due to its flexibility and control.
We have created a joomla “component” for online admission which could easily customized to a portal. Forms and fields can be created dynamically without any coding knowledge. This component take cares of all admission procedures including payment.
The task is to synchronise the data in Joomla with OpenERP, this was accomplished by the “connector” written in php which acts as a server for the XML-RPC calls.
The connector file consists of :
1) Php function xmlrpc_server_create() creates the XML-RPC server.
If the XML-RPC server is not created false is returned.
2) Register the php functions with the server using xmlrpc_server_register_method().The first argument to the xmlrpc_server_register_method() is the xml-rpc server resource and the second argument is the name of the method from the web-service which is the <methodName> element value in a XML-RPC request. The third argument is the php function to be registered with the server.
3) If the php function is registered the xmlrpc_server_register_method() returns true.
function get_reg_details($array,$token) {
//php function which fetch details from mysql database and returns
}
$xmlrpc_server=xmlrpc_server_create();
xmlrpc_server_register_method($xmlrpc_server, “get_reg_details”, “get_reg_details”);
$array is the array of values passed into the function from openerp, and $token is the token (which acts like session) passed from openerp, this token is generated during first login, and saved in openerp, its used to check the authenticity during each function call.
Requirements for joomla installation;
1) php5 with php5-xmlrpc installed
2) Joomla 1.5.18
3) php connector file mentioned above, which is placed in server running joomla
In the openerp part, the module named “online registration” developed by ZestyBeanz, does the major part like creating connection, invoke function calls using XML-RPC protocol. The website is controlled from openerp.
For example: The various steps for the process is given below:
1) Install the “online registration” module and open the connection Interface.
Fig 1.1 openerp joomla connection interface
The tab named “Test connection” test the connection between openerp and joomla, if the connection is correct it shows success message. On clicking “Sync Registration Fields” tab, it fetches all the form fields created in joomla to openerp. Then notifications or advertisement are created in openerp and synced with joomla using “Sync Notifications to joomla”. The registration details in joomla is synced using “Fetch Registrants”.
All these functions are executed by calling functions written in XML-RPC server.
2) Create a admission notification in openerp
Fig 1.2 notification created in openerp
After the notification is created, the notification is synced to joomla and is published there.
The notification dynamically created in joomla is as shown below
Fig 1.3 notification synced with joomla, as shown in jooma admin panel
3) Participants can register through the joomla interface.
Fig 1.4 registration data as shown in joomla admin panel
4) this data is synced with openerp as shown below
Fig 1.5 registration data in openerp, which is synced from joomla
Wallfish: Thank you very much for this post, I agree with what is written there and I read something about it on the https://essaysservicesreviews.com/. I also advise you to read to better understand this topic.".
Leave a Reply