Difference between revisions of "Hwdb notes"

From LinuxMCE
Jump to: navigation, search
(Added some basic UI and principles.)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
[[Category: Hardware Lists]]
 +
[[Category: Compatibility]]
 
hwdb refers to the web application I am developing for LinuxMCE to provide a web accessible place to put hardware compatibility lists for things that work in LinuxMCE.
 
hwdb refers to the web application I am developing for LinuxMCE to provide a web accessible place to put hardware compatibility lists for things that work in LinuxMCE.
  
Line 23: Line 25:
 
  mfgurl string
 
  mfgurl string
 
  wikiurl string
 
  wikiurl string
  workrating integer (1-5, 1 DOESN'T, 5 WORKS WELL)
+
  workrating integer (0-5, 1 DOESN'T, 5 WORKS WELL)
 
  created_at date
 
  created_at date
 
  modified_at date
 
  modified_at date
Line 52: Line 54:
 
* Notes
 
* Notes
 
* Attachments
 
* Attachments
 +
 +
===Note about rating===
 +
Rating is an integer from 0 to 5, 0 meaning not rated yet. Descriptions of each rating taken from the code:
 +
 +
def rating_text_for(entry)
 +
ratingText = case
 +
when entry.rating == 0: "0 - Not Rated"
 +
when entry.rating == 1: "1 - Not Working"
 +
when entry.rating == 2: "2 - Almost Working"
 +
when entry.rating == 3: "3 - Works, Lots of features missing"
 +
when entry.rating == 4: "4 - Works, Few features Missing"
 +
when entry.rating == 5: "5 - Works Perfectly"
 +
end
 +
end
 +
 +
==Why Do this?==
 +
 +
I've already had the question, of why do this project?
 +
 +
* Provide side-by-side comparisons of hardware.
 +
* Provide a way to interface LinuxMCE so that successful hardware configurations can easily be imported.
 +
* Provide links into the wiki for more detailed information.
 +
 +
==Gems Installed==
 +
 +
The following gems need to be installed
 +
 +
* ferret - for full text searching.
 +
  
 
More to come.
 
More to come.

Latest revision as of 15:29, 29 September 2010

hwdb refers to the web application I am developing for LinuxMCE to provide a web accessible place to put hardware compatibility lists for things that work in LinuxMCE.

Basic UI principles:

  • No deliberate page refreshes.
  • Anything you drill down into, shows up right where you are, pushing other page elements out of the way.

Schema

schema: the additional rails bits for timestamps etc are not shown.

manufacturer

id
manufacturer name
url
(taggable)
created_at date
modified_at date 

hardwareentry

manufacturer_id integer
model string
description text
mfgurl string
wikiurl string
workrating integer (0-5, 1 DOESN'T, 5 WORKS WELL)
created_at date
modified_at date
acts_as_taggable

Items to show on the main screen

  • Search Box, which expands to show newest entries.
  • Recently Created Hardware Entries (10 newest entries)
  • Recently Modified Hardware Entries (10 most recently modified entries)
  • Add a New Hardware Entry

Partials

Partials refer to snippets of commonly rendered items across the application. The most common bit, being a hardware entry partial.

Hardware Entry

  • Icon
  • Name
  • Rating (Both # and color)

Clicking on name, expands hardware entry to show:

  • Description
  • Manufacturer's URL
  • Wiki Page URL
  • Notes
  • Attachments

Note about rating

Rating is an integer from 0 to 5, 0 meaning not rated yet. Descriptions of each rating taken from the code:

	def rating_text_for(entry)
		ratingText = case
			when entry.rating == 0: "0 - Not Rated"
			when entry.rating == 1: "1 - Not Working"
			when entry.rating == 2: "2 - Almost Working"
			when entry.rating == 3: "3 - Works, Lots of features missing"
			when entry.rating == 4: "4 - Works, Few features Missing"
			when entry.rating == 5: "5 - Works Perfectly"
		end
	end

Why Do this?

I've already had the question, of why do this project?

  • Provide side-by-side comparisons of hardware.
  • Provide a way to interface LinuxMCE so that successful hardware configurations can easily be imported.
  • Provide links into the wiki for more detailed information.

Gems Installed

The following gems need to be installed

  • ferret - for full text searching.


More to come.