diff --git a/diaspora/diaspora.php b/diaspora/diaspora.php
index 380a4df8a..edf6922dc 100644
--- a/diaspora/diaspora.php
+++ b/diaspora/diaspora.php
@@ -13,6 +13,8 @@ use Friendica\App;
use Friendica\Content\Text\BBCode;
use Friendica\Core\Hook;
use Friendica\Core\Logger;
+use Friendica\Core\Renderer;
+use Friendica\Core\Session;
use Friendica\Database\DBA;
use Friendica\Core\Worker;
use Friendica\DI;
@@ -61,121 +63,83 @@ function diaspora_settings(App $a, &$s)
return;
}
- /* Add our stylesheet to the page so we can make our settings look nice */
-
- DI::page()['htmlhead'] .= '' . "\r\n";
-
/* Get the current state of our config variables */
$enabled = DI::pConfig()->get(local_user(),'diaspora','post');
- $checked = (($enabled) ? ' checked="checked" ' : '');
- $css = (($enabled) ? '' : '-disabled');
-
$def_enabled = DI::pConfig()->get(local_user(),'diaspora','post_by_default');
- $def_checked = (($def_enabled) ? ' checked="checked" ' : '');
-
$handle = DI::pConfig()->get(local_user(), 'diaspora', 'handle');
$password = DI::pConfig()->get(local_user(), 'diaspora', 'password');
$aspect = DI::pConfig()->get(local_user(),'diaspora','aspect');
- $status = "";
-
- $r = q("SELECT `addr` FROM `contact` WHERE `self` AND `uid` = %d", intval(local_user()));
-
- if (DBA::isResult($r)) {
- $status = DI::l10n()->t("Please remember: You can always be reached from Diaspora with your Friendica handle %s. ", $r[0]['addr']);
- $status .= DI::l10n()->t('This connector is only meant if you still want to use your old Diaspora account for some time. ');
- $status .= DI::l10n()->t('However, it is preferred that you tell your Diaspora contacts the new handle %s instead.', $r[0]['addr']);
+ $info = '';
+ $error = '';
+ if (Session::get('my_address')) {
+ $info = DI::l10n()->t('Please remember: You can always be reached from Diaspora with your Friendica handle %s. ', Session::get('my_address'));
+ $info .= DI::l10n()->t('This connector is only meant if you still want to use your old Diaspora account for some time. ');
+ $info .= DI::l10n()->t('However, it is preferred that you tell your Diaspora contacts the new handle %s instead.', Session::get('my_address'));
}
- $aspects = false;
-
+ $aspect_select = '';
if ($handle && $password) {
$conn = new Diaspora_Connection($handle, $password);
$conn->logIn();
- $aspects = $conn->getAspects();
+ $rawAspects = $conn->getAspects();
+ if ($rawAspects) {
+ $availableAspects = [
+ 'all_aspects' => DI::l10n()->t('All aspects'),
+ 'public' => DI::l10n()->t('Public'),
+ ];
+ foreach ($rawAspects as $rawAspect) {
+ $availableAspects[$rawAspect->id] = $rawAspect->name;
+ }
- if (!$aspects) {
- $status = DI::l10n()->t("Can't login to your Diaspora account. Please check handle (in the format user@domain.tld) and password.");
+ $aspect_select = ['aspect', DI::l10n()->t('Post to aspect:'), $aspect, '', $availableAspects];
+ $info = DI::l10n()->t('Connected with your Diaspora account %s', $handle);
+ } else {
+ $info = '';
+ $error = DI::l10n()->t("Can't login to your Diaspora account. Please check handle (in the format user@domain.tld) and password.");
}
}
- /* Add some HTML to the existing form */
-
- $s .= '';
- $s .= '