octobercms / docs Goto Github PK
View Code? Open in Web Editor NEWThe October CMS Documentation
License: Other
The October CMS Documentation
License: Other
Plugin form Widget's can pretty much be structured however dev's wish.
It would be sensical to articulate recommended file placement.
To which I believe should be:
/plugins/authorname/pluginname/modules/backend/formwidgets/widgetname
If Octobercms placed in root folder / , folowing rewrite rules won't work:
...
rewrite ^bootstrap/.* /index.php break;
rewrite ^config/.* /index.php break;
...
Because right path must starts with slash symbol like this:
rewrite ^/bootstrap/(.*) /index.php break;
rewrite ^/config/.* /index.php break;
Probably if you are under subfolder location like /cms/, maybe rules without forward slash will work. Actually I haven't checked this moment.
The partial
form field type currently isn't documented.
The docs on task scheduling list before() and after() as being valid, however they were not introduced until after L5.0. Here is the commit where before() was added. after() was called then() until this commit. Anyway, the point is that the docs on task scheduling() should use the L5.0 docs (at least until we get up to L5.1)
When we need to create a link to the current page and pass parameters to the URL:
{{ this.page.baseFileName|page({ page: page }) }}
Document usage for:
If you follow the example code as presented on the AJAX documentation (http://octobercms.com/docs/cms/ajax), you will not get the expected result, as the partial does not render.
In the page markup:
<script src="{{ [
'assets/javascript/jquery.js',
]|theme }}"></script>
{% framework extras %}
<form data-request="onTest" data-request-update="calcresult: '#result'">
<input type="text" name="value1"/>
<input type="text" name="value2"/>
<input type="submit" value="Calculate">
</form>
<div id="#result"></div>
In the page code:
function onTest()
{
$value1 = post('value1');
$value2 = post('value2');
$this['result'] = $value1 + $value2;
}
In the calcresult partial:
The result is {{ result }}
The will show the form fine, and make the ajax call, but it will not render the partial in the #result
div.
this page has dead link in last sentence: "display flash messages"
The docs say MyController::extendListColumns
accepts 3 arguments however when attempting to use the documented code I get
Missing argument 3 for My\Plugin\Plugin::My\Plugin{closure}()
Does the third argument be there, or should the documentation say $context=''
?
Here's the code I'm using for reference:
\Backend\Controllers\Users::extendListColumns(function($list, $model, $context) {
var_dump($list);
});
At the very bottom of https://octobercms.com/docs/backend/forms
Document all Twig tags registered by the system, as found in the code here:
MarkupManager::instance()->registerCallback(function($manager){
$manager->registerFunctions([
// Functions
'post' => 'post',
'link_to' => 'link_to',
'link_to_asset' => 'link_to_asset',
'link_to_route' => 'link_to_route',
'link_to_action' => 'link_to_action',
'asset' => 'asset',
'action' => 'action',
'url' => 'url',
'route' => 'route',
'secure_url' => 'secure_url',
'secure_asset' => 'secure_asset',
// Classes
'str_*' => ['Str', '*'],
'url_*' => ['URL', '*'],
'html_*' => ['HTML', '*'],
'form_*' => ['Form', '*'],
'form_macro' => ['Form', '__call'],
]);
$manager->registerFilters([
// Classes
'slug' => ['Str', 'slug'],
'plural' => ['Str', 'plural'],
'singular' => ['Str', 'singular'],
'finish' => ['Str', 'finish'],
'snake' => ['Str', 'snake'],
'camel' => ['Str', 'camel'],
'studly' => ['Str', 'studly'],
'md' => ['October\Rain\Support\Markdown', 'parse'],
]);
});
October's migrations rely on Laravel's migration.
Instead of keeping this documentation section up to date, I suggest to point the user to Laravel's migration docs: https://laravel.com/docs/5.1/migrations
OctoberCMS has been translated to 20 language. Why not docs?
In discover this widget by looking at the builder plugin database Table, but the only reference in found is this old post.
The backend-forms.md should document this widget as well as the other formwidgets.
From the first post I think we have the following options
items:
label: items
type: datagrid
columns:
item:
title: [..]
type: [..]
format: [..]
options: [..]
Option | Description |
---|---|
label | |
type | |
columns |
Howerver there is a readme.md in octobercms table widget folder, It let me think that this widjet as a lot more options.
My form element validates correctly but I am trying to add the class "has-errors" to the input group.
Hi! I translate into Russian. Than it is better to generate documentation?
At https://octobercms.com/docs/backend/lists#extend-list-columns
I believe there should be no $context argument for this function:
Change:
Categories::extendListColumns(function($list, $model, $context){
To:
Categories::extendListColumns(function($list, $model){
In the url example of the "pages" docs, the following is given as an example of using regex in page verification: "/blog/:post_name?|^[a-z0-9-]+$".
However, if you put that in the url when creating a page, you get the following error message:
"Invalid URL format. The URL should start with the forward slash symbol and can contain digits, Latin letters and the following symbols: _-[]:?|/+*".
This apparently disallows the '^' and '$' symbols....?
After OctoberCMS have grown with a lot more modules and updates i noticed that some changes needed to be made with the initial lighttpd configuration. I have modified the configuration example i provided last time to take in count for parameter arguments in js/css and and also to take in count for all imaginative places the plugin developers can place their asset files.
$HTTP["host"] =~ "example.domain.com" {
server.document-root = "/var/www/example/"
url.rewrite-once = (
"^/(plugins|modules/(system|backend|cms))/(([\w-]+/)+|/|)assets/([\w-]+/)+[-\w^&'@{}[\],$=!#().%+~/ ]+\.(jpg|jpeg|gif|png|svg|swf|avi|mpg|mpeg|mp3|flv|ico|css|js|woff|ttf)(\?.*|)$" => "$0",
"^/(system|themes/[\w-]+)/assets/([\w-]+/)+[-\w^&'@{}[\],$=!#().%+~/ ]+\.(jpg|jpeg|gif|png|svg|swf|avi|mpg|mpeg|mp3|flv|ico|css|js|woff|ttf)(\?.*|)$" => "$0",
"^/uploads/public/[\w-]+/.*$" => "$0",
"^/(favicon\.ico|robots\.txt|sitemap\.xml)$" => "$0",
"(.*)" => "/index.php$1"
)
}
Components can reference their partials in two ways. First is an explicit method:
{% partial __SELF__ ~ "::title" %}
The second is a relaxed method:
{% partial "@title" %}
The relaxed method is contextual:
All component partials can be overridden using the theme partials. Following from the previous example, if our component called channel uses the title.htm partial.
url = "mypage"
[channel]
==
{% component "channel" %}
We can override the partial by creating a file in our theme called partials/channel/title.htm.
The file path is broken down like this:
We can choose our own name for the partial subdirectory by giving the component a different alias. For example:
[channel foobar]
==
{% component "foobar" %}
Now we can override the partial by creating a file in our theme called partials/foobar/title.htm.
See here: https://octobercms.com/docs/ui/popup
The example buttons don't work, same with tabs, tooltips, etc...
Hello,
The UI and Markup docs has no search function, for be searched, or to search.
Thanks!
{{__SELF__.property('some-property')}}
should be documented here for accessing properties of the component from its partials.
Hello,
I need the docs offline but I do not know how to build the markdown files. Any help would be good.
I am on windows by the way
It's possible to add a search box to the docs page? So when you need search something and you don't know where it's, you can found easily.
Is it posible to extend a side menu with a new item for an existing navigation?
When you are viewing a documentation page like this for example, and you have the a sub listing open in the navigation sidebar, you are unable to scroll the sticky navigation sidebar independently of the main content area. This means that you have to scroll all the way to the bottom of the page just to view the rest of the navigation's items. As some pages are quite long, this is very annoying and unfriendly to the user experience.
The side bar should be made either not sticky or it should have a max height set (probably relative to viewport-height) with the overflow set to scroll so that the two components of the page could be scrolled independently of each other.
As a side note, what would it take to get some really low level documentation setup in addition to the higher level tutorial style documentation that we have currently? I'm thinking of something along the lines of Laravel's API documentation. Is this something where I could help contribute to the project by setting up such a system?
There is no documentation, whatsoever, as to how one can manage users on front-end side. The only thing available (for those who want to learn doing this) is the source code of rainlab.user-plugin
which is not self-explanatory enough. I mean come on! add some documentation for front-end user management! Or if you do not have time to do that, make laravel's authentication API available to use!
https://octobercms.com/forum/post/authentication-for-a-front-end-login-script
https://octobercms.com/forum/post/why-cant-use-the-auth-class-how-to-use-auth-for-front-end-user?page=1
October rocks, but not at user management. I have chosen to use OctoberCMS to make my life easier, but sometimes it doesn't.
Need doc on defining user group settings from plugins.
Need users of a plugin to be able to define or limit access to plugin pages by user group wherein editing a user group plugin tabs can be added to provide task permissions:
/backend/backend/groups/update/group#
Twice now I haven't been able to display my plugin's model form because other plugins are interfering and adding fields to my form when they shouldn't be. This is because plugins are only checking for the correct controller and not the model too.
For example I've created a new plugin that adds a field to the User form. My field has a form of its own, but because I'm attached to the Users controller, other plugins are trying to add their fields to my form causing an error.
I propose adding a requirement on the developer guide to check for both controller AND model when extending forms with a plugin.
Here is a code sample:
Event::listen('backend.form.extendFields', function($widget)
{
if (!$widget->getController() instanceof \RainLab\User\Controllers\Users) return;
// This line should also be included
if (!$widget->model instanceof \RainLab\User\Models\User) return;
...
}
who can help me how to do that let the doc has multiply languages edition!
my English is poor! but I want to do this challenge!
I think the form widget section need a little bit more explanation on how to make a formwidget configurable thought the Form field definitions.
The example of the datePicker widget could be an acceptable solution :
/**
* @var bool Display mode: datetime, date, time.
*/
public $mode = 'datetime';
/**
* @var string the minimum/earliest date that can be selected.
* eg: 2000-01-01
*/
public $minDate = null;
/**
* @var string the maximum/latest date that can be selected.
* eg: 2020-12-31
*/
public $maxDate = null;
function init()
{
$this->fillFromConfig([
'format',
'mode',
'minDate',
'maxDate',
]);
{
The markdown documentation link in the "Edit Details" section of a plugin's dashboard is pointing to
http://octobercms.com/docs/help/makrdown
instead of
Hi,
The UI docs are missing ๐ญ .
Wrong project - sorry.
We need some docs on polymorphic many-to-many relationships within a model.
Can't seem to find the documentation on File attachment anymore?
It would be helpful to have entry point doc's on specific how-to's. Specifically for some of the most common design needs that may have some layer of complexity for newcomers to the platform. (fully aware that in sum all parts seem to be doc'd, but in some cases it's quite spread out and difficult to extrapolate)
This may need to be a simple "Examples" doc area?
Examples:
Good Morning Everyone
I just finished the October installation via the web-wizard, where anything seems to be fine, but now when i visit the url on n0ah.roundedge.ch i just get the html withoud images or css. I also cannot access any of the other pages. When i add index.php to the end of the url the homepage gets displayed correctly.
When i then try to access the backend i also just get the html, but as soon as i login anything locks good again.
Here are my config files:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
##
## You may need to uncomment the following line for some hosting environments,
## if you have installed to a subdirectory, enter the name here also.
##
RewriteBase /n0ah/
##
## Black list protected files
##
RewriteRule themes/.*/(layouts|pages|partials)/.*.htm index.php [L,NC]
RewriteRule uploads/protected/.* index.php [L,NC]
##
## White listed folders and files
##
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} !\.js
RewriteCond %{REQUEST_URI} !\.ico
RewriteCond %{REQUEST_URI} !\.jpg
RewriteCond %{REQUEST_URI} !\.jpeg
RewriteCond %{REQUEST_URI} !\.gif
RewriteCond %{REQUEST_URI} !\.css
RewriteCond %{REQUEST_URI} !\.less
RewriteCond %{REQUEST_URI} !\.scss
RewriteCond %{REQUEST_URI} !\.pdf
RewriteCond %{REQUEST_URI} !\.png
RewriteCond %{REQUEST_URI} !\.swf
RewriteCond %{REQUEST_URI} !\.txt
RewriteCond %{REQUEST_URI} !\.xml
RewriteCond %{REQUEST_URI} !\.xls
RewriteCond %{REQUEST_URI} !\.eot
RewriteCond %{REQUEST_URI} !\.woff
RewriteCond %{REQUEST_URI} !\.ttf
RewriteCond %{REQUEST_URI} !\.svg
RewriteCond %{REQUEST_URI} !\.wmv
RewriteCond %{REQUEST_URI} !\.avi
RewriteCond %{REQUEST_URI} !\.mov
RewriteCond %{REQUEST_URI} !\.mp4
RewriteCond %{REQUEST_URI} !\.webm
RewriteCond %{REQUEST_URI} !\.ogg
RewriteCond %{REQUEST_URI} !docs/.*
RewriteCond %{REQUEST_URI} !themes/.*
RewriteRule ^ index.php [L,NC]
##
## Standard routes
##
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
<VirtualHost *:80>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
core mod_so mod_watchdog http_core mod_log_config mod_logio mod_version mod_unixd mod_access_compat mod_actions mod_alias mod_auth_basic mod_authn_core mod_authn_file mod_authz_core mod_authz_host mod_authz_svn mod_authz_user mod_autoindex mod_dav mod_dav_svn mod_deflate mod_dir mod_env mod_filter mod_headers mod_mime prefork mod_negotiation mod_php5 mod_rewrite mod_setenvif mod_socache_shmcb mod_ssl mod_status
I have already checked the forum and found many similar issues, but none of the solutions was working for me.
Thanks a lot in advance and have a nice day, Noah
Documentation is not clear on how to implement the encryption modifier. It is listed as both $encrypted and $encryptable, yet neither seem to be implemented.
http://octobercms.com/docs/database/model#attribute-modifiers
Checkbox Label is incorrectly serving as text value for the checkbox.
There should be an additional option for the text value, and the label should instead be the actually label.
Currently the checkbox field has no label.
There are two ways to update October - via Composer and via the Update Gateway. Updating October via Composer will connect to the repository and pull updates for the core and any other composer installed packages.
In which directory should I make composer update
?
Need to document Checkbox and Checkbox list along with available options
https://github.com/octobercms/docs/blob/master/backend-forms.md
The Form Field Types documentation does not mention how to do checkboxes.
Here is an example of a checkbox form field:
showFullContent:
label Show full content?
type: checkbox
span: left
default: true
comment: This is a comment
description: This is a description
Linked from the Settings > API page.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.