Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Mark Steele
    @marksteele
    <!DOCTYPE html>
    <html>
        <head lang="{{locale}}">
            <title>Mojito</title>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    
            <script type="text/javascript">
                APP_CONFIG = {{{appConfig}}};
                CSRF_TOKEN = '{{csrfToken}}';
            </script>
        </head>
    
        <body>
            <div id="app"></div>
            <script type="text/javascript" src="{{contextPath}}/js/app-f55a2fa8bdabd992f6a0.js"></script>
            <script type="text/javascript" src="{{contextPath}}/js/css-f55a2fa8bdabd992f6a0.js"></script>
        </body>
    
    </html>
    spring.flyway.enabled=true
    spring.flyway.clean-disabled=true 
    l10n.flyway.clean=false
    spring.datasource.url=jdbc:mysql://${MOJITO_DB_HOST}:${MOJITO_DB_PORT}/${MOJITO_DB_NAME}?characterEncoding=UTF-8&useUnicode=true&useSSL=false
    spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
    spring.datasource.username=${MOJITO_DB_USERNAME}
    spring.datasource.password=${MOJITO_DB_PASSWORD}
    spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
    server.forward-headers-strategy=native
    l10n.org.quartz.jobStore.useProperties=true
    l10n.org.quartz.scheduler.instanceId=AUTO
    l10n.org.quartz.jobStore.isClustered=true
    l10n.org.quartz.threadPool.threadCount=10
    l10n.org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
    l10n.org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
    l10n.org.quartz.jobStore.dataSource=myDS
    l10n.org.quartz.dataSource.myDS.provider=hikaricp
    l10n.org.quartz.dataSource.myDS.driver=com.mysql.cj.jdbc.Driver
    l10n.org.quartz.dataSource.myDS.URL=jdbc:mysql://${MOJITO_DB_HOST}:${MOJITO_DB_PORT}/${MOJITO_DB_NAME}?characterEncoding=UTF-8&useUnicode=true
    l10n.org.quartz.dataSource.myDS.user=${MOJITO_DB_USERNAME}
    l10n.org.quartz.dataSource.myDS.password=${MOJITO_DB_PASSWORD}
    l10n.org.quartz.dataSource.myDS.maxConnections=12
    l10n.org.quartz.dataSource.myDS.validationQuery=select 1
    spring.security.oauth2.client.registration.google.client-id="${MOJITO_GOOGLE_CLIENT_ID}"
    spring.security.oauth2.client.registration.google.client-secret="${MOJITO_GOOGLE_CLIENT_SECRET}"
    #l10n.security.authenticationType=DATABASE,OAUTH2,HEADER
    l10n.security.authenticationType=DATABASE,HEADER
    info.build.version=1.0
    spring.profiles.include=disablescheduling
    spring.mail.host=localhost
    spring.jpa.hibernate.use-new-id-generator-mappings=false
    spring.jpa.properties.org.hibernate.envers.audit_strategy=org.hibernate.envers.strategy.ValidityAuditStrategy
    spring.jpa.properties.org.hibernate.envers.track_entities_changed_in_revision=true
    spring.session.store-type=none
    spring.session.jdbc.table-name=SPRING_SESSION_V2
    #l10n.security.unauth-redirect-to=/login/oauth2/authorization/code/google
    that's my config
    Mark Steele
    @marksteele
    I'm trying to dockerize the app. Is there a known good working docker container somewhere based off latest tag I could use instead?
    1 reply
    my dockerfile:
    FROM amazoncorretto:8
    
    RUN mkdir -p /opt/mojito && \
      mkdir -p /usr/local/etc/mojito/webapp
    
    COPY webapp/application.properties /usr/local/etc/mojito/webapp/
    COPY mojito-webapp-0.111-SNAPSHOT-exec.jar /opt/mojito/
    WORKDIR /opt/mojito
    EXPOSE 8080
    
    #CMD ["sleep", "infinity"]
    CMD ["java", "-Dspring.config.location=/usr/local/etc/mojito/webapp/", "-jar", "mojito-webapp-0.111-SNAPSHOT-exec.jar"]
    Mark Steele
    @marksteele
    I've tried using the tagged release, it doesn't work. It's missing mysql driver, db migrations fail due to foreign key constraint failures with mysql
    1 reply
    Jean Aurambault
    @aurambaj
    I'd have to run some more test because ATM moment I work either with master on dev branches. I haven't tried the latest tagged in a while. I have some doc with docker compose here: https://github.com/box/mojito/tree/master/docker (last changes are 9 months old so might be out dated too). https://github.com/box/mojito/blob/master/docker/readme.md
    Mark Steele
    @marksteele
    went back to trying to get 0.110 to work, but now it's failing on not finding quartz tables
    2 replies
    ... tabarnak
    pardon my quebecois ;)
    Jean Aurambault
    @aurambaj
    Since you're technical, I recommend building of master, it has spring boot 2 which as a lot of great stuff for monitoring, etc. I need to look at this doc sync issue and/or do a new release
    Jean Aurambault
    @aurambaj
    where are you planning to deploy it to?
    Mark Steele
    @marksteele
    was planning to run it inside a k8s cluster
    finally got the v0.110 to work, so will probably stick with that for a little bit
    I'd definitely like to get it working on the newer code, just don't have time to dig through the code to find the missing bits/bobs. If you've got a working sample config I don't mind giving it another go
    Jean Aurambault
    @aurambaj
    the configuration on mojito.global: https://www.mojito.global//docs/guides/install/ are the ones that should work well with the master branch
    Mark Steele
    @marksteele
    I essentially used those settings (I pasted the config above), and the html templates don't appear to be interpolating their values
    on master
    Jean Aurambault
    @aurambaj
    I've updated the doc with proper settings for the release binaries on: https://www.mojito.global//docs/. Added extra entries for springboot2/master branch. @marksteele thanks for bearing with the project!
    Mark Steele
    @marksteele
    so I've muddled through with a build off master I think
    spring.flyway.clean-disabled=true 
    l10n.flyway.clean=false
    spring.datasource.url=jdbc:mysql://${MOJITO_DB_HOST}:${MOJITO_DB_PORT}/${MOJITO_DB_NAME}?characterEncoding=UTF-8&useUnicode=true&useSSL=false
    spring.datasource.username=${MOJITO_DB_USERNAME}
    spring.datasource.password=${MOJITO_DB_PASSWORD}
    spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
    l10n.org.quartz.jobStore.useProperties=true
    l10n.org.quartz.scheduler.instanceId=AUTO
    l10n.org.quartz.jobStore.isClustered=true
    l10n.org.quartz.threadPool.threadCount=10
    l10n.org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
    l10n.org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
    l10n.org.quartz.jobStore.dataSource=myDS
    l10n.org.quartz.dataSource.myDS.provider=hikaricp
    l10n.org.quartz.dataSource.myDS.driver=com.mysql.jdbc.Driver
    l10n.org.quartz.dataSource.myDS.URL=jdbc:mysql://${MOJITO_DB_HOST}:${MOJITO_DB_PORT}/${MOJITO_DB_NAME}?characterEncoding=UTF-8&useUnicode=true&useSSL=false
    l10n.org.quartz.dataSource.myDS.user=${MOJITO_DB_USERNAME}
    l10n.org.quartz.dataSource.myDS.password=${MOJITO_DB_PASSWORD}
    l10n.org.quartz.dataSource.myDS.maxConnections=12
    l10n.org.quartz.dataSource.myDS.validationQuery=select 1
    ## OAUTH2
    l10n.security.authenticationType=DATABASE,OAUTH2,HEADER
    l10n.security.unauth-redirect-to=/login/oauth2/authorization/google
    spring.security.oauth2.client.registration.google.client-id=${MOJITO_GOOGLE_CLIENT_ID}
    spring.security.oauth2.client.registration.google.client-secret=${MOJITO_GOOGLE_CLIENT_SECRET}
    spring.security.oauth2.client.registration.google.authorization-grant-type=authorization_code
    spring.security.oauth2.client.registration.google.scope=profile
    info.build.version=0.111-SNAPSHOT
    spring.mail.host=localhost
    spring.session.store-type=none
    spring.mustache.suffix:.html
    server.tomcat.relaxed-query-chars=[,]
    spring.jpa.open-in-view=false
    management.health.ldap.enabled=false
    management.endpoint.shutdown.enabled=true
    management.metrics.export.statsd.enabled=false
    org.springframework.http.converter.json.indent_output=false
    spring.jpa.hibernate.use-new-id-generator-mappings=false
    is the final config I ended up with
    works with oauth2 and google
    only thing I have yet to figure out is why my cli can talk to the API even though I didn't do any setup for authenticating it
    9 replies
    Mark Steele
    @marksteele
    Made a small edit to allow passing in password from CLI
    @Component
    public class SystemPromptCredentialProvider implements CredentialProvider {
    
        @Value("${user.name}")
        String systemUserName;
    
        @Value("${user.password}")
        String password;
    
        @Override
        public String getUsername() {
            return systemUserName;
        }
    
        @Override
        public String getPassword() {
            if (password == null) {
                System.out.println("Enter password for mojito user " + systemUserName + ": ");
                char[] readPassword = System.console().readPassword();
                password = new String(readPassword);
            }
    
            return password;
        }
    }
    essentially just adding the annotation, allows to do -Duser.name=foo -Duser.password=bar
    when used in conjunction with -Dl10n.resttemplate.authentication.credentialProvider=CONSOLE
    Jean Aurambault
    @aurambaj
    for that use case the normal provider can be used directly. The SystemPrompt was really if you want to read from the console, else it is not really needed. https://www.mojito.global//docs/refs/configurations/#cli-configuration
    so -Dl10n.resttemplate.authentication.username=... -Dl10n.resttemplate.authentication.password=... would work already. No need to change the provider, default one would be fine
    Mukesh Mandora
    @mukyasa
    Hello team, Can some help me with below query

    We were trying hands-on with product and got stuck when we were using the same repo for our Android and iOS projects it is giving error based on the repo was created and imported from the platform

    Eg: if repo is created with iOS strings file and if we pull in Android project then it gives the error

    Asset with path [res/values/strings.xml] was not found in repo [Repo Name]

    Jee Yi
    @jeeyi
    @mukyasa To better understand your setup, what are the options being used to push and pull? When I was working on source code repository with both iOS and Android projects, I set up two different mojito repos to manage them separately.
    Ozan Çağrı Gürleyen
    @Cagrussian_twitter
    Anyone here can give me an already hosted open to public Mojito link so I can check if it's feasible to use with volunteer translators?
    Jean Aurambault
    @aurambaj
    @Cagrussian_twitter we don't have such an instance running at the moment
    Karandeep singh
    @kdcyberdude
    Hello Team, Is it possible to pull only translated(accepted) localised text units or Can we pull the translations without specifying the source locale? 

    --status ACCEPTED parameter for mojito pull still get's all the translations defined in source locale file.
    Jean Aurambault
    @aurambaj
    @kdcyberdude Yes, you can use --inheritance-mode REMOVE_UNTRANSLATED to remove strings that are not translated.
    16 replies
    alperen14
    @alperen14
    Hi everyone, we have a project and used Mojito version 0.7.3 four years ago . I want to check if it makes sense to change the used version in project. I could not find the changes in each versions. Do you know how i can find it?
    1 reply
    Cecilia Yalangozian
    @ceciyalan_twitter
    Hi guys! Quick question - does Mojito have machine translation capabilities? If you, what MT providers does it use? Thank you!
    2 replies
    Emberist
    @emberist
    Hello guys, can someone explain how the branches works? I can't understand when the branches get merged
    1 reply
    Band-Aid
    @Band-Aid
    Hello everyone - I am tasked with translating our API docs to other languages. I noticed your openapi docs are using Mojito to translate to JP. Mojito does not officially support YAML but could you shed some light on how you are translating openapi (YAML) docs to other languages?
    3 replies
    Darkalpy
    @Darkalpy

    Hi, i need to access the current user in workbench component but when i try to get it from Users.js , i am getting the error: "dispatcher not provided ". I have also tried to get it from UserClient but the error is still there. Does anyone have any idea to solve this problem?

    Many greetings

    Karandeep singh
    @kdcyberdude
    How can I restrict the users from changing translations on the Mojito web app? I tried logging in with different Available user roles: PM, TRANSLATOR, ADMIN, USER. All can add/edit translations!!
    4 replies
    Karandeep singh
    @kdcyberdude
    Can we integrate the SMTP server? If yes, Can you explain when will the mail get triggered?
    Similarly, when will the slack notification get triggered?
    3 replies
    Karandeep singh
    @kdcyberdude

    Hello guys, I am not able to run the mojito webserver for version 0.110 with the minimum default configuration. My configuration is,

    flyway.enabled=true
    l10n.flyway.clean=false
    spring.jpa.database=MYSQL
    spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
    spring.jpa.hibernate.ddl-auto=none
    spring.datasource.url=jdbc:mysql://localhost:3306/${DB_NAME}?characterEncoding=UTF-8&useUnicode=true
    spring.datasource.username=${DB_USERNAME}
    spring.datasource.password=${DB_PASSWORD}
    spring.datasource.driverClassName=com.mysql.jdbc.Driver
    spring.datasource.testOnBorrow=true
    spring.datasource.validationQuery=SELECT 1
    
    l10n.org.quartz.jobStore.useProperties=true
    l10n.org.quartz.scheduler.instanceId=AUTO
    l10n.org.quartz.jobStore.isClustered=true
    l10n.org.quartz.threadPool.threadCount=10
    l10n.org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
    l10n.org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
    l10n.org.quartz.jobStore.dataSource=myDS
    l10n.org.quartz.dataSource.myDS.driver=com.mysql.jdbc.Driver
    l10n.org.quartz.dataSource.myDS.URL=jdbc:mysql://localhost:3306/${DB_NAME}?characterEncoding=UTF-8&useUnicode=true
    l10n.org.quartz.dataSource.myDS.user=${DB_USERNAME}
    l10n.org.quartz.dataSource.myDS.password=${DB_PASSWORD}
    l10n.security.authenticationType=DATABASE

    The error that I am getting is,

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'textUnitWS': Injection of autowired dependencies failed; 
    nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.box.l10n.mojito.service.tm.TMService 
    com.box.l10n.mojito.rest.textunit.TextUnitWS.tmService; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TMService': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.box.l10n.mojito.quartz.QuartzPollableTaskScheduler 
    com.box.l10n.mojito.service.tm.TMService.quartzPollableTaskScheduler; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'quartzPollableTaskScheduler': Injection of autowired dependencies failed; 
    nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: org.quartz.Scheduler com.box.l10n.mojito.quartz.QuartzPollableTaskScheduler.scheduler; nested exception is org.springframework.beans.factory.BeanCreationException:
     Error creating bean with name 'scheduler' defined in class path resource 
    [com/box/l10n/mojito/quartz/QuartzSchedulerConfig.class]: Invocation of init method failed; nested exception is org.quartz.SchedulerException: 
    Could not initialize DataSource: myDS [See nested exception: java.lang.NoSuchMethodException: No setter for property 'provider']

    And if I use spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
    I am getting this error - Cannot load driver class: com.mysql.cj.jdbc.Driver

    Not sure what is going wrong. PS: I have been using the .jar file compiled from the master branch for a long time and our production server is using a 0.110 stable release and it's working fine. Trying the same configuration from the server to my local machine is failing.

    Band-Aid
    @Band-Aid
    Hi - Quick question. Is there any way to batch together translation request? I'm trying integrate translations with my sprints. I'd like to get translation requests in to batches so my external vendor knows which one to work on for each sprint.
    2 replies
    Karandeep singh
    @kdcyberdude
    image.png
    1 reply
    Karandeep singh
    @kdcyberdude
    How to delete screenshot(s)?
    1 reply
    Karandeep singh
    @kdcyberdude
    Hi Team, I am not able to connect to AWS S3 Bucket. Getting... AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID:. I have added all the parameters required in the application.properties file.
    alperen14
    @alperen14
    Hi everyone, I am trying to add a new feature but when I try to upload properties with maven, I am getting the error 'Reference error: Dispatcher token not provided'. I am getting this error from SearchResultsStore.js class in onSearchParamsChanged() method in line this.waitFor(SearchParamsStore). Does anyone have any idea, how to overcome this issue?