{"action":"created","issue":{"url":"https://api.github.com/repos/divio/django-cms/issues/5006","repository_url":"https://api.github.com/repos/divio/django-cms","labels_url":"https://api.github.com/repos/divio/django-cms/issues/5006/labels{/name}","comments_url":"https://api.github.com/repos/divio/django-cms/issues/5006/comments","events_url":"https://api.github.com/repos/divio/django-cms/issues/5006/events","html_url":"https://github.com/divio/django-cms/pull/5006","id":133561879,"number":5006,"title":"[WiP] Implement four-level CMS_PLACEHOLDER_CONF","user":{"login":"yakky","id":714711,"avatar_url":"https://avatars.githubusercontent.com/u/714711?v=3","gravatar_id":"","url":"https://api.github.com/users/yakky","html_url":"https://github.com/yakky","followers_url":"https://api.github.com/users/yakky/followers","following_url":"https://api.github.com/users/yakky/following{/other_user}","gists_url":"https://api.github.com/users/yakky/gists{/gist_id}","starred_url":"https://api.github.com/users/yakky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yakky/subscriptions","organizations_url":"https://api.github.com/users/yakky/orgs","repos_url":"https://api.github.com/users/yakky/repos","events_url":"https://api.github.com/users/yakky/events{/privacy}","received_events_url":"https://api.github.com/users/yakky/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/divio/django-cms/labels/kind:%20enhancement","name":"kind: enhancement","color":"c7def8"},{"url":"https://api.github.com/repos/divio/django-cms/labels/needs%20docs","name":"needs docs","color":"f7c6c7"},{"url":"https://api.github.com/repos/divio/django-cms/labels/status:%20work%20in%20progress","name":"status: work in progress","color":"0052cc"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/divio/django-cms/milestones/40","html_url":"https://github.com/divio/django-cms/milestones/3.3","labels_url":"https://api.github.com/repos/divio/django-cms/milestones/40/labels","id":1333248,"number":40,"title":"3.3","description":"Rethinking menus and improving the UX of the pagetree.","creator":{"login":"mkoistinen","id":615759,"avatar_url":"https://avatars.githubusercontent.com/u/615759?v=3","gravatar_id":"","url":"https://api.github.com/users/mkoistinen","html_url":"https://github.com/mkoistinen","followers_url":"https://api.github.com/users/mkoistinen/followers","following_url":"https://api.github.com/users/mkoistinen/following{/other_user}","gists_url":"https://api.github.com/users/mkoistinen/gists{/gist_id}","starred_url":"https://api.github.com/users/mkoistinen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mkoistinen/subscriptions","organizations_url":"https://api.github.com/users/mkoistinen/orgs","repos_url":"https://api.github.com/users/mkoistinen/repos","events_url":"https://api.github.com/users/mkoistinen/events{/privacy}","received_events_url":"https://api.github.com/users/mkoistinen/received_events","type":"User","site_admin":false},"open_issues":33,"closed_issues":83,"state":"open","created_at":"2015-10-01T14:26:39Z","updated_at":"2016-05-08T15:03:59Z","due_on":null,"closed_at":null},"comments":16,"created_at":"2016-02-14T18:02:34Z","updated_at":"2016-05-08T15:56:18Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/divio/django-cms/pulls/5006","html_url":"https://github.com/divio/django-cms/pull/5006","diff_url":"https://github.com/divio/django-cms/pull/5006.diff","patch_url":"https://github.com/divio/django-cms/pull/5006.patch"},"body":"Currently ``CMS_PLACEHOLDER_CONF`` only allows values for placeholder and template+placeholder keys\r\nSometimes a global configuration would make things much nicer / simpler\r\n@ojii suggested a for level structure like (in increasing order of precedence)\r\n\r\n    CMS_PLACEHOLDER_CONF['*'] (global)\r\n    CMS_PLACEHOLDER_CONF['template'] (if template is given)\r\n    CMS_PLACEHOLDER_CONF['placeholder']\r\n    CMS_PLACEHOLDER_CONF['template placeholder'] (if template is given)\r\n\r\nThis is backward-compatible and allow a few neat tricks.\r\n\r\nWe can also add wildcards to placeholder configuration:\r\n\r\n    CMS_PLACEHOLDER_CONF['placeholder-*']\r\n\r\nthis will recognize ``placeholder-foo`` and ``placeholder-bar``.\r\nWe need to make ``*`` (or ``%``) reserved to avoid clashes (this will also solve the @ojii's comment regarding '*' being a valid placeholder name). We can use wildcards also for templates.\r\n\r\nChanges needed\r\n * [x] 4-level configuration\r\n * [x] tests\r\n * [ ] documentation\r\n\r\nOn top of this is easy to implement plugin blacklisting (see #5000, #4979), list of plugins to show in text editor and other plugin configuration options"},"comment":{"url":"https://api.github.com/repos/divio/django-cms/issues/comments/217729233","html_url":"https://github.com/divio/django-cms/pull/5006#issuecomment-217729233","issue_url":"https://api.github.com/repos/divio/django-cms/issues/5006","id":217729233,"user":{"login":"coveralls","id":2354108,"avatar_url":"https://avatars.githubusercontent.com/u/2354108?v=3","gravatar_id":"","url":"https://api.github.com/users/coveralls","html_url":"https://github.com/coveralls","followers_url":"https://api.github.com/users/coveralls/followers","following_url":"https://api.github.com/users/coveralls/following{/other_user}","gists_url":"https://api.github.com/users/coveralls/gists{/gist_id}","starred_url":"https://api.github.com/users/coveralls/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coveralls/subscriptions","organizations_url":"https://api.github.com/users/coveralls/orgs","repos_url":"https://api.github.com/users/coveralls/repos","events_url":"https://api.github.com/users/coveralls/events{/privacy}","received_events_url":"https://api.github.com/users/coveralls/received_events","type":"User","site_admin":false},"created_at":"2016-05-08T15:56:18Z","updated_at":"2016-05-08T15:56:18Z","body":"\n[![Coverage Status](https://coveralls.io/builds/6092520/badge)](https://coveralls.io/builds/6092520)\n\nCoverage increased (+0.01%) to 88.064% when pulling **3d704e23fa9fe4b887cafcf27eeb27aa54dbbd33 on yakky:feature/global_placeholder_conf** into **f4c46747cadb99c8a25804f43762f66720012d51 on divio:develop**.\n"}}