Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
f950d27b3d
8
boot.php
8
boot.php
@ -50,7 +50,7 @@ define ( 'PLATFORM_NAME', 'hubzilla' );
|
||||
define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'H');
|
||||
define ( 'ZOT_REVISION', 1 );
|
||||
|
||||
define ( 'DB_UPDATE_VERSION', 1155 );
|
||||
define ( 'DB_UPDATE_VERSION', 1156 );
|
||||
|
||||
/**
|
||||
* @brief Constant with a HTML line break.
|
||||
@ -333,6 +333,12 @@ define ( 'MENU_ITEM_ZID', 0x0001);
|
||||
define ( 'MENU_ITEM_NEWWIN', 0x0002);
|
||||
define ( 'MENU_ITEM_CHATROOM', 0x0004);
|
||||
|
||||
|
||||
|
||||
define ( 'SITE_TYPE_ZOT', 0);
|
||||
define ( 'SITE_TYPE_NOTZOT', 1);
|
||||
define ( 'SITE_TYPE_UNKNOWN', 2);
|
||||
|
||||
/**
|
||||
* Poll/Survey types
|
||||
*/
|
||||
|
@ -25,8 +25,9 @@ function checksites_run($argv, $argc){
|
||||
if($days < 1)
|
||||
$days = 30;
|
||||
|
||||
$r = q("select * from site where site_dead = 0 and site_update < %s - INTERVAL %s $sql_options ",
|
||||
db_utcnow(), db_quoteinterval($days . ' DAY')
|
||||
$r = q("select * from site where site_dead = 0 and site_update < %s - INTERVAL %s and site_type = %d $sql_options ",
|
||||
db_utcnow(), db_quoteinterval($days . ' DAY'),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
|
||||
if(! $r)
|
||||
|
@ -53,16 +53,33 @@ function deliver_run($argv, $argc) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
||||
// zot sites should all have a site record, unless they've been dead for as long as
|
||||
// your site has existed. Since we don't know for sure what these sites are,
|
||||
// call them unknown
|
||||
|
||||
q("insert into site (site_url, site_update, site_dead, site_type) values ('%s','%s',0,%d) ",
|
||||
dbesc($base),
|
||||
dbesc(datetime_convert()),
|
||||
intval(($r[0]['outq_driver'] === 'post') ? SITE_TYPE_NOTZOT : SITE_TYPE_UNKNOWN)
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// "post" queue driver - used for diaspora and friendica-over-diaspora communications.
|
||||
|
||||
if($r[0]['outq_driver'] === 'post') {
|
||||
|
||||
|
||||
$result = z_post_url($r[0]['outq_posturl'],$r[0]['outq_msg']);
|
||||
if($result['success'] && $result['return_code'] < 300) {
|
||||
logger('deliver: queue post success to ' . $r[0]['outq_posturl'], LOGGER_DEBUG);
|
||||
|
||||
q("update site set site_update = '%s', site_dead = 0 where site_url = '%s' ",
|
||||
dbesc(datetime_convert()),
|
||||
dbesc($site_url)
|
||||
);
|
||||
q("update dreport set status = '%s', dreport_time = '%s' where dreport_queue = '%s' limit 1",
|
||||
dbesc('accepted for delivery'),
|
||||
dbesc(datetime_convert()),
|
||||
|
@ -151,16 +151,18 @@ function sync_directories($dirmode) {
|
||||
|
||||
$realm = get_directory_realm();
|
||||
if ($realm == DIRECTORY_REALM) {
|
||||
$r = q("select * from site where (site_flags & %d) > 0 and site_url != '%s' and ( site_realm = '%s' or site_realm = '') ",
|
||||
$r = q("select * from site where (site_flags & %d) > 0 and site_url != '%s' and site_type = %d and ( site_realm = '%s' or site_realm = '') ",
|
||||
intval(DIRECTORY_MODE_PRIMARY|DIRECTORY_MODE_SECONDARY),
|
||||
dbesc(z_root()),
|
||||
intval(SITE_TYPE_ZOT),
|
||||
dbesc($realm)
|
||||
);
|
||||
} else {
|
||||
$r = q("select * from site where (site_flags & %d) > 0 and site_url != '%s' and site_realm like '%s' ",
|
||||
$r = q("select * from site where (site_flags & %d) > 0 and site_url != '%s' and site_realm like '%s' and site_type = %d ",
|
||||
intval(DIRECTORY_MODE_PRIMARY|DIRECTORY_MODE_SECONDARY),
|
||||
dbesc(z_root()),
|
||||
dbesc(protect_sprintf('%' . $realm . '%'))
|
||||
dbesc(protect_sprintf('%' . $realm . '%')),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
}
|
||||
|
||||
@ -187,9 +189,10 @@ function sync_directories($dirmode) {
|
||||
intval($r[0]['site_valid'])
|
||||
);
|
||||
|
||||
$r = q("select * from site where (site_flags & %d) > 0 and site_url != '%s'",
|
||||
$r = q("select * from site where (site_flags & %d) > 0 and site_url != '%s' and site_type = %d ",
|
||||
intval(DIRECTORY_MODE_PRIMARY|DIRECTORY_MODE_SECONDARY),
|
||||
dbesc(z_root())
|
||||
dbesc(z_root()),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
}
|
||||
if (! $r)
|
||||
|
@ -28,9 +28,10 @@ function externals_run($argv, $argc){
|
||||
}
|
||||
else {
|
||||
$randfunc = db_getfunc('RAND');
|
||||
$r = q("select site_url, site_pull from site where site_url != '%s' and site_flags != %d order by $randfunc limit 1",
|
||||
$r = q("select site_url, site_pull from site where site_url != '%s' and site_flags != %d and site_type = %d order by $randfunc limit 1",
|
||||
dbesc(z_root()),
|
||||
intval(DIRECTORY_MODE_STANDALONE)
|
||||
intval(DIRECTORY_MODE_STANDALONE),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
if($r)
|
||||
$url = $r[0]['site_url'];
|
||||
|
@ -16,7 +16,9 @@ function is_matrix_url($url) {
|
||||
|
||||
function prune_hub_reinstalls() {
|
||||
|
||||
$r = q("select site_url from site where true");
|
||||
$r = q("select site_url from site where site_type = %d",
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
if($r) {
|
||||
foreach($r as $rr) {
|
||||
$x = q("select count(*) as t, hubloc_sitekey, max(hubloc_connected) as c from hubloc where hubloc_url = '%s' group by hubloc_sitekey order by c",
|
||||
|
@ -3522,11 +3522,17 @@ function mail_store($arr) {
|
||||
dbesc($arr['mid']),
|
||||
intval($arr['channel_id'])
|
||||
);
|
||||
|
||||
if($r) {
|
||||
logger('mail_store: duplicate item ignored. ' . print_r($arr,true));
|
||||
return 0;
|
||||
}
|
||||
|
||||
if(! $r && $arr['mail_recalled'] == 1) {
|
||||
logger('mail_store: recalled item not found. ' . print_r($arr,true));
|
||||
return 0;
|
||||
}
|
||||
|
||||
call_hooks('post_mail',$arr);
|
||||
|
||||
if(x($arr,'cancel')) {
|
||||
|
@ -120,7 +120,11 @@ function load_translation_table($lang, $install = false) {
|
||||
global $a;
|
||||
|
||||
$a->strings = array();
|
||||
if(file_exists("view/$lang/strings.php")) {
|
||||
|
||||
if(file_exists("view/$lang/hstrings.php")) {
|
||||
include("view/$lang/hstrings.php");
|
||||
}
|
||||
elseif(file_exists("view/$lang/strings.php")) {
|
||||
include("view/$lang/strings.php");
|
||||
}
|
||||
|
||||
@ -129,7 +133,10 @@ function load_translation_table($lang, $install = false) {
|
||||
if ($plugins !== false) {
|
||||
foreach($plugins as $p) {
|
||||
$name = $p['name'];
|
||||
if(file_exists("addon/$name/lang/$lang/strings.php")) {
|
||||
if(file_exists("addon/$name/lang/$lang/hstrings.php")) {
|
||||
include("addon/$name/lang/$lang/hstrings.php");
|
||||
}
|
||||
elseif(file_exists("addon/$name/lang/$lang/strings.php")) {
|
||||
include("addon/$name/lang/$lang/strings.php");
|
||||
}
|
||||
}
|
||||
@ -139,7 +146,10 @@ function load_translation_table($lang, $install = false) {
|
||||
// Allow individual strings to be over-ridden on this site
|
||||
// Either for the default language or for all languages
|
||||
|
||||
if(file_exists("view/local-$lang/strings.php")) {
|
||||
if(file_exists("view/local-$lang/hstrings.php")) {
|
||||
include("view/local-$lang/hstrings.php");
|
||||
}
|
||||
elseif(file_exists("view/local-$lang/strings.php")) {
|
||||
include("view/local-$lang/strings.php");
|
||||
}
|
||||
}
|
||||
|
@ -591,68 +591,86 @@ function import_xchan_photo($photo,$xchan,$thing = false) {
|
||||
if(! $type)
|
||||
$type = 'image/jpeg';
|
||||
|
||||
|
||||
$result = z_fetch_url($photo,true);
|
||||
|
||||
if($result['success'])
|
||||
if($result['success']) {
|
||||
$img_str = $result['body'];
|
||||
}
|
||||
|
||||
$img = photo_factory($img_str, $type);
|
||||
if($img->is_valid()) {
|
||||
$width = $img->getWidth();
|
||||
$height = $img->getHeight();
|
||||
|
||||
if($width && $height) {
|
||||
if(($width / $height) > 1.2) {
|
||||
// crop out the sides
|
||||
$margin = $width - $height;
|
||||
$img->cropImage(300,($margin / 2),0,$height,$height);
|
||||
$h = explode("\n",$result['header']);
|
||||
if($h) {
|
||||
foreach($h as $hl) {
|
||||
if(stristr($hl,'content-type:')) {
|
||||
if(! stristr($hl,'image/')) {
|
||||
$photo_failure = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(($height / $width) > 1.2) {
|
||||
// crop out the bottom
|
||||
$margin = $height - $width;
|
||||
$img->cropImage(300,0,0,$width,$width);
|
||||
|
||||
}
|
||||
else {
|
||||
$img->scaleImageSquare(300);
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
$photo_failure = true;
|
||||
|
||||
$p = array('xchan' => $xchan,'resource_id' => $hash, 'filename' => basename($photo), 'album' => $album, 'photo_usage' => $flags, 'scale' => 4);
|
||||
|
||||
$r = $img->save($p);
|
||||
|
||||
if($r === false)
|
||||
$photo_failure = true;
|
||||
|
||||
$img->scaleImage(80);
|
||||
$p['scale'] = 5;
|
||||
|
||||
$r = $img->save($p);
|
||||
|
||||
if($r === false)
|
||||
$photo_failure = true;
|
||||
|
||||
$img->scaleImage(48);
|
||||
$p['scale'] = 6;
|
||||
|
||||
$r = $img->save($p);
|
||||
|
||||
if($r === false)
|
||||
$photo_failure = true;
|
||||
|
||||
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4';
|
||||
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5';
|
||||
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6';
|
||||
}
|
||||
else {
|
||||
logger('import_xchan_photo: invalid image from ' . $photo);
|
||||
$photo_failure = true;
|
||||
}
|
||||
|
||||
if(! $photo_failure) {
|
||||
$img = photo_factory($img_str, $type);
|
||||
if($img->is_valid()) {
|
||||
$width = $img->getWidth();
|
||||
$height = $img->getHeight();
|
||||
|
||||
if($width && $height) {
|
||||
if(($width / $height) > 1.2) {
|
||||
// crop out the sides
|
||||
$margin = $width - $height;
|
||||
$img->cropImage(300,($margin / 2),0,$height,$height);
|
||||
}
|
||||
elseif(($height / $width) > 1.2) {
|
||||
// crop out the bottom
|
||||
$margin = $height - $width;
|
||||
$img->cropImage(300,0,0,$width,$width);
|
||||
|
||||
}
|
||||
else {
|
||||
$img->scaleImageSquare(300);
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
$photo_failure = true;
|
||||
|
||||
$p = array('xchan' => $xchan,'resource_id' => $hash, 'filename' => basename($photo), 'album' => $album, 'photo_usage' => $flags, 'scale' => 4);
|
||||
|
||||
$r = $img->save($p);
|
||||
|
||||
if($r === false)
|
||||
$photo_failure = true;
|
||||
|
||||
$img->scaleImage(80);
|
||||
$p['scale'] = 5;
|
||||
|
||||
$r = $img->save($p);
|
||||
|
||||
if($r === false)
|
||||
$photo_failure = true;
|
||||
|
||||
$img->scaleImage(48);
|
||||
$p['scale'] = 6;
|
||||
|
||||
$r = $img->save($p);
|
||||
|
||||
if($r === false)
|
||||
$photo_failure = true;
|
||||
|
||||
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4';
|
||||
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5';
|
||||
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6';
|
||||
}
|
||||
else {
|
||||
logger('import_xchan_photo: invalid image from ' . $photo);
|
||||
$photo_failure = true;
|
||||
}
|
||||
}
|
||||
if($photo_failure) {
|
||||
$photo = $a->get_baseurl() . '/' . get_default_profile_photo();
|
||||
$thumb = $a->get_baseurl() . '/' . get_default_profile_photo(80);
|
||||
|
@ -22,6 +22,22 @@ function queue_run($argv, $argc){
|
||||
|
||||
logger('queue: start');
|
||||
|
||||
|
||||
$r = q("select outq_posturl from outq where outq_created < %s - INTERVAL %s",
|
||||
db_utcnow(), db_quoteinterval('3 DAY')
|
||||
);
|
||||
if($r) {
|
||||
foreach($r as $rr) {
|
||||
$site_url = '';
|
||||
$h = parse_url($rr['outq_posturl']);
|
||||
$desturl = $h['scheme'] . '://' . $h['host'] . (($h['port']) ? ':' . $h['port'] : '');
|
||||
q("update site set site_dead = 1 where site_dead = 0 and site_url = '%s' and site_update < %s - INTERVAL %s",
|
||||
dbesc($desturl),
|
||||
db_utcnow(), db_quoteinterval('1 MONTH')
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$r = q("DELETE FROM outq WHERE outq_created < %s - INTERVAL %s",
|
||||
db_utcnow(), db_quoteinterval('3 DAY')
|
||||
);
|
||||
|
@ -245,6 +245,9 @@ function item_permissions_sql($owner_id, $remote_observer = null) {
|
||||
$observer = (($remote_observer) ? $remote_observer : get_observer_hash());
|
||||
|
||||
if($observer) {
|
||||
|
||||
$s = scopes_sql($owner_id,$observer);
|
||||
|
||||
$groups = init_groups_visitor($observer);
|
||||
|
||||
$gs = '<<>>'; // should be impossible to match
|
||||
@ -255,9 +258,9 @@ function item_permissions_sql($owner_id, $remote_observer = null) {
|
||||
}
|
||||
$regexop = db_getfunc('REGEXP');
|
||||
$sql = sprintf(
|
||||
" AND ( NOT (deny_cid like '%s' OR deny_gid $regexop '%s')
|
||||
AND ( allow_cid like '%s' OR allow_gid $regexop '%s' OR ( allow_cid = '' AND allow_gid = '' AND item_private = 0 ) )
|
||||
)
|
||||
" AND (( NOT (deny_cid like '%s' OR deny_gid $regexop '%s')
|
||||
AND ( allow_cid like '%s' OR allow_gid $regexop '%s' OR ( allow_cid = '' AND allow_gid = '' AND item_private = 0 ))
|
||||
) OR ( item_private = 1 $s ))
|
||||
",
|
||||
dbesc(protect_sprintf( '%<' . $observer . '>%')),
|
||||
dbesc($gs),
|
||||
@ -270,6 +273,39 @@ function item_permissions_sql($owner_id, $remote_observer = null) {
|
||||
return $sql;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remote visitors also need to be checked against the public_scope parameter if item_private is set.
|
||||
* This function checks the various permutations of that field for any which apply to this observer.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
function scopes_sql($uid,$observer) {
|
||||
$str = " and ( public_policy = 'authenticated' ";
|
||||
if(! is_foreigner($observer))
|
||||
$str .= " or public_policy = 'network: red' ";
|
||||
if(local_channel())
|
||||
$str .= " or public_policy = 'site: " . get_app()->get_hostname() . "' ";
|
||||
|
||||
$ab = q("select * from abook where abook_xchan = '%s' and abook_channel = %d limit 1",
|
||||
dbesc($observer),
|
||||
intval($uid)
|
||||
);
|
||||
if(! $ab)
|
||||
return $str . " ) ";
|
||||
if($ab[0]['abook_pending'])
|
||||
$str .= " or public_policy = 'any connections' ";
|
||||
$str .= " or public_policy = 'contacts' ) ";
|
||||
return $str;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @param string $observer_hash
|
||||
*
|
||||
|
@ -1686,14 +1686,14 @@ function mimetype_select($channel_id, $current = 'text/bbcode') {
|
||||
function lang_selector() {
|
||||
global $a;
|
||||
|
||||
$langs = glob('view/*/strings.php');
|
||||
$langs = glob('view/*/hstrings.php');
|
||||
|
||||
$lang_options = array();
|
||||
$selected = "";
|
||||
|
||||
if(is_array($langs) && count($langs)) {
|
||||
$langs[] = '';
|
||||
if(! in_array('view/en/strings.php',$langs))
|
||||
if(! in_array('view/en/hstrings.php',$langs))
|
||||
$langs[] = 'view/en/';
|
||||
asort($langs);
|
||||
foreach($langs as $l) {
|
||||
|
@ -637,6 +637,7 @@ function widget_conversations($arr) {
|
||||
foreach($r as $rr) {
|
||||
|
||||
$messages[] = array(
|
||||
'mailbox' => $mailbox,
|
||||
'id' => $rr['id'],
|
||||
'from_name' => $rr['from']['xchan_name'],
|
||||
'from_url' => chanlink_hash($rr['from_xchan']),
|
||||
@ -648,7 +649,8 @@ function widget_conversations($arr) {
|
||||
'delete' => t('Delete conversation'),
|
||||
'body' => $rr['body'],
|
||||
'date' => datetime_convert('UTC',date_default_timezone_get(),$rr['created'], t('D, d M Y - g:i A')),
|
||||
'seen' => $rr['seen']
|
||||
'seen' => $rr['seen'],
|
||||
'selected' => ((argv(2)) ? (argv(2) == $rr['id']) : ($r[0]['id'] == $rr['id']))
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -398,11 +398,6 @@ function zot_refresh($them, $channel = null, $force = false) {
|
||||
}
|
||||
}
|
||||
|
||||
$r = q("select * from abook where abook_xchan = '%s' and abook_channel = %d and abook_self = 0 limit 1",
|
||||
dbesc($x['hash']),
|
||||
intval($channel['channel_id'])
|
||||
);
|
||||
|
||||
if(array_key_exists('profile',$j) && array_key_exists('next_birthday',$j['profile'])) {
|
||||
$next_birthday = datetime_convert('UTC','UTC',$j['profile']['next_birthday']);
|
||||
}
|
||||
@ -410,8 +405,15 @@ function zot_refresh($them, $channel = null, $force = false) {
|
||||
$next_birthday = NULL_DATE;
|
||||
}
|
||||
|
||||
$r = q("select * from abook where abook_xchan = '%s' and abook_channel = %d and abook_self = 0 limit 1",
|
||||
dbesc($x['hash']),
|
||||
intval($channel['channel_id'])
|
||||
);
|
||||
|
||||
if($r) {
|
||||
|
||||
// connection exists
|
||||
|
||||
// if the dob is the same as what we have stored (disregarding the year), keep the one
|
||||
// we have as we may have updated the year after sending a notification; and resetting
|
||||
// to the one we just received would cause us to create duplicated events.
|
||||
@ -453,6 +455,9 @@ function zot_refresh($them, $channel = null, $force = false) {
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
||||
// new connection
|
||||
|
||||
$role = get_pconfig($channel['channel_id'],'system','permissions_role');
|
||||
if($role) {
|
||||
$xx = get_role_perms($role);
|
||||
@ -1582,14 +1587,11 @@ function process_delivery($sender, $arr, $deliveries, $relay, $public = false, $
|
||||
$channel = $r[0];
|
||||
$DR->addto_recipient($channel['channel_name'] . ' <' . $channel['channel_address'] . '@' . get_app()->get_hostname() . '>');
|
||||
|
||||
|
||||
// uncomment this once we find out what's stopping the clone sync of the item from working
|
||||
// if($d['hash'] === $sender['hash']) {
|
||||
// $DR->update('self delivery ignored');
|
||||
// $result[] = $DR->get();
|
||||
// continue;
|
||||
// }
|
||||
|
||||
if($d['hash'] === $sender['hash']) {
|
||||
$DR->update('self delivery ignored');
|
||||
$result[] = $DR->get();
|
||||
continue;
|
||||
}
|
||||
|
||||
// allow public postings to the sys channel regardless of permissions, but not
|
||||
// for comments travelling upstream. Wait and catch them on the way down.
|
||||
@ -2738,7 +2740,7 @@ function import_site($arr, $pubkey) {
|
||||
// logger('import_site: input: ' . print_r($arr,true));
|
||||
// logger('import_site: stored: ' . print_r($siterecord,true));
|
||||
|
||||
$r = q("update site set site_dead = 0, site_location = '%s', site_flags = %d, site_access = %d, site_directory = '%s', site_register = %d, site_update = '%s', site_sellpage = '%s', site_realm = '%s'
|
||||
$r = q("update site set site_dead = 0, site_location = '%s', site_flags = %d, site_access = %d, site_directory = '%s', site_register = %d, site_update = '%s', site_sellpage = '%s', site_realm = '%s', site_type = %d
|
||||
where site_url = '%s'",
|
||||
dbesc($site_location),
|
||||
intval($site_directory),
|
||||
@ -2748,6 +2750,7 @@ function import_site($arr, $pubkey) {
|
||||
dbesc(datetime_convert()),
|
||||
dbesc($sellpage),
|
||||
dbesc($site_realm),
|
||||
intval(SITE_TYPE_ZOT),
|
||||
dbesc($url)
|
||||
);
|
||||
if(! $r) {
|
||||
@ -2764,7 +2767,7 @@ function import_site($arr, $pubkey) {
|
||||
}
|
||||
else {
|
||||
$update = true;
|
||||
$r = q("insert into site ( site_location, site_url, site_access, site_flags, site_update, site_directory, site_register, site_sellpage, site_realm )
|
||||
$r = q("insert into site ( site_location, site_url, site_access, site_flags, site_update, site_directory, site_register, site_sellpage, site_realm, site_type )
|
||||
values ( '%s', '%s', %d, %d, '%s', '%s', %d, '%s', '%s' )",
|
||||
dbesc($site_location),
|
||||
dbesc($url),
|
||||
@ -2774,7 +2777,8 @@ function import_site($arr, $pubkey) {
|
||||
dbesc($directory_url),
|
||||
intval($register_policy),
|
||||
dbesc($sellpage),
|
||||
dbesc($site_realm)
|
||||
dbesc($site_realm),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
if(! $r) {
|
||||
logger('import_site: record create failed. ' . print_r($arr,true));
|
||||
@ -2816,6 +2820,9 @@ function build_sync_packet($uid = 0, $packet = null, $groups_changed = false) {
|
||||
|
||||
$channel = $r[0];
|
||||
|
||||
if(intval($channel['channel_removed']))
|
||||
return;
|
||||
|
||||
$h = q("select * from hubloc where hubloc_hash = '%s' and hubloc_deleted = 0",
|
||||
dbesc($channel['channel_hash'])
|
||||
);
|
||||
@ -2866,7 +2873,7 @@ function build_sync_packet($uid = 0, $packet = null, $groups_changed = false) {
|
||||
|
||||
// don't pass these elements, they should not be synchronised
|
||||
|
||||
$disallowed = array('channel_id','channel_account_id','channel_primary','channel_prvkey','channel_address');
|
||||
$disallowed = array('channel_id','channel_account_id','channel_primary','channel_prvkey','channel_address','channel_deleted','channel_removed','channel_system');
|
||||
|
||||
if(in_array($k,$disallowed))
|
||||
continue;
|
||||
@ -2993,10 +3000,12 @@ function process_channel_sync_delivery($sender, $arr, $deliveries) {
|
||||
// These flags cannot be sync'd.
|
||||
// remove the bits from the incoming flags.
|
||||
|
||||
if($arr['channel_pageflags'] & 0x8000)
|
||||
$arr['channel_pageflags'] = $arr['channel_pageflags'] - 0x8000;
|
||||
if($arr['channel_pageflags'] & 0x1000)
|
||||
$arr['channel_pageflags'] = $arr['channel_pageflags'] - 0x1000;
|
||||
// These correspond to PAGE_REMOVED and PAGE_SYSTEM on redmatrix
|
||||
|
||||
if($arr['channel']['channel_pageflags'] & 0x8000)
|
||||
$arr['channel']['channel_pageflags'] = $arr['channel']['channel_pageflags'] - 0x8000;
|
||||
if($arr['channel']['channel_pageflags'] & 0x1000)
|
||||
$arr['channel']['channel_pageflags'] = $arr['channel']['channel_pageflags'] - 0x1000;
|
||||
|
||||
}
|
||||
|
||||
|
@ -1131,6 +1131,7 @@ CREATE TABLE IF NOT EXISTS `site` (
|
||||
`site_realm` char(255) NOT NULL DEFAULT '',
|
||||
`site_valid` smallint NOT NULL DEFAULT '0',
|
||||
`site_dead` smallint NOT NULL DEFAULT '0',
|
||||
`site_type` smallint NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`site_url`),
|
||||
KEY `site_flags` (`site_flags`),
|
||||
KEY `site_update` (`site_update`),
|
||||
@ -1141,7 +1142,8 @@ CREATE TABLE IF NOT EXISTS `site` (
|
||||
KEY `site_pull` (`site_pull`),
|
||||
KEY `site_realm` (`site_realm`),
|
||||
KEY `site_valid` (`site_valid`),
|
||||
KEY `site_dead` (`site_dead`)
|
||||
KEY `site_dead` (`site_dead`),
|
||||
KEY `site_type` (`site_type`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `source` (
|
||||
|
@ -1122,6 +1122,7 @@ CREATE TABLE "site" (
|
||||
"site_realm" text NOT NULL DEFAULT '',
|
||||
"site_valid" smallint NOT NULL DEFAULT '0',
|
||||
"site_dead" smallint NOT NULL DEFAULT '0',
|
||||
"site_type" smallint NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY ("site_url")
|
||||
);
|
||||
create index "site_flags" on site ("site_flags");
|
||||
@ -1133,6 +1134,7 @@ create index "site_sellpage" on site ("site_sellpage");
|
||||
create index "site_realm" on site ("site_realm");
|
||||
create index "site_valid" on site ("site_valid");
|
||||
create index "site_dead" on site ("site_dead");
|
||||
create index "site_type" on site ("site_type");
|
||||
|
||||
CREATE TABLE "source" (
|
||||
"src_id" serial NOT NULL,
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?php
|
||||
|
||||
define( 'UPDATE_VERSION' , 1155 );
|
||||
define( 'UPDATE_VERSION' , 1156 );
|
||||
|
||||
/**
|
||||
*
|
||||
@ -1875,3 +1875,13 @@ function update_r1154() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
function update_r1155() {
|
||||
|
||||
$r1 = q("alter table site add site_type smallint not null default '0' ");
|
||||
$r2 = q("create index site_type on site ( site_type ) ");
|
||||
if($r1 && $r2)
|
||||
return UPDATE_SUCCESS;
|
||||
return UPDATE_FAILED;
|
||||
}
|
||||
|
||||
|
@ -332,10 +332,10 @@ function admin_page_site(&$a) {
|
||||
|
||||
/* Installed langs */
|
||||
$lang_choices = array();
|
||||
$langs = glob('view/*/strings.php');
|
||||
$langs = glob('view/*/hstrings.php');
|
||||
|
||||
if(is_array($langs) && count($langs)) {
|
||||
if(! in_array('view/en/strings.php',$langs))
|
||||
if(! in_array('view/en/hstrings.php',$langs))
|
||||
$langs[] = 'view/en/';
|
||||
asort($langs);
|
||||
foreach($langs as $l) {
|
||||
|
@ -153,7 +153,6 @@ function channel_content(&$a, $update = 0, $load = false) {
|
||||
else
|
||||
$page_mode = 'client';
|
||||
|
||||
|
||||
$abook_uids = " and abook.abook_channel = " . intval($a->profile['profile_uid']) . " ";
|
||||
|
||||
$simple_update = (($update) ? " AND item_unseen = 1 " : '');
|
||||
@ -260,9 +259,6 @@ function channel_content(&$a, $update = 0, $load = false) {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if((! $update) && (! $load)) {
|
||||
|
||||
// This is ugly, but we can't pass the profile_uid through the session to the ajax updater,
|
||||
|
@ -398,13 +398,15 @@ function list_public_sites() {
|
||||
$rand = db_getfunc('rand');
|
||||
$realm = get_directory_realm();
|
||||
if($realm == DIRECTORY_REALM) {
|
||||
$r = q("select * from site where site_access != 0 and site_register !=0 and ( site_realm = '%s' or site_realm = '') order by $rand",
|
||||
dbesc($realm)
|
||||
$r = q("select * from site where site_access != 0 and site_register !=0 and ( site_realm = '%s' or site_realm = '') and site_type = %d order by $rand",
|
||||
dbesc($realm),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
}
|
||||
else {
|
||||
$r = q("select * from site where site_access != 0 and site_register !=0 and site_realm = '%s' order by $rand",
|
||||
dbesc($realm)
|
||||
$r = q("select * from site where site_access != 0 and site_register !=0 and site_realm = '%s' and site_type = %d order by $rand",
|
||||
dbesc($realm),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
}
|
||||
|
||||
|
50
mod/mail.php
50
mod/mail.php
@ -128,35 +128,47 @@ function mail_content(&$a) {
|
||||
'$header' => t('Messages'),
|
||||
));
|
||||
|
||||
if((argc() == 3) && (argv(1) === 'drop')) {
|
||||
if(! intval(argv(2)))
|
||||
if((argc() == 4) && (argv(2) === 'drop')) {
|
||||
if(! intval(argv(3)))
|
||||
return;
|
||||
$cmd = argv(1);
|
||||
|
||||
$r = private_messages_drop(local_channel(), argv(2));
|
||||
$cmd = argv(2);
|
||||
$mailbox = argv(1);
|
||||
$r = private_messages_drop(local_channel(), argv(3));
|
||||
if($r) {
|
||||
info( t('Message deleted.') . EOL );
|
||||
//info( t('Message deleted.') . EOL );
|
||||
}
|
||||
goaway($a->get_baseurl(true) . '/mail/combined' );
|
||||
goaway($a->get_baseurl(true) . '/mail/' . $mailbox);
|
||||
}
|
||||
|
||||
if((argc() == 3) && (argv(1) === 'recall')) {
|
||||
if(! intval(argv(2)))
|
||||
if((argc() == 4) && (argv(2) === 'recall')) {
|
||||
if(! intval(argv(3)))
|
||||
return;
|
||||
$cmd = argv(1);
|
||||
$cmd = argv(2);
|
||||
$mailbox = argv(1);
|
||||
$r = q("update mail set mail_recalled = 1 where id = %d and channel_id = %d",
|
||||
intval(argv(2)),
|
||||
intval(argv(3)),
|
||||
intval(local_channel())
|
||||
);
|
||||
proc_run('php','include/notifier.php','mail',intval(argv(2)));
|
||||
proc_run('php','include/notifier.php','mail',intval(argv(3)));
|
||||
|
||||
if($r) {
|
||||
info( t('Message recalled.') . EOL );
|
||||
}
|
||||
goaway($a->get_baseurl(true) . '/mail/combined' );
|
||||
goaway($a->get_baseurl(true) . '/mail/' . $mailbox . '/' . argv(3));
|
||||
|
||||
}
|
||||
|
||||
if((argc() == 4) && (argv(2) === 'dropconv')) {
|
||||
if(! intval(argv(3)))
|
||||
return;
|
||||
$cmd = argv(2);
|
||||
$mailbox = argv(1);
|
||||
$r = private_messages_drop(local_channel(), argv(3), true);
|
||||
if($r)
|
||||
info( t('Conversation removed.') . EOL );
|
||||
goaway($a->get_baseurl(true) . '/mail/' . $mailbox);
|
||||
}
|
||||
|
||||
if((argc() > 1) && (argv(1) === 'new')) {
|
||||
|
||||
$plaintext = true;
|
||||
@ -266,7 +278,7 @@ function mail_content(&$a) {
|
||||
|
||||
$last_message = private_messages_list(local_channel(), $mailbox, 0, 1);
|
||||
|
||||
$mid = ((argc() > 1) && (intval(argv(1)))) ? argv(1) : $last_message[0]['id'];
|
||||
$mid = ((argc() > 2) && (intval(argv(2)))) ? argv(2) : $last_message[0]['id'];
|
||||
|
||||
$plaintext = true;
|
||||
|
||||
@ -310,13 +322,14 @@ function mail_content(&$a) {
|
||||
$s = theme_attachments($message);
|
||||
|
||||
$mails[] = array(
|
||||
'mailbox' => $mailbox,
|
||||
'id' => $message['id'],
|
||||
'from_name' => $message['from']['xchan_name'],
|
||||
'from_url' => chanlink_hash($message['from_xchan']),
|
||||
'from_photo' => $message['from']['xchan_photo_m'],
|
||||
'from_photo' => $message['from']['xchan_photo_s'],
|
||||
'to_name' => $message['to']['xchan_name'],
|
||||
'to_url' => chanlink_hash($message['to_xchan']),
|
||||
'to_photo' => $message['to']['xchan_photo_m'],
|
||||
'to_photo' => $message['to']['xchan_photo_s'],
|
||||
'subject' => $message['title'],
|
||||
'body' => smilies(bbcode($message['body']) . $s),
|
||||
'delete' => t('Delete message'),
|
||||
@ -338,7 +351,8 @@ function mail_content(&$a) {
|
||||
$parent = '<input type="hidden" name="replyto" value="' . $message['parent_mid'] . '" />';
|
||||
$tpl = get_markup_template('mail_display.tpl');
|
||||
$o = replace_macros($tpl, array(
|
||||
'$prvmsg_header' => t('Subject:') . ' ' . $message['title'],
|
||||
'$mailbox' => $mailbox,
|
||||
'$prvmsg_header' => $message['title'],
|
||||
'$thread_id' => $mid,
|
||||
'$thread_subject' => $message['title'],
|
||||
'$thread_seen' => $seen,
|
||||
@ -353,7 +367,7 @@ function mail_content(&$a) {
|
||||
'$showinputs' => '',
|
||||
'$subject' => t('Subject:'),
|
||||
'$subjtxt' => $message['title'],
|
||||
'$readonly' => ' readonly="readonly" style="background: #BBBBBB;" ',
|
||||
'$readonly' => 'readonly="readonly"',
|
||||
'$yourmessage' => t('Your message:'),
|
||||
'$text' => '',
|
||||
'$select' => $select,
|
||||
|
@ -24,7 +24,7 @@ function message_content(&$a) {
|
||||
if(! $cipher)
|
||||
$cipher = 'aes256';
|
||||
|
||||
|
||||
/*
|
||||
if((argc() == 3) && (argv(1) === 'dropconv')) {
|
||||
if(! intval(argv(2)))
|
||||
return;
|
||||
@ -34,7 +34,7 @@ function message_content(&$a) {
|
||||
info( t('Conversation removed.') . EOL );
|
||||
goaway($a->get_baseurl(true) . '/mail/combined' );
|
||||
}
|
||||
/*
|
||||
|
||||
if(argc() == 2) {
|
||||
|
||||
switch(argv(1)) {
|
||||
|
@ -22,8 +22,9 @@ function rate_init(&$a) {
|
||||
$a->poi = $r[0];
|
||||
}
|
||||
else {
|
||||
$r = q("select * from site where site_url like '%s' ",
|
||||
dbesc('%' . $target)
|
||||
$r = q("select * from site where site_url like '%s' and site_type = %d",
|
||||
dbesc('%' . $target),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
if($r) {
|
||||
$a->data['site'] = $r[0];
|
||||
|
@ -35,8 +35,9 @@ function ratingsearch_init(&$a) {
|
||||
if($p)
|
||||
$target = $p[0]['xchan_hash'];
|
||||
else {
|
||||
$p = q("select * from site where site_url like '%s' ",
|
||||
dbesc('%' . $hash)
|
||||
$p = q("select * from site where site_url like '%s' and site_type = %d ",
|
||||
dbesc('%' . $hash),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
if($p) {
|
||||
$target = strtolower($hash);
|
||||
|
@ -86,8 +86,9 @@ function regdir_init(&$a) {
|
||||
if ($dirmode == DIRECTORY_MODE_STANDALONE) {
|
||||
$r = array(array('site_url' => z_root()));
|
||||
} else {
|
||||
$r = q("select site_url from site where site_flags in ( 1, 2 ) and site_realm = '%s' $sql_extra ",
|
||||
dbesc(get_directory_realm())
|
||||
$r = q("select site_url from site where site_flags in ( 1, 2 ) and site_realm = '%s' and site_type = %d $sql_extra ",
|
||||
dbesc(get_directory_realm()),
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
}
|
||||
if ($r) {
|
||||
|
@ -28,7 +28,9 @@ function sitelist_init(&$a) {
|
||||
|
||||
$result = array('success' => false);
|
||||
|
||||
$r = q("select count(site_url) as total from site where true $sql_extra ");
|
||||
$r = q("select count(site_url) as total from site where site_type = %d $sql_extra ",
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
|
||||
if($r)
|
||||
$result['total'] = intval($r[0]['total']);
|
||||
@ -36,7 +38,9 @@ function sitelist_init(&$a) {
|
||||
$result['start'] = $start;
|
||||
$result['limit'] = $limit;
|
||||
|
||||
$r = q("select * from site where true $sql_extra $sql_order $sql_limit");
|
||||
$r = q("select * from site where site_type = %d $sql_extra $sql_order $sql_limit",
|
||||
intval(SITE_TYPE_ZOT)
|
||||
);
|
||||
|
||||
$result['results'] = 0;
|
||||
$result['entries'] = array();
|
||||
|
9170
util/hmessages.po
Normal file
9170
util/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2120
util/hstrings.php
Normal file
2120
util/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
5216
util/messages.po
5216
util/messages.po
File diff suppressed because it is too large
Load Diff
@ -8,12 +8,12 @@
|
||||
}
|
||||
|
||||
if ($argc!=2) {
|
||||
print "Usage: ".$argv[0]." <strings.php>\n\n";
|
||||
print "Usage: ".$argv[0]." <hstrings.php>\n\n";
|
||||
return;
|
||||
}
|
||||
|
||||
$phpfile = $argv[1];
|
||||
$pofile = dirname($phpfile)."/messages.po";
|
||||
$pofile = dirname($phpfile)."/hmessages.po";
|
||||
|
||||
if (!file_exists($phpfile)){
|
||||
print "Unable to find '$phpfile'\n";
|
||||
|
@ -9,7 +9,7 @@ function po2php_run($argv, $argc) {
|
||||
}
|
||||
|
||||
$pofile = $argv[1];
|
||||
$outfile = dirname($pofile)."/strings.php";
|
||||
$outfile = dirname($pofile)."/hstrings.php";
|
||||
|
||||
if(strstr($outfile,'util'))
|
||||
$lang = 'en';
|
||||
|
@ -16,12 +16,12 @@ if [ $ADDONMODE ]
|
||||
then
|
||||
cd "$FULLPATH/../addon/$ADDONNAME"
|
||||
mkdir -p "$FULLPATH/../addon/$ADDONNAME/lang/C"
|
||||
OUTFILE="$FULLPATH/../addon/$ADDONNAME/lang/C/messages.po"
|
||||
OUTFILE="$FULLPATH/../addon/$ADDONNAME/lang/C/hmessages.po"
|
||||
FINDSTARTDIR="."
|
||||
FINDOPTS=
|
||||
else
|
||||
cd "$FULLPATH/../view/en/"
|
||||
OUTFILE="$FULLPATH/messages.po"
|
||||
OUTFILE="$FULLPATH/hmessages.po"
|
||||
FINDSTARTDIR="../../"
|
||||
# skip addon folder
|
||||
FINDOPTS="-wholename */addon -prune -o"
|
||||
|
@ -67,11 +67,11 @@
|
||||
|
||||
echo "String files\n";
|
||||
|
||||
echo 'util/strings.php' . "\n";
|
||||
include_once('util/strings.php');
|
||||
echo 'util/hstrings.php' . "\n";
|
||||
include_once('util/hstrings.php');
|
||||
echo count($a->strings) . ' strings' . "\n";
|
||||
|
||||
$files = glob('view/*/strings.php');
|
||||
$files = glob('view/*/hstrings.php');
|
||||
|
||||
foreach($files as $file) {
|
||||
echo $file . "\n";
|
||||
|
@ -1 +1 @@
|
||||
2015-09-23.1164
|
||||
2015-09-28.1169
|
||||
|
9074
view/ca/hmessages.po
Normal file
9074
view/ca/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2148
view/ca/hstrings.php
Normal file
2148
view/ca/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
4618
view/cs/hmessages.po
Normal file
4618
view/cs/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
1044
view/cs/hstrings.php
Normal file
1044
view/cs/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,26 +1,3 @@
|
||||
/* message */
|
||||
|
||||
#mail-list-wrapper {
|
||||
border-top: 1px solid #ccc;
|
||||
padding: 5px 5px 5px 5px;
|
||||
}
|
||||
|
||||
span.mail-list {
|
||||
float: left;
|
||||
width: 20%;
|
||||
}
|
||||
|
||||
img.mail-list-sender-photo {
|
||||
height: 24px;
|
||||
width: 24px;
|
||||
float: left;
|
||||
margin-right: 30px;
|
||||
}
|
||||
|
||||
.mail-list-remove {
|
||||
width: 5% !important;
|
||||
}
|
||||
|
||||
/* message/new */
|
||||
|
||||
#prvmail-to-label,
|
||||
@ -48,49 +25,26 @@ img.mail-list-sender-photo {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#prvmail-end {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/* message/id */
|
||||
|
||||
.mail-conv-outside-wrapper {
|
||||
margin-top: 30px;
|
||||
display: table;
|
||||
table-layout: fixed;
|
||||
}
|
||||
|
||||
.mail-conv-sender,
|
||||
.mail-conv-detail {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.mail-conv-detail {
|
||||
margin-left: 20px;
|
||||
width: 500px;
|
||||
}
|
||||
|
||||
.mail-conv-subject {
|
||||
font-size: 1.4em;
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
.mail-conv-delete-wrapper {
|
||||
float: right;
|
||||
margin-right: 30px;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.mail-conv-recall-wrapper {
|
||||
float: right;
|
||||
.mail-conv-sender {
|
||||
display: table-cell;
|
||||
vertical-align: top;
|
||||
margin-right: 10px;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.mail-conv-outside-wrapper-end {
|
||||
clear: both;
|
||||
.mail-conv-sender-name {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.mail-conv-break {
|
||||
clear: both;
|
||||
.mail-conv-detail {
|
||||
display: table-cell;
|
||||
vertical-align: top;
|
||||
width: 100%;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
8769
view/de/hmessages.po
Normal file
8769
view/de/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2079
view/de/hstrings.php
Normal file
2079
view/de/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
7714
view/eo/hmessages.po
Normal file
7714
view/eo/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
1771
view/eo/hstrings.php
Normal file
1771
view/eo/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
9081
view/es/hmessages.po
Normal file
9081
view/es/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2149
view/es/hstrings.php
Normal file
2149
view/es/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
@ -13,8 +13,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Redmatrix\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-09-11 00:05-0700\n"
|
||||
"PO-Revision-Date: 2015-09-14 18:21+0000\n"
|
||||
"POT-Creation-Date: 2015-09-18 00:04-0700\n"
|
||||
"PO-Revision-Date: 2015-09-22 14:10+0000\n"
|
||||
"Last-Translator: Manuel Jiménez Friaza <mjfriaza@openmailbox.org>\n"
|
||||
"Language-Team: Spanish (http://www.transifex.com/Friendica/red-matrix/language/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -1598,17 +1598,17 @@ msgstr "Por favor visite %s para ver y/o responder a su mensaje privado."
|
||||
#: ../../include/enotify.php:158
|
||||
#, php-format
|
||||
msgid "%1$s, %2$s commented on [zrl=%3$s]a %4$s[/zrl]"
|
||||
msgstr "%1$s, %2$s comentó en [zrl=%3$s]a %4$s[/zrl]"
|
||||
msgstr "%1$s, %2$s ha comentado sobre [zrl=%3$s]%4$s[/zrl]"
|
||||
|
||||
#: ../../include/enotify.php:166
|
||||
#, php-format
|
||||
msgid "%1$s, %2$s commented on [zrl=%3$s]%4$s's %5$s[/zrl]"
|
||||
msgstr "%1$s, %2$s comentó en [zrl=%3$s]%4$s de %5$s[/zrl]"
|
||||
msgstr "%1$s, %2$s ha comentado sobre el [zrl=%3$s]%5$s de %4$s[/zrl]"
|
||||
|
||||
#: ../../include/enotify.php:175
|
||||
#, php-format
|
||||
msgid "%1$s, %2$s commented on [zrl=%3$s]your %4$s[/zrl]"
|
||||
msgstr "%1$s, %2$s comentó en [zrl=%3$s]su %4$s[/zrl]"
|
||||
msgstr "%1$s, %2$s ha comentado [zrl=%3$s]su %4$s[/zrl]"
|
||||
|
||||
#: ../../include/enotify.php:186
|
||||
#, php-format
|
||||
@ -1665,7 +1665,7 @@ msgstr "[Red:Aviso] %1$s le ha dado un toque"
|
||||
#: ../../include/enotify.php:239
|
||||
#, php-format
|
||||
msgid "%1$s, %2$s poked you at %3$s"
|
||||
msgstr "%1$s, %2$s le dio un toque en %3$s"
|
||||
msgstr "%1$s, %2$s le dio un toque sobre %3$s"
|
||||
|
||||
#: ../../include/enotify.php:240
|
||||
#, php-format
|
||||
@ -1680,12 +1680,12 @@ msgstr "[Red:Aviso] %s etiquetó su entrada"
|
||||
#: ../../include/enotify.php:257
|
||||
#, php-format
|
||||
msgid "%1$s, %2$s tagged your post at %3$s"
|
||||
msgstr "%1$s, %2$s etiquetó su publicación en %3$s"
|
||||
msgstr "%1$s, %2$s ha etiquetado su publicación sobre %3$s"
|
||||
|
||||
#: ../../include/enotify.php:258
|
||||
#, php-format
|
||||
msgid "%1$s, %2$s tagged [zrl=%3$s]your post[/zrl]"
|
||||
msgstr "%1$s, %2$s etiquetó [zrl=%3$s]su publicación[/zrl]"
|
||||
msgstr "%1$s, %2$s ha etiquetado [zrl=%3$s]su publicación[/zrl]"
|
||||
|
||||
#: ../../include/enotify.php:270
|
||||
msgid "[Red:Notify] Introduction received"
|
||||
@ -3118,15 +3118,15 @@ msgstr "Conexión: %s"
|
||||
msgid "Connection not found."
|
||||
msgstr "Conexión no encontrada"
|
||||
|
||||
#: ../../include/zot.php:675
|
||||
#: ../../include/zot.php:677
|
||||
msgid "Invalid data packet"
|
||||
msgstr "Paquete de datos no válido"
|
||||
|
||||
#: ../../include/zot.php:691
|
||||
#: ../../include/zot.php:693
|
||||
msgid "Unable to verify channel signature"
|
||||
msgstr "No ha sido posible de verificar la signatura del canal"
|
||||
|
||||
#: ../../include/zot.php:2142
|
||||
#: ../../include/zot.php:2161
|
||||
#, php-format
|
||||
msgid "Unable to verify site signature for %s"
|
||||
msgstr "No ha sido posible de verificar la signatura del sitio para %s"
|
||||
@ -4640,7 +4640,7 @@ msgstr "Por favor, visite <a href=\"https://redmatrix.me\">redmatrix.me </a> par
|
||||
|
||||
#: ../../mod/siteinfo.php:165
|
||||
msgid "Bug reports and issues: please visit"
|
||||
msgstr "Informes de errores e incidencias: por, favor visite"
|
||||
msgstr "Informes de errores e incidencias: por favor visite"
|
||||
|
||||
#: ../../mod/siteinfo.php:167
|
||||
msgid "$projectname issues"
|
||||
@ -5275,7 +5275,7 @@ msgstr "Introduzca la dirección del enlace o seleccione el nombre de un submen
|
||||
|
||||
#: ../../mod/mitem.php:159 ../../mod/mitem.php:232
|
||||
msgid "Use magic-auth if available"
|
||||
msgstr "Use la autenticación mágica si está disponible"
|
||||
msgstr "Usar la autenticación mágica si está disponible"
|
||||
|
||||
#: ../../mod/mitem.php:160 ../../mod/mitem.php:233
|
||||
msgid "Open link in new window"
|
||||
@ -6188,7 +6188,7 @@ msgstr "Puerto de la base de datos"
|
||||
|
||||
#: ../../mod/setup.php:312
|
||||
msgid "Communication port number - use 0 for default"
|
||||
msgstr "Número del puerto de comunicaciones - use 0 como valor por defecto"
|
||||
msgstr "Número del puerto de comunicaciones - usar 0 como valor por defecto"
|
||||
|
||||
#: ../../mod/setup.php:313
|
||||
msgid "Database Login Name"
|
||||
@ -6532,7 +6532,7 @@ msgstr "Bienvenido %s. La identificación desde su servidor se ha llevado a cabo
|
||||
#: ../../mod/tagger.php:96
|
||||
#, php-format
|
||||
msgid "%1$s tagged %2$s's %3$s with %4$s"
|
||||
msgstr "%1$s ha etiquetado el %3$s de %2$s con %4$s"
|
||||
msgstr "%1$s ha etiquetado la %3$s de %2$s con %4$s"
|
||||
|
||||
#: ../../mod/uexport.php:45 ../../mod/uexport.php:46
|
||||
msgid "Export Channel"
|
||||
@ -6958,7 +6958,7 @@ msgstr "Intervalo de sondeo"
|
||||
msgid ""
|
||||
"Delay background polling processes by this many seconds to reduce system "
|
||||
"load. If 0, use delivery interval."
|
||||
msgstr "Retrasar el sondeo en segundo plano en esta cantidad de segundo para reducir la carga del sistema. Si es 0, use el intervalo de entrega."
|
||||
msgstr "Retrasar el sondeo en segundo plano en esta cantidad de segundos, para reducir la carga del sistema. Si es 0, se usará el intervalo de entrega."
|
||||
|
||||
#: ../../mod/admin.php:491
|
||||
msgid "Maximum Load Average"
|
||||
@ -7985,7 +7985,7 @@ msgstr "Reciba una sugerencia de amistad"
|
||||
|
||||
#: ../../mod/settings.php:1108
|
||||
msgid "You are tagged in a post"
|
||||
msgstr "Usted sea etiquetado en una publicación"
|
||||
msgstr "Usted ha sido etiquetado en una publicación"
|
||||
|
||||
#: ../../mod/settings.php:1109
|
||||
msgid "You are poked/prodded/etc. in a post"
|
||||
@ -8305,7 +8305,7 @@ msgstr "Archiva (o desarchiva) esta conexión - marca el canal como muerto aunqu
|
||||
|
||||
#: ../../mod/connedit.php:551
|
||||
msgid "This connection is archived!"
|
||||
msgstr "¡Esta conexión esta archivada!"
|
||||
msgstr "¡Esta conexión está archivada!"
|
||||
|
||||
#: ../../mod/connedit.php:555
|
||||
msgid "Unhide"
|
||||
|
@ -364,9 +364,9 @@ $a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %
|
||||
$a->strings["%1\$s sent you %2\$s."] = "%1\$s le envió %2\$s.";
|
||||
$a->strings["a private message"] = "un mensaje privado";
|
||||
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Por favor visite %s para ver y/o responder a su mensaje privado.";
|
||||
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s comentó en [zrl=%3\$s]a %4\$s[/zrl]";
|
||||
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s comentó en [zrl=%3\$s]%4\$s de %5\$s[/zrl]";
|
||||
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s comentó en [zrl=%3\$s]su %4\$s[/zrl]";
|
||||
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s ha comentado sobre [zrl=%3\$s]%4\$s[/zrl]";
|
||||
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s ha comentado sobre el [zrl=%3\$s]%5\$s de %4\$s[/zrl]";
|
||||
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]su %4\$s[/zrl]";
|
||||
$a->strings["[Red:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Red:Aviso] Nuevo comentario de %2\$s en la conversación #%1\$d";
|
||||
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s comentó un elemento/conversación que ha estado siguiendo.";
|
||||
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Para ver o comentar la conversación, visite %s";
|
||||
@ -377,11 +377,11 @@ $a->strings["[Red:Notify] %s tagged you"] = "[Red:Aviso] %s le etiquetó";
|
||||
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s le etiquetó en %3\$s";
|
||||
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]le etiquetó[/zrl].";
|
||||
$a->strings["[Red:Notify] %1\$s poked you"] = "[Red:Aviso] %1\$s le ha dado un toque";
|
||||
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s le dio un toque en %3\$s";
|
||||
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s le dio un toque sobre %3\$s";
|
||||
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]le dio un toque[/zrl].";
|
||||
$a->strings["[Red:Notify] %s tagged your post"] = "[Red:Aviso] %s etiquetó su entrada";
|
||||
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s etiquetó su publicación en %3\$s";
|
||||
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s etiquetó [zrl=%3\$s]su publicación[/zrl]";
|
||||
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s ha etiquetado su publicación sobre %3\$s";
|
||||
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s ha etiquetado [zrl=%3\$s]su publicación[/zrl]";
|
||||
$a->strings["[Red:Notify] Introduction received"] = "[Red:Aviso] Solicitud de conexión recibida";
|
||||
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, ha recibido una nueva solicitud de conexión de '%2\$s' en %3\$s";
|
||||
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, ha recibido [zrl=%2\$s]una nueva solicitud de conexión[/zrl] de %3\$s.";
|
||||
@ -1093,7 +1093,7 @@ $a->strings["Tag: "] = "Etiqueta:";
|
||||
$a->strings["Last background fetch: "] = "Última actualización en segundo plano:";
|
||||
$a->strings["Running at web location"] = "Corriendo en el sitio web";
|
||||
$a->strings["Please visit <a href=\"https://redmatrix.me\">redmatrix.me</a> to learn more about \$Projectname."] = "Por favor, visite <a href=\"https://redmatrix.me\">redmatrix.me </a> para aprender más sobre \$Projectname.";
|
||||
$a->strings["Bug reports and issues: please visit"] = "Informes de errores e incidencias: por, favor visite";
|
||||
$a->strings["Bug reports and issues: please visit"] = "Informes de errores e incidencias: por favor visite";
|
||||
$a->strings["\$projectname issues"] = "Problemas en \$projectname";
|
||||
$a->strings["Suggestions, praise, etc. - please email \"redmatrix\" at librelist - dot com"] = "Sugerencias, elogios, etc - por favor, un correo electrónico a \"redmatrix\" en librelist - punto com";
|
||||
$a->strings["Site Administrators"] = "Administradores del sitio";
|
||||
@ -1244,7 +1244,7 @@ $a->strings["(click to open/close)"] = "(pulse para abrir/cerrar)";
|
||||
$a->strings["Link Name"] = "Nombre del enlace";
|
||||
$a->strings["Link or Submenu Target"] = "Destino del enlace o submenú";
|
||||
$a->strings["Enter URL of the link or select a menu name to create a submenu"] = "Introduzca la dirección del enlace o seleccione el nombre de un submenú";
|
||||
$a->strings["Use magic-auth if available"] = "Use la autenticación mágica si está disponible";
|
||||
$a->strings["Use magic-auth if available"] = "Usar la autenticación mágica si está disponible";
|
||||
$a->strings["Open link in new window"] = "Abrir el enlace en una nueva ventana";
|
||||
$a->strings["Order in list"] = "Orden en la lista";
|
||||
$a->strings["Higher numbers will sink to bottom of listing"] = "Los números más altos irán al final de la lista";
|
||||
@ -1467,7 +1467,7 @@ $a->strings["The database you specify below should already exist. If it does not
|
||||
$a->strings["Database Server Name"] = "Nombre del servidor de base de datos";
|
||||
$a->strings["Default is localhost"] = "Por defecto es localhost";
|
||||
$a->strings["Database Port"] = "Puerto de la base de datos";
|
||||
$a->strings["Communication port number - use 0 for default"] = "Número del puerto de comunicaciones - use 0 como valor por defecto";
|
||||
$a->strings["Communication port number - use 0 for default"] = "Número del puerto de comunicaciones - usar 0 como valor por defecto";
|
||||
$a->strings["Database Login Name"] = "Nombre de acceso a la base de datos";
|
||||
$a->strings["Database Login Password"] = "Contraseña de acceso a la base de datos";
|
||||
$a->strings["Database Name"] = "Nombre de la base de datos";
|
||||
@ -1537,7 +1537,7 @@ $a->strings["<h1>What next</h1>"] = "<h1>Siguiente paso</h1>";
|
||||
$a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the poller."] = "IMPORTANTE: Debe crear [manualmente] una tarea programada para las actualizaciones.";
|
||||
$a->strings["OpenID protocol error. No ID returned."] = "Error del protocolo OpenID. Ningún ID recibido como respuesta.";
|
||||
$a->strings["Welcome %s. Remote authentication successful."] = "Bienvenido %s. La identificación desde su servidor se ha llevado a cabo correctamente.";
|
||||
$a->strings["%1\$s tagged %2\$s's %3\$s with %4\$s"] = "%1\$s ha etiquetado el %3\$s de %2\$s con %4\$s";
|
||||
$a->strings["%1\$s tagged %2\$s's %3\$s with %4\$s"] = "%1\$s ha etiquetado la %3\$s de %2\$s con %4\$s";
|
||||
$a->strings["Export Channel"] = "Exportar el canal";
|
||||
$a->strings["Export your basic channel information to a small file. This acts as a backup of your connections, permissions, profile and basic data, which can be used to import your data to a new hub, but\tdoes not contain your content."] = "Exportar la base de datos de su canal a un pequeño fichero. Este podrá servir como una copia de seguridad de sus conexiones, permisos, perfil y datos básicos, que podrá importar a un nuevo canal, pero sin sus contenidos.";
|
||||
$a->strings["Export Content"] = "Exportar contenidos";
|
||||
@ -1632,7 +1632,7 @@ $a->strings["Value is in seconds. Set to 0 for unlimited (not recommended)."] =
|
||||
$a->strings["Delivery interval"] = "Intervalo de entrega";
|
||||
$a->strings["Delay background delivery processes by this many seconds to reduce system load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 for large dedicated servers."] = "Retrasar los procesos de entrega en segundo plano por esta cantidad de segundos para reducir la carga del sistema. Recomendado: 4-5 para hosts compartidos, 2-3 para servidores virtuales privados, 0-1 para grandes servidores dedicados.";
|
||||
$a->strings["Poll interval"] = "Intervalo de sondeo";
|
||||
$a->strings["Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval."] = "Retrasar el sondeo en segundo plano en esta cantidad de segundo para reducir la carga del sistema. Si es 0, use el intervalo de entrega.";
|
||||
$a->strings["Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval."] = "Retrasar el sondeo en segundo plano en esta cantidad de segundos, para reducir la carga del sistema. Si es 0, se usará el intervalo de entrega.";
|
||||
$a->strings["Maximum Load Average"] = "Carga media máxima";
|
||||
$a->strings["Maximum system load before delivery and poll processes are deferred - default 50."] = "Carga máxima del sistema antes de que los procesos de entrega y sondeo se hayan retardado - por defecto, 50.";
|
||||
$a->strings["Expiration period in days for imported (matrix/network) content"] = "Periodo de caducidad en días para el contenido importado (red)";
|
||||
@ -1887,7 +1887,7 @@ $a->strings["Someone writes on your profile wall"] = "Alguien escriba en la pág
|
||||
$a->strings["Someone writes a followup comment"] = "Alguien escriba un comentario sobre sus publicaciones";
|
||||
$a->strings["You receive a private message"] = "Reciba un mensaje privado";
|
||||
$a->strings["You receive a friend suggestion"] = "Reciba una sugerencia de amistad";
|
||||
$a->strings["You are tagged in a post"] = "Usted sea etiquetado en una publicación";
|
||||
$a->strings["You are tagged in a post"] = "Usted ha sido etiquetado en una publicación";
|
||||
$a->strings["You are poked/prodded/etc. in a post"] = "Recibir un toque o incitación en una publicación";
|
||||
$a->strings["Show visual notifications including:"] = "Mostrar notificaciones visuales que incluyan:";
|
||||
$a->strings["Unseen matrix activity"] = "Actividad no vista en la red";
|
||||
@ -1964,7 +1964,7 @@ $a->strings["This connection is ignored!"] = "¡Esta conexión es ignorada!";
|
||||
$a->strings["Unarchive"] = "Desarchivar";
|
||||
$a->strings["Archive"] = "Archivar";
|
||||
$a->strings["Archive (or Unarchive) this connection - mark channel dead but keep content"] = "Archiva (o desarchiva) esta conexión - marca el canal como muerto aunque mantiene sus contenidos";
|
||||
$a->strings["This connection is archived!"] = "¡Esta conexión esta archivada!";
|
||||
$a->strings["This connection is archived!"] = "¡Esta conexión está archivada!";
|
||||
$a->strings["Unhide"] = "Mostrar";
|
||||
$a->strings["Hide"] = "Ocultar";
|
||||
$a->strings["Hide or Unhide this connection from your other connections"] = "Ocultar o mostrar esta conexión a sus otras conexiones";
|
||||
|
8034
view/fr/hmessages.po
Normal file
8034
view/fr/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
1898
view/fr/hstrings.php
Normal file
1898
view/fr/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
8934
view/it/hmessages.po
Normal file
8934
view/it/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2118
view/it/hstrings.php
Normal file
2118
view/it/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
8893
view/nb-no/hmessages.po
Normal file
8893
view/nb-no/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2111
view/nb-no/hstrings.php
Normal file
2111
view/nb-no/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
8940
view/nl/hmessages.po
Normal file
8940
view/nl/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2124
view/nl/hstrings.php
Normal file
2124
view/nl/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
9250
view/pt-br/hmessages.po
Normal file
9250
view/pt-br/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2326
view/pt-br/hstrings.php
Normal file
2326
view/pt-br/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
7842
view/ru/hmessages.po
Normal file
7842
view/ru/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
1865
view/ru/hstrings.php
Normal file
1865
view/ru/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
8550
view/sv/hmessages.po
Normal file
8550
view/sv/hmessages.po
Normal file
File diff suppressed because it is too large
Load Diff
2019
view/sv/hstrings.php
Normal file
2019
view/sv/hstrings.php
Normal file
File diff suppressed because it is too large
Load Diff
@ -1565,9 +1565,9 @@ th,td {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* message */
|
||||
/* mail */
|
||||
|
||||
img.mail-list-sender-photo {
|
||||
img.mail-conv-sender-photo {
|
||||
-moz-border-radius: $radiuspx;
|
||||
border-radius: $radiuspx;
|
||||
}
|
||||
|
@ -1,18 +1,18 @@
|
||||
<div class="mail-conv-outside-wrapper">
|
||||
<div id="mail-{{$mail.id}}" class="mail-conv-outside-wrapper">
|
||||
<div class="mail-conv-sender" >
|
||||
<a href="{{$mail.from_url}}" class="mail-conv-sender-url" ><img class="mframe mail-conv-sender-photo{{$mail.sparkle}}" src="{{$mail.from_photo}}" heigth="80" width="80" alt="{{$mail.from_name}}" /></a>
|
||||
<div class="mail-conv-sender-name" >{{$mail.from_name}}</div>
|
||||
<a href="{{$mail.from_url}}"><img class="mail-conv-sender-photo" src="{{$mail.from_photo}}" alt="{{$mail.from_name}}" /></a>
|
||||
</div>
|
||||
<div class="mail-conv-detail" >
|
||||
<div class="mail-conv-detail">
|
||||
{{if $mail.is_recalled}}<strong>{{$mail.is_recalled}}</strong>{{/if}}
|
||||
<div class="mail-conv-date">{{$mail.date}}</div>
|
||||
<div class="mail-conv-subject">{{$mail.subject}}</div>
|
||||
<div class="mail-conv-sender-name" ><a href="{{$mail.from_url}}">{{$mail.from_name}}</a></div>
|
||||
<div class="mail-conv-date autotime wall-item-ago" title="{{$mail.date}}">{{$mail.date}}</div>
|
||||
<div class="mail-conv-body">{{$mail.body}}</div>
|
||||
<div class="mail-conv-delete-wrapper" id="mail-conv-delete-wrapper-{{$mail.id}}" ><a href="mail/drop/{{$mail.id}}" onclick="return confirmDelete();" title="{{$mail.delete}}" id="mail-conv-delete-icon-{{$mail.id}}" class="mail-conv-delete-icon btn btn-default" ><i class="icon-trash mail-icons drop-icons"></i></a></div><div class="mail-conv-delete-end"></div>
|
||||
{{if $mail.can_recall}}
|
||||
<div class="mail-conv-recall-wrapper" id="mail-conv-recall-wrapper-{{$mail.id}}" ><a href="mail/recall/{{$mail.id}}" title="{{$mail.recall}}" id="mail-conv-recall-icon-{{$mail.id}}" class="mail-conv-recall-icon btn btn-default" ><i class="icon-undo mail-icons drop-icons"></i></a></div><div class="mail-conv-recall-end"></div>
|
||||
{{/if}}
|
||||
<div class="mail-conv-outside-wrapper-end"></div>
|
||||
<div class="btn-group pull-right" id="mail-conv-delete-wrapper-{{$mail.id}}" >
|
||||
{{if $mail.can_recall}}
|
||||
<a href="mail/{{$mail.mailbox}}/recall/{{$mail.id}}" title="{{$mail.recall}}" id="mail-conv-recall-icon-{{$mail.id}}" class="btn btn-default" ><i class="icon-undo mail-icons"></i></a>
|
||||
{{/if}}
|
||||
<a href="#" onclick="dropItem('mail/{{$mail.mailbox}}/drop/{{$mail.id}}', '#mail-{{$mail.id}}'); return false;" title="{{$mail.delete}}" id="mail-conv-delete-icon-{{$mail.id}}" class="btn btn-default" ><i class="icon-trash mail-icons"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</div>
|
||||
<hr class="mail-conv-break" />
|
||||
|
@ -1,8 +1,8 @@
|
||||
<div class="generic-content-wrapper">
|
||||
<div class="section-title-wrapper">
|
||||
<a class="btn btn-xs btn-danger pull-right" href="message/dropconv/{{$thread_id}}" onclick="return confirmDelete();"><i class="icon-trash"></i> {{$delete}}</a>
|
||||
<a class="btn btn-xs btn-danger pull-right" href="mail/{{$mailbox}}/dropconv/{{$thread_id}}" onclick="return confirmDelete();"><i class="icon-trash"></i> {{$delete}}</a>
|
||||
<h2>{{$prvmsg_header}}</h2>
|
||||
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div class="section-content-wrapper">
|
||||
{{foreach $mails as $mail}}
|
||||
|
@ -1,5 +1,5 @@
|
||||
<li>
|
||||
<a href="mail/{{$message.id}}" class="mail-link">
|
||||
<a href="mail/{{$message.mailbox}}/{{$message.id}}" class="{{if $message.selected}}active{{/if}}">
|
||||
<span class="{{if $message.seen}}seen{{else}}unseen{{/if}}">{{$message.subject}}</span><br>
|
||||
<span class="conv-participants">{{$message.from_name}} > {{$message.to_name}}</span><br>
|
||||
<span class="wall-item-ago autotime" title="{{$message.date}}">{{$message.date}}</span>
|
||||
|
@ -2,18 +2,9 @@
|
||||
<h3>{{$title}}</h3>
|
||||
<ul class="nav nav-pills nav-stacked">
|
||||
<li><a href="{{$check.url}}"{{if $check.sel}} class="active"{{/if}}>{{$check.label}}</a></li>
|
||||
{{*
|
||||
<li><a href="{{$combined.url}}"{{if $combined.sel}} class="active"{{/if}}>{{$combined.label}}</a></li>
|
||||
<li><a href="{{$inbox.url}}"{{if $inbox.sel}} class="active"{{/if}}>{{$inbox.label}}</a></li>
|
||||
<li><a href="{{$outbox.url}}"{{if $outbox.sel}} class="active"{{/if}}>{{$outbox.label}}</a></li>
|
||||
*}}
|
||||
<li><a href="{{$new.url}}"{{if $new.sel}} class="active"{{/if}}>{{$new.label}}</a></li>
|
||||
</ul>
|
||||
{{if $tabs}}
|
||||
<ul class="nav nav-pills nav-stacked">
|
||||
{{foreach $tabs as $t}}
|
||||
<li><a href="{{$t.url}}"{{if $t.sel}} class="active"{{/if}}>{{$t.label}}</a></li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
@ -8,7 +8,7 @@
|
||||
<div id="prvmail-to-label">{{$to}}</div>
|
||||
|
||||
{{if $showinputs}}
|
||||
<input type="text" id="recip" name="messagerecip" value="{{$prefill}}" maxlength="255" size="64" tabindex="10" />
|
||||
<input class="form-control" type="text" id="recip" name="messagerecip" value="{{$prefill}}" maxlength="255" tabindex="10" />
|
||||
<input type="hidden" id="recip-complete" name="messageto" value="{{$preid}}">
|
||||
{{else}}
|
||||
{{$select}}
|
||||
@ -18,10 +18,10 @@
|
||||
<input type="hidden" name="media_str" id="jot-media" value="" />
|
||||
|
||||
<div id="prvmail-subject-label">{{$subject}}</div>
|
||||
<input type="text" size="64" maxlength="255" id="prvmail-subject" name="subject" value="{{$subjtxt}}" {{$readonly}} tabindex="11" />
|
||||
<input class="form-control" type="text" maxlength="255" id="prvmail-subject" name="subject" value="{{$subjtxt}}" {{$readonly}} tabindex="11" />
|
||||
|
||||
<div id="prvmail-message-label">{{$yourmessage}}</div>
|
||||
<textarea rows="8" cols="72" class="prvmail-text" id="prvmail-text" name="body" tabindex="12">{{$text}}</textarea>
|
||||
<textarea class="prvmail-text form-control" id="prvmail-text" name="body" tabindex="12">{{$text}}</textarea>
|
||||
|
||||
|
||||
<div id="prvmail-submit-wrapper" >
|
||||
@ -51,6 +51,6 @@
|
||||
<div id="prvmail-rotator"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="prvmail-end"></div>
|
||||
<div id="prvmail-end" class="clear"></div>
|
||||
</form>
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user