Jump to content

Trekkerweb Supply & Demand

Raymond Geerts

Recommended Posts

Trekkerweb Supply & Demand


Trekkerweb.nl brings agricultural mechanization news and supply & demand together in a single online platform for all the tractor and machine enthusiasts and others interested in the mechanization sector.

Tractors__agricultural_machinery_and_spare_parts_supply___demand___Trekkerweb.pngTractors  agricultural machinery and spare parts supply   demand   Trekkerweb(1).png

The site is multi-language with English as default. None Dutch browsers will get the English version of the site, currently we are finetuning the German version which will be available somewhere in the near future.

The search page in English and Dutch language

- https://markt.trekkerweb.nl/search/
- https://markt.trekkerweb.nl/nl/zoeken/

Used modules

  • Profields Table
  • Profields Textareas
  • MarkupLoadRSS (fetches brand related new from the main website)
  • PageImageManipulator 2 (PIM2) (for placing watermark image)
  • ProCache
  • ProcessGetVideoThumbs
  • TextformatterVideoEmbed
  • WireMailSmtp
  • LanguageSupport (Site is multi language: Dutch, German and Default English)
  • Couple of custom made modules for user profiles and cross page linkage of the datamodel

(Bower) components

  • awesome-bootstrap-checkbox
  • bootstrap-dropdowns-enhancement-sass
  • bootstrap-sass
  • bootstrap-select
  • font-awesome
  • formvalidation.io
  • hashids
  • jquery
  • jquery-file-upload
  • jquery-throttle-debounce
  • jquery.mmenu
  • js-cookie
  • lifestampjs
  • moment
  • semantic-ui-sass
  • verge

Front-end user profiles (custom module)

  • Account registration
    • Customizable fields (in module settings)
    • Per field privacy configurable (private, public, on a per user basis).
  • Front-end login/ logout
  • Reset password
  • Email activation for account
  • Request activation mail
  • View profile
  • Public profile
  • Edit profile
  • Set profile picture (cover image and avatar)
  • Modify password
  • Language choice
  • Profile dashboard
  • Front-end Ads management
    • Create new ad
    • Edit existing ad
    • Manage media (images / video)
    • Preview and approve ad
    • Remove ad

Data model

  • Categories
  • Subcategories
  • Brands
  • Input fields
  • Options

An intuitive data model drives the whole site. A couple custom made modules take care of the cross page assigning of categories to subcategories and brands. Per subcategory we are able to assign the related input fields and options which will be rendered on the 'Create new ad/ Edit ad' form page and combined with the given values rendered on the ad detail page.

Screen Shot 2016-09-06 at 13.45.30.png

Database caching + Pro caching

One of the challenges was to keep the whole project as low weight as possible. Since the data model with categories, subcategories, brands, inputfields and options is the backbone of the site we came up with the solution to have the names, titles, ids, and relations between them cached. Completely as json/javascript with pro cache and separated with database caching.

With the Wire Fuel we made the $dm object available for accessing anywhere in PHP and globalJS.dm from within javascript. This means the whole data model is called only once per request, and while it exists in the database cache and pro-cache it is incredibly fast.

Subcategory page

The first image shown below represent one of the subcategories (Tractors) with assigned categories, brands, input fields and options. The image there after is a screenshot of the add ad page, where the input fields, options and brands are dynamicly rendered after being loaded via Ajax.

Edit Page  Tractors • markt.trekkerweb.nl.png

Add ad   Trekkerweb.png

Other features

  • cookie based favourites
  • cookie based last-viewed list
  • advanced filter search
  • related ads

Thanks to the whole team (Ferdi, Bastiaan, Alex, John, Hessel) and last but not least Ryan for creating ProcessWire and all module developers out there :)

  • Like 24
Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...