├── .gitattributes ├── themes └── demo │ ├── partials │ ├── .gitkeep │ ├── footer.htm │ ├── calcresult.htm │ └── explain │ │ └── plugins.htm │ ├── content │ ├── placeholder │ │ ├── layout.txt │ │ └── page.txt │ └── welcome.htm │ ├── assets │ ├── less │ │ ├── pages │ │ │ └── all.less │ │ ├── theme │ │ │ ├── mixins.less │ │ │ ├── all.less │ │ │ └── boot.less │ │ ├── layouts │ │ │ └── all.less │ │ └── theme.less │ ├── images │ │ ├── october.png │ │ └── theme-preview.png │ ├── fonts │ │ ├── lato-black-webfont.eot │ │ ├── lato-black-webfont.ttf │ │ ├── lato-light-webfont.eot │ │ ├── lato-light-webfont.ttf │ │ ├── lato-black-webfont.woff │ │ ├── lato-italic-webfont.eot │ │ ├── lato-italic-webfont.ttf │ │ ├── lato-italic-webfont.woff │ │ ├── lato-light-webfont.woff │ │ ├── lato-regular-webfont.eot │ │ ├── lato-regular-webfont.ttf │ │ └── lato-regular-webfont.woff │ ├── javascript │ │ └── app.js │ └── vendor │ │ ├── font-awesome │ │ ├── font │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.ttf │ │ │ └── fontawesome-webfont.woff │ │ └── less │ │ │ └── path.less │ │ └── bootstrap │ │ └── less │ │ ├── component-animations.less │ │ ├── wells.less │ │ ├── breadcrumbs.less │ │ ├── close.less │ │ └── thumbnails.less │ ├── theme.yaml │ ├── pages │ ├── 404.htm │ ├── error.htm │ └── plugins.htm │ └── composer.json ├── config └── dev │ └── .gitignore ├── modules ├── backend │ ├── assets │ │ ├── less │ │ │ ├── .gitignore │ │ │ ├── core │ │ │ │ └── boot.less │ │ │ ├── layout │ │ │ │ └── footer.less │ │ │ └── controls │ │ │ │ └── reportwidgets.less │ │ ├── images │ │ │ ├── favicon.png │ │ │ ├── tab-link.png │ │ │ ├── bitmap-icons.png │ │ │ ├── flag-icons-large.png │ │ │ ├── flag-icons-small.png │ │ │ ├── treeview-icons.png │ │ │ ├── loading-indicator.gif │ │ │ ├── october-logo-text.png │ │ │ ├── primary-tab-shape.png │ │ │ ├── treeview-submenu-tabs.png │ │ │ └── secondary-tab-shape-content.svg │ │ ├── font │ │ │ ├── OpenSans-Bold.eot │ │ │ ├── OpenSans-Bold.ttf │ │ │ ├── OpenSans-Bold.woff │ │ │ ├── OpenSans-Italic.eot │ │ │ ├── OpenSans-Italic.ttf │ │ │ ├── OpenSans-Light.eot │ │ │ ├── OpenSans-Light.ttf │ │ │ ├── OpenSans-Light.woff │ │ │ ├── OpenSans-Italic.woff │ │ │ ├── OpenSans-Regular.eot │ │ │ ├── OpenSans-Regular.ttf │ │ │ ├── OpenSans-Regular.woff │ │ │ ├── OpenSans-Semibold.eot │ │ │ ├── OpenSans-Semibold.ttf │ │ │ ├── OpenSans-Semibold.woff │ │ │ ├── OpenSans-LightItalic.eot │ │ │ ├── OpenSans-LightItalic.ttf │ │ │ ├── OpenSans-LightItalic.woff │ │ │ ├── OpenSans-SemiboldItalic.eot │ │ │ ├── OpenSans-SemiboldItalic.ttf │ │ │ └── OpenSans-SemiboldItalic.woff │ │ ├── vendor │ │ │ ├── select2 │ │ │ │ ├── select2.png │ │ │ │ ├── select2x2.png │ │ │ │ ├── select2-spinner.gif │ │ │ │ ├── bower.json │ │ │ │ ├── select2_locale_zh-CN.js │ │ │ │ ├── select2_locale_zh-TW.js │ │ │ │ ├── select2_locale_ja.js │ │ │ │ ├── select2_locale_ko.js │ │ │ │ ├── select2_locale_ug-CN.js │ │ │ │ ├── select2_locale_hu.js │ │ │ │ ├── select2_locale_he.js │ │ │ │ ├── select2_locale_tr.js │ │ │ │ ├── select2_locale_is.js │ │ │ │ ├── select2_locale_th.js │ │ │ │ ├── select2_locale_ms.js │ │ │ │ ├── select2_locale_nl.js │ │ │ │ ├── select2_locale_ka.js │ │ │ │ ├── select2_locale_sv.js │ │ │ │ ├── select2_locale_da.js │ │ │ │ ├── select2_locale_it.js │ │ │ │ ├── select2_locale_no.js │ │ │ │ └── select2_locale_pt-BR.js │ │ │ ├── sweet-alert │ │ │ │ └── sweet-alert-combine.less │ │ │ └── flot │ │ │ │ └── Makefile │ │ └── js │ │ │ ├── auth │ │ │ └── auth.js │ │ │ └── october.tooltip.js │ ├── controllers │ │ ├── users │ │ │ ├── index.htm │ │ │ ├── config_form.yaml │ │ │ └── config_list.yaml │ │ ├── accesslogs │ │ │ ├── _list_toolbar.htm │ │ │ ├── _hint.htm │ │ │ ├── index.htm │ │ │ └── config_list.yaml │ │ ├── index │ │ │ ├── index.htm │ │ │ └── config_report_container.yaml │ │ ├── usergroups │ │ │ ├── _list_toolbar.htm │ │ │ ├── index.htm │ │ │ ├── config_form.yaml │ │ │ └── config_list.yaml │ │ └── editorpreferences │ │ │ ├── config_form.yaml │ │ │ └── _example_code.htm │ ├── formwidgets │ │ ├── codeeditor │ │ │ └── assets │ │ │ │ └── vendor │ │ │ │ └── ace │ │ │ │ ├── mode-text.js │ │ │ │ ├── ext-error_marker.js │ │ │ │ └── mode-plain_text.js │ │ ├── fileupload │ │ │ └── partials │ │ │ │ ├── _container.htm │ │ │ │ └── _fileupload.htm │ │ ├── recordfinder │ │ │ └── partials │ │ │ │ ├── _container.htm │ │ │ │ └── _recordfinder_form.htm │ │ ├── richeditor │ │ │ ├── assets │ │ │ │ ├── vendor │ │ │ │ │ └── redactor │ │ │ │ │ │ └── redactor-font.eot │ │ │ │ └── js │ │ │ │ │ ├── build.js │ │ │ │ │ └── plugin.cleanup.js │ │ │ └── partials │ │ │ │ └── _richeditor.htm │ │ ├── datatable │ │ │ └── partials │ │ │ │ └── _datatable.htm │ │ ├── relation │ │ │ └── partials │ │ │ │ └── _relation.htm │ │ ├── datagrid │ │ │ └── partials │ │ │ │ └── _datagrid.htm │ │ ├── datepicker │ │ │ └── assets │ │ │ │ ├── js │ │ │ │ └── build.js │ │ │ │ └── css │ │ │ │ └── datepicker.css │ │ └── repeater │ │ │ └── partials │ │ │ └── _repeater.htm │ ├── behaviors │ │ └── relationcontroller │ │ │ ├── partials │ │ │ ├── _view.htm │ │ │ ├── _button_add.htm │ │ │ ├── _button_link.htm │ │ │ ├── _button_create.htm │ │ │ ├── _button_unlink.htm │ │ │ ├── _button_update.htm │ │ │ └── _container.htm │ │ │ └── assets │ │ │ └── css │ │ │ └── relation.css │ ├── widgets │ │ ├── form │ │ │ └── partials │ │ │ │ ├── _field_widget.htm │ │ │ │ ├── _form_fields.htm │ │ │ │ ├── _form-container.htm │ │ │ │ ├── _field_partial.htm │ │ │ │ ├── _field_section.htm │ │ │ │ ├── _field_hint.htm │ │ │ │ ├── _form.htm │ │ │ │ ├── _field_password.htm │ │ │ │ ├── _field_textarea.htm │ │ │ │ ├── _field_text.htm │ │ │ │ ├── _field_number.htm │ │ │ │ ├── _field-container.htm │ │ │ │ ├── _field_balloon-selector.htm │ │ │ │ ├── _section-container.htm │ │ │ │ ├── _field_checkbox.htm │ │ │ │ ├── _field.htm │ │ │ │ └── _section.htm │ │ ├── filter │ │ │ └── partials │ │ │ │ ├── _filter_scopes.htm │ │ │ │ ├── _filter.htm │ │ │ │ ├── _scope_checkbox.htm │ │ │ │ └── _scope_group.htm │ │ ├── table │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ └── table-icons.gif │ │ │ │ └── js │ │ │ │ │ └── build.js │ │ │ └── partials │ │ │ │ └── _table.htm │ │ ├── lists │ │ │ └── partials │ │ │ │ ├── _list-container.htm │ │ │ │ ├── _list_body_rows.htm │ │ │ │ ├── _list_body_checkbox.htm │ │ │ │ └── _list_body_tree.htm │ │ ├── grid │ │ │ ├── partials │ │ │ │ ├── _button_delete.htm │ │ │ │ ├── _button_insert.htm │ │ │ │ └── _toolbar.htm │ │ │ └── assets │ │ │ │ ├── css │ │ │ │ └── datagrid.css │ │ │ │ └── less │ │ │ │ └── datagrid.less │ │ ├── search │ │ │ └── partials │ │ │ │ └── _search.htm │ │ └── toolbar │ │ │ └── partials │ │ │ └── _toolbar.htm │ ├── layouts │ │ ├── _flash_messages.htm │ │ ├── _custom_styles.htm │ │ └── _footer.htm │ ├── models │ │ ├── backendpreferences │ │ │ └── fields.yaml │ │ ├── usergroup │ │ │ ├── columns.yaml │ │ │ └── fields.yaml │ │ ├── UserThrottle.php │ │ └── user │ │ │ └── columns.yaml │ ├── database │ │ ├── seeds │ │ │ └── DatabaseSeeder.php │ │ └── migrations │ │ │ ├── 2013_10_01_000002_Db_Backend_User_Groups.php │ │ │ ├── 2013_10_01_000003_Db_Backend_Users_Groups.php │ │ │ ├── 2014_10_01_000006_Db_Backend_Access_Log.php │ │ │ ├── 2014_10_01_000007_Db_Backend_Add_Description_Field.php │ │ │ └── 2014_01_04_000005_Db_Backend_User_Preferences.php │ ├── facades │ │ ├── Backend.php │ │ ├── BackendAuth.php │ │ └── BackendMenu.php │ ├── routes.php │ ├── classes │ │ └── ReportWidgetBase.php │ ├── views │ │ ├── mail │ │ │ ├── restore.htm │ │ │ └── invite.htm │ │ └── access_denied.php │ └── composer.json ├── system │ ├── controllers │ │ ├── eventlogs │ │ │ ├── _message_column.htm │ │ │ ├── _hint.htm │ │ │ ├── index.htm │ │ │ ├── config_form.yaml │ │ │ └── config_list.yaml │ │ ├── requestlogs │ │ │ ├── _hint.htm │ │ │ ├── index.htm │ │ │ ├── config_form.yaml │ │ │ ├── _referer_field.htm │ │ │ └── config_list.yaml │ │ ├── settings │ │ │ ├── index.htm │ │ │ └── mysettings.htm │ │ ├── mailtemplates │ │ │ ├── _list_layouts_toolbar.htm │ │ │ ├── _list_templates_toolbar.htm │ │ │ ├── config_form.yaml │ │ │ ├── config_layouts_list.yaml │ │ │ ├── config_templates_list.yaml │ │ │ └── index.htm │ │ ├── updates │ │ │ ├── _column_author.htm │ │ │ ├── manage.htm │ │ │ ├── config_list.yaml │ │ │ ├── config_manage_list.yaml │ │ │ └── _list_toolbar.htm │ │ └── maillayouts │ │ │ └── config_form.yaml │ ├── assets │ │ ├── font │ │ │ ├── OpenSans-Light-webfont.eot │ │ │ ├── OpenSans-Light-webfont.ttf │ │ │ ├── OpenSans-Light-webfont.woff │ │ │ ├── OpenSans-Semibold-webfont.eot │ │ │ ├── OpenSans-Semibold-webfont.ttf │ │ │ ├── OpenSans-Semibold-webfont.woff │ │ │ ├── OpenSans-LightItalic-webfont.eot │ │ │ ├── OpenSans-LightItalic-webfont.ttf │ │ │ ├── OpenSans-LightItalic-webfont.woff │ │ │ ├── OpenSans-SemiboldItalic-webfont.eot │ │ │ ├── OpenSans-SemiboldItalic-webfont.ttf │ │ │ └── OpenSans-SemiboldItalic-webfont.woff │ │ └── vendor │ │ │ ├── font-autumn │ │ │ ├── font │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ └── less │ │ │ │ └── path.less │ │ │ ├── bootstrap │ │ │ └── less │ │ │ │ ├── rowlink.less │ │ │ │ ├── component-animations.less │ │ │ │ └── close.less │ │ │ └── syntaxhighlighter │ │ │ └── scripts │ │ │ └── shBrushPlain.js │ ├── models │ │ ├── eventlog │ │ │ ├── fields.yaml │ │ │ └── columns.yaml │ │ ├── requestlog │ │ │ ├── fields.yaml │ │ │ └── columns.yaml │ │ ├── maillayout │ │ │ └── columns.yaml │ │ ├── mailtemplate │ │ │ └── columns.yaml │ │ ├── pluginversion │ │ │ └── columns.yaml │ │ └── MailLayout.php │ ├── routes.php │ ├── database │ │ ├── seeds │ │ │ └── DatabaseSeeder.php │ │ └── migrations │ │ │ ├── 2013_10_01_000007_Db_System_Add_Disabled_Flag.php │ │ │ ├── 2013_10_01_000005_Db_System_Settings.php │ │ │ ├── 2013_10_01_000003_Db_System_Plugin_Versions.php │ │ │ ├── 2014_10_01_000011_Db_System_Event_Logs.php │ │ │ ├── 2014_10_01_000013_Db_System_Sessions.php │ │ │ ├── 2013_10_01_000006_Db_System_Parameters.php │ │ │ ├── 2014_10_01_000012_Db_System_Request_Logs.php │ │ │ ├── 2013_10_01_000004_Db_System_Plugin_History.php │ │ │ ├── 2014_10_01_000010_Db_Jobs.php │ │ │ ├── 2013_10_01_000001_Db_Deferred_Bindings.php │ │ │ └── 2013_10_01_000009_Db_System_Mail_Layouts.php │ ├── partials │ │ ├── _settings_menu.htm │ │ └── _settings_menu_toolbar.htm │ ├── twig │ │ └── Engine.php │ └── composer.json └── cms │ ├── assets │ └── images │ │ └── default-theme-preview.png │ ├── classes │ ├── PageCode.php │ ├── PartialCode.php │ ├── ObjectMemoryCache.php │ ├── LayoutCode.php │ ├── asset │ │ └── fields.yaml │ ├── content │ │ └── fields.yaml │ ├── UnknownComponent.php │ ├── Partial.php │ ├── layout │ │ └── fields.yaml │ └── partial │ │ └── fields.yaml │ ├── widgets │ ├── componentlist │ │ └── partials │ │ │ ├── _body.htm │ │ │ ├── _components.htm │ │ │ ├── _toolbar.htm │ │ │ └── _items.htm │ ├── templatelist │ │ └── partials │ │ │ ├── _body.htm │ │ │ └── _templates.htm │ └── assetlist │ │ └── partials │ │ ├── _files.htm │ │ └── _body.htm │ ├── controllers │ ├── index │ │ ├── config_content_list.yaml │ │ ├── config_layout_list.yaml │ │ ├── config_partial_list.yaml │ │ ├── config_page_list.yaml │ │ ├── _form_page.htm │ │ ├── _layout_toolbar.htm │ │ ├── _partial_toolbar.htm │ │ └── _content_toolbar.htm │ └── themes │ │ ├── index.htm │ │ ├── config_form.yaml │ │ └── download.htm │ ├── routes.php │ ├── models │ ├── maintenancesettings │ │ └── fields.yaml │ ├── themeexport │ │ └── fields.yaml │ └── themeimport │ │ └── fields.yaml │ ├── views │ ├── 404.php │ └── error.php │ ├── database │ └── migrations │ │ └── 2014_10_01_000001_Db_Cms_Theme_Data.php │ ├── formwidgets │ └── components │ │ └── partials │ │ └── _formcomponents.htm │ ├── twig │ ├── PageNode.php │ ├── DefaultNode.php │ ├── StylesNode.php │ ├── ScriptsNode.php │ └── ContentNode.php │ └── composer.json ├── storage ├── app │ └── .gitignore ├── cms │ ├── .gitignore │ ├── cache │ │ └── .gitignore │ ├── combiner │ │ └── .gitignore │ └── twig │ │ └── .gitignore ├── temp │ └── .gitignore ├── .gitignore ├── logs │ └── .gitignore └── framework │ ├── cache │ └── .gitignore │ ├── views │ └── .gitignore │ ├── sessions │ └── .gitignore │ └── .gitignore ├── tests ├── fixtures │ ├── themes │ │ ├── test │ │ │ ├── assets │ │ │ │ ├── css │ │ │ │ │ ├── style1.css │ │ │ │ │ └── style2.css │ │ │ │ └── js │ │ │ │ │ ├── script1.js │ │ │ │ │ └── script2.js │ │ │ ├── content │ │ │ │ ├── a │ │ │ │ │ └── a-content.htm │ │ │ │ ├── page-content.htm │ │ │ │ └── layout-content.txt │ │ │ ├── partials │ │ │ │ ├── a │ │ │ │ │ └── a-partial.htm │ │ │ │ ├── ajax-result.htm │ │ │ │ ├── ajax-second-result.htm │ │ │ │ ├── layout-partial.htm │ │ │ │ └── page-partial.htm │ │ │ ├── layouts │ │ │ │ ├── no-php.htm │ │ │ │ ├── sidebar.htm │ │ │ │ ├── a │ │ │ │ │ └── a-layout.htm │ │ │ │ ├── partials.htm │ │ │ │ ├── content.htm │ │ │ │ ├── placeholder.htm │ │ │ │ ├── ajax-test.htm │ │ │ │ ├── php-parser-test.htm │ │ │ │ └── cycle-test.htm │ │ │ ├── temporary │ │ │ │ └── .gitignore │ │ │ ├── pages │ │ │ │ ├── index.htm │ │ │ │ ├── 404.htm │ │ │ │ ├── b │ │ │ │ │ ├── b-page.htm │ │ │ │ │ └── c │ │ │ │ │ │ └── c-page.htm │ │ │ │ ├── no-layout.htm │ │ │ │ ├── with-layout.htm │ │ │ │ ├── a │ │ │ │ │ └── a-page.htm │ │ │ │ ├── blog-archive.htm │ │ │ │ ├── blog-post.htm │ │ │ │ ├── no-partial.htm │ │ │ │ ├── authors.htm │ │ │ │ ├── throw-php.htm │ │ │ │ ├── with-content.htm │ │ │ │ ├── with-partials.htm │ │ │ │ ├── code-namespaces.htm │ │ │ │ ├── ajax-test.htm │ │ │ │ ├── with-placeholder.htm │ │ │ │ ├── with-component.htm │ │ │ │ ├── cycle-test.htm │ │ │ │ ├── optional-short-php-tags.htm │ │ │ │ ├── optional-full-php-tags.htm │ │ │ │ └── with-components.htm │ │ │ └── testobjects │ │ │ │ ├── plain.html │ │ │ │ ├── subdir │ │ │ │ └── obj.html │ │ │ │ ├── component.htm │ │ │ │ ├── components.htm │ │ │ │ └── compound.htm │ │ └── apitest │ │ │ └── .gitignore │ ├── plugins │ │ ├── october │ │ │ ├── noupdates │ │ │ │ ├── updates │ │ │ │ │ └── version.yaml │ │ │ │ └── Plugin.php │ │ │ ├── sample │ │ │ │ ├── updates │ │ │ │ │ └── version.yaml │ │ │ │ └── Plugin.php │ │ │ └── tester │ │ │ │ ├── updates │ │ │ │ └── version.yaml │ │ │ │ ├── components │ │ │ │ └── Post.php │ │ │ │ └── Plugin.php │ │ └── testvendor │ │ │ └── test │ │ │ └── Plugin.php │ └── cms │ │ ├── reference │ │ ├── compound-markup.htm │ │ ├── compound-markup-settings.htm │ │ ├── compound-full.htm │ │ └── namespaces.php │ │ └── filehelper │ │ ├── simple.ini │ │ ├── sections.ini │ │ └── subsections.ini ├── TestCase.php ├── functional │ └── phpunit.xml └── unit │ ├── system │ └── classes │ │ └── TranslatorTest.php │ ├── phpunit.xml │ └── backend │ └── classes │ └── WidgetManagerTest.php ├── .editorconfig ├── .gitignore ├── plugins └── october │ └── demo │ ├── components │ └── todo │ │ ├── list.htm │ │ └── default.htm │ ├── Plugin.php │ └── composer.json └── server.php /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto -------------------------------------------------------------------------------- /themes/demo/partials/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/dev/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /modules/backend/assets/less/.gitignore: -------------------------------------------------------------------------------- 1 | *.css -------------------------------------------------------------------------------- /storage/app/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/cms/.gitignore: -------------------------------------------------------------------------------- 1 | disabled.json 2 | -------------------------------------------------------------------------------- /storage/temp/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/.gitignore: -------------------------------------------------------------------------------- 1 | system.log 2 | laravel.log -------------------------------------------------------------------------------- /storage/cms/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/cms/combiner/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/cms/twig/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/logs/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/assets/css/style1.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/assets/css/style2.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/assets/js/script1.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/assets/js/script2.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /storage/framework/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/framework/views/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/sessions/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/noupdates/updates/version.yaml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/content/a/a-content.htm: -------------------------------------------------------------------------------- 1 | A content -------------------------------------------------------------------------------- /tests/fixtures/themes/test/content/page-content.htm: -------------------------------------------------------------------------------- 1 | PAGE CONTENT -------------------------------------------------------------------------------- /tests/fixtures/themes/test/partials/a/a-partial.htm: -------------------------------------------------------------------------------- 1 | A partial -------------------------------------------------------------------------------- /tests/fixtures/themes/test/partials/ajax-result.htm: -------------------------------------------------------------------------------- 1 | {{ var }} -------------------------------------------------------------------------------- /tests/fixtures/cms/reference/compound-markup.htm: -------------------------------------------------------------------------------- 1 |

Hello, world!

-------------------------------------------------------------------------------- /tests/fixtures/themes/apitest/.gitignore: -------------------------------------------------------------------------------- 1 | *.htm 2 | testobjects/*.htm -------------------------------------------------------------------------------- /tests/fixtures/themes/test/content/layout-content.txt: -------------------------------------------------------------------------------- 1 | LAYOUT CONTENT -------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/no-php.htm: -------------------------------------------------------------------------------- 1 |
{{ page() }}
-------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/sidebar.htm: -------------------------------------------------------------------------------- 1 |
{% page %}
-------------------------------------------------------------------------------- /tests/fixtures/themes/test/partials/ajax-second-result.htm: -------------------------------------------------------------------------------- 1 | second -------------------------------------------------------------------------------- /tests/fixtures/themes/test/partials/layout-partial.htm: -------------------------------------------------------------------------------- 1 | LAYOUT PARTIAL -------------------------------------------------------------------------------- /tests/fixtures/themes/test/temporary/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /modules/backend/controllers/users/index.htm: -------------------------------------------------------------------------------- 1 | listRender() ?> -------------------------------------------------------------------------------- /modules/backend/formwidgets/codeeditor/assets/vendor/ace/mode-text.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/fixtures/cms/filehelper/simple.ini: -------------------------------------------------------------------------------- 1 | var1 = "value 1" 2 | var2 = "value 21" -------------------------------------------------------------------------------- /modules/system/controllers/eventlogs/_message_column.htm: -------------------------------------------------------------------------------- 1 | summary) ?> -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/index.htm: -------------------------------------------------------------------------------- 1 | url = "/" 2 | == 3 |

My Webpage

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/a/a-layout.htm: -------------------------------------------------------------------------------- 1 |
LAYOUT CONTENT {{ page() }}
-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/404.htm: -------------------------------------------------------------------------------- 1 | url = "404" 2 | == 3 |

Page not found

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/testobjects/plain.html: -------------------------------------------------------------------------------- 1 |

This is a test HTML content file.

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/partials/page-partial.htm: -------------------------------------------------------------------------------- 1 | PAGE PARTIAL {{ firstName }} {{ lastName }} -------------------------------------------------------------------------------- /tests/fixtures/themes/test/testobjects/subdir/obj.html: -------------------------------------------------------------------------------- 1 |

This is an object in a subdirectory.

-------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_view.htm: -------------------------------------------------------------------------------- 1 | render() ?> -------------------------------------------------------------------------------- /modules/backend/controllers/accesslogs/_list_toolbar.htm: -------------------------------------------------------------------------------- 1 |
2 | 3 |
-------------------------------------------------------------------------------- /tests/fixtures/cms/reference/compound-markup-settings.htm: -------------------------------------------------------------------------------- 1 | var = "value" 2 | == 3 |

Hello, world!

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/partials.htm: -------------------------------------------------------------------------------- 1 |
{{ partial('layout-partial') }}{{ page() }}
-------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/content.htm: -------------------------------------------------------------------------------- 1 |
{{ content('layout-content.txt') }}{{ page() }}
-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/b/b-page.htm: -------------------------------------------------------------------------------- 1 | url = "/bpage" 2 | == 3 |

This page is a subdirectory

-------------------------------------------------------------------------------- /themes/demo/content/placeholder/layout.txt: -------------------------------------------------------------------------------- 1 | 2 | ... 3 | {% placeholder head %} 4 | 5 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/b/c/c-page.htm: -------------------------------------------------------------------------------- 1 | url = "/cpage" 2 | == 3 |

This page is a subdirectory

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/no-layout.htm: -------------------------------------------------------------------------------- 1 | url = "/no-layout" 2 | layout = "caramba" 3 | == 4 |

Hey

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/with-layout.htm: -------------------------------------------------------------------------------- 1 | url = "/with-layout" 2 | layout = "sidebar" 3 | == 4 |

Hey

-------------------------------------------------------------------------------- /themes/demo/assets/less/pages/all.less: -------------------------------------------------------------------------------- 1 | // 2 | // Pages 3 | // 4 | // Styles specific to individual pages. 5 | // -------------------------------------------------------------------------------- /modules/system/controllers/eventlogs/_hint.htm: -------------------------------------------------------------------------------- 1 | 2 |

3 | 4 |

-------------------------------------------------------------------------------- /modules/system/controllers/requestlogs/_hint.htm: -------------------------------------------------------------------------------- 1 | 2 |

3 | 4 |

-------------------------------------------------------------------------------- /themes/demo/assets/images/october.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/images/october.png -------------------------------------------------------------------------------- /modules/backend/assets/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/favicon.png -------------------------------------------------------------------------------- /modules/backend/assets/images/tab-link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/tab-link.png -------------------------------------------------------------------------------- /modules/backend/controllers/accesslogs/_hint.htm: -------------------------------------------------------------------------------- 1 | 2 |

3 | 60])) ?> 4 |

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/a/a-page.htm: -------------------------------------------------------------------------------- 1 | url = "/apage" 2 | layout = "a/a-layout" 3 | == 4 |

This page is a subdirectory

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/blog-archive.htm: -------------------------------------------------------------------------------- 1 | url = "/blog/archive-page/:page?1" 2 | == 3 |

Blog Archive

4 |

Hi there!

-------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Bold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Bold.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Bold.ttf -------------------------------------------------------------------------------- /storage/framework/.gitignore: -------------------------------------------------------------------------------- 1 | config.php 2 | routes.php 3 | compiled.php 4 | services.json 5 | events.scanned.php 6 | routes.scanned.php 7 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/blog-post.htm: -------------------------------------------------------------------------------- 1 | url = "/blog/post/:url_title" 2 | == 3 |

Blog post

4 |

This is a blog post page

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/no-partial.htm: -------------------------------------------------------------------------------- 1 | url = "/no-partial" 2 | layout = "caramba" 3 | == 4 |

Hey

5 | {{ partial('caramba') }} -------------------------------------------------------------------------------- /tests/fixtures/themes/test/testobjects/component.htm: -------------------------------------------------------------------------------- 1 | var = value 2 | [testArchive] 3 | posts-per-page = 10 4 | == 5 |

This is a paragraph

-------------------------------------------------------------------------------- /themes/demo/assets/images/theme-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/images/theme-preview.png -------------------------------------------------------------------------------- /themes/demo/assets/less/theme/mixins.less: -------------------------------------------------------------------------------- 1 | // 2 | // Mixins file 3 | // 4 | // Space for any custom mixins used by this application 5 | // 6 | -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Bold.woff -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Italic.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Italic.ttf -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Light.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Light.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Light.ttf -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Light.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Light.woff -------------------------------------------------------------------------------- /modules/backend/assets/images/bitmap-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/bitmap-icons.png -------------------------------------------------------------------------------- /tests/fixtures/cms/reference/compound-full.htm: -------------------------------------------------------------------------------- 1 | var = "value" 2 | == 3 | 6 | == 7 |

Hello, world!

-------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-black-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-black-webfont.eot -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-black-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-black-webfont.ttf -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-light-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-light-webfont.eot -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-light-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-light-webfont.ttf -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Italic.woff -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Regular.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Regular.ttf -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Regular.woff -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Semibold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Semibold.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Semibold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Semibold.ttf -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-Semibold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-Semibold.woff -------------------------------------------------------------------------------- /modules/backend/assets/images/flag-icons-large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/flag-icons-large.png -------------------------------------------------------------------------------- /modules/backend/assets/images/flag-icons-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/flag-icons-small.png -------------------------------------------------------------------------------- /modules/backend/assets/images/treeview-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/treeview-icons.png -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/vendor/select2/select2.png -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-black-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-black-webfont.woff -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-italic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-italic-webfont.eot -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-italic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-italic-webfont.ttf -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-italic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-italic-webfont.woff -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-light-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-light-webfont.woff -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-regular-webfont.eot -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-regular-webfont.ttf -------------------------------------------------------------------------------- /themes/demo/assets/fonts/lato-regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/fonts/lato-regular-webfont.woff -------------------------------------------------------------------------------- /themes/demo/assets/javascript/app.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Application 3 | */ 4 | 5 | $(document).tooltip({ 6 | selector: "[data-toggle=tooltip]" 7 | }) 8 | -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-LightItalic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-LightItalic.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-LightItalic.ttf -------------------------------------------------------------------------------- /modules/backend/assets/images/loading-indicator.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/loading-indicator.gif -------------------------------------------------------------------------------- /modules/backend/assets/images/october-logo-text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/october-logo-text.png -------------------------------------------------------------------------------- /modules/backend/assets/images/primary-tab-shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/primary-tab-shape.png -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2x2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/vendor/select2/select2x2.png -------------------------------------------------------------------------------- /modules/cms/assets/images/default-theme-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/cms/assets/images/default-theme-preview.png -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-LightItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-LightItalic.woff -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-SemiboldItalic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-SemiboldItalic.eot -------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-SemiboldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-SemiboldItalic.ttf -------------------------------------------------------------------------------- /modules/backend/assets/images/treeview-submenu-tabs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/images/treeview-submenu-tabs.png -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-Light-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-Light-webfont.eot -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-Light-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-Light-webfont.ttf -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-Light-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-Light-webfont.woff -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/authors.htm: -------------------------------------------------------------------------------- 1 | url = "/authors/:author_id?no-author|^[0-9]+$" 2 | == 3 |

Authors page

4 |

This is the Authors page

-------------------------------------------------------------------------------- /modules/backend/assets/font/OpenSans-SemiboldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/font/OpenSans-SemiboldItalic.woff -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2-spinner.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/assets/vendor/select2/select2-spinner.gif -------------------------------------------------------------------------------- /modules/backend/formwidgets/fileupload/partials/_container.htm: -------------------------------------------------------------------------------- 1 |
2 | makePartial('fileupload') ?> 3 |
-------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_widget.htm: -------------------------------------------------------------------------------- 1 | 2 | makeFormWidget($field); 4 | ?> 5 | render() ?> -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-Semibold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-Semibold-webfont.eot -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-Semibold-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-Semibold-webfont.ttf -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-Semibold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-Semibold-webfont.woff -------------------------------------------------------------------------------- /modules/backend/widgets/filter/partials/_filter_scopes.htm: -------------------------------------------------------------------------------- 1 | 2 | renderScopeElement($scope) ?> 3 | 4 | -------------------------------------------------------------------------------- /modules/backend/widgets/table/assets/images/table-icons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/widgets/table/assets/images/table-icons.gif -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-LightItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-LightItalic-webfont.eot -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-LightItalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-LightItalic-webfont.ttf -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-LightItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-LightItalic-webfont.woff -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/throw-php.htm: -------------------------------------------------------------------------------- 1 | url = "/throw-php" 2 | == 3 | function onStart() { 4 | test(); 5 | } 6 | == 7 |

This page will throw an exception

-------------------------------------------------------------------------------- /themes/demo/assets/vendor/font-awesome/font/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/vendor/font-awesome/font/FontAwesome.otf -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-SemiboldItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-SemiboldItalic-webfont.eot -------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-SemiboldItalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-SemiboldItalic-webfont.ttf -------------------------------------------------------------------------------- /modules/system/assets/vendor/font-autumn/font/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/vendor/font-autumn/font/FontAwesome.otf -------------------------------------------------------------------------------- /themes/demo/content/placeholder/page.txt: -------------------------------------------------------------------------------- 1 | {% put head %} 2 | 3 | 4 | {% endput %} 5 | -------------------------------------------------------------------------------- /modules/backend/widgets/lists/partials/_list-container.htm: -------------------------------------------------------------------------------- 1 |
2 | makePartial('list') ?> 3 |
-------------------------------------------------------------------------------- /modules/system/assets/font/OpenSans-SemiboldItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/font/OpenSans-SemiboldItalic-webfont.woff -------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/placeholder.htm: -------------------------------------------------------------------------------- 1 |
LAYOUT CONTENT {% placeholder test default %}DEFAULT{% endplaceholder %} {{ page() }}
{% placeholder second %} -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/with-content.htm: -------------------------------------------------------------------------------- 1 | url = "/with-content" 2 | layout = "content" 3 | == 4 |

Hey {% content "page-content.htm" %} {% content "a/a-content.htm" %}

-------------------------------------------------------------------------------- /themes/demo/assets/vendor/font-awesome/font/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/vendor/font-awesome/font/fontawesome-webfont.eot -------------------------------------------------------------------------------- /themes/demo/assets/vendor/font-awesome/font/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/vendor/font-awesome/font/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.eot -------------------------------------------------------------------------------- /modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/demo/assets/vendor/font-awesome/font/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/themes/demo/assets/vendor/font-awesome/font/fontawesome-webfont.woff -------------------------------------------------------------------------------- /modules/backend/controllers/index/index.htm: -------------------------------------------------------------------------------- 1 | makePartial('warnings') ?> 2 | 3 | 4 | widget->reportContainer->render() ?> 5 | 6 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/recordfinder/partials/_container.htm: -------------------------------------------------------------------------------- 1 |
2 | makePartial('recordfinder') ?> 3 |
-------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_form_fields.htm: -------------------------------------------------------------------------------- 1 | 2 | makePartial('field-container', ['field' => $field]) ?> 3 | 4 | -------------------------------------------------------------------------------- /modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/system/assets/vendor/font-autumn/font/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /modules/backend/assets/js/auth/auth.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function(){ 2 | $(document.body).removeClass('preload') 3 | 4 | $('form input[type=text], form input[type=password]').first().focus() 5 | }) -------------------------------------------------------------------------------- /modules/backend/formwidgets/richeditor/assets/vendor/redactor/redactor-font.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/october/master/modules/backend/formwidgets/richeditor/assets/vendor/redactor/redactor-font.eot -------------------------------------------------------------------------------- /modules/system/controllers/eventlogs/index.htm: -------------------------------------------------------------------------------- 1 |
2 | makeHintPartial('system_eventlogs_hint', 'hint') ?> 3 |
4 | 5 | listRender() ?> -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/with-partials.htm: -------------------------------------------------------------------------------- 1 | url = "/with-partials" 2 | layout = "partials" 3 | == 4 |

Hey {% partial "page-partial" firstName="Homer" lastName="Simpson" %} {% partial "a/a-partial" %}

-------------------------------------------------------------------------------- /modules/backend/controllers/accesslogs/index.htm: -------------------------------------------------------------------------------- 1 |
2 | makeHintPartial('backend_accesslogs_hint', 'hint') ?> 3 |
4 | 5 | listRender() ?> -------------------------------------------------------------------------------- /modules/backend/formwidgets/datatable/partials/_datatable.htm: -------------------------------------------------------------------------------- 1 |
4 | 5 | render() ?> 6 | 7 |
8 | 9 | -------------------------------------------------------------------------------- /modules/system/controllers/requestlogs/index.htm: -------------------------------------------------------------------------------- 1 |
2 | makeHintPartial('system_requestlogs_hint', 'hint') ?> 3 |
4 | 5 | listRender() ?> -------------------------------------------------------------------------------- /modules/system/models/eventlog/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | 7 | message: 8 | type: textarea 9 | -------------------------------------------------------------------------------- /modules/backend/widgets/lists/partials/_list_body_rows.htm: -------------------------------------------------------------------------------- 1 | 2 | makePartial('list_body_row', ['record' => $record, 'treeLevel' => $treeLevel]) ?> 3 | -------------------------------------------------------------------------------- /themes/demo/partials/footer.htm: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /modules/backend/controllers/index/config_report_container.yaml: -------------------------------------------------------------------------------- 1 | defaultWidgets: 2 | systemStatus: 3 | class: System\ReportWidgets\Status 4 | sortOrder: 1 5 | configuration: 6 | ocWidgetWidth: 10 7 | -------------------------------------------------------------------------------- /modules/backend/layouts/_flash_messages.htm: -------------------------------------------------------------------------------- 1 | $message): ?> 2 |

3 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/testobjects/components.htm: -------------------------------------------------------------------------------- 1 | var = value 2 | [testArchive firstAlias] 3 | posts-per-page = "6" 4 | 5 | [October\Tester\Components\Post secondAlias] 6 | show-featured = "true" 7 | == 8 |

This is a paragraph

-------------------------------------------------------------------------------- /modules/backend/formwidgets/codeeditor/assets/vendor/ace/ext-error_marker.js: -------------------------------------------------------------------------------- 1 | 2 | ; 3 | (function() { 4 | window.require(["ace/ext/error_marker"], function() {}); 5 | })(); 6 | -------------------------------------------------------------------------------- /modules/backend/layouts/_custom_styles.htm: -------------------------------------------------------------------------------- 1 | 4 | 5 | 8 | 9 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/relation/partials/_relation.htm: -------------------------------------------------------------------------------- 1 |
2 | makePartial('~/modules/backend/widgets/form/partials/_field_'.$field->type.'.htm', ['field' => $field]) ?> 3 |
-------------------------------------------------------------------------------- /modules/backend/controllers/usergroups/_list_toolbar.htm: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/testobjects/compound.htm: -------------------------------------------------------------------------------- 1 | var = value 2 | [section] 3 | version = 10 4 | == 5 | function onBeforeDisplay($controller) 6 | { 7 | $controller->data['something'] = 'some value'; 8 | } 9 | == 10 |

This is a paragraph

-------------------------------------------------------------------------------- /themes/demo/theme.yaml: -------------------------------------------------------------------------------- 1 | name: Demo 2 | description: Demo OctoberCMS theme. Demonstrates the basic concepts of the front-end theming: layouts, pages, partials, components, content blocks, AJAX framework. 3 | author: OctoberCMS 4 | homepage: 'http://octobercms.com' -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/code-namespaces.htm: -------------------------------------------------------------------------------- 1 | url = "/code-namespaces" 2 | == 3 | 12 | == 13 |

Page

-------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/ajax-test.htm: -------------------------------------------------------------------------------- 1 | url = "/ajax-test" 2 | layout = "ajax-test" 3 | == 4 | function onTest() { 5 | $this['var'] = 'page'; 6 | } 7 | == 8 | {{ layoutStartVar }}{{ layoutBeforePageStartVar }}{{ pageStartVar }}{{ pageEndVar }}{{ layoutEndVar }} -------------------------------------------------------------------------------- /tests/fixtures/cms/filehelper/sections.ini: -------------------------------------------------------------------------------- 1 | var1 = "value 1" 2 | var2 = "value 21" 3 | 4 | [section] 5 | sectionVar1 = "section value 1" 6 | sectionVar2 = "section value 2" 7 | 8 | [section data] 9 | sectionVar3 = "section value 3" 10 | sectionVar4 = "section value 4" -------------------------------------------------------------------------------- /tests/fixtures/cms/reference/namespaces.php: -------------------------------------------------------------------------------- 1 | Hey PAGE CONTENT

-------------------------------------------------------------------------------- /themes/demo/content/welcome.htm: -------------------------------------------------------------------------------- 1 |

The demo

2 |

This is the October CMS demo theme that explores the core features. You will find files used by this theme in the themes/demo directory of your installation.

3 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "select2", 3 | "version": "3.5.1", 4 | "main": ["select2.js", "select2.css", "select2.png", "select2x2.png", "select2-spinner.gif"], 5 | "dependencies": { 6 | "jquery": ">= 1.7.1" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /modules/cms/classes/PageCode.php: -------------------------------------------------------------------------------- 1 | 2 | 9 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/php-parser-test.htm: -------------------------------------------------------------------------------- 1 | description = "Layout for testing the CMS PHP parser" 2 | == 3 | function onStart() { 4 | 5 | } 6 | 7 | function onEnd() { 8 | } 9 | == 10 | {{ layoutStartVar }}{{ layoutBeforePageStartVar }}{{ pageStartVar }}{{ pageEndVar }}{{ layoutEndVar }} -------------------------------------------------------------------------------- /themes/demo/pages/404.htm: -------------------------------------------------------------------------------- 1 | title = "Page not found (404)" 2 | url = "/404" 3 | layout = "default" 4 | == 5 |
6 |
7 |

Page not found

8 |

We're sorry, but the page you requested cannot be found.

9 |
10 |
-------------------------------------------------------------------------------- /modules/cms/widgets/componentlist/partials/_body.htm: -------------------------------------------------------------------------------- 1 | makePartial('toolbar') ?> 2 |
3 |
4 |
5 | makePartial('components', ['data'=>$data]) ?> 6 |
7 |
8 |
9 | -------------------------------------------------------------------------------- /modules/cms/widgets/templatelist/partials/_body.htm: -------------------------------------------------------------------------------- 1 | makePartial('toolbar') ?> 2 |
3 |
4 |
5 | makePartial('templates', ['data'=>$data]) ?> 6 |
7 |
8 |
9 | -------------------------------------------------------------------------------- /modules/system/controllers/mailtemplates/_list_layouts_toolbar.htm: -------------------------------------------------------------------------------- 1 |
2 | 5 | 6 | 7 |
-------------------------------------------------------------------------------- /modules/system/routes.php: -------------------------------------------------------------------------------- 1 | 6 |
7 |

Error

8 |

We're sorry, but something went wrong and the page cannot be displayed.

9 |
10 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /bootstrap/compiled.php 2 | /vendor 3 | composer.lock 4 | composer.phar 5 | .DS_Store 6 | .idea 7 | php_errors.log 8 | nginx-error.log 9 | nginx-access.log 10 | nginx-ssl.access.log 11 | nginx-ssl.error.log 12 | php-errors.log 13 | sftp-config.json 14 | selenium.php 15 | .env.*.php 16 | .env.php 17 | -------------------------------------------------------------------------------- /modules/backend/widgets/grid/partials/_button_delete.htm: -------------------------------------------------------------------------------- 1 | 5 | 6 | -------------------------------------------------------------------------------- /modules/backend/widgets/grid/partials/_button_insert.htm: -------------------------------------------------------------------------------- 1 | 5 | 6 | -------------------------------------------------------------------------------- /modules/system/controllers/mailtemplates/_list_templates_toolbar.htm: -------------------------------------------------------------------------------- 1 |
2 | 5 | 6 | 7 |
-------------------------------------------------------------------------------- /themes/demo/partials/calcresult.htm: -------------------------------------------------------------------------------- 1 | {% if result %} 2 | 3 | The result is {{ result }} 4 | 5 | {% else %} 6 | 7 | Click the Calculate button to find the answer. 8 | 9 | {% endif %} -------------------------------------------------------------------------------- /modules/backend/assets/vendor/sweet-alert/sweet-alert-combine.less: -------------------------------------------------------------------------------- 1 | /* 2 | SweetAlert for Bootstrap 3 | https://github.com/lipis/bootstrap-sweetalert 4 | */ 5 | @import "../../../../system/assets/vendor/bootstrap/variables"; 6 | @import "../../../../system/assets/vendor/bootstrap/mixins"; 7 | @import "sweet-alert"; 8 | -------------------------------------------------------------------------------- /modules/cms/classes/ObjectMemoryCache.php: -------------------------------------------------------------------------------- 1 | This page uses components.

8 | {% for post in testArchive.posts %} 9 |

{{ post.title }}

10 |

{{ post.content }}

11 | {% endfor %} -------------------------------------------------------------------------------- /modules/backend/controllers/editorpreferences/config_form.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Behavior Config 3 | # =================================== 4 | 5 | form: ~/modules/backend/models/editorpreferences/fields.yaml 6 | modelClass: Backend\Models\EditorPreferences 7 | defaultRedirect: system/mailtemplates 8 | -------------------------------------------------------------------------------- /modules/system/controllers/updates/_column_author.htm: -------------------------------------------------------------------------------- 1 | homepage): ?> 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_form-container.htm: -------------------------------------------------------------------------------- 1 |
7 | 8 | makePartial('form') ?> 9 | 10 |
11 | -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_button_add.htm: -------------------------------------------------------------------------------- 1 | 7 | trans($relationLabel)])) ?> 8 | 9 | -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_button_link.htm: -------------------------------------------------------------------------------- 1 | 7 | trans($relationLabel)])) ?> 8 | 9 | -------------------------------------------------------------------------------- /modules/backend/controllers/usergroups/index.htm: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | listRender() ?> 9 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/cycle-test.htm: -------------------------------------------------------------------------------- 1 | url = "/cycle-test" 2 | layout = "cycle-test" 3 | == 4 | function onStart() { 5 | $this['pageStartVar'] = 3; 6 | } 7 | 8 | function onEnd() { 9 | $this['pageEndVar'] = 4; 10 | } 11 | == 12 | {{ layoutStartVar }}{{ layoutBeforePageStartVar }}{{ pageStartVar }}{{ pageEndVar }}{{ layoutEndVar }} -------------------------------------------------------------------------------- /modules/cms/controllers/index/config_layout_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Configures the layout list widget 3 | # =================================== 4 | 5 | descriptionProperty: description 6 | noRecordsMessage: 'cms::lang.layout.no_list_records' 7 | deleteConfirmation: 'cms::lang.layout.delete_confirm_multiple' 8 | itemType: layout -------------------------------------------------------------------------------- /modules/system/controllers/updates/manage.htm: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | listRender('manage') ?> 9 | -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_button_create.htm: -------------------------------------------------------------------------------- 1 | 7 | trans($relationLabel)])) ?> 8 | 9 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_partial.htm: -------------------------------------------------------------------------------- 1 | 2 | controller->makePartial($field->path ?: $field->fieldName, [ 3 | 'formModel' => $formModel, 4 | 'formField' => $field, 5 | 'formValue' => $field->value, 6 | 'model' => $formModel, 7 | 'field' => $field, 8 | 'value' => $field->value 9 | ]) ?> -------------------------------------------------------------------------------- /modules/cms/controllers/index/config_partial_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Configures the partial list widget 3 | # =================================== 4 | 5 | descriptionProperty: description 6 | noRecordsMessage: 'cms::lang.partial.no_list_records' 7 | deleteConfirmation: 'cms::lang.partial.delete_confirm_multiple' 8 | itemType: partial -------------------------------------------------------------------------------- /modules/cms/widgets/assetlist/partials/_files.htm: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | makePartial('items', ['items'=>$data]) ?> 5 |
6 |
7 |
-------------------------------------------------------------------------------- /modules/backend/layouts/_footer.htm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /modules/backend/widgets/filter/partials/_filter.htm: -------------------------------------------------------------------------------- 1 |
6 | 7 | makePartial('filter_scopes') ?> 8 | 9 |
10 | -------------------------------------------------------------------------------- /themes/demo/assets/less/theme/all.less: -------------------------------------------------------------------------------- 1 | // 2 | // Boot variables and mixins 3 | // 4 | 5 | @import "boot"; 6 | 7 | // 8 | // Vendor and Fonts 9 | // 10 | 11 | @import "vendor"; 12 | @import "fonts"; 13 | 14 | // 15 | // Pages, Layouts and Controls 16 | // 17 | 18 | @import "../pages/all"; 19 | @import "../layouts/all"; 20 | @import "../controls/all"; 21 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_section.htm: -------------------------------------------------------------------------------- 1 | 2 |
3 | label): ?> 4 |

label)) ?>

5 | 6 | 7 | comment): ?> 8 |

comment)) ?>

9 | 10 |
-------------------------------------------------------------------------------- /modules/cms/routes.php: -------------------------------------------------------------------------------- 1 | where('slug', '(.*)?'); 12 | }); 13 | -------------------------------------------------------------------------------- /modules/system/models/requestlog/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | 7 | url: 8 | label: system::lang.request_log.url 9 | 10 | referer: 11 | label: system::lang.request_log.referer 12 | type: partial 13 | path: referer_field -------------------------------------------------------------------------------- /tests/fixtures/themes/test/layouts/cycle-test.htm: -------------------------------------------------------------------------------- 1 | description = "This layout tests the page life cycle" 2 | == 3 | function onStart() { 4 | $this['layoutStartVar'] = 1; 5 | } 6 | 7 | function onBeforePageStart() { 8 | $this['layoutBeforePageStartVar'] = 2; 9 | } 10 | 11 | function onEnd() { 12 | $this['layoutEndVar'] = 5; 13 | } 14 | == 15 | {{ page() }} -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_hint.htm: -------------------------------------------------------------------------------- 1 | 2 | controller->makeHintPartial($field->getId(), $field->path ?: $field->fieldName, [ 3 | 'formModel' => $formModel, 4 | 'formField' => $field, 5 | 'formValue' => $field->value, 6 | 'model' => $formModel, 7 | 'field' => $field, 8 | 'value' => $field->value 9 | ]) ?> -------------------------------------------------------------------------------- /modules/backend/models/backendpreferences/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | locale: 7 | label: backend::lang.backend_preferences.locale 8 | comment: backend::lang.backend_preferences.locale_comment 9 | type: dropdown 10 | span: left 11 | -------------------------------------------------------------------------------- /modules/system/models/maillayout/columns.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Column Definitions 3 | # =================================== 4 | 5 | columns: 6 | 7 | name: 8 | label: system::lang.mail_templates.name 9 | searchable: true 10 | 11 | code: 12 | label: system::lang.mail_templates.code 13 | searchable: true 14 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/optional-short-php-tags.htm: -------------------------------------------------------------------------------- 1 | url = "/cycle-test" 2 | layout = "cycle-test" 3 | == 4 | 13 | == 14 | {{ layoutStartVar }}{{ layoutBeforePageStartVar }}{{ pageStartVar }}{{ pageEndVar }}{{ layoutEndVar }} -------------------------------------------------------------------------------- /modules/backend/assets/vendor/flot/Makefile: -------------------------------------------------------------------------------- 1 | # Makefile for generating minified files 2 | 3 | .PHONY: all 4 | 5 | # we cheat and process all .js files instead of an exhaustive list 6 | all: $(patsubst %.js,%.min.js,$(filter-out %.min.js,$(wildcard *.js))) 7 | 8 | %.min.js: %.js 9 | yui-compressor $< -o $@ 10 | 11 | test: 12 | ./node_modules/.bin/jshint *jquery.flot.js 13 | -------------------------------------------------------------------------------- /modules/backend/models/usergroup/columns.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Column Definitions 3 | # =================================== 4 | 5 | columns: 6 | name: 7 | label: backend::lang.user.group.name_field 8 | searchable: yes 9 | 10 | description: 11 | label: backend::lang.user.group.description_field 12 | searchable: yes -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/optional-full-php-tags.htm: -------------------------------------------------------------------------------- 1 | url = "/cycle-test" 2 | layout = "cycle-test" 3 | == 4 | 13 | == 14 | {{ layoutStartVar }}{{ layoutBeforePageStartVar }}{{ pageStartVar }}{{ pageEndVar }}{{ layoutEndVar }} -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_button_unlink.htm: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /modules/backend/widgets/filter/partials/_scope_checkbox.htm: -------------------------------------------------------------------------------- 1 | 2 |
5 | value ? 'checked' : '' ?> /> 6 | 7 |
8 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/datagrid/partials/_datagrid.htm: -------------------------------------------------------------------------------- 1 |
4 | 5 | render() ?> 6 | 7 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/sample/updates/version.yaml: -------------------------------------------------------------------------------- 1 | 1: 2 | - Create blog post comments table 3 | - create_comments_table.php 4 | 10.3: Bug fix update that uses no scripts 5 | 1.0.x: Another fix 6 | junk: 7 | - JUNK JUNK JUNK 8 | - Some more comments that shouldn't be here 9 | 1.0.*: 10 | - Create blog settings table 11 | - create_blog_settings_table.php 12 | -------------------------------------------------------------------------------- /modules/system/controllers/updates/config_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: system::lang.updates.title 6 | list: ~/modules/system/models/pluginversion/columns.yaml 7 | modelClass: System\Models\PluginVersion 8 | noRecordsMessage: backend::lang.list.no_records 9 | 10 | toolbar: 11 | buttons: list_toolbar 12 | -------------------------------------------------------------------------------- /tests/fixtures/themes/test/pages/with-components.htm: -------------------------------------------------------------------------------- 1 | url = "/with-components" 2 | layout = "content" 3 | 4 | [testArchive firstAlias] 5 | posts-per-page = "6" 6 | 7 | [October\Tester\Components\Archive secondAlias] 8 | posts-per-page = "9" 9 | == 10 |

This page uses components.

11 | {% for post in secondAlias.posts %} 12 |

{{ post.title }}

13 |

{{ post.content }}

14 | {% endfor %} -------------------------------------------------------------------------------- /modules/cms/controllers/index/config_page_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Configures the page list widget 3 | # =================================== 4 | 5 | titleProperty: 'title' 6 | descriptionProperty: description 7 | descriptionProperties: 8 | url: URL 9 | noRecordsMessage: 'cms::lang.page.no_list_records' 10 | deleteConfirmation: 'cms::lang.page.delete_confirm_multiple' 11 | itemType: page -------------------------------------------------------------------------------- /modules/cms/models/maintenancesettings/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | 7 | is_enabled: 8 | label: cms::lang.maintenance.is_enabled 9 | comment: cms::lang.maintenance.is_enabled_comment 10 | type: checkbox 11 | 12 | cms_page: 13 | type: dropdown 14 | cssClass: checkbox-align -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_button_update.htm: -------------------------------------------------------------------------------- 1 | 8 | trans($relationLabel)])) ?> 9 | 10 | -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/tester/updates/version.yaml: -------------------------------------------------------------------------------- 1 | 1.0.1: 2 | - Added some upgrade file and some seeding 3 | - some_upgrade_file.php 4 | - some_seeding_file.php 5 | 1.0.2: 6 | - Create blog post comments table 7 | - create_comments_table.php 8 | 1.0.3: Bug fix update that uses no scripts 9 | 1.0.4: Another fix 10 | 1.0.5: 11 | - Create blog settings table 12 | - create_blog_settings_table.php -------------------------------------------------------------------------------- /modules/backend/widgets/filter/partials/_scope_group.htm: -------------------------------------------------------------------------------- 1 | 2 | 6 | label)) ?>: 7 | value ? count($scope->value) : e(trans('backend::lang.filter.all')) ?> 8 | 9 | -------------------------------------------------------------------------------- /modules/system/controllers/updates/config_manage_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | list: ~/modules/system/models/pluginversion/columns.yaml 6 | modelClass: System\Models\PluginVersion 7 | noRecordsMessage: backend::lang.list.no_records 8 | showSetup: false 9 | showCheckboxes: true 10 | 11 | toolbar: 12 | buttons: list_manage_toolbar 13 | -------------------------------------------------------------------------------- /modules/system/assets/vendor/bootstrap/less/rowlink.less: -------------------------------------------------------------------------------- 1 | // Rowlink.less 2 | // CSS for rowlink plugin 3 | // ---------------------- 4 | 5 | tr.rowlink td { 6 | cursor: pointer; 7 | &.nolink { 8 | cursor: auto; 9 | } 10 | } 11 | 12 | .table tbody tr.rowlink:hover td { 13 | background-color: @table-bg-hover; 14 | } 15 | 16 | a.rowlink { 17 | color: inherit; 18 | font: inherit; 19 | text-decoration: inherit; 20 | } 21 | -------------------------------------------------------------------------------- /themes/demo/assets/less/theme/boot.less: -------------------------------------------------------------------------------- 1 | // 2 | // Boot file 3 | // 4 | // Includes non-output LESS files such as mixins and variables 5 | // 6 | 7 | @import "../../vendor/bootstrap/less/variables.less"; 8 | @import "../../vendor/bootstrap/less/mixins.less"; 9 | @import "../../vendor/font-awesome/less/variables.less"; 10 | @import "../../vendor/font-awesome/less/mixins.less"; 11 | @import "mixins.less"; 12 | @import "variables.less"; 13 | -------------------------------------------------------------------------------- /modules/cms/models/themeexport/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | 7 | themeName: 8 | label: cms::lang.theme.theme_label 9 | disabled: true 10 | 11 | folders: 12 | label: cms::lang.theme.export_folders_label 13 | commentAbove: cms::lang.theme.export_folders_comment 14 | type: checkboxlist 15 | -------------------------------------------------------------------------------- /modules/backend/database/seeds/DatabaseSeeder.php: -------------------------------------------------------------------------------- 1 | call('Backend\Database\Seeds\SeedSetupAdmin'); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /modules/cms/controllers/themes/index.htm: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 'return false']) ?> 5 |
6 | makePartial('theme_list') ?> 7 |
8 | 9 |
10 |
11 | -------------------------------------------------------------------------------- /modules/cms/widgets/assetlist/partials/_body.htm: -------------------------------------------------------------------------------- 1 | makePartial('toolbar') ?> 2 |
3 |
4 |
5 | makePartial('files', ['data'=>$data]) ?> 6 |
7 |
8 |
9 | 10 | -------------------------------------------------------------------------------- /modules/system/database/seeds/DatabaseSeeder.php: -------------------------------------------------------------------------------- 1 | call('System\Database\Seeds\SeedSetupMailLayouts'); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /modules/cms/widgets/componentlist/partials/_components.htm: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | makePartial('items', ['items'=>$data]) ?> 5 |
6 |
7 |
-------------------------------------------------------------------------------- /plugins/october/demo/components/todo/list.htm: -------------------------------------------------------------------------------- 1 | {% for item in items %} 2 |
  • 3 | 4 | 5 | {{ item }} 6 | 7 | 12 |
  • 13 | {% endfor %} -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_form.htm: -------------------------------------------------------------------------------- 1 | 2 | hasFields()): ?> 3 | makePartial('section', ['tabs' => $outsideTabs]) ?> 4 | 5 | 6 | hasFields()): ?> 7 | makePartial('section', ['tabs' => $primaryTabs]) ?> 8 | 9 | 10 | hasFields()): ?> 11 | makePartial('section', ['tabs' => $secondaryTabs]) ?> 12 | -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/sample/Plugin.php: -------------------------------------------------------------------------------- 1 | 'October Sample Plugin', 12 | 'description' => 'Sample plugin used by unit tests.', 13 | 'author' => 'Alexey Bobkov, Samuel Georges' 14 | ]; 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /tests/fixtures/plugins/testvendor/test/Plugin.php: -------------------------------------------------------------------------------- 1 | 'Another Test Plugin', 12 | 'description' => 'Test plugin used by unit tests with the same name.', 13 | 'author' => 'Test Vendor' 14 | ]; 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /modules/cms/widgets/templatelist/partials/_templates.htm: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |
    4 | makePartial('items', ['items'=>$data]) ?> 5 |
    6 |
    7 |
    -------------------------------------------------------------------------------- /tests/fixtures/cms/filehelper/subsections.ini: -------------------------------------------------------------------------------- 1 | var1 = "value 1" 2 | var2 = "value 21" 3 | 4 | [section] 5 | sectionVar1 = "section value 1" 6 | sectionVar2 = "section value 2" 7 | subsection[] = "subsection value 1" 8 | subsection[] = "subsection value 2" 9 | sectionVar3 = "section value 3" 10 | 11 | [section data] 12 | sectionVar3 = "section value 3" 13 | sectionVar4 = "section value 4" 14 | subsection[] = "subsection value 1" 15 | subsection[] = "subsection value 2" -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/noupdates/Plugin.php: -------------------------------------------------------------------------------- 1 | 'October Empty Plugin', 12 | 'description' => 'Empty plugin used by unit tests.', 13 | 'author' => 'Alexey Bobkov, Samuel Georges' 14 | ]; 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /modules/backend/widgets/lists/partials/_list_body_checkbox.htm: -------------------------------------------------------------------------------- 1 | 2 |
    3 | 8 | 9 |
    10 | -------------------------------------------------------------------------------- /modules/backend/facades/Backend.php: -------------------------------------------------------------------------------- 1 | 11 | * Some link 12 | * 13 | */ 14 | 15 | (function($){ 16 | 17 | $(document).render(function(){ 18 | $('[data-toggle="tooltip"]').tooltip() 19 | }) 20 | 21 | })(jQuery); -------------------------------------------------------------------------------- /modules/backend/facades/BackendMenu.php: -------------------------------------------------------------------------------- 1 | 2 | previewMode): ?> 3 |
    ********
    4 | 5 | getAttributes() ?> 14 | /> 15 | -------------------------------------------------------------------------------- /modules/system/controllers/eventlogs/config_form.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Behavior Config 3 | # =================================== 4 | 5 | # Record name 6 | name: Log 7 | 8 | # Model Form Field configuration 9 | form: ~/modules/system/models/eventlog/fields.yaml 10 | 11 | # Model Class name 12 | modelClass: System\Models\EventLog 13 | 14 | # Default redirect location 15 | defaultRedirect: system/eventlogs 16 | 17 | # Preview page 18 | preview: 19 | title: Event -------------------------------------------------------------------------------- /themes/demo/assets/less/layouts/all.less: -------------------------------------------------------------------------------- 1 | // 2 | // Layouts 3 | // 4 | // Styles specific to different page layouts. 5 | // 6 | 7 | // Used by the fixed navigation 8 | body { 9 | padding-top: 50px; 10 | } 11 | 12 | header#layout-header { 13 | .navbar-brand { 14 | padding-left: 50px; 15 | background-image: url('../images/october.png'); 16 | background-size: auto 80%; 17 | background-repeat: no-repeat; 18 | background-position: 7px 50%; 19 | } 20 | } -------------------------------------------------------------------------------- /modules/backend/controllers/editorpreferences/_example_code.htm: -------------------------------------------------------------------------------- 1 | form, fieldset, h5, h6, pre, blockquote, ol, dl, dt, dd, address, dd, dtm, div, td, th, hr { 2 | margin: 0; 3 | padding: 0; 4 | } 5 | 6 | body { 7 | background-color: white; 8 | font: 62.5% Helvetica, Arial, Tahoma, Verdana, Helvetica, sans-serif; 9 | } 10 | 11 | p { 12 | font-size: 12px; 13 | } 14 | 15 | optgroup { 16 | font-style: normal; 17 | color: #333; 18 | } 19 | 20 | option { 21 | color: #000; 22 | } -------------------------------------------------------------------------------- /modules/backend/widgets/grid/partials/_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 | 3 | makePartial('button_insert') ?> 4 | 5 | 6 | makePartial('button_delete') ?> 7 | 8 | 9 | 10 |
    -------------------------------------------------------------------------------- /modules/cms/classes/LayoutCode.php: -------------------------------------------------------------------------------- 1 | referer) > 0): ?> 2 |
    3 | 8 |
    9 | 10 |
    There were no detected referers to this URL.
    11 | -------------------------------------------------------------------------------- /modules/backend/widgets/search/partials/_search.htm: -------------------------------------------------------------------------------- 1 |
    2 | 13 |
    14 | -------------------------------------------------------------------------------- /modules/cms/controllers/themes/download.htm: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | fatalError): ?> 9 | 10 |

    fatalError) ?>

    11 |

    12 | 13 | -------------------------------------------------------------------------------- /modules/backend/controllers/usergroups/config_form.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Behavior Config 3 | # =================================== 4 | 5 | name: backend::lang.user.group.name 6 | form: ~/modules/backend/models/usergroup/fields.yaml 7 | modelClass: Backend\Models\UserGroup 8 | defaultRedirect: backend/usergroups 9 | 10 | create: 11 | redirect: backend/usergroups/update/:id 12 | redirectClose: backend/usergroups 13 | 14 | update: 15 | redirect: backend/usergroups 16 | redirectClose: backend/usergroups 17 | -------------------------------------------------------------------------------- /modules/backend/assets/less/core/boot.less: -------------------------------------------------------------------------------- 1 | // 2 | // Boots the Core LESS 3 | // 4 | // Includes non-output LESS files such as mixins and variables 5 | // 6 | 7 | // Core variables and mixins 8 | @import "../../../../system/assets/vendor/bootstrap/less/variables.less"; 9 | @import "../../../../system/assets/vendor/bootstrap/less/mixins.less"; 10 | @import "../../../../system/assets/vendor/font-autumn/less/variables.less"; 11 | @import "../../../../system/assets/vendor/font-autumn/less/mixins.less"; 12 | @import "variables.less"; 13 | @import "mixins.less"; 14 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/datepicker/assets/js/build.js: -------------------------------------------------------------------------------- 1 | /* 2 | * This is a bundle file, you can compile this in two ways: 3 | * (1) Using your favorite JS combiner 4 | * (2) Using CLI command: 5 | * php artisan october:util compile assets 6 | * 7 | * @see build-min.js 8 | * 9 | 10 | =require ../vendor/moment/moment.js 11 | =require ../vendor/pikaday/js/pikaday.js 12 | =require ../vendor/pikaday/js/pikaday.jquery.js 13 | =require ../vendor/clockpicker/js/jquery-clockpicker.js 14 | =require datepicker.js 15 | =require timepicker.js 16 | 17 | */ 18 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/richeditor/assets/js/build.js: -------------------------------------------------------------------------------- 1 | /* 2 | * This is a bundle file, you can compile this in two ways: 3 | * (1) Using your favorite JS combiner 4 | * (2) Using CLI command: 5 | * php artisan october:util compile assets 6 | * 7 | * @see build-min.js 8 | * 9 | 10 | =require ../vendor/redactor/redactor.js 11 | =require plugin.cleanup.js 12 | =require plugin.fullscreen.js 13 | =require plugin.figure.js 14 | =require plugin.quote.js 15 | =require plugin.table.js 16 | =require plugin.image.js 17 | =require richeditor.js 18 | 19 | */ 20 | -------------------------------------------------------------------------------- /modules/backend/routes.php: -------------------------------------------------------------------------------- 1 | Config::get('cms.backendUri', 'backend')], function () { 11 | Route::any('{slug}', 'Backend\Classes\BackendController@run')->where('slug', '(.*)?'); 12 | }); 13 | 14 | /* 15 | * Entry point 16 | */ 17 | Route::any(Config::get('cms.backendUri', 'backend'), 'Backend\Classes\BackendController@run'); 18 | }); 19 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_textarea.htm: -------------------------------------------------------------------------------- 1 | 2 | previewMode): ?> 3 |
    value)) ?>
    4 | 5 | 12 | -------------------------------------------------------------------------------- /modules/system/controllers/maillayouts/config_form.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Behavior Config 3 | # =================================== 4 | 5 | name: system::lang.mail_templates.layout 6 | form: ~/modules/system/models/maillayout/fields.yaml 7 | modelClass: System\Models\MailLayout 8 | defaultRedirect: system/mailtemplates 9 | 10 | create: 11 | redirect: system/mailtemplates/update/:id 12 | redirectClose: system/mailtemplates 13 | 14 | update: 15 | redirect: system/mailtemplates 16 | redirectClose: system/mailtemplates -------------------------------------------------------------------------------- /modules/system/models/eventlog/columns.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Column Definitions 3 | # =================================== 4 | 5 | columns: 6 | id: 7 | label: system::lang.event_log.id 8 | searchable: yes 9 | 10 | created_at: 11 | label: system::lang.event_log.created_at 12 | searchable: yes 13 | 14 | message: 15 | label: system::lang.event_log.message 16 | searchable: yes 17 | type: partial 18 | path: message_column 19 | cssClass: column-break-word 20 | -------------------------------------------------------------------------------- /modules/backend/controllers/users/config_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: backend::lang.user.list_title 6 | list: ~/modules/backend/models/user/columns.yaml 7 | modelClass: Backend\Models\User 8 | recordUrl: backend/users/update/:id 9 | noRecordsMessage: backend::lang.list.no_records 10 | recordsPerPage: 20 11 | showSetup: true 12 | showCheckboxes: true 13 | 14 | toolbar: 15 | buttons: list_toolbar 16 | search: 17 | prompt: backend::lang.list.search_prompt -------------------------------------------------------------------------------- /modules/backend/widgets/toolbar/partials/_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 |
    3 | 4 |
    5 | 6 |
    7 | 8 | 9 | 10 |
    11 | 12 |
    13 | 14 |
    15 |
    -------------------------------------------------------------------------------- /modules/system/controllers/mailtemplates/config_form.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Behavior Config 3 | # =================================== 4 | 5 | name: system::lang.mail_templates.template 6 | form: ~/modules/system/models/mailtemplate/fields.yaml 7 | modelClass: System\Models\MailTemplate 8 | defaultRedirect: system/mailtemplates 9 | 10 | create: 11 | redirect: system/mailtemplates/update/:id 12 | redirectClose: system/mailtemplates 13 | 14 | update: 15 | redirect: system/mailtemplates 16 | redirectClose: system/mailtemplates 17 | -------------------------------------------------------------------------------- /tests/TestCase.php: -------------------------------------------------------------------------------- 1 | make('Illuminate\Contracts\Console\Kernel')->bootstrap(); 15 | 16 | $app['cache']->setDefaultDriver('array'); 17 | $app->setLocale('en'); 18 | 19 | return $app; 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /modules/backend/controllers/usergroups/config_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: backend::lang.user.group.list_title 6 | list: ~/modules/backend/models/usergroup/columns.yaml 7 | modelClass: Backend\Models\UserGroup 8 | recordUrl: backend/usergroups/update/:id 9 | noRecordsMessage: backend::lang.list.no_records 10 | recordsPerPage: 5 11 | showCheckboxes: true 12 | 13 | toolbar: 14 | buttons: list_toolbar 15 | search: 16 | prompt: backend::lang.list.search_prompt 17 | -------------------------------------------------------------------------------- /modules/system/controllers/eventlogs/config_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: system::lang.event_log.menu_label 6 | list: ~/modules/system/models/eventlog/columns.yaml 7 | modelClass: System\Models\EventLog 8 | recordUrl: system/eventlogs/preview/:id 9 | noRecordsMessage: backend::lang.list.no_records 10 | recordsPerPage: 30 11 | showSetup: true 12 | showCheckboxes: true 13 | 14 | toolbar: 15 | buttons: list_toolbar 16 | search: 17 | prompt: backend::lang.list.search_prompt -------------------------------------------------------------------------------- /modules/system/controllers/mailtemplates/config_layouts_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: system::lang.mail_templates.menu_label 6 | list: ~/modules/system/models/maillayout/columns.yaml 7 | modelClass: System\Models\MailLayout 8 | recordUrl: system/maillayouts/update/:id 9 | noRecordsMessage: backend::lang.list.no_records 10 | recordsPerPage: 20 11 | showSetup: true 12 | 13 | toolbar: 14 | buttons: list_layouts_toolbar 15 | search: 16 | prompt: backend::lang.list.search_prompt -------------------------------------------------------------------------------- /modules/backend/formwidgets/fileupload/partials/_fileupload.htm: -------------------------------------------------------------------------------- 1 | 4 | makePartial('image_single') ?> 5 | 6 | 7 | 8 | makePartial('image_multi') ?> 9 | 10 | 11 | 12 | makePartial('file_single') ?> 13 | 14 | 15 | 16 | makePartial('file_multi') ?> 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /modules/backend/classes/ReportWidgetBase.php: -------------------------------------------------------------------------------- 1 | properties = $this->validateProperties($properties); 17 | 18 | parent::__construct($controller); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /modules/system/controllers/mailtemplates/config_templates_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: system::lang.mail_templates.menu_label 6 | list: ~/modules/system/models/mailtemplate/columns.yaml 7 | modelClass: System\Models\MailTemplate 8 | recordUrl: system/mailtemplates/update/:id 9 | noRecordsMessage: backend::lang.list.no_records 10 | recordsPerPage: 20 11 | showSetup: true 12 | 13 | toolbar: 14 | buttons: list_templates_toolbar 15 | search: 16 | prompt: backend::lang.list.search_prompt -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_text.htm: -------------------------------------------------------------------------------- 1 | 2 | previewMode): ?> 3 | value ? e($field->value) : ' ' ?> 4 | 5 | getAttributes() ?> 15 | /> 16 | -------------------------------------------------------------------------------- /modules/backend/models/UserThrottle.php: -------------------------------------------------------------------------------- 1 | ['Backend\Models\User'] 23 | ]; 24 | } 25 | -------------------------------------------------------------------------------- /modules/backend/views/mail/restore.htm: -------------------------------------------------------------------------------- 1 | subject = "Password Reset" 2 | layout = "system" 3 | == 4 | 5 | Hello {{ name }}, 6 | 7 | Somebody has requested a password reset for your account, if this was not you, please ignore this email. 8 | 9 | You can use the following link to restore your password: 10 | {{ link }} 11 | 12 | == 13 | 14 |

    Hello {{ name }},

    15 | 16 |

    Somebody has requested a password reset for your account, if this was not you, please ignore this email.

    17 | 18 |

    19 | You can use the following link to restore your password:
    20 | {{ link }} 21 |

    22 | -------------------------------------------------------------------------------- /modules/backend/widgets/grid/assets/css/datagrid.css: -------------------------------------------------------------------------------- 1 | .field-datagrid.size-tiny .control-datagrid { 2 | min-height: 50px; 3 | } 4 | .field-datagrid.size-small .control-datagrid { 5 | min-height: 100px; 6 | } 7 | .field-datagrid.size-large .control-datagrid { 8 | min-height: 200px; 9 | } 10 | .field-datagrid.size-huge .control-datagrid { 11 | min-height: 250px; 12 | } 13 | .field-datagrid.size-giant .control-datagrid { 14 | min-height: 350px; 15 | } 16 | .field-datagrid .control-datagrid { 17 | background: #eeeeee; 18 | } 19 | .field-datagrid .control-datagrid table thead th { 20 | background-color: #fafafa; 21 | } 22 | -------------------------------------------------------------------------------- /themes/demo/assets/less/theme.less: -------------------------------------------------------------------------------- 1 | // 2 | // Display warning notice inside the CSS file to deter any cowboy coding 3 | // 4 | 5 | /* 6 | * 7 | * !! WARNING !! THIS CSS FILE HAS BEEN AUTOMATICALLY GENERATED !! 8 | * 9 | * Any modifications made to this file will be lost next time it is generated. 10 | * Consider modifying the 'theme.less' file found in the 'less' folder instead 11 | * or create a new custom CSS file to override the rules in this one. 12 | * 13 | * !! YOU HAVE BEEN WARNED !! MODIFY THIS FILE AT YOUR OWN RISK !! 14 | * 15 | */ 16 | 17 | // 18 | // Theme Includes 19 | // 20 | 21 | @import "theme/all"; 22 | -------------------------------------------------------------------------------- /modules/cms/classes/asset/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | fileName: 7 | label: cms::lang.editor.filename 8 | attributes: 9 | default-focus: 1 10 | 11 | toolbar: 12 | type: partial 13 | path: content_toolbar 14 | cssClass: collapse-visible 15 | 16 | secondaryTabs: 17 | stretch: true 18 | fields: 19 | content: 20 | tab: cms::lang.editor.content 21 | stretch: true 22 | type: codeeditor 23 | language: css -------------------------------------------------------------------------------- /server.php: -------------------------------------------------------------------------------- 1 | 7 | */ 8 | $uri = urldecode( 9 | parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) 10 | ); 11 | // This file allows us to emulate Apache's "mod_rewrite" functionality from the 12 | // built-in PHP web server. This provides a convenient way to test a Laravel 13 | // application without having installed a "real" web server software here. 14 | if ($uri !== '/' and file_exists(__DIR__.'/'.$uri)) 15 | { 16 | return false; 17 | } 18 | require_once __DIR__.'/index.php'; 19 | -------------------------------------------------------------------------------- /modules/system/partials/_settings_menu.htm: -------------------------------------------------------------------------------- 1 | listItems('system'); 3 | 4 | // @todo Trialing the removal of this due to the new account menu 5 | // @deprecated Remove if year >= 2016 6 | $mySettingItems = []; //System\Classes\SettingsManager::instance()->listItems('mysettings'); 7 | ?> 8 | = 2016 */ ?> 9 | makePartial('~/modules/system/partials/_settings_menu_items.htm', ['items' => $mySettingItems]); ?> 10 | makePartial('~/modules/system/partials/_settings_menu_items.htm', ['items' => $systemItems]); ?> -------------------------------------------------------------------------------- /modules/system/models/mailtemplate/columns.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Column Definitions 3 | # =================================== 4 | 5 | columns: 6 | 7 | code: 8 | label: system::lang.mail_templates.code 9 | searchable: true 10 | 11 | subject: 12 | label: system::lang.mail_templates.subject 13 | searchable: true 14 | 15 | description: 16 | label: system::lang.mail_templates.description 17 | searchable: true 18 | 19 | layout: 20 | label: system::lang.mail_templates.layout 21 | relation: layout 22 | select: name 23 | sortable: false -------------------------------------------------------------------------------- /modules/system/models/pluginversion/columns.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Column Definitions 3 | # =================================== 4 | 5 | columns: 6 | 7 | name: 8 | label: system::lang.updates.plugin_name 9 | sortable: false 10 | 11 | description: 12 | label: system::lang.updates.plugin_description 13 | sortable: false 14 | 15 | version: 16 | label: system::lang.updates.plugin_version 17 | sortable: false 18 | 19 | author: 20 | label: system::lang.updates.plugin_author 21 | sortable: false 22 | type: partial 23 | path: column_author -------------------------------------------------------------------------------- /tests/functional/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 15 | ./ 16 | 17 | 18 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_number.htm: -------------------------------------------------------------------------------- 1 | 2 | previewMode): ?> 3 | value ? e($field->value) : ' ' ?> 4 | 5 | getAttributes() ?> 16 | /> 17 | 18 | -------------------------------------------------------------------------------- /modules/system/partials/_settings_menu_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |
    4 | 12 |
    13 |
    14 |
    -------------------------------------------------------------------------------- /modules/system/controllers/requestlogs/config_list.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # List Behavior Config 3 | # =================================== 4 | 5 | title: system::lang.request_log.menu_label 6 | list: ~/modules/system/models/requestlog/columns.yaml 7 | modelClass: System\Models\RequestLog 8 | recordUrl: system/requestlogs/preview/:id 9 | noRecordsMessage: backend::lang.list.no_records 10 | recordsPerPage: 30 11 | showSetup: true 12 | showCheckboxes: true 13 | defaultSort: 14 | column: count 15 | direction: desc 16 | 17 | toolbar: 18 | buttons: list_toolbar 19 | search: 20 | prompt: backend::lang.list.search_prompt -------------------------------------------------------------------------------- /modules/system/controllers/mailtemplates/index.htm: -------------------------------------------------------------------------------- 1 |
    2 | 6 |
    7 |
    8 | listRender('templates') ?> 9 |
    10 |
    11 | listRender('layouts') ?> 12 |
    13 |
    14 |
    15 | 16 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field-container.htm: -------------------------------------------------------------------------------- 1 |
    getFieldDepends($field)): ?>data-field-depends="" 4 | data-field-name="fieldName ?>" 5 | getAttributes('container') ?> 6 | id="getId('group') ?>">makePartial('field', ['field' => $field]) 9 | ?>
    -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000007_Db_System_Add_Disabled_Flag.php: -------------------------------------------------------------------------------- 1 | boolean('is_disabled')->default(0); 12 | }); 13 | } 14 | 15 | public function down() 16 | { 17 | Schema::table('system_plugin_versions', function (Blueprint $table) { 18 | $table->dropColumn('is_disabled'); 19 | }); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_balloon-selector.htm: -------------------------------------------------------------------------------- 1 | options(); 3 | ?> 4 | 5 |
    getAttributes() ?>> 10 | 15 | 16 | 17 |
    -------------------------------------------------------------------------------- /modules/backend/widgets/lists/partials/_list_body_tree.htm: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /modules/cms/classes/content/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | fileName: 7 | label: cms::lang.editor.filename 8 | attributes: 9 | default-focus: 1 10 | 11 | toolbar: 12 | type: partial 13 | path: content_toolbar 14 | cssClass: collapse-visible 15 | 16 | components: Cms\FormWidgets\Components 17 | 18 | secondaryTabs: 19 | stretch: true 20 | fields: 21 | markup: 22 | tab: cms::lang.editor.content 23 | stretch: true 24 | type: codeeditor 25 | language: html -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/tester/components/Post.php: -------------------------------------------------------------------------------- 1 | 'Blog Post Dummy Component', 12 | 'description' => 'Displays a blog post.' 13 | ]; 14 | } 15 | 16 | public function defineProperties() 17 | { 18 | return [ 19 | 'show-featured' => [ 20 | 'description' => 'Display the post featured image or not', 21 | 'default' => true 22 | ] 23 | ]; 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /tests/fixtures/plugins/october/tester/Plugin.php: -------------------------------------------------------------------------------- 1 | 'October Test Plugin', 12 | 'description' => 'Test plugin used by unit tests.', 13 | 'author' => 'Alexey Bobkov, Samuel Georges' 14 | ]; 15 | } 16 | 17 | public function registerComponents() 18 | { 19 | return [ 20 | 'October\Tester\Components\Archive' => 'testArchive', 21 | 'October\Tester\Components\Post' => 'testPost' 22 | ]; 23 | } 24 | 25 | } -------------------------------------------------------------------------------- /themes/demo/assets/vendor/bootstrap/less/component-animations.less: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | // Heads up! 6 | // 7 | // We don't use the `.opacity()` mixin here since it causes a bug with text 8 | // fields in IE7-8. Source: https://github.com/twitter/bootstrap/pull/3552. 9 | 10 | .fade { 11 | opacity: 0; 12 | .transition(opacity .15s linear); 13 | &.in { 14 | opacity: 1; 15 | } 16 | } 17 | 18 | .collapse { 19 | display: none; 20 | &.in { 21 | display: block; 22 | } 23 | } 24 | .collapsing { 25 | position: relative; 26 | height: 0; 27 | overflow: hidden; 28 | .transition(height .35s ease); 29 | } 30 | -------------------------------------------------------------------------------- /modules/system/assets/vendor/bootstrap/less/component-animations.less: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | // Heads up! 6 | // 7 | // We don't use the `.opacity()` mixin here since it causes a bug with text 8 | // fields in IE7-8. Source: https://github.com/twitter/bootstrap/pull/3552. 9 | 10 | .fade { 11 | opacity: 0; 12 | .transition(opacity .15s linear); 13 | &.in { 14 | opacity: 1; 15 | } 16 | } 17 | 18 | .collapse { 19 | display: none; 20 | &.in { 21 | display: block; 22 | } 23 | } 24 | .collapsing { 25 | position: relative; 26 | height: 0; 27 | overflow: hidden; 28 | .transition(height .35s ease); 29 | } 30 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000005_Db_System_Settings.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->increments('id'); 13 | $table->string('item')->nullable()->index(); 14 | $table->mediumtext('value')->nullable(); 15 | }); 16 | } 17 | 18 | public function down() 19 | { 20 | Schema::dropIfExists('system_settings'); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /themes/demo/assets/vendor/bootstrap/less/wells.less: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .well { 8 | min-height: 20px; 9 | padding: 19px; 10 | margin-bottom: 20px; 11 | background-color: @well-bg; 12 | border: 1px solid @well-border; 13 | border-radius: @border-radius-base; 14 | .box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 15 | blockquote { 16 | border-color: #ddd; 17 | border-color: rgba(0,0,0,.15); 18 | } 19 | } 20 | 21 | // Sizes 22 | .well-lg { 23 | padding: 24px; 24 | border-radius: @border-radius-large; 25 | } 26 | .well-sm { 27 | padding: 9px; 28 | border-radius: @border-radius-small; 29 | } 30 | -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/partials/_container.htm: -------------------------------------------------------------------------------- 1 |
    4 | 5 | relationRenderToolbar()): ?> 6 | 7 |
    8 | 9 |
    10 | 11 | 12 | 13 |
    14 | relationRenderView() ?> 15 |
    16 | 17 |
    -------------------------------------------------------------------------------- /modules/system/controllers/updates/_list_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 | 7 | 8 | 9 | 12 | 13 | 14 | 17 | Install plugins 18 | 19 |
    -------------------------------------------------------------------------------- /modules/backend/widgets/grid/assets/less/datagrid.less: -------------------------------------------------------------------------------- 1 | @import "../../../../assets/less/core/boot.less"; 2 | 3 | @color-datagrid-body-bg: #eeeeee; 4 | 5 | .field-datagrid { 6 | 7 | &.size-tiny .control-datagrid { min-height: @size-tiny; } 8 | &.size-small .control-datagrid { min-height: @size-small; } 9 | &.size-large .control-datagrid { min-height: @size-large; } 10 | &.size-huge .control-datagrid { min-height: @size-huge; } 11 | &.size-giant .control-datagrid { min-height: @size-giant; } 12 | 13 | .control-datagrid { 14 | background: @color-datagrid-body-bg; 15 | 16 | table thead th { 17 | background-color: @color-body-bg; 18 | } 19 | } 20 | 21 | } -------------------------------------------------------------------------------- /tests/unit/system/classes/TranslatorTest.php: -------------------------------------------------------------------------------- 1 | app['translator']; 10 | $translator->setLocale('en'); 11 | 12 | $validator = Validator::make( 13 | array('name' => 'me'), 14 | array('name' => 'required|min:5') 15 | ); 16 | 17 | $this->assertTrue($validator->fails()); 18 | 19 | $messages = $validator->messages(); 20 | $this->assertCount(1, $messages); 21 | $this->assertEquals('The name must be at least 5 characters.', $messages->all()[0]); 22 | } 23 | } -------------------------------------------------------------------------------- /modules/cms/views/404.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | <?= Lang::get('cms::lang.page.not_found.label') ?> 6 | 7 | 8 | 9 | 10 |
    11 |

    12 |

    13 |
    14 | 15 | -------------------------------------------------------------------------------- /modules/backend/models/usergroup/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | 7 | name: 8 | label: backend::lang.user.group.name_field 9 | span: auto 10 | 11 | code: 12 | label: backend::lang.user.group.code_field 13 | comment: backend::lang.user.group.code_comment 14 | span: auto 15 | 16 | description: 17 | label: backend::lang.user.group.description_field 18 | type: textarea 19 | size: tiny 20 | 21 | is_new_user_default: 22 | label: backend::lang.user.group.is_new_user_default_field 23 | type: checkbox 24 | 25 | tabs: 26 | stretch: true 27 | -------------------------------------------------------------------------------- /modules/cms/database/migrations/2014_10_01_000001_Db_Cms_Theme_Data.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->increments('id'); 13 | $table->string('theme')->nullable()->index(); 14 | $table->mediumtext('data')->nullable(); 15 | $table->timestamps(); 16 | }); 17 | } 18 | 19 | public function down() 20 | { 21 | Schema::dropIfExists('cms_theme_data'); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /themes/demo/pages/plugins.htm: -------------------------------------------------------------------------------- 1 | title = "Plugin components" 2 | url = "/demo/plugins" 3 | layout = "default" 4 | 5 | [demoTodo] 6 | max = 3 7 | == 8 |
    9 |
    10 |
    11 |
    12 |

    Plugin components

    13 |

    Plugins can provide components, simple building blocks that enrich any page or layout. Check out the todo example below.

    14 |
    15 |
    16 |
    17 |
    18 | 19 |
    20 | {% component 'demoTodo' %} 21 |
    22 | 23 | 24 |
    {% partial "explain/plugins.htm" %}
    25 | -------------------------------------------------------------------------------- /modules/cms/views/error.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | <?= Lang::get('cms::lang.page.custom_error.label') ?> 6 | 7 | 8 | 9 | 10 |
    11 |

    12 |

    13 |
    14 | 15 | 16 | -------------------------------------------------------------------------------- /modules/backend/database/migrations/2013_10_01_000002_Db_Backend_User_Groups.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->increments('id'); 13 | $table->string('name')->unique('name_unique'); 14 | $table->text('permissions')->nullable(); 15 | $table->timestamps(); 16 | }); 17 | } 18 | 19 | public function down() 20 | { 21 | Schema::dropIfExists('backend_user_groups'); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /modules/backend/database/migrations/2013_10_01_000003_Db_Backend_Users_Groups.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->integer('user_id')->unsigned(); 13 | $table->integer('user_group_id')->unsigned(); 14 | $table->primary(['user_id', 'user_group_id'], 'user_group'); 15 | }); 16 | } 17 | 18 | public function down() 19 | { 20 | Schema::dropIfExists('backend_users_groups'); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /modules/backend/database/migrations/2014_10_01_000006_Db_Backend_Access_Log.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->increments('id'); 13 | $table->integer('user_id')->unsigned(); 14 | $table->string('ip_address')->nullable(); 15 | $table->timestamps(); 16 | }); 17 | } 18 | 19 | public function down() 20 | { 21 | Schema::dropIfExists('backend_access_log'); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /modules/backend/widgets/table/partials/_table.htm: -------------------------------------------------------------------------------- 1 |
    -------------------------------------------------------------------------------- /modules/system/assets/vendor/font-autumn/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{FontAutumnPath}/fontawesome-webfont.eot?v=@{FontAutumnVersion}'); 7 | src: url('@{FontAutumnPath}/fontawesome-webfont.eot?#iefix&v=@{FontAutumnVersion}') format('embedded-opentype'), 8 | url('@{FontAutumnPath}/fontawesome-webfont.woff?v=@{FontAutumnVersion}') format('woff'), 9 | url('@{FontAutumnPath}/fontawesome-webfont.ttf?v=@{FontAutumnVersion}') format('truetype'), 10 | url('@{FontAutumnPath}/fontawesome-webfont.svg#fontawesomeregular?v=@{FontAutumnVersion}') format('svg'); 11 | font-weight: normal; 12 | font-style: normal; 13 | } 14 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_section-container.htm: -------------------------------------------------------------------------------- 1 |
    7 | 8 | 9 | makePartial('section', ['tabs' => $outsideTabs]) ?> 10 | 11 | 12 | 13 | makePartial('section', ['tabs' => $primaryTabs]) ?> 14 | 15 | 16 | 17 | makePartial('section', ['tabs' => $secondaryTabs]) ?> 18 | 19 | 20 |
    -------------------------------------------------------------------------------- /modules/cms/formwidgets/components/partials/_formcomponents.htm: -------------------------------------------------------------------------------- 1 |
    2 | 3 | isHidden): ?> 4 | makePartial('component', ['component' => $component]) ?> 5 | 6 | 7 | 8 |
    9 |
    10 | 11 | isHidden): ?> 12 | makePartial('component', ['component' => $component]) ?> 13 | 14 | 15 |
    16 |
    17 |
    18 | -------------------------------------------------------------------------------- /themes/demo/assets/vendor/bootstrap/less/breadcrumbs.less: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | 6 | .breadcrumb { 7 | padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal; 8 | margin-bottom: @line-height-computed; 9 | list-style: none; 10 | background-color: @breadcrumb-bg; 11 | border-radius: @border-radius-base; 12 | 13 | > li { 14 | display: inline-block; 15 | 16 | + li:before { 17 | content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space 18 | padding: 0 5px; 19 | color: @breadcrumb-color; 20 | } 21 | } 22 | 23 | > .active { 24 | color: @breadcrumb-active-color; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /themes/demo/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "october/demo-theme", 3 | "type": "october-theme", 4 | "description": "Demo OctoberCMS theme", 5 | "keywords": ["october", "cms", "demo", "theme"], 6 | "license": "MIT", 7 | "authors": [ 8 | { 9 | "name": "Alexey Bobkov", 10 | "email": "aleksey.bobkov@gmail.com", 11 | "role": "Co-founder" 12 | }, 13 | { 14 | "name": "Samuel Georges", 15 | "email": "daftspunky@gmail.com", 16 | "role": "Co-founder" 17 | } 18 | ], 19 | "require": { 20 | "php": ">=5.4" 21 | }, 22 | "extra": { 23 | "branch-alias": { 24 | "dev-master": "1.0-dev" 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000003_Db_System_Plugin_Versions.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 13 | $table->increments('id'); 14 | $table->string('code')->index(); 15 | $table->string('version', 50); 16 | $table->timestamp('created_at'); 17 | }); 18 | } 19 | 20 | public function down() 21 | { 22 | Schema::dropIfExists('system_plugin_versions'); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /modules/cms/models/themeimport/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | 7 | themeName: 8 | label: cms::lang.theme.theme_label 9 | disabled: true 10 | 11 | uploaded_file: 12 | label: cms::lang.theme.import_uploaded_file 13 | type: fileupload 14 | mode: file 15 | fileTypes: zip 16 | 17 | overwrite: 18 | label: cms::lang.theme.import_overwrite_label 19 | comment: cms::lang.theme.import_overwrite_comment 20 | type: checkbox 21 | 22 | folders: 23 | label: cms::lang.theme.import_folders_label 24 | commentAbove: cms::lang.theme.import_folders_comment 25 | type: checkboxlist 26 | -------------------------------------------------------------------------------- /modules/cms/widgets/componentlist/partials/_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |
    4 |
    5 | 12 |
    13 |
    14 |
    15 |
    -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_zh-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Chinese translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['zh-CN'] = { 7 | formatNoMatches: function () { return "没有找到匹配项"; }, 8 | formatInputTooShort: function (input, min) { var n = min - input.length; return "请再输入" + n + "个字符";}, 9 | formatInputTooLong: function (input, max) { var n = input.length - max; return "请删掉" + n + "个字符";}, 10 | formatSelectionTooBig: function (limit) { return "你只能选择最多" + limit + "项"; }, 11 | formatLoadMore: function (pageNumber) { return "加载结果中…"; }, 12 | formatSearching: function () { return "搜索中…"; } 13 | }; 14 | 15 | $.extend($.fn.select2.defaults, $.fn.select2.locales['zh-CN']); 16 | })(jQuery); 17 | -------------------------------------------------------------------------------- /modules/cms/controllers/index/_form_page.htm: -------------------------------------------------------------------------------- 1 | 'layout', 4 | 'data-change-monitor' => 'true', 5 | 'data-window-close-confirm' => e(trans('backend::lang.form.confirm_tab_close')), 6 | 'data-inspector-external-parameters' => true 7 | ]; 8 | ?> 9 | 10 | render() ?> 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /modules/cms/twig/PageNode.php: -------------------------------------------------------------------------------- 1 | addDebugInfo($this) 28 | ->write("echo \$this->env->getExtension('CMS')->pageFunction();\n") 29 | ; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2014_10_01_000011_Db_System_Event_Logs.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 13 | $table->increments('id'); 14 | $table->string('level')->nullable()->index(); 15 | $table->text('message')->nullable(); 16 | $table->mediumtext('details')->nullable(); 17 | $table->timestamps(); 18 | }); 19 | } 20 | 21 | public function down() 22 | { 23 | Schema::dropIfExists('system_event_logs'); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_zh-TW.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Traditional Chinese translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['zh-TW'] = { 7 | formatNoMatches: function () { return "沒有找到相符的項目"; }, 8 | formatInputTooShort: function (input, min) { var n = min - input.length; return "請再輸入" + n + "個字元";}, 9 | formatInputTooLong: function (input, max) { var n = input.length - max; return "請刪掉" + n + "個字元";}, 10 | formatSelectionTooBig: function (limit) { return "你只能選擇最多" + limit + "項"; }, 11 | formatLoadMore: function (pageNumber) { return "載入中…"; }, 12 | formatSearching: function () { return "搜尋中…"; } 13 | }; 14 | 15 | $.extend($.fn.select2.defaults, $.fn.select2.locales['zh-TW']); 16 | })(jQuery); 17 | -------------------------------------------------------------------------------- /modules/cms/twig/DefaultNode.php: -------------------------------------------------------------------------------- 1 | addDebugInfo($this) 28 | ->write("echo '';\n") 29 | ; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /plugins/october/demo/Plugin.php: -------------------------------------------------------------------------------- 1 | 'October Demo', 16 | 'description' => 'Provides features used by the provided demonstration theme.', 17 | 'author' => 'Alexey Bobkov, Samuel Georges', 18 | 'icon' => 'icon-leaf' 19 | ]; 20 | } 21 | 22 | public function registerComponents() 23 | { 24 | return [ 25 | '\October\Demo\Components\Todo' => 'demoTodo' 26 | ]; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /modules/backend/assets/images/secondary-tab-shape-content.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | ]> 6 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_ja.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Japanese translation. 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['ja'] = { 8 | formatNoMatches: function () { return "該当なし"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "後" + n + "文字入れてください"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "検索文字列が" + n + "文字長すぎます"; }, 11 | formatSelectionTooBig: function (limit) { return "最多で" + limit + "項目までしか選択できません"; }, 12 | formatLoadMore: function (pageNumber) { return "読込中・・・"; }, 13 | formatSearching: function () { return "検索中・・・"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ja']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/richeditor/partials/_richeditor.htm: -------------------------------------------------------------------------------- 1 | 2 | previewMode): ?> 3 |
    4 | 5 |
    data-fullpage="true" 9 | data-data-locker="#getId('dataLocker') ?>" 10 | data-control="richeditor"> 11 | 12 |
    13 | 14 | 15 |
    16 | 17 |
    18 | 19 | -------------------------------------------------------------------------------- /modules/cms/classes/UnknownComponent.php: -------------------------------------------------------------------------------- 1 | errorMessage = $errorMessage; 16 | $this->componentCssClass = 'error-component'; 17 | $this->inspectorEnabled = false; 18 | 19 | parent::__construct($cmsObject, $properties); 20 | } 21 | 22 | public function componentDetails() 23 | { 24 | return [ 25 | 'name' => 'Uknown component', 26 | 'description' => $this->errorMessage 27 | ]; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /modules/backend/models/user/columns.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Column Definitions 3 | # =================================== 4 | 5 | columns: 6 | login: 7 | label: backend::lang.user.login 8 | searchable: true 9 | first_name: 10 | label: backend::lang.user.first_name 11 | searchable: true 12 | last_name: 13 | label: backend::lang.user.last_name 14 | searchable: true 15 | full_name: 16 | label: backend::lang.user.full_name 17 | select: concat(first_name, ' ', last_name) 18 | searchable: true 19 | email: 20 | label: backend::lang.user.email 21 | searchable: true 22 | groups: 23 | label: backend::lang.user.groups 24 | relation: groups 25 | select: name 26 | sortable: false -------------------------------------------------------------------------------- /modules/backend/behaviors/relationcontroller/assets/css/relation.css: -------------------------------------------------------------------------------- 1 | .relation-behavior { 2 | padding: 0; 3 | margin-bottom: 20px; 4 | background: white; 5 | background: #ffffff; 6 | border: 1px solid #dddddd; 7 | } 8 | .relation-behavior .list-header:first-child { 9 | padding-top: 20px; 10 | } 11 | .relation-behavior .control-list:last-child > table { 12 | margin-bottom: 0; 13 | } 14 | .relation-behavior.relation-view-single { 15 | padding: 0 20px; 16 | } 17 | .relation-flush .relation-behavior { 18 | border-top: 0; 19 | } 20 | .relation-flush .relation-behavior .relation-manager table.table.data thead tr th { 21 | border-top: none !important; 22 | } 23 | .relation-flush .relation-behavior .relation-toolbar + .relation-manager table.table.data thead tr th { 24 | border-top: 1px solid #e2e2e2 !important; 25 | } 26 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/repeater/partials/_repeater.htm: -------------------------------------------------------------------------------- 1 |
    2 | 3 | 11 | 12 |
    13 | 17 | 18 | 19 |
    20 | 21 |
    22 | 23 | -------------------------------------------------------------------------------- /modules/cms/widgets/componentlist/partials/_items.htm: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 |

    16 | -------------------------------------------------------------------------------- /tests/unit/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 15 | ./ 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /modules/backend/assets/less/layout/footer.less: -------------------------------------------------------------------------------- 1 | @footer-zindex: 100; 2 | @footer-height: 60; 3 | 4 | #layout-footer { 5 | width: 100%; 6 | z-index: @footer-zindex; 7 | height: @footer-height + 0px; 8 | position: fixed; 9 | bottom: 0; 10 | color: @color-footer-text; 11 | background-color: @color-footer; 12 | border-top: 1px solid @color-footer-border; 13 | 14 | .brand, .tagline { 15 | margin: 10px; 16 | height: (@footer-height - 20) + 0px; 17 | line-height: (@footer-height - 20) + 0px; 18 | } 19 | 20 | .brand { 21 | float: left; 22 | font-size: 16px; 23 | .logo { margin: 0 10px; } 24 | .name { } 25 | } 26 | 27 | .tagline { 28 | float: right; 29 | p { color: lighten(@color-footer-text, 20%); } 30 | } 31 | } 32 | 33 | -------------------------------------------------------------------------------- /themes/demo/assets/vendor/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{FontAwesomePath}/fontawesome-webfont.eot?v=@{FontAwesomeVersion}'); 7 | src: url('@{FontAwesomePath}/fontawesome-webfont.eot?#iefix&v=@{FontAwesomeVersion}') format('embedded-opentype'), 8 | url('@{FontAwesomePath}/fontawesome-webfont.woff?v=@{FontAwesomeVersion}') format('woff'), 9 | url('@{FontAwesomePath}/fontawesome-webfont.ttf?v=@{FontAwesomeVersion}') format('truetype'), 10 | url('@{FontAwesomePath}/fontawesome-webfont.svg#fontawesomeregular?v=@{FontAwesomeVersion}') format('svg'); 11 | // src: url('@{FontAwesomePath}/FontAwesome.otf') format('opentype'); // used when developing fonts 12 | font-weight: normal; 13 | font-style: normal; 14 | } 15 | -------------------------------------------------------------------------------- /modules/backend/views/access_denied.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | <?= Lang::get('backend::lang.page.access_denied.label') ?> 6 | 7 | 8 | 9 | 10 |
    11 |

    12 |

    13 | 14 |
    15 | 16 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2014_10_01_000013_Db_System_Sessions.php: -------------------------------------------------------------------------------- 1 | string('id')->unique(); 18 | $table->text('payload')->nullable(); 19 | $table->integer('last_activity')->nullable(); 20 | }); 21 | } 22 | 23 | /** 24 | * Reverse the migrations. 25 | * 26 | * @return void 27 | */ 28 | public function down() 29 | { 30 | Schema::dropIfExists('sessions'); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/system/twig/Engine.php: -------------------------------------------------------------------------------- 1 | environment = $environment; 25 | } 26 | 27 | public function get($path, array $vars = []) 28 | { 29 | $template = $this->environment->loadTemplate($path); 30 | return $template->render($vars); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /tests/unit/backend/classes/WidgetManagerTest.php: -------------------------------------------------------------------------------- 1 | listFormWidgets(); 12 | 13 | $this->assertArrayHasKey('Backend\FormWidgets\CodeEditor', $widgets); 14 | $this->assertArrayHasKey('Backend\FormWidgets\RichEditor', $widgets); 15 | $this->assertArrayHasKey('Backend\FormWidgets\FileUpload', $widgets); 16 | $this->assertArrayHasKey('Backend\FormWidgets\Relation', $widgets); 17 | $this->assertArrayHasKey('Backend\FormWidgets\DatePicker', $widgets); 18 | $this->assertArrayHasKey('Cms\FormWidgets\Components', $widgets); 19 | } 20 | } -------------------------------------------------------------------------------- /modules/backend/formwidgets/recordfinder/partials/_recordfinder_form.htm: -------------------------------------------------------------------------------- 1 |
    2 | 3 | 7 | 8 |
    9 | render() ?> 10 | render() ?> 11 |
    12 | 13 | 21 | 22 |
    -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000006_Db_System_Parameters.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->increments('id'); 13 | $table->string('namespace', 100); 14 | $table->string('group', 50); 15 | $table->string('item', 150); 16 | $table->text('value')->nullable(); 17 | $table->index(['namespace', 'group', 'item'], 'item_index'); 18 | }); 19 | } 20 | 21 | public function down() 22 | { 23 | Schema::dropIfExists('system_parameters'); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2014_10_01_000012_Db_System_Request_Logs.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 13 | $table->increments('id'); 14 | $table->integer('status_code')->nullable(); 15 | $table->string('url')->nullable(); 16 | $table->text('referer')->nullable(); 17 | $table->integer('count')->default(0); 18 | $table->timestamps(); 19 | }); 20 | } 21 | 22 | public function down() 23 | { 24 | Schema::dropIfExists('system_request_logs'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000004_Db_System_Plugin_History.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 13 | $table->increments('id'); 14 | $table->string('code')->index(); 15 | $table->string('type', 20)->index(); 16 | $table->string('version', 50); 17 | $table->string('detail')->nullable(); 18 | $table->timestamp('created_at'); 19 | }); 20 | } 21 | 22 | public function down() 23 | { 24 | Schema::dropIfExists('system_plugin_history'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/backend/widgets/table/assets/js/build.js: -------------------------------------------------------------------------------- 1 | /* 2 | * This is a bundle file, you can compile this in two ways: 3 | * (1) Using your favorite JS combiner 4 | * (2) Using CLI command: 5 | * php artisan october:util compile assets 6 | * 7 | * @see build-min.js 8 | * 9 | 10 | =require table.js 11 | =require table.helper.navigation.js 12 | =require table.datasource.base.js 13 | =require table.datasource.client.js 14 | =require table.processor.base.js 15 | =require table.processor.string.js 16 | =require table.processor.checkbox.js 17 | =require table.processor.dropdown.js 18 | =require table.validator.base.js 19 | =require table.validator.required.js 20 | =require table.validator.basenumber.js 21 | =require table.validator.integer.js 22 | =require table.validator.float.js 23 | =require table.validator.length.js 24 | =require table.validator.regex.js 25 | 26 | */ 27 | -------------------------------------------------------------------------------- /modules/cms/classes/Partial.php: -------------------------------------------------------------------------------- 1 | 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ko'] = { 10 | formatNoMatches: function () { return "결과 없음"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "너무 짧습니다. "+n+"글자 더 입력해주세요."; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "너무 깁니다. "+n+"글자 지워주세요."; }, 13 | formatSelectionTooBig: function (limit) { return "최대 "+limit+"개까지만 선택하실 수 있습니다."; }, 14 | formatLoadMore: function (pageNumber) { return "불러오는 중…"; }, 15 | formatSearching: function () { return "검색 중…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ko']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field_checkbox.htm: -------------------------------------------------------------------------------- 1 | 2 |
    3 | previewMode ? 'disabled="disabled"' : '' ?>> 8 | previewMode ? 'disabled="disabled"' : '' ?> 14 | value == 1 ? 'checked="checked"' : '' ?> 15 | getAttributes() ?>> 16 | 17 | 20 | comment): ?> 21 |

    comment)) ?>

    22 | 23 |
    24 | -------------------------------------------------------------------------------- /plugins/october/demo/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "october/demo-plugin", 3 | "type": "october-plugin", 4 | "description": "Demo OctoberCMS plugin", 5 | "keywords": ["october", "cms", "demo", "plugin"], 6 | "license": "MIT", 7 | 8 | "authors": [ 9 | { 10 | "name": "Alexey Bobkov", 11 | "email": "aleksey.bobkov@gmail.com", 12 | "role": "Co-founder" 13 | }, 14 | { 15 | "name": "Samuel Georges", 16 | "email": "daftspunky@gmail.com", 17 | "role": "Co-founder" 18 | } 19 | ], 20 | "require": { 21 | "php": ">=5.4" 22 | }, 23 | "autoload": { 24 | "psr-4": { 25 | "October\\Demo\\": "" 26 | } 27 | }, 28 | "extra": { 29 | "branch-alias": { 30 | "dev-master": "1.0-dev" 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /modules/cms/controllers/index/_layout_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 | 8 | 9 | 10 | 11 | 18 |
    -------------------------------------------------------------------------------- /modules/cms/controllers/index/_partial_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 | 8 | 9 | 10 | 11 | 18 |
    -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_ug-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Uyghur translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | $.fn.select2.locales['ug-CN'] = { 7 | formatNoMatches: function () { return "ماس كېلىدىغان ئۇچۇر تېپىلمىدى"; }, 8 | formatInputTooShort: function (input, min) { var n = min - input.length; return "يەنە " + n + " ھەرپ كىرگۈزۈڭ";}, 9 | formatInputTooLong: function (input, max) { var n = input.length - max; return "" + n + "ھەرپ ئۆچۈرۈڭ";}, 10 | formatSelectionTooBig: function (limit) { return "ئەڭ كۆپ بولغاندا" + limit + " تال ئۇچۇر تاللىيالايسىز"; }, 11 | formatLoadMore: function (pageNumber) { return "ئۇچۇرلار ئوقۇلىۋاتىدۇ…"; }, 12 | formatSearching: function () { return "ئىزدەۋاتىدۇ…"; } 13 | }; 14 | 15 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ug-CN']); 16 | })(jQuery); 17 | -------------------------------------------------------------------------------- /modules/system/controllers/settings/mysettings.htm: -------------------------------------------------------------------------------- 1 |
    2 | 3 | $items): ?> 4 | 5 |
    6 |

    7 |
    8 | 9 |
    10 | 11 | 12 | 19 | 20 | 21 |
    22 | 23 | 24 |
    25 | -------------------------------------------------------------------------------- /plugins/october/demo/components/todo/default.htm: -------------------------------------------------------------------------------- 1 |
    5 |
    6 |
    7 |

    To Do List

    8 |
    9 |
    10 |
    11 | 12 | 13 | 14 | 15 |
    16 |
    17 | 19 |
    20 |
    21 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_hu.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Hungarian translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['hu'] = { 8 | formatNoMatches: function () { return "Nincs találat."; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Túl rövid. Még " + n + " karakter hiányzik."; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Túl hosszú. " + n + " karakterrel több, mint kellene."; }, 11 | formatSelectionTooBig: function (limit) { return "Csak " + limit + " elemet lehet kiválasztani."; }, 12 | formatLoadMore: function (pageNumber) { return "Töltés…"; }, 13 | formatSearching: function () { return "Keresés…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['hu']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /modules/backend/views/mail/invite.htm: -------------------------------------------------------------------------------- 1 | subject = "Welcome to October CMS" 2 | layout = "system" 3 | == 4 | 5 | Hi {{ name }}, 6 | 7 | A user account has been created for you. 8 | 9 | Login: {{ login }} 10 | 11 | Password: {{ password }} 12 | 13 | 14 | After signing in you should change your password by clicking your name on the top right corner of the administration area. 15 | 16 | You can use the following link to sign in: 17 | {{ link }} 18 | 19 | == 20 | 21 |

    Hi {{ name }},

    22 | 23 |

    A user account has been created for you.

    24 | 25 |

    26 | Login: {{ login }}
    27 | Password: {{ password }} 28 |

    29 | 30 |

    After signing in you should change your password by clicking your name on the top right corner of the administration area.

    31 | 32 |

    33 | You can use the following link to sign in:
    34 | {{ link }} 35 |

    36 | -------------------------------------------------------------------------------- /modules/cms/twig/StylesNode.php: -------------------------------------------------------------------------------- 1 | addDebugInfo($this) 28 | ->write("echo \$this->env->getExtension('CMS')->assetsFunction('css');\n") 29 | ->write("echo \$this->env->getExtension('CMS')->displayBlock('styles');\n") 30 | ; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/cms/controllers/index/_content_toolbar.htm: -------------------------------------------------------------------------------- 1 |
    2 | 8 | 9 | 10 | 11 | 18 |
    -------------------------------------------------------------------------------- /modules/cms/twig/ScriptsNode.php: -------------------------------------------------------------------------------- 1 | addDebugInfo($this) 28 | ->write("echo \$this->env->getExtension('CMS')->assetsFunction('js');\n") 29 | ->write("echo \$this->env->getExtension('CMS')->displayBlock('scripts');\n") 30 | ; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_he.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Hebrew translation. 3 | * 4 | * Author: Yakir Sitbon 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['he'] = { 10 | formatNoMatches: function () { return "לא נמצאו התאמות"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "נא להזין עוד " + n + " תווים נוספים"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "נא להזין פחות " + n + " תווים"; }, 13 | formatSelectionTooBig: function (limit) { return "ניתן לבחור " + limit + " פריטים"; }, 14 | formatLoadMore: function (pageNumber) { return "טוען תוצאות נוספות…"; }, 15 | formatSearching: function () { return "מחפש…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['he']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_field.htm: -------------------------------------------------------------------------------- 1 | hidden): ?> 2 | 3 | showFieldLabels($field)): ?> 4 | 5 | renderFieldElement($field) ?> 6 | 7 | 8 | 9 | label): ?> 10 | 13 | 14 | 15 | comment && $field->commentPosition == 'above'): ?> 16 |

    comment)) ?>

    17 | 18 | 19 | renderFieldElement($field) ?> 20 | 21 | comment && $field->commentPosition == 'below'): ?> 22 |

    comment)) ?>

    23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /modules/backend/assets/less/controls/reportwidgets.less: -------------------------------------------------------------------------------- 1 | .report-widget { 2 | padding: 15px; 3 | background: white; 4 | .box-sizing(border-box); 5 | .border-radius(@border-radius-base); 6 | 7 | h3 { 8 | font-size: 14px; 9 | color: @color-report-widget-title; 10 | text-transform: uppercase; 11 | font-weight: 600; 12 | margin-top: 0; 13 | margin-bottom: 30px; 14 | } 15 | 16 | .height-100 {height: 100px;} 17 | .height-200 {height: 200px;} 18 | .height-300 {height: 300px;} 19 | .height-400 {height: 400px;} 20 | .height-500 {height: 500px;} 21 | 22 | p.report-description { 23 | margin-bottom: 0; 24 | margin-top: 15px; 25 | font-size: 12px; 26 | line-height: 190%; 27 | color: @color-report-widget-description; 28 | } 29 | 30 | p.flash-message.static { 31 | margin-bottom: 0; 32 | } 33 | } -------------------------------------------------------------------------------- /modules/backend/formwidgets/codeeditor/assets/vendor/ace/mode-plain_text.js: -------------------------------------------------------------------------------- 1 | define("ace/mode/plain_text",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/text_highlight_rules","ace/mode/behaviour"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | var oop = require("../lib/oop"); 5 | var TextMode = require("./text").Mode; 6 | var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; 7 | var Behaviour = require("./behaviour").Behaviour; 8 | 9 | var Mode = function() { 10 | this.HighlightRules = TextHighlightRules; 11 | this.$behaviour = new Behaviour(); 12 | }; 13 | 14 | oop.inherits(Mode, TextMode); 15 | 16 | (function() { 17 | this.type = "text"; 18 | this.getNextLineIndent = function(state, line, tab) { 19 | return ''; 20 | }; 21 | this.$id = "ace/mode/plain_text"; 22 | }).call(Mode.prototype); 23 | 24 | exports.Mode = Mode; 25 | }); 26 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2014_10_01_000010_Db_Jobs.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->bigIncrements('id'); 13 | $table->string('queue'); 14 | $table->text('payload'); 15 | $table->tinyInteger('attempts')->unsigned(); 16 | $table->tinyInteger('reserved')->unsigned(); 17 | $table->unsignedInteger('reserved_at')->nullable(); 18 | $table->unsignedInteger('available_at'); 19 | $table->unsignedInteger('created_at'); 20 | }); 21 | } 22 | 23 | public function down() 24 | { 25 | Schema::dropIfExists('jobs'); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /modules/system/models/MailLayout.php: -------------------------------------------------------------------------------- 1 | 'required|unique:system_mail_layouts', 23 | 'name' => 'required', 24 | 'content_html' => 'required', 25 | ]; 26 | 27 | public function beforeDelete() 28 | { 29 | if ($this->is_locked) { 30 | throw new ApplicationException('Cannot delete this template because it is locked'); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /modules/backend/database/migrations/2014_10_01_000007_Db_Backend_Add_Description_Field.php: -------------------------------------------------------------------------------- 1 | string('code')->nullable()->index('code_index'); 12 | $table->text('description')->nullable(); 13 | $table->boolean('is_new_user_default')->default(false); 14 | }); 15 | } 16 | 17 | public function down() 18 | { 19 | // Schema::table('backend_user_groups', function (Blueprint $table) { 20 | // $table->dropColumn('code'); 21 | // $table->dropColumn('description'); 22 | // $table->dropColumn('is_new_user_default'); 23 | // }); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_tr.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Turkish translation. 3 | * 4 | * Author: Salim KAYABAŞI 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['tr'] = { 10 | formatNoMatches: function () { return "Sonuç bulunamadı"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "En az " + n + " karakter daha girmelisiniz"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return n + " karakter azaltmalısınız"; }, 13 | formatSelectionTooBig: function (limit) { return "Sadece " + limit + " seçim yapabilirsiniz"; }, 14 | formatLoadMore: function (pageNumber) { return "Daha fazla…"; }, 15 | formatSearching: function () { return "Aranıyor…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['tr']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /themes/demo/partials/explain/plugins.htm: -------------------------------------------------------------------------------- 1 |
    2 | 3 |

    4 | 5 | The HTML markup for this example: 6 |

    7 |
     8 | {% filter escape %}
     9 | {{ "{% component 'demoTodo' %}" }}
    10 | {% endfilter %}
    11 | 12 |
    13 | 14 |

    15 | 16 | Wait, only one line is needed? 17 |

    18 |

    Yes! unlike the AJAX example, components are simple building blocks that can be used with a small amount of code.

    19 |

    The demoTodo component used here is provided by the plugin called October\Demo, you can find it in the plugins/october/demo folder.

    20 | 21 |
    22 | 23 | 26 | -------------------------------------------------------------------------------- /modules/backend/database/migrations/2014_01_04_000005_Db_Backend_User_Preferences.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 12 | $table->increments('id'); 13 | $table->integer('user_id')->unsigned(); 14 | $table->string('namespace', 100); 15 | $table->string('group', 50); 16 | $table->string('item', 150); 17 | $table->text('value')->nullable(); 18 | $table->index(['user_id', 'namespace', 'group', 'item'], 'user_item_index'); 19 | }); 20 | } 21 | 22 | public function down() 23 | { 24 | Schema::dropIfExists('backend_user_preferences'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /modules/cms/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "october/cms", 3 | "type": "october-module", 4 | "description": "CMS module for October CMS", 5 | "homepage": "http://octobercms.com", 6 | "keywords": ["october cms", "october", "cms"], 7 | "license": "MIT", 8 | "authors": [ 9 | { 10 | "name": "Alexey Bobkov", 11 | "email": "aleksey.bobkov@gmail.com" 12 | }, 13 | { 14 | "name": "Samuel Georges", 15 | "email": "daftspunky@gmail.com" 16 | } 17 | ], 18 | "require": { 19 | "php": ">=5.4.0", 20 | "composer/installers": "~1.0", 21 | "october/rain": "~1.0" 22 | }, 23 | "autoload": { 24 | "psr-4": { 25 | "Cms\\": "" 26 | } 27 | }, 28 | "extra": { 29 | "branch-alias": { 30 | "dev-master": "1.0-dev" 31 | } 32 | }, 33 | "minimum-stability": "dev" 34 | } 35 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_is.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Icelandic translation. 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['is'] = { 8 | formatNoMatches: function () { return "Ekkert fannst"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vinsamlegast skrifið " + n + " staf" + (n > 1 ? "i" : "") + " í viðbót"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Vinsamlegast styttið texta um " + n + " staf" + (n > 1 ? "i" : ""); }, 11 | formatSelectionTooBig: function (limit) { return "Þú getur aðeins valið " + limit + " atriði"; }, 12 | formatLoadMore: function (pageNumber) { return "Sæki fleiri niðurstöður…"; }, 13 | formatSearching: function () { return "Leita…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['is']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_th.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Thai translation. 3 | * 4 | * Author: Atsawin Chaowanakritsanakul 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['th'] = { 10 | formatNoMatches: function () { return "ไม่พบข้อมูล"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "โปรดพิมพ์เพิ่มอีก " + n + " ตัวอักษร"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "โปรดลบออก " + n + " ตัวอักษร"; }, 13 | formatSelectionTooBig: function (limit) { return "คุณสามารถเลือกได้ไม่เกิน " + limit + " รายการ"; }, 14 | formatLoadMore: function (pageNumber) { return "กำลังค้นข้อมูลเพิ่ม…"; }, 15 | formatSearching: function () { return "กำลังค้นข้อมูล…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['th']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /themes/demo/assets/vendor/bootstrap/less/thumbnails.less: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | 6 | // Mixin and adjust the regular image class 7 | .thumbnail { 8 | display: block; 9 | padding: @thumbnail-padding; 10 | margin-bottom: @line-height-computed; 11 | line-height: @line-height-base; 12 | background-color: @thumbnail-bg; 13 | border: 1px solid @thumbnail-border; 14 | border-radius: @thumbnail-border-radius; 15 | .transition(all .2s ease-in-out); 16 | 17 | > img, 18 | a > img { 19 | .img-responsive(); 20 | margin-left: auto; 21 | margin-right: auto; 22 | } 23 | 24 | // Add a hover state for linked versions only 25 | a&:hover, 26 | a&:focus, 27 | a&.active { 28 | border-color: @link-color; 29 | } 30 | 31 | // Image captions 32 | .caption { 33 | padding: @thumbnail-caption-padding; 34 | color: @thumbnail-caption-color; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_ms.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Malay translation. 3 | * 4 | * Author: Kepoweran 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ms'] = { 10 | formatNoMatches: function () { return "Tiada padanan yang ditemui"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Sila masukkan " + n + " aksara lagi"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Sila hapuskan " + n + " aksara"; }, 13 | formatSelectionTooBig: function (limit) { return "Anda hanya boleh memilih " + limit + " pilihan"; }, 14 | formatLoadMore: function (pageNumber) { return "Sedang memuatkan keputusan…"; }, 15 | formatSearching: function () { return "Mencari…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ms']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_nl.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Dutch translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['nl'] = { 8 | formatNoMatches: function () { return "Geen resultaten gevonden"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vul nog " + n + " karakter" + (n == 1? "" : "s") + " in"; }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Haal " + n + " karakter" + (n == 1? "" : "s") + " weg"; }, 11 | formatSelectionTooBig: function (limit) { return "Maximaal " + limit + " item" + (limit == 1 ? "" : "s") + " toegestaan"; }, 12 | formatLoadMore: function (pageNumber) { return "Meer resultaten laden…"; }, 13 | formatSearching: function () { return "Zoeken…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['nl']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /modules/system/assets/vendor/syntaxhighlighter/scripts/shBrushPlain.js: -------------------------------------------------------------------------------- 1 | /** 2 | * SyntaxHighlighter 3 | * http://alexgorbatchev.com/SyntaxHighlighter 4 | * 5 | * SyntaxHighlighter is donationware. If you are using it, please donate. 6 | * http://alexgorbatchev.com/SyntaxHighlighter/donate.html 7 | * 8 | * @version 9 | * 3.0.83 (July 02 2010) 10 | * 11 | * @copyright 12 | * Copyright (C) 2004-2010 Alex Gorbatchev. 13 | * 14 | * @license 15 | * Dual licensed under the MIT and GPL licenses. 16 | */ 17 | ;(function() 18 | { 19 | // CommonJS 20 | typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null; 21 | 22 | function Brush() 23 | { 24 | }; 25 | 26 | Brush.prototype = new SyntaxHighlighter.Highlighter(); 27 | Brush.aliases = ['text', 'plain']; 28 | 29 | SyntaxHighlighter.brushes.Plain = Brush; 30 | 31 | // CommonJS 32 | typeof(exports) != 'undefined' ? exports.Brush = Brush : null; 33 | })(); 34 | -------------------------------------------------------------------------------- /modules/system/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "october/system", 3 | "type": "october-module", 4 | "description": "System module for October CMS", 5 | "homepage": "http://octobercms.com", 6 | "keywords": ["october cms", "october", "system"], 7 | "license": "MIT", 8 | "authors": [ 9 | { 10 | "name": "Alexey Bobkov", 11 | "email": "aleksey.bobkov@gmail.com" 12 | }, 13 | { 14 | "name": "Samuel Georges", 15 | "email": "daftspunky@gmail.com" 16 | } 17 | ], 18 | "require": { 19 | "php": ">=5.4.0", 20 | "composer/installers": "~1.0", 21 | "october/rain": "~1.0" 22 | }, 23 | "autoload": { 24 | "psr-4": { 25 | "System\\": "" 26 | } 27 | }, 28 | "extra": { 29 | "branch-alias": { 30 | "dev-master": "1.0-dev" 31 | } 32 | }, 33 | "minimum-stability": "dev" 34 | } 35 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000001_Db_Deferred_Bindings.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 13 | $table->increments('id'); 14 | $table->string('master_type')->index(); 15 | $table->string('master_field')->index(); 16 | $table->string('slave_type')->index(); 17 | $table->string('slave_id')->index(); 18 | $table->string('session_key'); 19 | $table->boolean('is_bind')->default(true); 20 | $table->timestamps(); 21 | }); 22 | } 23 | 24 | public function down() 25 | { 26 | Schema::dropIfExists('deferred_bindings'); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_ka.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Georgian (Kartuli) translation. 3 | * 4 | * Author: Dimitri Kurashvili dimakura@gmail.com 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['ka'] = { 10 | formatNoMatches: function () { return "ვერ მოიძებნა"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "გთხოვთ შეიყვანოთ კიდევ " + n + " სიმბოლო"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "გთხოვთ წაშალოთ " + n + " სიმბოლო"; }, 13 | formatSelectionTooBig: function (limit) { return "თქვენ შეგიძლიათ მხოლოდ " + limit + " ჩანაწერის მონიშვნა"; }, 14 | formatLoadMore: function (pageNumber) { return "შედეგის ჩატვირთვა…"; }, 15 | formatSearching: function () { return "ძებნა…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['ka']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_sv.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Swedish translation. 3 | * 4 | * Author: Jens Rantil 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['sv'] = { 10 | formatNoMatches: function () { return "Inga träffar"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Var god skriv in " + n + (n>1 ? " till tecken" : " tecken till"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Var god sudda ut " + n + " tecken"; }, 13 | formatSelectionTooBig: function (limit) { return "Du kan max välja " + limit + " element"; }, 14 | formatLoadMore: function (pageNumber) { return "Laddar fler resultat…"; }, 15 | formatSearching: function () { return "Söker…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['sv']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /modules/backend/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "october/backend", 3 | "type": "october-module", 4 | "description": "Backend module for October CMS", 5 | "homepage": "http://octobercms.com", 6 | "keywords": ["october cms", "october", "backend"], 7 | "license": "MIT", 8 | "authors": [ 9 | { 10 | "name": "Alexey Bobkov", 11 | "email": "aleksey.bobkov@gmail.com" 12 | }, 13 | { 14 | "name": "Samuel Georges", 15 | "email": "daftspunky@gmail.com" 16 | } 17 | ], 18 | "require": { 19 | "php": ">=5.4.0", 20 | "composer/installers": "~1.0", 21 | "october/rain": "~1.0" 22 | }, 23 | "autoload": { 24 | "psr-4": { 25 | "Backend\\": "" 26 | } 27 | }, 28 | "extra": { 29 | "branch-alias": { 30 | "dev-master": "1.0-dev" 31 | } 32 | }, 33 | "minimum-stability": "dev" 34 | } 35 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_da.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Danish translation. 3 | * 4 | * Author: Anders Jenbo 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['da'] = { 10 | formatNoMatches: function () { return "Ingen resultater fundet"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Angiv venligst " + n + " tegn mere"; }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Angiv venligst " + n + " tegn mindre"; }, 13 | formatSelectionTooBig: function (limit) { return "Du kan kun vælge " + limit + " emne" + (limit === 1 ? "" : "r"); }, 14 | formatLoadMore: function (pageNumber) { return "Indlæser flere resultater…"; }, 15 | formatSearching: function () { return "Søger…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['da']); 19 | })(jQuery); 20 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_it.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Italian translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['it'] = { 8 | formatNoMatches: function () { return "Nessuna corrispondenza trovata"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Inserisci ancora " + n + " caratter" + (n == 1? "e" : "i"); }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Inserisci " + n + " caratter" + (n == 1? "e" : "i") + " in meno"; }, 11 | formatSelectionTooBig: function (limit) { return "Puoi selezionare solo " + limit + " element" + (limit == 1 ? "o" : "i"); }, 12 | formatLoadMore: function (pageNumber) { return "Caricamento in corso…"; }, 13 | formatSearching: function () { return "Ricerca…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['it']); 17 | })(jQuery); -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_no.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Norwegian translation. 3 | * 4 | * Author: Torgeir Veimo 5 | */ 6 | (function ($) { 7 | "use strict"; 8 | 9 | $.fn.select2.locales['no'] = { 10 | formatNoMatches: function () { return "Ingen treff"; }, 11 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Vennligst skriv inn " + n + (n>1 ? " flere tegn" : " tegn til"); }, 12 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Vennligst fjern " + n + " tegn"; }, 13 | formatSelectionTooBig: function (limit) { return "Du kan velge maks " + limit + " elementer"; }, 14 | formatLoadMore: function (pageNumber) { return "Laster flere resultater…"; }, 15 | formatSearching: function () { return "Søker…"; } 16 | }; 17 | 18 | $.extend($.fn.select2.defaults, $.fn.select2.locales['no']); 19 | })(jQuery); 20 | 21 | -------------------------------------------------------------------------------- /modules/cms/twig/ContentNode.php: -------------------------------------------------------------------------------- 1 | $name], [], $lineno, $tag); 18 | } 19 | 20 | /** 21 | * Compiles the node to PHP. 22 | * 23 | * @param Twig_Compiler $compiler A Twig_Compiler instance 24 | */ 25 | public function compile(Twig_Compiler $compiler) 26 | { 27 | $compiler 28 | ->addDebugInfo($this) 29 | ->write("echo \$this->env->getExtension('CMS')->contentFunction(") 30 | ->subcompile($this->getNode('name')) 31 | ->write(");\n") 32 | ; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /modules/system/database/migrations/2013_10_01_000009_Db_System_Mail_Layouts.php: -------------------------------------------------------------------------------- 1 | engine = 'InnoDB'; 13 | $table->increments('id'); 14 | $table->string('name')->nullable(); 15 | $table->string('code')->nullable(); 16 | $table->text('content_html')->nullable(); 17 | $table->text('content_text')->nullable(); 18 | $table->text('content_css')->nullable(); 19 | $table->boolean('is_locked')->default(0); 20 | $table->timestamps(); 21 | }); 22 | } 23 | 24 | public function down() 25 | { 26 | Schema::dropIfExists('system_mail_layouts'); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/datepicker/assets/css/datepicker.css: -------------------------------------------------------------------------------- 1 | .pika-single { 2 | border-color: #5fb6f5; 3 | border-radius: 2px; 4 | font-size: 12px; 5 | margin-top: 5px; 6 | } 7 | .pika-single.is-bound { 8 | box-shadow: 0 5px 10px -5px rgba(0, 0, 0, 0.5); 9 | } 10 | .pika-single abbr { 11 | border-bottom: none; 12 | } 13 | .pika-single .pika-button { 14 | border-radius: 0!important; 15 | } 16 | .pika-single .is-today .pika-button { 17 | background: #ddd; 18 | font-weight: bold; 19 | color: #34495e; 20 | } 21 | .pika-single .is-selected .pika-button { 22 | box-shadow: none; 23 | background: #e67e22; 24 | } 25 | .pika-single .pika-button:hover { 26 | background: #5fb6f5 !important; 27 | } 28 | .pika-single .pika-label { 29 | font-weight: normal; 30 | } 31 | .pika-single .pika-table th { 32 | text-transform: uppercase; 33 | } 34 | .pika-single .pika-footer .pika-label { 35 | font-size: 12px; 36 | } 37 | .clockpicker-popover { 38 | z-index: 9999; 39 | } -------------------------------------------------------------------------------- /modules/cms/classes/layout/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | fileName: 7 | label: cms::lang.editor.filename 8 | span: left 9 | attributes: 10 | default-focus: 1 11 | 12 | settings[description]: 13 | label: cms::lang.editor.description 14 | span: right 15 | 16 | toolbar: 17 | type: partial 18 | path: layout_toolbar 19 | cssClass: collapse-visible 20 | 21 | components: Cms\FormWidgets\Components 22 | 23 | secondaryTabs: 24 | stretch: true 25 | fields: 26 | markup: 27 | tab: cms::lang.editor.markup 28 | stretch: true 29 | type: codeeditor 30 | language: twig 31 | 32 | code: 33 | tab: cms::lang.editor.code 34 | stretch: true 35 | type: codeeditor 36 | language: php 37 | -------------------------------------------------------------------------------- /modules/cms/classes/partial/fields.yaml: -------------------------------------------------------------------------------- 1 | # =================================== 2 | # Form Field Definitions 3 | # =================================== 4 | 5 | fields: 6 | fileName: 7 | span: left 8 | label: cms::lang.editor.filename 9 | attributes: 10 | default-focus: 1 11 | 12 | settings[description]: 13 | span: right 14 | label: cms::lang.editor.description 15 | 16 | toolbar: 17 | type: partial 18 | path: partial_toolbar 19 | cssClass: collapse-visible 20 | 21 | components: Cms\FormWidgets\Components 22 | 23 | secondaryTabs: 24 | stretch: true 25 | fields: 26 | markup: 27 | tab: cms::lang.editor.markup 28 | stretch: true 29 | type: codeeditor 30 | language: twig 31 | 32 | code: 33 | tab: cms::lang.editor.code 34 | stretch: true 35 | type: codeeditor 36 | language: php 37 | -------------------------------------------------------------------------------- /modules/backend/assets/vendor/select2/select2_locale_pt-BR.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Select2 Brazilian Portuguese translation 3 | */ 4 | (function ($) { 5 | "use strict"; 6 | 7 | $.fn.select2.locales['pt-BR'] = { 8 | formatNoMatches: function () { return "Nenhum resultado encontrado"; }, 9 | formatInputTooShort: function (input, min) { var n = min - input.length; return "Digite mais " + n + " caracter" + (n == 1? "" : "es"); }, 10 | formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " caracter" + (n == 1? "" : "es"); }, 11 | formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); }, 12 | formatLoadMore: function (pageNumber) { return "Carregando mais resultados…"; }, 13 | formatSearching: function () { return "Buscando…"; } 14 | }; 15 | 16 | $.extend($.fn.select2.defaults, $.fn.select2.locales['pt-BR']); 17 | })(jQuery); 18 | -------------------------------------------------------------------------------- /modules/backend/formwidgets/richeditor/assets/js/plugin.cleanup.js: -------------------------------------------------------------------------------- 1 | (function ($) { 2 | 'use strict'; 3 | 4 | window.RedactorPlugins = window.RedactorPlugins || {}; 5 | 6 | var Cleanup = function (redactor) { 7 | this.redactor = redactor 8 | this.init() 9 | } 10 | 11 | Cleanup.prototype = { 12 | 13 | init: function () { 14 | this.removeEmptyParagraphs() 15 | }, 16 | 17 | /* 18 | * Removes empty P tags 19 | */ 20 | removeEmptyParagraphs: function () { 21 | this.redactor.$editor 22 | .find('p') 23 | .filter(function() { return !$.trim($(this).text()) }) 24 | .remove() 25 | } 26 | 27 | } 28 | 29 | window.RedactorPlugins.cleanup = function() { 30 | return { 31 | init: function () { 32 | this.cleanup = new Cleanup(this) 33 | } 34 | } 35 | } 36 | 37 | }(jQuery)); -------------------------------------------------------------------------------- /modules/backend/widgets/form/partials/_section.htm: -------------------------------------------------------------------------------- 1 | section; 3 | 4 | $containerCss = 'layout-row min-size'; 5 | 6 | if ($tabs->stretch) { 7 | $containerCss = 'layout-row'; 8 | } 9 | ?> 10 | 11 |
    12 | suppressTabs): ?> 13 | 14 |
    17 | makePartial('form_fields', ['fields' => $tabs]) ?> 18 |
    19 | 20 | 21 | 22 |
    27 | makePartial('form_tabs', ['tabs' => $tabs]) ?> 28 |
    29 | 30 | 31 |
    32 | --------------------------------------------------------------------------------