diff --git a/CHANGELOG b/CHANGELOG index 3c26a5e9211144f1caedb0cb18076deea23cab17..6ec368a6cf999765a9c6f9bf6a988a48bb286343 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1346,7 +1346,7 @@ Basic transcoding is now available to/from the following formats : ogg and mp3. This relies internally on FFMPEG and can put some load on your server. It's definitely recommended you setup some caching for the transcoded files -at your webserver level. Check the the exemple nginx file at deploy/nginx.conf +at your webserver level. Check the the exemple nginx file at deploy/nginx.conf for an implementation. On the frontend, usage of transcoding should be transparent in the player. diff --git a/api/funkwhale_api/common/management/commands/script.py b/api/funkwhale_api/common/management/commands/script.py index b46a4327b0996a97aadd49a6b3066e99644c6e7c..cbfc78f0f5dfc14e1ea3f69ba72a5a075004bbb2 100644 --- a/api/funkwhale_api/common/management/commands/script.py +++ b/api/funkwhale_api/common/management/commands/script.py @@ -50,7 +50,7 @@ class Command(BaseCommand): self.stdout.write(self.style.SUCCESS(name)) self.stdout.write("") for line in script["help"].splitlines(): - self.stdout.write("    {}".format(line)) + self.stdout.write(" {}".format(line)) self.stdout.write("") def get_scripts(self): diff --git a/api/funkwhale_api/federation/signing.py b/api/funkwhale_api/federation/signing.py index 5b74b8577fb08606641e3bf00b02e302032e49ee..1bb2b9d5de04fc54e5557a6097b2f3215cd73efe 100644 --- a/api/funkwhale_api/federation/signing.py +++ b/api/funkwhale_api/federation/signing.py @@ -13,7 +13,7 @@ from . import exceptions, utils logger = logging.getLogger(__name__) -#  the request Date should be between now - 30s and now + 30s +# the request Date should be between now - 30s and now + 30s DATE_HEADER_VALID_FOR = 30 diff --git a/docs/importing-music.rst b/docs/importing-music.rst index 76f086045aea99707b2c987f5af88e8462445044..4b4ea7c1dcde0f957be1280a27687df8e372edb2 100644 --- a/docs/importing-music.rst +++ b/docs/importing-music.rst @@ -98,14 +98,14 @@ directory is mounted as a volume as well:: volumes: - ./data/music:/music:ro - ./data/media:/app/funkwhale_api/media - # add your symlinked dirs here + # add your symlinked dirs here - /media/nfsshare:/media/nfsshare:ro api: volumes: - ./data/music:/music:ro - ./data/media:/app/funkwhale_api/media - # add your symlinked dirs here + # add your symlinked dirs here - /media/nfsshare:/media/nfsshare:ro diff --git a/front/src/App.vue b/front/src/App.vue index 8e1abae7ff65c05c19f1cf5fa2931f42c8adb4e5..11ef9f13df004d45073234850ef4d49e40b9c823 100644 --- a/front/src/App.vue +++ b/front/src/App.vue @@ -9,7 +9,7 @@ <input type="text" v-model="instanceUrl"> <button type="submit" class="ui button"><translate>Submit</translate></button> </div> - <p>{{ $gettext('Suggested choices') }}</p> + <p><translate>Suggested choices</translate></p> <div class="ui bulleted list"> <div class="ui item" v-for="url in suggestedInstances"> <a @click="instanceUrl = url">{{ url }}</a> @@ -61,7 +61,7 @@ <h4 v-translate class="ui header">Options</h4> <div class="ui form"> <div class="ui field"> - <label>{{ $gettext('Change language') }}</label> + <label><translate>Change language</translate></label> <select class="ui dropdown" v-model="$language.current"> <option v-for="(language, key) in $language.available" :value="key">{{ language }}</option> </select> diff --git a/front/src/components/Sidebar.vue b/front/src/components/Sidebar.vue index beced0b44ecef42864dc3627ff3ad26503a6a358..2c193fc6e7cbd40ce938fab0f9eef816e8c37395 100644 --- a/front/src/components/Sidebar.vue +++ b/front/src/components/Sidebar.vue @@ -47,7 +47,7 @@ <div class="item"> <div class="header"><translate>Music</translate></div> <div class="menu"> - <router-link class="item" :to="{path: '/library'}"><i class="sound icon"> </i><translate>Browse library</translate></router-link> + <router-link class="item" :to="{path: '/library'}"><i class="sound icon"></i><translate>Browse library</translate></router-link> <router-link class="item" v-if="$store.state.auth.authenticated" :to="{path: '/favorites'}"><i class="heart icon"></i><translate>Favorites</translate></router-link> <a @click="$store.commit('playlists/chooseTrack', null)" diff --git a/front/src/components/audio/track/Table.vue b/front/src/components/audio/track/Table.vue index 20322567dc384928e4ae4696cb6d658eb35f4fa9..40d33df732b26adf9ba76181092ea57d6970b453 100644 --- a/front/src/components/audio/track/Table.vue +++ b/front/src/components/audio/track/Table.vue @@ -4,9 +4,9 @@ <tr> <th></th> <th></th> - <th colspan="6">{{ $gettext('Title') }}</th> - <th colspan="6">{{ $gettext('Artist') }}</th> - <th colspan="6">{{ $gettext('Album') }}</th> + <th colspan="6"><translate>Title</translate></th> + <th colspan="6"><translate>Artist</translate></th> + <th colspan="6"><translate>Album</translate></th> <th></th> </tr> </thead> @@ -21,16 +21,16 @@ <tr> <th colspan="3"> <button @click="showDownloadModal = !showDownloadModal" class="ui basic button"> - {{ $gettext('Download') }} + <translate>Download</translate> </button> <modal :show.sync="showDownloadModal"> - <div class="header">{{ $gettext('Download tracks') }}</div> + <div class="header"><translate>Download tracks</translate></div> <div class="content"> <div class="description"> - <p>{{ $gettext('There is currently no way to download directly multiple tracks from funkwhale as a ZIP archive. However, you can use a command line tools such as cURL to easily download a list of tracks.') }}</p> - {{ $gettext('Simply copy paste the snippet below into a terminal to launch the download.') }} + <p><translate>There is currently no way to download directly multiple tracks from funkwhale as a ZIP archive. However, you can use a command line tools such as cURL to easily download a list of tracks.</translate></p> + <translate>Simply copy paste the snippet below into a terminal to launch the download.</translate> <div class="ui warning message"> - {{ $gettext('Keep your PRIVATE_TOKEN secret as it gives access to your account.') }} + <translate>Keep your PRIVATE_TOKEN secret as it gives access to your account.</translate> </div> <pre> export PRIVATE_TOKEN="{{ $store.state.auth.token }}" diff --git a/front/src/components/auth/Login.vue b/front/src/components/auth/Login.vue index 2fdaaba41d4b1977cebc425d1000fa8d9b31cacf..88caa5afefccf12b0ac115613f45f94dec9046af 100644 --- a/front/src/components/auth/Login.vue +++ b/front/src/components/auth/Login.vue @@ -7,8 +7,8 @@ <div v-if="error" class="ui negative message"> <div class="header"><translate>We cannot log you in</translate></div> <ul class="list"> - <li v-if="error == 'invalid_credentials'">{{ $gettext('Please double-check your username/password couple is correct') }}</li> - <li v-else>{{ $gettext('An unknown error happend, this can mean the server is down or cannot be reached') }}</li> + <li v-if="error == 'invalid_credentials'"><translate>Please double-check your username/password couple is correct</translate></li> + <li v-else><translate>An unknown error happend, this can mean the server is down or cannot be reached</translate></li> </ul> </div> <div class="field"> @@ -39,7 +39,7 @@ </div> <button tabindex="3" :class="['ui', {'loading': isLoading}, 'right', 'floated', 'green', 'button']" type="submit"> - {{ $gettext('Login') }} + <translate>Login</translate> </button> </form> </div> diff --git a/front/src/components/auth/Profile.vue b/front/src/components/auth/Profile.vue index 1d15b206facddfe42ef8510f8fbf49725bae74d4..556a9a67e65846517e9d07b069f75c7a4ca6568a 100644 --- a/front/src/components/auth/Profile.vue +++ b/front/src/components/auth/Profile.vue @@ -20,7 +20,7 @@ <translate>Staff member</translate> </div> <router-link class="ui tiny basic button" :to="{path: '/settings'}"> - <i class="setting icon"> </i> + <i class="setting icon"></i> <translate>Settings...</translate> </router-link> diff --git a/front/src/components/auth/Settings.vue b/front/src/components/auth/Settings.vue index 5a74b8888796477cbf75f85299e2da9259e6ed19..886fe598dc98c3406e00fd2b0d2cea3140fefb4e 100644 --- a/front/src/components/auth/Settings.vue +++ b/front/src/components/auth/Settings.vue @@ -48,12 +48,12 @@ </ul> </div> <div class="field"> - <label>{{ $gettext('Old password') }}</label> + <label><translate>Old password</translate></label> <password-input required v-model="old_password" /> </div> <div class="field"> - <label>{{ $gettext('New password') }}</label> + <label><translate>New password</translate></label> <password-input required v-model="new_password" /> </div> <dangerous-button @@ -65,7 +65,7 @@ <div slot="modal-content"> <p><translate>Changing your password will have the following consequences</translate></p> <ul> - <li><translate>You will be logged out from this session and have to log out with the new one</translate></li> + <li><translate>You will be logged out from this session and have to log in with the new one</translate></li> <li><translate>Your Subsonic password will be changed to a new, random one, logging you out from devices that used the old Subsonic password</translate></li> </ul> </div> diff --git a/front/src/components/federation/LibraryFollowTable.vue b/front/src/components/federation/LibraryFollowTable.vue index 6f2a4e4f9b80f4e346fe082d6f200c080f456f97..ba0f484eab885f60ab2620e3118ffc9d8a3b97b1 100644 --- a/front/src/components/federation/LibraryFollowTable.vue +++ b/front/src/components/federation/LibraryFollowTable.vue @@ -19,10 +19,10 @@ <table v-if="result" class="ui very basic single line unstackable table"> <thead> <tr> - <th>{{ $gettext('Actor') }}</th> - <th>{{ $gettext('Creation date') }}</th> - <th>{{ $gettext('Status') }}</th> - <th>{{ $gettext('Actions') }}</th> + <th><translate>Actor</translate></th> + <th><translate>Creation date</translate></th> + <th><translate>Status</translate></th> + <th><translate>Actions</translate></th> </tr> </thead> <tbody> diff --git a/front/src/components/library/import/Main.vue b/front/src/components/library/import/Main.vue index e7d9d7d3de3e235603026af32cfb913b54cc4f2f..08047fd2fc1b09f020c6b8680f24548a5f0ce964 100644 --- a/front/src/components/library/import/Main.vue +++ b/front/src/components/library/import/Main.vue @@ -50,7 +50,7 @@ :class="['ui', 'positive', 'icon', {'disabled': !importBatch}, 'button']" :disabled="!importBatch" > - {{ $gettext('Finish import' )}} + <translate>Finish import</translate> <i class="check icon"></i> </button> </div> diff --git a/front/src/components/manage/library/RequestsTable.vue b/front/src/components/manage/library/RequestsTable.vue index be25c4bb4080564a06fad868272e7a3d8d54a8f6..da3d6636336c6fe8762c9ddf2b409a9bf4e6ccd9 100644 --- a/front/src/components/manage/library/RequestsTable.vue +++ b/front/src/components/manage/library/RequestsTable.vue @@ -69,24 +69,24 @@ </td> <td> <span v-if="scope.obj.albums" :title="scope.obj.albums">{{ scope.obj.albums|truncate(30) }}</span> - <template v-else>{{ $gettext('N/A') }}</template> + <template v-else><translate>N/A</translate></template> </td> <td> <span v-if="scope.obj.comment" :title="scope.obj.comment">{{ scope.obj.comment|truncate(30) }}</span> - <template v-else>{{ $gettext('N/A') }}</template> + <template v-else><translate>N/A</translate></template> </td> <td> <human-date :date="scope.obj.creation_date"></human-date> </td> <td> <human-date v-if="scope.obj.imported_date" :date="scope.obj.creation_date"></human-date> - <template v-else>{{ $gettext('N/A') }}</template> + <template v-else><translate>N/A</translate></template> </td> <td> <router-link class="ui tiny basic button" :to="{name: 'library.import.launch', query: {request: scope.obj.id}}" - v-if="scope.obj.status === 'pending'">{{ $gettext('Create import') }}</router-link> + v-if="scope.obj.status === 'pending'"><translate>Create import</translate></router-link> </td> </template> </action-table> diff --git a/front/src/components/manage/users/InvitationsTable.vue b/front/src/components/manage/users/InvitationsTable.vue index 7d4864e87a3b68096f29f2880b5e266e6f769b81..9ebc077974cf9e3034bc5610b226918137c16ab2 100644 --- a/front/src/components/manage/users/InvitationsTable.vue +++ b/front/src/components/manage/users/InvitationsTable.vue @@ -44,7 +44,7 @@ </template> <template slot="row-cells" slot-scope="scope"> <td> - <router-link :to="{name: 'manage.users.users.detail', params: {id: scope.obj.id }}">{{ scope.obj.owner.username }}</router-link> + <router-link :to="{name: 'manage.users.users.detail', params: {id: scope.obj.id }}">{{ scope.obj.owner.username }}</router-link> </td> <td> <span v-if="scope.obj.users.length > 0" class="ui green basic label"><translate>Used</translate></span> diff --git a/front/src/components/manage/users/UsersTable.vue b/front/src/components/manage/users/UsersTable.vue index a2b486e234cab7201bdea32a3f464233e4deb4af..886b73fbb98d634ca221cf9ae5f8286f838ac700 100644 --- a/front/src/components/manage/users/UsersTable.vue +++ b/front/src/components/manage/users/UsersTable.vue @@ -45,14 +45,14 @@ </template> <template slot="row-cells" slot-scope="scope"> <td> - <router-link :to="{name: 'manage.users.users.detail', params: {id: scope.obj.id }}">{{ scope.obj.username }}</router-link> + <router-link :to="{name: 'manage.users.users.detail', params: {id: scope.obj.id }}">{{ scope.obj.username }}</router-link> </td> <td> - <span>{{ scope.obj.email }}</span> + <span>{{ scope.obj.email }}</span> </td> <td> - <span v-if="scope.obj.is_active" class="ui basic green label">{{ $gettext('Active') }}</span> - <span v-else class="ui basic grey label">{{ $gettext('Inactive') }}</span> + <span v-if="scope.obj.is_active" class="ui basic green label"><translate>Active</translate></span> + <span v-else class="ui basic grey label"><translate>Inactive</translate></span> </td> <td> <human-date :date="scope.obj.date_joined"></human-date> diff --git a/front/src/views/admin/users/UsersDetail.vue b/front/src/views/admin/users/UsersDetail.vue index 72efabd8966bbe05286893f805b88511ec477076..4e750cafa188218d48049c288ffa654118189087 100644 --- a/front/src/views/admin/users/UsersDetail.vue +++ b/front/src/views/admin/users/UsersDetail.vue @@ -143,7 +143,7 @@ export default { computed: { labels () { return { - inactive: this.$gettext('Determine if the user account is active or not. Inactive users cannot login or user the service.') + inactive: this.$gettext('Determine if the user account is active or not. Inactive users cannot login or use the service.') } }, allPermissions () { diff --git a/front/src/views/federation/LibraryDetail.vue b/front/src/views/federation/LibraryDetail.vue index 4ddccb79b3ddea21193b6e4726cc4fc319c30c6a..708156c1984857f601320c7cf8577371c562cf29 100644 --- a/front/src/views/federation/LibraryDetail.vue +++ b/front/src/views/federation/LibraryDetail.vue @@ -93,7 +93,7 @@ </translate> </template> <template v-else> - <translate>Unkwnown</translate> + <translate>Unknown</translate> </template> </td> <td></td>