{"shas":[["92c6feba297bece5cfb269bf983961e602c50183","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Devblocks/Platform/Plugins] Page and controller URIs can now use underscore in addition to alphanumerics (e.g. '?c=controller_name' and /cerb5/controller_name/).","Jeff Standen"],["b7d46bd0a60046fee9aac831ce1320f3001d29a3","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","[Devblocks/Platform] Refactored the strAlphaNum() escape functions.  Instead of creating endless variations of strAlphaNumDash…strAlphaNumUnder, strAlphaNum($str,$also) now takes an '$also' argument which defines a list of acceptable characters (like \"-_.\").  They will be automatically regexp escaped.","Jeff Standen"],["f59e409e2d8503f4e812ef34338d456c88c6e04d","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Custom Fields/Platform/Plugins] [CHD-2362] Implemented a new UI pattern for displaying arbitrary properties and custom fields for any record in a readable and space-efficient way.  Fields can be defined in a preferred order to control how they are rendered.  The renderer knows how to display all custom field types, and built-in fields can provide a type for emulation (e.g. drop-down).  Overrides also give full control of how fields are rendered on records.  The major improvement here is that custom fields are visible at the top of every record rather than hidden in the 'edit' popup.","Jeff Standen"],["99ea57c726472f867bfc65a5332e17d90fb43191","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Mail/Display/Custom Fields] Ticket records with custom fields set now show those values at the top of each record.","Jeff Standen"],["f5623145ebfd70a050be63b90a7d9ce94554a28d","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Tasks/Display/Custom Fields] Task records with custom fields set now show those values at the top of each record.\n\n* [Tasks/Display] The 'due date' is now shown at the top of each task record.\n\n* [Tasks/Worklist/Display] The permalink for task records will now show the friendly name of the task in the URL (e.g. /tasks/display/1-Upgrade_the_database_server).\n\n* [Tasks/Display] Editing a task from the display screen will now properly reload the page.","Jeff Standen"],["a840d275eea8d4972d322c7a62908b2d79ffcdf6","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Devblocks/Markdown] Updated the Markdown library to a slightly more efficient, pared-down version.","Jeff Standen"],["6f73dd3ea5a21e73f818b96a33550fb9800e5970","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","[Devblocks/Plugins/Utilities] The strToPermalink($str) method will now replace apostrophes and quotes with blanks rather than underscores.  This means possessive forms like \"client's\" will now display as \"clients\" which is preferable to \"client_s\".","Jeff Standen"],["5a30e0182d4df928d86a55199e4e9ce05dd60d59","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Devblocks/Performance/Plugins] Refactored Devblocks to bootstrap using the minimum number of required services to start the platform (cache + database + classloader).  Moved service implementations into their own files.  This makes it easier to work on the platform, and it should also speed up PHP compile times on sites that don't use opcode caches like XCache.","Jeff Standen"],["e824bd1e04cf9341a9934699bdc18091b0e428ac","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Call Logging/Custom Fields] Call records with custom fields set now show those values at the top of each record.\n\n* [Call Logging/Display] Editing a call from the full record screen will now properly refresh the page.","Jeff Standen"],["e7833397290b53cf3e473cad704a57f96ffda3d9","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Address Book/Display/Custom Fields] Address records with custom fields set now show those values at the top of each record.\n\n* [Address Book/Display] The address full record will now display an organization link at the top of the page if assigned to one.  Previously you had to click 'edit' to find this information.","Jeff Standen"],["9c414219442173546ab728702b4e53d6783cbaa4","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Address Book/Orgs/Custom Fields] Organization records with custom fields set now show those values at the top of each record.","Jeff Standen"],["e539a86a263c9a88c3ff7f0958184cbfdbe8b88e","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [CRM/Opportunity/Custom Fields] Opportunity records with custom fields set now show those values at the top of each record.","Jeff Standen"],["fcc1f421cb6c4585e5793ec10302c29f66c619d1","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Knowledgebase/Display/Custom Fields] Knowledgebase articles with custom fields set now show those values at the top of each record.","Jeff Standen"],["80c4fe49d32878dbaee0448456a87cedd40a9b69","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Time Tracking/Custom Fields] Time tracking entries with custom fields set now show those values at the top of each record.","Jeff Standen"],["b72abcab55f644c92c4155638b3da96e0ae57125","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Datacenter/Server/Custom Fields] Server records with custom fields set now show those values at the top of each record.\n\n* [Datacenter/Server] When editing a server record it will now automatically refresh the page.","Jeff Standen"],["4188806673ad170d45d59e23559b527f8f773d12","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","* [Datacenter/Domain/Custom Fields] Datacenter domain records with custom fields set now show those values at the top of each record.\n\n* [Datacenter/Domain] When editing a domain record it will now automatically refresh the page.","Jeff Standen"],["197fb4ca521a6d68ee5c9b2570040dbae3dcc9a0","f3e731dfa293c7a83119d8aacfa41b5d2d780be9@webgroupmedia.com","5.5-dev Push (2011072001)","Jeff Standen"]],"ref":"refs/heads/5.5","size":17,"head":"197fb4ca521a6d68ee5c9b2570040dbae3dcc9a0","push_id":37213322}