]> git.mxchange.org Git - friendica.git/blobdiff - mod/uimport.php
Replaced all preg calls in the calls with the new function
[friendica.git] / mod / uimport.php
index 336ec1c2dd74e131b4e12af37b22d5ce979023cf..436802265b2a85c1dc272534ff1b6ff4db913145 100644 (file)
@@ -1,75 +1,55 @@
-<?php\r
-/**\r
- * View for user import\r
- * @TODO This file has DOS line endings!\r
- */\r
-\r
-require_once("include/uimport.php");\r
-\r
-function uimport_post(App $a) {\r
-       switch($a->config['register_policy']) {\r
-       case REGISTER_OPEN:\r
-               $blocked = 0;\r
-               $verified = 1;\r
-               break;\r
-\r
-       case REGISTER_APPROVE:\r
-               $blocked = 1;\r
-               $verified = 0;\r
-               break;\r
-\r
-       default:\r
-       case REGISTER_CLOSED:\r
-               if ((! x($_SESSION,'authenticated') && (! x($_SESSION,'administrator')))) {\r
-                       notice( t('Permission denied.') . EOL );\r
-                       return;\r
-               }\r
-               $blocked = 1;\r
-               $verified = 0;\r
-               break;\r
-       }\r
-\r
-       if (x($_FILES,'accountfile')){\r
-               /// @TODO Pass $blocked / $verified, send email to admin on REGISTER_APPROVE\r
-               import_account($a, $_FILES['accountfile']);\r
-               return;\r
-       }\r
-}\r
-\r
-function uimport_content(App $a) {\r
-\r
-       if ((! local_user()) && ($a->config['register_policy'] == REGISTER_CLOSED)) {\r
-               notice("Permission denied." . EOL);\r
-               return;\r
-       }\r
-\r
-       $max_dailies = intval(get_config('system','max_daily_registrations'));\r
-       if ($max_dailies) {\r
-               $r = q("select count(*) as total from user where register_date > UTC_TIMESTAMP - INTERVAL 1 day");\r
-               if ($r && $r[0]['total'] >= $max_dailies) {\r
-                       logger('max daily registrations exceeded.');\r
-                       notice( t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.') . EOL);\r
-                       return;\r
-               }\r
-       }\r
-\r
-\r
-       if (x($_SESSION,'theme')) {\r
-               unset($_SESSION['theme']);\r
-       }\r
-       if (x($_SESSION,'mobile-theme')) {\r
-               unset($_SESSION['mobile-theme']);\r
-       }\r
-\r
-       $tpl = get_markup_template("uimport.tpl");\r
-       return replace_macros($tpl, array(\r
-               '$regbutt' => t('Import'),\r
-               '$import' => array(\r
-               'title' => t("Move account"),\r
-               'intro' => t("You can import an account from another Friendica server."),\r
-               'instruct' => t("You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here."),\r
-               'warn' => t("This feature is experimental. We can't import contacts from the OStatus network (GNU Social/Statusnet) or from Diaspora"),\r
-               'field' => array('accountfile', t('Account file'),'<input id="id_accountfile" name="accountfile" type="file">', t('To export your account, go to "Settings->Export your personal data" and select "Export account"')),\r
-               ),\r
-       ));\r
-}\r
+<?php
+/**
+ * @file mod/uimport.php
+ * @brief View for user import
+ */
+
+use Friendica\App;
+use Friendica\Core\Config;
+use Friendica\Core\L10n;
+use Friendica\Core\Logger;
+use Friendica\Core\UserImport;
+use Friendica\Core\Renderer;
+
+function uimport_post(App $a)
+{
+       if ((Config::get('config', 'register_policy') != \Friendica\Module\Register::OPEN) && !is_site_admin()) {
+               notice(L10n::t('Permission denied.') . EOL);
+               return;
+       }
+
+       if (!empty($_FILES['accountfile'])) {
+               UserImport::importAccount($a, $_FILES['accountfile']);
+               return;
+       }
+}
+
+function uimport_content(App $a)
+{
+       if ((Config::get('config', 'register_policy') != \Friendica\Module\Register::OPEN) && !is_site_admin()) {
+               notice(L10n::t('User imports on closed servers can only be done by an administrator.') . EOL);
+               return;
+       }
+
+       $max_dailies = intval(Config::get('system', 'max_daily_registrations'));
+       if ($max_dailies) {
+               $r = q("select count(*) as total from user where register_date > UTC_TIMESTAMP - INTERVAL 1 day");
+               if ($r && $r[0]['total'] >= $max_dailies) {
+                       Logger::log('max daily registrations exceeded.');
+                       notice(L10n::t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.') . EOL);
+                       return;
+               }
+       }
+
+       $tpl = Renderer::getMarkupTemplate("uimport.tpl");
+       return Renderer::replaceMacros($tpl, [
+               '$regbutt' => L10n::t('Import'),
+               '$import' => [
+                       'title' => L10n::t("Move account"),
+                       'intro' => L10n::t("You can import an account from another Friendica server."),
+                       'instruct' => L10n::t("You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here."),
+                       'warn' => L10n::t("This feature is experimental. We can't import contacts from the OStatus network \x28GNU Social/Statusnet\x29 or from Diaspora"),
+                       'field' => ['accountfile', L10n::t('Account file'), '<input id="id_accountfile" name="accountfile" type="file">', L10n::t('To export your account, go to "Settings->Export your personal data" and select "Export account"')],
+               ],
+       ]);
+}