Commit Graph

521 Commits

Author SHA1 Message Date
Ingo Schommer
0d9b383631 API Removed legacy form fields (fixes #6099) 2017-05-09 11:16:41 +12:00
Ingo Schommer
20e57e9dec Doc dateformats with calendar year
https://github.com/silverstripe/silverstripe-framework/issues/3749
http://stackoverflow.com/questions/1978051/zend-datetostring-outputs-the-wrong-year-bug-in-my-code-or-zend-date
https://en.wikipedia.org/wiki/ISO_week_date#Disadvantages
2017-05-08 22:08:14 +12:00
Robbie Averill
f2b21fb828 DOCS Fix broken markdown rendering in 03_Template_debugging.md 2017-05-08 17:40:02 +12:00
Sam Minnee
4c772c80c3 FIX: Show detailed errors on CLI for live environments
API: Add HTTPOutputHandler::setCLIFormatter

Fixes https://github.com/silverstripe/silverstripe-framework/issues/6835

This provides detailed errors (but not warnings or notices) in CLI calls
on live environments.

It does this by adding a 2nd argument to our output handler,
CliFormatter. This formatter will be used when Director::is_cli() is
true.
2017-05-01 15:28:48 +12:00
Chris Joe
430c7ad79a Merge pull request #6824 from micmania1/patch-13
DOCS Corrected logger documentation
2017-04-21 15:18:22 +12:00
Michael Strong
484e15807c DOCS Corrected logger documentation 2017-04-21 13:15:14 +12:00
Michael Strong
649dad526b DOCS Fixed namespace for factory 2017-04-21 10:54:21 +12:00
Damian Mooyman
2548bfba1e API Replace SS_HOST with SS_BASE_URL
API Remove Director::$test_servers / $dev_servers
API Remove MODULES_PATH / MODULES_DIR constants
ENHANCEMENT Injector backtick syntax now supports environment variables as well as constants
Fixes #6588
2017-04-20 22:28:57 +12:00
Aaron Carlino
fdd9ad6dbc MINOR: Add documentation for aggregate filters (#6796)
* MINOR: Add documentation for aggregate filters

* Update 01_Data_Model_and_ORM.md

* Update 01_Data_Model_and_ORM.md
2017-04-19 15:44:00 +12:00
Simon Gow
5f82997690 Secure Coding - Security Headers, Force HTTPS and Cookies
- Amending best practices for secure coding to enforce HTTPS
- Add security headers to enforce HTTPS
- Ensure secure cookies are used.
- Added links for testing, changed documentation as part of peer review.
- Arrange headers to work with HTTP interface.
- fixed Cache-Control case
- Added reference to Secure Sessions.
- Replaced Cardinality with unique
- Fixed innacurate reference to decendant.
- Consistent spelling
- Databases over DBMSs
2017-04-13 13:59:02 +12:00
Simon Gow
8d2a1ba8be Index documentation
- updating index documentation to give a better description of how to improve performance with silverstripe applications
2017-04-07 11:27:07 +12:00
Nic
091d355059 DOCS update example to use Config::modify 2017-04-04 19:18:23 -05:00
Ingo Schommer
5b2106ad8a Corrected i18n docs 2017-04-03 20:04:43 +12:00
Ingo Schommer
3b94d14e42 MERGE 2017-04-03 12:11:21 +12:00
Ingo Schommer
326aa37ea4 API HTML5 date/time fields, remove member prefs (fixes #6626) 2017-03-31 15:21:47 +13:00
Daniel Hensby
ac075eaf0b Remove TestListener and rely on PHPUnits APIs 2017-03-30 11:46:58 +13:00
Ingo Schommer
dfc0dec7b3 Require LICENSE in supported modules (no *.md)
It's more standard to have this file in the webroot.
It's technically markdown compatible text (e.g. asterisk bullet points),
but there's not much point in rendering it via markdown.

If you use the Github "new repo" dialog, it'll create the file without
an extension, so that's pretty much considered the standard.
2017-03-28 16:12:24 +13:00
Damian Mooyman
54ba08a306 API Replace ManifestCache with ManifestCacheFactory
API Remove lots of deprecated module code from ClassManifest
2017-03-21 09:43:48 +13:00
Damian Mooyman
ce14060913 API Apply default logger to all caches
API Rename ‘Logger’ service name to ‘Psr\Log\LoggerInterface’
API DefaultCacheFactory constructor now takes an array of default arguments
2017-03-15 15:31:24 +13:00
Jack O'Connor
100e9bf59c Correcting typo 2017-03-13 12:15:07 +00:00
Damian Mooyman
23b92c8187
Documentation and linting updates 2017-03-10 11:59:38 +13:00
Damian Mooyman
bf3383731d Upgrading guide for uploadfield 2017-03-09 13:33:00 +13:00
Christopher Joe
50deb17763 API remove UploadField, AssetField and associated files
Fixes #6481
2017-03-09 10:16:46 +13:00
Loz Calver
b9da55c8ab Merge pull request #6659 from robbieaverill/bugfix/quote-constants-in-yaml
FIX Add quotes to constants in YAML to ensure syntax validity
2017-02-28 09:19:22 +00:00
Robbie Averill
badf7d3a73 FIX Add quotes to constants in YAML to ensure syntax validity 2017-02-27 21:48:42 +13:00
Robbie Averill
d47a4ef63f DOCS Swap legacy code block syntax for GFM
This page (currently) for example breaks the code block whenever you mix spaces and tabs for indentation (which is currently part of the 3.x style guideline) - it makes updating existing code examples in the docs quite difficult: https://docs.silverstripe.org/en/3/developer_guides/templates/requirements/

GFM isn't as picky - this PR replaces with it.
2017-02-27 16:54:43 +13:00
Damian Mooyman
e2064b5cc8 Update config documentation 2017-02-27 16:54:01 +13:00
Ingo Schommer
d220ca3f67 API Use symfony/cache (fixes #6252) 2017-02-26 13:07:59 +13:00
Ingo Schommer
7e71ef7cb8 Document correct setlocale() use (fixes #6311) 2017-02-17 12:30:52 +13:00
Ingo Schommer
a9f2e9e73d Fixed DateFieldSeparated docs 2017-02-16 08:26:51 +13:00
Damian Mooyman
014f0d23ed
API Create SeparatedDateField
API Restrict allowed values parsed via DBDate::setValue
API Remove NumericField_Readonly
API Remove DBTime::Nice12 / Nice24
2017-02-15 11:07:58 +13:00
Damian Mooyman
029a8b9586
API Substitute Zend_Currency with NumberFormatter based solution
API Substitute Zend_Locale with Locale / NumberFormatter
API Substitute Zend_Date with IntlDateFormatter
API Added DBTIme::Nice12, FormatFromSettings
API Added Short() method to DBDate / DBTime / DBDatetime
API Add Date::getTimestamp()
API Added setSubmittedValue api for FormField
API Add second arg to base FormField::setValue()
API Major refactor of i18n into component data parts
API Implement Resettable interface to reset objects between tests
ENHANCEMENT Changed DBField::create_field return type to `static` to support better type hinting
ENHANCEMENT i18nTextCollector supports __CLASS__
2017-02-09 15:28:59 +13:00
Daniel Hensby
71383b827d
Merge branch '3' 2017-02-08 12:34:45 +00:00
Daniel Hensby
040ebdb66e DOCS Update routing docs to include FQCN in config 2017-02-03 17:06:02 +00:00
Damian Mooyman
8d5ff9b2fe Merge pull request #6583 from robbieaverill/bugfix/remove-theme-dir
API Remove ViewableData::ThemeDir, update changelog to reflect suggested replacement
2017-02-02 12:57:20 +13:00
Andrew Dover
0574cce1c6 Update 01_Syntax.md
Fixed spelling mistake
2017-02-02 12:26:30 +13:00
Daniel Hensby
8c8231c03e
NEW Director::host() to determine host name of site 2017-01-31 21:36:04 +00:00
Daniel Hensby
6e096f6172
DOCS Updated environment management docs to use .env file 2017-01-31 21:28:51 +00:00
Robbie Averill
da3db5ff3a DOCS Update Requirements to use the ThemeResourceLoader to find themed javascript and CSS 2017-01-31 17:00:13 +13:00
Robbie Averill
fa5370e4dd Update themes document for SS4
* Remove module specific subthemes documentation as it's removed
* Added notes about cascading theme configuration
* Update links to Themes listing to point to addons
* Remove references to tarballs, and put composer publishing instructions in place instead
2017-01-30 15:35:33 +13:00
Daniel Hensby
c81959cce0 Merge pull request #6558 from open-sausages/pulls/4.0/i18n-symfony
API Replace i18n message localisation with symfony/translation
2017-01-26 13:11:59 +00:00
Damian Mooyman
de02a3f733
Restored context parameter to i18n, and added to a “comment” key
Rolled pluralisation functionality into the i18n::_t() method
Warnings on missing default can now be turned off
2017-01-25 18:12:40 +13:00
Damian Mooyman
8a07c56bdf API Replace i18n message localisation with symfony/translation
API Implement enhanced pluralisation
Remove Zend_Translate and all Zend dependencies from i18n
Deprecated $context from i18n::_t()
Warn on missing default string for i18n::_t()
2017-01-25 17:08:12 +13:00
Robbie Averill
394af0615f DOCS Add 4.0 upgrade guide, update "composer" and "modules" to include 4.x recommended practices 2017-01-24 16:52:53 +13:00
Jordan
b26e81d91a Update 05_UploadField.md 2017-01-20 11:26:05 +13:00
Damian Mooyman
7d67c5b9bd
API Allow users to act-as another 2017-01-16 09:04:20 +13:00
Daniel Hensby
9a00ead731
DOCS Email docs and upgrade notes 2017-01-13 16:12:25 +00:00
Will Rossiter
b72e8db226 Merge pull request #6495 from robbieaverill/patch-4
DOCS Add namespacing to environment types page
2017-01-13 19:25:35 +13:00
Daniel Hensby
3ea5015f8b NEW Move to SwiftMailer powered Emails (#6466)
* API Replace existing Email and Mailer classes with SwiftMailer powered email system

* DOCS New Email docs

* Initial feedback from Damian

* Making Mailer an interface

* Templates relocated

* Round of feedback

* More robust approach to plain parts

* Revert changes to TestMailer
2017-01-13 14:48:46 +13:00
Robbie Averill
03e890fe5d DOCS Add namespacing to environment types page 2017-01-13 11:52:43 +13:00
Robbie Averill
c620063608 DOCS Update docs to reference PageController without an underscore, implement some PSR-2 2017-01-11 09:59:28 +13:00
Robbie Averill
47ab244f0a DOCS Change "Injector" to "SilverStripe\Core\Injector\Injector" in Logger examples 2017-01-06 14:37:27 +13:00
Daniel Hensby
664c0eafbe
Merge branch '3' 2016-12-28 14:30:54 +00:00
Daniel Hensby
19dd8d6824
Merge branch '3.5' into 3 2016-12-19 11:18:00 +00:00
Daniel Hensby
efd8114fd5
Merge branch '3.4' into 3.5 2016-12-16 15:52:53 +00:00
Myles Derham
18ff6bec6d Updated location of custom field templates 2016-12-16 10:40:01 +13:00
Daniel Hensby
2ec664d4c2 Merge pull request #6400 from robbieaverill/patch-6
Update 04_Fixtures.md
2016-12-15 18:51:12 +00:00
Daniel Hensby
734fe5d8e4 Merge pull request #6399 from robbieaverill/patch-5
Update 00_Write_a_SapphireTest.md
2016-12-15 15:49:28 +00:00
Daniel Hensby
5926cd3501 Merge pull request #6398 from robbieaverill/patch-4
Update unit testing doc for 4.0
2016-12-15 15:03:22 +00:00
Daniel Hensby
ba39e552a2
Merge branch '3' 2016-12-15 12:20:29 +00:00
Robbie Averill
0f058af946 Update 04_Fixtures.md
* Added reference for namespaced class names in YAML fixtures
* Updated some examples for PSR-2 compatibility
2016-12-15 16:11:42 +13:00
Robbie Averill
07e4ee4187 Update 00_Write_a_SapphireTest.md
* Add imported namespace and convert example to PSR-2
2016-12-15 15:47:56 +13:00
Robbie Averill
403f02e0cd Update unit testing doc for 4.0
* Add namespaced class imports
* Convert examples to PSR-2
2016-12-15 15:45:14 +13:00
Damian Mooyman
6e589aac75
API Updates to Form, ValidationResponse, ValidationException
API Implement form schema "errors" handling
2016-12-09 14:24:11 +13:00
Robbie Averill
43ad12f134 Remove RHS heading delimiters
Our markdown parser doesn't catch them, and they end up being output literally.
2016-12-09 11:20:14 +13:00
Jake Bentvelzen
085c8f5a43 ENHANCEMENT 2x increase in scanning of files for ConfigManifest 2016-12-08 21:35:38 +11:00
Daniel Hensby
bcc21c2403
Merge branch '3' 2016-11-10 01:09:35 +00:00
Daniel Hensby
0a835c6fe7
Merge branch '3.4' into 3 2016-11-03 13:27:31 +00:00
Antony Thorpe
148126fb79 Updated 01_Error_Handling.md (#6128)
Corrected indentation in yaml
2016-11-01 18:11:10 +13:00
Jono Menz
fdfd0c4fc3 DOCS Remove duped content (#6214)
D.R.Y.
2016-11-01 17:56:32 +13:00
Daniel Hensby
3859a1d7e7
Merge branch '3.4' into 3 2016-10-27 16:16:04 +01:00
Matthew Hailwood
7778357b03 Switch Mandrill recommendation to sparkpost. (#6196)
Now that Mandrill has become a paid part of Campaign Monitor it makes sense for us to recommend the free alternative SparkPost.

The package I've linked to is by the same author as the original Mandrill package.
2016-10-25 13:26:56 +13:00
Nicola Fontana
4d327f81fd DOCS Specify that the selectors change the scope (#6213)
Follow up of issue #4015.
2016-10-21 09:15:27 -07:00
Damian Mooyman
316ac86036
API Writes to versioned dataobjects always writes to stage even when written on live
API Remove "Archive" actions
API "Delete" actions for pages now archives records
BUG Fix batch actions failing on certain controllers
Fixes #6059
2016-10-21 13:16:32 +13:00
Jonathon Menz
d2c0b98bc5 DOCS Clarify nested cache block restrictions
Fixes #6078
2016-10-13 14:52:41 -07:00
Jonathon Menz
646d34ec48 DOCS Non-extendable classes
Closes #6129
2016-10-13 09:39:46 -07:00
Jonathon Menz
bfdac2b7b6 DOCS Template debugging 2016-10-13 09:39:10 -07:00
Jonathon Menz
e9a75a54d9 DOCS Partial caching of relationships
Fixes #6177
2016-10-13 09:38:49 -07:00
Jonathon Menz
a893e2aa0f DOCS How to increase partial cache expiry
Closes #3649
2016-10-13 09:37:52 -07:00
Damian Mooyman
f0dd9af699 API Support named join alias for many_many through list
Add tests for sorting on joined alias
2016-10-06 17:39:48 +13:00
Damian Mooyman
e7303170c2 API Implement many_many through
API Remove DataObject::validateModelDefinitions, and move to DataObjectSchema
API Remove deprecated 3.0 syntax for addSelect()
API made DataList::createDataObject public
API Move component parsing logic to DataObjectSchema
API Remove support for triangular has_many / belongs_many relationships
2016-10-06 17:39:48 +13:00
Jonathon Menz
24f8f2715c DOCS Introduce TemplateGlobalProvider 2016-10-03 09:36:47 -07:00
Daniel Hensby
45736ef2db
Merge branch '3' 2016-10-03 12:00:20 +01:00
jeffreyguo
801574b9b0 Update index.md (#4020)
MINOR: wording correction
2016-09-29 13:21:17 +13:00
Daniel Hensby
99f98e51d0
Merge branch '3' 2016-09-23 17:15:59 +01:00
Daniel Hensby
6022012481
Merge branch '3.4' into 3 2016-09-23 16:33:45 +01:00
Damian Mooyman
e8375111b1
API Enable default value to be specified for dbstring types at the db level
Fixes #1409
2016-09-22 15:19:30 +12:00
Ingo Schommer
54aad839c4 Clarified <% include %> use in SS4 (see #5952) 2016-09-22 11:29:32 +12:00
Jason Irish
dcc51ec479 Docs - sort by random instructions
Added instructions for sorting per database type. `RAND()` throws errors in PostgreSQL and SQLite
2016-09-20 14:16:22 -05:00
Daniel Hensby
f65168ef8d
Merge branch '3' 2016-09-16 13:43:23 +01:00
Ingo Schommer
8f23fa99a5 API Moved CMS-specific JavaScript to admin/thirdparty
The 'admin' module will be split off from 'framework',
where 'framework' only provides (mostly) frontend-agnostic PHP classes.
For example, HTMLEditorField.php has a TinyMCEConfig.php driver,
but doesn't come with its own JS includes.
2016-09-16 13:46:10 +12:00
Sam Minnee
1b527fca3f FIX Webpack handles images & fonts.
Responsibility for finding and referencing images and fonts is now
given to webpack. All the url references are now relative to the
component scss file, and point to font & images files in src/, rather
than assuming someone else will place them in dist.

This makes the source more modular, and makes it easier to, for
example, inline images are data URIs, or create a new build script that
builds several modules for a project in a single pass.

Workaround for bad font path in bundle.css:
ExtactTextPlugin didn’t work as well with a subfolder reference in the
filename. This is just a short-term fix and could probably be improved
to put bundle.css back in the styles subfolder.

Webpack handles images & fonts:
Responsibility for finding and referencing images and fonts is now
given to webpack. All the url references are now relative to the
component scss file, and point to font & images files in src/, rather
than assuming someone else will place them in dist.

This makes the source more modular, and makes it easier to, for
example, inline images are data URIs, or create a new build script that
builds several modules for a project in a single pass.

Clarify docs on spriting and webfonts:
We've decided to remove sprity since it comes with hundreds of dependencies,
and needs compilation within the "npm install" - dragging out the already overweight
install process, and making the resulting node_modules/ folder less portable between systems.
2016-09-15 22:19:09 +12:00
Sam Minnee
2e577ddb1d API Use Webpack
The bundle is generated by running “webpack” directly - gulp is no
longer needed as an intermediary. The resulting config is a lot shorter,
although more configuration is pushed into lib.js.

Modules are shared between javascript files as global variables.
Although this global state pollution is a bit messy, I don’t think it’s
practically any worse than the previous state, and it highlights the
heavy coupling between the different packages we have in place.
Reducing the width of the coupling between the core javascript and
add-on modules would probably be a better way of dealing with this than
replacing global variables with some other kind of global state.

The web pack execution seems roughly twice as fast - if I clear out my
framework/client/dist/js folder, it takes 13.3s to rebuild. However,
it’s not rebuilding other files inside dist, only the bundle files.

CSS files are now included from javascript and incorporated into
bundle.css by the webpack. Although the style-loader is helpful in some
dev workflows (it allows live reload), it introduces a flash of
unstyled content which makes it inappropriate for production.

Instead ExtractTextPlugin is used to write all the aggregated CSS
into a single bundle.css file. A style-loader-based configuration could
be introduced for dev environments, if we make use of the webpack live
reloader in the future.

Note that the following features have been removed as they don't appear to be
necessary when using Webpack:
 - UMD module generation
 - thirdparty dist file copying

LeftAndMain.js deps: Without it, ssui.core.js gets loaded too late,
which leads e.g. to buttons being initialised without this added behaviour.
2016-09-15 22:19:05 +12:00
Daniel Hensby
f25b88b146 showqueries debugging tool now inserts parameters in place (#5885) 2016-09-15 09:15:19 +12:00
Zaid Al-Dabbagh
d0aa0cb911 Update 01_Error_Handling.md
Indentation error causes yaml parsing error.
2016-09-12 10:51:30 +12:00
Damian Mooyman
bfd9cb1aca Rename SS_ prefixed classes (#5974) 2016-09-09 18:43:05 +12:00
Daniel Hensby
918fb94396
Merge branch '3' 2016-09-07 09:31:23 +01:00
Daniel Hensby
3fd9fe3aa0
Merge branch '3.4' into 3 2016-09-07 09:22:06 +01:00
Ingo Schommer
3b71b7731a Merge pull request #5943 from open-sausages/pulls/4.0/template-lookup-redux
API Update template lookup to late resolution for performance reasons
2016-09-06 20:27:11 +12:00
Damian Mooyman
c9b6e9bac0
API Update template lookup to late resolution for performance reasons
API Update behaviour of form fields to use standard template lookup mechanism
API Support custom "type" parameter to template lookup
2016-09-06 12:54:03 +12:00