Hi Edy,

> On 9 Mar 2017, at 14:58, Eduard Moraru <[email protected]> wrote:
> 
> Hi,
> 
> It may be worth to clarify a bit the behavior and visibility of actual blog
> posts, now that we have covered Categories and the way to share them
> between 2 blogs.
> 
> If "Global.Categories" is used by both the "Global" and the "AnotherBlog"
> in their configuration (as categoriesLocation), which one of them displays
> what? It`s not clear to me which one is the global (i.e.aggregator) and
> which one is the local (i.e. just reusing the other's categories, but not
> aggregating the other's posts as well) blog in this case. AFAICS right now,
> they would both display the same content, since, AFAIU, a blog will be
> displaying all the posts for its configured categories.

Are you sure about that? I was under the impression that the blog code 
algorithm was the following:
* if the blog type is local then in the XWQL/HQL query, add a where clause to 
only find blog posts in that blog’s space space
* if the blog type is global then don’t add any where restriction

I don’t think it was related to categories. Unless I’m mistaken.

Thanks
-Vincent

> 
> However, maybe I`ve understood it the other way around. Is it instead the
> fact that the aggregator would specify a multi-valued categoryLocations
> with the categories of the blogs it wants to aggregate, while a local blog
> would only use his own, local categories to display posts? That might work,
> *however*, it would only be feasible if the aggregating (global) blog was
> in *read-only* mode. If it`s not read-only and it starts creating posts
> using one of the aggregated blog's categories, then the new post will start
> showing in the aggregated (local) blog as well.
> 
> Thanks,
> Eduard
> 
> On Thu, Mar 9, 2017 at 3:19 PM, Mohamed Boussaa <[email protected]>
> wrote:
> 
>> Thanks for the reply Vincent.
>> 
>> On Thu, Mar 9, 2017 at 1:26 PM, Vincent Massol <[email protected]> wrote:
>> 
>>> Hi,
>>> 
>>>> On 9 Mar 2017, at 12:12, Mohamed Boussaa <[email protected]>
>>> wrote:
>>> 
>>> [snip]
>>> 
>>>> If you want more, here is the details about the envision
>> implementation:
>>>> 
>>>> *Changes envisions*
>>>> 
>>>> 
>>>>  - Remove the '*BlogType*' xproperty of the '*Blog.BlogClass*'
>>>>  - Introduce a new property named '*categoriesLocation'* that contains
>>>>  the location (space)  of the blog categories.
>>>>  - The 'categoriesLocation' property will allow sharing categories
>>>>  between different blogs
>>>>  - By default when a new blog is created the 'categoriesLocation'
>>>>  property is initialized to a nested space 'Categories' under the blog
>>> local
>>>>  space.
>>>> 
>>>>      for example If a Blog is created in a space '*A/*' then its '
>>>> *categoriesLocation*' property wil be initialized to '*A/Categories/*'
>>>> 
>>>> 
>>>>  - All blog categories will be created  in this nested space '
>>>>  *<blogSpace>/Categories/*’
>>> 
>>> Note that the rationale for separate Category space is also to fix the
>>> open issue we have that categories and blog posts cannot share the same
>>> page name (see http://jira.xwiki.org/browse/XWIKI-6346).
>>> 
>>>>  - The *WebHome* page of the Categories space will be used as a
>>>>  management page of the blog categories, the WebHome will list all the
>>>>  categories of the blog and allows to edit these categories (Add,
>>> Rename,
>>>>  Remove ...)
>>>> 
>>>> *Backward compatibility*
>>>> 
>>>> Actually the default blog installed with xwiki on the 'Blog' space is a
>>>> global blog, it mean that all Blog categories are created on the 'Blog'
>>>> space and shared with the other local blogs.
>>>> 
>>>> In order to not break the actual use cases we consider that:
>>>> 
>>>> 
>>>>  -  If the 'categoriesLocation' property of a given blog is empty then
>>>>  the categories of the default blog will be used (Categories created
>> on
>>> the
>>>>  'Blog' space)
>>>> 
>>>> *Changes on blog management page*
>>>> 
>>>> 
>>>>  - Remove the 'BlogType' field
>>>>  - Replace the 'Space' and 'Title' fields with a Location picker (like
>>>>  when you add a new wiki page).
>>>>  - A new  blog cannot be created in an existing space, a verification
>>>>  will be done to check if the space is a new one.
>>>> 
>>>>        A 'BlogClass' will be added to the WebHome page of the space
>>>> 
>>>>        A WebPreferences page will be added to the blog space in order
>> to
>>>> display the blog panels
>>> 
>>> You forgot one point:
>>> 
>>> * Add an Admin UI for the Blog management by adding a ConfigurableClass.
>>> 
>>> We also discussed about:
>>> 
>>> * Macros *
>>> 
>>> * Introduce a new {{blog}} macro that could be used anywhere to display
>>> the content of a blog (see http://jira.xwiki.org/browse/XWIKI-6349)
>>> * Make the blog macro be able to act as a “latest blog posts” feature by
>>> having parameters to control how many entries to display
>>> 
>>>> *Registration in the Application Panel  (Blogs entry points)*
>>>> 
>>>> The general idea is to have a dashboard page that lists all the blogs
>>>> available in the wiki. A separate proposal will be done for the blogs
>>>> dashboard page.
>>> 
>>> My proposal here is very simple (for a first version):
>>> 
>>> * If there’s only 1 blog in the wiki: keep it as it now, i.e. display the
>>> posts of the main blog
>>> * If there’s more than 1 blog in the wiki: display a LT with each line
>>> being a link to a blog.
>>> * Option: instead of a LT, use the {{blog/}} macro for each blog to list
>>> the last 5 blog items. We’d just need to find a nice layout for that. I’m
>>> sure Caty would have an idea :)
>>> 
>>> All the rest sounds good to me! I’m very happy to see someone working on
>>> the blog app; it’s been left untouched for too long.
>>> 
>>> Thanks
>>> -Vincent
>>> 
>>>> Thanks,
>>>> 
>>>> Mohamed
>>>> 
>>>> On Wed, Mar 8, 2017 at 10:39 AM, Mohamed Boussaa <
>>> [email protected]>
>>>> wrote:
>>>> 
>>>>> 
>>>>> 
>>>>> On Wed, Mar 8, 2017 at 10:21 AM, Vincent Massol <[email protected]>
>>>>> wrote:
>>>>> 
>>>>>> Hi Mohamed,
>>>>>> 
>>>>>>> On 2 Mar 2017, at 16:53, Mohamed Boussaa <[email protected]
>>> 
>>>>>> wrote:
>>>>>>> 
>>>>>>> Hello XWikiers,
>>>>>>> 
>>>>>>> This proposal is about adding a new blog type: the isolated blog.
>>>>>>> 
>>>>>>> An isolated blog is a blog that is created in a given space (local
>>>>>> blog),
>>>>>>> the blog categories and posts are created/visible only in that
>> space.
>>>>>>> 
>>>>>>> The objective of creating this separate blog type is to allow having
>>>>>>> independent blogs in the same wiki and to not break the actual blog
>>> use
>>>>>>> cases.
>>>>>>> 
>>>>>>> An isolated blog is subject to following conditions:
>>>>>>> 
>>>>>>> *Posts*
>>>>>>> 
>>>>>>> - The isolated blog posts will be created in the local blog space
>>>>>>> - Only blog posts located in the local space will be displayed in
>> the
>>>>>>> blog home page
>>>>>>> - Prevent the global blog to display posts from isolated blogs
>>>>>>> 
>>>>>>> 
>>>>>>> *Categories*
>>>>>>> 
>>>>>>> - New blog categories are created into the local blog space
>>>>>>> - On the blog post form only categories located in the isolated
>> blog
>>>>>>> space will be displayed
>>>>>>> - The 'Categories' panel display only categories located in the
>>>>>> isolated
>>>>>>> blog space
>>>>>>> - Categories from isolated blogs are not displayed in the global
>> blog
>>>>>>> category panel
>>>>>>> 
>>>>>>> *Panels*
>>>>>>> 
>>>>>>> - Only display local posts in the 'recent posts' panel for isolated
>>>>>>> blogs.
>>>>>>> - Prevent isolated blog posts to be displayed in the global blog
>>>>>> 'recent
>>>>>>> posts' panel.
>>>>>>> - Only display local unpublished posts in the 'Unpublished posts'
>>>>>> panel
>>>>>>> for isolated blogs
>>>>>>> - Prevent unpublished posts from isolated blogs to be displayed at
>>>>>>> global blog 'Unpublished posts' panel.
>>>>>>> - Isolated blogs will be removed from any RSS feed but will be
>>> visible
>>>>>>> on the one matching the isolated blogs.
>>>>>>> - The 'archives' panel will not be modified because it already
>>> follows
>>>>>>> the isolated blogs conditions in the case of local blogs
>>>>>>> 
>>>>>>> *How to create an isolated post?*
>>>>>>> On the Blog/Management page
>>>>>>> 
>>>>>>> - Add a checkbox "Isolate this blog"
>>>>>>> - When the checkbox is checked:
>>>>>>> 
>>>>>>>           - Create an isolated blog in place of a local blog.
>>>>>>>           - Create the default categories (News, Personal, Others)
>>>>>> into
>>>>>>> the local space
>>>>>>> 
>>>>>>> 
>>>>>>> WDYT?
>>>>>> 
>>>>>> Sorry for not answering sooner. I see you’ve now created
>>>>>> https://jira.xwiki.org/browse/XWIKI-14076.
>>>>>> 
>>>>>> I’ve just posted a comment there that I’m reposting here:
>>>>>> 
>>>>>> “
>>>>>> How do you address registration in the Application Panel or more
>>>>>> generally what are the entry points for isolated blogs?
>>>>>> 
>>>>>> I remember that I made the following suggestion:
>>>>>> * When you click on the Blog entry in the Application Panel, have the
>>>>>> following:
>>>>>> ** If there's only 1 blog in the wiki, go to it (as now)
>>>>>> ** If there's more than 1 blog in the wiki, go to a blog dashboard
>> page
>>>>>> and display the list of all blogs in the wiki (visible to the current
>>> user).
>>>>>> 
>>>>> 
>>>>> We did not think about how to access to the blogs, but your
>> suggestion
>>>>> can be a good solution.
>>>>> 
>>>>> 
>>>>>> Note that I don't think we need an "isolated" blog type since we
>>> already
>>>>>> have the notion of a "local" blog. I can see in BlogClass:
>>>>>> 
>>>>>> {noformat}
>>>>>>     <values>local=Space blog (aggregates posts from its space
>>>>>> only)|global=Global blog (aggregates posts from the entire
>>> wiki)</values>
>>>>>> {noformat}
>>>>>> 
>>>>>> Global means aggregating posts from the entire wiki so it doesn't
>> make
>>>>>> sense to not aggregate posts from an isolated blog.
>>>>>> 
>>>>>> So I think we could just do the following instead:
>>>>>> * Deprecate the "blogType" xproperty
>>>>>> * Introduce a new property named "scope" or "includes" that list all
>>>>>> spaces that will be taken into consideration when displaying blog
>>> posts. If
>>>>>> left empty, then the current space of the blog will be used. If "%"
>> is
>>> used
>>>>>> then all spaces will be used (in practice the value would be used in
>>> the
>>>>>> where part of XWQL query.
>>>>>> 
>>>>>> I feel this makes it all more coherent and offers more freedom.
>>>>>> 
>>>>> 
>>>>> The isolated blog type is not just about what blog posts to display,
>> it
>>>>> includes also the panels content and where to create the categories.
>>>>> Actually categories are global, it means that they are created in the
>>>>> 'Blog' space.
>>>>> 
>>>>> The objective of the islated blog is to be only visible on its space:
>>>>>  - Isolated blog categories are created and visible only on the blog
>>>>> space
>>>>>  - The categories are not visible on the post edit page of other
>> blogs
>>>>>  - The posts are not displayed on the blog index pages of the
>>>>> global/other local blogs
>>>>>  - In the space of an isolated blog, the panels will display only
>>>>> posts/categories of the isolated blog
>>>>> 
>>>>> 
>>>>>> WDYT?
>>>>>> “
>>>>>> 
>>>>>> Thanks!
>>>>>> -Vincent
>>>>>> 
>>>>>> 
>>>>> 
>>> 
>>> 
>> 

Reply via email to