History: CartoGraf
Preview of version: 165
CartoGraf is an interactive web-based mapping application to enhance learning in history and geography classes in high schools. CartoGraf is mainly based on Maps, Drawings, PluginAppFrame and Trackers. It is a great example of how to use profiles in a general purpose app (Tiki) to make a very specific application.
It will be launched in June 2012.
To get your own copy of CartoGraf
We hope you like it and please do join the community!
Work in Progress...
(Do not use Kaltura wikiplugin as it is not enabled in default install when viewing the profile before apply)
Using:
It will be launched in June 2012.
To get your own copy of CartoGraf
- Download and Install Tiki9 (Use the Daily Build of from SVN until 9.0 is officially released).
- Apply the CartoGraf profile
- Follow the profile instructions
We hope you like it and please do join the community!
Work in Progress...
(Do not use Kaltura wikiplugin as it is not enabled in default install when viewing the profile before apply)
General
Copy to clipboard
instructions: Instructions preferences: feature_sefurl: y allowRegister: y browsertitle: CartoGraf Project tracker_refresh_itemlink_detail: y header_custom_js: wikicontent:CartoGraf_LiveHeaderMap geo_always_load_openlayers: y url_after_validation: Account_Validated feature_jquery_ui_theme: start
Permissions
Copy to clipboard
permissions: Anonymous: allow: - search - view_trackers - tracker_view_attachments Registered: allow: - attach_trackers - create_tracker_items - add_object - remove_object - upload_files
Users
Copy to clipboard
objects: - type: users data: name: $profilerequest:Test User 1 Login Name:$demo$ pass: $profilerequest:Password for User 1:$demo5$ change: $profilerequest:Change password for User 1 after first login? (y/n):$n$ email: $profilerequest:User 1 Email (optional):$ $ groups: [ $profilerequest:Groups User 1 should be assigned (for more groups separate them by comma):$Registered$ ]
Look & Feel
Copy to clipboard
preferences: style: CartoGraf.css feature_fixed_width: n feature_page_title: n feature_sitelogo: y wiki_edit_plugin: n sitelogo_src: styles/CartoGraf/logo.gif
Menus
Copy to clipboard
objects: - type: menu ref: CartoGraf_Top_menu data: name: Top description: A menu containing the base navigation of the site collapse: none items: - name: Home url: ((HomePage)) - name: Partners url: ((Partners)) - type: menu ref: CartoGraf_RightEdge_menu data: name: RightEdge description: collapse: none items: - name: Register url: tiki-register.php - name: Demo url: ((Demo)) - name: Contact url: ((Contact))
Modules
Copy to clipboard
preferences: modseparateanon: y objects: - type: module ref: LiveHeaderMap_module data: position: top order: 0 name: LiveHeaderMap groups: [ Anonymous, Registered ] params: nopage: Map custom: <div id="TheLiveHeaderMap" style="height:188px"></div> - type: module ref: LocationSearch_module data: position: top order: 1 name: map_search_location groups: [ Registered ] params: legacy_mode: search_box show_search_button: y show_go_button: n show_edit_button: n default_button: search page: Map nobox: y style: "float: right; margin-right: 350px" #most of them ignored as the module is not standard - type: module ref: TopMenu_module data: position: top order: 1 name: menu groups: [ Anonymous, Registered ] params: id: $CartoGraf_Top_menu type:horiz css:y menu_id:TopMenu translate:y nobox:y decorations:n notitle:y style: "float: left; margin-left: 350px" - type: module ref: RightEdgeMenu_module data: position: right order: 1 name: menu groups: [ Anonymous ] params: id: $CartoGraf_RightEdge_menu menu_id: RightEdgeMenu nobox: y nopage: Map
Features
Copy to clipboard
preferences: feature_wiki: y feature_articles: n feature_mytiki: n feature_trackers: y geo_tilesets: [openstreetmap, google_physical, google_street, google_satellite, blank] geo_google_streetview: y geo_google_streetview_overlay: y wikiplugin_appframe: y wikiplugin_list: y feature_search: y feature_wiki_argvariable: y trackerfield_geographicfeature: y fgal_upload_from_source: y
Drawing
Hiding of Drawing buttons requires Tiki10Copy to clipboard
preferences: feature_draw: y feature_draw_hide_buttons: ellipse_cx, tool_ellipse_cy, tool_ellipse_rx, tool_ellipse_ry, rect_width_tool, rect_height_tool, cornerRadiusLabel, tool_eyedropper, view_grid, tool_fill, tool_angle, tool_blur, tool_position, xy_panel, marker_panel, tool_stroke, tool_reorient, rulers, sidepanels, tool_path, tool_source, tool_zoom, tool_eyedropper, view_grid, tool_wireframe, line_panel
Trackers
Copy to clipboard
objects: - type: tracker ref: pointsOfInterest data: name: Points of interest allow: [creator_modification, creator_deletion] show: list_modification_date - type: tracker_field ref: poiName data: name: Name type: text_field tracker: $pointsOfInterest flags: [ mandatory, list, title, link, searchable ] - type: tracker_field ref: poiIcon data: name: Icon type: icon tracker: $pointsOfInterest flags: [ list ] options: "$profileobject:iconContainer$" - type: tracker_field ref: poiMap data: name: Map type: item_link options: "$profileobject:maps$,$profileobject:mapName$,0,,opc,,,,0,0,exact,one,0,$profileobject:mapShareCode$" tracker: $pointsOfInterest flags: [ mandatory, list, title, searchable ] permname: map visible: admin_only - type: tracker_field ref: poiLocation data: name: Location type: map options: "1" tracker: $pointsOfInterest flags: [ mandatory ] - type: tracker_field ref: poiFinder data: name: Finder type: user options: "1" tracker: $pointsOfInterest flags: [ mandatory, list ] permname: finder visible: admin_only - type: tracker_field ref: poiDescription data: name: Description type: text_area options: "" tracker: $pointsOfInterest flags: [ ] - type: tracker_field ref: poiImage data: name: Image type: files options: "$profileobject:imageContainer$,image/*,1,1" tracker: $pointsOfInterest flags: [ ]
Zones Tracker
Copy to clipboard
objects: - type: tracker ref: zones data: name: Zones allow: [creator_modification, creator_deletion] show: list_modification_date - type: tracker_field ref: zoneName data: name: Name type: text_field tracker: $zones flags: [ list, title, link, searchable ] - type: tracker_field ref: zoneMap data: name: Map type: item_link options: "$profileobject:maps$,$profileobject:mapName$,0,,opc,,,,0,0,exact,one,0,$profileobject:mapShareCode$" tracker: $zones flags: [ mandatory, list, title, searchable ] permname: map - type: tracker_field ref: zoneFeature data: name: Zone type: geographic_feature options: "" tracker: $zones flags: [ mandatory ] - type: tracker_field ref: zoneFinder data: name: Finder type: user options: "1" tracker: $zones flags: [ mandatory, list ] permname: finder - type: tracker_field ref: zoneDescription data: name: Description type: text_area options: "" tracker: $zones flags: [ ] - type: tracker_field ref: zoneImage data: name: Image type: files options: "$profileobject:imageContainer$,image/*,1,1" tracker: $zones flags: [ ]
Maps Tracker
Copy to clipboard
objects: - type: tracker ref: maps data: name: Maps allow: [creator_modification, creator_deletion] show: list_modification_date - type: tracker_field ref: mapName data: name: Name type: text_field tracker: $maps flags: [ mandatory, list, title, link, searchable ] - type: tracker_field ref: mapDescription data: name: Description type: text_area tracker: $maps flags: [ searchable ] - type: tracker_field ref: mapBaseLocation data: name: Base Location type: map tracker: $maps flags: [ mandatory ] - type: tracker_field ref: mapOwner data: name: Owner type: user options: "1" tracker: $maps flags: [ mandatory, list ] permname: owner - type: tracker_field ref: mapShareCode data: name: Share Code type: text_field tracker: $maps flags: [ list ] options: "0,10,,,15 permname: shareCode
Legend
Copy to clipboard
objects: - type: tracker ref: legend data: name: Legend allow: [creator_modification, creator_deletion] show: list_modification_date - type: tracker_field ref: legendIcon data: name: Icon type: icon tracker: $legend flags: [ mandatory, list ] options: "$profileobject:iconContainer$" - type: tracker_field ref: legendText data: name: Text type: text_field tracker: $legend flags: [ mandatory, list, title, link, searchable ] - type: tracker_field ref: legendMap data: name: Map type: item_link options: "$profileobject:maps$,$profileobject:mapName$,0,,opc,,,,0,0,exact,one,0,$profileobject:mapShareCode$" tracker: $legend flags: [ mandatory, list, title, searchable ] permname: map visible: admin_only - type: tracker_field ref: legendFinder data: name: Finder type: user options: "1" tracker: $legend flags: [ mandatory, list ] permname: finder visible: admin_only
File Galleries
Copy to clipboard
objects: - type: file_gallery ref: iconContainer data: parent: 1 name: Icons description: Icons available for selection in the map. owner: admin archives: 5 flags: [ public, visible ] column: [ icon, name, created, creator, files ] init_files: - http://profiles.tiki.org/pics/icons/plugin.png - type: file_gallery ref: imageContainer data: parent: 1 name: Image Uploads description: Images uploaded by students owner: admin archives: -1 flags: [ public, visible ] column: [ icon, name, created, creator, files ]
Wiki Pages
Copy to clipboard
objects: - type: wiki_page ref: home_page data: name: HomePage content: wikicontent:CartoGraf_HomePage - type: wiki_page ref: instructions_page data: name: Instructions description: Profile Instructions lang: en content: wikicontent:CartoGraf_Instructions - type: wiki_page ref: account_validated_page data: name: Account_Validated description: Account Validated lang: en content: wikicontent:CartoGraf_NewAccountValidationIncludedPage - type: wiki_page ref: demo_page data: name: Demo lang: en content: wikicontent:CartoGraf_Demo - type: wiki_page ref: partners_page data: name: Partners lang: en content: wikicontent:CartoGraf_Partners - type: wiki_page ref: contact_page data: name: Contact lang: en content: wikicontent:CartoGraf_Contact
Application Frame Pages
Copy to clipboard
objects: - type: wiki_page ref: map_page data: name: Map content: wikicontent:CartoGraf_Map - type: wiki_page ref: mapcanvas_share_page data: name: MapCanvasShare content: wikicontent:CartoGraf_MapCanvasShare - type: wiki_page ref: mapcanvas_solo_page data: name: MapCanvasSolo content: wikicontent:CartoGraf_MapCanvasSolo - type: wiki_page ref: mapselector_page data: name: MapSelector content: wikicontent:CartoGraf_MapSelector - type: wiki_page ref: mapinfo_page data: name: MapInfo content: wikicontent:CartoGraf_MapInfo
Using:
- CartoGraf_HomePage
- CartoGraf_LiveHeaderMap
- CartoGraf_Instructions
- CartoGraf_Map
- CartoGraf_MapCanvasShare
- CartoGraf_MapCanvasSolo
- CartoGraf_MapSelector
- CartoGraf_MapInfo
Developer notes
- When you apply the profile, you may see "Preference set: geo_tilesets=Array" in the response. This is a cosmetic error. The preference is set correctly.
Copy to clipboard
php installer/shell.php install;php lib/search/shell.php rebuild; php lib/profilelib/shell.php install CartoGraf
Questions
- Map title & description: Where should they go?
- Where should layer selector go?
- Is there any point for the "Editable" and "Markers" checkboxes currently in tools?
Todos
Maps
- Minify JavaScript not working with 41807
- Permit deletion of
-
own POIsdone -
own zonesdone - own legends
-
- StreetView: nicer error message when not found
- Texte on POI? (even without pop-up?)
- Improve UI of POI (to be less "system" and more "application")
- Search: after picking result from short list, list should disappear and perhaps maps should zoom in
- Meta data about maps: No current way to edit after creation
Drawing
-
pop-up too smallfixed - r41807: Registered users don't have draw on image button
-
Stay in place after draw (Robert)- IE9 and Firefox are superb. Chrome needs an extra refresh to show background pic
- Drawing inteface is cluttered (too big, too many scrollbars)
- Drawing: canvas seems too big
- Why is opacity disappearing?
Trunk
- Proper testing of hiding buttons, and
add list to profiledone- After: apply for a backport to 9.x
General
- Get it working on http://demo.tiki.org/cartograf/
- Weird issues, suspected issue with Lucene "Search index could not be updated. The site is misconfigured. Contact an administrator."
- Demo should flush daily
- Pass sender email, password, etc. in the cron job
- Perhaps we could do two runs
- 1st run is general profile (like everyone else)
- 2nd run is profile with things specific to the demo (and hard coding instructions to avoid having any manual config)
- Make waiting with a better UI (ex.: blank page with spinner instead of seeing Tiki application stuff)
Community building
- A started profile with realistic course data
- More videos
- More docs
- A microsite would be nice but likely too much work for this phase
Limitations
-
We would have liked to add an Overview Map, but it is not working well. Next step would be to try again in OpenLayers 2.12 when it comes out.It works now!