Merge remote-tracking branch 'upstream/2021.06-rc' into http-input-data
This commit is contained in:
commit
6f44476c56
158 changed files with 760 additions and 633 deletions
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
|||
2021.06-dev
|
||||
2021.06-rc
|
||||
|
|
2
boot.php
2
boot.php
|
@ -38,7 +38,7 @@ use Friendica\Util\DateTimeFormat;
|
|||
|
||||
define('FRIENDICA_PLATFORM', 'Friendica');
|
||||
define('FRIENDICA_CODENAME', 'Siberian Iris');
|
||||
define('FRIENDICA_VERSION', '2021.06-dev');
|
||||
define('FRIENDICA_VERSION', '2021.06-rc');
|
||||
define('DFRN_PROTOCOL_VERSION', '2.23');
|
||||
define('NEW_TABLE_STRUCTURE_VERSION', 1288);
|
||||
|
||||
|
|
19
database.sql
19
database.sql
|
@ -1,6 +1,6 @@
|
|||
-- ------------------------------------------
|
||||
-- Friendica 2021.06-dev (Siberian Iris)
|
||||
-- DB_UPDATE_VERSION 1418
|
||||
-- Friendica 2021.06-rc (Siberian Iris)
|
||||
-- DB_UPDATE_VERSION 1419
|
||||
-- ------------------------------------------
|
||||
|
||||
|
||||
|
@ -751,6 +751,7 @@ CREATE TABLE IF NOT EXISTS `mail` (
|
|||
`from-photo` varchar(255) NOT NULL DEFAULT '' COMMENT 'contact photo link of the sender',
|
||||
`from-url` varchar(255) NOT NULL DEFAULT '' COMMENT 'profile linke of the sender',
|
||||
`contact-id` varchar(255) COMMENT 'contact.id',
|
||||
`author-id` int unsigned COMMENT 'Link to the contact table with uid=0 of the author of the mail',
|
||||
`convid` int unsigned COMMENT 'conv.id',
|
||||
`title` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||
`body` mediumtext COMMENT '',
|
||||
|
@ -759,7 +760,11 @@ CREATE TABLE IF NOT EXISTS `mail` (
|
|||
`replied` boolean NOT NULL DEFAULT '0' COMMENT '',
|
||||
`unknown` boolean NOT NULL DEFAULT '0' COMMENT 'if sender not in the contact table this is 1',
|
||||
`uri` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||
`uri-id` int unsigned COMMENT 'Item-uri id of the related mail',
|
||||
`parent-uri` varchar(255) NOT NULL DEFAULT '' COMMENT '',
|
||||
`parent-uri-id` int unsigned COMMENT 'Item-uri id of the parent of the related mail',
|
||||
`thr-parent` varchar(255) COMMENT '',
|
||||
`thr-parent-id` int unsigned COMMENT 'Id of the item-uri table that contains the thread parent uri',
|
||||
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'creation time of the private message',
|
||||
PRIMARY KEY(`id`),
|
||||
INDEX `uid_seen` (`uid`,`seen`),
|
||||
|
@ -767,7 +772,15 @@ CREATE TABLE IF NOT EXISTS `mail` (
|
|||
INDEX `uri` (`uri`(64)),
|
||||
INDEX `parent-uri` (`parent-uri`(64)),
|
||||
INDEX `contactid` (`contact-id`(32)),
|
||||
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||
INDEX `author-id` (`author-id`),
|
||||
INDEX `uri-id` (`uri-id`),
|
||||
INDEX `parent-uri-id` (`parent-uri-id`),
|
||||
INDEX `thr-parent-id` (`thr-parent-id`),
|
||||
FOREIGN KEY (`uid`) REFERENCES `user` (`uid`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||
FOREIGN KEY (`author-id`) REFERENCES `contact` (`id`) ON UPDATE RESTRICT ON DELETE RESTRICT,
|
||||
FOREIGN KEY (`uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||
FOREIGN KEY (`parent-uri-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||
FOREIGN KEY (`thr-parent-id`) REFERENCES `item-uri` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||
) DEFAULT COLLATE utf8mb4_general_ci COMMENT='private messages';
|
||||
|
||||
--
|
||||
|
|
|
@ -119,17 +119,29 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
|
|||
|
||||
## Currently unimplemented endpoints
|
||||
|
||||
These emdpoints are planned to be implemented
|
||||
These emdpoints are planned to be implemented somewhere in the future.
|
||||
|
||||
- [`PATCH /api/v1/accounts/update_credentials`](https://docs.joinmastodon.org/methods/accounts/)
|
||||
- [`GET /api/v1/instance/activity`](https://docs.joinmastodon.org/methods/instance#weekly-activity)
|
||||
|
||||
## Dummy endpoints
|
||||
|
||||
These endpoints are returning empty data to avoid error messages when using third party clients.
|
||||
They refer to features that don't exist in Friendica yet.
|
||||
|
||||
- [`GET /api/v1/accounts/:id/identity_proofs`](https://docs.joinmastodon.org/methods/accounts/)
|
||||
- [`GET /api/v1/announcements`](https://docs.joinmastodon.org/methods/announcements/)
|
||||
- [`GET /api/v1/endorsements`](https://docs.joinmastodon.org/methods/accounts/endorsements/)
|
||||
- [`GET /api/v1/filters`](https://docs.joinmastodon.org/methods/accounts/filters/)
|
||||
- [`GET /api/v1/markers`](https://docs.joinmastodon.org/methods/timelines/markers/)
|
||||
- [`GET /api/v1/scheduled_statuses`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
||||
|
||||
## Non supportable endpoints
|
||||
|
||||
These endpoints won't be implemented, since they refer to functionality that doesn't exist in Friendica
|
||||
These endpoints won't be implemented at the moment.
|
||||
They refer to features that don't exist in Friendica yet.
|
||||
|
||||
- [`POST /api/v1/accounts`](https://docs.joinmastodon.org/methods/accounts/)
|
||||
- [`GET /api/v1/accounts/:id/identity_proofs`](https://docs.joinmastodon.org/methods/accounts/)
|
||||
- [`POST /api/v1/accounts/:id/pin`](https://docs.joinmastodon.org/methods/accounts/)
|
||||
- [`POST /api/v1/accounts/:id/unpin`](https://docs.joinmastodon.org/methods/accounts/)
|
||||
- [`GET /api/v1/admin/accounts`](https://docs.joinmastodon.org/methods/admin/)
|
||||
|
@ -138,29 +150,24 @@ These endpoints won't be implemented, since they refer to functionality that doe
|
|||
- [`GET /api/v1/admin/reports`](https://docs.joinmastodon.org/methods/admin/)
|
||||
- [`GET /api/v1/admin/reports/:id`](https://docs.joinmastodon.org/methods/admin/)
|
||||
- [`POST /api/v1/admin/reports/:id/{action}`](https://docs.joinmastodon.org/methods/admin/)
|
||||
- [`GET /api/v1/announcements`](https://docs.joinmastodon.org/methods/announcements/)
|
||||
- [`POST /api/v1/announcements/:id/dismiss`](https://docs.joinmastodon.org/methods/announcements/)
|
||||
- [`PUT /api/v1/announcements/:id/reactions/{name}`](https://docs.joinmastodon.org/methods/announcements/)
|
||||
- [`DELETE /api/v1/announcements/:id/reactions/{name}`](https://docs.joinmastodon.org/methods/announcements/)
|
||||
- [`GET /api/v1/domain_blocks`](https://docs.joinmastodon.org/methods/accounts/domain_blocks/)
|
||||
- [`POST /api/v1/domain_blocks`](https://docs.joinmastodon.org/methods/accounts/domain_blocks/)
|
||||
- [`DELETE /api/v1/domain_blocks`](https://docs.joinmastodon.org/methods/accounts/domain_blocks/)
|
||||
- [`GET /api/v1/endorsements`](https://docs.joinmastodon.org/methods/accounts/endorsements/)
|
||||
- [`GET /api/v1/featured_tags`](https://docs.joinmastodon.org/methods/accounts/featured_tags/)
|
||||
- [`POST /api/v1/featured_tags`](https://docs.joinmastodon.org/methods/accounts/featured_tags/)
|
||||
- [`DELETE /api/v1/featured_tags/:id`](https://docs.joinmastodon.org/methods/accounts/featured_tags/)
|
||||
- [`GET /api/v1/featured_tags/suggestions`](https://docs.joinmastodon.org/methods/accounts/featured_tags/)
|
||||
- [`GET /api/v1/filters`](https://docs.joinmastodon.org/methods/accounts/filters/)
|
||||
- [`GET /api/v1/filters/:id`](https://docs.joinmastodon.org/methods/accounts/filters/)
|
||||
- [`POST /api/v1/filters/:id`](https://docs.joinmastodon.org/methods/accounts/filters/)
|
||||
- [`PUT /api/v1/filters/:id`](https://docs.joinmastodon.org/methods/accounts/filters/)
|
||||
- [`DELETE /api/v1/filters/:id`](https://docs.joinmastodon.org/methods/accounts/filters/)
|
||||
- [`GET /api/v1/markers`](https://docs.joinmastodon.org/methods/timelines/markers/)
|
||||
- [`POST /api/v1/markers`](https://docs.joinmastodon.org/methods/timelines/markers/)
|
||||
- [`GET /api/v1/polls/:id`](https://docs.joinmastodon.org/methods/statuses/polls/)
|
||||
- [`POST /api/v1/polls/:id/votes`](https://docs.joinmastodon.org/methods/statuses/polls/)
|
||||
- [`POST /api/v1/reports`](https://docs.joinmastodon.org/methods/accounts/reports/)
|
||||
- [`GET /api/v1/scheduled_statuses`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
||||
- [`GET /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
||||
- [`PUT /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
||||
- [`DELETE /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
||||
|
|
|
@ -50,7 +50,7 @@ use Friendica\Util\XML;
|
|||
class BBCode
|
||||
{
|
||||
// Update this value to the current date whenever changes are made to BBCode::convert
|
||||
const VERSION = '2021-05-01';
|
||||
const VERSION = '2021-05-21';
|
||||
|
||||
const INTERNAL = 0;
|
||||
const EXTERNAL = 1;
|
||||
|
@ -1039,7 +1039,9 @@ class BBCode
|
|||
|
||||
switch ($simplehtml) {
|
||||
case self::API:
|
||||
$text = ($is_quote_share? '<br>' : '') . '<p>' . html_entity_decode('♲ ', ENT_QUOTES, 'UTF-8') . ' ' . $author_contact['addr'] . ': </p>' . "\n" . $content;
|
||||
$text = ($is_quote_share? '<br>' : '') .
|
||||
'<p><b><a href="' . $attributes['link'] . '">' . html_entity_decode('♲ ', ENT_QUOTES, 'UTF-8') . ' ' . $author_contact['addr'] . "</a>:</b> </p>\n" .
|
||||
'<blockquote class="shared_content">' . $content . '</blockquote>';
|
||||
break;
|
||||
case self::DIASPORA:
|
||||
if (stripos(Strings::normaliseLink($attributes['link']), 'http://twitter.com/') === 0) {
|
||||
|
@ -1721,7 +1723,7 @@ class BBCode
|
|||
$text);
|
||||
} elseif (!$simple_html) {
|
||||
$text = preg_replace("/([@!])\[url\=(.*?)\](.*?)\[\/url\]/ism",
|
||||
'$1<a href="$2" class="userinfo mention" title="$3"><bdi>$3</bdi></a>',
|
||||
'<bdi>$1<a href="$2" class="userinfo mention" title="$3">$3</a></bdi>',
|
||||
$text);
|
||||
}
|
||||
|
||||
|
|
|
@ -136,7 +136,9 @@ class Status extends BaseFactory
|
|||
|
||||
$account = DI::mstdnAccount()->createFromContactId($item['author-id']);
|
||||
|
||||
$counts = new \Friendica\Object\Api\Mastodon\Status\Counts(0, 0, 0);
|
||||
$replies = DBA::count('mail', ['thr-parent-id' => $item['uri-id'], 'reply' => true]);
|
||||
|
||||
$counts = new \Friendica\Object\Api\Mastodon\Status\Counts($replies, 0, 0);
|
||||
|
||||
$userAttributes = new \Friendica\Object\Api\Mastodon\Status\UserAttributes(false, false, false, false, false);
|
||||
|
||||
|
|
|
@ -1941,6 +1941,11 @@ class Contact
|
|||
return false;
|
||||
}
|
||||
|
||||
if (Contact::isLocal($ret['url'])) {
|
||||
Logger::info('Local contacts are not updated here.');
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!empty($ret['account-type']) && $ret['account-type'] == User::ACCOUNT_TYPE_DELETED) {
|
||||
Logger::info('Deleted account', ['id' => $id, 'url' => $ret['url'], 'ret' => $ret]);
|
||||
self::remove($id);
|
||||
|
|
|
@ -71,6 +71,20 @@ class Mail
|
|||
return false;
|
||||
}
|
||||
|
||||
$msg['author-id'] = Contact::getIdForURL($msg['from-url'], 0, false);
|
||||
$msg['uri-id'] = ItemURI::insert(['uri' => $msg['uri'], 'guid' => $msg['guid']]);
|
||||
$msg['parent-uri-id'] = ItemURI::getIdByURI($msg['parent-uri']);
|
||||
|
||||
if ($msg['reply']) {
|
||||
$reply = DBA::selectFirst('mail', ['uri', 'uri-id'], ['parent-uri' => $mail['parent-uri'], 'reply' => false]);
|
||||
|
||||
$msg['thr-parent'] = $reply['uri'];
|
||||
$msg['thr-parent-id'] = $reply['uri-id'];
|
||||
} else {
|
||||
$msg['thr-parent'] = $msg['uri'];
|
||||
$msg['thr-parent-id'] = $msg['uri-id'];
|
||||
}
|
||||
|
||||
DBA::insert('mail', $msg);
|
||||
|
||||
$msg['id'] = DBA::lastInsertId();
|
||||
|
|
|
@ -145,7 +145,7 @@ class Profile
|
|||
*/
|
||||
public static function load(App $a, $nickname, array $profiledata = [], $show_connect = true)
|
||||
{
|
||||
$user = DBA::selectFirst('user', ['uid'], ['nickname' => $nickname, 'account_removed' => false]);
|
||||
$user = User::getByNickname($nickname);
|
||||
|
||||
if (!DBA::isResult($user) && empty($profiledata)) {
|
||||
Logger::log('profile error: ' . DI::args()->getQueryString(), Logger::DEBUG);
|
||||
|
|
|
@ -425,8 +425,8 @@ class Tag
|
|||
$item['body'] = str_replace($orig_tag, $tag['url'], $item['body']);
|
||||
}
|
||||
|
||||
$return['hashtags'][] = $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a>';
|
||||
$return['tags'][] = $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a>';
|
||||
$return['hashtags'][] = '<bdi>' . $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a></bdi>';
|
||||
$return['tags'][] = '<bdi>' . $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a></bdi>';
|
||||
break;
|
||||
case self::MENTION:
|
||||
case self::EXCLUSIVE_MENTION:
|
||||
|
@ -435,8 +435,8 @@ class Tag
|
|||
} else {
|
||||
$tag['url'] = Contact::magicLink($tag['url']);
|
||||
}
|
||||
$return['mentions'][] = $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a>';
|
||||
$return['tags'][] = $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a>';
|
||||
$return['mentions'][] = '<bdi>' . $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a></bdi>';
|
||||
$return['tags'][] = '<bdi>' . $prefix . '<a href="' . $tag['url'] . '" target="_blank" rel="noopener noreferrer">' . htmlspecialchars($tag['name']) . '</a></bdi>';
|
||||
break;
|
||||
case self::IMPLICIT_MENTION:
|
||||
$return['implicit_mentions'][] = $prefix . $tag['name'];
|
||||
|
|
|
@ -515,7 +515,27 @@ class User
|
|||
*/
|
||||
public static function getIdFromPasswordAuthentication($user_info, $password, $third_party = false)
|
||||
{
|
||||
$user = self::getAuthenticationInfo($user_info);
|
||||
// Addons registered with the "authenticate" hook may create the user on the
|
||||
// fly. `getAuthenticationInfo` will fail if the user doesn't exist yet. If
|
||||
// the user doesn't exist, we should give the addons a chance to create the
|
||||
// user in our database, if applicable, before re-throwing the exception if
|
||||
// they fail.
|
||||
try {
|
||||
$user = self::getAuthenticationInfo($user_info);
|
||||
} catch (Exception $e) {
|
||||
$username = (is_string($user_info) ? $user_info : $user_info['nickname'] ?? '');
|
||||
|
||||
// Addons can create users, and since this 'catch' branch should only
|
||||
// execute if getAuthenticationInfo can't find an existing user, that's
|
||||
// exactly what will happen here. Creating a numeric username would create
|
||||
// abiguity with user IDs, possibly opening up an attack vector.
|
||||
// So let's be very careful about that.
|
||||
if (empty($username) || is_numeric($username)) {
|
||||
throw $e;
|
||||
}
|
||||
|
||||
return self::getIdFromAuthenticateHooks($username, $password);
|
||||
}
|
||||
|
||||
if ($third_party && DI::pConfig()->get($user['uid'], '2fa', 'verified')) {
|
||||
// Third-party apps can't verify two-factor authentication, we use app-specific passwords instead
|
||||
|
@ -545,23 +565,40 @@ class User
|
|||
|
||||
return $user['uid'];
|
||||
} else {
|
||||
$addon_auth = [
|
||||
'username' => $user['nickname'],
|
||||
'password' => $password,
|
||||
'authenticated' => 0,
|
||||
'user_record' => null
|
||||
];
|
||||
return self::getIdFromAuthenticateHooks($user['nickname'], $password); // throws
|
||||
}
|
||||
|
||||
/*
|
||||
* An addon indicates successful login by setting 'authenticated' to non-zero value and returning a user record
|
||||
* Addons should never set 'authenticated' except to indicate success - as hooks may be chained
|
||||
* and later addons should not interfere with an earlier one that succeeded.
|
||||
*/
|
||||
Hook::callAll('authenticate', $addon_auth);
|
||||
throw new HTTPException\ForbiddenException(DI::l10n()->t('Login failed'));
|
||||
}
|
||||
|
||||
if ($addon_auth['authenticated'] && $addon_auth['user_record']) {
|
||||
return $user['uid'];
|
||||
}
|
||||
/**
|
||||
* Try to obtain a user ID via "authenticate" hook addons
|
||||
*
|
||||
* Returns the user id associated with a successful password authentication
|
||||
*
|
||||
* @param string $username
|
||||
* @param string $password
|
||||
* @return int User Id if authentication is successful
|
||||
* @throws HTTPException\ForbiddenException
|
||||
*/
|
||||
public static function getIdFromAuthenticateHooks($username, $password)
|
||||
{
|
||||
$addon_auth = [
|
||||
'username' => $username,
|
||||
'password' => $password,
|
||||
'authenticated' => 0,
|
||||
'user_record' => null
|
||||
];
|
||||
|
||||
/*
|
||||
* An addon indicates successful login by setting 'authenticated' to non-zero value and returning a user record
|
||||
* Addons should never set 'authenticated' except to indicate success - as hooks may be chained
|
||||
* and later addons should not interfere with an earlier one that succeeded.
|
||||
*/
|
||||
Hook::callAll('authenticate', $addon_auth);
|
||||
|
||||
if ($addon_auth['authenticated'] && $addon_auth['user_record']) {
|
||||
return $addon_auth['user_record']['uid'];
|
||||
}
|
||||
|
||||
throw new HTTPException\ForbiddenException(DI::l10n()->t('Login failed'));
|
||||
|
|
|
@ -29,7 +29,7 @@ use Friendica\Module\BaseApi;
|
|||
/**
|
||||
* @see https://docs.joinmastodon.org/methods/timelines/conversations/
|
||||
*/
|
||||
class Conversation extends BaseApi
|
||||
class Conversations extends BaseApi
|
||||
{
|
||||
public static function delete(array $parameters = [])
|
||||
{
|
|
@ -19,7 +19,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
namespace Friendica\Module\Api\Mastodon\Conversation;
|
||||
namespace Friendica\Module\Api\Mastodon\Conversations;
|
||||
|
||||
use Friendica\Core\System;
|
||||
use Friendica\Database\DBA;
|
||||
|
|
|
@ -48,22 +48,22 @@ class Direct extends BaseApi
|
|||
'limit' => 20, // Maximum number of results to return. Defaults to 20.
|
||||
]);
|
||||
|
||||
$params = ['order' => ['id' => true], 'limit' => $request['limit']];
|
||||
$params = ['order' => ['uri-id' => true], 'limit' => $request['limit']];
|
||||
|
||||
$condition = ['uid' => $uid];
|
||||
|
||||
if (!empty($request['max_id'])) {
|
||||
$condition = DBA::mergeConditions($condition, ["`id` < ?", $request['max_id']]);
|
||||
$condition = DBA::mergeConditions($condition, ["`uri-id` < ?", $request['max_id']]);
|
||||
}
|
||||
|
||||
if (!empty($request['since_id'])) {
|
||||
$condition = DBA::mergeConditions($condition, ["`id` > ?", $request['since_id']]);
|
||||
$condition = DBA::mergeConditions($condition, ["`uri-id` > ?", $request['since_id']]);
|
||||
}
|
||||
|
||||
if (!empty($request['min_id'])) {
|
||||
$condition = DBA::mergeConditions($condition, ["`id` > ?", $request['min_id']]);
|
||||
$condition = DBA::mergeConditions($condition, ["`uri-id` > ?", $request['min_id']]);
|
||||
|
||||
$params['order'] = ['id'];
|
||||
$params['order'] = ['uri-id'];
|
||||
}
|
||||
|
||||
$mails = DBA::select('mail', ['id'], $condition, $params);
|
||||
|
|
|
@ -50,20 +50,20 @@ class NoScrape extends BaseModule
|
|||
System::jsonError(403, 'Authentication required');
|
||||
}
|
||||
|
||||
Profile::load($a, $which);
|
||||
$profile = Profile::getByNickname($which, local_user());
|
||||
|
||||
if (empty($a->profile['uid'])) {
|
||||
if (empty($profile['uid'])) {
|
||||
System::jsonError(404, 'Profile not found');
|
||||
}
|
||||
|
||||
$json_info = [
|
||||
'addr' => $a->profile['addr'],
|
||||
'addr' => $profile['addr'],
|
||||
'nick' => $which,
|
||||
'guid' => $a->profile['guid'],
|
||||
'key' => $a->profile['upubkey'],
|
||||
'guid' => $profile['guid'],
|
||||
'key' => $profile['upubkey'],
|
||||
'homepage' => DI::baseUrl() . "/profile/{$which}",
|
||||
'comm' => ($a->profile['account-type'] == User::ACCOUNT_TYPE_COMMUNITY),
|
||||
'account-type' => $a->profile['account-type'],
|
||||
'comm' => ($profile['account-type'] == User::ACCOUNT_TYPE_COMMUNITY),
|
||||
'account-type' => $profile['account-type'],
|
||||
];
|
||||
|
||||
$dfrn_pages = ['request', 'confirm', 'notify', 'poll'];
|
||||
|
@ -71,30 +71,30 @@ class NoScrape extends BaseModule
|
|||
$json_info["dfrn-{$dfrn}"] = DI::baseUrl() . "/dfrn_{$dfrn}/{$which}";
|
||||
}
|
||||
|
||||
if (!$a->profile['net-publish']) {
|
||||
if (!$profile['net-publish']) {
|
||||
$json_info['hide'] = true;
|
||||
System::jsonExit($json_info);
|
||||
}
|
||||
|
||||
$keywords = $a->profile['pub_keywords'] ?? '';
|
||||
$keywords = $profile['pub_keywords'] ?? '';
|
||||
$keywords = str_replace(['#', ',', ' ', ',,'], ['', ' ', ',', ','], $keywords);
|
||||
$keywords = explode(',', $keywords);
|
||||
|
||||
$contactPhoto = DBA::selectFirst('contact', ['photo'], ['self' => true, 'uid' => $a->profile['uid']]);
|
||||
$contactPhoto = DBA::selectFirst('contact', ['photo'], ['self' => true, 'uid' => $profile['uid']]);
|
||||
|
||||
$json_info['fn'] = $a->profile['name'];
|
||||
$json_info['fn'] = $profile['name'];
|
||||
$json_info['photo'] = $contactPhoto["photo"];
|
||||
$json_info['tags'] = $keywords;
|
||||
$json_info['language'] = $a->profile['language'];
|
||||
$json_info['language'] = $profile['language'];
|
||||
|
||||
if (!empty($a->profile['last-item'])) {
|
||||
$json_info['updated'] = date("c", strtotime($a->profile['last-item']));
|
||||
if (!empty($profile['last-item'])) {
|
||||
$json_info['updated'] = date("c", strtotime($profile['last-item']));
|
||||
}
|
||||
|
||||
if (!($a->profile['hide-friends'] ?? false)) {
|
||||
if (!($profile['hide-friends'] ?? false)) {
|
||||
$json_info['contacts'] = DBA::count('contact',
|
||||
[
|
||||
'uid' => $a->profile['uid'],
|
||||
'uid' => $profile['uid'],
|
||||
'self' => 0,
|
||||
'blocked' => 0,
|
||||
'pending' => 0,
|
||||
|
@ -106,13 +106,13 @@ class NoScrape extends BaseModule
|
|||
|
||||
// We display the last activity (post or login), reduced to year and week number
|
||||
$last_active = 0;
|
||||
$condition = ['uid' => $a->profile['uid'], 'self' => true];
|
||||
$condition = ['uid' => $profile['uid'], 'self' => true];
|
||||
$contact = DBA::selectFirst('contact', ['last-item'], $condition);
|
||||
if (DBA::isResult($contact)) {
|
||||
$last_active = strtotime($contact['last-item']);
|
||||
}
|
||||
|
||||
$condition = ['uid' => $a->profile['uid']];
|
||||
$condition = ['uid' => $profile['uid']];
|
||||
$user = DBA::selectFirst('user', ['login_date'], $condition);
|
||||
if (DBA::isResult($user)) {
|
||||
if ($last_active < strtotime($user['login_date'])) {
|
||||
|
@ -124,8 +124,8 @@ class NoScrape extends BaseModule
|
|||
//These are optional fields.
|
||||
$profile_fields = ['about', 'locality', 'region', 'postal-code', 'country-name'];
|
||||
foreach ($profile_fields as $field) {
|
||||
if (!empty($a->profile[$field])) {
|
||||
$json_info["$field"] = $a->profile[$field];
|
||||
if (!empty($profile[$field])) {
|
||||
$json_info["$field"] = $profile[$field];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -63,9 +63,9 @@ class Authorize extends BaseApi
|
|||
|
||||
// @todo Compare the application scope and requested scope
|
||||
|
||||
$request = $_REQUEST;
|
||||
unset($request['pagename']);
|
||||
$redirect = 'oauth/authorize?' . http_build_query($request);
|
||||
$redirect_request = $_REQUEST;
|
||||
unset($redirect_request['pagename']);
|
||||
$redirect = 'oauth/authorize?' . http_build_query($redirect_request);
|
||||
|
||||
$uid = local_user();
|
||||
if (empty($uid)) {
|
||||
|
|
|
@ -868,24 +868,19 @@ class Transmitter
|
|||
return [];
|
||||
}
|
||||
|
||||
$mail['uri-id'] = ItemURI::insert(['uri' => $mail['uri'], 'guid' => $mail['guid']]);
|
||||
|
||||
$reply = DBA::selectFirst('mail', ['uri', 'from-url', 'guid'], ['parent-uri' => $mail['parent-uri'], 'reply' => false]);
|
||||
$reply = DBA::selectFirst('mail', ['uri', 'uri-id', 'from-url'], ['parent-uri' => $mail['parent-uri'], 'reply' => false]);
|
||||
|
||||
// Making the post more compatible for Mastodon by:
|
||||
// - Making it a note and not an article (no title)
|
||||
// - Moving the title into the "summary" field that is used as a "content warning"
|
||||
|
||||
if ($use_title) {
|
||||
$mail['body'] = $mail['body'];
|
||||
$mail['title'] = $mail['title'];
|
||||
} else {
|
||||
if (!$use_title) {
|
||||
$mail['body'] = '[abstract]' . $mail['title'] . "[/abstract]\n" . $mail['body'];
|
||||
$mail['title'] = '';
|
||||
}
|
||||
|
||||
$mail['author-link'] = $mail['owner-link'] = $mail['from-url'];
|
||||
$mail['author-id'] = Contact::getIdForURL($mail['author-link'], 0, false);
|
||||
$mail['owner-id'] = $mail['author-id'];
|
||||
$mail['allow_cid'] = '<'.$mail['contact-id'].'>';
|
||||
$mail['allow_gid'] = '';
|
||||
$mail['deny_cid'] = '';
|
||||
|
@ -893,9 +888,9 @@ class Transmitter
|
|||
$mail['private'] = Item::PRIVATE;
|
||||
$mail['deleted'] = false;
|
||||
$mail['edited'] = $mail['created'];
|
||||
$mail['plink'] = $mail['uri'];
|
||||
$mail['thr-parent'] = $reply['uri'];
|
||||
$mail['thr-parent-id'] = ItemURI::insert(['uri' => $reply['uri'], 'guid' => $reply['guid']]);
|
||||
$mail['plink'] = DI::baseUrl() . '/message/' . $mail['id'];
|
||||
$mail['parent-uri'] = $reply['uri'];
|
||||
$mail['parent-uri-id'] = $reply['uri-id'];
|
||||
$mail['parent-author-id'] = Contact::getIdForURL($reply['from-url'], 0, false);
|
||||
$mail['gravity'] = ($mail['reply'] ? GRAVITY_COMMENT: GRAVITY_PARENT);
|
||||
$mail['event-type'] = '';
|
||||
|
@ -1530,12 +1525,21 @@ class Transmitter
|
|||
|
||||
if ($type == 'Note') {
|
||||
$body = $item['raw-body'] ?? self::removePictures($body);
|
||||
} elseif (($type == 'Article') && empty($data['summary'])) {
|
||||
$regexp = "/[@!]\[url\=([^\[\]]*)\].*?\[\/url\]/ism";
|
||||
$summary = preg_replace_callback($regexp, ['self', 'mentionAddrCallback'], $body);
|
||||
$data['summary'] = BBCode::toPlaintext(Plaintext::shorten(self::removePictures($summary), 1000));
|
||||
}
|
||||
|
||||
/**
|
||||
* @todo Improve the automated summary
|
||||
* This part is currently deactivated. The automated summary seems to be more
|
||||
* confusing than helping. But possibly we will find a better way.
|
||||
* So the code is left here for now as a reminder
|
||||
*
|
||||
* } elseif (($type == 'Article') && empty($data['summary'])) {
|
||||
* $regexp = "/[@!]\[url\=([^\[\]]*)\].*?\[\/url\]/ism";
|
||||
* $summary = preg_replace_callback($regexp, ['self', 'mentionAddrCallback'], $body);
|
||||
* $data['summary'] = BBCode::toPlaintext(Plaintext::shorten(self::removePictures($summary), 1000));
|
||||
* }
|
||||
*/
|
||||
|
||||
if (empty($item['uid']) || !Feature::isEnabled($item['uid'], 'explicit_mentions')) {
|
||||
$body = self::prependMentions($body, $item['uri-id'], $item['author-link']);
|
||||
}
|
||||
|
|
|
@ -558,8 +558,10 @@ class HTTPSignature
|
|||
if (!empty($key['url']) && !empty($key['type']) && ($key['type'] == 'Tombstone')) {
|
||||
Logger::info('Actor is a tombstone', ['key' => $key]);
|
||||
|
||||
// We now delete everything that we possibly knew from this actor
|
||||
Contact::deleteContactByUrl($key['url']);
|
||||
if (!Contact::isLocal($key['url'])) {
|
||||
// We now delete everything that we possibly knew from this actor
|
||||
Contact::deleteContactByUrl($key['url']);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
|
@ -181,7 +181,10 @@ class ExpirePosts
|
|||
AND NOT EXISTS(SELECT `uri-id` FROM `post-user` WHERE `uri-id` = `item-uri`.`id`)
|
||||
AND NOT EXISTS(SELECT `parent-uri-id` FROM `post-user` WHERE `parent-uri-id` = `item-uri`.`id`)
|
||||
AND NOT EXISTS(SELECT `thr-parent-id` FROM `post-user` WHERE `thr-parent-id` = `item-uri`.`id`)
|
||||
AND NOT EXISTS(SELECT `external-id` FROM `post-user` WHERE `external-id` = `item-uri`.`id`)", $item['uri-id']]);
|
||||
AND NOT EXISTS(SELECT `external-id` FROM `post-user` WHERE `external-id` = `item-uri`.`id`)
|
||||
AND NOT EXISTS(SELECT `uri-id` FROM `mail` WHERE `uri-id` = `item-uri`.`id`)
|
||||
AND NOT EXISTS(SELECT `parent-uri-id` FROM `mail` WHERE `parent-uri-id` = `item-uri`.`id`)
|
||||
AND NOT EXISTS(SELECT `thr-parent-id` FROM `mail` WHERE `thr-parent-id` = `item-uri`.`id`)", $item['uri-id']]);
|
||||
|
||||
Logger::notice('Start deleting orphaned URI-ID', ['last-id' => $item['uri-id']]);
|
||||
$affected_count = 0;
|
||||
|
|
|
@ -55,6 +55,7 @@ class RemoveContact {
|
|||
}
|
||||
|
||||
DBA::delete('mail', ['contact-id' => $id]);
|
||||
DBA::delete('mail', ['author-id' => $id]);
|
||||
|
||||
Post\ThreadUser::delete(['author-id' => $id]);
|
||||
Post\ThreadUser::delete(['owner-id' => $id]);
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
use Friendica\Database\DBA;
|
||||
|
||||
if (!defined('DB_UPDATE_VERSION')) {
|
||||
define('DB_UPDATE_VERSION', 1418);
|
||||
define('DB_UPDATE_VERSION', 1419);
|
||||
}
|
||||
|
||||
return [
|
||||
|
@ -818,6 +818,7 @@ return [
|
|||
"from-photo" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "contact photo link of the sender"],
|
||||
"from-url" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "profile linke of the sender"],
|
||||
"contact-id" => ["type" => "varchar(255)", "relation" => ["contact" => "id"], "comment" => "contact.id"],
|
||||
"author-id" => ["type" => "int unsigned", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the author of the mail"],
|
||||
"convid" => ["type" => "int unsigned", "relation" => ["conv" => "id"], "comment" => "conv.id"],
|
||||
"title" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||
"body" => ["type" => "mediumtext", "comment" => ""],
|
||||
|
@ -826,7 +827,11 @@ return [
|
|||
"replied" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
|
||||
"unknown" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "if sender not in the contact table this is 1"],
|
||||
"uri" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||
"uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Item-uri id of the related mail"],
|
||||
"parent-uri" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
|
||||
"parent-uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related mail"],
|
||||
"thr-parent" => ["type" => "varchar(255)", "comment" => ""],
|
||||
"thr-parent-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table that contains the thread parent uri"],
|
||||
"created" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => "creation time of the private message"],
|
||||
],
|
||||
"indexes" => [
|
||||
|
@ -836,6 +841,10 @@ return [
|
|||
"uri" => ["uri(64)"],
|
||||
"parent-uri" => ["parent-uri(64)"],
|
||||
"contactid" => ["contact-id(32)"],
|
||||
"author-id" => ["author-id"],
|
||||
"uri-id" => ["uri-id"],
|
||||
"parent-uri-id" => ["parent-uri-id"],
|
||||
"thr-parent-id" => ["thr-parent-id"],
|
||||
]
|
||||
],
|
||||
"mailacct" => [
|
||||
|
|
|
@ -90,9 +90,9 @@ return [
|
|||
'/apps/verify_credentials' => [Module\Api\Mastodon\Apps\VerifyCredentials::class, [R::GET ]],
|
||||
'/blocks' => [Module\Api\Mastodon\Blocks::class, [R::GET ]],
|
||||
'/bookmarks' => [Module\Api\Mastodon\Bookmarks::class, [R::GET ]],
|
||||
'/conversations' => [Module\Api\Mastodon\Conversation::class, [R::GET ]],
|
||||
'/conversations/{id:\d+}' => [Module\Api\Mastodon\Conversation::class, [R::DELETE ]],
|
||||
'/conversations/{id:\d+}/read' => [Module\Api\Mastodon\Conversation\Read::class, [R::POST ]],
|
||||
'/conversations' => [Module\Api\Mastodon\Conversations::class, [R::GET ]],
|
||||
'/conversations/{id:\d+}' => [Module\Api\Mastodon\Conversations::class, [R::DELETE ]],
|
||||
'/conversations/{id:\d+}/read' => [Module\Api\Mastodon\Conversations\Read::class, [R::POST ]],
|
||||
'/custom_emojis' => [Module\Api\Mastodon\CustomEmojis::class, [R::GET ]],
|
||||
'/domain_blocks' => [Module\Api\Mastodon\Unimplemented::class, [R::GET, R::POST, R::DELETE]], // not supported
|
||||
'/directory' => [Module\Api\Mastodon\Directory::class, [R::GET ]],
|
||||
|
|
29
update.php
29
update.php
|
@ -49,6 +49,7 @@ use Friendica\Database\DBStructure;
|
|||
use Friendica\DI;
|
||||
use Friendica\Model\Contact;
|
||||
use Friendica\Model\Item;
|
||||
use Friendica\Model\ItemURI;
|
||||
use Friendica\Model\Notification;
|
||||
use Friendica\Model\Photo;
|
||||
use Friendica\Model\Post;
|
||||
|
@ -912,3 +913,31 @@ function update_1413()
|
|||
return Update::FAILED;
|
||||
}
|
||||
}
|
||||
|
||||
function update_1419()
|
||||
{
|
||||
$mails = DBA::select('mail', ['id', 'from-url', 'uri', 'parent-uri', 'guid'], [], ['order' => ['id']]);
|
||||
while ($mail = DBA::fetch($mails)) {
|
||||
$fields = [];
|
||||
$fields['author-id'] = Contact::getIdForURL($mail['from-url'], 0, false);
|
||||
if (empty($fields['author-id'])) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$fields['uri-id'] = ItemURI::insert(['uri' => $mail['uri'], 'guid' => $mail['guid']]);
|
||||
$fields['parent-uri-id'] = ItemURI::getIdByURI($mail['parent-uri']);
|
||||
|
||||
$reply = DBA::selectFirst('mail', ['uri', 'uri-id', 'guid'], ['parent-uri' => $mail['parent-uri'], 'reply' => false]);
|
||||
if (!empty($reply)) {
|
||||
$fields['thr-parent'] = $reply['uri'];
|
||||
if (!empty($reply['uri-id'])) {
|
||||
$fields['thr-parent-id'] = $reply['uri-id'];
|
||||
} else {
|
||||
$fields['thr-parent-id'] = ItemURI::insert(['uri' => $reply['uri'], 'guid' => $reply['guid']]);
|
||||
}
|
||||
}
|
||||
|
||||
DBA::update('mail', $fields, ['id' => $mail['id']]);
|
||||
}
|
||||
return Update::SUCCESS;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 2021.06-dev\n"
|
||||
"Project-Id-Version: 2021.06-rc\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-05-16 07:41+0000\n"
|
||||
"POT-Creation-Date: 2021-05-21 18:18+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -39,8 +39,8 @@ msgstr ""
|
|||
|
||||
#: include/api.php:4528 mod/photos.php:107 mod/photos.php:211
|
||||
#: mod/photos.php:639 mod/photos.php:1043 mod/photos.php:1060
|
||||
#: mod/photos.php:1609 src/Model/User.php:1045 src/Model/User.php:1053
|
||||
#: src/Model/User.php:1061 src/Module/Settings/Profile/Photo/Crop.php:97
|
||||
#: mod/photos.php:1609 src/Model/User.php:1100 src/Model/User.php:1108
|
||||
#: src/Model/User.php:1116 src/Module/Settings/Profile/Photo/Crop.php:97
|
||||
#: src/Module/Settings/Profile/Photo/Crop.php:113
|
||||
#: src/Module/Settings/Profile/Photo/Crop.php:129
|
||||
#: src/Module/Settings/Profile/Photo/Crop.php:178
|
||||
|
@ -54,7 +54,7 @@ msgstr ""
|
|||
msgid "%1$s poked %2$s"
|
||||
msgstr ""
|
||||
|
||||
#: include/conversation.php:227 src/Model/Item.php:2523
|
||||
#: include/conversation.php:227 src/Model/Item.php:2534
|
||||
msgid "event"
|
||||
msgstr ""
|
||||
|
||||
|
@ -62,7 +62,7 @@ msgstr ""
|
|||
msgid "status"
|
||||
msgstr ""
|
||||
|
||||
#: include/conversation.php:235 mod/tagger.php:90 src/Model/Item.php:2525
|
||||
#: include/conversation.php:235 mod/tagger.php:90 src/Model/Item.php:2536
|
||||
msgid "photo"
|
||||
msgstr ""
|
||||
|
||||
|
@ -951,7 +951,7 @@ msgstr ""
|
|||
msgid "list"
|
||||
msgstr ""
|
||||
|
||||
#: mod/cal.php:297 src/Console/User.php:182 src/Model/User.php:607
|
||||
#: mod/cal.php:297 src/Console/User.php:182 src/Model/User.php:662
|
||||
#: src/Module/Admin/Users/Active.php:73 src/Module/Admin/Users/Blocked.php:74
|
||||
#: src/Module/Admin/Users/Index.php:80 src/Module/Admin/Users/Pending.php:71
|
||||
#: src/Module/Api/Twitter/ContactEndpoint.php:73
|
||||
|
@ -2966,7 +2966,7 @@ msgstr ""
|
|||
msgid "File upload failed."
|
||||
msgstr ""
|
||||
|
||||
#: mod/wall_upload.php:233
|
||||
#: mod/wall_upload.php:233 src/Model/Photo.php:953
|
||||
msgid "Wall Photos"
|
||||
msgstr ""
|
||||
|
||||
|
@ -3636,39 +3636,39 @@ msgstr ""
|
|||
msgid "last"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:942 src/Content/Text/BBCode.php:1605
|
||||
#: src/Content/Text/BBCode.php:1606
|
||||
#: src/Content/Text/BBCode.php:942 src/Content/Text/BBCode.php:1607
|
||||
#: src/Content/Text/BBCode.php:1608
|
||||
msgid "Image/photo"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1064
|
||||
#: src/Content/Text/BBCode.php:1066
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\" target=\"_blank\" rel=\"noopener noreferrer\">%2$s</a> %3$s"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1089 src/Model/Item.php:3024
|
||||
#: src/Model/Item.php:3030 src/Model/Item.php:3031
|
||||
#: src/Content/Text/BBCode.php:1091 src/Model/Item.php:3035
|
||||
#: src/Model/Item.php:3041 src/Model/Item.php:3042
|
||||
msgid "Link to source"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1523 src/Content/Text/HTML.php:951
|
||||
#: src/Content/Text/BBCode.php:1525 src/Content/Text/HTML.php:951
|
||||
msgid "Click to open/close"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1554
|
||||
#: src/Content/Text/BBCode.php:1556
|
||||
msgid "$1 wrote:"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1608 src/Content/Text/BBCode.php:1609
|
||||
#: src/Content/Text/BBCode.php:1610 src/Content/Text/BBCode.php:1611
|
||||
msgid "Encrypted content"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1822
|
||||
#: src/Content/Text/BBCode.php:1824
|
||||
msgid "Invalid source protocol"
|
||||
msgstr ""
|
||||
|
||||
#: src/Content/Text/BBCode.php:1837
|
||||
#: src/Content/Text/BBCode.php:1839
|
||||
msgid "Invalid link protocol"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4542,25 +4542,25 @@ msgstr ""
|
|||
msgid "%s: updating %s table."
|
||||
msgstr ""
|
||||
|
||||
#: src/Factory/Api/Mastodon/Error.php:32
|
||||
#: src/Factory/Api/Mastodon/Error.php:38
|
||||
msgid "Record not found"
|
||||
msgstr ""
|
||||
|
||||
#: src/Factory/Api/Mastodon/Error.php:41
|
||||
#: src/Factory/Api/Mastodon/Error.php:48
|
||||
msgid "Unprocessable Entity"
|
||||
msgstr ""
|
||||
|
||||
#: src/Factory/Api/Mastodon/Error.php:50
|
||||
#: src/Factory/Api/Mastodon/Error.php:58
|
||||
#: src/Module/Special/HTTPException.php:50
|
||||
msgid "Unauthorized"
|
||||
msgstr ""
|
||||
|
||||
#: src/Factory/Api/Mastodon/Error.php:59
|
||||
#: src/Factory/Api/Mastodon/Error.php:68
|
||||
msgid ""
|
||||
"Token is not authorized with a valid user or is missing a required scope"
|
||||
msgstr ""
|
||||
|
||||
#: src/Factory/Api/Mastodon/Error.php:68
|
||||
#: src/Factory/Api/Mastodon/Error.php:78
|
||||
#: src/Module/Special/HTTPException.php:53
|
||||
msgid "Internal Server Error"
|
||||
msgstr ""
|
||||
|
@ -4815,33 +4815,33 @@ msgstr ""
|
|||
msgid "Edit groups"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:1582
|
||||
#: src/Model/Item.php:1600
|
||||
#, php-format
|
||||
msgid "Detected languages in this post:\\n%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:2527
|
||||
#: src/Model/Item.php:2538
|
||||
msgid "activity"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:2529
|
||||
#: src/Model/Item.php:2540
|
||||
msgid "comment"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:2532
|
||||
#: src/Model/Item.php:2543
|
||||
msgid "post"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:2646
|
||||
#: src/Model/Item.php:2657
|
||||
#, php-format
|
||||
msgid "Content warning: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:2989
|
||||
#: src/Model/Item.php:3000
|
||||
msgid "bytes"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/Item.php:3018 src/Model/Item.php:3019
|
||||
#: src/Model/Item.php:3029 src/Model/Item.php:3030
|
||||
msgid "View on separate page"
|
||||
msgstr ""
|
||||
|
||||
|
@ -4959,138 +4959,138 @@ msgstr ""
|
|||
msgid "Enter a valid existing folder"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:186 src/Model/User.php:931
|
||||
#: src/Model/User.php:186 src/Model/User.php:986
|
||||
msgid "SERIOUS ERROR: Generation of security keys failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:549
|
||||
#: src/Model/User.php:571 src/Model/User.php:604
|
||||
msgid "Login failed"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:581
|
||||
#: src/Model/User.php:636
|
||||
msgid "Not enough information to authenticate"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:676
|
||||
#: src/Model/User.php:731
|
||||
msgid "Password can't be empty"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:695
|
||||
#: src/Model/User.php:750
|
||||
msgid "Empty passwords are not allowed."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:699
|
||||
#: src/Model/User.php:754
|
||||
msgid ""
|
||||
"The new password has been exposed in a public data dump, please choose "
|
||||
"another."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:705
|
||||
#: src/Model/User.php:760
|
||||
msgid ""
|
||||
"The password can't contain accentuated letters, white spaces or colons (:)"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:811
|
||||
#: src/Model/User.php:866
|
||||
msgid "Passwords do not match. Password unchanged."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:818
|
||||
#: src/Model/User.php:873
|
||||
msgid "An invitation is required."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:822
|
||||
#: src/Model/User.php:877
|
||||
msgid "Invitation could not be verified."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:830
|
||||
#: src/Model/User.php:885
|
||||
msgid "Invalid OpenID url"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:843 src/Security/Authentication.php:224
|
||||
#: src/Model/User.php:898 src/Security/Authentication.php:224
|
||||
msgid ""
|
||||
"We encountered a problem while logging in with the OpenID you provided. "
|
||||
"Please check the correct spelling of the ID."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:843 src/Security/Authentication.php:224
|
||||
#: src/Model/User.php:898 src/Security/Authentication.php:224
|
||||
msgid "The error message was:"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:849
|
||||
#: src/Model/User.php:904
|
||||
msgid "Please enter the required information."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:863
|
||||
#: src/Model/User.php:918
|
||||
#, php-format
|
||||
msgid ""
|
||||
"system.username_min_length (%s) and system.username_max_length (%s) are "
|
||||
"excluding each other, swapping values."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:870
|
||||
#: src/Model/User.php:925
|
||||
#, php-format
|
||||
msgid "Username should be at least %s character."
|
||||
msgid_plural "Username should be at least %s characters."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: src/Model/User.php:874
|
||||
#: src/Model/User.php:929
|
||||
#, php-format
|
||||
msgid "Username should be at most %s character."
|
||||
msgid_plural "Username should be at most %s characters."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: src/Model/User.php:882
|
||||
#: src/Model/User.php:937
|
||||
msgid "That doesn't appear to be your full (First Last) name."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:887
|
||||
#: src/Model/User.php:942
|
||||
msgid "Your email domain is not among those allowed on this site."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:891
|
||||
#: src/Model/User.php:946
|
||||
msgid "Not a valid email address."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:894
|
||||
#: src/Model/User.php:949
|
||||
msgid "The nickname was blocked from registration by the nodes admin."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:898 src/Model/User.php:906
|
||||
#: src/Model/User.php:953 src/Model/User.php:961
|
||||
msgid "Cannot use that email."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:913
|
||||
#: src/Model/User.php:968
|
||||
msgid "Your nickname can only contain a-z, 0-9 and _."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:921 src/Model/User.php:978
|
||||
#: src/Model/User.php:976 src/Model/User.php:1033
|
||||
msgid "Nickname is already registered. Please choose another."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:965 src/Model/User.php:969
|
||||
#: src/Model/User.php:1020 src/Model/User.php:1024
|
||||
msgid "An error occurred during registration. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:992
|
||||
#: src/Model/User.php:1047
|
||||
msgid "An error occurred creating your default profile. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:999
|
||||
#: src/Model/User.php:1054
|
||||
msgid "An error occurred creating your self contact. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1004
|
||||
#: src/Model/User.php:1059
|
||||
msgid "Friends"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1008
|
||||
#: src/Model/User.php:1063
|
||||
msgid ""
|
||||
"An error occurred creating your default contact group. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1199
|
||||
#: src/Model/User.php:1254
|
||||
#, php-format
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -5098,7 +5098,7 @@ msgid ""
|
|||
"\t\t\tthe administrator of %2$s has set up an account for you."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1202
|
||||
#: src/Model/User.php:1257
|
||||
#, php-format
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -5135,12 +5135,12 @@ msgid ""
|
|||
"\t\tThank you and welcome to %4$s."
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1235 src/Model/User.php:1342
|
||||
#: src/Model/User.php:1290 src/Model/User.php:1397
|
||||
#, php-format
|
||||
msgid "Registration details for %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1255
|
||||
#: src/Model/User.php:1310
|
||||
#, php-format
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -5156,12 +5156,12 @@ msgid ""
|
|||
"\t\t"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1274
|
||||
#: src/Model/User.php:1329
|
||||
#, php-format
|
||||
msgid "Registration at %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1298
|
||||
#: src/Model/User.php:1353
|
||||
#, php-format
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -5170,7 +5170,7 @@ msgid ""
|
|||
"\t\t\t"
|
||||
msgstr ""
|
||||
|
||||
#: src/Model/User.php:1306
|
||||
#: src/Model/User.php:1361
|
||||
#, php-format
|
||||
msgid ""
|
||||
"\n"
|
||||
|
@ -7201,7 +7201,7 @@ msgstr ""
|
|||
msgid "Deny"
|
||||
msgstr ""
|
||||
|
||||
#: src/Module/Api/Mastodon/Apps.php:47 src/Module/Api/Mastodon/Apps.php:58
|
||||
#: src/Module/Api/Mastodon/Apps.php:58
|
||||
msgid "Missing parameters"
|
||||
msgstr ""
|
||||
|
||||
|
@ -8882,15 +8882,15 @@ msgstr ""
|
|||
msgid "Show all"
|
||||
msgstr ""
|
||||
|
||||
#: src/Module/OAuth/Authorize.php:49
|
||||
#: src/Module/OAuth/Authorize.php:51
|
||||
msgid "Unsupported or missing response type"
|
||||
msgstr ""
|
||||
|
||||
#: src/Module/OAuth/Authorize.php:54 src/Module/OAuth/Token.php:55
|
||||
#: src/Module/OAuth/Authorize.php:56 src/Module/OAuth/Token.php:57
|
||||
msgid "Incomplete request data"
|
||||
msgstr ""
|
||||
|
||||
#: src/Module/OAuth/Token.php:79
|
||||
#: src/Module/OAuth/Token.php:81
|
||||
msgid "Unsupported or missing grant type"
|
||||
msgstr ""
|
||||
|
||||
|
@ -10585,20 +10585,20 @@ msgstr ""
|
|||
msgid "Contact information and Social Networks"
|
||||
msgstr ""
|
||||
|
||||
#: src/Security/Authentication.php:210 src/Security/Authentication.php:262
|
||||
#: src/Security/Authentication.php:210
|
||||
msgid "Login failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/Security/Authentication.php:273
|
||||
#: src/Security/Authentication.php:251
|
||||
msgid "Login failed. Please check your credentials."
|
||||
msgstr ""
|
||||
|
||||
#: src/Security/Authentication.php:392
|
||||
#: src/Security/Authentication.php:370
|
||||
#, php-format
|
||||
msgid "Welcome %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/Security/Authentication.php:393
|
||||
#: src/Security/Authentication.php:371
|
||||
msgid "Please upload a profile photo."
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
</div>
|
||||
{{/foreach}}
|
||||
|
||||
<div class="settings-submit-wrapper" >
|
||||
<div class="settings-submit-wrapper">
|
||||
<input type="submit" name="submit" class="settings-features-submit" value="{{$submit}}" />
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
|
||||
<div id="photo-album-edit-wrapper">
|
||||
<form name="photo-album-edit-form" id="photo-album-edit-form" action="photos/{{$nickname}}/album/{{$hexalbum}}" method="post" >
|
||||
<form name="photo-album-edit-form" id="photo-album-edit-form" action="photos/{{$nickname}}/album/{{$hexalbum}}" method="post">
|
||||
|
||||
|
||||
<label id="photo-album-edit-name-label" for="photo-album-edit-name" >{{$nametext}}</label>
|
||||
<input type="text" size="64" name="albumname" value="{{$album}}" >
|
||||
<label id="photo-album-edit-name-label" for="photo-album-edit-name">{{$nametext}}</label>
|
||||
<input type="text" size="64" name="albumname" value="{{$album}}">
|
||||
|
||||
<div id="photo-album-edit-name-end"></div>
|
||||
|
||||
|
@ -12,4 +12,4 @@
|
|||
|
||||
</form>
|
||||
</div>
|
||||
<div id="photo-album-edit-end" ></div>
|
||||
<div id="photo-album-edit-end"></div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
{{if $count}}
|
||||
<div id="birthday-notice" class="birthday-notice fakelink {{$classtoday}}" onclick="openClose('birthday-wrapper');">{{$event_reminders}} ({{$count}})</div>
|
||||
<div id="birthday-wrapper" style="display: none;" ><div id="birthday-title">{{$event_title}}</div>
|
||||
<div id="birthday-wrapper" style="display: none;"><div id="birthday-title">{{$event_title}}</div>
|
||||
<div id="birthday-title-end"></div>
|
||||
{{foreach $events as $event}}
|
||||
<div class="birthday-list" id="birthday-{{$event.id}}"> <a href="{{$event.link}}">{{$event.title}}</a> {{$event.date}} </div>
|
||||
|
|
|
@ -11,13 +11,13 @@
|
|||
<input type="hidden" name="jsreload" value="{{$jsreload}}" />
|
||||
<input type="hidden" name="post_id_random" value="{{$rand_num}}" />
|
||||
|
||||
<div class="comment-edit-photo" id="comment-edit-photo-{{$id}}" >
|
||||
<div class="comment-edit-photo" id="comment-edit-photo-{{$id}}">
|
||||
<a class="comment-edit-photo-link" href="{{$mylink}}" title="{{$mytitle}}"><img class="my-comment-photo" src="{{$myphoto}}" alt="{{$mytitle}}" title="{{$mytitle}}" /></a>
|
||||
</div>
|
||||
<div class="comment-edit-photo-end"></div>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty" name="body" placeholder="{{$comment}}" onFocus="commentOpen(this,{{$id}});" onBlur="commentClose(this,{{$id}});">{{if $threaded != false}}{{$default}}{{/if}}</textarea>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty" name="body" placeholder="{{$comment}}" onFocus="commentOpen(this,{{$id}});" onBlur="commentClose(this,{{$id}});" dir="auto">{{if $threaded != false}}{{$default}}{{/if}}</textarea>
|
||||
{{if $qcomment}}
|
||||
<select id="qcomment-select-{{$id}}" name="qcomment-{{$id}}" class="qcomment" onchange="qCommentInsert(this,{{$id}});" >
|
||||
<select id="qcomment-select-{{$id}}" name="qcomment-{{$id}}" class="qcomment" onchange="qCommentInsert(this,{{$id}});">
|
||||
<option value=""></option>
|
||||
{{foreach $qcomment as $qc}}
|
||||
<option value="{{$qc}}">{{$qc}}</option>
|
||||
|
@ -26,7 +26,7 @@
|
|||
{{/if}}
|
||||
|
||||
<div class="comment-edit-text-end"></div>
|
||||
<div class="comment-edit-submit-wrapper" id="comment-edit-submit-wrapper-{{$id}}" style="display: none;" >
|
||||
<div class="comment-edit-submit-wrapper" id="comment-edit-submit-wrapper-{{$id}}" style="display: none;">
|
||||
<input type="submit" onclick="post_comment({{$id}}); return false;" id="comment-edit-submit-{{$id}}" class="comment-edit-submit" name="submit" value="{{$submit}}" />
|
||||
{{if $preview}}<span onclick="preview_comment({{$id}});" id="comment-edit-preview-link-{{$id}}" class="fakelink">{{$preview}}</span>{{/if}}
|
||||
<div id="comment-edit-preview-{{$id}}" class="comment-edit-preview" style="display:none;"></div>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
</div>
|
||||
<br />
|
||||
|
||||
<form id="contact-advanced-form" action="contact/{{$contact_id}}/advanced" method="post" >
|
||||
<form id="contact-advanced-form" action="contact/{{$contact_id}}/advanced" method="post">
|
||||
|
||||
<!-- <h4>{{$contact_name}}</h4> -->
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
<div id="contact-edit-wrapper" >
|
||||
<div id="contact-edit-wrapper">
|
||||
|
||||
{{* Insert Tab-Nav *}}
|
||||
{{$tab_str nofilter}}
|
||||
|
||||
|
||||
<div id="contact-edit-nav-wrapper" >
|
||||
<form action="contact/{{$contact_id}}" method="post" >
|
||||
<div id="contact-edit-nav-wrapper">
|
||||
<form action="contact/{{$contact_id}}" method="post">
|
||||
<div id="contact-edit-links">
|
||||
<div id="contact-edit-status-wrapper">
|
||||
<span id="contact-edit-contact-status">{{$contact_status}}</span>
|
||||
|
@ -14,7 +14,7 @@
|
|||
<div id="contact-edit-actions">
|
||||
<a class="btn" rel="#contact-actions-menu" href="#" id="contact-edit-actions-button">{{$contact_action_button}}</a>
|
||||
|
||||
<ul role="menu" aria-haspopup="true" id="contact-actions-menu" class="menu-popup" >
|
||||
<ul role="menu" aria-haspopup="true" id="contact-actions-menu" class="menu-popup">
|
||||
{{if $lblsuggest}}<li role="menuitem"><a href="#" title="{{$contact_actions.suggest.title}}" onclick="window.location.href='{{$contact_actions.suggest.url}}'; return false;">{{$contact_actions.suggest.label}}</a></li>{{/if}}
|
||||
{{if $poll_enabled}}<li role="menuitem"><a href="#" title="{{$contact_actions.update.title}}" onclick="window.location.href='{{$contact_actions.update.url}}'; return false;">{{$contact_actions.update.label}}</a></li>{{/if}}
|
||||
{{if $contact_actions.updateprofile}}<li role="menuitem"><a href="{{$contact_actions.updateprofile.url}}" title="{{$contact_actions.updateprofile.title}}">{{$contact_actions.updateprofile.label}}</a></li>{{/if}}
|
||||
|
@ -64,7 +64,7 @@
|
|||
<div id="contact-edit-settings">
|
||||
<input type="hidden" name="contact_id" value="{{$contact_id}}">
|
||||
|
||||
<div id="contact-edit-end" ></div>
|
||||
<div id="contact-edit-end"></div>
|
||||
{{include file="field_checkbox.tpl" field=$notify}}
|
||||
{{if $fetch_further_information}}
|
||||
{{include file="field_select.tpl" field=$fetch_further_information}}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
<div class="contact-entry-wrapper" id="contact-entry-wrapper-{{$contact.id}}" >
|
||||
<div class="contact-entry-photo-wrapper" >
|
||||
<div class="contact-entry-wrapper" id="contact-entry-wrapper-{{$contact.id}}">
|
||||
<div class="contact-entry-photo-wrapper">
|
||||
<div class="contact-entry-photo mframe" id="contact-entry-photo-{{$contact.id}}"
|
||||
onmouseover="if (typeof t{{$contact.id}} != 'undefined') clearTimeout(t{{$contact.id}}); openMenu('contact-photo-menu-button-{{$contact.id}}')"
|
||||
onmouseout="t{{$contact.id}}=setTimeout('closeMenu(\'contact-photo-menu-button-{{$contact.id}}\'); closeMenu(\'contact-photo-menu-{{$contact.id}}\');',200)" >
|
||||
onmouseout="t{{$contact.id}}=setTimeout('closeMenu(\'contact-photo-menu-button-{{$contact.id}}\'); closeMenu(\'contact-photo-menu-{{$contact.id}}\');',200)">
|
||||
|
||||
<a href="{{$contact.url}}" title="{{$contact.img_hover}}" /><img src="{{$contact.thumb}}" {{$contact.sparkle}} alt="{{$contact.name}}" /></a>
|
||||
|
||||
|
@ -30,17 +30,17 @@
|
|||
</div>
|
||||
|
||||
<div class="contact-entry-desc">
|
||||
<div class="contact-entry-name" id="contact-entry-name-{{$contact.id}}" >
|
||||
<div class="contact-entry-name" id="contact-entry-name-{{$contact.id}}">
|
||||
{{$contact.name}}
|
||||
{{if $contact.account_type}} <span class="contact-entry-details" id="contact-entry-accounttype-{{$contact.id}}">({{$contact.account_type}})</span>{{/if}}
|
||||
</div>
|
||||
{{if $contact.alt_text}}<div class="contact-entry-details" id="contact-entry-rel-{{$contact.id}}" >{{$contact.alt_text}}</div>{{/if}}
|
||||
{{if $contact.itemurl}}<div class="contact-entry-details" id="contact-entry-url-{{$contact.id}}" >{{$contact.itemurl}}</div>{{/if}}
|
||||
{{if $contact.tags}}<div class="contact-entry-details" id="contact-entry-tags-{{$contact.id}}" >{{$contact.tags}}</div>{{/if}}
|
||||
{{if $contact.details}}<div class="contact-entry-details" id="contact-entry-details-{{$contact.id}}" >{{$contact.details}}</div>{{/if}}
|
||||
{{if $contact.network}}<div class="contact-entry-details" id="contact-entry-network-{{$contact.id}}" >{{$contact.network}}</div>{{/if}}
|
||||
{{if $contact.alt_text}}<div class="contact-entry-details" id="contact-entry-rel-{{$contact.id}}">{{$contact.alt_text}}</div>{{/if}}
|
||||
{{if $contact.itemurl}}<div class="contact-entry-details" id="contact-entry-url-{{$contact.id}}">{{$contact.itemurl}}</div>{{/if}}
|
||||
{{if $contact.tags}}<div class="contact-entry-details" id="contact-entry-tags-{{$contact.id}}">{{$contact.tags}}</div>{{/if}}
|
||||
{{if $contact.details}}<div class="contact-entry-details" id="contact-entry-details-{{$contact.id}}">{{$contact.details}}</div>{{/if}}
|
||||
{{if $contact.network}}<div class="contact-entry-details" id="contact-entry-network-{{$contact.id}}">{{$contact.network}}</div>{{/if}}
|
||||
|
||||
</div>
|
||||
|
||||
<div class="contact-entry-end" ></div>
|
||||
<div class="contact-entry-end"></div>
|
||||
</div>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
{{if $finding}}<h4>{{$finding}}</h4>{{/if}}
|
||||
|
||||
<div id="contacts-search-wrapper">
|
||||
<form id="contacts-search-form" action="{{$cmd}}" method="get" >
|
||||
<form id="contacts-search-form" action="{{$cmd}}" method="get">
|
||||
<span class="contacts-search-desc">{{$desc nofilter}}</span>
|
||||
<input type="text" name="search" id="contacts-search" class="search-input" onfocus="this.select();" value="{{$search}}" />
|
||||
<input type="submit" name="submit" id="contacts-search-submit" value="{{$submit}}" />
|
||||
|
|
|
@ -21,8 +21,8 @@
|
|||
|
||||
{{if $dropping}}
|
||||
<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
|
||||
<div id="item-delete-selected-icon" class="icon drophide" title="{{$dropping}}" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
|
||||
<div id="item-delete-selected-desc" >{{$dropping}}</div>
|
||||
<div id="item-delete-selected-icon" class="icon drophide" title="{{$dropping}}" onmouseover="imgbright(this);" onmouseout="imgdull(this);"></div>
|
||||
<div id="item-delete-selected-desc">{{$dropping}}</div>
|
||||
</div>
|
||||
<div id="item-delete-selected-end"></div>
|
||||
{{/if}}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
|
||||
<p id="dfrn-request-homecoming" >
|
||||
<p id="dfrn-request-homecoming">
|
||||
{{$welcome}}
|
||||
<br />
|
||||
{{$please}}
|
||||
|
@ -16,7 +16,7 @@
|
|||
<input type="checkbox" name="hidden-contact" value="1" />
|
||||
|
||||
|
||||
<div id="dfrn-request-homecoming-submit-wrapper" >
|
||||
<div id="dfrn-request-homecoming-submit-wrapper">
|
||||
<input id="dfrn-request-homecoming-submit" type="submit" name="submit" value="{{$submit}}" />
|
||||
</div>
|
||||
</form>
|
|
@ -8,7 +8,7 @@
|
|||
{{/if}}
|
||||
|
||||
<div id="directory-search-wrapper">
|
||||
<form id="directory-search-form" action="{{$search_mod}}" method="get" >
|
||||
<form id="directory-search-form" action="{{$search_mod}}" method="get">
|
||||
<span class="dirsearch-desc">{{$desc nofilter}}</span>
|
||||
<input type="text" name="search" id="directory-search" class="search-input" onfocus="this.select();" value="{{$search}}" />
|
||||
<input type="submit" name="submit" id="directory-search-submit" value="{{$submit}}" class="button" />
|
||||
|
@ -25,6 +25,6 @@
|
|||
{{include file="contact_template.tpl"}}
|
||||
{{/foreach}}
|
||||
|
||||
<div class="directory-end" ></div>
|
||||
<div class="directory-end"></div>
|
||||
|
||||
{{$paginate nofilter}}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
|
||||
<div class="directory-item lframe" id="directory-item-{{$entry.id}}" >
|
||||
<div class="contact-photo-wrapper" id="directory-photo-wrapper-{{$entry.id}}" >
|
||||
<div class="contact-photo" id="directory-photo-{{$entry.id}}" >
|
||||
<a href="{{$entry.profile_link}}" class="directory-profile-link" id="directory-profile-link-{{$entry.id}}" >
|
||||
<div class="directory-item lframe" id="directory-item-{{$entry.id}}">
|
||||
<div class="contact-photo-wrapper" id="directory-photo-wrapper-{{$entry.id}}">
|
||||
<div class="contact-photo" id="directory-photo-{{$entry.id}}">
|
||||
<a href="{{$entry.profile_link}}" class="directory-profile-link" id="directory-profile-link-{{$entry.id}}">
|
||||
<img class="directory-photo-img" src="{{$entry.photo}}" alt="{{$entry.alt_text}}" title="{{$entry.alt_text}}" />
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{{foreach $events as $event}}
|
||||
<div class="event">
|
||||
|
||||
{{if $event.item.author_name}}<a href="{{$event.item.author_link}}" ><img src="{{$event.item.author_avatar}}" height="32" width="32" />{{$event.item.author_name}}</a>{{/if}}
|
||||
{{if $event.item.author_name}}<a href="{{$event.item.author_link}}"><img src="{{$event.item.author_avatar}}" height="32" width="32" />{{$event.item.author_name}}</a>{{/if}}
|
||||
{{$event.html nofilter}}
|
||||
{{if $event.plink.orig}}<a href="{{$event.plink.orig}}" title="{{$event.plink.orig_title}}" target="_blank" rel="noopener noreferrer" class="plink-event-link icon s22 remote-link"></a>{{/if}}
|
||||
{{if $event.edit}}<a href="{{$event.edit.0}}" title="{{$event.edit.1}}" class="edit-event-link icon s22 pencil"></a>{{/if}}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
{{$desc nofilter}}
|
||||
</p>
|
||||
|
||||
<form id="event-edit-form" action="{{$post}}" method="post" >
|
||||
<form id="event-edit-form" action="{{$post}}" method="post">
|
||||
|
||||
<input type="hidden" name="event_id" value="{{$eid}}" />
|
||||
<input type="hidden" name="cid" value="{{$cid}}" />
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{{$tabs nofilter}}
|
||||
{{include file="section_title.tpl"}}
|
||||
|
||||
<div id="new-event-link"><a href="{{$new_event.0}}" >{{$new_event.1}}</a></div>
|
||||
<div id="new-event-link"><a href="{{$new_event.0}}">{{$new_event.1}}</a></div>
|
||||
|
||||
<div id="event-calendar-wrapper">
|
||||
<a href="{{$previus.0}}" class="prevcal {{$previus.2}}"><div id="event-calendar-prev" class="icon s22 prev" title="{{$previus.1}}"></div></a>
|
||||
|
@ -14,8 +14,8 @@
|
|||
|
||||
{{foreach $events as $event}}
|
||||
<div class="event">
|
||||
{{if $event.is_first}}<hr /><a name="link-{{$event.j}}" ><div class="event-list-date">{{$event.d}}</div></a>{{/if}}
|
||||
{{if $event.item.author_name}}<a href="{{$event.item.author_link}}" ><img src="{{$event.item.author_avatar}}" height="32" width="32" />{{$event.item.author_name}}</a>{{/if}}
|
||||
{{if $event.is_first}}<hr /><a name="link-{{$event.j}}"><div class="event-list-date">{{$event.d}}</div></a>{{/if}}
|
||||
{{if $event.item.author_name}}<a href="{{$event.item.author_link}}"><img src="{{$event.item.author_avatar}}" height="32" width="32" />{{$event.item.author_name}}</a>{{/if}}
|
||||
{{$event.html nofilter}}
|
||||
{{if $event.item.plink}}<a href="{{$event.plink.0}}" title="{{$event.plink.1}}" target="_blank" rel="noopener noreferrer" class="plink-event-link icon s22 remote-link"></a>{{/if}}
|
||||
{{if $event.edit}}<a href="{{$event.edit.0}}" title="{{$event.edit.1}}" class="edit-event-link icon s22 pencil"></a>{{/if}}
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
{{$tabs nofilter}}
|
||||
<h2>{{$title}}</h2>
|
||||
|
||||
<div id="new-event-link"><a href="{{$new_event.0}}" >{{$new_event.1}}</a></div>
|
||||
<div id="new-event-link"><a href="{{$new_event.0}}">{{$new_event.1}}</a></div>
|
||||
|
||||
<div id="events-calendar"></div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
{{if $count}}
|
||||
<div id="event-notice" class="birthday-notice fakelink {{$classtoday}}" onclick="openClose('event-wrapper');">{{$event_reminders}} ({{$count}})</div>
|
||||
<div id="event-wrapper" style="display: none;" ><div id="event-title">{{$event_title}}</div>
|
||||
<div id="event-wrapper" style="display: none;"><div id="event-title">{{$event_title}}</div>
|
||||
<div id="event-title-end"></div>
|
||||
{{foreach $events as $event}}
|
||||
<div class="event-list" id="event-{{$event.id}}"> <a class="ajax-popupbox" href="events/?id={{$event.id}}">{{$event.title}}</a> - {{$event.date}} </div>
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
<div class='field combobox'>
|
||||
<label for='id_{{$field.0}}' id='id_{{$field.0}}_label'>{{$field.1}}</label>
|
||||
{{* html5 don't work on Chrome, Safari and IE9
|
||||
<input id="id_{{$field.0}}" type="text" list="data_{{$field.0}}" >
|
||||
<datalist id="data_{{$field.0}}" >
|
||||
<input id="id_{{$field.0}}" type="text" list="data_{{$field.0}}">
|
||||
<datalist id="data_{{$field.0}}">
|
||||
{{foreach $field.4 as $opt=>$val}}<option value="{{$val}}">{{/foreach}}
|
||||
</datalist> *}}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
<div class="field input" id="wrapper_{{$field.0}}">
|
||||
<label for="id_{{$field.0}}">{{$field.1}}{{if $field.4}} <span class="required" title="{{$field.4}}">*</span>{{/if}}</label>
|
||||
<input type="{{$field.6|default:'text'}}" name="{{$field.0}}" id="id_{{$field.0}}" value="{{$field.2}}"{{if $field.4}} required{{/if}}{{if $field.5 eq "autofocus"}} autofocus{{elseif $field.5}} {{$field.5 nofilter}}{{/if}} aria-describedby="{{$field.0}}_tip">
|
||||
<input type="{{$field.6|default:'text'}}" name="{{$field.0}}" id="id_{{$field.0}}" value="{{$field.2}}"{{if $field.4}} required{{/if}}{{if $field.5 eq "autofocus"}} autofocus{{elseif $field.5}} {{$field.5 nofilter}}{{/if}} aria-describedby="{{$field.0}}_tip" dir="auto">
|
||||
{{if $field.3}}
|
||||
<span class="field_help" role="tooltip" id="{{$field.0}}_tip">{{$field.3 nofilter}}</span>
|
||||
{{/if}}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
<div class='field select'>
|
||||
<label for='id_{{$field.0}}'>{{$field.1}}</label>
|
||||
<select name='{{$field.0}}' id='id_{{$field.0}}' aria-describedby='{{$field.0}}_tip'>
|
||||
<div class="field select">
|
||||
<label for="id_{{$field.0}}">{{$field.1}}</label>
|
||||
<select name="{{$field.0}}" id="id_{{$field.0}}" aria-describedby="{{$field.0}}_tip">
|
||||
{{foreach $field.4 as $opt=>$val}}
|
||||
<option value="{{$opt}}" {{if $opt==$field.2}}selected="selected"{{/if}}>{{$val}}</option>
|
||||
<option value="{{$opt}}" dir="auto"{{if $opt==$field.2}} selected="selected"{{/if}}>{{$val}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
{{if $field.3}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
<div class="field textarea">
|
||||
<label for="id_{{$field.0}}">{{$field.1}}{{if $field.4}} <span class="required" title="{{$field.4}}">*</span>{{/if}}</label>
|
||||
<textarea name="{{$field.0}}" id="id_{{$field.0}}"{{if $field.4}} required{{/if}} aria-describedby="{{$field.0}}_tip">{{$field.2}}</textarea>
|
||||
<textarea name="{{$field.0}}" id="id_{{$field.0}}"{{if $field.4}} required{{/if}} aria-describedby="{{$field.0}}_tip" dir="auto">{{$field.2}}</textarea>
|
||||
{{if $field.3}}
|
||||
<span class="field_help" role="tooltip" id="{{$field.0}}_tip">{{$field.3 nofilter}}</span>
|
||||
{{/if}}
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<label for="id_{{$field.0}}">{{$field.1}}</label>
|
||||
<select name="{{$field.0}}" id="id_{{$field.0}}" {{if $field.5}}onchange="previewTheme(this);"{{/if}} aria-describedby="{{$field.0}}_tip">
|
||||
{{foreach $field.4 as $opt=>$val}}
|
||||
<option value="{{$opt}}" {{if $opt==$field.2}}selected="selected"{{/if}}>{{$val}}</option>
|
||||
<option value="{{$opt}}" dir="auto"{{if $opt==$field.2}} selected="selected"{{/if}}>{{$val}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
{{if $field.3}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!--
|
||||
This is the template used by mod/fbrowser.php
|
||||
-->
|
||||
<script type="text/javascript" src="{{$baseurl}}/view/js/ajaxupload.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="{{$baseurl}}/view/js/ajaxupload.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="{{$baseurl}}/view/js/filebrowser.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script>
|
||||
$(function() {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
{{include file="field_combobox.tpl"}}
|
||||
<div class="settings-submit-wrapper" >
|
||||
<div class="settings-submit-wrapper">
|
||||
<input id="filer_save" type="button" class="settings-submit" value="{{$submit}}" />
|
||||
</div>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<div class="group-delete-wrapper button" id="group-delete-wrapper-{{$id}}" >
|
||||
<div class="group-delete-wrapper button" id="group-delete-wrapper-{{$id}}">
|
||||
<a href="group/drop/{{$id}}?t={{$form_security_token}}"
|
||||
onclick="return confirmDelete();"
|
||||
id="group-delete-icon-{{$id}}"
|
||||
|
|
|
@ -3,16 +3,16 @@
|
|||
|
||||
|
||||
{{if $editable == 1}}
|
||||
<div id="group-edit-wrapper" >
|
||||
<form action="group/{{$gid}}" id="group-edit-form" method="post" >
|
||||
<div id="group-edit-wrapper">
|
||||
<form action="group/{{$gid}}" id="group-edit-form" method="post">
|
||||
<input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
|
||||
|
||||
{{include file="field_input.tpl" field=$gname}}
|
||||
{{if $drop}}{{$drop nofilter}}{{/if}}
|
||||
<div id="group-edit-submit-wrapper" >
|
||||
<input type="submit" name="submit" value="{{$submit}}" >
|
||||
<div id="group-edit-submit-wrapper">
|
||||
<input type="submit" name="submit" value="{{$submit}}">
|
||||
</div>
|
||||
<div id="group-edit-select-end" ></div>
|
||||
<div id="group-edit-select-end"></div>
|
||||
</form>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
<div class="field custom">
|
||||
<label for="group-selection" id="group-selection-lbl">{{$label}}</label>
|
||||
<select name="group-selection" id="group-selection" >
|
||||
<select name="group-selection" id="group-selection">
|
||||
{{foreach $groups as $group}}
|
||||
<option value="{{$group.id}}" {{if $group.selected}}selected="selected"{{/if}} >{{$group.name}}</option>
|
||||
<option value="{{$group.id}}"{{if $group.selected}} selected="selected"{{/if}}>{{$group.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
|
|
|
@ -32,19 +32,19 @@
|
|||
<!--[if IE]>
|
||||
<script type="text/javascript" src="https://html5shiv.googlecode.com/svn/trunk/html5.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<![endif]-->
|
||||
<script type="text/javascript" src="view/js/modernizr.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/asset/jquery/dist/jquery.min.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/js/jquery.textinputs.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/asset/textcomplete/dist/textcomplete.min.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/js/autocomplete.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/js/modernizr.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/jquery/dist/jquery.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/js/jquery.textinputs.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/textcomplete/dist/textcomplete.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/js/autocomplete.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/jquery-colorbox/jquery.colorbox-min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/jgrowl/jquery.jgrowl.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/jquery-datetimepicker/build/jquery.datetimepicker.full.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/perfect-scrollbar/dist/js/perfect-scrollbar.jquery.min.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/asset/perfect-scrollbar/dist/js/perfect-scrollbar.jquery.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/imagesloaded/imagesloaded.pkgd.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/base64/base64.min.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/asset/base64/base64.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/asset/dompurify/dist/purify.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script type="text/javascript" src="view/js/main.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/js/main.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script>
|
||||
|
||||
// Lifted from https://css-tricks.com/snippets/jquery/move-cursor-to-end-of-textarea-or-input/
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<div class="basic-content" >
|
||||
<div class="basic-content">
|
||||
<div class="hover-card-details">
|
||||
<div class="hover-card-header left-align">
|
||||
<div class="hover-card-pic left-align">
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<form action="invite" method="post" id="invite-form" >
|
||||
<form action="invite" method="post" id="invite-form">
|
||||
|
||||
<input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
|
||||
|
||||
|
|
|
@ -8,11 +8,11 @@
|
|||
<input type="hidden" name="wall" value="{{$wall}}" />
|
||||
|
||||
<div id="jot-title-wrap">
|
||||
<input type="text" name="title" id="jot-title" class="jothidden jotforms form-control" placeholder="{{$placeholdertitle}}" title="{{$placeholdertitle}}" value="{{$title}}" tabindex="1"/>
|
||||
<input type="text" name="title" id="jot-title" class="jothidden jotforms form-control" placeholder="{{$placeholdertitle}}" title="{{$placeholdertitle}}" value="{{$title}}" tabindex="1" dir="auto" />
|
||||
</div>
|
||||
{{if $placeholdercategory}}
|
||||
<div id="jot-category-wrap">
|
||||
<input name="category" id="jot-category" class="jothidden jotforms form-control" type="text" placeholder="{{$placeholdercategory}}" title="{{$placeholdercategory}}" value="{{$category}}" tabindex="2"/>
|
||||
<input name="category" id="jot-category" class="jothidden jotforms form-control" type="text" placeholder="{{$placeholdercategory}}" title="{{$placeholdercategory}}" value="{{$category}}" tabindex="2" dir="auto" />
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
|
@ -44,7 +44,7 @@
|
|||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text form-control text-autosize" name="body" placeholder="{{$default}}" rows="7" tabindex="3">{{$body}}</textarea>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text form-control text-autosize" name="body" placeholder="{{$default}}" rows="7" tabindex="3" dir="auto" dir="auto">{{$body}}</textarea>
|
||||
</p>
|
||||
|
||||
<p class="comment-edit-submit-wrapper">
|
||||
|
|
|
@ -40,7 +40,7 @@ function enableOnUser(){
|
|||
}
|
||||
|
||||
</script>
|
||||
<script type="text/javascript" src="{{$baseurl}}/view/js/ajaxupload.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="{{$baseurl}}/view/js/ajaxupload.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script>
|
||||
var ispublic = '{{$ispublic nofilter}}';
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
<div id="profile-jot-wrapper" >
|
||||
<div id="profile-jot-wrapper">
|
||||
<div id="profile-jot-banner-wrapper">
|
||||
<div id="profile-jot-desc" > </div>
|
||||
<div id="profile-jot-desc"> </div>
|
||||
<div id="character-counter" class="grey"></div>
|
||||
</div>
|
||||
<div id="profile-jot-banner-end"></div>
|
||||
|
||||
<form id="profile-jot-form" action="{{$action}}" method="post" >
|
||||
<form id="profile-jot-form" action="{{$action}}" method="post">
|
||||
<input type="hidden" name="wall" value="{{$wall}}" />
|
||||
<input type="hidden" name="post_type" value="{{$posttype}}" />
|
||||
<input type="hidden" name="profile_uid" value="{{$profile_uid}}" />
|
||||
|
@ -18,43 +18,43 @@
|
|||
{{if $notes_cid}}
|
||||
<input type="hidden" name="contact_allow[]" value="<{{$notes_cid}}>" />
|
||||
{{/if}}
|
||||
<div id="jot-title-wrap"><input name="title" id="jot-title" type="text" placeholder="{{$placeholdertitle}}" value="{{$title}}" class="jothidden" style="display:none"></div>
|
||||
<div id="jot-title-wrap"><input name="title" id="jot-title" type="text" placeholder="{{$placeholdertitle}}" value="{{$title}}" class="jothidden" style="display:none" dir="auto"></div>
|
||||
{{if $placeholdercategory}}
|
||||
<div id="jot-category-wrap"><input name="category" id="jot-category" type="text" placeholder="{{$placeholdercategory}}" value="{{$category}}" class="jothidden" style="display:none" /></div>
|
||||
<div id="jot-category-wrap"><input name="category" id="jot-category" type="text" placeholder="{{$placeholdercategory}}" value="{{$category}}" class="jothidden" style="display:none" dir="auto"></div>
|
||||
{{/if}}
|
||||
<div id="jot-text-wrap">
|
||||
<img id="profile-jot-text-loading" src="images/rotator.gif" alt="{{$wait}}" title="{{$wait}}" style="display: none;" />
|
||||
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" placeholder="{{$share}}">{{if $content}}{{$content nofilter}}{{/if}}</textarea>
|
||||
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" placeholder="{{$share}}" dir="auto">{{if $content}}{{$content nofilter}}{{/if}}</textarea>
|
||||
</div>
|
||||
|
||||
<div id="profile-jot-submit-wrapper" class="jothidden">
|
||||
<input type="submit" id="profile-jot-submit" name="submit" value="{{$share}}" />
|
||||
|
||||
<div id="profile-upload-wrapper" style="display: {{$visitor}};" >
|
||||
<div id="wall-image-upload-div" ><a href="#" onclick="return false;" id="wall-image-upload" class="icon camera" title="{{$upload}}"></a></div>
|
||||
<div id="profile-upload-wrapper" style="display: {{$visitor}};">
|
||||
<div id="wall-image-upload-div"><a href="#" onclick="return false;" id="wall-image-upload" class="icon camera" title="{{$upload}}"></a></div>
|
||||
</div>
|
||||
<div id="profile-attach-wrapper" style="display: {{$visitor}};" >
|
||||
<div id="wall-file-upload-div" ><a href="#" onclick="return false;" id="wall-file-upload" class="icon attach" title="{{$attach}}"></a></div>
|
||||
<div id="profile-attach-wrapper" style="display: {{$visitor}};">
|
||||
<div id="wall-file-upload-div"><a href="#" onclick="return false;" id="wall-file-upload" class="icon attach" title="{{$attach}}"></a></div>
|
||||
</div>
|
||||
|
||||
<div id="profile-link-wrapper" style="display: {{$visitor}};" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >
|
||||
<div id="profile-link-wrapper" style="display: {{$visitor}};" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);">
|
||||
<a id="profile-link" class="icon link" title="{{$weblink}}" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;"></a>
|
||||
</div>
|
||||
<div id="profile-video-wrapper" style="display: {{$visitor}};" >
|
||||
<div id="profile-video-wrapper" style="display: {{$visitor}};">
|
||||
<a id="profile-video" class="icon video" title="{{$video}}" onclick="jotVideoURL();return false;"></a>
|
||||
</div>
|
||||
<div id="profile-audio-wrapper" style="display: {{$visitor}};" >
|
||||
<div id="profile-audio-wrapper" style="display: {{$visitor}};">
|
||||
<a id="profile-audio" class="icon audio" title="{{$audio}}" onclick="jotAudioURL();return false;"></a>
|
||||
</div>
|
||||
<div id="profile-location-wrapper" style="display: {{$visitor}};" >
|
||||
<div id="profile-location-wrapper" style="display: {{$visitor}};">
|
||||
<a id="profile-location" class="icon globe" title="{{$setloc}}" onclick="jotGetLocation();return false;"></a>
|
||||
</div>
|
||||
<div id="profile-nolocation-wrapper" style="display: none;" >
|
||||
<div id="profile-nolocation-wrapper" style="display: none;">
|
||||
<a id="profile-nolocation" class="icon noglobe" title="{{$noloc}}" onclick="jotClearLocation();return false;"></a>
|
||||
</div>
|
||||
|
||||
<div id="profile-jot-perms" class="profile-jot-perms" style="display: {{$pvisit}};" >
|
||||
<a href="#profile-jot-acl-wrapper" id="jot-perms-icon" class="icon {{$lockstate}}" title="{{$permset}}" ></a>{{$bang}}
|
||||
<div id="profile-jot-perms" class="profile-jot-perms" style="display: {{$pvisit}};">
|
||||
<a href="#profile-jot-acl-wrapper" id="jot-perms-icon" class="icon {{$lockstate}}" title="{{$permset}}"></a>{{$bang}}
|
||||
</div>
|
||||
|
||||
<!-- {{if $preview}}<span onclick="preview_post();" id="jot-preview-link" class="fakelink">{{$preview}}</span>{{/if}} -->
|
||||
|
@ -67,7 +67,7 @@
|
|||
{{$jotplugins nofilter}}
|
||||
</div>
|
||||
|
||||
<div id="profile-rotator-wrapper" style="display: {{$visitor}};" >
|
||||
<div id="profile-rotator-wrapper" style="display: {{$visitor}};">
|
||||
<img id="profile-rotator" src="images/rotator.gif" alt="{{$wait}}" title="{{$wait}}" style="display: none;" />
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
|
||||
<form id="login-form" action="{{$dest_url}}" role="form" method="post" >
|
||||
<form id="login-form" action="{{$dest_url}}" role="form" method="post">
|
||||
<div id="login-group" role="group" aria-labelledby="login-head">
|
||||
<input type="hidden" name="auth-params" value="login" />
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
|||
{{include file="field_input.tpl" field=$lname}}
|
||||
{{include file="field_password.tpl" field=$lpassword}}
|
||||
<div id="login-lost-password-link">
|
||||
<a href="lostpass" title="{{$lostpass}}" id="lost-password-link" >{{$lostlink}}</a>
|
||||
<a href="lostpass" title="{{$lostpass}}" id="lost-password-link">{{$lostlink}}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
|
||||
<div id="login-submit-wrapper" >
|
||||
<div id="login-submit-wrapper">
|
||||
<input type="submit" name="submit" id="login-submit-button" value="{{$login}}" />
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<form action="{{$dest_url}}" method="post" >
|
||||
<form action="{{$dest_url}}" method="post">
|
||||
<div class="logout-wrapper">
|
||||
<input type="hidden" name="auth-params" value="logout" />
|
||||
<input type="submit" name="submit" id="logout-button" value="{{$logout}}" />
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
{{$desc nofilter}}
|
||||
</p>
|
||||
|
||||
<form action="lostpass" method="post" >
|
||||
<form action="lostpass" method="post">
|
||||
<div id="login-name-wrapper">
|
||||
<label for="login-name" id="label-login-name">{{$name}}</label>
|
||||
<input type="text" maxlength="60" name="login-name" id="login-name" value="" />
|
||||
</div>
|
||||
<div id="login-extra-end"></div>
|
||||
<div id="login-submit-wrapper" >
|
||||
<div id="login-submit-wrapper">
|
||||
<input type="submit" name="submit" id="lostpass-submit-button" value="{{$submit}}" />
|
||||
</div>
|
||||
<div id="login-submit-end"></div>
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
|
||||
<div class="mail-conv-outside-wrapper">
|
||||
<div class="mail-conv-sender" >
|
||||
<a href="{{$mail.from_url}}" title="{{$mail.from_addr}}" class="mail-conv-sender-url" ><img class="mframe mail-conv-sender-photo{{$mail.sparkle}}" src="{{$mail.from_photo}}" heigth="80" width="80" alt="{{$mail.from_name}}" /></a>
|
||||
<div class="mail-conv-sender">
|
||||
<a href="{{$mail.from_url}}" title="{{$mail.from_addr}}" class="mail-conv-sender-url"><img class="mframe mail-conv-sender-photo{{$mail.sparkle}}" src="{{$mail.from_photo}}" heigth="80" width="80" alt="{{$mail.from_name}}" /></a>
|
||||
</div>
|
||||
<div class="mail-conv-detail" >
|
||||
<div class="mail-conv-sender-name" >{{$mail.from_name}}</div>
|
||||
<div class="mail-conv-detail">
|
||||
<div class="mail-conv-sender-name">{{$mail.from_name}}</div>
|
||||
<div class="mail-conv-date">{{$mail.date}}</div>
|
||||
<div class="mail-conv-subject">{{$mail.subject}}</div>
|
||||
<div class="mail-conv-body">{{$mail.body nofilter}}</div>
|
||||
<div class="mail-conv-delete-wrapper" id="mail-conv-delete-wrapper-{{$mail.id}}" ><a href="message/drop/{{$mail.id}}" class="icon drophide delete-icon mail-list-delete-icon" onclick="return confirmDelete();" title="{{$mail.delete}}" id="mail-conv-delete-icon-{{$mail.id}}" class="mail-conv-delete-icon" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a></div><div class="mail-conv-delete-end"></div>
|
||||
<div class="mail-conv-delete-wrapper" id="mail-conv-delete-wrapper-{{$mail.id}}"><a href="message/drop/{{$mail.id}}" class="icon drophide delete-icon mail-list-delete-icon" onclick="return confirmDelete();" title="{{$mail.delete}}" id="mail-conv-delete-icon-{{$mail.id}}" class="mail-conv-delete-icon" onmouseover="imgbright(this);" onmouseout="imgdull(this);"></a></div><div class="mail-conv-delete-end"></div>
|
||||
<div class="mail-conv-outside-wrapper-end"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
|
||||
<div class="mail-list-outside-wrapper">
|
||||
<div class="mail-list-sender" >
|
||||
<a href="{{$from_url}}" title="{{$from_addr}}" class="mail-list-sender-url" ><img class="mail-list-sender-photo{{$sparkle}}" src="{{$from_photo}}" height="80" width="80" alt="{{$from_name}}" title="{{$from_addr}}" /></a>
|
||||
<div class="mail-list-sender">
|
||||
<a href="{{$from_url}}" title="{{$from_addr}}" class="mail-list-sender-url"><img class="mail-list-sender-photo{{$sparkle}}" src="{{$from_photo}}" height="80" width="80" alt="{{$from_name}}" title="{{$from_addr}}" /></a>
|
||||
</div>
|
||||
<div class="mail-list-detail">
|
||||
<div class="mail-list-sender-name" >{{$from_name}}</div>
|
||||
<div class="mail-list-sender-name">{{$from_name}}</div>
|
||||
<div class="mail-list-date">{{$date}}</div>
|
||||
<div class="mail-list-subject"><a href="message/{{$id}}" class="mail-list-link">{{$subject}}</a></div>
|
||||
<div class="mail-list-delete-wrapper" id="mail-list-delete-wrapper-{{$id}}" >
|
||||
<a href="message/dropconv/{{$id}}" onclick="return confirmDelete();" title="{{$delete}}" class="icon drophide mail-list-delete delete-icon" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>
|
||||
<div class="mail-list-delete-wrapper" id="mail-list-delete-wrapper-{{$id}}">
|
||||
<a href="message/dropconv/{{$id}}" onclick="return confirmDelete();" title="{{$delete}}" class="icon drophide mail-list-delete delete-icon" onmouseover="imgbright(this);" onmouseout="imgdull(this);"></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
<div class="contact-block-div {{if $class}}{{$class}}{{/if}}">
|
||||
<a class="contact-block-link {{if $class}}{{$class }}{{/if}} {{if $sparkle}}sparkle{{/if}} {{if $click}}fakelink{{/if}}" {{if $redir}}target="redir"{{/if}} {{if $url}}href="{{$url}}"{{/if}} {{if $click}}onclick="{{$click}}"{{/if}} >
|
||||
<img class="contact-block-img {{if $class}}{{$class }}{{/if}} {{if $sparkle}}sparkle{{/if}}" src="{{$photo}}" title="{{$title}}" alt="{{$name}}" />
|
||||
<div class="contact-block-div{{if $class}} {{$class}}{{/if}}">
|
||||
<a class="contact-block-link{{if $class}} {{$class }}{{/if}}{{if $sparkle}} sparkle{{/if}}{{if $click}} fakelink{{/if}}"{{if $redir}} target="redir"{{/if}}{{if $url}} href="{{$url}}"{{/if}}{{if $click}} onclick="{{$click}}"{{/if}}>
|
||||
<img class="contact-block-img{{if $class}} {{$class }}{{/if}}{{if $sparkle}} sparkle{{/if}}" src="{{$photo}}" title="{{$title}}" alt="{{$name}}"/>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script language="javascript" type="text/javascript">
|
||||
$("#prvmail-text").editor_autocomplete(baseurl + '/search/acl');
|
||||
</script>
|
||||
<script type="text/javascript" src="view/js/ajaxupload.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/js/ajaxupload.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
var uploader = new window.AjaxUpload(
|
||||
|
|
|
@ -4,41 +4,41 @@
|
|||
|
||||
<div id="site-location">{{$sitelocation}}</div>
|
||||
|
||||
{{if $nav.logout}}<a id="nav-logout-link" class="nav-link {{$nav.logout.2}}" href="{{$nav.logout.0}}" title="{{$nav.logout.3}}" >{{$nav.logout.1}}</a> {{/if}}
|
||||
{{if $nav.login}}<a id="nav-login-link" class="nav-login-link {{$nav.login.2}}" href="{{$nav.login.0}}" title="{{$nav.login.3}}" >{{$nav.login.1}}</a> {{/if}}
|
||||
{{if $nav.logout}}<a id="nav-logout-link" class="nav-link {{$nav.logout.2}}" href="{{$nav.logout.0}}" title="{{$nav.logout.3}}">{{$nav.logout.1}}</a> {{/if}}
|
||||
{{if $nav.login}}<a id="nav-login-link" class="nav-login-link {{$nav.login.2}}" href="{{$nav.login.0}}" title="{{$nav.login.3}}">{{$nav.login.1}}</a> {{/if}}
|
||||
|
||||
<span id="nav-link-wrapper" >
|
||||
<span id="nav-link-wrapper">
|
||||
|
||||
{{if $nav.register}}<a id="nav-register-link" class="nav-commlink {{$nav.register.2}} {{$sel.register}}" href="{{$nav.register.0}}" title="{{$nav.register.3}}" >{{$nav.register.1}}</a>{{/if}}
|
||||
{{if $nav.register}}<a id="nav-register-link" class="nav-commlink {{$nav.register.2}} {{$sel.register}}" href="{{$nav.register.0}}" title="{{$nav.register.3}}">{{$nav.register.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.help}} <a id="nav-help-link" class="nav-link {{$nav.help.2}}" target="friendica-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}" >{{$nav.help.1}}</a>{{/if}}
|
||||
{{if $nav.help}} <a id="nav-help-link" class="nav-link {{$nav.help.2}}" target="friendica-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}">{{$nav.help.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.tos}} <a id="nav-tos-link" class="nav-link {{$nav.tos.2}}" href="{{$nav.tos.0}}" title="{{$nav.tos.3}}" >{{$nav.tos.1}}</a>{{/if}}
|
||||
{{if $nav.tos}} <a id="nav-tos-link" class="nav-link {{$nav.tos.2}}" href="{{$nav.tos.0}}" title="{{$nav.tos.3}}">{{$nav.tos.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.apps}}<a id="nav-apps-link" class="nav-link {{$nav.apps.2}}" href="{{$nav.apps.0}}" title="{{$nav.apps.3}}" >{{$nav.apps.1}}</a>{{/if}}
|
||||
{{if $nav.apps}}<a id="nav-apps-link" class="nav-link {{$nav.apps.2}}" href="{{$nav.apps.0}}" title="{{$nav.apps.3}}">{{$nav.apps.1}}</a>{{/if}}
|
||||
|
||||
<a accesskey="s" id="nav-search-link" class="nav-link {{$nav.search.2}}" href="{{$nav.search.0}}" title="{{$nav.search.3}}" >{{$nav.search.1}}</a>
|
||||
<a id="nav-directory-link" class="nav-link {{$nav.directory.2}}" href="{{$nav.directory.0}}" title="{{$nav.directory.3}}" >{{$nav.directory.1}}</a>
|
||||
<a accesskey="s" id="nav-search-link" class="nav-link {{$nav.search.2}}" href="{{$nav.search.0}}" title="{{$nav.search.3}}">{{$nav.search.1}}</a>
|
||||
<a id="nav-directory-link" class="nav-link {{$nav.directory.2}}" href="{{$nav.directory.0}}" title="{{$nav.directory.3}}">{{$nav.directory.1}}</a>
|
||||
|
||||
{{if $nav.admin}}<a accesskey="a" id="nav-admin-link" class="nav-link {{$nav.admin.2}}" href="{{$nav.admin.0}}" title="{{$nav.admin.3}}" >{{$nav.admin.1}}</a>{{/if}}
|
||||
{{if $nav.admin}}<a accesskey="a" id="nav-admin-link" class="nav-link {{$nav.admin.2}}" href="{{$nav.admin.0}}" title="{{$nav.admin.3}}">{{$nav.admin.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.network}}
|
||||
<a accesskey="n" id="nav-network-link" class="nav-commlink {{$nav.network.2}} {{$sel.network}}" href="{{$nav.network.0}}" title="{{$nav.network.3}}" >{{$nav.network.1}}</a>
|
||||
<a accesskey="n" id="nav-network-link" class="nav-commlink {{$nav.network.2}} {{$sel.network}}" href="{{$nav.network.0}}" title="{{$nav.network.3}}">{{$nav.network.1}}</a>
|
||||
<span id="net-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
{{if $nav.home}}
|
||||
<a accesskey="p" id="nav-home-link" class="nav-commlink {{$nav.home.2}} {{$sel.home}}" href="{{$nav.home.0}}" title="{{$nav.home.3}}" >{{$nav.home.1}}</a>
|
||||
<a accesskey="p" id="nav-home-link" class="nav-commlink {{$nav.home.2}} {{$sel.home}}" href="{{$nav.home.0}}" title="{{$nav.home.3}}">{{$nav.home.1}}</a>
|
||||
<span id="home-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
{{if $nav.community}}
|
||||
<a accesskey="c" id="nav-community-link" class="nav-commlink {{$nav.community.2}} {{$sel.community}}" href="{{$nav.community.0}}" title="{{$nav.community.3}}" >{{$nav.community.1}}</a>
|
||||
<a accesskey="c" id="nav-community-link" class="nav-commlink {{$nav.community.2}} {{$sel.community}}" href="{{$nav.community.0}}" title="{{$nav.community.3}}">{{$nav.community.1}}</a>
|
||||
{{/if}}
|
||||
{{if $nav.introductions}}
|
||||
<a id="nav-notification-link" class="nav-commlink {{$nav.introductions.2}} {{$sel.introductions}}" href="{{$nav.introductions.0}}" title="{{$nav.introductions.3}}" >{{$nav.introductions.1}}</a>
|
||||
<a id="nav-notification-link" class="nav-commlink {{$nav.introductions.2}} {{$sel.introductions}}" href="{{$nav.introductions.0}}" title="{{$nav.introductions.3}}">{{$nav.introductions.1}}</a>
|
||||
<span id="intro-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
{{if $nav.messages}}
|
||||
<a id="nav-messages-link" class="nav-commlink {{$nav.messages.2}} {{$sel.messages}}" href="{{$nav.messages.0}}" title="{{$nav.messages.3}}" >{{$nav.messages.1}}</a>
|
||||
<a id="nav-messages-link" class="nav-commlink {{$nav.messages.2}} {{$sel.messages}}" href="{{$nav.messages.0}}" title="{{$nav.messages.3}}">{{$nav.messages.1}}</a>
|
||||
<span id="mail-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
|
||||
|
@ -58,9 +58,9 @@
|
|||
{{/if}}
|
||||
|
||||
{{if $nav.settings}}<a id="nav-settings-link" class="nav-link {{$nav.settings.2}}" href="{{$nav.settings.0}}" title="{{$nav.settings.3}}">{{$nav.settings.1}}</a>{{/if}}
|
||||
{{if $nav.profiles}}<a id="nav-profiles-link" class="nav-link {{$nav.profiles.2}}" href="{{$nav.profiles.0}}" title="{{$nav.profiles.3}}" >{{$nav.profiles.1}}</a>{{/if}}
|
||||
{{if $nav.profiles}}<a id="nav-profiles-link" class="nav-link {{$nav.profiles.2}}" href="{{$nav.profiles.0}}" title="{{$nav.profiles.3}}">{{$nav.profiles.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.contacts}}<a id="nav-contacts-link" class="nav-link {{$nav.contacts.2}}" href="{{$nav.contacts.0}}" title="{{$nav.contacts.3}}" >{{$nav.contacts.1}}</a>{{/if}}
|
||||
{{if $nav.contacts}}<a id="nav-contacts-link" class="nav-link {{$nav.contacts.2}}" href="{{$nav.contacts.0}}" title="{{$nav.contacts.3}}">{{$nav.contacts.1}}</a>{{/if}}
|
||||
</span>
|
||||
<span id="nav-end"></span>
|
||||
<span id="banner">{{$banner nofilter}}</span>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<h2>{{$header}}</h2>
|
||||
|
||||
<div class="intro-wrapper" id="intro-{{$contact_id}}" >
|
||||
<div class="intro-wrapper" id="intro-{{$contact_id}}">
|
||||
|
||||
<p class="intro-desc">{{$str_notification_type}} {{$str_type}}</p>
|
||||
<img id="photo-{{$contact_id}}" class="intro-photo" src="{{$photo}}" width="175" height=175" title="{{$fullname}}" alt="{{$fullname}}" />
|
||||
|
@ -25,9 +25,9 @@
|
|||
{{include file="field_radio.tpl" field=$follower}}
|
||||
</div>
|
||||
|
||||
<input type="hidden" name="dfrn_id" value="{{$dfrn_id}}" >
|
||||
<input type="hidden" name="intro_id" value="{{$intro_id}}" >
|
||||
<input type="hidden" name="contact_id" value="{{$contact_id}}" >
|
||||
<input type="hidden" name="dfrn_id" value="{{$dfrn_id}}">
|
||||
<input type="hidden" name="intro_id" value="{{$intro_id}}">
|
||||
<input type="hidden" name="contact_id" value="{{$contact_id}}">
|
||||
|
||||
<input class="intro-submit-approve" type="submit" name="submit" value="{{$approve}}" />
|
||||
</form>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<div class="intro-approve-as-friend-wrapper">
|
||||
<label class="intro-approve-as-friend-label" for="intro-approve-as-friend-{{$intro_id}}">{{$as_friend}}</label>
|
||||
<input type="radio" name="duplex" id="intro-approve-as-friend-{{$intro_id}}" class="intro-approve-as-friend" {{$friend_selected}} value="1" />
|
||||
<div class="intro-approve-friend-break" ></div>
|
||||
<div class="intro-approve-friend-break"></div>
|
||||
</div>
|
||||
<div class="intro-approve-as-friend-end"></div>
|
||||
<div class="intro-approve-as-fan-wrapper">
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
|
||||
|
||||
<div class="intro-wrapper" >
|
||||
<div class="intro-wrapper">
|
||||
|
||||
<p class="intro-desc">{{$str_notification_type}} {{$str_type}}</p>
|
||||
{{if $madeby}}<div class="intro-madeby">{{$lbl_madeby}} {{$madeby}}</div>{{/if}}
|
||||
<div class="intro-fullname" >{{$fullname}}</div>
|
||||
<a class="intro-url-link" href="{{$url}}" ><img class="intro-photo lframe" src="{{$photo}}" width="175" height="175" title="{{$fullname}}" alt="{{$fullname}}" /></a>
|
||||
<div class="intro-note" >{{$note}}</div>
|
||||
<div class="intro-fullname">{{$fullname}}</div>
|
||||
<a class="intro-url-link" href="{{$url}}"><img class="intro-photo lframe" src="{{$photo}}" width="175" height="175" title="{{$fullname}}" alt="{{$fullname}}" /></a>
|
||||
<div class="intro-note">{{$note}}</div>
|
||||
<div class="intro-wrapper-end"></div>
|
||||
<form class="intro-form" action="notification/{{$intro_id}}" method="post">
|
||||
<input class="intro-submit-ignore" type="submit" name="submit" value="{{$ignore}}" />
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<a class="embed_video" href="{{$embedurl}}" onclick='this.innerHTML=window.atob("{{$escapedhtml}}"); this.classList.add("active"); return false;'>
|
||||
<img width='{{$tw}}' height='{{$th}}' src='{{$turl}}' >
|
||||
<div style='width: {{$tw}}px; height: {{$th}}px;'></div>
|
||||
<a class="embed_video" href="{{$embedurl}}" onclick="this.innerHTML=window.atob('{{$escapedhtml}}'); this.classList.add('active'); return false;">
|
||||
<img width="{{$tw}}" height="{{$th}}" src="{{$turl}}">
|
||||
<div style="width: {{$tw}}px; height: {{$th}}px;"></div>
|
||||
</a>
|
||||
|
|
|
@ -6,16 +6,16 @@
|
|||
{{if $drop}}
|
||||
<div id="album-drop-link"><a href="{{$drop.1}}" title="{{$drop.0}}">{{$drop.0}}</a></div>
|
||||
{{/if}}
|
||||
<div class="photos-upload-link" ><a href="{{$order.1}}" title="{{$order.0}}">{{$order.0}}</a></div>
|
||||
<div class="photos-upload-link"><a href="{{$order.1}}" title="{{$order.0}}">{{$order.0}}</a></div>
|
||||
{{if $can_post}}
|
||||
<div class="photos-upload-link" ><a href="{{$upload.1}}">{{$upload.0}}</a></div>
|
||||
<div class="photos-upload-link"><a href="{{$upload.1}}">{{$upload.0}}</a></div>
|
||||
{{/if}}
|
||||
|
||||
{{foreach $photos as $photo}}
|
||||
<div class="photo-album-image-wrapper" id="photo-album-image-wrapper-{{$photo.id}}">
|
||||
<a href="{{$photo.link}}" class="photo-album-photo-link" id="photo-album-photo-link-{{$photo.id}}" title="{{$photo.title}}">
|
||||
<img src="{{$photo.src}}" alt="{{if $photo.album.name}}{{$photo.album.name}}{{elseif $photo.desc}}{{$photo.desc}}{{elseif $photo.alt}}{{$photo.alt}}{{else}}{{$photo.unknown}}{{/if}}" title="{{$photo.title}}" class="photo-album-photo lframe resize{{$photo.twist}}" id="photo-album-photo-{{$photo.id}}" />
|
||||
<p class='caption'>{{$photo.desc}}</p>
|
||||
<p class="caption" dir="auto">{{$photo.desc}}</p>
|
||||
</a>
|
||||
</div>
|
||||
<div class="photo-album-image-wrapper-end"></div>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<h3>{{$title}}</h3>
|
||||
<ul role="menubar" class="sidebar-photos-albums-ul">
|
||||
<li role="menuitem" class="sidebar-photos-albums-li">
|
||||
<a href="{{$baseurl}}/photos/{{$nick}}" class="sidebar-photos-albums-element" title="{{$title}}" >{{$recent}}</a>
|
||||
<a href="{{$baseurl}}/photos/{{$nick}}" class="sidebar-photos-albums-element" title="{{$title}}">{{$recent}}</a>
|
||||
</li>
|
||||
|
||||
{{if $albums}}
|
||||
|
@ -19,6 +19,6 @@
|
|||
</ul>
|
||||
|
||||
{{if $can_post}}
|
||||
<div class="photos-upload-link" ><a href="{{$upload.1}}">{{$upload.0}}</a></div>
|
||||
<div class="photos-upload-link"><a href="{{$upload.1}}">{{$upload.0}}</a></div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<form action="photos/{{$nickname}}/image/{{$resource_id}}/edit" method="post" id="photo_edit_form" >
|
||||
<form action="photos/{{$nickname}}/image/{{$resource_id}}/edit" method="post" id="photo_edit_form">
|
||||
|
||||
<input type="hidden" name="item_id" value="{{$item_id}}" />
|
||||
<input type="hidden" name="origaname" value="{{$album.2}}" />
|
||||
|
@ -12,14 +12,14 @@
|
|||
{{include file="field_radio.tpl" field=$rotate_cw}}
|
||||
{{include file="field_radio.tpl" field=$rotate_ccw}}
|
||||
|
||||
<div id="photo-edit-perms" class="photo-edit-perms" >
|
||||
<div id="photo-edit-perms" class="photo-edit-perms">
|
||||
<a href="#photo-edit-perms-select" id="photo-edit-perms-menu" class="button popupbox" title="{{$permissions}}">
|
||||
<span id="jot-perms-icon" class="icon {{$lockstate}}" ></span>{{$permissions}}
|
||||
<span id="jot-perms-icon" class="icon {{$lockstate}}"></span>{{$permissions}}
|
||||
</a>
|
||||
<div id="photo-edit-perms-menu-end"></div>
|
||||
|
||||
<div style="display: none;">
|
||||
<div id="photo-edit-perms-select" >
|
||||
<div id="photo-edit-perms-select">
|
||||
{{$aclselect nofilter}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
<a href="{{$photo.link}}" class="photo-top-photo-link" id="photo-top-photo-link-{{$photo.id}}" title="{{$photo.title}}">
|
||||
<img src="{{$photo.src}}" alt="{{$photo.alt}}" title="{{$photo.title}}" class="photo-top-photo{{$photo.twist}}" id="photo-top-photo-{{$photo.id}}" />
|
||||
</a>
|
||||
<div class="photo-top-album-name"><a href="{{$photo.album.link}}" class="photo-top-album-link" title="{{$photo.album.alt}}" >{{$photo.album.name}}</a></div>
|
||||
<div class="photo-top-album-name"><a href="{{$photo.album.link}}" class="photo-top-album-link" title="{{$photo.album.alt}}">{{$photo.album.name}}</a></div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
|
||||
<div class="photos-upload-submit-wrapper" >
|
||||
<div class="photos-upload-submit-wrapper">
|
||||
<input type="submit" name="submit" value="{{$submit}}" id="photos-upload-submit" />
|
||||
</div>
|
||||
|
|
|
@ -3,10 +3,10 @@
|
|||
|
||||
<div id="photos-usage-message">{{$usage}}</div>
|
||||
|
||||
<form action="photos/{{$nickname}}" enctype="multipart/form-data" method="post" name="photos-upload-form" id="photos-upload-form" >
|
||||
<div id="photos-upload-new-wrapper" >
|
||||
<form action="photos/{{$nickname}}" enctype="multipart/form-data" method="post" name="photos-upload-form" id="photos-upload-form">
|
||||
<div id="photos-upload-new-wrapper">
|
||||
<div id="photos-upload-newalbum-div">
|
||||
<label id="photos-upload-newalbum-text" for="photos-upload-newalbum" >{{$newalbum}}</label>
|
||||
<label id="photos-upload-newalbum-text" for="photos-upload-newalbum">{{$newalbum}}</label>
|
||||
</div>
|
||||
<input id="photos-upload-newalbum" type="text" name="newalbum" />
|
||||
</div>
|
||||
|
@ -19,15 +19,15 @@
|
|||
</div>
|
||||
<div id="photos-upload-exist-end"></div>
|
||||
|
||||
<div id="photos-upload-noshare-div" class="photos-upload-noshare-div" >
|
||||
<div id="photos-upload-noshare-div" class="photos-upload-noshare-div">
|
||||
<input id="photos-upload-noshare" type="checkbox" name="not_visible" value="1" checked/>
|
||||
<label id="photos-upload-noshare-text" for="photos-upload-noshare" >{{$nosharetext}}</label>
|
||||
<label id="photos-upload-noshare-text" for="photos-upload-noshare">{{$nosharetext}}</label>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="photos-upload-perms" class="photos-upload-perms" >
|
||||
<div id="photos-upload-perms" class="photos-upload-perms">
|
||||
<a href="#photos-upload-permissions-wrapper" id="photos-upload-perms-menu" class="button popupbox" />
|
||||
<span id="jot-perms-icon" class="icon {{$lockstate}}" ></span>{{$permissions}}
|
||||
<span id="jot-perms-icon" class="icon {{$lockstate}}"></span>{{$permissions}}
|
||||
</a>
|
||||
</div>
|
||||
<div id="photos-upload-perms-end"></div>
|
||||
|
@ -45,6 +45,6 @@
|
|||
{{$default_upload_box nofilter}}
|
||||
{{$default_upload_submit nofilter}}
|
||||
|
||||
<div class="photos-upload-end" ></div>
|
||||
<div class="photos-upload-end"></div>
|
||||
</form>
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<label id="profile-publish-yes-label-{{$instance}}" for="profile-publish-yes-{{$instance}}">{{$str_yes}}</label>
|
||||
<input type="radio" name="profile_publish_{{$instance}}" id="profile-publish-yes-{{$instance}}" {{$yes_selected}} value="1" />
|
||||
|
||||
<div id="profile-publish-break-{{$instance}}" ></div>
|
||||
<div id="profile-publish-break-{{$instance}}"></div>
|
||||
</div>
|
||||
<div id="profile-publish-no-wrapper-{{$instance}}">
|
||||
<label id="profile-publish-no-label-{{$instance}}" for="profile-publish-no-{{$instance}}">{{$str_no}}</label>
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
<h3>{{$header}}</h3>
|
||||
|
||||
<div id="prvmail-wrapper" >
|
||||
<form id="prvmail-form" action="message" method="post" >
|
||||
<div id="prvmail-wrapper">
|
||||
<form id="prvmail-form" action="message" method="post">
|
||||
|
||||
{{$parent nofilter}}
|
||||
|
||||
|
@ -17,15 +17,15 @@
|
|||
<textarea rows="8" cols="72" class="prvmail-text" id="prvmail-text" name="body" tabindex="12">{{$text}}</textarea>
|
||||
|
||||
|
||||
<div id="prvmail-submit-wrapper" >
|
||||
<div id="prvmail-submit-wrapper">
|
||||
<input type="submit" id="prvmail-submit" name="submit" value="{{$submit}}" tabindex="13" />
|
||||
<div id="prvmail-upload-wrapper" >
|
||||
<div id="prvmail-upload" class="icon border camera" title="{{$upload}}" ></div>
|
||||
<div id="prvmail-upload-wrapper">
|
||||
<div id="prvmail-upload" class="icon border camera" title="{{$upload}}"></div>
|
||||
</div>
|
||||
<div id="prvmail-link-wrapper" >
|
||||
<div id="prvmail-link" class="icon border link" title="{{$insert}}" onclick="jotGetLink();" ></div>
|
||||
<div id="prvmail-link-wrapper">
|
||||
<div id="prvmail-link" class="icon border link" title="{{$insert}}" onclick="jotGetLink();"></div>
|
||||
</div>
|
||||
<div id="prvmail-rotator-wrapper" >
|
||||
<div id="prvmail-rotator-wrapper">
|
||||
<img id="prvmail-rotator" src="images/rotator.gif" alt="{{$wait}}" title="{{$wait}}" style="display: none;" />
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -13,40 +13,40 @@
|
|||
<p id="register-fill-ext">{{$fillext}}</p>
|
||||
|
||||
{{if $oidlabel}}
|
||||
<div id="register-openid-wrapper" >
|
||||
<label for="register-openid" id="label-register-openid" >{{$oidlabel}}</label><input type="text" maxlength="60" size="32" name="openid_url" class="openid" id="register-openid" value="{{$openid}}" >
|
||||
<div id="register-openid-wrapper">
|
||||
<label for="register-openid" id="label-register-openid">{{$oidlabel}}</label><input type="text" maxlength="60" size="32" name="openid_url" class="openid" id="register-openid" value="{{$openid}}">
|
||||
</div>
|
||||
<div id="register-openid-end" ></div>
|
||||
<div id="register-openid-end"></div>
|
||||
{{/if}}
|
||||
|
||||
{{if $invitations}}
|
||||
<p id="register-invite-desc">{{$invite_desc nofilter}}</p>
|
||||
<div id="register-invite-wrapper" >
|
||||
<label for="register-invite" id="label-register-invite" >{{$invite_label}}</label>
|
||||
<input type="text" maxlength="60" size="32" name="invite_id" id="register-invite" value="{{$invite_id}}" >
|
||||
<div id="register-invite-wrapper">
|
||||
<label for="register-invite" id="label-register-invite">{{$invite_label}}</label>
|
||||
<input type="text" maxlength="60" size="32" name="invite_id" id="register-invite" value="{{$invite_id}}">
|
||||
</div>
|
||||
<div id="register-name-end" ></div>
|
||||
<div id="register-name-end"></div>
|
||||
{{/if}}
|
||||
|
||||
<div id="register-name-wrapper" >
|
||||
<label for="register-name" id="label-register-name" >{{$namelabel}}</label>
|
||||
<div id="register-name-wrapper">
|
||||
<label for="register-name" id="label-register-name">{{$namelabel}}</label>
|
||||
<input type="text" maxlength="60" size="32" name="username" id="register-name" value="{{$username}}" required>
|
||||
</div>
|
||||
<div id="register-name-end" ></div>
|
||||
<div id="register-name-end"></div>
|
||||
|
||||
|
||||
{{if !$additional}}
|
||||
<div id="register-email-wrapper" >
|
||||
<label for="register-email" id="label-register-email" >{{$addrlabel}}</label>
|
||||
<div id="register-email-wrapper">
|
||||
<label for="register-email" id="label-register-email">{{$addrlabel}}</label>
|
||||
<input type="text" maxlength="60" size="32" name="field1" id="register-email" value="{{$email}}" required>
|
||||
</div>
|
||||
<div id="register-email-end" ></div>
|
||||
<div id="register-email-end"></div>
|
||||
|
||||
<div id="register-repeat-wrapper" >
|
||||
<label for="register-repeat" id="label-register-repeat" >{{$addrlabel2}}</label>
|
||||
<div id="register-repeat-wrapper">
|
||||
<label for="register-repeat" id="label-register-repeat">{{$addrlabel2}}</label>
|
||||
<input type="text" maxlength="60" size="32" name="repeat" id="register-repeat" value="" required>
|
||||
</div>
|
||||
<div id="register-repeat-end" ></div>
|
||||
<div id="register-repeat-end"></div>
|
||||
{{/if}}
|
||||
|
||||
{{if $ask_password}}
|
||||
|
@ -54,13 +54,13 @@
|
|||
{{include file="field_password.tpl" field=$password2}}
|
||||
{{/if}}
|
||||
|
||||
<p id="register-nickname-desc" >{{$nickdesc nofilter}}</p>
|
||||
<p id="register-nickname-desc">{{$nickdesc nofilter}}</p>
|
||||
|
||||
<div id="register-nickname-wrapper" >
|
||||
<label for="register-nickname" id="label-register-nickname" >{{$nicklabel}}</label>
|
||||
<div id="register-nickname-wrapper">
|
||||
<label for="register-nickname" id="label-register-nickname">{{$nicklabel}}</label>
|
||||
<input type="text" maxlength="60" size="32" name="nickname" id="register-nickname" value="{{$nickname}}" required><div id="register-sitename">@{{$sitename}}</div>
|
||||
</div>
|
||||
<div id="register-nickname-end" ></div>
|
||||
<div id="register-nickname-end"></div>
|
||||
|
||||
<input type="input" id=tarpit" name="email" style="display: none;" placeholder="Don't enter anything here"/>
|
||||
|
||||
|
@ -87,7 +87,7 @@
|
|||
<div id="register-submit-wrapper">
|
||||
<input type="submit" name="submit" id="register-submit-button" value="{{$regbutt}}" />
|
||||
</div>
|
||||
<div id="register-submit-end" ></div>
|
||||
<div id="register-submit-end"></div>
|
||||
|
||||
{{if !$additional}}
|
||||
<h3>{{$importh}}</h3>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
<div id="remove-account-desc">{{$desc nofilter}}</div>
|
||||
|
||||
<form action="{{$basedir}}/removeme" autocomplete="off" method="post" >
|
||||
<form action="{{$basedir}}/removeme" autocomplete="off" method="post">
|
||||
<input type="hidden" name="verify" value="{{$hash}}" />
|
||||
|
||||
<div id="remove-account-pass-wrapper">
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
</div>
|
||||
<div class="wall-item-content" id="wall-item-content-{{$item.id}}">
|
||||
<div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
|
||||
<div class="wall-item-title" id="wall-item-title-{{$item.id}}" dir="auto">{{$item.title}}</div>
|
||||
<div class="wall-item-title-end"></div>
|
||||
<div class="wall-item-body" id="wall-item-body-{{$item.id}}" dir="auto">{{$item.body_html nofilter}}</div>
|
||||
{{if $item.has_cats}}
|
||||
|
@ -56,9 +56,9 @@
|
|||
<div class="wall-item-wrapper-end"></div>
|
||||
|
||||
|
||||
<div class="wall-item-conv" id="wall-item-conv-{{$item.id}}">
|
||||
<div class="wall-item-conv" id="wall-item-conv-{{$item.id}}" dir="auto">
|
||||
{{if $item.conv}}
|
||||
<a href='{{$item.conv.href}}' id='context-{{$item.id}}' title='{{$item.conv.title}}'>{{$item.conv.title}}</a>
|
||||
<a href="{{$item.conv.href}}" id="context-{{$item.id}}" title="{{$item.conv.title}}">{{$item.conv.title}}</a>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
|
|
|
@ -2,4 +2,4 @@
|
|||
<div id="settings-nick-wrapper">
|
||||
<div id="settings-nickname-desc" class="info-message">{{$desc nofilter}}</div>
|
||||
</div>
|
||||
<div id="settings-nick-end" ></div>
|
||||
<div id="settings-nick-end"></div>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
{{include file="field_input.tpl" field=$redirect}}
|
||||
{{include file="field_input.tpl" field=$icon}}
|
||||
|
||||
<div class="settings-submit-wrapper" >
|
||||
<div class="settings-submit-wrapper">
|
||||
<input type="submit" name="submit" class="settings-submit" value="{{$submit}}" />
|
||||
<!-- <input type="submit" name="cancel" class="settings-submit" value="{{$cancel}}" /> -->
|
||||
</div>
|
||||
|
|
|
@ -1 +1 @@
|
|||
<script type="text/javascript" src="view/js/country.js?v={{$smarty.const.FRIENDICA_VERSION}}" ></script>
|
||||
<script type="text/javascript" src="view/js/country.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
|
@ -8,7 +8,7 @@
|
|||
<p><img src="{{$image_url}}" id="croppa" class="imgCrop" alt="{{$title}}"></p>
|
||||
</div>
|
||||
|
||||
<div id="cropimage-preview-wrapper" >
|
||||
<div id="cropimage-preview-wrapper">
|
||||
<div id="previewWrap" class="crop-preview"></div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<input type="hidden" name="form_security_token" value="{{$form_security_token}}">
|
||||
<div>{{$regenerate_message}}</div>
|
||||
|
||||
<div class="form-group pull-right settings-submit-wrapper" >
|
||||
<div class="form-group pull-right settings-submit-wrapper">
|
||||
<button type="submit" name="action" id="confirm-submit-button" class="btn btn-primary confirm-button" value="regenerate">{{$regenerate_label}}</button>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
{{include file="field_input.tpl" field=$verify_code}}
|
||||
|
||||
<div class="form-group settings-submit-wrapper" >
|
||||
<div class="form-group settings-submit-wrapper">
|
||||
<button type="submit" name="action" id="confirm-submit-button" class="btn btn-primary confirm-button" value="verify">{{$verify_label}}</button>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
|
||||
{{if $dropping}}
|
||||
<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
|
||||
<div id="item-delete-selected-icon" class="icon drophide" title="{{$dropping}}" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
|
||||
<div id="item-delete-selected-desc" >{{$dropping}}</div>
|
||||
<div id="item-delete-selected-icon" class="icon drophide" title="{{$dropping}}" onmouseover="imgbright(this);" onmouseout="imgdull(this);"></div>
|
||||
<div id="item-delete-selected-desc">{{$dropping}}</div>
|
||||
</div>
|
||||
<img id="item-delete-selected-rotator" class="like-rotator" src="images/rotator.gif" style="display: none;" />
|
||||
<div id="item-delete-selected-end"></div>
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
|
||||
<form action="uimport" method="post" id="uimport-form" enctype="multipart/form-data">
|
||||
<h1>{{$import.title}}</h1>
|
||||
<p>{{$import.intro}}</p>
|
||||
<p>{{$import.instruct}}</p>
|
||||
<p><b>{{$import.warn}}</b></p>
|
||||
{{include file="field_custom.tpl" field=$import.field}}
|
||||
|
||||
|
||||
<div id="register-submit-wrapper">
|
||||
<input type="submit" name="submit" id="register-submit-button" value="{{$regbutt}}" />
|
||||
</div>
|
||||
<div id="register-submit-end" ></div>
|
||||
</form>
|
||||
<form action="uimport" method="post" id="uimport-form" enctype="multipart/form-data">
|
||||
<h1>{{$import.title}}</h1>
|
||||
<p>{{$import.intro}}</p>
|
||||
<p>{{$import.instruct}}</p>
|
||||
<p><b>{{$import.warn}}</b></p>
|
||||
{{include file="field_custom.tpl" field=$import.field}}
|
||||
|
||||
|
||||
<div id="register-submit-wrapper">
|
||||
<input type="submit" name="submit" id="register-submit-button" value="{{$regbutt}}" />
|
||||
</div>
|
||||
<div id="register-submit-end"></div>
|
||||
</form>
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
<div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time><span class="pinned">{{$item.pinned}}</span></div>
|
||||
</div>
|
||||
<div class="wall-item-content" id="wall-item-content-{{$item.id}}">
|
||||
<div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
|
||||
<div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}" dir="auto">{{$item.title}}</div>
|
||||
<div class="wall-item-title-end"></div>
|
||||
<div class="wall-item-body" id="wall-item-body-{{$item.id}}">
|
||||
<span class="e-content" dir="auto">{{$item.body_html nofilter}}<span>
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
<h4>{{$subheader}}</h4>
|
||||
|
||||
<div id="prvmail-wrapper" >
|
||||
<form id="prvmail-form" action="wallmessage/{{$nickname}}" method="post" >
|
||||
<div id="prvmail-wrapper">
|
||||
<form id="prvmail-form" action="wallmessage/{{$nickname}}" method="post">
|
||||
|
||||
{{$parent nofilter}}
|
||||
|
||||
|
@ -19,12 +19,12 @@
|
|||
<textarea rows="8" cols="72" class="prvmail-text" id="prvmail-text" name="body" tabindex="12">{{$text}}</textarea>
|
||||
|
||||
|
||||
<div id="prvmail-submit-wrapper" >
|
||||
<div id="prvmail-submit-wrapper">
|
||||
<input type="submit" id="prvmail-submit" name="submit" value="Submit" tabindex="13" />
|
||||
<div id="prvmail-link-wrapper" >
|
||||
<div id="prvmail-link" class="icon border link" title="{{$insert}}" onclick="jotGetLink();" ></div>
|
||||
<div id="prvmail-link-wrapper">
|
||||
<div id="prvmail-link" class="icon border link" title="{{$insert}}" onclick="jotGetLink();"></div>
|
||||
</div>
|
||||
<div id="prvmail-rotator-wrapper" >
|
||||
<div id="prvmail-rotator-wrapper">
|
||||
<img id="prvmail-rotator" src="images/rotator.gif" alt="{{$wait}}" title="{{$wait}}" style="display: none;" />
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<h3>{{$etitle}}</h3>
|
||||
|
||||
<ul class="sidebar-calendar-export-ul">
|
||||
<li role="menuitem" class="sidebar-calendar-export-li"><a href="{{$baseurl}}/cal/{{$user}}/export/ical" >{{$export_ical}}</a></li>
|
||||
<li role="menuitem" class="sidebar-calendar-export-li"><a href="{{$baseurl}}/cal/{{$user}}/export/csv" >{{$export_csv}}</a></li>
|
||||
<li role="menuitem" class="sidebar-calendar-export-li"><a href="{{$baseurl}}/cal/{{$user}}/export/ical">{{$export_ical}}</a></li>
|
||||
<li role="menuitem" class="sidebar-calendar-export-li"><a href="{{$baseurl}}/cal/{{$user}}/export/csv">{{$export_csv}}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<div id="follow-sidebar" class="widget">
|
||||
<h3>{{$connect}}</h3>
|
||||
<div id="connect-desc">{{$desc nofilter}}</div>
|
||||
<form action="follow" method="get" >
|
||||
<form action="follow" method="get">
|
||||
<input id="side-follow-url" type="text" name="url" value="{{$value}}" size="24" placeholder="{{$hint}}" title="{{$hint}}" /><input id="side-follow-submit" type="submit" name="submit" value="{{$follow}}" />
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
<form action="dirfind" method="get" />
|
||||
<input id="side-peoplefind-url" type="text" name="search" size="24" title="{{$nv.hint}}" /><input id="side-peoplefind-submit" type="submit" name="submit" value="{{$nv.findthem}}" />
|
||||
</form>
|
||||
<div class="side-link" id="side-match-link"><a href="match" >{{$nv.similar}}</a></div>
|
||||
<div class="side-link" id="side-suggest-link"><a href="suggest" >{{$nv.suggest}}</a></div>
|
||||
<div class="side-link" id="side-directory-link"><a href="directory" >{{$nv.local_directory}}</a></div>
|
||||
<div class="side-link" id="side-directory-link"><a href="{{$nv.global_dir}}" target="extlink" >{{$nv.directory}}</a></div>
|
||||
<div class="side-link" id="side-random-profile-link" ><a href="randprof" target="extlink" >{{$nv.random}}</a></div>
|
||||
<div class="side-link" id="side-match-link"><a href="match">{{$nv.similar}}</a></div>
|
||||
<div class="side-link" id="side-suggest-link"><a href="suggest">{{$nv.suggest}}</a></div>
|
||||
<div class="side-link" id="side-directory-link"><a href="directory">{{$nv.local_directory}}</a></div>
|
||||
<div class="side-link" id="side-directory-link"><a href="{{$nv.global_dir}}" target="extlink">{{$nv.directory}}</a></div>
|
||||
<div class="side-link" id="side-random-profile-link"><a href="randprof" target="extlink">{{$nv.random}}</a></div>
|
||||
{{if $nv.inv}}
|
||||
<div class="side-link" id="side-invite-link" ><a href="invite" >{{$nv.inv}}</a></div>
|
||||
<div class="side-link" id="side-invite-link"><a href="invite">{{$nv.inv}}</a></div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ function showHideForumlist() {
|
|||
<a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
|
||||
<img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
|
||||
</a>
|
||||
<a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}" >{{$forum.name}}</a>
|
||||
<a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
|
@ -37,7 +37,7 @@ function showHideForumlist() {
|
|||
<a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
|
||||
<img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
|
||||
</a>
|
||||
<a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}" >{{$forum.name}}</a>
|
||||
<a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{/foreach}}
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
data-role="insert-formatting" data-bbcode="video" data-id="{{$id}}"></a></li>
|
||||
</ul>
|
||||
<div class="comment-edit-bb-end"></div>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty" name="body" placeholder="{{$comment}}" onFocus="commentOpen(this,{{$id}});cmtBbOpen(this, {{$id}});" onBlur="commentClose(this,{{$id}});cmtBbClose(this,{{$id}});">{{if $threaded != false}}{{$default}}{{/if}}</textarea>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty" name="body" placeholder="{{$comment}}" onFocus="commentOpen(this,{{$id}});cmtBbOpen(this, {{$id}});" onBlur="commentClose(this,{{$id}});cmtBbClose(this,{{$id}});" dir="auto">{{if $threaded != false}}{{$default}}{{/if}}</textarea>
|
||||
{{if $qcomment}}
|
||||
<select id="qcomment-select-{{$id}}" name="qcomment-{{$id}}" class="qcomment" onchange="qCommentInsert(this,{{$id}});">
|
||||
<option value=""></option>
|
||||
|
|
|
@ -4,41 +4,41 @@
|
|||
|
||||
<div id="site-location">{{$sitelocation}}</div>
|
||||
|
||||
{{if $nav.logout}}<a id="nav-logout-link" class="nav-link {{$nav.logout.2}}" href="{{$nav.logout.0}}" title="{{$nav.logout.3}}" >{{$nav.logout.1}}</a> {{/if}}
|
||||
{{if $nav.login}}<a id="nav-login-link" class="nav-login-link {{$nav.login.2}}" href="{{$nav.login.0}}" title="{{$nav.login.3}}" >{{$nav.login.1}}</a> {{/if}}
|
||||
{{if $nav.logout}}<a id="nav-logout-link" class="nav-link {{$nav.logout.2}}" href="{{$nav.logout.0}}" title="{{$nav.logout.3}}">{{$nav.logout.1}}</a> {{/if}}
|
||||
{{if $nav.login}}<a id="nav-login-link" class="nav-login-link {{$nav.login.2}}" href="{{$nav.login.0}}" title="{{$nav.login.3}}">{{$nav.login.1}}</a> {{/if}}
|
||||
|
||||
<span id="nav-link-wrapper" >
|
||||
<span id="nav-link-wrapper">
|
||||
|
||||
{{if $nav.register}}<a id="nav-register-link" class="nav-commlink {{$nav.register.2}} {{$sel.register}}" href="{{$nav.register.0}}" title="{{$nav.register.3}}" >{{$nav.register.1}}</a>{{/if}}
|
||||
{{if $nav.register}}<a id="nav-register-link" class="nav-commlink {{$nav.register.2}} {{$sel.register}}" href="{{$nav.register.0}}" title="{{$nav.register.3}}">{{$nav.register.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.help}} <a id="nav-help-link" class="nav-link {{$nav.help.2}}" target="friendica-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}" >{{$nav.help.1}}</a>{{/if}}
|
||||
{{if $nav.help}} <a id="nav-help-link" class="nav-link {{$nav.help.2}}" target="friendica-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}">{{$nav.help.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.tos}} <a id="nav-tos-link" class="nav-link {{$nav.tos.2}}" href="{{$nav.tos.0}}" title="{{$nav.tos.3}}" >{{$nav.tos.1}}</a>{{/if}}
|
||||
{{if $nav.tos}} <a id="nav-tos-link" class="nav-link {{$nav.tos.2}}" href="{{$nav.tos.0}}" title="{{$nav.tos.3}}">{{$nav.tos.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.apps}}<a id="nav-apps-link" class="nav-link {{$nav.apps.2}}" href="{{$nav.apps.0}}" title="{{$nav.apps.3}}" >{{$nav.apps.1}}</a>{{/if}}
|
||||
{{if $nav.apps}}<a id="nav-apps-link" class="nav-link {{$nav.apps.2}}" href="{{$nav.apps.0}}" title="{{$nav.apps.3}}">{{$nav.apps.1}}</a>{{/if}}
|
||||
|
||||
<a accesskey="s" id="nav-search-link" class="nav-link {{$nav.search.2}}" href="{{$nav.search.0}}" title="{{$nav.search.3}}" >{{$nav.search.1}}</a>
|
||||
<a id="nav-directory-link" class="nav-link {{$nav.directory.2}}" href="{{$nav.directory.0}}" title="{{$nav.directory.3}}" >{{$nav.directory.1}}</a>
|
||||
<a accesskey="s" id="nav-search-link" class="nav-link {{$nav.search.2}}" href="{{$nav.search.0}}" title="{{$nav.search.3}}">{{$nav.search.1}}</a>
|
||||
<a id="nav-directory-link" class="nav-link {{$nav.directory.2}}" href="{{$nav.directory.0}}" title="{{$nav.directory.3}}">{{$nav.directory.1}}</a>
|
||||
|
||||
{{if $nav.admin}}<a accesskey="a" id="nav-admin-link" class="nav-link {{$nav.admin.2}}" href="{{$nav.admin.0}}" title="{{$nav.admin.3}}" >{{$nav.admin.1}}</a>{{/if}}
|
||||
{{if $nav.admin}}<a accesskey="a" id="nav-admin-link" class="nav-link {{$nav.admin.2}}" href="{{$nav.admin.0}}" title="{{$nav.admin.3}}">{{$nav.admin.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.network}}
|
||||
<a accesskey="n" id="nav-network-link" class="nav-commlink {{$nav.network.2}} {{$sel.network}}" href="{{$nav.network.0}}" title="{{$nav.network.3}}" >{{$nav.network.1}}</a>
|
||||
<a accesskey="n" id="nav-network-link" class="nav-commlink {{$nav.network.2}} {{$sel.network}}" href="{{$nav.network.0}}" title="{{$nav.network.3}}">{{$nav.network.1}}</a>
|
||||
<span id="net-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
{{if $nav.home}}
|
||||
<a accesskey="p" id="nav-home-link" class="nav-commlink {{$nav.home.2}} {{$sel.home}}" href="{{$nav.home.0}}" title="{{$nav.home.3}}" >{{$nav.home.1}}</a>
|
||||
<a accesskey="p" id="nav-home-link" class="nav-commlink {{$nav.home.2}} {{$sel.home}}" href="{{$nav.home.0}}" title="{{$nav.home.3}}">{{$nav.home.1}}</a>
|
||||
<span id="home-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
{{if $nav.community}}
|
||||
<a accesskey="c" id="nav-community-link" class="nav-commlink {{$nav.community.2}} {{$sel.community}}" href="{{$nav.community.0}}" title="{{$nav.community.3}}" >{{$nav.community.1}}</a>
|
||||
<a accesskey="c" id="nav-community-link" class="nav-commlink {{$nav.community.2}} {{$sel.community}}" href="{{$nav.community.0}}" title="{{$nav.community.3}}">{{$nav.community.1}}</a>
|
||||
{{/if}}
|
||||
{{if $nav.introductions}}
|
||||
<a id="nav-notification-link" class="nav-commlink {{$nav.introductions.2}} {{$sel.introductions}}" href="{{$nav.introductions.0}}" title="{{$nav.introductions.3}}" >{{$nav.introductions.1}}</a>
|
||||
<a id="nav-notification-link" class="nav-commlink {{$nav.introductions.2}} {{$sel.introductions}}" href="{{$nav.introductions.0}}" title="{{$nav.introductions.3}}">{{$nav.introductions.1}}</a>
|
||||
<span id="intro-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
{{if $nav.messages}}
|
||||
<a id="nav-messages-link" class="nav-commlink {{$nav.messages.2}} {{$sel.messages}}" href="{{$nav.messages.0}}" title="{{$nav.messages.3}}" >{{$nav.messages.1}}</a>
|
||||
<a id="nav-messages-link" class="nav-commlink {{$nav.messages.2}} {{$sel.messages}}" href="{{$nav.messages.0}}" title="{{$nav.messages.3}}">{{$nav.messages.1}}</a>
|
||||
<span id="mail-update" class="nav-ajax-left"></span>
|
||||
{{/if}}
|
||||
|
||||
|
@ -57,9 +57,9 @@
|
|||
{{/if}}
|
||||
|
||||
{{if $nav.settings}}<a id="nav-settings-link" class="nav-link {{$nav.settings.2}}" href="{{$nav.settings.0}}" title="{{$nav.settings.3}}">{{$nav.settings.1}}</a>{{/if}}
|
||||
{{if $nav.profiles}}<a id="nav-profiles-link" class="nav-link {{$nav.profiles.2}}" href="{{$nav.profiles.0}}" title="{{$nav.profiles.3}}" >{{$nav.profiles.1}}</a>{{/if}}
|
||||
{{if $nav.profiles}}<a id="nav-profiles-link" class="nav-link {{$nav.profiles.2}}" href="{{$nav.profiles.0}}" title="{{$nav.profiles.3}}">{{$nav.profiles.1}}</a>{{/if}}
|
||||
|
||||
{{if $nav.contacts}}<a id="nav-contacts-link" class="nav-link {{$nav.contacts.2}}" href="{{$nav.contacts.0}}" title="{{$nav.contacts.3}}" >{{$nav.contacts.1}}</a>{{/if}}
|
||||
{{if $nav.contacts}}<a id="nav-contacts-link" class="nav-link {{$nav.contacts.2}}" href="{{$nav.contacts.0}}" title="{{$nav.contacts.3}}">{{$nav.contacts.1}}</a>{{/if}}
|
||||
|
||||
|
||||
{{if $nav.delegation}}<a id="nav-delegation-link" class="nav-link {{$nav.delegation.2}} {{$sel.delegation}}" href="{{$nav.delegation.0}}" title="{{$nav.delegation.3}}">{{$nav.delegation.1}}</a>{{/if}}
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
{{foreach $users as $u}}
|
||||
<tr>
|
||||
<td><img class="avatar-nano" src="{{$u.micro}}" title="{{$u.nickname}}"></td>
|
||||
<td><a href="{{$u.url}}" title="{{$u.nickname}}" >{{$u.name}}</a></td>
|
||||
<td><a href="{{$u.url}}" title="{{$u.nickname}}">{{$u.name}}</a></td>
|
||||
<td>{{$u.email}}</td>
|
||||
<td>{{$u.deleted}}</td>
|
||||
</tr>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<div id="photo-album-edit-wrapper">
|
||||
<form name="photo-album-edit-form" id="photo-album-edit-form" action="photos/{{$nickname}}/album/{{$hexalbum}}" method="post" >
|
||||
<label id="photo-album-edit-name-label" for="photo-album-edit-name" >{{$nametext}}</label>
|
||||
<form name="photo-album-edit-form" id="photo-album-edit-form" action="photos/{{$nickname}}/album/{{$hexalbum}}" method="post">
|
||||
<label id="photo-album-edit-name-label" for="photo-album-edit-name">{{$nametext}}</label>
|
||||
<div class="pull-left photo-album-edit-name">
|
||||
<input class="form-control" type="text" size="64" name="albumname" value="{{$album}}" id="photo-album-edit-name">
|
||||
</div>
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty form-control text-autosize" name="body" placeholder="{{$comment}}" rows="3" data-default="{{$default}}">{{$default}}</textarea>
|
||||
<textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty form-control text-autosize" name="body" placeholder="{{$comment}}" rows="3" data-default="{{$default}}" dir="auto">{{$default}}</textarea>
|
||||
</p>
|
||||
{{if $qcomment}}
|
||||
<p>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<form action="{{$confirm_url}}" id="confirm-form" method="{{$method}}" class="generic-page-wrapper">
|
||||
<div id="confirm-message">{{$message}}</div>
|
||||
|
||||
<div class="form-group pull-right settings-submit-wrapper" >
|
||||
<div class="form-group pull-right settings-submit-wrapper">
|
||||
<button type="submit" name="{{$confirm_name}}" id="confirm-submit-button" class="btn btn-primary confirm-button" value="{{$confirm}}">{{$confirm}}</button>
|
||||
<button type="submit" name="canceled" id="confirm-cancel-button" class="btn confirm-button" data-dismiss="modal">{{$cancel}}</button>
|
||||
</div>
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue