From 33de97cc48cc2f7d79db38568ee74cb93f7b0041 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Sat, 15 Mar 2014 14:44:13 -0300 Subject: Squashed 'mod/curatedgroups/' content from commit fb2fc6f git-subtree-dir: mod/curatedgroups git-subtree-split: fb2fc6f267b9c3c7e6c5055412b716ce22b34a32 --- languages/ca.php | 33 ++++++++++++ languages/en.php | 33 ++++++++++++ languages/es.php | 33 ++++++++++++ manifest.xml | 18 +++++++ start.php | 38 +++++++++++++ views/default/forms/groups/edit.php | 77 +++++++++++++++++++++++++++ views/default/settings/curatedgroups/edit.php | 39 ++++++++++++++ 7 files changed, 271 insertions(+) create mode 100644 languages/ca.php create mode 100755 languages/en.php create mode 100755 languages/es.php create mode 100755 manifest.xml create mode 100644 start.php create mode 100644 views/default/forms/groups/edit.php create mode 100644 views/default/settings/curatedgroups/edit.php diff --git a/languages/ca.php b/languages/ca.php new file mode 100644 index 000000000..c7513aad1 --- /dev/null +++ b/languages/ca.php @@ -0,0 +1,33 @@ + + * + * This file is part of the CuratedGroups plugin for Elgg. + * + * CuratedGroups is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * CuratedGroups is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * . + */ + +$catalan = array( + "curatedgroups:message" => "Tan sols es poden crear grups oficials. Si estàs intentant crear un grup oficial contacta amb els administradors.", + "curatedgroups:settings:message" => "Escriu un missatge personalitzat per mostrar quan s'estigui intentant crear un grup. Si no s'especifica, s'utilizarà un missatge per defecte internacionalitzable", + "curatedgroups:settings:creators" => "Escriu una llista de noms d'usuari separats per comes que podràn crear grups" +); + +add_translation("ca", $catalan); diff --git a/languages/en.php b/languages/en.php new file mode 100755 index 000000000..88990a42d --- /dev/null +++ b/languages/en.php @@ -0,0 +1,33 @@ + + * + * This file is part of the CuratedGroups plugin for Elgg. + * + * CuratedGroups is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * CuratedGroups is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * . + */ + +$english = array( + "curatedgroups:message" => "Only official groups are allowed. If you're trying to create an official group please contact the admins.", + "curatedgroups:settings:message" => "Write a personalized message to show when trying to create a group. If not defined a default internationalizable one will be shown", + "curatedgroups:settings:creators" => "Write a comma separated list of usernames that will be allowed to create groups" +); + +add_translation("en",$english); diff --git a/languages/es.php b/languages/es.php new file mode 100755 index 000000000..7c44cf812 --- /dev/null +++ b/languages/es.php @@ -0,0 +1,33 @@ + + * + * This file is part of the CuratedGroups plugin for Elgg. + * + * CuratedGroups is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * CuratedGroups is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * . + */ + +$spanish = array( + "curatedgroups:message" => "Solo se pueden crear grupos oficiales. Si está tratando de crear un grupo oficial contacta con las administradoras.", + "curatedgroups:settings:message" => "Escribe un mensaje personalizado que mostrar cuando se esté intentando crear un grupo. Si no se especifica se utilizará un mensaje por defecto internacionalizable", + "curatedgroups:settings:creators" => "Escribe una lista de nombres de usuario separados por comas que podrán crear grupos" +); + +add_translation("es", $spanish); diff --git a/manifest.xml b/manifest.xml new file mode 100755 index 000000000..8bef940e9 --- /dev/null +++ b/manifest.xml @@ -0,0 +1,18 @@ + + + Curated Groups + Lorea developers + 1.1 + lorea + groups + Limit group creation to administrators. + https://lorea.org/plugin/curatedgroups + https://gitorious.org/lorea/curatedgroups + https://lorea.org/support + GNU Affero GeneralPublic License version 3 or later + + elgg_version + 2011061200 + + advanced + diff --git a/start.php b/start.php new file mode 100644 index 000000000..e4bca1ff7 --- /dev/null +++ b/start.php @@ -0,0 +1,38 @@ + + * @license COPYING, http://www.gnu.org/licenses/agpl + * + * Copyright 2011-2012 Lorea Faeries + * + * This program is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * . + */ + +/** + * Elgg Curated Groups plugin + * + * @package ElggCuratedGroups + */ +elgg_register_event_handler('init','system','curatedgroups_init'); + +function curatedgroups_init(){ +} + +?> diff --git a/views/default/forms/groups/edit.php b/views/default/forms/groups/edit.php new file mode 100644 index 000000000..72b017832 --- /dev/null +++ b/views/default/forms/groups/edit.php @@ -0,0 +1,77 @@ + + * + * This file is part of the CuratedGroups plugin for Elgg. + * + * CuratedGroups is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * CuratedGroups is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * . + */ + + $creator=false; + // check if user is admin + if (isadminloggedin()) $creator=true; + + // check if user is one of the specified group creators + if (!$creator) { + $creators_text = str_replace(' ', '', elgg_get_plugin_setting("creators", "curatedgroups")); + $creators = explode(",", $creators_text); + if (!empty($creators)) { + if (in_array(elgg_get_logged_in_user_entity()->username, $creators)) { + $creator = true; + // Compatibility with CuratedGroups 1.0 + } elseif (in_array(elgg_get_logged_in_user_guid(), $creators)) { + $creator = true; + } + } + } + + // check if user is admin of the current group (for editing an + // existing group) + if (!$creator && isset($vars['entity'])) { + if ($vars['entity']->canEdit()) + $creator = true; + } + + // check if user is admin of the parent group if defined (for + // subgroups) + if (!$creator) { + $parent_guid = (int)get_input("parent", 0); + if (!empty($parent_guid)) { + $parent = get_entity($parent_guid); + if ($parent->canEdit()) + $creator = true; + } + } + + // show group creation form if we're a creator, otherwise show the not + // allowed message + if ($creator) { + if (elgg_is_active_plugin("subgroups")) + include elgg_get_plugins_path() . "subgroups/views/default/forms/groups/edit.php"; + else + include elgg_get_plugins_path() . "groups/views/default/forms/groups/edit.php"; + } + else { + $message = elgg_get_plugin_setting("message", "curatedgroups"); + if (empty($message)) + $message = elgg_echo("curatedgroups:message"); + echo $message; + } +?> diff --git a/views/default/settings/curatedgroups/edit.php b/views/default/settings/curatedgroups/edit.php new file mode 100644 index 000000000..9c383b258 --- /dev/null +++ b/views/default/settings/curatedgroups/edit.php @@ -0,0 +1,39 @@ + + * + * This file is part of the CuratedGroups plugin for Elgg. + * + * CuratedGroups is free software: you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License + * as published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * CuratedGroups is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this program. If not, see + * . + */ +?> +

+ : + 'params[message]', 'value' => $vars['entity']->message)); + ?> +

+ +

+ : + 'params[creators]', 'value' => $vars['entity']->creators)); + ?> +

-- cgit v1.2.3