diff options
| -rw-r--r-- | CHANGES.txt | 30 | ||||
| -rw-r--r-- | engine/lib/metadata.php | 13 | ||||
| -rw-r--r-- | engine/lib/relationships.php | 9 | ||||
| -rw-r--r-- | languages/en.php | 1 | ||||
| -rw-r--r-- | mod/externalpages/views/default/expages/wrapper.php | 2 | ||||
| -rw-r--r-- | mod/groups/lib/discussion.php | 2 | ||||
| -rw-r--r-- | mod/tinymce/README.txt | 10 | ||||
| -rw-r--r-- | mod/tinymce/activate.php | 14 | ||||
| -rw-r--r-- | mod/tinymce/languages/en.php | 3 | ||||
| -rw-r--r-- | mod/tinymce/start.php | 12 | ||||
| -rw-r--r-- | mod/tinymce/views/default/js/tinymce.php | 3 | ||||
| -rw-r--r-- | version.php | 4 | ||||
| -rw-r--r-- | views/default/css/admin.php | 15 | 
13 files changed, 103 insertions, 15 deletions
diff --git a/CHANGES.txt b/CHANGES.txt index b502b8411..45f561ab5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,33 @@ +Version 1.8.7 +(July 10, 2012 from https://github.com/Elgg/Elgg/tree/1.8) + + Contributing Developers: +  * Cash Costello +  * Evan Winslow +  * Ismayil Khayredinov +  * Jeroen Dalsem +  * Jerome Bakker +  * Matt Beckett +  * Miguel Rodriguez +  * Paweł Sroka +  * Sem +  * Steve Clay + + Enhancements: +  * Better support for search engine friendly URLs +  * Upgraded htmlawed (XSS filtering) +  * Internationalization support for TinyMCE +  * Public access not available for walled gardens +  * Better forwarding and messages when they cannot view content because logged out + + Bugfixes: +  * Fatal errors due to type hints downgraded to warnings +  * Group discussion reply notifications work again +  * Sending user to inbox when deleting a message +  * Fixed location profile information when it is an array +  * Over 30 other bug fixes. + +  Version 1.8.6  (June 18, 2012 from https://github.com/Elgg/Elgg/tree/1.8) diff --git a/engine/lib/metadata.php b/engine/lib/metadata.php index 0ff3a43dc..77fa30e41 100644 --- a/engine/lib/metadata.php +++ b/engine/lib/metadata.php @@ -361,13 +361,24 @@ function elgg_enable_metadata(array $options) {   * options available to elgg_get_entities().  Supports   * the singular option shortcut.   * - * NB: Using metadata_names and metadata_values results in a + * @note Using metadata_names and metadata_values results in a   * "names IN (...) AND values IN (...)" clause.  This is subtly   * differently than default multiple metadata_name_value_pairs, which use   * "(name = value) AND (name = value)" clauses.   *   * When in doubt, use name_value_pairs.   * + * To ask for entities that do not have a metadata value, use a custom + * where clause like this: + * + * 	$options['wheres'][] = "NOT EXISTS ( + *			SELECT 1 FROM {$dbprefix}metadata md + *			WHERE md.entity_guid = e.guid + *				AND md.name_id = $name_metastring_id + *				AND md.value_id = $value_metastring_id)"; + * + * Note the metadata name and value has been denormalized in the above example. + *   * @see elgg_get_entities   *   * @param array $options Array in format: diff --git a/engine/lib/relationships.php b/engine/lib/relationships.php index f50c4a485..09d541e22 100644 --- a/engine/lib/relationships.php +++ b/engine/lib/relationships.php @@ -239,6 +239,15 @@ function get_entity_relationships($guid, $inverse_relationship = FALSE) {   * Also accepts all options available to elgg_get_entities() and   * elgg_get_entities_from_metadata().   * + * To ask for entities that do not have a particulat relationship to an entity, + * use a custom where clause like the following: + * + * 	$options['wheres'][] = "NOT EXISTS ( + *			SELECT 1 FROM {$db_prefix}entity_relationships + *				WHERE guid_one = e.guid + *				AND relationship = '$relationship' + *		)"; + *   * @see elgg_get_entities   * @see elgg_get_entities_from_metadata   * diff --git a/languages/en.php b/languages/en.php index 7b4bc9771..01b4d5d6b 100644 --- a/languages/en.php +++ b/languages/en.php @@ -877,6 +877,7 @@ $english = array(  	'down' => 'Down',  	'top' => 'Top',  	'bottom' => 'Bottom', +	'back' => 'Back',  	'invite' => "Invite", diff --git a/mod/externalpages/views/default/expages/wrapper.php b/mod/externalpages/views/default/expages/wrapper.php index 8eb0b2f84..c579da1ba 100644 --- a/mod/externalpages/views/default/expages/wrapper.php +++ b/mod/externalpages/views/default/expages/wrapper.php @@ -9,7 +9,7 @@ echo $vars['content'];  echo '<div class="mtm">';  echo elgg_view('output/url', array( -	'text' => 'Back', +	'text' => elgg_echo('back'),  	'href' => $_SERVER['HTTP_REFERER'],  	'class' => 'float-alt'  )); diff --git a/mod/groups/lib/discussion.php b/mod/groups/lib/discussion.php index 02ab27fdc..ab2fe4849 100644 --- a/mod/groups/lib/discussion.php +++ b/mod/groups/lib/discussion.php @@ -15,7 +15,7 @@ function discussion_handle_all_page() {  		'type' => 'object',  		'subtype' => 'groupforumtopic',  		'order_by' => 'e.last_action desc', -		'limit' => 40, +		'limit' => 20,  		'full_view' => false,  	)); diff --git a/mod/tinymce/README.txt b/mod/tinymce/README.txt new file mode 100644 index 000000000..2814e9390 --- /dev/null +++ b/mod/tinymce/README.txt @@ -0,0 +1,10 @@ +Adding a language +====================== +1. Download the language pack from [TinyMCE][1] +2. Extract the files from the zip file. +3. Copy the langs, plugins, and themes directories into mod/tinymce/vendor/tinymce/jscripts/tiny_mce/. +There are already directories with those names. You do not want to delete those directories. +Instead, copy the new directories on top of the old ones. +4. Flush the Elgg caches. + +[1]: http://www.tinymce.com/i18n/index.php?ctrl=lang&act=download	"TinyMCE" diff --git a/mod/tinymce/activate.php b/mod/tinymce/activate.php new file mode 100644 index 000000000..6f5cc8d50 --- /dev/null +++ b/mod/tinymce/activate.php @@ -0,0 +1,14 @@ +<?php +/** + * Prompt the user to install a tinymce language after activating + */ + +if (elgg_get_config('language') != tinymce_get_site_language()) { +	$message = elgg_echo('tinymce:lang_notice', array( +		elgg_echo(elgg_get_config('language')), +		"http://www.tinymce.com/i18n/index.php?ctrl=lang&act=download", +		elgg_get_plugins_path() . "tinymce/vendor/tinymce/jscripts/tiny_mce/", +		elgg_add_action_tokens_to_url(elgg_normalize_url('action/admin/site/flush_cache')), +	)); +	elgg_add_admin_notice('tinymce_admin_notice_no_lang', $message); +} diff --git a/mod/tinymce/languages/en.php b/mod/tinymce/languages/en.php index 811e93492..b2702549c 100644 --- a/mod/tinymce/languages/en.php +++ b/mod/tinymce/languages/en.php @@ -9,6 +9,7 @@ $english = array(  	'tinymce:remove' => "Remove editor",  	'tinymce:add' => "Add editor",  	'tinymce:word_count' => 'Word count: ', +	'tinymce:lang_notice' => "Your site language is %s but it isn't installed for TinyMCE. Get it <a target=\"_blank\" href=\"%s\">here</a> and copy it to %s. Then, <a href=\"%s\">flush the caches</a>. See the TinyMCE README for more details.",  ); -add_translation("en", $english);
\ No newline at end of file +add_translation("en", $english); diff --git a/mod/tinymce/start.php b/mod/tinymce/start.php index 48625f456..6aba837e0 100644 --- a/mod/tinymce/start.php +++ b/mod/tinymce/start.php @@ -33,3 +33,15 @@ function tinymce_longtext_menu($hook, $type, $items, $vars) {  	return $items;  } + +function tinymce_get_site_language() { + +	if ($site_language = elgg_get_config('language')) { +		$path = elgg_get_plugins_path() . "tinymce/vendor/tinymce/jscripts/tiny_mce/langs"; +		if (file_exists("$path/$site_language.js")) { +			return $site_language; +		} +	} + +	return 'en'; +} diff --git a/mod/tinymce/views/default/js/tinymce.php b/mod/tinymce/views/default/js/tinymce.php index e6e2865a5..51e99c223 100644 --- a/mod/tinymce/views/default/js/tinymce.php +++ b/mod/tinymce/views/default/js/tinymce.php @@ -38,6 +38,7 @@ elgg.tinymce.init = function() {  		mode : "specific_textareas",  		editor_selector : "elgg-input-longtext",  		theme : "advanced", +		language : "<?php echo tinymce_get_site_language(); ?>",  		plugins : "lists,spellchecker,autosave,fullscreen,paste",  		relative_urls : false,  		remove_script_host : false, @@ -86,4 +87,4 @@ elgg.tinymce.init = function() {  	}  } -elgg.register_hook_handler('init', 'system', elgg.tinymce.init);
\ No newline at end of file +elgg.register_hook_handler('init', 'system', elgg.tinymce.init); diff --git a/version.php b/version.php index 0fb757b9c..a867f1625 100644 --- a/version.php +++ b/version.php @@ -11,7 +11,7 @@  // YYYYMMDD = Elgg Date  // XX = Interim incrementer -$version = 2012061800; +$version = 2012070900;  // Human-friendly version name -$release = '1.8.6'; +$release = '1.8.7'; diff --git a/views/default/css/admin.php b/views/default/css/admin.php index 0f5c1f677..78ec95c26 100644 --- a/views/default/css/admin.php +++ b/views/default/css/admin.php @@ -25,7 +25,6 @@ table, caption, tbody, tfoot, thead, tr, th, td {  	margin: 0;  	padding: 0;  	border: 0; -	outline: 0;  	font-weight: inherit;  	font-style: inherit;  	font-size: 100%; @@ -41,9 +40,6 @@ img {  	border-width: 0;  	border-color: transparent;  } -:focus { -	outline: 0 none; -}  ol, ul {  	list-style: none;  } @@ -359,6 +355,8 @@ p {  .elgg-table td, .elgg-table th {  	background: white;  	border: 1px solid #ccc; +	padding: 4px 8px; +	vertical-align: middle;  }  .elgg-table th {  	background-color: #ddd; @@ -366,10 +364,10 @@ p {  .elgg-table .alt td {  	background: #eee;  } -.elgg-table td { -	padding: 4px 8px; -	border-bottom: 1px solid #ccc; +.elgg-table input[type=checkbox] { +	margin-top: 3px;  } +  .elgg-table-alt {  	width: 100%;  	border-top: 1px solid #ccc; @@ -441,7 +439,9 @@ input {  	-webkit-border-radius: 5px;  	-moz-border-radius: 5px;  	border-radius: 5px; +	margin: 0;  } +  /* default elgg core input field classes */  .elgg-input-text,  .elgg-input-tags, @@ -471,7 +471,6 @@ textarea {  	width: auto;  	padding: 2px 4px;  	cursor: pointer; -	outline: none;  }  a.elgg-button {  	padding: 3px 6px;  | 
