summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README6
-rw-r--r--lib/action.php47
-rw-r--r--lib/default.php4
3 files changed, 42 insertions, 15 deletions
diff --git a/README b/README
index 7457215a1..386b3264a 100644
--- a/README
+++ b/README
@@ -1035,6 +1035,12 @@ Creative Commons Attribution 3.0 license, which is probably the right
choice for any public site. Note that some other servers will not
accept notices if you apply a stricter license than this.
+type: one of 'cc' (for Creative Commons licenses), 'allrightsreserved'
+ (default copyright), or 'private' (for private and confidential
+ information).
+owner: for 'allrightsreserved' or 'private', an assigned copyright
+ holder (for example, an employer for a private site). If
+ not specified, will be attributed to 'contributors'.
url: URL of the license, used for links.
title: Title for the license, like 'Creative Commons Attribution 3.0'.
image: A button shown on each page for the license.
diff --git a/lib/action.php b/lib/action.php
index 813d089fe..171bea17c 100644
--- a/lib/action.php
+++ b/lib/action.php
@@ -794,20 +794,39 @@ class Action extends HTMLOutputter // lawsuit
if (Event::handle('StartShowContentLicense', array($this))) {
$this->element('dt', array('id' => 'site_content_license'), _('Site content license'));
$this->elementStart('dd', array('id' => 'site_content_license_cc'));
- $this->elementStart('p');
- $this->element('img', array('id' => 'license_cc',
- 'src' => common_config('license', 'image'),
- 'alt' => common_config('license', 'title'),
- 'width' => '80',
- 'height' => '15'));
- //TODO: This is dirty: i18n
- $this->text(_('All '.common_config('site', 'name').' content and data are available under the '));
- $this->element('a', array('class' => 'license',
- 'rel' => 'external license',
- 'href' => common_config('license', 'url')),
- common_config('license', 'title'));
- $this->text(_('license.'));
- $this->elementEnd('p');
+
+ switch (common_config('license', 'type')) {
+ case 'private':
+ $this->element('p', null, sprintf(_('Content and data of %1$s are private and confidential.'),
+ common_config('site', 'name')));
+ // fall through
+ case 'allrightsreserved':
+ if (common_config('license', 'owner')) {
+ $this->element('p', null, sprintf(_('Content and data copyright by %1$s. All rights reserved.'),
+ common_config('license', 'owner')));
+ } else {
+ $this->element('p', null, _('Content and data copyright by contributors. All rights reserved.'));
+ }
+ break;
+ case 'cc': // fall through
+ default:
+ $this->elementStart('p');
+ $this->element('img', array('id' => 'license_cc',
+ 'src' => common_config('license', 'image'),
+ 'alt' => common_config('license', 'title'),
+ 'width' => '80',
+ 'height' => '15'));
+ //TODO: This is dirty: i18n
+ $this->text(_('All '.common_config('site', 'name').' content and data are available under the '));
+ $this->element('a', array('class' => 'license',
+ 'rel' => 'external license',
+ 'href' => common_config('license', 'url')),
+ common_config('license', 'title'));
+ $this->text(_('license.'));
+ $this->elementEnd('p');
+ break;
+ }
+
$this->elementEnd('dd');
Event::handle('EndShowContentLicense', array($this));
}
diff --git a/lib/default.php b/lib/default.php
index f7f4777a2..5b2ae6c7c 100644
--- a/lib/default.php
+++ b/lib/default.php
@@ -83,7 +83,9 @@ $default =
'softlimit' => '90%', // total size or % of memory_limit at which to restart queue threads gracefully
),
'license' =>
- array('url' => 'http://creativecommons.org/licenses/by/3.0/',
+ array('type' => 'cc', # can be 'cc', 'allrightsreserved', 'private'
+ 'owner' => null, # can be name of content owner e.g. for enterprise
+ 'url' => 'http://creativecommons.org/licenses/by/3.0/',
'title' => 'Creative Commons Attribution 3.0',
'image' => 'http://i.creativecommons.org/l/by/3.0/80x15.png'),
'mail' =>