Setting up a Development Environment » History » Version 5
Max Milbers, 09/08/2010 02:52 PM
1 | 1 | Rick Glunt | h1. Setting up a Development Environment |
---|---|---|---|
2 | |||
3 | h2. Introduction |
||
4 | |||
5 | If you start developing for the project or just with VirtueMart you may have already set up a development environment with an IDE and a SVN program. |
||
6 | |||
7 | If you haven't done so or if you want to know what to do better, you can follow the instructions given on this page. |
||
8 | |||
9 | The following programs are recommended for working with VirtueMart and synchronizing the working directory with the local SVN repository: |
||
10 | |||
11 | 3 | Max Milbers | * SmartSVN or TortoiseSVN |
12 | * Total Commander (perfect for sync'ing the contents of two directories) |
||
13 | 2 | Rick Glunt | * Zend Studio (the state of the art when it comes to a PHP IDE, costs!) |
14 | * or PHP Development Tools for Eclipse (very good PHP IDE and free!) |
||
15 | 1 | Rick Glunt | |
16 | Of course there are other programs that can do the same as the ones mentioned above, but remember: these are just recommendations. |
||
17 | |||
18 | h2. Setup an IDE and SVN |
||
19 | |||
20 | If you want to join the project it is important that you have a similar environment like the other devs, so it makes it easier for everyone to help each other. |
||
21 | |||
22 | First setup up an IDE, I suggest you follow the explanations here: http://docs.joomla.org/Setting_up_your_workstation_for_Joomla!_development |
||
23 | |||
24 | 5 | Max Milbers | SVN-Basics: |
25 | 1 | Rick Glunt | |
26 | The SVN folder structure is setup with 3 root folders; trunk, tags and branches. The trunk folder is used for curent active development. The tags folder is used for public releases. The branches folder can be used for code branches. |
||
27 | |||
28 | The structure found under these root folders mimic the structure in a typical Joomla installation, however, only contain the VirtueMart code. This gives us the ability to easily commit and checkout directly from a Joomla installation as described above. |
||
29 | |||
30 | There are 3 different folders for backend, frontend and modules |
||
31 | |||
32 | 2 | Rick Glunt | * trunk/administrator/components/com_virtuemart |
33 | * trunk/components/com_virtuemart |
||
34 | * trunk/modules/(..not ready, we are pleased if you want to write a module) |
||
35 | 1 | Rick Glunt | |
36 | The /trunk is your joomla base root = jRoot. |
||
37 | |||
38 | At best is if you have a joomla installation and make 1 checkout for back and frontend. Before you can checkout the svn you should delete the files that are installed by the vm installer. Just delete this directories |
||
39 | |||
40 | 2 | Rick Glunt | * administrator/components/com_virtuemart |
41 | * components/com_virtuemart |
||
42 | |||
43 | 1 | Rick Glunt | and the language files named en-GB.com_virtuemart.ini in |
44 | 2 | Rick Glunt | |
45 | * administrator\language |
||
46 | * language |
||
47 | 1 | Rick Glunt | |
48 | use for checkout on the joomla base root: |
||
49 | |||
50 | svn co https://dev.virtuemart.net/svn/virtuemart/trunk/virtuemart |
||
51 | |||
52 | After updating you should have the newest version of VirtueMart |
||
53 | |||
54 | 5 | Max Milbers | If you want to check the mails you may want to use hamster as mailserver |
55 | |||
56 | Now there are two ways. |
||
57 | |||
58 | * Use the normal installation process of virtuemart to set the right entries, to use virtuemart. This step just needs that you manually delete the virtuemart files after the installation to be able to perform the checkout (most svn clients dont overwrite existing files). |
||
59 | # This means download or create the installer of virtuemart and install it in joomla [[Create virtuemart installer]]. |
||
60 | # Delete the files of virtuemart in /administrator/components/com_virtuemart and in componentes/com_virtuemart. You may delete the language files also to prevent warnings. |
||
61 | # AFTER that configure the SVN, directly into your joomla base directory. |
||
62 | |||
63 | * Or use the right sql to inform joomla that virtuemart exists. Just make a checkout directly into your joomla base directory. Then execute the following sql commands with phpmyadmin. Be aware that these sql assume that you use the prefix jos for your tables. |
||
64 | |||
65 | This is for virtuemart: |
||
66 | |||
67 | INSERT INTO `jos_components` (`id`, `name`, `link`, `menuid`, `parent`, `admin_menu_link`, `admin_menu_alt`, `option`, `ordering`, `admin_menu_img`, `iscore`, `params`, `enabled`) VALUES |
||
68 | (54, 'VirtueMart', 'option=com_virtuemart', 0, 0, 'option=com_virtuemart', 'VirtueMart', 'com_virtuemart', 0, '../components/com_virtuemart/shop_image/ps_image/menu_icon.png', 0, '', 1); |
||
69 | |||
70 | This is for the paymentplugins: |
||
71 | |||
72 | INSERT INTO `jos_plugins` (`id`, `name`, `element`, `folder`, `access`, `ordering`, `published`, `iscore`, `client_id`, `checked_out`, `checked_out_time`, `params`) VALUES |
||
73 | (136, 'VMPayment - Authorize', 'authorize', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', 'pType=Y\nDEBUG=0\nCHECK_CARD_CODE=1\nAN_RECURRING=0\nAN_TYPE=AUTH_CAPTURE\nAN_SHOW_ERROR_CODE=0\nAN_EMAIL_MERCHANT=1\nAN_EMAIL_CUSTOMER=1\nAN_LOGIN=username\n\n'), |
||
74 | (137, 'VMPayment - Cash on delivery', 'cashondel', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', 'pType=N\nCASH_ON_DEL_5000=230\nCASH_ON_DEL_10000=340\nCASH_ON_DEL_20000=560\nCASH_ON_DEL_30000=640\nCASH_ON_DEL_40000=750\nCASH_ON_DEL_50000=860\nCASH_ON_DEL_100000=1130\n\n'), |
||
75 | (138, 'VMPayment - echeck', 'echeck', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
76 | (139, 'VMPayment - epay', 'epay', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
77 | (140, 'VMPayment - eProcessingNetwork.com', 'epn', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
78 | (141, 'VMPayment - eWay - Australian Payment Gateway', 'eway', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
79 | (142, 'VMPayment - linkpot.net - youpay.com', 'linkpoint', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
80 | (143, 'VMPayment - Montrada.de', 'montrada', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
81 | (144, 'VMPayment - Nochex', 'nochex', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
82 | (145, 'VMPayment - Payflow Pro', 'payflow_pro', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
83 | (146, 'VMPayment - Paymate', 'paymate', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
84 | (147, 'VMPayment - Paymenow', 'paymenow', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
85 | (148, 'VMPayment - PayPal', 'paypal', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
86 | (149, 'VMPayment - 2Checkout', 'twocheckout', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''), |
||
87 | (150, 'VMPayment - Worldpay', 'worldpay', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', ''); |