flask-appbuilder 3.2.1rc1__py3-none-any.whl → 5.0.2rc1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- flask_appbuilder/__init__.py +2 -3
- flask_appbuilder/_compat.py +0 -1
- flask_appbuilder/actions.py +14 -14
- flask_appbuilder/api/__init__.py +741 -527
- flask_appbuilder/api/convert.py +104 -98
- flask_appbuilder/api/manager.py +14 -8
- flask_appbuilder/api/schemas.py +12 -1
- flask_appbuilder/babel/manager.py +12 -16
- flask_appbuilder/base.py +353 -280
- flask_appbuilder/basemanager.py +1 -1
- flask_appbuilder/baseviews.py +241 -164
- flask_appbuilder/charts/jsontools.py +10 -10
- flask_appbuilder/charts/views.py +56 -60
- flask_appbuilder/cli.py +115 -70
- flask_appbuilder/const.py +52 -52
- flask_appbuilder/exceptions.py +67 -5
- flask_appbuilder/fields.py +32 -23
- flask_appbuilder/fieldwidgets.py +34 -27
- flask_appbuilder/filemanager.py +33 -45
- flask_appbuilder/filters.py +11 -13
- flask_appbuilder/forms.py +31 -35
- flask_appbuilder/hooks.py +90 -0
- flask_appbuilder/menu.py +35 -10
- flask_appbuilder/models/base.py +47 -57
- flask_appbuilder/models/decorators.py +13 -13
- flask_appbuilder/models/filters.py +42 -38
- flask_appbuilder/models/generic/__init__.py +29 -29
- flask_appbuilder/models/generic/filters.py +11 -3
- flask_appbuilder/models/generic/interface.py +1 -3
- flask_appbuilder/models/group.py +37 -39
- flask_appbuilder/models/mixins.py +22 -18
- flask_appbuilder/models/sqla/__init__.py +19 -72
- flask_appbuilder/models/sqla/base.py +24 -0
- flask_appbuilder/models/sqla/base_legacy.py +132 -0
- flask_appbuilder/models/sqla/filters.py +132 -19
- flask_appbuilder/models/sqla/interface.py +390 -276
- flask_appbuilder/security/api.py +31 -35
- flask_appbuilder/security/decorators.py +181 -83
- flask_appbuilder/security/forms.py +20 -31
- flask_appbuilder/security/manager.py +715 -489
- flask_appbuilder/security/registerviews.py +29 -112
- flask_appbuilder/security/schemas.py +43 -0
- flask_appbuilder/security/sqla/apis/__init__.py +8 -0
- flask_appbuilder/security/sqla/apis/group/__init__.py +1 -0
- flask_appbuilder/security/sqla/apis/group/api.py +227 -0
- flask_appbuilder/security/sqla/apis/group/schema.py +73 -0
- flask_appbuilder/security/sqla/apis/permission/__init__.py +1 -0
- flask_appbuilder/security/sqla/apis/permission/api.py +19 -0
- flask_appbuilder/security/sqla/apis/permission_view_menu/__init__.py +1 -0
- flask_appbuilder/security/sqla/apis/permission_view_menu/api.py +16 -0
- flask_appbuilder/security/sqla/apis/role/__init__.py +1 -0
- flask_appbuilder/security/sqla/apis/role/api.py +306 -0
- flask_appbuilder/security/sqla/apis/role/schema.py +27 -0
- flask_appbuilder/security/sqla/apis/user/__init__.py +1 -0
- flask_appbuilder/security/sqla/apis/user/api.py +292 -0
- flask_appbuilder/security/sqla/apis/user/schema.py +97 -0
- flask_appbuilder/security/sqla/apis/user/validator.py +27 -0
- flask_appbuilder/security/sqla/apis/view_menu/__init__.py +1 -0
- flask_appbuilder/security/sqla/apis/view_menu/api.py +18 -0
- flask_appbuilder/security/sqla/manager.py +421 -203
- flask_appbuilder/security/sqla/models.py +192 -57
- flask_appbuilder/security/utils.py +9 -0
- flask_appbuilder/security/views.py +232 -229
- flask_appbuilder/static/.DS_Store +0 -0
- flask_appbuilder/static/appbuilder/css/ab.css +20 -12
- flask_appbuilder/static/appbuilder/css/bootstrap-datepicker/bootstrap-datepicker3.min.css +7 -0
- flask_appbuilder/static/appbuilder/css/bootstrap.min.css.map +1 -0
- flask_appbuilder/static/appbuilder/css/flags/flags16.css +249 -245
- flask_appbuilder/static/appbuilder/css/fontawesome/all.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/brands.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/fontawesome.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/regular.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/solid.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/svg-with-js.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/v4-font-face.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/v4-shims.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/fontawesome/v5-font-face.min.css +6 -0
- flask_appbuilder/static/appbuilder/css/images/flags16.png +0 -0
- flask_appbuilder/static/appbuilder/css/select2/select2-bootstrap.min.css +7 -0
- flask_appbuilder/static/appbuilder/css/select2/select2.min.css +1 -0
- flask_appbuilder/static/appbuilder/css/swagger/swagger-ui.css +3 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-brands-400.ttf +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-brands-400.woff2 +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-regular-400.ttf +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-regular-400.woff2 +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-solid-900.ttf +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-solid-900.woff2 +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-v4compatibility.ttf +0 -0
- flask_appbuilder/static/appbuilder/css/webfonts/fa-v4compatibility.woff2 +0 -0
- flask_appbuilder/static/appbuilder/js/ab.js +33 -23
- flask_appbuilder/static/appbuilder/js/ab_filters.js +91 -84
- flask_appbuilder/static/appbuilder/js/bootstrap-datepicker/bootstrap-datepicker.min.js +8 -0
- flask_appbuilder/static/appbuilder/js/jquery-latest.js +2 -2
- flask_appbuilder/static/appbuilder/js/select2/select2.min.js +2 -0
- flask_appbuilder/static/appbuilder/js/swagger-ui-bundle.js +3 -0
- flask_appbuilder/templates/appbuilder/baselib.html +9 -3
- flask_appbuilder/templates/appbuilder/general/lib.html +60 -34
- flask_appbuilder/templates/appbuilder/general/model/edit.html +1 -1
- flask_appbuilder/templates/appbuilder/general/model/edit_cascade.html +1 -1
- flask_appbuilder/templates/appbuilder/general/model/search.html +3 -2
- flask_appbuilder/templates/appbuilder/general/model/show.html +1 -1
- flask_appbuilder/templates/appbuilder/general/model/show_cascade.html +1 -1
- flask_appbuilder/templates/appbuilder/general/security/login_db.html +7 -7
- flask_appbuilder/templates/appbuilder/general/security/login_ldap.html +5 -5
- flask_appbuilder/templates/appbuilder/general/security/login_oauth.html +24 -49
- flask_appbuilder/templates/appbuilder/general/widgets/base_list.html +2 -1
- flask_appbuilder/templates/appbuilder/general/widgets/chart.html +4 -2
- flask_appbuilder/templates/appbuilder/general/widgets/direct_chart.html +4 -3
- flask_appbuilder/templates/appbuilder/general/widgets/multiple_chart.html +3 -2
- flask_appbuilder/templates/appbuilder/general/widgets/search.html +11 -10
- flask_appbuilder/templates/appbuilder/init.html +37 -43
- flask_appbuilder/templates/appbuilder/navbar_menu.html +1 -1
- flask_appbuilder/templates/appbuilder/navbar_right.html +2 -2
- flask_appbuilder/templates/appbuilder/swagger/swagger.html +22 -19
- flask_appbuilder/translations/de/LC_MESSAGES/messages.mo +0 -0
- flask_appbuilder/translations/de/LC_MESSAGES/messages.po +305 -161
- flask_appbuilder/translations/fa/LC_MESSAGES/messages.mo +0 -0
- flask_appbuilder/translations/fa/LC_MESSAGES/messages.po +802 -0
- flask_appbuilder/translations/fr/LC_MESSAGES/messages.po +461 -319
- flask_appbuilder/translations/pt_BR/LC_MESSAGES/messages.po +650 -650
- flask_appbuilder/translations/ru/LC_MESSAGES/messages.po +1 -1
- flask_appbuilder/translations/sl/LC_MESSAGES/messages.mo +0 -0
- flask_appbuilder/translations/sl/LC_MESSAGES/messages.po +690 -0
- flask_appbuilder/translations/tr/LC_MESSAGES/messages.mo +0 -0
- flask_appbuilder/translations/tr/LC_MESSAGES/messages.po +1015 -0
- flask_appbuilder/upload.py +20 -22
- flask_appbuilder/urltools.py +39 -19
- flask_appbuilder/utils/base.py +76 -0
- flask_appbuilder/utils/legacy.py +33 -0
- flask_appbuilder/utils/limit.py +20 -0
- flask_appbuilder/validators.py +73 -14
- flask_appbuilder/views.py +75 -424
- flask_appbuilder/widgets.py +50 -51
- {Flask_AppBuilder-3.2.1rc1.dist-info → flask_appbuilder-5.0.2rc1.dist-info}/METADATA +36 -76
- flask_appbuilder-5.0.2rc1.dist-info/RECORD +240 -0
- {Flask_AppBuilder-3.2.1rc1.dist-info → flask_appbuilder-5.0.2rc1.dist-info}/WHEEL +1 -1
- flask_appbuilder-5.0.2rc1.dist-info/entry_points.txt +2 -0
- Flask_AppBuilder-3.2.1rc1.dist-info/RECORD +0 -270
- Flask_AppBuilder-3.2.1rc1.dist-info/entry_points.txt +0 -6
- flask_appbuilder/console.py +0 -426
- flask_appbuilder/models/mongoengine/__init__.py +0 -0
- flask_appbuilder/models/mongoengine/fields.py +0 -65
- flask_appbuilder/models/mongoengine/filters.py +0 -145
- flask_appbuilder/models/mongoengine/interface.py +0 -328
- flask_appbuilder/security/mongoengine/__init__.py +0 -0
- flask_appbuilder/security/mongoengine/manager.py +0 -402
- flask_appbuilder/security/mongoengine/models.py +0 -120
- flask_appbuilder/static/appbuilder/css/font-awesome.min.css +0 -4
- flask_appbuilder/static/appbuilder/datepicker/bootstrap-datepicker.css +0 -9
- flask_appbuilder/static/appbuilder/datepicker/bootstrap-datepicker.js +0 -28
- flask_appbuilder/static/appbuilder/fonts/FontAwesome.otf +0 -0
- flask_appbuilder/static/appbuilder/fonts/fontawesome-webfont.eot +0 -0
- flask_appbuilder/static/appbuilder/fonts/fontawesome-webfont.svg +0 -2671
- flask_appbuilder/static/appbuilder/fonts/fontawesome-webfont.ttf +0 -0
- flask_appbuilder/static/appbuilder/fonts/fontawesome-webfont.woff +0 -0
- flask_appbuilder/static/appbuilder/fonts/fontawesome-webfont.woff2 +0 -0
- flask_appbuilder/static/appbuilder/img/aol.png +0 -0
- flask_appbuilder/static/appbuilder/img/flags/flags16.png +0 -0
- flask_appbuilder/static/appbuilder/img/flickr.png +0 -0
- flask_appbuilder/static/appbuilder/img/google.png +0 -0
- flask_appbuilder/static/appbuilder/img/myopenid.png +0 -0
- flask_appbuilder/static/appbuilder/img/yahoo.png +0 -0
- flask_appbuilder/static/appbuilder/js/_google_charts.js +0 -39
- flask_appbuilder/static/appbuilder/js/html5shiv.js +0 -8
- flask_appbuilder/static/appbuilder/js/respond.min.js +0 -6
- flask_appbuilder/static/appbuilder/select2/select2-spinner.gif +0 -0
- flask_appbuilder/static/appbuilder/select2/select2.css +0 -1205
- flask_appbuilder/static/appbuilder/select2/select2.js +0 -23
- flask_appbuilder/static/appbuilder/select2/select2.png +0 -0
- flask_appbuilder/static/appbuilder/select2/select2x2.png +0 -0
- flask_appbuilder/templates/appbuilder/general/security/login_oid.html +0 -129
- flask_appbuilder/templates/appbuilder/general/security/resetpassword.html +0 -29
- flask_appbuilder/tests/__init__.py +0 -0
- flask_appbuilder/tests/__pycache__/__init__.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/__init__.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/_test_auth_ldap.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/_test_auth_oauth.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/_test_ldapsearch.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/_test_oauth_registration_role.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/base.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/base.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/config_api.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/config_api.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/const.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/const.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_0_fixture.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_0_fixture.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_api.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_api.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_fab_cli.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_fab_cli.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_menu.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_menu.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_mongoengine.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_mvc.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_mvc.cpython-37.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_sqlalchemy.cpython-36.pyc +0 -0
- flask_appbuilder/tests/__pycache__/test_sqlalchemy.cpython-37.pyc +0 -0
- flask_appbuilder/tests/_test_auth_ldap.py +0 -1045
- flask_appbuilder/tests/_test_auth_oauth.py +0 -419
- flask_appbuilder/tests/_test_ldapsearch.py +0 -135
- flask_appbuilder/tests/_test_oauth_registration_role.py +0 -59
- flask_appbuilder/tests/app.db +0 -0
- flask_appbuilder/tests/base.py +0 -90
- flask_appbuilder/tests/config_api.py +0 -21
- flask_appbuilder/tests/const.py +0 -9
- flask_appbuilder/tests/mongoengine/__init__.py +0 -0
- flask_appbuilder/tests/mongoengine/__pycache__/__init__.cpython-36.pyc +0 -0
- flask_appbuilder/tests/mongoengine/__pycache__/__init__.cpython-37.pyc +0 -0
- flask_appbuilder/tests/mongoengine/__pycache__/models.cpython-36.pyc +0 -0
- flask_appbuilder/tests/mongoengine/models.py +0 -41
- flask_appbuilder/tests/sqla/__init__.py +0 -0
- flask_appbuilder/tests/sqla/__pycache__/__init__.cpython-36.pyc +0 -0
- flask_appbuilder/tests/sqla/__pycache__/__init__.cpython-37.pyc +0 -0
- flask_appbuilder/tests/sqla/__pycache__/models.cpython-36.pyc +0 -0
- flask_appbuilder/tests/sqla/__pycache__/models.cpython-37.pyc +0 -0
- flask_appbuilder/tests/sqla/models.py +0 -340
- flask_appbuilder/tests/test_0_fixture.py +0 -39
- flask_appbuilder/tests/test_api.py +0 -2790
- flask_appbuilder/tests/test_fab_cli.py +0 -72
- flask_appbuilder/tests/test_menu.py +0 -122
- flask_appbuilder/tests/test_mongoengine.py +0 -572
- flask_appbuilder/tests/test_mvc.py +0 -1710
- flask_appbuilder/tests/test_sqlalchemy.py +0 -24
- flask_appbuilder/translations/__pycache__/__init__.cpython-36.pyc +0 -0
- flask_appbuilder/translations/es/LC_MESSAGES/messages.po~ +0 -582
- {Flask_AppBuilder-3.2.1rc1.dist-info → flask_appbuilder-5.0.2rc1.dist-info}/LICENSE +0 -0
- {Flask_AppBuilder-3.2.1rc1.dist-info → flask_appbuilder-5.0.2rc1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,802 @@
|
|
|
1
|
+
# Persian translations for PROJECT.
|
|
2
|
+
# Copyright (C) 2024 ORGANIZATION
|
|
3
|
+
# This file is distributed under the same license as the PROJECT project.
|
|
4
|
+
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
|
|
5
|
+
#
|
|
6
|
+
msgid ""
|
|
7
|
+
msgstr ""
|
|
8
|
+
"Project-Id-Version: PROJECT VERSION\n"
|
|
9
|
+
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
|
10
|
+
"POT-Creation-Date: 2024-10-22 12:02+0330\n"
|
|
11
|
+
"PO-Revision-Date: 2024-10-22 12:20+0330\n"
|
|
12
|
+
"Last-Translator: Emad Rad <Codewithemad@gmail.com>\n"
|
|
13
|
+
"Language-Team: fa <LL@li.org>\n"
|
|
14
|
+
"Language: fa\n"
|
|
15
|
+
"MIME-Version: 1.0\n"
|
|
16
|
+
"Content-Type: text/plain; charset=utf-8\n"
|
|
17
|
+
"Content-Transfer-Encoding: 8bit\n"
|
|
18
|
+
"Plural-Forms: nplurals=1; plural=0\n"
|
|
19
|
+
"Generated-By: Babel 2.9.1\n"
|
|
20
|
+
|
|
21
|
+
#: examples/extendsecurity/app/sec_forms.py:10
|
|
22
|
+
#: examples/extendsecurity2/app/sec_forms.py:10
|
|
23
|
+
#: flask_appbuilder/security/forms.py:37 flask_appbuilder/security/forms.py:75
|
|
24
|
+
#: flask_appbuilder/security/forms.py:114
|
|
25
|
+
#: flask_appbuilder/security/views.py:155
|
|
26
|
+
msgid "First Name"
|
|
27
|
+
msgstr "نام کوچک"
|
|
28
|
+
|
|
29
|
+
#: examples/extendsecurity/app/sec_forms.py:13
|
|
30
|
+
#: examples/extendsecurity2/app/sec_forms.py:13
|
|
31
|
+
#: flask_appbuilder/security/forms.py:40
|
|
32
|
+
#: flask_appbuilder/security/views.py:172
|
|
33
|
+
msgid "Write the user first name or names"
|
|
34
|
+
msgstr "نام یا نامهای کاربر را وارد کنید"
|
|
35
|
+
|
|
36
|
+
#: examples/extendsecurity/app/sec_forms.py:16
|
|
37
|
+
#: examples/extendsecurity2/app/sec_forms.py:16
|
|
38
|
+
#: flask_appbuilder/security/forms.py:43 flask_appbuilder/security/forms.py:80
|
|
39
|
+
#: flask_appbuilder/security/forms.py:119
|
|
40
|
+
#: flask_appbuilder/security/views.py:156
|
|
41
|
+
msgid "Last Name"
|
|
42
|
+
msgstr "نام خانوادگی"
|
|
43
|
+
|
|
44
|
+
#: examples/extendsecurity/app/sec_forms.py:19
|
|
45
|
+
#: examples/extendsecurity2/app/sec_forms.py:19
|
|
46
|
+
#: flask_appbuilder/security/forms.py:46
|
|
47
|
+
#: flask_appbuilder/security/views.py:173
|
|
48
|
+
msgid "Write the user last name"
|
|
49
|
+
msgstr "نام خانوادگی کاربر را وارد کنید"
|
|
50
|
+
|
|
51
|
+
#: examples/extendsecurity/app/sec_forms.py:22
|
|
52
|
+
#: examples/extendsecurity2/app/sec_forms.py:22
|
|
53
|
+
msgid "Emp. Number"
|
|
54
|
+
msgstr "شماره کارمندی"
|
|
55
|
+
|
|
56
|
+
#: examples/extendsecurity/app/sec_forms.py:25
|
|
57
|
+
#: examples/extendsecurity2/app/sec_forms.py:25
|
|
58
|
+
msgid "Employee Number"
|
|
59
|
+
msgstr "شماره کارمند"
|
|
60
|
+
|
|
61
|
+
#: examples/extendsecurity/app/sec_views.py:14
|
|
62
|
+
#: examples/extendsecurity/app/sec_views.py:39
|
|
63
|
+
#: examples/extendsecurity2/app/sec_views.py:14
|
|
64
|
+
#: examples/extendsecurity2/app/sec_views.py:39
|
|
65
|
+
#: examples/mongo_extendedsecurity/app/mysecurity.py:37
|
|
66
|
+
#: examples/mongo_extendedsecurity/app/mysecurity.py:62
|
|
67
|
+
#: examples/quickhowto2/app/sec_views.py:14
|
|
68
|
+
#: examples/quickhowto2/app/sec_views.py:39
|
|
69
|
+
#: flask_appbuilder/security/views.py:194
|
|
70
|
+
#: flask_appbuilder/security/views.py:219
|
|
71
|
+
msgid "User info"
|
|
72
|
+
msgstr "اطلاعات کاربر"
|
|
73
|
+
|
|
74
|
+
#: examples/extendsecurity/app/sec_views.py:18
|
|
75
|
+
#: examples/extendsecurity/app/sec_views.py:43
|
|
76
|
+
#: examples/extendsecurity2/app/sec_views.py:18
|
|
77
|
+
#: examples/extendsecurity2/app/sec_views.py:43
|
|
78
|
+
#: examples/mongo_extendedsecurity/app/mysecurity.py:41
|
|
79
|
+
#: examples/mongo_extendedsecurity/app/mysecurity.py:66
|
|
80
|
+
#: examples/quickhowto2/app/sec_views.py:18
|
|
81
|
+
#: examples/quickhowto2/app/sec_views.py:43
|
|
82
|
+
#: flask_appbuilder/security/views.py:198
|
|
83
|
+
#: flask_appbuilder/security/views.py:223
|
|
84
|
+
msgid "Personal Info"
|
|
85
|
+
msgstr "اطلاعات شخصی"
|
|
86
|
+
|
|
87
|
+
#: examples/extendsecurity/app/sec_views.py:22
|
|
88
|
+
#: examples/extendsecurity2/app/sec_views.py:22
|
|
89
|
+
#: examples/mongo_extendedsecurity/app/mysecurity.py:45
|
|
90
|
+
#: examples/quickhowto2/app/sec_views.py:22
|
|
91
|
+
#: flask_appbuilder/security/views.py:202
|
|
92
|
+
msgid "Audit Info"
|
|
93
|
+
msgstr "اطلاعات حسابرسی"
|
|
94
|
+
|
|
95
|
+
#: examples/masterdetail/app/views.py:87 examples/quickhowto3/app/views.py:96
|
|
96
|
+
msgid "List Groups"
|
|
97
|
+
msgstr "لیست گروهها"
|
|
98
|
+
|
|
99
|
+
#: examples/masterdetail/app/views.py:88
|
|
100
|
+
msgid "Manage Groups"
|
|
101
|
+
msgstr "مدیریت گروهها"
|
|
102
|
+
|
|
103
|
+
#: examples/masterdetail/app/views.py:89 examples/quickhowto3/app/views.py:97
|
|
104
|
+
msgid "List Contacts"
|
|
105
|
+
msgstr "لیست مخاطبان"
|
|
106
|
+
|
|
107
|
+
#: examples/masterdetail/app/views.py:90 examples/quickhowto3/app/views.py:98
|
|
108
|
+
msgid "Contacts Chart"
|
|
109
|
+
msgstr "نمودار مخاطبین"
|
|
110
|
+
|
|
111
|
+
#: examples/masterdetail/app/views.py:91 examples/quickhowto3/app/views.py:99
|
|
112
|
+
msgid "Contacts Birth Chart"
|
|
113
|
+
msgstr "نقشه تولد مخاطبین"
|
|
114
|
+
|
|
115
|
+
#: examples/oauth/app/forms.py:10
|
|
116
|
+
msgid "Tweet message"
|
|
117
|
+
msgstr "پیام توییت"
|
|
118
|
+
|
|
119
|
+
#: examples/quickhowto2/app/forms.py:10 examples/quickhowto2/app/forms.py:15
|
|
120
|
+
msgid "Test Field One"
|
|
121
|
+
msgstr "فیلد آزمایشی یک"
|
|
122
|
+
|
|
123
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:50
|
|
124
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:108
|
|
125
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:187
|
|
126
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:382
|
|
127
|
+
msgid "Add a new record"
|
|
128
|
+
msgstr "یک رکورد جدید اضافه کنید"
|
|
129
|
+
|
|
130
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:51
|
|
131
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:131
|
|
132
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:210
|
|
133
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:398
|
|
134
|
+
msgid "Show record"
|
|
135
|
+
msgstr "نمایش رکورد"
|
|
136
|
+
|
|
137
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:52
|
|
138
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:132
|
|
139
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:211
|
|
140
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:390
|
|
141
|
+
msgid "Edit record"
|
|
142
|
+
msgstr "ویرایش رکورد"
|
|
143
|
+
|
|
144
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:53
|
|
145
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:133
|
|
146
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:212
|
|
147
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:410
|
|
148
|
+
msgid "Delete record"
|
|
149
|
+
msgstr "حذف رکورد"
|
|
150
|
+
|
|
151
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:54
|
|
152
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:110
|
|
153
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:189
|
|
154
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:333
|
|
155
|
+
msgid "Record Count"
|
|
156
|
+
msgstr "تعداد رکوردها"
|
|
157
|
+
|
|
158
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:55
|
|
159
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:105
|
|
160
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:184
|
|
161
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:115
|
|
162
|
+
msgid "Page size"
|
|
163
|
+
msgstr "اندازه صفحه"
|
|
164
|
+
|
|
165
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:67
|
|
166
|
+
#: examples/quickhowto2/app/templates/list_angulajs.html:149
|
|
167
|
+
#: flask_appbuilder/templates/appbuilder/general/widgets/search.html:8
|
|
168
|
+
msgid "Add Filter"
|
|
169
|
+
msgstr "افزودن فیلتر"
|
|
170
|
+
|
|
171
|
+
#: examples/quickhowto2/app/templates/widgets/list.html:70
|
|
172
|
+
#: flask_appbuilder/messages.py:14
|
|
173
|
+
#: flask_appbuilder/templates/appbuilder/general/widgets/base_list.html:39
|
|
174
|
+
#: flask_appbuilder/templates/appbuilder/general/widgets/list_carousel.html:50
|
|
175
|
+
#: flask_appbuilder/templates/appbuilder/general/widgets/list_master.html:17
|
|
176
|
+
msgid "No records found"
|
|
177
|
+
msgstr "هیچ رکوردی یافت نشد"
|
|
178
|
+
|
|
179
|
+
#: examples/quickhowto2/app/templates/widgets/list_override.html:9
|
|
180
|
+
#: flask_appbuilder/messages.py:10
|
|
181
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:373
|
|
182
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:374
|
|
183
|
+
msgid "Back"
|
|
184
|
+
msgstr "بازگشت"
|
|
185
|
+
|
|
186
|
+
#: examples/quicktemplates/app/templates/mybase.html:44
|
|
187
|
+
#: flask_appbuilder/templates/appbuilder/baselib.html:116
|
|
188
|
+
#: flask_appbuilder/templates/appbuilder/navbar_right.html:38
|
|
189
|
+
msgid "Logout"
|
|
190
|
+
msgstr "خروج"
|
|
191
|
+
|
|
192
|
+
#: examples/quicktemplates/app/templates/mybase.html:49
|
|
193
|
+
#: flask_appbuilder/templates/appbuilder/baselib.html:122
|
|
194
|
+
#: flask_appbuilder/templates/appbuilder/navbar_right.html:43
|
|
195
|
+
msgid "Login"
|
|
196
|
+
msgstr "ورود"
|
|
197
|
+
|
|
198
|
+
#: examples/simpleform/app/views.py:26
|
|
199
|
+
msgid "My form View"
|
|
200
|
+
msgstr "نمایش فرم من"
|
|
201
|
+
|
|
202
|
+
#: examples/simpleform/app/templates/404.html:4
|
|
203
|
+
msgid "Page not found"
|
|
204
|
+
msgstr "صفحه پیدا نشد"
|
|
205
|
+
|
|
206
|
+
#: flask_appbuilder/const.py:126
|
|
207
|
+
msgid "Access is Denied"
|
|
208
|
+
msgstr "دسترسی برای شما مجاز نیست"
|
|
209
|
+
|
|
210
|
+
#: flask_appbuilder/fields.py:163 flask_appbuilder/fields.py:165
|
|
211
|
+
#: flask_appbuilder/fields.py:226 flask_appbuilder/fields.py:233
|
|
212
|
+
#: flask_appbuilder/fields.py:292
|
|
213
|
+
msgid "Not a valid choice"
|
|
214
|
+
msgstr "انتخاب نامعتبر است"
|
|
215
|
+
|
|
216
|
+
#: flask_appbuilder/fieldwidgets.py:159 flask_appbuilder/fieldwidgets.py:179
|
|
217
|
+
msgid "Select Value"
|
|
218
|
+
msgstr "انتخاب مقدار"
|
|
219
|
+
|
|
220
|
+
#: flask_appbuilder/messages.py:9
|
|
221
|
+
#: flask_appbuilder/templates/appbuilder/general/charts/chart.html:8
|
|
222
|
+
#: flask_appbuilder/templates/appbuilder/general/charts/chart_time.html:10
|
|
223
|
+
#: flask_appbuilder/templates/appbuilder/general/charts/jsonchart.html:8
|
|
224
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:366
|
|
225
|
+
#: flask_appbuilder/templates/appbuilder/general/model/list.html:8
|
|
226
|
+
msgid "Search"
|
|
227
|
+
msgstr "جستجو"
|
|
228
|
+
|
|
229
|
+
#: flask_appbuilder/messages.py:11
|
|
230
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:313
|
|
231
|
+
msgid "Save"
|
|
232
|
+
msgstr "ذخیره کنید"
|
|
233
|
+
|
|
234
|
+
#: flask_appbuilder/messages.py:12
|
|
235
|
+
msgid "This field is required."
|
|
236
|
+
msgstr "این فیلد الزامی است."
|
|
237
|
+
|
|
238
|
+
#: flask_appbuilder/messages.py:13
|
|
239
|
+
msgid "Not a valid date value"
|
|
240
|
+
msgstr "مقدار تاریخ معتبر نیست"
|
|
241
|
+
|
|
242
|
+
#: flask_appbuilder/upload.py:158 flask_appbuilder/upload.py:210
|
|
243
|
+
msgid "Invalid file extension"
|
|
244
|
+
msgstr "پسوند فایل نامعتبر است"
|
|
245
|
+
|
|
246
|
+
#: flask_appbuilder/validators.py:52
|
|
247
|
+
msgid "Already exists."
|
|
248
|
+
msgstr "قبلاً وجود دارد."
|
|
249
|
+
|
|
250
|
+
#: flask_appbuilder/validators.py:87
|
|
251
|
+
msgid ""
|
|
252
|
+
"Must have at least two capital letters, one special character, two digits, "
|
|
253
|
+
"three lower case letters and a minimal length of 10."
|
|
254
|
+
msgstr ""
|
|
255
|
+
"حداقل باید شامل دو حرف بزرگ، یک کاراکتر خاص، دو عدد، سه حرف کوچک و حداقل طول"
|
|
256
|
+
" ۱۰ باشد."
|
|
257
|
+
|
|
258
|
+
#: flask_appbuilder/charts/views.py:35
|
|
259
|
+
msgid "Group by"
|
|
260
|
+
msgstr "گروهبندی بر اساس"
|
|
261
|
+
|
|
262
|
+
#: flask_appbuilder/models/base.py:30
|
|
263
|
+
msgid "Added Row"
|
|
264
|
+
msgstr "سطر اضافه شد"
|
|
265
|
+
|
|
266
|
+
#: flask_appbuilder/models/base.py:31
|
|
267
|
+
msgid "Changed Row"
|
|
268
|
+
msgstr "ردیف تغییر یافته"
|
|
269
|
+
|
|
270
|
+
#: flask_appbuilder/models/base.py:32
|
|
271
|
+
msgid "Deleted Row"
|
|
272
|
+
msgstr "روند حذف شده"
|
|
273
|
+
|
|
274
|
+
#: flask_appbuilder/models/base.py:33
|
|
275
|
+
msgid "Associated data exists, please delete them first"
|
|
276
|
+
msgstr "دادههای مرتبط وجود دارد، لطفاً ابتدا آنها را حذف کنید."
|
|
277
|
+
|
|
278
|
+
#: flask_appbuilder/models/base.py:36 flask_appbuilder/models/base.py:39
|
|
279
|
+
msgid "Integrity error, probably unique constraint"
|
|
280
|
+
msgstr "خطای یکپارچگی، احتمالاً محدودیت یکتایی"
|
|
281
|
+
|
|
282
|
+
#: flask_appbuilder/models/base.py:42
|
|
283
|
+
msgid "General Error"
|
|
284
|
+
msgstr "خطای عمومی"
|
|
285
|
+
|
|
286
|
+
#: flask_appbuilder/models/base.py:44
|
|
287
|
+
msgid "Database Error"
|
|
288
|
+
msgstr "خطای پایگاه داده"
|
|
289
|
+
|
|
290
|
+
#: flask_appbuilder/models/group.py:32
|
|
291
|
+
msgid "Count of"
|
|
292
|
+
msgstr "تعداد"
|
|
293
|
+
|
|
294
|
+
#: flask_appbuilder/models/group.py:41
|
|
295
|
+
msgid "Sum of"
|
|
296
|
+
msgstr "جمع"
|
|
297
|
+
|
|
298
|
+
#: flask_appbuilder/models/group.py:50
|
|
299
|
+
msgid "Avg. of"
|
|
300
|
+
msgstr "بهطور متوسط از"
|
|
301
|
+
|
|
302
|
+
#: flask_appbuilder/models/generic/filters.py:20
|
|
303
|
+
#: flask_appbuilder/models/mongoengine/filters.py:76
|
|
304
|
+
#: flask_appbuilder/models/sqla/filters.py:120
|
|
305
|
+
msgid "Contains"
|
|
306
|
+
msgstr "شامل میشود"
|
|
307
|
+
|
|
308
|
+
#: flask_appbuilder/models/generic/filters.py:31
|
|
309
|
+
msgid "Contains (insensitive)"
|
|
310
|
+
msgstr "شامل (بیاحساس)"
|
|
311
|
+
|
|
312
|
+
#: flask_appbuilder/models/generic/filters.py:38
|
|
313
|
+
#: flask_appbuilder/models/mongoengine/filters.py:84
|
|
314
|
+
#: flask_appbuilder/models/sqla/filters.py:129
|
|
315
|
+
msgid "Not Contains"
|
|
316
|
+
msgstr "شامل نمیشود"
|
|
317
|
+
|
|
318
|
+
#: flask_appbuilder/models/generic/filters.py:45
|
|
319
|
+
#: flask_appbuilder/models/mongoengine/filters.py:22
|
|
320
|
+
#: flask_appbuilder/models/sqla/filters.py:138
|
|
321
|
+
msgid "Equal to"
|
|
322
|
+
msgstr "مساوی با"
|
|
323
|
+
|
|
324
|
+
#: flask_appbuilder/models/generic/filters.py:52
|
|
325
|
+
#: flask_appbuilder/models/mongoengine/filters.py:33
|
|
326
|
+
#: flask_appbuilder/models/sqla/filters.py:148
|
|
327
|
+
msgid "Not Equal to"
|
|
328
|
+
msgstr "نامساوی با"
|
|
329
|
+
|
|
330
|
+
#: flask_appbuilder/models/generic/filters.py:59
|
|
331
|
+
#: flask_appbuilder/models/mongoengine/filters.py:44
|
|
332
|
+
#: flask_appbuilder/models/sqla/filters.py:159
|
|
333
|
+
msgid "Greater than"
|
|
334
|
+
msgstr "بیشتر از"
|
|
335
|
+
|
|
336
|
+
#: flask_appbuilder/models/generic/filters.py:66
|
|
337
|
+
#: flask_appbuilder/models/mongoengine/filters.py:52
|
|
338
|
+
#: flask_appbuilder/models/sqla/filters.py:173
|
|
339
|
+
msgid "Smaller than"
|
|
340
|
+
msgstr "کوچکتر از"
|
|
341
|
+
|
|
342
|
+
#: flask_appbuilder/models/generic/filters.py:73
|
|
343
|
+
msgid "Start with"
|
|
344
|
+
msgstr "شروع کنید با"
|
|
345
|
+
|
|
346
|
+
#: flask_appbuilder/models/mongoengine/filters.py:60
|
|
347
|
+
#: flask_appbuilder/models/sqla/filters.py:84
|
|
348
|
+
msgid "Starts with"
|
|
349
|
+
msgstr "شروع میشود با"
|
|
350
|
+
|
|
351
|
+
#: flask_appbuilder/models/mongoengine/filters.py:68
|
|
352
|
+
#: flask_appbuilder/models/sqla/filters.py:93
|
|
353
|
+
msgid "Not Starts with"
|
|
354
|
+
msgstr "شروع نمیشود با"
|
|
355
|
+
|
|
356
|
+
#: flask_appbuilder/models/mongoengine/filters.py:92
|
|
357
|
+
#: flask_appbuilder/models/sqla/filters.py:187
|
|
358
|
+
msgid "Relation"
|
|
359
|
+
msgstr "رابطه"
|
|
360
|
+
|
|
361
|
+
#: flask_appbuilder/models/mongoengine/filters.py:101
|
|
362
|
+
#: flask_appbuilder/models/sqla/filters.py:229
|
|
363
|
+
msgid "Relation as Many"
|
|
364
|
+
msgstr "رابطه به صورت چندین"
|
|
365
|
+
|
|
366
|
+
#: flask_appbuilder/models/sqla/filters.py:102
|
|
367
|
+
msgid "Ends with"
|
|
368
|
+
msgstr "به پایان میرسد با"
|
|
369
|
+
|
|
370
|
+
#: flask_appbuilder/models/sqla/filters.py:111
|
|
371
|
+
msgid "Not Ends with"
|
|
372
|
+
msgstr "پایاننیافته با"
|
|
373
|
+
|
|
374
|
+
#: flask_appbuilder/models/sqla/filters.py:208
|
|
375
|
+
msgid "No Relation"
|
|
376
|
+
msgstr "هیچ رابطهای"
|
|
377
|
+
|
|
378
|
+
#: flask_appbuilder/security/forms.py:25
|
|
379
|
+
msgid "OpenID"
|
|
380
|
+
msgstr "اوپن آیدی"
|
|
381
|
+
|
|
382
|
+
#: flask_appbuilder/security/forms.py:26 flask_appbuilder/security/forms.py:31
|
|
383
|
+
#: flask_appbuilder/security/forms.py:70
|
|
384
|
+
#: flask_appbuilder/security/forms.py:109
|
|
385
|
+
#: flask_appbuilder/security/views.py:157
|
|
386
|
+
#: flask_appbuilder/security/views.py:417
|
|
387
|
+
msgid "User Name"
|
|
388
|
+
msgstr "نام کاربری"
|
|
389
|
+
|
|
390
|
+
#: flask_appbuilder/security/forms.py:27
|
|
391
|
+
msgid "Remember me"
|
|
392
|
+
msgstr "مرا به خاطر بسپار"
|
|
393
|
+
|
|
394
|
+
#: flask_appbuilder/security/forms.py:32 flask_appbuilder/security/forms.py:52
|
|
395
|
+
#: flask_appbuilder/security/forms.py:90
|
|
396
|
+
#: flask_appbuilder/security/views.py:158
|
|
397
|
+
#: flask_appbuilder/security/views.py:316
|
|
398
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_db.html:30
|
|
399
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_ldap.html:27
|
|
400
|
+
msgid "Password"
|
|
401
|
+
msgstr "رمز عبور"
|
|
402
|
+
|
|
403
|
+
#: flask_appbuilder/security/forms.py:53 flask_appbuilder/security/forms.py:91
|
|
404
|
+
msgid ""
|
|
405
|
+
"Please use a good password policy, this application does not check this for "
|
|
406
|
+
"you"
|
|
407
|
+
msgstr ""
|
|
408
|
+
"لطفاً از یک سیاست گذرواژه خوب استفاده کنید، این برنامه این مورد را برای شما "
|
|
409
|
+
"بررسی نمیکند."
|
|
410
|
+
|
|
411
|
+
#: flask_appbuilder/security/forms.py:61 flask_appbuilder/security/forms.py:99
|
|
412
|
+
#: flask_appbuilder/security/views.py:322
|
|
413
|
+
msgid "Confirm Password"
|
|
414
|
+
msgstr "تأیید رمز عبور"
|
|
415
|
+
|
|
416
|
+
#: flask_appbuilder/security/forms.py:62
|
|
417
|
+
#: flask_appbuilder/security/forms.py:100
|
|
418
|
+
msgid "Please rewrite the password to confirm"
|
|
419
|
+
msgstr "لطفاً رمز عبور را دوباره بنویسید تا تأیید شود."
|
|
420
|
+
|
|
421
|
+
#: flask_appbuilder/security/forms.py:63
|
|
422
|
+
#: flask_appbuilder/security/forms.py:101
|
|
423
|
+
#: flask_appbuilder/security/views.py:326
|
|
424
|
+
msgid "Passwords must match"
|
|
425
|
+
msgstr "کلمات عبور باید مطابقت داشته باشند"
|
|
426
|
+
|
|
427
|
+
#: flask_appbuilder/security/forms.py:85
|
|
428
|
+
#: flask_appbuilder/security/forms.py:124
|
|
429
|
+
#: flask_appbuilder/security/views.py:160
|
|
430
|
+
msgid "Email"
|
|
431
|
+
msgstr "ایمیل"
|
|
432
|
+
|
|
433
|
+
#: flask_appbuilder/security/manager.py:831
|
|
434
|
+
#: flask_appbuilder/security/views.py:148
|
|
435
|
+
msgid "List Users"
|
|
436
|
+
msgstr "لیست کاربران"
|
|
437
|
+
|
|
438
|
+
#: flask_appbuilder/security/manager.py:834
|
|
439
|
+
msgid "Security"
|
|
440
|
+
msgstr "امنیت"
|
|
441
|
+
|
|
442
|
+
#: flask_appbuilder/security/manager.py:841
|
|
443
|
+
#: flask_appbuilder/security/views.py:453
|
|
444
|
+
msgid "List Roles"
|
|
445
|
+
msgstr "لیست نقشها"
|
|
446
|
+
|
|
447
|
+
#: flask_appbuilder/security/manager.py:852
|
|
448
|
+
msgid "User's Statistics"
|
|
449
|
+
msgstr "آمار کاربران"
|
|
450
|
+
|
|
451
|
+
#: flask_appbuilder/security/manager.py:860
|
|
452
|
+
msgid "User Registrations"
|
|
453
|
+
msgstr "ثبتنام کاربران"
|
|
454
|
+
|
|
455
|
+
#: flask_appbuilder/security/manager.py:869
|
|
456
|
+
msgid "Base Permissions"
|
|
457
|
+
msgstr "مجوزهای پایه"
|
|
458
|
+
|
|
459
|
+
#: flask_appbuilder/security/manager.py:877
|
|
460
|
+
msgid "Views/Menus"
|
|
461
|
+
msgstr "نمایشها/منوها"
|
|
462
|
+
|
|
463
|
+
#: flask_appbuilder/security/manager.py:887
|
|
464
|
+
msgid "Permission on Views/Menus"
|
|
465
|
+
msgstr "مجوز بر روی نمایهها/منوها"
|
|
466
|
+
|
|
467
|
+
#: flask_appbuilder/security/registerviews.py:55
|
|
468
|
+
msgid "Account activation"
|
|
469
|
+
msgstr "فعالسازی حساب کاربری"
|
|
470
|
+
|
|
471
|
+
#: flask_appbuilder/security/registerviews.py:59
|
|
472
|
+
msgid "Registration sent to your email"
|
|
473
|
+
msgstr "ثبت نام به ایمیل شما ارسال شد"
|
|
474
|
+
|
|
475
|
+
#: flask_appbuilder/security/registerviews.py:61
|
|
476
|
+
msgid "Not possible to register you at the moment, try again later"
|
|
477
|
+
msgstr "در حال حاضر امکان ثبتنام شما وجود ندارد، لطفاً بعداً تلاش کنید."
|
|
478
|
+
|
|
479
|
+
#: flask_appbuilder/security/registerviews.py:65
|
|
480
|
+
msgid "Registration not found"
|
|
481
|
+
msgstr "ثبت نام یافت نشد"
|
|
482
|
+
|
|
483
|
+
#: flask_appbuilder/security/registerviews.py:67
|
|
484
|
+
msgid "Fill out the registration form"
|
|
485
|
+
msgstr "فرم ثبتنام را پر کنید"
|
|
486
|
+
|
|
487
|
+
#: flask_appbuilder/security/views.py:42
|
|
488
|
+
msgid "List Base Permissions"
|
|
489
|
+
msgstr "فهرست مجوزهای پایه"
|
|
490
|
+
|
|
491
|
+
#: flask_appbuilder/security/views.py:43
|
|
492
|
+
msgid "Show Base Permission"
|
|
493
|
+
msgstr "نمایش مجوز پایه"
|
|
494
|
+
|
|
495
|
+
#: flask_appbuilder/security/views.py:44
|
|
496
|
+
msgid "Add Base Permission"
|
|
497
|
+
msgstr "اجازه پایه را اضافه کنید"
|
|
498
|
+
|
|
499
|
+
#: flask_appbuilder/security/views.py:45
|
|
500
|
+
msgid "Edit Base Permission"
|
|
501
|
+
msgstr "ویرایش مجوز پایه"
|
|
502
|
+
|
|
503
|
+
#: flask_appbuilder/security/views.py:47 flask_appbuilder/security/views.py:59
|
|
504
|
+
#: flask_appbuilder/security/views.py:462
|
|
505
|
+
msgid "Name"
|
|
506
|
+
msgstr "نام"
|
|
507
|
+
|
|
508
|
+
#: flask_appbuilder/security/views.py:54
|
|
509
|
+
msgid "List View Menus"
|
|
510
|
+
msgstr "منوهای نمای فهرست"
|
|
511
|
+
|
|
512
|
+
#: flask_appbuilder/security/views.py:55
|
|
513
|
+
msgid "Show View Menu"
|
|
514
|
+
msgstr "نمایش منوی مشاهده"
|
|
515
|
+
|
|
516
|
+
#: flask_appbuilder/security/views.py:56
|
|
517
|
+
msgid "Add View Menu"
|
|
518
|
+
msgstr "منوی نمایش را اضافه کنید"
|
|
519
|
+
|
|
520
|
+
#: flask_appbuilder/security/views.py:57
|
|
521
|
+
msgid "Edit View Menu"
|
|
522
|
+
msgstr "ویرایش منوی مشاهده"
|
|
523
|
+
|
|
524
|
+
#: flask_appbuilder/security/views.py:66
|
|
525
|
+
msgid "List Permissions on Views/Menus"
|
|
526
|
+
msgstr "فهرست مجوزها برای نماها/منوها"
|
|
527
|
+
|
|
528
|
+
#: flask_appbuilder/security/views.py:67
|
|
529
|
+
msgid "Show Permission on Views/Menus"
|
|
530
|
+
msgstr "نمایش مجوزها بر روی نماها/منوها"
|
|
531
|
+
|
|
532
|
+
#: flask_appbuilder/security/views.py:68
|
|
533
|
+
msgid "Add Permission on Views/Menus"
|
|
534
|
+
msgstr "اجازه دسترسی بر روی نماها/منوها اضافه کنید"
|
|
535
|
+
|
|
536
|
+
#: flask_appbuilder/security/views.py:69
|
|
537
|
+
msgid "Edit Permission on Views/Menus"
|
|
538
|
+
msgstr "ویرایش مجوزها برای نماها/منوها"
|
|
539
|
+
|
|
540
|
+
#: flask_appbuilder/security/views.py:72
|
|
541
|
+
msgid "Permission"
|
|
542
|
+
msgstr "مجوز"
|
|
543
|
+
|
|
544
|
+
#: flask_appbuilder/security/views.py:73
|
|
545
|
+
msgid "View/Menu"
|
|
546
|
+
msgstr "نمایش/منو"
|
|
547
|
+
|
|
548
|
+
#: flask_appbuilder/security/views.py:85
|
|
549
|
+
#: flask_appbuilder/security/views.py:101
|
|
550
|
+
msgid "Reset Password Form"
|
|
551
|
+
msgstr "فرم بازنشانی رمز عبور"
|
|
552
|
+
|
|
553
|
+
#: flask_appbuilder/security/views.py:87
|
|
554
|
+
#: flask_appbuilder/security/views.py:103
|
|
555
|
+
msgid "Password Changed"
|
|
556
|
+
msgstr "رمز عبور تغییر کرد"
|
|
557
|
+
|
|
558
|
+
#: flask_appbuilder/security/views.py:113
|
|
559
|
+
msgid "Edit User Information"
|
|
560
|
+
msgstr "ویرایش اطلاعات کاربر"
|
|
561
|
+
|
|
562
|
+
#: flask_appbuilder/security/views.py:115
|
|
563
|
+
msgid "User information changed"
|
|
564
|
+
msgstr "اطلاعات کاربر تغییر یافت"
|
|
565
|
+
|
|
566
|
+
#: flask_appbuilder/security/views.py:149
|
|
567
|
+
msgid "Show User"
|
|
568
|
+
msgstr "نمایش کاربر"
|
|
569
|
+
|
|
570
|
+
#: flask_appbuilder/security/views.py:150
|
|
571
|
+
msgid "Add User"
|
|
572
|
+
msgstr "کاربر اضافه کنید"
|
|
573
|
+
|
|
574
|
+
#: flask_appbuilder/security/views.py:151
|
|
575
|
+
#: flask_appbuilder/security/views.py:260
|
|
576
|
+
msgid "Edit User"
|
|
577
|
+
msgstr "ویرایش کاربر"
|
|
578
|
+
|
|
579
|
+
#: flask_appbuilder/security/views.py:154
|
|
580
|
+
msgid "Full Name"
|
|
581
|
+
msgstr "نام کامل"
|
|
582
|
+
|
|
583
|
+
#: flask_appbuilder/security/views.py:159
|
|
584
|
+
msgid "Is Active?"
|
|
585
|
+
msgstr "آیا فعال است؟"
|
|
586
|
+
|
|
587
|
+
#: flask_appbuilder/security/views.py:161
|
|
588
|
+
msgid "Role"
|
|
589
|
+
msgstr "نقش"
|
|
590
|
+
|
|
591
|
+
#: flask_appbuilder/security/views.py:162
|
|
592
|
+
msgid "Last login"
|
|
593
|
+
msgstr "آخرین ورود"
|
|
594
|
+
|
|
595
|
+
#: flask_appbuilder/security/views.py:163
|
|
596
|
+
#: flask_appbuilder/security/views.py:418
|
|
597
|
+
msgid "Login count"
|
|
598
|
+
msgstr "تعداد ورود به سیستم"
|
|
599
|
+
|
|
600
|
+
#: flask_appbuilder/security/views.py:164
|
|
601
|
+
#: flask_appbuilder/security/views.py:419
|
|
602
|
+
msgid "Failed login count"
|
|
603
|
+
msgstr "تعداد تلاشهای ناموفق برای ورود"
|
|
604
|
+
|
|
605
|
+
#: flask_appbuilder/security/views.py:165
|
|
606
|
+
msgid "Created on"
|
|
607
|
+
msgstr "ایجاد شده در"
|
|
608
|
+
|
|
609
|
+
#: flask_appbuilder/security/views.py:166
|
|
610
|
+
msgid "Created by"
|
|
611
|
+
msgstr "ایجاد شده توسط"
|
|
612
|
+
|
|
613
|
+
#: flask_appbuilder/security/views.py:167
|
|
614
|
+
msgid "Changed on"
|
|
615
|
+
msgstr "تغییر داده شده در"
|
|
616
|
+
|
|
617
|
+
#: flask_appbuilder/security/views.py:168
|
|
618
|
+
msgid "Changed by"
|
|
619
|
+
msgstr "تغییر یافته توسط"
|
|
620
|
+
|
|
621
|
+
#: flask_appbuilder/security/views.py:174
|
|
622
|
+
msgid "Username valid for authentication on DB or LDAP, unused for OID auth"
|
|
623
|
+
msgstr ""
|
|
624
|
+
"نام کاربری معتبر برای احراز هویت در پایگاه داده یا LDAP، برای احراز هویت OID"
|
|
625
|
+
" استفاده نشده است."
|
|
626
|
+
|
|
627
|
+
#: flask_appbuilder/security/views.py:177
|
|
628
|
+
#: flask_appbuilder/security/views.py:317
|
|
629
|
+
msgid "The user's password for authentication"
|
|
630
|
+
msgstr "رمز عبور کاربر برای احراز هویت"
|
|
631
|
+
|
|
632
|
+
#: flask_appbuilder/security/views.py:178
|
|
633
|
+
msgid "It's not a good policy to remove a user, just make it inactive"
|
|
634
|
+
msgstr ""
|
|
635
|
+
"این یک سیاست خوب نیست که یک کاربر را حذف کنید، فقط آن را غیرفعال کنید."
|
|
636
|
+
|
|
637
|
+
#: flask_appbuilder/security/views.py:181
|
|
638
|
+
msgid "The user's email, this will also be used for OID auth"
|
|
639
|
+
msgstr "ایمیل کاربر، این ایمیل همچنین برای احراز هویت OID استفاده خواهد شد."
|
|
640
|
+
|
|
641
|
+
#: flask_appbuilder/security/views.py:187
|
|
642
|
+
#: flask_appbuilder/security/views.py:323
|
|
643
|
+
msgid "Please rewrite the user's password to confirm"
|
|
644
|
+
msgstr "لطفاً رمز عبور کاربر را برای تأیید دوباره بنویسید."
|
|
645
|
+
|
|
646
|
+
#: flask_appbuilder/security/views.py:243
|
|
647
|
+
msgid "Your user information"
|
|
648
|
+
msgstr "اطلاعات کاربری شما"
|
|
649
|
+
|
|
650
|
+
#: flask_appbuilder/security/views.py:385
|
|
651
|
+
msgid "Reset my password"
|
|
652
|
+
msgstr "رمز عبور من را بازنشانی کنید"
|
|
653
|
+
|
|
654
|
+
#: flask_appbuilder/security/views.py:396
|
|
655
|
+
msgid "Reset Password"
|
|
656
|
+
msgstr "تنظیم مجدد رمز عبور"
|
|
657
|
+
|
|
658
|
+
#: flask_appbuilder/security/views.py:415
|
|
659
|
+
msgid "User Statistics"
|
|
660
|
+
msgstr "آمار کاربران"
|
|
661
|
+
|
|
662
|
+
#: flask_appbuilder/security/views.py:454
|
|
663
|
+
msgid "Show Role"
|
|
664
|
+
msgstr "نمایش نقش"
|
|
665
|
+
|
|
666
|
+
#: flask_appbuilder/security/views.py:455
|
|
667
|
+
msgid "Add Role"
|
|
668
|
+
msgstr "اضافه کردن نقش"
|
|
669
|
+
|
|
670
|
+
#: flask_appbuilder/security/views.py:456
|
|
671
|
+
msgid "Edit Role"
|
|
672
|
+
msgstr "ویرایش نقش"
|
|
673
|
+
|
|
674
|
+
#: flask_appbuilder/security/views.py:463
|
|
675
|
+
msgid "Permissions"
|
|
676
|
+
msgstr "مجوزها"
|
|
677
|
+
|
|
678
|
+
#: flask_appbuilder/security/views.py:473
|
|
679
|
+
msgid "Copy Role"
|
|
680
|
+
msgstr "کپی نقش"
|
|
681
|
+
|
|
682
|
+
#: flask_appbuilder/security/views.py:474
|
|
683
|
+
msgid "Copy the selected roles?"
|
|
684
|
+
msgstr "رولهای انتخابشده را کپی کنید؟"
|
|
685
|
+
|
|
686
|
+
#: flask_appbuilder/security/views.py:492
|
|
687
|
+
msgid "List of Registration Requests"
|
|
688
|
+
msgstr "لیست درخواستهای ثبتنام"
|
|
689
|
+
|
|
690
|
+
#: flask_appbuilder/security/views.py:493
|
|
691
|
+
msgid "Show Registration"
|
|
692
|
+
msgstr "نمایش ثبتنام"
|
|
693
|
+
|
|
694
|
+
#: flask_appbuilder/security/views.py:502
|
|
695
|
+
msgid "Invalid login. Please try again."
|
|
696
|
+
msgstr "ورود نامعتبر. لطفاً دوباره تلاش کنید."
|
|
697
|
+
|
|
698
|
+
#: flask_appbuilder/security/views.py:503
|
|
699
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_db.html:46
|
|
700
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_ldap.html:40
|
|
701
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:48
|
|
702
|
+
msgid "Sign In"
|
|
703
|
+
msgstr "ورود"
|
|
704
|
+
|
|
705
|
+
#: flask_appbuilder/templates/appbuilder/baselib.html:115
|
|
706
|
+
#: flask_appbuilder/templates/appbuilder/navbar_right.html:37
|
|
707
|
+
msgid "Profile"
|
|
708
|
+
msgstr "پروفایل"
|
|
709
|
+
|
|
710
|
+
#: flask_appbuilder/templates/appbuilder/general/security/activation.html:5
|
|
711
|
+
#: flask_appbuilder/templates/appbuilder/index.html:4
|
|
712
|
+
msgid "Welcome"
|
|
713
|
+
msgstr "خوش آمدید"
|
|
714
|
+
|
|
715
|
+
#: flask_appbuilder/templates/appbuilder/general/confirm.html:6
|
|
716
|
+
msgid "User confirmation needed"
|
|
717
|
+
msgstr "نیاز به تأیید کاربر است."
|
|
718
|
+
|
|
719
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:76
|
|
720
|
+
msgid "Actions"
|
|
721
|
+
msgstr "عملیات"
|
|
722
|
+
|
|
723
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:135
|
|
724
|
+
msgid "Order by"
|
|
725
|
+
msgstr "ترتیب بر اساس"
|
|
726
|
+
|
|
727
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:383
|
|
728
|
+
msgid "Add"
|
|
729
|
+
msgstr "اضافه کردن"
|
|
730
|
+
|
|
731
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:391
|
|
732
|
+
msgid "Edit"
|
|
733
|
+
msgstr "ویرایش"
|
|
734
|
+
|
|
735
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:399
|
|
736
|
+
msgid "Show"
|
|
737
|
+
msgstr "نمایش بده"
|
|
738
|
+
|
|
739
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:412
|
|
740
|
+
msgid "Delete"
|
|
741
|
+
msgstr "حذف کنید"
|
|
742
|
+
|
|
743
|
+
#: flask_appbuilder/templates/appbuilder/general/lib.html:419
|
|
744
|
+
msgid "Are you sure you want to delete this item?"
|
|
745
|
+
msgstr "آیا مطمئن هستید که میخواهید این مورد را حذف کنید؟"
|
|
746
|
+
|
|
747
|
+
#: flask_appbuilder/templates/appbuilder/general/charts/chart_time.html:17
|
|
748
|
+
msgid "Group by fields"
|
|
749
|
+
msgstr "گروهبندی بر اساس فیلدها"
|
|
750
|
+
|
|
751
|
+
#: flask_appbuilder/templates/appbuilder/general/model/edit.html:9
|
|
752
|
+
#: flask_appbuilder/templates/appbuilder/general/model/show.html:9
|
|
753
|
+
msgid "Detail"
|
|
754
|
+
msgstr "جزئیات"
|
|
755
|
+
|
|
756
|
+
#: flask_appbuilder/templates/appbuilder/general/security/activation.html:7
|
|
757
|
+
msgid "Your user is activated you can now proceed to login"
|
|
758
|
+
msgstr "کاربر شما فعال شده است، حالا میتوانید به ورود به سیستم ادامه دهید."
|
|
759
|
+
|
|
760
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_db.html:18
|
|
761
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_ldap.html:16
|
|
762
|
+
msgid "Enter your login and password below"
|
|
763
|
+
msgstr "نام کاربری و رمز عبور خود را در زیر وارد کنید"
|
|
764
|
+
|
|
765
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_db.html:20
|
|
766
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_ldap.html:18
|
|
767
|
+
msgid "Username"
|
|
768
|
+
msgstr "نام کاربری"
|
|
769
|
+
|
|
770
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_db.html:49
|
|
771
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:56
|
|
772
|
+
msgid "If you are not already a user, please register"
|
|
773
|
+
msgstr "اگر در حال حاضر کاربر نیستید، لطفاً ثبتنام کنید."
|
|
774
|
+
|
|
775
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_db.html:50
|
|
776
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:57
|
|
777
|
+
msgid "Register"
|
|
778
|
+
msgstr "ثبت نام"
|
|
779
|
+
|
|
780
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oauth.html:20
|
|
781
|
+
msgid "Sign In with "
|
|
782
|
+
msgstr "ورود با"
|
|
783
|
+
|
|
784
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:15
|
|
785
|
+
msgid "Click on your OpenID provider below"
|
|
786
|
+
msgstr "روی ارائهدهنده OpenID خود در زیر کلیک کنید"
|
|
787
|
+
|
|
788
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:29
|
|
789
|
+
msgid "Or enter your OpenID here"
|
|
790
|
+
msgstr "یا OpenID خود را در اینجا وارد کنید"
|
|
791
|
+
|
|
792
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:33
|
|
793
|
+
msgid "Please choose a provider"
|
|
794
|
+
msgstr "لطفاً یک ارائهدهنده را انتخاب کنید."
|
|
795
|
+
|
|
796
|
+
#: flask_appbuilder/templates/appbuilder/general/security/login_oid.html:37
|
|
797
|
+
msgid "Enter your OpenID Username"
|
|
798
|
+
msgstr "نام کاربری OpenID خود را وارد کنید"
|
|
799
|
+
|
|
800
|
+
#: flask_appbuilder/templates/appbuilder/general/security/register_oauth.html:15
|
|
801
|
+
msgid "Sign in using:"
|
|
802
|
+
msgstr "با استفاده از وارد شوید:"
|