GithubHelp home page GithubHelp logo

marketplacekit / marketplacekit Goto Github PK

View Code? Open in Web Editor NEW
746.0 79.0 327.0 32.18 MB

A platform to create an online marketplace

Home Page: https://marketplacekit.com

License: GNU General Public License v3.0

PHP 74.95% HTML 25.02% Vue 0.03%
marketplace php laravel

marketplacekit's Introduction

About MarketplaceKit

MarketplaceKit is a platform for building different types of online marketplaces. MarketplaceKit attempts to reduce the development effort required to build product, rental, service and listing marketplaces such as Etsy, AirBnB, Handy and Zillow. It does this by attempting to cover the main components a marketplace needs, including the following:

  • Powerful search across multiple fields, geolocation and custom fields
  • Geolocalization for users and listings
  • Frontend listing creation and browsing
  • User profiles
  • Direct messaging between users
  • Multilingual functionality

MarketplaceKit uses popular, well documented packages without too much overhead to simplify a developers/designers life. Therefore, the following choices were made:

  • Based on the popular Laravel Framework
  • Leverages Bootstrap 4 for a responsive and mobile-first theme out of the box
  • Separates theming logic from development by using Twig
  • Avoids JS frameworks that require compilation
  • Uses different widgets for different listing types (coming soon)

MarketplaceKit is easy to customize, change the design and supports multiple languages.

Server Requirements

  • PHP 7.2
    • OpenSSL PHP Extension
    • PDO PHP Extension
    • Mbstring PHP Extension
    • Tokenizer PHP Extension
    • XML PHP Extension
    • Ctype PHP Extension
    • JSON PHP Extension
    • ImageMagick PHP Extension
  • MySQL 5.7.7 or greater
  • Node JS (8.9.4) - this is only required for compiling SCSS to CSS
  • Git
  • ImageMagick
  • Nginx

Although MarketplaceKit has been tested on Ubuntu 16.04 LTS. It should work with any OS that satisfies the above requirements. Nginx (https://laravel.com/docs/5.6/deployment#nginx) is recommended as a webserver. Developers should also have knowledge of Laravel, Bootstrap and Twig for extending/building on top of MarketplaceKit.

Installation

  • Download the code via composer

     composer create-project marketplacekit/marketplacekit:dev-master marketplacekit
    
  • Add your database details to the .env file

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=homestead
    DB_USERNAME=homestead
    DB_PASSWORD=secret
    
  • Create the public disk

    php artisan storage:link
    
  • Create the database tables by running

    php artisan migrate
    
  • Seed the database by running

    php artisan db:seed
    
  • Configure your Nginx server block or Apache Vhost to point to the /public folder

    e.g. nginx

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    

    e.g. apache

    Options +FollowSymLinks
    RewriteEngine On
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    
  • Visit your domain login and change the default password

    Default username: admin
    Default password: changeme
    
  • Add your domain to APP_URL in .env file

    APP_URL=http://localhost.com
    

    Don't forget to add https:// in production.

  • Install the node modules (Optional)

    npm install
    

Facebook login

In order for your users to login via Facebook you need to register for a Facebook key.

Google Maps Keys

MarketplaceKit relies on Google Maps for geolocalized searches. Please visit https://developers.google.com/maps/documentation/javascript/get-api-key to generate your key. You can then add this in the admin panel.

Updating

To update MarketplaceKit please run:

git pull origin master

and to install any new packages

composer update

API (Note: Work in progress)

For authentication: POST /api/auth/login [email, password] GET /api/auth/me GET /api/auth/refresh

For all other requests please use the same URLs as the website but use use "Accept: application/json" in the HTTP headers. This will convert all data passed to HTML into JSON. e.g. POST /register GET /browse GET /listing//

License

MarketplaceKit is free software, and is released under the terms of the GPL version 3. See license.txt.

marketplacekit's People

Contributors

christianvizarra avatar marketplacekit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

marketplacekit's Issues

Error rendering template after installation

Hello, i've a new problem on the installation.
After ive run db seed cmd and after running server with:
php artisan serve --host=$IP --port=8082
I get this error:

Twig_Error_Runtime  
An exception has been thrown during the rendering of a template ("Missing BC Math or GMP extension.") in "browse.partials.grid" at line 7.

How to test payment with dummy sales?

Is there a way to test the Stripe payments with dummy sales? It seems you need to signup for a legitimate Stripe account for the listing user even just to test?

Feature note: Perhaps it would be better to have a link to Stripe Connect for users to register their Stripe account on Stripes domain instead of entering in personal bank details within Marketplacekit? This will add a level of trust.

Upload image failed

[Fine Uploader 5.16.2] GET request for sessionRefresh has failed - response code 401

You demo site too no work image upload, fix this bug pls.

Congratulations & suggestions

Great work! Demo theme is really perfect. Maybe on product page, place product buy button directly after product main image. On mobile you must scroll down before find buy button. My modest suggestion

Cannot delete pricing models

Nothing major, but an option to delete a pricing model from the 'Pricing Models' tab in the settings would be useful

Novum Theme - cannot view/edit listings

When running using the Novum theme, the following error occurs when trying to edit a listing from the admin panel.

Also, this error occurs when trying to view listing details by clicking a listing from the homepage.

This issue is not observed when using the 'Default' theme.

Error Message:

An exception has been thrown during the rendering of a template ("Route [listing.report] not defined.") in "listing.partials.sidebar" at line 211.

Error while running composer install

When I run "composer install" I got the below error. Tried it in other projects it works fine.
Your requirements could not be resolved to an installable set of packages.

Problem 1
- This package requires php ^7.1.3 but your PHP version (5.6.30) does not satisfy that requirement.
Problem 2
- Installation request for jrean/laravel-user-verification dev-master -> satisfiable by jrean/laravel-user-verification[dev-master].
- jrean/laravel-user-verification dev-master requires php >=7.1.3 -> your PHP version (5.6.30) does not satisfy that requirement.
Problem 3
- Installation request for nwidart/laravel-modules 3.3.1 -> satisfiable by nwidart/laravel-modules[3.3.1].
- nwidart/laravel-modules 3.3.1 requires php >=7.1 -> your PHP version (5.6.30) does not satisfy that requirement.
Problem 4
- Installation request for roumen/sitemap ^2.8 -> satisfiable by roumen/sitemap[v2.8.1].
- roumen/sitemap v2.8.1 requires php >=7.1.3 -> your PHP version (5.6.30) does not satisfy that requirement.

Error when add new category

I think there might be a bug in the CategoriesController.php controller.
In save_languages function.

public function save_languages()
{
$categories = Category::orderBy('order', 'ASC')->get();
//save_language_file('categories', $categories->pluck('name')); <- this step was error.
// I think the second parameter should be changed to array as bellow.
save_language_file('categories', $categories->pluck('name')->toArray());
}

SQLSTATE[42000]: Syntax error or access violation

I get the following error on a fresh install:

LOG.error: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '>'$."price"') as aggregate from listings where listings.deleted_at is null' at line 1 (SQL: select min(meta->'$."price"') as aggregate from listings where listings.deleted_at is null) {"userId":1,"email":"[email protected]","exception":{"errorInfo":["42000",1064,"You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '>'$."price"') as aggregate from listings where listings.deleted_at is null' at line 1"]}}

Seems to be an issue with app/Http/Controllers/BrowseController.php, maybe line 85

Logo cannot be deleted to allow text only title

After uploading a logo image, the image cannot be deleted to restore the 'text only' site title in the top left corner. A new logo can be uploaded to overwrite but I cannot find a way to delete the logo altogether and just use text

"array_unique() expects parameter 1 to be array, object given"

project/app/Support/helpers.php

ErrorException
…/app/Support/helpers.php 144

$selected_locale = 'en';
$strings = array_unique($strings);
$strings = array_filter($strings);
foreach($strings as $string) {
    $translation_row = Translation::where('locale', $selected_locale)
        ->where('group', '_json')
        ->where('key', $string)
        ->first();
    if(!$translation_row) {
        $translation_row = new Translation();
        $translation_row->key = $string;
        $translation_row->locale = $selected_locale;
        $translation_row->group = '_json';
        $translation_row->value = null;
        $translation_row->save();
    }
}

Issue installing Novum theme add-on

When attempting to install the Novum theme via zip, the following error message is generated on the UI and the theme is not installed.

Error: Undefined offset: 0

Images upload issue

hello ,

when I try to upload listing images it returns 401 {"message":"Unauthenticated."} , however I am logged in.

https setup/configuration - not fully secure

I am currently trying to configure my server with https. I have a certificate for my site and have all links redirected to https , however on my deployment chrome gives me the message "Your connection to this site is not fully secure: Attackers might be able to see the images you're looking at on this site and trick you by modifying them."

However, I noticed that this is not a problem at demo.marketplacekit.com

Is there additional configuration that is required at setup in order to properly configure https?

Issues with listing photo upload

When trying to create a new listing, it appears that the photos do not successfully upload.

I can see that they are atttempted to be loaded from http://.../storage/images/2018/08/05/d61238710702145baebea318161c22b1.jpg
but the appropriate folders/filename required does not appear to be written to the expected location on the server.

a problem with photos

Photos are saved as a JSON object sometimes and that breaks the functionality
the correct behavior is that the photos being in a JSONArray

Bad category listing URL

Now url - /listing/raX0lybWB3/a-cool-t-shirt
What this? - "raX0lybWB3" and how hide ?
Need url - /listing/t-shirt

Error when accessing pricing models tab

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'key' cannot be null (SQL: insert into ltm_translations (key, locale, group, value, updated_at, created_at) values (, en, _json, , 2018-07-19 20:31:48, 2018-07-19 20:31:48))

Inbox error

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

No push inbox message, how fix ?

Seller cannot view order from customer

When trying to view the details of an order when logged in as the seller, an AccessDeniedHttpException - "This action is unauthorized." error is encountered.

I am using stripe to authorize payment and the seller account payment details have been completed. Unfortunately I have not found much other useful information yet but will update this issue If I find anything else that may be useful.

Stacktrace details Below:

Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException thrown with message "This action is unauthorized."

Stacktrace:
#71 Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php:201
#70 Illuminate\Foundation\Exceptions\Handler:prepareException in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php:175
#69 Illuminate\Foundation\Exceptions\Handler:render in /home/pixaikye/marketplacekit/app/Exceptions/Handler.php:59
#68 App\Exceptions\Handler:render in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:83
#67 Illuminate\Routing\Pipeline:handleException in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:32
#66 Illuminate\Auth\Access\AuthorizationException in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Auth/Access/HandlesAuthorization.php:28
#65 Illuminate\Auth\Access\Gate:deny in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Auth/Access/Gate.php:287
#64 Illuminate\Auth\Access\Gate:authorize in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Auth/Access/AuthorizesRequests.php:23
#63 App\Http\Controllers\Controller:authorize in /home/pixaikye/marketplacekit/app/Http/Controllers/Account/OrdersController.php:28
#62 App\Http\Controllers\Account\OrdersController:show in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
#61 call_user_func_array in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
#60 Illuminate\Routing\Controller:callAction in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
#59 Illuminate\Routing\ControllerDispatcher:dispatch in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Route.php:212
#58 Illuminate\Routing\Route:runController in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Route.php:169
#57 Illuminate\Routing\Route:run in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Router.php:665
#56 Illuminate\Routing\Router:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
#55 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/app/Http/Middleware/IsBanned.php:38
#54 App\Http\Middleware\IsBanned:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#53 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#52 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41
#51 Illuminate\Routing\Middleware\SubstituteBindings:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#50 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#49 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php:43
#48 Illuminate\Auth\Middleware\Authenticate:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#47 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#46 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/app/Http/Middleware/PushURL.php:42
#45 App\Http\Middleware\PushURL:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#44 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#43 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:67
#42 Illuminate\Foundation\Http\Middleware\VerifyCsrfToken:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#41 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#40 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49
#39 Illuminate\View\Middleware\ShareErrorsFromSession:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#38 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#37 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:63
#36 Illuminate\Session\Middleware\StartSession:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#35 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#34 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37
#33 Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#32 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#31 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:59
#30 Illuminate\Cookie\Middleware\EncryptCookies:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#29 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#28 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104
#27 Illuminate\Pipeline\Pipeline:then in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Router.php:667
#26 Illuminate\Routing\Router:runRouteWithinStack in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Router.php:642
#25 Illuminate\Routing\Router:runRoute in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Router.php:608
#24 Illuminate\Routing\Router:dispatchToRoute in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Router.php:597
#23 Illuminate\Routing\Router:dispatch in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176
#22 Illuminate\Foundation\Http\Kernel:Illuminate\Foundation\Http\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
#21 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php:58
#20 Barryvdh\Debugbar\Middleware\InjectDebugbar:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#19 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#18 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/fideloper/proxy/src/TrustProxies.php:57
#17 Fideloper\Proxy\TrustProxies:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#16 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#15 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:31
#14 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#13 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#12 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:31
#11 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#10 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#9 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27
#8 Illuminate\Foundation\Http\Middleware\ValidatePostSize:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#7 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#6 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:62
#5 Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode:handle in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
#4 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#3 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104
#2 Illuminate\Pipeline\Pipeline:then in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
#1 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /home/pixaikye/marketplacekit/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116
#0 Illuminate\Foundation\Http\Kernel:handle in /home/pixaikye/marketplacekit/public/index.php:55

Suggestions

This are my suggestions:
Frontend

  • homepage widget -> latest listings sorted by current user location and also sorted by multiple featured categories (eg: facebook marketplace homepage);
  • automatically get the current user/ guest session location (eg: City based on IP) and display on the homepage and on the entire website listings from the current location;
  • currency exchange option: display currency based on the current user location (Country);
  • related ads on listing page (filtered by current listing location + current listing category);
  • ability to report (spam, duplicate, inappropriate etc) listing;
  • mark listing as expired;
  • follow system;
  • save searches;
  • notifications on email for different events like: when someone has started following you, message, new offer, a new listing that matches your saved searches, etc;
  • user settings: ability to set the email notifications (opt in/ out, daily, weekly);
  • ability to upload pdf (eg: curriculum vitae for Job listings) instead of message/ contact button;
  • on the listing page: button with the seller phone number widget;
  • cookie consent alert to comply for EU law.

Backend:

  • ability to create new users;
  • users group permissions: admin, editor, moderator, user;
  • moderate reported listings;
  • add report types;
  • blacklist module: block ip’s, email address, domain, blacklisted usernames, banned words;
  • security: limit the number of the unsuccessful login attempts + set the number of minutes to throttle for;
  • maintenance mode;
  • default location/ time zone;
  • listing packages: Regular, Top ad, Featured;
  • Allow users to pay the packages in their country currency;
  • Upload settings: image file types and other file types (pdf, docx, etc);
  • Enable/ disable cookie consent alert to comply for EU law;
  • Set the cookie expiration time and the cache expiration time;
  • delete the inactive/ expired ads: set ad lifetime + send an automatic email to the user before the expiration date.

Feature idea/request - Title font/color option

Firstly, not an issue but happy to close and open a thread elsewhere if there is a more appropriate thread elsewhere.

After some experimentation with the logo, I could not get a logo that I liked designed. However an awesome alternative to uploading a photo would be the ability to select a snazzy font from google fonts using our own provided API key and possible an option to change the color.

Not sure how easy this would be to include into the architecture but thought it might be a useful suggestion.

Keep up the good work!

Password reset email does not send

Attempting to reset the password associated with an account does not seem to work, no email is received when requesting to reset password on a registered account

db seed error

When i run
php artisan db:seed
I get this error
Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1305 FUNCTION marketplace.ST_GeomFromText does not exist
How to fix it please ?

Cannot access a listing after deleting the category it belongs to

Title.

Easy enough to work around however might cause issues for any production release. One solution may be to have a permanent hidden category which cannot be deleted and any listings under a category which is deleted are temporarily re-assigned to 'hidden' and made invisible until re-assigned.

Just one suggestion.

Image source wrong?

Not sure if I have my local server setup incorrect, but some of the images are linked to /images instead of /storage/images.

For example the star review ratings /images/star-off.png. This isn't coming through for me.

Exception raised after "php artisan db:seed"

I tried to install this package by following the README, the :onConnectionError exception was raised
after this command:

% php artisan db:seed

This is the Exception trace:

Predis\Connection\ConnectionException : Connection refused [tcp://127.0.0.1:6379]

at .../marketplacekit/vendor/predis/predis/src/Connection/AbstractConnection.php:155
151| /
152| protected function onConnectionError($message, $code = null)
153| {
154| CommunicationException::handle(
155| new ConnectionException($this, static::createExceptionMessage($message), $code)
156| );
157| }
158|
159| /
*

Exception trace:

1 Predis\Connection\AbstractConnection::onConnectionError("Connection refused")
.../marketplacekit/vendor/predis/predis/src/Connection/StreamConnection.php:128

2 Predis\Connection\StreamConnection::createStreamSocket(Object(Predis\Connection\Parameters), "tcp://127.0.0.1:6379")
.../marketplacekit/vendor/predis/predis/src/Connection/StreamConnection.php:178

Only main page, no subpages available

I just installed the marketplacekit on my Server with apache2, everything worked fine until now. I have to change the admin password now, but for me on my server only the main page is available, for all other pages I receive the error message:
Not Found

The requested URL /login was not found on this server.
Where can I find all subsites?

Missing features

Hi there.
First of all i want to say congrats regarding this beautiful product.
Can you please update the code because some features are missing, like the error Class Modules\Panel\Http\Controllers\PricingModelsController does not exist and Homepage settings.

Kind regards

Payment methods

How can i add new custom payment method? I saw that the controllers are rigidly set to stripe and paypal. Are there any plans for writing payment adapters? Project is interesting so I could take it if you need help!

Crash after fresh install

Illuminate \ Database \ QueryException (42000)
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '>'$."price"') as aggregate from listings where listings.deleted_at is null' at line 1 (SQL: select min(meta->'$."price"') as aggregate from listings where listings.deleted_at is null)

Seems like the code in app/Http/Controllers/BrowseController.php is massively wrong

Lots of potential

I love this repo. It has a lot of potential to be a great product.

@marketplacekit , do you plan to have regular improvements to this app? Any roadmap you could share?

Well done! Love this!

Reviewing report error

Hi,

When reviewing an report, after selecting from "Action to perform" drop down "Disable listing" option, the following error occurs: Class 'Modules\ModerateListings\Http\Controllers\Admin\Listing' not found

Unable to remove individual homepage widget

After installing the homepage widget add-on, it looks like you are unable to delete individual widgets on from the menu.

I have tried deleting a few different widgets using the 'X' option from the settings page and it appears to trigger an event but unfortunately no changes occur.

Class 'Jralph\Twig\Markdown\Extension' not found

Symfony\Component\Debug\Exception\FatalThrowableError thrown with message "Class 'Jralph\Twig\Markdown\Extension' not found"

Stacktrace:
#0 Symfony\Component\Debug\Exception\FatalThrowableError in C:\laragon\www\marketplacekit\config\twigbridge.php:120

Add step to start redis-server

When I run db:seed I got redis error

➜  marketplacekit (master) ✗ php artisan db:seed
Seeding: UsersTableSeeder
Seeding: RolesAndPermissionsSeeder

   Predis\Connection\ConnectionException  : Connection refused [tcp://127.0.0.1:6379]

The error was gone when I start redis-server and re-run the db:seed.

There should be a step to install/start redis-server before running db:seed. Or if redis is optional, remove redis configuration value from the .env file.

Specified key was too long

When I execute php artisan migrate I get this error and the database creation task is interrupted:

Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table plan_features add unique plan_features_plan_id_code_unique(plan_id, code))
at /var/www/html/marketplacekit/marketplacekit/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664

I see somebody had a similar issue (#4 , 4th comment) but it's solution is not clear.

Thank you.

Admin login page URL

Hi!
Please let me know which page is for admin's login. I have just intalled Marketplacekit and I have no idea how to get in.
Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.