This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

Revert 'Revert "fix(po file): Fix po-revision-date header (#1191)"' f…

…or master

This reverts commit 4fc8fb5 to bring
back changes which were previously on master.
  • Loading branch information...
seanf committed Jun 15, 2016
1 parent 084eee6 commit 6a40e9bad498118cc51e476c566ff75fca2f6c7c
Showing 470 changed files with 20,407 additions and 7,918 deletions.
View
@@ -70,3 +70,6 @@ bin/
# other things that really ought to go under target/
ehcache.disk.store.dir/
frontend/src/main/web/jsconfig.json
frontend/src/main/web/.vscode/launch.json
frontend/src/main/web/.vscode/tasks.json
View
@@ -0,0 +1,58 @@
body {
font-family: "Source Sans Pro", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
color: #444c54;
}
.wy-side-nav-search {
background-color: #03A6D7;
}
.wy-side-nav-search>a {
font-size: 125%
}
.wy-menu-vertical a {
font-size: 100%;
}
.wy-menu-vertical span {
font-size: 100%;
}
h1,h2,h3 {
color: #03A6D7;
}
h1, h2, h3, h4, h5, h6, legend {
font-family: "Source Sans Pro", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, sans-serif;
}
.btn-neutral {
border: 1px solid rgba(0, 0, 0, 0.15);
-moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
background-color: #029dcc !important;
color: #f2f2f2 !important;
}
.btn-neutral:visited {
color: #f2f2f2 !important;
}
.btn-neutral:hover {
-moz-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.2);
-webkit-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.2);
box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.2);
border: 1px solid rgba(0, 0, 0, 0.2);
background-color: #03A6D7 !important;
color: #fff !important;
}
code {
padding: 4px;
}
.hljs {
padding: 10px
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
View
Binary file not shown.
View
@@ -1,5 +1,34 @@
## 3.9.0
## 4.0
##### Bug Fixes
* [ZNTA-846](https://zanata.atlassian.net/browse/ZNTA-846) - Group "request add project version" needs field limit
* [ZNTA-872](https://zanata.atlassian.net/browse/ZNTA-872) - Redirect to home from cancel button in create user page
##### Infrastructure Changes
* Zanata's cache configuration (Infinispan) is now controlled by `zanata-infinispan.xml`, not `standalone.xml`. Please see the [Infinispan](user-guide/system-admin/configuration/infinispan) section for more information.
## 3.9
##### Infrastructure Changes
* System admin can set system property `zanata.enforce.matchingusernames` to enforce matching username to be used for new user registration.
* Zanata has eliminated all JNDI-based configuration and replaced it with system properties. Please see the following sections for how certain values are now configured:
* (/user-guide/system-admin/configuration/installation)
* (/user-guide/system-admin/configuration/authentication)
* (/user-guide/system-admin/configuration/document-storage-directory)
##### New feature
* [ZNTA-746](https://zanata.atlassian.net/browse/ZNTA-746) - Add shortcut key for approve and reject translation
* [ZNTA-938](https://zanata.atlassian.net/browse/ZNTA-938) - Webhook event for translation update by user.
* [ZNTA-746](https://zanata.atlassian.net/browse/ZNTA-746) - Add shorcut key for approve and reject translation
* [ZNTA-1059](https://zanata.atlassian.net/browse/ZNTA-1059) - Language coordinator can contact team members
* [ZNTA-858](https://zanata.atlassian.net/browse/ZNTA-858) - New side menu bar replace top and bottom panel
* [ZNTA-855](https://zanata.atlassian.net/browse/ZNTA-855) - Add system property to enforce username for registration
-----------------------
## 3.9.0
<h5>Infrastructure Changes</h5>
* Recommended platform: JBoss EAP 6 (6.4.6.GA or later).
* Alternative platform: WildFly version 10.x.
* [ZNTA-530](https://zanata.atlassian.net/browse/ZNTA-530) - Replace Seam 2 with CDI
@@ -66,7 +95,7 @@
* [ZNTA-870](https://zanata.atlassian.net/browse/ZNTA-870) - Reset Password feature not inserting key into database
* [ZNTA-850](https://zanata.atlassian.net/browse/ZNTA-850) - org.zanata.async.AsyncTaskManager: Exception when executing an asynchronous task.
* [ZNTA-804](https://zanata.atlassian.net/browse/ZNTA-804) - Coordinators' email addresses should be BCC in Contact Coordinator
* [ZNTA-693](https://zanata.atlassian.net/browse/ZNTA-693) - ClientAbortException: java.net.SocketException: Connection reset
* [ZNTA-693](https://zanata.atlassian.net/browse/ZNTA-693) - ClientAbortException: java.net.SocketException: Connection reset
* [ZNTA-668](https://zanata.atlassian.net/browse/ZNTA-668) - ServerConfiguration tests unstable
* [ZNTA-537](https://zanata.atlassian.net/browse/ZNTA-537) - Expired sessions have poor usability
* [ZNTA-470](https://zanata.atlassian.net/browse/ZNTA-470) - RFE: Prevent user sending large text in 'contact admin' emails
@@ -1,5 +1,10 @@
1. Login to Zanata.
1. At the bottom of the page, click on `Contact admin`.
1. On the left side menu, click on `More`
<figure>
![More](/images/menu-more.png)
</figure>
<br/>
1. Click on `Contact admin` in the page
<figure>
![Contact admin link](/images/admin-contact-link.png)
</figure>
@@ -0,0 +1,15 @@
User can explore projects and groups available in Zanata.
1. Click on `Explore` on the side menu
<figure>
![Explore menu](/images/explore-menu.png)
<br/>
1. By default, explore would display list of projects and groups in Zanata.
<figure>
![Explore default](/images/explore-default-page.png)
<br/>
1. To search for project, group, user or language team, enter text in the text field.
<figure>
![Explore search](/images/explore-search-page.png)
@@ -1,12 +1,15 @@
Currently, only admin can create a group:
1. Login as user with admin role.
1. Click on `Groups` section on the top menu.
1. Click on 'New Group' button on right panel.
1. Click on `Dashboard` on the left side menu.
<figure>
![Dashboard](/images/menu-dashboard.png)
</figure>
1. Click on `Groups` section on the secondary menu.
1. Click on '+' button on right panel.
<figure>
![New group menu](/images/create-group.png)
</figure>
The following screenshot shows the group creation page.
<figure>
![Group create form](/images/create-group-completed.png)
@@ -8,7 +8,7 @@ Anyone with an account can upload source strings to Zanata. The first step is to
## Project creation through the website
To start creating a project on the Zanata website, click the `New Project` button on the `Projects` page.
To start creating a project on the Zanata website, click the `+` button on the `Project` tab in your dashboard.
<figure>
![Project creation button on Projects page](/images/create-project.png)
<figcaption>Project creation button on `Projects` page.</figcaption>
@@ -3,17 +3,15 @@
# Introduction
## Configure Zanata security
Open `$JBOSS_HOME/standalone/configuration/standalone.xml` and look for the `naming` subsystem. Add the following sections to the `bindings` section:
Open `$JBOSS_HOME/standalone/configuration/standalone.xml` and look for the `system-properties` section. Add the following properties like this:
```xml
<subsystem xmlns="urn:jboss:domain:naming:1.3">
...
<bindings>
<simple name="java:global/zanata/security/auth-policy-names/<authtype>" value="<policy-name>"/>
<simple name="java:global/zanata/security/admin-users" value="<list of usernames>"/>
</bindings>
...
</subsystem>
<system-properties>
...
<property name="zanata.security.authpolicy.<authtype>" value="<policy-name>"/>
<property name="zanata.security.adminusers" value="myusername"/>
...
</system-properties>
```
... where `<authtype>` is the authentication type enabled for the Zanata instance.
@@ -23,9 +21,9 @@ Accepted values are: internal, jaas, openid, kerberos
In most cases, only a single authentication mechanism should be active at any given time, and Zanata will refuse to start if these settings are incorrect. However, the 'internal' and 'openid' mechanisms can be enabled simultaneously.
The `java:global/zanata/security/admin-users` property above must contain a comma-separated list of user names. Zanata will check that these users have administrator privileges, when they are created. This feature is recommended for the first time Zanata is started, and to avoid being locked out of the system at any time. However it is not meant to be used to manage administrator users system wide.
The `zanata.security.adminusers` property above must contain a comma-separated list of user names. Zanata will check that these users have administrator privileges, when they are created. This feature is recommended for the first time Zanata is started, and to avoid being locked out of the system at any time. However it is not meant to be used to manage administrator users system wide.
Use the 'register' page to add the admin users, with user names exactly matching the names in the zanata.properties file. The accounts will have to be activated using the activation links in the activation emails sent during the registration process before login is possible. If there is an issue with delivery of activation emails, accounts can be activated manually using:
Use the 'register' page to add the admin users, with user names exactly matching the names listed above. The accounts will have to be activated using the activation links in the activation emails sent during the registration process before login is possible. If there is an issue with delivery of activation emails, accounts can be activated manually by running the following scripts directly on the Zanata database:
```sql
UPDATE HAccount SET enabled = true WHERE username = 'myusername';
@@ -63,12 +61,14 @@ After this, you will need to configure one (or more) of the following modules fo
## Internal Authentication
Make sure `standalone.xml` has the following jndi property
Make sure `standalone.xml` has the following system property defined in the xml:
```xml
<simple name="java:global/zanata/security/auth-policy-names/internal" value="zanata.internal"/>
<property name="zanata.security.authpolicy.internal" value="zanata.internal"/>
```
Alternatively, you can pass this and other system properties to JBoss when starting it (see JBoss documentation for details on how to do this).
(Note the value of the property matches the security-domain name below).
standalone.xml
@@ -88,10 +88,10 @@ standalone.xml
## Pure JAAS
Make sure `standalone.xml` has the following jndi property
Make sure `standalone.xml` has the following system property
```xml
<simple name="java:global/zanata/security/auth-policy-names/jaas" value="zanata.jaas"/>
<property name="zanata.security.authpolicy.jaas" value="zanata.jaas"/>
```
(Note the value of the property matches the security-domain name below).
@@ -120,10 +120,10 @@ standalone.xml:
Kerberos authentication allows for both ticket based and form based authentication. Zanata will first check for a valid Kerberos ticket (if the browser supports it). If it is not possible to obtain a valid ticket, then Zanata will show a form to enter a user name and password to be authenticated using Kerberos.
**Note:** It is recommended to use SSL when dealing with form based Kerberos authentication.
Make sure `standalone.xml` has the following jndi property
Make sure `standalone.xml` has the following system property
```xml
<simple name="java:global/zanata/security/auth-policy-names/kerberos" value="zanata.kerberos"/>
<property name="zanata.security.authpolicy.kerberos" value="zanata.kerberos"/>
```
(Note the value of the property matches the security-domain name below).
@@ -187,10 +187,10 @@ Important note: If you are running your server on Java 1.7, it will not be able
Java 1.8 on *some* Fedora-based systems has a similar problem contacting some OpenID providers (related to https://bugzilla.redhat.com/show_bug.cgi?id=1167153). See the section "Disabling the SunEC provider".
Make sure `standalone.xml` has the following jndi property:
Make sure `standalone.xml` has the following system property:
```xml
<simple name="java:global/zanata/security/auth-policy-names/openid" value="zanata.openid"/>
<property name="zanata.security.authpolicy.openid" value="zanata.openid"/>
```
(Note the value of the property matches the security-domain name below).
@@ -226,6 +226,19 @@ It's possible to configure Zanata to use a single pre-defined Open Id authentica
...
```
### Enforce username for new user
System admin can enforce username to match with username returned from openId server for new user registration.
Open `$JBOSS_HOME/standalone/configuration/standalone.xml` and look for the `system-properties` section. Add the following property like this:
```xml
<system-properties>
...
<property name="zanata.enforce.matchingusernames" value="true"/>
...
</system-properties>
```
### Attribute Exchange
By default Zanata will try to fetch the user's full name, email and username from the Open Id provider using [Attribute Exchange 1.0](https://openid.net/specs/openid-attribute-exchange-1_0.html) and [Simple Registration 1.1](https://openid.net/specs/openid-simple-registration-extension-1_0.html). If successful, Zanata will make suggestions when a new user signs up.
@@ -1,31 +1,27 @@
## Overview
Zanata will store files for some uploaded documents on the file system in a configured directory. This directory must be configured by binding to a JNDI name. Zanata will create the directory if it does not yet exist.
Zanata will store files for some uploaded documents on the file system in a configured directory. This directory must be configured by using a system property. Zanata will create the directory if it does not yet exist.
Since files were previously stored as BLOBs in the database, there is a migration operation to move the files from the database to the file system. Migration is performed when liquibase is run, which will happen automatically at server startup, or can be initiated from the command line. If liquibase is run from the command line, the directory must be passed as a parameter to liquibase, in addition to the JNDI name binding.
Since files were previously stored as BLOBs in the database, there is a migration operation to move the files from the database to the file system. Migration is performed when liquibase is run, which will happen automatically at server startup, or can be initiated from the command line. If liquibase is run from the command line, the directory must be passed as a parameter to liquibase, in addition to the system property.
## Configuring the Directory (JNDI)
The path for document storage should be bound to JNDI name ```java:global/zanata/files/document-storage-directory```
The path for document storage should be set using a system property when starting JBoss.
### Detailed Procedure
Open `$JBOSS_HOME/standalone/configuration/standalone.xml` and look for the `naming` subsystem. Add the following section to the `bindings` section:
Open `$JBOSS_HOME/standalone/configuration/standalone.xml` and look for the `system-properties` section. Add the following property declaration:
```xml
<subsystem xmlns="urn:jboss:domain:naming:1.3">
...
<bindings>
<simple name="java:global/zanata/files/document-storage-directory" value="/example/path"/>
</bindings>
...
</subsystem>
<property name="zanata.file.directory" value="/example/path"/>
```
Alternatively, you can pass this and other system properties to JBoss when starting it (see JBoss documentation for details on how to do this).
## Running Liquibase from command line
This section will not explain how to run liquibase from the command line, just how to add the required parameter. The parameter is ```document.storage.directory``` and should be added to the liquibase command in the form ```-Ddocument.storage.directory=/example/path```. The value passed to this parameter should exactly match the value bound to the above JNDI name.
This section will not explain how to run liquibase from the command line, just how to add the required parameter. The parameter is ```file.directory``` and should be added to the liquibase command in the form ```-Dzanata.file.directory=/example/path```. The value passed to this parameter should exactly match the value bound to the system property above.
## Moving files
The recommended process to change the document storage directory after migration is:
- shut down Zanata server
- move the entire contents of the previously configured directory to the new directory
- change the JNDI binding to point to the new directory
- re-start Zanata server
The file copying can be performed after changing the JNDI binding while the server is running, but this could cause problems if uploads are performed before or during the copying process.
The file copying can be performed after changing the JNDI binding while the server is running, but this could cause problems if uploads are performed before or during the copying process.
@@ -1,32 +1,9 @@
# Infinispan for caching
Zanata uses Infinispan to manage some of its internal data caches. Configuration for these caches happens in JBoss' `standalone/configuration/standalone.xml`.
Zanata uses Infinispan to manage some of its internal data caches, eg for statistics calculations.
The Infinispan configuration will be located inside the following module in `standalone.xml`:
Zanata has built-in default configuration for Infinispan caching (in `zanata-infinispan.xml`), but if you wish to change the cache size, or whether statistics *about* the caches should be collected, you may wish to modify this file.
```xml
<subsystem xmlns="urn:jboss:domain:infinispan:1.4">
...
</subsystem>
```
A reference copy can be viewed here (although you may wish to view a different branch or tag): https://github.com/zanata/zanata-server/blob/release/zanata-war/src/main/resources/zanata-infinispan.xml
Keep in mind that the module version may vary depending on your JBoss version.
### Configuration for Internal data caches
```xml
...
<cache-container name="zanata" default-cache="default"
jndi-name="java:jboss/infinispan/container/zanata"
start="EAGER"
module="org.jboss.as.clustering.web.infinispan">
<local-cache name="default">
<transaction mode="NON_XA"/>
<eviction strategy="LRU" max-entries="10000"/>
<expiration max-idle="100000"/>
</local-cache>
</cache-container>
...
```
*Please see the JBoss EAP or Wildfly documentation for more options on cache configuration.*
To modify cache configuration, you should copy the file `zanata-infinispan.xml` somewhere, then set the system property `zanata.infinispan.cfg` in `standalone.xml` to the full filename of your file.
Oops, something went wrong.

0 comments on commit 6a40e9b

Please sign in to comment.