Samuel Georges
4fd1ca824f
Introduce concept of system roles
...
These are roles defined by a special API code, once a system role code is detected, the role becomes locked and its permissions are sourced from the AuthManager. All permissions are granted to system roles by default, unless otherwise specified. This should make it easier to create client accounts as "Publishers", hiding developer tools like the CMS and Builder plugins by default.
2017-07-13 19:29:50 +10:00
Samuel Georges
1db67af8e8
Merge remote-tracking branch 'remotes/origin/develop' into l55upgrade
...
Conflicts:
modules/system/lang/en/lang.php
2017-07-11 10:48:54 +10:00
Samuel Georges
c0aa03a400
Create an error making trait
...
Widgets can throw fatal errors too
2017-06-11 22:38:03 +10:00
Samuel Georges
f020479b91
Move session logic to SessionMaker
...
This allows controller behaviors to access session utils
2017-06-10 04:58:29 +10:00
Samuel Georges
edcd899a79
Base getLoadValue to look at form field first
...
Fixes https://github.com/octobercms/october/pull/2663
Adding to build 420+ because this might cause some issues, although it shouldn't. Hoping we don't ever have to roll this back because it fixes another inconsistency when using the model `filterFields` method... some will change values via $field->value (field accessor) and others will change via $this->value ($model accessor). This now puts the field accessor at a consistent priority (first) while retaining the fallback to model.
2017-06-06 20:44:15 +10:00
Samuel Georges
41cc1744f1
Tab panes now support CSS spec
...
See form docs > paneCssClass
2017-06-05 17:37:13 +10:00
Oscar Arzola
8a40e1cc89
Update Report widget docblock
2017-06-02 23:53:27 -05:00
Oscar Arzola
a7d20211ae
Fixed Formatting and added docblock
2017-06-02 09:51:13 -05:00
Oscar Arzola
0bd12cf0e6
Added Extensibility to ReportWidgets
2017-05-30 16:49:35 -05:00
Samuel Georges
04f89dc5bb
getToken -> token
2017-05-20 13:19:51 +10:00
Samuel Georges
7e76f39e6c
Add app.name config
...
Various other refittings
2017-05-16 18:50:41 +10:00
Quezler
cc17b679f1
Code dusting ( #2826 )
...
Code cleaning according to PSR-2 w/ exemptions (mostly dust).
2017-04-24 21:38:19 +10:00
Samuel Georges
015b34fe88
Block media manager entirely if user lacks access
2017-04-11 08:40:39 +10:00
Luke Towers
d1c9b1a6f1
Support updating existing sidemenus
...
Fixes #2757 , #2777
2017-03-24 09:05:35 -06:00
Samuel Georges
0a981a25f7
API docs progress
...
Controller -> SystemController for consistency
2017-03-16 17:08:20 +11:00
Samuel Georges
18c6bb63a2
API docs progress
2017-03-15 18:03:26 +11:00
Samuel Georges
462c9cd4e8
Introduce theme logging + log settings
...
CmsObject changes can now be tracked (disabled by default)
Request logging is now disabled by default (security vector)
2017-02-08 05:44:04 +11:00
Samuel Georges
0d1fc43212
Add isSelected() helper to form field
...
Fixes an issue where dropdown NULL and 0 are treated as the same
Fixes #2612
2017-02-03 06:35:23 +11:00
Samuel Georges
5b5e23bfb8
Minor touch up from #2604
2017-01-26 11:30:26 +11:00
Samuel Georges
5e729f9978
Merge pull request #2604 from dubcanada/patch-1
...
If CMS module is loaded (and MediaManager exists) bind it
2017-01-26 11:27:56 +11:00
dubcanada
0a4390b4d9
If CMS module is loaded (and MediaManager exists) bind it
...
I am using OctoberCMS without the CMS module (removed from modules directory and turned off in cms.php) and I am getting an error in the backend regarding missing `MediaManager` class. I wrapped this in a class_exists to check that MediaManager exists before binding it.
Let me know your thoughts.
2017-01-10 13:45:59 -04:00
Samuel Georges
6af6ebe733
Added config backendForceSecure used to force HTTPS
...
Refs https://security.googleblog.com/2016/09/moving-towards-more-secure-web.html
2016-12-17 10:16:02 +11:00
Samuel Georges
c644f8b66d
Fixes issue where nested columns forcibly hide
...
Eg: "myrelation[attribute]" as a column name would cause the list setup to hide these fields with no ability to bring them back
2016-12-14 19:14:41 +11:00
Samuel Georges
0a2b343047
Simplify system events
...
This pipes all event calls through a new EventEmitter trait, which substitutes the October Rain event emitter trait. The view event has been moved to this trait also.
Pass some variables by reference to allow multi-extension.
Fixes #2420
2016-12-10 09:02:06 +11:00
Samuel Georges
29040b416c
Allow redirect: false on importExportController
...
Implement getFieldName() method
2016-11-28 07:50:06 +11:00
Samuel Georges
35296c5b26
Adds getFieldName helper to FormWidgetBase
...
Refs https://github.com/octobercms/docs/pull/207
2016-11-24 08:59:07 +11:00
Samuel Georges
46c473e2f2
Fixes fetching multi tiered pivot relation values
...
Refs https://github.com/daftspunk/oc-crm-plugin/issues/3
Minor code clean on select.js
2016-11-08 07:02:31 +11:00
Samuel Georges
6173ff177b
Typo in variable name
2016-11-02 08:58:07 +11:00
Samuel Georges
0aadcc6675
Merge paths and vars when calling widget handler
...
When an AJAX handler is called for a widget, the view paths and specified variables should be merged in to the controller. This sets the appropriate context:
1) Look at the widget first
2) Fall back to the controller
Fixes #2432
2016-11-02 08:50:15 +11:00
Samuel Georges
bc165078de
Removes redundant code
...
The form widget label and widgetDetails() method was intended for use by the Builder plugin, since it ended up using its own internal registration system, this is not used anywhere so is removed.
Refs https://github.com/octobercms/docs/issues/200
2016-11-01 08:15:03 +11:00
Samuel Georges
0b345ad592
Add 'readOnly' spec to form field
...
Same as disabled except data is still posted back
2016-09-27 16:50:52 +10:00
soulshockers
e10c162667
Fixed calling dynamic methods for dynamically extended widgets.
2016-08-05 18:51:27 +03:00
Samuel Georges
78a4067564
Make logic more explicit
...
This tightens up the rules of 7baea87068
2016-07-23 15:50:48 +10:00
Samuel Georges
7baea87068
Allow AJAX handlers to pipe objects to Laravel
...
Treat non scalar, non array, non RedirectResponse, non null as a Laravel compatible response
This brings AJAX handlers in line with page cycles, which do the same thing if the response is not a string. However in AJAX we should treat any scalar as a "result", not just a string. For all else (where not null), let Laravel handle it as a custom response object -- could be a model for serialization, or anything compatible.
Importantly to note when a custom redirect is sent, October's workflow is completely wiped out, so any partial updates, redirects, etc. will not occur. This is a normal and fair expectation.
Fixes #1784
2016-07-23 11:57:15 +10:00
Samuel Georges
e970d80443
Align AJAX logic: merge custom response last
...
This is to allow overriding the standard values
Refs #2209
2016-07-16 13:11:10 +10:00
Luke Towers
b73811fefc
Moves AJAX handler response handling
...
Fixes octobercms/october#2208
2016-07-13 09:51:18 -06:00
Samuel Georges
bcff1d3ecd
Widget classes are now extendable
...
Fixes #2078
Fixes #1586
2016-06-15 17:10:46 +10:00
Samuel Georges
171b14c6ab
Nicer error message when no DB and backend access attempt
...
This is for flat-file sites that don't use a database. If debug mode is on, it will show an error page with advice to set up the database. If debug mode is off, it will simply show a 404 page. Previously it was a nasty exception/plain error page.
2016-06-05 07:16:11 +10:00
Samuel Georges
e9be15cc15
Preferences -> Preference
...
Rename brandsetting config folder
2016-05-27 07:46:50 +10:00
Samuel Georges
cdb35f5070
UserPreferences -> UserPreference
...
(Models should be singular)
2016-05-27 07:35:32 +10:00
Samuel Georges
6c081d9265
Combine editor preferences and backend preferences
...
Add backend timezone setting used for converting display dates
2016-04-23 05:31:05 +10:00
Samuel Georges
0504da41f2
Add hasFields methods
...
formHasOutsideFields, formHasPrimaryTabs + formHasSecondaryTabs
2016-04-23 05:13:08 +10:00
Samuel Georges
87a4de40de
Address serialize/unserialize issues
...
This will require a cache clear for the combiner
Ref https://davidwalsh.name/php-serialize-unserialize-issues
2016-04-16 08:22:31 +10:00
Pásztor Gábor
9f3fcf27ed
Update AssetsList
2016-03-30 18:17:18 +02:00
Samuel Georges
a035acdc2c
Tidy up some logic, restore firstRowTitles setting
...
Refs #1856
2016-03-26 14:10:05 +11:00
Jérémy Gaulin
2a60e34558
Import options to configure the CSV reader + patch to prevent unfriendly error to be thrown due to bad import source file encoding (on AJAX request)
2016-03-26 12:54:13 +11:00
Samuel Georges
0aef151d9a
Add showSearch option to dropdown
...
This is a highly specific option, so we shouldn't add it to the FormField class itself
2016-03-25 18:21:58 +11:00
Samuel Georges
23f4d40ef2
Merge common functionality in to FormModelWidget
2016-03-25 18:01:58 +11:00
Samuel Georges
1241f584d0
Merge remote-tracking branch 'remotes/origin/stable' into ui
2016-03-01 07:02:07 +11:00
Samuel Georges
21f3ac93c1
Add support for HTML comments
...
Fixes #1808
2016-02-27 09:46:00 +11:00
alekseybobkov
a943708b99
UI updates
2016-02-19 22:12:41 -08:00
Joshua Wilson
6f3d7a58f2
Phpdoc cleanup for System\Traits
...
removed in WidgetMaker trait
phpdoc cleanup of backend traits and classes
Minor fix for cases when file is not found
2016-02-13 14:06:50 +11:00
Samuel Georges
3cfc7b6a5d
Move widget classes that are exclusive to their own space
2016-01-16 16:02:28 +11:00
Pásztor Gábor
31457bd2ee
Cleanup
2016-01-15 10:20:57 +01:00
Samuel Georges
2213c6f28c
Fix string comparison function
...
Flush stray output on view errors
2016-01-02 16:13:30 +11:00
Samuel Georges
a186a60c43
Fixes the datepicker saving an empty value when disabled
...
Refs https://github.com/responsiv/campaign-plugin/issues/4
2015-12-09 08:19:53 +11:00
Samuel Georges
04e61adac3
Add official support for "nolink" columns - Fixes #1599
...
To make a row non-clickable, use the `clickable` option in the list column definition
2015-12-05 10:05:42 +11:00
Samuel Georges
33d39c8b34
Minor
2015-10-17 10:51:54 +11:00
Samuel Georges
f446f8acd4
Merge pull request #1506 from tschallacka/FormFieldCatchForEmptyYaml
...
Fixed form field parsing to accept no config
2015-10-17 10:23:58 +11:00
Samuel Georges
ef22ac934d
DRY up code from #1504
2015-10-17 10:16:49 +11:00
tschallacka
c4fffbd6f7
Fixed form field parsing to accept no config
...
If a programmer would define a yaml like
fields:
shortcut:
country:
It would fail with message
"array_key_exists() expects parameter 2 to be array, null given" on line 275 of ..\modules\backend\classes\FormField.php
The yaml parsing returns a null. This check intercepts that null value being passed to the function and turns it into a proper array.
2015-10-09 16:06:23 +02:00
flynsarmy
82c2787f39
Add support for default values in form widgets
2015-10-09 13:51:33 +10:00
Samuel Georges
1c8d021a35
Adds the ability to remove navigation items
...
Included tests
Refs #1413
2015-09-12 08:45:58 +10:00
Samuel Georges
2a6b58a3fe
Merge pull request #1425 from Flynsarmy/getPublicActions
...
Add getPublicActions controller method
2015-09-08 12:48:44 +10:00
flynsarmy
98e1d0fe4d
Add getPublicActions controller method
2015-09-07 14:17:09 +10:00
Samuel Georges
917cfd437f
Make sure a tab is defined always - Refs #1397
2015-08-29 16:45:01 +10:00
Jérémy GAULIN
2872e80a14
Merge branch 'develop' of https://github.com/octobercms/october into fix-extending-plugin
2015-08-03 18:20:20 +02:00
Jérémy GAULIN
f22a16d482
Fix NavigationManager error when extending a side menu by adding a new item.
...
The code and owner were not set in the value array.
2015-08-03 18:07:56 +02:00
Samuel Georges
bb4c2da404
Revert change from #1315 , fixes original issue, write tests
2015-07-28 18:52:12 +10:00
Samuel Georges
48b4a137fa
Allow passing explicit content to hints
2015-07-25 09:34:47 +10:00
Samuel Georges
d453f922dc
Improve the hint API, add inset mode to loader
2015-07-25 09:23:34 +10:00
Samuel Georges
fc490b18e9
Add actionUrl() helper to backend controller
...
Used for generating URLs to the current controller
2015-07-23 19:44:54 +10:00
Samuel Georges
846feb6a33
FileUpload now triggers dependsOn event
...
form.beforeRefresh event now uses dataholder pattern
Improve exception handling in ControllerBehavior
2015-07-18 08:50:31 +10:00
Samuel Georges
606892143b
Added new security config option cms.enableCsrfProtection
2015-07-04 09:31:28 +10:00
Samuel Georges
f9c921a797
Adds getAjaxHandler() API to controllers
...
Fixes bug where update process fails midway
2015-06-30 08:56:53 +10:00
Samuel Georges
c9a9c6ea16
List columns now support specifying a default option used when the value would otherwise be null.
2015-06-27 10:39:07 +10:00
Samuel Georges
d9dfa21372
Adds CSRF protection to the backend - Refs #105
2015-06-20 21:17:58 +10:00
Samuel Georges
cd1d62d8d7
AJAX requests can only use the POST method
2015-06-20 20:18:58 +10:00
Samuel Georges
37e5b2328f
Form text/password/number fields now support maxlength attribute - Fixes #1210
2015-06-20 12:00:37 +10:00
Samuel Georges
e71025de09
Tidy up from #1219
2015-06-18 18:46:03 +10:00
flynsarmy
9a9a525180
Remove empty tabs when removing form fields
2015-06-18 14:44:43 +10:00
Samuel Georges
9ed73e0cba
Updates for new symbolizePath API, requires latest rain lib code
...
Backend layouts can now be provided by plugins
2015-05-30 15:54:47 +10:00
Samuel Georges
a1291c3716
Restyle Administrator pages
2015-05-21 22:55:08 +10:00
Samuel Georges
cceae62812
Apply incremental default order values on side menu items
...
Refs #1079
2015-05-02 10:47:06 +10:00
Samuel Georges
7c205c7ceb
Merge pull request #1079 from dshoreman/sortable-sidenavs
...
Add support for sorting sideMenu items
2015-05-02 10:28:55 +10:00
Samuel Georges
9173e3bb9a
Merge branch 'develop' into media-manager
2015-04-23 18:09:18 +10:00
Dave Shoreman
e6342dbd8a
Add support for sorting sideMenu items
...
Up until now, only main menu items have supported the 'order' parameter
to set the sort order. This adds the same support to side menus, which
is especially useful when one plugin extends the side menu of another.
There is one downside: any existing plugins that use the side menu will
inevitably end up with their menu items appearing out of order, until
the author adds the 'order' parameter to their sideMenu array.
2015-04-22 22:16:06 +01:00
Samuel Georges
1a037bad04
Add the ability to include middleware in CMS / Backend controllers
...
Add init.php script to plugins
Fixes https://github.com/octobercms/library/issues/106
2015-04-21 20:07:34 +10:00
alekseybobkov
c1740c479c
Media Manager: implemented insert link, insert image, and crop and insert features. Minor fixes in October core and third-party JS plugins.
2015-04-11 18:55:02 -07:00
Samuel Georges
7e9e5adfb5
Merge pull request #1032 from keiosweb/fix_hhvm_relation_formfield_issue
...
fixes HHVM relation formfield
2015-04-01 19:02:08 +11:00
Samuel Georges
c4027b8bc6
Added a defaultFrom option to form fields
...
Default context of manage and pivot forms is now create and update respectively, instead of the old value relation
2015-03-28 16:14:22 +11:00
Łukasz Biały
e19759c9f9
fixes HHVM relation formfield (belongsToMany in particular) issue in which no data is pulled from relation
2015-03-27 23:03:38 +01:00
Samuel Georges
a743d78658
List Column of type switch now has text-center CSS
...
List Column now have getName and getId accessors
2015-03-25 19:35:00 +11:00
Samuel Georges
0916c7a650
Fixes #1008 - typo in code
2015-03-18 05:41:39 +11:00
Samuel Georges
77d3ab8b67
Finish basic theme utilities: properties, import/export, duplicate, delete
2015-03-16 19:00:39 +11:00
Samuel Georges
9b8e1ce3c1
Improve theme list to allow editing properties
2015-03-14 18:09:54 +11:00
Samuel Georges
e479ccbda6
Tab options can now specify 'defaultTab'
2015-03-14 17:06:03 +11:00
Samuel Georges
c6bfd5d01c
Move this logic to no longer depend on AR model
2015-03-10 09:34:59 +11:00
Samuel Georges
668457b4e6
Updated deprecated references
...
Str::evalHtmlId -> October\Rain\Html\Helper::nameToId
Str::evalHtmlArray -> October\Rain\Html\Helper::nameToArray
Str::stripHtml -> October\Rain\Html\Helper::strip
Str::limitHtml -> October\Rain\Html\Helper::limit
Str::cleanHtml -> October\Rain\Html\Helper::clean
2015-03-07 12:48:39 +11:00
Samuel Georges
8c41bc181e
Model can now resolve this for us
2015-03-07 12:28:50 +11:00