Giter Club home page Giter Club logo

osclass's Introduction

Osclass

All you need to easily create your own classifieds website

Osclass is for classifieds what WordPress is for publishing. It's a free and open script to create your advertisement or listings site. Best features: Plugins, themes, multi-language, CAPTCHA, dashboard, SEO friendly.

Preview of Osclass

Project info

Develop

Clone the repository and the submodules.

$> git clone --recursive [email protected]:osclass/Osclass.git

Installation

Go to our site to get detailed information on installing Osclass.

osclass's People

Contributors

adrienrn avatar alejobit avatar ameenullah avatar axelay avatar conejoninja avatar dev-101 avatar e20cents avatar emanwebdev avatar extr avatar feralou avatar garciademarina avatar geoffreycrofte avatar gilden- avatar groomain avatar jnv avatar juanramon avatar maddrid avatar mpiasta-ca avatar randomecho avatar ratio91 avatar rbngzlv avatar robbycandra avatar spbriggs avatar steven2358 avatar trains58554 avatar turbinejesse avatar vcarrasco avatar vijnv avatar vslavik 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

osclass's Issues

New Debug feature in 2.3

Hi

I really like these new debug features. One little improvement I would like to see is that once the script is done writing the errors is no the next blank line add a # or some other symbol just to make readability easier and easier to debug.

Thanks

Jay

One-click install/update plugins

If a plugin has an autoupdate URL, then, we could auto-install it. If we release a new plugin, then the users can go to the one-click install panel, type the URL (http://www.osclass.org/example_plugin_url_install) and voilà! It's installed. In the future we could have a little browser, to look for new plugins. (this could also apply for themes).

Note: We must develop more this idea.

Ban system

Ssytem to ban users based on :

*username

  • email
  • ip

With wildcards, example *@example.com will ban all users with email [email protected]

Also a word blacklist, we check every ad with akismet, but we'll bring the option of admins to include several blacklisted words. If the ad has any of that word, then it will not be published.

in translation file?

"Free" was not in Dutch translation file core.po ... should be translated as "Gratis"

editing country name

in RC (when i click to edit a country) (dutch-edition)

Fatal error: Call to a member function osc_dbExec() on a non-object in /home/bokt/domains/site.be/public_html/zoekertjes/oc-includes/osclass/model/Country.php on line 153

regenerating thumbnails

When i click "regenerate thumbnails": i get this error: (RC 2.3)

Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/xxx/domains/xxx.xx/public_html/ads/oc-admin/tools.php on line 118
Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/xxx/domains/xxx.xx/public_html/ads/oc-admin/tools.php on line 118
Warning: Cannot modify header information - headers already sent by (output started at /home/xxx/domains/xxx.xx/public_html/ads/oc-admin/tools.php:118) in /home/xxx/domains/xxx.xx/public_html/ads/oc-includes/osclass/core/BaseModel.php on line 60

OSClass Admin Manage Items page fails when one of the users' name has a double quote

At some point I got nothing on the Manage Items page of the OSClass Admin. Digging through it, I discovered that the JSON response it receives failed to get parsed. Apparently, a new user had a typo in her Name. It contained the double quote character ".

This was seen on version 2.2.3

Here is the error from JSON lint

Parse error on line 12:
...            "Lizzy"sCloset","Jewelry-Wa
----------------------^
Expecting '}', ':', ',', ']'

For now, I just manually fixed the entry in the database but this should be properly handled I think.

New user email version 2.3

I just noticed that when I register a new user he gets the email that is supposed to got to the admin.

Dear sioux falls admin,

You're receiving this email because a new user has been created at sioux falls .

User details:

Name: Bob
E-mail: testusers email

Regards,

sioux falls

Jay

Theme issue

I am not totally sure if this is an issue with osclass or maybe it has to do with the theme. I just upgraded my test server to 2.3 and changed my theme to the bcute theme and all it loaded was the head html and left the rest blank. I then tried the twitter theme and the same thing happened. The modern theme and the Hierarchy theme both work.

Jay

regenerating thumbnails

in version RC:
click regenerating thumbnails:
Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/site/domains/site.be/public_html/zoekertjes/oc-admin/tools.php on line 135

Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/site/domains/site.be/public_html/zoekertjes/oc-admin/tools.php on line 135

Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/site/domains/site.be/public_html/zoekertjes/oc-admin/tools.php on line 135

Warning: Cannot modify header information - headers already sent by (output started at /home/site/domains/site.be/public_html/zoekertjes/oc-admin/tools.php:135) in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/core/BaseModel.php on line 68

(i have 3 pictures in 2 ads ...)

Thumbnail resizing issues

Whole history: http://issues.osclass.org/browse/OSCLASS-845

Edit version who affect this issue. The behavior is intended. The borders are because the thumbnail is generated from the "normal" size image instead of the original one. We do this in order to save resources (in both, GD and imagemagick libraries, but most because of GD library) and also due to the text / watermark image. As I said, we left this issue open and unversoined (for the moment) to improve it on the future. Here're some suggestions :

  • Generate thumbnail from original image (this will require MORE resources, also will require to upload multiple sizes watermark and multiple sizes text)
  • Allow upscaling instead of borders (image will scale to fit the whole image size instead of adding borders)
  • Change the size no matter the scale (width:height) of the original image (no borders at all)
  • Since all these suggestion could be too bit complicated, it would be great if those ideas area implemented as a plugin instead of core functions.

Download backups

Now, when we backup the database or files, they're stored in the local storage of the server. It would be better if once it's done the backup (even if it's of the files or database) it starts a download.

Only allow registered users to contact to seller

I seem to be having problems with setting the reg users to contact seller. It was showing to both logged in and none logged in users. Then I checked the Only allow registered users to contact to seller checkbox and now the contact seller box is only visible when I logout. Even after I uncheck the checkbox I get the same results.

Jay

DB Update problem

There were a number of reports of db upgrade issues on 2.2.3 and trying to upgrade my db to 2.3RC had a similar problem with lots of error messages. Debugging db.php showed that an erroneous ', ' (comma space or possibly comma tab) was being added to the end of CHANGE COLUMN queries.

Taracque was close to the right answer (see http://forums.osclass.org/index.php/topic,4201.0.html) but another line of code also needs changing. From line 367 in db.php change to:
case 'key':
$indexes[] = trim($field, ", \t\r\n"); //was trim($field, ", \n");
break;
default :
$normal_fields[strtolower($field_name[1])] = trim($field, ", \t\r\n"); //was trim($field, ", \n");
break;
This fixes almost all the problems except for two lines in struct.sql that have single quotes in them and generate the following queries (i.e. quotes have been stripped):
"ALTER TABLE oc_t_locale ALTER COLUMN s_dec_point SET DEFAULT ."
"ALTER TABLE oc_t_locale ALTER COLUMN s_thousands_sep SET DEFAULT "
(I added the " " to clearly show the start and end of the query text).
I've fixed this manually in my db for now but needs a change either to struct.sql or db.php.
Steve.

hMessages.php

line 97: echo '

';
Not a bug but could somebody please explain me what the meaning is of this line? Thank you!

page description

Page description (completing/editing) doesn't seems to have any effect ? Where is it showed normally? (in dutch version i don't see anything happen)

Plugin Disabling

Hi Guys

I found a problem with the disabling of plugins. If you disable a plugin like car attributes and then the user deletes an item that is linked to the cars plugin they will get an error this item was not deleted. It then creates a ghost ad.

And this is more a visibility suggestion feature when a plugin is disabled maybe you could change the background color to a yellow or some other color then red and green?

Jay

timezone isn't saved

When i try to set our timezone, it seems not to be saved (could be correct in database, didn't checked that yet - but definately not displayed correctly) (apparently timezone needs to be set in order to use paypal plugin?)

Meta tags: robots, title, description

We add this meta tags directly in the theme. We should add this tags in core so we can override their use through plugins. Now, if we want to override their use from a plugin, we have to remove the code from the functions.php code.

Expand and collapse categories

Now, the whole tree of categories is displayed when we manage categories. In order to improve the UX, we should be able to collapse and display the subcategories of each parent category.

Category counts

Hi

I am using version 2.3 and I created an item and the category count incremented and the location showed the correct number of items. When I deleted the item it deleted just fine but now the category count is off it still show that there is one item in that category.

Jay

SEO improvements

First of all, the structure of the table:

  • s_original_text
  • s_anchor_text
  • s_normalized_text (*)
  • s_md5 (**)
  • fk_i_category_id [fk to the category table]
  • fk_i_city_id [fk to the city table]

s_original_text -> is the original search text query
s_normalized_text -> is the same input value as s_original_text but after apply some filter we describe below
s_anchor_text -> can be the same as s_original_text
s_md5 -> see (**)

process to get s_normalized_text:

  • convert string into lowercase
  • remove stopwords (there are in the language file)
  • delete words with less than 3 letters
    • (**) how we generate md5
      - remove accents
      - order words alphabetically
      - generate md5
      -> why? this way we aren't able to repeat keywords. eg: buy house new york // buy new york house
  • raw_url_encode (*) we get the normalized text

All this is basic to get the keyword system

cron wording confusion

Hi

I am submiting this issue because I have noticed that the wording in osclass about the cron system is kind of miss leading.

"Some OSClass functionalities require a cron in order to work. Check if your host isn't able to do them. Uncheck if you want to set up your cron manually. Refer to the manual to know more about the OSClass cron system."

I think there should be a link to the wiki so the user can find out more about this and whether or not they want to use osclass's cron or use there servers.

Jay

change location

in RC, when there has been an ad placed for a certain location (city), when i change the city in the tools (as there is a syntax mistake in the city) the location isn't changed to the new spelling (still showing the city as when it's was placed)
I hope this is clear ? ;)

Disabling plugins

I noticed when I disable a plugin the footer of the page is not loaded.

Jay

Image fields clear on server side validation error

When the item is added, if there is a form validation error (due to invalid data input), the images fields are reset to blank. User doesn't notice this and posts the item without images.

Please note that the image fields only clear when error is caught on the server side (and reported by the flash message.) Client side validation error doesn't clear the image fields.

Internationalizing custom fields

Now custom fields are available only in one language. Make them available in the different language... same as item descriptions.

delete all ads ... counting ads on mainpage

I've deleted all the ads. On the parentcategory i get indeed (0) as amount of ads, but in the subcategories they don't go to (0) but they stay on (1) (even there were 4 ads in that subcategory before) ...

Some hooks are running multiple times in one load

From Haider:

I was writing a plugin when I noticed this. If u place hook on 'before_html' hook, the function will be called several times especially when loading the home page.

I am hooking the following function on 'before_html'
function testfunc() {
file_put_contents("debug.txt", $_SERVER['REQUEST_URI']."\n", FILE_APPEND);
}

On a single page load of home page this is what I get in the debug.txt file:
/PakAdsOnline222/
/PakAdsOnline222/oc-content/uploads/406_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/450_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/523_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/423_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/419_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/522_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/494_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/495_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/496_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/449_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/498_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/546_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/686_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/685_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/447_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/684_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/683_thumbnail.jpg
/PakAdsOnline222/oc-content/uploads/682_thumbnail.jpg

Even if you hook on footer SOMETIMES, the 'footer' hook is called twice instead of once. The one extra call is also again something like /PakAdsOnline222/oc-content/uploads/(*)_thumbnail.jpg

See the whole conversation here: http://issues.osclass.org/browse/OSCLASS-844

Add option to re-send activation email to users

Sometimes, emails did not get delivered correctly or the users receive the e-mail in the spam folder and he losts it. It could be useful to add an option to resend the activation e-mail for an user account.

email & alerts editing

field s_text from t_pages_description isn't displayed ...that tomakes it hard to edit correctly

Profile of a user id that doesn't exist

Fatal error: Call to a member function result() on a non-object in /Applications/XAMPP/xamppfiles/htdocs/osclass-git/oc-includes/osclass/model/Item.php on line 433

Location permalinks

We should choose one option from the following one's:

  • Region
    • domain.tld/s/r__{region}_
    • domain.tld/s/r/{region}
    • domain.tld/s/r/_{region}__id
    • domain.tld/s/region/{region}
  • City
    • domain.tld/s/c__{region}_
    • domain.tld/s/c/{region}
    • domain.tld/s/c/_{region}__id
    • domain.tld/s/city/{region}

It's open to more suggestions.

Catch plugin errors

Now we catch all PHP errors (even the one's triggered by the system). That's bad because sometimes users are not able to install a plugin because the php environment has some error not related to OSClass. I suggest to:

  • Set header location while including the plugin files. So, if there's a fatal error, the redirection will be done
  • Show an iframe so we sould show the exact error that PHP throws.

price isn't showed properly

When placing an add with a given price, the price shows up as %.02f %s (that is in the dutch version - didn't checked the english version)

Admin permission system

Permissions system will allow to have "admins" (total control) of your website, editors/moderators (user who can log into the admin panel to moderate users/ads but not to change the configuration) and users.

This should include a group-creator and permission manager, to have as many groups with different access as you want.

Regestration form php validation

Hi

I just tried to create a new user with javascript disabled and left the name and password empty but filled in a email and it created the account I think there should be some php validation on this form to keep accounts with out names out of the database.

Jay

Bug in osc_send_mail, module utils.php

Seems to be a problem with the add_bcc option in this function. See http://forums.osclass.org/index.php/topic,4510.0.html

  1. add_bcc is misspelt as add_bbc which is at least confusing
  2. if called with a string of addresses, separated by commas, as in the osclassmail plugin, it doesn't work (possibly it was never meant to - in which case this would be an enhancement).

I fixed this as follows:
Replace line 258
if ( isset($params['add_bbc']) ) $mail->AddBCC($params['add_bbc']);
with
if ( isset($params['add_bcc']) ) {
$bcc = explode(',', $params['add_bcc']);
foreach ($bcc as $b ) {
$mail->AddBCC($b);
}
}

The only place in osclass I can see this is used is in ItemActions which also seems to get muddled between bbc and bcc so probably doesn't work properly either.

user view alerts

When clicking http://www.site.be/zoekertjes/index.php?page=user&action=alerts (when people log in to their account... i get those errors. To be complete, i've created some ads and delete them all, meanwhile i've marked some of them as spam/inpolite/etc ... and once they are deleted i logged in and tried to view that page ... this is the result:

Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBCommandClass.php on line 1003

Warning: DBCommandClass::errorReport() [dbcommandclass.errorreport]: Couldn't fetch mysqli in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBCommandClass.php on line 1341

Warning: DBCommandClass::errorReport() [dbcommandclass.errorreport]: Couldn't fetch mysqli in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBCommandClass.php on line 1342

Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBCommandClass.php on line 1003

Warning: DBCommandClass::errorReport() [dbcommandclass.errorreport]: Couldn't fetch mysqli in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBCommandClass.php on line 1341

Warning: DBCommandClass::errorReport() [dbcommandclass.errorreport]: Couldn't fetch mysqli in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBCommandClass.php on line 1342

Fatal error: Call to a member function data_seek() on a non-object in /home/site/domains/site.be/public_html/zoekertjes/oc-includes/osclass/classes/database/DBRecordsetClass.php on line 163

Mail not enabled, impossible to use

Pretty simple, when testing on a local space with no mail server, it warns that it can not mail to the class, however still lets you install successfully, but then renders it impossible to login as an administrator.

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.