Opened 11 years ago

Closed 10 years ago

Last modified 6 years ago

#417 closed new feature (fixed)

Multiple Languages for the BW Forum

Reported by: Fabzgy Owned by: jeanyves
Priority: major Milestone: Legacy Resolved
Component: BW Forum Keywords: Languages
Cc:

Description

In order to include non-english speaker in the community we should add the possiblity to write your post in a specific language. The language should be selected from a drop down list, default language is the language the users browses BeWelcome with. Additionally the languages he speaks (according to his profile) and a "+" if the user wants to write in another language (pop-up with all languages).

On the same time you should be allowed to browse the Forum according to your languages. Default Forum view = all languages, select the languages the user speaks according to his profile on top, and then a alphabetic list of all languages under the top language list

The user should be allowed to choose in his preferences which languages he wants to have displayed in the Forum (multiple choice possible)

Change History (10)

comment:2 Changed 11 years ago by philipp

specific ticket on db model: #466

comment:3 Changed 11 years ago by philipp

  • Milestone changed from unassigned to 0.6-short

before this can go online we need at least an improved user interface - it must be possible to use the forum as if there were no translation system. this means:

  • have appropriate default preselected for writing a post (english)
  • use different links/actions for edit and translate
  • display posts in your bw language or in their original language by default

comment:4 Changed 11 years ago by philipp

  • Owner set to jeanyves

comment:5 Changed 10 years ago by philipp

  • Milestone changed from 0.6-short - full copy release to unassigned

comment:6 Changed 10 years ago by micha

I had a look at the forum-translation that JY implemented a while ago and that he is still improving. Many people that I asked about the forums translation told me they found it rather unintuitive. It's not always clear if there's another translation of this post somewhere, if this is the original post, you're looking at and if this is right language you're writing in.

So, I thought there's at least a way to show the users in a very transparent way what IS the original post and what IS a translation: Show them both. I know, that might sound complicated but I think it could help to keep an overview. I propose to always show the original posts in order and if there is one, add the translation for a post next to it. E.g.:

Post 1 (in english)

Post 2 (in english) | Post 2 translated in German

Post 3 (in english) | Post 3 translated

This would also allow us, to "start" translations and later finish them. Or only translate the most important parts because people can still look at the original at the same time. They will recognize right away if there's more information that the translation doesn'T contain.

Do you guys get what I mean?

comment:7 Changed 10 years ago by philipp

only bugs this time:

  • tag handling broken: when I create a new post with a new tag it is:
    • displayed with a different tag afterwards
    • the tag is lost when I edit the post
  • db error when I try to edit a post and submit it again:
    MySQL error!
    
    PException
    code: 	1000
    message: 	MySQL error!
    file: 	/var/www/test.bewelcome.org/lib/db/db_statement_mysql.lib.php
    line: 	291
    
    info[0]: Statement: INSERT INTO `forums_tags` (`tag`) VALUES ('test')
    info[1]: 1062
    info[2]: Duplicate entry 'test' for key 2
    PDBStatement_mysql::query( string(51) = "INSERT INTO `forums_"
    
    INSERT INTO `forums_tags` (`tag`) VALUES ('test')  
    
    )
    /var/www/test.bewelcome.org/lib/db/db_mysql.lib.php (line 299)
    PDB_mysql::query( string(51) = "INSERT INTO `forums_"
    
    INSERT INTO `forums_tags` (`tag`) VALUES ('test')  
    
    )
    /var/www/test.bewelcome.org/build/forums/forums.model.php (line 1329)
    Forums::updateTags( array[7]
    
    Array
    (
        [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
        [IdLanguage] => 6
        [topic_title] => ein neuer post um die übersetzungen zu testen
        [topic_text] => auf deutsch übersetzt
        [tags] => some other tag, test
        [d_continent] => 
        [NotifyMe] => on
    )
    
    , string 50
    
    50
    
    )
    /var/www/test.bewelcome.org/build/forums/forums.model.php (line 877)
    Forums::editTopic( array[7]
    
    Array
    (
        [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
        [IdLanguage] => 6
        [topic_title] => ein neuer post um die übersetzungen zu testen
        [topic_text] => auf deutsch übersetzt
        [tags] => some other tag, test
        [d_continent] => 
        [NotifyMe] => on
    )
    
    , string 50
    
    50
    
    )
    /var/www/test.bewelcome.org/build/forums/forums.model.php (line 737)
    Forums::editProcess()
    /var/www/test.bewelcome.org/build/forums/forums.ctrl.php (line 282)
    ForumsController::editProcess()
    call_user_func( array[2]
    
    Array
    (
        [0] => ForumsController Object
            (
                [_model:private] => Forums Object
                    (
                        [board:private] => 
                        [topboard:private] => 
                        [topic:private] => 
                        [geonameid:private] => 0
                        [countrycode:private] => 0
                        [admincode:private] => 
                        [threadid:private] => 0
                        [tags:private] => Array
                            (
                            )
    
                        [continent:private] => 
                        [page:private] => 1
                        [messageId:private] => 144
                        [dao:protected] => PDB_mysql Object
                            (
                                [_cr:private] => Resource id #105
                                [_dbname:private] => hcvoltest
                                [_results:private] => 
                            )
    
                        [prefix:protected] => 
                        [namespace:protected] => 
                        [className:protected] => 
                        [tableName:protected] => 
                        [_cols:private] => Array
                            (
                            )
    
                    )
    
                [_view:private] => ForumsView Object
                    (
                        [_model:private] => Forums Object
                            (
                                [board:private] => 
                                [topboard:private] => 
                                [topic:private] => 
                                [geonameid:private] => 0
                                [countrycode:private] => 0
                                [admincode:private] => 
                                [threadid:private] => 0
                                [tags:private] => Array
                                    (
                                    )
    
                                [continent:private] => 
                                [page:private] => 1
                                [messageId:private] => 144
                                [dao:protected] => PDB_mysql Object
                                    (
                                        [_cr:private] => Resource id #105
                                        [_dbname:private] => hcvoltest
                                        [_results:private] => 
                                    )
    
                                [prefix:protected] => 
                                [namespace:protected] => 
                                [className:protected] => 
                                [tableName:protected] => 
                                [_cols:private] => Array
                                    (
                                    )
    
                            )
    
                        [_model:private] => 
                    )
    
                [action:private] => 2
                [isTopLevel:private] => 
                [dao:protected] => PDB_mysql Object
                    (
                        [_cr:private] => Resource id #105
                        [_dbname:private] => hcvoltest
                        [_results:private] => 
                    )
    
            )
    
        [1] => ForumsController::editProcess
    )
    
    )
    /var/www/test.bewelcome.org/lib/handler/posthandler.lib.php (line 101)
    PPostHandler::save()
    /var/www/test.bewelcome.org/lib/handler/posthandler.lib.php (line 51)
    PPostHandler::get()
    /var/www/test.bewelcome.org/tools/routing/roxfrontrouter.class.php (line 170)
    RoxFrontRouter::traditionalPostHandling()
    /var/www/test.bewelcome.org/tools/routing/roxfrontrouter.class.php (line 136)
    RoxFrontRouter::route_normal( stdClass object
    
    stdClass Object
    (
        [request_uri] => /forums/edit/m144
        [request] => Array
            (
                [0] => forums
                [1] => edit
                [2] => m144
            )
    
        [req] => forums/edit/m144
        [get] => Array
            (
            )
    
        [post] => Array
            (
                [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
                [IdLanguage] => 6
                [topic_title] => ein neuer post um die übersetzungen zu testen
                [topic_text] => auf deutsch übersetzt
                [tags] => some other tag, test
                [d_continent] => 
                [NotifyMe] => on
            )
    
        [get_or_post] => Array
            (
                [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
                [IdLanguage] => 6
                [topic_title] => ein neuer post um die übersetzungen zu testen
                [topic_text] => auf deutsch übersetzt
                [tags] => some other tag, test
                [d_continent] => 
                [NotifyMe] => on
            )
    
        [post_or_get] => Array
            (
                [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
                [IdLanguage] => 6
                [topic_title] => ein neuer post um die übersetzungen zu testen
                [topic_text] => auf deutsch übersetzt
                [tags] => some other tag, test
                [d_continent] => 
                [NotifyMe] => on
            )
    
    )
    
    )
    /var/www/test.bewelcome.org/tools/routing/roxfrontrouter.class.php (line 24)
    RoxFrontRouter::route( stdClass object
    
    stdClass Object
    (
        [request_uri] => /forums/edit/m144
        [request] => Array
            (
                [0] => forums
                [1] => edit
                [2] => m144
            )
    
        [req] => forums/edit/m144
        [get] => Array
            (
            )
    
        [post] => Array
            (
                [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
                [IdLanguage] => 6
                [topic_title] => ein neuer post um die übersetzungen zu testen
                [topic_text] => auf deutsch übersetzt
                [tags] => some other tag, test
                [d_continent] => 
                [NotifyMe] => on
            )
    
        [get_or_post] => Array
            (
                [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
                [IdLanguage] => 6
                [topic_title] => ein neuer post um die übersetzungen zu testen
                [topic_text] => auf deutsch übersetzt
                [tags] => some other tag, test
                [d_continent] => 
                [NotifyMe] => on
            )
    
        [post_or_get] => Array
            (
                [8kkDTy4z5W1z7lx8TW8-9=FHqNn] => 1
                [IdLanguage] => 6
                [topic_title] => ein neuer post um die übersetzungen zu testen
                [topic_text] => auf deutsch übersetzt
                [tags] => some other tag, test
                [d_continent] => 
                [NotifyMe] => on
            )
    
    )
    
    )
    /var/www/test.bewelcome.org/roxlauncher/roxlauncher.php (line 61)
    RoxLauncher::chooseAndRunApplication( EnvironmentExplorer object
    
    EnvironmentExplorer Object
    (
        [classes] => Array
            (
            )
    
    )
    
    )
    /var/www/test.bewelcome.org/roxlauncher/roxlauncher.php (line 22)
    RoxLauncher::launch()
    /var/www/test.bewelcome.org/htdocs/index.php (line 63)
    main()
    /var/www/test.bewelcome.org/htdocs/index.php (line 78)
    

comment:8 Changed 10 years ago by philipp

checked latest version on alpha and noticed that the language of the whole site is changed when I choose a translation of a post - that is the same annoying bug we have in the profile and needs to be fixed before we go to production. Only the language of the displayed forum posts should be changed.

comment:9 Changed 10 years ago by feuerdaemon

  • Resolution set to fixed
  • Status changed from new to closed

After talking to JY. I'm closing this ticket.

comment:10 Changed 6 years ago by TimLoal

  • Milestone changed from unassigned to Legacy Resolved
Note: See TracTickets for help on using tickets.