Merge branch 'master' into master
2
.github/CODEOWNERS
vendored
@ -8,5 +8,5 @@
|
||||
/developer_manual/client_apis/OCS/ocs-status-api.rst @Antreesy @nickvergessen
|
||||
/developer_manual/digging_deeper/groupware/ @ChristophWurst
|
||||
/developer_manual/digging_deeper/groupware/calendar.rst @miaulalala
|
||||
/developer_manual/digging_deeper/talk.rst @nickvergessen @vitormattos
|
||||
/developer_manual/digging_deeper/talk.rst @nickvergessen
|
||||
/user_manual/talk/ @Antreesy @nickvergessen @ShGKme
|
||||
|
||||
12
.github/workflows/command-rebase.yml
vendored
@ -9,8 +9,8 @@ on:
|
||||
issue_comment:
|
||||
types: created
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
rebase:
|
||||
@ -23,7 +23,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Add reaction on start
|
||||
uses: peter-evans/create-or-update-comment@v3
|
||||
uses: peter-evans/create-or-update-comment@c6c9a1a66007646a28c153e2a8580a5bad27bcfa # v3.0.2
|
||||
with:
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
repository: ${{ github.event.repository.full_name }}
|
||||
@ -31,18 +31,18 @@ jobs:
|
||||
reaction-type: "+1"
|
||||
|
||||
- name: Checkout the latest code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
|
||||
- name: Automatic Rebase
|
||||
uses: cirrus-actions/rebase@1.8
|
||||
uses: cirrus-actions/rebase@b87d48154a87a85666003575337e27b8cd65f691 # 1.8
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
|
||||
- name: Add reaction on failure
|
||||
uses: peter-evans/create-or-update-comment@v3
|
||||
uses: peter-evans/create-or-update-comment@c6c9a1a66007646a28c153e2a8580a5bad27bcfa # v3.0.2
|
||||
if: failure()
|
||||
with:
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
|
||||
16
.github/workflows/fixup.yml
vendored
@ -3,19 +3,31 @@
|
||||
# https://github.com/nextcloud/.github
|
||||
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
|
||||
|
||||
name: Pull request checks
|
||||
name: Block fixup and squash commits
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types: [opened, ready_for_review, reopened, synchronize]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: fixup-${{ github.head_ref || github.run_id }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
commit-message-check:
|
||||
if: github.event.pull_request.draft == false
|
||||
|
||||
permissions:
|
||||
pull-requests: write
|
||||
name: Block fixup and squash commits
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Run check
|
||||
uses: xt0rted/block-autosquash-commits-action@v2
|
||||
uses: skjnldsv/block-fixup-merge-action@42d26e1b536ce61e5cf467d65fb76caf4aa85acf # v1
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
12
.github/workflows/sphinxbuild.yml
vendored
@ -12,6 +12,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Install pip dependencies
|
||||
run: pip install -r requirements.txt
|
||||
- name: Build using Makefile
|
||||
@ -29,6 +32,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Install pip dependencies
|
||||
run: pip install -r requirements.txt
|
||||
- name: Build using Makefile
|
||||
@ -38,6 +44,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Install pip dependencies
|
||||
run: pip install -r requirements.txt
|
||||
- name: Build using Makefile
|
||||
@ -55,6 +64,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Install pip dependencies
|
||||
run: pip install -r requirements.txt
|
||||
- name: Build using Makefile
|
||||
|
||||
7
.gitignore
vendored
@ -29,6 +29,11 @@ _build
|
||||
developer_manual/html_css_design/img
|
||||
developer_manual/html_css_design/icons.txt
|
||||
|
||||
# OpenAPI file
|
||||
developer_manual/_static/openapi.json
|
||||
developer_manual/_static/stoplight-elements.js
|
||||
developer_manual/_static/stoplight-elements.css
|
||||
|
||||
# Exclude Eclipse project
|
||||
.project
|
||||
|
||||
@ -47,4 +52,4 @@ venv
|
||||
.history/
|
||||
|
||||
# JetBrains IDEs
|
||||
.idea/
|
||||
.idea/
|
||||
|
||||
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
[submodule "build/openapi-extractor"]
|
||||
path = build/openapi-extractor
|
||||
url = https://github.com/nextcloud/openapi-extractor
|
||||
18
Makefile
@ -13,7 +13,7 @@ user-manual-html:
|
||||
cd user_manual && make html
|
||||
@echo "User manual build finished; HTML is updated"
|
||||
|
||||
developer-manual-html: icons-docs
|
||||
developer-manual-html: openapi-spec # icons-docs
|
||||
rm -rf developer_manual/_build/html/com
|
||||
cd developer_manual && make html
|
||||
@echo "Developer manual build finished; HTML is updated"
|
||||
@ -26,8 +26,22 @@ user-manual-pdf:
|
||||
cd user_manual && make latexpdf
|
||||
@echo "User manual build finished; PDF is updated"
|
||||
|
||||
icons-docs: clean-icons-docs
|
||||
get-server-sources:
|
||||
cd build && sh get-server-sources.sh $(DRONE_BRANCH)
|
||||
|
||||
openapi-spec: get-server-sources
|
||||
git submodule update --init
|
||||
cd build/openapi-extractor && composer install
|
||||
cd build && ./openapi-extractor/merge-specs \
|
||||
--core server/core/openapi.json \
|
||||
--merged ../developer_manual/_static/openapi.json \
|
||||
$$(ls server/apps/*/openapi.json)
|
||||
cd developer_manual/_static && \
|
||||
wget https://unpkg.com/@stoplight/elements@7.7.17/web-components.min.js -O stoplight-elements.js && \
|
||||
wget https://unpkg.com/@stoplight/elements@7.7.17/styles.min.css -O stoplight-elements.css
|
||||
|
||||
|
||||
icons-docs: clean-icons-docs get-server-sources
|
||||
cd build && composer install && composer update
|
||||
cd build && php generateIconsDoc.php
|
||||
|
||||
|
||||
10
README.rst
@ -127,15 +127,19 @@ Building HTML
|
||||
3. Change into the environment: ``pipenv shell``
|
||||
4. Install the dependencies ``pip install -r requirements.txt``
|
||||
5. Now you can use ``make ...`` to build all the stuff - for example ``make html`` to build the HTML flavor of all manuals
|
||||
The build assets will be put into the individual documentation subdirectories like ``developer_manual/_build/html/com``
|
||||
|
||||
|
||||
To change into this environment you need to run ``pipenv shell`` to launch the shell and to exit you can use either ``exit`` or ``Ctrl`` + ``D``.
|
||||
|
||||
When editing the documentation installing ``sphinx-autobuild`` though pip can be helpful. This will watch file changes and automatically reload the html preview:
|
||||
|
||||
|
||||
1. Install ``pip install sphinx-autobuild``
|
||||
2. Enter the documentation section ``cd user_manual``
|
||||
3. Watch for file changes ``make SPHINXBUILD=sphinx-autobuild html``
|
||||
4. Open http://127.0.0.1:8000 in the browser and start editing
|
||||
2. When building the developer documentation make sure to execute ``make openapi-spec`` in the repository root
|
||||
3. Enter the documentation section ``cd user_manual``
|
||||
4. Watch for file changes ``make SPHINXBUILD=sphinx-autobuild html``
|
||||
5. Open http://127.0.0.1:8000 in the browser and start editing
|
||||
|
||||
Building PDF
|
||||
============
|
||||
|
||||
@ -173,4 +173,10 @@ to the actual file on the Nextcloud servers temporary directory. It is recommend
|
||||
the size of your temp directory accordingly and also ensure that request timeouts are high
|
||||
enough for PHP, webservers or any load balancers involved.
|
||||
|
||||
Federated Cloud Sharing
|
||||
-----------------------
|
||||
|
||||
If you are using `Federated Cloud Sharing <https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/federated_cloud_sharing_configuration.html>`_ and want to share large files, you can increase the timeout values for requests to the federated servers.
|
||||
Therefore, you can set ``davstorage.request_timeout`` in your ``config.php``. The default value is 30 seconds.
|
||||
|
||||
.. TODO ON RELEASE: Update version number above on release
|
||||
|
||||
@ -2,36 +2,49 @@
|
||||
Amazon S3
|
||||
=========
|
||||
|
||||
To connect your Amazon S3 buckets to Nextcloud, you will need:
|
||||
To connect an Amazon S3 (or compatible) bucket to Nextcloud you will need to know your:
|
||||
|
||||
- S3 access key
|
||||
- S3 secret key
|
||||
- Bucket name
|
||||
- S3 bucket name
|
||||
- S3 access key ID
|
||||
- S3 secret access key
|
||||
- S3 region (if Amazon hosted) or S3 hostname (if non-Amazon hosted) [Note: If specifying a hostname, use the generic S3 endpoint hostname, **not** the hostname that contains your bucket name]
|
||||
|
||||
In the **Folder name** field enter a local folder name for your S3 mountpoint.
|
||||
If this does not exist it will be created.
|
||||
In the **Folder name** field enter a folder name to use as the local mountpoint for this
|
||||
external storage. If this does not exist it will be created.
|
||||
|
||||
In the **Available for** field enter the users or groups who have permission to
|
||||
In the **External storage** field select **Amazon S3**.
|
||||
|
||||
In the **Authentication** field select **Access key**.
|
||||
|
||||
In the **Bucket** field enter your *S3 bucket name*. [Note: Even if non-Amazon hosted, bucket names must meet AWS S3 naming requirements regardless of what your S3 provider/platform considers acceptable - i.e. no underscores]
|
||||
|
||||
In the **Access key** field enter your *S3 access key ID*.
|
||||
|
||||
In the **Secret key** field enter your *S3 access key*.
|
||||
|
||||
**If you are using Amazon S3:** the :code:`Region` parameter is required unless you're happy with
|
||||
the default of :code:`eu-west-1` (which will be used if you don't specify anything). There is no
|
||||
need to override the :code:`Hostname` or :code:`Port`. And :code:`Storage Class` only needs to be
|
||||
modified if you're using a different configuration at AWS. Lastly, :code:`Enable Path Style` is
|
||||
rarely required with Amazon, but some legacy Amazon datacenters may require it. Leave
|
||||
:code:`Legacy (v2) authentication` unselected.
|
||||
|
||||
**If you using a non-Amazon hosted S3 store:** you will need to set the :code:`Hostname`
|
||||
parameter (and can ignore the :code:`Region` parameter). You may need to enable :code:`Enable Path Style`
|
||||
if your non-Amazon S3 store does *not* support requests like :code:`https://bucket.hostname.domain/`.
|
||||
Setting :code:`Enable Path Style` to true configures the S3 client to make requests like
|
||||
:code:`https://hostname.domain/bucket` instead. It's rare to need :code:`Legacy (v2) authentication`, but
|
||||
enable it if your in-house object store or service provider requires it over the default (v4) authentication.
|
||||
|
||||
In the **Available for** field enter the users or groups who you want to give
|
||||
access your S3 mount.
|
||||
|
||||
The ``Enable SSL`` checkbox enables HTTPS connections; using HTTPS is always
|
||||
highly-recommended.
|
||||
The ``Enable SSL`` checkbox enables HTTPS connections and generally preferred. It is the default unless
|
||||
you disable it here.
|
||||
|
||||
.. figure:: images/amazons3.png
|
||||
:alt:
|
||||
|
||||
Optionally, you can override the hostname, port and region of your S3 server,
|
||||
which is required for non-Amazon servers such as Ceph Object Gateway.
|
||||
|
||||
**Enable path style** is usually not required (and is, in fact, incompatible
|
||||
with newer Amazon datacenters), but can be used with non-Amazon servers where
|
||||
the DNS infrastructure cannot be controlled. Ordinarily, requests will be
|
||||
made with ``http://bucket.hostname.domain/``, but with path style enabled,
|
||||
requests are made with ``http://hostname.domain/bucket`` instead.
|
||||
|
||||
**Legacy authentication** is only required for S3 servers that only implement version 2 authentication,
|
||||
by default version 4 authentication will be used.
|
||||
|
||||
See :doc:`../external_storage_configuration_gui` for additional mount
|
||||
options and information.
|
||||
|
||||
|
||||
@ -109,6 +109,7 @@ manage federated cloud shares:
|
||||
* Check ``Set default expiration date`` to require an expiration date on link
|
||||
shares.
|
||||
* Check ``Allow public uploads`` to allow two-way file sharing.
|
||||
* If you encounter timeouts for downloading or uploading large files, you can use the option ``davstorage.request_timeout`` in your ``config.php`` to increase the timeout. The default value is 30 seconds.
|
||||
|
||||
Your Apache Web server must have ``mod_rewrite`` enabled, and you must have
|
||||
``trusted_domains`` correctly configured in ``config.php`` to allow external
|
||||
|
||||
@ -11,21 +11,32 @@ By default, files are stored in :code:`nextcloud/data` or another directory conf
|
||||
in the :code:`config.php` of your Nextcloud instance. This data directory might
|
||||
still be used for compatibility reasons)
|
||||
|
||||
------------
|
||||
Implications
|
||||
------------
|
||||
---------------------------------
|
||||
Differences from External Storage
|
||||
---------------------------------
|
||||
|
||||
When using an object store as primary storage, Nextcloud assumes exclusive access
|
||||
over the bucket being used.
|
||||
When an object store is used as Primary Storage, Nextcloud requires exclusive access
|
||||
over the bucket being used. All metadata (filenames, directory structures, etc)
|
||||
is stored in Nextcloud and not in the object store. The metadata is only stored in the database and the
|
||||
object store only holds the file content by unique identifier.
|
||||
|
||||
Contrary to using an object store as external storage, when an object store is used
|
||||
as primary storage, no metadata (names, directory structures, etc) is stored in the
|
||||
object store. The metadata is only stored in the database and the object store only
|
||||
holds the file content by unique identifier.
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Performance Implications
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Because of this primary object stores usually perform better than when using the same
|
||||
object store as external storage but it restricts being able to access the files from
|
||||
outside of Nextcloud.
|
||||
Because of this, object stores configured as Primary Storage usually perform better than
|
||||
when using the same object store via the External Storage support application, but the downside
|
||||
is being unable to access the files from outside of Nextcloud. This makes using an object store
|
||||
as Primary Storage distinct from using using an object store via External Storage.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Data Backup and Recovery Implications
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
One impact of using an object store as Primary Storage is that your data backup strategy
|
||||
needs to incorporate this. **Your data is longer stored on your Nextcloud server, but your
|
||||
files are also no longer accessible by simply bypassing your Nextcloud server and accessing
|
||||
your object store directly.**
|
||||
|
||||
-------------
|
||||
Configuration
|
||||
@ -116,39 +127,88 @@ V3 Authentication:
|
||||
Simple Storage Service (S3)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The simple storage service (S3) backend mounts a bucket on an Amazon S3 object
|
||||
The Simple Storage Service (S3) backend mounts a bucket on an Amazon S3 object
|
||||
storage or compatible implementation (e.g. Minio or Ceph Object Gateway) into the
|
||||
virtual filesystem.
|
||||
|
||||
The class to be used is :code:`\\OC\\Files\\ObjectStore\\S3`
|
||||
|
||||
Amazon-hosted S3:
|
||||
|
||||
::
|
||||
|
||||
'objectstore' => [
|
||||
'class' => '\\OC\\Files\\ObjectStore\\S3',
|
||||
'arguments' => [
|
||||
'bucket' => 'nextcloud',
|
||||
'autocreate' => true,
|
||||
'key' => 'EJ39ITYZEUH5BGWDRUFY',
|
||||
'bucket' => 'my-nextcloud-store',
|
||||
'region' => 'us-east-1',
|
||||
'key' => 'EJ39ITYZEUH5BGWDRUFY',
|
||||
'secret' => 'M5MrXTRjkyMaxXPe2FRXMTfTfbKEnZCu+7uRTVSj',
|
||||
'hostname' => 'example.com',
|
||||
'port' => 1234,
|
||||
'use_ssl' => true,
|
||||
'region' => 'optional',
|
||||
// required for some non Amazon S3 implementations
|
||||
'use_path_style'=>true
|
||||
],
|
||||
],
|
||||
|
||||
.. note:: Not all configuration options are required for all S3 servers. Overriding
|
||||
the hostname, port and region of your S3 server is only required for
|
||||
non-Amazon implementations, which in turn usually don't require the region to be set.
|
||||
Non-Amazon hosted S3:
|
||||
|
||||
.. note:: :code:`use_path_style` is usually not required (and is, in fact, incompatible
|
||||
with newer Amazon datacenters), but can be used with non-Amazon servers
|
||||
where the DNS infrastructure cannot be controlled. Ordinarily, requests
|
||||
will be made with http://bucket.hostname.domain/, but with path style enabled,
|
||||
requests are made with http://hostname.domain/bucket instead.
|
||||
::
|
||||
|
||||
'objectstore' => [
|
||||
'class' => '\\OC\\Files\\ObjectStore\\S3',
|
||||
'arguments' => [
|
||||
'bucket' => 'my-nextcloud-store',
|
||||
'hostname' => 's3.example.com',
|
||||
'key' => 'EJ39ITYZEUH5BGWDRUFY',
|
||||
'secret' => 'M5MrXTRjkyMaxXPe2FRXMTfTfbKEnZCu+7uRTVSj',
|
||||
'port' => 8443,
|
||||
// required for some non-Amazon S3 implementations
|
||||
'use_path_style' => true,
|
||||
],
|
||||
],
|
||||
|
||||
Minimum required parameters are:
|
||||
|
||||
* :code:`bucket` [Note: Even if non-Amazon hosted, bucket names must meet AWS S3 naming requirements regardless of what your S3 provider/platform considers acceptable - i.e. no underscores]
|
||||
* :code:`key`
|
||||
* :code:`secret`
|
||||
|
||||
.. note:: You will *probably* need to specify additional parameters beyond these, unless the default
|
||||
values (see below) exactly match your situation. In particular, your :code:`region` (if Amazon
|
||||
hosted) or :code:`hostname` (if non-Amazon hosted).
|
||||
|
||||
Optional parameters most commonly needing adjustment (and their defaults values if left
|
||||
unconfigured):
|
||||
|
||||
* :code:`region` defaults to :code:`eu-west-1`
|
||||
* :code:`storageClass` defaults to :code:`STANDARD`
|
||||
* :code:`hostname` defaults to :code:`s3.REGION.amazonaws.com` [Note: If using this parameter (non-Amazon), specify the generic S3 endpoint hostname, **not** the hostname that contains your bucket name]
|
||||
* :code:`use_ssl` defaults to :code:`true`
|
||||
|
||||
Optional parameters sometimes needing adjustment:
|
||||
|
||||
* :code:`use_path_style` defaults to :code:`false`
|
||||
* :code:`port` defaults to :code:`443`
|
||||
* :code:`sse_c_key` has no default
|
||||
|
||||
Optional parameters less commonly needing adjustment:
|
||||
|
||||
* :code:`proxy` defaults to :code:`false`
|
||||
* :code:`timeout` defaults to :code:`15`
|
||||
* :code:`uploadPartSize` defaults to :code:`524288000`
|
||||
* :code:`putSizeLimit` defaults to :code:`104857600`
|
||||
* :code:`legacy_auth` has no default
|
||||
* :code:`version` defaults to :code:`latest`
|
||||
* :code:`verify_bucket_exists` defaults to :code:`true`
|
||||
|
||||
**If you are using Amazon S3:** the :code:`region` parameter is required unless you're happy with
|
||||
the default of :code:`eu-west-1`. There is no need to override the :code:`hostname` or :code:`port`.
|
||||
And :code:`storageClass` only needs to be modified if you're using a different configuration at AWS.
|
||||
Lastly, :code:`use_path_style` is rarely required with Amazon, but some legacy Amazon datacenters
|
||||
may require it.
|
||||
|
||||
**If you using a non-Amazon hosted S3 store:** you will need to set the :code:`hostname`
|
||||
parameter (and can ignore the :code:`region` parameter). You may need to use :code:`use_path_style`
|
||||
if your non-Amazon S3 store does *not* support requests like :code:`https://bucket.hostname.domain/`.
|
||||
Setting :code:`use_path_style` to true configures the S3 client to make requests like
|
||||
:code:`https://hostname.domain/bucket` instead.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Microsoft Azure Blob Storage
|
||||
@ -205,9 +265,9 @@ You can find out more information about upscaling with object storage and Nextcl
|
||||
`Nextcloud customer portal <https://portal.nextcloud.com/article/object-store-as-primary-storage-16.html>`_.
|
||||
|
||||
|
||||
------------------------
|
||||
SSE-C encryption support
|
||||
------------------------
|
||||
---------------------------
|
||||
S3 SSE-C encryption support
|
||||
---------------------------
|
||||
|
||||
Nextcloud supports server side encryption, also known as `SSE-C <http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html>`_, with compatible S3 bucket provider. The encryption and decryption happens on the S3 bucket side with a key provided by the Nextcloud server.
|
||||
|
||||
@ -239,4 +299,4 @@ The following example shows how to configure the S3 object store with SSE-C encr
|
||||
'sse_c_key' => 'o9d3Q9tHcPMv6TIpH53MSXaUmY91YheZRwuIhwCFRSs=',
|
||||
),
|
||||
);
|
||||
],
|
||||
],
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
.. _email-config:
|
||||
|
||||
=====
|
||||
Email
|
||||
=====
|
||||
@ -29,6 +31,8 @@ Sendmail when your mail server is on the same machine as Nextcloud.
|
||||
drop-in Sendmail replacement such as Postfix, Exim, or Courier. All of
|
||||
these include a ``sendmail`` binary, and are freely-interchangeable.
|
||||
|
||||
.. _email-smtp-config:
|
||||
|
||||
Configuring an SMTP server
|
||||
--------------------------
|
||||
|
||||
@ -37,16 +41,16 @@ connect Nextcloud to a remote SMTP server:
|
||||
|
||||
.. warning:: There were changes to the 3rd party mailer library in Nextcloud 26:
|
||||
|
||||
* STARTTLS cannot be enforced. It will be used automatically if the mail server supports it. The encryption type should be set to 'None' in this case. See :ref:`here<TLSPeerVerification>` for an example on how to configure self signed certificates.
|
||||
* STARTTLS cannot be enforced. It will be used automatically if the mail server supports it. The encryption type should be set to 'None/STARTTLS' in this case. See :ref:`here<TLSPeerVerification>` for an example on how to configure self signed certificates.
|
||||
* NTLM authentication for Microsoft Exchange is not supported by the new mailer library
|
||||
|
||||
* Encryption type: None or SSL/TLS
|
||||
* Encryption type: None/STARTTLS or SSL
|
||||
|
||||
* The From address you want your outgoing Nextcloud mails to use
|
||||
|
||||
* Whether authentication is required
|
||||
|
||||
* Authentication method (``Login`` is a placeholder): when authentication is required, the underlying mailer will try the following authentication methods in the order they're listed:
|
||||
* Authentication: when authentication is required, the underlying mailer will try the following authentication methods in the order they're listed:
|
||||
|
||||
* CramMd5
|
||||
* Login
|
||||
|
||||
|
Before Width: | Height: | Size: 51 KiB |
BIN
admin_manual/configuration_server/images/theming1.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
admin_manual/configuration_server/images/theming2.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
@ -2,7 +2,11 @@
|
||||
Logging
|
||||
=======
|
||||
|
||||
Use your Nextcloud log to review system status, or to help debug problems. You may adjust logging levels, and choose between using the Nextcloud log or your syslog. If additional audit information is required, you can optionally activate the **admin_audit** app, which by default generates a separate audit.log file in the data directory.
|
||||
Use your Nextcloud log to review system status, or to help debug problems. You may adjust logging levels, and choose how and where log data is stored. If additional event logging is required, you can optionally activate the **admin_audit** app.
|
||||
|
||||
When ``file`` based logging is utilized, both the Nextcloud log and, optionally, the **admit_audit** app log can be viewed within the Nextcloud interface under *Administration settings -> Logging* (this functionality is provided by the **logreader** app).
|
||||
|
||||
Further configuration and usage details for both the standard Nextcloud log and the optional **admin_audit** app log can be found below.
|
||||
|
||||
Log level
|
||||
---------
|
||||
@ -129,21 +133,14 @@ Log field breakdown
|
||||
* **data** additional structured data (if applicable)
|
||||
* **version**: Nextcloud version at the time of request
|
||||
|
||||
Empty value are written as two dashes: "--".
|
||||
Empty value are written as two dashes: ``--``.
|
||||
|
||||
Admin audit log
|
||||
---------------
|
||||
Admin audit log (Optional)
|
||||
--------------------------
|
||||
|
||||
If ``loglevel`` in ``config.php`` is set to ``2`` or higher, audit logging needs to be triggered explicitly by adding the following setting to to ``config.php``:
|
||||
By enabling the **admin_audit** app, additional information about various events can be logged. Similar to the normal logging, the audit log can be provided to any of the existing logging mechanisms in :file:`config/config.php`. The default behavior, if no parameters are specified after the app is enabled, is ``file`` based logging to a file called ``audit.log`` stored in the ``datadirectory``.
|
||||
|
||||
::
|
||||
|
||||
'log.condition' => [
|
||||
'apps' => ['admin_audit'],
|
||||
],
|
||||
|
||||
|
||||
Similar to the normal logging, the audit log can be written to any of the existing logging mechanism in :file:`config/config.php`:
|
||||
If you wish to override this and log to syslog instead the following would be one approach:
|
||||
|
||||
::
|
||||
|
||||
@ -151,14 +148,42 @@ Similar to the normal logging, the audit log can be written to any of the existi
|
||||
"syslog_tag_audit" => "Nextcloud",
|
||||
"logfile_audit" => "",
|
||||
|
||||
Previously the logfile could be defined in the app config. This config is still used when the system config is not provided:
|
||||
Log level interaction
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If system ``loglevel`` in ``config.php`` is set to ``2`` or higher, audit logging needs to be triggered explicitly by adding the following setting to to ``config.php``:
|
||||
|
||||
::
|
||||
|
||||
"log.condition" => [
|
||||
"apps" => ["admin_audit"],
|
||||
],
|
||||
|
||||
Find detailed documentation on auditable events for enterprises in our `customer portal <https://portal.nextcloud.com/article/using-the-audit-log-44.html>`_.
|
||||
|
||||
Integrating into the Web Interface
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The built-in NC ``logreader`` app (which is what provides the *Administration settings->Logging* interface) only accesses the file-based ``nextcloud.log``. The **admin_audit** app log output, however, can be integrated into the web interface by configuring it to *also* log to the ``nextcloud.log``.
|
||||
|
||||
Add the following to your ``config.php`` (adjusting the path to your own ``nextcloud.log`` path):
|
||||
|
||||
::
|
||||
|
||||
'log.condition' => [
|
||||
'apps' => [ 'admin_audit'],
|
||||
],
|
||||
'logfile_audit' => '/var/www/html/data/nextcloud.log',
|
||||
|
||||
Configuring through admin_audit app settings
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Previously the audit logfile was defined in the app config. This config is still used when the system config is not provided, but is considered a legacy parameter.
|
||||
|
||||
::
|
||||
|
||||
occ config:app:set admin_audit logfile --value=/var/log/nextcloud/audit.log
|
||||
|
||||
Find detailed documentation on auditable events for enterprises in our `customer portal <https://portal.nextcloud.com/article/using-the-audit-log-44.html>`_.
|
||||
|
||||
.. _PHP date function: http://www.php.net/manual/en/function.date.php
|
||||
|
||||
Workflow log
|
||||
|
||||
@ -161,6 +161,17 @@ This output option is available on all list and list-like commands:
|
||||
``status``, ``check``, ``app:list``, ``config:list``, ``encryption:status``
|
||||
and ``encryption:list-modules``
|
||||
|
||||
Environment variables
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
``sudo`` does not forward environment variables by default. Put the variables before the ``php`` command::
|
||||
|
||||
sudo -u www-data NC_debug=true php occ status
|
||||
|
||||
Alternatively, you can ``export`` the variable or use the ``-E`` switch for ``sudo``::
|
||||
|
||||
NC_debug=true sudo -E -u www-data php occ status
|
||||
|
||||
Enabling autocompletion
|
||||
-----------------------
|
||||
|
||||
|
||||
@ -14,16 +14,21 @@ Modify the appearance of Nextcloud
|
||||
|
||||
You can change the following parameters of the look and feel on your instance:
|
||||
|
||||
.. figure:: ../configuration_server/images/theming1.png
|
||||
|
||||
* Name (e.g. ACME Inc. Cloud)
|
||||
* Web Address (e.g. https://acme.inc/)
|
||||
* Web link (e.g. https://acme.inc/)
|
||||
* Slogan
|
||||
* Color: The color of header bar, checkboxes and folder icon
|
||||
* Logo: The logo will appear in the header and on the log in page. Default has 62/34 px.
|
||||
* Login image: The background image of the login page
|
||||
* Background and login image: The background image
|
||||
|
||||
.. figure:: ../configuration_server/images/theming2.png
|
||||
|
||||
* Additional legal links (Legal notice and Privacy policy link)
|
||||
* Custom header logo and favicon as alternative to auto-generation based on logo
|
||||
|
||||
.. figure:: ../configuration_server/images/theming.png
|
||||
* Disable user theming: Although you can select and customize your instance, users can change their background and colors. If you want to enforce your customization, you can toggle this on.
|
||||
|
||||
|
||||
Configure theming through CLI
|
||||
-----------------------------
|
||||
@ -34,9 +39,17 @@ The following values are available to be set through this:
|
||||
|
||||
- name, url, imprintUrl, privacyUrl, slogan, color ``occ theming:config name "My Example Cloud"``
|
||||
- background, logo, favicon, logoheader ``occ theming:config logo /tmp/mylogo.png``
|
||||
- disable-user-theming (yes/no) ``occ theming:config disable-user-theming yes``
|
||||
|
||||
.. note:: Images require to be read from a local file on the Nextcloud server
|
||||
|
||||
Use a color instead of an image as background:
|
||||
|
||||
::
|
||||
|
||||
occ theming:config color "#0082c9"
|
||||
occ theming:config background backgroundColor
|
||||
|
||||
Theming of icons
|
||||
----------------
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/apps?filter=enabled
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/apps?filter=enabled -H "OCS-APIRequest: true"
|
||||
|
||||
* Gets enabled apps
|
||||
|
||||
@ -64,7 +64,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/apps/files
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/apps/files -H "OCS-APIRequest: true"
|
||||
|
||||
* Get app info for the ``files`` app
|
||||
|
||||
@ -121,7 +121,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/apps/files_texteditor
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/apps/files_texteditor -H "OCS-APIRequest: true"
|
||||
|
||||
* Enable the ``files_texteditor`` app
|
||||
|
||||
@ -157,7 +157,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/apps/files_texteditor
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/apps/files_texteditor -H "OCS-APIRequest: true"
|
||||
|
||||
* Disable the ``files_texteditor`` app
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/groups?search=adm
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/groups?search=adm -H "OCS-APIRequest: true"
|
||||
|
||||
* Returns list of groups matching the search string.
|
||||
|
||||
@ -67,7 +67,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/groups -d groupid="newgroup"
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/groups -d groupid="newgroup" -H "OCS-APIRequest: true"
|
||||
|
||||
* Adds a new group called ``newgroup``
|
||||
|
||||
@ -103,7 +103,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/groups/admin
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/groups/admin -H "OCS-APIRequest: true"
|
||||
|
||||
* Returns a list of users in the ``admin`` group
|
||||
|
||||
@ -145,7 +145,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X GET https://admin:secret@example.com/ocs/v1.php/cloud/groups/mygroup/subadmins
|
||||
$ curl -X GET https://admin:secret@example.com/ocs/v1.php/cloud/groups/mygroup/subadmins -H "OCS-APIRequest: true"
|
||||
|
||||
* Return the subadmins of the group: ``mygroup``
|
||||
|
||||
@ -191,7 +191,7 @@ Examples
|
||||
|
||||
::
|
||||
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/groups/mygroup -d key="displayname" -d value="My Group Name"
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/groups/mygroup -d key="displayname" -d value="My Group Name" -H "OCS-APIRequest: true"
|
||||
|
||||
* Updates the display name for the group ``mygroup``
|
||||
|
||||
@ -229,7 +229,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/groups/mygroup
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/groups/mygroup -H "OCS-APIRequest: true"
|
||||
|
||||
* Delete the group ``mygroup``
|
||||
|
||||
|
||||
@ -37,7 +37,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/users -d userid="Frank" -d password="frankspassword"
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/users -d userid="Frank" -d password="frankspassword" -H "OCS-APIRequest: true"
|
||||
|
||||
* Creates the user ``Frank`` with password ``frankspassword``
|
||||
* optionally groups can be specified by one or more ``groups[]`` query parameters:
|
||||
@ -79,7 +79,7 @@ Example
|
||||
^^^^^^^
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/users?search=Frank
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/users?search=Frank -H "OCS-APIRequest: true"
|
||||
|
||||
* Returns list of users matching the search string.
|
||||
|
||||
@ -120,7 +120,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank -H "OCS-APIRequest: true"
|
||||
|
||||
* Returns information on the user ``Frank``
|
||||
|
||||
@ -189,13 +189,13 @@ Examples
|
||||
|
||||
::
|
||||
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank -d key="email" -d value="franksnewemail@example.org"
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank -d key="email" -d value="franksnewemail@example.org" -H "OCS-APIRequest: true"
|
||||
|
||||
* Updates the email address for the user ``Frank``
|
||||
|
||||
::
|
||||
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank -d key="quota" -d value="100MB"
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank -d key="quota" -d value="100MB" -H "OCS-APIRequest: true"
|
||||
|
||||
* Updates the quota for the user ``Frank``
|
||||
|
||||
@ -235,7 +235,7 @@ Examples
|
||||
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/user/fields
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/user/fields -H "OCS-APIRequest: true"
|
||||
|
||||
* Gets the list of fields
|
||||
|
||||
@ -282,7 +282,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/disable
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/disable -H "OCS-APIRequest: true"
|
||||
|
||||
* Disables the user ``Frank``
|
||||
|
||||
@ -321,7 +321,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/enable
|
||||
$ curl -X PUT http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/enable -H "OCS-APIRequest: true"
|
||||
|
||||
* Enables the user ``Frank``
|
||||
|
||||
@ -360,7 +360,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank -H "OCS-APIRequest: true"
|
||||
|
||||
* Deletes the user ``Frank``
|
||||
|
||||
@ -397,7 +397,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/groups
|
||||
$ curl -X GET http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/groups -H "OCS-APIRequest: true"
|
||||
|
||||
* Retrieves a list of groups of which ``Frank`` is a member
|
||||
|
||||
@ -445,7 +445,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/groups -d groupid="newgroup"
|
||||
$ curl -X POST http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/groups -d groupid="newgroup" -H "OCS-APIRequest: true"
|
||||
|
||||
* Adds the user ``Frank`` to the group ``newgroup``
|
||||
|
||||
@ -488,7 +488,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/groups -d groupid="newgroup"
|
||||
$ curl -X DELETE http://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/groups -d groupid="newgroup" -H "OCS-APIRequest: true"
|
||||
|
||||
* Removes the user ``Frank`` from the group ``newgroup``
|
||||
|
||||
@ -530,7 +530,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X POST https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/subadmins -d groupid="group"
|
||||
$ curl -X POST https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/subadmins -d groupid="group" -H "OCS-APIRequest: true"
|
||||
|
||||
* Makes the user ``Frank`` a subadmin of the ``group`` group
|
||||
|
||||
@ -572,7 +572,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X DELETE https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/subadmins -d groupid="oldgroup"
|
||||
$ curl -X DELETE https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/subadmins -d groupid="oldgroup" -H "OCS-APIRequest: true"
|
||||
|
||||
* Removes ``Frank's`` subadmin rights from the ``oldgroup`` group
|
||||
|
||||
@ -611,7 +611,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X GET https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/subadmins
|
||||
$ curl -X GET https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/subadmins -H "OCS-APIRequest: true"
|
||||
|
||||
* Returns the groups of which ``Frank`` is a subadmin
|
||||
|
||||
@ -652,7 +652,7 @@ Example
|
||||
|
||||
::
|
||||
|
||||
$ curl -X POST https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/welcome
|
||||
$ curl -X POST https://admin:secret@example.com/ocs/v1.php/cloud/users/Frank/welcome -H "OCS-APIRequest: true"
|
||||
|
||||
* Sends the welcome email to ``Frank``
|
||||
|
||||
|
||||
7
admin_manual/file_workflows/configuration.rst
Normal file
@ -0,0 +1,7 @@
|
||||
==================
|
||||
Flow configuration
|
||||
==================
|
||||
|
||||
Administrators can disable user flows since they can have an impact on the performance of a system and you might not want to give users the ability to define their own flows rules. They can be disabled through the following command::
|
||||
|
||||
occ config:app:set workflowengine user_scope_disabled --value yes
|
||||
@ -1,11 +1,12 @@
|
||||
==============
|
||||
File workflows
|
||||
==============
|
||||
====
|
||||
Flow
|
||||
====
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
configuration
|
||||
access_control
|
||||
automated_tagging
|
||||
retention
|
||||
|
||||
BIN
admin_manual/groupware/images/azure_xoauth2/1.png
Normal file
|
After Width: | Height: | Size: 204 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/10.png
Normal file
|
After Width: | Height: | Size: 268 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/2.png
Normal file
|
After Width: | Height: | Size: 141 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/3.png
Normal file
|
After Width: | Height: | Size: 196 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/4.png
Normal file
|
After Width: | Height: | Size: 107 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/5.png
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/6.png
Normal file
|
After Width: | Height: | Size: 101 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/7.png
Normal file
|
After Width: | Height: | Size: 129 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/8.png
Normal file
|
After Width: | Height: | Size: 220 KiB |
BIN
admin_manual/groupware/images/azure_xoauth2/9.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
@ -10,3 +10,68 @@ The Mail app supports account delegation if the delegation is handled by the mai
|
||||
In mailcow, for example, the setting is called *Also allowed to send as user*.
|
||||
|
||||
.. warning:: Unless paired with shared *Sent* mailboxes or handled otherwise by the mail server, sent messages will be stored in the sender's personal *Sent* mailbox.
|
||||
|
||||
|
||||
XOAUTH2 Authentication with Microsoft Azure AD
|
||||
----------------------------------------------
|
||||
|
||||
.. versionadded:: 3.0.0
|
||||
|
||||
The Mail app supports XOAUTH2 authentication with hosted Microsoft Outlook accounts. An app has to be registered in the Microsoft Azure web interface and its credentials have to be supplied to the Nextcloud instance. You can find relevant settings in the Groupware section of the admin settings.
|
||||
|
||||
Step 1: Open the Azure AD Dashboard
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Visit the `Azure portal <https://portal.azure.com>`_ and navigate to the Azure AD dashboard.
|
||||
|
||||
.. figure:: images/azure_xoauth2/1.png
|
||||
|
||||
Step 2: Create a new app registration
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. figure:: images/azure_xoauth2/2.png
|
||||
|
||||
Chose a name, allow organizational and personal Microsoft accounts. Configure a web app and copy the redirect URI from the groupware settings of your Nextcloud instance. Have a look at step 8 on where to find the redirect URI. Finally, click on register to proceed.
|
||||
|
||||
.. figure:: images/azure_xoauth2/3.png
|
||||
|
||||
Step 3: Copy the client ID
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
This ID will be needed later for the Nextcloud settings.
|
||||
|
||||
.. figure:: images/azure_xoauth2/4.png
|
||||
|
||||
Step 4: Create a new client secret
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. figure:: images/azure_xoauth2/5.png
|
||||
|
||||
Chose a descriptive name for the secret and set the an appropriate expiration date. Click on add to create the secret.
|
||||
|
||||
.. figure:: images/azure_xoauth2/6.png
|
||||
|
||||
Step 5: Copy the client secret
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Copy the client secret manually or by clicking on the copy button. You can find it in the value column. The secret will also be needed later for the Nextcloud settings.
|
||||
|
||||
.. figure:: images/azure_xoauth2/7.png
|
||||
|
||||
Step 6: Configure Nextcloud
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Open the groupware settings in the Nextcloud admin settings and fill in the client ID and client secret. Leave the tenant ID as is (common). You can also find the redirect URI here. Click on save to proceed.
|
||||
|
||||
.. warning:: Using a custom tenant ID is not covered by this guide. Only configure it if you are an expert and changed the supported account types in step 2.
|
||||
|
||||
.. figure:: images/azure_xoauth2/8.png
|
||||
|
||||
Step 7: Connect Microsoft Outlook accounts
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Congratulations! You are now able to use hosted Microsoft Outlook accounts in the Mail app. Use your Microsoft account email and any password when adding your account. The password will be discarded and you will be prompted with a Microsoft consent popup to log in to your account.
|
||||
|
||||
.. figure:: images/azure_xoauth2/9.png
|
||||
|
||||
.. figure:: images/azure_xoauth2/10.png
|
||||
|
||||
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 84 KiB |
@ -88,6 +88,15 @@ setting the ``enable_previews`` switch to ``false`` in ``config.php``. As an
|
||||
administrator you are also able to manage which preview providers are enabled by
|
||||
modifying the ``enabledPreviewProviders`` option switch.
|
||||
|
||||
Disable Debug Mode
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Verify that ``debug`` is ``false`` in your ``config.php``. The default is ``false``
|
||||
in new installations (or when not specified). It should not be enabled in production
|
||||
environments or outside of targeted troubleshooting situations. When enabled, things
|
||||
like server-wide WebDAV collection listings are permitted. It is intended for local
|
||||
development and usage in controlled environments only.
|
||||
|
||||
.. _use_https_label:
|
||||
|
||||
Use HTTPS
|
||||
|
||||
@ -165,7 +165,8 @@ server {
|
||||
fastcgi_max_temp_file_size 0;
|
||||
}
|
||||
|
||||
location ~ \.(?:css|js|svg|gif|png|jpg|ico|wasm|tflite|map)$ {
|
||||
# Serve static files
|
||||
location ~ \.(?:css|js|mjs|svg|gif|png|jpg|ico|wasm|tflite|map)$ {
|
||||
try_files $uri /index.php$request_uri;
|
||||
add_header Cache-Control "public, max-age=15778463, $asset_immutable";
|
||||
access_log off; # Optional: Don't log access to assets
|
||||
|
||||
@ -163,7 +163,8 @@ server {
|
||||
fastcgi_max_temp_file_size 0;
|
||||
}
|
||||
|
||||
location ~ \.(?:css|js|svg|gif|png|jpg|ico|wasm|tflite|map)$ {
|
||||
# Serve static files
|
||||
location ~ \.(?:css|js|mjs|svg|gif|png|jpg|ico|wasm|tflite|map)$ {
|
||||
try_files $uri /nextcloud/index.php$request_uri;
|
||||
add_header Cache-Control "public, max-age=15778463, $asset_immutable";
|
||||
access_log off; # Optional: Don't log access to assets
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
.. _nginx-config:
|
||||
|
||||
===================
|
||||
NGINX configuration
|
||||
===================
|
||||
@ -10,15 +12,19 @@ NGINX configuration
|
||||
These configurations examples were originally provided by `@josh4trunks <https://github.com/josh4trunks>`_
|
||||
and are exclusively community-maintained. (Thank you contributors!)
|
||||
|
||||
- You need to insert the following code into **your Nginx configuration file.**
|
||||
- Adjust **server_name**, **root**, **ssl_certificate** and
|
||||
**ssl_certificate_key** to suit your needs.
|
||||
- Make sure your SSL certificates are readable by the server (see `nginx HTTP
|
||||
SSL Module documentation <https://wiki.nginx.org/HttpSslModule>`_).
|
||||
- Be careful about line breaks if you copy the examples, as long lines may be
|
||||
broken for page formatting.
|
||||
- Some environments might need a ``cgi.fix_pathinfo`` set to ``1`` in their
|
||||
``php.ini``.
|
||||
- You need to insert the following code into **your Nginx configuration file**. Choose the appropriate example based on whether you are deploying :ref:`nginx_webroot_example` (i.e. :code:`https://cloud.example.com/`) or :ref:`nginx_subdir_example` (i.e. :code:`https://cloud.example.com/nextcloud`).
|
||||
- Adjust the server directive under :code:`upstream php-handler` to match your PHP installation's configured FPM listener (a misconfiguration here will result in a :code:`502 Bad Gateway` - see :ref:`nginx_php_handler_tips` for details)
|
||||
- Adjust the existing :code:`server_name` directives found under *both* :code:`server` sections to your real hostname
|
||||
- Adjust :code:`root` to the webroot of your Nextcloud installation
|
||||
- Adjust the :code:`ssl_certificate` and :code:`ssl_certificate_key` directives to the real paths for your signed
|
||||
certificate and private key. Make sure your SSL certificates are readable by the nginx server process (see `nginx HTTPS SSL
|
||||
Module documentation <https://wiki.nginx.org/HttpSslModule>`_).
|
||||
- Be careful about line breaks if you copy the examples, as long lines may be
|
||||
broken for page display and result in an invalid configuration files.
|
||||
- Some environments might need a ``cgi.fix_pathinfo`` set to ``1`` in their
|
||||
``php.ini``.
|
||||
|
||||
.. nginx_webroot_example:
|
||||
|
||||
Nextcloud in the webroot of NGINX
|
||||
---------------------------------
|
||||
@ -30,6 +36,8 @@ webroot of your nginx installation. In this example it is
|
||||
.. literalinclude:: nginx-root.conf.sample
|
||||
:language: nginx
|
||||
|
||||
.. nginx_subdir_example:
|
||||
|
||||
Nextcloud in a subdir of the NGINX webroot
|
||||
------------------------------------------
|
||||
|
||||
@ -51,6 +59,25 @@ The configuration differs from the "Nextcloud in webroot" configuration above in
|
||||
Tips and tricks
|
||||
---------------
|
||||
|
||||
.. nginx_php_handler_tips:
|
||||
|
||||
PHP-Handler Configuration / Avoiding "502 Bad Gateway"
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The :code:`server` line within the :code:`upstream php-handler` above needs to be adjusted to reflect your local PHP FPM configuration. It must match whatever is configured for the :code:`listen` directive within the PHP FPM pool you'll be using for NC.
|
||||
|
||||
Many Linux distributions define a listener for a default PHP-FPM pool called :code:`www` in a file called :code:`www.conf` located somewhere like :code:`/etc/php/8.1/pool.d`.
|
||||
|
||||
Look for the line that is set to something like:
|
||||
|
||||
:code:`listen = /var/run/php/php-fpm.sock`
|
||||
or
|
||||
:code:`listen = 127.0.0.1:9000`
|
||||
|
||||
If PHP FPM will be running on the same host as NGINX (it's probably a safe assumption it will be if you're unsure), it is recommended you use the UNIX socket (i.e. :code:`/var/run/php/php-fpm.sock`) rather than TCP (:code:`127.0.0.1:9000`) for maximum performance (though either will work as long as your NGINX and PHP FPM configurations match).
|
||||
|
||||
After deciding how you'd prefer to connect NGINX with PHP FPM (and, if necessary, updating your local PHP FPM configuration and restarting FPM), set your NGINX configuration's :code:`upstream php-handler` :code:`server` to match your preference (Note: If using UNIX sockets, prepend :code:`unix:` in the NGINX configuration, but *not* in your PHP FPM :code:`www.conf`).
|
||||
|
||||
Suppressing log messages
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
@ -23,6 +23,26 @@ reduce latency due to multiple abstraction layers.
|
||||
|
||||
.. _caching:
|
||||
|
||||
Log Levels
|
||||
----------
|
||||
|
||||
Verify the ``loglevel`` in your ``config.php``. The default the log level is
|
||||
set to ``2`` (WARN) in new installations. Sometimes this parameter is inadvertently
|
||||
left at the DEBUG level (``0``) after a troubleshooting event. In some older installations this
|
||||
parameter may also be something other than the default. Use ``0`` (DEBUG)
|
||||
when you have a problem to diagnose, and then reset your log level to a
|
||||
less-verbose level. DEBUG outputs a lot of information, and can affect your
|
||||
server performance.
|
||||
|
||||
Debug Mode
|
||||
----------
|
||||
|
||||
Verify that ``debug`` is ``false`` in your ``config.php``. The default is ``false`` in new
|
||||
installations (or when not specified). While similar to the DEBUG logging level, this option
|
||||
also disables various optimizations (to faciliate easier debugging) and generates additional
|
||||
debug output both at the browser level and server-side. It should not be enabled in production
|
||||
environments outside of isolated troubleshooting situations.
|
||||
|
||||
Caching
|
||||
-------
|
||||
|
||||
@ -30,6 +50,12 @@ Caching improves performance by storing data, code, and other objects in memory.
|
||||
Memory cache configuration for the Nextcloud server must be installed and configured.
|
||||
See :doc:`../configuration_server/caching_configuration`.
|
||||
|
||||
Compression
|
||||
-----------
|
||||
|
||||
Enabling compression in your web server for JavaScript, CSS, and SVG files improves the
|
||||
performance because fewer bytes need to be transferred to the clients.
|
||||
|
||||
Using MariaDB/MySQL instead of SQLite
|
||||
-------------------------------------
|
||||
|
||||
@ -137,6 +163,11 @@ Previews
|
||||
It is possible to speed up preview generation using an
|
||||
external microservice: `Imaginary <https://github.com/h2non/imaginary>`_.
|
||||
|
||||
.. warning::
|
||||
|
||||
Imaginary is currently incompatible with server-side-encryption.
|
||||
See https://github.com/nextcloud/server/issues/34262
|
||||
|
||||
We strongly recommend running our custom docker image that is more up to date than the official image.
|
||||
You can find the image at `docker.io/nextcloud/aio-imaginary:latest`.
|
||||
|
||||
|
||||
@ -108,13 +108,13 @@ of our mobile apps.
|
||||
Files App
|
||||
^^^^^^^^^
|
||||
|
||||
- **iOS** 14.0+
|
||||
- **iOS** 15.0+
|
||||
- **Android** 6.0+
|
||||
|
||||
Talk App
|
||||
^^^^^^^^
|
||||
|
||||
- **iOS** 14.0+
|
||||
- **iOS** 15.0+
|
||||
- **Android** 6.0+
|
||||
- **Nextcloud Server** 14.0+
|
||||
- **Nextcloud Talk** 4.0+
|
||||
|
||||
@ -249,7 +249,8 @@ subfolder like ``nextcloud``, then ``https://example.com/nextcloud/remote.php/da
|
||||
For the first case the :file:`.htaccess` file shipped with Nextcloud should do
|
||||
this work for you when you're running Apache. You need to make sure that your
|
||||
Web server is using this file. Additionally, you need the mod_rewrite Apache
|
||||
module installed to process these redirects. When running Nginx please refer to
|
||||
module installed and ``AllowOverride All`` set in your :file:`apache2.conf`
|
||||
or vHost-file to process these redirects. When running Nginx please refer to
|
||||
:doc:`../installation/nginx`.
|
||||
|
||||
|
||||
@ -259,14 +260,23 @@ document root of your Web server and add the following lines::
|
||||
|
||||
<IfModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
RewriteRule ^/\.well-known/carddav /nextcloud/remote.php/dav [R=301,L]
|
||||
RewriteRule ^/\.well-known/caldav /nextcloud/remote.php/dav [R=301,L]
|
||||
RewriteRule ^/\.well-known/webfinger /nextcloud/index.php/.well-known/webfinger [R=301,L]
|
||||
RewriteRule ^/\.well-known/nodeinfo /nextcloud/index.php/.well-known/nodeinfo [R=301,L]
|
||||
RewriteRule ^\.well-known/carddav /nextcloud/remote.php/dav [R=301,L]
|
||||
RewriteRule ^\.well-known/caldav /nextcloud/remote.php/dav [R=301,L]
|
||||
RewriteRule ^\.well-known/webfinger /nextcloud/index.php/.well-known/webfinger [R=301,L]
|
||||
RewriteRule ^\.well-known/nodeinfo /nextcloud/index.php/.well-known/nodeinfo [R=301,L]
|
||||
</IfModule>
|
||||
|
||||
Make sure to change /nextcloud to the actual subfolder your Nextcloud instance is running in.
|
||||
|
||||
.. note:: If you put the above directives directly into an Apache
|
||||
configuration file (usually within ``/etc/apache2/``)
|
||||
instead of ``.htaccess``, you need to prepend the first argument of
|
||||
each ``RewriteRule`` option with a forward slash ``/``, for example
|
||||
``^/\.well-known/carddav``.
|
||||
This is because Apache normalizes paths for the use in ``.htaccess``
|
||||
files by dropping any number of leading slashes, but it does not
|
||||
do so for the use in its main configuration files.
|
||||
|
||||
If you are running NGINX, make sure ``location = /.well-known/carddav {`` and ``location = /.well-known/caldav {`` are properly configured as described in :doc:`../installation/nginx`, adapt to use a subfolder if necessary.
|
||||
|
||||
Now change the URL in the client settings to just use:
|
||||
|
||||
@ -16,6 +16,7 @@ These sub pages will cover the most important changes in Nextcloud, as well as s
|
||||
|
||||
upgrade_to_28.rst
|
||||
upgrade_to_27.rst
|
||||
upgrade_to_26.rst
|
||||
|
||||
Changelog
|
||||
---------
|
||||
|
||||
19
admin_manual/release_notes/upgrade_to_26.rst
Normal file
@ -0,0 +1,19 @@
|
||||
=======================
|
||||
Upgrade to Nextcloud 26
|
||||
=======================
|
||||
|
||||
System requirements
|
||||
-------------------
|
||||
|
||||
* PHP 8.2 is now supported, but 8.1 is recommended.
|
||||
* PHP7.4 is no longer supported.
|
||||
|
||||
System email
|
||||
------------
|
||||
|
||||
The software component to send system emails (notifications, invites, password reset, etc) had to be replaced. The new library should work without any changes out of the box for most setups. Only NTLM/Exchange is kown to be no longer supported. See :ref:`email-smtp-config`.
|
||||
|
||||
Web server configuration
|
||||
------------------------
|
||||
|
||||
* The recommended :ref:`nginx configuration<nginx-config>` changed.
|
||||
@ -11,4 +11,9 @@ System requirements
|
||||
Exposed system address book
|
||||
---------------------------
|
||||
|
||||
Nextcloud 27 exposes the :ref:`system address book<system-address-book>`. Restrict the enumeration settings if your users should not see other users.
|
||||
Nextcloud 27 exposes the :ref:`system address book<system-address-book>`. Restrict the enumeration settings if your users should not see other users.
|
||||
|
||||
Web server configuration
|
||||
------------------------
|
||||
|
||||
* The recommended :ref:`nginx configuration<nginx-config>` changed as Nextcloud now supports module javascript with the ``.mjs`` extension, make sure to add this extension to the list of static files.
|
||||
|
||||
1
build/openapi-extractor
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 13d22c9cc3cbaa138d7268d48152b74bc4eeda33
|
||||
10
developer_manual/_static/openapi.html
Normal file
@ -0,0 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>OCS API</title>
|
||||
<script src="stoplight-elements.js"></script>
|
||||
<link rel="stylesheet" href="stoplight-elements.css">
|
||||
</head>
|
||||
<body>
|
||||
<elements-api apiDescriptionUrl="openapi.json" router="hash" hideTryIt="true" logo="logo-blue.png"></elements-api>
|
||||
</body>
|
||||
</html>
|
||||
@ -13,7 +13,37 @@ Composer
|
||||
|
||||
You can add 3rd party php packages with `Composer`_. Composer will download the specified packages to a directory of your choice, typically to ``/vendor``. In order to benefit from Composer's autoloader, you'll want to add a ``require_once`` to the ``register`` method of your ``Application`` class in the :ref:`bootstrapping<Bootstrapping>` code of your app.
|
||||
|
||||
.. note:: Be careful with which packages you add to an app. Php can not load two version of the same class twice, hence there can be conflicts between Nextcloud Server and an app or between two or more apps if they ship the same library. So try to keep the number of libraries to a minimum.
|
||||
.. _app-composer-dependency-hell:
|
||||
|
||||
Dependency hell
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Be careful with which packages you add to an app. PHP can not load two version of the same class twice, hence there can be conflicts between Nextcloud Server and an app or between two or more apps if they require the same package. So try to keep the number of production dependencies to a minimum and see :ref:`composer-bin-tools`.
|
||||
|
||||
Conflict example
|
||||
****************
|
||||
|
||||
To illustrate the problem imagine app *A* depends on package *foo* in version 1, app *B* depends on package *foo* in version 2. The package *foo* had a breaking change to which app *B* has been adjusted, *A* uses the old API.
|
||||
|
||||
Both apps ship a Composer autoloader that autoloads the *foo* functions and classes. There is a race between the two autoloaders. If *A*'s autoloader is asked to load the class first, then v1 will be used. If *B*'s autoloader loads functions and classes first it will be v2. In some scenarios there might be classes of v1 and v2 when autoloaders are invoked without a defined order.
|
||||
|
||||
Depending on which functions and classes are loaded, app *A* might work or break. The same applies to *B*.
|
||||
|
||||
.. _app-composer-bin-tools:
|
||||
|
||||
Development tools
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
It is very common for an app to use CLI tools for syntax checks, testing and building. Since many tools depend on common Composer packages like ``psr/*`` and ``symfony/console``, it is likely that apps produce a :ref:`dependency hell <app-composer-dependency-hell>` on development environments.
|
||||
|
||||
The dependency hell for CLI tools can be avoided by using the *Composer bin plugin*. It's a composer plugin that puts development dependencies into sub directorory with a dedicated autoloader. That autoloader is only used if the CLI tool is used. For Nextcloud apps this means two apps can use conflicting versions of one tool. Moreover dependency conflicts between the tools of one app are no longer an issue.
|
||||
|
||||
Tools known to be problematic that should be moved into bin plugin directories include
|
||||
|
||||
* ``friendsofphp/php-cs-fixer``
|
||||
* ``phpunit/phpunit``
|
||||
* ``vimeo/psalm``
|
||||
|
||||
Please see the `package page <https://packagist.org/packages/bamarni/composer-bin-plugin>`_ for up-to-date installation instructions.
|
||||
|
||||
.. _Composer: https://getcomposer.org/
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
.. _app-upgrade-guide:
|
||||
|
||||
=================
|
||||
App upgrade guide
|
||||
=================
|
||||
|
||||
.. _app-upgrade-guide:
|
||||
|
||||
Once you've created and published the first version of your app, you will want to keep it up to date with the latest Nextcloud features.
|
||||
|
||||
These sub pages will cover the most important changes in Nextcloud, as well as some guides on how to upgrade existing apps.
|
||||
|
||||
@ -22,6 +22,11 @@ Make sure your ``appinfo/info.xml`` allows for Nextcloud 27.
|
||||
Front-end changes
|
||||
-----------------
|
||||
|
||||
General
|
||||
^^^^^^^
|
||||
|
||||
* With Nextcloud 27 you can also provide module javascript files with the ``.mjs`` file extension. For backwards compatibilty you can provide files with the same name but the ``.js`` file extension which will be loaded for Nextcloud versions before 27.
|
||||
|
||||
Added APIs
|
||||
^^^^^^^^^^
|
||||
|
||||
@ -30,6 +35,11 @@ Added APIs
|
||||
Back-end changes
|
||||
----------------
|
||||
|
||||
Optimized class loader
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This documentation previously recommended using any composer class loader optimization in :ref:`app-custom-classloader`. Unfortunately authoritative class maps do not work with the upgrade process of Nextcloud apps. When app code is replaced during an app upgrade, the autoloader has to load *new* classes as well. Authoritative class loaders don't do that by design. Use the simple class map optimization only.
|
||||
|
||||
Removal of PSR-0 class loader
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@ -45,24 +55,38 @@ Added APIs
|
||||
* Added a new interface ``\OCP\BackgroundJob\IParallelAwareJob`` that ``\OCP\BackgroundJob\Job`` now implements. It can be used to allow specifying that multiple instances of a job should not be run at the same time. Also added ``\OCP\BackgroundJob\IJobList#hasReservedJob(?string $className = null)`` method to check the condition (`nextcloud/server#37835 <https://github.com/nextcloud/server/pull/37835>`_)
|
||||
* New property ``$actionLabel`` has been added to the ``\OCP\Files\Template\TemplateFileCreator`` class with a respective setter ``TemplateFileCreator::setActionLabel`` and getter ``TemplateFileCreator::getActionLabel``. (`nextcloud/server#37929 <https://github.com/nextcloud/server/pull/37929>`_ + `nextcloud/server#37955 <https://github.com/nextcloud/server/pull/37955>`_)
|
||||
* A new interface ``\OCP\Group\Backend\ISearchableGroupBackend`` was added for group backends supporting new method ``searchInGroup`` to search among a group users in an efficient way. (`nextcloud/server#32866 <https://github.com/nextcloud/server/pull/32866>`_)
|
||||
* ``\OCP\App\IAppManager`` has the following new methods (`nextcloud/server#36591 <https://github.com/nextcloud/server/pull/36591>`_):
|
||||
* ``loadApp(string $app): void`` Load an app, if not already loaded
|
||||
* ``isAppLoaded(string $app): bool`` Check if an app is loaded
|
||||
* ``loadApps(array $types = []): bool`` Loads all apps. If $types is set to non-empty array, only apps of those types will be loaded.
|
||||
* ``isType(string $app, array $types): bool`` Check if an app is of a specific type
|
||||
* New method ``atomicRetry()`` as been added to the ``\OCP\AppFramework\Db\TTransactional`` trait as a wrapper around atomic() to retry database operations after a retryable exception like database deadlocks occurred (`nextcloud/server#38030 <https://github.com/nextcloud/server/pull/38030>`_)
|
||||
|
||||
Changed APIs
|
||||
^^^^^^^^^^^^
|
||||
|
||||
* ``\OCP\UserMigration\ISizeEstimationMigrator::getEstimatedExportSize()`` now returns ``int|float`` to support 32-bit systems. (`nextcloud/server#38104 <https://github.com/nextcloud/server/pull/38104>`_)
|
||||
* ``\OCP\Files\FileInfo::getOwner`` documented return type is now nullable, to match what was already returned by the implementation (`nextcloud/server#36836 <https://github.com/nextcloud/server/pull/36836>`_)
|
||||
* ``\OCP\Files\File::fopen`` and ``\OCP\Files\SimpleFS\ISimpleFile::read`` documented return types are now nullable, to match what was already returned by the implementations (`nextcloud/server#36836 <https://github.com/nextcloud/server/pull/36836>`_)
|
||||
* ``\OCP\Files\File::getContent`` may now also throw a ``GenericFileException`` in cases where it would previously return false (while documented to always return a string, which should now be the case - `nextcloud/server#37943 <https://github.com/nextcloud/server/pull/37943>`_).
|
||||
|
||||
Deprecated APIs
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
* ``\OCP\AppFramework\Utility\ITimeFactory::getTime()`` and ``\OCP\AppFramework\Utility\ITimeFactory::getDateTime()`` were deprecated, because the interface is now a ``\PSR\Clock\ClockInterface`` following the `PSR-20standard <https://www.php-fig.org/psr/psr-20/#21-clockinterface>`_. (`nextcloud/server#35872 <https://github.com/nextcloud/server/pull/35872>`_)
|
||||
* ``\OCP\GroupInterface::usersInGroup()`` is deprecated in favor of newly added ``\OCP\Group\Backend\ISearchableGroupBackend`` interface. (`nextcloud/server#32866 <https://github.com/nextcloud/server/pull/32866>`_)
|
||||
* In ``\OC_App``, the following methods are deprecated: ``isAppLoaded``, ``loadApp``, ``isType``. Use the new methods from ``\OCP\App\IAppManager`` instead (`nextcloud/server#36591 <https://github.com/nextcloud/server/pull/36591>`_).
|
||||
|
||||
Removed APIs
|
||||
^^^^^^^^^^^^
|
||||
|
||||
* Intermediate transition event classes ``\OCP\WorkflowEngine\IEntityCompat`` and ``\OCP\WorkflowEngine\IOperationCompat`` have been removed as advertised for 2023 (`nextcloud/server#37040 <https://github.com/nextcloud/server/pull/37040>`_)
|
||||
|
||||
|
||||
Behavioral changes
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
* ``\OCP\Files\Cache\CacheEntryRemovedEvent`` will now be dispatched for all files and folders inside the deleted node. (`nextcloud/server#34773 <https://github.com/nextcloud/server/pull/34773>`_)
|
||||
* ``\OCP\AppFramework\Db\IMapperException`` does now implement ``\Throwable``, previously either ``\OCP\AppFramework\Db\DoesNotExistException`` or ``\OCP\AppFramework\Db\MultipleObjectsReturnedException`` had to be caught explicitly. (`nextcloud/server#37324 <https://github.com/nextcloud/server/pull/37324>`_)
|
||||
|
||||
Client APIs
|
||||
-----------
|
||||
@ -70,4 +94,5 @@ Client APIs
|
||||
Changed APIs
|
||||
^^^^^^^^^^^^
|
||||
|
||||
* HTTP request that do not pass the *lax and strict cookie check* return a HTTP status 412 consistently now. It was HTTP 412 and 503 before depending on the endpoint. (`nextcloud/server#37316 <https://github.com/nextcloud/server/pull/37316>`_)
|
||||
* The OCS translation API was extended to return the ``from`` language attribute so in case no from was given, clients can afterwards show in the UI which language was detected and used for translating. (`nextcloud/server#38003 <https://github.com/nextcloud/server/pull/38003>`_)
|
||||
|
||||
@ -37,15 +37,23 @@ Deprecated APIs
|
||||
Removed APIs
|
||||
^^^^^^^^^^^^
|
||||
|
||||
* tbd
|
||||
* ``OC.loadScript`` and ``OC.loadStyle``: Use ``OCP.Loader`` instead.
|
||||
* ``OC.appSettings``: There is no replacement.
|
||||
|
||||
Back-end changes
|
||||
----------------
|
||||
|
||||
Development dependency hell
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Due to the popularity of CLI tools for development of Nextcloud apps, the likelihood of package conflicts has increased. It's highly recommended to see :ref:`app-composer-bin-tools` and migrate to composer bin directories.
|
||||
|
||||
Added APIs
|
||||
^^^^^^^^^^
|
||||
|
||||
* tbd
|
||||
* ``\OCP\Mail\IMessage::setSubject`` to set an email subject. See :ref:`email` for an example.
|
||||
* ``\OCP\Mail\IMessage::setHtmlBody`` and ``\OCP\Mail\IMessage::setPlainBody`` to set an email body See :ref:`email` for an example.
|
||||
* ``\OCP\IEventSourceFactory`` to create a ``OCP\IEventSource`` instance.
|
||||
|
||||
Changed APIs
|
||||
^^^^^^^^^^^^
|
||||
@ -60,4 +68,26 @@ Deprecated APIs
|
||||
Removed APIs
|
||||
^^^^^^^^^^^^
|
||||
|
||||
* tbd
|
||||
* ``\OC_App::getAppVersion``: inject ``\OCP\App\IAppManager`` and call ``\OCP\App\IAppManager::getAppVersion``.
|
||||
* ``\OC_App::getAppInfo``: inject ``\OCP\App\IAppManager`` and call ``\OCP\App\IAppManager::getAppInfo``.
|
||||
* ``\OC_App::getNavigation``: inject ``\OCP\App\IAppManager`` and call ``\OCP\App\IAppManager::getAll``.
|
||||
* ``\OC_App::getSettingsNavigation``: inject ``\OCP\App\IAppManager`` and call ``\OCP\App\IAppManager::getAll('settings')``.
|
||||
* ``\OC_App::isEnabled``: inject ``\OCP\App\IAppManager`` and call ``\OCP\App\IAppManager::isEnabledForUser``.
|
||||
* ``\OC_Defaults::getLogoClaim``: there is no replacement.
|
||||
* ``\OCP\Util::linkToPublic``: there is no replacement.
|
||||
* ``\OC_Defaults::getLogoClaim``: There is no replacement.
|
||||
* ``\OC::$server->createEventSource()`` has been removed, use ``\OC::$server->get(\OCP\IEventSourceFactory::class)->create()`` instead.
|
||||
|
||||
The factory ``\OCP\IEventSourceFactory`` works only from Nextcloud 28.
|
||||
For older versions use ``\OC::$server->createEventSource()``.
|
||||
|
||||
If you want to support Nextcloud 27 and Nextcloud 28:
|
||||
|
||||
.. code-block:: php
|
||||
|
||||
// @TODO: Remove method_exists when min-version="28"
|
||||
if (method_exists(\OC::$server, 'createEventSource')) {
|
||||
$eventSource = \OC::$server->createEventSource();
|
||||
} else {
|
||||
$eventSource = \OCP\Server::get(IEventSourceFactory::class)->create();
|
||||
}
|
||||
|
||||
@ -474,7 +474,7 @@ Templates
|
||||
A :doc:`template <front-end/templates>` can be rendered by returning a TemplateResponse. A TemplateResponse takes the following parameters:
|
||||
|
||||
* **appName**: tells the template engine in which app the template should be located
|
||||
* **templateName**: the name of the template inside the template/ folder without the .php extension
|
||||
* **templateName**: the name of the template inside the templates/ folder without the .php extension
|
||||
* **parameters**: optional array parameters that are available in the template through $_, e.g.::
|
||||
|
||||
array('key' => 'something')
|
||||
|
||||
@ -391,7 +391,6 @@ Types:
|
||||
* ``\OCP\ITempManager``
|
||||
* ``\OCP\Route\IRouter``
|
||||
* ``\OCP\ISearch``
|
||||
* ``\OCP\ISearch``
|
||||
* ``\OCP\Security\ICrypto``
|
||||
* ``\OCP\Security\IHasher``
|
||||
* ``\OCP\Security\ISecureRandom``
|
||||
@ -448,8 +447,8 @@ What not to inject:
|
||||
Accessing the container from anywhere
|
||||
-------------------------------------
|
||||
|
||||
Sometimes it can be hard to inject some service inside legacy code, in these case
|
||||
you can use :code:`OCP\Server::get(MyService::class)`. This should only be used in
|
||||
Sometimes it can be hard to inject some service inside legacy code, in these cases
|
||||
you can use :code:`OCP\Server::get(MyService::class)`. This should only be used as
|
||||
the last resort, as this makes your code more complicated to unit test and is
|
||||
considered an anti-pattern.
|
||||
|
||||
|
||||
@ -425,6 +425,16 @@ Emitted when the authentication fails, but only if the login name can be associa
|
||||
|
||||
.. versionadded:: 20
|
||||
|
||||
``\OCP\Collaboration\Reference\RenderReferenceEvent``
|
||||
*****************************************************
|
||||
|
||||
.. versionadded:: 25
|
||||
|
||||
Event emitted when apps might render references like link previews or smart picker widgets.
|
||||
|
||||
This can be used to inject scripts for extending that. Further details can be found in the
|
||||
:ref:`Reference providers` deep dive.
|
||||
|
||||
``\OCP\Contacts\Events\ContactInteractedWithEvent``
|
||||
***************************************************
|
||||
|
||||
@ -542,6 +552,13 @@ Deprecated in 20.0.0 - it can't be guaranteed that this event is triggered in al
|
||||
|
||||
Emitted before a system mail is sent. It can be used to alter the message.
|
||||
|
||||
``OCP\Preview\BeforePreviewFetchedEvent``
|
||||
*****************************************
|
||||
|
||||
.. versionadded:: 26
|
||||
|
||||
Emitted before a file preview is being fetched. It can be used to block preview rendering by throwing a ``OCP\Files\NotFoundException``.
|
||||
|
||||
``\OCP\Security\CSP\AddContentSecurityPolicyEvent``
|
||||
***************************************************
|
||||
|
||||
|
||||
@ -110,7 +110,7 @@ The last missing part is to register both classes inside **<myapp>/appinfo/info.
|
||||
`<personal>` instead.
|
||||
|
||||
Additionally since Nextcloud 23, groups can be granted authorization to access individual
|
||||
admin settings (`see admin docs <https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/admin_delegation_configuration>`_).
|
||||
admin settings (`see admin docs <https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/admin_delegation_configuration.html>`_).
|
||||
This is a feature that needs to be enabled for each admin setting class.
|
||||
To do so, the setting class needs to implement `IDelegatedSettings` instead of `ISettings`
|
||||
and implement two additional methods.
|
||||
|
||||
@ -25,7 +25,7 @@ This should be a one time webview. Which means:
|
||||
* Passwords should not be stored
|
||||
* No state should be preserved after the webview has terminated
|
||||
|
||||
To have a good user experince please consider the following things:
|
||||
To have a good user experience please consider the following things:
|
||||
|
||||
* set a proper :code:`ACCEPT_LANGUAGE` header
|
||||
* set a proper :code:`USER_AGENT` header
|
||||
|
||||
@ -4,6 +4,10 @@
|
||||
OCS API
|
||||
===============================
|
||||
|
||||
To browse the new OCS API documentation please go `here <../../_static/openapi.html>`_.
|
||||
|
||||
The old documentation is still kept as it provides some additional documentation that is not completely covered in the new documentation:
|
||||
|
||||
.. toctree::
|
||||
|
||||
ocs-api-overview
|
||||
|
||||
@ -126,7 +126,7 @@ html_short_title = "Developer Manual"
|
||||
# Add any paths that contain custom static files (such as style sheets) here,
|
||||
# relative to this directory. They are copied after the builtin static files,
|
||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
html_static_path = ['../_shared_assets/static']
|
||||
html_static_path = ['../_shared_assets/static', '_static']
|
||||
|
||||
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
|
||||
# using the given strftime format.
|
||||
|
||||
@ -6,6 +6,8 @@ Atomic components
|
||||
Buttons
|
||||
-------
|
||||
|
||||
`Buttons Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcButton>`_.
|
||||
`Penpot buttons <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=0&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
Buttons are used to initiate actions in your app. This may be a primary action, or it may be used to confirm an action in a dialog, or simply be used for any major action in your app.
|
||||
|
||||
@ -42,6 +44,9 @@ There are generally different types of buttons for different purposes:
|
||||
Action menu
|
||||
-----------
|
||||
|
||||
`Action menu Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcActions>`_.
|
||||
`Penpot action menu <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=4&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/action-menu.png
|
||||
:alt: Files action menu
|
||||
|
||||
@ -54,7 +59,7 @@ The action menu contains commonly used actions associated with an item. Each ent
|
||||
* checkboxes to quickly toggle a state, like in Mail
|
||||
|
||||
.. image:: ../images/action-menu-radio-button.gif
|
||||
:alt: Radio button in action menu in Talk
|
||||
:alt: Radio button in action menu in Files link sharing
|
||||
|
||||
* radio buttons to select from a few options, like chat notifications in Talk
|
||||
|
||||
@ -64,9 +69,9 @@ The action menu contains commonly used actions associated with an item. Each ent
|
||||
* new entry elements to quickly add items, like add a new mailbox in Mail
|
||||
|
||||
.. image:: ../images/action-menu-second-level.gif
|
||||
:alt: Second level of actions in action menu to set due date reminders in Deck
|
||||
:alt: Second level of actions in action menu to configure custom permissions for link shares in Files
|
||||
|
||||
* a second level of actions, like due date reminders in Deck
|
||||
* a second level of actions, like to configure custom permissions for link shares in Files
|
||||
|
||||
Some commonly used actions in the action menu are favoriting, renaming, downloading and deleting. Delete should always be at the last position as to not be confused with other actions.
|
||||
|
||||
@ -77,8 +82,6 @@ It is important to keep the action menu simple and its length at a minimum. Too
|
||||
|
||||
In most cases the action menu is accessed through a 3-dot menu. In certain cases, it is better to use a specific icon instead of the generic 3-dot icon. For example in Talk a paperclip icon is used for accessing the action menu for attaching an item, and a heading icon is used in Text formatting bar for heading level selection.
|
||||
|
||||
`Action menu Vue component <https://nextcloud-vue-components.netlify.app/#/Components/Actions>`_.
|
||||
|
||||
For Android and iOS, the action menu is generally opened as a bottom sheet.
|
||||
|
||||
.. _Input fields:
|
||||
@ -86,6 +89,9 @@ For Android and iOS, the action menu is generally opened as a bottom sheet.
|
||||
Input fields
|
||||
------------
|
||||
|
||||
`Input field Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcFields?id=ncinputfield>`_.
|
||||
`Penpot text fields <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=2&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. _Text input:
|
||||
|
||||
Text input
|
||||
@ -104,8 +110,11 @@ Text inputs are usually used for free-form inputs. Make sure that the label for
|
||||
Dropdowns
|
||||
^^^^^^^^^
|
||||
|
||||
`Dropdown Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcSelect>`_.
|
||||
`Penpot dropdowns <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=1&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/dropdown-find-as-you-type.gif
|
||||
:alt: Dropdown menu in settings
|
||||
:alt: Dropdown menu in Files sharing
|
||||
|
||||
Dropdowns allow the user to select one or more items from a list. Dropdowns can have predefined options from which the user can select one or more items, as seen in Contacts for selecting the type of a phone number. If there are not too many entries, you may also think about using a set of :ref:`checkboxes and radio buttons` instead.
|
||||
|
||||
@ -113,13 +122,13 @@ Although not always necessary, it is generally a good idea to have a default ite
|
||||
|
||||
Another variation of the dropdown allows the user to find their preferred option by typing it in, like in Mail where the "To" field in the composer allows you to type an email address, and as you type it shows a dropdown with the results matching the input. This kind of dropdown is useful for when there are many options and the user would already know what they are looking for. It can also be a good idea to allow new inputs if there are no matches.
|
||||
|
||||
`Dropdown Vue component <https://nextcloud-vue-components.netlify.app/#/Components/Multiselect>`_.
|
||||
|
||||
.. _Checkboxes and radio buttons:
|
||||
|
||||
Checkboxes and radio buttons
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
`Checkbox and radio button Vue components <https://nextcloud-vue-components.netlify.app/#/Components/NcCheckboxRadioSwitch>`_.
|
||||
`Penpot checkboxes and radio buttons <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=5&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/checkboxes-settings.png
|
||||
:alt: Checkbox in Talk settings
|
||||
@ -132,8 +141,6 @@ Checkboxes and radio buttons are very common input methods. They are most common
|
||||
|
||||
They should have a concise label, especially if they are inside an action menu. If more explanation is needed, you can also add a subline.
|
||||
|
||||
`Checkbox and radio button Vue components <https://nextcloud-vue-components.netlify.app/#/Components/CheckboxRadioSwitch>`_.
|
||||
|
||||
Pickers
|
||||
-------
|
||||
|
||||
@ -142,6 +149,7 @@ Pickers
|
||||
Datetime picker
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
`Datetime picker Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcPickers?id=ncdatetimepicker>`_.
|
||||
|
||||
.. image:: ../images/files-date-picker.png
|
||||
:alt: Files date picker
|
||||
@ -149,13 +157,12 @@ Datetime picker
|
||||
|
||||
A user can quickly select dates, times and date ranges using the datetime picker. Use good default dates relevant to the task at hand. For example, in the case of setting an expiration date, unless the server has something enforced as default, 1 week is a good default.
|
||||
|
||||
`Datetime picker Vue component <https://nextcloud-vue-components.netlify.app/#/Components/Pickers?id=datetimepicker>`_.
|
||||
|
||||
.. _Color picker:
|
||||
|
||||
Color picker
|
||||
^^^^^^^^^^^^
|
||||
|
||||
`Color picker Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcPickers?id=nccolorpicker>`_.
|
||||
|
||||
.. image:: ../images/colour-picker.gif
|
||||
:alt: Deck color picker
|
||||
@ -163,9 +170,7 @@ Color picker
|
||||
|
||||
For certain elements of your UI you might want to allow people to set colors. This can easily be achieved using a color picker with some predefined colors. Be cautious about using different colors in the UI. In most Nextcloud apps like Deck and Calendar, user defined colors for UI elements are used sparingly and shown as a circle next to the element they refer to.
|
||||
|
||||
`Color picker Vue component <https://nextcloud-vue-components.netlify.app/#/Components/Pickers?id=colorpicker>`_.
|
||||
|
||||
In addition to these 2 pickers, there is also the `emoji picker <https://nextcloud-vue-components.netlify.app/#/Components/Pickers?id=emojipicker>`_ and the `timezone picker <https://nextcloud-vue-components.netlify.app/#/Components/Pickers?id=timezonepicker>`_ which can be also be used in your app.
|
||||
In addition to these 2 pickers, there is also the `emoji picker <https://nextcloud-vue-components.netlify.app/#/Components/NcPickers?id=ncemojipicker>`_ and the `timezone picker <https://nextcloud-vue-components.netlify.app/#/Components/NcPickers?id=nctimezonepicker>`_ which can be also be used in your app.
|
||||
|
||||
.. _Tags:
|
||||
|
||||
@ -183,6 +188,9 @@ Tags are used by users to manage their items. They can be colored for easy ident
|
||||
Modal
|
||||
-----
|
||||
|
||||
`Modal Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcModal>`_.
|
||||
`Penpot modals <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=12&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/deck-card-modal.png
|
||||
:alt: Deck card modal
|
||||
|
||||
@ -199,8 +207,6 @@ Examples of modals are:
|
||||
* Move or copy dialog in Files
|
||||
* the file picker in Mail and Talk
|
||||
|
||||
`Modal Vue component <https://nextcloud-vue-components.netlify.app/#/Components/Modal>`_.
|
||||
|
||||
On Android and iOS, content which is in a modal would usually be shown as a full-screen overlay, like for example composing a new mail in `iOS Mail <https://developer.apple.com/documentation/messageui/mfmailcomposeviewcontroller>`_.
|
||||
|
||||
|
||||
@ -209,6 +215,9 @@ On Android and iOS, content which is in a modal would usually be shown as a full
|
||||
Avatar
|
||||
------
|
||||
|
||||
`Avatar Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcAvatar>`_.
|
||||
`Penpot avatars <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=3&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/avatar-talk.gif
|
||||
:alt: Avatars in Talk
|
||||
|
||||
@ -218,14 +227,12 @@ When using an avatar it is usually accompanied by the name of the user as well,
|
||||
|
||||
When multiple people are working on or are assigned to the same element, like in Text, Office, a Deck card, or in the Files list for sharing, they are shown as overlapped.
|
||||
|
||||
`Avatar Vue component <https://nextcloud-vue-components.netlify.app/#/Components/Avatar>`_.
|
||||
|
||||
|
||||
.. _Progress bars and meters:
|
||||
|
||||
Progress bars and meters
|
||||
------------------------
|
||||
|
||||
`Progress bar Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcProgressBar>`_.
|
||||
|
||||
.. image:: ../images/progress-bar.png
|
||||
:alt: Desktop syncing progress bar
|
||||
@ -238,41 +245,41 @@ Progress bars shows progress for a potentially lengthy process such as uploading
|
||||
|
||||
The progress bar component is also sometimes used as a meter to visualize data as seen in the settings for Files to show the quota.
|
||||
|
||||
`Progress bar Vue component <https://nextcloud-vue-components.netlify.app/#/Components/ProgressBar>`_.
|
||||
|
||||
.. _User bubbles:
|
||||
|
||||
User bubbles
|
||||
------------
|
||||
|
||||
`User bubble Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcUserBubble>`_.
|
||||
`Penpot user bubbles <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=6&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/talk-user-bubble.png
|
||||
:alt: Talk user bubble
|
||||
|
||||
|
||||
When referring to a user inline in your app, a user bubble element can be used. In Talk and Comments, user bubbles are used in the content when someone mentions a user. In Mail, it is used in the header for the recipients of the message.
|
||||
|
||||
`User bubble Vue component <https://nextcloud-vue-components.netlify.app/#/Components/UserBubble>`_.
|
||||
.. _Counter bubbles:
|
||||
|
||||
.. _Tooltips:
|
||||
Counter bubbles
|
||||
------------
|
||||
|
||||
Tooltips
|
||||
--------
|
||||
`Counter bubble Vue component <https://nextcloud-vue-components.netlify.app/#/Components/NcCounterBubble>`_.
|
||||
`Penpot counter bubbles <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=7&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/tooltip.png
|
||||
:alt: Tooltip in Files
|
||||
.. image:: ../images/talk-counter-bubble.png
|
||||
:alt: Talk counter bubble
|
||||
|
||||
|
||||
Tooltips are small elements which appear on hover and contain information about the element. Although not necessary for every action or item on the screen, tooltips are great for providing extra information or when an element is too small for the text contained in it.
|
||||
|
||||
Using many tooltips is not advised, and if your app does this, possibly consider instead using text labels for icons, reducing the number of actions, or if the info in the tooltip is needed at all.
|
||||
|
||||
`The tooltip Vue component can be found here as a directive <https://nextcloud-vue-components.netlify.app/#/Directives>`_.
|
||||
In Talk, it is used for showing which chats are unread and if you or your group is mentioned.
|
||||
|
||||
.. _Empty content:
|
||||
|
||||
Empty content
|
||||
-------------
|
||||
|
||||
`Empty content component <https://nextcloud-vue-components.netlify.app/#/Components/NcEmptyContent>`_.
|
||||
`Penpot empty content <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=10&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
.. image:: ../images/empty-content.png
|
||||
:alt: Bookmarks empty content
|
||||
|
||||
@ -281,8 +288,6 @@ The empty content state provides feedback that a view is empty, e.g. a new folde
|
||||
|
||||
Make sure that empty content views only show when the view is really empty, and not while it is loading – otherwise people will be shocked as to where their data is gone. The wording on the empty content view should be friendly and helping people out of the situation, for example in the Bookmarks app.
|
||||
|
||||
`Empty content component <https://nextcloud-vue-components.netlify.app/#/Components/EmptyContent>`_.
|
||||
|
||||
.. _Skeleton screens:
|
||||
|
||||
Skeleton screens
|
||||
|
||||
@ -51,7 +51,6 @@ Navigation entries
|
||||
|
||||
`Penpot navigation items <https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=8&share-id=11fde340-21f4-802e-8002-8d8d305e7ab5>`_
|
||||
|
||||
https://design.penpot.app/#/view/db3839da-807b-8052-8002-576401e9a375?page-id=3f784c86-6c27-80c6-8002-6ab157b6bd27§ion=interactions&index=8&share-id=88d87192-d205-8007-8002-8d8d21a0dcca
|
||||
.. image:: ../images/mail-navigation-entries.png
|
||||
:alt: Mail navigation entries
|
||||
|
||||
|
||||
@ -7,7 +7,9 @@ Changelog
|
||||
Deprecations
|
||||
------------
|
||||
|
||||
This is a deprecation roadmap which lists all current deprecation targets and will be updated from release to release. This lists the year when a specific method or class will be removed.
|
||||
Deprecations are now documented by Nextcloud major release, not time. See :ref:`app-upgrade-guide`.
|
||||
|
||||
Below is the old deprecation roadmap which lists older deprecations by year.
|
||||
|
||||
.. note:: Deprecations on interfaces also affect the implementing classes!
|
||||
|
||||
|
||||
@ -42,7 +42,7 @@ Replacing Nextcloud's autoloader
|
||||
|
||||
Nextcloud's autoloader for apps is flexible and robust but not always the fastest. You can improve the loading speed of your app by shipping and optimizing a Composer class loader with the app.
|
||||
|
||||
First of all, familiarize yourself with the `Composer autoloader optimization options <https://getcomposer.org/doc/articles/autoloader-optimization.md>`_ and how they work. (Authoritative) class maps are a good fit for Nextcloud apps.
|
||||
First of all, familiarize yourself with the `Composer autoloader optimization options <https://getcomposer.org/doc/articles/autoloader-optimization.md>`_ and how they work. Only level 1 optimization is suited for Nextcloud because authoritative class maps break upgrade processes where code is replaced dynamically and APCu is not a required extension.
|
||||
|
||||
Once Composer is set up and class maps have been dumped, you can replace the generic Nextcloud class loader with the Composer class loader. This is done by placing a file at `composer/autoload.php`. If Nextcloud finds this file for an app, no generic class loader will be registered. The following contents will wire the file to Composer's generated ``autoloader.php`` file:
|
||||
|
||||
|
||||
103
developer_manual/digging_deeper/deadlock.rst
Normal file
@ -0,0 +1,103 @@
|
||||
=========
|
||||
Deadlocks
|
||||
=========
|
||||
|
||||
Deadlocks are a classic problem in transactional databases, but **they
|
||||
are not dangerous unless they are so frequent that you cannot run
|
||||
certain transactions at all**. Normally, you must write your
|
||||
applications so that they are always prepared to re-issue a transaction
|
||||
if it gets rolled back because of a deadlock.
|
||||
|
||||
Understanding the locking situation
|
||||
-----------------------------------
|
||||
|
||||
MySQL/MariaDB automatically detects transaction deadlocks and rolls back
|
||||
a transaction or transactions to break the deadlock. It tries to pick
|
||||
small transactions to roll back, where the size of a transaction is
|
||||
determined by the number of rows inserted, updated, or deleted.
|
||||
|
||||
In order to fix a deadlock you will need to get an understanding of the
|
||||
scenarios where deadlocks occur in your application by analyzing the
|
||||
Nextcloud log for patterns in the deadlock errors. The Nextcloud log
|
||||
will only show the transaction that was rolled back in this case so in
|
||||
order to properly understand the deadlock scenario it is required to
|
||||
obtain further information from the database server. By default you can
|
||||
find the last detected deadlock in the output of
|
||||
``SHOW ENGINE INNODB STATUS`` however ``innodb_print_all_deadlocks`` can
|
||||
be used as a setting to write all occurring deadlocks to the server
|
||||
logs. Those give detailed insight about which queries are holding a lock
|
||||
and are causing the query from Nextcloud to run into a deadlock.
|
||||
|
||||
Mitigations
|
||||
-----------
|
||||
|
||||
There are basically 3 options on how deadlocks can be handled properly.
|
||||
It is not critical for all use case to handle them, however as per
|
||||
recommendation of MySQL/MariaDB the application should be prepared to
|
||||
handle them properly.
|
||||
|
||||
Ignoring deadlocks
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
There are some scenarios where a deadlock could be safely ignored, like
|
||||
when updating a timestamp that is likely already being updated by
|
||||
another concurrent request. In this case developers can catch the
|
||||
exception and ignore the failed transaction.
|
||||
|
||||
- Potentially useful API wrapper:
|
||||
https://github.com/nextcloud/server/pull/38030
|
||||
- Valid case example: https://github.com/nextcloud/server/pull/37820
|
||||
|
||||
::
|
||||
|
||||
try {
|
||||
// Database transaction that runs into the deadlock
|
||||
$qb->executeStatement();
|
||||
} catch (DbalException $e) {
|
||||
// ignore the failure
|
||||
$this->logger->info("Deadlock detected, but ignored", ['exception' => $e]);
|
||||
}
|
||||
|
||||
Retrying deadlocks
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
In other cases it might be feasible to just retry the specific database
|
||||
transactions. In this case the exception needs to be catched and the
|
||||
transaction needs to be re-issued. It is recommended to limit the amount
|
||||
if retries in case the deadlock occurring regularly. In this case you
|
||||
may follow the next section.
|
||||
|
||||
An example how to do that can be found in
|
||||
https://github.com/nextcloud/server/pull/34302
|
||||
|
||||
Starting with Nextcloud 27 there is also a useful helper method
|
||||
``atomicRetry`` which makes retrying transactions a lot simpler:
|
||||
|
||||
::
|
||||
|
||||
class MyClass {
|
||||
use \OCP\AppFramework\Db\TTransactional;
|
||||
|
||||
public function myFunction() {
|
||||
$this->atomicRetry(function() {
|
||||
// Database transaction that runs into the deadlock
|
||||
$qb->executeStatement();
|
||||
}, $this->connection, 5);
|
||||
}
|
||||
}
|
||||
|
||||
Avoiding deadlocks
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
While not always possible due to the concurrency that may happen on
|
||||
Nextcloud, it might be feasible to refactor logic so that the load of
|
||||
concurrent writes to a table or columns is reduced or only one request
|
||||
may hold a lock at a table row at the same time.
|
||||
|
||||
References
|
||||
----------
|
||||
|
||||
* https://dev.mysql.com/doc/refman/8.0/en/innodb-deadlocks.html
|
||||
* https://dev.mysql.com/doc/refman/8.0/en/innodb-deadlocks-handling.html
|
||||
* https://percona.community/blog/2018/09/24/minimize-mysql-deadlocks-3-steps/
|
||||
* https://www.percona.com/blog/enable-innodb_print_all_deadlocks-parameter-to-get-all-deadlock-information-in-mysqld-error-log/
|
||||
53
developer_manual/digging_deeper/email.rst
Normal file
@ -0,0 +1,53 @@
|
||||
.. _email:
|
||||
|
||||
=====
|
||||
Email
|
||||
=====
|
||||
|
||||
Nextcloud has a mailer component to send email from an admin-defined account.
|
||||
|
||||
Basic usage
|
||||
-----------
|
||||
|
||||
The mailer is hidden behind the ``\OCP\Mail\IMailer`` interface that can be :ref:`injected<dependency-injection>`:
|
||||
|
||||
.. code-block:: php
|
||||
:caption: lib/Service/MailService.php
|
||||
|
||||
<?php
|
||||
|
||||
use OCP\Mail\IMailer;
|
||||
|
||||
class MailService {
|
||||
private IMailer $mailer;
|
||||
|
||||
public function __construct(IMailer $mailer) {
|
||||
$this->mailer = $mailer;
|
||||
}
|
||||
|
||||
public function notify(string $email): void {
|
||||
$message = $this->mailer->createMessage();
|
||||
$message->setSubject("Hello from Nextcloud");
|
||||
$message->setPlainBody("This is some text");
|
||||
$message->setHtmlBody(
|
||||
"<!doctype html><html><body>This is some <b>text</b></body></html>"
|
||||
);
|
||||
$message->setTo([$email]);
|
||||
$this->mailer->send($message);
|
||||
}
|
||||
}
|
||||
|
||||
Inline attachments
|
||||
------------------
|
||||
|
||||
Inline attachments can be appended to a message with ``IMessage::attachInline``:
|
||||
|
||||
.. code-block:: php
|
||||
|
||||
/** @var IMessage $message */
|
||||
$message->attachInline(
|
||||
"this is a test", // Body
|
||||
"test.txt", // Name
|
||||
"text/plain" // Content type
|
||||
);
|
||||
$this->mailer->send($message);
|
||||
@ -10,6 +10,7 @@ Digging deeper
|
||||
debugging
|
||||
classloader
|
||||
continuous_integration
|
||||
email
|
||||
flow
|
||||
http_client
|
||||
javascript-apis
|
||||
@ -37,3 +38,4 @@ Digging deeper
|
||||
profile
|
||||
user_migration
|
||||
profiler
|
||||
deadlock
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
.. _Reference providers:
|
||||
|
||||
===================
|
||||
Reference providers
|
||||
===================
|
||||
|
||||
@ -60,8 +60,9 @@ whenever a user export or import begins.
|
||||
* Should be fast, favor performance over accuracy.
|
||||
*
|
||||
* @since 25.0.0
|
||||
* @since 27.0.0 return value may overflow from int to float
|
||||
*/
|
||||
public function getEstimatedExportSize(IUser $user): int {
|
||||
public function getEstimatedExportSize(IUser $user): int|float {
|
||||
$size = 100; // 100KiB for user data JSON
|
||||
return $size;
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 442 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 724 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 439 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 6.7 KiB |
|
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 6.2 KiB |
|
Before Width: | Height: | Size: 386 KiB After Width: | Height: | Size: 664 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 208 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 568 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 226 KiB |
BIN
developer_manual/images/talk-counter-bubble.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
@ -28,3 +28,8 @@ There are three procedures in place to facilitate communication to app developer
|
||||
- The steps should be explicitly written, so the documentation shall not rely upon links to external resources for the steps. While it is encouraged to add an external links as additional reference, it is a hard requirement that the documentation is readable and actionable without browsing to this link.
|
||||
- The change author's name should be added to the section so readers can reach out to the author if they have questions or if something is unclear.
|
||||
- Timeline: the documentation is required to be handed in when finalizing the pull request and should be merged timely close to the actual change.
|
||||
|
||||
|
||||
Other documentation requirements
|
||||
--------------------------------
|
||||
A change that affects administrators who upgrade their Nextcloud should be documented in the release notes section of the admin documentation of that release.
|
||||
|
||||
14
index.html
@ -272,9 +272,17 @@
|
||||
<p>Once you have a Nextcloud Server running, you can connect to it with various <a class="reference external" href="https://nextcloud.com/install/#install-clients">clients like our mobile and desktop client.</a>
|
||||
Find documentation for the desktop client below.</p>
|
||||
|
||||
<div class="section" id="desktop-39">
|
||||
<h2>Desktop 3.9<a class="headerlink" href="#desktop-39" title="Permalink to this headline">¶</a></h2>
|
||||
<p>This documents the <em>latest</em> version of the Nextcloud desktop client.</p>
|
||||
<ul class="simple">
|
||||
<li><a class="reference external" href="https://docs.nextcloud.com/desktop/3.9">Manual</a>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="section" id="desktop-38">
|
||||
<h2>Desktop 3.8<a class="headerlink" href="#desktop-38" title="Permalink to this headline">¶</a></h2>
|
||||
<p>This documents the <em>latest</em> version of the Nextcloud desktop client.</p>
|
||||
<p>This documents the <em>previous</em> version of the Nextcloud desktop client.</p>
|
||||
<ul class="simple">
|
||||
<li><a class="reference external" href="https://docs.nextcloud.com/desktop/3.8">Manual</a>
|
||||
</ul>
|
||||
@ -282,7 +290,7 @@
|
||||
|
||||
<div class="section" id="desktop-37">
|
||||
<h2>Desktop 3.7<a class="headerlink" href="#desktop-37" title="Permalink to this headline">¶</a></h2>
|
||||
<p>This documents the <em>previous</em> version of the Nextcloud desktop client.</p>
|
||||
<p>This documents an <em>older</em> version of the Nextcloud desktop client.</p>
|
||||
<ul class="simple">
|
||||
<li><a class="reference external" href="https://docs.nextcloud.com/desktop/3.7">Manual</a>
|
||||
</ul>
|
||||
@ -290,7 +298,7 @@
|
||||
|
||||
<div class="section" id="desktop-36">
|
||||
<h2>Desktop 3.6<a class="headerlink" href="#desktop-36" title="Permalink to this headline">¶</a></h2>
|
||||
<p>This documents an <em>older</em> version of the Nextcloud desktop client.</p>
|
||||
<p>This documents an <em>older</em> version of the Nextcloud desktop client. Users are strongly encouraged to upgrade to benefit from security and stability improvements.</p>
|
||||
<ul class="simple">
|
||||
<li><a class="reference external" href="https://docs.nextcloud.com/desktop/3.6">Manual</a>
|
||||
</ul>
|
||||
|
||||
@ -7,18 +7,18 @@ idna==3.4
|
||||
imagesize==1.4.1
|
||||
importlib-metadata==6.6.0
|
||||
Jinja2==3.1.2
|
||||
MarkupSafe==2.1.2
|
||||
MarkupSafe==2.1.3
|
||||
packaging==23.1
|
||||
Pillow==9.5.0
|
||||
Pygments==2.15.1
|
||||
PyYAML==6.0
|
||||
reportlab==3.6.9
|
||||
requests==2.30.0
|
||||
reportlab==4.0.4
|
||||
requests==2.31.0
|
||||
rst2pdf==0.100
|
||||
smartypants==2.0.1
|
||||
snowballstemmer==2.2.0
|
||||
Sphinx==4.5.0
|
||||
sphinx-rtd-theme==1.2.0
|
||||
sphinx-rtd-theme==1.2.2
|
||||
sphinxcontrib-applehelp==1.0.4
|
||||
sphinxcontrib-devhelp==1.0.2
|
||||
sphinxcontrib-htmlhelp==2.0.1
|
||||
@ -27,5 +27,5 @@ sphinxcontrib-jsmath==1.0.1
|
||||
sphinxcontrib-phpdomain==0.11.0
|
||||
sphinxcontrib-qthelp==1.0.3
|
||||
sphinxcontrib-serializinghtml==1.1.5
|
||||
urllib3==2.0.2
|
||||
urllib3==2.0.3
|
||||
zipp==3.15.0
|
||||
|
||||
@ -4,9 +4,69 @@ Accessing Nextcloud files using WebDAV
|
||||
|
||||
Nextcloud fully supports the WebDAV protocol, and you can connect and synchronize
|
||||
with Nextcloud Files over WebDAV. In this chapter, you will learn how to
|
||||
connect Linux, macOS, Windows, and mobile devices to your Nextcloud server via
|
||||
WebDAV. Before we get into configuring WebDAV, let's take a quick look at the
|
||||
recommended way of connecting client devices to your Nextcloud servers.
|
||||
connect Linux, macOS, Windows, and mobile devices to your Nextcloud server.
|
||||
|
||||
WebDAV stands for Distributed Authoring and Versioning. It is an HTTP extension
|
||||
that makes it easy to create, read, and edit files hosted on remote Web servers. With
|
||||
a WebDAV, client you can access your Nextcloud Files (including shares) on Linux,
|
||||
macOS and Windows in a similar way as any remote network share, and stay synchronized.
|
||||
|
||||
Before we get into configuring WebDAV, let's take a quick look at the
|
||||
recommended way of connecting client devices to Nextcloud.
|
||||
|
||||
Official Nextcloud desktop and mobile clients
|
||||
---------------------------------------------
|
||||
|
||||
The recommended way to synchronize a computer with a Nextcloud server is by
|
||||
using the `official Nextcloud sync clients <https://nextcloud.com/install/#install-clients>`_.
|
||||
You can configure the client to save files in any local directory and you can choose which
|
||||
directories on the Nextcloud server to sync with. The client displays the
|
||||
current connection status and logs all activity, so you always know which
|
||||
remote files have been downloaded to your PC and you can verify that files
|
||||
created and updated on your local PC are properly synchronized with the server.
|
||||
|
||||
The recommended way to synchronize Android and Apple iOS devices is by using
|
||||
the `official Nextcloud mobile apps <https://nextcloud.com/install/>`_.
|
||||
|
||||
To connect the official Nextcloud apps to a Nextcloud server use the
|
||||
same URL you use to access Nextcloud from your web browser - e.g.::
|
||||
|
||||
https://cloud.example.com
|
||||
|
||||
https://cloud.example.com/nextcloud (if Nextcloud is installed in a subdirectory)
|
||||
|
||||
Third-party WebDAV clients
|
||||
--------------------------
|
||||
|
||||
If you prefer, you may also connect your computer to your Nextcloud server by
|
||||
using any third-party client that supports the WebDAV protocol (including what may be
|
||||
built into your operating system).
|
||||
|
||||
You can also use third-party WebDAV capable apps to connect your mobile
|
||||
device to Nextcloud.
|
||||
|
||||
When using third-party clients, keep in mind that they may not be optimized for use with
|
||||
Nextcloud or implement capabilities you consider important to your use case.
|
||||
|
||||
Mobile clients that Nextcloud community members have reported using include:
|
||||
|
||||
* `FolderSync (Android) <https://foldersync.io/>`_
|
||||
* `WebDAV Navigator (iPhone) <https://apps.apple.com/us/app/webdav-navigator/id382551345>`_
|
||||
|
||||
The URL to use when configuring third-party apps to connect to Nextcloud is a bit lengthier than the one for official clients::
|
||||
|
||||
https://cloud.example.com/remote.php/dav/files/USERNAME/
|
||||
|
||||
https://cloud.example.com/nextcloud/remote.php/dav/files/USERNAME/ (if Nextcloud is installed in a subdirectory)
|
||||
|
||||
.. note:: When using a third-party WebDAV client (including your operating system's
|
||||
built-in client), you should use an application password for login rather than your
|
||||
regular password. In addition improved security, this `increases performance significantly
|
||||
<https://github.com/nextcloud/server/issues/32729#issuecomment-1556667151>_`. To
|
||||
configure an application password, log into the Nextcloud Web interface, click on the avatar
|
||||
in the top right and choose *Personal settings*. Then choose *Security* in the left
|
||||
sidebar and scroll to the very bottom. There you can create an app password (which can
|
||||
also be revoked in the future without changing your main user password).
|
||||
|
||||
.. note:: In the following examples, you should replace **example.com/nextcloud** with the
|
||||
URL of your Nextcloud server (omit the directory part if the installation is
|
||||
@ -14,46 +74,6 @@ recommended way of connecting client devices to your Nextcloud servers.
|
||||
|
||||
See the WebDAV URL (bottom left in settings) on your Nextcloud.
|
||||
|
||||
.. note:: In the following examples, you must use an application password for login, which you can generate in your security settings.
|
||||
|
||||
|
||||
Nextcloud Desktop and mobile clients
|
||||
------------------------------------
|
||||
|
||||
The recommended way to synchronize a desktop PC with a Nextcloud server is by
|
||||
using `Nextcloud/ownCloud sync clients <https://nextcloud.com/install/#install-clients>`_. You can configure the
|
||||
client to save files in any local directory and you can choose which
|
||||
directories on the Nextcloud server to sync with. The client displays the
|
||||
current connection status and logs all activity, so you always know which
|
||||
remote files have been downloaded to your PC and you can verify that files
|
||||
created and updated on your local PC are properly synchronized with the server.
|
||||
|
||||
The recommended way to synchronize Nextcloud server with Android and
|
||||
Apple iOS devices is by using the `mobile apps
|
||||
<https://nextcloud.com/install/>`_.
|
||||
|
||||
To connect your mobile app to a Nextcloud server use the
|
||||
base URL and folder only::
|
||||
|
||||
example.com/nextcloud
|
||||
|
||||
In addition to the mobile apps provided by Nextcloud or ownCloud, you can use other apps to
|
||||
connect to Nextcloud from your mobile device using WebDAV. `WebDAV Navigator`_ is
|
||||
a good (proprietary) app for `Android devices`_ and `iPhones`_. The URL to use on these is::
|
||||
|
||||
example.com/nextcloud/remote.php/dav/files/USERNAME/
|
||||
|
||||
|
||||
WebDAV configuration
|
||||
--------------------
|
||||
|
||||
If you prefer, you may also connect your desktop PC to your Nextcloud server by
|
||||
using the WebDAV protocol rather than using a special client application. Web
|
||||
Distributed Authoring and Versioning (WebDAV) is a Hypertext Transfer Protocol
|
||||
(HTTP) extension that makes it easy to create, read, and edit files on Web
|
||||
servers. With WebDAV, you can access your Nextcloud shares on Linux, macOS and
|
||||
Windows in the same way as any remote network share, and stay synchronized.
|
||||
|
||||
|
||||
Accessing files using Linux
|
||||
---------------------------
|
||||
@ -547,7 +567,3 @@ To connect to Nextcloud:
|
||||
|
||||
.. _KB2668751: https://web.archive.org/web/20211008025539/https://support.microsoft.com/en-us/topic/you-cannot-download-more-than-50-mb-or-upload-large-files-when-the-upload-takes-longer-than-30-minutes-using-web-client-in-windows-7-8709ae9d-e808-c5a0-95d0-9a7143c50b11
|
||||
.. _KB2123563: https://support.microsoft.com/kb/2123563
|
||||
.. _WebDAV Navigator: http://seanashton.net/webdav/
|
||||
.. _Android devices: https://play.google.com/store/apps/details?id=com.schimera.webdavnavlite
|
||||
.. _iPhones: https://itunes.apple.com/app/webdav-navigator/id382551345
|
||||
.. _BlackBerry devices: http://appworld.blackberry.com/webstore/content/46816
|
||||
|
||||
@ -5,9 +5,9 @@ Transfer Ownership
|
||||
Users can transfer the ownership of files and folders to other users. Sharing
|
||||
ownerships of those transferred files/folders will also be transferred.
|
||||
|
||||
#. Navigate to *Settings* > *Personal* > *Sharing* > *Files*.
|
||||
#. Click on *Choose file or folder to transfer* >> A file picker opens, showing all files and folders in the user's account.
|
||||
#. Pick a file or folder and click on *Choose* >> The chosen file or folder name gets displayed.
|
||||
#. Navigate to *Settings* (top-right menu) > *Sharing*.
|
||||
#. In the *Files* section, click on *Choose file or folder to transfer*. A file picker opens, showing all files and folders in the user's account.
|
||||
#. Pick a file or folder and click on *Choose*. The chosen file or folder name gets displayed.
|
||||
#. Click on *Change* to change the choice if necessary.
|
||||
#. Pick a new owner by typing their name into the search field next to *New owner*.
|
||||
#. Click on *Transfer*.
|
||||
|
||||
@ -191,6 +191,9 @@ Attendees may be other users on your Nextcloud instances, contacts in your addre
|
||||
.. figure:: images/calendar_event_invitation_level.png
|
||||
:scale: 80%
|
||||
|
||||
.. versionchanged:: 25
|
||||
Attendee email response links no longer offer inputs to add a comment or invite additional guests to the event.
|
||||
|
||||
.. tip:: When adding other Nextcloud users as attendees to an event, you may access their free-busy information if available, helping you determine when the best time slot for your event is. Set your :ref:`working hours<calendar-working-hours>` to let others know when you are available. Free-busy information is only available for other users on the same Nextcloud instance.
|
||||
|
||||
.. attention:: Only the calendar owner can send out invitations. The sharees are not able to do that, whether they have write access to the event's calendar or not.
|
||||
|
||||
322
user_manual/locale/ar/LC_MESSAGES/groupware/mail.po
Normal file
@ -0,0 +1,322 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) 2023 Nextcloud GmbH
|
||||
# This file is distributed under the same license as the Nextcloud latest User Manual package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
# Translators:
|
||||
# Ali, 2023
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-05-08 10:45+0000\n"
|
||||
"PO-Revision-Date: 2023-05-02 18:16+0000\n"
|
||||
"Last-Translator: Ali, 2023\n"
|
||||
"Language-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ar\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
|
||||
|
||||
#: ../../groupware/mail.rst:3
|
||||
msgid "Using the Mail app"
|
||||
msgstr "باستخدام تطبيق البريد الإلكتروني"
|
||||
|
||||
#: ../../groupware/mail.rst:5
|
||||
msgid ""
|
||||
"The Mail app comes installed with Nextcloud Hub by default, but can be "
|
||||
"disabled. Please ask your Administrator for it."
|
||||
msgstr ""
|
||||
"تطبيق البريد الإلكتروني يتم تنصيبه تلقائيّاً مع Nextcloud Hub، لكن يمكن في "
|
||||
"أي وقتٍ إيقافه . لمزيد الاستفسار تواصل مع مشرف النظام."
|
||||
|
||||
#: ../../groupware/mail.rst:11
|
||||
msgid "Managing your mail account"
|
||||
msgstr "إدارة حساب بريدك الالكتروني"
|
||||
|
||||
#: ../../groupware/mail.rst:14
|
||||
msgid "Add a new mail account"
|
||||
msgstr "إضافة حساب بريد الكتروني جديد"
|
||||
|
||||
#: ../../groupware/mail.rst:16
|
||||
msgid "Enable mail app from the apps"
|
||||
msgstr "تفعيل تطبيق البريد الالكتروني في قسم التطبيقات"
|
||||
|
||||
#: ../../groupware/mail.rst:17
|
||||
msgid "Click the mail icon on the header"
|
||||
msgstr "إضغط على أيقونة البريد الالكتروني في الترويسة"
|
||||
|
||||
#: ../../groupware/mail.rst:18
|
||||
msgid "Fill up the login form (auto or manual)"
|
||||
msgstr "إملأ نموذج الدخول ( آلي أو يدوي)"
|
||||
|
||||
#: ../../groupware/mail.rst:23
|
||||
msgid "Scheduled messages"
|
||||
msgstr "رسائل مجدولة"
|
||||
|
||||
#: ../../groupware/mail.rst:24
|
||||
msgid "Click new message button on top left of your screen"
|
||||
msgstr "إضغط على زر \"رسالة جديدة\" في الجانب الأعلى من الشاشة"
|
||||
|
||||
#: ../../groupware/mail.rst:25
|
||||
msgid "Click the (...) action menu on the modal composer"
|
||||
msgstr "إضغط على قائمة الإجراءات (...) في \"المُصنِّف الصُّوري\" modal composer"
|
||||
|
||||
#: ../../groupware/mail.rst:26
|
||||
msgid "Click *send later*"
|
||||
msgstr "إضغط \"أرسل لاحقاً\""
|
||||
|
||||
#: ../../groupware/mail.rst:31
|
||||
msgid "Priority inbox"
|
||||
msgstr "صندوق أسبقيّات الوارد"
|
||||
|
||||
#: ../../groupware/mail.rst:32
|
||||
msgid ""
|
||||
"Priority inbox has 2 section *Important* and *Others*. Messages will "
|
||||
"automatically be marked as important based on which messages you interacted "
|
||||
"with or marked as important. In the beginning you might have to manually "
|
||||
"change the importance to teach the system, but it will improve over time."
|
||||
msgstr ""
|
||||
"صندوق أسبقيات الوارد يحتوي على قسمين؛ \"هامة\" و \"أخرى\". سيتم تصنيف "
|
||||
"الرسائل تلقائيا باعتبارها \"هامة\" بحسب علاقتها برسائل أخرى هامة ذات علاقة "
|
||||
"بها. في البداية, ربما يتوجب عليك أن تقوم بتصنيف الرسائل الهامة يدويا حتى "
|
||||
"يتسنى للنظام أن يُدرّب نفسه تعلُّماّ من تصنيفك."
|
||||
|
||||
#: ../../groupware/mail.rst:38
|
||||
msgid "All inboxes"
|
||||
msgstr "كل الصناديق"
|
||||
|
||||
#: ../../groupware/mail.rst:39
|
||||
msgid ""
|
||||
"All messages from all the accounts you have logged in, will be shown here "
|
||||
"chronologically."
|
||||
msgstr "كل الرسائل من كل الحسابات التي دخلتها، سيتم عرضها مرتبةً زمنيّاً"
|
||||
|
||||
#: ../../groupware/mail.rst:42
|
||||
msgid "Account settings"
|
||||
msgstr "إعدادات الحساب"
|
||||
|
||||
#: ../../groupware/mail.rst:43
|
||||
msgid "Your account settings such as:"
|
||||
msgstr "إعدادات حسابك مثل: "
|
||||
|
||||
#: ../../groupware/mail.rst:45
|
||||
msgid "Aliases"
|
||||
msgstr "مُسمّيات إضافية"
|
||||
|
||||
#: ../../groupware/mail.rst:46
|
||||
msgid "Signature"
|
||||
msgstr "توقيع"
|
||||
|
||||
#: ../../groupware/mail.rst:47
|
||||
msgid "Default Folders"
|
||||
msgstr "المجلدات الافتراضية"
|
||||
|
||||
#: ../../groupware/mail.rst:48
|
||||
msgid "Autoresponder"
|
||||
msgstr "الردّ الآلي"
|
||||
|
||||
#: ../../groupware/mail.rst:49
|
||||
msgid "Trusted server ect"
|
||||
msgstr "خادوم موثوق"
|
||||
|
||||
#: ../../groupware/mail.rst:51
|
||||
msgid ""
|
||||
"Can be found in the action menu of a mail account. There you can edit, add "
|
||||
"or remove settings depending on your need."
|
||||
msgstr ""
|
||||
"يُوجد في قائمة الإجراءات لحساب البريد الالكتروني؛ حيث يمكنك تعديل و ِإضافة و"
|
||||
" حذف الإعدادات بحسب الحاجة."
|
||||
|
||||
#: ../../groupware/mail.rst:54
|
||||
msgid "Account delegation"
|
||||
msgstr "تفويض الحساب"
|
||||
|
||||
#: ../../groupware/mail.rst:56
|
||||
msgid ""
|
||||
"The app allows account delegation so that one user can send emails from the "
|
||||
"address of another."
|
||||
msgstr ""
|
||||
"يسمح التطبيق بتفويض الحساب بحيث يمكن لمستخدمٍ ما أن يرسل رسائل الكترونية من "
|
||||
"عنوان حسابٍ آخرَ."
|
||||
|
||||
#: ../../groupware/mail.rst:58
|
||||
msgid "The delegation has to be configured on the mail server by an admin"
|
||||
msgstr "يجب أن تتم تهيئة التفويض من خادوم البريد الالكتروني من قِبل مُشرِفٍ. "
|
||||
|
||||
#: ../../groupware/mail.rst:59
|
||||
msgid "Add the other email address as an alias for your own email account"
|
||||
msgstr ""
|
||||
"أضف عنوان البريد الالكتروني الآخر كمُسمّىً إضافيٍّ لحسابك البريدي الخاص."
|
||||
|
||||
#: ../../groupware/mail.rst:60
|
||||
msgid "When sending an email, select the alias as sender"
|
||||
msgstr "عندما ترسل رسالة الكترونية، اختر المُسمّى الإضافي كمُرسِل"
|
||||
|
||||
#: ../../groupware/mail.rst:62
|
||||
msgid ""
|
||||
"The sent email might not be visible to the original account if it's stored "
|
||||
"in your personal *Sent* mailbox."
|
||||
msgstr ""
|
||||
"البريد المرسل يمكن أن لا يكون مرئياً للحساب الأصلي إذا كان محفوظاً في صندوق "
|
||||
"الصادر الخاص بك."
|
||||
|
||||
#: ../../groupware/mail.rst:65
|
||||
msgid "Compose messages"
|
||||
msgstr "إنشاء رسائل"
|
||||
|
||||
#: ../../groupware/mail.rst:67
|
||||
msgid "Click new message on the top left of your screen"
|
||||
msgstr "إضغط \"رسالة جديدة\" في أعلى الشاشة"
|
||||
|
||||
#: ../../groupware/mail.rst:68
|
||||
msgid "Start writing your message"
|
||||
msgstr "إبدأ تحرير رسالتك"
|
||||
|
||||
#: ../../groupware/mail.rst:71
|
||||
msgid "Minimize the composer modal"
|
||||
msgstr "تصغير النافذة الصورية"
|
||||
|
||||
#: ../../groupware/mail.rst:75
|
||||
msgid ""
|
||||
"The composer modal can be minimized while writing a new message, editing an "
|
||||
"existing draft or editing a message from the outbox. Simply click the "
|
||||
"minimize button on the top right of the modal or click anywhere outside the "
|
||||
"modal."
|
||||
msgstr ""
|
||||
"يمكن تصغير النافذة الصورية في أي وقت عند تحرير رسالة جديدة أو تعديل مسودة من"
|
||||
" صندوق الصادر. فقط إضغط زر التصغير أعلى النافذة الصورية أو إضغط في أي مكان "
|
||||
"خارجها."
|
||||
|
||||
#: ../../groupware/mail.rst:79
|
||||
msgid ""
|
||||
"You can resume your minimized message by clicking anywhere on the indicator "
|
||||
"on the bottom right of your screen."
|
||||
msgstr ""
|
||||
"يمكن استعادة الرسالة المصغرة و عرضها بحجمها الأصلي بالضغط على المؤشر أسفل "
|
||||
"الشاشة"
|
||||
|
||||
#: ../../groupware/mail.rst:83
|
||||
msgid ""
|
||||
"Press the close button on the modal or the indicator in the bottom right "
|
||||
"corner to stop editing a message. A draft will be saved automatically into "
|
||||
"your draft mailbox."
|
||||
msgstr ""
|
||||
"إضغط زر الإقفال في النافذة الصورية أو المؤشر في الركن السفلي للتوقف عن تحرير"
|
||||
" الرسالة. سيتم حفظ المسودة تلقائيّاً في صندوق مسوّدات الرسائل البريدية."
|
||||
|
||||
#: ../../groupware/mail.rst:87
|
||||
msgid "Mailbox actions"
|
||||
msgstr "إجراءات صندوق البريد"
|
||||
|
||||
#: ../../groupware/mail.rst:90
|
||||
msgid "Add a mailbox"
|
||||
msgstr "أضف صندوق بريد"
|
||||
|
||||
#: ../../groupware/mail.rst:91
|
||||
msgid "Open the action menu of an account"
|
||||
msgstr "إفتح قائمة إجراءات الحساب"
|
||||
|
||||
#: ../../groupware/mail.rst:92
|
||||
msgid "Click add mailbox"
|
||||
msgstr "إضغط \"إضافة صندوق بريد\""
|
||||
|
||||
#: ../../groupware/mail.rst:95
|
||||
msgid "Add a submailbox"
|
||||
msgstr "إضافة صندوق بريد فرعي"
|
||||
|
||||
#: ../../groupware/mail.rst:96
|
||||
msgid "Open the action menu of a mailbox"
|
||||
msgstr "إفتح قائمة إجراءات صندوق البريد"
|
||||
|
||||
#: ../../groupware/mail.rst:97
|
||||
msgid "Click add submailbox"
|
||||
msgstr "إضغط على \"أضف صندوق بريد فرعي\""
|
||||
|
||||
#: ../../groupware/mail.rst:100
|
||||
msgid "Shared mailbox"
|
||||
msgstr "صندوق بريد مشترك"
|
||||
|
||||
#: ../../groupware/mail.rst:101
|
||||
msgid ""
|
||||
"If a mailbox was shared with you with some specific rights, that mailbox "
|
||||
"will show as a new mailbox with a shared icon as below:"
|
||||
msgstr ""
|
||||
"إذا تمت مشاركة صندوق بريد معك بحقوق وصول معينة، فإن ذلك الصندوق سوف يظهر "
|
||||
"كصندوق جديد بأيقونة المشاركة كما هي مبين أدناه: "
|
||||
|
||||
#: ../../groupware/mail.rst:106
|
||||
msgid "Envelope actions"
|
||||
msgstr "إجراءات المظروف"
|
||||
|
||||
#: ../../groupware/mail.rst:109
|
||||
msgid "Create an event"
|
||||
msgstr "إستحداث حدث"
|
||||
|
||||
#: ../../groupware/mail.rst:110
|
||||
msgid ""
|
||||
"Create an event for a certain message/thread directly via mail app 1. Open "
|
||||
"action menu of an envelope 2. Click *more actions* 3. Click *create event*"
|
||||
msgstr ""
|
||||
"يمكنك استحداث حدث لرسالة أو لسلسلة رسائل معينة عن طريق تطبيق البريد كالتالي:"
|
||||
" 1- إفتح قائمة إجراءات المظروف. 2- إضغط \"إجراءات أخرى\". 3- إضغط \"إستحداث "
|
||||
"حدث\"."
|
||||
|
||||
#: ../../groupware/mail.rst:116
|
||||
msgid "Create a task"
|
||||
msgstr "استحداث مهمة"
|
||||
|
||||
#: ../../groupware/mail.rst:120
|
||||
msgid ""
|
||||
"Create an task for a certain message/thread directly via mail app 1. Open "
|
||||
"action menu of an envelope 2. Click *more actions* 3. Click *create task*"
|
||||
msgstr ""
|
||||
"يمكن استحداث مهمة لرسالة أو لسلسلة تراسل معينة بواسطة تطبيق البريد كالتالي: "
|
||||
"1- إفتح قائمة إجراءات المظروف. 2- إضغط \"إجراءات أخرى\". 3- إضغط \"إستحداث "
|
||||
"مهمة\"."
|
||||
|
||||
#: ../../groupware/mail.rst:125
|
||||
msgid ""
|
||||
"Tasks are stored in supported calendars. If there is no compatible calendar "
|
||||
"you can create a new one with the :ref:`calendar app<calendar-app>`."
|
||||
msgstr ""
|
||||
"تُحفط المهام في التقاويم المتوافقة. إذا لم يكن هناك أن تقويم متوافق، يمكنك "
|
||||
"إنشاء تقويم جديد بـ : <calendar-app> ref:calendar app ."
|
||||
|
||||
#: ../../groupware/mail.rst:128
|
||||
msgid "Edit tags"
|
||||
msgstr "تعديل وسم"
|
||||
|
||||
#: ../../groupware/mail.rst:129
|
||||
msgid "Open action menu of an envelope"
|
||||
msgstr "افتح قائمة الإجراءات للمظروف "
|
||||
|
||||
#: ../../groupware/mail.rst:130
|
||||
msgid "Click *Edit tags*"
|
||||
msgstr "إضغط \"تعديل الوسوم\""
|
||||
|
||||
#: ../../groupware/mail.rst:131
|
||||
msgid "On the tags modal, set/unset tags"
|
||||
msgstr "في خانة الوسوم، فعّل أو أوقف الوسوم"
|
||||
|
||||
#: ../../groupware/mail.rst:135
|
||||
msgid "Message actions"
|
||||
msgstr "إجراءات على الرسائل"
|
||||
|
||||
#: ../../groupware/mail.rst:138
|
||||
msgid "Unsubscribe from a mailing list"
|
||||
msgstr "إيقاف الاشتراك في قائمة بريدية"
|
||||
|
||||
#: ../../groupware/mail.rst:142
|
||||
msgid ""
|
||||
"Some mailing lists and newsletters allow to be unsubscribed easily. If the "
|
||||
"Mail app detects messages from such a sender, it will show an *Unsubscribe* "
|
||||
"button next to the sender information. Click and confirm to unsubscribe from"
|
||||
" the list."
|
||||
msgstr ""
|
||||
"بعض قوائم البريد و الجرائد تسمح بإيقاف الاشتراك بسهولة. عندما يكتشف تطبيق "
|
||||
"البريد رسائل من أمثال هؤلاء المرسلين، فإنه يُظهِرُ لك زر \"إيقاف الاشتراك\" "
|
||||
"بجوار معلومات المٌرسل. إضغط الزر لإيقاف اشتراكك في القائمة البريدية."
|
||||
@ -11,10 +11,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-03-01 16:07+0000\n"
|
||||
"POT-Creation-Date: 2023-06-09 14:31+0000\n"
|
||||
"PO-Revision-Date: 2020-07-27 15:35+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -35,24 +35,24 @@ msgstr ""
|
||||
"Vlastnictví sdílení takto předávaných souborů/složek bude přeneseno taktéž."
|
||||
|
||||
#: ../../files/transfer_ownership.rst:8
|
||||
msgid "Navigate to *Settings* > *Personal* > *Sharing* > *Files*."
|
||||
msgstr "Přejděte do *Nastavení* > *Osobní* > *Sdílení* > *Soubory*."
|
||||
msgid "Navigate to *Settings* (top-right menu) > *Sharing*."
|
||||
msgstr "Jděte do *Nastavení* (nabídka vpravo nahoře) > *Sdílení*."
|
||||
|
||||
#: ../../files/transfer_ownership.rst:9
|
||||
msgid ""
|
||||
"Click on *Choose file or folder to transfer* >> A file picker opens, showing"
|
||||
" all files and folders in the user's account."
|
||||
"In the *Files* section, click on *Choose file or folder to transfer*. A file"
|
||||
" picker opens, showing all files and folders in the user's account."
|
||||
msgstr ""
|
||||
"Klikněte na *Zvolte soubor nebo složku pro přenesení* >> Otevře se dialog "
|
||||
"pro volbu souboru, který bude zobrazovat všechny soubory a složky v účtu "
|
||||
"daného uživatele."
|
||||
"V sekci *Soubor* klikněte na *Zvolte soubor nebo složku pro přenesení*. "
|
||||
"Otevře se dialog pro volbu souboru, který bude zobrazovat všechny soubory a "
|
||||
"složky v účtu daného uživatele."
|
||||
|
||||
#: ../../files/transfer_ownership.rst:10
|
||||
msgid ""
|
||||
"Pick a file or folder and click on *Choose* >> The chosen file or folder "
|
||||
"name gets displayed."
|
||||
"Pick a file or folder and click on *Choose*. The chosen file or folder name "
|
||||
"gets displayed."
|
||||
msgstr ""
|
||||
"Vyberte soubor nebo složku a klikněte na *Zvolit* >> Zobrazí se název "
|
||||
"Vyberte soubor nebo složku a klikněte na *Zvolit*. Zobrazí se název "
|
||||
"zvoleného souboru nebo složky."
|
||||
|
||||
#: ../../files/transfer_ownership.rst:11
|
||||
|
||||
@ -11,10 +11,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-03-01 16:07+0000\n"
|
||||
"POT-Creation-Date: 2023-04-17 10:07+0000\n"
|
||||
"PO-Revision-Date: 2019-11-07 20:29+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -113,10 +113,18 @@ msgid "Naming a version"
|
||||
msgstr "Pojmenování verze"
|
||||
|
||||
#: ../../files/version_control.rst:39
|
||||
msgid ""
|
||||
"Naming a version is currently not available when the group folders or S3 "
|
||||
"versioning apps are enabled."
|
||||
msgstr ""
|
||||
"Pojmenovávání verzí v tuto chvíli není k dispozici v případě, že jsou "
|
||||
"zapnuté aplikace Skupinové složky nebo S3 verzování."
|
||||
|
||||
#: ../../files/version_control.rst:41
|
||||
msgid "You can give a name to a version."
|
||||
msgstr "Verzi je možné dát název."
|
||||
|
||||
#: ../../files/version_control.rst:44
|
||||
#: ../../files/version_control.rst:46
|
||||
msgid ""
|
||||
"When a version has a name, it will be excluded from the automatic expiration"
|
||||
" process."
|
||||
@ -124,11 +132,19 @@ msgstr ""
|
||||
"V případě, že verze má název, bude vynechána z procesu automatického "
|
||||
"skončení platnosti."
|
||||
|
||||
#: ../../files/version_control.rst:47
|
||||
#: ../../files/version_control.rst:49
|
||||
msgid "Deleting a version"
|
||||
msgstr "Smazání verze"
|
||||
|
||||
#: ../../files/version_control.rst:49
|
||||
#: ../../files/version_control.rst:51
|
||||
msgid ""
|
||||
"Deleting a version is currently not available when the group folders or S3 "
|
||||
"versioning apps are enabled."
|
||||
msgstr ""
|
||||
"Mazání verzí v tuto chvíli není k dispozici v případě, že jsou zapnuté "
|
||||
"aplikace Skupinové složky nebo S3 verzování."
|
||||
|
||||
#: ../../files/version_control.rst:53
|
||||
msgid ""
|
||||
"You can also manually delete a version without waiting for the automatic "
|
||||
"expiration process."
|
||||
|
||||
@ -11,21 +11,21 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-03-23 10:43+0000\n"
|
||||
"POT-Creation-Date: 2023-06-09 14:31+0000\n"
|
||||
"PO-Revision-Date: 2021-12-01 18:40+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: cs\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
|
||||
|
||||
#: ../../groupware/calendar.rst:3
|
||||
#: ../../groupware/calendar.rst:5
|
||||
msgid "Using the Calendar app"
|
||||
msgstr "Používání aplikace Kalendář"
|
||||
|
||||
#: ../../groupware/calendar.rst:5
|
||||
#: ../../groupware/calendar.rst:7
|
||||
msgid ""
|
||||
"The Calendar app comes installed with Nextcloud Hub by default, but can be "
|
||||
"disabled. Please ask your Administrator for it."
|
||||
@ -34,7 +34,7 @@ msgstr ""
|
||||
" stavu, ale může být vypnutá. Požádejte o ní případně správce vámi využívané"
|
||||
" instance."
|
||||
|
||||
#: ../../groupware/calendar.rst:8
|
||||
#: ../../groupware/calendar.rst:10
|
||||
msgid ""
|
||||
"The Nextcloud Calendar app works similar to other calendar applications you "
|
||||
"can sync your Nextcloud calendars and events with."
|
||||
@ -43,7 +43,7 @@ msgstr ""
|
||||
" kalendářů, se kterými můžete synchronizovat své kalendáře a události, "
|
||||
"ukládané v Nextcloud."
|
||||
|
||||
#: ../../groupware/calendar.rst:11
|
||||
#: ../../groupware/calendar.rst:13
|
||||
msgid ""
|
||||
"When you first access the Calendar app, a default first calendar will be "
|
||||
"created for you."
|
||||
@ -51,15 +51,15 @@ msgstr ""
|
||||
"Při prvním přístupu do aplikace Kalendář pro vás bude vytvořen výchozí "
|
||||
"prvotní kalendář."
|
||||
|
||||
#: ../../groupware/calendar.rst:16
|
||||
#: ../../groupware/calendar.rst:18
|
||||
msgid "Managing your calendars"
|
||||
msgstr "Správa kalendářů"
|
||||
|
||||
#: ../../groupware/calendar.rst:19
|
||||
#: ../../groupware/calendar.rst:21
|
||||
msgid "Create a new Calendar"
|
||||
msgstr "Vytvoření nového kalendáře"
|
||||
|
||||
#: ../../groupware/calendar.rst:21
|
||||
#: ../../groupware/calendar.rst:23
|
||||
msgid ""
|
||||
"If you plan on setting up a new calendar without transferring any old data "
|
||||
"from your previous calendar, creating a new calendar is the way you should "
|
||||
@ -69,11 +69,11 @@ msgstr ""
|
||||
"předchozího kalendáře, vytvoření nového kalendáře je cesta, kterou byste se "
|
||||
"měli vydat."
|
||||
|
||||
#: ../../groupware/calendar.rst:27
|
||||
#: ../../groupware/calendar.rst:29
|
||||
msgid "Click on ``+ New Calendar`` in the left sidebar."
|
||||
msgstr "V levém postranním panelu klikněte na ``+ Nový kalendář``."
|
||||
|
||||
#: ../../groupware/calendar.rst:29
|
||||
#: ../../groupware/calendar.rst:31
|
||||
msgid ""
|
||||
"Type in a name for your new calendar, e.g. \"Work\", \"Home\" or \"Marketing"
|
||||
" planning\"."
|
||||
@ -81,7 +81,7 @@ msgstr ""
|
||||
"Zadejte název pro nový kalendář, např. „Práce“, „Doma“ nebo „Marketingové "
|
||||
"plánování“."
|
||||
|
||||
#: ../../groupware/calendar.rst:31
|
||||
#: ../../groupware/calendar.rst:33
|
||||
msgid ""
|
||||
"After clicking on the checkmark, your new calendar is created and can be "
|
||||
"synced across your devices, filled with new events and shared with your "
|
||||
@ -91,11 +91,11 @@ msgstr ""
|
||||
"synchronizován napříč vašimi zařízeními, plněn novými událostmi a případně "
|
||||
"sdílen s vašimi přáteli a kolegy."
|
||||
|
||||
#: ../../groupware/calendar.rst:39
|
||||
#: ../../groupware/calendar.rst:41
|
||||
msgid "Import a Calendar"
|
||||
msgstr "Import kalendáře"
|
||||
|
||||
#: ../../groupware/calendar.rst:41
|
||||
#: ../../groupware/calendar.rst:43
|
||||
msgid ""
|
||||
"If you want to transfer your calendar and their respective events to your "
|
||||
"Nextcloud instance, importing is the best way to do so."
|
||||
@ -103,7 +103,7 @@ msgstr ""
|
||||
"Pokud chcete přenést svůj kalendář a v něm se nacházející události do vámi "
|
||||
"využívané instance Nextcloud, import je nejlepší způsob, jak to udělat."
|
||||
|
||||
#: ../../groupware/calendar.rst:47
|
||||
#: ../../groupware/calendar.rst:49
|
||||
msgid ""
|
||||
"Click on the settings-icon labeled with ``Settings & Import`` at the left-"
|
||||
"bottom."
|
||||
@ -111,7 +111,7 @@ msgstr ""
|
||||
"Klikněte na ikonu nastavení označenou jako ``Nastavení a import`` vlevo "
|
||||
"dole."
|
||||
|
||||
#: ../../groupware/calendar.rst:49
|
||||
#: ../../groupware/calendar.rst:51
|
||||
msgid ""
|
||||
"After clicking on ``+ Import Calendar`` you can select one or more calendar "
|
||||
"files from your local device to upload."
|
||||
@ -119,7 +119,7 @@ msgstr ""
|
||||
"Po kliknutí na ``+ Naimportovat kalendář`` můžete ze svého zařízení vybrat "
|
||||
"jeden či více souborů s kalendáři. které nahrát."
|
||||
|
||||
#: ../../groupware/calendar.rst:52
|
||||
#: ../../groupware/calendar.rst:54
|
||||
msgid ""
|
||||
"The upload can take some time and depends on how big the calendar you import"
|
||||
" is."
|
||||
@ -127,7 +127,7 @@ msgstr ""
|
||||
"Nahrávání může nějakou chvíli trvat, v závislosti na tom, jak rozsáhlý je "
|
||||
"kalendář, který importujete."
|
||||
|
||||
#: ../../groupware/calendar.rst:55
|
||||
#: ../../groupware/calendar.rst:57
|
||||
msgid ""
|
||||
"The Nextcloud Calendar application only supports iCalendar-compatible "
|
||||
"``.ics``-files, defined in RFC 5545."
|
||||
@ -135,11 +135,11 @@ msgstr ""
|
||||
"Aplikace Nextcloud Kalendář podporuje pouze s iCalendar kompatibilní "
|
||||
"``.ics`` soubory, definované v normě RFC 5545."
|
||||
|
||||
#: ../../groupware/calendar.rst:59
|
||||
#: ../../groupware/calendar.rst:61
|
||||
msgid "Edit, Export or Delete a Calendar"
|
||||
msgstr "Úprava, export nebo smazání kalendáře"
|
||||
|
||||
#: ../../groupware/calendar.rst:61
|
||||
#: ../../groupware/calendar.rst:63
|
||||
msgid ""
|
||||
"Sometimes you may want to change the color or the entire name of a previous "
|
||||
"imported or created calendar. You may also want to export it to your local "
|
||||
@ -149,7 +149,7 @@ msgstr ""
|
||||
"nebo vytvořeného kalendáře. Můžete si ho také chtít exportovat na úložiště "
|
||||
"svého počítače nebo ho nadobro smazat."
|
||||
|
||||
#: ../../groupware/calendar.rst:65
|
||||
#: ../../groupware/calendar.rst:67
|
||||
msgid ""
|
||||
"Please keep in mind that deleting a calendar is a irreversible action. After"
|
||||
" deletion, there is no way of restoring the calendar unless you have a local"
|
||||
@ -158,20 +158,20 @@ msgstr ""
|
||||
"Mějte na paměti, že smazání kalendáře nelze vzít zpět. Po smazání není "
|
||||
"způsob jak ho obnovit, pokud nemáte jeho lokální zálohu."
|
||||
|
||||
#: ../../groupware/calendar.rst:71
|
||||
#: ../../groupware/calendar.rst:73
|
||||
msgid "Click on the three-dot-menu of the respective calendar."
|
||||
msgstr "Klikněte na nabídku „tři tečky“ příslušného kalendáře."
|
||||
|
||||
#: ../../groupware/calendar.rst:75
|
||||
#: ../../groupware/calendar.rst:77
|
||||
msgid "Click on *Edit name*, *Edit color*, *Export* or *Delete*."
|
||||
msgstr ""
|
||||
"Klikněte na *Upravit název*, *Upravit barvu*, *Exportovat* nebo *Smazat*."
|
||||
|
||||
#: ../../groupware/calendar.rst:78
|
||||
#: ../../groupware/calendar.rst:80
|
||||
msgid "Sharing calendars"
|
||||
msgstr "Sdílení kalendářů"
|
||||
|
||||
#: ../../groupware/calendar.rst:80
|
||||
#: ../../groupware/calendar.rst:82
|
||||
msgid ""
|
||||
"You may share your calendar with other users or groups. Calendars may be "
|
||||
"shared with write access or read-only. When sharing a calendar with write "
|
||||
@ -184,7 +184,7 @@ msgstr ""
|
||||
" budou moci vytvářet nové události v kalendáři, stejně tak upravovat a mazat"
|
||||
" ty existující."
|
||||
|
||||
#: ../../groupware/calendar.rst:82
|
||||
#: ../../groupware/calendar.rst:84
|
||||
msgid ""
|
||||
"Calendar shares currently cannot be accepted or rejected. If you want to "
|
||||
"stop having a calendar that someone shared with you, you can click on the "
|
||||
@ -197,11 +197,11 @@ msgstr ""
|
||||
"kliknout na „Zrušit sdílení se mnou“. Nicméně kalendářů, obdržený "
|
||||
"prostřednictvím jejich nasdílení skupině, se takto sami ovšem nezbavíte."
|
||||
|
||||
#: ../../groupware/calendar.rst:85
|
||||
#: ../../groupware/calendar.rst:87
|
||||
msgid "Publishing a calendar"
|
||||
msgstr "Zveřejnění kalendáře"
|
||||
|
||||
#: ../../groupware/calendar.rst:87
|
||||
#: ../../groupware/calendar.rst:89
|
||||
msgid ""
|
||||
"Calendars can be published through a public link to make them viewable "
|
||||
"(read-only) to external users. You may create a public link by opening the "
|
||||
@ -215,7 +215,7 @@ msgstr ""
|
||||
"vedle « Odkaz pro sdílení ». Jakmile je vytvořen, můžete veřejný odkaz "
|
||||
"zkopírovat do schránky nebo ho poslat e-mailem."
|
||||
|
||||
#: ../../groupware/calendar.rst:89
|
||||
#: ../../groupware/calendar.rst:91
|
||||
msgid ""
|
||||
"There's also an « embedding code » that provides an HTML iframe to embed "
|
||||
"your calendar into public pages."
|
||||
@ -223,7 +223,7 @@ msgstr ""
|
||||
"Je zde také « zdroj. kód pro vkládání » který poskytuje HTML iframe, pro "
|
||||
"zabudování vašeho kalendáře do veřejných stránek."
|
||||
|
||||
#: ../../groupware/calendar.rst:91
|
||||
#: ../../groupware/calendar.rst:93
|
||||
msgid ""
|
||||
"Multiple calendars can be shared together by adding their unique tokens to "
|
||||
"the end of an embed link. Individual tokens can be found at the end of each "
|
||||
@ -236,7 +236,7 @@ msgstr ""
|
||||
"podobně jako "
|
||||
"``https://cloud.example.com/index.php/apps/calendar/embed/<token1>-<token2>-<token3>``"
|
||||
|
||||
#: ../../groupware/calendar.rst:94
|
||||
#: ../../groupware/calendar.rst:96
|
||||
msgid ""
|
||||
"To change the default view or date of an embedded calendar, you need to "
|
||||
"provide an URL that looks like "
|
||||
@ -248,11 +248,11 @@ msgstr ""
|
||||
"``https://cloud.example.com/index.php/apps/calendar/embed/<token>/<view>/<date>``."
|
||||
" V této URL je třeba nahradit následující proměnné:"
|
||||
|
||||
#: ../../groupware/calendar.rst:97
|
||||
#: ../../groupware/calendar.rst:99
|
||||
msgid "``<token>`` with the calendar's token,"
|
||||
msgstr "``<token>`` za token kalendáře,"
|
||||
|
||||
#: ../../groupware/calendar.rst:98
|
||||
#: ../../groupware/calendar.rst:100
|
||||
msgid ""
|
||||
"``<view>`` with one of ``dayGridMonth``, ``timeGridWeek``, ``timeGridDay``, "
|
||||
"``listMonth``, ``listWeek``, ``listDay``. The default view is "
|
||||
@ -263,7 +263,7 @@ msgstr ""
|
||||
"výpis), ``listWeek`` (týdenní výpis), ``listDay`` (denní výpis). Výchozí "
|
||||
"pohled je ``dayGridMonth`` a běžně používaný výpis je ``listMonth``,"
|
||||
|
||||
#: ../../groupware/calendar.rst:99
|
||||
#: ../../groupware/calendar.rst:101
|
||||
msgid ""
|
||||
"``<date>`` with ``now`` or any date with the following format "
|
||||
"``<year>-<month>-<day>`` (e.g. ``2019-12-28``)."
|
||||
@ -271,7 +271,7 @@ msgstr ""
|
||||
"``<date>`` za ``now`` (nyní) nebo jakékoli datum v následujícím formmátu "
|
||||
"``<year>-<month>-<day>`` (např. ``2019-12-28``)."
|
||||
|
||||
#: ../../groupware/calendar.rst:101
|
||||
#: ../../groupware/calendar.rst:103
|
||||
msgid ""
|
||||
"On the public page, users are able to get the subscription link for the "
|
||||
"calendar and export the whole calendar directly."
|
||||
@ -279,11 +279,11 @@ msgstr ""
|
||||
"Na veřejné stránce mohou uživatelé obdržet odkaz pro přidání si kalendáře a "
|
||||
"také si ho mohou přímo exportovat."
|
||||
|
||||
#: ../../groupware/calendar.rst:104
|
||||
#: ../../groupware/calendar.rst:106
|
||||
msgid "Subscribe to a Calendar"
|
||||
msgstr "Přihlášení se k odebírání kalendáře"
|
||||
|
||||
#: ../../groupware/calendar.rst:106
|
||||
#: ../../groupware/calendar.rst:108
|
||||
msgid ""
|
||||
"You can subscribe to iCal calendars directly inside of your Nextcloud. By "
|
||||
"supporting this interoperable standard (RFC 5545) we made Nextcloud calendar"
|
||||
@ -298,24 +298,28 @@ msgstr ""
|
||||
"kalendáře, včetně odkazů k odběru kalendářů, publikovaných na ostatních "
|
||||
"instancích Nextcloud, jak je popsáno výše."
|
||||
|
||||
#: ../../groupware/calendar.rst:111
|
||||
msgid "Click on ``+ New Subscription`` in the left sidebar."
|
||||
msgstr ""
|
||||
"V postranním panelu vlevo klikněte na ``+ Nové přihlášení se k odběru``."
|
||||
#: ../../groupware/calendar.rst:113 ../../groupware/calendar.rst:128
|
||||
msgid "Click on ``+ New calendar`` in the left sidebar"
|
||||
msgstr "V levém postranním panelu klikněte na ``+ Nový kalendář``."
|
||||
|
||||
#: ../../groupware/calendar.rst:112
|
||||
#: ../../groupware/calendar.rst:114
|
||||
msgid "Click on ``+ New subscription from link (read-only)``"
|
||||
msgstr ""
|
||||
"Klikněte na ``+ Nové přihlášení se k odběru z odkazu (pouze pro čtení)``"
|
||||
|
||||
#: ../../groupware/calendar.rst:115
|
||||
msgid ""
|
||||
"Type in or paste the link of the shared calendar you want to subscribe to."
|
||||
msgstr ""
|
||||
"Zadejte nebo vložte odkaz na sdílený kalendář, k odběru kterého se chcete "
|
||||
"přihlásit."
|
||||
|
||||
#: ../../groupware/calendar.rst:114
|
||||
#: ../../groupware/calendar.rst:117
|
||||
msgid "Finished. Your calendar subscriptions will be updated regularly."
|
||||
msgstr ""
|
||||
"Dokončeno. Vaše přihlášení se k odběru budou pravidelně aktualizována."
|
||||
|
||||
#: ../../groupware/calendar.rst:116
|
||||
#: ../../groupware/calendar.rst:119
|
||||
msgid ""
|
||||
"Subscriptions are refreshed every week by default. Your administrator may "
|
||||
"have changed this setting."
|
||||
@ -323,15 +327,36 @@ msgstr ""
|
||||
"Ve výchozím stavu jsou napojení načítána znovu každý týden. Správce vámi "
|
||||
"využívané instance toto nastavení mohl upravit."
|
||||
|
||||
#: ../../groupware/calendar.rst:119
|
||||
#: ../../groupware/calendar.rst:122
|
||||
msgid "Subscribe to a Holiday Calendar"
|
||||
msgstr "Přihlášení se k odebírání kalendáře svátků"
|
||||
|
||||
#: ../../groupware/calendar.rst:126
|
||||
msgid ""
|
||||
"You can subscribe to a read-only holiday calendar provided by `Thunderbird "
|
||||
"<https://www.thunderbird.net/calendar/holidays/>`_."
|
||||
msgstr ""
|
||||
"Můžete se přihlásit k odběru kalendáře svátků (pouze pro čtení), "
|
||||
"poskytovanému projektem `Thunderbird "
|
||||
"<https://www.thunderbird.net/calendar/holidays/>`_."
|
||||
|
||||
#: ../../groupware/calendar.rst:129
|
||||
msgid "Click on ``+ Add holiday calendar``"
|
||||
msgstr "Klikněte ``+ Přidat kalendář svátků``"
|
||||
|
||||
#: ../../groupware/calendar.rst:130
|
||||
msgid "Find your country or region and click ``Subscribe``"
|
||||
msgstr "Vyhledejte svou zemi či oblast a klikněte na ``Odebírat``"
|
||||
|
||||
#: ../../groupware/calendar.rst:133
|
||||
msgid "Managing Events"
|
||||
msgstr "Správa událostí"
|
||||
|
||||
#: ../../groupware/calendar.rst:122
|
||||
#: ../../groupware/calendar.rst:136
|
||||
msgid "Create a new event"
|
||||
msgstr "Vytvoření nové události"
|
||||
|
||||
#: ../../groupware/calendar.rst:124
|
||||
#: ../../groupware/calendar.rst:138
|
||||
msgid ""
|
||||
"Events can be created by clicking in the area when the event is scheduled. "
|
||||
"In the day- and week-view of the calendar you just click, pull and release "
|
||||
@ -341,12 +366,12 @@ msgstr ""
|
||||
" V denním a týdenním pohledu na kalendář stačí kliknout, držet a přetáhnout "
|
||||
"kurzorem přes oblast, po kterou se událost má dít."
|
||||
|
||||
#: ../../groupware/calendar.rst:130
|
||||
#: ../../groupware/calendar.rst:144
|
||||
msgid ""
|
||||
"The month-view only requires a single click into the area of the target day."
|
||||
msgstr "V měsíčním pohledu stačí pouze jeden klik do oblasti cílového dne."
|
||||
|
||||
#: ../../groupware/calendar.rst:134
|
||||
#: ../../groupware/calendar.rst:148
|
||||
msgid ""
|
||||
"After that, you can type in the event's name (e.g. **Meeting with Lukas**), "
|
||||
"choose the calendar in which you want to save the event to (e.g. "
|
||||
@ -359,7 +384,7 @@ msgstr ""
|
||||
"zkontrolovat a upřesnit časový úsek nebo nastavit jako celodenní událost. "
|
||||
"Volitelně je možné zadat umístění a popis."
|
||||
|
||||
#: ../../groupware/calendar.rst:139
|
||||
#: ../../groupware/calendar.rst:153
|
||||
msgid ""
|
||||
"If you want to edit advanced details such as the **Attendees** or "
|
||||
"**Reminders**, or if you want to set the event as a repeating-event, click "
|
||||
@ -369,7 +394,7 @@ msgstr ""
|
||||
"nebo **Připomínky** nebo chcete nastavit událost jako opakující se, klikněte"
|
||||
" na ``Další`` a v postranním panelu se otevře pokročilý editor."
|
||||
|
||||
#: ../../groupware/calendar.rst:143
|
||||
#: ../../groupware/calendar.rst:157
|
||||
msgid ""
|
||||
"If you always want to open the advanced sidebar editor instead of the simple"
|
||||
" event editor popup, you can set a ``Skip simple event editor`` checkmark in"
|
||||
@ -379,15 +404,15 @@ msgstr ""
|
||||
" jednoduchého ve vyskakovacím okně, je možné v sekci aplikace ``Nastavení a "
|
||||
"import`` zaškrtnout ``Přeskočit zjednodušený editor událostí``."
|
||||
|
||||
#: ../../groupware/calendar.rst:147
|
||||
#: ../../groupware/calendar.rst:161
|
||||
msgid "Clicking on the blue ``Create`` button will finally create the event."
|
||||
msgstr "Kliknutím na modré tlačítko ``Vytvořit`` bude událost vytvořena."
|
||||
|
||||
#: ../../groupware/calendar.rst:150
|
||||
#: ../../groupware/calendar.rst:164
|
||||
msgid "Edit, duplicate or delete an event"
|
||||
msgstr "Úprava, zduplikování nebo smazání události"
|
||||
|
||||
#: ../../groupware/calendar.rst:152
|
||||
#: ../../groupware/calendar.rst:166
|
||||
msgid ""
|
||||
"If you want to edit, duplicate or delete a specific event, you first need to"
|
||||
" click on the event."
|
||||
@ -395,7 +420,7 @@ msgstr ""
|
||||
"Pokud chcete upravit, zduplikovat nebo smazat konkrétní událost, je nejprve "
|
||||
"třeba na ni kliknout."
|
||||
|
||||
#: ../../groupware/calendar.rst:154
|
||||
#: ../../groupware/calendar.rst:168
|
||||
msgid ""
|
||||
"After that you will be able to re-set all event details and open the "
|
||||
"advanced sidebar-editor by clicking on ``More``."
|
||||
@ -403,7 +428,7 @@ msgstr ""
|
||||
"Poté budete moci znovu nastavit veškeré podrobnosti události a otevřít "
|
||||
"postranní panel s pokročilým editorem kliknutím na ``Více``."
|
||||
|
||||
#: ../../groupware/calendar.rst:157
|
||||
#: ../../groupware/calendar.rst:171
|
||||
msgid ""
|
||||
"Clicking on the ``Update`` button will update the event. To cancel your "
|
||||
"changes, click on the close icon on top right of the popup or sidebar "
|
||||
@ -413,7 +438,7 @@ msgstr ""
|
||||
"provedených změn klikněte na ikonu zavření nahoře vpravo vyskakovacího "
|
||||
"dialogu nebo editoru v postranním panelu."
|
||||
|
||||
#: ../../groupware/calendar.rst:159
|
||||
#: ../../groupware/calendar.rst:173
|
||||
msgid ""
|
||||
"If you open the sidebar view and click the three dot menu next to the event "
|
||||
"name, you have an option to export the event as an ``.ics`` file or remove "
|
||||
@ -423,7 +448,7 @@ msgstr ""
|
||||
"vedle názvu události, budete mít možnost exportovat událost jako ``.ics`` "
|
||||
"soubor nebo ji odebrat z kalendáře."
|
||||
|
||||
#: ../../groupware/calendar.rst:163
|
||||
#: ../../groupware/calendar.rst:177
|
||||
msgid ""
|
||||
"If you delete events they will go into your :ref:`trash bin<calendar-trash-"
|
||||
"bin>`. You can restore accidentally deleted events there."
|
||||
@ -431,18 +456,18 @@ msgstr ""
|
||||
"Pokud smažete události, ocitnou se ve vašem :ref:`koši<calendar-trash-bin>`."
|
||||
" Odtamtud je možné nechtěně smazané události obnovovat."
|
||||
|
||||
#: ../../groupware/calendar.rst:165
|
||||
#: ../../groupware/calendar.rst:179
|
||||
msgid ""
|
||||
"You can also export, duplicate or delete an event from the basic editor."
|
||||
msgstr ""
|
||||
"Událost je také možné exportovat, zduplikovat nebo smazat ze základního "
|
||||
"editoru."
|
||||
|
||||
#: ../../groupware/calendar.rst:172
|
||||
#: ../../groupware/calendar.rst:186
|
||||
msgid "Invite attendees to an event"
|
||||
msgstr "Pozvání účastníků na událost"
|
||||
|
||||
#: ../../groupware/calendar.rst:174
|
||||
#: ../../groupware/calendar.rst:188
|
||||
msgid ""
|
||||
"You may add attendees to an event to let them know they're invited. They "
|
||||
"will receive an email invitation and will be able to confirm or cancel their"
|
||||
@ -458,7 +483,15 @@ msgstr ""
|
||||
"možné změnit stupeň účasti pro jednotlivé účastníky, nebo pro konkrétního "
|
||||
"účastníka vypnout informování e-mailem."
|
||||
|
||||
#: ../../groupware/calendar.rst:180
|
||||
#: ../../groupware/calendar.rst:194
|
||||
msgid ""
|
||||
"Attendee email response links no longer offer inputs to add a comment or "
|
||||
"invite additional guests to the event."
|
||||
msgstr ""
|
||||
"Odkazy v e-mailové odpovědi účastníka už neposkytují vstupy pro zadání "
|
||||
"komentáře nebo přizvání dalších účastníků k události."
|
||||
|
||||
#: ../../groupware/calendar.rst:197
|
||||
msgid ""
|
||||
"When adding other Nextcloud users as attendees to an event, you may access "
|
||||
"their free-busy information if available, helping you determine when the "
|
||||
@ -475,7 +508,7 @@ msgstr ""
|
||||
"zaneprázdněný je k dispozici pouze pro ostatní uživatele na té stejné "
|
||||
"instanci Nextcloud."
|
||||
|
||||
#: ../../groupware/calendar.rst:182
|
||||
#: ../../groupware/calendar.rst:199
|
||||
msgid ""
|
||||
"Only the calendar owner can send out invitations. The sharees are not able "
|
||||
"to do that, whether they have write access to the event's calendar or not."
|
||||
@ -483,7 +516,7 @@ msgstr ""
|
||||
"Pozvánky může posílat pouze vlastník kalendáře. Ti, kterým byl nasdílen toto"
|
||||
" nemohou, ať už mají právo zapisovat do kalendáře dané události či nikoli."
|
||||
|
||||
#: ../../groupware/calendar.rst:184
|
||||
#: ../../groupware/calendar.rst:201
|
||||
msgid ""
|
||||
"The server administration needs to setup the e-mail server in the ``Basic "
|
||||
"settings`` tab, as this mail will be used to send invitations."
|
||||
@ -491,11 +524,11 @@ msgstr ""
|
||||
"Je třeba, aby správce serveru nastavil e-mailový server (na kartě ``Základní"
|
||||
" nastavení``), protože tento e-mail bude použit pro odeslání pozvánek."
|
||||
|
||||
#: ../../groupware/calendar.rst:187
|
||||
#: ../../groupware/calendar.rst:204
|
||||
msgid "Assign rooms and resources to an event"
|
||||
msgstr "Přiřazování místností a prostředků události"
|
||||
|
||||
#: ../../groupware/calendar.rst:189
|
||||
#: ../../groupware/calendar.rst:206
|
||||
msgid ""
|
||||
"Similar to attendees you can add rooms and resources to your events. The "
|
||||
"system will make sure that each room and resource is booked without "
|
||||
@ -509,7 +542,7 @@ msgstr ""
|
||||
"do události, zobrazí se jako že bylo přijato. Jakékoli budoucí události v "
|
||||
"překrývajícím se čase zobrazí místnost či prostředek jako že odmítnuto."
|
||||
|
||||
#: ../../groupware/calendar.rst:191
|
||||
#: ../../groupware/calendar.rst:208
|
||||
msgid ""
|
||||
"Rooms and resources are not managed by Nextcloud itself and the Calendar app"
|
||||
" will not allow you to add or change a resource. Your Administrator has to "
|
||||
@ -521,11 +554,11 @@ msgstr ""
|
||||
"jako uživatel je třeba, aby správce nainstalovat a nastavil podpůrné vrstvy "
|
||||
"pro prostředky."
|
||||
|
||||
#: ../../groupware/calendar.rst:194
|
||||
#: ../../groupware/calendar.rst:211
|
||||
msgid "Add attachments to events"
|
||||
msgstr "Přidávání příloh k událostem"
|
||||
|
||||
#: ../../groupware/calendar.rst:195
|
||||
#: ../../groupware/calendar.rst:212
|
||||
msgid ""
|
||||
"You can import attachments to your events either by uploading them or adding"
|
||||
" them from files"
|
||||
@ -533,7 +566,7 @@ msgstr ""
|
||||
"K událostem je možné importovat přílohy buď jejich nahráním nebo přidáním ze"
|
||||
" souborů"
|
||||
|
||||
#: ../../groupware/calendar.rst:200
|
||||
#: ../../groupware/calendar.rst:217
|
||||
msgid ""
|
||||
"Attachments can be added while creating new events or editing existent ones."
|
||||
" Newly uploaded files will be saved in files by default in the calendar "
|
||||
@ -543,7 +576,7 @@ msgstr ""
|
||||
"těch existujících. Nově nahrané soubory budou v souborech (ve výchozím "
|
||||
"stavu) do složky kalendář v kořenové složce."
|
||||
|
||||
#: ../../groupware/calendar.rst:203
|
||||
#: ../../groupware/calendar.rst:220
|
||||
msgid ""
|
||||
"You can change the attachment folder by going to ``Calendar settings`` in "
|
||||
"the bottom left corner and changing ``default attachments location``."
|
||||
@ -551,11 +584,11 @@ msgstr ""
|
||||
"Složku pro přílohy můžete změnit v ``Nastavení kalendáře`` v levém dolním "
|
||||
"rohu, konkrétně ``výchozí umístění příloh``."
|
||||
|
||||
#: ../../groupware/calendar.rst:209
|
||||
#: ../../groupware/calendar.rst:226
|
||||
msgid "Set up reminders"
|
||||
msgstr "Nastavení připomínek"
|
||||
|
||||
#: ../../groupware/calendar.rst:211
|
||||
#: ../../groupware/calendar.rst:228
|
||||
msgid ""
|
||||
"You can set up reminders to be notified before an event occurs. Currently "
|
||||
"supported notification methods are:"
|
||||
@ -563,22 +596,22 @@ msgstr ""
|
||||
"Je možné nastavit připomínky kterými upozornit před výskytem události. V "
|
||||
"tuto chvíli jsou podporovány tyto metody upozorňování:"
|
||||
|
||||
#: ../../groupware/calendar.rst:213
|
||||
#: ../../groupware/calendar.rst:230
|
||||
msgid "Email notifications"
|
||||
msgstr "Upozornění e-mailem"
|
||||
|
||||
#: ../../groupware/calendar.rst:214
|
||||
#: ../../groupware/calendar.rst:231
|
||||
msgid "Nextcloud notifications"
|
||||
msgstr "Oznamování z Nextcloud"
|
||||
|
||||
#: ../../groupware/calendar.rst:216
|
||||
#: ../../groupware/calendar.rst:233
|
||||
msgid ""
|
||||
"You may set reminders at a time relative to the event or at a specific date."
|
||||
msgstr ""
|
||||
"Připomínky je možné nastavit na čas vztažený k události nebo konkrétnímu "
|
||||
"datu."
|
||||
|
||||
#: ../../groupware/calendar.rst:221
|
||||
#: ../../groupware/calendar.rst:238
|
||||
msgid ""
|
||||
"Only the calendar owner and people or groups with whom the calendar is "
|
||||
"shared with write access will get notifications. If you don't get any "
|
||||
@ -590,7 +623,7 @@ msgstr ""
|
||||
"ale myslíte si, že byste měli, správce vámi využívané instance toto také "
|
||||
"mohl pro tento server vypnout."
|
||||
|
||||
#: ../../groupware/calendar.rst:223
|
||||
#: ../../groupware/calendar.rst:240
|
||||
msgid ""
|
||||
"If you synchronize your calendar with mobile devices or other 3rd-party "
|
||||
"clients, notifications may also show up there."
|
||||
@ -598,11 +631,11 @@ msgstr ""
|
||||
"Pokud svůj kalendář synchronizujete s mobilními zařízeními nebo jinými "
|
||||
"klienty třetích stran, upozornění se mohou objevit i zde."
|
||||
|
||||
#: ../../groupware/calendar.rst:227
|
||||
#: ../../groupware/calendar.rst:244
|
||||
msgid "Add recurring options"
|
||||
msgstr "Volby přidání opakovaného"
|
||||
|
||||
#: ../../groupware/calendar.rst:229
|
||||
#: ../../groupware/calendar.rst:246
|
||||
msgid ""
|
||||
"An event may be set as \"recurring\", so that it can happen every day, week,"
|
||||
" month or year. Specific rules can be added to set which day of the week the"
|
||||
@ -614,15 +647,15 @@ msgstr ""
|
||||
"který den v týdnu se událost odehrává nebo komplexnější pravidla, jako "
|
||||
"například každou čtvrtou středu každého měsíce."
|
||||
|
||||
#: ../../groupware/calendar.rst:231
|
||||
#: ../../groupware/calendar.rst:248
|
||||
msgid "You can also tell when the recurrence ends."
|
||||
msgstr "Také je možné zadat, kdy opakování skončí."
|
||||
|
||||
#: ../../groupware/calendar.rst:239
|
||||
#: ../../groupware/calendar.rst:256
|
||||
msgid "Trash bin"
|
||||
msgstr "Koš"
|
||||
|
||||
#: ../../groupware/calendar.rst:241
|
||||
#: ../../groupware/calendar.rst:258
|
||||
msgid ""
|
||||
"If you delete events, tasks or a calendar in Calendar, your data is not gone"
|
||||
" yet. Instead, those items will be collected in a *trash bin*. This offers "
|
||||
@ -637,13 +670,13 @@ msgstr ""
|
||||
"smazány natrvalo. Samozřejmě, pokud si to budete přát, můžete je sami smazat"
|
||||
" i dříve."
|
||||
|
||||
#: ../../groupware/calendar.rst:245
|
||||
#: ../../groupware/calendar.rst:262
|
||||
msgid ""
|
||||
"The ``Empty trash bin`` buttons will wipe all trash bin contents in one "
|
||||
"step."
|
||||
msgstr "Tlačítko ``Vysypat koš`` odstraní veškerý obsah koše najednou."
|
||||
|
||||
#: ../../groupware/calendar.rst:247
|
||||
#: ../../groupware/calendar.rst:264
|
||||
msgid ""
|
||||
"The trash bin is only accessible from the Calendar app. Any connected "
|
||||
"application or app won't be able to display its contents. However, events, "
|
||||
@ -654,11 +687,11 @@ msgstr ""
|
||||
"němu nemá přístup. Nicméně, události, úkoly a kalendáře, smazané z "
|
||||
"napojených aplikací také skončí v koši."
|
||||
|
||||
#: ../../groupware/calendar.rst:252
|
||||
#: ../../groupware/calendar.rst:269
|
||||
msgid "Responding to invitations"
|
||||
msgstr "Odpovídání na pozvánky"
|
||||
|
||||
#: ../../groupware/calendar.rst:254
|
||||
#: ../../groupware/calendar.rst:271
|
||||
msgid ""
|
||||
"You can directly respond to invitations inside the app. Click on the event "
|
||||
"and select your participation status. You can respond to an invitation by "
|
||||
@ -668,15 +701,15 @@ msgstr ""
|
||||
"vyberte stav své účasti. Na pozvánku je možné odpovědět přijetím, odmítnutím"
|
||||
" nebo nezávazným přijetím."
|
||||
|
||||
#: ../../groupware/calendar.rst:259
|
||||
#: ../../groupware/calendar.rst:276
|
||||
msgid "You can respond to an invitation from the sidebar too."
|
||||
msgstr "Na pozvánky je možné odpovídat také z postranního panelu."
|
||||
|
||||
#: ../../groupware/calendar.rst:265
|
||||
#: ../../groupware/calendar.rst:282
|
||||
msgid "Availability (Working Hours)"
|
||||
msgstr "Dostupnost (pracovní doba)"
|
||||
|
||||
#: ../../groupware/calendar.rst:267
|
||||
#: ../../groupware/calendar.rst:284
|
||||
msgid ""
|
||||
"The general availability independent of scheduled events can be set in the "
|
||||
"groupware settings of Nextcloud. These settings will be reflected in the "
|
||||
@ -690,11 +723,11 @@ msgstr ""
|
||||
"ostatními lidmi<calendar-attendees>` v Kalendáři. Někteří napojení klienti, "
|
||||
"jako třeba Thunderbird tato data zobrazí také."
|
||||
|
||||
#: ../../groupware/calendar.rst:272
|
||||
#: ../../groupware/calendar.rst:289
|
||||
msgid "Birthday calendar"
|
||||
msgstr "Kalendář s narozeninami"
|
||||
|
||||
#: ../../groupware/calendar.rst:274
|
||||
#: ../../groupware/calendar.rst:291
|
||||
msgid ""
|
||||
"The birthday calendar is a auto-generated calendar which will automatically "
|
||||
"fetch the birthdays from your contacts. The only way to edit this calendar "
|
||||
@ -706,7 +739,7 @@ msgstr ""
|
||||
"upravovat, je přes data narození u jednotlivých kontaktů. Tento kalendář "
|
||||
"není možné upravovat přímo z aplikace pro správu kalendáře."
|
||||
|
||||
#: ../../groupware/calendar.rst:279
|
||||
#: ../../groupware/calendar.rst:296
|
||||
msgid ""
|
||||
"If you do not see the birthday calendar, your Administrator may have "
|
||||
"disabled this for your server."
|
||||
@ -714,11 +747,11 @@ msgstr ""
|
||||
"Pokud nevidíte kalendář s narozeninami, váš správce ho mohl pro tento server"
|
||||
" vypnout."
|
||||
|
||||
#: ../../groupware/calendar.rst:283
|
||||
#: ../../groupware/calendar.rst:300
|
||||
msgid "Appointments"
|
||||
msgstr "Schůzky"
|
||||
|
||||
#: ../../groupware/calendar.rst:285
|
||||
#: ../../groupware/calendar.rst:302
|
||||
msgid ""
|
||||
"As of Calendar v3 the app can generate appointment slots which other "
|
||||
"Nextcloud users but also people without an account on the instance can book."
|
||||
@ -732,7 +765,7 @@ msgstr ""
|
||||
" pro setkání se. Toto může eliminovat potřebu posílat e-maily tam a zpět "
|
||||
"ohledně dohodnutí se na datu a času."
|
||||
|
||||
#: ../../groupware/calendar.rst:287
|
||||
#: ../../groupware/calendar.rst:304
|
||||
msgid ""
|
||||
"In this section we'll use the term *organizer* for the person who owns the "
|
||||
"calendar and sets up appointment slots. The *attendee* is the person who "
|
||||
@ -742,11 +775,11 @@ msgstr ""
|
||||
"kalendář a nastavuje časová okna pro schůzky. *Účastník* je osoba, která si "
|
||||
"rezervuje některé z oken."
|
||||
|
||||
#: ../../groupware/calendar.rst:290
|
||||
#: ../../groupware/calendar.rst:307
|
||||
msgid "Creating an appointment configuration"
|
||||
msgstr "Vytváření nastavení pro schůzku"
|
||||
|
||||
#: ../../groupware/calendar.rst:292
|
||||
#: ../../groupware/calendar.rst:309
|
||||
msgid ""
|
||||
"As an organizer of appointments you open the main Calendar web UI. In the "
|
||||
"left sidebar you'll find a section for appointments, were you can open the "
|
||||
@ -756,7 +789,7 @@ msgstr ""
|
||||
"postranním panelu naleznete sekci pro schůzky, kde je možné otevřít dialog "
|
||||
"pro vytvoření nové."
|
||||
|
||||
#: ../../groupware/calendar.rst:296
|
||||
#: ../../groupware/calendar.rst:313
|
||||
msgid ""
|
||||
"One of the basic infos of every appointment is a title describing what the "
|
||||
"appointment is about (e.g. \"One-on-one\" when an organizer wants to offer "
|
||||
@ -768,7 +801,7 @@ msgstr ""
|
||||
"kolegům osobní hovor), kde se schůzka uskuteční a podrobnější popis, čeho se"
|
||||
" schůzka bude týkat."
|
||||
|
||||
#: ../../groupware/calendar.rst:301
|
||||
#: ../../groupware/calendar.rst:318
|
||||
msgid ""
|
||||
"The duration of the appointment can be picked from a predefined list. Next, "
|
||||
"you can set the desired increment. The increment is the rate at which "
|
||||
@ -792,7 +825,7 @@ msgstr ""
|
||||
"uživatele. Soukromé schůzky jsou přístupné pouze lidem, kteří obdrží tajnou "
|
||||
"URL adresu."
|
||||
|
||||
#: ../../groupware/calendar.rst:308
|
||||
#: ../../groupware/calendar.rst:325
|
||||
msgid ""
|
||||
"Only slots that do not conflict with existing events in your calendars will "
|
||||
"be shown to attendees."
|
||||
@ -800,7 +833,7 @@ msgstr ""
|
||||
"Účastníkům budou zobrazeny pouze ty sloty, které nekolidují s událostmi "
|
||||
"existujícími ve vašich kalendářích."
|
||||
|
||||
#: ../../groupware/calendar.rst:310
|
||||
#: ../../groupware/calendar.rst:327
|
||||
msgid ""
|
||||
"The organizer of an appointment can specify at which times of the week it's "
|
||||
"generally possible to book a slot. This could be the working hours but also "
|
||||
@ -810,7 +843,7 @@ msgstr ""
|
||||
"zarezervovat okno. Toto by měla být pracovní doba, ale také libovolné "
|
||||
"přizpůsobené naplánování."
|
||||
|
||||
#: ../../groupware/calendar.rst:314
|
||||
#: ../../groupware/calendar.rst:331
|
||||
msgid ""
|
||||
"Some appointments require time to prepare, e.g. when you meet at a venue and"
|
||||
" you have to drive there. The organizer can chose to select a time duration "
|
||||
@ -832,7 +865,7 @@ msgstr ""
|
||||
"zvladatelného počtu slotů za den je možné omezit kolik schůzek je možné si "
|
||||
"účastníky zarezervovat."
|
||||
|
||||
#: ../../groupware/calendar.rst:321
|
||||
#: ../../groupware/calendar.rst:338
|
||||
msgid ""
|
||||
"The configured appointment will then be listed in the left sidebar. Via the "
|
||||
"three dot menu, you can preview the appointment. You can copy the link to "
|
||||
@ -846,11 +879,11 @@ msgstr ""
|
||||
"je nechat objevit vaši veřejnou schůzku prostřednictvím profilové stránky. "
|
||||
"Nastavení schůzky je také možné upravit nebo smazat."
|
||||
|
||||
#: ../../groupware/calendar.rst:327
|
||||
#: ../../groupware/calendar.rst:344
|
||||
msgid "Booking an appointment"
|
||||
msgstr "Zarezervování schůzky"
|
||||
|
||||
#: ../../groupware/calendar.rst:329
|
||||
#: ../../groupware/calendar.rst:346
|
||||
msgid ""
|
||||
"The booking page shows an attendee the title, location, description and "
|
||||
"length of an appointment. For a selected day there will be a list with all "
|
||||
@ -864,7 +897,7 @@ msgstr ""
|
||||
"nebo když bylo dosaženo limitu už zarezervovaných schůzek, seznam může být "
|
||||
"prázdný."
|
||||
|
||||
#: ../../groupware/calendar.rst:335
|
||||
#: ../../groupware/calendar.rst:352
|
||||
msgid ""
|
||||
"For the booking, attendees have to enter a name and an email address. "
|
||||
"Optionally they can also add a comment."
|
||||
@ -872,14 +905,14 @@ msgstr ""
|
||||
"Aby mohli zarezervovat, je třeba, aby účastníci zadali jméno a e-mailovou "
|
||||
"adresu. Volitelně také mohou přidat komentář."
|
||||
|
||||
#: ../../groupware/calendar.rst:339
|
||||
#: ../../groupware/calendar.rst:356
|
||||
msgid ""
|
||||
"When the booking was successful, a confirmation dialogue will be shown to "
|
||||
"the attendee."
|
||||
msgstr ""
|
||||
"Po úspěšném zarezervování bude účastníkovi zobrazen potvrzující dialog."
|
||||
|
||||
#: ../../groupware/calendar.rst:343
|
||||
#: ../../groupware/calendar.rst:360
|
||||
msgid ""
|
||||
"To verify that the attendee email address is valid, a confirmation email "
|
||||
"will be sent to them."
|
||||
@ -887,7 +920,7 @@ msgstr ""
|
||||
"Pro ověření e-mailových adres účastníků jim bude zaslán e-mail s žádostí o "
|
||||
"potvrzení. "
|
||||
|
||||
#: ../../groupware/calendar.rst:347
|
||||
#: ../../groupware/calendar.rst:364
|
||||
msgid ""
|
||||
"Only after the attendee clicks the confirmation link from the email the "
|
||||
"appointment booking will be accepted and forwarded to the organizer."
|
||||
@ -895,13 +928,13 @@ msgstr ""
|
||||
"Pouze poté, co účastníci kliknou na potvrzovací odkaz z e-mailu, bude "
|
||||
"rezervace schůzky přijata a předána organizátorovi."
|
||||
|
||||
#: ../../groupware/calendar.rst:351
|
||||
#: ../../groupware/calendar.rst:368
|
||||
msgid ""
|
||||
"The attendee will receive another email confirming the details of their "
|
||||
"appointment."
|
||||
msgstr "Účastník obdrží další e-mail potvrzující podrobnosti jejich schůzky."
|
||||
|
||||
#: ../../groupware/calendar.rst:355
|
||||
#: ../../groupware/calendar.rst:372
|
||||
msgid ""
|
||||
"If a slot has not been confirmed, it will still show up as bookable. Until "
|
||||
"then the time slot might also be booked by another user who confirms their "
|
||||
@ -913,11 +946,11 @@ msgstr ""
|
||||
"rezervaci potvrdí dříve. Systém zjistí konflikt a nabídne volbu nového "
|
||||
"časového okna."
|
||||
|
||||
#: ../../groupware/calendar.rst:359
|
||||
#: ../../groupware/calendar.rst:376
|
||||
msgid "Working with the booked appointment"
|
||||
msgstr "Práce se zarezervovanou schůzkou"
|
||||
|
||||
#: ../../groupware/calendar.rst:361
|
||||
#: ../../groupware/calendar.rst:378
|
||||
msgid ""
|
||||
"Once the booking is done, the organizer will find an event in their calendar"
|
||||
" with the appointment details and the :ref:`attendee<calendar-attendees>`."
|
||||
@ -925,7 +958,7 @@ msgstr ""
|
||||
"Po dokončení rezervace organizátor nalezne událost ve svém kalendáři s "
|
||||
"podrobnostmi o schůzce a :ref:`účastníkovi<calendar-attendees>`."
|
||||
|
||||
#: ../../groupware/calendar.rst:365
|
||||
#: ../../groupware/calendar.rst:382
|
||||
msgid ""
|
||||
"If the appointment has the setting \"Add time before event\" or \"Add time "
|
||||
"after the event\" enabled, they will show up as separate events in the "
|
||||
@ -935,7 +968,7 @@ msgstr ""
|
||||
"čas po události“, budou zobrazeny jako zvlášť události v kalendáři "
|
||||
"organizátora."
|
||||
|
||||
#: ../../groupware/calendar.rst:369
|
||||
#: ../../groupware/calendar.rst:386
|
||||
msgid ""
|
||||
"As with any other event that has attendees, changes and cancellations will "
|
||||
"trigger a notification to the attendee's email."
|
||||
@ -943,10 +976,26 @@ msgstr ""
|
||||
"Stejně jako jakákoli jiná událost, která má účastníky, změny a rušení spustí"
|
||||
" upozornění na e-mail účastníka."
|
||||
|
||||
#: ../../groupware/calendar.rst:371
|
||||
#: ../../groupware/calendar.rst:388
|
||||
msgid ""
|
||||
"If attendees wish to cancel the appointment they have to get in contact with"
|
||||
" the organizer, so that the organizer can cancel or even delete the event."
|
||||
msgstr ""
|
||||
"Pokud si účastníci přejí zrušit schůzku, je třeba, aby kontaktovali "
|
||||
"organizátora, aby zrušil nebo dokonce smazal událost."
|
||||
|
||||
#: ../../groupware/calendar.rst:391
|
||||
msgid "Create Talk room for booked appointments"
|
||||
msgstr "Vytváření místností v Talk pro zarezervované schůzky"
|
||||
|
||||
#: ../../groupware/calendar.rst:393
|
||||
msgid ""
|
||||
"You can create a Talk room directly from the calendar app for a booked "
|
||||
"appointment. The option can be found on the 'Create appointment' modal. A "
|
||||
"unique link will be generated for every booked appointment and sent via the "
|
||||
"confirmation email when you check this option."
|
||||
msgstr ""
|
||||
"Místnost v Talk je možné pro zarezervované schůzky vytvořit přímo z aplikace"
|
||||
" Kalendář. Tato volba se nachází v dialogu „Vytvořit schůzku“. Pokud tuto "
|
||||
"volbu zaškrtnete, bude vytvořen neopakující se odkaz pro každou ze "
|
||||
"zarezervovaných schůzek a odeslán prostřednictvím potvrzovacího e-mailu."
|
||||
|
||||
@ -11,7 +11,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-04-17 10:07+0000\n"
|
||||
"POT-Creation-Date: 2023-05-12 13:05+0000\n"
|
||||
"PO-Revision-Date: 2021-12-01 18:40+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
@ -57,31 +57,33 @@ msgstr "Přidávání kontaktů"
|
||||
|
||||
#: ../../groupware/contacts.rst:20
|
||||
msgid ""
|
||||
"When you first access the Contacts app, an empty default address book "
|
||||
"becomes available:"
|
||||
"When you first access the Contacts app, the system address book containing "
|
||||
"all users on the instance you are allowed to see, plus an empty default "
|
||||
"address book becomes available:"
|
||||
msgstr ""
|
||||
"Při prvním přístupu do aplikaci Kontakty bude k dispozici prázdný výchozí "
|
||||
"adresář kontaktů:"
|
||||
"Při prvním přístupu do aplikace Kontakty bude k dispozici systémový adresář "
|
||||
"kontaktů (obsahuje veškeré uživatele na dané instanci, které je vám umožněno"
|
||||
" vidět) a prázdný výchozí adresář kontaktů:"
|
||||
|
||||
#: ../../groupware/contacts.rst:24
|
||||
#: ../../groupware/contacts.rst:25
|
||||
msgid "*Default Address Book (empty)*"
|
||||
msgstr "*Výchozí adresář kontaktů (prázdný)*"
|
||||
|
||||
#: ../../groupware/contacts.rst:26
|
||||
#: ../../groupware/contacts.rst:27
|
||||
msgid ""
|
||||
"To add contacts into your address book, you can use one of the following "
|
||||
"methods:"
|
||||
msgstr "Kontakty je možné do adresáře přidávat jednou z následujících metod:"
|
||||
|
||||
#: ../../groupware/contacts.rst:28
|
||||
#: ../../groupware/contacts.rst:29
|
||||
msgid "Import contacts using a Virtual Contact File (VCF/vCard) file"
|
||||
msgstr "Importovat je ze souboru ve formátu Virtual Contact File (VCF/vCard)"
|
||||
|
||||
#: ../../groupware/contacts.rst:29
|
||||
#: ../../groupware/contacts.rst:30
|
||||
msgid "Add contacts manually"
|
||||
msgstr "Přidat kontakty ručně"
|
||||
|
||||
#: ../../groupware/contacts.rst:31
|
||||
#: ../../groupware/contacts.rst:32
|
||||
msgid ""
|
||||
"The fastest way to add a contact is to use a Virtual Contact File "
|
||||
"(VCF/vCard) file."
|
||||
@ -89,15 +91,23 @@ msgstr ""
|
||||
"Nejrychlejším způsobem, jak přidat kontakt, je použít Virtual Contatct File "
|
||||
"(VCF/vCard) soubor."
|
||||
|
||||
#: ../../groupware/contacts.rst:36
|
||||
#: ../../groupware/contacts.rst:37
|
||||
msgid "Importing Virtual Contacts"
|
||||
msgstr "Importování virtuálních kontaktů"
|
||||
|
||||
#: ../../groupware/contacts.rst:38
|
||||
#: ../../groupware/contacts.rst:39
|
||||
msgid "To Import Contacts Using a VCF/vCard File:"
|
||||
msgstr "Kontakt(y) z VCF/vCard souboru naimportujete:"
|
||||
|
||||
#: ../../groupware/contacts.rst:40
|
||||
#: ../../groupware/contacts.rst:41
|
||||
msgid ""
|
||||
"On top left of the screen you have \"Import contacts\" button that is shown "
|
||||
"only when you don't have any contacts yet."
|
||||
msgstr ""
|
||||
"V levé horní části obrazovky se nachází tlačítko „Naimportovat kontakty“, "
|
||||
"které je zobrazováno pouze tehdy, pokud ještě nemáte vůbec žádné kontakty."
|
||||
|
||||
#: ../../groupware/contacts.rst:42
|
||||
msgid ""
|
||||
"Find \"Settings\" at the bottom of the left sidebar, next to the gear "
|
||||
"button:"
|
||||
@ -109,7 +119,7 @@ msgstr ""
|
||||
msgid "Contact settings gear button"
|
||||
msgstr "Tlačítko s ozubeným kolečkem nastavení kontaktu"
|
||||
|
||||
#: ../../groupware/contacts.rst:45
|
||||
#: ../../groupware/contacts.rst:47
|
||||
msgid "Click the gear button. The Contacts app \"Import\" button will appear:"
|
||||
msgstr ""
|
||||
"Klikněte na tlačítko s ozubeným kolečkem. Objeví se tlačítko „Import“ "
|
||||
@ -119,27 +129,27 @@ msgstr ""
|
||||
msgid "Contacts Upload Field"
|
||||
msgstr "Kolonka nahrání aplikace Kontakty"
|
||||
|
||||
#: ../../groupware/contacts.rst:50
|
||||
#: ../../groupware/contacts.rst:52
|
||||
msgid "The Contacts app only supports import of vCards version 3.0 and 4.0."
|
||||
msgstr ""
|
||||
"Aplikace Kontakty podporuje import vCard vizitek pouze ve verzi formátu 3.0 "
|
||||
"a 4.0."
|
||||
|
||||
#: ../../groupware/contacts.rst:52
|
||||
#: ../../groupware/contacts.rst:54
|
||||
msgid "Click the \"Import\" button and upload your VCF/vCard file."
|
||||
msgstr "Klikněte na tlačítko „Naimportovat“ a nahrajte svůj VCF/vCard soubor."
|
||||
|
||||
#: ../../groupware/contacts.rst:54
|
||||
#: ../../groupware/contacts.rst:56
|
||||
msgid ""
|
||||
"After the import is complete, you will see your new contact in your address "
|
||||
"book."
|
||||
msgstr "Po dokončení importu své nové kontakty uvidíte v adresáři."
|
||||
|
||||
#: ../../groupware/contacts.rst:58
|
||||
#: ../../groupware/contacts.rst:60
|
||||
msgid "Adding Contacts Manually"
|
||||
msgstr "Ruční přidávání kontaktů"
|
||||
|
||||
#: ../../groupware/contacts.rst:60
|
||||
#: ../../groupware/contacts.rst:62
|
||||
msgid ""
|
||||
"If you can't import virtual contacts, the Contacts app enables you to **add "
|
||||
"contacts** manually."
|
||||
@ -147,52 +157,51 @@ msgstr ""
|
||||
"Pokud nemůžete naimportovat virtuální kontakty, aplikace Kontakty vám umožní"
|
||||
" **přidat kontakty** ručně."
|
||||
|
||||
#: ../../groupware/contacts.rst:62
|
||||
#: ../../groupware/contacts.rst:64
|
||||
msgid "To Create a New Contact:"
|
||||
msgstr "Nový kontakt vytvoříte:"
|
||||
|
||||
#: ../../groupware/contacts.rst:64
|
||||
#: ../../groupware/contacts.rst:66
|
||||
msgid "Click the ``+ New contact`` button."
|
||||
msgstr "Klikněte na ``+ Nový kontakt``."
|
||||
|
||||
#: ../../groupware/contacts.rst:66
|
||||
msgid ""
|
||||
"An empty new contact configuration opens in the Application View field:"
|
||||
msgstr ""
|
||||
"Otevře se nastavení prázdného nového kontaktu v kolonce Aplikační pohled:"
|
||||
#: ../../groupware/contacts.rst:68
|
||||
msgid "The Edit View configuration opens in the Application View field:"
|
||||
msgstr "Upravit nastavení zobrazení otevře kolonku Aplikační zobrazení:"
|
||||
|
||||
#: ../../groupware/contacts.rst:70
|
||||
msgid ""
|
||||
"Specify the new contact information. Changes that you made are implemented "
|
||||
"immediately."
|
||||
msgstr ""
|
||||
"Zadejte údaje nového kontaktu. Učiněné změny budou promítnuty okamžitě."
|
||||
#: ../../groupware/contacts.rst:72
|
||||
msgid "Specify the new contact information then click Save."
|
||||
msgstr "Zadejte údaje o novém kontaktu a klikněte na Uložit."
|
||||
|
||||
#: ../../groupware/contacts.rst:74
|
||||
#: ../../groupware/contacts.rst:73
|
||||
msgid "The View mode will be shown with the data you added"
|
||||
msgstr "Režim zobrazení bude zobrazen s údaji, které přidáte"
|
||||
|
||||
#: ../../groupware/contacts.rst:79
|
||||
msgid "Edit or Remove Contact Information"
|
||||
msgstr "Úprava nebo odebrání údaje u kontaktu"
|
||||
|
||||
#: ../../groupware/contacts.rst:76
|
||||
#: ../../groupware/contacts.rst:81
|
||||
msgid "The Contacts app enables you to edit or remove contact information."
|
||||
msgstr "Aplikace Kontakty umožňuje upravovat nebo odebírat údaje u kontaktů."
|
||||
|
||||
#: ../../groupware/contacts.rst:78
|
||||
#: ../../groupware/contacts.rst:83
|
||||
msgid "To edit or remove contact information:"
|
||||
msgstr "Údaje u kontaktu upravíte nebo odeberete:"
|
||||
|
||||
#: ../../groupware/contacts.rst:80
|
||||
#: ../../groupware/contacts.rst:85
|
||||
msgid "Navigate to the specific contact that you want to modify."
|
||||
msgstr "Přejděte na konkrétní kontakt, který chcete změnit."
|
||||
|
||||
#: ../../groupware/contacts.rst:81
|
||||
#: ../../groupware/contacts.rst:86
|
||||
msgid "Select the information in the field that you want to edit or remove."
|
||||
msgstr "Vyberte informaci v kolonce, kterou chcete upravit nebo odebrat."
|
||||
|
||||
#: ../../groupware/contacts.rst:82
|
||||
#: ../../groupware/contacts.rst:87
|
||||
msgid "Make your modifications or click on the trash bin."
|
||||
msgstr "Učiňte své úpravy nebo klikněte na koš."
|
||||
|
||||
#: ../../groupware/contacts.rst:84
|
||||
#: ../../groupware/contacts.rst:89
|
||||
msgid ""
|
||||
"Changes or removals that you made to any contact information are implemented"
|
||||
" immediately."
|
||||
@ -200,11 +209,21 @@ msgstr ""
|
||||
"Změny či odebrání, které učiníte v jakémkoli kontaktu, jsou bezprostředně "
|
||||
"uplatněny."
|
||||
|
||||
#: ../../groupware/contacts.rst:88
|
||||
#: ../../groupware/contacts.rst:91
|
||||
msgid ""
|
||||
"Not all contacts will be editable for you. The system address book does not "
|
||||
"allow you to modify someone elses data, only your own. Your own data can "
|
||||
"also be modified in the :doc:`user settings <../userpreferences>`."
|
||||
msgstr ""
|
||||
"Ne všechny kontakty lze upravovat. Systémový adresář kontaktů neumožňuje "
|
||||
"měnit údaje někoho jiného, pouze vaše vlastní. Své vlastní údaje si můžete "
|
||||
"měnit také v :doc:`nastavení uživatele <../userpreferences>`."
|
||||
|
||||
#: ../../groupware/contacts.rst:96
|
||||
msgid "Contact Picture"
|
||||
msgstr "Obrázek ke kontaktu"
|
||||
|
||||
#: ../../groupware/contacts.rst:90
|
||||
#: ../../groupware/contacts.rst:98
|
||||
msgid "To add a picture for your new contacts, click on the upload button:"
|
||||
msgstr ""
|
||||
"Obrázek ke svým (novým) kontaktům přidáte kliknutím na tlačítko nahrát:"
|
||||
@ -213,7 +232,7 @@ msgstr ""
|
||||
msgid "Contact picture (upload button)"
|
||||
msgstr "Obrázek kontaktu (tlačítko nahrání)"
|
||||
|
||||
#: ../../groupware/contacts.rst:95
|
||||
#: ../../groupware/contacts.rst:103
|
||||
msgid "After you have set a contact picture, it will look like this:"
|
||||
msgstr "Poté, co nastavíte obrázek kontaktu, bude vypadat nějak takto:"
|
||||
|
||||
@ -221,7 +240,7 @@ msgstr "Poté, co nastavíte obrázek kontaktu, bude vypadat nějak takto:"
|
||||
msgid "Contact picture (set)"
|
||||
msgstr "Obrázek u kontaktu (nastavit)"
|
||||
|
||||
#: ../../groupware/contacts.rst:100
|
||||
#: ../../groupware/contacts.rst:108
|
||||
msgid ""
|
||||
"If you want to upload a new one, remove it, view it in full size or download"
|
||||
" it, click on the contacts picture for the following options to appear:"
|
||||
@ -229,11 +248,11 @@ msgstr ""
|
||||
"Pokud chcete nahrát nový, odebrat ho, zobrazit v plné velikosti nebo si ho "
|
||||
"stáhnout, klikněte na obrázek kontaktu a objeví se následující volby:"
|
||||
|
||||
#: ../../groupware/contacts.rst:107
|
||||
#: ../../groupware/contacts.rst:115
|
||||
msgid "Adding and Managing Address Books"
|
||||
msgstr "Přidávání a správa adresářů kontaktů"
|
||||
|
||||
#: ../../groupware/contacts.rst:109
|
||||
#: ../../groupware/contacts.rst:117
|
||||
msgid ""
|
||||
"Clicking on the \"Settings\" (gear) button at the bottom of the left sidebar"
|
||||
" provides access to Contacts app settings. This field shows all available "
|
||||
@ -250,7 +269,7 @@ msgstr ""
|
||||
msgid "Add address book in the contacts settings"
|
||||
msgstr "Přidat adresář kontaktů v nastavení kontaktů"
|
||||
|
||||
#: ../../groupware/contacts.rst:117
|
||||
#: ../../groupware/contacts.rst:125
|
||||
msgid ""
|
||||
"The Contacts settings is also where you can share, export and delete address"
|
||||
" books. You will find the CardDAV URLs there."
|
||||
@ -258,7 +277,7 @@ msgstr ""
|
||||
"Nastavení Kontaktů je také místem, kde je možné sdílet, exportovat a mazat "
|
||||
"adresáře kontaktů. Také zde naleznete CardDAV URL adresy."
|
||||
|
||||
#: ../../groupware/contacts.rst:120
|
||||
#: ../../groupware/contacts.rst:128
|
||||
msgid ""
|
||||
"See :doc:`index` for more details about syncing your address books with iOS,"
|
||||
" macOS, Thunderbird and other CardDAV clients."
|
||||
|
||||
331
user_manual/locale/cs/LC_MESSAGES/groupware/mail.po
Normal file
@ -0,0 +1,331 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) 2023 Nextcloud GmbH
|
||||
# This file is distributed under the same license as the Nextcloud latest User Manual package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
# Translators:
|
||||
# Pavel Borecki <pavel.borecki@gmail.com>, 2023
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-05-08 10:45+0000\n"
|
||||
"PO-Revision-Date: 2023-05-02 18:16+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: cs\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
|
||||
|
||||
#: ../../groupware/mail.rst:3
|
||||
msgid "Using the Mail app"
|
||||
msgstr "Používání aplikace E-mail"
|
||||
|
||||
#: ../../groupware/mail.rst:5
|
||||
msgid ""
|
||||
"The Mail app comes installed with Nextcloud Hub by default, but can be "
|
||||
"disabled. Please ask your Administrator for it."
|
||||
msgstr ""
|
||||
"Aplikace E-mail je nainstalovaná jako součást Nextcloud Hub už ve výchozím "
|
||||
"stavu, ale může být vypnutá. Požádejte o ní případně správce vámi využívané "
|
||||
"instance."
|
||||
|
||||
#: ../../groupware/mail.rst:11
|
||||
msgid "Managing your mail account"
|
||||
msgstr "Správa vašeho e-mailového účtu"
|
||||
|
||||
#: ../../groupware/mail.rst:14
|
||||
msgid "Add a new mail account"
|
||||
msgstr "Přidání nového e-mailového účtu"
|
||||
|
||||
#: ../../groupware/mail.rst:16
|
||||
msgid "Enable mail app from the apps"
|
||||
msgstr "Povolte aplikaci E-mail v Aplikacích"
|
||||
|
||||
#: ../../groupware/mail.rst:17
|
||||
msgid "Click the mail icon on the header"
|
||||
msgstr "Klikněte na ikonu e-mailu v záhlaví"
|
||||
|
||||
#: ../../groupware/mail.rst:18
|
||||
msgid "Fill up the login form (auto or manual)"
|
||||
msgstr "Vyplňte přihlašovací formulář (automaticky nebo ručně)"
|
||||
|
||||
#: ../../groupware/mail.rst:23
|
||||
msgid "Scheduled messages"
|
||||
msgstr "Naplánované zprávy"
|
||||
|
||||
#: ../../groupware/mail.rst:24
|
||||
msgid "Click new message button on top left of your screen"
|
||||
msgstr "Klikněte na tlačítko nové zprávy v levé horní části obrazovky"
|
||||
|
||||
#: ../../groupware/mail.rst:25
|
||||
msgid "Click the (...) action menu on the modal composer"
|
||||
msgstr "Klikněte na nabídku akcí (...) v dialogu editoru zprávy"
|
||||
|
||||
#: ../../groupware/mail.rst:26
|
||||
msgid "Click *send later*"
|
||||
msgstr "Klikněte na *odeslat později*"
|
||||
|
||||
#: ../../groupware/mail.rst:31
|
||||
msgid "Priority inbox"
|
||||
msgstr "Schránka pro přednostní zprávy"
|
||||
|
||||
#: ../../groupware/mail.rst:32
|
||||
msgid ""
|
||||
"Priority inbox has 2 section *Important* and *Others*. Messages will "
|
||||
"automatically be marked as important based on which messages you interacted "
|
||||
"with or marked as important. In the beginning you might have to manually "
|
||||
"change the importance to teach the system, but it will improve over time."
|
||||
msgstr ""
|
||||
"Přednostní schránka má dvě sekce: *Důležité* a *Ostatní*. Zrpávy budou "
|
||||
"automaticky označovány jako důležité na základě toho, s jakými zprávami jste"
|
||||
" pracovali nebo je označili jako důležité. Zpočátku může být třeba "
|
||||
"důležitost měnit ručně a systém tak naučit, ale časem se tím vylepší."
|
||||
|
||||
#: ../../groupware/mail.rst:38
|
||||
msgid "All inboxes"
|
||||
msgstr "Všechny schránky"
|
||||
|
||||
#: ../../groupware/mail.rst:39
|
||||
msgid ""
|
||||
"All messages from all the accounts you have logged in, will be shown here "
|
||||
"chronologically."
|
||||
msgstr ""
|
||||
"Veškeré zprávy ze všech účtů, ke kterým jste přihlášení, zde budou "
|
||||
"chronologicky zobrazeny "
|
||||
|
||||
#: ../../groupware/mail.rst:42
|
||||
msgid "Account settings"
|
||||
msgstr "Nastavení účtu"
|
||||
|
||||
#: ../../groupware/mail.rst:43
|
||||
msgid "Your account settings such as:"
|
||||
msgstr "Nastavení vašeho účtu, jako:"
|
||||
|
||||
#: ../../groupware/mail.rst:45
|
||||
msgid "Aliases"
|
||||
msgstr "Alternativní názvy"
|
||||
|
||||
#: ../../groupware/mail.rst:46
|
||||
msgid "Signature"
|
||||
msgstr "Podpis"
|
||||
|
||||
#: ../../groupware/mail.rst:47
|
||||
msgid "Default Folders"
|
||||
msgstr "Výchozí složky"
|
||||
|
||||
#: ../../groupware/mail.rst:48
|
||||
msgid "Autoresponder"
|
||||
msgstr "Automatické odpovědi"
|
||||
|
||||
#: ../../groupware/mail.rst:49
|
||||
msgid "Trusted server ect"
|
||||
msgstr "Certifikát důvěryhodného serveru"
|
||||
|
||||
#: ../../groupware/mail.rst:51
|
||||
msgid ""
|
||||
"Can be found in the action menu of a mail account. There you can edit, add "
|
||||
"or remove settings depending on your need."
|
||||
msgstr ""
|
||||
"Je k dispozici v nabídce akcí u e-mailového účtu. Zde je možné upravovat, "
|
||||
"přidávat nebo odebírat nastavení, v závislosti na vašich potřebách."
|
||||
|
||||
#: ../../groupware/mail.rst:54
|
||||
msgid "Account delegation"
|
||||
msgstr "Delegování účtu"
|
||||
|
||||
#: ../../groupware/mail.rst:56
|
||||
msgid ""
|
||||
"The app allows account delegation so that one user can send emails from the "
|
||||
"address of another."
|
||||
msgstr ""
|
||||
"Tato aplikace umožňuje delegování účtů, takže uživatel může posílat e-maily "
|
||||
"z adresy jiného."
|
||||
|
||||
#: ../../groupware/mail.rst:58
|
||||
msgid "The delegation has to be configured on the mail server by an admin"
|
||||
msgstr ""
|
||||
"Je třeba, aby delegování bylo nastavené správcem na e-mailovém serveru"
|
||||
|
||||
#: ../../groupware/mail.rst:59
|
||||
msgid "Add the other email address as an alias for your own email account"
|
||||
msgstr ""
|
||||
"Přidejte jinou e-mailovou adresu jako alternativní název pro váš vlastní "
|
||||
"e-mailový účet"
|
||||
|
||||
#: ../../groupware/mail.rst:60
|
||||
msgid "When sending an email, select the alias as sender"
|
||||
msgstr "Při odesílání e-mailu vyberte alternativní název coby odesilatele"
|
||||
|
||||
#: ../../groupware/mail.rst:62
|
||||
msgid ""
|
||||
"The sent email might not be visible to the original account if it's stored "
|
||||
"in your personal *Sent* mailbox."
|
||||
msgstr ""
|
||||
"Pokud je uložen ve ve složce *Odeslané* vaší osobní schránky, může se stát, "
|
||||
"že odeslaný e-mail nebude vidět v původním účtu."
|
||||
|
||||
#: ../../groupware/mail.rst:65
|
||||
msgid "Compose messages"
|
||||
msgstr "Napsání zprávy"
|
||||
|
||||
#: ../../groupware/mail.rst:67
|
||||
msgid "Click new message on the top left of your screen"
|
||||
msgstr "Klikněte na novou zprávu v levé horní části obrazovky"
|
||||
|
||||
#: ../../groupware/mail.rst:68
|
||||
msgid "Start writing your message"
|
||||
msgstr "Začněte psát svou zprávu"
|
||||
|
||||
#: ../../groupware/mail.rst:71
|
||||
msgid "Minimize the composer modal"
|
||||
msgstr "Minimalizace dialogu editoru zprávy"
|
||||
|
||||
#: ../../groupware/mail.rst:75
|
||||
msgid ""
|
||||
"The composer modal can be minimized while writing a new message, editing an "
|
||||
"existing draft or editing a message from the outbox. Simply click the "
|
||||
"minimize button on the top right of the modal or click anywhere outside the "
|
||||
"modal."
|
||||
msgstr ""
|
||||
"Dialogové okno s editorem zpráv je možné minimalizovat v průběhu psaní nové "
|
||||
"zprávy, upravování existujícího konceptu nebo zprávy z odeslaných. Stačí "
|
||||
"kliknout na tlačítko minimalizace vpravo nahoře dialogu nebo kliknout "
|
||||
"kamkoli mimo dialog."
|
||||
|
||||
#: ../../groupware/mail.rst:79
|
||||
msgid ""
|
||||
"You can resume your minimized message by clicking anywhere on the indicator "
|
||||
"on the bottom right of your screen."
|
||||
msgstr ""
|
||||
"K minimalizované z právě se vrátíte kliknutím kamkoli na indikátor ve spodní"
|
||||
" části obrazovky."
|
||||
|
||||
#: ../../groupware/mail.rst:83
|
||||
msgid ""
|
||||
"Press the close button on the modal or the indicator in the bottom right "
|
||||
"corner to stop editing a message. A draft will be saved automatically into "
|
||||
"your draft mailbox."
|
||||
msgstr ""
|
||||
"Kliknutím na tlačítko zavřít v dialogu nebo na indikátoru v pravém dolním "
|
||||
"rohu ukončí upravování zprávy. Koncept bude automaticky uložen do schránky s"
|
||||
" koncepty."
|
||||
|
||||
#: ../../groupware/mail.rst:87
|
||||
msgid "Mailbox actions"
|
||||
msgstr "Akce ohledně e-mailové schránky"
|
||||
|
||||
#: ../../groupware/mail.rst:90
|
||||
msgid "Add a mailbox"
|
||||
msgstr "Přidání schránky"
|
||||
|
||||
#: ../../groupware/mail.rst:91
|
||||
msgid "Open the action menu of an account"
|
||||
msgstr "Otevřete nabídku akcí ohledně účtu"
|
||||
|
||||
#: ../../groupware/mail.rst:92
|
||||
msgid "Click add mailbox"
|
||||
msgstr "Klikněte na přidání schránky"
|
||||
|
||||
#: ../../groupware/mail.rst:95
|
||||
msgid "Add a submailbox"
|
||||
msgstr "Přidání dílčí schránky"
|
||||
|
||||
#: ../../groupware/mail.rst:96
|
||||
msgid "Open the action menu of a mailbox"
|
||||
msgstr "Otevřete nabídku akcí ohledně schránky"
|
||||
|
||||
#: ../../groupware/mail.rst:97
|
||||
msgid "Click add submailbox"
|
||||
msgstr "Klikněte na dílčí schránku"
|
||||
|
||||
#: ../../groupware/mail.rst:100
|
||||
msgid "Shared mailbox"
|
||||
msgstr "Sdílená schránka"
|
||||
|
||||
#: ../../groupware/mail.rst:101
|
||||
msgid ""
|
||||
"If a mailbox was shared with you with some specific rights, that mailbox "
|
||||
"will show as a new mailbox with a shared icon as below:"
|
||||
msgstr ""
|
||||
"Pokud vám schránka byla nasdílena s nějakými specifickými oprávněními, tato "
|
||||
"schránka se zobrazí jako nová s ikonou sdílení, jako níže:"
|
||||
|
||||
#: ../../groupware/mail.rst:106
|
||||
msgid "Envelope actions"
|
||||
msgstr "Akce ohledně obálky"
|
||||
|
||||
#: ../../groupware/mail.rst:109
|
||||
msgid "Create an event"
|
||||
msgstr "Vytvoření události"
|
||||
|
||||
#: ../../groupware/mail.rst:110
|
||||
msgid ""
|
||||
"Create an event for a certain message/thread directly via mail app 1. Open "
|
||||
"action menu of an envelope 2. Click *more actions* 3. Click *create event*"
|
||||
msgstr ""
|
||||
"Vytvořte událost pro určitou zprávu/vlákno přímo z aplikace E-mail: 1. "
|
||||
"otevřete nabídku akcí obálky, 2. klikněte na *další akce*, 3. klikněte na "
|
||||
"*vytvořit událost*"
|
||||
|
||||
#: ../../groupware/mail.rst:116
|
||||
msgid "Create a task"
|
||||
msgstr "Vytvoření úkolu"
|
||||
|
||||
#: ../../groupware/mail.rst:120
|
||||
msgid ""
|
||||
"Create an task for a certain message/thread directly via mail app 1. Open "
|
||||
"action menu of an envelope 2. Click *more actions* 3. Click *create task*"
|
||||
msgstr ""
|
||||
"Vytvořte úkol pro určitou zprávu/vlákno přímo z aplikace E-mail: 1. otevřete"
|
||||
" nabídku akcí obálky, 2. klikněte na *další akce*, 3. klikněte na *vytvořit "
|
||||
"úkol*"
|
||||
|
||||
#: ../../groupware/mail.rst:125
|
||||
msgid ""
|
||||
"Tasks are stored in supported calendars. If there is no compatible calendar "
|
||||
"you can create a new one with the :ref:`calendar app<calendar-app>`."
|
||||
msgstr ""
|
||||
"Úkoly jsou ukládány v podporovaných kalendářích. Pokud takový není k "
|
||||
"dispozici, je možné si takový vytvořit v aplikaci :ref:`Kalendář<calendar-"
|
||||
"app>`."
|
||||
|
||||
#: ../../groupware/mail.rst:128
|
||||
msgid "Edit tags"
|
||||
msgstr "Upravit štítky"
|
||||
|
||||
#: ../../groupware/mail.rst:129
|
||||
msgid "Open action menu of an envelope"
|
||||
msgstr "Otevřete nabídku akcí ohledně obálky"
|
||||
|
||||
#: ../../groupware/mail.rst:130
|
||||
msgid "Click *Edit tags*"
|
||||
msgstr "Klikněte na *Upravit štítky*"
|
||||
|
||||
#: ../../groupware/mail.rst:131
|
||||
msgid "On the tags modal, set/unset tags"
|
||||
msgstr "V dialogu štítků nastavte / zrušte nastavení štítků"
|
||||
|
||||
#: ../../groupware/mail.rst:135
|
||||
msgid "Message actions"
|
||||
msgstr "Akce ohledně zprávy"
|
||||
|
||||
#: ../../groupware/mail.rst:138
|
||||
msgid "Unsubscribe from a mailing list"
|
||||
msgstr "Odhlášení se z odběru e-mailové konference"
|
||||
|
||||
#: ../../groupware/mail.rst:142
|
||||
msgid ""
|
||||
"Some mailing lists and newsletters allow to be unsubscribed easily. If the "
|
||||
"Mail app detects messages from such a sender, it will show an *Unsubscribe* "
|
||||
"button next to the sender information. Click and confirm to unsubscribe from"
|
||||
" the list."
|
||||
msgstr ""
|
||||
"Některé e-mailové konference a zpravodaje umožňují snadné zrušení odběru. "
|
||||
"Pokud aplikace E-mail zjistí zprávy od takového odesilatele, zobrazí "
|
||||
"tlačítko *Zrušit odebírání* vedle údaje o odesilateli. Pokud chcete přestat "
|
||||
"odebírat, klikněte a potvrďte."
|
||||
@ -11,10 +11,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-03-01 16:07+0000\n"
|
||||
"POT-Creation-Date: 2023-05-26 12:18+0000\n"
|
||||
"PO-Revision-Date: 2021-12-01 18:40+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -28,49 +28,49 @@ msgstr "Synchronizace s GNOME desktopem"
|
||||
#: ../../groupware/sync_gnome.rst:5
|
||||
msgid ""
|
||||
"The `GNOME desktop <https://www.gnome.org>`_ has built-in support for "
|
||||
"Nextcloud's calendar, contacts and tasks which will be displayed by the "
|
||||
"Evolution PIM or the Calendar, Tasks and Contacts app as well has for files,"
|
||||
" which it integrates into the Nautilus file manager via WebDAV. The latter "
|
||||
"works only while the computer is connected."
|
||||
"Nextcloud's calendar, contacts, and tasks which will be displayed by the "
|
||||
"Evolution Personal Information Manager (PIM), or the Calendar, Tasks, and "
|
||||
"Contacts apps. Similarly, Files integrates into the Nautilus file manager "
|
||||
"via WebDAV. The latter works only while the computer is connected."
|
||||
msgstr ""
|
||||
"`GNOME desktop <https://www.gnome.org>`_ má vestavěnou podporu pro kalendář,"
|
||||
" kontakty a úkoly z Nextcloud, které jsou pak zobrazovány v Evolution PIM "
|
||||
"nebo aplikacích Kalendář, Úkoly a Kontakty. Stejně tak má podporu pro "
|
||||
"soubory, které se integrují do správce souborů Nautilus skrze protokol "
|
||||
"WebDAV. Druhé zmíněné ale funguje pouze v okamžiku, kdy má počítač spojení "
|
||||
"se serverem."
|
||||
" kontakty a úkoly z Nextcloud, které jsou pak zobrazovány ve správci "
|
||||
"osobních informací (PIM) v rámci aplikace Evolution nebo aplikacích "
|
||||
"Kalendář, Úkoly a Kontakty. Podobně, jsou Soubory napojeny do správce "
|
||||
"souborů Nautilus skrze protokol WebDAV. Druhé zmíněné ale funguje pouze v "
|
||||
"okamžiku, kdy má počítač spojení se serverem."
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:11
|
||||
#: ../../groupware/sync_gnome.rst:8
|
||||
msgid "This can be done by following these steps:"
|
||||
msgstr "Toto je možné udělat následováním těchto kroků:"
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:13
|
||||
#: ../../groupware/sync_gnome.rst:10
|
||||
msgid "In the GNOME settings, open Online Accounts."
|
||||
msgstr "V nastavení GNOME, otevřete Online účty."
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:14
|
||||
#: ../../groupware/sync_gnome.rst:11
|
||||
msgid "Under \"Add an account\" pick ``Nextcloud``:"
|
||||
msgstr "Pod „Přidat účet“ vyberte ``Nextcloud``:"
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:18
|
||||
#: ../../groupware/sync_gnome.rst:15
|
||||
msgid ""
|
||||
"Enter your server URL, username and password. If you have enabled two factor"
|
||||
" authentification, you need to generate an app-password/token, because GNOME"
|
||||
" Online Accounts `doesn't support Nextcloud's webflow login yet "
|
||||
"<https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/81>`_ (`Learn "
|
||||
"more "
|
||||
"Enter your server URL, username, and password. If you have enabled two-"
|
||||
"factor authentification (2FA), you need to generate an application "
|
||||
"password/token, because GNOME Online Accounts `doesn't support Nextcloud's "
|
||||
"WebFlow login yet <https://gitlab.gnome.org/GNOME/gnome-online-"
|
||||
"accounts/issues/81>`_ (`Learn more "
|
||||
"<https://docs.nextcloud.com/server/latest/user_manual/session_management.html#managing-"
|
||||
"devices>`_):"
|
||||
msgstr ""
|
||||
"Zadejte URL adresu vámi využívaného serveru, uživatelské jméno a heslo. "
|
||||
"Pokud jste zapnuli dvoufázové ověřování, je třeba vytvořit heslo pro "
|
||||
"Pokud jste zapnuli dvoufázové ověřování (2FA), je třeba vytvořit heslo pro "
|
||||
"aplikaci / token, protože aplikace GNOME Účty online `zatím nepodporuje "
|
||||
"Nextcloud webflow přihlášení <https://gitlab.gnome.org/GNOME/gnome-online-"
|
||||
"Nextcloud WebFlow přihlášení <https://gitlab.gnome.org/GNOME/gnome-online-"
|
||||
"accounts/issues/81>`_. (`Více viz "
|
||||
"<https://docs.nextcloud.com/server/latest/user_manual/session_management.html#managing-"
|
||||
"devices>`_):"
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:27
|
||||
#: ../../groupware/sync_gnome.rst:24
|
||||
msgid ""
|
||||
"In the next window, select which resources GNOME should access and press the"
|
||||
" cross in the top right to close:"
|
||||
@ -78,25 +78,25 @@ msgstr ""
|
||||
"V následujícím okně vyberte ke kterým prostředkům by mělo GNOME přistupovat "
|
||||
"a pak dialog zavřete kliknutím na křížek vpravo nahoře:"
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:32
|
||||
#: ../../groupware/sync_gnome.rst:29
|
||||
msgid ""
|
||||
"Nextcloud tasks, calendars and contacts should now be visible in the "
|
||||
"Evolution PIM, the task, contacts and calendars app."
|
||||
"Nextcloud tasks, calendars, and contacts should now be visible in the "
|
||||
"Evolution PIM, as well as the Task, Contacts, and Calendars apps."
|
||||
msgstr ""
|
||||
"Nextcloud úkoly, kalendáře a kontakty by nyní měly být viditelné v "
|
||||
"aplikacích: Evolution PIM, Úkoly, Kontakty a Kalendář."
|
||||
"aplikacích: Evolution PIM, Úkoly, Kontakty a Kalendáře."
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:35
|
||||
#: ../../groupware/sync_gnome.rst:31
|
||||
msgid ""
|
||||
"Files will be shown as a WebDAV resource in the Nautilus file manager (and "
|
||||
"also be available in the GNOME file open/save dialogues). Documents should "
|
||||
"be integrated into the GNOME Documents app."
|
||||
"Files will be shown as a WebDAV resource in the Nautilus file manager, and "
|
||||
"also be available in the GNOME file open/save dialogues. Documents should be"
|
||||
" integrated into the GNOME Documents app."
|
||||
msgstr ""
|
||||
"Soubory budou zobrazeny jako WebDAV prostředek ve správci souborů Nautilus "
|
||||
"(a také k dispozici v dialozích GNOME pro otevření/uložení souborů). "
|
||||
"Dokumenty by měly být integrovány do aplikace GNOME Dokumenty."
|
||||
"Soubory budou zobrazeny jako WebDAV prostředek ve správci souborů Nautilus a"
|
||||
" také k dispozici v dialozích GNOME pro otevření/uložení souborů. Dokumenty "
|
||||
"by měly být integrovány do aplikace GNOME Dokumenty."
|
||||
|
||||
#: ../../groupware/sync_gnome.rst:40
|
||||
#: ../../groupware/sync_gnome.rst:34
|
||||
msgid ""
|
||||
"All resources should also be searchable from anywhere by pressing the "
|
||||
"Windows key and entering a search term."
|
||||
|
||||
@ -11,10 +11,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-03-01 16:07+0000\n"
|
||||
"POT-Creation-Date: 2023-04-24 19:14+0000\n"
|
||||
"PO-Revision-Date: 2021-12-01 18:40+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -73,19 +73,25 @@ msgstr "**Uživatelské jméno**: Vaše uživatelské jméno nebo e-mail v Nextc
|
||||
|
||||
#: ../../groupware/sync_osx.rst:29
|
||||
msgid ""
|
||||
"**Password**: Your generated app-password/token (`Learn more "
|
||||
"<https://docs.nextcloud.com/server/latest/user_manual/session_management.html#managing-"
|
||||
"devices>`_)."
|
||||
"**Password**: Your generated app-password/token (:ref:`Learn "
|
||||
"more<managing_devices>`)."
|
||||
msgstr ""
|
||||
"**Heslo**: Vámi vytvořené heslo aplikace / token (`Více viz "
|
||||
"<https://docs.nextcloud.com/server/latest/user_manual/session_management.html#managing-"
|
||||
"devices>`_)."
|
||||
"**Heslo**: Vaše vytvořené heslo pro aplikaci / token (:ref:`Více "
|
||||
"viz<managing_devices>`)."
|
||||
|
||||
#: ../../groupware/sync_osx.rst:37
|
||||
#: ../../groupware/sync_osx.rst:31
|
||||
msgid ""
|
||||
"**Server Address**: URL of your Nextcloud server (e.g. "
|
||||
"``https://cloud.example.com``)"
|
||||
msgstr ""
|
||||
"**Adresa serveru**: URL vámi využívaného Nextcloud serveru (např. "
|
||||
"``https://cloud.example.com``)"
|
||||
|
||||
#: ../../groupware/sync_osx.rst:35
|
||||
msgid "Click on **Sign In**."
|
||||
msgstr "Klikněte na **Přihlásit se**."
|
||||
|
||||
#: ../../groupware/sync_osx.rst:39
|
||||
#: ../../groupware/sync_osx.rst:37
|
||||
msgid ""
|
||||
"For **CalDAV (Calendar)**: You can now select, with which applications you "
|
||||
"want to use this resource. In the most cases, this will be the \"Calendar\" "
|
||||
@ -96,11 +102,11 @@ msgstr ""
|
||||
"tento prostředek používaly. Ve většině případů to bude aplikace „Kalendář“. "
|
||||
"Někdy také prostředek můžete chtít použít pro své **Úkoly a připomínky**."
|
||||
|
||||
#: ../../groupware/sync_osx.rst:46
|
||||
#: ../../groupware/sync_osx.rst:44
|
||||
msgid "Troubleshooting"
|
||||
msgstr "Řešení problémů"
|
||||
|
||||
#: ../../groupware/sync_osx.rst:48
|
||||
#: ../../groupware/sync_osx.rst:46
|
||||
msgid ""
|
||||
"macOS does **not** support syncing CalDAV/CardDAV over non-encrypted "
|
||||
"``http://`` connections. Make sure you have ``https://`` enabled and "
|
||||
@ -110,7 +116,7 @@ msgstr ""
|
||||
"spojení. Ověřte, že máte ``https://`` zapnuté a nastavené na straně serveru "
|
||||
"a klienta."
|
||||
|
||||
#: ../../groupware/sync_osx.rst:52
|
||||
#: ../../groupware/sync_osx.rst:50
|
||||
msgid ""
|
||||
"**Self-signed certificates** need to be properly set up in the macOS "
|
||||
"keychain."
|
||||
|
||||
@ -11,10 +11,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Nextcloud latest User Manual latest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-03-01 16:07+0000\n"
|
||||
"POT-Creation-Date: 2023-05-26 12:18+0000\n"
|
||||
"PO-Revision-Date: 2021-12-01 18:40+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"Language-Team: Czech (https://app.transifex.com/nextcloud/teams/64236/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -28,9 +28,10 @@ msgstr "Synchronizace s aplikací Thunderbird"
|
||||
#: ../../groupware/sync_thunderbird.rst:5
|
||||
msgid ""
|
||||
"`Thunderbird <https://www.thunderbird.net>`_ is a feature-rich and mature "
|
||||
"mail client that can be turned into a full-fledged PIM. Since version 102, "
|
||||
"it supports address book synchronisation via CardDAV and automatic "
|
||||
"discovering calendars and address books available on the server."
|
||||
"mail client that can be turned into a full-fledged Personal Information "
|
||||
"Manager (PIM). Since version 102, it supports address book synchronization "
|
||||
"via CardDAV and automatic discovery of calendars and address books available"
|
||||
" on the server."
|
||||
msgstr ""
|
||||
"`Thunderbird <https://www.thunderbird.net>`_ je funkcemi nabitý a vyspělý "
|
||||
"e-mailový klient, který je možné proměnit v plnohodnotného správce osobních "
|
||||
@ -43,10 +44,10 @@ msgid "Recommended method"
|
||||
msgstr "Doporučená metoda"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:11
|
||||
msgid "Since Thunderbird 102, there is a native support for CardDAV protocol."
|
||||
msgid "Since Thunderbird 102, the CardDAV protocol is natively supported."
|
||||
msgstr ""
|
||||
"Od verze 102 obsahuje Thunderbird podporu pro protokol CardDAV už přímo v "
|
||||
"sobě."
|
||||
"Od verze Thuderbird 102, je CardDAV protokol podporován už v základu – není "
|
||||
"tedy třeba žádných doplňků."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:13
|
||||
#: ../../groupware/sync_thunderbird.rst:25
|
||||
@ -69,10 +70,11 @@ msgstr ""
|
||||
"využívaného serveru**."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:17
|
||||
msgid "The next window will ask your username and password for this account."
|
||||
msgid ""
|
||||
"The next window will ask for your username and password for this account."
|
||||
msgstr ""
|
||||
"V následujícím okně budete požádáni o zadání svého uživatelského jména a "
|
||||
"hesla k účtu."
|
||||
"V přístím okně budete dotázáni na své uživatelské jméno a heslo pro tento "
|
||||
"účet."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:18
|
||||
msgid ""
|
||||
@ -88,16 +90,16 @@ msgstr "Zvolte a pak klikněte na **Pokračovat**."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:21
|
||||
msgid ""
|
||||
"If you later add a new Address Book you can redo all of those steps and only"
|
||||
" the books not already synchronized will be suggested."
|
||||
"If you later want to add a new address book, you can redo all of those steps"
|
||||
" and only the books not already synchronized will be suggested."
|
||||
msgstr ""
|
||||
"Pokud později přidáte nový adresář kontaktů, je možné znovu zopakovat tyto "
|
||||
"kroky, přičemž nabídnuty budou pouze ty adresáře, které ještě nejsou "
|
||||
"synchronizovány."
|
||||
"Pokud později budete chtít přidat nový adresář kontaktů, je možné znovu "
|
||||
"zopakovat tyto kroky, přičemž nabídnuty budou pouze ty adresáře, které ještě"
|
||||
" nejsou synchronizovány."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:23
|
||||
msgid "For calendars there is too a native support of CalDAV."
|
||||
msgstr "Pro kalendáře je zde také vestavěná podpora pro CalDAV."
|
||||
msgid "For calendars, the CalDAV protocol is also natively supported."
|
||||
msgstr "V případě kalendářů je CalDAV protokol také nativně podporován."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:27
|
||||
msgid "Click on \"**+**\" near Agendas on the agendas page."
|
||||
@ -109,10 +111,10 @@ msgstr "V následujícím okně zvolte „**Na síti**“."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:29
|
||||
msgid ""
|
||||
"Type you \"**user name**\" and \"**Url of the server**\" and click on \"Find"
|
||||
" Calendars\"."
|
||||
"Type your \"**user name**\" and \"**Url of the server**\", then click on "
|
||||
"\"Find Calendars\"."
|
||||
msgstr ""
|
||||
"Zadejte své „**user name**“ a „**Url serveru**“ a klikněte na „Najít "
|
||||
"Zadejte své „**user name**“ a „**Url serveru**“, pak klikněte na „Najít "
|
||||
"kalendáře“."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:30
|
||||
@ -121,15 +123,15 @@ msgstr "Zvolte které agendy chcete přidat s klikněte na „**Odebrat**“"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:32
|
||||
msgid ""
|
||||
"Same thing here, if you lately want to add more calendar just redo the "
|
||||
"Same thing here, if you later want to add more calendars, just redo the "
|
||||
"procedure."
|
||||
msgstr ""
|
||||
"V případě, že později přidáte další kalendář, pak je to stejné – zopakujte "
|
||||
"proceduru."
|
||||
"To stejné zde – pokud později budete chtít přidat další kalendáře, stačí jen"
|
||||
" postup zopakovat."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:36
|
||||
msgid "Alternative: using the TbSync addon"
|
||||
msgstr "Alternativa: použití doplňku TbSync"
|
||||
msgid "Alternative: Using the TbSync addon"
|
||||
msgstr "Alternativa: Použití doplňku TbSync"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:38
|
||||
msgid "For this method, you need to have two add-ons installed:"
|
||||
@ -143,7 +145,7 @@ msgstr ""
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:41
|
||||
msgid ""
|
||||
"The `TbSync provider for CalDAV and CardDAV "
|
||||
"`TbSync provider for CalDAV and CardDAV "
|
||||
"<https://addons.thunderbird.net/en/thunderbird/addon/dav-4-tbsync/>`_."
|
||||
msgstr ""
|
||||
"`Poskytovatel TbSync pro CalDAV a CardDAV "
|
||||
@ -151,13 +153,13 @@ msgstr ""
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:43
|
||||
msgid ""
|
||||
"When they are installed, if you are on Windows, go to "
|
||||
"**Extras**/**Synchronisation settings (TbSync)** or **Edit/Synchronisation "
|
||||
"settings (TbSync)** if on Linux, and then:"
|
||||
"When they are installed, go to **Extras**/**Synchronisation settings "
|
||||
"(TbSync)** if you are on Windows, or **Edit/Synchronisation settings "
|
||||
"(TbSync)** if on Linux, then:"
|
||||
msgstr ""
|
||||
"Když jsou nainstalovány, pak pokud používáte Windows, jděte do "
|
||||
"**Extra**/**Nastavení synchronizace (TbSync)** nebo **Úpravy/Nastavení "
|
||||
"synchronizace (TbSync)** pokud na Linuxu a potom:"
|
||||
"synchronizace (TbSync)** pokud na Linuxu, potom:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:45
|
||||
msgid ""
|
||||
@ -175,56 +177,62 @@ msgstr ""
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:47
|
||||
msgid ""
|
||||
"Enter an **account name**, which you can freely choose, **user name**, "
|
||||
"**password** and the **URL of your server** and click **next**"
|
||||
"Enter an **account name** (which you can freely choose), a **user name**, a "
|
||||
"**password**, the **URL of your server**, and click **next**"
|
||||
msgstr ""
|
||||
"Zadejte **název účtu**, který je možné zvolit libovolný, **uživatelské "
|
||||
"jméno**, **heslo** a **URL adresu vámi využívaného serveru** a klikněte na "
|
||||
"Zadejte **název účtu**, (který je možné zvolit libovolný), **uživatelské "
|
||||
"jméno**, **heslo**, **URL adresu vámi využívaného serveru** a klikněte na "
|
||||
"**další**"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:48
|
||||
msgid ""
|
||||
"In the next window, TbSync should have autodiscovered the CalDAV and CardDAV"
|
||||
" addresses. When it has, click **Finish**"
|
||||
"In the next window, TbSync should have auto-discovered the CalDAV and "
|
||||
"CardDAV addresses. When it has, click **Finish**"
|
||||
msgstr ""
|
||||
"V následujícím okně by TbSync mělo automaticky objevit CalDAV a CardDAV "
|
||||
"adresy. Pokud ano, klikněte na **Dokončit**"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:49
|
||||
msgid ""
|
||||
"Now check the box **Enable and synchronize this account**. TbSync will "
|
||||
"discover all address books and calenders your account has access to on the "
|
||||
"Check the **Enable and synchronize this account** box. TbSync will now "
|
||||
"discover all address books and calendars your account has access to on the "
|
||||
"server"
|
||||
msgstr ""
|
||||
"Nyní zaškrtněte **Zapnout a synchronizovat tento účet**. TbSync objeví "
|
||||
"Zaškrtněte **Zapnout a synchronizovat tento účet**. TbSync nyní objeví "
|
||||
"veškeré adresáře kontaktů a kalendáře, ke kterým má váš účet přístup na "
|
||||
"serveru"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:50
|
||||
msgid ""
|
||||
"Check the box next to each calender and address book you want to have "
|
||||
"synchronised, also set how often you want them to be synchronised and push "
|
||||
"the button **sychronize now**"
|
||||
"Check the box next to each calendar and address book you want to have "
|
||||
"synchronized, set how often you want them to be synchronized, and push the "
|
||||
"button **synchronize now**"
|
||||
msgstr ""
|
||||
"Zaškrtněte kolonku vedle každého z kalendářů, které chcete synchronizovat, "
|
||||
"také nastavte, jak často chcete, aby byly synchronizovány a klikněte na "
|
||||
"Zaškrtněte kolonku vedle každého z kalendářů, které chcete synchronizovat. "
|
||||
"Dále nastavte, jak často chcete, aby byly synchronizovány a klikněte na "
|
||||
"**synchronizovat nyní**"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:51
|
||||
msgid ""
|
||||
"After the first successful synchronisation is complete, you can close the "
|
||||
"window. Henceforth, TbSync will do the work for you. You are done and can "
|
||||
"skip the next sections (unless you need a more advanced address book)"
|
||||
msgstr ""
|
||||
"Po první úspěšně dokončené synchronizaci můžete okno zavřít. Od této chvíle "
|
||||
"bude TbSync pracovat za vás. Máte hotovo a můžete přeskočit na další sekci "
|
||||
"(pokud nepotřebujete pokročilejší adresář kontaktů)"
|
||||
"After the first successful synchronization is complete, you can close the "
|
||||
"window."
|
||||
msgstr "Po dokončení první úspěšné synchronizace je možné okno zavřít."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:55
|
||||
#: ../../groupware/sync_thunderbird.rst:53
|
||||
msgid ""
|
||||
"Henceforth, TbSync will do the work for you. You are done with the basic "
|
||||
"configuration and can skip the next sections unless you need a more advanced"
|
||||
" address book."
|
||||
msgstr ""
|
||||
"Od tohoto okamžiku bude TbSync pracovat za vás. Jste hotovi se základním "
|
||||
"nastavením a pokud nepotřebujete pokročilejší adresáře kontaktů, můžete "
|
||||
"další přeskočit."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:57
|
||||
msgid "Alternative: Using the CardBook add-on (Contacts only)"
|
||||
msgstr "Alternativa: Použití doplňku CardBook (pouze kontakty)"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:56
|
||||
#: ../../groupware/sync_thunderbird.rst:59
|
||||
msgid ""
|
||||
"`CardBook <https://addons.thunderbird.net/en/thunderbird/addon/cardbook/>`_ "
|
||||
"is an advanced alternative to Thunderbird's address book, which supports "
|
||||
@ -234,19 +242,19 @@ msgstr ""
|
||||
"je pokročilá alternativa k adresáři kontaktů v Thunderbirdu, která podporuje"
|
||||
" CardDAV. TbSync a CardBook je možné mít nainstalované vedle sebe."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:58
|
||||
#: ../../groupware/sync_thunderbird.rst:61
|
||||
msgid "Click the CardBook icon in the upper right corner of Thunderbird:"
|
||||
msgstr "Klikněte na ikonu CardBook v pravém horním rohu okna s Thunderbird:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:62
|
||||
#: ../../groupware/sync_thunderbird.rst:65
|
||||
msgid "In CardBook:"
|
||||
msgstr "V CardBook:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:64
|
||||
msgid "Address book > New Address book **Remote** > Next"
|
||||
msgstr "Adresář kontaktů > Nový adresář **Vzdálený** > Další"
|
||||
#: ../../groupware/sync_thunderbird.rst:67
|
||||
msgid "Go to Address book > New Address book **Remote** > Next"
|
||||
msgstr "Jděte do Adresář kontaktů > Nový adresář **Vzdálený** > Další"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:65
|
||||
#: ../../groupware/sync_thunderbird.rst:68
|
||||
msgid ""
|
||||
"Select **CardDAV**, fill in the address of your Nextcloud server, your user "
|
||||
"name and password"
|
||||
@ -254,7 +262,7 @@ msgstr ""
|
||||
"Vyberte **CardDAV**, vyplňte adresu vámi využívaného Nextcloud serveru, své "
|
||||
"uživatelské jméno a heslo"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:69
|
||||
#: ../../groupware/sync_thunderbird.rst:72
|
||||
msgid ""
|
||||
"Click on \"Validate\", click Next, then choose the name of the address book "
|
||||
"and click Next again:"
|
||||
@ -262,43 +270,43 @@ msgstr ""
|
||||
"Klikněte na „Ověřit“, klikněte na Další, pak zvolte název adresáře kontaktů "
|
||||
"a znovu klikněte na Další:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:73
|
||||
#: ../../groupware/sync_thunderbird.rst:76
|
||||
msgid ""
|
||||
"When you are finished, CardBook synchronizes your address books. You can "
|
||||
"always trigger a synchronisation manually by clicking \"Synchronize\" in the"
|
||||
"always trigger a synchroniZation manually by clicking \"Synchronize\" in the"
|
||||
" top left corner of CardBook:"
|
||||
msgstr ""
|
||||
"Po dokončení CardBook synchronizuje vaše adresáře kontaktů. Vždy ale můžete "
|
||||
"synchronizaci spustit i ručně kliknutím na „Synchronizovat“ v levém horním "
|
||||
"rohu CardBook:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:78
|
||||
#: ../../groupware/sync_thunderbird.rst:82
|
||||
msgid "The old method: Manually subscribing to calendars"
|
||||
msgstr "Původní metoda: ruční přihlašování k odebírání kalendářů"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:79
|
||||
#: ../../groupware/sync_thunderbird.rst:84
|
||||
msgid "This method is only needed if you don't want to install TBSync."
|
||||
msgstr "Tato metoda je potřebná pouze pokud nechcete nainstalovat TBSync."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:81
|
||||
#: ../../groupware/sync_thunderbird.rst:86
|
||||
msgid ""
|
||||
"Go to your Nextcloud Calendar and click on the 3 dotted menu for the "
|
||||
"calendar that you want to synchronize which will display an URL that looks "
|
||||
"something like this:"
|
||||
"Go to your Nextcloud Calendar and click on the 3 dots menu for the calendar "
|
||||
"that you want to synchronize which will display an URL that looks something "
|
||||
"like this:"
|
||||
msgstr ""
|
||||
"Jděte do aplikace Nextcloud Kalendář a klikněte na nabídku pod třemi tečkami"
|
||||
" u kalendáře, který chcete synchronizovat, což zobrazí URL, která vypadá "
|
||||
"podobně jako toto:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:83
|
||||
#: ../../groupware/sync_thunderbird.rst:88
|
||||
msgid ""
|
||||
"``https://cloud.nextcloud.com/remote.php/dav/calendars/daniel/personal/``"
|
||||
msgstr ""
|
||||
"``https://cloud.nextcloud.com/remote.php/dav/calendars/daniel/personal/``"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:85
|
||||
#: ../../groupware/sync_thunderbird.rst:90
|
||||
msgid ""
|
||||
"Go to the calendar view in Thunderbird and right click in the calendar menu "
|
||||
"Go to the calendar view in Thunderbird and right-click in the calendar menu "
|
||||
"to the left (where the names of the calendars are) to add a **New "
|
||||
"Calendar**."
|
||||
msgstr ""
|
||||
@ -306,10 +314,10 @@ msgstr ""
|
||||
"tlačítkem na nabídku kalendáře (kde se nacházejí názvy kalendářů) a přidejte"
|
||||
" **Nový kalendář**."
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:87
|
||||
#: ../../groupware/sync_thunderbird.rst:92
|
||||
msgid "Choose **On the Network**:"
|
||||
msgstr "Zvolte **Na síti**:"
|
||||
|
||||
#: ../../groupware/sync_thunderbird.rst:91
|
||||
#: ../../groupware/sync_thunderbird.rst:96
|
||||
msgid "Choose **CalDAV** and fill in the missing information:"
|
||||
msgstr "Zvolte **CalDAV** a vyplňte chybějící informace:"
|
||||
|
||||