Create the ''engine'' for a website that uses PHP/MySQL/Smarty

Budget $500 - $1050 USD
Bids 7
Average Bid $710

We are looking for someone to finish the existing website located at **[url removed, login to view]++nemers++[url removed, login to view]** (remove ++ signs)

You can have a look at that website **using the following user/pass** : rentacoder / BTC8IqEtO5L}

We are looking for someone to finish an existing website in PHP/MySQL/Smarty. We already have an HTML/CSS design.

The FRONTEND requires a search/filter feature, basic user registration/login with a "update profile" like functionality and simple PayPal IPN implementation.

The BACKEND requires simple CRUD (Create, Read, Update, Delete) actions on 4 tables.

please **read the entire bid request** for more detailed information.

## Deliverables

We are looking for someone to finish the existing website located at [url removed, login to view]++nemers++[url removed, login to view] (remove ++ signs)
You can have a look at that website using the following user/pass : rentacoder / BTC8IqEtO5L}

For your reference, the database scheme we have so far is attached below.

What needs to be done by you ?
**
GUEST FRONT END**

On the homepage/index page, there is a big search bar. This already has some jquery autocomplete functionality (as a sample), but your job is to make sure it uses the database to search in. The database already exists, and this search bar must search in the following fields in the database : [url removed, login to view], [url removed, login to view], [url removed, login to view] and do a google-style auto-suggest combining the data from these three fields in the database. For example when someone searches for "garage London", it must output the garages found in [url removed, login to view] that have the [url removed, login to view] of london only.

On the page that shows the search results, there should be a block on the right of the results that allows the visitor to set filters on: [url removed, login to view] (dropdown), [url removed, login to view] (text), [url removed, login to view] (text).
When a company name is clicked on the results page, the company details are shown (all contacts, twitter and facebook). Think eBay-like. All variables (search query and filters) should use GET parameters, so they appear in the URL.

For each company in the search results/listing, the company name should be clickable. This will redirect the visitor to the company details page, which is a separate page that contains all company info.


**COMPANY FRONT END**

Companies should be able to register and log-in in order to add their company to the database. Registration must be validated via email. Simple and secure username/password combination with "Remember Me" feature (using cookies).

We have already filled in the database with [url removed, login to view] companies. They have to enter their "ACCESS CODE" in an extra field during registration. Companies will receive letters via snailmail that contain an access code which they can enter on the website to check/edit their information (or add more detailed information). Those companies already have an entry in the "company" table. Using the access code during registration will therefor NOT insert an extra row in the tabel, it will simply fill in the username/password/email fields upon registering.
*
Side Note: This means the registration form has 5 fields: username, password, password (verify) email address and access code (optional). The login form has 3 fields: username, password, remember me (checkbox).*

Once logged in, the company can update their basic company information (name, address, zip, city, phone, fax, email, url) and select their SIC code (dropdown?).

They can also opt for a premium service (monthly payment) so they can add additional information, including: facebook, twitter, company logo, up to 10 contacts and up to 10 sic codes. After entering this additional information, a simple invoice is created. Once this invoice is marked as paid, the [url removed, login to view] field will be set to Active and the premium info will be shown on the website when visitors view the company details.

Simple PayPal IPN functionality must be included. Users should be able to press a PayPal Pay Now button. There are PHP classes available that allow you to implement this quick and fast.
*
Side Note: The users also have the option to pay by bank transfer. In this case it is the administrator's responsibility to manually mark the invoice as PAID in the admin section when a payment is received. Monthly fee is unknown at the moment, make sure this is a variable we can easily set (config file).*

**ADMIN BACK END**

The following tables must have simple CRUD (Create, Read, Update, Delete) functionality: company, contacts, invoice, sic_codes.

It must be possible to set filters on all fields in the datagrid. For the company listing, per row there should also be buttons:
- Invoices: shows grid with all invoices for that client
- Contacts: shows grid with all contacts for that client

And the obvious Edit and Delete buttons.

It's not obligated but we highly recommend using ExtJS datagrids for this. Those are fancy AND easy/fast to develop. They support server-side filter/sorting functionality as well as inline editting and multi-line select for the delete feature. It would make things a lot easier for the both of us.
*Side Note: please implement admin user/pass authentication, also make sure this back-end functionality is in a separate directory so we can protect it with a .htaccess file.*

**CRON JOB**

A cron job will run once per day. Ten (10) days before the end of the billing cycle, a new invoice should be sent. It will also check for overdue invoices. If an invoice is overdue and the company premium status is still Active, it should be disabled.

**PROJECT SUMMARY**

So basically we want you to implement the following for the FRONTEND: database search/filter feature, basic user registration/login functionality, update forms for companies so they can edit their company information, simple invoice system with PayPal payments.

For the BACKEND we want you to implement: CRUD actions on some tables.
**
IMPORTANT EXTRA INFORMATION:**

- We already have a database layout. You can add extra tables and columns if you think this is required, however if you CHANGE anything (rename or remove tables/columns) please ask for permission first. The database has to stay compatible with our import script that we use to fill the database.

- Coding conventions and standards are important. We are aware that some developers have their own coding conventions. We don't mind, as long as your code is CONSISTENT, EASY TO READ, CLEAN and WELL DOCUMENTED. We only accept quality code that is professionally written.

- If ANYTHING is unclear or if you have ANY questions (or suggestions) please don't hesitate to add a comment and ask. We appreciate proper communication.

- For this project we won't hire coders with 0 ratings, sorry. If you want to bid, we also appreciate expert guarantee of 10%, but this is not obligatory.

- The deadline is 14 days for this project: we expect everything to be done within 11 days, after which we will do three days of bug testing and problem analasys, and on the last 2 days you have time for all corrections/modifications/fixing bugs. By this time everything must be in finished state. This doesn't mean that by day 11 we don't expect bug-free code. This also doesn't mean that you can keep working beyond day 11. By bidding you agree that the work must be reported COMPLETE by day 11 or you forfeit the project. The 3 extra days are JUST for bug testing and repairing ONLY.

- Worker/coder MUST create a daily status report, containing at least the following: A complete description of all the work carried out that day and all the changes that were made, an uploaded zip file containing all the latest files, AND the changes must be uploaded to our server. Coder/Worker agrees that failing to deliver a daily status report results in a complete forfeit of the entire project.

**
EXTRA REQUIRED FEATURES:**

- All search queries are logged in the "searches" table.

- When an admin logs in, it's logged in the "adminlog" table.

- Limit the amount of searches/queries per IP per minute to prevent data mining scripts from "stealing" our database (and causing server load issues).

- CSV import feature that allows an CSV file (either uploaded via browser or uploaded via FTP to the server) to be parsed and imported to the database. Each line in the CSV file contains 1 company and possibly 1 or more contacts. Each company has a SIC code (with a label/description). If that SIC code isn't added to the sic_code table yet, then the import script should create an entry. This CSV file needs to be processed in the background (using a CRON job) and you have to take into account that the CSV file can be extremely large (more than 1GB in size)
**

ADDEMDUM DATABASE SCHEME:**

--
-- Table structure for table `admin`
-- Description: Contains admin login information.
--

CREATE TABLE IF NOT EXISTS `admin` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
`email` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


--
-- Table structure for table `company`
-- Description: Contains company information including
-- login info. Each company will be assigned a unique access
-- code which we will send to them via mail or email. This
-- access code allows them to access and edit their company
-- details (and purchase premium services for their company).
--

CREATE TABLE IF NOT EXISTS `company` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
`accesscode` varchar(50) NOT NULL,
`name` varchar(50) NOT NULL,
`address` varchar(255) NOT NULL,
`zip` int(11) NOT NULL,
`city` varchar(50) NOT NULL,
`phone` varchar(15) NOT NULL,
`fax` varchar(15) NOT NULL,
`email` varchar(100) NOT NULL,
`url` varchar(100) NOT NULL,
`facebook` varchar(255) NOT NULL,
`twitter` varchar(20) NOT NULL,
`logo` varchar(255) NOT NULL,
`premium` enum('Active','Inactive') NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


--
-- Table structure for table `company_sic_code`
-- Description: Links company and sic_code tables
-- as a many-to-many relation.
--

CREATE TABLE IF NOT EXISTS `company_sic_code` (
`company_id` int(11) NOT NULL,
`sic_code` int(11) NOT NULL,
PRIMARY KEY (`company_id`,`sic_code`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;


--
-- Table structure for table `contact`
-- Description: A company can have multiple contacts.
--

CREATE TABLE IF NOT EXISTS `contact` (
`id` int(11) NOT NULL auto_increment,
`company_id` int(11) NOT NULL,
`name` varchar(50) NOT NULL,
`function` varchar(50) NOT NULL,
`phone` varchar(20) NOT NULL,
`fax` varchar(20) NOT NULL,
`email` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


--
-- Table structure for table `invoice`
-- Description: When a company decides to opt for premium
-- services, an invoice will be created (monthly cycle).
--

CREATE TABLE IF NOT EXISTS `invoice` (
`id` int(11) NOT NULL auto_increment,
`company_id` int(11) NOT NULL,
`amount` double NOT NULL,
`invoicedate` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`duedate` timestamp NOT NULL default '0000-00-00 00:00:00',
`paid` enum('No','Yes') NOT NULL,
`transaction` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


--
-- Table structure for table `sic_code`
-- Description: Standard Industrial Classification codes
-- (and their description/label). Each company is assigned to 1
-- sic code by default. These codes are set up in the form of a
-- hierarchical tree. Leafs are normally on the 4th level.
--

CREATE TABLE IF NOT EXISTS `sic_code` (
`code` int(11) NOT NULL auto_increment,
`label` varchar(255) NOT NULL,
`parent_code` int(11) NOT NULL,
`level` int(11) NOT NULL,
PRIMARY KEY (`code`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


WHEN YOU ARE READY TO BID:

- Include a sample of code from your previous work, preferrably an admin back-end. Also include a sample of a script you wrote from scratch.

- Be ready to include an expert-guarantee of 10% in your bid

- When bidding please write a small piece on how you see this project, something that shows us that you understand the requirements, and that you have read the entire bid request. Something that shows us you understand what we require.

- bids that don't have these above three requirements will probably be ignored.

Post a Project Like This

This project was awarded to

gatelogix

I have been doing web development projects with outsourced developers for 8 years. Gatelogix is the most professional group I've ever worked with. They completed work fast and went through many iterations of change requests without any problems. Gatelogix was also able to take a concept as requirements and work independently to create the website that reflected the concept. This was nice because we did not have to spell out every detail to them and they designed a terrific website that matched our vision. Our website also have many complicated features but Gatelogix was able to develop all of these features with sound logic and solid backend architecture. In the future I will only use GateLogix for my website development projects.
About the Freelancer
gatelogix Profile Picture

We offer incredibly optimal and secure Web Development and Design Solutions. By blending aesthetics & technical skills with proper pinch of modern look & functionality, takes our work to new heights of excellence. We are a rapidly growing software firm focussed on providing cost effective solutions to the Business world! The affordable One-Stop services offered by Gatelogix help Businessess saving their multi-vendor management cost & time, and add more effectiveness to the productivity. Gatelogix is capable of serving you in the following areas: - Web/Graphic Designing and Development - Open Source development and customization - Responsive Web Applications - Android/iPhone/Software Development - SEO (Search Engine Optimization) - SEM (Search Engine Marketing) - Facebook Marketing / Custom Fan Pages - Web Hosting and Domain Registration - Software Consultancy Partner with us today and "step into the world of Innovative Software Solutions"!

Looking to make some money?

  • Set your budget and the time frame
  • Outline your proposal
  • Get paid for your work

Bids on this Project

  • gatelogix Profile Picture

    gatelogix

    Islamabad,  Pakistan

    We offer incredibly optimal and secure Web Development and Design Solutions. By blending aesthetics & technical skills with proper pinch of modern look & functionality, takes our work to new heights of excellence. We are a rapidly growing software firm focussed on providing cost effective solutions to the Business world! The affordable One-Stop services offered by Gatelogix help Businessess saving their multi-vendor management cost & time, and add more effectiveness to the productivity. Gatelogix is capable of serving you in the following areas: - Web/Graphic Designing and Development - Open Source development and customization - Responsive Web Applications - Android/iPhone/Software Development - SEO (Search Engine Optimization) - SEM (Search Engine Marketing) - Facebook Marketing / Custom Fan Pages - Web Hosting and Domain Registration - Software Consultancy Partner with us today and "step into the world of Innovative Software Solutions"!

    PHP, Javascript, XML, and Website Design

  • guardianpressinc Profile Picture

    guardianpressinc

    Pakistan

    ## BIO We assure our clients 100% success with every project. We possess all kinds of skills our clients require and we make it our business to offer the best solutions there are.

    PHP, Perl, ASP, and C Programming

  • themexlx Profile Picture

    themexlx

    Dhaka,  Bangladesh

    ---- ! Work Complete Guarantee ! --Our Ranked # <290 out of 10 Million --- ------------------- Our Level 20 as highest level ------------------------------------ We, themexlx, the pleasure to express ourselves as an absolute Software Company that is specialized for Web development & solution. It is situated in Bangladesh for more than 10 years. We have already achieved our reputation by the completion of several successful web projects internationally. Technically Expertise: -PHP 5, 5+ -JAVA - ASP - C# /.Net -MySQL/SQL Server, -RSS, Advance CSS, Ajax, -Joomla, WordPress -HTML, DHTML, XHTML -OS Cart, CS Cart, Zen Cart, Magento, xcart, Shopping cart. - Clippingpath with Photoshop -Adobe Illustrator -Template Design -Java Script, Motoo ls, Drupal - jQuery, JSON - Flash Animation -Java, Java Struts, Apache Tom Cat, NetBeans - Objective C -Symbian & Anroid Platform -iPhone App Development. -SEO, SEM Integration Web Solution Category with web 2.0 supported: - Online B2B Portal - Dynamic/CMS Site - OS-Commerce - E-Commerce - Shopping Cart - Content Management System (CMS) - Restaurant Management - Real Estate Portal - Online Banking System - Classified Website - CRM/ERP system - Blog/Forum site - Search Engine Optimization - Online Gaming Portal - Flash Web Site - Personal Web Solution System followed LAMP Technology : (a) Operating System: Linux; (b) Web Server: Apache HTTP Server; (c) Database: MySQL; (d) Programming Language: PHP 5, 5+ We, themexlx, one of the first generation Web solution houses in the country of Bangladesh. If you give your ideas meet the arithmetic logic , we can build your web apps!

    PHP, Javascript, Website Design, and Graphic Design

  • pafkavw Profile Picture

    pafkavw

    Bulgaria

    ## BIO Graduated engineer in Electronics. Have been a part of team, developed a number of web based projects involving perl, php, cgi, html, dhtml, css and many more. ## Area of Expertise Web developing, Programming, Quality Assurance.

    PHP, Perl, ASP, and C Programming

  • deltatechnologix Profile Picture

    deltatechnologix

    Pakistan

    ## BIO Delta Technologies is one of the best Web Design and Web Development organisation based in heart of Brunswick, Australia. Established in 2005 with 5 experts with a vision to grow and excel, has now grown to 50+ IT Professionals. We have extensive & in-depth knowledge be it Website Design; Application Development our experience in managing technology projects, right from selecting tools and platforms, to implementing information technology solutions has shown results. With a crystal clear objective is to deliver quality Web application and Web Development Services while incorporating supreme value to enterprises globally at an affordable price. In order to provide world class E – Commerce, Web Development Solutions, we have tailored our in-house proven methodology, which helps us provide reliable software solutions that meet present as well as future demands. ## Area of Expertise Facebook Application. Web Development E-Commerce Social Network. Web2.0 Portal Iphone Application Facebook App Iphone App Logo design Web Design Software Development PHP MySql Magento Drupal Shoping Cart ETC.

    Delphi, Project Management, SEO, and Data Entry

  • hansjin Profile Picture

    hansjin

    China

    ## BIO About the Company Quantum Hi-technology Trade Co. Ltd is a leading Chinese software company providing Multi-national network games, Mobile and PC games and Enterprise business solutions based on Web. Service Description Our company is a leading Chinese software company providing Multi-national network games, Mobile and PC games and Enterprise business solutions based on Web. Our web development team is able to develop your site by using all the latest web technologies. In addition, we have powerful business experts and engineers to provide business systems for customers, such as CRM, BPM, ERP. ## Area of Expertise Our area of expertise includes: Enterprise Resources Planning Customer Relationship Management E-commerce Solutions Content Management Systems Portal Applications Extranet / Intranet Client Mobile, PC games iPhone games and utilities Portal System in Liferay Enterprise ERP by openbravo Wordpress Drupal Joomla phpBB Asp.net \---|\---|\---|\---|\---|\---|\---|\---|\---|\---|\---|\---|\---|- Below you will find some of our projects: http://www.silverstar.co.jp http://www.specamotor.cn http://www.moartist.com http://www.adcomlive.com

    PHP, Perl, ASP, and C Programming

  • kbfarooq Profile Picture

    kbfarooq

    Karachi,  Pakistan