History of GmapPackage

!!Goal
The goal of this project is to create a package that lets you edit a [http://maps.google.com|Google Map] like a wiki, with some Flickr integration thrown in for spice.

A proof of concept is working at [http://www.wjamesphoto.com/bw/gmap/index.php?gmap_id=1|this link]...although if you find its not working, I am probably actively testing code changes. If so, you can find me on the bitweaver channel. But I will try to keep it working between changes. -Will

This will take the best features of sites like [http://www.wikyblog.com|WikyBlog-Maps], [http://www.pixeldevelopment.com/virtualgoogleearth.asp|VirtualGoogleEarth], and [http://geobloggers.com|GeoBloggers] and merge them in to a package for hosting your own wikimap rather than having to use the existing services which are limited to their hosting, their feature implementation, and their look and feel.

A Road Map for the package is well underway. You can find it below. The engine makes extensive use of AJAX.

If you want to join in I'm not a professional programmer, but have faith, this is going to be sweet. If you do want to help out, well I guess you can email me wjames5 -at - nyc.rr.com or find me on irc #bitweaver.

!!Code
You can get the latest stage of development by checking out ___bit_map__ from CVS HEAD branch.

!!Google Map Hacks to Include
*[http://xmaps.busmonster.com/documentation.html|XMap Library]
*[http://groups-beta.google.com/group/Google-Maps-API/search?hl=en&group=Google-Maps-API&q=GxMarker&qt_g=1&searchnow=Search+this+group|GxMarkers] Tools
*[http://gmaps.tommangan.us/tlabel.html|T-Labels]
*[http://www.pixeldevelopment.com/pdmarker.asp|PdMarker]
*Custom Map Tiles
*Geocoding

!!References
*[http://mapki.com/index.php?title=Knowledge_Base#Developer_Tools|Mapki Developer Tools]
*[http://www.google.com/apis/maps/documentation/|Official Google Maps API]
*[http://groups-beta.google.com/group/Google-Maps-API|Google Maps API News Group on Google Groups]
*[http://mapki.com]
*[http://www.flickr.com/services/api/|Flickr API]
*[http://www.flickr.com/services/api/key.gne|Flickr API Key Application]

!!Some Other Useful Stuff
!!!Bitweaver Stuff
*[http://81.138.11.136:8080/bitweaverdocs/ric_NEWS.html|Bitweaver Class Tree]
*[http://www.bitweaver.org/wiki/TP-Structures|List of BW tables and structures]
*[http://81.138.11.136:8080/bitweaverdocs//////__filesource/fsource_kernel__kernelBitDb.php.html#a498|Built-in Database Query functions available from bw kernel]
!!!Programming Stuff
*[http://digir.sourceforge.net/nightly/DiGIRprov/lib/adodb/docs-datadict.htm|ADODB Data Dictionary for PHP]
*[http://www.howtocreate.co.uk/tutorials/index.php?tut=0&part=25|Javascript and Navigating the Dom Tree]
*[http://smarty.php.net/manual/en/language.escaping.php|Using Javascript with Smarty] and elegant solution.
*[http://en.wikipedia.org/wiki/Join_%28SQL%29|DB JOIN FAQ on Wikipedia]
*[http://rafb.net/paste/|Code Paste Board]
*[http://sunsite.mff.cuni.cz/MIRRORS/ftp.mysql.com/doc/en/CREATE_INDEX.html|Creating Indeces for your database tables] as declaired in schema_inc.php
*[http://www.bitweaver.org/wiki/ThemeTutorial#sourcecode|Modifying Smarty for Debugging HTML]
*[http://www.cs.tut.fi/%7Ejkorpela/forms/choices.html|Guide to HTML Forms]

!!Concerns
MapType Button Styles are being changed by current configuration. Could be caused by an override by bitweaver styles.

----
!!Loose Bits
These are loose ends created that will eventually need to hook up with other parts of the package:

!!!Permission variables referenced but not created yet:
all permissions are currently resolved

!!!Templates referenced but not created yet:
all templates are currently accounted for, and at least place holders exist

----
!!Outline of Functions for map part storage and retrieval
(this is pretty close)

!!!get map
- get map by id
- get map data (lat/lon/maptype etc)
- get sets ids
- get related style ids (get rid of duplicates)
- get icon and marker styles data
- get sets data

- render map


!!!update/save map
- get map by id
- save map values and data
- get map data
- update map


!!!get marker/maptype/poly
- get object by id
- get object data (lat/lon/label)
- get sets ids (list from set table)


!!!update markers/maptypes/polys
- get object by id
- save object values and data
- get object data
- update map object
- update sets data via object id


!!!get styles
- get style by id
- get style data (color/weight/type etc)


!!!update styles
- get style by id
- save style values and data


!!!get sets
- get sets ids
- get related style ids (get rid of duplicates)
- get icon and marker styles data
- get sets data

!!!update sets
- get sets ids
- save object values and data

----


!!How to set up your own custom package
This is stuff I have learned about creating packages for bitweaver while creating this GMap package.

!!!Download the "Sample Package" from this site

!!!Setting up your database tables
Database (DB) Tables are defined in "schema_inc.php"
This file goes in your __admin__ folder. Each package has one of these.

Some conventions to follow when building these:
*use single quotes on DB table scheme defaults
*underscore between each word in table names

!!!Including tpl files in the page header
The bitweaver Kernel is set up to automatically include header information from all packages. Any information you want included in the HTML HEAD you put in a file named "header_inc.tpl" which goes in your package's _templates_ folder.

To create conditional header includes simply nest tpl files in the header_inc.php file. You can do this by using the this include code:

{CODE()}{ include file="bitpackage:yourpackagename/subheader.tpl"}
{CODE}
Page History
Date/CommentUserIPVersion
25 Nov 2008 (20:19 UTC)
bug fix updates
Will69.203.72.161167
Current • Source
Will69.203.72.161166
View • Compare • Difference • Source
Will69.203.72.161165
View • Compare • Difference • Source
Will69.203.72.161164
View • Compare • Difference • Source
Will69.203.72.161163
View • Compare • Difference • Source
Will69.203.72.161162
View • Compare • Difference • Source
Will69.203.72.161161
View • Compare • Difference • Source
Will69.203.72.161160
View • Compare • Difference • Source
Will69.203.72.161159
View • Compare • Difference • Source
Will69.203.72.161158
View • Compare • Difference • Source
Will69.203.72.161157
View • Compare • Difference • Source
Will69.203.72.161156
View • Compare • Difference • Source
Will69.203.72.161155
View • Compare • Difference • Source
Will69.203.72.161154
View • Compare • Difference • Source
Will69.203.72.161153
View • Compare • Difference • Source
Will69.203.72.161152
View • Compare • Difference • Source
Will69.203.72.161151
View • Compare • Difference • Source
Will69.203.72.161150
View • Compare • Difference • Source
Will69.203.72.161149
View • Compare • Difference • Source
Will69.203.72.161148
View • Compare • Difference • Source
Will206.83.76.15147
View • Compare • Difference • Source
Will66.251.17.162146
View • Compare • Difference • Source
Will206.83.76.15145
View • Compare • Difference • Source
Will66.251.17.162144
View • Compare • Difference • Source
Will66.251.17.162143
View • Compare • Difference • Source
Will206.83.76.15142
View • Compare • Difference • Source