wiki:FormsAndMetadata
Last modified 11 years ago Last modified on 05/18/06 15:01:54

What to ask in forms and what to show in results?

User information

Setting user preferences

Technical stuff: User's properties can be accessed as properties of MemberFolder?-archetype object, which can be reached from user.getHomeFolder() or portal_membership.getHomeFolder(userid). Setting these properties also mirrors them to user's actual properties so that when you need to get f.ex. users fullname you can get it from user object directly. We're having MemberFolder? to contain user properties, because as an Plone object it can be indexed and we can do faster searches for user properties this way. Especially this will be necessary when we'll have a network of LeMills?, then we need only share an index, not user lists with properties. Only some of the properties need their own catalog index: rule should be that if we are supposed to be able to directly search for that property *or* have value of that property listed in 'tag cloud'.

These are set as archetype fields in MemberFolder?.py, but config has variable member_properties (in caps), which sets the actual user properties. Both member_properties and MemberFolder? should have same fields so they can mirror each others.

(technical name = propertyid, accessor, mutator, searchable, own index)

Tier 1. Necessities

  • id = email (having an option to change your email will then be a feature for some later release. (It will need a script to move all content authored by certain user and group memberships to new user, then delete the old user.)) = email in MemberFolder?, shouldn't be used - if you are in somebodys MemberFolder? there should already be lots of ways to know persons id.
  • firstname = firstname, getFirstname, setFirstname
  • lastname = lastname, getLastname, setLastname
  • nickname = nickname, getNickname, setNickname, searchable, own index
  • fullname (hidden) = firstname+' '+lastname, getFullname, setFullname, searchable, own index
  • password

Tier 2. Contact & location

  • messengers (not indexed) three textfields = messenger1, getMessenger1, setMessenger1. messenger2,3 =same
  • location (list of countries) = location_country, getLocation_country, setLocation_country, searchable, own index
  • city or county = textfield = location_area, getLocation_area, setLocation_area, searchable, own index
  • home_page = url = home_page, getHome_page, setHome_page

Tier 3. Interests

  • language_skills (multiple choices, list, controlled vocabulary) = language_skills, getLanguage_skills, setLanguage_skills, own index
  • skills = skills, getSkills, setSkills
  • interests = interests, getInterests, setInterests
  • tags (hidden) = interests+skills = tags, getTags, setTags, searchable, own index

Displaying users in short form

  • portrait
  • fullname + (id)
  • location, language
  • email, homepage, skype name
  • tags
  • ? latest edit : link to latest story/piece/participation ?

Displaying full user info

In basic plone there seems to be page plonesite/author/id that is closest in function for this. We should modify it.

  • portrait
  • fullname + (id)
  • email
  • location
  • skype-address
  • ? latest edit : link to latest story/piece/participation ?
  • etc..

Material

(from ticket #325) Edit Material Properties should have the following fields:

  • Description (textarea) (LRE application profile General.Description - 1.4)
  • Tags (input type=text) (LRE application profile General.Keyword - 1.5)
  • Language (select menu) (LRE application profile General.Language - 1.3)
  • Author (just displayed all the authors, Firstname Lastname)
  • License (just displayed Creative Commons Attribution-NonCommercial?-ShareAlike?? 2.5 License)

Edit Educational Metadata button - after clicking there the form will be expanded and have some nice learning object metadata from LRE application profile:

  • Educational.Learning Resource Type - 5.2 (InAndOutList?)
  • Educational.Intended End User Role - 5.5 (InAndOutList?)
  • Educational.Learning Context - 5.6 (InAndOutList?)
  • Educational.Typical Age Range - 5.7 (from <input type=text> to <input type="text">)

The vocabulary for InAndOutList?'s should come from The EUN Learning Resource Exchange LOM Application Profile, not from IEEE LOM.

Piece

From ticket #324:

Edit Piece Properties should have the following metadata:

  • Description (textarea)
  • Tags (input type=text)
  • Language (select menu)
  • Author (just displayed Firstname Lastname)
  • License (just displayed Creative Commons Attribution-NonCommercial?-ShareAlike? 2.5 License)

The following fields should be made invisible:

  • Contributors
  • Creators
  • Suitable for students

Activity

  • Title
  • description (hidden)
  • body
  • tags (tags, getTags, setTags)

Tool

  • Title
  • description (hidden)
  • body
  • tags (tags, getTags, setTags)

Group

  • Title
  • description (md)
  • tags (tags, getTags, setTags)
  • languages (language_skills, getLanguage_skills, setLanguage_skills)

Project

AddComment?