Skip to content

sampierson/bookmarks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAILS_BOOKMARKS

How to rewrite my homepage in Rails, Web 2.0 Style.
This is an exercise in exercising Ajax.

Features:
  DONE  Ajax editing page.
  DONE  Nested Sortables.
        restful_authentication
        LiveValidation?
        Page/fragment caching.
Chores:
        Switch from Test::Unit to RSpec
        Switch from Scriptaculous to JQuery
        RDOC
        
Those first two chores pretty much require a rewrite from scratch.

TODO
  Fix scriptaculous stacking flash messages.
  Write official CSS id/class naming policy.
  Align ids.
  Send unimplemented actions somewhere? back to preceding controller?
  What to do when a page/column etc does not exist.

Functionality:
  Display Page                        done
  Jump to Edit Page                   done
  Back to Display Page                done
  New Page                            
  Page Preferences: colors            
  Column Insert                       done
  Column Delete                       done
  Section Insert                      done
  Section Delete                      done
  Section Move                        done
  Section Edit (title)                done
  Bookmark Insert                     done
  Bookmark Delete                     
  Bookmark Move                       done
  Bookmark Edit (legend, url)         done
  Bookmark Upload Image               done
  Admin interface
    view other people's pages         

Structure
  page ->
    columns ->
      sections ->
        bookmarks
        
User experience:

  Page
    Allow you to pick background?
    Javascript color picker?
    
  First time: starts with an empty page that says:
    To start constructing your page:
      [add a column]

  Add Column
    Contacts server, creates a column
    updates page to add a column with it's editing fields
    So page must therfore have a div ready to be replaced

  Column editor:

    Show existing rows, with edit button next to them.
    They should be draggable so they can be moved within the column
    and between columns, and have an edit button.

  Row Element Edit

    Popup a little window that has Name, Image and URL in-place-edit fields.

  Admin Interface
    A Web-1.0 way of examining and editing all pages.

Database
  WebPage
    url
  Column
    webpage_id
    nth_from_left
  Section
    column_id
    nth_section_from_top
    title
  Bookmark
    section_id
    nth_from_top_of_section
    Legend
    Image
    Possibly: Heading, Large, Small, Italic, Bold...?

Integration
  Setting up a new 
  How to plug it into an existing webpage - IFRAME
  Ideally want a way where a non-developer can do it
  bookmarks.sampierson.com/homeloangoddess.com
  editing entities done via bookmarks.sampierson.com/homeloangoddess.com/edit ?
  or                                                                    /column
  
Authentication?
  Add later.
  Cookie based sessions.
  Signup.

Routes

  http://bookmarks.com/:site                 GET       Display page
                                                       If page does not exist,
                                                       redirect to /new
                      /:site/webpage/new     GET       Authenticate, perform signup
                                                       Ask if user wants to create this page
                            /webpage/create  POST-Ajax Create DB entries - page, column, section
                                                       Ajax.upate page contents with display()
                                     
                                     show,edit,update,delete    Do not really have a lot of meaning here.
                                                                Webpage has no user editable content.
                                                                Unless we add aliases?
                                                                
                      ^ may truncate /webpage/new to /new. simirlarly for create.
                      
                      /:site/column/new      POST      Webpage will have buttons to add columns
                                                                before, inbetween and after current columns.
                                             insert-before/1
                                             insert-after/1
                                             
                      /:site/column/<c>/section/new
                      /:site/column/<c>/section/create
                      /:site/column/<c>/section/insert-above/1
                      /:site/column/<c>/section/insert-below/1
                      /:site/column/<c>/section/<s>/edit
                      /:site/column/<c>/section/<s>/update
                      /:site/column/<c>/section/<s>/destroy
                      
                      /:site/column/<c>/section/<s>/bookmark/new
                      /:site/column/<c>/section/<s>/bookmark/create
                      /:site/column/<c>/section/<s>/bookmark/insert-above/1
                      /:site/column/<c>/section/<s>/bookmark/insert-below/1
                      /:site/column/<c>/section/<s>/bookmark/<b>/edit
                      /:site/column/<c>/section/<s>/bookmark/<b>/update
                      /:site/column/<c>/section/<s>/bookmark/<b>/destroy

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published