mirror of
https://github.com/friendica/friendica
synced 2024-12-23 15:20:17 +00:00
Merge branch 'master' of https://github.com/friendica/friendica
This commit is contained in:
commit
4bd70c15db
65 changed files with 13679 additions and 1188 deletions
50
boot.php
50
boot.php
|
@ -11,7 +11,7 @@ require_once('include/cache.php');
|
|||
require_once('library/Mobile_Detect/Mobile_Detect.php');
|
||||
|
||||
define ( 'FRIENDICA_PLATFORM', 'Friendica');
|
||||
define ( 'FRIENDICA_VERSION', '3.0.1518' );
|
||||
define ( 'FRIENDICA_VERSION', '3.0.1523' );
|
||||
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
|
||||
define ( 'DB_UPDATE_VERSION', 1156 );
|
||||
|
||||
|
@ -361,17 +361,26 @@ if(! class_exists('App')) {
|
|||
|
||||
// Allow themes to control internal parameters
|
||||
// by changing App values in theme.php
|
||||
//
|
||||
// Possibly should make these part of the plugin
|
||||
// system, but it seems like overkill to invoke
|
||||
// all the plugin machinery just to change a couple
|
||||
// of values
|
||||
|
||||
public $sourcename = '';
|
||||
public $videowidth = 425;
|
||||
public $videoheight = 350;
|
||||
public $force_max_items = 0;
|
||||
public $theme_thread_allow = true;
|
||||
|
||||
// An array for all theme-controllable parameters
|
||||
// Mostly unimplemented yet. Only options 'stylesheet' and
|
||||
// beyond are used.
|
||||
|
||||
public $theme = array(
|
||||
'sourcename' => '',
|
||||
'videowidth' => 425,
|
||||
'videoheight' => 350,
|
||||
'force_max_items' => 0,
|
||||
'thread_allow' => true,
|
||||
'stylesheet' => ''
|
||||
);
|
||||
|
||||
private $scheme;
|
||||
private $hostname;
|
||||
private $baseurl;
|
||||
|
@ -580,6 +589,13 @@ if(! class_exists('App')) {
|
|||
$interval = 40000;
|
||||
|
||||
$this->page['title'] = $this->config['sitename'];
|
||||
|
||||
/* put the head template at the beginning of page['htmlhead']
|
||||
* since the code added by the modules frequently depends on it
|
||||
* being first
|
||||
*/
|
||||
if(!isset($this->page['htmlhead']))
|
||||
$this->page['htmlhead'] = '';
|
||||
$tpl = get_markup_template('head.tpl');
|
||||
$this->page['htmlhead'] = replace_macros($tpl,array(
|
||||
'$baseurl' => $this->get_baseurl(), // FIXME for z_path!!!!
|
||||
|
@ -590,14 +606,16 @@ if(! class_exists('App')) {
|
|||
'$showmore' => t('show more'),
|
||||
'$showfewer' => t('show fewer'),
|
||||
'$update_interval' => $interval
|
||||
));
|
||||
)) . $this->page['htmlhead'];
|
||||
}
|
||||
|
||||
function init_page_end() {
|
||||
if(!isset($this->page['end']))
|
||||
$this->page['end'] = '';
|
||||
$tpl = get_markup_template('end.tpl');
|
||||
$this->page['end'] = replace_macros($tpl,array(
|
||||
'$baseurl' => $this->get_baseurl() // FIXME for z_path!!!!
|
||||
));
|
||||
)) . $this->page['end'];
|
||||
}
|
||||
|
||||
function set_curl_code($code) {
|
||||
|
@ -917,6 +935,7 @@ if(! function_exists('login')) {
|
|||
|
||||
$tpl = get_markup_template("login.tpl");
|
||||
$_SESSION['return_url'] = $a->query_string;
|
||||
$a->module = 'login';
|
||||
}
|
||||
|
||||
|
||||
|
@ -928,6 +947,7 @@ if(! function_exists('login')) {
|
|||
|
||||
'$lname' => array('username', t('Nickname or Email address: ') , '', ''),
|
||||
'$lpassword' => array('password', t('Password: '), '', ''),
|
||||
'$lremember' => array('remember', t('Remember me'), 0, ''),
|
||||
|
||||
'$openid' => !$noid,
|
||||
'$lopenid' => array('openid_url', t('Or login using OpenID: '),'',''),
|
||||
|
@ -989,6 +1009,13 @@ if(! function_exists('remote_user')) {
|
|||
// a page is loaded. Usually used for errors or alerts.
|
||||
|
||||
if(! function_exists('notice')) {
|
||||
/**
|
||||
* Show an error message to user.
|
||||
*
|
||||
* This function save text in session, to be shown to the user at next page load
|
||||
*
|
||||
* @param string $s - Text of notice
|
||||
*/
|
||||
function notice($s) {
|
||||
$a = get_app();
|
||||
if(! x($_SESSION,'sysmsg')) $_SESSION['sysmsg'] = array();
|
||||
|
@ -997,6 +1024,13 @@ if(! function_exists('notice')) {
|
|||
}
|
||||
}
|
||||
if(! function_exists('info')) {
|
||||
/**
|
||||
* Show an info message to user.
|
||||
*
|
||||
* This function save text in session, to be shown to the user at next page load
|
||||
*
|
||||
* @param string $s - Text of notice
|
||||
*/
|
||||
function info($s) {
|
||||
$a = get_app();
|
||||
if(! x($_SESSION,'sysmsg_info')) $_SESSION['sysmsg_info'] = array();
|
||||
|
|
|
@ -73,5 +73,7 @@ You can export a copy of your personal data in XML format from the "Export perso
|
|||
|
||||
* [Groups and Privacy](help/Groups-and-Privacy)
|
||||
|
||||
* [Move Account](help/Move-Account)
|
||||
|
||||
* [Remove Account](help/Remove-Account)
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ Friendica Documentation and Resources
|
|||
* [Groups and Privacy](help/Groups-and-Privacy)
|
||||
* [Tags and Mentions](help/Tags-and-Mentions)
|
||||
* [Pages](help/Pages)
|
||||
* [Move Account](help/Move-Account)
|
||||
* [Remove Account](help/Remove-Account)
|
||||
* [Bugs and Issues](help/Bugs-and-Issues)
|
||||
|
||||
|
|
33
doc/Move-Account.md
Normal file
33
doc/Move-Account.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Move Account
|
||||
============
|
||||
|
||||
* [Home](help)
|
||||
|
||||
|
||||
! **this is an experimental feature**
|
||||
|
||||
** How to move an account between servers **
|
||||
|
||||
Go to "Settings" -> "[Export personal data](uexport)"
|
||||
Click on "Export account" to save your account data.
|
||||
This file contains your details, your contacts, groups, and personal settings.
|
||||
It contains also your secret keys to authenticate yourself to your contacts:
|
||||
**save this file in a secure place**!
|
||||
|
||||
Go to your new server, and open *http://newserver.com/uimport* (there is not a
|
||||
direct link to this page at the moment).
|
||||
|
||||
Load your saved account file and click "Import".
|
||||
|
||||
Friendica will recreate your account on new server, with your contacts and groups.
|
||||
A message is sent to Friendica contacts, to inform them about your move: if your
|
||||
contacts are runnning on an updated server, automatically your details on their
|
||||
side will be updated.
|
||||
Contacts on Statusnet/Identi.ca or Diaspora will be archived, as we can't inform
|
||||
them about your move.
|
||||
You should ask them to remove your contact from their lists and readd you, and you
|
||||
should do the same with their contact.
|
||||
|
||||
After the move, the account on the old server will not work reliably anymore, and
|
||||
should be not used.
|
||||
|
|
@ -590,6 +590,12 @@ function probe_url($url, $mode = PROBE_NORMAL) {
|
|||
|
||||
$check_feed = false;
|
||||
|
||||
if(stristr($url,'tumblr.com') && (! stristr($url,'/rss'))) {
|
||||
$poll = $url . '/rss';
|
||||
$check_feed = true;
|
||||
// Will leave it to others to figure out how to grab the avatar, which is on the $url page in the open graph meta links
|
||||
}
|
||||
|
||||
if($twitter || ! $poll)
|
||||
$check_feed = true;
|
||||
if((! isset($vcard)) || (! x($vcard,'fn')) || (! $profile))
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
|
||||
require_once('include/security.php');
|
||||
require_once('include/datetime.php');
|
||||
|
||||
function nuke_session() {
|
||||
unset($_SESSION['authenticated']);
|
||||
|
@ -68,7 +69,18 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p
|
|||
goaway(z_root());
|
||||
}
|
||||
|
||||
authenticate_success($r[0]);
|
||||
// Make sure to refresh the last login time for the user if the user
|
||||
// stays logged in for a long time, e.g. with "Remember Me"
|
||||
$login_refresh = false;
|
||||
if(! x($_SESSION['last_login_date'])) {
|
||||
$_SESSION['last_login_date'] = datetime_convert('UTC','UTC');
|
||||
}
|
||||
if( strcmp(datetime_convert('UTC','UTC','now - 12 hours'), $_SESSION['last_login_date']) > 0 ) {
|
||||
|
||||
$_SESSION['last_login_date'] = datetime_convert('UTC','UTC');
|
||||
$login_refresh = true;
|
||||
}
|
||||
authenticate_success($r[0], false, false, $login_refresh);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
@ -162,8 +174,36 @@ else {
|
|||
goaway(z_root());
|
||||
}
|
||||
|
||||
// If the user specified to remember the authentication, then change the cookie
|
||||
// to expire after one year (the default is when the browser is closed).
|
||||
// If the user did not specify to remember, change the cookie to expire when the
|
||||
// browser is closed. The reason this is necessary is because if the user
|
||||
// specifies to remember, then logs out and logs back in without specifying to
|
||||
// remember, the old "remember" cookie may remain and prevent the session from
|
||||
// expiring when the browser is closed.
|
||||
//
|
||||
// It seems like I should be able to test for the old cookie, but for some reason when
|
||||
// I read the lifetime value from session_get_cookie_params(), I always get '0'
|
||||
// (i.e. expire when the browser is closed), even when there's a time expiration
|
||||
// on the cookie
|
||||
if($_POST['remember']) {
|
||||
$old_sid = session_id();
|
||||
session_set_cookie_params('31449600'); // one year
|
||||
session_regenerate_id(false);
|
||||
|
||||
q("UPDATE session SET sid = '%s' WHERE sid = '%s'", dbesc(session_id()), dbesc($old_sid));
|
||||
}
|
||||
else {
|
||||
$old_sid = session_id();
|
||||
session_set_cookie_params('0');
|
||||
session_regenerate_id(false);
|
||||
|
||||
q("UPDATE session SET sid = '%s' WHERE sid = '%s'", dbesc(session_id()), dbesc($old_sid));
|
||||
}
|
||||
|
||||
// if we haven't failed up this point, log them in.
|
||||
|
||||
$_SESSION['last_login_date'] = datetime_convert('UTC','UTC');
|
||||
authenticate_success($record, true, true);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -865,11 +865,15 @@ function format_like($cnt,$arr,$type,$id) {
|
|||
$total = count($arr);
|
||||
if($total >= MAX_LIKERS)
|
||||
$arr = array_slice($arr, 0, MAX_LIKERS - 1);
|
||||
if($total < MAX_LIKERS)
|
||||
$arr[count($arr)-1] = t('and') . ' ' . $arr[count($arr)-1];
|
||||
$str = implode(', ', $arr);
|
||||
if($total >= MAX_LIKERS)
|
||||
if($total < MAX_LIKERS) {
|
||||
$last = t('and') . ' ' . $arr[count($arr)-1];
|
||||
$arr2 = array_slice($arr, 0, -1);
|
||||
$str = implode(', ', $arr2) . ' ' . $last;
|
||||
}
|
||||
if($total >= MAX_LIKERS) {
|
||||
$str = implode(', ', $arr);
|
||||
$str .= sprintf( t(', and %d other people'), $total - MAX_LIKERS );
|
||||
}
|
||||
$str = (($type === 'like') ? sprintf( t('%s like this.'), $str) : sprintf( t('%s don\'t like this.'), $str));
|
||||
$o .= "\t" . '<div id="' . $type . 'list-' . $id . '" style="display: none;" >' . $str . '</div>';
|
||||
}
|
||||
|
|
|
@ -294,34 +294,147 @@ function onepoll_run(&$argv, &$argc){
|
|||
$metas = email_msg_meta($mbox,implode(',',$msgs));
|
||||
if(count($metas) != count($msgs)) {
|
||||
logger("onepoll: for " . $mailconf[0]['user'] . " there are ". count($msgs) . " messages but received " . count($metas) . " metas", LOGGER_DEBUG);
|
||||
break;
|
||||
}
|
||||
$msgs = array_combine($msgs, $metas);
|
||||
else {
|
||||
$msgs = array_combine($msgs, $metas);
|
||||
|
||||
foreach($msgs as $msg_uid => $meta) {
|
||||
logger("Mail: Parsing mail ".$msg_uid, LOGGER_DATA);
|
||||
foreach($msgs as $msg_uid => $meta) {
|
||||
logger("Mail: Parsing mail ".$msg_uid, LOGGER_DATA);
|
||||
|
||||
$datarray = array();
|
||||
// $meta = email_msg_meta($mbox,$msg_uid);
|
||||
// $headers = email_msg_headers($mbox,$msg_uid);
|
||||
$datarray = array();
|
||||
// $meta = email_msg_meta($mbox,$msg_uid);
|
||||
// $headers = email_msg_headers($mbox,$msg_uid);
|
||||
|
||||
$datarray['uri'] = msgid2iri(trim($meta->message_id,'<>'));
|
||||
$datarray['uri'] = msgid2iri(trim($meta->message_id,'<>'));
|
||||
|
||||
// Have we seen it before?
|
||||
$r = q("SELECT * FROM `item` WHERE `uid` = %d AND `uri` = '%s' LIMIT 1",
|
||||
intval($importer_uid),
|
||||
dbesc($datarray['uri'])
|
||||
);
|
||||
// Have we seen it before?
|
||||
$r = q("SELECT * FROM `item` WHERE `uid` = %d AND `uri` = '%s' LIMIT 1",
|
||||
intval($importer_uid),
|
||||
dbesc($datarray['uri'])
|
||||
);
|
||||
|
||||
if(count($r)) {
|
||||
logger("Mail: Seen before ".$msg_uid." for ".$mailconf[0]['user'],LOGGER_DEBUG);
|
||||
if($meta->deleted && ! $r[0]['deleted']) {
|
||||
q("UPDATE `item` SET `deleted` = 1, `changed` = '%s' WHERE `id` = %d LIMIT 1",
|
||||
dbesc(datetime_convert()),
|
||||
intval($r[0]['id'])
|
||||
);
|
||||
if(count($r)) {
|
||||
logger("Mail: Seen before ".$msg_uid." for ".$mailconf[0]['user'],LOGGER_DEBUG);
|
||||
if($meta->deleted && ! $r[0]['deleted']) {
|
||||
q("UPDATE `item` SET `deleted` = 1, `changed` = '%s' WHERE `id` = %d LIMIT 1",
|
||||
dbesc(datetime_convert()),
|
||||
intval($r[0]['id'])
|
||||
);
|
||||
}
|
||||
/*switch ($mailconf[0]['action']) {
|
||||
case 0:
|
||||
logger("Mail: Seen before ".$msg_uid." for ".$mailconf[0]['user'].". Doing nothing.", LOGGER_DEBUG);
|
||||
break;
|
||||
case 1:
|
||||
logger("Mail: Deleting ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
imap_delete($mbox, $msg_uid, FT_UID);
|
||||
break;
|
||||
case 2:
|
||||
logger("Mail: Mark as seen ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
|
||||
break;
|
||||
case 3:
|
||||
logger("Mail: Moving ".$msg_uid." to ".$mailconf[0]['movetofolder']." for ".$mailconf[0]['user']);
|
||||
imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
|
||||
if ($mailconf[0]['movetofolder'] != "")
|
||||
imap_mail_move($mbox, $msg_uid, $mailconf[0]['movetofolder'], FT_UID);
|
||||
break;
|
||||
}*/
|
||||
continue;
|
||||
}
|
||||
/*switch ($mailconf[0]['action']) {
|
||||
|
||||
|
||||
// look for a 'references' or an 'in-reply-to' header and try to match with a parent item we have locally.
|
||||
|
||||
// $raw_refs = ((x($headers,'references')) ? str_replace("\t",'',$headers['references']) : '');
|
||||
$raw_refs = ((property_exists($meta,'references')) ? str_replace("\t",'',$meta->references) : '');
|
||||
if(! trim($raw_refs))
|
||||
$raw_refs = ((property_exists($meta,'in_reply_to')) ? str_replace("\t",'',$meta->in_reply_to) : '');
|
||||
$raw_refs = trim($raw_refs); // Don't allow a blank reference in $refs_arr
|
||||
|
||||
if($raw_refs) {
|
||||
$refs_arr = explode(' ', $raw_refs);
|
||||
if(count($refs_arr)) {
|
||||
for($x = 0; $x < count($refs_arr); $x ++)
|
||||
$refs_arr[$x] = "'" . msgid2iri(str_replace(array('<','>',' '),array('','',''),dbesc($refs_arr[$x]))) . "'";
|
||||
}
|
||||
$qstr = implode(',',$refs_arr);
|
||||
$r = q("SELECT `uri` , `parent-uri` FROM `item` WHERE `uri` IN ( $qstr ) AND `uid` = %d LIMIT 1",
|
||||
intval($importer_uid)
|
||||
);
|
||||
if(count($r))
|
||||
$datarray['parent-uri'] = $r[0]['parent-uri']; // Set the parent as the top-level item
|
||||
// $datarray['parent-uri'] = $r[0]['uri'];
|
||||
}
|
||||
|
||||
|
||||
if(! x($datarray,'parent-uri'))
|
||||
$datarray['parent-uri'] = $datarray['uri'];
|
||||
|
||||
// Decoding the header
|
||||
$subject = imap_mime_header_decode($meta->subject);
|
||||
$datarray['title'] = "";
|
||||
foreach($subject as $subpart)
|
||||
if ($subpart->charset != "default")
|
||||
$datarray['title'] .= iconv($subpart->charset, 'UTF-8//IGNORE', $subpart->text);
|
||||
else
|
||||
$datarray['title'] .= $subpart->text;
|
||||
|
||||
$datarray['title'] = notags(trim($datarray['title']));
|
||||
|
||||
//$datarray['title'] = notags(trim($meta->subject));
|
||||
$datarray['created'] = datetime_convert('UTC','UTC',$meta->date);
|
||||
|
||||
// Is it reply?
|
||||
$reply = ((substr(strtolower($datarray['title']), 0, 3) == "re:") or
|
||||
(substr(strtolower($datarray['title']), 0, 3) == "re-") or
|
||||
(raw_refs != ""));
|
||||
|
||||
$r = email_get_msg($mbox,$msg_uid, $reply);
|
||||
if(! $r) {
|
||||
logger("Mail: can't fetch msg ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
continue;
|
||||
}
|
||||
$datarray['body'] = escape_tags($r['body']);
|
||||
|
||||
logger("Mail: Importing ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
|
||||
// some mailing lists have the original author as 'from' - add this sender info to msg body.
|
||||
// todo: adding a gravatar for the original author would be cool
|
||||
|
||||
if(! stristr($meta->from,$contact['addr'])) {
|
||||
$from = imap_mime_header_decode($meta->from);
|
||||
$fromdecoded = "";
|
||||
foreach($from as $frompart)
|
||||
if ($frompart->charset != "default")
|
||||
$fromdecoded .= iconv($frompart->charset, 'UTF-8//IGNORE', $frompart->text);
|
||||
else
|
||||
$fromdecoded .= $frompart->text;
|
||||
|
||||
$datarray['body'] = "[b]".t('From: ') . escape_tags($fromdecoded) . "[/b]\n\n" . $datarray['body'];
|
||||
}
|
||||
|
||||
$datarray['uid'] = $importer_uid;
|
||||
$datarray['contact-id'] = $contact['id'];
|
||||
if($datarray['parent-uri'] === $datarray['uri'])
|
||||
$datarray['private'] = 1;
|
||||
if(($contact['network'] === NETWORK_MAIL) && (! get_pconfig($importer_uid,'system','allow_public_email_replies'))) {
|
||||
$datarray['private'] = 1;
|
||||
$datarray['allow_cid'] = '<' . $contact['id'] . '>';
|
||||
}
|
||||
$datarray['author-name'] = $contact['name'];
|
||||
$datarray['author-link'] = 'mailbox';
|
||||
$datarray['author-avatar'] = $contact['photo'];
|
||||
|
||||
$stored_item = item_store($datarray);
|
||||
q("UPDATE `item` SET `last-child` = 0 WHERE `parent-uri` = '%s' AND `uid` = %d",
|
||||
dbesc($datarray['parent-uri']),
|
||||
intval($importer_uid)
|
||||
);
|
||||
q("UPDATE `item` SET `last-child` = 1 WHERE `id` = %d LIMIT 1",
|
||||
intval($stored_item)
|
||||
);
|
||||
switch ($mailconf[0]['action']) {
|
||||
case 0:
|
||||
logger("Mail: Seen before ".$msg_uid." for ".$mailconf[0]['user'].". Doing nothing.", LOGGER_DEBUG);
|
||||
break;
|
||||
|
@ -339,119 +452,7 @@ function onepoll_run(&$argv, &$argc){
|
|||
if ($mailconf[0]['movetofolder'] != "")
|
||||
imap_mail_move($mbox, $msg_uid, $mailconf[0]['movetofolder'], FT_UID);
|
||||
break;
|
||||
}*/
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
// look for a 'references' or an 'in-reply-to' header and try to match with a parent item we have locally.
|
||||
|
||||
// $raw_refs = ((x($headers,'references')) ? str_replace("\t",'',$headers['references']) : '');
|
||||
$raw_refs = ((property_exists($meta,'references')) ? str_replace("\t",'',$meta->references) : '');
|
||||
if(! trim($raw_refs))
|
||||
$raw_refs = ((property_exists($meta,'in_reply_to')) ? str_replace("\t",'',$meta->in_reply_to) : '');
|
||||
$raw_refs = trim($raw_refs); // Don't allow a blank reference in $refs_arr
|
||||
|
||||
if($raw_refs) {
|
||||
$refs_arr = explode(' ', $raw_refs);
|
||||
if(count($refs_arr)) {
|
||||
for($x = 0; $x < count($refs_arr); $x ++)
|
||||
$refs_arr[$x] = "'" . msgid2iri(str_replace(array('<','>',' '),array('','',''),dbesc($refs_arr[$x]))) . "'";
|
||||
}
|
||||
$qstr = implode(',',$refs_arr);
|
||||
$r = q("SELECT `uri` , `parent-uri` FROM `item` WHERE `uri` IN ( $qstr ) AND `uid` = %d LIMIT 1",
|
||||
intval($importer_uid)
|
||||
);
|
||||
if(count($r))
|
||||
$datarray['parent-uri'] = $r[0]['parent-uri']; // Set the parent as the top-level item
|
||||
// $datarray['parent-uri'] = $r[0]['uri'];
|
||||
}
|
||||
|
||||
|
||||
if(! x($datarray,'parent-uri'))
|
||||
$datarray['parent-uri'] = $datarray['uri'];
|
||||
|
||||
// Decoding the header
|
||||
$subject = imap_mime_header_decode($meta->subject);
|
||||
$datarray['title'] = "";
|
||||
foreach($subject as $subpart)
|
||||
if ($subpart->charset != "default")
|
||||
$datarray['title'] .= iconv($subpart->charset, 'UTF-8//IGNORE', $subpart->text);
|
||||
else
|
||||
$datarray['title'] .= $subpart->text;
|
||||
|
||||
$datarray['title'] = notags(trim($datarray['title']));
|
||||
|
||||
//$datarray['title'] = notags(trim($meta->subject));
|
||||
$datarray['created'] = datetime_convert('UTC','UTC',$meta->date);
|
||||
|
||||
// Is it reply?
|
||||
$reply = ((substr(strtolower($datarray['title']), 0, 3) == "re:") or
|
||||
(substr(strtolower($datarray['title']), 0, 3) == "re-") or
|
||||
(raw_refs != ""));
|
||||
|
||||
$r = email_get_msg($mbox,$msg_uid, $reply);
|
||||
if(! $r) {
|
||||
logger("Mail: can't fetch msg ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
continue;
|
||||
}
|
||||
$datarray['body'] = escape_tags($r['body']);
|
||||
|
||||
logger("Mail: Importing ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
|
||||
// some mailing lists have the original author as 'from' - add this sender info to msg body.
|
||||
// todo: adding a gravatar for the original author would be cool
|
||||
|
||||
if(! stristr($meta->from,$contact['addr'])) {
|
||||
$from = imap_mime_header_decode($meta->from);
|
||||
$fromdecoded = "";
|
||||
foreach($from as $frompart)
|
||||
if ($frompart->charset != "default")
|
||||
$fromdecoded .= iconv($frompart->charset, 'UTF-8//IGNORE', $frompart->text);
|
||||
else
|
||||
$fromdecoded .= $frompart->text;
|
||||
|
||||
$datarray['body'] = "[b]".t('From: ') . escape_tags($fromdecoded) . "[/b]\n\n" . $datarray['body'];
|
||||
}
|
||||
|
||||
$datarray['uid'] = $importer_uid;
|
||||
$datarray['contact-id'] = $contact['id'];
|
||||
if($datarray['parent-uri'] === $datarray['uri'])
|
||||
$datarray['private'] = 1;
|
||||
if(($contact['network'] === NETWORK_MAIL) && (! get_pconfig($importer_uid,'system','allow_public_email_replies'))) {
|
||||
$datarray['private'] = 1;
|
||||
$datarray['allow_cid'] = '<' . $contact['id'] . '>';
|
||||
}
|
||||
$datarray['author-name'] = $contact['name'];
|
||||
$datarray['author-link'] = 'mailbox';
|
||||
$datarray['author-avatar'] = $contact['photo'];
|
||||
|
||||
$stored_item = item_store($datarray);
|
||||
q("UPDATE `item` SET `last-child` = 0 WHERE `parent-uri` = '%s' AND `uid` = %d",
|
||||
dbesc($datarray['parent-uri']),
|
||||
intval($importer_uid)
|
||||
);
|
||||
q("UPDATE `item` SET `last-child` = 1 WHERE `id` = %d LIMIT 1",
|
||||
intval($stored_item)
|
||||
);
|
||||
switch ($mailconf[0]['action']) {
|
||||
case 0:
|
||||
logger("Mail: Seen before ".$msg_uid." for ".$mailconf[0]['user'].". Doing nothing.", LOGGER_DEBUG);
|
||||
break;
|
||||
case 1:
|
||||
logger("Mail: Deleting ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
imap_delete($mbox, $msg_uid, FT_UID);
|
||||
break;
|
||||
case 2:
|
||||
logger("Mail: Mark as seen ".$msg_uid." for ".$mailconf[0]['user']);
|
||||
imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
|
||||
break;
|
||||
case 3:
|
||||
logger("Mail: Moving ".$msg_uid." to ".$mailconf[0]['movetofolder']." for ".$mailconf[0]['user']);
|
||||
imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
|
||||
if ($mailconf[0]['movetofolder'] != "")
|
||||
imap_mail_move($mbox, $msg_uid, $mailconf[0]['movetofolder'], FT_UID);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
|
||||
function authenticate_success($user_record, $login_initial = false, $interactive = false) {
|
||||
function authenticate_success($user_record, $login_initial = false, $interactive = false, $login_refresh = false) {
|
||||
|
||||
$a = get_app();
|
||||
|
||||
|
@ -65,6 +65,8 @@ function authenticate_success($user_record, $login_initial = false, $interactive
|
|||
|
||||
if($login_initial)
|
||||
logger('auth_identities: ' . print_r($a->identities,true), LOGGER_DEBUG);
|
||||
if($login_refresh)
|
||||
logger('auth_identities refresh: ' . print_r($a->identities,true), LOGGER_DEBUG);
|
||||
|
||||
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `self` = 1 LIMIT 1",
|
||||
intval($_SESSION['uid']));
|
||||
|
@ -76,7 +78,7 @@ function authenticate_success($user_record, $login_initial = false, $interactive
|
|||
|
||||
header('X-Account-Management-Status: active; name="' . $a->user['username'] . '"; id="' . $a->user['nickname'] .'"');
|
||||
|
||||
if($login_initial) {
|
||||
if($login_initial || $login_refresh) {
|
||||
$l = get_browser_language();
|
||||
|
||||
q("UPDATE `user` SET `login_date` = '%s', `language` = '%s' WHERE `uid` = %d LIMIT 1",
|
||||
|
@ -84,7 +86,8 @@ function authenticate_success($user_record, $login_initial = false, $interactive
|
|||
dbesc($l),
|
||||
intval($_SESSION['uid'])
|
||||
);
|
||||
|
||||
}
|
||||
if($login_initial) {
|
||||
call_hooks('logged_in', $a->user);
|
||||
|
||||
if(($a->module !== 'home') && isset($_SESSION['return_url']))
|
||||
|
|
46
index.php
46
index.php
|
@ -115,19 +115,9 @@ if(! x($_SESSION,'authenticated'))
|
|||
header('X-Account-Management-Status: none');
|
||||
|
||||
|
||||
/*
|
||||
* Create the page head after setting the language
|
||||
* and getting any auth credentials
|
||||
*/
|
||||
|
||||
$a->init_pagehead();
|
||||
|
||||
/**
|
||||
* Build the page ending -- this is stuff that goes right before
|
||||
* the closing </body> tag
|
||||
*/
|
||||
|
||||
$a->init_page_end();
|
||||
/* set up page['htmlhead'] and page['end'] for the modules to use */
|
||||
$a->page['htmlhead'] = '';
|
||||
$a->page['end'] = '';
|
||||
|
||||
|
||||
if(! x($_SESSION,'sysmsg'))
|
||||
|
@ -300,8 +290,32 @@ if($a->module_loaded) {
|
|||
$a->page['content'] .= $arr['content'];
|
||||
}
|
||||
|
||||
if(function_exists(str_replace('-','_',current_theme()) . '_content_loaded')) {
|
||||
$func = str_replace('-','_',current_theme()) . '_content_loaded';
|
||||
$func($a);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Create the page head after setting the language
|
||||
* and getting any auth credentials
|
||||
*
|
||||
* Moved init_pagehead() and init_page_end() to after
|
||||
* all the module functions have executed so that all
|
||||
* theme choices made by the modules can take effect
|
||||
*/
|
||||
|
||||
$a->init_pagehead();
|
||||
|
||||
/**
|
||||
* Build the page ending -- this is stuff that goes right before
|
||||
* the closing </body> tag
|
||||
*/
|
||||
|
||||
$a->init_page_end();
|
||||
|
||||
// If you're just visiting, let javascript take you home
|
||||
|
||||
if(x($_SESSION,'visitor_home'))
|
||||
|
@ -366,7 +380,11 @@ if($a->module != 'install') {
|
|||
* Build the page - now that we have all the components
|
||||
*/
|
||||
|
||||
$a->page['htmlhead'] = replace_macros($a->page['htmlhead'], array('$stylesheet' => current_theme_url()));
|
||||
if(!$a->theme['stylesheet'])
|
||||
$stylesheet = current_theme_url();
|
||||
else
|
||||
$stylesheet = $a->theme['stylesheet'];
|
||||
$a->page['htmlhead'] = replace_macros($a->page['htmlhead'], array('$stylesheet' => $stylesheet));
|
||||
|
||||
if($a->is_mobile || $a->is_tablet) {
|
||||
if(isset($_SESSION['show-mobile']) && !$_SESSION['show-mobile']) {
|
||||
|
|
104
mod/help.php
104
mod/help.php
|
@ -1,47 +1,101 @@
|
|||
<?php
|
||||
define( 'MARKDOWN_PARSER_CLASS', 'ExtendedMarkdown' );
|
||||
require_once('library/markdown.php');
|
||||
|
||||
if(! function_exists('load_doc_file')) {
|
||||
function load_doc_file($s) {
|
||||
global $lang;
|
||||
if(! isset($lang))
|
||||
$lang = 'en';
|
||||
$b = basename($s);
|
||||
$d = dirname($s);
|
||||
if(file_exists("$d/$lang/$b"))
|
||||
return file_get_contents("$d/$lang/$b");
|
||||
if(file_exists($s))
|
||||
return file_get_contents($s);
|
||||
return '';
|
||||
}}
|
||||
class ExtendedMarkdown extends MarkdownExtra_Parser {
|
||||
|
||||
function ExtendedMarkdown() {
|
||||
$this->block_gamut += array(
|
||||
"doBlockWarning" => 45,
|
||||
);
|
||||
parent::MarkdownExtra_Parser();
|
||||
}
|
||||
|
||||
function doBlockWarning($text) {
|
||||
$text = preg_replace_callback('/
|
||||
( # Wrap whole match in $1
|
||||
(?>
|
||||
^[ ]*![ ]? # "!" at the start of a line
|
||||
.+\n # rest of the first line
|
||||
(.+\n)* # subsequent consecutive lines
|
||||
\n* # blanks
|
||||
)+
|
||||
)
|
||||
/xm', array(&$this, '_doBlockWarning_callback'), $text);
|
||||
|
||||
return $text;
|
||||
}
|
||||
|
||||
function _doBlockWarning_callback($matches) {
|
||||
$bq = $matches[1];
|
||||
# trim one level of quoting - trim whitespace-only lines
|
||||
$bq = preg_replace('/^[ ]*![ ]?|^[ ]+$/m', '', $bq);
|
||||
$bq = $this->runBlockGamut($bq); # recurse
|
||||
|
||||
$bq = preg_replace('/^/m', " ", $bq);
|
||||
# These leading spaces cause problem with <pre> content,
|
||||
# so we need to fix that:
|
||||
// $bq = preg_replace_callback('{(\s*<pre>.+?</pre>)}sx', array(&$this, '__doBlockWarning_callback2'), $bq);
|
||||
|
||||
return "\n" . $this->hashBlock("<div class='md_warning'>\n$bq\n</div>") . "\n\n";
|
||||
}
|
||||
|
||||
function _doBlockWarning_callback2($matches) {
|
||||
$pre = $matches[1];
|
||||
$pre = preg_replace('/^ /m', '', $pre);
|
||||
return $pre;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!function_exists('load_doc_file')) {
|
||||
|
||||
function load_doc_file($s) {
|
||||
global $lang;
|
||||
if (!isset($lang))
|
||||
$lang = 'en';
|
||||
$b = basename($s);
|
||||
$d = dirname($s);
|
||||
if (file_exists("$d/$lang/$b"))
|
||||
return file_get_contents("$d/$lang/$b");
|
||||
if (file_exists($s))
|
||||
return file_get_contents($s);
|
||||
return '';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function help_content(&$a) {
|
||||
|
||||
|
||||
nav_set_selected('help');
|
||||
|
||||
global $lang;
|
||||
|
||||
require_once('library/markdown.php');
|
||||
|
||||
$text = '';
|
||||
|
||||
if($a->argc > 1) {
|
||||
if ($a->argc > 1) {
|
||||
$text = load_doc_file('doc/' . $a->argv[1] . '.md');
|
||||
$a->page['title'] = t('Help:') . ' ' . str_replace('-',' ',notags($a->argv[1]));
|
||||
$a->page['title'] = t('Help:') . ' ' . str_replace('-', ' ', notags($a->argv[1]));
|
||||
}
|
||||
if(! $text) {
|
||||
$text = load_doc_file('doc/Home.md');
|
||||
$home = load_doc_file('doc/Home.md');
|
||||
if (!$text) {
|
||||
$text = $home;
|
||||
$a->page['title'] = t('Help');
|
||||
} else {
|
||||
$a->page['aside'] = Markdown($home);
|
||||
}
|
||||
|
||||
if(! strlen($text)) {
|
||||
|
||||
if (!strlen($text)) {
|
||||
header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . t('Not Found'));
|
||||
$tpl = get_markup_template("404.tpl");
|
||||
return replace_macros($tpl, array(
|
||||
'$message' => t('Page not found.' )
|
||||
));
|
||||
'$message' => t('Page not found.')
|
||||
));
|
||||
}
|
||||
|
||||
return Markdown($text);
|
||||
|
||||
$html = Markdown($text);
|
||||
$html = "<style>.md_warning { padding: 1em; border: #ff0000 solid 2px; background-color: #f9a3a3; color: #ffffff;</style>".$html;
|
||||
return $html;
|
||||
|
||||
}
|
||||
|
|
|
@ -27,12 +27,13 @@ function photos_init(&$a) {
|
|||
if(! count($r))
|
||||
return;
|
||||
|
||||
$a->data['user'] = $r[0];
|
||||
|
||||
$o .= '<div class="vcard">';
|
||||
$o .= '<div class="fn">' . $a->data['user']['username'] . '</div>';
|
||||
$o .= '<div id="profile-photo-wrapper"><img class="photo" style="width: 175px; height: 175px;" src="' . $a->get_cached_avatar_image($a->get_baseurl() . '/photo/profile/' . $a->data['user']['uid'] . '.jpg') . '" alt="' . $a->data['user']['username'] . '" /></div>';
|
||||
$o .= '</div>';
|
||||
|
||||
$a->data['user'] = $r[0];
|
||||
|
||||
$sql_extra = permissions_sql($a->data['user']['uid']);
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
<?php
|
||||
|
||||
|
||||
function uexport_init(&$a){
|
||||
if(! local_user())
|
||||
killme();
|
||||
|
@ -88,7 +87,8 @@ function uexport_content(&$a){
|
|||
function _uexport_multirow($query) {
|
||||
$result = array();
|
||||
$r = q($query);
|
||||
if(count($r)) {
|
||||
// if(count($r)) {
|
||||
if ($r){
|
||||
foreach($r as $rr){
|
||||
$p = array();
|
||||
foreach($rr as $k => $v)
|
||||
|
@ -102,7 +102,7 @@ function _uexport_multirow($query) {
|
|||
function _uexport_row($query) {
|
||||
$result = array();
|
||||
$r = q($query);
|
||||
if(count($r)) {
|
||||
if ($r) {
|
||||
foreach($r as $rr)
|
||||
foreach($rr as $k => $v)
|
||||
$result[$k] = $v;
|
||||
|
@ -128,20 +128,20 @@ function uexport_account($a){
|
|||
);
|
||||
|
||||
$photo = _uexport_multirow(
|
||||
sprintf( "SELECT * FROM photo WHERE uid = %d AND profile = 1", intval(local_user()) )
|
||||
sprintf( "SELECT * FROM `photo` WHERE uid = %d AND profile = 1", intval(local_user()) )
|
||||
);
|
||||
foreach ($photo as &$p) $p['data'] = bin2hex($p['data']);
|
||||
|
||||
$pconfig = _uexport_multirow(
|
||||
sprintf( "SELECT * FROM pconfig WHERE uid = %d",intval(local_user()) )
|
||||
sprintf( "SELECT * FROM `pconfig` WHERE uid = %d",intval(local_user()) )
|
||||
);
|
||||
|
||||
$group = _uexport_multirow(
|
||||
sprintf( "SELECT * FROM group WHERE uid = %d",intval(local_user()) )
|
||||
sprintf( "SELECT * FROM `group` WHERE uid = %d",intval(local_user()) )
|
||||
);
|
||||
|
||||
$group_member = _uexport_multirow(
|
||||
sprintf( "SELECT * FROM group_member WHERE uid = %d",intval(local_user()) )
|
||||
sprintf( "SELECT * FROM `group_member` WHERE uid = %d",intval(local_user()) )
|
||||
);
|
||||
|
||||
$output = array(
|
||||
|
|
|
@ -4,6 +4,8 @@ require_once('Photo.php');
|
|||
|
||||
function wall_upload_post(&$a) {
|
||||
|
||||
logger("wall upload: starting new upload", LOGGER_DEBUG);
|
||||
|
||||
if($a->argc > 1) {
|
||||
if(! x($_FILES,'media')) {
|
||||
$nick = $a->argv[1];
|
||||
|
@ -160,10 +162,12 @@ function wall_upload_post(&$a) {
|
|||
if ($_REQUEST['hush']!='yeah') {
|
||||
|
||||
/*existing code*/
|
||||
if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
|
||||
if(local_user() && (intval(get_pconfig(local_user(),'system','plaintext')) || x($_REQUEST['nomce'])) ) {
|
||||
echo "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]\n\n";
|
||||
else
|
||||
}
|
||||
else {
|
||||
echo '<br /><br /><a href="' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '" ><img src="' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."\" alt=\"$basename\" /></a><br /><br />";
|
||||
}
|
||||
/*existing code*/
|
||||
|
||||
} else {
|
||||
|
|
559
util/messages.po
559
util/messages.po
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -58,7 +58,7 @@ $a->strings["Tag removed"] = "Štítek odstraněn";
|
|||
$a->strings["Remove Item Tag"] = "Odebrat štítek položky";
|
||||
$a->strings["Select a tag to remove: "] = "Vyberte štítek k odebrání: ";
|
||||
$a->strings["Remove"] = "Odstranit";
|
||||
$a->strings["%s welcomes %s"] = "%s vítá %s ";
|
||||
$a->strings["%1\$s welcomes %2\$s"] = "%1\$s vítá %2\$s";
|
||||
$a->strings["Authorize application connection"] = "Povolit připojení aplikacím";
|
||||
$a->strings["Return to your app and insert this Securty Code:"] = "Vraťte se do vaší aplikace a zadejte tento bezpečnostní kód:";
|
||||
$a->strings["Please login to continue."] = "Pro pokračování se prosím přihlaste.";
|
||||
|
@ -74,9 +74,8 @@ $a->strings["Profile Photos"] = "Profilové fotografie";
|
|||
$a->strings["Album not found."] = "Album nenalezeno.";
|
||||
$a->strings["Delete Album"] = "Smazat album";
|
||||
$a->strings["Delete Photo"] = "Smazat fotografii";
|
||||
$a->strings["was tagged in a"] = "štítek byl přidán v";
|
||||
$a->strings["photo"] = "fotografie";
|
||||
$a->strings["by"] = "od";
|
||||
$a->strings["%1\$s was tagged in %2\$s by %3\$s"] = "%1\$s byl označen v %2\$s uživatelem %3\$s";
|
||||
$a->strings["a photo"] = "fotografie";
|
||||
$a->strings["Image exceeds size limit of "] = "Velikost obrázku překračuje limit velikosti";
|
||||
$a->strings["Image file is empty."] = "Soubor obrázku je prázdný.";
|
||||
$a->strings["Unable to process image."] = "Obrázek není možné zprocesovat";
|
||||
|
@ -200,6 +199,18 @@ $a->strings["Diaspora"] = "Diaspora";
|
|||
$a->strings[" - please do not use this form. Instead, enter %s into your Diaspora search bar."] = " - prosím nepoužívejte tento formulář. Místo toho zadejte %s do Vašeho Diaspora vyhledávacího pole.";
|
||||
$a->strings["Your Identity Address:"] = "Verze PHP pro příkazový řádek na Vašem systému nemá povolen \"register_argc_argv\".";
|
||||
$a->strings["Submit Request"] = "Odeslat žádost";
|
||||
$a->strings["Account settings"] = "Nastavení účtu";
|
||||
$a->strings["Display settings"] = "Nastavení zobrazení";
|
||||
$a->strings["Connector settings"] = "Nastavení konektoru";
|
||||
$a->strings["Plugin settings"] = "Nastavení pluginu";
|
||||
$a->strings["Connected apps"] = "Propojené aplikace";
|
||||
$a->strings["Export personal data"] = "Export osobních údajů";
|
||||
$a->strings["Remove account"] = "Odstranit účet";
|
||||
$a->strings["Settings"] = "Nastavení";
|
||||
$a->strings["Export account"] = "Exportovat účet";
|
||||
$a->strings["Export your account info and contacts. Use this to make a backup of your account and/or to move it to another server."] = "Exportujte svůj účet a své kontakty. Použijte tuto funkci pro vytvoření zálohy svého účtu a/nebo k přesunu na jiný server.";
|
||||
$a->strings["Export all"] = "Exportovat vše";
|
||||
$a->strings["Export your accout info, contacts and all your items as json. Could be a very big file, and could take a lot of time. Use this to make a full backup of your account (photos are not exported)"] = "Exportujte své informace k účtu, kontakty a vše své položky jako json. To může být velmi velký soubor a může to zabrat spoustu času. Tuto funkci použijte pro úplnou zálohu svého účtu(fotografie se neexportují)";
|
||||
$a->strings["Friendica Social Communications Server - Setup"] = "Friendica Sociální komunkační server - Nastavení";
|
||||
$a->strings["Could not connect to database."] = "Nelze se připojit k databázi.";
|
||||
$a->strings["Could not create table."] = "Nelze vytvořit tabulku.";
|
||||
|
@ -256,7 +267,7 @@ $a->strings["<h1>What next</h1>"] = "<h1>Co dál<h1>";
|
|||
$a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the poller."] = "Webový instalátor musí být schopen vytvořit soubor s názvem \".htconfig.php\" v hlavním adresáři Vašeho webového serveru ale nyní mu to není umožněno.";
|
||||
$a->strings["l F d, Y \\@ g:i A"] = "l F d, Y \\@ g:i A";
|
||||
$a->strings["Time Conversion"] = "Časová konverze";
|
||||
$a->strings["Friendika provides this service for sharing events with other networks and friends in unknown timezones."] = "Friendika poskytuje tuto službu pro sdílení událostí s ostatními sítěmi a přátel v neznámých časových pásem.";
|
||||
$a->strings["Friendica provides this service for sharing events with other networks and friends in unknown timezones."] = "Friendica poskytuje tuto službu pro sdílení událostí s ostatními sítěmi a přáteli v neznámých časových zónách";
|
||||
$a->strings["UTC time: %s"] = "UTC čas: %s";
|
||||
$a->strings["Current timezone: %s"] = "Aktuální časové pásmo: %s";
|
||||
$a->strings["Converted localtime: %s"] = "Převedený lokální čas : %s";
|
||||
|
@ -446,14 +457,6 @@ $a->strings["Forgot your Password?"] = "Zapomněli jste heslo?";
|
|||
$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Zadejte svůj e-mailovou adresu a odešlete žádost o zaslání Vašeho nového hesla. Poté zkontrolujte svůj e-mail pro další instrukce.";
|
||||
$a->strings["Nickname or Email: "] = "Přezdívka nebo e-mail: ";
|
||||
$a->strings["Reset"] = "Reset";
|
||||
$a->strings["Account settings"] = "Nastavení účtu";
|
||||
$a->strings["Display settings"] = "Nastavení zobrazení";
|
||||
$a->strings["Connector settings"] = "Nastavení konektoru";
|
||||
$a->strings["Plugin settings"] = "Nastavení pluginu";
|
||||
$a->strings["Connected apps"] = "Propojené aplikace";
|
||||
$a->strings["Export personal data"] = "Export osobních údajů";
|
||||
$a->strings["Remove account"] = "Odstranit účet";
|
||||
$a->strings["Settings"] = "Nastavení";
|
||||
$a->strings["Missing some important data!"] = "Chybí některé důležité údaje!";
|
||||
$a->strings["Update"] = "Aktualizace";
|
||||
$a->strings["Failed to connect with email account using the settings provided."] = "Nepodařilo se připojit k e-mailovému účtu pomocí dodaného nastavení.";
|
||||
|
@ -605,6 +608,11 @@ $a->strings["Private messages to this person are at risk of public disclosure."]
|
|||
$a->strings["Invalid contact."] = "Neplatný kontakt.";
|
||||
$a->strings["Personal Notes"] = "Osobní poznámky";
|
||||
$a->strings["Save"] = "Uložit";
|
||||
$a->strings["Import"] = "Import";
|
||||
$a->strings["Move account"] = "Přesunout účet";
|
||||
$a->strings["You can move here an account from another Friendica server. <br>\r\n You need to export your account form the old server and upload it here. We will create here your old account with all your contacts. We will try also to inform you friends that you moved here.<br>\r\n <b>This feature is experimental. We can't move here contacts from ostatus network (statusnet/identi.ca) or from diaspora"] = "Zde si můžete přesunout účet z jiného serveru Friendika. <br>\n Můžete si vyexportovat svůj účet na vašem starším serveru a nahrát je zde. Zde Vám vytvoříme váš starý účet se všemi kontakty. Zároveň budeme informovat Vaše přátele o tom, že jste sem přesunuli.<br>\n <b>Tato funkce je experimentální. Nemůžeme přesunout kontakty z ostatus sítí (statusnet/identi.ca) nebo diaspory";
|
||||
$a->strings["Account file"] = "Soubor s účtem";
|
||||
$a->strings["To export your accont, go to \"Settings->Export your porsonal data\" and select \"Export account\""] = "K exportu Vašeho účtu, jděte do \"Nastavení->Export vašich osobních dat\" a zvolte \" Export účtu\"";
|
||||
$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Došlo k překročení maximálního počtu zpráv na zeď během jednoho dne. Zpráva %s nedoručena.";
|
||||
$a->strings["No recipient selected."] = "Nevybrán příjemce.";
|
||||
$a->strings["Unable to check your home location."] = "Nebylo možné zjistit Vaši domácí lokaci.";
|
||||
|
@ -694,6 +702,7 @@ $a->strings["Choose a profile nickname. This must begin with a text character. Y
|
|||
$a->strings["Choose a nickname: "] = "Vyberte přezdívku:";
|
||||
$a->strings["Register"] = "Registrovat";
|
||||
$a->strings["People Search"] = "Vyhledávání lidí";
|
||||
$a->strings["photo"] = "fotografie";
|
||||
$a->strings["status"] = "Stav";
|
||||
$a->strings["%1\$s likes %2\$s's %3\$s"] = "%1\$s má rád %2\$s' na %3\$s";
|
||||
$a->strings["%1\$s doesn't like %2\$s's %3\$s"] = "%1\$s nemá rád %2\$s na %3\$s";
|
||||
|
@ -1806,6 +1815,17 @@ $a->strings["Attachments:"] = "Přílohy:";
|
|||
$a->strings["view full size"] = "zobrazit v plné velikosti";
|
||||
$a->strings["Embedded content"] = "vložený obsah";
|
||||
$a->strings["Embedding disabled"] = "Vkládání zakázáno";
|
||||
$a->strings["Error decoding account file"] = "Chyba dekódování uživatelského účtu";
|
||||
$a->strings["Error! No version data in file! This is not a Friendica account file?"] = "Chyba! V datovém souboru není označení verze! Je to opravdu soubor s účtem Friendica?";
|
||||
$a->strings["Error! I can't import this file: DB schema version is not compatible."] = "Chyba! Nemohu importovat soubor: verze DB schématu není kompatibilní.";
|
||||
$a->strings["User creation error"] = "Chyba vytváření uživatele";
|
||||
$a->strings["User profile creation error"] = "Chyba vytváření uživatelského účtu";
|
||||
$a->strings["%d contact not imported"] = array(
|
||||
0 => "%d kontakt nenaimporován",
|
||||
1 => "%d kontaktů nenaimporováno",
|
||||
2 => "%d kontakty nenaimporovány",
|
||||
);
|
||||
$a->strings["Done. You can now login with your username and password"] = "Hotovo. Nyní se můžete přihlásit se svými uživatelským účtem a heslem";
|
||||
$a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "Dříve smazaná skupina s tímto jménem byla obnovena. Stávající oprávnění <strong>může</ strong> ovlivnit tuto skupinu a její budoucí členy. Pokud to není to, co jste chtěli, vytvořte, prosím, další skupinu s jiným názvem.";
|
||||
$a->strings["Default privacy group for new contacts"] = "Defaultní soukromá skrupina pro nové kontakty.";
|
||||
$a->strings["Everybody"] = "Všichni";
|
||||
|
@ -1986,6 +2006,7 @@ $a->strings["Please enter a video link/URL:"] = "Prosím zadejte URL adresu vide
|
|||
$a->strings["Please enter an audio link/URL:"] = "Prosím zadejte URL adresu zvukového záznamu:";
|
||||
$a->strings["Tag term:"] = "Štítek:";
|
||||
$a->strings["Where are you right now?"] = "Kde právě jste?";
|
||||
$a->strings["Delete item(s)?"] = "Smazat položku(y)?";
|
||||
$a->strings["permissions"] = "oprávnění";
|
||||
$a->strings["Click here to upgrade."] = "Klikněte zde pro aktualizaci.";
|
||||
$a->strings["This action exceeds the limits set by your subscription plan."] = "Tato akce překročí limit nastavené Vaším předplatným.";
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -198,6 +198,18 @@ $a->strings["Diaspora"] = "Diaspora";
|
|||
$a->strings[" - please do not use this form. Instead, enter %s into your Diaspora search bar."] = " - bitte verwende dieses Formular nicht. Stattdessen suche nach %s in deiner Diaspora Suchleiste.";
|
||||
$a->strings["Your Identity Address:"] = "Adresse deines Profils:";
|
||||
$a->strings["Submit Request"] = "Anfrage abschicken";
|
||||
$a->strings["Account settings"] = "Kontoeinstellungen";
|
||||
$a->strings["Display settings"] = "Anzeige-Einstellungen";
|
||||
$a->strings["Connector settings"] = "Connector-Einstellungen";
|
||||
$a->strings["Plugin settings"] = "Plugin-Einstellungen";
|
||||
$a->strings["Connected apps"] = "Verbundene Programme";
|
||||
$a->strings["Export personal data"] = "Persönliche Daten exportieren";
|
||||
$a->strings["Remove account"] = "Konto löschen";
|
||||
$a->strings["Settings"] = "Einstellungen";
|
||||
$a->strings["Export account"] = "Account exportieren";
|
||||
$a->strings["Export your account info and contacts. Use this to make a backup of your account and/or to move it to another server."] = "Exportiere deine Account Informationen und die Kontakte. Verwende dies um ein Backup deines Accounts anzulegen und/oder ihn auf einen anderen Server umzuziehen.";
|
||||
$a->strings["Export all"] = "Alles exportieren";
|
||||
$a->strings["Export your accout info, contacts and all your items as json. Could be a very big file, and could take a lot of time. Use this to make a full backup of your account (photos are not exported)"] = "Exportiere deine Account Informationen, Kontakte und alle Einträge als JSON Datei. Dies könnte eine sehr große Datei werden und dementsprechend viel Zeit benötigen. Verwende dies um ein komplettes Backup deines Accounts anzulegen (Photos werden nicht exportiert).";
|
||||
$a->strings["Friendica Social Communications Server - Setup"] = "Friendica-Server für soziale Netzwerke – Setup";
|
||||
$a->strings["Could not connect to database."] = "Verbindung zur Datenbank gescheitert";
|
||||
$a->strings["Could not create table."] = "Konnte Tabelle nicht erstellen.";
|
||||
|
@ -441,14 +453,6 @@ $a->strings["Forgot your Password?"] = "Hast du dein Passwort vergessen?";
|
|||
$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Gib deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet.";
|
||||
$a->strings["Nickname or Email: "] = "Spitzname oder E-Mail:";
|
||||
$a->strings["Reset"] = "Zurücksetzen";
|
||||
$a->strings["Account settings"] = "Kontoeinstellungen";
|
||||
$a->strings["Display settings"] = "Anzeige-Einstellungen";
|
||||
$a->strings["Connector settings"] = "Connector-Einstellungen";
|
||||
$a->strings["Plugin settings"] = "Plugin-Einstellungen";
|
||||
$a->strings["Connected apps"] = "Verbundene Programme";
|
||||
$a->strings["Export personal data"] = "Persönliche Daten exportieren";
|
||||
$a->strings["Remove account"] = "Konto löschen";
|
||||
$a->strings["Settings"] = "Einstellungen";
|
||||
$a->strings["Missing some important data!"] = "Wichtige Daten fehlen!";
|
||||
$a->strings["Update"] = "Aktualisierungen";
|
||||
$a->strings["Failed to connect with email account using the settings provided."] = "Verbindung zum E-Mail-Konto mit den angegebenen Einstellungen nicht möglich.";
|
||||
|
@ -599,6 +603,11 @@ $a->strings["Private messages to this person are at risk of public disclosure."]
|
|||
$a->strings["Invalid contact."] = "Ungültiger Kontakt.";
|
||||
$a->strings["Personal Notes"] = "Persönliche Notizen";
|
||||
$a->strings["Save"] = "Speichern";
|
||||
$a->strings["Import"] = "Import";
|
||||
$a->strings["Move account"] = "Account umziehen";
|
||||
$a->strings["You can move here an account from another Friendica server. <br>\r\n You need to export your account form the old server and upload it here. We will create here your old account with all your contacts. We will try also to inform you friends that you moved here.<br>\r\n <b>This feature is experimental. We can't move here contacts from ostatus network (statusnet/identi.ca) or from diaspora"] = "Du kannst deinen Account auf einen anderen Friendica Server umziehen.<br>Dazu musst du deinen Account von deinem alten Server exportieren und hier hochladen. Wir werden dann deinen alten Account, mit allen Kontakten, hier wieder herstellen. Außerdem werden wir deine Kontakte darüber informieren, dass du hierher umgezogen bist.<br><b>Dieses Feature ist experimentell. Kontakte aus dem OStatus Netzwerk (StatusNet/identi.ca) oder von Diaspora können nicht mit umgezogen werden.</b>";
|
||||
$a->strings["Account file"] = "Account Datei";
|
||||
$a->strings["To export your accont, go to \"Settings->Export your porsonal data\" and select \"Export account\""] = "Um deinen Account zu exportieren, rufe \"Einstellungen -> Persönliche Daten exportieren\" auf und wähle \"Account exportieren\"";
|
||||
$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Maximale Anzahl der täglichen Pinnwand Nachrichten für %s ist überschritten. Zustellung fehlgeschlagen.";
|
||||
$a->strings["No recipient selected."] = "Kein Empfänger gewählt.";
|
||||
$a->strings["Unable to check your home location."] = "Konnte deinen Heimatort nicht bestimmen.";
|
||||
|
@ -1794,6 +1803,16 @@ $a->strings["Attachments:"] = "Anhänge:";
|
|||
$a->strings["view full size"] = "Volle Größe anzeigen";
|
||||
$a->strings["Embedded content"] = "Eingebetteter Inhalt";
|
||||
$a->strings["Embedding disabled"] = "Einbettungen deaktiviert";
|
||||
$a->strings["Error decoding account file"] = "Fehler beim Verarbeiten der Account Datei";
|
||||
$a->strings["Error! No version data in file! This is not a Friendica account file?"] = "Fehler! Keine Versionsdaten in der Datei! Ist das wirklich eine Friendica Account Datei?";
|
||||
$a->strings["Error! I can't import this file: DB schema version is not compatible."] = "Fehler! Kann diese Datei nicht importieren. Die DB Schema Versionen sind nicht kompatibel.";
|
||||
$a->strings["User creation error"] = "Fehler beim Anlegen des Nutzeraccounts aufgetreten";
|
||||
$a->strings["User profile creation error"] = "Fehler beim Anlegen des Nutzerkontos";
|
||||
$a->strings["%d contact not imported"] = array(
|
||||
0 => "%d Kontakt nicht importiert",
|
||||
1 => "%d Kontakte nicht importiert",
|
||||
);
|
||||
$a->strings["Done. You can now login with your username and password"] = "Erledigt. Du kannst dich jetzt mit deinem Nutzernamen und Passwort anmelden";
|
||||
$a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "Eine gelöschte Gruppe mit diesem Namen wurde wiederbelebt. Bestehende Berechtigungseinstellungen <strong>könnten</strong> auf diese Gruppe oder zukünftige Mitglieder angewandt werden. Falls du dies nicht möchtest, erstelle bitte eine andere Gruppe mit einem anderen Namen.";
|
||||
$a->strings["Default privacy group for new contacts"] = "Voreingestellte Gruppe für neue Kontakte";
|
||||
$a->strings["Everybody"] = "Alle Kontakte";
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<div class='field checkbox'>
|
||||
<div class='field checkbox' id='div_id_$field.0'>
|
||||
<label for='id_$field.0'>$field.1</label>
|
||||
<input type="checkbox" name='$field.0' id='id_$field.0' value="1" {{ if $field.2 }}checked="checked"{{ endif }}>
|
||||
<span class='field_help'>$field.3</span>
|
||||
|
|
|
@ -13,6 +13,8 @@
|
|||
</div>
|
||||
{{ endif }}
|
||||
|
||||
{{ inc field_checkbox.tpl with $field=$lremember }}{{ endinc }}
|
||||
|
||||
<div id="login-extra-links">
|
||||
{{ if $register }}<a href="register" title="$register.title" id="register-link">$register.desc</a>{{ endif }}
|
||||
<a href="lostpass" title="$lostpass" id="lost-password-link" >$lostlink</a>
|
||||
|
|
14
view/pl/follow_notify_eml.tpl
Normal file
14
view/pl/follow_notify_eml.tpl
Normal file
|
@ -0,0 +1,14 @@
|
|||
|
||||
Drogi $[myname],
|
||||
|
||||
Masz nowego obserwującego na $[sitename] - '$[requestor]'.
|
||||
|
||||
Możesz odwiedzić jego profil na $[url].
|
||||
|
||||
Zaloguj się na swoją stronę by potwierdzić lub zignorować/anulować prośbę.
|
||||
|
||||
$[siteurl]
|
||||
|
||||
Pozdrawiam,
|
||||
|
||||
$[sitename] Administrator
|
22
view/pl/friend_complete_eml.tpl
Normal file
22
view/pl/friend_complete_eml.tpl
Normal file
|
@ -0,0 +1,22 @@
|
|||
|
||||
Drogi $[username],
|
||||
|
||||
Świetne wieści! '$[fn]' na '$[dfrn_url]' przyjął / przyjęła
|
||||
Twoją prośbę o znajomość na '$[sitename]'.
|
||||
|
||||
Jesteście teraz znajomymi i możecie wymieniać się zmianami statusów, zdjęciami i wiadomościami
|
||||
bez ograniczeń.
|
||||
|
||||
Zajrzyj na stronę 'Kontakty' na $[sitename] jeśli chcesz dokonać
|
||||
zmian w tej relacji.
|
||||
|
||||
$[siteurl]
|
||||
|
||||
[Możesz np.: utworzyć oddzielny profil z informacjami, który nie będzie
|
||||
dostępny dla wszystkich - i przypisać sprawdzanie uprawnień do '$[fn]'].
|
||||
|
||||
Z poważaniem,
|
||||
|
||||
$[sitename] Administrator
|
||||
|
||||
|
22
view/pl/intro_complete_eml.tpl
Normal file
22
view/pl/intro_complete_eml.tpl
Normal file
|
@ -0,0 +1,22 @@
|
|||
|
||||
Drogi $[username],
|
||||
|
||||
'$[fn]' w '$[dfrn_url]' zaakceptował
|
||||
twoje połączenie na '$[sitename]'.
|
||||
|
||||
'$[fn]' zaakceptował Cię jako "fana", uniemożliwiając
|
||||
pewne sposoby komunikacji - takie jak prywatne wiadomości czy niektóre formy
|
||||
interakcji pomiędzy profilami. Jeśli jest to strona gwiazdy lub społeczności, ustawienia zostały
|
||||
zastosowane automatycznie.
|
||||
|
||||
'$[fn]' może rozszeżyć to w dwustronną komunikację lub więcej (doprecyzować)
|
||||
relacje w przyszłości.
|
||||
|
||||
Będziesz teraz otrzymywać aktualizacje statusu od '$[fn]',
|
||||
który będzie pojawiać się na Twojej stronie "Sieć"
|
||||
|
||||
$[siteurl]
|
||||
|
||||
Z poważaniem,
|
||||
|
||||
Administrator $[sitename]
|
32
view/pl/lostpass_eml.tpl
Normal file
32
view/pl/lostpass_eml.tpl
Normal file
|
@ -0,0 +1,32 @@
|
|||
|
||||
$[username],
|
||||
Ze strony $[sitename] wpłynęła prośba z zresetowanie
|
||||
hasła. W celu potwierdzenia kliknij w weryfikacyjny link
|
||||
zamieszczony poniżej, lub wklej go do pasku adresu twojej przeglądarki.
|
||||
|
||||
Jeśli uważasz, że wiadomość nie jest przeznaczona dla ciebie, nie klikaj w linka!
|
||||
Zignoruj tego emaila i usuń.
|
||||
|
||||
Twoje hasło nie może zostać zmienione zanim nie potwierdzimy
|
||||
twojego żądania.
|
||||
|
||||
Aby potwierdzić kliknik w link weryfikacyjny:
|
||||
|
||||
$[reset_link]
|
||||
|
||||
Otrzymasz od nas wiadomość zwrotną zawierającą nowe hasło.
|
||||
|
||||
Po zalogowaniu się, będziesz miał możliwość zmiany hasła na takie jakie chcesz.
|
||||
|
||||
Dane do zalogowania:
|
||||
|
||||
Adres strony: $[siteurl]
|
||||
Login: $[email]
|
||||
|
||||
|
||||
|
||||
|
||||
Z poważaniem,
|
||||
$[sitename] Administrator
|
||||
|
||||
|
9449
view/pl/messages.po
Normal file
9449
view/pl/messages.po
Normal file
File diff suppressed because it is too large
Load diff
20
view/pl/passchanged_eml.tpl
Normal file
20
view/pl/passchanged_eml.tpl
Normal file
|
@ -0,0 +1,20 @@
|
|||
|
||||
Drogi $[username],
|
||||
Twoje hasło zostało zmienione. Zachowaj tę
|
||||
Informację dla dokumentacji (lub zmień swoje hasło
|
||||
na takie, które zapamiętasz).
|
||||
|
||||
|
||||
Dane do logowania:
|
||||
|
||||
Strona:»$[siteurl]
|
||||
Twój login:»$[email]
|
||||
Twoje nowe hasło:»$[new_password]
|
||||
|
||||
Po zalogowaniu możesz zmienić swoje hasło w ustawieniach konta
|
||||
|
||||
|
||||
Z poważaniem,
|
||||
$[sitename] Administrator
|
||||
|
||||
|
36
view/pl/register_open_eml.tpl
Normal file
36
view/pl/register_open_eml.tpl
Normal file
|
@ -0,0 +1,36 @@
|
|||
|
||||
Drogi $[username],
|
||||
Dziękujemy za rejestrację na $[sitename]. Twoje konto zostało utworzone pomyślnie.
|
||||
Dane do logowania:
|
||||
|
||||
|
||||
Strona:»$[siteurl]
|
||||
Twój Nick:»$[email]
|
||||
Hasło:»$[password]
|
||||
|
||||
Możesz zmienić swoje hasło odwiedzając zakładkę ustawienia konta po zalogowaniu
|
||||
|
||||
się.
|
||||
|
||||
Przejrzyj też inne ustawienia konta. To zajmie Ci tylko chwilę.
|
||||
|
||||
Jeżeli chcesz, by inni mogli Cię łatwo znaleść wystarczy dodać podstawowe informacje
|
||||
o sobie na stronie "Profile".
|
||||
|
||||
Zalecamy dodać prawdziwe imię i nazwisko, zdjęcie profilowe,
|
||||
słowa kluczowe (pomocne w zdobywaniu nowych przyjaciół) - i
|
||||
może kraj, w którym mieszkasz, jeżeli nie chcesz dodać bardziej szczegółowych
|
||||
|
||||
informacji niż ta.
|
||||
|
||||
Szanujemy też twoją prywatność, więc żadna z podpowiadanych wyżej czynności nie jest przymusowa.
|
||||
Jeżeli jesteś nowy i nie znasz tu nikogo, mogą one jedynie
|
||||
pomóć w zdobywaniu nowych znajomości.
|
||||
|
||||
|
||||
Dziękujemy i witamy na $[sitename].
|
||||
|
||||
Z poważaniem,
|
||||
$[sitename] Administrator
|
||||
|
||||
|
25
view/pl/register_verify_eml.tpl
Normal file
25
view/pl/register_verify_eml.tpl
Normal file
|
@ -0,0 +1,25 @@
|
|||
|
||||
Nowy wniosek o rejestrację użytkownika wpłynął na $[sitename] i wymaga
|
||||
potwierdzenia.
|
||||
|
||||
|
||||
Oto szczegóły konta:
|
||||
|
||||
Pełna nazwa:»$[username]
|
||||
Jesteś na: $[siteurl]
|
||||
Login:»$[email]
|
||||
|
||||
|
||||
Aby potwierdzić rejestrację wejdź na:
|
||||
|
||||
|
||||
$[siteurl]/regmod/allow/$[hash]
|
||||
|
||||
|
||||
Aby anulować rejestrację i usunąć konto wejdź na:
|
||||
|
||||
|
||||
$[siteurl]/regmod/deny/$[hash]
|
||||
|
||||
|
||||
Dziękuję.
|
17
view/pl/request_notify_eml.tpl
Normal file
17
view/pl/request_notify_eml.tpl
Normal file
|
@ -0,0 +1,17 @@
|
|||
|
||||
Drogi/a $[myname],
|
||||
|
||||
Otrzymałeś właśnie zaproszenie do znajomych na stronie $[sitename]
|
||||
|
||||
od '$[requestor]'.
|
||||
|
||||
Skorzystaj z tego linku, aby odwiedzić jego profil: $[url].
|
||||
|
||||
Proszę się zalogować, aby zobaczyć pełen opis
|
||||
i zaakceptować lub zignorować / anulować.
|
||||
|
||||
$[siteurl]
|
||||
|
||||
Pozdrawiam
|
||||
|
||||
$[sitename] administrator
|
2052
view/pl/strings.php
Normal file
2052
view/pl/strings.php
Normal file
File diff suppressed because it is too large
Load diff
11
view/pl/update_fail_eml.tpl
Normal file
11
view/pl/update_fail_eml.tpl
Normal file
|
@ -0,0 +1,11 @@
|
|||
Hey,
|
||||
Jestem $sitename.
|
||||
Deweloperzy friendica wydali ostatnio aktualizację $update,
|
||||
ale kiedy próbowałem ją zainstalować, coś poszło nie tak.
|
||||
To musi być szybko poprawione, ale nie mogę zrobić tego sam. Proszę o kontakt z
|
||||
deweloperami friendica, jeśli nie możesz mi pomóc na własną rękę. Moja baza danych może być uszkodzona.
|
||||
|
||||
Komunikat o błędzie: '$error'.
|
||||
|
||||
Przepraszam,
|
||||
twój serwer friendica w $siteurl
|
|
@ -109,14 +109,14 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
|
|||
#notifications{width:170px;height:20px;font-size:small;top:-19px;left:4px;position:absolute;}
|
||||
#nav-floater{position:fixed;top:20px;right:1%;padding:5px;background:#1d1f1d;color:transparent;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;z-index:100;width:270px;height:60px;}
|
||||
#nav-buttons{clear:both;list-style:none;padding:0px;margin:0px;height:25px;}#nav-buttons>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
|
||||
#nav-buttons-2{clear:both;list-style:none;padding:0px;margin:0px;left:136px;top:-20px;position:relative;width:6em;height:25px;}#nav-buttons-2>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
|
||||
#nav-buttons-2{clear:both;list-style:none;padding:0px;margin:0px;left:102px;top:-20px;position:relative;width:8em;height:25px;}#nav-buttons-2>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
|
||||
.floaterflip{display:block;position:fixed;z-index:110;top:56px;right:19px;width:22px;height:22px;overflow:hidden;margin:0px;background:transparent url(dark/icons.png) -190px -60px no-repeat;}
|
||||
.search-box{display:inline-block;margin:5px;position:fixed;right:0px;bottom:0px;z-index:100;background:#1d1f1d;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
|
||||
#search-text,#mini-search-text{background:white;color:#2e2f2e;}
|
||||
#search-text{border:1px solid #eeeeee;margin:5px 0;}
|
||||
#mini-search-text{font-size:8pt;height:14px;width:10em;margin:5px;}
|
||||
#scrollup{position:fixed;right:5px;bottom:40px;z-index:100;}#scrollup a:hover{text-decoration:none;border:0;}
|
||||
#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:35%;margin:5px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;top:4px;left:7px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
|
||||
#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:35%;margin:5px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;top:4px;left:4px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
|
||||
#user-menu-label{font-size:small;padding:0px 20px 10px 5px;height:10px;display:block;}
|
||||
.nav-ajax-update,.nav-ajax-left{width:30px;height:19px;background:transparent url(dark/notifications.png) 0 0 no-repeat;color:#111111;font-weight:bold;font-size:0.8em;padding-top:0.2em;text-align:center;float:left;margin:0 -1px 0 3px;display:block;visibility:hidden;}
|
||||
.nav-ajax-update.show,.nav-ajax-left.show{visibility:visible;}
|
||||
|
|
|
@ -109,14 +109,14 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
|
|||
#notifications{width:170px;height:20px;font-size:small;top:-19px;left:4px;position:absolute;}
|
||||
#nav-floater{position:fixed;top:20px;right:1%;padding:5px;background:#2e3436;color:transparent;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;z-index:100;width:270px;height:60px;}
|
||||
#nav-buttons{clear:both;list-style:none;padding:0px;margin:0px;height:25px;}#nav-buttons>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
|
||||
#nav-buttons-2{clear:both;list-style:none;padding:0px;margin:0px;left:136px;top:-20px;position:relative;width:6em;height:25px;}#nav-buttons-2>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
|
||||
#nav-buttons-2{clear:both;list-style:none;padding:0px;margin:0px;left:102px;top:-20px;position:relative;width:8em;height:25px;}#nav-buttons-2>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
|
||||
.floaterflip{display:block;position:fixed;z-index:110;top:56px;right:19px;width:22px;height:22px;overflow:hidden;margin:0px;background:transparent url(light/icons.png) -190px -60px no-repeat;}
|
||||
.search-box{display:inline-block;margin:5px;position:fixed;right:0px;bottom:0px;z-index:100;background:#2e3436;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
|
||||
#search-text,#mini-search-text{background:white;color:#111111;}
|
||||
#search-text{border:1px solid #999999;margin:5px 0;}
|
||||
#mini-search-text{font-size:8pt;height:14px;width:10em;margin:5px;}
|
||||
#scrollup{position:fixed;right:5px;bottom:40px;z-index:100;}#scrollup a:hover{text-decoration:none;border:0;}
|
||||
#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:35%;margin:5px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;top:4px;left:7px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
|
||||
#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:35%;margin:5px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;top:4px;left:4px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
|
||||
#user-menu-label{font-size:small;padding:0px 20px 10px 5px;height:10px;display:block;}
|
||||
.nav-ajax-update,.nav-ajax-left{width:30px;height:19px;background:transparent url(light/notifications.png) 0 0 no-repeat;color:#111111;font-weight:bold;font-size:0.8em;padding-top:0.2em;text-align:center;float:left;margin:0 -1px 0 3px;display:block;visibility:hidden;}
|
||||
.nav-ajax-update.show,.nav-ajax-left.show{visibility:visible;}
|
||||
|
|
|
@ -44,10 +44,6 @@
|
|||
<li><a id="nav-apps-link" class="nav-link $nav.apps.2"
|
||||
href="$nav.apps.0" title="$nav.apps.1">$nav.apps.1</a></li>
|
||||
{{ endif }}
|
||||
{{ if $nav.help }}
|
||||
<li><a id="nav-help-link" class="nav-link $nav.help.2"
|
||||
href="$nav.help.0" title="$nav.help.1">$nav.help.1</a></li>
|
||||
{{ endif }}
|
||||
</ul>
|
||||
|
||||
<div id="user-menu">
|
||||
|
@ -89,6 +85,10 @@
|
|||
{{ if $nav.manage }}
|
||||
<li><a id="nav-manage-link" class="nav-link $nav.manage.2" href="$nav.manage.0" title="$nav.manage.1">$nav.manage.1</a></li>
|
||||
{{ endif }}
|
||||
{{ if $nav.help }}
|
||||
<li><a id="nav-help-link" class="nav-link $nav.help.2"
|
||||
href="$nav.help.0" title="$nav.help.1">$nav.help.1</a></li>
|
||||
{{ endif }}
|
||||
</ul>
|
||||
|
||||
{{ if $userinfo }}
|
||||
|
|
|
@ -430,6 +430,9 @@ div.wall-item-content-wrapper.shiny {
|
|||
height: 50px;
|
||||
}
|
||||
|
||||
#login-submit-wrapper {
|
||||
clear: both;
|
||||
}
|
||||
#login-submit-button {
|
||||
/* margin-top: 10px; */
|
||||
margin-left: 200px;
|
||||
|
@ -3295,3 +3298,10 @@ ul.menu-popup {
|
|||
#datebrowse-sidebar select {
|
||||
margin-left: 25px;
|
||||
}
|
||||
|
||||
#div_id_remember label {
|
||||
width: 170px;
|
||||
}
|
||||
#div_id_remember input {
|
||||
width: 20px;
|
||||
}
|
|
@ -11,7 +11,7 @@
|
|||
<?php if( $a->module === 'home' ) { ?>
|
||||
<center>
|
||||
<div class="login-button">
|
||||
<a href="login" class="login-button-link"><img class="login-button-image" src="/images/friendica-1600.png" title="Click to log in"></a>
|
||||
<a href="login" class="login-button-link"><img class="login-button-image" src="images/friendica-1600.png" title="Click to log in"></a>
|
||||
</div>
|
||||
</center>
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<script type="text/javascript">
|
||||
tinyMCE.init({ mode : "none"});
|
||||
</script>-->
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/jquery.divgrow-1.3.1.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost-mobile/js/main.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/js/jquery.textinputs.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost-mobile/js/fk.autocomplete.min.js" ></script>
|
||||
<!--<script type="text/javascript" src="$baseurl/library/fancybox/jquery.fancybox-1.3.4.pack.js"></script>-->
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
<div class='field checkbox'>
|
||||
<div class='field checkbox' id='div_id_$field.0'>
|
||||
<label id='label_id_$field.0' for='id_$field.0'>$field.1</label>
|
||||
<input type="checkbox" name='$field.0' id='id_$field.0' value="1" {{ if $field.2 }}checked="checked"{{ endif }}><br />
|
||||
<span class='field_help' id='help_id_$field.0'>$field.3</span>
|
||||
|
|
|
@ -29,5 +29,5 @@
|
|||
</script>
|
||||
<script type="text/javascript" src="$baseurl/js/jquery.js" ></script>
|
||||
<script type="text/javascript">var $j = jQuery.noConflict();</script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost-mobile/js/main.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost-mobile/js/jquery.divgrow-1.3.1.f1.min.js" ></script>
|
||||
|
||||
|
|
92
view/theme/frost-mobile/js/jquery.divgrow-1.3.1.f1.js
Normal file
92
view/theme/frost-mobile/js/jquery.divgrow-1.3.1.f1.js
Normal file
|
@ -0,0 +1,92 @@
|
|||
/*
|
||||
* Copyright (c) 2010 Simon Hibbard
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Version: V1.3.1-f1
|
||||
* Release: 22-12-2010
|
||||
* Based on jQuery 1.4.2
|
||||
*
|
||||
* 2012-10-29: Modified by Zach Prezkuta to allow dynamic full heights
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
var divgrowid = 0;
|
||||
$.fn.divgrow = function (options) {
|
||||
var options = $.extend({}, { initialHeight: 100, moreText: "+ Show More", lessText: "- Show Less", speed: 1000, showBrackets: true }, options);
|
||||
|
||||
return this.each(function () {
|
||||
divgrowid++;
|
||||
|
||||
obj = $(this);
|
||||
|
||||
//var fullHeight = obj.height() + 10;
|
||||
|
||||
obj.css('height', options.initialHeight).css('overflow', 'hidden');
|
||||
if (options.showBrackets) {
|
||||
obj.after('<p class="divgrow-brackets">[…]</p><a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>');
|
||||
}
|
||||
else {
|
||||
obj.after('<a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>');
|
||||
}
|
||||
$("a.divgrow-showmore").html(options.moreText);
|
||||
|
||||
$("." + "divgrow-obj-" + divgrowid).toggle(function () {
|
||||
//alert(obj.attr('class'));
|
||||
// Set the height from the elements rel value
|
||||
//var height = $(this).prevAll("div:first").attr('rel');
|
||||
|
||||
var fullHeight = $(this).prevAll("div:first")[0].scrollHeight + 10;
|
||||
$(this).prevAll("div:first").animate({ height: fullHeight + "px" }, options.speed, function () { // Animation complete.
|
||||
|
||||
// Hide the overlay text when expanded, change the link text
|
||||
if (options.showBrackets) {
|
||||
$(this).nextAll("p.divgrow-brackets:first").fadeOut();
|
||||
}
|
||||
$(this).nextAll("a.divgrow-showmore:first").html(options.lessText);
|
||||
|
||||
});
|
||||
|
||||
|
||||
}, function () {
|
||||
|
||||
$(this).prevAll("div:first").stop(true, false).animate({ height: options.initialHeight }, options.speed, function () { // Animation complete.
|
||||
|
||||
// show the overlay text while closed, change the link text
|
||||
if (options.showBrackets) {
|
||||
$(this).nextAll("p.divgrow-brackets:first").stop(true, false).fadeIn();
|
||||
}
|
||||
$(this).nextAll("a.divgrow-showmore:first").stop(true, false).html(options.moreText);
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
};
|
||||
})(jQuery);
|
||||
|
||||
|
||||
|
||||
|
||||
|
30
view/theme/frost-mobile/js/jquery.divgrow-1.3.1.f1.min.js
vendored
Normal file
30
view/theme/frost-mobile/js/jquery.divgrow-1.3.1.f1.min.js
vendored
Normal file
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* Copyright (c) 2010 Simon Hibbard
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*//*
|
||||
* Version: V1.3.1-f1
|
||||
* Release: 22-12-2010
|
||||
* Based on jQuery 1.4.2
|
||||
*
|
||||
* 2012-10-29: Modified by Zach Prezkuta to allow dynamic full heights
|
||||
*/(function(e){var t=0;e.fn.divgrow=function(n){var n=e.extend({},{initialHeight:100,moreText:"+ Show More",lessText:"- Show Less",speed:1e3,showBrackets:!0},n);return this.each(function(){t++,obj=e(this),obj.css("height",n.initialHeight).css("overflow","hidden"),n.showBrackets?obj.after('<p class="divgrow-brackets">[…]</p><a href="#" class="divgrow-showmore divgrow-obj-'+t+'"'+"></a>"):obj.after('<a href="#" class="divgrow-showmore divgrow-obj-'+t+'"'+"></a>"),e("a.divgrow-showmore").html(n.moreText),e(".divgrow-obj-"+t).toggle(function(){var t=e(this).prevAll("div:first")[0].scrollHeight+10;e(this).prevAll("div:first").animate({height:t+"px"},n.speed,function(){n.showBrackets&&e(this).nextAll("p.divgrow-brackets:first").fadeOut(),e(this).nextAll("a.divgrow-showmore:first").html(n.lessText)})},function(){e(this).prevAll("div:first").stop(!0,!1).animate({height:n.initialHeight},n.speed,function(){n.showBrackets&&e(this).nextAll("p.divgrow-brackets:first").stop(!0,!1).fadeIn(),e(this).nextAll("a.divgrow-showmore:first").stop(!0,!1).html(n.moreText)})})})}})(jQuery);
|
|
@ -38,6 +38,8 @@
|
|||
|
||||
msie = $j.browser.msie ;
|
||||
|
||||
collapseHeight();
|
||||
|
||||
/* setup tooltips *//*
|
||||
$j("a,.tt").each(function(){
|
||||
var e = $j(this);
|
||||
|
@ -333,20 +335,7 @@
|
|||
});
|
||||
|
||||
|
||||
var bimgs = $j(".wall-item-body > img").not(function() { return this.complete; });
|
||||
var bimgcount = bimgs.length;
|
||||
|
||||
if (bimgcount) {
|
||||
bimgs.load(function() {
|
||||
bimgcount--;
|
||||
if (! bimgcount) {
|
||||
collapseHeight();
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
collapseHeight();
|
||||
}
|
||||
collapseHeight();
|
||||
|
||||
// reset vars for inserting individual items
|
||||
|
||||
|
@ -385,14 +374,18 @@
|
|||
});
|
||||
}
|
||||
|
||||
function collapseHeight() {
|
||||
$j(".wall-item-body").each(function() {
|
||||
if($j(this).height() > 310) {
|
||||
if(! $j(this).hasClass('divmore')) {
|
||||
$j(this).divgrow({ initialHeight: 300, showBrackets: false, speed: 0 });
|
||||
$j(this).addClass('divmore');
|
||||
}
|
||||
}
|
||||
function collapseHeight(elems) {
|
||||
var elemName = '.wall-item-body:not(.divmore)';
|
||||
if(typeof elems != 'undefined') {
|
||||
elemName = elems + ' ' + elemName;
|
||||
}
|
||||
$j(elemName).each(function() {
|
||||
if($j(this).height() > 350) {
|
||||
$j('html').height($j('html').height());
|
||||
$j(this).divgrow({ initialHeight: 300, showBrackets: false, speed: 0 });
|
||||
$j(this).addClass('divmore');
|
||||
$j('html').height('auto');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -542,6 +535,7 @@
|
|||
else {
|
||||
$j("#collapsed-comments-" + id).show();
|
||||
$j("#hide-comments-" + id).html(window.showFewer);
|
||||
collapseHeight("#collapsed-comments-" + id);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
2
view/theme/frost-mobile/js/main.min.js
vendored
2
view/theme/frost-mobile/js/main.min.js
vendored
File diff suppressed because one or more lines are too long
|
@ -9,7 +9,7 @@ $j(document).ready(function() {
|
|||
case 'jot-header':
|
||||
var uploader = new window.AjaxUpload(
|
||||
'wall-image-upload',
|
||||
{ action: 'wall_upload/'+window.nickname,
|
||||
{ action: 'wall_upload/'+window.nickname+'?nomce=1',
|
||||
name: 'userfile',
|
||||
onSubmit: function(file,ext) { $j('#profile-rotator').show(); },
|
||||
onComplete: function(file,response) {
|
||||
|
@ -21,7 +21,7 @@ $j(document).ready(function() {
|
|||
|
||||
var file_uploader = new window.AjaxUpload(
|
||||
'wall-file-upload',
|
||||
{ action: 'wall_attach/'+window.nickname,
|
||||
{ action: 'wall_attach/'+window.nickname+'?nomce=1',
|
||||
name: 'userfile',
|
||||
onSubmit: function(file,ext) { $j('#profile-rotator').show(); },
|
||||
onComplete: function(file,response) {
|
||||
|
@ -34,7 +34,7 @@ $j(document).ready(function() {
|
|||
case 'msg-header':
|
||||
var uploader = new window.AjaxUpload(
|
||||
'prvmail-upload',
|
||||
{ action: 'wall_upload/' + window.nickname,
|
||||
{ action: 'wall_upload/'+window.nickname+'?nomce=1',
|
||||
name: 'userfile',
|
||||
onSubmit: function(file,ext) { $j('#profile-rotator').show(); },
|
||||
onComplete: function(file,response) {
|
||||
|
@ -251,14 +251,14 @@ function insertFormatting(comment,BBcode,id) {
|
|||
textarea.focus();
|
||||
selected = document.selection.createRange();
|
||||
if (BBcode == "url"){
|
||||
selected.text = "["+BBcode+"]" + "http://" + selected.text + "[/"+BBcode+"]";
|
||||
selected.text = "["+BBcode+"=http://]" + selected.text + "[/"+BBcode+"]";
|
||||
} else
|
||||
selected.text = "["+BBcode+"]" + selected.text + "[/"+BBcode+"]";
|
||||
} else if (textarea.selectionStart || textarea.selectionStart == "0") {
|
||||
var start = textarea.selectionStart;
|
||||
var end = textarea.selectionEnd;
|
||||
if (BBcode == "url"){
|
||||
textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + "http://" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
|
||||
textarea.value = textarea.value.substring(0, start) + "["+BBcode+"=http://]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
|
||||
} else
|
||||
textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
|
||||
}
|
||||
|
|
2
view/theme/frost-mobile/js/theme.min.js
vendored
2
view/theme/frost-mobile/js/theme.min.js
vendored
File diff suppressed because one or more lines are too long
|
@ -24,15 +24,17 @@ div.jGrowl div.notice {
|
|||
background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
|
||||
color: #ffffff;
|
||||
padding-left: 58px;
|
||||
margin: 0px;
|
||||
}
|
||||
div.jGrowl div.info {
|
||||
background: #364e59 url("../../../images/icons/48/info.png") no-repeat 5px center;
|
||||
color: #ffffff;
|
||||
padding-left: 58px;
|
||||
margin: 0px;
|
||||
}
|
||||
#jGrowl.top-right {
|
||||
top: 15px;
|
||||
right: 15px;
|
||||
right: 10px;
|
||||
}
|
||||
|
||||
.login-button {
|
||||
|
@ -75,6 +77,20 @@ div.section-wrapper {
|
|||
margin-left: 50px;
|
||||
}
|
||||
|
||||
.field.checkbox label {
|
||||
margin-left: auto;
|
||||
float: auto;
|
||||
/*margin-left: 100px;*/
|
||||
}
|
||||
.field.checkbox input {
|
||||
width: auto;
|
||||
margin-left: 30px;
|
||||
}
|
||||
|
||||
#div_id_remember {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#login_openid {
|
||||
margin-top: 50px;
|
||||
}
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
<input type="submit" name="submit" id="login-submit-button" value="$login" />
|
||||
</div>
|
||||
|
||||
{{ inc field_checkbox.tpl with $field=$lremember }}{{ endinc }}
|
||||
|
||||
<br /><br />
|
||||
<div class="login-extra-links">
|
||||
{{ if $register }}<a href="register" title="$register.title" id="register-link">$register.desc</a>{{ endif }}
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
<link rel="stylesheet" href="$baseurl/view/theme/frost-mobile/login-style.css" type="text/css" media="all" />
|
||||
<!--<link rel="stylesheet" href="$baseurl/view/theme/frost-mobile/login-style.css" type="text/css" media="all" />-->
|
||||
|
||||
|
|
|
@ -65,7 +65,7 @@ img { border :0px; }
|
|||
width: 384px;
|
||||
}*/
|
||||
|
||||
code {
|
||||
/*code {
|
||||
font-family: Courier, monospace;
|
||||
white-space: pre;
|
||||
display: block;
|
||||
|
@ -85,6 +85,24 @@ blockquote {
|
|||
margin-right: 0px;
|
||||
width: 260px;
|
||||
overflow: hidden;
|
||||
}*/
|
||||
|
||||
code {
|
||||
font-family: Courier, monospace;
|
||||
white-space: pre;
|
||||
display: block;
|
||||
overflow: auto;
|
||||
border: 1px solid #444;
|
||||
background: #EEE;
|
||||
color: #444;
|
||||
padding: 10px;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
background-color: #f4f8f9;
|
||||
border-left: 4px solid #dae4ee;
|
||||
padding: 0.4em;
|
||||
}
|
||||
|
||||
.icollapse-wrapper, .ccollapse-wrapper {
|
||||
|
@ -1368,10 +1386,19 @@ input#dfrn-url {
|
|||
-webkit-border-radius: 0;
|
||||
}
|
||||
|
||||
.wall-item-content blockquote {
|
||||
margin-left: 0px;
|
||||
margin-right: 0px;
|
||||
}
|
||||
|
||||
.comment .wall-item-content img {
|
||||
max-width: 280px;
|
||||
}
|
||||
|
||||
.comment .wall-item-content ul {
|
||||
padding-left: 1.5em;
|
||||
}
|
||||
|
||||
.divgrow-showmore {
|
||||
display: block;
|
||||
clear: both;
|
||||
|
@ -1411,7 +1438,6 @@ input#dfrn-url {
|
|||
}
|
||||
|
||||
.wall-item-body code {
|
||||
width: 260px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
|
@ -1421,12 +1447,6 @@ input#dfrn-url {
|
|||
/* width: 280px;*/
|
||||
}
|
||||
|
||||
.comment .wall-item-body blockquote {
|
||||
margin-left: 0px;
|
||||
margin-right: 0px;
|
||||
width: 260px;
|
||||
}
|
||||
|
||||
.wall-item-tools {
|
||||
clear: both;
|
||||
/* background-image: url("head.jpg");
|
||||
|
@ -3404,6 +3424,7 @@ aside input[type='text'] {
|
|||
}
|
||||
|
||||
|
||||
|
||||
.field .onoff {
|
||||
float: left;
|
||||
width: 80px;
|
||||
|
@ -3714,6 +3735,7 @@ aside input[type='text'] {
|
|||
background-size: 100% 100%;
|
||||
background-image: url('images/star.png');
|
||||
background-repeat: no-repeat;
|
||||
|
||||
opacity: 0.5;
|
||||
}
|
||||
/*.tagged { background-position: -48px -48px; }*/
|
||||
|
@ -3863,15 +3885,17 @@ div.jGrowl div.notice {
|
|||
background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
|
||||
color: #ffffff;
|
||||
padding-left: 58px;
|
||||
margin: 0px;
|
||||
}
|
||||
div.jGrowl div.info {
|
||||
background: #364e59 url("../../../images/icons/48/info.png") no-repeat 5px center;
|
||||
color: #ffffff;
|
||||
padding-left: 58px;
|
||||
margin: 0px;
|
||||
}
|
||||
#jGrowl.top-right {
|
||||
top: 15px;
|
||||
right: 15px;
|
||||
right: 10px;
|
||||
}
|
||||
.qcomment {
|
||||
border: 1px solid #EEE;
|
||||
|
@ -4009,7 +4033,7 @@ width:650px;
|
|||
}
|
||||
}*/
|
||||
|
||||
@media only screen and (min-device-width: 768px)
|
||||
/*@media only screen and (min-device-width: 768px)
|
||||
{
|
||||
.wall-item-body code {
|
||||
width: 700px;
|
||||
|
@ -4023,5 +4047,5 @@ width:650px;
|
|||
width: 700px;
|
||||
}
|
||||
|
||||
}
|
||||
}*/
|
||||
|
||||
|
|
|
@ -4,29 +4,27 @@
|
|||
* Name: Frost--mobile version
|
||||
* Description: Like frosted glass
|
||||
* Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0).
|
||||
* Version: Version 0.2.15
|
||||
* Version: Version 0.2.16
|
||||
* Author: Zach P <techcity@f.shmuz.in>
|
||||
* Maintainer: Zach P <techcity@f.shmuz.in>
|
||||
*/
|
||||
|
||||
$a->theme_info = array();
|
||||
$a->sourcename = 'Friendica mobile web';
|
||||
$a->videowidth = 250;
|
||||
$a->videoheight = 200;
|
||||
$a->theme_thread_allow = false;
|
||||
$a->force_max_items = 10;
|
||||
|
||||
function frost_mobile_init(&$a) {
|
||||
function frost_mobile_content_loaded(&$a) {
|
||||
|
||||
// I could do this in style.php, but by having the CSS in a file the browser will cache it,
|
||||
// making pages load faster
|
||||
if( $a->module === 'home' || $a->module === 'login' || $a->module === 'register' || $a->module === 'lostpass' ) {
|
||||
$a->page['htmlhead'] = str_replace('$stylesheet', $a->get_baseurl() . '/view/theme/frost-mobile/login-style.css', $a->page['htmlhead']);
|
||||
|
||||
// $a->page['htmlhead'] = str_replace('$stylesheet', $a->get_baseurl() . '/view/theme/frost-mobile/login-style.css', $a->page['htmlhead']);
|
||||
$a->theme['stylesheet'] = $a->get_baseurl() . '/view/theme/frost-mobile/login-style.css';
|
||||
}
|
||||
if( $a->module === 'login' )
|
||||
$a->page['end'] .= '<script type="text/javascript"> $j(document).ready(function() { $j("#id_" + window.loginName).focus();} );</script>';
|
||||
|
||||
|
||||
$a->sourcename = 'Friendica mobile web';
|
||||
$a->videowidth = 250;
|
||||
$a->videoheight = 200;
|
||||
$a->theme_thread_allow = false;
|
||||
$a->force_max_items = 10;
|
||||
|
||||
}
|
||||
|
|
|
@ -12,7 +12,8 @@
|
|||
{{ if $item.owner_url }}
|
||||
<div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
|
||||
<a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
|
||||
<img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" /></a>
|
||||
<img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" onError="this.src='../../../images/person-48.jpg';" />
|
||||
</a>
|
||||
</div>
|
||||
<div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="$item.wall" /></div>
|
||||
{{ endif }}
|
||||
|
@ -21,7 +22,8 @@
|
|||
onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">-->
|
||||
<div class="wall-item-photo-wrapper{{ if $item.owner_url }} wwfrom{{ endif }}" id="wall-item-photo-wrapper-$item.id">
|
||||
<a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
|
||||
<img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
|
||||
<img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" onError="this.src='../../../images/person-48.jpg';" />
|
||||
</a>
|
||||
<!--<span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
|
||||
<div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
|
||||
<ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
</script>
|
||||
<script type="text/javascript" src="$baseurl/js/jquery.js" ></script>
|
||||
<script type="text/javascript">var $j = jQuery.noConflict();</script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/jquery.divgrow-1.3.1.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/jquery.divgrow-1.3.1.f1.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/js/jquery.textinputs.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/fk.autocomplete.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/library/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
|
||||
|
@ -15,6 +15,6 @@
|
|||
<script type="text/javascript" src="$baseurl/library/jgrowl/jquery.jgrowl_minimized.js"></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/acl.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/js/webtoolkit.base64.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/theme.min.js"></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/main.min.js" ></script>
|
||||
<script type="text/javascript" src="$baseurl/view/theme/frost/js/theme.min.js"></script>
|
||||
|
||||
|
|
92
view/theme/frost/js/jquery.divgrow-1.3.1.f1.js
Normal file
92
view/theme/frost/js/jquery.divgrow-1.3.1.f1.js
Normal file
|
@ -0,0 +1,92 @@
|
|||
/*
|
||||
* Copyright (c) 2010 Simon Hibbard
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Version: V1.3.1-f1
|
||||
* Release: 22-12-2010
|
||||
* Based on jQuery 1.4.2
|
||||
*
|
||||
* 2012-10-29: Modified by Zach Prezkuta to allow dynamic full heights
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
var divgrowid = 0;
|
||||
$.fn.divgrow = function (options) {
|
||||
var options = $.extend({}, { initialHeight: 100, moreText: "+ Show More", lessText: "- Show Less", speed: 1000, showBrackets: true }, options);
|
||||
|
||||
return this.each(function () {
|
||||
divgrowid++;
|
||||
|
||||
obj = $(this);
|
||||
|
||||
//var fullHeight = obj.height() + 10;
|
||||
|
||||
obj.css('height', options.initialHeight).css('overflow', 'hidden');
|
||||
if (options.showBrackets) {
|
||||
obj.after('<p class="divgrow-brackets">[…]</p><a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>');
|
||||
}
|
||||
else {
|
||||
obj.after('<a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>');
|
||||
}
|
||||
$("a.divgrow-showmore").html(options.moreText);
|
||||
|
||||
$("." + "divgrow-obj-" + divgrowid).toggle(function () {
|
||||
//alert(obj.attr('class'));
|
||||
// Set the height from the elements rel value
|
||||
//var height = $(this).prevAll("div:first").attr('rel');
|
||||
|
||||
var fullHeight = $(this).prevAll("div:first")[0].scrollHeight + 10;
|
||||
$(this).prevAll("div:first").animate({ height: fullHeight + "px" }, options.speed, function () { // Animation complete.
|
||||
|
||||
// Hide the overlay text when expanded, change the link text
|
||||
if (options.showBrackets) {
|
||||
$(this).nextAll("p.divgrow-brackets:first").fadeOut();
|
||||
}
|
||||
$(this).nextAll("a.divgrow-showmore:first").html(options.lessText);
|
||||
|
||||
});
|
||||
|
||||
|
||||
}, function () {
|
||||
|
||||
$(this).prevAll("div:first").stop(true, false).animate({ height: options.initialHeight }, options.speed, function () { // Animation complete.
|
||||
|
||||
// show the overlay text while closed, change the link text
|
||||
if (options.showBrackets) {
|
||||
$(this).nextAll("p.divgrow-brackets:first").stop(true, false).fadeIn();
|
||||
}
|
||||
$(this).nextAll("a.divgrow-showmore:first").stop(true, false).html(options.moreText);
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
};
|
||||
})(jQuery);
|
||||
|
||||
|
||||
|
||||
|
||||
|
30
view/theme/frost/js/jquery.divgrow-1.3.1.f1.min.js
vendored
Normal file
30
view/theme/frost/js/jquery.divgrow-1.3.1.f1.min.js
vendored
Normal file
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* Copyright (c) 2010 Simon Hibbard
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use,
|
||||
* copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following
|
||||
* conditions:
|
||||
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*//*
|
||||
* Version: V1.3.1-f1
|
||||
* Release: 22-12-2010
|
||||
* Based on jQuery 1.4.2
|
||||
*
|
||||
* 2012-10-29: Modified by Zach Prezkuta to allow dynamic full heights
|
||||
*/(function(e){var t=0;e.fn.divgrow=function(n){var n=e.extend({},{initialHeight:100,moreText:"+ Show More",lessText:"- Show Less",speed:1e3,showBrackets:!0},n);return this.each(function(){t++,obj=e(this),obj.css("height",n.initialHeight).css("overflow","hidden"),n.showBrackets?obj.after('<p class="divgrow-brackets">[…]</p><a href="#" class="divgrow-showmore divgrow-obj-'+t+'"'+"></a>"):obj.after('<a href="#" class="divgrow-showmore divgrow-obj-'+t+'"'+"></a>"),e("a.divgrow-showmore").html(n.moreText),e(".divgrow-obj-"+t).toggle(function(){var t=e(this).prevAll("div:first")[0].scrollHeight+10;e(this).prevAll("div:first").animate({height:t+"px"},n.speed,function(){n.showBrackets&&e(this).nextAll("p.divgrow-brackets:first").fadeOut(),e(this).nextAll("a.divgrow-showmore:first").html(n.lessText)})},function(){e(this).prevAll("div:first").stop(!0,!1).animate({height:n.initialHeight},n.speed,function(){n.showBrackets&&e(this).nextAll("p.divgrow-brackets:first").stop(!0,!1).fadeIn(),e(this).nextAll("a.divgrow-showmore:first").stop(!0,!1).html(n.moreText)})})})}})(jQuery);
|
|
@ -38,6 +38,8 @@
|
|||
|
||||
msie = $j.browser.msie ;
|
||||
|
||||
collapseHeight();
|
||||
|
||||
/* setup tooltips *//*
|
||||
$j("a,.tt").each(function(){
|
||||
var e = $j(this);
|
||||
|
@ -359,32 +361,23 @@
|
|||
}
|
||||
/* autocomplete @nicknames */
|
||||
$j(".comment-edit-form textarea").contact_autocomplete(baseurl+"/acl");
|
||||
|
||||
var bimgs = $j(".wall-item-body > img").not(function() { return this.complete; });
|
||||
var bimgcount = bimgs.length;
|
||||
|
||||
if (bimgcount) {
|
||||
bimgs.load(function() {
|
||||
bimgcount--;
|
||||
if (! bimgcount) {
|
||||
collapseHeight();
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
collapseHeight();
|
||||
}
|
||||
|
||||
collapseHeight();
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
function collapseHeight() {
|
||||
$j(".wall-item-body").each(function() {
|
||||
if($j(this).height() > 410) {
|
||||
if(! $j(this).hasClass('divmore')) {
|
||||
$j(this).divgrow({ initialHeight: 400, showBrackets: false, speed: 300 });
|
||||
$j(this).addClass('divmore');
|
||||
}
|
||||
function collapseHeight(elems) {
|
||||
var elemName = '.wall-item-body:not(.divmore)';
|
||||
if(typeof elems != 'undefined') {
|
||||
elemName = elems + ' ' + elemName;
|
||||
}
|
||||
$j(elemName).each(function() {
|
||||
if($j(this).height() > 450) {
|
||||
$j('html').height($j('html').height());
|
||||
$j(this).divgrow({ initialHeight: 400, showBrackets: false, speed: 0 });
|
||||
$j(this).addClass('divmore');
|
||||
$j('html').height('auto');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -535,6 +528,7 @@
|
|||
else {
|
||||
$j("#collapsed-comments-" + id).show();
|
||||
$j("#hide-comments-" + id).html(window.showFewer);
|
||||
collapseHeight("#collapsed-comments-" + id);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
2
view/theme/frost/js/main.min.js
vendored
2
view/theme/frost/js/main.min.js
vendored
File diff suppressed because one or more lines are too long
|
@ -508,14 +508,14 @@ function insertFormatting(comment,BBcode,id) {
|
|||
textarea.focus();
|
||||
selected = document.selection.createRange();
|
||||
if (BBcode == "url"){
|
||||
selected.text = "["+BBcode+"]" + "http://" + selected.text + "[/"+BBcode+"]";
|
||||
selected.text = "["+BBcode+"=http://]" + selected.text + "[/"+BBcode+"]";
|
||||
} else
|
||||
selected.text = "["+BBcode+"]" + selected.text + "[/"+BBcode+"]";
|
||||
} else if (textarea.selectionStart || textarea.selectionStart == "0") {
|
||||
var start = textarea.selectionStart;
|
||||
var end = textarea.selectionEnd;
|
||||
if (BBcode == "url"){
|
||||
textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + "http://" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
|
||||
textarea.value = textarea.value.substring(0, start) + "["+BBcode+"=http://]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
|
||||
} else
|
||||
textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
|
||||
}
|
||||
|
|
2
view/theme/frost/js/theme.min.js
vendored
2
view/theme/frost/js/theme.min.js
vendored
File diff suppressed because one or more lines are too long
|
@ -78,6 +78,19 @@ div.section-wrapper {
|
|||
width: 200px;
|
||||
}
|
||||
|
||||
.field.checkbox label {
|
||||
position: auto;
|
||||
/*margin-left: 100px;*/
|
||||
}
|
||||
.field.checkbox input {
|
||||
width: auto;
|
||||
margin-left: 140px;
|
||||
}
|
||||
|
||||
#div_id_remember {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/*.openid input {*/
|
||||
#id_openid_url, .openid input {
|
||||
background: url(login-bg.gif) no-repeat;
|
||||
|
|
|
@ -25,7 +25,9 @@
|
|||
<input type="submit" name="submit" id="login-submit-button" value="$login" />
|
||||
</div>
|
||||
|
||||
<br /><br /><br /><br />
|
||||
{{ inc field_checkbox.tpl with $field=$lremember }}{{ endinc }}
|
||||
|
||||
<br /><br /><br />
|
||||
<div class="login-extra-links">
|
||||
{{ if $register }}<a href="register" title="$register.title" id="register-link">$register.desc</a>{{ endif }}
|
||||
<a href="lostpass" title="$lostpass" id="lost-password-link" >$lostlink</a>
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
<link rel="stylesheet" href="$baseurl/view/theme/frost/login-style.css" type="text/css" media="all" />
|
||||
<!--<link rel="stylesheet" href="$baseurl/view/theme/frost/login-style.css" type="text/css" media="all" />-->
|
||||
|
||||
|
|
|
@ -85,6 +85,7 @@ blockquote {
|
|||
}
|
||||
.hide-comments-outer:hover {
|
||||
opacity: 1.0;
|
||||
border-bottom: 1px solid #DDD; /* manually prevent the border from changing color */
|
||||
}
|
||||
.hide-comments {
|
||||
margin-left: 5px;
|
||||
|
@ -3418,18 +3419,18 @@ aside input[type='text'] {
|
|||
background-repeat: no-repeat;
|
||||
}
|
||||
/*.dislike { background-position: -112px 0px;}*/
|
||||
.icon.dislike {
|
||||
.tool.dislike {
|
||||
display: block; width: 15px; height: 16px;/* 23 24*/
|
||||
background-size: 100% 100%;
|
||||
background-image: url('images/disapprove-16.png');
|
||||
background-repeat: no-repeat;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.icon.dislike:hover {
|
||||
.tool.dislike:hover {
|
||||
opacity: 1.0;
|
||||
}
|
||||
/*.like { background-position: -128px 0px;}*/
|
||||
.icon.like {
|
||||
.tool.like {
|
||||
display: block; width: 15px; height: 16px;/* 23 24*/
|
||||
margin-right: 6px;
|
||||
background-size: 100% 100%;
|
||||
|
@ -3437,7 +3438,7 @@ aside input[type='text'] {
|
|||
background-repeat: no-repeat;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.icon.like:hover {
|
||||
.tool.like:hover {
|
||||
opacity: 1.0;
|
||||
}
|
||||
/*.link { background-position: -144px 0px;}*/
|
||||
|
@ -3466,14 +3467,14 @@ aside input[type='text'] {
|
|||
.pause { background-position: -48px -16px;}
|
||||
.play { background-position: -64px -16px;}
|
||||
/*.pencil { background-position: -80px -16px;}*/
|
||||
.icon.pencil {
|
||||
.tool.pencil {
|
||||
display: block; width: 16px; height: 16px;
|
||||
background-size: 100% 100%;
|
||||
background-image: url('images/pencil-16.png');
|
||||
background-repeat: no-repeat;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.icon.pencil:hover {
|
||||
.tool.pencil:hover {
|
||||
opacity: 1.0;
|
||||
}
|
||||
/*.small-pencil { background-position: -96px -16px;}*/
|
||||
|
@ -3488,14 +3489,14 @@ aside input[type='text'] {
|
|||
opacity: 1.0;
|
||||
}
|
||||
/*.recycle { background-position: -112px -16px;}*/
|
||||
.icon.recycle {
|
||||
.tool.recycle {
|
||||
display: block; width: 16px; height: 16px;/*24 23*/
|
||||
background-size: 100% 100%;
|
||||
background-image: url('images/recycle-16.png');
|
||||
background-repeat: no-repeat;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.icon.recycle:hover {
|
||||
.tool.recycle:hover {
|
||||
opacity: 1.0;
|
||||
}
|
||||
/*.remote-link { background-position: -128px -16px;}*/
|
||||
|
@ -3556,32 +3557,32 @@ aside input[type='text'] {
|
|||
|
||||
.off { background-position: 0px -48px; }
|
||||
/*.starred { background-position: -16px -48px; }*/
|
||||
.icon.starred {
|
||||
.tool.starred {
|
||||
display: block; width: 16px; height: 16px;
|
||||
background-size: 100% 100%;
|
||||
background-image: url('images/star-yellow-16.png');
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
/*.unstarred { background-position: -32px -48px; }*/
|
||||
.icon.unstarred {
|
||||
.tool.unstarred {
|
||||
display: block; width: 16px; height: 16px;
|
||||
background-size: 100% 100%;
|
||||
background-image: url('images/star-16.png');
|
||||
background-repeat: no-repeat;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.icon.unstarred:hover {
|
||||
.tool.unstarred:hover {
|
||||
opacity: 1.0;
|
||||
}
|
||||
/*.tagged { background-position: -48px -48px; }*/
|
||||
.icon.tagged {
|
||||
.tool.tagged {
|
||||
display: block; width: 16px; height: 16px;
|
||||
background-size: 100% 100%;
|
||||
background-image: url('images/tag-16.png');
|
||||
background-repeat: no-repeat;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.icon.tagged:hover {
|
||||
.tool.tagged:hover {
|
||||
opacity: 1.0;
|
||||
}
|
||||
.yellow { background-position: -64px -48px; }
|
||||
|
|
|
@ -4,25 +4,26 @@
|
|||
* Name: Frost
|
||||
* Description: Like frosted glass
|
||||
* Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0).
|
||||
* Version: Version 0.3
|
||||
* Version: Version 0.3.1
|
||||
* Author: Zach P <techcity@f.shmuz.in>
|
||||
* Maintainer: Zach P <techcity@f.shmuz.in>
|
||||
*/
|
||||
|
||||
$a->theme_info = array();
|
||||
$a->videowidth = 400;
|
||||
$a->videoheight = 330;
|
||||
$a->theme_thread_allow = false;
|
||||
|
||||
function frost_init(&$a) {
|
||||
function frost_content_loaded(&$a) {
|
||||
|
||||
// I could do this in style.php, but by having the CSS in a file the browser will cache it,
|
||||
// making pages load faster
|
||||
if( $a->module === 'home' || $a->module === 'login' || $a->module === 'register' || $a->module === 'lostpass' ) {
|
||||
$a->page['htmlhead'] = str_replace('$stylesheet', $a->get_baseurl() . '/view/theme/frost/login-style.css', $a->page['htmlhead']);
|
||||
//$a->page['htmlhead'] = str_replace('$stylesheet', $a->get_baseurl() . '/view/theme/frost/login-style.css', $a->page['htmlhead']);
|
||||
$a->theme['stylesheet'] = $a->get_baseurl() . '/view/theme/frost/login-style.css';
|
||||
}
|
||||
if( $a->module === 'login' )
|
||||
$a->page['end'] .= '<script type="text/javascript"> $j(document).ready(function() { $j("#id_" + window.loginName).focus();} );</script>';
|
||||
|
||||
$a->videowidth = 400;
|
||||
$a->videoheight = 330;
|
||||
$a->theme_thread_allow = false;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -12,7 +12,8 @@
|
|||
{{ if $item.owner_url }}
|
||||
<div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
|
||||
<a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
|
||||
<img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" /></a>
|
||||
<img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" onError="this.src='../../../images/person-48.jpg';" />
|
||||
</a>
|
||||
</div>
|
||||
<div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="$item.wall" /></div>
|
||||
{{ endif }}
|
||||
|
@ -20,7 +21,8 @@
|
|||
onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
|
||||
onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
|
||||
<a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
|
||||
<img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
|
||||
<img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" onError="this.src='../../../images/person-48.jpg';" />
|
||||
</a>
|
||||
<span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
|
||||
<!-- <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">-->
|
||||
<ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
|
||||
|
@ -63,9 +65,9 @@
|
|||
<div class="wall-item-tools" id="wall-item-tools-$item.id">
|
||||
{{ if $item.vote }}
|
||||
<div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
|
||||
<a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
|
||||
<a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
|
||||
{{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
|
||||
<a href="#" class="tool like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
|
||||
<a href="#" class="tool dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
|
||||
{{ if $item.vote.share }}<a href="#" class="tool recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
|
||||
<img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
|
||||
</div>
|
||||
{{ endif }}
|
||||
|
@ -73,12 +75,12 @@
|
|||
<!--<div class="wall-item-links-wrapper">--><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="wall-item-links-wrapper icon remote-link$item.sparkle"></a><!--</div>-->
|
||||
{{ endif }}
|
||||
{{ if $item.edpost }}
|
||||
<a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
|
||||
<a class="editpost tool pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
|
||||
{{ endif }}
|
||||
|
||||
{{ if $item.star }}
|
||||
<a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
|
||||
<a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
|
||||
<a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item tool $item.isstarred" title="$item.star.toggle"></a>
|
||||
<a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item tool tagged" title="$item.star.tagger"></a>
|
||||
{{ endif }}
|
||||
{{ if $item.filer }}
|
||||
<a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
|
||||
|
|
Loading…
Reference in a new issue