[ckan-changes] [ckan/ckan] 665499: [#1527] Make emails customizable
GitHub
noreply at github.com
Thu Jan 7 21:10:01 UTC 2016
Branch: refs/heads/master
Home: https://github.com/ckan/ckan
Commit: 66549991119191fb00a7aaf907e4027036df4561
https://github.com/ckan/ckan/commit/66549991119191fb00a7aaf907e4027036df4561
Author: amercader <amercadero at gmail.com>
Date: 2015-06-12 (Fri, 12 Jun 2015)
Changed paths:
M ckan/lib/mailer.py
A ckan/templates/emails/invite_user.txt
A ckan/templates/emails/reset_password.txt
M doc/maintaining/configuration.rst
Log Message:
-----------
[#1527] Make emails customizable
Read the reset password and invite user emails body from text templates
(which are magically translated!) and the subjects from config options.
Commit: 9eeb6a7a7f590049dbc22fa39b03c24a08691eb8
https://github.com/ckan/ckan/commit/9eeb6a7a7f590049dbc22fa39b03c24a08691eb8
Author: amercader <amercadero at gmail.com>
Date: 2015-06-12 (Fri, 12 Jun 2015)
Changed paths:
M ckan/lib/mailer.py
R ckan/tests/legacy/lib/test_mailer.py
R ckan/tests/legacy/mock_mail_server.py
A ckan/tests/lib/test_mailer.py
A ckan/tests/mock_mail_server.py
Log Message:
-----------
[#1527] Update mailing tests
Commit: 3a863ab446d5cd7e33f4f2de716b3b6884ca0124
https://github.com/ckan/ckan/commit/3a863ab446d5cd7e33f4f2de716b3b6884ca0124
Author: amercader <amercadero at gmail.com>
Date: 2015-06-12 (Fri, 12 Jun 2015)
Changed paths:
M ckan/lib/mailer.py
M ckan/tests/legacy/test_coding_standards.py
Log Message:
-----------
[#1527] PEP8
Commit: 52e033586b95be99782081bece2a5899208678d2
https://github.com/ckan/ckan/commit/52e033586b95be99782081bece2a5899208678d2
Author: amercader <amercadero at gmail.com>
Date: 2015-06-12 (Fri, 12 Jun 2015)
Changed paths:
M ckan/tests/lib/test_mailer.py
Log Message:
-----------
[#1527] Fix wrong import
Commit: c0c6e90ac7af0faf8bfa67c3d05900c71296e3be
https://github.com/ckan/ckan/commit/c0c6e90ac7af0faf8bfa67c3d05900c71296e3be
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
M ckan/lib/mailer.py
M ckan/tests/lib/test_mailer.py
Log Message:
-----------
[#1527] Fix bug on From header, added test
Commit: 1830e2e98ed6de3e9a07a6f31a147fdebbf68295
https://github.com/ckan/ckan/commit/1830e2e98ed6de3e9a07a6f31a147fdebbf68295
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
M ckan/logic/action/create.py
M ckan/tests/logic/action/test_create.py
Log Message:
-----------
[#1527] Raise NotFound on user invite if group does not exist
Commit: 281996344f1c6f84af9ecc2679dc8c8a42aab41e
https://github.com/ckan/ckan/commit/281996344f1c6f84af9ecc2679dc8c8a42aab41e
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
M ckan/lib/helpers.py
M ckan/lib/mailer.py
M ckan/logic/action/create.py
M ckan/templates/emails/invite_user.txt
M ckan/tests/lib/test_mailer.py
Log Message:
-----------
[#1527] Add information about the org/group and role to the invite email
The current invite email doesn't really give you much information about
what you are actually signing for. This adds the organization title and
the role that you've been assigned to the invite email.
Commit: 3607016766108f09aed076861f4dd21818e2f9fd
https://github.com/ckan/ckan/commit/3607016766108f09aed076861f4dd21818e2f9fd
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
A ckan/tests/legacy/mock_mail_server.py
M ckan/tests/legacy/test_coding_standards.py
M ckan/tests/lib/test_mailer.py
R ckan/tests/mock_mail_server.py
Log Message:
-----------
[#1527] Keep mock email server on legacy folder
Commit: 422df7555c477ab04ceb2281940e10a8b5834855
https://github.com/ckan/ckan/commit/422df7555c477ab04ceb2281940e10a8b5834855
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
M ckan/lib/mailer.py
A ckan/templates/emails/invite_user_subject.txt
A ckan/templates/emails/reset_password_subject.txt
M ckan/tests/lib/test_mailer.py
A ckanext/example_theme/custom_emails/__init__.py
A ckanext/example_theme/custom_emails/plugin.py
A ckanext/example_theme/custom_emails/templates/emails/invite_user.txt
A ckanext/example_theme/custom_emails/templates/emails/invite_user_subject.txt
A ckanext/example_theme/custom_emails/templates/emails/reset_password.txt
A ckanext/example_theme/custom_emails/templates/emails/reset_password_subject.txt
A ckanext/example_theme/custom_emails/tests.py
M doc/maintaining/configuration.rst
M setup.py
Log Message:
-----------
[#1527] Read email subjects from templates as well
As per @wardi's suggestion. Added a new example plugin with tests
Commit: c3b6fc6431be0f877c7c0b5803938bc967a32de2
https://github.com/ckan/ckan/commit/c3b6fc6431be0f877c7c0b5803938bc967a32de2
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
M ckan/tests/lib/test_mailer.py
M setup.py
Log Message:
-----------
[#1527] Fix assert_in import, failing on Travis because nose/unitest versions
Commit: be28d6bac9178b15627fb950878a16b1c7962306
https://github.com/ckan/ckan/commit/be28d6bac9178b15627fb950878a16b1c7962306
Author: amercader <amercadero at gmail.com>
Date: 2015-06-15 (Mon, 15 Jun 2015)
Changed paths:
M ckanext/example_theme/custom_emails/tests.py
Log Message:
-----------
[#1527] Fix assert_in import, failing on Travis because nose/unitest versions
Commit: 03ac7857d4aee932bbcfbfd98b2d9b4747cba092
https://github.com/ckan/ckan/commit/03ac7857d4aee932bbcfbfd98b2d9b4747cba092
Author: amercader <amercadero at gmail.com>
Date: 2015-10-28 (Wed, 28 Oct 2015)
Changed paths:
M CHANGELOG.rst
R bin/canada.py
R bin/ckan-correct-tags.py
R bin/ckan-edit-tags.py
R bin/ckan-edit-tags2.py
R bin/ckan-hmg-breakdown.py
R bin/ckan-hmg-update-licenses.py
R bin/ckan-rest-edit-tags.py
R bin/ckan_edit_local.py
R bin/ckan_spam.py
R bin/copy-ckan-2-ckan.py
R bin/dump-ukgov.py
R bin/dump_23_pkgs.py
R bin/fixes.py
M bin/less
R bin/loadconfig.py
R bin/ons-load.py
R bin/revision_manager.py
R bin/status.py
R bin/talisckan.py
R bin/webstore_test.py
A circle.yml
M ckan/__init__.py
M ckan/authz.py
M ckan/config/deployment.ini_tmpl
M ckan/config/environment.py
M ckan/config/resource_formats.json
M ckan/config/routing.py
M ckan/config/solr/schema.xml
M ckan/controllers/admin.py
M ckan/controllers/api.py
M ckan/controllers/group.py
M ckan/controllers/home.py
M ckan/controllers/package.py
R ckan/controllers/related.py
M ckan/controllers/storage.py
M ckan/controllers/user.py
M ckan/lib/app_globals.py
M ckan/lib/base.py
M ckan/lib/cli.py
M ckan/lib/create_test_data.py
M ckan/lib/dictization/__init__.py
M ckan/lib/dictization/model_dictize.py
M ckan/lib/dictization/model_save.py
M ckan/lib/formatters.py
M ckan/lib/helpers.py
M ckan/lib/i18n.py
A ckan/lib/lazyjson.py
M ckan/lib/munge.py
M ckan/lib/plugins.py
M ckan/lib/search/__init__.py
M ckan/lib/uploader.py
M ckan/logic/__init__.py
M ckan/logic/action/create.py
M ckan/logic/action/delete.py
M ckan/logic/action/get.py
M ckan/logic/action/update.py
M ckan/logic/auth/create.py
M ckan/logic/auth/delete.py
M ckan/logic/auth/get.py
M ckan/logic/auth/update.py
M ckan/logic/schema.py
A ckan/migration/versions/077_add_revisions_to_system_info.py
A ckan/migration/versions/078_remove_old_authz_model.py
A ckan/migration/versions/079_resource_revision_index.py
A ckan/migration/versions/080_continuity_id_indexes.py
M ckan/model/__init__.py
R ckan/model/authz.py
M ckan/model/domain_object.py
M ckan/model/group.py
M ckan/model/modification.py
M ckan/model/system_info.py
M ckan/pastertemplates/__init__.py
M ckan/pastertemplates/template/+dot+travis.yml_tmpl
M ckan/pastertemplates/template/README.rst_tmpl
A ckan/pastertemplates/template/setup.cfg_tmpl
M ckan/pastertemplates/template/setup.py_tmpl
M ckan/plugins/interfaces.py
M ckan/plugins/toolkit.py
M ckan/public/base/css/main.css
M ckan/public/base/javascript/main.js
M ckan/public/base/test/index.html
A ckan/public/base/vendor/moment-with-locales.js
M ckan/public/base/vendor/resource.config
R ckan/public/css/boilerplate.css
R ckan/public/css/bootstrap.min.css
R ckan/public/css/chosen.css
R ckan/public/css/forms.css
R ckan/public/css/handheld.css
R ckan/public/css/style.css
R ckan/public/images/bullet_separator.png
R ckan/public/images/button-shadow.png
R ckan/public/images/chevron-down.png
R ckan/public/images/chevron-up.png
R ckan/public/images/chosen-sprite.png
R ckan/public/images/ckan_logo_fullname_long.png
R ckan/public/images/dlbg.png
R ckan/public/images/dragbars.png
R ckan/public/images/icons/add.png
R ckan/public/images/icons/arrow-closed.gif
R ckan/public/images/icons/arrow-down-16.png
R ckan/public/images/icons/arrow-down-32.png
R ckan/public/images/icons/arrow-open.gif
R ckan/public/images/icons/arrow-right-16-black.png
R ckan/public/images/icons/arrow-right-16.png
R ckan/public/images/icons/arrow-right-32.png
R ckan/public/images/icons/arrow_down.png
R ckan/public/images/icons/arrow_down_grey.png
R ckan/public/images/icons/arrow_up.png
R ckan/public/images/icons/atom_feed.png
R ckan/public/images/icons/ckan.ico
R ckan/public/images/icons/comments.png
R ckan/public/images/icons/delete.png
R ckan/public/images/icons/door.png
R ckan/public/images/icons/door_grey.png
R ckan/public/images/icons/door_open.png
R ckan/public/images/icons/drive_web.png
R ckan/public/images/icons/edit-collapse.png
R ckan/public/images/icons/edit-expand.png
R ckan/public/images/icons/error.png
R ckan/public/images/icons/followers.png
R ckan/public/images/icons/group.png
R ckan/public/images/icons/group_add.png
R ckan/public/images/icons/group_edit.png
R ckan/public/images/icons/key.png
R ckan/public/images/icons/lock.png
R ckan/public/images/icons/magnifier.png
R ckan/public/images/icons/note.png
R ckan/public/images/icons/openid.png
R ckan/public/images/icons/package-disabled.png
R ckan/public/images/icons/package.png
R ckan/public/images/icons/package_add.png
R ckan/public/images/icons/package_edit.png
R ckan/public/images/icons/page_stack.png
R ckan/public/images/icons/page_white.png
R ckan/public/images/icons/page_white_add.png
R ckan/public/images/icons/page_white_code.png
R ckan/public/images/icons/page_white_compressed.png
R ckan/public/images/icons/page_white_cup.png
R ckan/public/images/icons/page_white_database.png
R ckan/public/images/icons/page_white_error.png
R ckan/public/images/icons/page_white_excel.png
R ckan/public/images/icons/page_white_gear.png
R ckan/public/images/icons/page_white_json.png
R ckan/public/images/icons/page_white_link.png
R ckan/public/images/icons/page_white_rdf.png
R ckan/public/images/icons/page_white_stack.png
R ckan/public/images/icons/page_white_text.png
R ckan/public/images/icons/pencil.png
R ckan/public/images/icons/remove.png
R ckan/public/images/icons/star.png
R ckan/public/images/icons/tag_blue.png
R ckan/public/images/icons/unfilter.png
R ckan/public/images/icons/user.png
R ckan/public/images/icons/user_grey.png
R ckan/public/images/icons/world_go.png
R ckan/public/images/ldquo.png
R ckan/public/images/photo-placeholder.png
R ckan/public/images/stars.png
R ckan/public/img/collaborate.png
R ckan/public/img/find.png
R ckan/public/img/glyphicons-halflings-white.png
R ckan/public/img/glyphicons-halflings.png
R ckan/public/img/lod2.png
R ckan/public/img/logo.png
R ckan/public/img/logo_64px_wide.png
R ckan/public/img/share.png
R ckan/public/scripts/application.js
R ckan/public/scripts/dataexplorer/icon-sprite.png
R ckan/public/scripts/dataexplorer/loading.gif
R ckan/public/scripts/dataexplorer/table-view-template.js
R ckan/public/scripts/dataexplorer/table-view.css
R ckan/public/scripts/dataexplorer/table-view.js
R ckan/public/scripts/dataexplorer/table-view.ui.js
R ckan/public/scripts/outside.js
R ckan/public/scripts/templates.js
R ckan/public/scripts/vendor/backbone/0.5.1/backbone.js
R ckan/public/scripts/vendor/bootstrap/2.0.3/bootstrap.min.js
R ckan/public/scripts/vendor/flot/0.7/excanvas.js
R ckan/public/scripts/vendor/flot/0.7/jquery.flot.js
R ckan/public/scripts/vendor/html5shiv/html5.js
R ckan/public/scripts/vendor/jquery.chosen/0.9.7/chosen.js
R ckan/public/scripts/vendor/jquery.cookie/jquery.cookie.min.js
R ckan/public/scripts/vendor/jquery.event.drag/2.0/jquery.event.drag.min.js
R ckan/public/scripts/vendor/jquery.fileupload/20110801/jquery.fileupload-ui.css
R ckan/public/scripts/vendor/jquery.fileupload/20110801/jquery.fileupload-ui.js
R ckan/public/scripts/vendor/jquery.fileupload/20110801/jquery.fileupload.js
R ckan/public/scripts/vendor/jquery.fileupload/20110801/jquery.iframe-transport.js
R ckan/public/scripts/vendor/jquery.mustache/jquery.mustache.js
R ckan/public/scripts/vendor/jquery.placeholder/jquery.placeholder.js
R ckan/public/scripts/vendor/jquery.tmpl/beta1/jquery.tmpl.js
R ckan/public/scripts/vendor/jquery/1.7.1/jquery.js
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_flat_0_000_40x100.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_flat_100_000_40x100.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_flat_75_ffffff_40x100.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_glass_100_f0f0f0_1x400.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_glass_55_fbf9ee_1x400.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_glass_65_ffffff_1x400.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_glass_75_dadada_1x400.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_glass_95_fef1ec_1x400.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-bg_highlight-soft_100_f0f0f0_1x100.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_000_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_222222_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_2e83ff_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_444444_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_888888_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_b22_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/images/ui-icons_cd0a0a_256x240.png
R ckan/public/scripts/vendor/jqueryui/1.8.14/css/jquery-ui.custom.css
R ckan/public/scripts/vendor/jqueryui/1.8.14/jquery-ui.min.js
R ckan/public/scripts/vendor/json2.js
R ckan/public/scripts/vendor/leaflet/0.3.1/images/layers.png
R ckan/public/scripts/vendor/leaflet/0.3.1/images/marker-shadow.png
R ckan/public/scripts/vendor/leaflet/0.3.1/images/marker.png
R ckan/public/scripts/vendor/leaflet/0.3.1/images/popup-close.png
R ckan/public/scripts/vendor/leaflet/0.3.1/images/zoom-in.png
R ckan/public/scripts/vendor/leaflet/0.3.1/images/zoom-out.png
R ckan/public/scripts/vendor/leaflet/0.3.1/leaflet.css
R ckan/public/scripts/vendor/leaflet/0.3.1/leaflet.ie.css
R ckan/public/scripts/vendor/leaflet/0.3.1/leaflet.js
R ckan/public/scripts/vendor/modernizr/1.7/modernizr.min.js
R ckan/public/scripts/vendor/moment/1.6.2/moment.js
R ckan/public/scripts/vendor/mustache/0.5.0-dev/mustache.js
R ckan/public/scripts/vendor/openid-selector/css/openid.css
R ckan/public/scripts/vendor/openid-selector/images/aol.gif
R ckan/public/scripts/vendor/openid-selector/images/blogger.ico
R ckan/public/scripts/vendor/openid-selector/images/claimid.ico
R ckan/public/scripts/vendor/openid-selector/images/facebook.gif
R ckan/public/scripts/vendor/openid-selector/images/flickr.ico
R ckan/public/scripts/vendor/openid-selector/images/google.gif
R ckan/public/scripts/vendor/openid-selector/images/livejournal.ico
R ckan/public/scripts/vendor/openid-selector/images/myopenid.ico
R ckan/public/scripts/vendor/openid-selector/images/openid-inputicon.gif
R ckan/public/scripts/vendor/openid-selector/images/openid.gif
R ckan/public/scripts/vendor/openid-selector/images/technorati.ico
R ckan/public/scripts/vendor/openid-selector/images/verisign.gif
R ckan/public/scripts/vendor/openid-selector/images/verisign.ico
R ckan/public/scripts/vendor/openid-selector/images/vidoop.ico
R ckan/public/scripts/vendor/openid-selector/images/wordpress.ico
R ckan/public/scripts/vendor/openid-selector/images/yahoo.gif
R ckan/public/scripts/vendor/openid-selector/js/jquery-1.2.6.min.js
R ckan/public/scripts/vendor/openid-selector/js/openid-jquery.js
R ckan/public/scripts/vendor/recline/css/recline.css
R ckan/public/scripts/vendor/resize/resize.js
R ckan/public/scripts/vendor/slickgrid/2.0.1/MIT-LICENSE.txt
R ckan/public/scripts/vendor/slickgrid/2.0.1/README.txt
R ckan/public/scripts/vendor/slickgrid/2.0.1/images/sort-asc.gif
R ckan/public/scripts/vendor/slickgrid/2.0.1/images/sort-desc.gif
R ckan/public/scripts/vendor/slickgrid/2.0.1/jquery-ui-1.8.16.custom.min.js
R ckan/public/scripts/vendor/slickgrid/2.0.1/jquery.event.drag-2.0.min.js
R ckan/public/scripts/vendor/slickgrid/2.0.1/slick.grid.css
R ckan/public/scripts/vendor/slickgrid/2.0.1/slick.grid.min.js
R ckan/public/scripts/vendor/underscore/1.1.6/underscore.js
M ckan/templates/admin/config.html
R ckan/templates/ajax_snippets/related-item.html
M ckan/templates/group/confirm_delete.html
M ckan/templates/group/index.html
M ckan/templates/group/member_new.html
M ckan/templates/group/members.html
M ckan/templates/group/read.html
M ckan/templates/group/snippets/info.html
M ckan/templates/home/snippets/stats.html
M ckan/templates/organization/bulk_process.html
M ckan/templates/organization/confirm_delete.html
M ckan/templates/organization/index.html
M ckan/templates/organization/read.html
M ckan/templates/organization/read_base.html
M ckan/templates/organization/snippets/organization_form.html
M ckan/templates/organization/snippets/organization_item.html
M ckan/templates/package/confirm_delete.html
M ckan/templates/package/confirm_delete_resource.html
M ckan/templates/package/read.html
R ckan/templates/package/read.n3
R ckan/templates/package/read.rdf
M ckan/templates/package/read_base.html
M ckan/templates/package/resource_data.html
M ckan/templates/package/search.html
M ckan/templates/package/snippets/additional_info.html
M ckan/templates/package/snippets/package_basic_fields.html
M ckan/templates/package/snippets/resource_form.html
R ckan/templates/related/base_form_page.html
R ckan/templates/related/confirm_delete.html
R ckan/templates/related/dashboard.html
R ckan/templates/related/edit.html
R ckan/templates/related/edit_form.html
R ckan/templates/related/new.html
R ckan/templates/related/snippets/related_form.html
R ckan/templates/related/snippets/related_item.html
R ckan/templates/related/snippets/related_list.html
A ckan/templates/snippets/local_friendly_datetime.html
M ckan/templates/snippets/organization_item.html
M ckan/templates/snippets/search_form.html
M ckan/templates/user/edit_user_form.html
M ckan/templates/user/new_user_form.html
M ckan/templates/user/snippets/user_search.html
M ckan/tests/config/test_environment.py
A ckan/tests/controllers/test_admin.py
M ckan/tests/controllers/test_api.py
M ckan/tests/controllers/test_group.py
A ckan/tests/controllers/test_home.py
A ckan/tests/controllers/test_organization.py
M ckan/tests/controllers/test_package.py
A ckan/tests/controllers/test_tags.py
M ckan/tests/controllers/test_user.py
M ckan/tests/factories.py
M ckan/tests/helpers.py
M ckan/tests/legacy/__init__.py
M ckan/tests/legacy/ckantestplugins.py
M ckan/tests/legacy/functional/api/model/test_group.py
R ckan/tests/legacy/functional/api/model/test_group_and_organization_purge.py
M ckan/tests/legacy/functional/api/model/test_package.py
M ckan/tests/legacy/functional/api/model/test_tag.py
M ckan/tests/legacy/functional/api/model/test_vocabulary.py
M ckan/tests/legacy/functional/api/test_dashboard.py
M ckan/tests/legacy/functional/api/test_package_search.py
R ckan/tests/legacy/functional/api/test_revision_search.py
M ckan/tests/legacy/functional/api/test_util.py
M ckan/tests/legacy/functional/test_admin.py
M ckan/tests/legacy/functional/test_group.py
R ckan/tests/legacy/functional/test_home.py
M ckan/tests/legacy/functional/test_package.py
M ckan/tests/legacy/functional/test_pagination.py
M ckan/tests/legacy/functional/test_related.py
R ckan/tests/legacy/functional/test_storage.py
M ckan/tests/legacy/functional/test_user.py
M ckan/tests/legacy/lib/test_cli.py
M ckan/tests/legacy/lib/test_dictization.py
M ckan/tests/legacy/lib/test_dictization_schema.py
M ckan/tests/legacy/lib/test_helpers.py
M ckan/tests/legacy/lib/test_solr_package_search.py
M ckan/tests/legacy/lib/test_solr_package_search_synchronous_update.py
M ckan/tests/legacy/logic/test_action.py
M ckan/tests/legacy/logic/test_tag.py
M ckan/tests/legacy/models/test_group.py
M ckan/tests/legacy/models/test_user.py
M ckan/tests/legacy/test_coding_standards.py
M ckan/tests/legacy/test_plugins.py
R ckan/tests/legacy/test_wsgi_ckanclient.py
R ckan/tests/legacy/wsgi_ckanclient.py
M ckan/tests/lib/dictization/test_model_dictize.py
A ckan/tests/lib/test_app_globals.py
M ckan/tests/lib/test_base.py
M ckan/tests/lib/test_helpers.py
M ckan/tests/lib/test_munge.py
M ckan/tests/logic/action/test_create.py
M ckan/tests/logic/action/test_delete.py
M ckan/tests/logic/action/test_get.py
M ckan/tests/logic/action/test_update.py
M ckan/tests/logic/auth/test_get.py
M ckan/tests/logic/auth/test_update.py
A ckan/tests/model/test_system_info.py
A ckan/tests/plugins/test_toolkit.py
A ckanext/datapusher/interfaces.py
M ckanext/datapusher/logic/action.py
M ckanext/datapusher/plugin.py
A ckanext/datapusher/tests/test_interfaces.py
M ckanext/datastore/db.py
M ckanext/datastore/helpers.py
M ckanext/datastore/plugin.py
M ckanext/datastore/tests/test_create.py
A ckanext/datastore/tests/test_disable.py
M ckanext/example_iconfigurer/plugin.py
A ckanext/example_iconfigurer/plugin_v1.py
A ckanext/example_iconfigurer/plugin_v2.py
A ckanext/example_iconfigurer/templates/admin/config.html
A ckanext/example_iconfigurer/tests/test_iconfigurer_update_config.py
M ckanext/example_idatasetform/tests/test_example_idatasetform.py
A ckanext/example_itranslation/__init__.py
A ckanext/example_itranslation/babel_mapping.cfg
A ckanext/example_itranslation/i18n/ckanext-example_itranslation.pot
A ckanext/example_itranslation/i18n/en/LC_MESSAGES/ckanext-example_itranslation.mo
A ckanext/example_itranslation/i18n/en/LC_MESSAGES/ckanext-example_itranslation.po
A ckanext/example_itranslation/i18n/en/LC_MESSAGES/ckanext-example_translation.po
A ckanext/example_itranslation/i18n/fr/LC_MESSAGES/ckanext-example_itranslation.mo
A ckanext/example_itranslation/i18n/fr/LC_MESSAGES/ckanext-example_itranslation.po
A ckanext/example_itranslation/plugin.py
A ckanext/example_itranslation/plugin_v1.py
A ckanext/example_itranslation/setup.cfg
A ckanext/example_itranslation/templates/home/index.html
A ckanext/example_itranslation/tests/__init__.py
A ckanext/example_itranslation/tests/test_plugin.py
M ckanext/example_theme/v08_custom_helper_function/plugin.py
M ckanext/example_theme/v18_snippet_api/templates/ajax_snippets/example_theme_popover.html
M ckanext/multilingual/solr/schema.xml
M ckanext/multilingual/tests/test_multilingual_plugin.py
M ckanext/reclineview/plugin.py
M ckanext/reclineview/theme/public/vendor/recline/recline.js
M ckanext/reclineview/theme/templates/recline_map_form.html
M ckanext/resourceproxy/controller.py
M ckanext/stats/controller.py
R ckanext/stats/public/ckanext/stats/app.js
R ckanext/stats/public/ckanext/stats/demo.html
R ckanext/stats/public/ckanext/stats/style.css
M ckanext/stats/stats.py
M ckanext/stats/templates/ckanext/stats/index.html
R ckanext/stats/templates_legacy/__init__.py
R ckanext/stats/templates_legacy/ckanext/__init__.py
R ckanext/stats/templates_legacy/ckanext/stats/__init__.py
R ckanext/stats/templates_legacy/ckanext/stats/index.html
R ckanext/stats/templates_legacy/ckanext/stats/leaderboard.html
M ckanext/stats/tests/test_stats_lib.py
M contrib/docker/my_init.d/50_configure
M dev-requirements.txt
R doc/api.rst
M doc/api/index.rst
M doc/api/legacy-api.rst
M doc/contents.rst
M doc/contributing/frontend/index.rst
M doc/contributing/frontend/template-blocks.rst
M doc/contributing/issues.rst
M doc/contributing/release-process.rst
M doc/contributing/reviewing.rst
M doc/extensions/adding-custom-fields.rst
M doc/extensions/index.rst
A doc/extensions/remote-config-update.rst
A doc/extensions/translating-extensions.rst
A doc/images/custom_config_fields.png
M doc/index.rst
M doc/maintaining/configuration.rst
M doc/maintaining/datastore.rst
M doc/maintaining/installing/install-from-package.rst
M doc/maintaining/installing/install-from-source.rst
M doc/maintaining/linked-data-and-rdf.rst
M requirements.in
M requirements.txt
M setup.py
M test-core.ini
Log Message:
-----------
Merge branch 'master' into 1527-custom-emails
Conflicts:
setup.py
Commit: 50dc951b858aa4679aedc20cc81a833a8d4c5c8b
https://github.com/ckan/ckan/commit/50dc951b858aa4679aedc20cc81a833a8d4c5c8b
Author: amercader <amercadero at gmail.com>
Date: 2015-12-08 (Tue, 08 Dec 2015)
Changed paths:
R .coveragerc
M .tx/config
M CHANGELOG.rst
M README.rst
M bin/travis-run-tests
M ckan/__init__.py
M ckan/config/deployment.ini_tmpl
M ckan/config/resource_formats.json
M ckan/config/routing.py
M ckan/controllers/api.py
M ckan/controllers/error.py
M ckan/controllers/group.py
M ckan/controllers/package.py
M ckan/i18n/ar/LC_MESSAGES/ckan.mo
M ckan/i18n/ar/LC_MESSAGES/ckan.po
M ckan/i18n/bg/LC_MESSAGES/ckan.mo
M ckan/i18n/bg/LC_MESSAGES/ckan.po
M ckan/i18n/ca/LC_MESSAGES/ckan.mo
M ckan/i18n/ca/LC_MESSAGES/ckan.po
M ckan/i18n/check_po_files.py
M ckan/i18n/ckan.pot
M ckan/i18n/cs_CZ/LC_MESSAGES/ckan.mo
M ckan/i18n/cs_CZ/LC_MESSAGES/ckan.po
M ckan/i18n/da_DK/LC_MESSAGES/ckan.mo
M ckan/i18n/da_DK/LC_MESSAGES/ckan.po
M ckan/i18n/de/LC_MESSAGES/ckan.mo
M ckan/i18n/de/LC_MESSAGES/ckan.po
R ckan/i18n/dv/LC_MESSAGES/ckan.mo
R ckan/i18n/dv/LC_MESSAGES/ckan.po
M ckan/i18n/el/LC_MESSAGES/ckan.mo
M ckan/i18n/el/LC_MESSAGES/ckan.po
M ckan/i18n/en_AU/LC_MESSAGES/ckan.mo
M ckan/i18n/en_AU/LC_MESSAGES/ckan.po
R ckan/i18n/en_CA/LC_MESSAGES/ckan.mo
R ckan/i18n/en_CA/LC_MESSAGES/ckan.po
M ckan/i18n/en_GB/LC_MESSAGES/ckan.mo
M ckan/i18n/en_GB/LC_MESSAGES/ckan.po
M ckan/i18n/es/LC_MESSAGES/ckan.mo
M ckan/i18n/es/LC_MESSAGES/ckan.po
R ckan/i18n/es_AR/LC_MESSAGES/ckan.mo
R ckan/i18n/es_AR/LC_MESSAGES/ckan.po
R ckan/i18n/es_MX/LC_MESSAGES/ckan.mo
R ckan/i18n/es_MX/LC_MESSAGES/ckan.po
R ckan/i18n/eu/LC_MESSAGES/ckan.mo
R ckan/i18n/eu/LC_MESSAGES/ckan.po
M ckan/i18n/fa_IR/LC_MESSAGES/ckan.mo
M ckan/i18n/fa_IR/LC_MESSAGES/ckan.po
M ckan/i18n/fi/LC_MESSAGES/ckan.mo
M ckan/i18n/fi/LC_MESSAGES/ckan.po
M ckan/i18n/fr/LC_MESSAGES/ckan.mo
M ckan/i18n/fr/LC_MESSAGES/ckan.po
M ckan/i18n/he/LC_MESSAGES/ckan.mo
M ckan/i18n/he/LC_MESSAGES/ckan.po
M ckan/i18n/hr/LC_MESSAGES/ckan.mo
M ckan/i18n/hr/LC_MESSAGES/ckan.po
M ckan/i18n/hu/LC_MESSAGES/ckan.mo
M ckan/i18n/hu/LC_MESSAGES/ckan.po
M ckan/i18n/id/LC_MESSAGES/ckan.mo
M ckan/i18n/id/LC_MESSAGES/ckan.po
M ckan/i18n/is/LC_MESSAGES/ckan.mo
M ckan/i18n/is/LC_MESSAGES/ckan.po
M ckan/i18n/it/LC_MESSAGES/ckan.mo
M ckan/i18n/it/LC_MESSAGES/ckan.po
M ckan/i18n/ja/LC_MESSAGES/ckan.mo
M ckan/i18n/ja/LC_MESSAGES/ckan.po
M ckan/i18n/km/LC_MESSAGES/ckan.mo
M ckan/i18n/km/LC_MESSAGES/ckan.po
M ckan/i18n/ko_KR/LC_MESSAGES/ckan.mo
M ckan/i18n/ko_KR/LC_MESSAGES/ckan.po
R ckan/i18n/lo/LC_MESSAGES/ckan.mo
R ckan/i18n/lo/LC_MESSAGES/ckan.po
M ckan/i18n/lt/LC_MESSAGES/ckan.mo
M ckan/i18n/lt/LC_MESSAGES/ckan.po
M ckan/i18n/lv/LC_MESSAGES/ckan.mo
M ckan/i18n/lv/LC_MESSAGES/ckan.po
M ckan/i18n/mn_MN/LC_MESSAGES/ckan.mo
M ckan/i18n/mn_MN/LC_MESSAGES/ckan.po
R ckan/i18n/my/LC_MESSAGES/ckan.mo
R ckan/i18n/my/LC_MESSAGES/ckan.po
R ckan/i18n/my_MM/LC_MESSAGES/ckan.mo
R ckan/i18n/my_MM/LC_MESSAGES/ckan.po
M ckan/i18n/ne/LC_MESSAGES/ckan.mo
M ckan/i18n/ne/LC_MESSAGES/ckan.po
M ckan/i18n/nl/LC_MESSAGES/ckan.mo
M ckan/i18n/nl/LC_MESSAGES/ckan.po
M ckan/i18n/no/LC_MESSAGES/ckan.mo
M ckan/i18n/no/LC_MESSAGES/ckan.po
M ckan/i18n/pl/LC_MESSAGES/ckan.mo
M ckan/i18n/pl/LC_MESSAGES/ckan.po
M ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo
M ckan/i18n/pt_BR/LC_MESSAGES/ckan.po
M ckan/i18n/pt_PT/LC_MESSAGES/ckan.mo
M ckan/i18n/pt_PT/LC_MESSAGES/ckan.po
M ckan/i18n/ro/LC_MESSAGES/ckan.mo
M ckan/i18n/ro/LC_MESSAGES/ckan.po
M ckan/i18n/ru/LC_MESSAGES/ckan.mo
M ckan/i18n/ru/LC_MESSAGES/ckan.po
M ckan/i18n/sk/LC_MESSAGES/ckan.mo
M ckan/i18n/sk/LC_MESSAGES/ckan.po
M ckan/i18n/sl/LC_MESSAGES/ckan.mo
M ckan/i18n/sl/LC_MESSAGES/ckan.po
M ckan/i18n/sq/LC_MESSAGES/ckan.mo
M ckan/i18n/sq/LC_MESSAGES/ckan.po
M ckan/i18n/sr/LC_MESSAGES/ckan.mo
M ckan/i18n/sr/LC_MESSAGES/ckan.po
M ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo
M ckan/i18n/sr_Latn/LC_MESSAGES/ckan.po
M ckan/i18n/sv/LC_MESSAGES/ckan.mo
M ckan/i18n/sv/LC_MESSAGES/ckan.po
R ckan/i18n/sw/LC_MESSAGES/ckan.mo
R ckan/i18n/sw/LC_MESSAGES/ckan.po
M ckan/i18n/th/LC_MESSAGES/ckan.mo
M ckan/i18n/th/LC_MESSAGES/ckan.po
M ckan/i18n/tr/LC_MESSAGES/ckan.mo
M ckan/i18n/tr/LC_MESSAGES/ckan.po
M ckan/i18n/uk_UA/LC_MESSAGES/ckan.mo
M ckan/i18n/uk_UA/LC_MESSAGES/ckan.po
M ckan/i18n/vi/LC_MESSAGES/ckan.mo
M ckan/i18n/vi/LC_MESSAGES/ckan.po
R ckan/i18n/vi_VN/LC_MESSAGES/ckan.mo
R ckan/i18n/vi_VN/LC_MESSAGES/ckan.po
M ckan/i18n/zh_CN/LC_MESSAGES/ckan.mo
M ckan/i18n/zh_CN/LC_MESSAGES/ckan.po
M ckan/i18n/zh_TW/LC_MESSAGES/ckan.mo
M ckan/i18n/zh_TW/LC_MESSAGES/ckan.po
R ckan/lib/accept.py
M ckan/lib/cli.py
M ckan/lib/dictization/model_dictize.py
M ckan/lib/dumper.py
M ckan/lib/email_notifications.py
M ckan/lib/helpers.py
M ckan/lib/plugins.py
M ckan/logic/action/create.py
M ckan/logic/action/get.py
M ckan/logic/action/update.py
M ckan/logic/schema.py
M ckan/logic/validators.py
A ckan/migration/versions/081_set_datastore_active.py
A ckan/migration/versions/082_create_index_creator_user_id.py
M ckan/pastertemplates/template/bin/travis-build.bash_tmpl
M ckan/plugins/interfaces.py
M ckan/templates/activity_streams/activity_stream_email_notifications.text
A ckan/tests/i18n/test_check_po_files.py
M ckan/tests/legacy/functional/api/test_api.py
R ckan/tests/legacy/lib/test_accept.py
M ckan/tests/legacy/logic/test_action.py
M ckan/tests/legacy/misc/test_format_text.py
M ckan/tests/legacy/models/test_package.py
M ckan/tests/legacy/test_coding_standards.py
M ckan/tests/legacy/test_dumper.py
M ckan/tests/lib/test_helpers.py
M ckan/tests/lib/test_munge.py
M ckan/tests/logic/action/test_create.py
M ckan/tests/logic/action/test_get.py
M ckan/tests/logic/action/test_update.py
M ckan/tests/logic/test_validators.py
M ckanext/datapusher/tests/test.py
M ckanext/datastore/logic/action.py
M ckanext/datastore/plugin.py
M ckanext/datastore/tests/test_create.py
M ckanext/example_igroupform/plugin.py
A ckanext/example_igroupform/templates/example_igroup_form/group_form.html
M ckanext/example_igroupform/tests/test_controllers.py
M ckanext/resourceproxy/controller.py
M ckanext/resourceproxy/tests/test_proxy.py
M dev-requirements.txt
M doc/conf.py
M doc/contributing/frontend/index.rst
M doc/contributing/release-process.rst
M doc/maintaining/configuration.rst
M doc/maintaining/installing/deployment.rst
M doc/maintaining/installing/index.rst
M doc/maintaining/installing/install-from-package.rst
M doc/maintaining/installing/install-from-source.rst
M doc/maintaining/upgrading/upgrade-package-ckan-1-to-2.rst
M requirements.in
M requirements.txt
M setup.py
Log Message:
-----------
Merge branch 'master' into 1527-custom-emails
Commit: a65cce9f4e1e8e0ef7f149c189e3ffd4f1d2b53a
https://github.com/ckan/ckan/commit/a65cce9f4e1e8e0ef7f149c189e3ffd4f1d2b53a
Author: amercader <amercadero at gmail.com>
Date: 2015-12-09 (Wed, 09 Dec 2015)
Changed paths:
M ckan/tests/legacy/lib/test_resource_search.py
Log Message:
-----------
[#1527] Change resource fields in legacy tests to avoid conflicts
Commit: 9d97d5348c08f2d4ca68ef1473fab46cfc8ad590
https://github.com/ckan/ckan/commit/9d97d5348c08f2d4ca68ef1473fab46cfc8ad590
Author: Ian Ward <ian at excess.org>
Date: 2016-01-07 (Thu, 07 Jan 2016)
Changed paths:
M ckan/lib/helpers.py
M ckan/lib/mailer.py
M ckan/logic/action/create.py
A ckan/templates/emails/invite_user.txt
A ckan/templates/emails/invite_user_subject.txt
A ckan/templates/emails/reset_password.txt
A ckan/templates/emails/reset_password_subject.txt
R ckan/tests/legacy/lib/test_mailer.py
M ckan/tests/legacy/lib/test_resource_search.py
M ckan/tests/legacy/mock_mail_server.py
M ckan/tests/legacy/test_coding_standards.py
A ckan/tests/lib/test_mailer.py
M ckan/tests/logic/action/test_create.py
A ckanext/example_theme/custom_emails/__init__.py
A ckanext/example_theme/custom_emails/plugin.py
A ckanext/example_theme/custom_emails/templates/emails/invite_user.txt
A ckanext/example_theme/custom_emails/templates/emails/invite_user_subject.txt
A ckanext/example_theme/custom_emails/templates/emails/reset_password.txt
A ckanext/example_theme/custom_emails/templates/emails/reset_password_subject.txt
A ckanext/example_theme/custom_emails/tests.py
M setup.py
Log Message:
-----------
Merge pull request #2465 from ckan/1527-custom-emails
[#1527] Allow to customize emails sent from CKAN
Compare: https://github.com/ckan/ckan/compare/9b5cb5cb1afa...9d97d5348c08
More information about the ckan-changes
mailing list