- performance gains in 2.0.7
- some DSs simply take a while, abstractions, ORMS. We can mitigate
- ?profile: query count, time. Check profile as often as debug!
- keep fields to a minimum in DSs. use required url params. danger of filters fallback
- 2.0.7 option to disable entry counts
- mysql query caching in config
- memcached?
- DS XML caching (fragment) extension
- dynamic DS XML caching (hack)
- page output caching (CacheLite), Digg effect. Not when fragments need to be dynamic.
- Series of screencasts e.g. http://subsonicproject.com/docs/Submit_Patch?
- what git is, what Github is
- installing git on Windows and Mac OS
- pulling Symphony rather than downloading a Zip
- Gity client!
- contributing, forking, branches, pull requests
- extensions, pulling into projects, updating, contributing
- RSS specification http://cyber.law.harvard.edu/rss/rss.html
- http://www.ibm.com/developerworks/xml/library/w-rss.html
- HTML encoded output, either in DS or XSLT template
- additional elements/namespaces (Dublin Core, iTunes, Atom)
- pages, DS and Events are an API
- use copy-of and "XML" page type to create consumable XML page
- same for Event response
- convert to JSON with a single template
- benefits (usability and performance)
- adding pagination element from a DS
- using the pagination XSLT utility
- next/previous (http://symphony-cms.com/forum/discussions/25042/#position-3)
- the Date field, accepts any PHP string e.g. "today", pre-populating
- filter types (BETWEEN, LATER THAN etc)
- default XML format in Symphony
- formatting using date-time.xsl
- sorting XML using dates (strip all but numbers inside xsl:sort/)
- subtle and not-so-subtle differences
- matching vs. naming
- mode
- priority
- page XSLT approach, master applies "data" and pages match with modes for page regions
- a more concise http://www.designprojectx.com/tutorials/master-detail-views-in-symphony/
- view modes http://pastie.org/414188
- simple example (the "dot" template on IBM DeveloperWorks is excellent)
- more complex, replicating PHP's "for" loop http://nick-dunn.co.uk/article/an-alternative-for-loop-using-xslt-and-template-ca/
- out of the box feature with Pages
- URL Parameters (/foo = $foo) vs GET parameters (?foo = $url-foo)
- strategy for URL Parameters for pages that filter AND paginate. Use GET for filters on permalinks...
- adding canonical meta element to when filtering/paging
- simple form POST example
- creating and editing existing entries
- making sense of the XML response
- pre-populating form values on post-back
- Allow Multiple
- http://github.com/nickdunn/form-controls
- perhaps the "Using Events" article rewritten using Form Controls
- overview of Dynamic DS
- overview of Twitter API methods, e.g. /:user/timeline.xml
- build Dynamic DS, attach to a page
- XSLT to iterate
- community utilities: Twitter date formatter, Twitterlinkahashify
- show "favourite artists" list
- show "last played" (http://nick-dunn.co.uk/article/show-latest-lastfm-plays-on-your-symphony-site/)
- what is it, when to use it
- not fully supported with LibXML, list of supported functions?
- importing EXSLT namespaces, excluding prefixes
- common examples: tokenize, node-set, date-difference
- Airlock workflow tutorial
- local web-server, files through SVN
- local network web-server for DB and internal review
- using Database Synchroniser extension
- deployments using SVN and DB_sync
- Learning XSLT http://www.amazon.com/dp/0596003277/
- XSLT Cookbook http://www.amazon.com/dp/0596009747/
- XSLT 1.0 Pocket Reference http://www.amazon.com/dp/0596100086/
- define data model, validation schema (Section/Fields). Deliverable: Entity Diagram extension
- define URL model (Pages). Deliverable: Sitemap extension
- rapid prototyping using XSLT and a CSS framework (Blueprint/960). Deliverable: interactive prototype
- tweak backend UI for usability (drag/drop ordering, table columns, main/secondary columns). Deliverable: a usable CMS UI