Autocon

Car Dealership Script


Our latest version 1.8 comes with improvement and upgrades.

  1. Milage range settings added on admin panel [NEW]
  2. Grid image initial loading height issue fix [UPDATE]
  3. Some improvements on theme css [UPDATE]
  4. AUto translate feature removed since it's no more supported by google [FIX]
  5. css compression option added [NEW]
  6. Removed some un wanted css and js files[UPDATE]

Version 1.7 comes with improvement and upgrades.

  1. Blog posts are now translatable from admin panel[NEW]
  2. Brand Model are sorted properly [UPDATE]
  3. Ask for price option added [NEW]
  4. Added unique view count on front end[UPDATE]
  5. Gallery image slider updated[UPDATE]
  6. Language create option without translation added [NEW]
  7. Hide states option added [NEW]
  8. Admin can now place widgets on manual pages from text editor[NEW].
  9. Sql backup option added for mysqli driver[FIX]
  10. Tinymce editor version updated, Now admin can upload images while manual page creation[UPDATE]

Version 1.6 comes with improvement and upgrades.

  1. Rss feed improved [UPDATE]
  2. Hide state option added [NEW]
  3. Archaived blog posts 404 issue fixed
  4. Using text option instead of logo image added [NEW]
  5. FB api version updated [UPDATE]
  6. Detail page meta description updated[UPDATE]
  7. Implemented the option to add google api key [NEW]
  8. Database driver updated from Mysql to mysqli [UPDATE]
  9. EU cookie policy popup option added [NEW]
  10. Transparent image upload issue[FIX]
  11. SMTP email option added [NEW]

Version 1.5 comes with improvement and upgrades.

  1. New lang keys added to every lang file [UPDATE]
  2. Added lang key for missing keys on dealer panel[UPDATE]
  3. Lang switcher option added on admin panel [NEW]
  4. Image file extension lower case check while uploading [FIX]
  5. Image removed from actual directory if user deletes it from edit form[NEW]
  6. Large image on facebook share[UPDATE]
  7. Email sending to all dealers option added[NEW]
  8. Hide banner option added[NEW]
  9. External link adding issue on menu[FIX]
  10. Meta tag added for canonical url[UPDATE]

Version 1.4 comes with improvement and upgrades.

  1. Multiple gallery image uploader added [NEW]
  2. Advance search url mod_security issue [FIXED]
  3. Setting added for admin panel paginition [NEW]
  4. Admin panel all cars loading issue [FIXED]
  5. Email debugger option added [NEW]
  6. Admin theme changed [NEW]
  7. Admin panel loading time issue [FIXED]
  8. Purchase code verification issue [FIXED]
  9. Facebook login issue [FIXED]

Version 1.3 comes with improvement and upgrades.

  1. New widgets Added
  2. Code Refractor
  3. Code organized for better stabilty
  4. Licensing system and purchase code verifying updated
  5. Minor bugfix

Version 1.2 was updated on 2nd February, 2015. Here are the key updates:

  1. New form design in new and edit car view. Offering more spaces
  2. Multi Upload and drag/drop sortable option on gallery images
  3. Datatable included in admin panel. Sorting are much easier now
  4. Manual transaction activation
  5. Dealer delete option with his included posts
  6. Option to add link in front image banner. [See Note below]
  7. Thousand separator option in config file
  8. Hide slider if one image on detail
  9. Featured cars on top of recent cars in home view
  10. Image tag alt attribute added throughout the front end
  11. Add date with email detail on backend email tracker
  12. More SEO friendly
  13. Search bug on chrome browsers [bugfix]
  14. Tag search bug [bugfix]
  15. Agent can't delete his own car [bugfix]
  16. email tracker link bug [bugfix]
  17. Remove not editable page from database [bugfix]
  18. transparent background upload problem [bugfix]
  19. lang_key function status check [bugfix]

Important Updates:

Banner Image link:

  1. Open ROOT/application/config/banner.php file
  2. In banner array add a attribute named 'image_link'. And put the desired link as 'image_link' => 'http://www.facebook.com' .Use http:// to get the full url.

Thousand Separator: Thousand separator can be added very easily via config file.

  1. Open ROOT/application/config/autocon.php file
  2. "#$config['decimal_point'] = '.'" & "$config['thousand_separator'] = ','". Change it as you like.

Version 1.1 was updates on 13th October, 2014. Here are the key updates:

  1. Image capcha security added in front end forms, Now it is safe against spamming
  2. Enhanced search with new filtering options
  3. New and improved RTL changes
  4. Show cars in desc order on Admin Panel > All Cars View
  5. Make Paypal disable but not the bank transfer
  6. Color option for banner text in banner config file
  7. Specific car link added when email sent to agent
  8. Min height problem fix on homepage and responsive designs [bugfix]
  9. Active menu color [bugfix]
  10. Print view layout for potrait view [bugfix]
  11. Approve user from admin panel bug [bugfix]
  12. Num of posts per page for home page [bugfix]
  13. Edit page [bugfix]

Version upgrading for Existing buyers

Note for existing buyers: If existing buyers do any kind of code customization on the autocon application, please make sure that you followed the customization guidline given in the 'Source Code Explanation' section and follow the following steps to update:

Step 1:

  1. Backup your existing project
  2. Download the mini update pack from our server: http://webhelios.com/app/updates/autocon/ or you can find the update pack in CodeCanyon product file zip.
  3. Go to Admin Panel > Upload. Locate the Zip file. And click upload and install.

Step 2: This step is a more manual one

  1. Backup your existing project
  2. Download the mini update pack from our server: http://webhelios.com/app/updates/autocon/ or you can find the update pack in CodeCanyon product file zip.
  3. Unzip the update pack titled "update110.zip"
  4. Replace ROOT/application directory with application directory [Merge and replace]
  5. Replace ROOT/dbc_config directory with dbc_config directory [Merge and replace]
  6. Replace ROOT/system directory with system directory [Merge and replace]

Note: Please create a sql backup before update. Also if any custom work is done on you script then please replace files carefully so that your custom works do not loose. If possible take a file backup also. Step 1 is a much easier method.

You can install autocon in following 4 easy step

1. Upload autocon.zip to your server and extract it

2. Ceate a database and database user.

3. Now browse http://yourdomain.com and you will see an installation screen



4. Now provide your database settings

5. If provided database settings are ok , then you will be redirected to next step.Provide your administration setting here.

press save & next .If your account setting are ok then memento will be installed and you can visit front end using

http://yourdomain.com

and admin panel using

http://yourdomain.com/index.php/admin

6) If you run your installation on server you have to work through one step of purchase verification. When you buy our product from Envato, envato will provide you with a Purchase Code & Item ID. Simply paste these in this page and your purchase will be automatically verified. When running on localhost the installation will skip this step. So install our product multiple time in localhost but server hosting needs verification.

Autocon comes with config files which needs configuration if you don't want to use default settings.

ROOT/appicaltion/config/autocon.php contains the basic setting for autocon. Here are explanation of the variables:

$config['blog_post_types'] contains the types of all the blog contain types which can be entered from Admin Panel > Blog/News/Article Section

	$config['blog_post_types']	= array('blog'=>'Blog Posts','article'=>'Articles','news'=>'News');
	

Custom Fields: Custom fields can be added very easily via config file.

  1. Uncomment line 5 "#$config['enable_custom_fields'] = 'Yes';" like "$config['enable_custom_fields'] = 'Yes';". This will enable custom field support for estates.
  2. Now suppose you want to add a custom field "Weight" which will be a text field and also a required field. For doing so add the following line to the file
    	$config['custom_fields'] = array(
    						array('title'=>'Weight','name'=>'weight','type'=>'text','validation'=>'','show_on_detail_page'=>'yes','others'=>array())
    					);
    	
    If you want the field as textarea then edit it like
     	
    	$config['custom_fields'] = array(
    						array('title'=>'Weight','name'=>'weight','type'=>'textarea','validation'=>'','show_on_detail_page'=>'yes','others'=>array())
    					);
    	
    If you want to add a field like "Is Convertible ?" with two values "Yes or No" . Then add it like
    	$config['custom_fields'] = array(
    						array('title'=>'Is Convertible','name'=>'is_convertible','type'=>'select',
    											  'value'=>array('No'=>'No','Yes'=>'Yes'),'validation'=>'','show_on_detail_page'=>'yes','others'=>array())
    				  	);
    	
  3. Adding multiple fields: It's similar like adding a single field. Suppose you want two fields "Registratiom no" and "Has parking?" then put the following lines
    	$config['custom_fields'] = array(array('title'=>'Weight','name'=>'weight','type'=>'text','validation'=>'','show_on_detail_page'=>'yes',
    									'others'=>array()),
    									array('title'=>'Is Convertible','name'=>'is_convertible','type'=>'select','value'=>array('No'=>'No','Yes'=>'Yes'),'validation'=>'','show_on_detail_page'=>'yes','others'=>array())
    										);
    	
  4. Parameter explanation :

    'title': Title for the field
    'name': Anything unique without space
    'type': Can be text,textarea or select
    'validation': Any rule supported by codeigniter. Plese check https://ellislab.com/codeigniter/user-guide/libraries/form_validation.html#rulereference
    'show_on_detail_page' : Can be 'yes' or 'no'
    'value' : Necessary for select box. An associative array. Keys are used as option values.
  5. Showing custom field values: Custom field values are automatically shown on car detail page. But if you want to show them by yourself then you can user the following line
    	<?php echo get_post_custom_value(CAR_ID,'custom_values',FIELD_NAME,DEFAULT_VALUE);?>
    	
    So suppose you want to show 'weight' for an estate which id is 1. then modify the line like
    	<?php echo get_post_custom_value(1,'custom_values','weight','');?>
    	

Set Car Types:It can be configured from the autocon.php config file.

  1. Inspect the $config['car_types'] array.
  2. Simply add the the otion on the array as
    array('title'=>'Your Car Type'),
  3. The new type will be ready
  4. We have some preloaded car types created. You can use those or add new
			$config['car_types'] = array(
										array('title'=>'Sedan'),
                                       		array('title'=>'Coupe'),
										array('title'=>'Sports Car'),
										array('title'=>'Luxury Car'),
										array('title'=>'SUV'),
                                 	    	array('title'=>'Van'),
										array('title'=>'Truck')
									);
		

Set Car Transmission:It can be configured from the autocon.php config file.

  1. Inspect the $config['car_transmission'] array.
  2. Simply add the the otion on the array as
    array('title'=>'Your Car Transmission'),
  3. The new type will be ready
  4. We have some preloaded car transmission created. You can use those or add new
		$config['car_transmission'] = array(
                                        array('title'=>'Automatic'),
                                        array('title'=>'Manual'),
                                        array('title'=>'Semi Automatic'),
                                        array('title'=>'Other'),

                                    );

ROOT/appicaltion/config/banner.php contains the home page banner setting for autocon. Here are explanation of the variables:

Set Banner Settings:It can be configured from the banner.php config file.

  1. Inspect the $config['banner_settings'] array.
  2. Simply add the the option on the array as
    			    array('image_name'=>'YOUR_IMAGE_NAME.jpg', 'header_text'=> 'YOUR_HEADER_TEXT', 'header_text_top' => '30', 'header_text_left' => '30', 'footer_text'=> 'YOUR_FOOTER_TEXT', 'footer_text_top' => '300', 'footer_text_left' => '30'),
    
    			
  3. The new image will be ready for the banner
  4. We have some preloaded image created. You can use those or add new
    		$config['banner_settings'] = array(
        array('image_name'=>'car1.jpg', 'header_text'=> 'All New Lamborghini', 'header_text_top' => '30', 'header_text_left' => '30', 'footer_text'=> 'The best Sports Car in Town', 'footer_text_top' => '300', 'footer_text_left' => '30'),
        array('image_name'=>'car2.jpg', 'header_text'=> 'Porche 911 Camaro', 'header_text_top' => '30', 'header_text_left' => '1000', 'footer_text'=> 'Get the Best Deal', 'footer_text_top' => '200', 'footer_text_left' => '1000'),
        array('image_name'=>'car3.jpg', 'header_text'=> 'The New Ferrari', 'header_text_top' => '30', 'header_text_left' => '30', 'footer_text'=> 'Most Advanced Sports Car', 'footer_text_top' => '300', 'footer_text_left' => '30'),
        array('image_name'=>'car4.jpg', 'header_text'=> '', 'header_text_top' => '30', 'header_text_left' => '30', 'footer_text'=> '', 'footer_text_top' => '300', 'footer_text_left' => '30'),
    
    );
  5. Parameter explanation :

    'image_name': name of image with extension. Image must be kept in ROOT/uploads/banner/ folder. Our preferable image size is 1300x731 px or higher maintaining proportion
    'header_text': Top Banner Header text. Keep blank if you want to remove it
    'header_text_top': Position from top of the banner (In pixels)
    'header_text_left': Position from left of the banner (In pixels)
    'footer_text': Top Banner Footer text. Keep blank if you want to remove it
    'footer_text_top': Position from top of the banner (In pixels)
    'footer_text_left': Position from left of the banner (In pixels)

Here are the key features of Autocon:

Autocon provides an excellent outlook to preview the submitted vehicles.

Both these options are modifiable from admin panel.

There are sorting options for each and every grids and lists.

 

 

Clicking the image of vehicle or its 'View Listing' link will go to the uniquely designed detail page of vehicle

Autocon provides dealer registartion system for uploading cars to prevent spamming. If packages are created and paypal in enabled in admin panel the user is propmted for package selection first:

Autocon comes with a simplified admin panel features. Here is the key features of the admin panel:

Cars can be created by dealers/admin from the admin panel autocon section.

Set up your website with with custom settings

FB

FB

FB

Manage & Create customs widgets to view in the sidebars of application. We kept in clean, so that users can upload any html content they want. Google adsence, live tweets can be embeded via HTML from this section.

All widgets

Plugins

Uploads

Build memento as a complete website from this section. Add new pages submenu as you desire from here. For example if you need a "Contact Us" page create the Contact tab from the menu and paste the HTML content.

  1. Menu Title: Set your menu title here. Which will be shown in topbar.
  2. Menu Alias: The url which will be passed in menu.
  3. Page Layout: Choose page layout options from here.
  4. Content From: Chose the content type you want to put. Which will be URL or Manual input
  5. Url: If you want the content to come from any of your memento url, then type the url after index.php/ here. Like if your memento setup url is http://example.com and for some page you want the content to come from "http://example.com/index.php/show/all" then type the url like "show/all"

Here is the video tutorial to manage pages in Memento:

Translate from language file: Autocon comes with the language file pack which is automatcally generated from the result of auto translate. Here are the steps to work out translation file.

  1. Browse to ROOT/dbc_config/locals directory
  2. In the folder language files are listed as a YAML format.
  3. Simply edit a YAML lang file. Change the translation texts of your desired keys
  4. Go to Admin Panel > System > Manage Language section
  5. Click edit on a desired language
  6. Click "Import from file" to commit the changes you've done in lang file or click "Export to file" to write the files with changes from this edit section

  1. Site Title: Set your website title
  2. Footer Text: Set texts in footer
  3. Site Logo: Update your Site Logo
  4. Site Language: Set your website default language
  5. Site Orientation: Set your website orientation
  6. Site Per Page: pagination for default posts
  7. Page Layout: Page Layout for website.
  8. SEO Options: Set website's SEO options

We will be releasing themes & updates for Memento later on. Simply upload any themes/plugins/widgets from the upload section and details themes will be available under available themes section.

Here is the complete database schema:

We've used codeigniter version 2.0.3 as framework. As you know codeigniter basically is a MVC frame work. For memento we have used the HMVC version of Codeigniter. The H of HMVC stands for Hierarchical. In normal MVC model controllers, models and views are organized under ROOT/application directory. But in HMVC, there is one more level "Modules" under ROOT/application directory.

Suppose you have a module "admin" under this modules directory. Now controllers, models and views for this module can be placed under "ROOT/application/modules/admin/controllers","ROOT/application/modules/admin/models" and "ROOT/application/modules/admin/views" directory.

Now suppose there is a controller named as "test" under this controller directory and there is a function called "hello" in this controller. From browser you can access this function like site_url.'/admin/test/hello'. Here admin is the module name, test is the controller name and hello is the function name. If the controller and module name are the same then it can be typed once. Like if the controller name is "admin" then you can access this hello function like site_url.'/admin/hello'. Read more about HMVC form here https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc

Language Routing:

For passing selected lang with the url we've modified codeigniters default routing. Now the first segment after index.php represents the selected lang key. Like for a sample url "http://memento.webhelios.com/index.php/en/show/cat/1" there "http://memento.webhelios.com/index.php" is the site url and "en" is the language key. "en" stands for English language. You can use any two character ISO code for any language. If this segement is empty then default language selected from admin panel will be used. For changing the basic routing rule we've modified "ROOT/application/third_party/MX/Router.php". We have also override the site_url() function on URL helper. You can find this extended function on the helper file "ROOT/application/helpers/MY_url_helper.php".

Helpers:

All the helpers used in memento are placed under "ROOT/system/helpers" directory with the prefix "dbc". If you see any function in any controller or models or views which is called without through object then it's a helper function. You can then find that function in any of these helpers files.

Extending memento or writing custom codes:

How to extend controllers?

For any controllers you will see there is two files under controllers directory. Like for admin controller there will be two files named as

  1. admin.php
  2. admin_core.php

under the controllers directory. All the core functions are written on this "_core.php" files. If you need to change any function please extend the same function on the other file. For next version updates we will update only these "_core.php" file. So if you write any code or make any changes to these files, they will be loast upon update. So please write your custom codes on normal files.

How to extend the models?

These is same as the controllers.
How to extend views:

All the views for front end is managed as themes. Themes are located under "ROOT/application/modules/themes/views/" directory. If you want to change any view or want to make custom theme, then follow the below procedures.

  1. Copy the default directory under "ROOT/application/modules/themes/views/"
  2. Rename it like as you wish.(No spaces)
  3. Edit the NEW_DIR/assets/config.xml file and change the text within <name></name> tag
  4. Now from admin panel > menu > themes , you can find the new theme you just make. Click the active button and activate the theme.
  5. Now you can change any views like you wish.

We will update only default theme codes for future updates. So if you make any changes to these views under default directory, they will be lost. So please follow the above process to make a theme and update the views.

How to extend helpers?

As said before all the helpers for memento located under "ROOT/system/helpers" directory. But please don't update these files if you need any changes. Extending a helper file is very much simple. Suppose you want to extend is_installed() function on dbcbase_helper.php, then make another file named as "MY_dbcbase_helper.php" under "ROOT/application/helpers" directory and write the function with same name there. This will override the original helper file. We will update the helpers under "ROOT/system/helpers" for future updates.
Where the css, js and images located?
For front end all the css,js and images are located within "THEME/assets/" directory. For admin panel all these are located under "ROOT/assets/admin" directory.

 If you have any question or need any support contact with us on
webheliosteam@gmail.com

You can also like our page on Faceboook