History: User_Trackers
Source of version: 54
Copy to clipboard
User trackers is a powerful and flexible feature but it's tricky to setup. A profile will help. The profile should have a few common fields (First name, Last name, ICQ, etc) and be setup so that people fill these in at login. Please see doc: ((doc:User tracker)) --This profile requires this fix: -- *--Add "Only one item per user or IP" (oneUserItem) to ((Tracker Handler)) so ((User_Trackers)) can work-- (done for Tiki 5.1) And thus will presumably only work for Tiki 3.2 and up. !!Features {CODE(caption=>YAML,wrap=>1)} preferences: allowRegister: y # Allow users to create new accounts feature_mytiki: y feature_userPreferences: y feature_trackers: y userTracker: y validateUsers: n # This is slowing us down as we build the profile {CODE} !!User tracker definition {CODE(caption=>YAML,wrap=>1)} objects: - type: tracker ref: user_tracker data: name: Users description: Information about users default_status: open show: [ creation_date, modification_date, list_modification_date ] allow: [ creator_modification, one_item_per_user] - type: tracker_field ref: login data: name: login tracker: $user_tracker type: user flags: [ searchable, public, list, mandatory, link ] order: 10 options: 1 - type: tracker_field ref: user_name data: name: Name tracker: $user_tracker type: text_field flags: [ public ] order: 20 - type: tracker_field ref: user_business-name data: name: Business Name tracker: $user_tracker type: text_field flags: [ public ] order: 30 - type: tracker_field ref: user_short-description data: name: Short Description tracker: $user_tracker type: text_field flags: [ public ] order: 40 - type: tracker_field ref: user_long-description data: name: Long Description tracker: $user_tracker type: text_area flags: [ public ] order: 50 - type: tracker_field ref: user_profession data: name: Profession tracker: $user_tracker type: text_area flags: [ public ] order: 60 - type: tracker_field ref: user_products data: name: Products tracker: $user_tracker type: text_area flags: [ public ] order: 70 - type: tracker_field ref: user_services data: name: Services tracker: $user_tracker type: text_area flags: [ public ] order: 80 - type: tracker_field ref: user_bio data: name: Bio tracker: $user_tracker type: text_area flags: [ public ] order: 90 - type: tracker_field ref: user_comments data: name: Comments tracker: $user_tracker type: text_area flags: [ public ] order: 100 - type: tracker_field ref: user_street-address data: name: Street Address tracker: $user_tracker type: text_field flags: [ public ] order: 110 - type: tracker_field ref: user_city data: name: City tracker: $user_tracker type: text_field flags: [ public ] order: 120 - type: tracker_field ref: user_state data: name: State tracker: $user_tracker type: text_field flags: [ public ] order: 130 - type: tracker_field ref: user_zip-code data: name: Zip Code tracker: $user_tracker type: text_field flags: [ public ] order: 140 - type: tracker_field ref: user_country data: name: Country tracker: $user_tracker type: country flags: [ public ] order: 150 - type: tracker_field ref: user_email data: name: Email tracker: $user_tracker type: text_field flags: [ public ] order: 160 - type: tracker_field ref: user_website data: name: Website tracker: $user_tracker type: text_field flags: [ public ] order: 170 - type: tracker_field ref: user_primary-phone data: name: Primary Phone tracker: $user_tracker type: text_field flags: [ public ] order: 180 - type: tracker_field ref: user_secondary-phone data: name: Secondary Phone tracker: $user_tracker type: text_field flags: [ public ] order: 190 - type: tracker_field ref: user_facebook data: name: Facebook page tracker: $user_tracker type: text_field flags: [ searchable, public, list ] order: 200 - type: tracker_field ref: user_skypeid data: name: SkypeID tracker: $user_tracker type: text_field flags: [ public, mandatory ] order: 21 - type: tracker_field ref: user_icq data: name: ICQ tracker: $user_tracker type: text_field flags: [ public ] order: 220 - type: tracker_field ref: user_msn data: name: MSN tracker: $user_tracker type: text_field flags: [ public ] order: 230 - type: tracker_field ref: user_aol data: name: AOL tracker: $user_tracker type: text_field flags: [ public ] order: 240 - type: tracker_field ref: user_yahoo data: name: Yahoo tracker: $user_tracker type: text_field flags: [ public ] order: 250 {CODE} !!Todo *Make sure "Only one item per user or IP" is assigned in tracker !!Adding module This is a box on the side which permits quick access to one's user tracker. {CODE(caption=>YAML)} objects: - type: module data: name: usergroup_tracker position: right order: 1 groups: [ Registered ] {CODE} !!Group This part is an attempt to correspond the Registered group to the newly created user_tracker but it's not working. __fixed in 3.1?__ {CODE(caption=>YAML,wrap=>1)} permissions: Members: description: members of the association include: [ Registered ] user_tracker: $user_tracker #and once this work, we need to tell the system about which field ID to connect to user_tracker_field: $login # On a clean install, the following both should be at "1" {CODE} Later: add registration_fields !!Add post-install instructions This will include: ((User_Trackers_include_wiki_page)) with post-install instructions {CODE(caption=>YAML)} instructions: User_Trackers preferences: enable: [ feature_wiki ] objects: - type: wiki_page ref: User_Trackers_include_wiki_page data: name: User_Trackers description: What needs to be done lang: en content: wikicontent:User_Trackers_include_wiki_page {CODE} !!Todo *Make my profile wiki page with ~np~ {TRACKER(trackerId=>1, showmandatory=>y view=user)} {TRACKER} ~/np~ Give tiki_p_create_tracker_items to Registered so they may use this page, and avoid the need to first need to go to tiki-view_tracker_item.php?view=+user