Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Cordova Wiki" for 
change notification.

The "CordovaTranslations" page has been changed by ldeluca:
https://wiki.apache.org/cordova/CordovaTranslations?action=diff&rev1=36&rev2=37

  The github-crowdin.sh script is the script that is run to initiate the 
translation flow.  It is a custom script that first pushes any of the changed 
markdown files into crowdin.  It then searches through all of the languages 
from crowdin and downloads only those languages that are 100% translated.  
Finally, it pushes the translated language files back into github.
  
  {{{
+ #!/bin/bash
+ DOMAIN_NAME='http://api.crowdin.net'
  
+ #---CHANGE THE VARIABLES BELOW---
+ GIT_REPO_PATH=/home/<username>/git/cordova-docs
+ CROWDIN_CLI_PATH=/path/to/crowdincli
+ PROJECT_IDENTIFIER='cordova'
+ PROJECT_KEY='___________same API key as above________'
+ 
+ #---
+ 
+ cd $GIT_REPO_PATH
+ git pull origin master
+ git push origin
+ 
+ cd $CROWDIN_CLI_PATH
+ 
+ java -jar crowdin-cli.jar upload sources
+ 
+ curl $DOMAIN_NAME/api/project/$PROJECT_IDENTIFIER/status?key=$PROJECT_KEY > 
result.xml
+ 
+ read_dom () {
+     local IFS=\>
+     read -d \< ENTITY CONTENT
+ }
+ 
+ while read_dom; do
+       if [[ $ENTITY = "code" ]] ; then
+       code=( "${code[@]}" "$CONTENT" )
+       fi
+       if [[ $ENTITY = "translated_progress" ]] ; then
+       progress=( "${progress[@]}" "$CONTENT" )
+       fi
+ done < result.xml
+ 
+ for (( i = 0; i < ${#progress[@]}; i++ )); do
+    if [ "${progress[$i]}" = "100" ]; then
+       index=( "${index[@]}" "$i" )
+    fi
+ done
+ 
+ for element in "${index[@]}"; do
+     java -jar crowdin-cli.jar download -l ${code[$element]}
+ done
+ 
+ # fix crowdin issues:
+ echo "About to fix crowdin errors with resulting files"
+ find /home/<username>/git/cordova-docs/docs -name \*.md -exec sed -i "s/\* \* 
\*/---/1" {} \; 
+ find /home/<username>/git/cordova-docs/docs -name \*.md -exec sed -i "s/## 
under the License./   under the License.\n---/g" {} \;
+ echo "Done with crowdin fix"
+ 
+ cd $GIT_REPO_PATH
+   git add .
+   git commit -m 'Synchronization with Crowdin'
+   git push origin
  }}}
  === Script output ===
  The script will print out the name of each file being downloaded

Reply via email to