GithubHelp home page GithubHelp logo

gouthamreddykotapalle / localtradingapp Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 811 KB

The simple app for local trades

License: Apache License 2.0

Ruby 45.06% JavaScript 2.41% CSS 9.72% HTML 38.52% Gherkin 3.59% CoffeeScript 0.71%
ruby s3 trading e-commerce-project rails4 mvc

localtradingapp's Introduction

The Local Trading App

Documentation - TheLocalTradingApp

Models:

ApplicationRecord

Direct Known Subclasses -

  • Post < ApplicationRecord

    Class for defining and generating either a buyer post or a seller post.

    • Defined in: app/models/post.rb

      Direct Known Subclasses -

      • BuyPost
        Class for generating a buyer post.

        - Defined in: app/models/buy_post.rb
      
            Methods inherited from Post
            
                all_categories, with_categories
            
            Instance Method Summary:
            
                #price_range_are_numbers? ⇒ Boolean
                .search_by: For searching items by title or category
      
      • SellPost
        Class for generating a seller post.

        - Defined in: app/models/sell_post.rb
            
            Methods inherited from Post
            
                all_categories, with_categories
      

      Class Method Summary:

        .all_categories ⇒ Object
        .with_categories(categories) ⇒ Object
        .search_by: For searching items by title or category
      
  • BuyPostDetail < ApplicationRecord

    Class that manages all the internal details and sub categories of a buyer post when using templates to create a custom buy post.

    • Defined in: app/models/buy_post_detail.rb
  • SellPostDetail < ApplicationRecord

    Class that manages all the internal details and sub categories of a seller post when using templates to create a custom sell post.

    • Defined in: app/models/sell_post_detail.rb
  • Template < ApplicationRecord

    Class the manages the template creation for the user that can be used to define custom posts based on the category of the post. (both buy and sell posts).

    For Example: A template for the category "car" would look something like this -

      Category:  Car
      type: Buy - meaning buy post
      column ID: year
      Column Name: Year
      Data Type: string
    
    • Defined in: app/models/template.rb
  • User < ApplicationRecord

    Class the manages a single user's details.

    • Defined in: app/models/user.rb

      Class Method Summary:

        .authenticate(email, password) ⇒ Object
      
  • Transaction < ApplicationRecord

    Class that manages the buy and transaction.

    • Define in: app/models/transaction.rb

      Class Summary:

      validates :card_number, length: {maximum: 19}, format: { with: number_only_regex, message: "only allows numbers" } validates :expiration_date, format: { with: expiration_date_regex, message: "only mm/yy" } validates :cvv, length: {maximum: 4}, format: { with: number_only_regex, message: "max 4 digits" } validates :zip_code, length: {maximum: 6}, format: { with: number_only_regex, message: "max 6 digits" }

Views:

  • buy_posts

    edit.html.haml - Page to edit a buyer post.
    index.html.haml - Landing page that displays all buyer posts.
    new.html.haml - Page to create a new Buyer Post.
    show.html.haml - Individual product page

  • transactions

    new.html.haml - Payment gateway page.

  • layouts

    Application.html.haml - Root html file that manages the initialization like loading the map, fetching current location, etc
    mailer.html.haml
    mailer.text.haml

  • partials

    _footer.html.haml - Footer for all pages
    _header.html.haml - Header for all pages

  • sell_posts

    edit.html.haml - Page to edit a seller post.
    index.html.haml - Landing page that displays all seller posts.
    new.html.haml - Page to create a new seller Post.
    show.html.haml - Individual product page

  • static_page

    about.html.haml - About details of developers
    contact.html.haml - Contact details for support
    home.html.haml
    index.html.haml
    privacy_policy.html.haml - Privacy policy
    terms.html.haml - Terms and conditions

  • templates

    _detials.html.haml
    edit.html.haml - Editing a template
    index.html.haml - Listing all template
    new.html.haml - Creating a new template
    show.html.haml - Showing a particular template

  • users

    index.html.haml
    login.html.haml - Login Page
    new.html.haml - Register Page
    show.html.haml - User detials Page

Controllers:

ApplicationController < Base

Constant Summary -

APP_NAME = 'The Local Trading App'

Direct Known Subclasses -

  • BuyPostsController < ApplicationController

    Defined in:

    • app/controllers/buy_posts_controller.rb

    Instance Method Summary:

    #create ⇒ Object: Creates a new buyer post

    #destroy ⇒ Object: Deletes a buyer post

    #detail_form ⇒ Object: Renders a detailed buy post based ona created custom template

    #edit ⇒ Object: Edits a buyer post

    #index ⇒ Object: Calls the before_index, sort_index and index_with_categories methods

    #map_all ⇒ Object: Maps a each record in the database to the fields in the response to be later processed by the view.

    #new ⇒ Object: Not used as of now

    #insert_details => Object: Inserts all the details based on custom template and returns the resulting post.

    #show ⇒ Object: Finds a post by ID as returns it

    #update ⇒ Object: Updates a buy post

    #before_index: Sets up the Column Information for GET /buy_posts.

    #sort_index: sort by the key column.

    #index_with_categories: sort posts by a particular category and index them.

  • SellPostsController < ApplicationController

    Defined in:

    • app/controllers/sell_posts_controller.rb

    Instance Method Summary:

    #create ⇒ Object: Creates a new seller post

    #destroy ⇒ Object: Deletes a seller post

    #detail_form ⇒ Object: Renders a detailed sell post based ona created custom template

    #edit ⇒ Object: Edits a sell post

    #index ⇒ Object: Calls the before_index, sort_index and index_with_categories methods

    #new ⇒ Object: Not used as of now

    #insert_details => Object: Inserts all the details based on custom template and returns the resulting post.

    #show ⇒ Object: Finds a post by ID as returns it

    #update ⇒ Object: Updates a sell post

    #before_index: Sets up the Column Information for GET /sell_posts

    #sort_index: sort by the key column.

    #index_with_categories: sort posts by a particular category and index them.

  • TransactionsController < ApplicationController

    Defined in:

    • app/controllers/sessions_controller.rb

    Instance Method Summary:

    #create ⇒ Object: Creates a user session and logs the user in.

    #destroy ⇒ Object: Destroys a user Session and logs the user out.

    #new => Object: Trasaction form.

    transaction_params => Object: Handles the payment logic.

  • SessionsController < ApplicationController

    Defined in:

    • app/controllers/sessions_controller.rb

    Instance Method Summary:

    #create ⇒ Object: Creates a user session and logs the user in.

    #destroy ⇒ Object: Destroys a user Session and logs the user out.

  • StaticPageController < ApplicationController

    Defined in:

    • app/controllers/static_page_controller.rb

    Instance Method Summary:

      #about ⇒ Object: <Not Used as of now>
      #contact ⇒ Object: <Not Used as of now>
      #home ⇒ Object: <Not Used as of now>
      #index ⇒ Object: <Not Used as of now>
      #privacypolicy ⇒ Object: <Not Used as of now>
      #terms ⇒ Object: <Not Used as of now>
    
  • TemplatesController < ApplicationController

    Defined in:

    • app/controllers/templates_controller.rb

    Instance Method Summary:

    #create ⇒ Object: Creates a new template

    #destroy ⇒ Object: Deletes a template

    #edit ⇒ Object: Edits a tempalate

    #index ⇒ Object: Lists all templates

    #new ⇒ Object:

    #show ⇒ Object: Searches for a template

    #update ⇒ Object: Updates a template

  • UsersController < ApplicationController

    Defined in:

    • app/controllers/users_controller.rb

    Instance Method Summary:

    #create ⇒ Object: Handles Registration

    #index ⇒ Object: Users list is not supposed to explore by ordinary users. It should always redirect back to home page until we develop Admin role.

    #login ⇒ Object: Handles user login

    #new ⇒ Object

    #show ⇒ Object: Retrieves user details from model and redirects to user page.

localtradingapp's People

Contributors

dependabot[bot] avatar gouthamreddykotapalle avatar mingen-pan avatar nasmal avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

albegehtv

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.