Index: /extensions/UserCollections/admin/config.php
===================================================================
--- /extensions/UserCollections/admin/config.php	(revision 29316)
+++ /extensions/UserCollections/admin/config.php	(revision 29317)
@@ -5,6 +5,7 @@
 {
   $conf['user_collections'] = array(
-    'allow_public'    => isset($_POST['allow_public']),
-    'allow_mails'     => isset($_POST['allow_mails']) && isset($_POST['allow_public']),
+    'allow_public'      => isset($_POST['allow_public']),
+    'allow_mails'       => isset($_POST['allow_mails']) && isset($_POST['allow_public']),
+    'allow_send_admin'  => isset($_POST['allow_send_admin']),
     );
 
@@ -12,8 +13,5 @@
 }
 
-$template->assign(array(
-  'user_collections' => $conf['user_collections'],
-  ));
-
+$template->assign('user_collections', $conf['user_collections']);
 
 $template->set_filename('user_collections', realpath(USER_COLLEC_PATH . 'admin/template/config.tpl'));
Index: /extensions/UserCollections/admin/template/config.tpl
===================================================================
--- /extensions/UserCollections/admin/template/config.tpl	(revision 29316)
+++ /extensions/UserCollections/admin/template/config.tpl	(revision 29317)
@@ -26,4 +26,10 @@
       </label>
     </li>
+    <li>
+      <label>
+        <input type="checkbox" name="allow_send_admin" {if $user_collections.allow_send_admin}checked="checked"{/if}>
+        <b>{'Allow users to send their collections (public or not) to the admin'|translate}</b>
+      </label>
+    </li>
   </ul>
 </fieldset>
Index: /extensions/UserCollections/include/UserCollection.class.php
===================================================================
--- /extensions/UserCollections/include/UserCollection.class.php	(revision 29316)
+++ /extensions/UserCollections/include/UserCollection.class.php	(revision 29317)
@@ -448,4 +448,5 @@
 
     $comment_action = 'validate';
+    $for_admin = $comm['to'] == 'admin';
 
     // check author
@@ -455,5 +456,5 @@
       $comment_action = 'reject';
     }
-    if (empty($comm['recipient_name']))
+    if (!$for_admin && empty($comm['recipient_name']))
     {
       $errors[] = l10n('Please enter the recipient name');
@@ -472,13 +473,16 @@
       $comment_action = 'reject';
     }
-    if (empty($comm['recipient_email']))
-    {
-      $errors[] = l10n('Please enter the recipient e-mail');
-      $comment_action = 'reject';
-    }
-    else if (!empty($comm['recipient_email']) and !email_check_format($comm['recipient_email']))
-    {
-      $errors[] = l10n('mail address must be like xxx@yyy.eee (example : jack@altern.org)');
-      $comment_action = 'reject';
+    if (!$for_admin)
+    {
+      if (empty($comm['recipient_email']))
+      {
+        $errors[] = l10n('Please enter the recipient e-mail');
+        $comment_action = 'reject';
+      }
+      else if (!empty($comm['recipient_email']) and !email_check_format($comm['recipient_email']))
+      {
+        $errors[] = l10n('mail address must be like xxx@yyy.eee (example : jack@altern.org)');
+        $comment_action = 'reject';
+      }
     }
 
@@ -493,7 +497,10 @@
     if ($comment_action == 'validate')
     {
-      // switch to guest user for get_sql_condition_FandF
-      $user_save = $user;
-      $user = build_user($conf['guest_id'], true);
+      if (!$for_admin)
+      {
+        // switch to guest user for get_sql_condition_FandF
+        $user_save = $user;
+        $user = build_user($conf['guest_id'], true);
+      }
 
       // get pictures
@@ -517,18 +524,14 @@
       $pictures = hash_from_query($query, 'id');
 
-      // switch back to current user
-      $user = $user_save;
-      unset($user_save);
-
-      $share_key = array('share_key'=>'mail-' . substr(sha1($this->data['id'].$conf['secret_key']), 0, 11));
-
-      $tpl_vars = array(
-        'COL_URL' => $this->addShare($share_key, false),
-        'PARAMS' => $comm,
-        'derivative_params' => ImageStdParams::get_by_type(IMG_SQUARE),
-        );
+      if (!$for_admin)
+      {
+        // switch back to current user
+        $user = $user_save;
+        unset($user_save);
+      }
 
       // pictures infos
       set_make_full_url();
+      $thumbnails = array();
 
       foreach ($pictures as $row)
@@ -536,5 +539,5 @@
         $name = render_element_name($row);
 
-        $tpl_vars['THUMBNAILS'][] = array(
+        $thumbnails[] = array(
           'TN_ALT' => htmlspecialchars(strip_tags($name)),
           'NAME' =>   $name,
@@ -546,25 +549,50 @@
       unset_make_full_url();
 
-      $result = pwg_mail(
-        array(
-          'name' => $comm['recipient_name'],
-          'email' => $comm['recipient_email'],
-          ),
-        array(
-          'subject' => '['.$conf['gallery_title'].'] '.l10n('A photo collection by %s', $comm['sender_name']),
-          'mail_title' => $this->getParam('name'),
-          'mail_subtitle' => l10n('by %s', $comm['sender_name']),
-          'content_format' => 'text/html',
-          'from' => array(
-            'name' => $comm['sender_name'],
-            'email' => $comm['sender_email'],
-            )
-          ),
-        array(
-          'filename' => 'mail',
-          'dirname' => realpath(USER_COLLEC_PATH . 'template'),
-          'assign' => $tpl_vars,
+      if ($for_admin)
+      {
+        $col_url = USER_COLLEC_PUBLIC.'edit/'.$this->data['id'];
+      }
+      else
+      {
+        $share_key = array('share_key'=>'mail-' . substr(sha1($this->data['id'].$conf['secret_key']), 0, 11));
+        $col_url = $this->addShare($share_key, false);
+      }
+
+      $mail_config = array(
+        'subject' => '['.$conf['gallery_title'].'] '.l10n('A photo collection by %s', $comm['sender_name']),
+        'mail_title' => $this->getParam('name'),
+        'mail_subtitle' => l10n('by %s', $comm['sender_name']),
+        'content_format' => 'text/html',
+        'from' => array(
+          'name' => $comm['sender_name'],
+          'email' => $comm['sender_email'],
           )
         );
+      $mail_tpl = array(
+        'filename' => 'mail',
+        'dirname' => realpath(USER_COLLEC_PATH . 'template'),
+        'assign' => array(
+          'COL_URL' => $col_url,
+          'PARAMS' => $comm,
+          'derivative_params' => ImageStdParams::get_by_type(IMG_SQUARE),
+          'THUMBNAILS' => $thumbnails,
+          )
+        );
+      
+      if ($for_admin)
+      {
+        $result = pwg_mail_admins($mail_config, $mail_tpl);
+      }
+      else
+      {
+        $result = pwg_mail(
+          array(
+            'name' => $comm['recipient_name'],
+            'email' => $comm['recipient_email'],
+            ),
+          $mail_config,
+          $mail_tpl
+          );
+      }
 
       if ($result == false)
Index: /extensions/UserCollections/include/collections.inc.php
===================================================================
--- /extensions/UserCollections/include/collections.inc.php	(revision 29316)
+++ /extensions/UserCollections/include/collections.inc.php	(revision 29317)
@@ -173,5 +173,6 @@
 
     // send mail
-    if ($conf['user_collections']['allow_mails'] && $conf['user_collections']['allow_public'])
+    if (($conf['user_collections']['allow_public'] && $conf['user_collections']['allow_mails'])
+        || $conf['user_collections']['allow_send_admin'])
     {
       if (isset($_POST['send_mail']))
@@ -180,4 +181,5 @@
           'sender_email' =>     trim($_POST['sender_email']),
           'sender_name' =>      trim($_POST['sender_name']),
+          'to' =>               $_POST['to'],
           'recipient_email' =>  trim($_POST['recipient_email']),
           'recipient_name' =>   trim($_POST['recipient_name']),
@@ -249,9 +251,10 @@
           USER_COLLEC_PUBLIC . 'view/' . $page['col_id'] .'-'
           );
-
-        if ($conf['user_collections']['allow_mails'])
-        {
-          user_collections_add_button('mail', 'U_MAIL', true);
-        }
+      }
+      
+      if (($conf['user_collections']['allow_public'] && $conf['user_collections']['allow_mails'])
+        || $conf['user_collections']['allow_send_admin'])
+      {
+        user_collections_add_button('mail', 'U_MAIL', true);
       }
 
@@ -265,5 +268,8 @@
       );
 
-    $template->assign('UC_TKEY', get_ephemeral_key(3));
+    $template->assign(array(
+      'UC_TKEY' => get_ephemeral_key(3),
+      'UC_CONFIG' => $conf['user_collections']
+      ));
 
     // modify page title
Index: /extensions/UserCollections/language/en_UK/plugin.lang.php
===================================================================
--- /extensions/UserCollections/language/en_UK/plugin.lang.php	(revision 29316)
+++ /extensions/UserCollections/language/en_UK/plugin.lang.php	(revision 29317)
@@ -31,4 +31,5 @@
 $lang['Allow users to set their collections as public'] = 'Allow users to set their collections as public';
 $lang['Allow users to send their public collections by mail'] = 'Allow users to send their public collections by mail';
+$lang['Allow users to send their collections (public or not) to the admin'] = 'Allow users to send their collections (public or not) to the admin';
 $lang['Fields'] = 'Fields';
 $lang['Active'] = 'Active';
@@ -69,4 +70,7 @@
 $lang['Name'] = 'Name';
 $lang['Send'] = 'Send';
+$lang['To'] = 'To';
+$lang['Administrator'] = 'Administrator';
+$lang['Someone else'] = 'Someone else';
 
 ?>
Index: /extensions/UserCollections/language/fr_FR/plugin.lang.php
===================================================================
--- /extensions/UserCollections/language/fr_FR/plugin.lang.php	(revision 29316)
+++ /extensions/UserCollections/language/fr_FR/plugin.lang.php	(revision 29317)
@@ -31,4 +31,5 @@
 $lang['Allow users to set their collections as public'] = 'Les utilisateurs peuvent rendre leurs collections publiques';
 $lang['Allow users to send their public collections by mail'] = 'Les utilisateurs peuvent envoyer leurs collections publiques par mail';
+$lang['Allow users to send their collections (public or not) to the admin'] = 'Les utilisateurs peuvent envoyer leurs collections (publiques ou non) à l\'administrateur';
 $lang['Fields'] = 'Champs';
 $lang['Active'] = 'Actifs';
@@ -69,4 +70,7 @@
 $lang['Name'] = 'Nom';
 $lang['Send'] = 'Envoyer';
+$lang['To'] = 'Pour';
+$lang['Administrator'] = 'Administrateur';
+$lang['Someone else'] = 'Quelqu\'un d\'autre';
 
 ?>
Index: /extensions/UserCollections/maintain.class.php
===================================================================
--- /extensions/UserCollections/maintain.class.php	(revision 29316)
+++ /extensions/UserCollections/maintain.class.php	(revision 29317)
@@ -9,4 +9,5 @@
   
   private $default_conf = array(
+    'allow_send_admin' => true,
     'allow_mails' => true,
     'allow_public' => true,
@@ -30,4 +31,14 @@
     {
       conf_update_param('user_collections', $this->default_conf, true);
+    }
+    else
+    {
+      $old_conf = safe_unserialize($conf['user_collections']);
+      
+      if (!isset($old_conf['allow_send_admin']))
+      {
+        $old_conf['allow_send_admin'] = true;
+        conf_update_param('user_collections', $old_conf, true);
+      }
     }
 
Index: /extensions/UserCollections/template/collection_edit.tpl
===================================================================
--- /extensions/UserCollections/template/collection_edit.tpl	(revision 29316)
+++ /extensions/UserCollections/template/collection_edit.tpl	(revision 29317)
@@ -130,4 +130,8 @@
   });
 
+  jQuery('#mail_form [name=to]').on('change', function() {
+    $('.recipient-input').toggle(jQuery(this).val() == 'email');
+    jQuery.colorbox.resize();
+  });
 
   jQuery('#mail_form').css('background-color', bg_color);
@@ -258,5 +262,18 @@
         </td>
       </tr>
-      <tr>
+      {if $UC_CONFIG.allow_send_admin && !$UC_CONFIG.allow_mails}
+      <tr>
+        <td class="title">{'To'|translate}</td>
+        <td>{'Administrator'|translate}</td>
+      </tr>
+      {/if}
+      <tr {if !$UC_CONFIG.allow_send_admin || !$UC_CONFIG.allow_mails}style="display:none"{/if}>
+        <td class="title">{'To'|translate}</td>
+        <td>
+          <label><input type="radio" name="to" value="admin" checked> {'Administrator'|translate}</label>
+          <label><input type="radio" name="to" value="email"> {'Someone else'|translate}</label>
+        </td>
+      </tr>
+      <tr style="display:none" class="recipient-input">
         <td class="title"><label for="recipient_name">{'Recipient name'|translate}</label></td>
         <td>
@@ -264,5 +281,5 @@
         </td>
       </tr>
-      <tr>
+      <tr style="display:none" class="recipient-input">
         <td class="title"><label for="recipient_email">{'Recipient e-mail'|translate}</label></td>
         <td>
