Commit Graph

2287 Commits

Author SHA1 Message Date
Steve Azzopardi
d7530ed22b Update css doc to spaces instead of tabs 2016-10-06 22:01:44 +02:00
Steve Azzopardi
2ec14cefcb Update yml formating for extra javascript & css 2016-10-06 20:03:00 +02:00
Christopher Joe
21dc238685 Fixed classes that weren't matching icon 2016-10-06 20:46:30 +13:00
Christopher Joe
e5b86457b4 Added react LookupField component
API MultiSelectField readonly transformation casts to LookupField instead of ReadonlyField
FIX removed jQuery dependency from i18n
2016-10-05 15:32:05 +13:00
Damian Mooyman
82e72d062f BUG prevent form data / validation persisting in state when using form schema 2016-10-05 10:26:32 +13:00
Christopher Joe
30d161625f Fix unmock qs module, Backend-test refactored to not time out on error 2016-10-05 10:25:22 +13:00
Christopher Joe
287809ec3b Refactored react FormFields to use react-bootstrap FormControl components
Addded Checkbox, CheckboxSet and Optionset (radio) fields
Refactored documentation
2016-10-05 10:25:21 +13:00
Daniel Hensby
45736ef2db
Merge branch '3' 2016-10-03 12:00:20 +01:00
Daniel Hensby
5e9d16646d
Merge branch '3.4' into 3 2016-10-03 10:24:32 +01:00
Damian Mooyman
ebbb0258dd Fix linting issue 2016-10-03 10:58:58 +13:00
Daniel Hensby
f2d3026e93
Merge pull request #3628 from JeremyRoundill/3.1 2016-09-30 17:16:47 +01:00
Paul Clarke
3ac0eaaf62 Remove legacy styles 2016-09-30 15:45:12 +13:00
Paul Clarke
b794a40864 Group button icon styles 2016-09-30 15:44:17 +13:00
Paul Clarke
374ef6e0c3 Modal styles 2016-09-30 15:44:17 +13:00
Paul Clarke
5f92e12911 If description field is empty hide it as it has margin 2016-09-30 15:44:17 +13:00
Paul Clarke
d6a24f4133 Use bootstrap modal variables 2016-09-30 15:44:17 +13:00
Paul Clarke
3f5d241be4 Add modal specific stylesheet 2016-09-30 15:44:17 +13:00
Paul Clarke
3fdeaea162 Increase the size of select dropdown so they match the size of other fields 2016-09-30 15:44:17 +13:00
Paul Clarke
32383114ce Remove custom add to campaign styles and make them more reusable 2016-09-30 15:44:17 +13:00
Christopher Joe
963445e743 FIX tab link on top panel changes even when "cancel to browse" was selected 2016-09-30 14:57:15 +13:00
Daniel Hensby
74ecaded08
Merge branch '3' 2016-09-26 14:00:58 +01:00
Daniel Hensby
99f98e51d0
Merge branch '3' 2016-09-23 17:15:59 +01:00
Damian Mooyman
acc230fc99 Update translations 2016-09-23 16:14:42 +12:00
Damian Mooyman
cbe0ac8507 BUG Fix invalid import form requirements (#6071) 2016-09-23 16:13:09 +12:00
Sam Minnee
c52adad1fe FIX: Graceful degradation if obsolete classnames in ChangeSetItem (fixes #6065)
NEW: Add SilverStripe\ORM\UnexpectedDataException class.

This change provides more graceful handling of the case where a
ChangeSetItem is referencing a no-longer-existing class.

The new exception, SilverStripe\ORM\UnexpectedDataException, is
intended to be available for throwing whenever we have unexpected data
in the database.

It can be trapped by the relevant UIs and more graceful errors than
HTTP 500s can be provided.
2016-09-23 12:28:32 +12:00
Ingo Schommer
34dcda15ef Rebuild dist files 2016-09-22 14:48:00 +12:00
Ingo Schommer
5d9c8a8b95 Better <CompositeField> prop defaults
The props.tag default was set directly on props,
but the component used it from props.data.tag,
hence the default was ineffective.

Since empty arrays for props.data override nested React defaults,
there's no built-in way to enforce this default.

Hardcoding a default felt viable here, since the component allows overrides via props.
2016-09-22 14:46:46 +12:00
Ingo Schommer
5415afe8bf Fixed react-bootstrap tabs warnings
We can't use our own "id" values here, since react-bootstrap requires internal consistency
between tab containers and tab panes through its own auto-generated identifiers
2016-09-22 14:46:46 +12:00
Sam Minnee
c24201b5f3 FIX: Break dist javascript and onto newlines.
This doesn’t have much impact on resulting JS size, but it will
hopefully make merge conflicts much less frequent.

The CSS growth is a little higher (6.5% increase in size) but is not
material.

If this materially reduces the number of merge conflicts we have, by
letting the git merge tools resolve some dist file mergers, I think it
would be worth it.

Some example changes in file size:

bundle.js 290K -> 301K
vendor.js 1,325K -> 1,321K
bundle.css 628K -> 669K
2016-09-22 14:38:17 +12:00
Paul Clarke
62dcb0d0c4 close panel icon moved up to align with title 2016-09-22 11:21:54 +12:00
Paul Clarke
3d774a02cb Chosen no longer nested within .field 2016-09-22 11:20:29 +12:00
Ingo Schommer
ca620c1c14 Merge pull request #6036 from open-sausages/pulls/4.0/fix-cms-buttons
BUG fix issue with popup menu appearing on the left
2016-09-22 09:17:20 +12:00
Damian Mooyman
ef88619d2f BUG Fix error in campaign area
Fix alignment of add campaign fields
2016-09-21 17:36:51 +12:00
Ingo Schommer
e1b827f7c8 Optimise webpack build time (#6049)
* Rename bundles (prep for webpack optimisation)

This might or might not reduce the overall repo size,
because git can combine similar chunks in the newly generated files

* Optimise webpack build time

Consolidates bundles, since a separation of bundle-framework.js vs. bundle-legacy.js
vs. bundle-lib.js no longer makes sense - they're all loaded upfront anyway,
since we'll be introducing more react-powered logic alongside the "legacy" JavaScript.

By consolidating into fewer bundles, we give the optimisation scripts (UglifyJS)
more options to reduce the overall file size.

The main motivation for a vendor.js is to shorten rebuild times:
Most active development is happening in files required through bundle.js.
This commit drastically reduces the rebuild time for those changes (15s to 4s).
2016-09-21 17:14:43 +12:00
Damian Mooyman
5a59c4f4b4 API Add bootstrap button row template
API Add bootstrap button template
BUG fix draft / published preview selector
2016-09-21 15:59:12 +12:00
Chris Joe
a85ba1222b Add helper-circle and block icons (#6035) 2016-09-21 15:15:59 +12:00
Chris Joe
51ef369630 FIX stringify api call body to work for IE10 (#6032)
* FIX stringify api call body to work for IE10

* Pull out functions defined in createEndpointFetcher
2016-09-21 14:45:30 +12:00
Paul
4d52d655fd Fix for spacing of sitetree panel, reportAdmin, and toggle on Member details page (#5955)
* Panel/tab-panel and alerts spacing, button padding consistency and alignment

* Reports panel spacing adjustments

* ReportAdmin panel and toolbar spacing

* Comment change

* Fix formatting help toggle link

* Use standard line-heights and padding for buttons

* Add base panel styles

* Update to .panel styles and .toolbar spacing

* Remove legacy styles, linting fixes

* Toolbar--content to have consistent styles throughout

* Add panel and toolbar styles to areas missing them

* Replace values with variables

* Layout overrides for tabs and panels with padding

* Adjust JQueryUI button spacing to match other UI buttons

* Remove custom ReportAdmin styles

Update values to variables and modify panel and tab-panel spacing

* Remove text color override

* Remove double (.m-t-1) spacing from campaign panel

* Profile page remove legacy JLayout

* Remove legacy spacing

* Removed Layout from page so !important not needed

* Improve use of variables

* Add missing closing bracket, minor linting fixes

* Linting fixes

* Remove css importants

* Add temp fix for file upload within gridfield

Tidy structure of css

* css build

* Spacing bug fixed for campaign list alert
2016-09-21 10:12:58 +12:00
Chris Joe
08a39f5f93 Update file edit form (#6024)
* Added Created field to File/Image editor

* switch default input value to null

Fix react errors and added a field description

* API Use new DBField::getSchemaValue()
2016-09-20 12:56:45 +12:00
Sam Minnee
b61c5a56de FIX: sass-lint styleguide fixes 2016-09-18 14:50:27 +12:00
Sam Minnee
f700d86557 NEW: Run JS/CSS linting in Travis.
The ‘npm run lint’ command will be used to run listing on Travis, which
can also be used on local dev environments. These can also be used with
editor plugins to highlight errors immediately.

The intention is that this can be used in place of codeclimate. The
benefits are that we use a single toolchain in both CI and local dev,
which is not entirely the case at the moment.

Note the sass-lint is provided by “sudo gem install scss_lint”. It’s
possible that we can move to a node-based sass-lint; I can’t recall
what the motivation for using the scss_lint gem was - I think it was
mainly that we had the AirBNB styleguide already implemented as a linter
config.
2016-09-18 14:49:08 +12:00
Daniel Hensby
6f28ac5365 Merge pull request #5986 from sminnee/simpler-test-run
Simpler test run
2016-09-17 08:10:46 +01:00
Sam Minnee
61d7c3af28 FIX: Fix tests when running directly from framework. 2016-09-17 15:40:32 +12:00
Daniel Hensby
cb2352548d
Merge branch '3.4' into 3 2016-09-16 14:22:31 +01:00
Daniel Hensby
71cc5d83e6
Revert "Merge remote-tracking branch '3Dgoo/patch-1' into 3.4"
This reverts commit e617042422, reversing
changes made to 995d07756d.
2016-09-16 14:21:16 +01:00
Daniel Hensby
f65168ef8d
Merge branch '3' 2016-09-16 13:43:23 +01:00
Daniel Hensby
beeed8155a
Merge branch '3.4' into 3 2016-09-16 11:56:01 +01:00
Sam Minnee
93a0122c0f FIX: Don’t treat URLs as root relative when FRAMEWORK_DIR = “”
Code was assuming that FRAMEWORK_DIR would always have a value. If it
doesn’t (because you’re running a test instance of a naked framework)
This caused URLs to be treated as root relative, which creates some
duplicate-inclusion bugs.

The use of ltrim() works, but is a bit clumsy. A more flexible approach
to including front-end assets of given modules would be preferable;
ideally something that also let you keep your code outside of the
web root.
2016-09-16 16:16:39 +12:00
Ingo Schommer
3d7c60f8cb Updated dist files 2016-09-16 13:46:11 +12:00
Ingo Schommer
30174db459 FIx i18n JS regression about locale selection
When rewriting the i18n.js file from ES5 to ES6, the detectLocale()
call in the constructor was missed - meaning the lang files were loaded by the browser,
but never actually used.
2016-09-16 13:46:11 +12: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
Ingo Schommer
8eac22c628 Separate CSS bundling in Webpack
Multiple entry points can't result in a single bundle.css with a fixed filename, see
https://github.com/webpack/extract-text-webpack-plugin/issues/179

Until that's resolved, it's easier to keep the 'css' task separate in Webpack,
and have a single entry point for all CSS (bundle.scss).

Also partially reverting "Moved frontend assets into admin/ "module"",
which moved too many files: debug.css and install.css need to remain
as framework (not admin) deps. Split out into a separate `framework-css` Webpack
task in preparation for splitting off the module.
2016-09-16 13:46:09 +12:00
Ingo Schommer
8e5dd58c43 Removed unused dist files
Storing in fonts/, not font/fonts
2016-09-16 13:46:09 +12:00
Ingo Schommer
2316b0da9f API Remove i18n::js_i18n option
The JavaScript i18n functionality in SilverStripe is used in the CMS as well as form field implementations.
Form fields used to include their own JavaScript for usage outside of CMS. This now requires custom build tooling in a project.
Hence there's no need for an i18n shim (i18nx.js), since the CMS always uses i18n support.
2016-09-16 13:46:09 +12:00
Ingo Schommer
ee10dbb680 API Moved frontend assets into admin/ "module"
We've removed the ability to directly reference JS and CSS files
for form fields and other SilverStripe features in favour of a common bundle built by Webpack.

The logical next step is to make the framework module free of frontend dependencies,
which should simplify its operation, and avoid another time intensive "npm install" on a module.
2016-09-16 13:46:06 +12:00
Damian Mooyman
e5df794a04 Move incorrect lang file location 2016-09-16 13:44:15 +12:00
Ingo Schommer
6be25f3b52 Entry point for UploadField_select.js
Used in iframe, so can't be rolled into other code.
Moved in admin/ since that's easier for now with Webpack entry points,
and we'll move all JS/CSS into admin/ anyway soon.
2016-09-16 13:44:14 +12:00
Ingo Schommer
25f4741142 Removed ModelAdmin/SecurityAdmin Webpack entry points
There's not a lot of benefit in packaging these separately in terms of initial CMS load size,
so let's simplify the setup. They'll eventually become lazy loaded chunks in a React-based setup
2016-09-16 13:44:12 +12:00
Ingo Schommer
701c700d4c Fixed UploadField JS dependencies
When adding the deps straight into the file (recommended),
the onchange handler in file-upload isn't firing properly when a file is uploaded through
the <input type=file> button - it falls back to default behaviour, which submits the
containing form, failing because the upload is handled by a different URL.
2016-09-15 22:19:15 +12:00
Ingo Schommer
9cb9a05ec0 API Removed duplicated thirdparty deps
These were originally copied from node_modules via an "npm run thirdparty" task,
in order to have them loadable with oldschool <script> tags.
Since webpack supports CommonJS-style loading, that's no longer required,
we can simply inline those scripts into the bundle.

We need to use imports-loader though, in order to ensure
that "define" is not available in some module scopes,
which triggers AMD behavior that's not compatible with Webpack's loaders.
See http://webpack.github.io/docs/shimming-modules.html

I've had to pin to the exact versions used in the 3.x CMS,
since jquery-upload has introduced an AMD wrapper sometime
between 6.0 and 6.9 (the latest version NPM automatically pulls in).
This AMD wrapper confuses Webpack, since it's trying to resolve the
dependencies contained in it. We could create shims for those instead,
but the easiest way was to simply revert to the versions already used
before the Webpack migration (since the newer versions in node_modules
were never actually copied into thirdparty, they weren't used before).
2016-09-15 22:19:12 +12:00
Ingo Schommer
5f7b13ee49 API Removed unused images across CMS UI
Many of these are now inline via Webpack's url-loader plugin (https://github.com/webpack/url-loader),
and a tonne were legacy references (e.g. leftovers from ComplexTableField).

Some of these might still be used in other modules like userforms,
but we're removing support for "hotlinking" images in core - they're not an API.
2016-09-15 22:19: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
a6049ec383 FIX: Use chosen from npm package.
Downloading the package from github makes npm install a lot slower and
complicates the webpack build.
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
3Dgoo
cd8904e045 Fixing button destroy bug
When you want to add a button to the CMS but don't want LeftAndMain to apply jQuery UI button to it we add the `data-button="true"` attribute to our button. 

The `onadd` function checks that this attribute does not exist before calling `this.button()`.

The `onremove` incorrectly checks that this attribute does exist before calling `this.button('destroy')`. This should be checking that this attribute does not exist, just like the `onadd` function.

What this causes is when you have a button with the `data-button` attribute a button is not created, but when you leave the page `destory` gets called on an item which doesn't exist. We end up with the following error:

> Uncaught Error: cannot call methods on button prior to initialization; attempted to call method 'destroy'

The other issue with this logic is buttons are never getting destroyed when `onremove` is called.

The whole issue is caused by a missing `!` in the if statement. This change adds it in to fix the problem.
2016-09-15 08:23:22 +09:30
Paul Clarke
440a3073fe improve class naming to be more generic 2016-09-14 15:09:45 +12:00
Paul Clarke
d2cabce852 Added icon style for readonly fields containing icons 2016-09-14 15:09:16 +12:00
Ingo Schommer
294644ce1a Updated dist files 2016-09-14 14:12:04 +12:00
Paul Clarke
d51c46dc89 Increase consistency of tab styles across legacy and bootstrap tabs
Using BS variables where possible for all tabs
2016-09-14 14:10:41 +12:00
Paul Clarke
660aa20dad Remove tab styles from legacy stylesheet 2016-09-14 14:09:02 +12:00
Paul Clarke
82eea479e8 Adjust tab height (was a mix of 2px and 3px) 2016-09-14 14:09:02 +12:00
Christopher Joe
ee5b4fd8d3 Tabs support in new file/image editor
Introducing <Tabs> component based on react-bootstrap
Better support for nested fields in FormBuilder
Tweaks to get FormBuilder working with frameworktest BasicFieldsPage fields
Added exception in FormBuilder when Component is defined but not found
Added check in SingleSelectField for empty value before adding one in
Added temporary workaround for CompositeFields with no name (another story to address the actual problem)
Added asset_preview_height for File image preview, matches the defined CSS max-height
Added documentation to DBFile::PreviewLink() method
2016-09-14 14:08:59 +12:00
Paul
955d75b219 Insert media into TinyMCE modal, styling fixes and improvements (#5967)
* Remove interference of nested for__fieldgroup-item

* Adjust position of dropdown field

* Remove divider lines, adjust position of upload area

Clean up styles a bit too

* Adjust position of image

* Mostly css tidy up, added use of a few variables

* Toggle arrow was showing other icon because of icon height

* All buttons in toolbars remove margin below, adjust button link color

* Reorder sort and filter, add toolbar styles

* Add button styles to toolbar

* Remove some of the linting issues

* Added new panel variables

* Simplify variable

* Replace panel variable, insert media dialog positioning

* Update with new variable name, reduce space below toolbar

* Build

* Uploading file spacing, toolbar styles added

* Visual uploads, error upload fixes, edit details panel spacing

* Add toolbar to upload modal

* build

* Build

* increase width of pagination on gridfield

* Add height to uploading items only

* Build

* Added class back for beat test to pass
2016-09-14 13:48:33 +12:00
Damian Mooyman
9b1c24cf4c API Move preview panel to CMS module
BUG Fix preview area flashing on section navigation
Fix source file issue
2016-09-13 13:20:17 +12:00
Ingo Schommer
7bc6f3ee9f Enforce JS var declaration with value (#5993)
This caught us out recently where code did a strict type check for `myVar === undefined`.
The var was defined as `let myVar;`, without a value - so the check returned false (it's `null`).
To avoid this situation, we've decided to enforce declarations with values.
Note that preference should be given to single, immutable assignments via const where possible.

See http://eslint.org/docs/rules/init-declarations
2016-09-13 11:02:15 +12:00
Damian Mooyman
bfd9cb1aca Rename SS_ prefixed classes (#5974) 2016-09-09 18:43:05 +12:00
Damian Mooyman
8dd644d25d
API Namespace all classes
Namespace all templates
Move difflib and BBCodeParser2 to thirdparty
Remove deprecated API marked for removal in 4.0
2016-09-08 10:23:17 +12:00
Ingo Schommer
65718770d6 Update to React v15.0 2016-09-06 21:39:20 +12:00
Ingo Schommer
0cc91d3b38 Use react-bootstrap-ss fork
The react-bootstrap project won't update their codebase for TWBS4 compat
until they're out of alpha (https://github.com/react-bootstrap/react-bootstrap/issues/1187).
So we have to work in a fork for the meantime.
2016-09-06 21:36:58 +12:00
Ingo Schommer
57d885f406 Updated dist files 2016-09-06 20:40:20 +12:00
Ingo Schommer
f7f1cf0e87 Fix SingleSelectField readonly view 2016-09-06 20:40:14 +12:00
Ingo Schommer
1d3aaf368e Popover docs 2016-09-06 20:39:41 +12:00
Ingo Schommer
b53ce4c190 FIX Button loading indicator
See silverstripe/silverstripe-framework#5941
2016-09-06 20:39:32 +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
Damian Mooyman
1eb4e70201 Merge pull request #5945 from open-sausages/pulls/4.0/insert-link
Insert link styling adjustments incl. minor text updates
2016-09-05 15:56:23 +12:00
Ingo Schommer
6d0d46b06b Merge pull request #5946 from robbieaverill/bugfix/5936-show-formatting-help
FIX Show formatting help toggle link
2016-09-05 12:10:57 +12:00
Robbie Averill
cbdf3eb725 FIX Show formatting help toggle link
* Fixes #5936
2016-09-05 11:59:14 +12:00
Paul Clarke
f2637fc059 Remove additional divider lines, adjust padding 2016-09-02 16:50:52 +12:00
Paul Clarke
c3f4d0cf0b Add inline forms styles to insert-link modal 2016-09-02 16:37:59 +12:00
Paul Clarke
79b7f84a46 Remove duplicate class output 2016-09-02 16:37:30 +12:00
Ingo Schommer
ecaed8c08d Fixed icon regression in <Breadcrumb> 2016-09-01 14:07:02 +12:00
Ingo Schommer
56b249eb23 Field values in FormBuilder action handling
Allows actions to make decisions based on the form payload.
For example, a "delete" button can pass the currently edited record ID to its API endpoint.
2016-09-01 07:55:56 +12:00
Ingo Schommer
fa5e6bbd69 Fixed breadcrumb icon spacing
Regression from https://github.com/silverstripe/silverstripe-framework/issues/5917
2016-08-31 22:31:39 +12:00
Christopher Joe
c1c20aaafc Breadcrumbs with new icons generated 2016-08-30 14:46:59 +12:00
Christopher Joe
b509f9199d Fix Modal response positioning 2016-08-29 10:50:17 +12:00
Ingo Schommer
bd9997f79a Removed AddToCampaignHandler->setShowTitle()
It was used to support different display variations in admin/assets and admin/pages,
while those display variations should've been removed in the first place (and have been now).
2016-08-28 13:35:09 +12:00
Ingo Schommer
564ddfa602 Apply .field class to <FieldHolder> react component
It keeps styling consistent between Entwine sections (generated by FieldHolder.ss)
and React sections (generated by <FieldHolder> component).
2016-08-28 13:31:17 +12:00
Ingo Schommer
a0d4e363c2 Moved <select> styles to generic _forms.scss
Form element styles should be consistent throughout the CMS.
While we still have the ability to create dropdowns (<select>) which aren't based on
Entwine/HTML rather than new components like <SingleSelectField>,
we need to ensure those are rendered the same.

By default, the Entwine-based CMS sections will transform <select>
into a ChosenJS control, but you can still apply .no-chosen.
Hence there's a need for correct height both in React and Entwine sections,
not just in a React component.
2016-08-28 13:30:18 +12:00
Ingo Schommer
79b9bb6f18 React for "Add to campaign" on pages
Reuse existing functionality rather than creating "new legacy code" through writing more Entwine
2016-08-28 13:07:32 +12:00
Christopher Joe
b77d21c25a Fix pages add to campaign, improved FormActions error handling, Popover focus highlight and refactored AddToCampaignModal to FormBuilderModal
tweaked tests to suit new generic FormBuilderModal, changed FormAction handler to throw a promise instead
2016-08-28 13:07:32 +12:00
Paul Clarke
a49456df20 Fix for batch actions not postponed under toolbar on open/close 2016-08-28 13:07:32 +12:00
Paul Clarke
b01de98b04 Remove padding override but adjust contents to suit container padding
Remove spacing to the right of icon as there is no btn label
2016-08-28 13:07:31 +12:00
Ingo Schommer
5c2e8d1299 Fix form attr merging order 2016-08-28 13:07:31 +12:00
Ingo Schommer
84cdb15a5f Simplify "add to campaign" dialog
Talked to @clarkepaul and simplified to avoid title duplication
2016-08-28 13:07:31 +12:00
Christopher Joe
a9bdf33ca8 Fix SingleSelect styling, added add to campaign documentation 2016-08-28 13:07:31 +12:00
Christopher Joe
b9624994ac AddToCampaign save message, Submitting indicator on FormAction button 2016-08-28 13:07:31 +12:00
Christopher Joe
d7663e850e Remove duplicate props for PopoverField, added FormBuilder->handleAction and flattened state data 2016-08-28 13:07:30 +12:00
Christopher Joe
6a4b29d703 Add to campaign modal 2016-08-28 13:07:30 +12:00
Christopher Joe
fb64e27960 Cleanup API for better form schema support 2016-08-28 13:07:30 +12:00
Daniel Hensby
1d1227cc9a
Merge branch '3' 2016-08-23 10:37:47 +01:00
Damian Mooyman
59efd280ad Fix issues with CMS permission codes
Standardise template locations
Move CMSSettingsController class to SiteConfig module
Fix CMSMenu behaviour for namespaced admin sections
Split classes into one per file
Manual fixes and cleanup
2016-08-17 11:19:14 +12:00
Damian Mooyman
db34e011f3 Apply SilverStripe\Admin namespace 2016-08-17 11:12:22 +12:00
Christopher Joe
8a5f8fbc2d Created FieldHolder HOC for TextField and HtmlReadonlyField 2016-08-16 16:53:17 +12:00
Christopher Joe
0363351ee5 Add React HtmlReadonlyField and fixed TextField id 2016-08-16 11:10:44 +12:00
Christopher Joe
a68ba38478 Improve FormBuilder API and added HeaderField and LiteralField 2016-08-16 11:09:19 +12:00
Damian Mooyman
d88516203c Merge 3.4 into 3 2016-08-15 19:05:20 +12:00
Damian Mooyman
ac2681658a BUG Fix regression in url concatenation #4967 2016-08-15 16:49:57 +12:00
Damian Mooyman
00d1d294ca Update translations 2016-08-15 15:49:50 +12:00
Damian Mooyman
bf19806f50 Update translations 2016-08-15 15:00:58 +12:00
Damian Mooyman
63937aa124 Update translations 2016-08-15 14:01:09 +12:00
Daniel Hensby
66a04158f3 Merge pull request #5887 from open-sausages/pulls/4.0/remove-modelsidebar
Remove obsolete template ModelSidebar.ss
2016-08-12 12:26:28 +01:00
Daniel Hensby
fc5b52a0b4 Merge pull request #5888 from open-sausages/pulls/4.0/remove-editor-toolbar
Remove obsolete template Editor_toolbar.ss
2016-08-12 12:25:58 +01:00
Ingo Schommer
7322c57fc8 Merge pull request #5882 from open-sausages/pulls/4.0/redux-devtools
Switch redux-logger to redux devtools for easier debugging
2016-08-12 16:11:58 +12:00
Christopher Joe
42d36da3fb Switch redux-logger to redux devtools for easier debugging 2016-08-12 16:11:33 +12:00
Damian Mooyman
56f5a9e06b Remove obsolete template Editor_toolbar.ss 2016-08-12 11:38:55 +12:00
Damian Mooyman
64ec1f0b03 Remove obsolete template ModelSidebar.ss 2016-08-12 11:08:03 +12:00
Daniel Hensby
988af4582d Merge pull request #5862 from silverstripe-terraformers/fixes/batch-actions-checkboxes
Fix batch action permissions not applied to new nodes loaded
2016-08-11 14:26:27 +01:00
Damian Mooyman
6005a1c2b2 API Upgrade for silverstripe CMS namespace changes 2016-08-11 11:51:02 +12:00
Damian Mooyman
afdae4937e
API Add CMSMenu::remove_menu_class to remove items by class instead of code 2016-08-11 11:47:56 +12:00
Christopher Joe
7448fb7bae Fix batch action permissions not applied to new nodes loaded 2016-08-11 11:41:07 +12:00
Damian Mooyman
7de5b998e1 Merge 3.4 into 3 2016-08-05 19:12:25 +12:00
Damian Mooyman
ca754eb887 Merge 3.3 into 3.4
# Conflicts:
#	admin/javascript/lang/fa_IR.js
#	admin/javascript/lang/it.js
#	admin/javascript/lang/src/fa_IR.js
#	admin/javascript/lang/src/it.js
#	lang/cs.yml
#	lang/eo.yml
#	lang/fa_IR.yml
#	lang/fi.yml
#	lang/it.yml
#	lang/sk.yml
2016-08-05 16:48:26 +12:00
Damian Mooyman
0d5ae23f2b Merge 3.2 into 3.3 2016-08-05 14:36:35 +12:00
Damian Mooyman
cb39f2ef27 Merge 3.1 into 3.2
# Conflicts:
#	admin/javascript/lang/cs.js
#	admin/javascript/lang/de.js
#	admin/javascript/lang/eo.js
#	admin/javascript/lang/es.js
#	admin/javascript/lang/fa_IR.js
#	admin/javascript/lang/fi.js
#	admin/javascript/lang/fr.js
#	admin/javascript/lang/id.js
#	admin/javascript/lang/id_ID.js
#	admin/javascript/lang/it.js
#	admin/javascript/lang/ja.js
#	admin/javascript/lang/lt.js
#	admin/javascript/lang/mi.js
#	admin/javascript/lang/nb.js
#	admin/javascript/lang/nl.js
#	admin/javascript/lang/pl.js
#	admin/javascript/lang/ro.js
#	admin/javascript/lang/ru.js
#	admin/javascript/lang/sk.js
#	admin/javascript/lang/sl.js
#	admin/javascript/lang/sr.js
#	admin/javascript/lang/sr@latin.js
#	admin/javascript/lang/sr_RS.js
#	admin/javascript/lang/sr_RS@latin.js
#	admin/javascript/lang/src/cs.js
#	admin/javascript/lang/src/de.js
#	admin/javascript/lang/src/eo.js
#	admin/javascript/lang/src/es.js
#	admin/javascript/lang/src/fa_IR.js
#	admin/javascript/lang/src/fi.js
#	admin/javascript/lang/src/fr.js
#	admin/javascript/lang/src/id.js
#	admin/javascript/lang/src/id_ID.js
#	admin/javascript/lang/src/it.js
#	admin/javascript/lang/src/ja.js
#	admin/javascript/lang/src/lt.js
#	admin/javascript/lang/src/mi.js
#	admin/javascript/lang/src/nb.js
#	admin/javascript/lang/src/nl.js
#	admin/javascript/lang/src/pl.js
#	admin/javascript/lang/src/ro.js
#	admin/javascript/lang/src/ru.js
#	admin/javascript/lang/src/sk.js
#	admin/javascript/lang/src/sl.js
#	admin/javascript/lang/src/sr.js
#	admin/javascript/lang/src/sr@latin.js
#	admin/javascript/lang/src/sr_RS.js
#	admin/javascript/lang/src/sr_RS@latin.js
#	admin/javascript/lang/src/sv.js
#	admin/javascript/lang/src/zh.js
#	admin/javascript/lang/sv.js
#	admin/javascript/lang/zh.js
#	javascript/lang/fa_IR.js
#	javascript/lang/src/fa_IR.js
2016-08-05 11:41:04 +12:00
Damian Mooyman
9805544cee Update translations 2016-08-05 11:06:51 +12:00
Paul Clarke
b9445511b7 Bootstrap GridField 2016-08-03 18:35:18 +12:00
Daniel Hensby
af3412a4c2 Merge pull request #5340 from dnadesign/fixToGridFieldLoadingWrongCurrentPage
fix to grid field loading wrong current page id when using multiple tabs
2016-08-02 12:44:11 +01:00
Christopher Joe
d93d9bc3c4 Disable datepicker for disabled or readonly fields, they were still editable through the picker 2016-08-01 11:47:48 +12:00
Daniel Hensby
d42826e2ba Merge pull request #5851 from open-sausages/pulls/4.0/fix-hash-navigation
BUG Fix hash link navigation in CMS
2016-07-29 11:26:07 +01:00
Damian Mooyman
06ae50e4f5
BUG Fix hash link navigation in CMS 2016-07-29 15:58:23 +12:00
Oly Su
89508a8f19 Tidy up history panel 2016-07-29 15:54:00 +12:00
Paul
e2826927a7 Adjust width of select dropdown (#5850) 2016-07-29 10:48:12 +12:00
Damian Mooyman
d15b19d208 Fix merge regressions in add-link fixes 2016-07-28 17:03:46 +12:00
Damian Mooyman
a868ecdbfa BUG Correct include paths for legacy JS files 2016-07-28 16:34:28 +12:00
Damian Mooyman
6e74b57c36 BUG Fix issue with gulpfile.js not compiling client/src/legacy dir
BUG Make SelectionGroup.ss and SelectionGroup.js work together
BUG Fix for IE visual indentation of composite field
2016-07-28 16:32:40 +12:00
Oly Su
2805baecd3 Added missing bootstrap form messages
Align top of selection-group and label
Fix styles for overly nested composite fields
Step label added and new templates for forms
2016-07-28 16:32:40 +12:00
Damian Mooyman
c556b01071 API Update core templates for CompositeField / SelectionGroup.ss 2016-07-28 16:32:40 +12:00
Hamish Friedlander
1f8c2f781b Fix "Insert Link" dialog in HTMLEditorField. CSS still needs work. 2016-07-28 16:01:50 +12:00
Daniel Hensby
7391ba6229
Merge branch '3.4' into 3 2016-07-25 11:46:06 +01:00
Damian Mooyman
9c7c7f6aa9 BUG Fix regression in missing require_js from #4259 2016-07-25 17:50:56 +12:00
Damian Mooyman
a809e80d01 API Convert CMS forms to bootstrap
NEW Add cms-forms microtheme to cater to bootstrap's needs.

Note that the old SS3 assets section is buggy as a result of this change.
2016-07-25 17:24:26 +12:00
Damian Mooyman
7c24703804 BUG Fix regressions in custom admin url from #3274 2016-07-22 10:56:35 +12:00
Damian Mooyman
20daf1f8e1
API Abstract ThemeManifest into ThemeList
BUG Fix Requirements not resolving $default theme
2016-07-21 12:11:25 +12:00
Daniel Hensby
c7767b0e5b Merge pull request #5812 from silverstripe-terraformers/fixes/cms-action-spinner
Moved spinner to right so it does not overlap text
2016-07-19 15:34:44 +01:00
Daniel Hensby
ac17e12464
Merge pull request #3274 from colymba/custom-admin-url 2016-07-19 14:42:25 +01:00
Oly Su
059d03bb37 Moved spinner to right so it does not overlap text 2016-07-19 13:57:08 +12:00
Daniel Hensby
a8c0c0fc6a
Merge pull request #3614 from chillu/pulls/switch-states 2016-07-17 12:39:20 +01:00
Loz Calver
0a7e4cf7c3
Merge branch '3' 2016-07-15 16:01:48 +01:00
Loz Calver
391161208e
Merge branch '3.4' into 3 2016-07-15 14:34:50 +01:00
Loz Calver
44d7919496
Merge branch '3.3' into 3.4 2016-07-15 14:34:18 +01:00
Loz Calver
de61551885
Merge branch '3.2' into 3.3 2016-07-15 14:33:38 +01:00
Loz Calver
6ee3e458b6
Merge branch '3.1' into 3.2 2016-07-15 14:32:35 +01:00
Sam Minnée
5c98d331a3 Merge pull request #5804 from open-sausages/feature/themestack
API Theme stacking
2016-07-15 17:12:54 +12:00
Hamish Friedlander
b8b4e98ac2 API Theme stacking 2016-07-15 16:29:25 +12:00
Damian Mooyman
5cb4ab4a82 API Add PopoverField for extra-actions popup in react 2016-07-15 15:46:11 +12:00
Damian Mooyman
d08ab6ac81
API Allow X-Frame-Options to be configured
Fixes #2970
2016-07-15 14:08:14 +12:00
Giancarlo Di Massa
8f2953f1a0 Quick fix for HTTP/2.0 on OSX/Safari v9.1.1 2016-07-14 16:35:51 +02:00
Damian Mooyman
6e68f38efb API Update react sections to use react-router instead of page.js (#5796)
Fixes #5711
2016-07-14 17:51:01 +12:00
Damian Mooyman
26d46517ac
API Remove custom DBHTMLText::exists() custom behaviour
Fix merge regressions
2016-07-13 18:45:57 +12:00
Damian Mooyman
68a9b45a9a Build dist client files 2016-07-13 14:43:07 +12:00
Damian Mooyman
7d82304bb0 BUG Fix route invoking multiple handleStateChanges on single navigation actions
BUG Fix reference to non-existant window.history.state.url property
2016-07-13 14:42:57 +12:00
Damian Mooyman
d54f4dc9c6 Convert tabs to spaces in legacy script files 2016-07-13 14:33:19 +12:00
Damian Mooyman
859acf571e API mute frontend debugging by default (#5777) 2016-07-07 10:22:24 +01:00
Damian Mooyman
af22a83166 API Apply Framework\Security namespace 2016-07-07 11:32:28 +12:00
Christopher Joe
b8d634166f remove adding "original classes" 2016-07-06 21:44:11 +12:00
Damian Mooyman
0b7dab3f66 BUG Fix missing icons
Fixes #5657
2016-07-04 18:09:22 +12:00
Damian Mooyman
637167f2f9 BUG Fix missing icons
Fixes #5657
2016-07-04 18:07:11 +12:00
Daniel Hensby
390b1fc6c4
Merge branch '3.4' into 3 2016-06-29 11:43:02 +01:00
Daniel Hensby
2ab0dcf618
Merge branch '3.3' into 3.4 2016-06-29 11:42:05 +01:00
Hamish Friedlander
80d4af6b6e
API Apply Framework\ORM Namespace to model 2016-06-29 10:02:32 +12:00
Robbie Averill
1991e7d63e Use plural name for ModelAdmin tab name (#5736)
* Fixes #3362
2016-06-27 08:56:35 +12:00
Damian Mooyman
80e5b9149e
API Move dependency on model class from form schema API
API Refactor hard-coded dataobject class references from CampaignAdmin
Fixes #5730
2016-06-23 11:04:42 +12:00
David Craig
83308689d5 API Initialise React controllers via routes (#5436) 2016-06-16 15:04:14 +12:00
Damian Mooyman
7a462cecef Merge pull request #5684 from patricknelson/issue-5683-iframe-backport-pr-fix-5163
FIX for #5683: Address security warning in CMS on 3.3 and above.
2016-06-15 14:47:03 +12:00
Hamish Friedlander
51d53f4b50 Merge pull request #5646 from open-sausages/pulls/4.0/config-table-name
API Allow table_name to be declared / introduce DataObjectSchema
2016-06-14 15:06:38 +12:00
Daniel Hensby
9e3f76832b
Merge branch '3' 2016-06-13 13:41:20 +01:00
Daniel Hensby
0d36899afa
Merge branch '3.4' into 3 2016-06-13 12:30:33 +01:00
Daniel Hensby
4e392a4d43
Merge branch '3.3' into 3.4 2016-06-13 12:30:16 +01:00
Daniel Hensby
695c18ac6d
Merge branch '3.2' into 3.3 2016-06-13 12:29:45 +01:00
Patrick Nelson
f0d4951815 FIX for #5683: Address security warning in CMS when attempting to access <iframe> contents (Back-porting fix from PR #5163) 2016-06-12 17:26:36 -07:00
Damian Mooyman
5e8ae41d47 API Refactor dataobject schema management into separate service
API Allow table_name to be configured via Config
2016-06-08 13:22:56 +12:00
Paul Clarke
b3a96e7e3d minor linting fix 2016-06-07 12:45:38 +12:00
Paul Clarke
5e634c2a16 Update Form component to just Form
Convert form and Textfield  styles to use Bootstrap
Split out btn styles a bit more clearly defined (BEM)
Toolbar modifier to improve spacing for smaller screens
Use bootstrap spacer styles .m-t-1 (margin-top-1 x spacer) instead of custom spacer
Added a few typography helpers
Tab styles continued although they are hidden (used on AssetAdmin editor panel)
2016-06-03 15:52:31 +12:00
Ingo Schommer
3c03dcff91 Variable for light component background
Required for a highlighted file in admin/assets
2016-06-03 15:00:04 +12:00
Ingo Schommer
7c62a6d58d Bootstrap classes for text field
Required to support new "compressed" form style in admin/assets
which puts form field labels on their own line (and requires the bootstrap layout styling for this)
2016-06-03 14:59:40 +12:00
Damian Mooyman
ff3b970b71 Update translations 2016-06-02 17:07:41 +12:00
UndefinedOffset
341f49c630 BUGFIX: Fixed lookup of next closest visible field for focus restoring (fixes #5618) 2016-05-31 11:09:40 -03:00
Chris Joe
b4c5c71a0b ActionTabSet, Change position absolute to bottom instead of top (#5602)
* change position absolute to bottom instead of top

* Fixed bottom position to 100% to uncover the tabset title
2016-05-31 09:48:59 +01:00
Paul
f4037fe319 Swap out .Actions class for bootstrap .btn-toolbar (#5581)
* Swap out .Actions class for bootstrap .btn-toolbar

* Converted all south toolbars to use new toolbar component styles, content and preview styles for scrollbars adjusted where required
2016-05-27 13:39:10 +12:00
Loz Calver
11aad47eeb Fix invalid syntax in TinyMCE config (#5593) 2016-05-27 13:35:46 +12:00