- Track JIT 1.18
- #1695 - Set Email Gateways to be lowercase
- Add curl_error to the Gateway class, helps debug timeouts better!
- Fix potential authenticated SQL injection attack on the Authors page
Providers is a concept that was introduced with Symphony 2.3 which allows extensions to natively provide new Data Source types. This allowed for a more seamless experience for users and opened up a world of possibilities for extension developers. The upcoming Symphony 2.3.1 release brings Providers to Events as well, allowing developers to provide new event types selectable from the native Event editor.
For users, the benefits are more flexible and powerful DataSources and Events that can start to do things that previously required custom code. Extensions such as Cacheable DataSource, Union DataSource and Remote DataSource all bring powerful functionality to the fingertips of every Symphony ninja (and those in training). The addition of Events means that we can now create extensions that abstract common API's (such as Github) to read and write information without any knowledge of the underlying API.
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="UTF-8"> | |
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> | |
<!-- Core styles --> | |
<link rel="stylesheet" type="text/css" media="screen" href="http://example.com/symphony/assets/css/symphony.css"> | |
<link rel="stylesheet" type="text/css" media="screen" href="http://example.com/symphony/assets/css/symphony.legacy.css"> | |
<link rel="stylesheet" type="text/css" media="screen" href="http://example.com/symphony/assets/css/symphony.grids.css"> |
The XML Importer extension is widely used to help users import XML content into their Symphony sections. Developers enter a URL that returns XML and then write XPath to map values to their corresponding fields, but sometimes this results in a field not receiving a value, an incorrect value, or the XML Importer failing to import anything.
While not always the case, sometimes the XPath could be wrong, namespaces weren't added or you've discovered a bug (log it, but it can also be because a Field doesn't know how take the value you've given it and save it. This short article will explain how you can ensure that your field is compatible with the XML Importer, thanks to the prepareImportValue
function.
Fields in Symphony have two existing function's, checkPostFieldData
and [processRawFieldData
]
<?php | |
require_once EXTENSIONS . '/xmlimporter/extension.driver.php'; | |
require_once EXTENSIONS . '/google_calendar_api/lib/class.json_to_xml.php'; | |
require_once TOOLKIT . '/class.gateway.php'; | |
Class eventgoogle_calendar_import extends Event { | |
const ROOTELEMENT = 'google-calendar-import'; | |
const GOOGLE_ENDPOINT = 'https://www.googleapis.com/calendar/v3/calendars/%s/events?fields=%s&key=%s'; |
<?php | |
/** | |
* @package toolkit | |
*/ | |
/** | |
* URL rewriter for use in conjunction with the PHP 5.4 internal HTTP server and `rounter.php`. | |
*/ | |
namespace Rewrite; |
Symphony 2.3 features a significantly improved UI over it's predecessors due to the hard work of the UX Working Group and contributions by other dedicated members of the Symphony community. In making these changes, there's been a number of minor updates to the HTML, CSS and JS throughout the backend. The purpose of this guide is to help document some of these new features, and outline differences that extension developers can implement while updating their extension for 2.3. Eventually a dedicated style guide for Symphony will be available, but this will fill the void for the meantime.
-
Something about Navigation
-
Something about Breadcrumbs
The Symphony 2.3 release opens up a whole new range of possibilities for developers to create awesome sites and applications. We've cleaned up a lot of the codebase and we are always looking at ways to make it leaner and more efficient. Because of this reason, we've decided that the Symphony 2.3 line will be the final releases that we test against PHP5.2.
We feel that with the recent release of PHP 5.4, now is a good time to end our relationship and look forward to the new possibilities that developing with a PHP 5.3+ codebase brings.
While looking for a more manageable way to maintain my Mustache templates, I came across the icanhaz, which promotes putting your templates in your DOM using:
<script type='text/html' id='your-template>
// Template in here
</script>
Being a bit of a performance nut, I was nervous about putting my templates into the DOM like this for a couple of reasons: