Giter VIP home page Giter VIP logo

fdugroup's Introduction

rays-blog-example

It's a blog website example which illustrates Rays framework very well. The project depends on some fantastic open source projects such as php-markdown and bootstrap particularly.

License

Apache License, Version 2.0, see LICENSE.

fdugroup's People

Contributors

junshiguo avatar raysmond avatar wishstudio avatar zyz282994112 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

fdugroup's Issues

waterfall load bug

Now once we scroll the bar, the waterfall will keep loading until all groups are loaded. This may due to the hide of loadMore btn, which we used to control the location position and determine when to load more.
I will fix this tomorrow.

Notifications

Subscribe-able notifications.

  • New post notification
  • New group member notification
  • Email notification (if possible)

Privilege groups and user profile administration

Implement basic administration facilities

  • Distinguishable privilege groups (users, vip users, administrator, etc.)
  • Administrators can view/modify profiles of all users
  • Administrators can promote a user to administrator by changing his privilege group

Create Group

Use a two-level selection instead of one-level one to facility users to choose category of the group.

Common SQL Builder or Active Record data model

Since the base data model cannot provide powerful and efficient functionality, it would be better to write a common SQL builder or more perfectly another data model which is similar to active record like data model in Ruby on Rails.

String Cropping Bugs

When use mb_substr to get prefix of a specific length, utf-8 encoded characters will be partitioned, thus will show such as &mb.. at the end of cropped strings.
We need to implement a robust string cropping function that solve this issue.

Basic MVC structure.

In MVC architecture design, we have many class families: request listeners, routers, controllers, page renderers, and data models. So far we have only few data models in the repo.

As I'm not familiar with the MVC pattern, I really hope someone can build some WORKING templates for classes of each family (especially controllers and renderers which are essential for current development). So I and possibly others could follow the pattern and keep the code style consistent.

Assign yourself if you're willing to do this, thank you.

Send/reply message interface

  • A send message button should be provided in "user/view" page
  • A reply button should be provided in a specific message view

Find user

A user can find users based on specific information (i.e., name, gender, region, and so on)

A more complete implementation needs to implement recommendation strategy.

Admin home topbar bug

When logged in as admin, go to user home, the top bar displays another user.
Other pages are normal.

Login redirect bug

We need to narrow login redirection to only inner topic pages, or else the redirection will be ridiculous. Even redirect to other websites linked to our website.

In group/find

When we visit gorup/find, the catagory widget is normal. However, when we use switch to another page, the catagory widget disappears.

Friends

Implement friends functionality

  • Search others by username and/or email
  • Send add message to others
  • Accept friend request
  • View and delete friends

Logic error of invitation

Now we have implemented the censorship strategy of joining in groups. However, when one user is invited by the owner of a group, and he accepts the invitation, then the normal logic is to complete the joining process, not sending a request again to the owner of that group.

Work to do: When inviting a user to joining in a group, add a censoring request. The acceptance by the invited user is the process of passing the censorship.

Enhanced post management

Implement routines to enhance posting experience

  • Change topic visibility (open or group accessible).

Administrator privilege

Add privilege system to the whole system

  • Administrator should be able to do everything that a normal user can or cannot do

User Manual

Our product should have a page to guide new users about using itself.
The manual should include these but not exclude others:

  1. Steps to use each function, such as register, find groups, manage groups, post topics, reply to topics, send message, apply for VIP, get virtual profit from published ads, and so on.
  2. Some constraints for users to use our product, such as no violent or obscene content should be published.
  3. Introduction of some user related strategies in our product, such as the way we calculate the money in users' virtual wallet, the way we rank ads, and so on.
  4. Other related topics. Welcome to supplement others.

user profile update bug

当修改用户profile后,密码会被错误存储。
存储结果为上次被md5后的值再次md5
这也是导致几天来我们修改账户导致错误的原因

Manage group members

The group creator can manage the members of his group, and kick out those "bad" users.

Back to Top Button

Add a back to top button on each layout in order to facility users going back to top easily.

Today's hot topic bug

After watching some topics from that widget and return, sometimes the counting wrongs. This may be due to data inconsistency.

Search group

When search for group use searchStr, waterfall loading more will wrongly load all groups.

System log

So far we have access log, but we should have a system log system to record every operation, warning, exception or error at the system level.

User view page

Except user's basic profile information, it would be better to show the user's joined groups, latest posts, plus-rated posts.

User registration

Implement user registration.

  • Simple username/password/email registraiton
  • Captcha verification

hit add bug

Hit Ads, no credit given to published user.

System notifications

Administrators should be able to push notifications to all users using the messaging system.

User profile

Implement management of user profiles.

  • Includes login information, contact information, avatar, and preference settings
  • Edit one's profile
  • View profile of oneself and others

Groups

Implement groups

  • Add new/view existing groups
  • As a group leader, invites others to join (using messages), or dismiss group individuals
  • Join/exit group
  • Remove a group

public/js/jquery-1.10.2.min.map

This file does not exist, but is visited by a lot of pages and trigger a lot of Page not found system logs. We need to fix this.

Wallet Implementation

When published ad is viewed once, the account of the publisher will receive 1 virtual coin.
When he wants to post new ads, he cannot pay more money than the remaining in his wallet.

RModel: delete all records which match conditions

Currently the model only support delete function with primary key. It would be better to support delete method that delete all records with conditions like:
Comment::delete_all("[topicId] = ?", 2);

Basic posting

Implement basic posting routines

  • Implement basic data models and controllers to create and modify post data
  • Allow users to post topics, and add comments to existing topics
  • Allow users to edit or delete posts created by himself
  • Allow users to view topics and comments

Messages

Implement a generic messaging system.

  • Send/receive messages
  • View and manage messages by groups (user messages, friend request, system messages, etc.)
  • A message remainder which should be added in page header to be inside every page

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.