Okay issue created https://issues.apache.org/jira/browse/ROL-1965 with
patch attached, hope You like it :)

Maciej


2013/7/30 Glen Mazza <glen.ma...@gmail.com>

> Hi Maciej, please open a JIRA issue at https://issues.apache.org/**
> jira/browse/ROL <https://issues.apache.org/jira/browse/ROL> and attach
> your patch to it partly for Apache licensing reasons.   Also, that way,
> even if we don't apply the patch due to lack of time or disagreement it
> doesn't get lost and can always be referred to later.  (BTW, all new and
> modified JIRA issues automatically send an email to this mailing list, so
> we're always notified of new patches.)
>
> No, unfortunately we didn't get your original patch, we rarely get
> pictures and attachments in emails it seems.
>
> Quote:
>
> http://localhost:8083/roller/**test/ <http://localhost:8083/roller/test/>- 
> search in all languages and return links without locale
> No problem there, sounds good.
>
>
> http://localhost:8083/roller/**test/de<http://localhost:8083/roller/test/de>- 
> search in German language (de) and return links with de locale (post from
> other languages will not be shown)
>
> This will work as a nice default, and I also like how you don't need to
> update the themes for this (time-consuming as our number of themes
> increase.)  However, if we get user demand for it, we someday may need to
> enhance the Velocity macro that creates the search box (I'm assuming some
> macro is used, I haven't looked at the code) to have it take a Boolean over
> whether to still search on all blog entries regardless of language on the
> locale pages. Such a change would not require a theme updating on *our* end
> but for a user who would just need to customize his own theme with a
> modified macro call.  In other words, I don't see a need to provide a blog
> reader the ability to choose one or all languages, but the blog *owner*
> might want to do that, depending on the nature and content of his blog
> entries.  But this does not need to be done now, because nobody's asked for
> it yet.
>
> Thanks,
> Glen
>
>
> On 07/30/2013 04:52 AM, Maciej Rumianowski wrote:
>
>> Okay, this is the second version of the patch. It is much more simpler,
>> only add locale to search fields and perform searches with current locale
>> (or without if locale is not set)
>>
>> Now when search is performed from:
>> http://localhost:8083/roller/**test/ <http://localhost:8083/roller/test/>- 
>> search in all languages and return links without locale
>> http://localhost:8083/roller/**test/de<http://localhost:8083/roller/test/de>-
>>  search in German language (de) and return links with de locale (post from
>> other languages will not be shown)
>>
>> WDYT?
>>
>> Maciej
>>
>> PS.: Do You get attachments? I attached patch to this message and first
>> one in the Thread. If not I am pasting it below:
>>
>> Index: app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/FieldConstants.java
>> ==============================**==============================**=======
>> --- 
>> app/src/main/java/org/apache/**roller/weblogger/business/**search/FieldConstants.java
>> (wersja 1508340)
>> +++ 
>> app/src/main/java/org/apache/**roller/weblogger/business/**search/FieldConstants.java
>> (kopia robocza)
>> @@ -47,4 +47,5 @@
>>                                                   // the transform rules
>> of
>>                                                   // the analyzer
>>      public static final String WEBSITE_HANDLE = "handle";
>> +    public static final String LOCALE = "locale";
>>  }
>> Index: app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/operations/**SearchOperation.java
>> ==============================**==============================**=======
>> --- app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/operations/**SearchOperation.java (wersja 1508340)
>> +++ app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/operations/**SearchOperation.java (kopia robocza)
>> @@ -54,7 +54,7 @@
>>
>>      private static String[] SEARCH_FIELDS = new String[] {
>>              FieldConstants.CONTENT, FieldConstants.TITLE,
>> -            FieldConstants.C_CONTENT, FieldConstants.CATEGORY };
>> +            FieldConstants.C_CONTENT, FieldConstants.CATEGORY,
>> FieldConstants.LOCALE };
>>
>>      // private static BooleanClause.Occur[] SEARCH_FLAGS = new
>>      // BooleanClause.Occur[] {
>> @@ -73,6 +73,7 @@
>>      private String term;
>>      private String websiteHandle;
>>      private String category;
>> +    private String locale;
>>      private String parseError;
>>
>>      private int nMax = 500; // Limit documents.
>> @@ -144,6 +145,16 @@
>>                  query = bQuery;
>>              }
>>
>> +            Term tLocale = IndexUtil.getTerm(**FieldConstants.LOCALE,
>> +                    locale);
>> +
>> +            if (tLocale != null) {
>> +                BooleanQuery bQuery = new BooleanQuery();
>> +                bQuery.add(query, BooleanClause.Occur.MUST);
>> +                bQuery.add(new TermQuery(tLocale),
>> BooleanClause.Occur.MUST);
>> +                query = bQuery;
>> +            }
>> +
>>              searchresults = searcher.search(query, null/* Filter */,
>> nMax,
>>                      SORTER);
>>
>> @@ -227,4 +238,14 @@
>>          this.category = category;
>>      }
>>
>> +    /**
>> +     * Sets the locale.
>> +     *
>> +     * @param locale
>> +     *            the new locale
>> +     */
>> +    public void setLocale(String locale) {
>> +        this.locale = locale;
>> +    }
>> +
>>  }
>> Index: app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/operations/**IndexOperation.java
>> ==============================**==============================**=======
>> --- app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/operations/**IndexOperation.java (wersja 1508340)
>> +++ app/src/main/java/org/apache/**roller/weblogger/business/**
>> search/operations/**IndexOperation.java (kopia robocza)
>> @@ -125,6 +125,10 @@
>>          doc.add(new Field(FieldConstants.TITLE, data.getTitle(),
>>                  Field.Store.YES, Field.Index.ANALYZED));
>>
>> +        // text
>> +        doc.add(new Field(FieldConstants.LOCALE, data.getLocale(),
>> +                Field.Store.YES, Field.Index.ANALYZED));
>> +
>>          // index the entry text, but don't store it - moved to end of
>> block
>>          // unstored
>>          doc.add(new Field(FieldConstants.CONTENT, data.getText(),
>> Index: app/src/main/java/org/apache/**roller/weblogger/ui/rendering/**
>> model/SearchResultsModel.java
>> ==============================**==============================**=======
>> --- 
>> app/src/main/java/org/apache/**roller/weblogger/ui/rendering/**model/SearchResultsModel.java
>> (wersja 1508340)
>> +++ 
>> app/src/main/java/org/apache/**roller/weblogger/ui/rendering/**model/SearchResultsModel.java
>> (kopia robocza)
>> @@ -121,6 +121,10 @@
>> search.setCategory(**searchRequest.**getWeblogCategoryName());
>>          }
>>
>> +        if (searchRequest.getLocale() != null) {
>> +            search.setLocale(**searchRequest.getLocale());
>> +        }
>> +
>>          // execute search
>>          indexMgr.**executeIndexOperationNow(**search);
>>
>>
>>
>> 2013/7/30 Maciej Rumianowski <maciej.rumianow...@gmail.com <mailto:
>> maciej.rumianowski@**gmail.com <maciej.rumianow...@gmail.com>>>
>>
>>
>>
>>
>>     2013/7/29 Glen Mazza <glen.ma...@gmail.com
>>     <mailto:glen.ma...@gmail.com>>
>>
>>
>>         Oh, um, never mind on one point -- I was complaining below
>>         about having URLs like
>>         
>> http://www.jroller.com/gmazza/**en/entry/myblogentry<http://www.jroller.com/gmazza/en/entry/myblogentry>and
>>         
>> http://www.jroller.com/gmazza/**entry/myblogentry<http://www.jroller.com/gmazza/entry/myblogentry>splitting
>>         Google Analytics results, I just realized *I* can turn off the
>>         multiple languages option myself, and then "/en/" version no
>>         longer is a valid URL, so that problem is solved for me (I
>>         thought it was JRoller that specified at an admin-level the
>>         multiple languages option, and so I was stuck with duplicate
>>         URLs as a result.)
>>
>>     Yes there are  settings for i18n and the first one is responsible
>>     for locale to be added to path.
>>
>>
>>         Internationalization Settings
>>
>>     I publish my weblog in multiple languages
>>     Show my weblog entries from all languages on my homepage
>>
>>
>>
>>         I guess we can keep adding the /lang/ portion then, the idea
>>         is that you can tell people to go to
>>         
>> http://www.jroller.com/gmazza/**en/entry<http://www.jroller.com/gmazza/en/entry>to
>>  see English articles
>>         and 
>> http://www.jroller.com/gmazza/**de/entry<http://www.jroller.com/gmazza/de/entry>to
>>  see German ones.
>>     And to see translated UI. I am considering making the patch
>>     simpler and strip out the part which enables choosing language.
>>     Searches will be always made based on current locale or lack of
>>     locale.
>>
>>          I personally would rather do separate blogs
>>         http://www.jroller.com/gmazza and
>>         
>> http://www.jroller.com/gmazza_**de<http://www.jroller.com/gmazza_de>to keep 
>> the URLs simpler.
>>          What do you expect to be doing for your own blog?
>>
>>     I am thinking about this one also but first I saw the options in
>>     Weblog settings and tried to make it works. The design for a
>>     site/blog is not yet finished, but whatever solution I choose the
>>     site will be up and running in two weeks. So you can see it online.
>>
>>
>>
>>             I think it's also a poor idea to blog in different
>>             languages within the same blog (instead of having two
>>             blogs in two different languages, as Roller fully supports
>>             individual users creating multiple blogs) because with a
>>             blog you're trying to create a warm friendly connection
>>             with your readers, but it's off-putting to your readers
>>             when you're blogging frequently in a language they can't
>>             understand.  WDYT?
>>
>>     That's why I want to separate languages on site and have
>>     translated UI.
>>
>>     Maciej
>>
>>
>>
>

Reply via email to