History: CartoGraf
Preview of version: 561
- «
- »
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. This is using Tiki as Framework.
Development notice
For a while this profile will be based on Tiki trunk in order to take advantage of the new features coming in Tiki 11, specifically for File Galleries and Draw.
If you need to apply this profile as it was before using a released version of Tiki 10.x you can use the previous version of this page here
The links and instructions below will be updated once Tiki 11 has branched.
If you need to apply this profile as it was before using a released version of Tiki 10.x you can use the previous version of this page here
The links and instructions below will be updated once Tiki 11 has branched.
You can play with the demo at:
- http://demo.tiki.org/cartograf-10x-en/
- http://demo.tiki.org/cartograf-10x-fr/
- http://demo.tiki.org/cartograf-11x-en/
- http://demo.tiki.org/cartograf-11x-fr/
To get your own copy of CartoGraf
- You need to get branches/10x (Tiki10.x from SVN) for the latest and greatest goodies :-) (Use the Daily Build of Tiki from SVN)
- Activate .htaccess by renaming _htaccess (even better is to link from .htaccess to _htaccess) Note: rewrite rules are essential for this profile
- Select and apply the CartoGraf profile from tiki-admin.php?page=profiles
- Follow the profile Setup instructions
We hope you like it and please do join the community!
To see a demo video, please visit: http://tv.tiki.org/CartoGraf
Theme
- Theme code is temporarily managed on a semi-private SVN. We will change later when we decide where it should live. (ask Jonny or Marc for access in the mean time)
Pages included by this profile
Using:- CartoGraf_HomePage
-
CartoGraf_CustomCSS- not used in the latest version - CartoGraf_Footer
- CartoGraf_Setup
- CartoGraf_Help
-
CartoGraf_MyMapsNo longer used - CartoGraf_Map
- CartoGraf_MapCanvasShare
- CartoGraf_MapCanvasSolo
- CartoGraf_MapSelector
- CartoGraf_NewAccountValidationIncludedPage
- CartoGraf_languages
General Preferences
Copy to clipboard
instructions: Setup preferences: feature_search_fulltext: n feature_search: y feature_sefurl: y allowRegister: y browsertitle: CartoGraf Project tracker_refresh_itemlink_detail: y geo_always_load_openlayers: y url_after_validation: Account_Validated feature_jquery_ui_theme: start feature_left_column: n tracker_clone_item: y toolbar_trackers: bold,list,numlist,wikiplugin_youtube fgal_tracker_existing_search: y fgal_elfinder_feature: y feature_userfiles: y feature_use_fgal_for_user_files: y quota_per_fgal: y fgal_quota_default: 10 quota_show: bar_and_text fgal_list_author: y fgal_list_created: y fgal_list_files: y fgal_list_lastModif: o fgal_list_size: o fgal_sort_mode: created_desc fgal_upload_from_source: y layout_add_body_group_class: y useGroupHome: y feature_wiki_ext_icon: n feature_syntax_highlighter: n sitelogo_title: CartoGraf sitelogo_alt: CartoGraf logo
Temporary
Copy to clipboard
preferences: validateUsers: n feature_antibot: n log_tpl: y
Limit username pattern
CartoGraf relies heavily on Unified Search (Zend_Search_Lucene). Because of this, a username jean-marc won't work (but jean_marc is OK). Since hypens are often used in emails, you can't use CartoGraf with the pref "Use email as username" (login_is_email). Space and quote should also not be permitted.Copy to clipboard
preferences: username_pattern: /^[_a-zA-Z0-9]*$/ login_is_email: n
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 - view_file_gallery - userfiles
Look & Feel
Copy to clipboard
preferences: style: CartoGraf.css feature_fixed_width: n jquery_ui_selectmenu: y 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: Help url: ((Help)) - name: Setup url: ((Setup)) permissions: [ admin ] - 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: nobox: y nopage: Map custom: <div id="TheLiveHeaderMap" style="height:188px"></div> - type: module ref: Footer_module data: position: bottom order: 0 name: Footer groups: [ Anonymous, Registered ] params: nobox: y custom: "{if $prefs.language eq 'fr'}{wikiplugin _name='include' page='Footer' start='-FR-START-' stop='-FR-END-'}{/wikiplugin}{else}{wikiplugin _name='include' page='Footer' start='-EN-START-' stop='-EN-END-'}{/wikiplugin}{/if}" - type: module ref: LocationSearch_module data: position: top order: 49 #ensure the map location search is assigned as last module 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: 15px" #most of the params ignored as the module is not standard and does have no module div rendered but just the form tag (TODO: fix in Tiki) - 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: [mapquest_street, mapquest_aerial, google_street, google_satellite, google_physical, google_hybrid, 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
Copy to clipboard
preferences: feature_draw: y feature_draw_separate_base_image: 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_angle, tool_blur, tool_position, xy_panel, marker_panel, tool_reorient, rulers, tool_source, tool_zoom, tool_eyedropper, view_grid, tool_wireframe, line_panel, main_button
Trackers
Points of interest
Copy to clipboard
objects: - type: tracker ref: pointsOfInterest data: name: Points of interest allow: [creator_modification, creator_deletion] show: list_modification_date section_format: tab admin_only_view: y - type: tracker_option data: tracker: $pointsOfInterest name: popup_fields value: "$profileobject:poiImage$,$profileobject:poiDescription$,$profileobject:poiFinder$" - type: tracker_field ref: poiName data: order: 10 name: Name type: text_field tracker: $pointsOfInterest flags: [ mandatory, list, title, link, searchable ] - type: tracker_field ref: poiDescription data: order: 20 name: Description type: text_area options: "1,,12" tracker: $pointsOfInterest flags: [ ] - type: tracker_field ref: poiIcon data: order: 30 name: Icon type: icon tracker: $pointsOfInterest flags: [ list ] options: "$profileobject:iconContainer$" - type: tracker_field ref: poiCoordinates data: order: 40 name: Coordinates type: header tracker: $pointsOfInterest - type: tracker_field ref: poiLocation data: order: 50 name: Location type: map options: "1" tracker: $pointsOfInterest flags: [ mandatory ] - type: tracker_field ref: poiAttachments data: order: 60 name: Attachments type: header tracker: $pointsOfInterest - type: tracker_field ref: poiImage data: order: 70 name: Image type: files options: "$profileobject:imageContainer$,image/*,1,1,,,1,n,0" tracker: $pointsOfInterest flags: [ ] - type: tracker_field ref: poiDetails data: order: 80 name: Details type: header tracker: $pointsOfInterest - type: tracker_field ref: poiMap data: order: 90 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: immutable - type: tracker_field ref: poiFinder data: order: 100 name: Finder type: user options: "1" tracker: $pointsOfInterest flags: [ mandatory, list ] permname: finder visible: immutable
Zones
This is both for polygons and pathsCopy to clipboard
objects: - type: tracker ref: zones data: name: Zones allow: [creator_modification, creator_deletion] show: list_modification_date section_format: tab admin_only_view: y - type: tracker_option data: tracker: $zones name: popup_fields value: "$profileobject:zoneImage$,$profileobject:zoneDescription$,$profileobject:zoneFinder$" - type: tracker_field ref: zoneName data: order: 10 name: Name type: text_field tracker: $zones flags: [ list, title, link, searchable ] - type: tracker_field ref: zoneDescription data: order: 20 name: Description type: text_area options: "1,,12" tracker: $zones flags: [ ] - type: tracker_field ref: zoneAttachments data: order: 30 name: Attachments type: header tracker: $zones - type: tracker_field ref: zoneImage data: order: 40 name: Image type: files options: "$profileobject:imageContainer$,image/*,1,1,,,1,n,0" tracker: $zones flags: [ ] - type: tracker_field ref: zoneDetails data: order: 50 name: Details type: header tracker: $zones - type: tracker_field ref: zoneMap data: order: 60 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 visible: immutable - type: tracker_field ref: zoneFinder data: order: 70 name: Finder type: user options: "1" tracker: $zones flags: [ mandatory, list ] permname: finder visible: immutable - type: tracker_field ref: zoneFeature data: order: 80 name: Zone type: geographic_feature options: "" tracker: $zones flags: [ mandatory ]
Maps
Copy to clipboard
objects: - type: tracker ref: maps data: name: Maps allow: [creator_modification, creator_deletion] show: list_modification_date section_format: tab admin_only_view: y - type: tracker_option data: tracker: $maps name: popup_fields value: "$profileobject:mapDescription$" - type: tracker_field ref: mapName data: name: Name type: text_field tracker: $maps order: 10 flags: [ mandatory, list, title, link, searchable ] - type: tracker_field ref: mapDescription data: name: Instructions type: text_area options: "1,,15" tracker: $maps order: 20 flags: [ searchable ] - type: tracker_field ref: mapShareCode data: name: Share Code type: text_field tracker: $maps flags: [ list ] options: "0,10,,,15 order: 30 permname: shareCode validation: regex validation_param: \\w* validation_message: Only letters and numbers are allowed in share codes - type: tracker_field ref: mapDetailsHeader data: name: Change Base location type: header tracker: $maps order: 40 - type: tracker_field ref: mapBaseLocation data: name: Base Location type: map tracker: $maps order: 50 flags: [ mandatory ] - type: tracker_field ref: mapOwner data: name: Owner type: user options: "1" tracker: $maps order: 60 flags: [ mandatory, list ] permname: owner visible: immutable
Legends
Copy to clipboard
objects: - type: tracker ref: legend data: name: Legend allow: [creator_modification, creator_deletion] show: list_modification_date admin_only_view: y - type: tracker_field ref: legendIcon data: name: Icon type: icon tracker: $legend flags: [ mandatory, list ] order: 10 options: "$profileobject:iconContainer$" - type: tracker_field ref: legendText data: name: Text type: text_field tracker: $legend order: 20 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 order: 30 visible: immutable - type: tracker_field ref: legendFinder data: name: Finder type: user options: "1" tracker: $legend order: 40 flags: [ mandatory, list ] permname: finder visible: immutable
File Galleries
User files needs to be added somewhereCopy 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: [] init_files: - http://profiles.tiki.org/pics/icons/plugin.png - type: file_gallery ref: imageBank data: parent: 1 name: Image Bank description: Images uploaded by site admins, for use by teachers and students owner: admin archives: -1 flags: [visible]
Wiki Pages
Copy to clipboard
objects: - type: wiki_page ref: home_page data: name: HomePage content: wikicontent:CartoGraf_HomePage - type: wiki_page ref: cartograf_footer data: name: Footer content: wikicontent:CartoGraf_Footer - type: wiki_page ref: cartograf_setup data: name: Setup description: Post-Profile Setup Instructions lang: en content: wikicontent:CartoGraf_Setup - type: wiki_page ref: cartograf_help data: name: Help description: Help lang: en content: wikicontent:CartoGraf_Help - 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