> On 21 Apr 2017, at 15:36, Miroslav Galajda <miroslav.gala...@gmail.com> wrote:
> 
> Hi,
> the solution I've described is javascript based and runs on client-side.
> From what I know, the component-based solution, which you propose, would
> require to have url-friendly conversion component usable in java and not as
> javascript code. Am I right?

Yes you’re right but:

1) There’s also a Java API, see https://github.com/slugify/slugify
2) If we also offer a UIX then it can be implemented in a wiki page for example 
and you can use JS.

Thanks
-Vincent

> On 21 April 2017 at 15:28, Vincent Massol <vinc...@massol.net> wrote:
> 
>> Hi Miroslav,
>> 
>>> On 21 Apr 2017, at 15:05, Miroslav Galajda <miroslav.gala...@gmail.com>
>> wrote:
>>> 
>>> Hi, let me enter into this conversion.
>>> Some time ago I've asked for help how to solve problem with diacritics
>> (or
>>> accents) in page names when creating new pages so that the have
>>> url-friendly names. You can search for "strip accents from page name used
>>> in url" in xwiki users mailing list. I've got no hint or solution from
>>> xwiki community till today.
>>> 
>>> I've come with solution that ensures for simple users, creating
>>> url-friendly names without requiring them to think about the concept of
>> the
>>> page name or page title. They simple enter the desired human readably
>> page
>>> name, and in the code behind of the page creation, I have made some
>>> modifications in createinline.vm to hook into page creation process. The
>>> modifications are mainly javascript based, where I've attache to submit
>>> event of the "form#create", where I replace the entered "title" with the
>>> one for url-friendly. And for url-friendly name I've used this javascript
>>> based solution on https://pid.github.io/speakingurl/.
>>> I've integrated this principle also into page creation process of FAQ and
>>> Blog applications, which we are using in our xwiki installation.
>>> 
>>> It would be nice if you could integrate this principle into xwiki so that
>>> everyone can have nice url-friendly urls without worring about it. It is
>>> also suitable for english speaking users. You don't have to worry about
>>> entering spaces or other non-url allowed characters, which make url look
>>> ugly.
>> 
>> That looks very nice!
>> 
>> One way forward I could think about:
>> * We provide some Create script service to return a URL-friendly string.
>> We introduce a component role for this. We refactor createinline.vm to use
>> it and to display the URL.
>> * You could then contribute your code as an extension that we make
>> available on extensions.xwiki.org for users to install
>> * We decide later on if we want to bundle it by default
>> 
>> If we don’t agree about displaying the URL by default all the time then an
>> option is to introduce a UIX in createinline.vm for that. And this could be
>> implemented in your extension too for example or by default in XWiki
>> (possibly with an Admin setting).
>> 
>> WDYT?
>> 
>> Thanks
>> -Vincent
>> 
>>> 
>>> Thank you
>>> 
>>> Best regards
>>> Miroslav Galajda
>>> 
>>> On 21 April 2017 at 14:02, Vincent Massol <vinc...@massol.net> wrote:
>>> 
>>>> 
>>>>> On 21 Apr 2017, at 13:52, Marius Dumitru Florea <
>>>> mariusdumitru.flo...@xwiki.com> wrote:
>>>>> 
>>>>> On Fri, Apr 21, 2017 at 2:16 PM, Vincent Massol <vinc...@massol.net>
>>>> wrote:
>>>>> 
>>>>>> Hi Caty,
>>>>>> 
>>>>>>> On 21 Apr 2017, at 12:44, Ecaterina Moraru (Valica) <
>> vali...@gmail.com
>>>>> 
>>>>>> wrote:
>>>>>>> 
>>>>>>> Let's see what variants we have:
>>>>>>> 
>>>>>>> 1. Instead of displaying "Title", display the "Name" instead.
>>>>>>> This won't solve anything. There is no difference between Page Name
>> and
>>>>>>> Page Title for the normal users. Seeing "Name" instead of "Title",
>> will
>>>>>> not
>>>>>>> stop the users to enter spaces if they want, so the URL will still
>> have
>>>>>>> those spaces. We don't force the Page Names to trim spaces.
>>>>>>> 
>>>>>>> One quick solution here is indeed to use "URL" label instead of
>> "Name".
>>>>>> For
>>>>>>> the reasons Vincent mentioned this might not end up in the product
>> for
>>>>>> now,
>>>>>> 
>>>>>> What did I mention? :) What’s preventing us from having it in the
>>>> product
>>>>>> rather soon than later (except workload ofc)?
>>>>>> 
>>>>>>> so you will need to do some custom development (changing some
>>>>>> translations)
>>>>>>> to have this change. If you want to be "hackish" you can even change
>>>> the
>>>>>>> translation for "Title" to "URL" instead and hope that your users
>> will
>>>>>>> enter shorter URLs (since we generate the name from the title).
>>>>>>> 
>>>>>>> Displaying just Name / URL, means users will still have to go and
>>>> change
>>>>>>> the title manually.
>>>>>> 
>>>>>> This could be better (with URL name) since when you create a page
>> you’re
>>>>>> offered the ability to change the title after you click Create.
>>>>>> 
>>>>>>> The only way to cut a step in the flow is to
>>>>>>> autogenerate the page names (which we currently do). But for your use
>>>>>> case
>>>>>>> you shoyld write a shorting/trimming algorithm, but this is custom,
>>>> since
>>>>>>> you mentioned you want just the initials and no spaces, etc.
>>>>>>> 
>>>>>>> 2. Displaying both "Title" and "Name". This will create confusion and
>>>>>> need
>>>>>>> for explanations.
>>>>>> 
>>>>>> This is not exactly what is suggested either by Vishal nor by me :)
>> What
>>>>>> we suggested is to let the user enter the URL name and title.
>>>>>> 
>>>>>> Actually and to be more precise what I was suggesting was to continue
>> to
>>>>>> let the user enter the title but to show the generated URL as it’s
>> done
>>>> in
>>>>>> AWM. And, importantly to allow the user to change the last part of the
>>>> URL
>>>>>> (it would change the page name).
>>>>>> 
>>>>>>> That's why we display these options just for advanced and
>>>>>>> long-time users of XWiki, since they are used to the concepts.
>>>>>> 
>>>>>> 
>>>>> 
>>>>>> Yes but URLs don't need an advanced user to understand the concept
>> and I
>>>>>> agree with Vishal that we’re now causing a very large number of pages
>> to
>>>>>> have %25 in their URLs by default which is quite bad… Of course
>> someone
>>>> can
>>>>>> spend their time monitoring what users are doing and renaming pages
>>>>>> thereafter or educate their users to do that but we’re not helping and
>>>>>> we’re making it difficult.
>>>>>> 
>>>>> 
>>>>> If your web site is not in English then you're forced to use special
>>>>> characters like diacritics which makes it hard to avoid URL encoded
>>>>> characters (the browser location bar displays the URL nicely but if you
>>>>> copy the URL the result is not nice).
>>>> 
>>>> Agreed. So I’d say it’s even more important to allow the user to be able
>>>> to easily view and change the resulting URL when they’re not in English.
>>>> 
>>>> Thanks
>>>> -Vincent
>>>> 
>>>>> 
>>>>> 
>>>>>> 
>>>>>>> -----
>>>>>>> 
>>>>>>> IMO what you are describing is advanced user behavior. Normal users
>>>> don't
>>>>>>> generally care about their URLs and SEO.
>>>>>> 
>>>>>> I don’t fully agree with you. I have the feeling (can’t prove it)
>> that a
>>>>>> good number of our users care about the generated URLs.
>>>>>> 
>>>>> 
>>>>>> Also I think that simple users may care about URL without being
>> advanced
>>>>>> users. Making them advanced users will expose them to a lot more
>>>> complexity
>>>>>> than they need to know.
>>>>>> 
>>>>>>> But the beauty of XWiki is that
>>>>>>> you can customize it locally to perfectly match your needs.
>>>>>> 
>>>>>> That’s not exactly true (and it’s far from being easy, just check
>>>>>> createinline.vm): It means overriding large portions of vm code and
>>>> having
>>>>>> to do manual merges whenever you upgrade. A major PITA.
>>>>>> 
>>>>>>> Vincent mentioned something about AWM. I don't see much difference
>> from
>>>>>> the
>>>>>>> Create Page. We generate the names from title here too. We display
>> them
>>>>>> in
>>>>>>> the breadcrumb, but in a more simple way. Displaying the
>>>>>> "localhost"/server
>>>>>>> part is not simple user behavior. AWM is more complex.
>>>>>>> 
>>>>>>> -----
>>>>>>> 
>>>>>>> So I would not change anything on the product side, since I believe
>>>> these
>>>>>>> should be solved as custom changes for your instance.
>>>>>>> We want to encourage users to use page titles (with spaces in them
>>>> since
>>>>>>> they are more readable and supported), while we are preserving the
>> page
>>>>>>> name behavior for advances users (but we don't enforce it).
>>>>>> 
>>>>>> I don’t agree with this sentence: We definitely don’t want to
>> encourage
>>>>>> users to use titles in URLs.
>>>>>> 
>>>>>>> If users made
>>>>>>> mistakes they can always change the title or rename the page.
>>>>>>> On the product side the only change I would like us to do is using
>> the
>>>>>> URL
>>>>>>> naming, but this was debated in the past and dropped for Vincent's
>>>>>> reasons.
>>>>>> 
>>>>>> What reasons, I don’t remember a discussion about using URL name
>> instead
>>>>>> of page name?
>>>>>> 
>>>>>> So our main disagreement is that I consider that favouring encoded
>>>>>> characters in URLs is not a good thing while you think it’s not a
>> large
>>>>>> enough problem to do something about it.
>>>>>> 
>>>>>> Would it make our UI too complex to use for simple users if we were
>>>>>> showing a URL and the ability to change the last part of it? IMO
>> what’s
>>>>>> complex is when we have Page name and Page Title. But I don’t feel
>>>> there’d
>>>>>> be confusion between URL and Page title.
>>>>>> 
>>>>>> What do others think?
>>>>>> 
>>>>>> Thanks
>>>>>> -Vincent
>>>>>> 
>>>>>>> 
>>>>>>> Thanks,
>>>>>>> Caty
>>>>>>> 
>>>>>>> 
>>>>>>> On Thu, Apr 20, 2017 at 11:57 PM, Vincent Massol <vinc...@massol.net
>>> 
>>>>>> wrote:
>>>>>>> 
>>>>>>>> 
>>>>>>>>> On 20 Apr 2017, at 22:51, Vincent Massol <vinc...@massol.net>
>> wrote:
>>>>>>>>> 
>>>>>>>>> Hi Vishal,
>>>>>>>>> 
>>>>>>>>> Ok, I misunderstood you in your first email. I understood the
>>>> opposite.
>>>>>>>> I thought you were complaining that have 2 notions (page name + page
>>>>>> title)
>>>>>>>> was confusing but it’s actually the opposite! What you find
>> confusing
>>>> is
>>>>>>>> the fact that it’s not easy for your users to set both the page name
>>>> and
>>>>>>>> page titles!
>>>>>>>>> 
>>>>>>>>> It’s funny (or not :)) since this is exactly what we had in past
>>>>>>>> versions of XWiki and we had several complaints that it was
>> confusing
>>>> to
>>>>>>>> have the 2 notions and this is why he hid the page name only for
>>>>>> advanced
>>>>>>>> users.
>>>>>>>> 
>>>>>>>> Actually, if I remember well, what we were doing was to ask for the
>>>> page
>>>>>>>> name and we were setting the title to the same as the page name by
>>>>>> default
>>>>>>>> and then the user could edit the title before saving the page.
>>>>>>>> 
>>>>>>>> We’ve now done the opposite (user deciding on the title and page
>> name
>>>>>>>> being derived from it) but leading to the issue you’re raising about
>>>> URL
>>>>>>>> SEO…
>>>>>>>> 
>>>>>>>> Thanks
>>>>>>>> -Vincent
>>>>>>>> 
>>>>>>>>> See below.
>>>>>>>>> 
>>>>>>>>>> On 20 Apr 2017, at 14:20, Vishal <thewikinote...@gmail.com>
>> wrote:
>>>>>>>>>> 
>>>>>>>>>> Thanks Vincent for your thorough reply..
>>>>>>>>>> You guessed it right. We intend to have clean and short urls for
>> SEO
>>>>>>>>>> reasons.
>>>>>>>>>> Current scheme creates two problems:
>>>>>>>>>> 
>>>>>>>>>> 1) The Page name is fetched automatically from the Title. Often
>> the
>>>>>>>> titles
>>>>>>>>>> have spaces which translate as *percent characters *in url which
>>>> makes
>>>>>>>> it
>>>>>>>>>> somewhat unclean :)
>>>>>>>>> 
>>>>>>>>> Indeed you’re right. By hiding the page name we’re now incitating
>> to
>>>>>>>> have longer URLs and encoded characters showing up in URLs which is
>>>> not
>>>>>>>> nice I agree.
>>>>>>>>> 
>>>>>>>>> Maybe one solution is to do something similar to what we do in AWM,
>>>>>> i.e.
>>>>>>>> generate automatically the URL from the title entered by the user
>> and
>>>>>> show
>>>>>>>> the resulting URL to the user and give the user the opportunity to
>>>>>> change
>>>>>>>> the URL.
>>>>>>>>> 
>>>>>>>>> See http://extensions.xwiki.org/xwiki/bin/download/Extension/
>>>>>>>> App%20Within%20Minutes%20Application/AppWithinMinutes-Step1.png
>>>>>>>>> 
>>>>>>>>>> 2) Secondly, to have the shorter url, we use only the short forms
>> of
>>>>>>>>>> complete title.
>>>>>>>>>> Ex. For title 'Pune University' we use name PU.
>>>>>>>>> 
>>>>>>>>> Hey, you’re from Pune? :) I’ve been there about 15 times! That was
>>>> in a
>>>>>>>> previous job where my company and KPIT Cummins were partners.
>>>>>>>>> 
>>>>>>>>>> Otherwise in this hierarchy of pages, the url would be much
>> longer.
>>>>>>>>>> Ex. We have page 'Electronics and Telecommunications' branch under
>>>>>> page
>>>>>>>>>> 'Pune University'. We should not have such a long url. Instead
>> here
>>>> we
>>>>>>>> need
>>>>>>>>>> PU/ENTC or Pune-University/ENTC
>>>>>>>>>> 
>>>>>>>>>> To avoid all this, what we currently do:
>>>>>>>>>> 1) On create page dialog, use PU as title.. This will create url
>> as
>>>>>> PU.
>>>>>>>>>> If full name is used here as title, we need to use - instead of
>>>> spaces
>>>>>>>> to
>>>>>>>>>> avoid percent characters in url.
>>>>>>>>>> 2) While in edit mode, change the title back to Pune University.
>>>>>> Remove
>>>>>>>> any
>>>>>>>>>> - characters to make title clean.
>>>>>>>>>> This is where confusion creeps in.
>>>>>>>>>> 
>>>>>>>>>> If these two terms create confusion, why I need to show them both:
>>>>>>>>>> I guess the *confusion is due to term Name*. It doesn't reflect
>>>> actual
>>>>>>>> usage
>>>>>>>>>> of the term. URL or weblink or link or web address would be more
>> apt
>>>>>>>> terms
>>>>>>>>>> to use to instead of Name.
>>>>>>>>> 
>>>>>>>>> Regarding Page name vs Page URL.
>>>>>>>>> 
>>>>>>>>> A bit of history: The reason we used page name and not page URL
>>>>>>>> originally is because what the user is creating is a document in the
>>>>>>>> database and initially it was called Document Name. Since that was a
>>>> bit
>>>>>>>> confusing for users, we had decided to call it Page Name. It just
>>>>>> happened
>>>>>>>> that the URL used was directly derived from the document/page name.
>>>>>>>>> 
>>>>>>>>> In practice the 3 concepts could have different values:
>>>>>>>>> * a value for the document’s name in the DB
>>>>>>>>> * another value for the document’s title
>>>>>>>>> * yet another value used in the URL.
>>>>>>>>> 
>>>>>>>>> We’ve had discussions so that we could let the user provide shorter
>>>>>> URLs
>>>>>>>> for pages in the future.
>>>>>>>>> 
>>>>>>>>> Now for the time being and since we don’t have this ATM, I think I
>>>>>> agree
>>>>>>>> with you that we could decide to display to the user the URL that
>> will
>>>>>> be
>>>>>>>> generated (the encoded URL) and allow the user to change it.
>>>> Internally
>>>>>> the
>>>>>>>> user would change the document name.
>>>>>>>>> 
>>>>>>>>>> My users can differentiate between Title and URL. But the whole
>>>>>>>> procedure we
>>>>>>>>>> follow is certainly not understandable by all. And we definitely
>>>> need
>>>>>> to
>>>>>>>>>> follow this whole long procedure, just to have short and clean
>> urls.
>>>>>>>>> 
>>>>>>>>> Yes, if you’re asking your users to care about the URLs that get
>>>>>>>> generated, right now they need to be advanced users to be able to
>> edit
>>>>>> the
>>>>>>>> page name in the Create Page UI (since changing the title afterwards
>>>> is
>>>>>> too
>>>>>>>> cumbersome).
>>>>>>>>> 
>>>>>>>>>> So, by showing both fields at the first place itself, I would like
>>>> to
>>>>>>>>>> shorten the procedure and url length.
>>>>>>>>> 
>>>>>>>>> I’m in agreement with you. Let’s see what others think.
>>>>>>>>> 
>>>>>>>>> Thanks for this interesting discussion!
>>>>>>>>> -Vincent
>>>>>>>>> 
>>>>>>>>>> --
>>>>>>>>>> View this message in context: http://xwiki.475771.n2.nabble.
>>>>>>>> com/Page-Title-and-Name-confusion-tp7603546p7603551.html
>>>>>>>>>> Sent from the XWiki- Users mailing list archive at Nabble.com.
>>>> 
>>>> 
>> 
>> 

Reply via email to