Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
This is a fork to extract UI strings and make it possible to use BrowserCMS in languages other than English. I am using the built in I18n module with the simple backend, so there is no need to install or do anything special.
gem install browsercmsi
If your are not already familiar with the Rails Internationalization API, it might be a good idea for you to take a quick look at it first.
To translate BrowserCMS' UI to a new language you need to create your new locale files and 12 images for the main toolbar.
You can swap between locales using the buttons at the top of the toolbar. You'll see one button for each locale key you have on your installation. You will not see these buttons on a production site since their purpose is only to let you swap locales while you are translating the UI to a new language during development. Not only you will not see the buttons on production but the route to swap locales is not even mapped.
Note about locale keys Although neither Rails or BrowserCMSI really care which locale keys you use, if you use the ISO 639-1 code for your language, BrowserCMSI will set CKEditor locale automatically for you. If you use non-standard locale keys, CKEditor will fallback to English.
BCMS uses 4 sets of images for the links in the main toolbar: My Dashboard, Sitemap, Content Library and Administration. You need to create one image for the up, over and active states of each link. You can use a .psd file located in doc/design on this repository. (Take a look at public/images/cms/locales/en and name your new images accordingly)
Once you have your images, you need to place them in a new directory under public/images/cms/locales. Name this directory exactly the same as your locale files directory. (fr to continue with the french example).
When you run rake db:migrate after creating a new project, BrowserCMS seeds some data on the database. The locale file for these records is bootstrap.yml. Changes made to this locale file will not take effect when you change the locale (either with the toolbar buttons or in the initializer i18n.rb). You'll need to run the migrations again to see these changes.
rake db:migrate VERSION=0
rake db:migrate
There is really no 'correct' way to organize the locale files. As far as the Rails i18n API is concerned, you can place all translation strings in a single file, so you can move them around as you see fit as long as the data structure represented in YAML does not change.
When organizing the locale files (and the hash structure) I tried to find a balance between having a logical, easy to follow structure and not having insanely long key paths.
Locale files are organized in a way that 'mostly' resembles BrowserCMS' file structure so it should be very easy to follow what goes where. The bulk of the translation work is done in views and layouts.
Here's a brief description of the files:
Michael Franzl (German translation and bugfixes)
Juan Alvarez alce{{at}}mac[[dot]]com
FAQs
Unknown package
We found that browsercmsi demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.