From 30348a1bc0b52c5b4cbfd2843214c53c9278111c Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Tue, 19 May 2015 01:03:08 +0200 Subject: [PATCH 01/10] port of red matrix archive-widget --- include/items.php | 51 +++++++++++++++++++++++--- view/templates/posted_date_widget.tpl | 52 +++++++++++++++++++++++---- view/theme/duepuntozero/style.css | 4 +-- view/theme/frost/style.css | 4 +-- view/theme/quattro/dark/style.css | 3 ++ view/theme/quattro/green/style.css | 3 ++ view/theme/quattro/lilac/style.css | 3 ++ view/theme/smoothly/style.css | 9 ++--- view/theme/vier/style.css | 6 +++- 9 files changed, 113 insertions(+), 22 deletions(-) diff --git a/include/items.php b/include/items.php index 5a0aa9ed5..85d02ab60 100644 --- a/include/items.php +++ b/include/items.php @@ -4858,6 +4858,37 @@ function first_post_date($uid,$wall = false) { return false; } +/* modified posted_dates() {below} to arrange the list in years */ +function list_post_dates($uid, $wall) { + $dnow = datetime_convert('',date_default_timezone_get(),'now','Y-m-d'); + + $dthen = first_post_date($uid, $wall); + if(! $dthen) + return array(); + + // Set the start and end date to the beginning of the month + $dnow = substr($dnow,0,8).'01'; + $dthen = substr($dthen,0,8).'01'; + + $ret = array(); + + // Starting with the current month, get the first and last days of every + // month down to and including the month of the first post + while(substr($dnow, 0, 7) >= substr($dthen, 0, 7)) { + $dyear = intval(substr($dnow,0,4)); + $dstart = substr($dnow,0,8) . '01'; + $dend = substr($dnow,0,8) . get_dim(intval($dnow),intval(substr($dnow,5))); + $start_month = datetime_convert('','',$dstart,'Y-m-d'); + $end_month = datetime_convert('','',$dend,'Y-m-d'); + $str = day_translate(datetime_convert('','',$dnow,'F')); + if(! $ret[$dyear]) + $ret[$dyear] = array(); + $ret[$dyear][] = array($str,$end_month,$start_month); + $dnow = datetime_convert('','',$dnow . ' -1 month', 'Y-m-d'); + } + return $ret; +} + function posted_dates($uid,$wall) { $dnow = datetime_convert('',date_default_timezone_get(),'now','Y-m-d'); @@ -4895,16 +4926,28 @@ function posted_date_widget($url,$uid,$wall) { /* if($wall && intval(get_pconfig($uid,'system','no_wall_archive_widget'))) return $o;*/ - - $ret = posted_dates($uid,$wall); + + $visible_years = get_pconfig($uid,'system','archive_visible_years'); + if(! $visible_years) + $visible_years = 5; + + $ret = list_post_dates($uid,$wall); + if(! count($ret)) return $o; + $cutoff_year = intval(datetime_convert('',date_default_timezone_get(),'now','Y')) - $visible_years; + $cutoff = ((array_key_exists($cutoff_year,$ret))? true : false); + $o = replace_macros(get_markup_template('posted_date_widget.tpl'),array( '$title' => t('Archives'), - '$size' => ((count($ret) > 6) ? 6 : count($ret)), + '$size' => $visible_years, + '$cutoff_year' => $cutoff_year, + '$cutoff' => $cutoff, '$url' => $url, - '$dates' => $ret + '$dates' => $ret, + '$showmore' => t('show more') + )); return $o; } diff --git a/view/templates/posted_date_widget.tpl b/view/templates/posted_date_widget.tpl index 009fa60a6..878b1d360 100644 --- a/view/templates/posted_date_widget.tpl +++ b/view/templates/posted_date_widget.tpl @@ -1,9 +1,47 @@ + + +

{{$title}}

- - -
+ + + + + {{/if}} + + \ No newline at end of file diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 1b20042a5..024e63f5f 100644 --- a/view/theme/duepuntozero/style.css +++ b/view/theme/duepuntozero/style.css @@ -2026,11 +2026,11 @@ a.mail-list-link { margin-top: 10px; } -.nets-ul, .fileas-ul, .categories-ul { +.nets-ul, .fileas-ul, .categories-ul, .datebrowse-ul { list-style-type: none; } -.nets-ul li, .fileas-ul li, .categories-ul li { +.nets-ul li, .fileas-ul li, .categories-ul li, .datebrowse-ul li { margin-top: 10px; } diff --git a/view/theme/frost/style.css b/view/theme/frost/style.css index aed0dc0ab..74ae6c90a 100644 --- a/view/theme/frost/style.css +++ b/view/theme/frost/style.css @@ -2327,11 +2327,11 @@ a.mail-list-link { margin-top: 10px; } -.nets-ul, .fileas-ul, .categories-ul { +.nets-ul, .fileas-ul, .categories-ul, .datebrowse-ul { list-style-type: none; } -.nets-ul li, .fileas-ul li, .categories-ul li { +.nets-ul li, .fileas-ul li, .categories-ul li, .datebrowse-ul li { margin-top: 10px; } diff --git a/view/theme/quattro/dark/style.css b/view/theme/quattro/dark/style.css index 5f4b005c8..a1555565d 100644 --- a/view/theme/quattro/dark/style.css +++ b/view/theme/quattro/dark/style.css @@ -840,6 +840,9 @@ aside #dfrn-request-link:hover { aside #profiles-menu { width: 20em; } +aside .posted-date-selector-months { + margin-left: 10px; +} #contact-block { overflow: auto; height: auto; diff --git a/view/theme/quattro/green/style.css b/view/theme/quattro/green/style.css index c2826a3c0..ef6b16aad 100644 --- a/view/theme/quattro/green/style.css +++ b/view/theme/quattro/green/style.css @@ -840,6 +840,9 @@ aside #dfrn-request-link:hover { aside #profiles-menu { width: 20em; } +aside .posted-date-selector-months { + margin-left: 10px; +} #contact-block { overflow: auto; height: auto; diff --git a/view/theme/quattro/lilac/style.css b/view/theme/quattro/lilac/style.css index 28c5cd47a..2d4f7cec6 100644 --- a/view/theme/quattro/lilac/style.css +++ b/view/theme/quattro/lilac/style.css @@ -840,6 +840,9 @@ aside #dfrn-request-link:hover { aside #profiles-menu { width: 20em; } +aside .posted-date-selector-months { + margin-left: 10px; +} #contact-block { overflow: auto; height: auto; diff --git a/view/theme/smoothly/style.css b/view/theme/smoothly/style.css index d9dba9818..46d8902ae 100644 --- a/view/theme/smoothly/style.css +++ b/view/theme/smoothly/style.css @@ -945,13 +945,14 @@ ul .sidebar-group-li .icon { width: 12px; } -.nets-ul, .fileas-ul, .categories-ul { +.nets-ul, .fileas-ul, .categories-ul, .datebrowse-ul { list-style-type: none; } .nets-ul li, .fileas-ul li, -.categories-ul li { +.categories-ul li, +.datebrowse-link { } .nets-link { @@ -4605,10 +4606,6 @@ div #datebrowse-sidebar.widget { #id_npassword {} -#posted-date-selector { - margin-left: 33px; -} - #hide-comments-page-widget { margin-left: 40px; } diff --git a/view/theme/vier/style.css b/view/theme/vier/style.css index 779a194dd..e75934c8c 100644 --- a/view/theme/vier/style.css +++ b/view/theme/vier/style.css @@ -427,12 +427,16 @@ a.sidebar-group-element { color: #737373; } -#follow-sidebar form, #peoplefind-sidebar form, #netsearch-box form, #posted-date-selector { +#follow-sidebar form, #peoplefind-sidebar form, #netsearch-box form { margin-left: 10px; margin-top: 3px; margin-bottom: 3px; } +.posted-date-selector-months { + margin-left: 10px; +} + #sidebar-ungrouped, .side-link { padding-top: 5px; } From 101804d505acd20fcb1fc8744d4d79fcb8d350db Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Tue, 19 May 2015 01:07:40 +0200 Subject: [PATCH 02/10] minor polishing --- view/templates/posted_date_widget.tpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/view/templates/posted_date_widget.tpl b/view/templates/posted_date_widget.tpl index 878b1d360..c4c9937e6 100644 --- a/view/templates/posted_date_widget.tpl +++ b/view/templates/posted_date_widget.tpl @@ -44,4 +44,4 @@ function showHideDates() { {{/if}} - \ No newline at end of file + From 2ad8fdc40b669c39cb99a6e22e42a9ecc60e0045 Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Fri, 22 May 2015 18:53:18 +0200 Subject: [PATCH 03/10] port of red matrix datepicker implementation --- include/datetime.php | 210 +-- library/datetimepicker/MIT-LICENSE.txt | 19 + library/datetimepicker/README.md | 20 + .../datetimepicker/jquery.datetimepicker.css | 418 +++++ .../datetimepicker/jquery.datetimepicker.js | 1661 +++++++++++++++++ mod/events.php | 71 +- mod/profiles.php | 38 +- view/templates/event_form.tpl | 4 +- view/templates/head.tpl | 2 + 9 files changed, 2274 insertions(+), 169 deletions(-) create mode 100644 library/datetimepicker/MIT-LICENSE.txt create mode 100644 library/datetimepicker/README.md create mode 100644 library/datetimepicker/jquery.datetimepicker.css create mode 100644 library/datetimepicker/jquery.datetimepicker.js diff --git a/include/datetime.php b/include/datetime.php index f3236238f..8ac8ff0f2 100644 --- a/include/datetime.php +++ b/include/datetime.php @@ -131,134 +131,114 @@ function datetime_convert($from = 'UTC', $to = 'UTC', $s = 'now', $fmt = "Y-m-d function dob($dob) { list($year,$month,$day) = sscanf($dob,'%4d-%2d-%2d'); - $y = datetime_convert('UTC',date_default_timezone_get(),'now','Y'); $f = get_config('system','birthday_input_format'); if(! $f) $f = 'ymd'; - $o = datesel($f,'',1920,$y,true,$year,$month,$day); + if($dob === '0000-00-00') + $value = ''; + else + $value = (($year) ? datetime_convert('UTC','UTC',$dob,'Y-m-d') : datetime_convert('UTC','UTC',$dob,'m-d')); + $o = ''; +// if ($dob && $dob != '0000-00-00') +// $o = datesel($f,mktime(0,0,0,0,0,1900),mktime(),mktime(0,0,0,$month,$day,$year),'dob'); +// else +// $o = datesel($f,mktime(0,0,0,0,0,1900),mktime(),false,'dob'); return $o; } - -function datesel_format($f) { - - $o = ''; - - if(strlen($f)) { - for($x = 0; $x < strlen($f); $x ++) { - switch($f[$x]) { - case 'y': - if(strlen($o)) - $o .= '-'; - $o .= t('year'); - break; - case 'm': - if(strlen($o)) - $o .= '-'; - $o .= t('month'); - break; - case 'd': - if(strlen($o)) - $o .= '-'; - $o .= t('day'); - break; - default: - break; - } - } - } - return $o; -} - - -// returns a date selector. -// $f = format string, e.g. 'ymd' or 'mdy' -// $pre = prefix (if needed) for HTML name and class fields -// $ymin = first year shown in selector dropdown -// $ymax = last year shown in selector dropdown -// $allow_blank = allow an empty response on any field -// $y = already selected year -// $m = already selected month -// $d = already selected day - +/** + * returns a date selector + * @param $format + * format string, e.g. 'ymd' or 'mdy'. Not currently supported + * @param $min + * unix timestamp of minimum date + * @param $max + * unix timestap of maximum date + * @param $default + * unix timestamp of default date + * @param $id + * id and name of datetimepicker (defaults to "datetimepicker") + */ if(! function_exists('datesel')) { -function datesel($f,$pre,$ymin,$ymax,$allow_blank,$y,$m,$d) { - - $o = ''; - - if(strlen($f)) { - for($z = 0; $z < strlen($f); $z ++) { - if($f[$z] === 'y') { - - $o .= " "; - return $o; +function datesel($format, $min, $max, $default, $id = 'datepicker') { + return datetimesel($format,$min,$max,$default,$id,true,false, '',''); }} +/** + * returns a time selector + * @param $format + * format string, e.g. 'ymd' or 'mdy'. Not currently supported + * @param $h + * already selected hour + * @param $m + * already selected minute + * @param $id + * id and name of datetimepicker (defaults to "timepicker") + */ if(! function_exists('timesel')) { -function timesel($pre,$h,$m) { - - $o = ''; - $o .= " : "; - return $o; +function timesel($format, $h, $m, $id='timepicker') { + return datetimesel($format,new DateTime(),new DateTime(),new DateTime("$h:$m"),$id,false,true); }} +/** + * @brief Returns a datetime selector. + * + * @param $format + * format string, e.g. 'ymd' or 'mdy'. Not currently supported + * @param $min + * unix timestamp of minimum date + * @param $max + * unix timestap of maximum date + * @param $default + * unix timestamp of default date + * @param string $id + * id and name of datetimepicker (defaults to "datetimepicker") + * @param boolean $pickdate + * true to show date picker (default) + * @param boolean $picktime + * true to show time picker (default) + * @param $minfrom + * set minimum date from picker with id $minfrom (none by default) + * @param $maxfrom + * set maximum date from picker with id $maxfrom (none by default) + * @param boolean $required default false + * @return string Parsed HTML output. + * + * @todo Once browser support is better this could probably be replaced with + * native HTML5 date picker. + */ +if(! function_exists('datetimesel')) { +function datetimesel($format, $min, $max, $default, $id = 'datetimepicker', $pickdate = true, $picktime = true, $minfrom = '', $maxfrom = '', $required = false) { - - - - - + $o = ''; + $dateformat = ''; + if($pickdate) $dateformat .= 'Y-m-d'; + if($pickdate && $picktime) $dateformat .= ' '; + if($picktime) $dateformat .= 'H:i'; + $minjs = $min ? ",minDate: new Date({$min->getTimestamp()}*1000), yearStart: " . $min->format('Y') : ''; + $maxjs = $max ? ",maxDate: new Date({$max->getTimestamp()}*1000), yearEnd: " . $max->format('Y') : ''; + + $input_text = $default ? 'value="' . date($dateformat, $default->getTimestamp()) . '"' : ''; + $defaultdatejs = $default ? ",defaultDate: new Date({$default->getTimestamp()}*1000)" : ''; + $pickers = ''; + if(!$pickdate) $pickers .= ',datepicker: false'; + if(!$picktime) $pickers .= ',timepicker: false'; + $extra_js = ''; + if($minfrom != '') + $extra_js .= "\$('#$minfrom').data('xdsoft_datetimepicker').setOptions({onChangeDateTime: function (currentDateTime) { \$('#$id').data('xdsoft_datetimepicker').setOptions({minDate: currentDateTime})}})"; + if($maxfrom != '') + $extra_js .= "\$('#$maxfrom').data('xdsoft_datetimepicker').setOptions({onChangeDateTime: function (currentDateTime) { \$('#$id').data('xdsoft_datetimepicker').setOptions({maxDate: currentDateTime})}})"; + $readable_format = $dateformat; + $readable_format = str_replace('Y','yyyy',$readable_format); + $readable_format = str_replace('m','mm',$readable_format); + $readable_format = str_replace('d','dd',$readable_format); + $readable_format = str_replace('H','HH',$readable_format); + $readable_format = str_replace('i','MM',$readable_format); + $o .= "
"; + $o .= '
'; + $o .= ""; + return $o; +}} // implements "3 seconds ago" etc. // based on $posted_date, (UTC). diff --git a/library/datetimepicker/MIT-LICENSE.txt b/library/datetimepicker/MIT-LICENSE.txt new file mode 100644 index 000000000..2e68e7d6a --- /dev/null +++ b/library/datetimepicker/MIT-LICENSE.txt @@ -0,0 +1,19 @@ +Copyright (c) 2013 http://xdsoft.net + +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. \ No newline at end of file diff --git a/library/datetimepicker/README.md b/library/datetimepicker/README.md new file mode 100644 index 000000000..f0d3f40e3 --- /dev/null +++ b/library/datetimepicker/README.md @@ -0,0 +1,20 @@ +datetimepicker +============== +[Documentation][doc] + + +jQuery Plugin Date and Time Picker + +DateTimePicker + +![ScreenShot](https://raw2.github.com/xdan/datetimepicker/master/screen/1.png) + +DatePicker + +![ScreenShot](https://raw2.github.com/xdan/datetimepicker/master/screen/2.png) + +TimePicker + +![ScreenShot](https://raw2.github.com/xdan/datetimepicker/master/screen/3.png) + +[doc]: http://xdsoft.net/jqplugins/datetimepicker/ diff --git a/library/datetimepicker/jquery.datetimepicker.css b/library/datetimepicker/jquery.datetimepicker.css new file mode 100644 index 000000000..acf674af7 --- /dev/null +++ b/library/datetimepicker/jquery.datetimepicker.css @@ -0,0 +1,418 @@ +.xdsoft_datetimepicker{ + box-shadow: 0px 5px 15px -5px rgba(0, 0, 0, 0.506); + background: #FFFFFF; + border-bottom: 1px solid #BBBBBB; + border-left: 1px solid #CCCCCC; + border-right: 1px solid #CCCCCC; + border-top: 1px solid #CCCCCC; + color: #333333; + font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif; + padding: 8px; + padding-left: 0px; + padding-top: 2px; + position: absolute; + z-index: 9999; + -moz-box-sizing: border-box; + box-sizing: border-box; + display:none; +} + +.xdsoft_datetimepicker iframe { + position: absolute; + left: 0; + top: 0; + width: 75px; + height: 210px; + background: transparent; + border:none; +} +/*For IE8 or lower*/ +.xdsoft_datetimepicker button { + border:none !important; +} + +.xdsoft_noselect{ + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + -o-user-select: none; + user-select: none; +} +.xdsoft_noselect::selection { background: transparent; } +.xdsoft_noselect::-moz-selection { background: transparent; } +.xdsoft_datetimepicker.xdsoft_inline{ + display: inline-block; + position: static; + box-shadow: none; +} +.xdsoft_datetimepicker *{ + -moz-box-sizing: border-box; + box-sizing: border-box; + padding:0px; + margin:0px; +} +.xdsoft_datetimepicker .xdsoft_datepicker, .xdsoft_datetimepicker .xdsoft_timepicker{ + display:none; +} +.xdsoft_datetimepicker .xdsoft_datepicker.active, .xdsoft_datetimepicker .xdsoft_timepicker.active{ + display:block; +} +.xdsoft_datetimepicker .xdsoft_datepicker{ + width: 224px; + float:left; + margin-left:8px; +} +.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_datepicker{ + width: 256px; +} +.xdsoft_datetimepicker .xdsoft_timepicker{ + width: 58px; + float:left; + text-align:center; + margin-left:8px; + margin-top:0px; +} +.xdsoft_datetimepicker .xdsoft_datepicker.active+.xdsoft_timepicker{ + margin-top:8px; + margin-bottom:3px +} +.xdsoft_datetimepicker .xdsoft_mounthpicker{ + position: relative; + text-align: center; +} + +.xdsoft_datetimepicker .xdsoft_label i, +.xdsoft_datetimepicker .xdsoft_prev, +.xdsoft_datetimepicker .xdsoft_next, +.xdsoft_datetimepicker .xdsoft_today_button{ + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0NBRjI1NjM0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0NBRjI1NjQ0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQ0FGMjU2MTQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQ0FGMjU2MjQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoNEP54AAAIOSURBVHja7Jq9TsMwEMcxrZD4WpBYeKUCe+kTMCACHZh4BFfHO/AAIHZGFhYkBBsSEqxsLCAgXKhbXYOTxh9pfJVP+qutnZ5s/5Lz2Y5I03QhWji2GIcgAokWgfCxNvcOCCGKqiSqhUp0laHOne05vdEyGMfkdxJDVjgwDlEQgYQBgx+ULJaWSXXS6r/ER5FBVR8VfGftTKcITNs+a1XpcFoExREIDF14AVIFxgQUS+h520cdud6wNkC0UBw6BCO/HoCYwBhD8QCkQ/x1mwDyD4plh4D6DDV0TAGyo4HcawLIBBSLDkHeH0Mg2yVP3l4TQMZQDDsEOl/MgHQqhMNuE0D+oBh0CIr8MAKyazBH9WyBuKxDWgbXfjNf32TZ1KWm/Ap1oSk/R53UtQ5xTh3LUlMmT8gt6g51Q9p+SobxgJQ/qmsfZhWywGFSl0yBjCLJCMgXail3b7+rumdVJ2YRss4cN+r6qAHDkPWjPjdJCF4n9RmAD/V9A/Wp4NQassDjwlB6XBiCxcJQWmZZb8THFilfy/lfrTvLghq2TqTHrRMTKNJ0sIhdo15RT+RpyWwFdY96UZ/LdQKBGjcXpcc1AlSFEfLmouD+1knuxBDUVrvOBmoOC/rEcN7OQxKVeJTCiAdUzUJhA2Oez9QTkp72OTVcxDcXY8iKNkxGAJXmJCOQwOa6dhyXsOa6XwEGAKdeb5ET3rQdAAAAAElFTkSuQmCC); +} + +.xdsoft_datetimepicker .xdsoft_label i{ + opacity:0.5; + background-position:-92px -19px; + display: inline-block; + width: 9px; + height: 20px; + vertical-align: middle; +} + +.xdsoft_datetimepicker .xdsoft_prev{ + float: left; + background-position:-20px 0px; +} +.xdsoft_datetimepicker .xdsoft_today_button{ + float: left; + background-position:-70px 0px; + margin-left:5px; +} + +.xdsoft_datetimepicker .xdsoft_next{ + float: right; + background-position:0px 0px; +} + +.xdsoft_datetimepicker .xdsoft_next, +.xdsoft_datetimepicker .xdsoft_prev , +.xdsoft_datetimepicker .xdsoft_today_button{ + background-color: transparent; + background-repeat: no-repeat; + border: 0px none currentColor; + cursor: pointer; + display: block; + height: 30px; + opacity: 0.5; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; + outline: medium none currentColor; + overflow: hidden; + padding: 0px; + position: relative; + text-indent: 100%; + white-space: nowrap; + width: 20px; +} +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev, +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next{ + float:none; + background-position:-40px -15px; + height: 15px; + width: 30px; + display: block; + margin-left:14px; + margin-top:7px; +} +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev{ + background-position:-40px 0px; + margin-bottom:7px; + margin-top:0px; +} +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box{ + height:151px; + overflow:hidden; + border-bottom:1px solid #DDDDDD; +} +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div{ + background: #F5F5F5; + border-top:1px solid #DDDDDD; + color: #666666; + font-size: 12px; + text-align: center; + border-collapse:collapse; + cursor:pointer; + border-bottom-width:0px; + height:25px; + line-height:25px; +} + +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div > div:first-child{ + border-top-width:0px; +} +.xdsoft_datetimepicker .xdsoft_today_button:hover, +.xdsoft_datetimepicker .xdsoft_next:hover, +.xdsoft_datetimepicker .xdsoft_prev:hover { + opacity: 1; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; +} +.xdsoft_datetimepicker .xdsoft_label{ + display: inline; + position: relative; + z-index: 9999; + margin: 0; + padding: 5px 3px; + font-size: 14px; + line-height: 20px; + font-weight: bold; + background-color: #fff; + float:left; + width:182px; + text-align:center; + cursor:pointer; +} +.xdsoft_datetimepicker .xdsoft_label:hover>span{ + text-decoration:underline; +} +.xdsoft_datetimepicker .xdsoft_label:hover i{ + opacity:1.0; +} +.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select{ + border:1px solid #ccc; + position:absolute; + right:0px; + top:30px; + z-index:101; + display:none; + background:#fff; + max-height:160px; + overflow-y:hidden; +} +.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_monthselect{right:-7px;} +.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_yearselect{right:2px;} +.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover{ + color: #fff; + background: #ff8000; +} +.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option{ + padding:2px 10px 2px 5px; + text-decoration:none !important; +} +.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current{ + background: #33AAFF; + box-shadow: #178FE5 0px 1px 3px 0px inset; + color:#fff; + font-weight: 700; +} +.xdsoft_datetimepicker .xdsoft_month{ + width:100px; + text-align:right; +} +.xdsoft_datetimepicker .xdsoft_calendar{ + clear:both; +} +.xdsoft_datetimepicker .xdsoft_year{ + width: 48px; + margin-left: 5px; +} +.xdsoft_datetimepicker .xdsoft_calendar table{ + border-collapse:collapse; + width:100%; + +} +.xdsoft_datetimepicker .xdsoft_calendar td > div{ + padding-right:5px; +} +.xdsoft_datetimepicker .xdsoft_calendar th{ + height: 25px; +} +.xdsoft_datetimepicker .xdsoft_calendar td,.xdsoft_datetimepicker .xdsoft_calendar th{ + width:14.2857142%; + background: #F5F5F5; + border:1px solid #DDDDDD; + color: #666666; + font-size: 12px; + text-align: right; + vertical-align: middle; + padding:0px; + border-collapse:collapse; + cursor:pointer; + height: 25px; +} +.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar td,.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar th{ + width:12.5%; +} +.xdsoft_datetimepicker .xdsoft_calendar th{ + background: #F1F1F1; +} +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today{ + color:#33AAFF; +} +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default, +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current, +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current{ + background: #33AAFF; + box-shadow: #178FE5 0px 1px 3px 0px inset; + color:#fff; + font-weight: 700; +} +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month, +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled, +.xdsoft_datetimepicker .xdsoft_time_box >div >div.xdsoft_disabled{ + opacity:0.5; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; +} +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month.xdsoft_disabled{ + opacity:0.2; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)"; +} +.xdsoft_datetimepicker .xdsoft_calendar td:hover, +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div:hover{ + color: #fff !important; + background: #ff8000 !important; + box-shadow: none !important; +} +.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled:hover, +.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_disabled:hover{ + color: inherit !important; + background: inherit !important; + box-shadow: inherit !important; +} +.xdsoft_datetimepicker .xdsoft_calendar th{ + font-weight: 700; + text-align: center; + color: #999; + cursor:default; +} +.xdsoft_datetimepicker .xdsoft_copyright{ color:#ccc !important; font-size:10px;clear:both;float:none;margin-left:8px;} +.xdsoft_datetimepicker .xdsoft_copyright a{ color:#eee !important;} +.xdsoft_datetimepicker .xdsoft_copyright a:hover{ color:#aaa !important;} + + +.xdsoft_time_box{ + position:relative; + border:1px solid #ccc; +} +.xdsoft_scrollbar >.xdsoft_scroller{ + background:#ccc !important; + height:20px; + border-radius:3px; +} +.xdsoft_scrollbar{ + position:absolute; + width:7px; + right:0px; + top:0px; + bottom:0px; + cursor:pointer; +} +.xdsoft_scroller_box{ +position:relative; +} + + +.xdsoft_datetimepicker.xdsoft_dark{ + box-shadow: 0px 5px 15px -5px rgba(255, 255, 255, 0.506); + background: #000000; + border-bottom: 1px solid #444444; + border-left: 1px solid #333333; + border-right: 1px solid #333333; + border-top: 1px solid #333333; + color: #cccccc; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box{ + border-bottom:1px solid #222222; +} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div{ + background: #0a0a0a; + border-top:1px solid #222222; + color: #999999; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label{ + background-color: #000; +} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select{ + border:1px solid #333; + background:#000; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover{ + color: #000; + background: #007fff; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current{ + background: #cc5500; + box-shadow: #b03e00 0px 1px 3px 0px inset; + color:#000; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label i, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_prev, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_next, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_today_button{ + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUExQUUzOTA0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUExQUUzOTE0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQTFBRTM4RTQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQTFBRTM4RjQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp0VxGEAAAIASURBVHja7JrNSgMxEMebtgh+3MSLr1T1Xn2CHoSKB08+QmR8Bx9A8e7RixdB9CKCoNdexIugxFlJa7rNZneTbLIpM/CnNLsdMvNjM8l0mRCiQ9Ye61IKCAgZAUnH+mU3MMZaHYChBnJUDzWOFZdVfc5+ZFLbrWDeXPwbxIqrLLfaeS0hEBVGIRQCEiZoHQwtlGSByCCdYBl8g8egTTAWoKQMRBRBcZxYlhzhKegqMOageErsCHVkk3hXIFooDgHB1KkHIHVgzKB4ADJQ/A1jAFmAYhkQqA5TOBtocrKrgXwQA8gcFIuAIO8sQSA7hidvPwaQGZSaAYHOUWJABhWWw2EMIH9QagQERU4SArJXo0ZZL18uvaxejXt/Em8xjVBXmvFr1KVm/AJ10tRe2XnraNqaJvKE3KHuUbfK1E+VHB0q40/y3sdQSxY4FHWeKJCunP8UyDdqJZenT3ntVV5jIYCAh20vT7ioP8tpf6E2lfEMwERe+whV1MHjwZB7PBiCxcGQWwKZKD62lfGNnP/1poFAA60T7rF1UgcKd2id3KDeUS+oLWV8DfWAepOfq00CgQabi9zjcgJVYVD7PVzQUAUGAQkbNJTBICDhgwYTjDYD6XeW08ZKh+A4pYkzenOxXUbvZcWz7E8ykRMnIHGX1XPl+1m2vPYpL+2qdb8CDAARlKFEz/ZVkAAAAABJRU5ErkJggg==); +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th{ + background: #0a0a0a; + border:1px solid #222222; + color: #999999; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th{ + background: #0e0e0e; +} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_today{ + color:#cc5500; +} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_default, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_current, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current{ + background: #cc5500; + box-shadow: #b03e00 0px 1px 3px 0px inset; + color:#000; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td:hover, +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div:hover{ + color: #000 !important; + background: #007fff !important; +} + +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th{ + color: #666; +} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright{ color:#333 !important;} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a{ color:#111 !important;} +.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a:hover{ color:#555 !important;} + + +.xdsoft_dark .xdsoft_time_box{ + border:1px solid #333; +} +.xdsoft_dark .xdsoft_scrollbar >.xdsoft_scroller{ + background:#333 !important; +} diff --git a/library/datetimepicker/jquery.datetimepicker.js b/library/datetimepicker/jquery.datetimepicker.js new file mode 100644 index 000000000..d4e93dd13 --- /dev/null +++ b/library/datetimepicker/jquery.datetimepicker.js @@ -0,0 +1,1661 @@ +/** + * @preserve jQuery DateTimePicker plugin v2.4.0 + * @homepage http://xdsoft.net/jqplugins/datetimepicker/ + * (c) 2014, Chupurnov Valeriy. + */ +/*global document,window,jQuery,setTimeout,clearTimeout*/ +(function ($) { + 'use strict'; + var default_options = { + i18n: { + ar: { // Arabic + months: [ + "كانون الثاني", "شباط", "آذار", "نيسان", "مايو", "حزيران", "تموز", "آب", "أيلول", "تشرين الأول", "تشرين الثاني", "كانون الأول" + ], + dayOfWeek: [ + "ن", "ث", "ع", "خ", "ج", "س", "ح" + ] + }, + ro: { // Romanian + months: [ + "ianuarie", "februarie", "martie", "aprilie", "mai", "iunie", "iulie", "august", "septembrie", "octombrie", "noiembrie", "decembrie" + ], + dayOfWeek: [ + "l", "ma", "mi", "j", "v", "s", "d" + ] + }, + id: { // Indonesian + months: [ + "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember" + ], + dayOfWeek: [ + "Sen", "Sel", "Rab", "Kam", "Jum", "Sab", "Min" + ] + }, + bg: { // Bulgarian + months: [ + "Януари", "Февруари", "Март", "Април", "Май", "Юни", "Юли", "Август", "Септември", "Октомври", "Ноември", "Декември" + ], + dayOfWeek: [ + "Нд", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб" + ] + }, + fa: { // Persian/Farsi + months: [ + 'فروردین', 'اردیبهشت', 'خرداد', 'تیر', 'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی', 'بهمن', 'اسفند' + ], + dayOfWeek: [ + 'یکشنبه', 'دوشنبه', 'سه شنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه' + ] + }, + ru: { // Russian + months: [ + 'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь' + ], + dayOfWeek: [ + "Вск", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб" + ] + }, + uk: { // Ukrainian + months: [ + 'Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень', 'Липень', 'Серпень', 'Вересень', 'Жовтень', 'Листопад', 'Грудень' + ], + dayOfWeek: [ + "Ндл", "Пнд", "Втр", "Срд", "Чтв", "Птн", "Сбт" + ] + }, + en: { // English + months: [ + "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" + ], + dayOfWeek: [ + "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" + ] + }, + el: { // Ελληνικά + months: [ + "Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάιος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος" + ], + dayOfWeek: [ + "Κυρ", "Δευ", "Τρι", "Τετ", "Πεμ", "Παρ", "Σαβ" + ] + }, + de: { // German + months: [ + 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember' + ], + dayOfWeek: [ + "So", "Mo", "Di", "Mi", "Do", "Fr", "Sa" + ] + }, + nl: { // Dutch + months: [ + "januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december" + ], + dayOfWeek: [ + "zo", "ma", "di", "wo", "do", "vr", "za" + ] + }, + tr: { // Turkish + months: [ + "Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık" + ], + dayOfWeek: [ + "Paz", "Pts", "Sal", "Çar", "Per", "Cum", "Cts" + ] + }, + fr: { //French + months: [ + "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre" + ], + dayOfWeek: [ + "Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam" + ] + }, + es: { // Spanish + months: [ + "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre" + ], + dayOfWeek: [ + "Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb" + ] + }, + th: { // Thai + months: [ + 'มกราคม', 'กุมภาพันธ์', 'มีนาคม', 'เมษายน', 'พฤษภาคม', 'มิถุนายน', 'กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม', 'พฤศจิกายน', 'ธันวาคม' + ], + dayOfWeek: [ + 'อา.', 'จ.', 'อ.', 'พ.', 'พฤ.', 'ศ.', 'ส.' + ] + }, + pl: { // Polish + months: [ + "styczeń", "luty", "marzec", "kwiecień", "maj", "czerwiec", "lipiec", "sierpień", "wrzesień", "październik", "listopad", "grudzień" + ], + dayOfWeek: [ + "nd", "pn", "wt", "śr", "cz", "pt", "sb" + ] + }, + pt: { // Portuguese + months: [ + "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro" + ], + dayOfWeek: [ + "Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sab" + ] + }, + ch: { // Simplified Chinese + months: [ + "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月" + ], + dayOfWeek: [ + "日", "一", "二", "三", "四", "五", "六" + ] + }, + se: { // Swedish + months: [ + "Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December" + ], + dayOfWeek: [ + "Sön", "Mån", "Tis", "Ons", "Tor", "Fre", "Lör" + ] + }, + kr: { // Korean + months: [ + "1월", "2월", "3월", "4월", "5월", "6월", "7월", "8월", "9월", "10월", "11월", "12월" + ], + dayOfWeek: [ + "일", "월", "화", "수", "목", "금", "토" + ] + }, + it: { // Italian + months: [ + "Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre" + ], + dayOfWeek: [ + "Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab" + ] + }, + da: { // Dansk + months: [ + "January", "Februar", "Marts", "April", "Maj", "Juni", "July", "August", "September", "Oktober", "November", "December" + ], + dayOfWeek: [ + "Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør" + ] + }, + no: { // Norwegian + months: [ + "Januar", "Februar", "Mars", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Desember" + ], + dayOfWeek: [ + "Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør" + ] + }, + ja: { // Japanese + months: [ + "1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月" + ], + dayOfWeek: [ + "日", "月", "火", "水", "木", "金", "土" + ] + }, + vi: { // Vietnamese + months: [ + "Tháng 1", "Tháng 2", "Tháng 3", "Tháng 4", "Tháng 5", "Tháng 6", "Tháng 7", "Tháng 8", "Tháng 9", "Tháng 10", "Tháng 11", "Tháng 12" + ], + dayOfWeek: [ + "CN", "T2", "T3", "T4", "T5", "T6", "T7" + ] + }, + sl: { // Slovenščina + months: [ + "Januar", "Februar", "Marec", "April", "Maj", "Junij", "Julij", "Avgust", "September", "Oktober", "November", "December" + ], + dayOfWeek: [ + "Ned", "Pon", "Tor", "Sre", "Čet", "Pet", "Sob" + ] + }, + cs: { // Čeština + months: [ + "Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec" + ], + dayOfWeek: [ + "Ne", "Po", "Út", "St", "Čt", "Pá", "So" + ] + }, + hu: { // Hungarian + months: [ + "Január", "Február", "Március", "Április", "Május", "Június", "Július", "Augusztus", "Szeptember", "Október", "November", "December" + ], + dayOfWeek: [ + "Va", "Hé", "Ke", "Sze", "Cs", "Pé", "Szo" + ] + } + }, + value: '', + lang: 'en', + + format: 'Y/m/d H:i', + formatTime: 'H:i', + formatDate: 'Y/m/d', + + startDate: false, // new Date(), '1986/12/08', '-1970/01/05','-1970/01/05', + step: 60, + monthChangeSpinner: true, + + closeOnDateSelect: false, + closeOnWithoutClick: true, + closeOnInputClick: true, + + timepicker: true, + datepicker: true, + weeks: false, + + defaultTime: false, // use formatTime format (ex. '10:00' for formatTime: 'H:i') + defaultDate: false, // use formatDate format (ex new Date() or '1986/12/08' or '-1970/01/05' or '-1970/01/05') + + minDate: false, + maxDate: false, + minTime: false, + maxTime: false, + + allowTimes: [], + opened: false, + initTime: true, + inline: false, + theme: '', + + onSelectDate: function () {}, + onSelectTime: function () {}, + onChangeMonth: function () {}, + onChangeYear: function () {}, + onChangeDateTime: function () {}, + onShow: function () {}, + onClose: function () {}, + onGenerate: function () {}, + + withoutCopyright: true, + inverseButton: false, + hours12: false, + next: 'xdsoft_next', + prev : 'xdsoft_prev', + dayOfWeekStart: 0, + parentID: 'body', + timeHeightInTimePicker: 25, + timepickerScrollbar: true, + todayButton: true, + defaultSelect: true, + + scrollMonth: true, + scrollTime: true, + scrollInput: true, + + lazyInit: false, + mask: false, + validateOnBlur: true, + allowBlank: true, + yearStart: 1950, + yearEnd: 2050, + style: '', + id: '', + fixed: false, + roundTime: 'round', // ceil, floor + className: '', + weekends: [], + disabledDates : [], + yearOffset: 0, + beforeShowDay: null, + + enterLikeTab: true + }; + // fix for ie8 + if (!Array.prototype.indexOf) { + Array.prototype.indexOf = function (obj, start) { + var i, j; + for (i = (start || 0), j = this.length; i < j; i += 1) { + if (this[i] === obj) { return i; } + } + return -1; + }; + } + Date.prototype.countDaysInMonth = function () { + return new Date(this.getFullYear(), this.getMonth() + 1, 0).getDate(); + }; + $.fn.xdsoftScroller = function (percent) { + return this.each(function () { + var timeboxparent = $(this), + pointerEventToXY = function (e) { + var out = {x: 0, y: 0}, + touch; + if (e.type === 'touchstart' || e.type === 'touchmove' || e.type === 'touchend' || e.type === 'touchcancel') { + touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0]; + out.x = touch.clientX; + out.y = touch.clientY; + } else if (e.type === 'mousedown' || e.type === 'mouseup' || e.type === 'mousemove' || e.type === 'mouseover' || e.type === 'mouseout' || e.type === 'mouseenter' || e.type === 'mouseleave') { + out.x = e.clientX; + out.y = e.clientY; + } + return out; + }, + move = 0, + timebox, + parentHeight, + height, + scrollbar, + scroller, + maximumOffset = 100, + start = false, + startY = 0, + startTop = 0, + h1 = 0, + touchStart = false, + startTopScroll = 0, + calcOffset = function () {}; + if (percent === 'hide') { + timeboxparent.find('.xdsoft_scrollbar').hide(); + return; + } + if (!$(this).hasClass('xdsoft_scroller_box')) { + timebox = timeboxparent.children().eq(0); + parentHeight = timeboxparent[0].clientHeight; + height = timebox[0].offsetHeight; + scrollbar = $('
'); + scroller = $('
'); + scrollbar.append(scroller); + + timeboxparent.addClass('xdsoft_scroller_box').append(scrollbar); + calcOffset = function calcOffset(event) { + var offset = pointerEventToXY(event).y - startY + startTopScroll; + if (offset < 0) { + offset = 0; + } + if (offset + scroller[0].offsetHeight > h1) { + offset = h1 - scroller[0].offsetHeight; + } + timeboxparent.trigger('scroll_element.xdsoft_scroller', [maximumOffset ? offset / maximumOffset : 0]); + }; + + scroller + .on('touchstart.xdsoft_scroller mousedown.xdsoft_scroller', function (event) { + if (!parentHeight) { + timeboxparent.trigger('resize_scroll.xdsoft_scroller', [percent]); + } + + startY = pointerEventToXY(event).y; + startTopScroll = parseInt(scroller.css('margin-top'), 10); + h1 = scrollbar[0].offsetHeight; + + if (event.type === 'mousedown') { + if (document) { + $(document.body).addClass('xdsoft_noselect'); + } + $([document.body, window]).on('mouseup.xdsoft_scroller', function arguments_callee() { + $([document.body, window]).off('mouseup.xdsoft_scroller', arguments_callee) + .off('mousemove.xdsoft_scroller', calcOffset) + .removeClass('xdsoft_noselect'); + }); + $(document.body).on('mousemove.xdsoft_scroller', calcOffset); + } else { + touchStart = true; + event.stopPropagation(); + event.preventDefault(); + } + }) + .on('touchmove', function (event) { + if (touchStart) { + event.preventDefault(); + calcOffset(event); + } + }) + .on('touchend touchcancel', function (event) { + touchStart = false; + startTopScroll = 0; + }); + + timeboxparent + .on('scroll_element.xdsoft_scroller', function (event, percentage) { + if (!parentHeight) { + timeboxparent.trigger('resize_scroll.xdsoft_scroller', [percentage, true]); + } + percentage = percentage > 1 ? 1 : (percentage < 0 || isNaN(percentage)) ? 0 : percentage; + + scroller.css('margin-top', maximumOffset * percentage); + + setTimeout(function () { + timebox.css('marginTop', -parseInt((timebox[0].offsetHeight - parentHeight) * percentage, 10)); + }, 10); + }) + .on('resize_scroll.xdsoft_scroller', function (event, percentage, noTriggerScroll) { + var percent, sh; + parentHeight = timeboxparent[0].clientHeight; + height = timebox[0].offsetHeight; + percent = parentHeight / height; + sh = percent * scrollbar[0].offsetHeight; + if (percent > 1) { + scroller.hide(); + } else { + scroller.show(); + scroller.css('height', parseInt(sh > 10 ? sh : 10, 10)); + maximumOffset = scrollbar[0].offsetHeight - scroller[0].offsetHeight; + if (noTriggerScroll !== true) { + timeboxparent.trigger('scroll_element.xdsoft_scroller', [percentage || Math.abs(parseInt(timebox.css('marginTop'), 10)) / (height - parentHeight)]); + } + } + }); + + timeboxparent.on('mousewheel', function (event) { + var top = Math.abs(parseInt(timebox.css('marginTop'), 10)); + + top = top - (event.deltaY * 20); + if (top < 0) { + top = 0; + } + + timeboxparent.trigger('scroll_element.xdsoft_scroller', [top / (height - parentHeight)]); + event.stopPropagation(); + return false; + }); + + timeboxparent.on('touchstart', function (event) { + start = pointerEventToXY(event); + startTop = Math.abs(parseInt(timebox.css('marginTop'), 10)); + }); + + timeboxparent.on('touchmove', function (event) { + if (start) { + event.preventDefault(); + var coord = pointerEventToXY(event); + timeboxparent.trigger('scroll_element.xdsoft_scroller', [(startTop - (coord.y - start.y)) / (height - parentHeight)]); + } + }); + + timeboxparent.on('touchend touchcancel', function (event) { + start = false; + startTop = 0; + }); + } + timeboxparent.trigger('resize_scroll.xdsoft_scroller', [percent]); + }); + }; + + $.fn.datetimepicker = function (opt) { + var KEY0 = 48, + KEY9 = 57, + _KEY0 = 96, + _KEY9 = 105, + CTRLKEY = 17, + DEL = 46, + ENTER = 13, + ESC = 27, + BACKSPACE = 8, + ARROWLEFT = 37, + ARROWUP = 38, + ARROWRIGHT = 39, + ARROWDOWN = 40, + TAB = 9, + F5 = 116, + AKEY = 65, + CKEY = 67, + VKEY = 86, + ZKEY = 90, + YKEY = 89, + ctrlDown = false, + options = ($.isPlainObject(opt) || !opt) ? $.extend(true, {}, default_options, opt) : $.extend(true, {}, default_options), + + lazyInitTimer = 0, + createDateTimePicker, + destroyDateTimePicker, + _xdsoft_datetime, + + lazyInit = function (input) { + input + .on('open.xdsoft focusin.xdsoft mousedown.xdsoft', function initOnActionCallback(event) { + if (input.is(':disabled') || input.is(':hidden') || !input.is(':visible') || input.data('xdsoft_datetimepicker')) { + return; + } + clearTimeout(lazyInitTimer); + lazyInitTimer = setTimeout(function () { + + if (!input.data('xdsoft_datetimepicker')) { + createDateTimePicker(input); + } + input + .off('open.xdsoft focusin.xdsoft mousedown.xdsoft', initOnActionCallback) + .trigger('open.xdsoft'); + }, 100); + }); + }; + + createDateTimePicker = function (input) { + var datetimepicker = $('
'), + xdsoft_copyright = $(''), + datepicker = $('
'), + mounth_picker = $('
' + + '
' + + '
' + + '
'), + calendar = $('
'), + timepicker = $('
'), + timeboxparent = timepicker.find('.xdsoft_time_box').eq(0), + timebox = $('
'), + /*scrollbar = $('
'), + scroller = $('
'),*/ + monthselect = $('
'), + yearselect = $('
'), + triggerAfterOpen = false, + XDSoft_datetime, + //scroll_element, + xchangeTimer, + timerclick, + current_time_index, + setPos, + timer = 0, + timer1 = 0; + + mounth_picker + .find('.xdsoft_month span') + .after(monthselect); + mounth_picker + .find('.xdsoft_year span') + .after(yearselect); + + mounth_picker + .find('.xdsoft_month,.xdsoft_year') + .on('mousedown.xdsoft', function (event) { + var select = $(this).find('.xdsoft_select').eq(0), + val = 0, + top = 0, + visible = select.is(':visible'), + items, + i; + + mounth_picker + .find('.xdsoft_select') + .hide(); + if (_xdsoft_datetime.currentTime) { + val = _xdsoft_datetime.currentTime[$(this).hasClass('xdsoft_month') ? 'getMonth' : 'getFullYear'](); + } + + select[visible ? 'hide' : 'show'](); + for (items = select.find('div.xdsoft_option'), i = 0; i < items.length; i += 1) { + if (items.eq(i).data('value') === val) { + break; + } else { + top += items[0].offsetHeight; + } + } + + select.xdsoftScroller(top / (select.children()[0].offsetHeight - (select[0].clientHeight))); + event.stopPropagation(); + return false; + }); + + mounth_picker + .find('.xdsoft_select') + .xdsoftScroller() + .on('mousedown.xdsoft', function (event) { + event.stopPropagation(); + event.preventDefault(); + }) + .on('mousedown.xdsoft', '.xdsoft_option', function (event) { + var year = _xdsoft_datetime.currentTime.getFullYear(); + if (_xdsoft_datetime && _xdsoft_datetime.currentTime) { + _xdsoft_datetime.currentTime[$(this).parent().parent().hasClass('xdsoft_monthselect') ? 'setMonth' : 'setFullYear']($(this).data('value')); + } + + $(this).parent().parent().hide(); + + datetimepicker.trigger('xchange.xdsoft'); + if (options.onChangeMonth && $.isFunction(options.onChangeMonth)) { + options.onChangeMonth.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input')); + } + + if (year !== _xdsoft_datetime.currentTime.getFullYear() && $.isFunction(options.onChangeYear)) { + options.onChangeYear.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input')); + } + }); + + datetimepicker.setOptions = function (_options) { + options = $.extend(true, {}, options, _options); + + if (_options.allowTimes && $.isArray(_options.allowTimes) && _options.allowTimes.length) { + options.allowTimes = $.extend(true, [], _options.allowTimes); + } + + if (_options.weekends && $.isArray(_options.weekends) && _options.weekends.length) { + options.weekends = $.extend(true, [], _options.weekends); + } + + if (_options.disabledDates && $.isArray(_options.disabledDates) && _options.disabledDates.length) { + options.disabledDates = $.extend(true, [], _options.disabledDates); + } + + if ((options.open || options.opened) && (!options.inline)) { + input.trigger('open.xdsoft'); + } + + if (options.inline) { + triggerAfterOpen = true; + datetimepicker.addClass('xdsoft_inline'); + input.after(datetimepicker).hide(); + } + + if (options.inverseButton) { + options.next = 'xdsoft_prev'; + options.prev = 'xdsoft_next'; + } + + if (options.datepicker) { + datepicker.addClass('active'); + } else { + datepicker.removeClass('active'); + } + + if (options.timepicker) { + timepicker.addClass('active'); + } else { + timepicker.removeClass('active'); + } + + if (options.value) { + if (input && input.val) { + input.val(options.value); + } + _xdsoft_datetime.setCurrentTime(options.value); + } + + if (isNaN(options.dayOfWeekStart)) { + options.dayOfWeekStart = 0; + } else { + options.dayOfWeekStart = parseInt(options.dayOfWeekStart, 10) % 7; + } + + if (!options.timepickerScrollbar) { + timeboxparent.xdsoftScroller('hide'); + } + + if (options.minDate && /^-(.*)$/.test(options.minDate)) { + options.minDate = _xdsoft_datetime.strToDateTime(options.minDate).dateFormat(options.formatDate); + } + + if (options.maxDate && /^\+(.*)$/.test(options.maxDate)) { + options.maxDate = _xdsoft_datetime.strToDateTime(options.maxDate).dateFormat(options.formatDate); + } + + mounth_picker + .find('.xdsoft_today_button') + .css('visibility', !options.todayButton ? 'hidden' : 'visible'); + + if (options.mask) { + var e, + getCaretPos = function (input) { + try { + if (document.selection && document.selection.createRange) { + var range = document.selection.createRange(); + return range.getBookmark().charCodeAt(2) - 2; + } + if (input.setSelectionRange) { + return input.selectionStart; + } + } catch (e) { + return 0; + } + }, + setCaretPos = function (node, pos) { + node = (typeof node === "string" || node instanceof String) ? document.getElementById(node) : node; + if (!node) { + return false; + } + if (node.createTextRange) { + var textRange = node.createTextRange(); + textRange.collapse(true); + textRange.moveEnd('character', pos); + textRange.moveStart('character', pos); + textRange.select(); + return true; + } + if (node.setSelectionRange) { + node.setSelectionRange(pos, pos); + return true; + } + return false; + }, + isValidValue = function (mask, value) { + var reg = mask + .replace(/([\[\]\/\{\}\(\)\-\.\+]{1})/g, '\\$1') + .replace(/_/g, '{digit+}') + .replace(/([0-9]{1})/g, '{digit$1}') + .replace(/\{digit([0-9]{1})\}/g, '[0-$1_]{1}') + .replace(/\{digit[\+]\}/g, '[0-9_]{1}'); + return (new RegExp(reg)).test(value); + }; + input.off('keydown.xdsoft'); + + if (options.mask === true) { + options.mask = options.format + .replace(/Y/g, '9999') + .replace(/F/g, '9999') + .replace(/m/g, '19') + .replace(/d/g, '39') + .replace(/H/g, '29') + .replace(/i/g, '59') + .replace(/s/g, '59'); + } + + if ($.type(options.mask) === 'string') { + if (!isValidValue(options.mask, input.val())) { + input.val(options.mask.replace(/[0-9]/g, '_')); + } + + input.on('keydown.xdsoft', function (event) { + var val = this.value, + key = event.which, + pos, + digit; + + if (((key >= KEY0 && key <= KEY9) || (key >= _KEY0 && key <= _KEY9)) || (key === BACKSPACE || key === DEL)) { + pos = getCaretPos(this); + digit = (key !== BACKSPACE && key !== DEL) ? String.fromCharCode((_KEY0 <= key && key <= _KEY9) ? key - KEY0 : key) : '_'; + + if ((key === BACKSPACE || key === DEL) && pos) { + pos -= 1; + digit = '_'; + } + + while (/[^0-9_]/.test(options.mask.substr(pos, 1)) && pos < options.mask.length && pos > 0) { + pos += (key === BACKSPACE || key === DEL) ? -1 : 1; + } + + val = val.substr(0, pos) + digit + val.substr(pos + 1); + if ($.trim(val) === '') { + val = options.mask.replace(/[0-9]/g, '_'); + } else { + if (pos === options.mask.length) { + event.preventDefault(); + return false; + } + } + + pos += (key === BACKSPACE || key === DEL) ? 0 : 1; + while (/[^0-9_]/.test(options.mask.substr(pos, 1)) && pos < options.mask.length && pos > 0) { + pos += (key === BACKSPACE || key === DEL) ? -1 : 1; + } + + if (isValidValue(options.mask, val)) { + this.value = val; + setCaretPos(this, pos); + } else if ($.trim(val) === '') { + this.value = options.mask.replace(/[0-9]/g, '_'); + } else { + input.trigger('error_input.xdsoft'); + } + } else { + if (([AKEY, CKEY, VKEY, ZKEY, YKEY].indexOf(key) !== -1 && ctrlDown) || [ESC, ARROWUP, ARROWDOWN, ARROWLEFT, ARROWRIGHT, F5, CTRLKEY, TAB, ENTER].indexOf(key) !== -1) { + return true; + } + } + + event.preventDefault(); + return false; + }); + } + } + if (options.validateOnBlur) { + input + .off('blur.xdsoft') + .on('blur.xdsoft', function () { + if (options.allowBlank && !$.trim($(this).val()).length) { + $(this).val(null); + datetimepicker.data('xdsoft_datetime').empty(); + } else if (!Date.parseDate($(this).val(), options.format)) { + $(this).val((_xdsoft_datetime.now()).dateFormat(options.format)); + datetimepicker.data('xdsoft_datetime').setCurrentTime($(this).val()); + } else { + datetimepicker.data('xdsoft_datetime').setCurrentTime($(this).val()); + } + datetimepicker.trigger('changedatetime.xdsoft'); + }); + } + options.dayOfWeekStartPrev = (options.dayOfWeekStart === 0) ? 6 : options.dayOfWeekStart - 1; + + datetimepicker + .trigger('xchange.xdsoft') + .trigger('afterOpen.xdsoft'); + }; + + datetimepicker + .data('options', options) + .on('mousedown.xdsoft', function (event) { + event.stopPropagation(); + event.preventDefault(); + yearselect.hide(); + monthselect.hide(); + return false; + }); + + //scroll_element = timepicker.find('.xdsoft_time_box'); + timeboxparent.append(timebox); + timeboxparent.xdsoftScroller(); + + datetimepicker.on('afterOpen.xdsoft', function () { + timeboxparent.xdsoftScroller(); + }); + + datetimepicker + .append(datepicker) + .append(timepicker); + + if (options.withoutCopyright !== true) { + datetimepicker + .append(xdsoft_copyright); + } + + datepicker + .append(mounth_picker) + .append(calendar); + + $(options.parentID) + .append(datetimepicker); + + XDSoft_datetime = function () { + var _this = this; + _this.now = function (norecursion) { + var d = new Date(), + date, + time; + + if (!norecursion && options.defaultDate) { + date = _this.strToDate(options.defaultDate); + d.setFullYear(date.getFullYear()); + d.setMonth(date.getMonth()); + d.setDate(date.getDate()); + } + + if (options.yearOffset) { + d.setFullYear(d.getFullYear() + options.yearOffset); + } + + if (!norecursion && options.defaultTime) { + time = _this.strtotime(options.defaultTime); + d.setHours(time.getHours()); + d.setMinutes(time.getMinutes()); + } + + return d; + }; + + _this.isValidDate = function (d) { + if (Object.prototype.toString.call(d) !== "[object Date]") { + return false; + } + return !isNaN(d.getTime()); + }; + + _this.setCurrentTime = function (dTime) { + _this.currentTime = (typeof dTime === 'string') ? _this.strToDateTime(dTime) : _this.isValidDate(dTime) ? dTime : _this.now(); + datetimepicker.trigger('xchange.xdsoft'); + }; + + _this.empty = function () { + _this.currentTime = null; + }; + + _this.getCurrentTime = function (dTime) { + return _this.currentTime; + }; + + _this.nextMonth = function () { + var month = _this.currentTime.getMonth() + 1, + year; + if (month === 12) { + _this.currentTime.setFullYear(_this.currentTime.getFullYear() + 1); + month = 0; + } + + year = _this.currentTime.getFullYear(); + + _this.currentTime.setDate( + Math.min( + new Date(_this.currentTime.getFullYear(), month + 1, 0).getDate(), + _this.currentTime.getDate() + ) + ); + _this.currentTime.setMonth(month); + + if (options.onChangeMonth && $.isFunction(options.onChangeMonth)) { + options.onChangeMonth.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input')); + } + + if (year !== _this.currentTime.getFullYear() && $.isFunction(options.onChangeYear)) { + options.onChangeYear.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input')); + } + + datetimepicker.trigger('xchange.xdsoft'); + return month; + }; + + _this.prevMonth = function () { + var month = _this.currentTime.getMonth() - 1; + if (month === -1) { + _this.currentTime.setFullYear(_this.currentTime.getFullYear() - 1); + month = 11; + } + _this.currentTime.setDate( + Math.min( + new Date(_this.currentTime.getFullYear(), month + 1, 0).getDate(), + _this.currentTime.getDate() + ) + ); + _this.currentTime.setMonth(month); + if (options.onChangeMonth && $.isFunction(options.onChangeMonth)) { + options.onChangeMonth.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input')); + } + datetimepicker.trigger('xchange.xdsoft'); + return month; + }; + + _this.getWeekOfYear = function (datetime) { + var onejan = new Date(datetime.getFullYear(), 0, 1); + return Math.ceil((((datetime - onejan) / 86400000) + onejan.getDay() + 1) / 7); + }; + + _this.strToDateTime = function (sDateTime) { + var tmpDate = [], timeOffset, currentTime; + + if (sDateTime && sDateTime instanceof Date && _this.isValidDate(sDateTime)) { + return sDateTime; + } + + tmpDate = /^(\+|\-)(.*)$/.exec(sDateTime); + if (tmpDate) { + tmpDate[2] = Date.parseDate(tmpDate[2], options.formatDate); + } + if (tmpDate && tmpDate[2]) { + timeOffset = tmpDate[2].getTime() - (tmpDate[2].getTimezoneOffset()) * 60000; + currentTime = new Date((_xdsoft_datetime.now()).getTime() + parseInt(tmpDate[1] + '1', 10) * timeOffset); + } else { + currentTime = sDateTime ? Date.parseDate(sDateTime, options.format) : _this.now(); + } + + if (!_this.isValidDate(currentTime)) { + currentTime = _this.now(); + } + + return currentTime; + }; + + _this.strToDate = function (sDate) { + if (sDate && sDate instanceof Date && _this.isValidDate(sDate)) { + return sDate; + } + + var currentTime = sDate ? Date.parseDate(sDate, options.formatDate) : _this.now(true); + if (!_this.isValidDate(currentTime)) { + currentTime = _this.now(true); + } + return currentTime; + }; + + _this.strtotime = function (sTime) { + if (sTime && sTime instanceof Date && _this.isValidDate(sTime)) { + return sTime; + } + var currentTime = sTime ? Date.parseDate(sTime, options.formatTime) : _this.now(true); + if (!_this.isValidDate(currentTime)) { + currentTime = _this.now(true); + } + return currentTime; + }; + + _this.str = function () { + return _this.currentTime.dateFormat(options.format); + }; + _this.currentTime = this.now(); + }; + + _xdsoft_datetime = new XDSoft_datetime(); + + mounth_picker + .find('.xdsoft_today_button') + .on('mousedown.xdsoft', function () { + datetimepicker.data('changed', true); + _xdsoft_datetime.setCurrentTime(0); + datetimepicker.trigger('afterOpen.xdsoft'); + }).on('dblclick.xdsoft', function () { + input.val(_xdsoft_datetime.str()); + datetimepicker.trigger('close.xdsoft'); + }); + mounth_picker + .find('.xdsoft_prev,.xdsoft_next') + .on('mousedown.xdsoft', function () { + var $this = $(this), + timer = 0, + stop = false; + + (function arguments_callee1(v) { + var month = _xdsoft_datetime.currentTime.getMonth(); + if ($this.hasClass(options.next)) { + _xdsoft_datetime.nextMonth(); + } else if ($this.hasClass(options.prev)) { + _xdsoft_datetime.prevMonth(); + } + if (options.monthChangeSpinner) { + if (!stop) { + timer = setTimeout(arguments_callee1, v || 100); + } + } + }(500)); + + $([document.body, window]).on('mouseup.xdsoft', function arguments_callee2() { + clearTimeout(timer); + stop = true; + $([document.body, window]).off('mouseup.xdsoft', arguments_callee2); + }); + }); + + timepicker + .find('.xdsoft_prev,.xdsoft_next') + .on('mousedown.xdsoft', function () { + var $this = $(this), + timer = 0, + stop = false, + period = 110; + (function arguments_callee4(v) { + var pheight = timeboxparent[0].clientHeight, + height = timebox[0].offsetHeight, + top = Math.abs(parseInt(timebox.css('marginTop'), 10)); + if ($this.hasClass(options.next) && (height - pheight) - options.timeHeightInTimePicker >= top) { + timebox.css('marginTop', '-' + (top + options.timeHeightInTimePicker) + 'px'); + } else if ($this.hasClass(options.prev) && top - options.timeHeightInTimePicker >= 0) { + timebox.css('marginTop', '-' + (top - options.timeHeightInTimePicker) + 'px'); + } + timeboxparent.trigger('scroll_element.xdsoft_scroller', [Math.abs(parseInt(timebox.css('marginTop'), 10) / (height - pheight))]); + period = (period > 10) ? 10 : period - 10; + if (!stop) { + timer = setTimeout(arguments_callee4, v || period); + } + }(500)); + $([document.body, window]).on('mouseup.xdsoft', function arguments_callee5() { + clearTimeout(timer); + stop = true; + $([document.body, window]) + .off('mouseup.xdsoft', arguments_callee5); + }); + }); + + xchangeTimer = 0; + // base handler - generating a calendar and timepicker + datetimepicker + .on('xchange.xdsoft', function (event) { + clearTimeout(xchangeTimer); + xchangeTimer = setTimeout(function () { + var table = '', + start = new Date(_xdsoft_datetime.currentTime.getFullYear(), _xdsoft_datetime.currentTime.getMonth(), 1, 12, 0, 0), + i = 0, + j, + today = _xdsoft_datetime.now(), + maxDate = false, + minDate = false, + d, + y, + m, + w, + classes = [], + customDateSettings, + newRow = true, + time = '', + h = '', + line_time; + + while (start.getDay() !== options.dayOfWeekStart) { + start.setDate(start.getDate() - 1); + } + + table += ''; + + if (options.weeks) { + table += ''; + } + + for (j = 0; j < 7; j += 1) { + table += ''; + } + + table += ''; + table += ''; + + if (options.maxDate !== false) { + maxDate = _xdsoft_datetime.strToDate(options.maxDate); + maxDate = new Date(maxDate.getFullYear(), maxDate.getMonth(), maxDate.getDate(), 23, 59, 59, 999); + } + + if (options.minDate !== false) { + minDate = _xdsoft_datetime.strToDate(options.minDate); + minDate = new Date(minDate.getFullYear(), minDate.getMonth(), minDate.getDate()); + } + + while (i < _xdsoft_datetime.currentTime.countDaysInMonth() || start.getDay() !== options.dayOfWeekStart || _xdsoft_datetime.currentTime.getMonth() === start.getMonth()) { + classes = []; + i += 1; + + d = start.getDate(); + y = start.getFullYear(); + m = start.getMonth(); + w = _xdsoft_datetime.getWeekOfYear(start); + + classes.push('xdsoft_date'); + + if (options.beforeShowDay && $.isFunction(options.beforeShowDay.call)) { + customDateSettings = options.beforeShowDay.call(datetimepicker, start); + } else { + customDateSettings = null; + } + + if ((maxDate !== false && start > maxDate) || (minDate !== false && start < minDate) || (customDateSettings && customDateSettings[0] === false)) { + classes.push('xdsoft_disabled'); + } else if (options.disabledDates.indexOf(start.dateFormat(options.formatDate)) !== -1) { + classes.push('xdsoft_disabled'); + } + + if (customDateSettings && customDateSettings[1] !== "") { + classes.push(customDateSettings[1]); + } + + if (_xdsoft_datetime.currentTime.getMonth() !== m) { + classes.push('xdsoft_other_month'); + } + + if ((options.defaultSelect || datetimepicker.data('changed')) && _xdsoft_datetime.currentTime.dateFormat(options.formatDate) === start.dateFormat(options.formatDate)) { + classes.push('xdsoft_current'); + } + + if (today.dateFormat(options.formatDate) === start.dateFormat(options.formatDate)) { + classes.push('xdsoft_today'); + } + + if (start.getDay() === 0 || start.getDay() === 6 || options.weekends.indexOf(start.dateFormat(options.formatDate)) === -1) { + classes.push('xdsoft_weekend'); + } + + if (options.beforeShowDay && $.isFunction(options.beforeShowDay)) { + classes.push(options.beforeShowDay(start)); + } + + if (newRow) { + table += ''; + newRow = false; + if (options.weeks) { + table += ''; + } + } + + table += ''; + + if (start.getDay() === options.dayOfWeekStartPrev) { + table += ''; + newRow = true; + } + + start.setDate(d + 1); + } + table += '
' + options.i18n[options.lang].dayOfWeek[(j + options.dayOfWeekStart) % 7] + '
' + w + '' + + '
' + d + '
' + + '
'; + + calendar.html(table); + + mounth_picker.find('.xdsoft_label span').eq(0).text(options.i18n[options.lang].months[_xdsoft_datetime.currentTime.getMonth()]); + mounth_picker.find('.xdsoft_label span').eq(1).text(_xdsoft_datetime.currentTime.getFullYear()); + + // generate timebox + time = ''; + h = ''; + m = ''; + line_time = function line_time(h, m) { + var now = _xdsoft_datetime.now(); + now.setHours(h); + h = parseInt(now.getHours(), 10); + now.setMinutes(m); + m = parseInt(now.getMinutes(), 10); + + classes = []; + if ((options.maxTime !== false && _xdsoft_datetime.strtotime(options.maxTime).getTime() < now.getTime()) || (options.minTime !== false && _xdsoft_datetime.strtotime(options.minTime).getTime() > now.getTime())) { + classes.push('xdsoft_disabled'); + } + if ((options.initTime || options.defaultSelect || datetimepicker.data('changed')) && parseInt(_xdsoft_datetime.currentTime.getHours(), 10) === parseInt(h, 10) && (options.step > 59 || Math[options.roundTime](_xdsoft_datetime.currentTime.getMinutes() / options.step) * options.step === parseInt(m, 10))) { + if (options.defaultSelect || datetimepicker.data('changed')) { + classes.push('xdsoft_current'); + } else if (options.initTime) { + classes.push('xdsoft_init_time'); + } + } + if (parseInt(today.getHours(), 10) === parseInt(h, 10) && parseInt(today.getMinutes(), 10) === parseInt(m, 10)) { + classes.push('xdsoft_today'); + } + time += '
' + now.dateFormat(options.formatTime) + '
'; + }; + + if (!options.allowTimes || !$.isArray(options.allowTimes) || !options.allowTimes.length) { + for (i = 0, j = 0; i < (options.hours12 ? 12 : 24); i += 1) { + for (j = 0; j < 60; j += options.step) { + h = (i < 10 ? '0' : '') + i; + m = (j < 10 ? '0' : '') + j; + line_time(h, m); + } + } + } else { + for (i = 0; i < options.allowTimes.length; i += 1) { + h = _xdsoft_datetime.strtotime(options.allowTimes[i]).getHours(); + m = _xdsoft_datetime.strtotime(options.allowTimes[i]).getMinutes(); + line_time(h, m); + } + } + + timebox.html(time); + + opt = ''; + i = 0; + + for (i = parseInt(options.yearStart, 10) + options.yearOffset; i <= parseInt(options.yearEnd, 10) + options.yearOffset; i += 1) { + opt += '
' + i + '
'; + } + yearselect.children().eq(0) + .html(opt); + + for (i = 0, opt = ''; i <= 11; i += 1) { + opt += '
' + options.i18n[options.lang].months[i] + '
'; + } + monthselect.children().eq(0).html(opt); + $(datetimepicker) + .trigger('generate.xdsoft'); + }, 10); + event.stopPropagation(); + }) + .on('afterOpen.xdsoft', function () { + if (options.timepicker) { + var classType, pheight, height, top; + if (timebox.find('.xdsoft_current').length) { + classType = '.xdsoft_current'; + } else if (timebox.find('.xdsoft_init_time').length) { + classType = '.xdsoft_init_time'; + } + if (classType) { + pheight = timeboxparent[0].clientHeight; + height = timebox[0].offsetHeight; + top = timebox.find(classType).index() * options.timeHeightInTimePicker + 1; + if ((height - pheight) < top) { + top = height - pheight; + } + timeboxparent.trigger('scroll_element.xdsoft_scroller', [parseInt(top, 10) / (height - pheight)]); + } else { + timeboxparent.trigger('scroll_element.xdsoft_scroller', [0]); + } + } + }); + + timerclick = 0; + calendar + .on('click.xdsoft', 'td', function (xdevent) { + xdevent.stopPropagation(); // Prevents closing of Pop-ups, Modals and Flyouts in Bootstrap + timerclick += 1; + var $this = $(this), + currentTime = _xdsoft_datetime.currentTime; + + if (currentTime === undefined || currentTime === null) { + _xdsoft_datetime.currentTime = _xdsoft_datetime.now(); + currentTime = _xdsoft_datetime.currentTime; + } + + if ($this.hasClass('xdsoft_disabled')) { + return false; + } + + currentTime.setDate(1); + currentTime.setFullYear($this.data('year')); + currentTime.setMonth($this.data('month')); + currentTime.setDate($this.data('date')); + + datetimepicker.trigger('select.xdsoft', [currentTime]); + + input.val(_xdsoft_datetime.str()); + if ((timerclick > 1 || (options.closeOnDateSelect === true || (options.closeOnDateSelect === 0 && !options.timepicker))) && !options.inline) { + datetimepicker.trigger('close.xdsoft'); + } + + if (options.onSelectDate && $.isFunction(options.onSelectDate)) { + options.onSelectDate.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input'), xdevent); + } + + datetimepicker.data('changed', true); + datetimepicker.trigger('xchange.xdsoft'); + datetimepicker.trigger('changedatetime.xdsoft'); + setTimeout(function () { + timerclick = 0; + }, 200); + }); + + timebox + .on('click.xdsoft', 'div', function (xdevent) { + xdevent.stopPropagation(); + var $this = $(this), + currentTime = _xdsoft_datetime.currentTime; + + if (currentTime === undefined || currentTime === null) { + _xdsoft_datetime.currentTime = _xdsoft_datetime.now(); + currentTime = _xdsoft_datetime.currentTime; + } + + if ($this.hasClass('xdsoft_disabled')) { + return false; + } + currentTime.setHours($this.data('hour')); + currentTime.setMinutes($this.data('minute')); + datetimepicker.trigger('select.xdsoft', [currentTime]); + + datetimepicker.data('input').val(_xdsoft_datetime.str()); + if (!options.inline) { + datetimepicker.trigger('close.xdsoft'); + } + + if (options.onSelectTime && $.isFunction(options.onSelectTime)) { + options.onSelectTime.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input'), xdevent); + } + datetimepicker.data('changed', true); + datetimepicker.trigger('xchange.xdsoft'); + datetimepicker.trigger('changedatetime.xdsoft'); + }); + + + datepicker + .on('mousewheel.xdsoft', function (event) { + if (!options.scrollMonth) { + return true; + } + if (event.deltaY < 0) { + _xdsoft_datetime.nextMonth(); + } else { + _xdsoft_datetime.prevMonth(); + } + return false; + }); + + input + .on('mousewheel.xdsoft', function (event) { + if (!options.scrollInput) { + return true; + } + if (!options.datepicker && options.timepicker) { + current_time_index = timebox.find('.xdsoft_current').length ? timebox.find('.xdsoft_current').eq(0).index() : 0; + if (current_time_index + event.deltaY >= 0 && current_time_index + event.deltaY < timebox.children().length) { + current_time_index += event.deltaY; + } + if (timebox.children().eq(current_time_index).length) { + timebox.children().eq(current_time_index).trigger('mousedown'); + } + return false; + } + if (options.datepicker && !options.timepicker) { + datepicker.trigger(event, [event.deltaY, event.deltaX, event.deltaY]); + if (input.val) { + input.val(_xdsoft_datetime.str()); + } + datetimepicker.trigger('changedatetime.xdsoft'); + return false; + } + }); + + datetimepicker + .on('changedatetime.xdsoft', function (event) { + if (options.onChangeDateTime && $.isFunction(options.onChangeDateTime)) { + var $input = datetimepicker.data('input'); + options.onChangeDateTime.call(datetimepicker, _xdsoft_datetime.currentTime, $input, event); + delete options.value; + $input.trigger('change'); + } + }) + .on('generate.xdsoft', function () { + if (options.onGenerate && $.isFunction(options.onGenerate)) { + options.onGenerate.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input')); + } + if (triggerAfterOpen) { + datetimepicker.trigger('afterOpen.xdsoft'); + triggerAfterOpen = false; + } + }) + .on('click.xdsoft', function (xdevent) { + xdevent.stopPropagation(); + }); + + current_time_index = 0; + + setPos = function () { + var offset = datetimepicker.data('input').offset(), top = offset.top + datetimepicker.data('input')[0].offsetHeight - 1, left = offset.left, position = "absolute"; + if (options.fixed) { + top -= $(window).scrollTop(); + left -= $(window).scrollLeft(); + position = "fixed"; + } else { + if (top + datetimepicker[0].offsetHeight > $(window).height() + $(window).scrollTop()) { + top = offset.top - datetimepicker[0].offsetHeight + 1; + } + if (top < 0) { + top = 0; + } + if (left + datetimepicker[0].offsetWidth > $(window).width()) { + left = $(window).width() - datetimepicker[0].offsetWidth; + } + } + datetimepicker.css({ + left: left, + top: top, + position: position + }); + }; + datetimepicker + .on('open.xdsoft', function (event) { + var onShow = true; + if (options.onShow && $.isFunction(options.onShow)) { + onShow = options.onShow.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input'), event); + } + if (onShow !== false) { + datetimepicker.show(); + setPos(); + $(window) + .off('resize.xdsoft', setPos) + .on('resize.xdsoft', setPos); + + if (options.closeOnWithoutClick) { + $([document.body, window]).on('mousedown.xdsoft', function arguments_callee6() { + datetimepicker.trigger('close.xdsoft'); + $([document.body, window]).off('mousedown.xdsoft', arguments_callee6); + }); + } + } + }) + .on('close.xdsoft', function (event) { + var onClose = true; + mounth_picker + .find('.xdsoft_month,.xdsoft_year') + .find('.xdsoft_select') + .hide(); + if (options.onClose && $.isFunction(options.onClose)) { + onClose = options.onClose.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data('input'), event); + } + if (onClose !== false && !options.opened && !options.inline) { + datetimepicker.hide(); + } + event.stopPropagation(); + }) + .on('toggle.xdsoft', function (event) { + datetimepicker.is(':visible') ? datetimepicker.trigger('close.xdsoft') : datetimepicker.trigger('open.xdsoft'); + }) + .data('input', input); + + timer = 0; + timer1 = 0; + + datetimepicker.data('xdsoft_datetime', _xdsoft_datetime); + datetimepicker.setOptions(options); + + function getCurrentValue() { + + var ct = false, time; + + if (options.startDate) { + ct = _xdsoft_datetime.strToDate(options.startDate); + } else { + ct = options.value || ((input && input.val && input.val()) ? input.val() : ''); + if (ct) { + ct = _xdsoft_datetime.strToDateTime(ct); + } else if (options.defaultDate) { + ct = _xdsoft_datetime.strToDate(options.defaultDate); + if (options.defaultTime) { + time = _xdsoft_datetime.strtotime(options.defaultTime); + ct.setHours(time.getHours()); + ct.setMinutes(time.getMinutes()); + } + } + } + + if (ct && _xdsoft_datetime.isValidDate(ct)) { + datetimepicker.data('changed', true); + } else { + ct = ''; + } + + return ct || 0; + } + + _xdsoft_datetime.setCurrentTime(getCurrentValue()); + + input + .data('xdsoft_datetimepicker', datetimepicker) + .on('open.xdsoft focusin.xdsoft mousedown.xdsoft', function (event) { + if (input.is(':disabled') || input.is(':hidden') || !input.is(':visible') || (input.data('xdsoft_datetimepicker').is(':visible') && options.closeOnInputClick)) { + return; + } + clearTimeout(timer); + timer = setTimeout(function () { + if (input.is(':disabled') || input.is(':hidden') || !input.is(':visible')) { + return; + } + + triggerAfterOpen = true; + _xdsoft_datetime.setCurrentTime(getCurrentValue()); + + datetimepicker.trigger('open.xdsoft'); + }, 100); + }) + .on('keydown.xdsoft', function (event) { + var val = this.value, elementSelector, + key = event.which; + if ([ENTER].indexOf(key) !== -1 && options.enterLikeTab) { + elementSelector = $("input:visible,textarea:visible"); + datetimepicker.trigger('close.xdsoft'); + elementSelector.eq(elementSelector.index(this) + 1).focus(); + return false; + } + if ([TAB].indexOf(key) !== -1) { + datetimepicker.trigger('close.xdsoft'); + return true; + } + }); + }; + destroyDateTimePicker = function (input) { + var datetimepicker = input.data('xdsoft_datetimepicker'); + if (datetimepicker) { + datetimepicker.data('xdsoft_datetime', null); + datetimepicker.remove(); + input + .data('xdsoft_datetimepicker', null) + .off('.xdsoft'); + $(window).off('resize.xdsoft'); + $([window, document.body]).off('mousedown.xdsoft'); + if (input.unmousewheel) { + input.unmousewheel(); + } + } + }; + $(document) + .off('keydown.xdsoftctrl keyup.xdsoftctrl') + .on('keydown.xdsoftctrl', function (e) { + if (e.keyCode === CTRLKEY) { + ctrlDown = true; + } + }) + .on('keyup.xdsoftctrl', function (e) { + if (e.keyCode === CTRLKEY) { + ctrlDown = false; + } + }); + return this.each(function () { + var datetimepicker = $(this).data('xdsoft_datetimepicker'); + if (datetimepicker) { + if ($.type(opt) === 'string') { + switch (opt) { + case 'show': + $(this).select().focus(); + datetimepicker.trigger('open.xdsoft'); + break; + case 'hide': + datetimepicker.trigger('close.xdsoft'); + break; + case 'toggle': + datetimepicker.trigger('toggle.xdsoft'); + break; + case 'destroy': + destroyDateTimePicker($(this)); + break; + case 'reset': + this.value = this.defaultValue; + if (!this.value || !datetimepicker.data('xdsoft_datetime').isValidDate(Date.parseDate(this.value, options.format))) { + datetimepicker.data('changed', false); + } + datetimepicker.data('xdsoft_datetime').setCurrentTime(this.value); + break; + } + } else { + datetimepicker + .setOptions(opt); + } + return 0; + } + if ($.type(opt) !== 'string') { + if (!options.lazyInit || options.open || options.inline) { + createDateTimePicker($(this)); + } else { + lazyInit($(this)); + } + } + }); + }; + $.fn.datetimepicker.defaults = default_options; +}(jQuery)); +(function () { + +/*! Copyright (c) 2013 Brandon Aaron (http://brandon.aaron.sh) + * Licensed under the MIT License (LICENSE.txt). + * + * Version: 3.1.12 + * + * Requires: jQuery 1.2.2+ + */ +!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a:a(jQuery)}(function(a){function b(b){var g=b||window.event,h=i.call(arguments,1),j=0,l=0,m=0,n=0,o=0,p=0;if(b=a.event.fix(g),b.type="mousewheel","detail"in g&&(m=-1*g.detail),"wheelDelta"in g&&(m=g.wheelDelta),"wheelDeltaY"in g&&(m=g.wheelDeltaY),"wheelDeltaX"in g&&(l=-1*g.wheelDeltaX),"axis"in g&&g.axis===g.HORIZONTAL_AXIS&&(l=-1*m,m=0),j=0===m?l:m,"deltaY"in g&&(m=-1*g.deltaY,j=m),"deltaX"in g&&(l=g.deltaX,0===m&&(j=-1*l)),0!==m||0!==l){if(1===g.deltaMode){var q=a.data(this,"mousewheel-line-height");j*=q,m*=q,l*=q}else if(2===g.deltaMode){var r=a.data(this,"mousewheel-page-height");j*=r,m*=r,l*=r}if(n=Math.max(Math.abs(m),Math.abs(l)),(!f||f>n)&&(f=n,d(g,n)&&(f/=40)),d(g,n)&&(j/=40,l/=40,m/=40),j=Math[j>=1?"floor":"ceil"](j/f),l=Math[l>=1?"floor":"ceil"](l/f),m=Math[m>=1?"floor":"ceil"](m/f),k.settings.normalizeOffset&&this.getBoundingClientRect){var s=this.getBoundingClientRect();o=b.clientX-s.left,p=b.clientY-s.top}return b.deltaX=l,b.deltaY=m,b.deltaFactor=f,b.offsetX=o,b.offsetY=p,b.deltaMode=0,h.unshift(b,j,l,m),e&&clearTimeout(e),e=setTimeout(c,200),(a.event.dispatch||a.event.handle).apply(this,h)}}function c(){f=null}function d(a,b){return k.settings.adjustOldDeltas&&"mousewheel"===a.type&&b%120===0}var e,f,g=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],h="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],i=Array.prototype.slice;if(a.event.fixHooks)for(var j=g.length;j;)a.event.fixHooks[g[--j]]=a.event.mouseHooks;var k=a.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var c=h.length;c;)this.addEventListener(h[--c],b,!1);else this.onmousewheel=b;a.data(this,"mousewheel-line-height",k.getLineHeight(this)),a.data(this,"mousewheel-page-height",k.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var c=h.length;c;)this.removeEventListener(h[--c],b,!1);else this.onmousewheel=null;a.removeData(this,"mousewheel-line-height"),a.removeData(this,"mousewheel-page-height")},getLineHeight:function(b){var c=a(b),d=c["offsetParent"in a.fn?"offsetParent":"parent"]();return d.length||(d=a("body")),parseInt(d.css("fontSize"),10)||parseInt(c.css("fontSize"),10)||16},getPageHeight:function(b){return a(b).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})}); + +// Parse and Format Library +//http://www.xaprb.com/blog/2005/12/12/javascript-closures-for-runtime-efficiency/ +/* + * Copyright (C) 2004 Baron Schwartz + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the + * Free Software Foundation, version 2.1. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * details. + */ +Date.parseFunctions={count:0};Date.parseRegexes=[];Date.formatFunctions={count:0};Date.prototype.dateFormat=function(b){if(b=="unixtime"){return parseInt(this.getTime()/1000);}if(Date.formatFunctions[b]==null){Date.createNewFormat(b);}var a=Date.formatFunctions[b];return this[a]();};Date.createNewFormat=function(format){var funcName="format"+Date.formatFunctions.count++;Date.formatFunctions[format]=funcName;var code="Date.prototype."+funcName+" = function() {return ";var special=false;var ch="";for(var i=0;i 0) {";var regex="";var special=false;var ch="";for(var i=0;i 0 && z > 0){\nvar doyDate = new Date(y,0);\ndoyDate.setDate(z);\nm = doyDate.getMonth();\nd = doyDate.getDate();\n}";code+="if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && s >= 0)\n{return new Date(y, m, d, h, i, s);}\nelse if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0)\n{return new Date(y, m, d, h, i);}\nelse if (y > 0 && m >= 0 && d > 0 && h >= 0)\n{return new Date(y, m, d, h);}\nelse if (y > 0 && m >= 0 && d > 0)\n{return new Date(y, m, d);}\nelse if (y > 0 && m >= 0)\n{return new Date(y, m);}\nelse if (y > 0)\n{return new Date(y);}\n}return null;}";Date.parseRegexes[regexNum]=new RegExp("^"+regex+"$");eval(code);};Date.formatCodeToRegex=function(b,a){switch(b){case"D":return{g:0,c:null,s:"(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)"};case"j":case"d":return{g:1,c:"d = parseInt(results["+a+"], 10);\n",s:"(\\d{1,2})"};case"l":return{g:0,c:null,s:"(?:"+Date.dayNames.join("|")+")"};case"S":return{g:0,c:null,s:"(?:st|nd|rd|th)"};case"w":return{g:0,c:null,s:"\\d"};case"z":return{g:1,c:"z = parseInt(results["+a+"], 10);\n",s:"(\\d{1,3})"};case"W":return{g:0,c:null,s:"(?:\\d{2})"};case"F":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+a+"].substring(0, 3)], 10);\n",s:"("+Date.monthNames.join("|")+")"};case"M":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+a+"]], 10);\n",s:"(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)"};case"n":case"m":return{g:1,c:"m = parseInt(results["+a+"], 10) - 1;\n",s:"(\\d{1,2})"};case"t":return{g:0,c:null,s:"\\d{1,2}"};case"L":return{g:0,c:null,s:"(?:1|0)"};case"Y":return{g:1,c:"y = parseInt(results["+a+"], 10);\n",s:"(\\d{4})"};case"y":return{g:1,c:"var ty = parseInt(results["+a+"], 10);\ny = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"};case"a":return{g:1,c:"if (results["+a+"] == 'am') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(am|pm)"};case"A":return{g:1,c:"if (results["+a+"] == 'AM') {\nif (h == 12) { h = 0; }\n} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"};case"g":case"G":case"h":case"H":return{g:1,c:"h = parseInt(results["+a+"], 10);\n",s:"(\\d{1,2})"};case"i":return{g:1,c:"i = parseInt(results["+a+"], 10);\n",s:"(\\d{2})"};case"s":return{g:1,c:"s = parseInt(results["+a+"], 10);\n",s:"(\\d{2})"};case"O":return{g:0,c:null,s:"[+-]\\d{4}"};case"T":return{g:0,c:null,s:"[A-Z]{3}"};case"Z":return{g:0,c:null,s:"[+-]\\d{1,5}"};default:return{g:0,c:null,s:String.escape(b)};}};Date.prototype.getTimezone=function(){return this.toString().replace(/^.*? ([A-Z]{3}) [0-9]{4}.*$/,"$1").replace(/^.*?\(([A-Z])[a-z]+ ([A-Z])[a-z]+ ([A-Z])[a-z]+\)$/,"$1$2$3");};Date.prototype.getGMTOffset=function(){return(this.getTimezoneOffset()>0?"-":"+")+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0")+String.leftPad(Math.abs(this.getTimezoneOffset())%60,2,"0");};Date.prototype.getDayOfYear=function(){var a=0;Date.daysInMonth[1]=this.isLeapYear()?29:28;for(var b=0;b $a->get_baseurl() . '/events', '$eid' => $eid, '$cid' => $cid, '$uri' => $uri, - + '$title' => t('Event details'), - '$desc' => sprintf( t('Format is %s %s. Starting date and Title are required.'),$dateformat,$timeformat), - + '$desc' => t('Starting date and Title are required.'), '$s_text' => t('Event Starts:') . ' *', - '$s_dsel' => datesel($f,'start',$syear+5,$syear,false,$syear,$smonth,$sday), - '$s_tsel' => timesel('start',$shour,$sminute), + '$s_dsel' => datetimesel($f,new DateTime(),DateTime::createFromFormat('Y',$syear+5),DateTime::createFromFormat('Y-m-d H:i',"$syear-$smonth-$sday $shour:$sminute"),'start_text',true,true,'','',true), '$n_text' => t('Finish date/time is not known or not relevant'), '$n_checked' => $n_checked, '$f_text' => t('Event Finishes:'), - '$f_dsel' => datesel($f,'finish',$fyear+5,$fyear,false,$fyear,$fmonth,$fday), - '$f_tsel' => timesel('finish',$fhour,$fminute), + '$f_dsel' => datetimesel($f,new DateTime(),DateTime::createFromFormat('Y',$fyear+5),DateTime::createFromFormat('Y-m-d H:i',"$fyear-$fmonth-$fday $fhour:$fminute"),'finish_text',true,true,'start_text'), '$a_text' => t('Adjust for viewer timezone'), '$a_checked' => $a_checked, '$d_text' => t('Description:'), diff --git a/mod/profiles.php b/mod/profiles.php index 2b4952c3b..30b419545 100644 --- a/mod/profiles.php +++ b/mod/profiles.php @@ -190,27 +190,23 @@ function profiles_post(&$a) { return; } - $year = intval($_POST['year']); - if($year < 1900 || $year > 2100 || $year < 0) - $year = 0; - $month = intval($_POST['month']); - if(($month > 12) || ($month < 0)) - $month = 0; - $mtab = array(0,31,29,31,30,31,30,31,31,30,31,30,31); - $day = intval($_POST['day']); - if(($day > $mtab[$month]) || ($day < 0)) - $day = 0; - - // It's OK to have an empty (0) year, but if you supplied a year you have to have a non-zero month and day - if($year && ! $month) - $month = 1; - if($year && ! $day) - $day = 1; - - $dob = '0000-00-00'; - $dob = sprintf('%04d-%02d-%02d',$year,$month,$day); - + $dob = $_POST['dob'] ? escape_tags(trim($_POST['dob'])) : '0000-00-00'; // FIXME: Needs to be validated? + $y = substr($dob,0,4); + if((! ctype_digit($y)) || ($y < 1900)) + $ignore_year = true; + else + $ignore_year = false; + if($dob != '0000-00-00') { + if(strpos($dob,'0000-') === 0) { + $ignore_year = true; + $dob = substr($dob,5); + } + $dob = datetime_convert('UTC','UTC',(($ignore_year) ? '1900-' . $dob : $dob),(($ignore_year) ? 'm-d' : 'Y-m-d')); + if($ignore_year) + $dob = '0000-' . $dob; + } + $name = notags(trim($_POST['name'])); if(! strlen($name)) { @@ -701,7 +697,7 @@ function profiles_content(&$a) { '$lbl_fullname' => t('Your Full Name:'), '$lbl_title' => t('Title/Description:'), '$lbl_gender' => t('Your Gender:'), - '$lbl_bd' => sprintf( t("Birthday \x28%s\x29:"),datesel_format($f)), + '$lbl_bd' => t("Birthday :"), '$lbl_address' => t('Street Address:'), '$lbl_city' => t('Locality/City:'), '$lbl_zip' => t('Postal/Zip Code:'), diff --git a/view/templates/event_form.tpl b/view/templates/event_form.tpl index 9633d19af..1ea282b11 100644 --- a/view/templates/event_form.tpl +++ b/view/templates/event_form.tpl @@ -13,10 +13,10 @@
{{$s_text}}
-{{$s_dsel}} {{$s_tsel}} +{{$s_dsel}}
{{$f_text}}
-{{$f_dsel}} {{$f_tsel}} +{{$f_dsel}}
diff --git a/view/templates/head.tpl b/view/templates/head.tpl index e32205fa5..f2f2d3487 100644 --- a/view/templates/head.tpl +++ b/view/templates/head.tpl @@ -5,6 +5,7 @@ + @@ -34,6 +35,7 @@ + From ab67788b4e40e4e368ee0668bd5f54e3edd4dba6 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Sat, 23 May 2015 01:23:31 +0200 Subject: [PATCH 04/10] SQL speed increase for query and search. --- include/api.php | 2 +- mod/search.php | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/api.php b/include/api.php index 06dbca7f1..a9e0edc80 100644 --- a/include/api.php +++ b/include/api.php @@ -1162,7 +1162,7 @@ if ($conversation_id > 0) $sql_extra .= ' AND `item`.`parent` = '.intval($conversation_id); - $r = q("SELECT `item`.*, `item`.`id` AS `item_id`, `item`.`network` AS `item_network`, + $r = q("SELECT STRAIGHT_JOIN `item`.*, `item`.`id` AS `item_id`, `item`.`network` AS `item_network`, `contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`, `contact`.`network`, `contact`.`thumb`, `contact`.`dfrn-id`, `contact`.`self`, `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid` diff --git a/mod/search.php b/mod/search.php index b9bad6405..67702ac09 100644 --- a/mod/search.php +++ b/mod/search.php @@ -7,7 +7,7 @@ function search_saved_searches() { if(! feature_enabled(local_user(),'savedsearch')) return $o; - $r = q("select `id`,`term` from `search` WHERE `uid` = %d", + $r = q("SELECT `id`,`term` FROM `search` WHERE `uid` = %d", intval(local_user()) ); @@ -45,12 +45,12 @@ function search_init(&$a) { if(local_user()) { if(x($_GET,'save') && $search) { - $r = q("select * from `search` where `uid` = %d and `term` = '%s' limit 1", + $r = q("SELECT * FROM `search` WHERE `uid` = %d AND `term` = '%s' LIMIT 1", intval(local_user()), dbesc($search) ); if(! count($r)) { - q("insert into `search` ( `uid`,`term` ) values ( %d, '%s') ", + q("INSERT INTO `search` (`uid`,`term`) VALUES ( %d, '%s')", intval(local_user()), dbesc($search) ); @@ -135,7 +135,7 @@ function search_content(&$a) { if($tag) { logger("Start tag search for '".$search."'", LOGGER_DEBUG); - $r = q("SELECT `item`.`uri`, `item`.*, `item`.`id` AS `item_id`, + $r = q("SELECT STRAIGHT_JOIN `item`.`uri`, `item`.*, `item`.`id` AS `item_id`, `contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`alias`, `contact`.`rel`, `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`, `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid` @@ -156,7 +156,7 @@ function search_content(&$a) { $sql_extra = sprintf(" AND `item`.`body` REGEXP '%s' ", dbesc(protect_sprintf(preg_quote($search)))); } - $r = q("SELECT `item`.`uri`, `item`.*, `item`.`id` AS `item_id`, + $r = q("SELECT STRAIGHT_JOIN `item`.`uri`, `item`.*, `item`.`id` AS `item_id`, `contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`alias`, `contact`.`rel`, `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`, `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid` From 9c803f7dbb298c5880fef690fe4f48bc38da64f7 Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Sat, 23 May 2015 17:45:44 +0200 Subject: [PATCH 05/10] quattro css changes added to the less file --- view/theme/quattro/dark/style.css | 7 ------- view/theme/quattro/green/style.css | 7 ------- view/theme/quattro/lilac/style.css | 7 ------- view/theme/quattro/quattro.less | 2 ++ 4 files changed, 2 insertions(+), 21 deletions(-) diff --git a/view/theme/quattro/dark/style.css b/view/theme/quattro/dark/style.css index a1555565d..8ab307a1c 100644 --- a/view/theme/quattro/dark/style.css +++ b/view/theme/quattro/dark/style.css @@ -514,7 +514,6 @@ header { margin: 0px; padding: 0px; /*width: 100%; height: 12px; */ - z-index: 110; color: #ffffff; } @@ -847,7 +846,6 @@ aside .posted-date-selector-months { overflow: auto; height: auto; /*.contact-block-div { width:60px; height: 60px; }*/ - } #contact-block .contact-block-h4 { float: left; @@ -929,7 +927,6 @@ aside .posted-date-selector-months { margin-bottom: 2em; /*.action .s10 { width: 10px; overflow: hidden; padding: 0px;} .action .s16 { width: 16px; overflow: hidden; padding: 0px;}*/ - } .widget h3 { padding: 0px; @@ -1211,7 +1208,6 @@ section { height: 32px; margin-left: 16px; /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/ - } .comment-edit-preview .contact-photo-menu-button { top: 15px !important; @@ -1286,9 +1282,6 @@ section { opacity: 0.5; }*/ .wwto { - position: absolute !important; - width: 25px; - height: 25px; background: #FFFFFF; border: 2px solid #364e59; height: 25px; diff --git a/view/theme/quattro/green/style.css b/view/theme/quattro/green/style.css index ef6b16aad..cd492d266 100644 --- a/view/theme/quattro/green/style.css +++ b/view/theme/quattro/green/style.css @@ -514,7 +514,6 @@ header { margin: 0px; padding: 0px; /*width: 100%; height: 12px; */ - z-index: 110; color: #ffffff; } @@ -847,7 +846,6 @@ aside .posted-date-selector-months { overflow: auto; height: auto; /*.contact-block-div { width:60px; height: 60px; }*/ - } #contact-block .contact-block-h4 { float: left; @@ -929,7 +927,6 @@ aside .posted-date-selector-months { margin-bottom: 2em; /*.action .s10 { width: 10px; overflow: hidden; padding: 0px;} .action .s16 { width: 16px; overflow: hidden; padding: 0px;}*/ - } .widget h3 { padding: 0px; @@ -1211,7 +1208,6 @@ section { height: 32px; margin-left: 16px; /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/ - } .comment-edit-preview .contact-photo-menu-button { top: 15px !important; @@ -1286,9 +1282,6 @@ section { opacity: 0.5; }*/ .wwto { - position: absolute !important; - width: 25px; - height: 25px; background: #FFFFFF; border: 2px solid #364e59; height: 25px; diff --git a/view/theme/quattro/lilac/style.css b/view/theme/quattro/lilac/style.css index 2d4f7cec6..73bbd6e58 100644 --- a/view/theme/quattro/lilac/style.css +++ b/view/theme/quattro/lilac/style.css @@ -514,7 +514,6 @@ header { margin: 0px; padding: 0px; /*width: 100%; height: 12px; */ - z-index: 110; color: #ffffff; } @@ -847,7 +846,6 @@ aside .posted-date-selector-months { overflow: auto; height: auto; /*.contact-block-div { width:60px; height: 60px; }*/ - } #contact-block .contact-block-h4 { float: left; @@ -929,7 +927,6 @@ aside .posted-date-selector-months { margin-bottom: 2em; /*.action .s10 { width: 10px; overflow: hidden; padding: 0px;} .action .s16 { width: 16px; overflow: hidden; padding: 0px;}*/ - } .widget h3 { padding: 0px; @@ -1211,7 +1208,6 @@ section { height: 32px; margin-left: 16px; /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/ - } .comment-edit-preview .contact-photo-menu-button { top: 15px !important; @@ -1286,9 +1282,6 @@ section { opacity: 0.5; }*/ .wwto { - position: absolute !important; - width: 25px; - height: 25px; background: #FFFFFF; border: 2px solid #364e59; height: 25px; diff --git a/view/theme/quattro/quattro.less b/view/theme/quattro/quattro.less index 172fad31b..7309fd6d3 100644 --- a/view/theme/quattro/quattro.less +++ b/view/theme/quattro/quattro.less @@ -353,6 +353,8 @@ aside { } #profiles-menu { width: 20em; } + + .posted-date-selector-months { margin-left: 10px; } } From 76283ff205b446524f522a116347538dc3c20efb Mon Sep 17 00:00:00 2001 From: rabuzarus Date: Sat, 23 May 2015 17:50:18 +0200 Subject: [PATCH 06/10] cleanup quattro less file --- view/theme/quattro/dark/style.css | 2 +- view/theme/quattro/green/style.css | 2 +- view/theme/quattro/lilac/style.css | 2 +- view/theme/quattro/quattro.less | 206 +++++++++++++---------------- 4 files changed, 98 insertions(+), 114 deletions(-) diff --git a/view/theme/quattro/dark/style.css b/view/theme/quattro/dark/style.css index 8ab307a1c..1ec672d22 100644 --- a/view/theme/quattro/dark/style.css +++ b/view/theme/quattro/dark/style.css @@ -1282,13 +1282,13 @@ section { opacity: 0.5; }*/ .wwto { + position: absolute !important; background: #FFFFFF; border: 2px solid #364e59; height: 25px; width: 25px; overflow: hidden; padding: 1px; - position: absolute !important; top: 40px; left: 30px; -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7); diff --git a/view/theme/quattro/green/style.css b/view/theme/quattro/green/style.css index cd492d266..89dc3dad8 100644 --- a/view/theme/quattro/green/style.css +++ b/view/theme/quattro/green/style.css @@ -1282,13 +1282,13 @@ section { opacity: 0.5; }*/ .wwto { + position: absolute !important; background: #FFFFFF; border: 2px solid #364e59; height: 25px; width: 25px; overflow: hidden; padding: 1px; - position: absolute !important; top: 40px; left: 30px; -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7); diff --git a/view/theme/quattro/lilac/style.css b/view/theme/quattro/lilac/style.css index 73bbd6e58..11adc44b9 100644 --- a/view/theme/quattro/lilac/style.css +++ b/view/theme/quattro/lilac/style.css @@ -1282,13 +1282,13 @@ section { opacity: 0.5; }*/ .wwto { + position: absolute !important; background: #FFFFFF; border: 2px solid #364e59; height: 25px; width: 25px; overflow: hidden; padding: 1px; - position: absolute !important; top: 40px; left: 30px; -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7); diff --git a/view/theme/quattro/quattro.less b/view/theme/quattro/quattro.less index 7309fd6d3..dded1514a 100644 --- a/view/theme/quattro/quattro.less +++ b/view/theme/quattro/quattro.less @@ -12,9 +12,9 @@ body { h4 { font-size: 1.1em } .shadow(@x: 0px, @y: 5px){ - -webkit-box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); - -moz-box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); - box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); + -webkit-box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); + -moz-box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); + box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); } .rounded(@tr: 5px, @tl: 5px, @bl: 5px, @br: 5px){ @@ -52,10 +52,10 @@ a:hover {color: @LinkHover; text-decoration: underline; } .fakelink:hover { color: @LinkHover; text-decoration: underline; } blockquote { - background:@BlockquoteBackgroundColor; - padding: 1em; - margin-left: 1em; - border-left: 1em solid @BlockquoteBorderColor; + background:@BlockquoteBackgroundColor; + padding: 1em; + margin-left: 1em; + border-left: 1em solid @BlockquoteBorderColor; } @@ -86,9 +86,7 @@ code { } - /* tool */ - .tool { height: auto; overflow: auto; .label { float: left;} @@ -97,8 +95,6 @@ code { } - - /* popup notifications */ #jGrowl.top-right { top: 30px; @@ -144,6 +140,7 @@ header { #logo-text { font-size: 22px } } } + /* nav */ nav { width: 100%; height: 32px; @@ -223,7 +220,7 @@ nav { #nav-notifications-linkmenu.on .icon.s22.notify, #nav-notifications-linkmenu.selected .icon.s22.notify { background-image: url("../../../images/icons/22/notify_on.png") } - #nav-introductions-link.on .icon.s22.intro, + #nav-introductions-link.on .icon.s22.intro, #nav-introductions-link.selected .icon.s22.intro { background-image: url("icons/contacts_on.png") } #nav-messages-link.on .icon.s22.mail, #nav-messages-link.selected .icon.s22.mail { background-image: url("icons/messages_on.png") } @@ -302,8 +299,6 @@ ul.menu-popup { } - - /* aside 230px*/ aside { display: table-cell; @@ -355,8 +350,6 @@ aside { #profiles-menu { width: 20em; } .posted-date-selector-months { margin-left: 10px; } - - } #contact-block { @@ -667,72 +660,70 @@ section { }*/ .wwto { - position: absolute !important; - width: 25px; height: 25px; - background: #FFFFFF; - border: 2px solid @Metalic3; - height: 25px; - width: 25px; - overflow: hidden; - padding: 1px; - position: absolute !important; - top: 40px; - left: 30px; - - .shadow(0px, 0px) + position: absolute !important; + background: #FFFFFF; + border: 2px solid @Metalic3; + height: 25px; + width: 25px; + overflow: hidden; + padding: 1px; + top: 40px; + left: 30px; + + .shadow(0px, 0px); } .wwto .contact-photo { width: 25px; height: 25px; } /* reshare e embed */ .wall-item-container .wall-item-content .type-link img, .type-link img { - max-width: 160px; - max-height: 160px; - float: left; - margin-right: 10px; + max-width: 160px; + max-height: 160px; + float: left; + margin-right: 10px; - &.attachment-image { - max-width: 650px; - max-height: inital; - float: none; - margin-right: 0px; - } + &.attachment-image { + max-width: 650px; + max-height: inital; + float: none; + margin-right: 0px; + } } .type-link { - blockquote { - margin: 1em 0px; - max-height: 160px; - overflow: hidden; - padding-left: 1em; - } - .oembed {} + blockquote { + margin: 1em 0px; + max-height: 160px; + overflow: hidden; + padding-left: 1em; + } + .oembed {} } .type-video blockquote { padding-left: 1em; } .shared_header { - height: 32px; - color: #999; - border-top: 1px solid @ThreadBottomBorderColor; - padding-top: 5px; - margin-top: 5px; - - img { - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - float: left; - } - - span { margin-left: 9px; } + height: 32px; + color: #999; + border-top: 1px solid @ThreadBottomBorderColor; + padding-top: 5px; + margin-top: 5px; + + img { + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + float: left; + } + + span { margin-left: 9px; } } blockquote.shared_content { - margin-left: 32px; - color: #000; - border: none; + margin-left: 32px; + color: #000; + border: none; } @@ -800,21 +791,21 @@ blockquote.shared_content { /*.threaded .hide-comments-outer { margin-left: 20px; }*/ span[id^="showmore-teaser"]{ - background: url("showmore-bg.jpg") no-repeat center bottom; + background: url("showmore-bg.jpg") no-repeat center bottom; } span[id^="showmore-wrap"] { - border-top: 1px solid #999999; - color: #999999; - display: block; - text-align: center; - background-color: @ThreadBackgroundColor; + border-top: 1px solid #999999; + color: #999999; + display: block; + text-align: center; + background-color: @ThreadBackgroundColor; } #pause { - position: fixed; - bottom: 5px; - right: 5px; + position: fixed; + bottom: 5px; + right: 5px; } @@ -900,8 +891,7 @@ span[id^="showmore-wrap"] { #jot { width: 100%; - margin: 0px 2em 20px 0px; - + margin: 0px 2em 20px 0px; .profile-jot-text { height: 1em; width: 99%; font-size: 10px; @@ -1041,7 +1031,6 @@ span[id^="showmore-wrap"] { } - #acl-wrapper { width: 690px; float:left; @@ -1183,7 +1172,6 @@ ul.tabs { overflow: auto; width: 100%; - label { float: left; width: 200px; @@ -1205,7 +1193,6 @@ ul.tabs { } - .onoff { float: left; width: 80px; @@ -1294,7 +1281,7 @@ ul.tabs { #profile-edit-pubkeywords, #profile-edit-prvkeywords, #profile-edit-homepage { - margin-top: 5px; + margin-top: 5px; } /* oauth */ @@ -1511,8 +1498,8 @@ ul.tabs { footer { height: 100px; display: table-row; } .pager { - margin-top: 25px; - clear: both; + margin-top: 25px; + clear: both; } /** @@ -1590,7 +1577,6 @@ footer { height: 100px; display: table-row; } } /* edit buttons for comments */ - .icon.dim { opacity: 0.3;filter:alpha(opacity=30); } .comment-edit-bb { list-style: none; @@ -1606,12 +1592,12 @@ footer { height: 100px; display: table-row; } } .editicon { - display: inline-block; - width: 16px; - height: 16px; - background-image: url(icons/bbedit.png); - text-decoration: none; - :hover {background-color: #ccc;} + display: inline-block; + width: 16px; + height: 16px; + background-image: url(icons/bbedit.png); + text-decoration: none; + :hover {background-color: #ccc;} } .boldbb { background-position: 0px 0px; } .boldbb:hover { background-position: 0px -16px; } @@ -1634,37 +1620,36 @@ footer { height: 100px; display: table-row; } /** range input css **/ /* slider root element */ .slider { - height:2px; - position:relative; - cursor:pointer; - border:1px solid #333; - width:200px; - margin:10px 0px 10px 0px; - float: left; + height:2px; + position:relative; + cursor:pointer; + border:1px solid #333; + width:200px; + margin:10px 0px 10px 0px; + float: left; } /* progress bar (enabled with progress: true) */ .progress { - height:9px; - background-color:#C5FF00; - display:none; - opacity:0.6; + height:9px; + background-color:#C5FF00; + display:none; + opacity:0.6; } /* drag handle */ .handle { - background-color:#ccc; - height:16px; - width:8px; - top:-8px; - position:absolute; - display:block; - margin-top:1px; - border:1px solid #000; - cursor:move; - .roundbottom(); - .shadow(); - + background-color:#ccc; + height:16px; + width:8px; + top:-8px; + position:absolute; + display:block; + margin-top:1px; + border:1px solid #000; + cursor:move; + .roundbottom(); + .shadow(); } /* the input field */ @@ -1675,4 +1660,3 @@ footer { height: 100px; display: table-row; } border: 0px; color: @FieldHelpColor; } - From 3504b3b94fff48d38be0522545d14faaabe73f80 Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Sat, 23 May 2015 18:49:56 +0200 Subject: [PATCH 07/10] make frost + frost-mobile work with datepicker --- view/theme/frost-mobile/templates/end.tpl | 1 + view/theme/frost-mobile/templates/head.tpl | 1 + view/theme/frost/templates/end.tpl | 1 + view/theme/frost/templates/event_form.tpl | 4 ++-- view/theme/frost/templates/head.tpl | 1 + 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/view/theme/frost-mobile/templates/end.tpl b/view/theme/frost-mobile/templates/end.tpl index 38cd144b4..8d4b26bdc 100644 --- a/view/theme/frost-mobile/templates/end.tpl +++ b/view/theme/frost-mobile/templates/end.tpl @@ -5,6 +5,7 @@ + diff --git a/view/theme/frost-mobile/templates/head.tpl b/view/theme/frost-mobile/templates/head.tpl index 8fbd15c30..5684ca7be 100644 --- a/view/theme/frost-mobile/templates/head.tpl +++ b/view/theme/frost-mobile/templates/head.tpl @@ -4,6 +4,7 @@ + diff --git a/view/theme/frost/templates/end.tpl b/view/theme/frost/templates/end.tpl index a7a687fad..4242f80c8 100644 --- a/view/theme/frost/templates/end.tpl +++ b/view/theme/frost/templates/end.tpl @@ -15,6 +15,7 @@ {{**}} + diff --git a/view/theme/frost/templates/event_form.tpl b/view/theme/frost/templates/event_form.tpl index f8e1d6560..44e25f360 100644 --- a/view/theme/frost/templates/event_form.tpl +++ b/view/theme/frost/templates/event_form.tpl @@ -12,10 +12,10 @@
{{$s_text}}
-{{$s_dsel}} {{$s_tsel}} +{{$s_dsel}}
{{$f_text}}
-{{$f_dsel}} {{$f_tsel}} +{{$f_dsel}}
diff --git a/view/theme/frost/templates/head.tpl b/view/theme/frost/templates/head.tpl index 93f48f092..fc56c24b7 100644 --- a/view/theme/frost/templates/head.tpl +++ b/view/theme/frost/templates/head.tpl @@ -5,6 +5,7 @@ {{**}} + From 6731ffbfc8eeeda4c60b1693e45ea0a708a4ebce Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Sat, 23 May 2015 19:23:32 +0200 Subject: [PATCH 08/10] event preview for frost theme --- view/templates/event_head.tpl | 10 +++++----- view/theme/frost/js/theme.js | 8 ++++++++ view/theme/frost/templates/event_form.tpl | 4 +++- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/view/templates/event_head.tpl b/view/templates/event_head.tpl index 31f389d9e..4b34ee182 100644 --- a/view/templates/event_head.tpl +++ b/view/templates/event_head.tpl @@ -14,11 +14,11 @@ } function doEventPreview() { - $('#event-edit-preview').val(1); - $.post('events',$('#event-edit-form').serialize(), function(data) { - $.colorbox({ html: data }); - }); - $('#event-edit-preview').val(0); + $('#event-edit-preview').val(1); + $.post('events',$('#event-edit-form').serialize(), function(data) { + $.colorbox({ html: data }); + }); + $('#event-edit-preview').val(0); } diff --git a/view/theme/frost/js/theme.js b/view/theme/frost/js/theme.js index 5d61d5ae8..1de9d3a96 100644 --- a/view/theme/frost/js/theme.js +++ b/view/theme/frost/js/theme.js @@ -353,6 +353,14 @@ function showEvent(eventid) { ); } +function doEventPreview() { + $('#event-edit-preview').val(1); + $.post('events',$('#event-edit-form').serialize(), function(data) { + $.colorbox({ html: data }); + }); + $('#event-edit-preview').val(0); +} + function initCrop() { function onEndCrop( coords, dimensions ) { $PR( 'x1' ).value = coords.x1; diff --git a/view/theme/frost/templates/event_form.tpl b/view/theme/frost/templates/event_form.tpl index f8e1d6560..f348512b4 100644 --- a/view/theme/frost/templates/event_form.tpl +++ b/view/theme/frost/templates/event_form.tpl @@ -5,11 +5,12 @@ {{$desc}}

-
+ +
{{$s_text}}
{{$s_dsel}} {{$s_tsel}} @@ -45,6 +46,7 @@ {{$acl}}
+
From 5e6c140fc13755f63a87fc9ba25fb6cf14b300eb Mon Sep 17 00:00:00 2001 From: rabuzarus <> Date: Sat, 23 May 2015 20:02:57 +0200 Subject: [PATCH 09/10] add double click on calendar day for frost theme --- view/theme/frost/js/theme.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/view/theme/frost/js/theme.js b/view/theme/frost/js/theme.js index 1de9d3a96..a14a034bc 100644 --- a/view/theme/frost/js/theme.js +++ b/view/theme/frost/js/theme.js @@ -159,6 +159,11 @@ $(document).ready(function() { eventClick: function(calEvent, jsEvent, view) { showEvent(calEvent.id); }, + loading: function(isLoading, view) { + if(!isLoading) { + $('td.fc-day').dblclick(function() { window.location.href='/events/new?start='+$(this).data('date'); }); + } + }, eventRender: function(event, element, view) { //console.log(view.name); From dd9f4439ce6a18b95fb62b660052f6e6d363e130 Mon Sep 17 00:00:00 2001 From: fabrixxm Date: Sat, 23 May 2015 20:08:57 +0200 Subject: [PATCH 10/10] update IT --- view/it/messages.po | 1830 ++++++++++++++++++++++--------------------- view/it/strings.php | 23 +- 2 files changed, 942 insertions(+), 911 deletions(-) diff --git a/view/it/messages.po b/view/it/messages.po index 93fb60cf5..d71f862d2 100644 --- a/view/it/messages.po +++ b/view/it/messages.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: friendica\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-04-04 17:54+0200\n" -"PO-Revision-Date: 2015-05-21 07:06+0000\n" +"POT-Creation-Date: 2015-05-21 10:43+0200\n" +"PO-Revision-Date: 2015-05-23 18:06+0000\n" "Last-Translator: fabrixxm \n" "Language-Team: Italian (http://www.transifex.com/projects/p/friendica/language/it/)\n" "MIME-Version: 1.0\n" @@ -30,15 +30,15 @@ msgstr "" #: ../../view/theme/diabook/config.php:148 #: ../../view/theme/diabook/theme.php:633 #: ../../view/theme/quattro/config.php:64 ../../view/theme/dispy/config.php:70 -#: ../../object/Item.php:678 ../../mod/contacts.php:492 +#: ../../object/Item.php:681 ../../mod/contacts.php:562 #: ../../mod/manage.php:110 ../../mod/fsuggest.php:107 #: ../../mod/photos.php:1084 ../../mod/photos.php:1203 #: ../../mod/photos.php:1514 ../../mod/photos.php:1565 #: ../../mod/photos.php:1609 ../../mod/photos.php:1697 -#: ../../mod/invite.php:140 ../../mod/events.php:478 ../../mod/mood.php:137 +#: ../../mod/invite.php:140 ../../mod/events.php:491 ../../mod/mood.php:137 #: ../../mod/message.php:335 ../../mod/message.php:564 #: ../../mod/profiles.php:686 ../../mod/install.php:248 -#: ../../mod/install.php:286 ../../mod/crepair.php:186 +#: ../../mod/install.php:286 ../../mod/crepair.php:190 #: ../../mod/content.php:710 ../../mod/poke.php:199 ../../mod/localtime.php:45 msgid "Submit" msgstr "Invia" @@ -74,7 +74,7 @@ msgstr "Schema colori" msgid "Set style" msgstr "Imposta stile" -#: ../../view/theme/duepuntozero/config.php:44 ../../include/text.php:1719 +#: ../../view/theme/duepuntozero/config.php:44 ../../include/text.php:1729 #: ../../include/user.php:247 msgid "default" msgstr "default" @@ -209,9 +209,9 @@ msgstr "Home" msgid "Your posts and conversations" msgstr "I tuoi messaggi e le tue conversazioni" -#: ../../view/theme/diabook/theme.php:124 ../../boot.php:2133 +#: ../../view/theme/diabook/theme.php:124 ../../boot.php:2132 #: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:87 -#: ../../include/nav.php:77 ../../mod/profperm.php:103 +#: ../../include/nav.php:77 ../../mod/profperm.php:104 #: ../../mod/newmember.php:32 msgid "Profile" msgstr "Profilo" @@ -220,8 +220,8 @@ msgstr "Profilo" msgid "Your profile page" msgstr "Pagina del tuo profilo" -#: ../../view/theme/diabook/theme.php:125 ../../include/nav.php:177 -#: ../../mod/contacts.php:718 +#: ../../view/theme/diabook/theme.php:125 ../../include/nav.php:178 +#: ../../mod/contacts.php:788 msgid "Contacts" msgstr "Contatti" @@ -229,7 +229,7 @@ msgstr "Contatti" msgid "Your contacts" msgstr "I tuoi contatti" -#: ../../view/theme/diabook/theme.php:126 ../../boot.php:2140 +#: ../../view/theme/diabook/theme.php:126 ../../boot.php:2139 #: ../../include/nav.php:78 ../../mod/fbrowser.php:25 msgid "Photos" msgstr "Foto" @@ -238,8 +238,8 @@ msgstr "Foto" msgid "Your photos" msgstr "Le tue foto" -#: ../../view/theme/diabook/theme.php:127 ../../boot.php:2157 -#: ../../include/nav.php:80 ../../mod/events.php:370 +#: ../../view/theme/diabook/theme.php:127 ../../boot.php:2156 +#: ../../include/nav.php:80 ../../mod/events.php:382 msgid "Events" msgstr "Eventi" @@ -261,12 +261,12 @@ msgid "Community" msgstr "Comunità" #: ../../view/theme/diabook/theme.php:463 ../../include/conversation.php:118 -#: ../../include/conversation.php:245 ../../include/text.php:1983 +#: ../../include/conversation.php:245 ../../include/text.php:1993 msgid "event" msgstr "l'evento" #: ../../view/theme/diabook/theme.php:466 -#: ../../view/theme/diabook/theme.php:475 ../../include/diaspora.php:2011 +#: ../../view/theme/diabook/theme.php:475 ../../include/diaspora.php:2060 #: ../../include/conversation.php:121 ../../include/conversation.php:130 #: ../../include/conversation.php:248 ../../include/conversation.php:257 #: ../../mod/like.php:149 ../../mod/like.php:319 ../../mod/subthread.php:87 @@ -274,14 +274,14 @@ msgstr "l'evento" msgid "status" msgstr "stato" -#: ../../view/theme/diabook/theme.php:471 ../../include/diaspora.php:2011 +#: ../../view/theme/diabook/theme.php:471 ../../include/diaspora.php:2060 #: ../../include/conversation.php:126 ../../include/conversation.php:253 -#: ../../include/text.php:1985 ../../mod/like.php:149 +#: ../../include/text.php:1995 ../../mod/like.php:149 #: ../../mod/subthread.php:87 ../../mod/tagger.php:62 msgid "photo" msgstr "foto" -#: ../../view/theme/diabook/theme.php:480 ../../include/diaspora.php:2027 +#: ../../view/theme/diabook/theme.php:480 ../../include/diaspora.php:2076 #: ../../include/conversation.php:137 ../../mod/like.php:166 #, php-format msgid "%1$s likes %2$s's %3$s" @@ -326,8 +326,8 @@ msgid "Invite Friends" msgstr "Invita amici" #: ../../view/theme/diabook/theme.php:544 -#: ../../view/theme/diabook/theme.php:648 ../../include/nav.php:172 -#: ../../mod/settings.php:90 ../../mod/admin.php:1104 ../../mod/admin.php:1325 +#: ../../view/theme/diabook/theme.php:648 ../../include/nav.php:173 +#: ../../mod/settings.php:90 ../../mod/admin.php:1107 ../../mod/admin.php:1328 #: ../../mod/newmember.php:22 msgid "Settings" msgstr "Impostazioni" @@ -364,40 +364,42 @@ msgstr "Dimensione caratteri nelle aree di testo" msgid "Set colour scheme" msgstr "Imposta schema colori" -#: ../../index.php:211 ../../mod/apps.php:7 +#: ../../index.php:225 ../../mod/apps.php:7 msgid "You must be logged in to use addons. " msgstr "Devi aver effettuato il login per usare gli addons." -#: ../../index.php:255 ../../mod/help.php:42 +#: ../../index.php:269 ../../mod/p.php:16 ../../mod/p.php:25 +#: ../../mod/help.php:42 msgid "Not Found" msgstr "Non trovato" -#: ../../index.php:258 ../../mod/help.php:45 +#: ../../index.php:272 ../../mod/help.php:45 msgid "Page not found." msgstr "Pagina non trovata." -#: ../../index.php:367 ../../mod/group.php:72 ../../mod/profperm.php:19 +#: ../../index.php:381 ../../mod/group.php:72 ../../mod/profperm.php:19 msgid "Permission denied" msgstr "Permesso negato" -#: ../../index.php:368 ../../include/items.php:4815 ../../mod/attach.php:33 +#: ../../index.php:382 ../../include/items.php:4838 ../../mod/attach.php:33 #: ../../mod/wallmessage.php:9 ../../mod/wallmessage.php:33 #: ../../mod/wallmessage.php:79 ../../mod/wallmessage.php:103 #: ../../mod/group.php:19 ../../mod/delegate.php:12 #: ../../mod/notifications.php:66 ../../mod/settings.php:20 -#: ../../mod/settings.php:107 ../../mod/settings.php:606 -#: ../../mod/contacts.php:258 ../../mod/wall_attach.php:55 +#: ../../mod/settings.php:107 ../../mod/settings.php:608 +#: ../../mod/contacts.php:322 ../../mod/wall_attach.php:55 #: ../../mod/register.php:42 ../../mod/manage.php:96 ../../mod/editpost.php:10 #: ../../mod/regmod.php:110 ../../mod/api.php:26 ../../mod/api.php:31 #: ../../mod/suggest.php:58 ../../mod/nogroup.php:25 ../../mod/fsuggest.php:78 #: ../../mod/viewcontacts.php:24 ../../mod/wall_upload.php:66 #: ../../mod/notes.php:20 ../../mod/network.php:4 ../../mod/photos.php:134 -#: ../../mod/photos.php:1050 ../../mod/follow.php:9 ../../mod/uimport.php:23 -#: ../../mod/invite.php:15 ../../mod/invite.php:101 ../../mod/events.php:140 -#: ../../mod/mood.php:114 ../../mod/message.php:38 ../../mod/message.php:174 +#: ../../mod/photos.php:1050 ../../mod/follow.php:9 ../../mod/follow.php:39 +#: ../../mod/follow.php:78 ../../mod/uimport.php:23 ../../mod/invite.php:15 +#: ../../mod/invite.php:101 ../../mod/events.php:152 ../../mod/mood.php:114 +#: ../../mod/message.php:38 ../../mod/message.php:174 #: ../../mod/profiles.php:165 ../../mod/profiles.php:618 #: ../../mod/install.php:151 ../../mod/crepair.php:119 ../../mod/poke.php:135 -#: ../../mod/display.php:499 ../../mod/dfrn_confirm.php:55 +#: ../../mod/display.php:501 ../../mod/dfrn_confirm.php:55 #: ../../mod/item.php:169 ../../mod/item.php:185 #: ../../mod/profile_photo.php:19 ../../mod/profile_photo.php:169 #: ../../mod/profile_photo.php:180 ../../mod/profile_photo.php:193 @@ -405,53 +407,22 @@ msgstr "Permesso negato" msgid "Permission denied." msgstr "Permesso negato." -#: ../../index.php:427 +#: ../../index.php:441 msgid "toggle mobile" msgstr "commuta tema mobile" -#: ../../addon-wrk/openidserver/lib/render/trust.php:30 -#, php-format -msgid "Do you wish to confirm your identity (%s) with %s" -msgstr "" - -#: ../../addon-wrk/openidserver/lib/render/trust.php:43 -#: ../../mod/dfrn_request.php:676 -msgid "Confirm" -msgstr "Conferma" - -#: ../../addon-wrk/openidserver/lib/render/trust.php:44 -msgid "Do not confirm" -msgstr "" - -#: ../../addon-wrk/openidserver/lib/render/trust.php:48 -msgid "Trust This Site" -msgstr "" - -#: ../../addon-wrk/openidserver/lib/render/trust.php:53 -msgid "No Identifier Sent" -msgstr "" - -#: ../../addon-wrk/openidserver/lib/render/wronguser.php:5 -msgid "Requested identity don't match logged in user." -msgstr "" - -#: ../../addon-wrk/openidserver/lib/render.php:27 -#, php-format -msgid "Please wait; you are being redirected to <%s>" -msgstr "" - #: ../../boot.php:749 msgid "Delete this item?" msgstr "Cancellare questo elemento?" -#: ../../boot.php:750 ../../object/Item.php:361 ../../object/Item.php:677 +#: ../../boot.php:750 ../../object/Item.php:364 ../../object/Item.php:680 #: ../../mod/photos.php:1564 ../../mod/photos.php:1608 #: ../../mod/photos.php:1696 ../../mod/content.php:709 msgid "Comment" msgstr "Commento" #: ../../boot.php:751 ../../include/contact_widgets.php:205 -#: ../../object/Item.php:390 ../../mod/content.php:606 +#: ../../object/Item.php:393 ../../mod/content.php:606 msgid "show more" msgstr "mostra di più" @@ -534,7 +505,7 @@ msgid "Edit profile" msgstr "Modifica il profilo" #: ../../boot.php:1557 ../../include/contact_widgets.php:10 -#: ../../mod/suggest.php:90 ../../mod/match.php:58 +#: ../../mod/suggest.php:90 ../../mod/match.php:63 msgid "Connect" msgstr "Connetti" @@ -542,7 +513,7 @@ msgstr "Connetti" msgid "Message" msgstr "Messaggio" -#: ../../boot.php:1595 ../../include/nav.php:175 +#: ../../boot.php:1595 ../../include/nav.php:176 msgid "Profiles" msgstr "Profili" @@ -570,8 +541,8 @@ msgstr "visibile a tutti" msgid "Edit visibility" msgstr "Modifica visibilità" -#: ../../boot.php:1637 ../../include/event.php:40 -#: ../../include/bb2diaspora.php:155 ../../mod/events.php:471 +#: ../../boot.php:1637 ../../include/event.php:42 +#: ../../include/bb2diaspora.php:155 ../../mod/events.php:483 #: ../../mod/directory.php:136 msgid "Location:" msgstr "Posizione:" @@ -596,71 +567,71 @@ msgstr "Homepage:" msgid "About:" msgstr "Informazioni:" -#: ../../boot.php:1711 +#: ../../boot.php:1710 msgid "Network:" msgstr "Rete:" -#: ../../boot.php:1743 ../../boot.php:1829 +#: ../../boot.php:1742 ../../boot.php:1828 msgid "g A l F d" msgstr "g A l d F" -#: ../../boot.php:1744 ../../boot.php:1830 +#: ../../boot.php:1743 ../../boot.php:1829 msgid "F d" msgstr "d F" -#: ../../boot.php:1789 ../../boot.php:1877 +#: ../../boot.php:1788 ../../boot.php:1876 msgid "[today]" msgstr "[oggi]" -#: ../../boot.php:1801 +#: ../../boot.php:1800 msgid "Birthday Reminders" msgstr "Promemoria compleanni" -#: ../../boot.php:1802 +#: ../../boot.php:1801 msgid "Birthdays this week:" msgstr "Compleanni questa settimana:" -#: ../../boot.php:1864 +#: ../../boot.php:1863 msgid "[No description]" msgstr "[Nessuna descrizione]" -#: ../../boot.php:1888 +#: ../../boot.php:1887 msgid "Event Reminders" msgstr "Promemoria" -#: ../../boot.php:1889 +#: ../../boot.php:1888 msgid "Events this week:" msgstr "Eventi di questa settimana:" -#: ../../boot.php:2126 ../../include/nav.php:76 +#: ../../boot.php:2125 ../../include/nav.php:76 msgid "Status" msgstr "Stato" -#: ../../boot.php:2129 +#: ../../boot.php:2128 msgid "Status Messages and Posts" msgstr "Messaggi di stato e post" -#: ../../boot.php:2136 +#: ../../boot.php:2135 msgid "Profile Details" msgstr "Dettagli del profilo" -#: ../../boot.php:2143 ../../mod/photos.php:52 +#: ../../boot.php:2142 ../../mod/photos.php:52 msgid "Photo Albums" msgstr "Album foto" -#: ../../boot.php:2147 ../../boot.php:2150 ../../include/nav.php:79 +#: ../../boot.php:2146 ../../boot.php:2149 ../../include/nav.php:79 msgid "Videos" msgstr "Video" -#: ../../boot.php:2160 +#: ../../boot.php:2159 msgid "Events and Calendar" msgstr "Eventi e calendario" -#: ../../boot.php:2164 ../../mod/notes.php:44 +#: ../../boot.php:2163 ../../mod/notes.php:44 msgid "Personal Notes" msgstr "Note personali" -#: ../../boot.php:2167 +#: ../../boot.php:2166 msgid "Only You Can See This" msgstr "Solo tu puoi vedere questo" @@ -838,57 +809,57 @@ msgstr "Silenzia le notifiche di nuovi post" msgid "Ability to mute notifications for a thread" msgstr "Permette di silenziare le notifiche di nuovi post in una discussione" -#: ../../include/items.php:2307 ../../include/datetime.php:477 +#: ../../include/items.php:2330 ../../include/datetime.php:477 #, php-format msgid "%s's birthday" msgstr "Compleanno di %s" -#: ../../include/items.php:2308 ../../include/datetime.php:478 +#: ../../include/items.php:2331 ../../include/datetime.php:478 #, php-format msgid "Happy Birthday %s" msgstr "Buon compleanno %s" -#: ../../include/items.php:4111 ../../mod/dfrn_request.php:717 -#: ../../mod/dfrn_confirm.php:752 +#: ../../include/items.php:4135 ../../mod/dfrn_request.php:732 +#: ../../mod/dfrn_confirm.php:753 msgid "[Name Withheld]" msgstr "[Nome Nascosto]" -#: ../../include/items.php:4619 ../../mod/admin.php:169 -#: ../../mod/admin.php:1052 ../../mod/admin.php:1265 ../../mod/viewsrc.php:15 -#: ../../mod/notice.php:15 ../../mod/display.php:82 ../../mod/display.php:284 -#: ../../mod/display.php:503 +#: ../../include/items.php:4642 ../../mod/admin.php:169 +#: ../../mod/admin.php:1055 ../../mod/admin.php:1268 ../../mod/viewsrc.php:15 +#: ../../mod/notice.php:15 ../../mod/display.php:82 ../../mod/display.php:286 +#: ../../mod/display.php:505 msgid "Item not found." msgstr "Elemento non trovato." -#: ../../include/items.php:4658 +#: ../../include/items.php:4681 msgid "Do you really want to delete this item?" msgstr "Vuoi veramente cancellare questo elemento?" -#: ../../include/items.php:4660 ../../mod/settings.php:1015 -#: ../../mod/settings.php:1021 ../../mod/settings.php:1029 -#: ../../mod/settings.php:1033 ../../mod/settings.php:1038 -#: ../../mod/settings.php:1044 ../../mod/settings.php:1050 -#: ../../mod/settings.php:1056 ../../mod/settings.php:1086 -#: ../../mod/settings.php:1087 ../../mod/settings.php:1088 -#: ../../mod/settings.php:1089 ../../mod/settings.php:1090 -#: ../../mod/contacts.php:341 ../../mod/register.php:233 -#: ../../mod/dfrn_request.php:830 ../../mod/api.php:105 -#: ../../mod/suggest.php:29 ../../mod/message.php:209 +#: ../../include/items.php:4683 ../../mod/settings.php:1035 +#: ../../mod/settings.php:1041 ../../mod/settings.php:1049 +#: ../../mod/settings.php:1053 ../../mod/settings.php:1058 +#: ../../mod/settings.php:1064 ../../mod/settings.php:1070 +#: ../../mod/settings.php:1076 ../../mod/settings.php:1106 +#: ../../mod/settings.php:1107 ../../mod/settings.php:1108 +#: ../../mod/settings.php:1109 ../../mod/settings.php:1110 +#: ../../mod/contacts.php:411 ../../mod/register.php:233 +#: ../../mod/dfrn_request.php:845 ../../mod/api.php:105 +#: ../../mod/suggest.php:29 ../../mod/follow.php:54 ../../mod/message.php:209 #: ../../mod/profiles.php:661 ../../mod/profiles.php:664 msgid "Yes" msgstr "Si" -#: ../../include/items.php:4663 ../../include/conversation.php:1128 -#: ../../mod/settings.php:620 ../../mod/settings.php:646 -#: ../../mod/contacts.php:344 ../../mod/editpost.php:148 -#: ../../mod/dfrn_request.php:844 ../../mod/fbrowser.php:81 +#: ../../include/items.php:4686 ../../include/conversation.php:1128 +#: ../../mod/settings.php:622 ../../mod/settings.php:648 +#: ../../mod/contacts.php:414 ../../mod/editpost.php:148 +#: ../../mod/dfrn_request.php:859 ../../mod/fbrowser.php:81 #: ../../mod/fbrowser.php:116 ../../mod/suggest.php:32 -#: ../../mod/photos.php:203 ../../mod/photos.php:292 ../../mod/tagrm.php:11 -#: ../../mod/tagrm.php:94 ../../mod/message.php:212 +#: ../../mod/photos.php:203 ../../mod/photos.php:292 ../../mod/follow.php:65 +#: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 ../../mod/message.php:212 msgid "Cancel" msgstr "Annulla" -#: ../../include/items.php:4881 +#: ../../include/items.php:4904 msgid "Archives" msgstr "Archivi" @@ -923,18 +894,22 @@ msgstr "Modifica gruppo" msgid "Create a new group" msgstr "Crea un nuovo gruppo" -#: ../../include/group.php:273 +#: ../../include/group.php:273 ../../mod/group.php:94 ../../mod/group.php:180 +msgid "Group Name: " +msgstr "Nome del gruppo:" + +#: ../../include/group.php:275 msgid "Contacts not in any group" msgstr "Contatti in nessun gruppo." -#: ../../include/group.php:275 ../../mod/network.php:195 +#: ../../include/group.php:277 ../../mod/network.php:195 msgid "add" msgstr "aggiungi" #: ../../include/Photo_old.php:911 ../../include/Photo_old.php:926 #: ../../include/Photo_old.php:933 ../../include/Photo_old.php:955 -#: ../../include/Photo.php:933 ../../include/Photo.php:948 -#: ../../include/Photo.php:955 ../../include/Photo.php:977 +#: ../../include/Photo.php:951 ../../include/Photo.php:966 +#: ../../include/Photo.php:973 ../../include/Photo.php:995 #: ../../include/message.php:144 ../../mod/wall_upload.php:169 #: ../../mod/wall_upload.php:178 ../../mod/wall_upload.php:185 #: ../../mod/item.php:485 @@ -981,7 +956,7 @@ msgstr "Connetti/segui" msgid "Examples: Robert Morgenstein, Fishing" msgstr "Esempi: Mario Rossi, Pesca" -#: ../../include/contact_widgets.php:34 ../../mod/contacts.php:724 +#: ../../include/contact_widgets.php:34 ../../mod/contacts.php:794 #: ../../mod/directory.php:63 msgid "Find" msgstr "Trova" @@ -1006,7 +981,7 @@ msgstr "Tutto" msgid "Categories" msgstr "Categorie" -#: ../../include/contact_widgets.php:200 ../../mod/contacts.php:439 +#: ../../include/contact_widgets.php:200 ../../mod/contacts.php:509 #, php-format msgid "%d contact in common" msgid_plural "%d contacts in common" @@ -1036,233 +1011,233 @@ msgstr "nessuna risposta" msgid "%s " msgstr "%s " -#: ../../include/enotify.php:68 +#: ../../include/enotify.php:78 #, php-format msgid "[Friendica:Notify] New mail received at %s" msgstr "[Friendica:Notifica] Nuovo messaggio privato ricevuto su %s" -#: ../../include/enotify.php:70 +#: ../../include/enotify.php:80 #, php-format msgid "%1$s sent you a new private message at %2$s." msgstr "%1$s ti ha inviato un nuovo messaggio privato su %2$s." -#: ../../include/enotify.php:71 +#: ../../include/enotify.php:81 #, php-format msgid "%1$s sent you %2$s." msgstr "%1$s ti ha inviato %2$s" -#: ../../include/enotify.php:71 +#: ../../include/enotify.php:81 msgid "a private message" msgstr "un messaggio privato" -#: ../../include/enotify.php:72 +#: ../../include/enotify.php:82 #, php-format msgid "Please visit %s to view and/or reply to your private messages." msgstr "Visita %s per vedere e/o rispodere ai tuoi messaggi privati." -#: ../../include/enotify.php:124 +#: ../../include/enotify.php:134 #, php-format msgid "%1$s commented on [url=%2$s]a %3$s[/url]" msgstr "%1$s ha commentato [url=%2$s]%3$s[/url]" -#: ../../include/enotify.php:131 +#: ../../include/enotify.php:141 #, php-format msgid "%1$s commented on [url=%2$s]%3$s's %4$s[/url]" msgstr "%1$s ha commentato [url=%2$s]%4$s di %3$s[/url]" -#: ../../include/enotify.php:139 +#: ../../include/enotify.php:149 #, php-format msgid "%1$s commented on [url=%2$s]your %3$s[/url]" msgstr "%1$s ha commentato un [url=%2$s]tuo %3$s[/url]" -#: ../../include/enotify.php:149 +#: ../../include/enotify.php:159 #, php-format msgid "[Friendica:Notify] Comment to conversation #%1$d by %2$s" msgstr "[Friendica:Notifica] Commento di %2$s alla conversazione #%1$d" -#: ../../include/enotify.php:150 +#: ../../include/enotify.php:160 #, php-format msgid "%s commented on an item/conversation you have been following." msgstr "%s ha commentato un elemento che stavi seguendo." -#: ../../include/enotify.php:153 ../../include/enotify.php:168 -#: ../../include/enotify.php:181 ../../include/enotify.php:194 -#: ../../include/enotify.php:212 ../../include/enotify.php:225 +#: ../../include/enotify.php:163 ../../include/enotify.php:178 +#: ../../include/enotify.php:191 ../../include/enotify.php:204 +#: ../../include/enotify.php:222 ../../include/enotify.php:235 #, php-format msgid "Please visit %s to view and/or reply to the conversation." msgstr "Visita %s per vedere e/o commentare la conversazione" -#: ../../include/enotify.php:160 +#: ../../include/enotify.php:170 #, php-format msgid "[Friendica:Notify] %s posted to your profile wall" msgstr "[Friendica:Notifica] %s ha scritto sulla tua bacheca" -#: ../../include/enotify.php:162 +#: ../../include/enotify.php:172 #, php-format msgid "%1$s posted to your profile wall at %2$s" msgstr "%1$s ha scritto sulla tua bacheca su %2$s" -#: ../../include/enotify.php:164 +#: ../../include/enotify.php:174 #, php-format msgid "%1$s posted to [url=%2$s]your wall[/url]" msgstr "%1$s ha inviato un messaggio sulla [url=%2$s]tua bacheca[/url]" -#: ../../include/enotify.php:175 +#: ../../include/enotify.php:185 #, php-format msgid "[Friendica:Notify] %s tagged you" msgstr "[Friendica:Notifica] %s ti ha taggato" -#: ../../include/enotify.php:176 +#: ../../include/enotify.php:186 #, php-format msgid "%1$s tagged you at %2$s" msgstr "%1$s ti ha taggato su %2$s" -#: ../../include/enotify.php:177 +#: ../../include/enotify.php:187 #, php-format msgid "%1$s [url=%2$s]tagged you[/url]." msgstr "%1$s [url=%2$s]ti ha taggato[/url]." -#: ../../include/enotify.php:188 +#: ../../include/enotify.php:198 #, php-format msgid "[Friendica:Notify] %s shared a new post" msgstr "[Friendica:Notifica] %s ha condiviso un nuovo messaggio" -#: ../../include/enotify.php:189 +#: ../../include/enotify.php:199 #, php-format msgid "%1$s shared a new post at %2$s" msgstr "%1$s ha condiviso un nuovo messaggio su %2$s" -#: ../../include/enotify.php:190 +#: ../../include/enotify.php:200 #, php-format msgid "%1$s [url=%2$s]shared a post[/url]." msgstr "%1$s [url=%2$s]ha condiviso un messaggio[/url]." -#: ../../include/enotify.php:202 +#: ../../include/enotify.php:212 #, php-format msgid "[Friendica:Notify] %1$s poked you" msgstr "[Friendica:Notifica] %1$s ti ha stuzzicato" -#: ../../include/enotify.php:203 +#: ../../include/enotify.php:213 #, php-format msgid "%1$s poked you at %2$s" msgstr "%1$s ti ha stuzzicato su %2$s" -#: ../../include/enotify.php:204 +#: ../../include/enotify.php:214 #, php-format msgid "%1$s [url=%2$s]poked you[/url]." msgstr "%1$s [url=%2$s]ti ha stuzzicato[/url]." -#: ../../include/enotify.php:219 +#: ../../include/enotify.php:229 #, php-format msgid "[Friendica:Notify] %s tagged your post" msgstr "[Friendica:Notifica] %s ha taggato un tuo messaggio" -#: ../../include/enotify.php:220 +#: ../../include/enotify.php:230 #, php-format msgid "%1$s tagged your post at %2$s" msgstr "%1$s ha taggato il tuo post su %2$s" -#: ../../include/enotify.php:221 +#: ../../include/enotify.php:231 #, php-format msgid "%1$s tagged [url=%2$s]your post[/url]" msgstr "%1$s ha taggato [url=%2$s]il tuo post[/url]" -#: ../../include/enotify.php:232 +#: ../../include/enotify.php:242 msgid "[Friendica:Notify] Introduction received" msgstr "[Friendica:Notifica] Hai ricevuto una presentazione" -#: ../../include/enotify.php:233 +#: ../../include/enotify.php:243 #, php-format msgid "You've received an introduction from '%1$s' at %2$s" msgstr "Hai ricevuto un'introduzione da '%1$s' su %2$s" -#: ../../include/enotify.php:234 +#: ../../include/enotify.php:244 #, php-format msgid "You've received [url=%1$s]an introduction[/url] from %2$s." msgstr "Hai ricevuto [url=%1$s]un'introduzione[/url] da %2$s." -#: ../../include/enotify.php:237 ../../include/enotify.php:279 +#: ../../include/enotify.php:247 ../../include/enotify.php:289 #, php-format msgid "You may visit their profile at %s" msgstr "Puoi visitare il suo profilo presso %s" -#: ../../include/enotify.php:239 +#: ../../include/enotify.php:249 #, php-format msgid "Please visit %s to approve or reject the introduction." msgstr "Visita %s per approvare o rifiutare la presentazione." -#: ../../include/enotify.php:247 +#: ../../include/enotify.php:257 msgid "[Friendica:Notify] A new person is sharing with you" msgstr "[Friendica:Notifica] Una nuova persona sta condividendo con te" -#: ../../include/enotify.php:248 ../../include/enotify.php:249 +#: ../../include/enotify.php:258 ../../include/enotify.php:259 #, php-format msgid "%1$s is sharing with you at %2$s" msgstr "%1$s sta condividendo con te su %2$s" -#: ../../include/enotify.php:255 +#: ../../include/enotify.php:265 msgid "[Friendica:Notify] You have a new follower" msgstr "[Friendica:Notifica] Una nuova persona ti segue" -#: ../../include/enotify.php:256 ../../include/enotify.php:257 +#: ../../include/enotify.php:266 ../../include/enotify.php:267 #, php-format msgid "You have a new follower at %2$s : %1$s" msgstr "Un nuovo utente ha iniziato a seguirti su %2$s : %1$s" -#: ../../include/enotify.php:270 +#: ../../include/enotify.php:280 msgid "[Friendica:Notify] Friend suggestion received" msgstr "[Friendica:Notifica] Hai ricevuto un suggerimento di amicizia" -#: ../../include/enotify.php:271 +#: ../../include/enotify.php:281 #, php-format msgid "You've received a friend suggestion from '%1$s' at %2$s" msgstr "Hai ricevuto un suggerimento di amicizia da '%1$s' su %2$s" -#: ../../include/enotify.php:272 +#: ../../include/enotify.php:282 #, php-format msgid "" "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s." msgstr "Hai ricevuto [url=%1$s]un suggerimento di amicizia[/url] per %2$s su %3$s" -#: ../../include/enotify.php:277 +#: ../../include/enotify.php:287 msgid "Name:" msgstr "Nome:" -#: ../../include/enotify.php:278 +#: ../../include/enotify.php:288 msgid "Photo:" msgstr "Foto:" -#: ../../include/enotify.php:281 +#: ../../include/enotify.php:291 #, php-format msgid "Please visit %s to approve or reject the suggestion." msgstr "Visita %s per approvare o rifiutare il suggerimento." -#: ../../include/enotify.php:289 ../../include/enotify.php:302 +#: ../../include/enotify.php:299 ../../include/enotify.php:312 msgid "[Friendica:Notify] Connection accepted" msgstr "[Friendica:Notifica] Connessione accettata" -#: ../../include/enotify.php:290 ../../include/enotify.php:303 +#: ../../include/enotify.php:300 ../../include/enotify.php:313 #, php-format msgid "'%1$s' has acepted your connection request at %2$s" msgstr "'%1$s' ha accettato la tua richiesta di connessione su %2$s" -#: ../../include/enotify.php:291 ../../include/enotify.php:304 +#: ../../include/enotify.php:301 ../../include/enotify.php:314 #, php-format msgid "%2$s has accepted your [url=%1$s]connection request[/url]." msgstr "%2$s ha accettato la tua [url=%1$s]richiesta di connessione[/url]" -#: ../../include/enotify.php:294 +#: ../../include/enotify.php:304 msgid "" "You are now mutual friends and may exchange status updates, photos, and email\n" "\twithout restriction." msgstr "Ora siete connessi reciprocamente e potete scambiarvi aggiornamenti di stato, foto e email\nsenza restrizioni" -#: ../../include/enotify.php:297 ../../include/enotify.php:311 +#: ../../include/enotify.php:307 ../../include/enotify.php:321 #, php-format msgid "Please visit %s if you wish to make any changes to this relationship." msgstr "Visita %s se desideri modificare questo collegamento." -#: ../../include/enotify.php:307 +#: ../../include/enotify.php:317 #, php-format msgid "" "'%1$s' has chosen to accept you a \"fan\", which restricts some forms of " @@ -1271,83 +1246,83 @@ msgid "" "automatically." msgstr "'%1$s' ha scelto di accettarti come \"fan\", il che limita alcune forme di comunicazione, come i messaggi privati, e alcune possibiltà di interazione col profilo. Se è una pagina di una comunità o di una celebrità, queste impostazioni sono state applicate automaticamente." -#: ../../include/enotify.php:309 +#: ../../include/enotify.php:319 #, php-format msgid "" "'%1$s' may choose to extend this into a two-way or more permissive " "relationship in the future. " msgstr "'%1$s' può decidere in futuro di estendere la connessione in una reciproca o più permissiva." -#: ../../include/enotify.php:322 +#: ../../include/enotify.php:332 msgid "[Friendica System:Notify] registration request" msgstr "[Friendica System:Notifica] richiesta di registrazione" -#: ../../include/enotify.php:323 +#: ../../include/enotify.php:333 #, php-format msgid "You've received a registration request from '%1$s' at %2$s" msgstr "Hai ricevuto una richiesta di registrazione da '%1$s' su %2$s" -#: ../../include/enotify.php:324 +#: ../../include/enotify.php:334 #, php-format msgid "You've received a [url=%1$s]registration request[/url] from %2$s." msgstr "Hai ricevuto una [url=%1$s]richiesta di registrazione[/url] da %2$s." -#: ../../include/enotify.php:327 +#: ../../include/enotify.php:337 #, php-format msgid "Full Name:\t%1$s\\nSite Location:\t%2$s\\nLogin Name:\t%3$s (%4$s)" msgstr "Nome completo: %1$s\nIndirizzo del sito: %2$s\nNome utente: %3$s (%4$s)" -#: ../../include/enotify.php:330 +#: ../../include/enotify.php:340 #, php-format msgid "Please visit %s to approve or reject the request." msgstr "Visita %s per approvare o rifiutare la richiesta." -#: ../../include/api.php:304 ../../include/api.php:315 -#: ../../include/api.php:416 ../../include/api.php:1063 -#: ../../include/api.php:1065 +#: ../../include/api.php:310 ../../include/api.php:321 +#: ../../include/api.php:422 ../../include/api.php:1116 +#: ../../include/api.php:1118 msgid "User not found." msgstr "Utente non trovato." -#: ../../include/api.php:770 +#: ../../include/api.php:776 #, php-format msgid "Daily posting limit of %d posts reached. The post was rejected." msgstr "Limite giornaliero di %d messaggi raggiunto. Il messaggio è stato rifiutato" -#: ../../include/api.php:789 +#: ../../include/api.php:795 #, php-format msgid "Weekly posting limit of %d posts reached. The post was rejected." msgstr "Limite settimanale di %d messaggi raggiunto. Il messaggio è stato rifiutato" -#: ../../include/api.php:808 +#: ../../include/api.php:814 #, php-format msgid "Monthly posting limit of %d posts reached. The post was rejected." msgstr "Limite mensile di %d messaggi raggiunto. Il messaggio è stato rifiutato" -#: ../../include/api.php:1271 +#: ../../include/api.php:1325 msgid "There is no status with this id." msgstr "Non c'è nessuno status con questo id." -#: ../../include/api.php:1341 +#: ../../include/api.php:1399 msgid "There is no conversation with this id." msgstr "Non c'è nessuna conversazione con questo id" -#: ../../include/api.php:1613 +#: ../../include/api.php:1669 msgid "Invalid request." msgstr "Richiesta non valida." -#: ../../include/api.php:1624 +#: ../../include/api.php:1680 msgid "Invalid item." msgstr "Elemento non valido." -#: ../../include/api.php:1634 +#: ../../include/api.php:1690 msgid "Invalid action. " msgstr "Azione non valida." -#: ../../include/api.php:1642 +#: ../../include/api.php:1698 msgid "DB error" msgstr "Errore database" -#: ../../include/network.php:890 +#: ../../include/network.php:959 msgid "view full size" msgstr "vedi a schermo intero" @@ -1355,7 +1330,7 @@ msgstr "vedi a schermo intero" msgid " on Last.fm" msgstr "su Last.fm" -#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1133 +#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1153 msgid "Full Name:" msgstr "Nome completo:" @@ -1492,8 +1467,8 @@ msgstr "Applicazioni" msgid "Addon applications, utilities, games" msgstr "Applicazioni, utilità e giochi aggiuntivi" -#: ../../include/nav.php:119 ../../include/text.php:968 -#: ../../include/text.php:969 ../../mod/search.php:99 +#: ../../include/nav.php:119 ../../include/text.php:970 +#: ../../include/text.php:971 ../../mod/search.php:99 msgid "Search" msgstr "Cerca" @@ -1541,87 +1516,87 @@ msgstr "Reset pagina Rete" msgid "Load Network page with no filters" msgstr "Carica la pagina Rete senza nessun filtro" -#: ../../include/nav.php:154 ../../mod/notifications.php:98 +#: ../../include/nav.php:153 ../../mod/notifications.php:98 msgid "Introductions" msgstr "Presentazioni" -#: ../../include/nav.php:154 +#: ../../include/nav.php:153 msgid "Friend Requests" msgstr "Richieste di amicizia" -#: ../../include/nav.php:155 ../../mod/notifications.php:224 +#: ../../include/nav.php:156 ../../mod/notifications.php:224 msgid "Notifications" msgstr "Notifiche" -#: ../../include/nav.php:156 +#: ../../include/nav.php:157 msgid "See all notifications" msgstr "Vedi tutte le notifiche" -#: ../../include/nav.php:157 +#: ../../include/nav.php:158 msgid "Mark all system notifications seen" msgstr "Segna tutte le notifiche come viste" -#: ../../include/nav.php:161 ../../mod/message.php:182 +#: ../../include/nav.php:162 ../../mod/message.php:182 msgid "Messages" msgstr "Messaggi" -#: ../../include/nav.php:161 +#: ../../include/nav.php:162 msgid "Private mail" msgstr "Posta privata" -#: ../../include/nav.php:162 +#: ../../include/nav.php:163 msgid "Inbox" msgstr "In arrivo" -#: ../../include/nav.php:163 +#: ../../include/nav.php:164 msgid "Outbox" msgstr "Inviati" -#: ../../include/nav.php:164 ../../mod/message.php:9 +#: ../../include/nav.php:165 ../../mod/message.php:9 msgid "New Message" msgstr "Nuovo messaggio" -#: ../../include/nav.php:167 +#: ../../include/nav.php:168 msgid "Manage" msgstr "Gestisci" -#: ../../include/nav.php:167 +#: ../../include/nav.php:168 msgid "Manage other pages" msgstr "Gestisci altre pagine" -#: ../../include/nav.php:170 ../../mod/settings.php:67 +#: ../../include/nav.php:171 ../../mod/settings.php:67 msgid "Delegations" msgstr "Delegazioni" -#: ../../include/nav.php:170 ../../mod/delegate.php:130 +#: ../../include/nav.php:171 ../../mod/delegate.php:130 msgid "Delegate Page Management" msgstr "Gestione delegati per la pagina" -#: ../../include/nav.php:172 +#: ../../include/nav.php:173 msgid "Account settings" msgstr "Parametri account" -#: ../../include/nav.php:175 +#: ../../include/nav.php:176 msgid "Manage/Edit Profiles" msgstr "Gestisci/Modifica i profili" -#: ../../include/nav.php:177 +#: ../../include/nav.php:178 msgid "Manage/edit friends and contacts" msgstr "Gestisci/modifica amici e contatti" -#: ../../include/nav.php:184 ../../mod/admin.php:130 +#: ../../include/nav.php:185 ../../mod/admin.php:130 msgid "Admin" msgstr "Amministrazione" -#: ../../include/nav.php:184 +#: ../../include/nav.php:185 msgid "Site setup and configuration" msgstr "Configurazione del sito" -#: ../../include/nav.php:188 +#: ../../include/nav.php:189 msgid "Navigation" msgstr "Navigazione" -#: ../../include/nav.php:188 +#: ../../include/nav.php:189 msgid "Site map" msgstr "Mappa del sito" @@ -1732,16 +1707,16 @@ msgstr[1] "%d contatti non importati" msgid "Done. You can now login with your username and password" msgstr "Fatto. Ora puoi entrare con il tuo nome utente e la tua password" -#: ../../include/event.php:11 ../../include/bb2diaspora.php:133 +#: ../../include/event.php:13 ../../include/bb2diaspora.php:133 #: ../../mod/localtime.php:12 msgid "l F d, Y \\@ g:i A" msgstr "l d F Y \\@ G:i" -#: ../../include/event.php:20 ../../include/bb2diaspora.php:139 +#: ../../include/event.php:22 ../../include/bb2diaspora.php:139 msgid "Starts:" msgstr "Inizia:" -#: ../../include/event.php:30 ../../include/bb2diaspora.php:147 +#: ../../include/event.php:32 ../../include/bb2diaspora.php:147 msgid "Finishes:" msgstr "Finisce:" @@ -1801,11 +1776,11 @@ msgid "" "[pre]%s[/pre]" msgstr "Il messaggio di errore è\n[pre]%s[/pre]" -#: ../../include/dbstructure.php:150 +#: ../../include/dbstructure.php:152 msgid "Errors encountered creating database tables." msgstr "La creazione delle tabelle del database ha generato errori." -#: ../../include/dbstructure.php:208 +#: ../../include/dbstructure.php:210 msgid "Errors encountered performing database changes." msgstr "Riscontrati errori applicando le modifiche al database." @@ -1914,19 +1889,19 @@ msgstr "E' ok, probabilmente innocuo" msgid "Reputable, has my trust" msgstr "Rispettabile, ha la mia fiducia" -#: ../../include/contact_selectors.php:56 ../../mod/admin.php:571 +#: ../../include/contact_selectors.php:56 ../../mod/admin.php:573 msgid "Frequently" msgstr "Frequentemente" -#: ../../include/contact_selectors.php:57 ../../mod/admin.php:572 +#: ../../include/contact_selectors.php:57 ../../mod/admin.php:574 msgid "Hourly" msgstr "Ogni ora" -#: ../../include/contact_selectors.php:58 ../../mod/admin.php:573 +#: ../../include/contact_selectors.php:58 ../../mod/admin.php:575 msgid "Twice daily" msgstr "Due volte al dì" -#: ../../include/contact_selectors.php:59 ../../mod/admin.php:574 +#: ../../include/contact_selectors.php:59 ../../mod/admin.php:576 msgid "Daily" msgstr "Giornalmente" @@ -1938,7 +1913,7 @@ msgstr "Settimanalmente" msgid "Monthly" msgstr "Mensilmente" -#: ../../include/contact_selectors.php:76 ../../mod/dfrn_request.php:836 +#: ../../include/contact_selectors.php:76 ../../mod/dfrn_request.php:851 msgid "Friendica" msgstr "Friendica" @@ -1951,13 +1926,13 @@ msgid "RSS/Atom" msgstr "RSS / Atom" #: ../../include/contact_selectors.php:79 -#: ../../include/contact_selectors.php:86 ../../mod/admin.php:1003 -#: ../../mod/admin.php:1015 ../../mod/admin.php:1016 ../../mod/admin.php:1031 +#: ../../include/contact_selectors.php:86 ../../mod/admin.php:1006 +#: ../../mod/admin.php:1018 ../../mod/admin.php:1019 ../../mod/admin.php:1034 msgid "Email" msgstr "Email" -#: ../../include/contact_selectors.php:80 ../../mod/settings.php:741 -#: ../../mod/dfrn_request.php:838 +#: ../../include/contact_selectors.php:80 ../../mod/settings.php:761 +#: ../../mod/dfrn_request.php:853 msgid "Diaspora" msgstr "Diaspora" @@ -2006,17 +1981,17 @@ msgstr "Statusnet" msgid "App.net" msgstr "App.net" -#: ../../include/diaspora.php:621 ../../include/conversation.php:172 -#: ../../mod/dfrn_confirm.php:486 +#: ../../include/diaspora.php:622 ../../include/conversation.php:172 +#: ../../mod/dfrn_confirm.php:487 #, php-format msgid "%1$s is now friends with %2$s" msgstr "%1$s e %2$s adesso sono amici" -#: ../../include/diaspora.php:704 +#: ../../include/diaspora.php:705 msgid "Sharing notification from Diaspora network" msgstr "Notifica di condivisione dal network Diaspora*" -#: ../../include/diaspora.php:2444 +#: ../../include/diaspora.php:2493 msgid "Attachments:" msgstr "Allegati:" @@ -2049,36 +2024,36 @@ msgstr "post/elemento" msgid "%1$s marked %2$s's %3$s as favorite" msgstr "%1$s ha segnato il/la %3$s di %2$s come preferito" -#: ../../include/conversation.php:612 ../../object/Item.php:129 +#: ../../include/conversation.php:612 ../../object/Item.php:130 #: ../../mod/photos.php:1653 ../../mod/content.php:437 #: ../../mod/content.php:740 msgid "Select" msgstr "Seleziona" -#: ../../include/conversation.php:613 ../../object/Item.php:130 -#: ../../mod/group.php:171 ../../mod/settings.php:682 -#: ../../mod/contacts.php:733 ../../mod/admin.php:1007 +#: ../../include/conversation.php:613 ../../object/Item.php:131 +#: ../../mod/group.php:171 ../../mod/settings.php:684 +#: ../../mod/contacts.php:803 ../../mod/admin.php:1010 #: ../../mod/photos.php:1654 ../../mod/content.php:438 #: ../../mod/content.php:741 msgid "Delete" msgstr "Rimuovi" -#: ../../include/conversation.php:653 ../../object/Item.php:326 -#: ../../object/Item.php:327 ../../mod/content.php:471 +#: ../../include/conversation.php:653 ../../object/Item.php:329 +#: ../../object/Item.php:330 ../../mod/content.php:471 #: ../../mod/content.php:852 ../../mod/content.php:853 #, php-format msgid "View %s's profile @ %s" msgstr "Vedi il profilo di %s @ %s" -#: ../../include/conversation.php:665 ../../object/Item.php:316 +#: ../../include/conversation.php:665 ../../object/Item.php:319 msgid "Categories:" msgstr "Categorie:" -#: ../../include/conversation.php:666 ../../object/Item.php:317 +#: ../../include/conversation.php:666 ../../object/Item.php:320 msgid "Filed under:" msgstr "Archiviato in:" -#: ../../include/conversation.php:673 ../../object/Item.php:340 +#: ../../include/conversation.php:673 ../../object/Item.php:343 #: ../../mod/content.php:481 ../../mod/content.php:864 #, php-format msgid "%s from %s" @@ -2089,7 +2064,7 @@ msgid "View in context" msgstr "Vedi nel contesto" #: ../../include/conversation.php:691 ../../include/conversation.php:1108 -#: ../../object/Item.php:364 ../../mod/wallmessage.php:156 +#: ../../object/Item.php:367 ../../mod/wallmessage.php:156 #: ../../mod/editpost.php:124 ../../mod/photos.php:1545 #: ../../mod/message.php:334 ../../mod/message.php:565 #: ../../mod/content.php:499 ../../mod/content.php:883 @@ -2192,7 +2167,7 @@ msgstr "Invia a email" msgid "Connectors disabled, since \"%s\" is enabled." msgstr "Connettore disabilitato, dato che \"%s\" è abilitato." -#: ../../include/conversation.php:1056 ../../mod/settings.php:1033 +#: ../../include/conversation.php:1056 ../../mod/settings.php:1053 msgid "Hide your profile details from unknown viewers?" msgstr "Nascondi i dettagli del tuo profilo ai visitatori sconosciuti?" @@ -2288,10 +2263,10 @@ msgstr "Messaggio pubblico" msgid "Example: bob@example.com, mary@example.com" msgstr "Esempio: bob@example.com, mary@example.com" -#: ../../include/conversation.php:1125 ../../object/Item.php:687 +#: ../../include/conversation.php:1125 ../../object/Item.php:690 #: ../../mod/editpost.php:145 ../../mod/photos.php:1566 #: ../../mod/photos.php:1610 ../../mod/photos.php:1698 -#: ../../mod/content.php:719 +#: ../../mod/events.php:489 ../../mod/content.php:719 msgid "Preview" msgstr "Anteprima" @@ -2307,299 +2282,299 @@ msgstr "Invia ai Contatti" msgid "Private post" msgstr "Post privato" -#: ../../include/text.php:297 +#: ../../include/text.php:299 msgid "newer" msgstr "nuovi" -#: ../../include/text.php:299 +#: ../../include/text.php:301 msgid "older" msgstr "vecchi" -#: ../../include/text.php:304 +#: ../../include/text.php:306 msgid "prev" msgstr "prec" -#: ../../include/text.php:306 +#: ../../include/text.php:308 msgid "first" msgstr "primo" -#: ../../include/text.php:338 +#: ../../include/text.php:340 msgid "last" msgstr "ultimo" -#: ../../include/text.php:341 +#: ../../include/text.php:343 msgid "next" msgstr "succ" -#: ../../include/text.php:396 +#: ../../include/text.php:398 msgid "Loading more entries..." msgstr "Carico più elementi..." -#: ../../include/text.php:397 +#: ../../include/text.php:399 msgid "The end" msgstr "Fine" -#: ../../include/text.php:870 +#: ../../include/text.php:872 msgid "No contacts" msgstr "Nessun contatto" -#: ../../include/text.php:879 +#: ../../include/text.php:881 #, php-format msgid "%d Contact" msgid_plural "%d Contacts" msgstr[0] "%d contatto" msgstr[1] "%d contatti" -#: ../../include/text.php:891 ../../mod/viewcontacts.php:78 +#: ../../include/text.php:893 ../../mod/viewcontacts.php:78 msgid "View Contacts" msgstr "Visualizza i contatti" -#: ../../include/text.php:971 ../../mod/editpost.php:109 +#: ../../include/text.php:973 ../../mod/editpost.php:109 #: ../../mod/notes.php:63 ../../mod/filer.php:31 msgid "Save" msgstr "Salva" -#: ../../include/text.php:1020 +#: ../../include/text.php:1022 msgid "poke" msgstr "stuzzica" -#: ../../include/text.php:1020 +#: ../../include/text.php:1022 msgid "poked" msgstr "ha stuzzicato" -#: ../../include/text.php:1021 +#: ../../include/text.php:1023 msgid "ping" msgstr "invia un ping" -#: ../../include/text.php:1021 +#: ../../include/text.php:1023 msgid "pinged" msgstr "ha inviato un ping" -#: ../../include/text.php:1022 +#: ../../include/text.php:1024 msgid "prod" msgstr "pungola" -#: ../../include/text.php:1022 +#: ../../include/text.php:1024 msgid "prodded" msgstr "ha pungolato" -#: ../../include/text.php:1023 +#: ../../include/text.php:1025 msgid "slap" msgstr "schiaffeggia" -#: ../../include/text.php:1023 +#: ../../include/text.php:1025 msgid "slapped" msgstr "ha schiaffeggiato" -#: ../../include/text.php:1024 +#: ../../include/text.php:1026 msgid "finger" msgstr "tocca" -#: ../../include/text.php:1024 +#: ../../include/text.php:1026 msgid "fingered" msgstr "ha toccato" -#: ../../include/text.php:1025 +#: ../../include/text.php:1027 msgid "rebuff" msgstr "respingi" -#: ../../include/text.php:1025 +#: ../../include/text.php:1027 msgid "rebuffed" msgstr "ha respinto" -#: ../../include/text.php:1039 +#: ../../include/text.php:1041 msgid "happy" msgstr "felice" -#: ../../include/text.php:1040 +#: ../../include/text.php:1042 msgid "sad" msgstr "triste" -#: ../../include/text.php:1041 +#: ../../include/text.php:1043 msgid "mellow" msgstr "rilassato" -#: ../../include/text.php:1042 +#: ../../include/text.php:1044 msgid "tired" msgstr "stanco" -#: ../../include/text.php:1043 +#: ../../include/text.php:1045 msgid "perky" msgstr "vivace" -#: ../../include/text.php:1044 +#: ../../include/text.php:1046 msgid "angry" msgstr "arrabbiato" -#: ../../include/text.php:1045 +#: ../../include/text.php:1047 msgid "stupified" msgstr "stupefatto" -#: ../../include/text.php:1046 +#: ../../include/text.php:1048 msgid "puzzled" msgstr "confuso" -#: ../../include/text.php:1047 +#: ../../include/text.php:1049 msgid "interested" msgstr "interessato" -#: ../../include/text.php:1048 +#: ../../include/text.php:1050 msgid "bitter" msgstr "risentito" -#: ../../include/text.php:1049 +#: ../../include/text.php:1051 msgid "cheerful" msgstr "giocoso" -#: ../../include/text.php:1050 +#: ../../include/text.php:1052 msgid "alive" msgstr "vivo" -#: ../../include/text.php:1051 +#: ../../include/text.php:1053 msgid "annoyed" msgstr "annoiato" -#: ../../include/text.php:1052 +#: ../../include/text.php:1054 msgid "anxious" msgstr "ansioso" -#: ../../include/text.php:1053 +#: ../../include/text.php:1055 msgid "cranky" msgstr "irritabile" -#: ../../include/text.php:1054 +#: ../../include/text.php:1056 msgid "disturbed" msgstr "disturbato" -#: ../../include/text.php:1055 +#: ../../include/text.php:1057 msgid "frustrated" msgstr "frustato" -#: ../../include/text.php:1056 +#: ../../include/text.php:1058 msgid "motivated" msgstr "motivato" -#: ../../include/text.php:1057 +#: ../../include/text.php:1059 msgid "relaxed" msgstr "rilassato" -#: ../../include/text.php:1058 +#: ../../include/text.php:1060 msgid "surprised" msgstr "sorpreso" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Monday" msgstr "Lunedì" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Tuesday" msgstr "Martedì" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Wednesday" msgstr "Mercoledì" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Thursday" msgstr "Giovedì" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Friday" msgstr "Venerdì" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Saturday" msgstr "Sabato" -#: ../../include/text.php:1228 +#: ../../include/text.php:1230 msgid "Sunday" msgstr "Domenica" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "January" msgstr "Gennaio" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "February" msgstr "Febbraio" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "March" msgstr "Marzo" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "April" msgstr "Aprile" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "May" msgstr "Maggio" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "June" msgstr "Giugno" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "July" msgstr "Luglio" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "August" msgstr "Agosto" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "September" msgstr "Settembre" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "October" msgstr "Ottobre" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "November" msgstr "Novembre" -#: ../../include/text.php:1232 +#: ../../include/text.php:1234 msgid "December" msgstr "Dicembre" -#: ../../include/text.php:1422 ../../mod/videos.php:301 +#: ../../include/text.php:1424 ../../mod/videos.php:301 msgid "View Video" msgstr "Guarda Video" -#: ../../include/text.php:1454 +#: ../../include/text.php:1456 msgid "bytes" msgstr "bytes" -#: ../../include/text.php:1478 ../../include/text.php:1490 +#: ../../include/text.php:1488 ../../include/text.php:1500 msgid "Click to open/close" msgstr "Clicca per aprire/chiudere" -#: ../../include/text.php:1664 ../../include/text.php:1674 -#: ../../mod/events.php:335 +#: ../../include/text.php:1674 ../../include/text.php:1684 +#: ../../mod/events.php:347 msgid "link to source" msgstr "Collegamento all'originale" -#: ../../include/text.php:1731 +#: ../../include/text.php:1741 msgid "Select an alternate language" msgstr "Seleziona una diversa lingua" -#: ../../include/text.php:1987 +#: ../../include/text.php:1997 msgid "activity" msgstr "attività" -#: ../../include/text.php:1989 ../../object/Item.php:389 -#: ../../object/Item.php:402 ../../mod/content.php:605 +#: ../../include/text.php:1999 ../../object/Item.php:392 +#: ../../object/Item.php:405 ../../mod/content.php:605 msgid "comment" msgid_plural "comments" msgstr[0] "" msgstr[1] "commento" -#: ../../include/text.php:1990 +#: ../../include/text.php:2000 msgid "post" msgstr "messaggio" -#: ../../include/text.php:2158 +#: ../../include/text.php:2168 msgid "Item filed" msgstr "Messaggio salvato" @@ -2622,28 +2597,28 @@ msgstr "Abbiamo incontrato un problema mentre contattavamo il server OpenID che msgid "The error message was:" msgstr "Il messaggio riportato era:" -#: ../../include/bbcode.php:433 ../../include/bbcode.php:1066 -#: ../../include/bbcode.php:1067 +#: ../../include/bbcode.php:448 ../../include/bbcode.php:1094 +#: ../../include/bbcode.php:1095 msgid "Image/photo" msgstr "Immagine/foto" -#: ../../include/bbcode.php:531 +#: ../../include/bbcode.php:546 #, php-format msgid "%2$s %3$s" msgstr "%2$s %3$s" -#: ../../include/bbcode.php:565 +#: ../../include/bbcode.php:580 #, php-format msgid "" "%s wrote the following post" msgstr "%s ha scritto il seguente messaggio" -#: ../../include/bbcode.php:1030 ../../include/bbcode.php:1050 +#: ../../include/bbcode.php:1058 ../../include/bbcode.php:1078 msgid "$1 wrote:" msgstr "$1 ha scritto:" -#: ../../include/bbcode.php:1075 ../../include/bbcode.php:1076 +#: ../../include/bbcode.php:1103 ../../include/bbcode.php:1104 msgid "Encrypted content" msgstr "Contenuto criptato" @@ -2659,17 +2634,17 @@ msgstr "Carica una foto per il profilo." msgid "Welcome back " msgstr "Ciao " -#: ../../include/security.php:366 +#: ../../include/security.php:375 msgid "" "The form security token was not correct. This probably happened because the " "form has been opened for too long (>3 hours) before submitting it." msgstr "Il token di sicurezza della form non era corretto. Probabilmente la form è rimasta aperta troppo a lunto (più di tre ore) prima di inviarla." -#: ../../include/oembed.php:213 +#: ../../include/oembed.php:218 msgid "Embedded content" msgstr "Contenuto incorporato" -#: ../../include/oembed.php:222 +#: ../../include/oembed.php:227 msgid "Embedding disabled" msgstr "Embed disabilitato" @@ -3013,7 +2988,7 @@ msgid "" "\t\tThank you and welcome to %2$s." msgstr "\nI dettagli del tuo utente sono:\n Indirizzo del sito: %3$s\n Nome utente: %1$s\n Password: %5$s\n\nPuoi cambiare la tua password dalla pagina delle impostazioni del tuo account dopo esserti autenticato.\n\nPer favore, prenditi qualche momento per esaminare tutte le impostazioni presenti.\n\nPotresti voler aggiungere qualche informazione di base al tuo profilo predefinito (nella pagina \"Profili\"), così che le altre persone possano trovarti più facilmente.\n\nTi raccomandiamo di inserire il tuo nome completo, aggiungere una foto, aggiungere qualche parola chiave del profilo (molto utili per trovare nuovi contatti), e magari in quale nazione vivi, se non vuoi essere più specifico di così.\n\nNoi rispettiamo appieno la tua privacy, e nessuna di queste informazioni è necessaria o obbligatoria.\nSe sei nuovo e non conosci nessuno qui, possono aiutarti a trovare qualche nuovo e interessante contatto.\n\nGrazie e benvenuto su %2$s" -#: ../../include/user.php:413 ../../mod/admin.php:838 +#: ../../include/user.php:413 ../../mod/admin.php:841 #, php-format msgid "Registration details for %s" msgstr "Dettagli della registrazione di %s" @@ -3022,144 +2997,144 @@ msgstr "Dettagli della registrazione di %s" msgid "Visible to everybody" msgstr "Visibile a tutti" -#: ../../object/Item.php:94 +#: ../../object/Item.php:95 msgid "This entry was edited" msgstr "Questa voce è stata modificata" -#: ../../object/Item.php:116 ../../mod/photos.php:1359 +#: ../../object/Item.php:117 ../../mod/photos.php:1359 #: ../../mod/content.php:620 msgid "Private Message" msgstr "Messaggio privato" -#: ../../object/Item.php:120 ../../mod/settings.php:681 +#: ../../object/Item.php:121 ../../mod/settings.php:683 #: ../../mod/content.php:728 msgid "Edit" msgstr "Modifica" -#: ../../object/Item.php:133 ../../mod/content.php:763 +#: ../../object/Item.php:134 ../../mod/content.php:763 msgid "save to folder" msgstr "salva nella cartella" -#: ../../object/Item.php:195 ../../mod/content.php:753 +#: ../../object/Item.php:196 ../../mod/content.php:753 msgid "add star" msgstr "aggiungi a speciali" -#: ../../object/Item.php:196 ../../mod/content.php:754 +#: ../../object/Item.php:197 ../../mod/content.php:754 msgid "remove star" msgstr "rimuovi da speciali" -#: ../../object/Item.php:197 ../../mod/content.php:755 +#: ../../object/Item.php:198 ../../mod/content.php:755 msgid "toggle star status" msgstr "Inverti stato preferito" -#: ../../object/Item.php:200 ../../mod/content.php:758 +#: ../../object/Item.php:201 ../../mod/content.php:758 msgid "starred" msgstr "preferito" -#: ../../object/Item.php:208 +#: ../../object/Item.php:209 msgid "ignore thread" msgstr "ignora la discussione" -#: ../../object/Item.php:209 +#: ../../object/Item.php:210 msgid "unignore thread" msgstr "non ignorare la discussione" -#: ../../object/Item.php:210 +#: ../../object/Item.php:211 msgid "toggle ignore status" msgstr "inverti stato \"Ignora\"" -#: ../../object/Item.php:213 +#: ../../object/Item.php:214 msgid "ignored" msgstr "ignorato" -#: ../../object/Item.php:220 ../../mod/content.php:759 +#: ../../object/Item.php:221 ../../mod/content.php:759 msgid "add tag" msgstr "aggiungi tag" -#: ../../object/Item.php:231 ../../mod/photos.php:1542 +#: ../../object/Item.php:232 ../../mod/photos.php:1542 #: ../../mod/content.php:684 msgid "I like this (toggle)" msgstr "Mi piace (clic per cambiare)" -#: ../../object/Item.php:231 ../../mod/content.php:684 +#: ../../object/Item.php:232 ../../mod/content.php:684 msgid "like" msgstr "mi piace" -#: ../../object/Item.php:232 ../../mod/photos.php:1543 +#: ../../object/Item.php:233 ../../mod/photos.php:1543 #: ../../mod/content.php:685 msgid "I don't like this (toggle)" msgstr "Non mi piace (clic per cambiare)" -#: ../../object/Item.php:232 ../../mod/content.php:685 +#: ../../object/Item.php:233 ../../mod/content.php:685 msgid "dislike" msgstr "non mi piace" -#: ../../object/Item.php:234 ../../mod/content.php:687 +#: ../../object/Item.php:235 ../../mod/content.php:687 msgid "Share this" msgstr "Condividi questo" -#: ../../object/Item.php:234 ../../mod/content.php:687 +#: ../../object/Item.php:235 ../../mod/content.php:687 msgid "share" msgstr "condividi" -#: ../../object/Item.php:328 ../../mod/content.php:854 +#: ../../object/Item.php:331 ../../mod/content.php:854 msgid "to" msgstr "a" -#: ../../object/Item.php:329 +#: ../../object/Item.php:332 msgid "via" msgstr "via" -#: ../../object/Item.php:330 ../../mod/content.php:855 +#: ../../object/Item.php:333 ../../mod/content.php:855 msgid "Wall-to-Wall" msgstr "Da bacheca a bacheca" -#: ../../object/Item.php:331 ../../mod/content.php:856 +#: ../../object/Item.php:334 ../../mod/content.php:856 msgid "via Wall-To-Wall:" msgstr "da bacheca a bacheca" -#: ../../object/Item.php:387 ../../mod/content.php:603 +#: ../../object/Item.php:390 ../../mod/content.php:603 #, php-format msgid "%d comment" msgid_plural "%d comments" msgstr[0] "%d commento" msgstr[1] "%d commenti" -#: ../../object/Item.php:675 ../../mod/photos.php:1562 +#: ../../object/Item.php:678 ../../mod/photos.php:1562 #: ../../mod/photos.php:1606 ../../mod/photos.php:1694 #: ../../mod/content.php:707 msgid "This is you" msgstr "Questo sei tu" -#: ../../object/Item.php:679 ../../mod/content.php:711 +#: ../../object/Item.php:682 ../../mod/content.php:711 msgid "Bold" msgstr "Grassetto" -#: ../../object/Item.php:680 ../../mod/content.php:712 +#: ../../object/Item.php:683 ../../mod/content.php:712 msgid "Italic" msgstr "Corsivo" -#: ../../object/Item.php:681 ../../mod/content.php:713 +#: ../../object/Item.php:684 ../../mod/content.php:713 msgid "Underline" msgstr "Sottolineato" -#: ../../object/Item.php:682 ../../mod/content.php:714 +#: ../../object/Item.php:685 ../../mod/content.php:714 msgid "Quote" msgstr "Citazione" -#: ../../object/Item.php:683 ../../mod/content.php:715 +#: ../../object/Item.php:686 ../../mod/content.php:715 msgid "Code" msgstr "Codice" -#: ../../object/Item.php:684 ../../mod/content.php:716 +#: ../../object/Item.php:687 ../../mod/content.php:716 msgid "Image" msgstr "Immagine" -#: ../../object/Item.php:685 ../../mod/content.php:717 +#: ../../object/Item.php:688 ../../mod/content.php:717 msgid "Link" msgstr "Link" -#: ../../object/Item.php:686 ../../mod/content.php:718 +#: ../../object/Item.php:689 ../../mod/content.php:718 msgid "Video" msgstr "Video" @@ -3250,10 +3225,6 @@ msgstr "Salva gruppo" msgid "Create a group of contacts/friends." msgstr "Crea un gruppo di amici/contatti." -#: ../../mod/group.php:94 ../../mod/group.php:180 -msgid "Group Name: " -msgstr "Nome del gruppo:" - #: ../../mod/group.php:113 msgid "Group removed." msgstr "Gruppo rimosso." @@ -3270,11 +3241,11 @@ msgstr "Modifica gruppo" msgid "Members" msgstr "Membri" -#: ../../mod/group.php:194 ../../mod/contacts.php:586 +#: ../../mod/group.php:194 ../../mod/contacts.php:656 msgid "All Contacts" msgstr "Tutti i contatti" -#: ../../mod/group.php:224 ../../mod/profperm.php:105 +#: ../../mod/group.php:224 ../../mod/profperm.php:106 msgid "Click on a contact to add or remove." msgstr "Clicca su un contatto per aggiungerlo o rimuoverlo." @@ -3311,7 +3282,7 @@ msgstr "Aggiungi" #: ../../mod/delegate.php:141 msgid "No entries." -msgstr "Nessun articolo." +msgstr "Nessuna voce." #: ../../mod/notifications.php:26 msgid "Invalid request identifier." @@ -3323,8 +3294,8 @@ msgid "Discard" msgstr "Scarta" #: ../../mod/notifications.php:51 ../../mod/notifications.php:164 -#: ../../mod/notifications.php:214 ../../mod/contacts.php:455 -#: ../../mod/contacts.php:519 ../../mod/contacts.php:731 +#: ../../mod/notifications.php:214 ../../mod/contacts.php:525 +#: ../../mod/contacts.php:589 ../../mod/contacts.php:801 msgid "Ignore" msgstr "Ignora" @@ -3358,7 +3329,7 @@ msgid "suggested by %s" msgstr "sugerito da %s" #: ../../mod/notifications.php:157 ../../mod/notifications.php:208 -#: ../../mod/contacts.php:525 +#: ../../mod/contacts.php:595 msgid "Hide this contact from others" msgstr "Nascondi questo contatto agli altri" @@ -3371,7 +3342,7 @@ msgid "if applicable" msgstr "se applicabile" #: ../../mod/notifications.php:161 ../../mod/notifications.php:212 -#: ../../mod/admin.php:1005 +#: ../../mod/admin.php:1008 msgid "Approve" msgstr "Approva" @@ -3494,7 +3465,7 @@ msgstr "Nessun profilo" msgid "everybody" msgstr "tutti" -#: ../../mod/settings.php:41 ../../mod/admin.php:1016 +#: ../../mod/settings.php:41 ../../mod/admin.php:1019 msgid "Account" msgstr "Account" @@ -3506,12 +3477,12 @@ msgstr "Funzionalità aggiuntive" msgid "Display" msgstr "Visualizzazione" -#: ../../mod/settings.php:57 ../../mod/settings.php:785 +#: ../../mod/settings.php:57 ../../mod/settings.php:805 msgid "Social Networks" msgstr "Social Networks" -#: ../../mod/settings.php:62 ../../mod/admin.php:106 ../../mod/admin.php:1102 -#: ../../mod/admin.php:1155 +#: ../../mod/settings.php:62 ../../mod/admin.php:106 ../../mod/admin.php:1105 +#: ../../mod/admin.php:1158 msgid "Plugins" msgstr "Plugin" @@ -3531,620 +3502,651 @@ msgstr "Rimuovi account" msgid "Missing some important data!" msgstr "Mancano alcuni dati importanti!" -#: ../../mod/settings.php:137 ../../mod/settings.php:645 -#: ../../mod/contacts.php:729 +#: ../../mod/settings.php:137 ../../mod/settings.php:647 +#: ../../mod/contacts.php:799 msgid "Update" msgstr "Aggiorna" -#: ../../mod/settings.php:243 +#: ../../mod/settings.php:245 msgid "Failed to connect with email account using the settings provided." msgstr "Impossibile collegarsi all'account email con i parametri forniti." -#: ../../mod/settings.php:248 +#: ../../mod/settings.php:250 msgid "Email settings updated." msgstr "Impostazioni e-mail aggiornate." -#: ../../mod/settings.php:263 +#: ../../mod/settings.php:265 msgid "Features updated" msgstr "Funzionalità aggiornate" -#: ../../mod/settings.php:326 +#: ../../mod/settings.php:328 msgid "Relocate message has been send to your contacts" msgstr "Il messaggio di trasloco è stato inviato ai tuoi contatti" -#: ../../mod/settings.php:340 +#: ../../mod/settings.php:342 msgid "Passwords do not match. Password unchanged." msgstr "Le password non corrispondono. Password non cambiata." -#: ../../mod/settings.php:345 +#: ../../mod/settings.php:347 msgid "Empty passwords are not allowed. Password unchanged." msgstr "Le password non possono essere vuote. Password non cambiata." -#: ../../mod/settings.php:353 +#: ../../mod/settings.php:355 msgid "Wrong password." msgstr "Password sbagliata." -#: ../../mod/settings.php:364 +#: ../../mod/settings.php:366 msgid "Password changed." msgstr "Password cambiata." -#: ../../mod/settings.php:366 +#: ../../mod/settings.php:368 msgid "Password update failed. Please try again." msgstr "Aggiornamento password fallito. Prova ancora." -#: ../../mod/settings.php:433 +#: ../../mod/settings.php:435 msgid " Please use a shorter name." msgstr " Usa un nome più corto." -#: ../../mod/settings.php:435 +#: ../../mod/settings.php:437 msgid " Name too short." msgstr " Nome troppo corto." -#: ../../mod/settings.php:444 +#: ../../mod/settings.php:446 msgid "Wrong Password" msgstr "Password Sbagliata" -#: ../../mod/settings.php:449 +#: ../../mod/settings.php:451 msgid " Not valid email." msgstr " Email non valida." -#: ../../mod/settings.php:455 +#: ../../mod/settings.php:457 msgid " Cannot change to that email." msgstr "Non puoi usare quella email." -#: ../../mod/settings.php:511 +#: ../../mod/settings.php:513 msgid "Private forum has no privacy permissions. Using default privacy group." msgstr "Il forum privato non ha permessi di privacy. Uso il gruppo di privacy predefinito." -#: ../../mod/settings.php:515 +#: ../../mod/settings.php:517 msgid "Private forum has no privacy permissions and no default privacy group." msgstr "Il gruppo privato non ha permessi di privacy e nessun gruppo di privacy predefinito." -#: ../../mod/settings.php:545 +#: ../../mod/settings.php:547 msgid "Settings updated." msgstr "Impostazioni aggiornate." -#: ../../mod/settings.php:618 ../../mod/settings.php:644 -#: ../../mod/settings.php:680 +#: ../../mod/settings.php:620 ../../mod/settings.php:646 +#: ../../mod/settings.php:682 msgid "Add application" msgstr "Aggiungi applicazione" -#: ../../mod/settings.php:619 ../../mod/settings.php:729 -#: ../../mod/settings.php:803 ../../mod/settings.php:885 -#: ../../mod/settings.php:1118 ../../mod/admin.php:620 -#: ../../mod/admin.php:1156 ../../mod/admin.php:1358 ../../mod/admin.php:1445 +#: ../../mod/settings.php:621 ../../mod/settings.php:731 +#: ../../mod/settings.php:754 ../../mod/settings.php:823 +#: ../../mod/settings.php:905 ../../mod/settings.php:1138 +#: ../../mod/admin.php:622 ../../mod/admin.php:1159 ../../mod/admin.php:1361 +#: ../../mod/admin.php:1448 msgid "Save Settings" msgstr "Salva Impostazioni" -#: ../../mod/settings.php:621 ../../mod/settings.php:647 -#: ../../mod/admin.php:1003 ../../mod/admin.php:1015 ../../mod/admin.php:1016 -#: ../../mod/admin.php:1029 ../../mod/crepair.php:165 +#: ../../mod/settings.php:623 ../../mod/settings.php:649 +#: ../../mod/admin.php:1006 ../../mod/admin.php:1018 ../../mod/admin.php:1019 +#: ../../mod/admin.php:1032 ../../mod/crepair.php:169 msgid "Name" msgstr "Nome" -#: ../../mod/settings.php:622 ../../mod/settings.php:648 +#: ../../mod/settings.php:624 ../../mod/settings.php:650 msgid "Consumer Key" msgstr "Consumer Key" -#: ../../mod/settings.php:623 ../../mod/settings.php:649 +#: ../../mod/settings.php:625 ../../mod/settings.php:651 msgid "Consumer Secret" msgstr "Consumer Secret" -#: ../../mod/settings.php:624 ../../mod/settings.php:650 +#: ../../mod/settings.php:626 ../../mod/settings.php:652 msgid "Redirect" msgstr "Redirect" -#: ../../mod/settings.php:625 ../../mod/settings.php:651 +#: ../../mod/settings.php:627 ../../mod/settings.php:653 msgid "Icon url" msgstr "Url icona" -#: ../../mod/settings.php:636 +#: ../../mod/settings.php:638 msgid "You can't edit this application." msgstr "Non puoi modificare questa applicazione." -#: ../../mod/settings.php:679 +#: ../../mod/settings.php:681 msgid "Connected Apps" msgstr "Applicazioni Collegate" -#: ../../mod/settings.php:683 +#: ../../mod/settings.php:685 msgid "Client key starts with" msgstr "Chiave del client inizia con" -#: ../../mod/settings.php:684 +#: ../../mod/settings.php:686 msgid "No name" msgstr "Nessun nome" -#: ../../mod/settings.php:685 +#: ../../mod/settings.php:687 msgid "Remove authorization" msgstr "Rimuovi l'autorizzazione" -#: ../../mod/settings.php:697 +#: ../../mod/settings.php:699 msgid "No Plugin settings configured" msgstr "Nessun plugin ha impostazioni modificabili" -#: ../../mod/settings.php:705 +#: ../../mod/settings.php:707 msgid "Plugin Settings" msgstr "Impostazioni plugin" -#: ../../mod/settings.php:719 +#: ../../mod/settings.php:721 msgid "Off" msgstr "Spento" -#: ../../mod/settings.php:719 +#: ../../mod/settings.php:721 msgid "On" msgstr "Acceso" -#: ../../mod/settings.php:727 +#: ../../mod/settings.php:729 msgid "Additional Features" msgstr "Funzionalità aggiuntive" -#: ../../mod/settings.php:741 ../../mod/settings.php:742 +#: ../../mod/settings.php:739 ../../mod/settings.php:743 +msgid "General Social Media Settings" +msgstr "Impostazioni Media Sociali" + +#: ../../mod/settings.php:749 +msgid "Disable intelligent shortening" +msgstr "Disabilita accorciamento intelligente" + +#: ../../mod/settings.php:751 +msgid "" +"Normally the system tries to find the best link to add to shortened posts. " +"If this option is enabled then every shortened post will always point to the" +" original friendica post." +msgstr "Normalmente il sistema tenta di trovare il migliore link da aggiungere a un post accorciato. Se questa opzione è abilitata, ogni post accorciato conterrà sempre un link al post originale su Friendica." + +#: ../../mod/settings.php:761 ../../mod/settings.php:762 #, php-format msgid "Built-in support for %s connectivity is %s" msgstr "Il supporto integrato per la connettività con %s è %s" -#: ../../mod/settings.php:741 ../../mod/settings.php:742 +#: ../../mod/settings.php:761 ../../mod/settings.php:762 msgid "enabled" msgstr "abilitato" -#: ../../mod/settings.php:741 ../../mod/settings.php:742 +#: ../../mod/settings.php:761 ../../mod/settings.php:762 msgid "disabled" msgstr "disabilitato" -#: ../../mod/settings.php:742 +#: ../../mod/settings.php:762 msgid "StatusNet" msgstr "StatusNet" -#: ../../mod/settings.php:778 +#: ../../mod/settings.php:798 msgid "Email access is disabled on this site." msgstr "L'accesso email è disabilitato su questo sito." -#: ../../mod/settings.php:790 +#: ../../mod/settings.php:810 msgid "Email/Mailbox Setup" msgstr "Impostazioni email" -#: ../../mod/settings.php:791 +#: ../../mod/settings.php:811 msgid "" "If you wish to communicate with email contacts using this service " "(optional), please specify how to connect to your mailbox." msgstr "Se vuoi comunicare con i contatti email usando questo servizio, specifica come collegarti alla tua casella di posta. (opzionale)" -#: ../../mod/settings.php:792 +#: ../../mod/settings.php:812 msgid "Last successful email check:" msgstr "Ultimo controllo email eseguito con successo:" -#: ../../mod/settings.php:794 +#: ../../mod/settings.php:814 msgid "IMAP server name:" msgstr "Nome server IMAP:" -#: ../../mod/settings.php:795 +#: ../../mod/settings.php:815 msgid "IMAP port:" msgstr "Porta IMAP:" -#: ../../mod/settings.php:796 +#: ../../mod/settings.php:816 msgid "Security:" msgstr "Sicurezza:" -#: ../../mod/settings.php:796 ../../mod/settings.php:801 +#: ../../mod/settings.php:816 ../../mod/settings.php:821 msgid "None" msgstr "Nessuna" -#: ../../mod/settings.php:797 +#: ../../mod/settings.php:817 msgid "Email login name:" msgstr "Nome utente email:" -#: ../../mod/settings.php:798 +#: ../../mod/settings.php:818 msgid "Email password:" msgstr "Password email:" -#: ../../mod/settings.php:799 +#: ../../mod/settings.php:819 msgid "Reply-to address:" msgstr "Indirizzo di risposta:" -#: ../../mod/settings.php:800 +#: ../../mod/settings.php:820 msgid "Send public posts to all email contacts:" msgstr "Invia i messaggi pubblici ai contatti email:" -#: ../../mod/settings.php:801 +#: ../../mod/settings.php:821 msgid "Action after import:" msgstr "Azione post importazione:" -#: ../../mod/settings.php:801 +#: ../../mod/settings.php:821 msgid "Mark as seen" msgstr "Segna come letto" -#: ../../mod/settings.php:801 +#: ../../mod/settings.php:821 msgid "Move to folder" msgstr "Sposta nella cartella" -#: ../../mod/settings.php:802 +#: ../../mod/settings.php:822 msgid "Move to folder:" msgstr "Sposta nella cartella:" -#: ../../mod/settings.php:833 ../../mod/admin.php:545 +#: ../../mod/settings.php:853 ../../mod/admin.php:547 msgid "No special theme for mobile devices" msgstr "Nessun tema speciale per i dispositivi mobili" -#: ../../mod/settings.php:883 +#: ../../mod/settings.php:903 msgid "Display Settings" msgstr "Impostazioni Grafiche" -#: ../../mod/settings.php:889 ../../mod/settings.php:904 +#: ../../mod/settings.php:909 ../../mod/settings.php:924 msgid "Display Theme:" msgstr "Tema:" -#: ../../mod/settings.php:890 +#: ../../mod/settings.php:910 msgid "Mobile Theme:" msgstr "Tema mobile:" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:911 msgid "Update browser every xx seconds" msgstr "Aggiorna il browser ogni x secondi" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:911 msgid "Minimum of 10 seconds, no maximum" msgstr "Minimo 10 secondi, nessun limite massimo" -#: ../../mod/settings.php:892 +#: ../../mod/settings.php:912 msgid "Number of items to display per page:" msgstr "Numero di elementi da mostrare per pagina:" -#: ../../mod/settings.php:892 ../../mod/settings.php:893 +#: ../../mod/settings.php:912 ../../mod/settings.php:913 msgid "Maximum of 100 items" msgstr "Massimo 100 voci" -#: ../../mod/settings.php:893 +#: ../../mod/settings.php:913 msgid "Number of items to display per page when viewed from mobile device:" msgstr "Numero di voci da visualizzare per pagina quando si utilizza un dispositivo mobile:" -#: ../../mod/settings.php:894 +#: ../../mod/settings.php:914 msgid "Don't show emoticons" msgstr "Non mostrare le emoticons" -#: ../../mod/settings.php:895 +#: ../../mod/settings.php:915 msgid "Don't show notices" msgstr "Non mostrare gli avvisi" -#: ../../mod/settings.php:896 +#: ../../mod/settings.php:916 msgid "Infinite scroll" msgstr "Scroll infinito" -#: ../../mod/settings.php:897 +#: ../../mod/settings.php:917 msgid "Automatic updates only at the top of the network page" msgstr "Aggiornamenti automatici solo in cima alla pagina \"rete\"" -#: ../../mod/settings.php:974 +#: ../../mod/settings.php:994 msgid "User Types" msgstr "Tipi di Utenti" -#: ../../mod/settings.php:975 +#: ../../mod/settings.php:995 msgid "Community Types" msgstr "Tipi di Comunità" -#: ../../mod/settings.php:976 +#: ../../mod/settings.php:996 msgid "Normal Account Page" msgstr "Pagina Account Normale" -#: ../../mod/settings.php:977 +#: ../../mod/settings.php:997 msgid "This account is a normal personal profile" msgstr "Questo account è un normale profilo personale" -#: ../../mod/settings.php:980 +#: ../../mod/settings.php:1000 msgid "Soapbox Page" msgstr "Pagina Sandbox" -#: ../../mod/settings.php:981 +#: ../../mod/settings.php:1001 msgid "Automatically approve all connection/friend requests as read-only fans" msgstr "Chi richiede la connessione/amicizia sarà accettato automaticamente come fan che potrà solamente leggere la bacheca" -#: ../../mod/settings.php:984 +#: ../../mod/settings.php:1004 msgid "Community Forum/Celebrity Account" msgstr "Account Celebrità/Forum comunitario" -#: ../../mod/settings.php:985 +#: ../../mod/settings.php:1005 msgid "" "Automatically approve all connection/friend requests as read-write fans" msgstr "Chi richiede la connessione/amicizia sarà accettato automaticamente come fan che potrà leggere e scrivere sulla bacheca" -#: ../../mod/settings.php:988 +#: ../../mod/settings.php:1008 msgid "Automatic Friend Page" msgstr "Pagina con amicizia automatica" -#: ../../mod/settings.php:989 +#: ../../mod/settings.php:1009 msgid "Automatically approve all connection/friend requests as friends" msgstr "Chi richiede la connessione/amicizia sarà accettato automaticamente come amico" -#: ../../mod/settings.php:992 +#: ../../mod/settings.php:1012 msgid "Private Forum [Experimental]" msgstr "Forum privato [sperimentale]" -#: ../../mod/settings.php:993 +#: ../../mod/settings.php:1013 msgid "Private forum - approved members only" msgstr "Forum privato - solo membri approvati" -#: ../../mod/settings.php:1005 +#: ../../mod/settings.php:1025 msgid "OpenID:" msgstr "OpenID:" -#: ../../mod/settings.php:1005 +#: ../../mod/settings.php:1025 msgid "(Optional) Allow this OpenID to login to this account." msgstr "(Opzionale) Consente di loggarti in questo account con questo OpenID" -#: ../../mod/settings.php:1015 +#: ../../mod/settings.php:1035 msgid "Publish your default profile in your local site directory?" msgstr "Pubblica il tuo profilo predefinito nell'elenco locale del sito" -#: ../../mod/settings.php:1015 ../../mod/settings.php:1021 -#: ../../mod/settings.php:1029 ../../mod/settings.php:1033 -#: ../../mod/settings.php:1038 ../../mod/settings.php:1044 -#: ../../mod/settings.php:1050 ../../mod/settings.php:1056 -#: ../../mod/settings.php:1086 ../../mod/settings.php:1087 -#: ../../mod/settings.php:1088 ../../mod/settings.php:1089 -#: ../../mod/settings.php:1090 ../../mod/register.php:234 -#: ../../mod/dfrn_request.php:830 ../../mod/api.php:106 -#: ../../mod/profiles.php:661 ../../mod/profiles.php:665 +#: ../../mod/settings.php:1035 ../../mod/settings.php:1041 +#: ../../mod/settings.php:1049 ../../mod/settings.php:1053 +#: ../../mod/settings.php:1058 ../../mod/settings.php:1064 +#: ../../mod/settings.php:1070 ../../mod/settings.php:1076 +#: ../../mod/settings.php:1106 ../../mod/settings.php:1107 +#: ../../mod/settings.php:1108 ../../mod/settings.php:1109 +#: ../../mod/settings.php:1110 ../../mod/register.php:234 +#: ../../mod/dfrn_request.php:845 ../../mod/api.php:106 +#: ../../mod/follow.php:54 ../../mod/profiles.php:661 +#: ../../mod/profiles.php:665 msgid "No" msgstr "No" -#: ../../mod/settings.php:1021 +#: ../../mod/settings.php:1041 msgid "Publish your default profile in the global social directory?" msgstr "Pubblica il tuo profilo predefinito nell'elenco sociale globale" -#: ../../mod/settings.php:1029 +#: ../../mod/settings.php:1049 msgid "Hide your contact/friend list from viewers of your default profile?" msgstr "Nascondi la lista dei tuoi contatti/amici dai visitatori del tuo profilo predefinito" -#: ../../mod/settings.php:1033 +#: ../../mod/settings.php:1053 msgid "" "If enabled, posting public messages to Diaspora and other networks isn't " "possible." msgstr "Se abilitato, l'invio di messaggi pubblici verso Diaspora e altri network non sarà possibile" -#: ../../mod/settings.php:1038 +#: ../../mod/settings.php:1058 msgid "Allow friends to post to your profile page?" msgstr "Permetti agli amici di scrivere sulla tua pagina profilo?" -#: ../../mod/settings.php:1044 +#: ../../mod/settings.php:1064 msgid "Allow friends to tag your posts?" msgstr "Permetti agli amici di taggare i tuoi messaggi?" -#: ../../mod/settings.php:1050 +#: ../../mod/settings.php:1070 msgid "Allow us to suggest you as a potential friend to new members?" msgstr "Ci permetti di suggerirti come potenziale amico ai nuovi membri?" -#: ../../mod/settings.php:1056 +#: ../../mod/settings.php:1076 msgid "Permit unknown people to send you private mail?" msgstr "Permetti a utenti sconosciuti di inviarti messaggi privati?" -#: ../../mod/settings.php:1064 +#: ../../mod/settings.php:1084 msgid "Profile is not published." msgstr "Il profilo non è pubblicato." -#: ../../mod/settings.php:1067 ../../mod/profile_photo.php:248 +#: ../../mod/settings.php:1087 ../../mod/profile_photo.php:248 msgid "or" msgstr "o" -#: ../../mod/settings.php:1072 +#: ../../mod/settings.php:1092 msgid "Your Identity Address is" msgstr "L'indirizzo della tua identità è" -#: ../../mod/settings.php:1083 +#: ../../mod/settings.php:1103 msgid "Automatically expire posts after this many days:" msgstr "Fai scadere i post automaticamente dopo x giorni:" -#: ../../mod/settings.php:1083 +#: ../../mod/settings.php:1103 msgid "If empty, posts will not expire. Expired posts will be deleted" msgstr "Se lasciato vuoto, i messaggi non verranno cancellati." -#: ../../mod/settings.php:1084 +#: ../../mod/settings.php:1104 msgid "Advanced expiration settings" msgstr "Impostazioni avanzate di scandenza" -#: ../../mod/settings.php:1085 +#: ../../mod/settings.php:1105 msgid "Advanced Expiration" msgstr "Scadenza avanzata" -#: ../../mod/settings.php:1086 +#: ../../mod/settings.php:1106 msgid "Expire posts:" msgstr "Fai scadere i post:" -#: ../../mod/settings.php:1087 +#: ../../mod/settings.php:1107 msgid "Expire personal notes:" msgstr "Fai scadere le Note personali:" -#: ../../mod/settings.php:1088 +#: ../../mod/settings.php:1108 msgid "Expire starred posts:" msgstr "Fai scadere i post Speciali:" -#: ../../mod/settings.php:1089 +#: ../../mod/settings.php:1109 msgid "Expire photos:" msgstr "Fai scadere le foto:" -#: ../../mod/settings.php:1090 +#: ../../mod/settings.php:1110 msgid "Only expire posts by others:" msgstr "Fai scadere solo i post degli altri:" -#: ../../mod/settings.php:1116 +#: ../../mod/settings.php:1136 msgid "Account Settings" msgstr "Impostazioni account" -#: ../../mod/settings.php:1124 +#: ../../mod/settings.php:1144 msgid "Password Settings" msgstr "Impostazioni password" -#: ../../mod/settings.php:1125 +#: ../../mod/settings.php:1145 msgid "New Password:" msgstr "Nuova password:" -#: ../../mod/settings.php:1126 +#: ../../mod/settings.php:1146 msgid "Confirm:" msgstr "Conferma:" -#: ../../mod/settings.php:1126 +#: ../../mod/settings.php:1146 msgid "Leave password fields blank unless changing" msgstr "Lascia questi campi in bianco per non effettuare variazioni alla password" -#: ../../mod/settings.php:1127 +#: ../../mod/settings.php:1147 msgid "Current Password:" msgstr "Password Attuale:" -#: ../../mod/settings.php:1127 ../../mod/settings.php:1128 +#: ../../mod/settings.php:1147 ../../mod/settings.php:1148 msgid "Your current password to confirm the changes" msgstr "La tua password attuale per confermare le modifiche" -#: ../../mod/settings.php:1128 +#: ../../mod/settings.php:1148 msgid "Password:" msgstr "Password:" -#: ../../mod/settings.php:1132 +#: ../../mod/settings.php:1152 msgid "Basic Settings" msgstr "Impostazioni base" -#: ../../mod/settings.php:1134 +#: ../../mod/settings.php:1154 msgid "Email Address:" msgstr "Indirizzo Email:" -#: ../../mod/settings.php:1135 +#: ../../mod/settings.php:1155 msgid "Your Timezone:" msgstr "Il tuo fuso orario:" -#: ../../mod/settings.php:1136 +#: ../../mod/settings.php:1156 msgid "Default Post Location:" msgstr "Località predefinita:" -#: ../../mod/settings.php:1137 +#: ../../mod/settings.php:1157 msgid "Use Browser Location:" msgstr "Usa la località rilevata dal browser:" -#: ../../mod/settings.php:1140 +#: ../../mod/settings.php:1160 msgid "Security and Privacy Settings" msgstr "Impostazioni di sicurezza e privacy" -#: ../../mod/settings.php:1142 +#: ../../mod/settings.php:1162 msgid "Maximum Friend Requests/Day:" msgstr "Numero massimo di richieste di amicizia al giorno:" -#: ../../mod/settings.php:1142 ../../mod/settings.php:1172 +#: ../../mod/settings.php:1162 ../../mod/settings.php:1192 msgid "(to prevent spam abuse)" msgstr "(per prevenire lo spam)" -#: ../../mod/settings.php:1143 +#: ../../mod/settings.php:1163 msgid "Default Post Permissions" msgstr "Permessi predefiniti per i messaggi" -#: ../../mod/settings.php:1144 +#: ../../mod/settings.php:1164 msgid "(click to open/close)" msgstr "(clicca per aprire/chiudere)" -#: ../../mod/settings.php:1153 ../../mod/photos.php:1146 +#: ../../mod/settings.php:1173 ../../mod/photos.php:1146 #: ../../mod/photos.php:1519 msgid "Show to Groups" msgstr "Mostra ai gruppi" -#: ../../mod/settings.php:1154 ../../mod/photos.php:1147 +#: ../../mod/settings.php:1174 ../../mod/photos.php:1147 #: ../../mod/photos.php:1520 msgid "Show to Contacts" msgstr "Mostra ai contatti" -#: ../../mod/settings.php:1155 +#: ../../mod/settings.php:1175 msgid "Default Private Post" msgstr "Default Post Privato" -#: ../../mod/settings.php:1156 +#: ../../mod/settings.php:1176 msgid "Default Public Post" msgstr "Default Post Pubblico" -#: ../../mod/settings.php:1160 +#: ../../mod/settings.php:1180 msgid "Default Permissions for New Posts" msgstr "Permessi predefiniti per i nuovi post" -#: ../../mod/settings.php:1172 +#: ../../mod/settings.php:1192 msgid "Maximum private messages per day from unknown people:" msgstr "Numero massimo di messaggi privati da utenti sconosciuti per giorno:" -#: ../../mod/settings.php:1175 +#: ../../mod/settings.php:1195 msgid "Notification Settings" msgstr "Impostazioni notifiche" -#: ../../mod/settings.php:1176 +#: ../../mod/settings.php:1196 msgid "By default post a status message when:" msgstr "Invia un messaggio di stato quando:" -#: ../../mod/settings.php:1177 +#: ../../mod/settings.php:1197 msgid "accepting a friend request" msgstr "accetti una richiesta di amicizia" -#: ../../mod/settings.php:1178 +#: ../../mod/settings.php:1198 msgid "joining a forum/community" msgstr "ti unisci a un forum/comunità" -#: ../../mod/settings.php:1179 +#: ../../mod/settings.php:1199 msgid "making an interesting profile change" msgstr "fai un interessante modifica al profilo" -#: ../../mod/settings.php:1180 +#: ../../mod/settings.php:1200 msgid "Send a notification email when:" msgstr "Invia una mail di notifica quando:" -#: ../../mod/settings.php:1181 +#: ../../mod/settings.php:1201 msgid "You receive an introduction" msgstr "Ricevi una presentazione" -#: ../../mod/settings.php:1182 +#: ../../mod/settings.php:1202 msgid "Your introductions are confirmed" msgstr "Le tue presentazioni sono confermate" -#: ../../mod/settings.php:1183 +#: ../../mod/settings.php:1203 msgid "Someone writes on your profile wall" msgstr "Qualcuno scrive sulla bacheca del tuo profilo" -#: ../../mod/settings.php:1184 +#: ../../mod/settings.php:1204 msgid "Someone writes a followup comment" msgstr "Qualcuno scrive un commento a un tuo messaggio" -#: ../../mod/settings.php:1185 +#: ../../mod/settings.php:1205 msgid "You receive a private message" msgstr "Ricevi un messaggio privato" -#: ../../mod/settings.php:1186 +#: ../../mod/settings.php:1206 msgid "You receive a friend suggestion" msgstr "Hai ricevuto un suggerimento di amicizia" -#: ../../mod/settings.php:1187 +#: ../../mod/settings.php:1207 msgid "You are tagged in a post" msgstr "Sei stato taggato in un post" -#: ../../mod/settings.php:1188 +#: ../../mod/settings.php:1208 msgid "You are poked/prodded/etc. in a post" msgstr "Sei 'toccato'/'spronato'/ecc. in un post" -#: ../../mod/settings.php:1190 +#: ../../mod/settings.php:1210 +msgid "Activate desktop notifications" +msgstr "" + +#: ../../mod/settings.php:1211 +msgid "" +"Note: This is an experimental feature, as being not supported by each " +"browser" +msgstr "" + +#: ../../mod/settings.php:1212 +msgid "You will now receive desktop notifications!" +msgstr "" + +#: ../../mod/settings.php:1214 msgid "Text-only notification emails" msgstr "Email di notifica in solo testo" -#: ../../mod/settings.php:1192 +#: ../../mod/settings.php:1216 msgid "Send text only notification emails, without the html part" msgstr "Invia le email di notifica in solo testo, senza la parte in html" -#: ../../mod/settings.php:1194 +#: ../../mod/settings.php:1218 msgid "Advanced Account/Page Type Settings" msgstr "Impostazioni avanzate Account/Tipo di pagina" -#: ../../mod/settings.php:1195 +#: ../../mod/settings.php:1219 msgid "Change the behaviour of this account for special situations" msgstr "Modifica il comportamento di questo account in situazioni speciali" -#: ../../mod/settings.php:1198 +#: ../../mod/settings.php:1222 msgid "Relocate" msgstr "Trasloca" -#: ../../mod/settings.php:1199 +#: ../../mod/settings.php:1223 msgid "" "If you have moved this profile from another server, and some of your " "contacts don't receive your updates, try pushing this button." msgstr "Se hai spostato questo profilo da un'altro server, e alcuni dei tuoi contatti non ricevono i tuoi aggiornamenti, prova a premere questo bottone." -#: ../../mod/settings.php:1200 +#: ../../mod/settings.php:1224 msgid "Resend relocate message to contacts" msgstr "Reinvia il messaggio di trasloco" @@ -4164,337 +4166,337 @@ msgstr "Informazioni remote sulla privacy non disponibili." msgid "Visible to:" msgstr "Visibile a:" -#: ../../mod/contacts.php:112 +#: ../../mod/contacts.php:114 #, php-format msgid "%d contact edited." msgid_plural "%d contacts edited" msgstr[0] "%d contatto modificato" msgstr[1] "%d contatti modificati" -#: ../../mod/contacts.php:143 ../../mod/contacts.php:276 +#: ../../mod/contacts.php:145 ../../mod/contacts.php:340 msgid "Could not access contact record." msgstr "Non è possibile accedere al contatto." -#: ../../mod/contacts.php:157 +#: ../../mod/contacts.php:159 msgid "Could not locate selected profile." msgstr "Non riesco a trovare il profilo selezionato." -#: ../../mod/contacts.php:190 +#: ../../mod/contacts.php:192 msgid "Contact updated." msgstr "Contatto aggiornato." -#: ../../mod/contacts.php:192 ../../mod/dfrn_request.php:576 +#: ../../mod/contacts.php:194 ../../mod/dfrn_request.php:576 msgid "Failed to update contact record." msgstr "Errore nell'aggiornamento del contatto." -#: ../../mod/contacts.php:291 +#: ../../mod/contacts.php:361 msgid "Contact has been blocked" msgstr "Il contatto è stato bloccato" -#: ../../mod/contacts.php:291 +#: ../../mod/contacts.php:361 msgid "Contact has been unblocked" msgstr "Il contatto è stato sbloccato" -#: ../../mod/contacts.php:302 +#: ../../mod/contacts.php:372 msgid "Contact has been ignored" msgstr "Il contatto è ignorato" -#: ../../mod/contacts.php:302 +#: ../../mod/contacts.php:372 msgid "Contact has been unignored" msgstr "Il contatto non è più ignorato" -#: ../../mod/contacts.php:314 +#: ../../mod/contacts.php:384 msgid "Contact has been archived" msgstr "Il contatto è stato archiviato" -#: ../../mod/contacts.php:314 +#: ../../mod/contacts.php:384 msgid "Contact has been unarchived" msgstr "Il contatto è stato dearchiviato" -#: ../../mod/contacts.php:339 ../../mod/contacts.php:727 +#: ../../mod/contacts.php:409 ../../mod/contacts.php:797 msgid "Do you really want to delete this contact?" msgstr "Vuoi veramente cancellare questo contatto?" -#: ../../mod/contacts.php:356 +#: ../../mod/contacts.php:426 msgid "Contact has been removed." msgstr "Il contatto è stato rimosso." -#: ../../mod/contacts.php:394 +#: ../../mod/contacts.php:464 #, php-format msgid "You are mutual friends with %s" msgstr "Sei amico reciproco con %s" -#: ../../mod/contacts.php:398 +#: ../../mod/contacts.php:468 #, php-format msgid "You are sharing with %s" msgstr "Stai condividendo con %s" -#: ../../mod/contacts.php:403 +#: ../../mod/contacts.php:473 #, php-format msgid "%s is sharing with you" msgstr "%s sta condividendo con te" -#: ../../mod/contacts.php:423 +#: ../../mod/contacts.php:493 msgid "Private communications are not available for this contact." msgstr "Le comunicazioni private non sono disponibili per questo contatto." -#: ../../mod/contacts.php:426 ../../mod/admin.php:569 +#: ../../mod/contacts.php:496 ../../mod/admin.php:571 msgid "Never" msgstr "Mai" -#: ../../mod/contacts.php:430 +#: ../../mod/contacts.php:500 msgid "(Update was successful)" msgstr "(L'aggiornamento è stato completato)" -#: ../../mod/contacts.php:430 +#: ../../mod/contacts.php:500 msgid "(Update was not successful)" msgstr "(L'aggiornamento non è stato completato)" -#: ../../mod/contacts.php:432 +#: ../../mod/contacts.php:502 msgid "Suggest friends" msgstr "Suggerisci amici" -#: ../../mod/contacts.php:436 +#: ../../mod/contacts.php:506 #, php-format msgid "Network type: %s" msgstr "Tipo di rete: %s" -#: ../../mod/contacts.php:444 +#: ../../mod/contacts.php:514 msgid "View all contacts" msgstr "Vedi tutti i contatti" -#: ../../mod/contacts.php:449 ../../mod/contacts.php:518 -#: ../../mod/contacts.php:730 ../../mod/admin.php:1009 +#: ../../mod/contacts.php:519 ../../mod/contacts.php:588 +#: ../../mod/contacts.php:800 ../../mod/admin.php:1012 msgid "Unblock" msgstr "Sblocca" -#: ../../mod/contacts.php:449 ../../mod/contacts.php:518 -#: ../../mod/contacts.php:730 ../../mod/admin.php:1008 +#: ../../mod/contacts.php:519 ../../mod/contacts.php:588 +#: ../../mod/contacts.php:800 ../../mod/admin.php:1011 msgid "Block" msgstr "Blocca" -#: ../../mod/contacts.php:452 +#: ../../mod/contacts.php:522 msgid "Toggle Blocked status" msgstr "Inverti stato \"Blocca\"" -#: ../../mod/contacts.php:455 ../../mod/contacts.php:519 -#: ../../mod/contacts.php:731 +#: ../../mod/contacts.php:525 ../../mod/contacts.php:589 +#: ../../mod/contacts.php:801 msgid "Unignore" msgstr "Non ignorare" -#: ../../mod/contacts.php:458 +#: ../../mod/contacts.php:528 msgid "Toggle Ignored status" msgstr "Inverti stato \"Ignora\"" -#: ../../mod/contacts.php:462 ../../mod/contacts.php:732 +#: ../../mod/contacts.php:532 ../../mod/contacts.php:802 msgid "Unarchive" msgstr "Dearchivia" -#: ../../mod/contacts.php:462 ../../mod/contacts.php:732 +#: ../../mod/contacts.php:532 ../../mod/contacts.php:802 msgid "Archive" msgstr "Archivia" -#: ../../mod/contacts.php:465 +#: ../../mod/contacts.php:535 msgid "Toggle Archive status" msgstr "Inverti stato \"Archiviato\"" -#: ../../mod/contacts.php:468 +#: ../../mod/contacts.php:538 msgid "Repair" msgstr "Ripara" -#: ../../mod/contacts.php:471 +#: ../../mod/contacts.php:541 msgid "Advanced Contact Settings" msgstr "Impostazioni avanzate Contatto" -#: ../../mod/contacts.php:477 +#: ../../mod/contacts.php:547 msgid "Communications lost with this contact!" msgstr "Comunicazione con questo contatto persa!" -#: ../../mod/contacts.php:480 +#: ../../mod/contacts.php:550 msgid "Fetch further information for feeds" msgstr "Recupera maggiori infomazioni per i feed" -#: ../../mod/contacts.php:481 +#: ../../mod/contacts.php:551 msgid "Disabled" msgstr "Disabilitato" -#: ../../mod/contacts.php:481 +#: ../../mod/contacts.php:551 msgid "Fetch information" msgstr "Recupera informazioni" -#: ../../mod/contacts.php:481 +#: ../../mod/contacts.php:551 msgid "Fetch information and keywords" msgstr "Recupera informazioni e parole chiave" -#: ../../mod/contacts.php:490 +#: ../../mod/contacts.php:560 msgid "Contact Editor" msgstr "Editor dei Contatti" -#: ../../mod/contacts.php:493 +#: ../../mod/contacts.php:563 msgid "Profile Visibility" msgstr "Visibilità del profilo" -#: ../../mod/contacts.php:494 +#: ../../mod/contacts.php:564 #, php-format msgid "" "Please choose the profile you would like to display to %s when viewing your " "profile securely." msgstr "Seleziona il profilo che vuoi mostrare a %s quando visita il tuo profilo in modo sicuro." -#: ../../mod/contacts.php:495 +#: ../../mod/contacts.php:565 msgid "Contact Information / Notes" msgstr "Informazioni / Note sul contatto" -#: ../../mod/contacts.php:496 +#: ../../mod/contacts.php:566 msgid "Edit contact notes" msgstr "Modifica note contatto" -#: ../../mod/contacts.php:501 ../../mod/contacts.php:695 +#: ../../mod/contacts.php:571 ../../mod/contacts.php:765 #: ../../mod/nogroup.php:40 ../../mod/viewcontacts.php:64 #, php-format msgid "Visit %s's profile [%s]" msgstr "Visita il profilo di %s [%s]" -#: ../../mod/contacts.php:502 +#: ../../mod/contacts.php:572 msgid "Block/Unblock contact" msgstr "Blocca/Sblocca contatto" -#: ../../mod/contacts.php:503 +#: ../../mod/contacts.php:573 msgid "Ignore contact" msgstr "Ignora il contatto" -#: ../../mod/contacts.php:504 +#: ../../mod/contacts.php:574 msgid "Repair URL settings" msgstr "Impostazioni riparazione URL" -#: ../../mod/contacts.php:505 +#: ../../mod/contacts.php:575 msgid "View conversations" msgstr "Vedi conversazioni" -#: ../../mod/contacts.php:507 +#: ../../mod/contacts.php:577 msgid "Delete contact" msgstr "Rimuovi contatto" -#: ../../mod/contacts.php:511 +#: ../../mod/contacts.php:581 msgid "Last update:" msgstr "Ultimo aggiornamento:" -#: ../../mod/contacts.php:513 +#: ../../mod/contacts.php:583 msgid "Update public posts" msgstr "Aggiorna messaggi pubblici" -#: ../../mod/contacts.php:515 ../../mod/admin.php:1503 +#: ../../mod/contacts.php:585 ../../mod/admin.php:1506 msgid "Update now" msgstr "Aggiorna adesso" -#: ../../mod/contacts.php:522 +#: ../../mod/contacts.php:592 msgid "Currently blocked" msgstr "Bloccato" -#: ../../mod/contacts.php:523 +#: ../../mod/contacts.php:593 msgid "Currently ignored" msgstr "Ignorato" -#: ../../mod/contacts.php:524 +#: ../../mod/contacts.php:594 msgid "Currently archived" msgstr "Al momento archiviato" -#: ../../mod/contacts.php:525 +#: ../../mod/contacts.php:595 msgid "" "Replies/likes to your public posts may still be visible" msgstr "Risposte ai tuoi post pubblici possono essere comunque visibili" -#: ../../mod/contacts.php:526 +#: ../../mod/contacts.php:596 msgid "Notification for new posts" msgstr "Notifica per i nuovi messaggi" -#: ../../mod/contacts.php:526 +#: ../../mod/contacts.php:596 msgid "Send a notification of every new post of this contact" msgstr "Invia una notifica per ogni nuovo messaggio di questo contatto" -#: ../../mod/contacts.php:529 +#: ../../mod/contacts.php:599 msgid "Blacklisted keywords" msgstr "Parole chiave in blacklist" -#: ../../mod/contacts.php:529 +#: ../../mod/contacts.php:599 msgid "" "Comma separated list of keywords that should not be converted to hashtags, " "when \"Fetch information and keywords\" is selected" msgstr "Lista separata da virgola di parole chiave che non dovranno essere convertite in hastag, quando \"Recupera informazioni e parole chiave\" è selezionato" -#: ../../mod/contacts.php:580 +#: ../../mod/contacts.php:650 msgid "Suggestions" msgstr "Suggerimenti" -#: ../../mod/contacts.php:583 +#: ../../mod/contacts.php:653 msgid "Suggest potential friends" msgstr "Suggerisci potenziali amici" -#: ../../mod/contacts.php:589 +#: ../../mod/contacts.php:659 msgid "Show all contacts" msgstr "Mostra tutti i contatti" -#: ../../mod/contacts.php:592 +#: ../../mod/contacts.php:662 msgid "Unblocked" msgstr "Sbloccato" -#: ../../mod/contacts.php:595 +#: ../../mod/contacts.php:665 msgid "Only show unblocked contacts" msgstr "Mostra solo contatti non bloccati" -#: ../../mod/contacts.php:599 +#: ../../mod/contacts.php:669 msgid "Blocked" msgstr "Bloccato" -#: ../../mod/contacts.php:602 +#: ../../mod/contacts.php:672 msgid "Only show blocked contacts" msgstr "Mostra solo contatti bloccati" -#: ../../mod/contacts.php:606 +#: ../../mod/contacts.php:676 msgid "Ignored" msgstr "Ignorato" -#: ../../mod/contacts.php:609 +#: ../../mod/contacts.php:679 msgid "Only show ignored contacts" msgstr "Mostra solo contatti ignorati" -#: ../../mod/contacts.php:613 +#: ../../mod/contacts.php:683 msgid "Archived" msgstr "Achiviato" -#: ../../mod/contacts.php:616 +#: ../../mod/contacts.php:686 msgid "Only show archived contacts" msgstr "Mostra solo contatti archiviati" -#: ../../mod/contacts.php:620 +#: ../../mod/contacts.php:690 msgid "Hidden" msgstr "Nascosto" -#: ../../mod/contacts.php:623 +#: ../../mod/contacts.php:693 msgid "Only show hidden contacts" msgstr "Mostra solo contatti nascosti" -#: ../../mod/contacts.php:671 +#: ../../mod/contacts.php:741 msgid "Mutual Friendship" msgstr "Amicizia reciproca" -#: ../../mod/contacts.php:675 +#: ../../mod/contacts.php:745 msgid "is a fan of yours" msgstr "è un tuo fan" -#: ../../mod/contacts.php:679 +#: ../../mod/contacts.php:749 msgid "you are a fan of" msgstr "sei un fan di" -#: ../../mod/contacts.php:696 ../../mod/nogroup.php:41 +#: ../../mod/contacts.php:766 ../../mod/nogroup.php:41 msgid "Edit contact" msgstr "Modifca contatto" -#: ../../mod/contacts.php:722 +#: ../../mod/contacts.php:792 msgid "Search your contacts" msgstr "Cerca nei tuoi contatti" -#: ../../mod/contacts.php:723 ../../mod/directory.php:61 +#: ../../mod/contacts.php:793 ../../mod/directory.php:61 msgid "Finding: " msgstr "Ricerca: " @@ -4596,7 +4598,7 @@ msgstr "La registrazione su questo sito è solo su invito." msgid "Your invitation ID: " msgstr "L'ID del tuo invito:" -#: ../../mod/register.php:255 ../../mod/admin.php:621 +#: ../../mod/register.php:255 ../../mod/admin.php:623 msgid "Registration" msgstr "Registrazione" @@ -4635,7 +4637,7 @@ msgstr "Inviato!" msgid "System down for maintenance" msgstr "Sistema in manutenzione" -#: ../../mod/profile.php:155 ../../mod/display.php:332 +#: ../../mod/profile.php:155 ../../mod/display.php:334 msgid "Access to this profile has been restricted." msgstr "L'accesso a questo profilo è stato limitato." @@ -4643,10 +4645,10 @@ msgstr "L'accesso a questo profilo è stato limitato." msgid "Tips for New Members" msgstr "Consigli per i Nuovi Utenti" -#: ../../mod/videos.php:115 ../../mod/dfrn_request.php:762 +#: ../../mod/videos.php:115 ../../mod/dfrn_request.php:777 #: ../../mod/viewcontacts.php:19 ../../mod/photos.php:920 #: ../../mod/search.php:89 ../../mod/community.php:18 -#: ../../mod/display.php:212 ../../mod/directory.php:33 +#: ../../mod/display.php:214 ../../mod/directory.php:33 msgid "Public access denied." msgstr "Accesso negato." @@ -4696,7 +4698,7 @@ msgstr "Modifica messaggio" msgid "People Search" msgstr "Cerca persone" -#: ../../mod/dirfind.php:60 ../../mod/match.php:65 +#: ../../mod/dirfind.php:60 ../../mod/match.php:71 msgid "No matches" msgstr "Nessun risultato" @@ -4804,72 +4806,76 @@ msgid "" "this profile." msgstr "Non hai fatto accesso con l'identità corretta. Accedi a questo profilo." -#: ../../mod/dfrn_request.php:671 +#: ../../mod/dfrn_request.php:674 ../../mod/dfrn_request.php:691 +msgid "Confirm" +msgstr "Conferma" + +#: ../../mod/dfrn_request.php:686 msgid "Hide this contact" msgstr "Nascondi questo contatto" -#: ../../mod/dfrn_request.php:674 +#: ../../mod/dfrn_request.php:689 #, php-format msgid "Welcome home %s." msgstr "Bentornato a casa %s." -#: ../../mod/dfrn_request.php:675 +#: ../../mod/dfrn_request.php:690 #, php-format msgid "Please confirm your introduction/connection request to %s." msgstr "Conferma la tua richiesta di connessione con %s." -#: ../../mod/dfrn_request.php:804 +#: ../../mod/dfrn_request.php:819 msgid "" "Please enter your 'Identity Address' from one of the following supported " "communications networks:" msgstr "Inserisci il tuo 'Indirizzo Identità' da uno dei seguenti network supportati:" -#: ../../mod/dfrn_request.php:824 +#: ../../mod/dfrn_request.php:839 msgid "" "If you are not yet a member of the free social web, follow this link to find a public" " Friendica site and join us today." msgstr "Se non sei un membro del web sociale libero, segui questo link per trovare un sito Friendica pubblico e unisciti a noi oggi" -#: ../../mod/dfrn_request.php:827 +#: ../../mod/dfrn_request.php:842 msgid "Friend/Connection Request" msgstr "Richieste di amicizia/connessione" -#: ../../mod/dfrn_request.php:828 +#: ../../mod/dfrn_request.php:843 msgid "" "Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, " "testuser@identi.ca" msgstr "Esempi: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, testuser@identi.ca" -#: ../../mod/dfrn_request.php:829 +#: ../../mod/dfrn_request.php:844 ../../mod/follow.php:53 msgid "Please answer the following:" msgstr "Rispondi:" -#: ../../mod/dfrn_request.php:830 +#: ../../mod/dfrn_request.php:845 ../../mod/follow.php:54 #, php-format msgid "Does %s know you?" msgstr "%s ti conosce?" -#: ../../mod/dfrn_request.php:834 +#: ../../mod/dfrn_request.php:849 ../../mod/follow.php:55 msgid "Add a personal note:" msgstr "Aggiungi una nota personale:" -#: ../../mod/dfrn_request.php:837 +#: ../../mod/dfrn_request.php:852 msgid "StatusNet/Federated Social Web" msgstr "StatusNet/Federated Social Web" -#: ../../mod/dfrn_request.php:839 +#: ../../mod/dfrn_request.php:854 #, php-format msgid "" " - please do not use this form. Instead, enter %s into your Diaspora search" " bar." msgstr " - per favore non usare questa form. Invece, inserisci %s nella tua barra di ricerca su Diaspora." -#: ../../mod/dfrn_request.php:840 +#: ../../mod/dfrn_request.php:855 ../../mod/follow.php:61 msgid "Your Identity Address:" msgstr "L'indirizzo della tua identità:" -#: ../../mod/dfrn_request.php:843 +#: ../../mod/dfrn_request.php:858 ../../mod/follow.php:64 msgid "Submit Request" msgstr "Invia richiesta" @@ -4931,7 +4937,7 @@ msgstr "Suggerisci amici" msgid "Suggest a friend for %s" msgstr "Suggerisci un amico a %s" -#: ../../mod/share.php:44 +#: ../../mod/share.php:38 msgid "link" msgstr "collegamento" @@ -4943,15 +4949,15 @@ msgstr "Nessun contatto." msgid "Theme settings updated." msgstr "Impostazioni del tema aggiornate." -#: ../../mod/admin.php:104 ../../mod/admin.php:619 +#: ../../mod/admin.php:104 ../../mod/admin.php:621 msgid "Site" msgstr "Sito" -#: ../../mod/admin.php:105 ../../mod/admin.php:998 ../../mod/admin.php:1013 +#: ../../mod/admin.php:105 ../../mod/admin.php:1001 ../../mod/admin.php:1016 msgid "Users" msgstr "Utenti" -#: ../../mod/admin.php:107 ../../mod/admin.php:1323 ../../mod/admin.php:1357 +#: ../../mod/admin.php:107 ../../mod/admin.php:1326 ../../mod/admin.php:1360 msgid "Themes" msgstr "Temi" @@ -4959,7 +4965,7 @@ msgstr "Temi" msgid "DB updates" msgstr "Aggiornamenti Database" -#: ../../mod/admin.php:123 ../../mod/admin.php:132 ../../mod/admin.php:1444 +#: ../../mod/admin.php:123 ../../mod/admin.php:132 ../../mod/admin.php:1447 msgid "Logs" msgstr "Log" @@ -4983,19 +4989,19 @@ msgstr "diagnostiche" msgid "User registrations waiting for confirmation" msgstr "Utenti registrati in attesa di conferma" -#: ../../mod/admin.php:193 ../../mod/admin.php:952 +#: ../../mod/admin.php:193 ../../mod/admin.php:955 msgid "Normal Account" msgstr "Account normale" -#: ../../mod/admin.php:194 ../../mod/admin.php:953 +#: ../../mod/admin.php:194 ../../mod/admin.php:956 msgid "Soapbox Account" msgstr "Account per comunicati e annunci" -#: ../../mod/admin.php:195 ../../mod/admin.php:954 +#: ../../mod/admin.php:195 ../../mod/admin.php:957 msgid "Community/Celebrity Account" msgstr "Account per celebrità o per comunità" -#: ../../mod/admin.php:196 ../../mod/admin.php:955 +#: ../../mod/admin.php:196 ../../mod/admin.php:958 msgid "Automatic Friend Account" msgstr "Account per amicizia automatizzato" @@ -5011,9 +5017,9 @@ msgstr "Forum Privato" msgid "Message queues" msgstr "Code messaggi" -#: ../../mod/admin.php:222 ../../mod/admin.php:618 ../../mod/admin.php:997 -#: ../../mod/admin.php:1101 ../../mod/admin.php:1154 ../../mod/admin.php:1322 -#: ../../mod/admin.php:1356 ../../mod/admin.php:1443 +#: ../../mod/admin.php:222 ../../mod/admin.php:620 ../../mod/admin.php:1000 +#: ../../mod/admin.php:1104 ../../mod/admin.php:1157 ../../mod/admin.php:1325 +#: ../../mod/admin.php:1359 ../../mod/admin.php:1446 msgid "Administration" msgstr "Amministrazione" @@ -5041,331 +5047,331 @@ msgstr "Plugin attivi" msgid "Can not parse base url. Must have at least ://" msgstr "Impossibile analizzare l'url base. Deve avere almeno [schema]://[dominio]" -#: ../../mod/admin.php:516 +#: ../../mod/admin.php:518 msgid "Site settings updated." msgstr "Impostazioni del sito aggiornate." -#: ../../mod/admin.php:562 +#: ../../mod/admin.php:564 msgid "No community page" msgstr "Nessuna pagina Comunità" -#: ../../mod/admin.php:563 +#: ../../mod/admin.php:565 msgid "Public postings from users of this site" msgstr "Messaggi pubblici dagli utenti di questo sito" -#: ../../mod/admin.php:564 +#: ../../mod/admin.php:566 msgid "Global community page" msgstr "Pagina Comunità globale" -#: ../../mod/admin.php:570 +#: ../../mod/admin.php:572 msgid "At post arrival" msgstr "All'arrivo di un messaggio" -#: ../../mod/admin.php:579 +#: ../../mod/admin.php:581 msgid "Multi user instance" msgstr "Istanza multi utente" -#: ../../mod/admin.php:602 +#: ../../mod/admin.php:604 msgid "Closed" msgstr "Chiusa" -#: ../../mod/admin.php:603 +#: ../../mod/admin.php:605 msgid "Requires approval" msgstr "Richiede l'approvazione" -#: ../../mod/admin.php:604 +#: ../../mod/admin.php:606 msgid "Open" msgstr "Aperta" -#: ../../mod/admin.php:608 +#: ../../mod/admin.php:610 msgid "No SSL policy, links will track page SSL state" msgstr "Nessuna gestione SSL, i link seguiranno lo stato SSL della pagina" -#: ../../mod/admin.php:609 +#: ../../mod/admin.php:611 msgid "Force all links to use SSL" msgstr "Forza tutti i linki ad usare SSL" -#: ../../mod/admin.php:610 +#: ../../mod/admin.php:612 msgid "Self-signed certificate, use SSL for local links only (discouraged)" msgstr "Certificato auto-firmato, usa SSL solo per i link locali (sconsigliato)" -#: ../../mod/admin.php:622 +#: ../../mod/admin.php:624 msgid "File upload" msgstr "Caricamento file" -#: ../../mod/admin.php:623 +#: ../../mod/admin.php:625 msgid "Policies" msgstr "Politiche" -#: ../../mod/admin.php:624 +#: ../../mod/admin.php:626 msgid "Advanced" msgstr "Avanzate" -#: ../../mod/admin.php:625 +#: ../../mod/admin.php:627 msgid "Performance" msgstr "Performance" -#: ../../mod/admin.php:626 +#: ../../mod/admin.php:628 msgid "" "Relocate - WARNING: advanced function. Could make this server unreachable." msgstr "Trasloca - ATTENZIONE: funzione avanzata! Puo' rendere questo server irraggiungibile." -#: ../../mod/admin.php:629 +#: ../../mod/admin.php:631 msgid "Site name" msgstr "Nome del sito" -#: ../../mod/admin.php:630 +#: ../../mod/admin.php:632 msgid "Host name" msgstr "Nome host" -#: ../../mod/admin.php:631 +#: ../../mod/admin.php:633 msgid "Sender Email" msgstr "Mittente email" -#: ../../mod/admin.php:632 +#: ../../mod/admin.php:634 msgid "Banner/Logo" msgstr "Banner/Logo" -#: ../../mod/admin.php:633 +#: ../../mod/admin.php:635 msgid "Shortcut icon" msgstr "Icona shortcut" -#: ../../mod/admin.php:634 +#: ../../mod/admin.php:636 msgid "Touch icon" msgstr "Icona touch" -#: ../../mod/admin.php:635 +#: ../../mod/admin.php:637 msgid "Additional Info" msgstr "Informazioni aggiuntive" -#: ../../mod/admin.php:635 +#: ../../mod/admin.php:637 msgid "" "For public servers: you can add additional information here that will be " "listed at dir.friendica.com/siteinfo." msgstr "Per server pubblici: puoi aggiungere informazioni extra che verrano mostrate su dir.friendica.com/siteinfo." -#: ../../mod/admin.php:636 +#: ../../mod/admin.php:638 msgid "System language" msgstr "Lingua di sistema" -#: ../../mod/admin.php:637 +#: ../../mod/admin.php:639 msgid "System theme" msgstr "Tema di sistema" -#: ../../mod/admin.php:637 +#: ../../mod/admin.php:639 msgid "" "Default system theme - may be over-ridden by user profiles - change theme settings" msgstr "Tema di sistema - puo' essere sovrascritto dalle impostazioni utente - cambia le impostazioni del tema" -#: ../../mod/admin.php:638 +#: ../../mod/admin.php:640 msgid "Mobile system theme" msgstr "Tema mobile di sistema" -#: ../../mod/admin.php:638 +#: ../../mod/admin.php:640 msgid "Theme for mobile devices" msgstr "Tema per dispositivi mobili" -#: ../../mod/admin.php:639 +#: ../../mod/admin.php:641 msgid "SSL link policy" msgstr "Gestione link SSL" -#: ../../mod/admin.php:639 +#: ../../mod/admin.php:641 msgid "Determines whether generated links should be forced to use SSL" msgstr "Determina se i link generati devono essere forzati a usare SSL" -#: ../../mod/admin.php:640 +#: ../../mod/admin.php:642 msgid "Force SSL" msgstr "Forza SSL" -#: ../../mod/admin.php:640 +#: ../../mod/admin.php:642 msgid "" "Force all Non-SSL requests to SSL - Attention: on some systems it could lead" " to endless loops." msgstr "Forza tutte le richieste non SSL su SSL - Attenzione: su alcuni sistemi puo' portare a loop senza fine" -#: ../../mod/admin.php:641 +#: ../../mod/admin.php:643 msgid "Old style 'Share'" msgstr "Ricondivisione vecchio stile" -#: ../../mod/admin.php:641 +#: ../../mod/admin.php:643 msgid "Deactivates the bbcode element 'share' for repeating items." msgstr "Disattiva l'elemento bbcode 'share' con elementi ripetuti" -#: ../../mod/admin.php:642 +#: ../../mod/admin.php:644 msgid "Hide help entry from navigation menu" msgstr "Nascondi la voce 'Guida' dal menu di navigazione" -#: ../../mod/admin.php:642 +#: ../../mod/admin.php:644 msgid "" "Hides the menu entry for the Help pages from the navigation menu. You can " "still access it calling /help directly." msgstr "Nasconde la voce per le pagine della guida dal menu di navigazione. E' comunque possibile accedervi richiamando /help direttamente." -#: ../../mod/admin.php:643 +#: ../../mod/admin.php:645 msgid "Single user instance" msgstr "Instanza a singolo utente" -#: ../../mod/admin.php:643 +#: ../../mod/admin.php:645 msgid "Make this instance multi-user or single-user for the named user" msgstr "Rendi questa istanza multi utente o a singolo utente per l'utente selezionato" -#: ../../mod/admin.php:644 +#: ../../mod/admin.php:646 msgid "Maximum image size" msgstr "Massima dimensione immagini" -#: ../../mod/admin.php:644 +#: ../../mod/admin.php:646 msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " "limits." msgstr "Massima dimensione in byte delle immagini caricate. Il default è 0, cioè nessun limite." -#: ../../mod/admin.php:645 +#: ../../mod/admin.php:647 msgid "Maximum image length" msgstr "Massima lunghezza immagine" -#: ../../mod/admin.php:645 +#: ../../mod/admin.php:647 msgid "" "Maximum length in pixels of the longest side of uploaded images. Default is " "-1, which means no limits." msgstr "Massima lunghezza in pixel del lato più lungo delle immagini caricate. Predefinito a -1, ovvero nessun limite." -#: ../../mod/admin.php:646 +#: ../../mod/admin.php:648 msgid "JPEG image quality" msgstr "Qualità immagini JPEG" -#: ../../mod/admin.php:646 +#: ../../mod/admin.php:648 msgid "" "Uploaded JPEGS will be saved at this quality setting [0-100]. Default is " "100, which is full quality." msgstr "Le immagini JPEG caricate verranno salvate con questa qualità [0-100]. Predefinito è 100, ovvero qualità piena." -#: ../../mod/admin.php:648 +#: ../../mod/admin.php:650 msgid "Register policy" msgstr "Politica di registrazione" -#: ../../mod/admin.php:649 +#: ../../mod/admin.php:651 msgid "Maximum Daily Registrations" msgstr "Massime registrazioni giornaliere" -#: ../../mod/admin.php:649 +#: ../../mod/admin.php:651 msgid "" "If registration is permitted above, this sets the maximum number of new user" " registrations to accept per day. If register is set to closed, this " "setting has no effect." msgstr "Se la registrazione è permessa, qui si definisce il massimo numero di nuovi utenti registrati da accettare giornalmente. Se la registrazione è chiusa, questa impostazione non ha effetto." -#: ../../mod/admin.php:650 +#: ../../mod/admin.php:652 msgid "Register text" msgstr "Testo registrazione" -#: ../../mod/admin.php:650 +#: ../../mod/admin.php:652 msgid "Will be displayed prominently on the registration page." msgstr "Sarà mostrato ben visibile nella pagina di registrazione." -#: ../../mod/admin.php:651 +#: ../../mod/admin.php:653 msgid "Accounts abandoned after x days" msgstr "Account abbandonati dopo x giorni" -#: ../../mod/admin.php:651 +#: ../../mod/admin.php:653 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "Non spreca risorse di sistema controllando siti esterni per gli account abbandonati. Immettere 0 per nessun limite di tempo." -#: ../../mod/admin.php:652 +#: ../../mod/admin.php:654 msgid "Allowed friend domains" msgstr "Domini amici consentiti" -#: ../../mod/admin.php:652 +#: ../../mod/admin.php:654 msgid "" "Comma separated list of domains which are allowed to establish friendships " "with this site. Wildcards are accepted. Empty to allow any domains" msgstr "Elenco separato da virglola dei domini che possono stabilire amicizie con questo sito. Sono accettati caratteri jolly. Lascalo vuoto per accettare qualsiasi dominio." -#: ../../mod/admin.php:653 +#: ../../mod/admin.php:655 msgid "Allowed email domains" msgstr "Domini email consentiti" -#: ../../mod/admin.php:653 +#: ../../mod/admin.php:655 msgid "" "Comma separated list of domains which are allowed in email addresses for " "registrations to this site. Wildcards are accepted. Empty to allow any " "domains" msgstr "Elenco separato da virgola dei domini permessi come indirizzi email in fase di registrazione a questo sito. Sono accettati caratteri jolly. Lascalo vuoto per accettare qualsiasi dominio." -#: ../../mod/admin.php:654 +#: ../../mod/admin.php:656 msgid "Block public" msgstr "Blocca pagine pubbliche" -#: ../../mod/admin.php:654 +#: ../../mod/admin.php:656 msgid "" "Check to block public access to all otherwise public personal pages on this " "site unless you are currently logged in." msgstr "Seleziona per bloccare l'accesso pubblico a tutte le pagine personali di questo sito, a meno di essere loggato." -#: ../../mod/admin.php:655 +#: ../../mod/admin.php:657 msgid "Force publish" msgstr "Forza publicazione" -#: ../../mod/admin.php:655 +#: ../../mod/admin.php:657 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "Seleziona per forzare tutti i profili di questo sito ad essere compresi nell'elenco di questo sito." -#: ../../mod/admin.php:656 +#: ../../mod/admin.php:658 msgid "Global directory update URL" msgstr "URL aggiornamento Elenco Globale" -#: ../../mod/admin.php:656 +#: ../../mod/admin.php:658 msgid "" "URL to update the global directory. If this is not set, the global directory" " is completely unavailable to the application." msgstr "URL dell'elenco globale. Se vuoto, l'elenco globale sarà completamente disabilitato." -#: ../../mod/admin.php:657 +#: ../../mod/admin.php:659 msgid "Allow threaded items" msgstr "Permetti commenti nidificati" -#: ../../mod/admin.php:657 +#: ../../mod/admin.php:659 msgid "Allow infinite level threading for items on this site." msgstr "Permette un infinito livello di nidificazione dei commenti su questo sito." -#: ../../mod/admin.php:658 +#: ../../mod/admin.php:660 msgid "Private posts by default for new users" msgstr "Post privati di default per i nuovi utenti" -#: ../../mod/admin.php:658 +#: ../../mod/admin.php:660 msgid "" "Set default post permissions for all new members to the default privacy " "group rather than public." msgstr "Imposta i permessi predefiniti dei post per tutti i nuovi utenti come privati per il gruppo predefinito, invece che pubblici." -#: ../../mod/admin.php:659 +#: ../../mod/admin.php:661 msgid "Don't include post content in email notifications" msgstr "Non includere il contenuto dei post nelle notifiche via email" -#: ../../mod/admin.php:659 +#: ../../mod/admin.php:661 msgid "" "Don't include the content of a post/comment/private message/etc. in the " "email notifications that are sent out from this site, as a privacy measure." msgstr "Non include il contenuti del post/commento/messaggio privato/etc. nelle notifiche email che sono inviate da questo sito, per privacy" -#: ../../mod/admin.php:660 +#: ../../mod/admin.php:662 msgid "Disallow public access to addons listed in the apps menu." msgstr "Disabilita l'accesso pubblico ai plugin raccolti nel menu apps." -#: ../../mod/admin.php:660 +#: ../../mod/admin.php:662 msgid "" "Checking this box will restrict addons listed in the apps menu to members " "only." msgstr "Selezionando questo box si limiterà ai soli membri l'accesso agli addon nel menu applicazioni" -#: ../../mod/admin.php:661 +#: ../../mod/admin.php:663 msgid "Don't embed private images in posts" msgstr "Non inglobare immagini private nei post" -#: ../../mod/admin.php:661 +#: ../../mod/admin.php:663 msgid "" "Don't replace locally-hosted private photos in posts with an embedded copy " "of the image. This means that contacts who receive posts containing private " @@ -5373,319 +5379,327 @@ msgid "" "while." msgstr "Non sostituire le foto locali nei post con una copia incorporata dell'immagine. Questo significa che i contatti che riceveranno i post contenenti foto private dovranno autenticarsi e caricare ogni immagine, cosa che puo' richiedere un po' di tempo." -#: ../../mod/admin.php:662 +#: ../../mod/admin.php:664 msgid "Allow Users to set remote_self" msgstr "Permetti agli utenti di impostare 'io remoto'" -#: ../../mod/admin.php:662 +#: ../../mod/admin.php:664 msgid "" "With checking this, every user is allowed to mark every contact as a " "remote_self in the repair contact dialog. Setting this flag on a contact " "causes mirroring every posting of that contact in the users stream." msgstr "Selezionando questo, a tutti gli utenti sarà permesso di impostare qualsiasi contatto come 'io remoto' nella pagina di modifica del contatto. Impostare questa opzione fa si che tutti i messaggi di quel contatto vengano ripetuti nello stream del'utente." -#: ../../mod/admin.php:663 +#: ../../mod/admin.php:665 msgid "Block multiple registrations" msgstr "Blocca registrazioni multiple" -#: ../../mod/admin.php:663 +#: ../../mod/admin.php:665 msgid "Disallow users to register additional accounts for use as pages." msgstr "Non permette all'utente di registrare account extra da usare come pagine." -#: ../../mod/admin.php:664 +#: ../../mod/admin.php:666 msgid "OpenID support" msgstr "Supporto OpenID" -#: ../../mod/admin.php:664 +#: ../../mod/admin.php:666 msgid "OpenID support for registration and logins." msgstr "Supporta OpenID per la registrazione e il login" -#: ../../mod/admin.php:665 +#: ../../mod/admin.php:667 msgid "Fullname check" msgstr "Controllo nome completo" -#: ../../mod/admin.php:665 +#: ../../mod/admin.php:667 msgid "" "Force users to register with a space between firstname and lastname in Full " "name, as an antispam measure" msgstr "Forza gli utenti a registrarsi con uno spazio tra il nome e il cognome in \"Nome completo\", come misura antispam" -#: ../../mod/admin.php:666 +#: ../../mod/admin.php:668 msgid "UTF-8 Regular expressions" msgstr "Espressioni regolari UTF-8" -#: ../../mod/admin.php:666 +#: ../../mod/admin.php:668 msgid "Use PHP UTF8 regular expressions" msgstr "Usa le espressioni regolari PHP in UTF8" -#: ../../mod/admin.php:667 +#: ../../mod/admin.php:669 msgid "Community Page Style" msgstr "Stile pagina Comunità" -#: ../../mod/admin.php:667 +#: ../../mod/admin.php:669 msgid "" "Type of community page to show. 'Global community' shows every public " "posting from an open distributed network that arrived on this server." msgstr "Tipo di pagina Comunità da mostrare. 'Comunità Globale' mostra tutti i messaggi pubblici arrivati su questo server da network aperti distribuiti." -#: ../../mod/admin.php:668 +#: ../../mod/admin.php:670 msgid "Posts per user on community page" msgstr "Messaggi per utente nella pagina Comunità" -#: ../../mod/admin.php:668 +#: ../../mod/admin.php:670 msgid "" "The maximum number of posts per user on the community page. (Not valid for " "'Global Community')" msgstr "Il numero massimo di messaggi per utente mostrato nella pagina Comuntà (non valido per 'Comunità globale')" -#: ../../mod/admin.php:669 +#: ../../mod/admin.php:671 msgid "Enable OStatus support" msgstr "Abilita supporto OStatus" -#: ../../mod/admin.php:669 +#: ../../mod/admin.php:671 msgid "" "Provide built-in OStatus (StatusNet, GNU Social etc.) compatibility. All " "communications in OStatus are public, so privacy warnings will be " "occasionally displayed." msgstr "Fornisce la compatibilità integrata a OStatus (StatusNet, Gnu Social, etc.). Tutte le comunicazioni su OStatus sono pubbliche, quindi un avviso di privacy verrà mostrato occasionalmente." -#: ../../mod/admin.php:670 +#: ../../mod/admin.php:672 msgid "OStatus conversation completion interval" msgstr "Intervallo completamento conversazioni OStatus" -#: ../../mod/admin.php:670 +#: ../../mod/admin.php:672 msgid "" "How often shall the poller check for new entries in OStatus conversations? " "This can be a very ressource task." msgstr "quanto spesso il poller deve controllare se esistono nuovi commenti in una conversazione OStatus? Questo è un lavoro che puo' richiedere molte risorse." -#: ../../mod/admin.php:671 +#: ../../mod/admin.php:673 msgid "Enable Diaspora support" msgstr "Abilita il supporto a Diaspora" -#: ../../mod/admin.php:671 +#: ../../mod/admin.php:673 msgid "Provide built-in Diaspora network compatibility." msgstr "Fornisce compatibilità con il network Diaspora." -#: ../../mod/admin.php:672 +#: ../../mod/admin.php:674 msgid "Only allow Friendica contacts" msgstr "Permetti solo contatti Friendica" -#: ../../mod/admin.php:672 +#: ../../mod/admin.php:674 msgid "" "All contacts must use Friendica protocols. All other built-in communication " "protocols disabled." msgstr "Tutti i contatti devono usare il protocollo di Friendica. Tutti gli altri protocolli sono disabilitati." -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:675 msgid "Verify SSL" msgstr "Verifica SSL" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:675 msgid "" "If you wish, you can turn on strict certificate checking. This will mean you" " cannot connect (at all) to self-signed SSL sites." msgstr "Se vuoi, puoi abilitare il controllo rigoroso dei certificati.Questo significa che non potrai collegarti (del tutto) con siti con certificati SSL auto-firmati." -#: ../../mod/admin.php:674 +#: ../../mod/admin.php:676 msgid "Proxy user" msgstr "Utente Proxy" -#: ../../mod/admin.php:675 +#: ../../mod/admin.php:677 msgid "Proxy URL" msgstr "URL Proxy" -#: ../../mod/admin.php:676 +#: ../../mod/admin.php:678 msgid "Network timeout" msgstr "Timeout rete" -#: ../../mod/admin.php:676 +#: ../../mod/admin.php:678 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "Valore in secondi. Imposta a 0 per illimitato (non raccomandato)." -#: ../../mod/admin.php:677 +#: ../../mod/admin.php:679 msgid "Delivery interval" msgstr "Intervallo di invio" -#: ../../mod/admin.php:677 +#: ../../mod/admin.php:679 msgid "" "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." msgstr "Ritarda il processo di invio in background di n secondi per ridurre il carico di sistema. Raccomandato: 4-5 per host condivisit, 2-3 per VPS. 0-1 per grandi server dedicati." -#: ../../mod/admin.php:678 +#: ../../mod/admin.php:680 msgid "Poll interval" msgstr "Intervallo di poll" -#: ../../mod/admin.php:678 +#: ../../mod/admin.php:680 msgid "" "Delay background polling processes by this many seconds to reduce system " "load. If 0, use delivery interval." msgstr "Ritarda il processo di poll in background di n secondi per ridurre il carico di sistema. Se 0, usa l'intervallo di invio." -#: ../../mod/admin.php:679 +#: ../../mod/admin.php:681 msgid "Maximum Load Average" msgstr "Massimo carico medio" -#: ../../mod/admin.php:679 +#: ../../mod/admin.php:681 msgid "" "Maximum system load before delivery and poll processes are deferred - " "default 50." msgstr "Massimo carico di sistema prima che i processi di invio e di poll siano ritardati. Predefinito a 50." -#: ../../mod/admin.php:681 +#: ../../mod/admin.php:682 +msgid "Maximum Load Average (Frontend)" +msgstr "Media Massimo Carico (Frontend)" + +#: ../../mod/admin.php:682 +msgid "Maximum system load before the frontend quits service - default 50." +msgstr "Massimo carico di sistema prima che il frontend fermi il servizio - default 50." + +#: ../../mod/admin.php:684 msgid "Use MySQL full text engine" msgstr "Usa il motore MySQL full text" -#: ../../mod/admin.php:681 +#: ../../mod/admin.php:684 msgid "" "Activates the full text engine. Speeds up search - but can only search for " "four and more characters." msgstr "Attiva il motore full text. Velocizza la ricerca, ma puo' cercare solo per quattro o più caratteri." -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:685 msgid "Suppress Language" msgstr "Disattiva lingua" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:685 msgid "Suppress language information in meta information about a posting." msgstr "Disattiva le informazioni sulla lingua nei meta di un post." -#: ../../mod/admin.php:683 +#: ../../mod/admin.php:686 msgid "Suppress Tags" msgstr "Sopprimi Tags" -#: ../../mod/admin.php:683 +#: ../../mod/admin.php:686 msgid "Suppress showing a list of hashtags at the end of the posting." msgstr "Non mostra la lista di hashtag in coda al messaggio" -#: ../../mod/admin.php:684 +#: ../../mod/admin.php:687 msgid "Path to item cache" msgstr "Percorso cache elementi" -#: ../../mod/admin.php:685 +#: ../../mod/admin.php:688 msgid "Cache duration in seconds" msgstr "Durata della cache in secondi" -#: ../../mod/admin.php:685 +#: ../../mod/admin.php:688 msgid "" "How long should the cache files be hold? Default value is 86400 seconds (One" " day). To disable the item cache, set the value to -1." msgstr "Quanto a lungo devono essere mantenuti i file di cache? Il valore predefinito è 86400 secondi (un giorno). Per disabilitare la cache, imposta il valore a -1." -#: ../../mod/admin.php:686 +#: ../../mod/admin.php:689 msgid "Maximum numbers of comments per post" msgstr "Numero massimo di commenti per post" -#: ../../mod/admin.php:686 +#: ../../mod/admin.php:689 msgid "How much comments should be shown for each post? Default value is 100." msgstr "Quanti commenti devono essere mostrati per ogni post? Default : 100." -#: ../../mod/admin.php:687 +#: ../../mod/admin.php:690 msgid "Path for lock file" msgstr "Percorso al file di lock" -#: ../../mod/admin.php:688 +#: ../../mod/admin.php:691 msgid "Temp path" msgstr "Percorso file temporanei" -#: ../../mod/admin.php:689 +#: ../../mod/admin.php:692 msgid "Base path to installation" msgstr "Percorso base all'installazione" -#: ../../mod/admin.php:690 +#: ../../mod/admin.php:693 msgid "Disable picture proxy" msgstr "Disabilita il proxy immagini" -#: ../../mod/admin.php:690 +#: ../../mod/admin.php:693 msgid "" "The picture proxy increases performance and privacy. It shouldn't be used on" " systems with very low bandwith." msgstr "Il proxy immagini aumenta le performace e la privacy. Non dovrebbe essere usato su server con poca banda disponibile." -#: ../../mod/admin.php:691 +#: ../../mod/admin.php:694 msgid "Enable old style pager" msgstr "Abilita la paginazione vecchio stile" -#: ../../mod/admin.php:691 +#: ../../mod/admin.php:694 msgid "" "The old style pager has page numbers but slows down massively the page " "speed." msgstr "La paginazione vecchio stile mostra i numeri delle pagine, ma rallenta la velocità di caricamento della pagina." -#: ../../mod/admin.php:692 +#: ../../mod/admin.php:695 msgid "Only search in tags" msgstr "Cerca solo nei tag" -#: ../../mod/admin.php:692 +#: ../../mod/admin.php:695 msgid "On large systems the text search can slow down the system extremely." msgstr "Su server con molti dati, la ricerca nel testo può estremamente rallentare il sistema." -#: ../../mod/admin.php:694 +#: ../../mod/admin.php:697 msgid "New base url" msgstr "Nuovo url base" -#: ../../mod/admin.php:711 +#: ../../mod/admin.php:714 msgid "Update has been marked successful" msgstr "L'aggiornamento è stato segnato come di successo" -#: ../../mod/admin.php:719 +#: ../../mod/admin.php:722 #, php-format msgid "Database structure update %s was successfully applied." msgstr "Aggiornamento struttura database %s applicata con successo." -#: ../../mod/admin.php:722 +#: ../../mod/admin.php:725 #, php-format msgid "Executing of database structure update %s failed with error: %s" msgstr "Aggiornamento struttura database %s fallita con errore: %s" -#: ../../mod/admin.php:734 +#: ../../mod/admin.php:737 #, php-format msgid "Executing %s failed with error: %s" msgstr "Esecuzione di %s fallita con errore: %s" -#: ../../mod/admin.php:737 +#: ../../mod/admin.php:740 #, php-format msgid "Update %s was successfully applied." msgstr "L'aggiornamento %s è stato applicato con successo" -#: ../../mod/admin.php:741 +#: ../../mod/admin.php:744 #, php-format msgid "Update %s did not return a status. Unknown if it succeeded." msgstr "L'aggiornamento %s non ha riportato uno stato. Non so se è andato a buon fine." -#: ../../mod/admin.php:743 +#: ../../mod/admin.php:746 #, php-format msgid "There was no additional update function %s that needed to be called." msgstr "Non ci sono altre funzioni di aggiornamento %s da richiamare." -#: ../../mod/admin.php:762 +#: ../../mod/admin.php:765 msgid "No failed updates." msgstr "Nessun aggiornamento fallito." -#: ../../mod/admin.php:763 +#: ../../mod/admin.php:766 msgid "Check database structure" msgstr "Controlla struttura database" -#: ../../mod/admin.php:768 +#: ../../mod/admin.php:771 msgid "Failed Updates" msgstr "Aggiornamenti falliti" -#: ../../mod/admin.php:769 +#: ../../mod/admin.php:772 msgid "" "This does not include updates prior to 1139, which did not return a status." msgstr "Questo non include gli aggiornamenti prima del 1139, che non ritornano lo stato." -#: ../../mod/admin.php:770 +#: ../../mod/admin.php:773 msgid "Mark success (if update was manually applied)" msgstr "Segna completato (se l'update è stato applicato manualmente)" -#: ../../mod/admin.php:771 +#: ../../mod/admin.php:774 msgid "Attempt to execute this update step automatically" msgstr "Cerco di eseguire questo aggiornamento in automatico" -#: ../../mod/admin.php:803 +#: ../../mod/admin.php:806 #, php-format msgid "" "\n" @@ -5693,7 +5707,7 @@ msgid "" "\t\t\t\tthe administrator of %2$s has set up an account for you." msgstr "\nGentile %1$s,\n l'amministratore di %2$s ha impostato un account per te." -#: ../../mod/admin.php:806 +#: ../../mod/admin.php:809 #, php-format msgid "" "\n" @@ -5723,208 +5737,208 @@ msgid "" "\t\t\tThank you and welcome to %4$s." msgstr "\nI dettagli del tuo utente sono:\n Indirizzo del sito: %1$s\n Nome utente: %2$s\n Password: %3$s\n\nPuoi cambiare la tua password dalla pagina delle impostazioni del tuo account dopo esserti autenticato.\n\nPer favore, prenditi qualche momento per esaminare tutte le impostazioni presenti.\n\nPotresti voler aggiungere qualche informazione di base al tuo profilo predefinito (nella pagina \"Profili\"), così che le altre persone possano trovarti più facilmente.\n\nTi raccomandiamo di inserire il tuo nome completo, aggiungere una foto, aggiungere qualche parola chiave del profilo (molto utili per trovare nuovi contatti), e magari in quale nazione vivi, se non vuoi essere più specifico di così.\n\nNoi rispettiamo appieno la tua privacy, e nessuna di queste informazioni è necessaria o obbligatoria.\nSe sei nuovo e non conosci nessuno qui, possono aiutarti a trovare qualche nuovo e interessante contatto.\n\nGrazie e benvenuto su %4$s" -#: ../../mod/admin.php:850 +#: ../../mod/admin.php:853 #, php-format msgid "%s user blocked/unblocked" msgid_plural "%s users blocked/unblocked" msgstr[0] "%s utente bloccato/sbloccato" msgstr[1] "%s utenti bloccati/sbloccati" -#: ../../mod/admin.php:857 +#: ../../mod/admin.php:860 #, php-format msgid "%s user deleted" msgid_plural "%s users deleted" msgstr[0] "%s utente cancellato" msgstr[1] "%s utenti cancellati" -#: ../../mod/admin.php:896 +#: ../../mod/admin.php:899 #, php-format msgid "User '%s' deleted" msgstr "Utente '%s' cancellato" -#: ../../mod/admin.php:904 +#: ../../mod/admin.php:907 #, php-format msgid "User '%s' unblocked" msgstr "Utente '%s' sbloccato" -#: ../../mod/admin.php:904 +#: ../../mod/admin.php:907 #, php-format msgid "User '%s' blocked" msgstr "Utente '%s' bloccato" -#: ../../mod/admin.php:999 +#: ../../mod/admin.php:1002 msgid "Add User" msgstr "Aggiungi utente" -#: ../../mod/admin.php:1000 +#: ../../mod/admin.php:1003 msgid "select all" msgstr "seleziona tutti" -#: ../../mod/admin.php:1001 +#: ../../mod/admin.php:1004 msgid "User registrations waiting for confirm" msgstr "Richieste di registrazione in attesa di conferma" -#: ../../mod/admin.php:1002 +#: ../../mod/admin.php:1005 msgid "User waiting for permanent deletion" msgstr "Utente in attesa di cancellazione definitiva" -#: ../../mod/admin.php:1003 +#: ../../mod/admin.php:1006 msgid "Request date" msgstr "Data richiesta" -#: ../../mod/admin.php:1004 +#: ../../mod/admin.php:1007 msgid "No registrations." msgstr "Nessuna registrazione." -#: ../../mod/admin.php:1006 +#: ../../mod/admin.php:1009 msgid "Deny" msgstr "Nega" -#: ../../mod/admin.php:1010 +#: ../../mod/admin.php:1013 msgid "Site admin" msgstr "Amministrazione sito" -#: ../../mod/admin.php:1011 +#: ../../mod/admin.php:1014 msgid "Account expired" msgstr "Account scaduto" -#: ../../mod/admin.php:1014 +#: ../../mod/admin.php:1017 msgid "New User" msgstr "Nuovo Utente" -#: ../../mod/admin.php:1015 ../../mod/admin.php:1016 +#: ../../mod/admin.php:1018 ../../mod/admin.php:1019 msgid "Register date" msgstr "Data registrazione" -#: ../../mod/admin.php:1015 ../../mod/admin.php:1016 +#: ../../mod/admin.php:1018 ../../mod/admin.php:1019 msgid "Last login" msgstr "Ultimo accesso" -#: ../../mod/admin.php:1015 ../../mod/admin.php:1016 +#: ../../mod/admin.php:1018 ../../mod/admin.php:1019 msgid "Last item" msgstr "Ultimo elemento" -#: ../../mod/admin.php:1015 +#: ../../mod/admin.php:1018 msgid "Deleted since" msgstr "Rimosso da" -#: ../../mod/admin.php:1018 +#: ../../mod/admin.php:1021 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "Gli utenti selezionati saranno cancellati!\\n\\nTutto quello che gli utenti hanno inviato su questo sito sarà permanentemente canellato!\\n\\nSei sicuro?" -#: ../../mod/admin.php:1019 +#: ../../mod/admin.php:1022 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "L'utente {0} sarà cancellato!\\n\\nTutto quello che ha inviato su questo sito sarà permanentemente cancellato!\\n\\nSei sicuro?" -#: ../../mod/admin.php:1029 +#: ../../mod/admin.php:1032 msgid "Name of the new user." msgstr "Nome del nuovo utente." -#: ../../mod/admin.php:1030 +#: ../../mod/admin.php:1033 msgid "Nickname" msgstr "Nome utente" -#: ../../mod/admin.php:1030 +#: ../../mod/admin.php:1033 msgid "Nickname of the new user." msgstr "Nome utente del nuovo utente." -#: ../../mod/admin.php:1031 +#: ../../mod/admin.php:1034 msgid "Email address of the new user." msgstr "Indirizzo Email del nuovo utente." -#: ../../mod/admin.php:1064 +#: ../../mod/admin.php:1067 #, php-format msgid "Plugin %s disabled." msgstr "Plugin %s disabilitato." -#: ../../mod/admin.php:1068 +#: ../../mod/admin.php:1071 #, php-format msgid "Plugin %s enabled." msgstr "Plugin %s abilitato." -#: ../../mod/admin.php:1078 ../../mod/admin.php:1294 +#: ../../mod/admin.php:1081 ../../mod/admin.php:1297 msgid "Disable" msgstr "Disabilita" -#: ../../mod/admin.php:1080 ../../mod/admin.php:1296 +#: ../../mod/admin.php:1083 ../../mod/admin.php:1299 msgid "Enable" msgstr "Abilita" -#: ../../mod/admin.php:1103 ../../mod/admin.php:1324 +#: ../../mod/admin.php:1106 ../../mod/admin.php:1327 msgid "Toggle" msgstr "Inverti" -#: ../../mod/admin.php:1111 ../../mod/admin.php:1334 +#: ../../mod/admin.php:1114 ../../mod/admin.php:1337 msgid "Author: " msgstr "Autore: " -#: ../../mod/admin.php:1112 ../../mod/admin.php:1335 +#: ../../mod/admin.php:1115 ../../mod/admin.php:1338 msgid "Maintainer: " msgstr "Manutentore: " -#: ../../mod/admin.php:1254 +#: ../../mod/admin.php:1257 msgid "No themes found." msgstr "Nessun tema trovato." -#: ../../mod/admin.php:1316 +#: ../../mod/admin.php:1319 msgid "Screenshot" msgstr "Anteprima" -#: ../../mod/admin.php:1362 +#: ../../mod/admin.php:1365 msgid "[Experimental]" msgstr "[Sperimentale]" -#: ../../mod/admin.php:1363 +#: ../../mod/admin.php:1366 msgid "[Unsupported]" msgstr "[Non supportato]" -#: ../../mod/admin.php:1390 +#: ../../mod/admin.php:1393 msgid "Log settings updated." msgstr "Impostazioni Log aggiornate." -#: ../../mod/admin.php:1446 +#: ../../mod/admin.php:1449 msgid "Clear" msgstr "Pulisci" -#: ../../mod/admin.php:1452 +#: ../../mod/admin.php:1455 msgid "Enable Debugging" msgstr "Abilita Debugging" -#: ../../mod/admin.php:1453 +#: ../../mod/admin.php:1456 msgid "Log file" msgstr "File di Log" -#: ../../mod/admin.php:1453 +#: ../../mod/admin.php:1456 msgid "" "Must be writable by web server. Relative to your Friendica top-level " "directory." msgstr "Deve essere scrivibile dal server web. Relativo alla tua directory Friendica." -#: ../../mod/admin.php:1454 +#: ../../mod/admin.php:1457 msgid "Log level" msgstr "Livello di Log" -#: ../../mod/admin.php:1504 +#: ../../mod/admin.php:1507 msgid "Close" msgstr "Chiudi" -#: ../../mod/admin.php:1510 +#: ../../mod/admin.php:1513 msgid "FTP Host" msgstr "Indirizzo FTP" -#: ../../mod/admin.php:1511 +#: ../../mod/admin.php:1514 msgid "FTP Path" msgstr "Percorso FTP" -#: ../../mod/admin.php:1512 +#: ../../mod/admin.php:1515 msgid "FTP User" msgstr "Utente FTP" -#: ../../mod/admin.php:1513 +#: ../../mod/admin.php:1516 msgid "FTP Password" msgstr "Pasword FTP" @@ -6009,7 +6023,7 @@ msgstr "Preferiti" msgid "Favourite Posts" msgstr "Messaggi preferiti" -#: ../../mod/network.php:463 +#: ../../mod/network.php:458 #, php-format msgid "Warning: This group contains %s member from an insecure network." msgid_plural "" @@ -6017,31 +6031,31 @@ msgid_plural "" msgstr[0] "Attenzione: questo gruppo contiene %s membro da un network insicuro." msgstr[1] "Attenzione: questo gruppo contiene %s membri da un network insicuro." -#: ../../mod/network.php:466 +#: ../../mod/network.php:461 msgid "Private messages to this group are at risk of public disclosure." msgstr "I messaggi privati su questo gruppo potrebbero risultare visibili anche pubblicamente." -#: ../../mod/network.php:520 ../../mod/content.php:119 +#: ../../mod/network.php:524 ../../mod/content.php:119 msgid "No such group" msgstr "Nessun gruppo" -#: ../../mod/network.php:537 ../../mod/content.php:130 +#: ../../mod/network.php:541 ../../mod/content.php:130 msgid "Group is empty" msgstr "Il gruppo è vuoto" -#: ../../mod/network.php:544 ../../mod/content.php:134 +#: ../../mod/network.php:548 ../../mod/content.php:134 msgid "Group: " msgstr "Gruppo: " -#: ../../mod/network.php:554 +#: ../../mod/network.php:558 msgid "Contact: " msgstr "Contatto:" -#: ../../mod/network.php:556 +#: ../../mod/network.php:560 msgid "Private messages to this person are at risk of public disclosure." msgstr "I messaggi privati a questa persona potrebbero risultare visibili anche pubblicamente." -#: ../../mod/network.php:561 +#: ../../mod/network.php:565 msgid "Invalid contact." msgstr "Contatto non valido." @@ -6260,7 +6274,11 @@ msgstr "Foto recenti" msgid "The post was created" msgstr "Il messaggio è stato creato" -#: ../../mod/follow.php:27 +#: ../../mod/follow.php:21 +msgid "You already added this contact." +msgstr "Hai già aggiunto questo contatto." + +#: ../../mod/follow.php:103 msgid "Contact added" msgstr "Contatto aggiunto" @@ -6561,6 +6579,10 @@ msgstr "Sorgente (formato Diaspora):" msgid "diaspora2bb: " msgstr "diaspora2bb: " +#: ../../mod/p.php:9 +msgid "Not Extended" +msgstr "Not Extended" + #: ../../mod/tagrm.php:41 msgid "Tag removed" msgstr "Tag rimosso" @@ -6587,19 +6609,19 @@ msgstr "Questo comando rimuoverà completamente il tuo account. Una volta rimoss msgid "Please enter your password for verification:" msgstr "Inserisci la tua password per verifica:" -#: ../../mod/profperm.php:25 ../../mod/profperm.php:55 +#: ../../mod/profperm.php:25 ../../mod/profperm.php:56 msgid "Invalid profile identifier." msgstr "Indentificativo del profilo non valido." -#: ../../mod/profperm.php:101 +#: ../../mod/profperm.php:102 msgid "Profile Visibility Editor" msgstr "Modifica visibilità del profilo" -#: ../../mod/profperm.php:114 +#: ../../mod/profperm.php:115 msgid "Visible To" msgstr "Visibile a" -#: ../../mod/profperm.php:130 +#: ../../mod/profperm.php:131 msgid "All Contacts (with secure profile access)" msgstr "Tutti i contatti (con profilo ad accesso sicuro)" @@ -6611,121 +6633,121 @@ msgstr "Profili corrispondenti" msgid "No keywords to match. Please add keywords to your default profile." msgstr "Nessuna parola chiave per l'abbinamento. Aggiungi parole chiave al tuo profilo predefinito." -#: ../../mod/match.php:57 +#: ../../mod/match.php:62 msgid "is interested in:" msgstr "è interessato a:" -#: ../../mod/events.php:66 +#: ../../mod/events.php:68 ../../mod/events.php:70 msgid "Event title and start time are required." msgstr "Titolo e ora di inizio dell'evento sono richiesti." -#: ../../mod/events.php:291 +#: ../../mod/events.php:303 msgid "l, F j" msgstr "l j F" -#: ../../mod/events.php:313 +#: ../../mod/events.php:325 msgid "Edit event" msgstr "Modifca l'evento" -#: ../../mod/events.php:371 +#: ../../mod/events.php:383 msgid "Create New Event" msgstr "Crea un nuovo evento" -#: ../../mod/events.php:372 +#: ../../mod/events.php:384 msgid "Previous" msgstr "Precendente" -#: ../../mod/events.php:373 ../../mod/install.php:207 +#: ../../mod/events.php:385 ../../mod/install.php:207 msgid "Next" msgstr "Successivo" -#: ../../mod/events.php:446 +#: ../../mod/events.php:458 msgid "hour:minute" msgstr "ora:minuti" -#: ../../mod/events.php:456 +#: ../../mod/events.php:468 msgid "Event details" msgstr "Dettagli dell'evento" -#: ../../mod/events.php:457 +#: ../../mod/events.php:469 #, php-format msgid "Format is %s %s. Starting date and Title are required." msgstr "Il formato è %s %s. Data di inizio e Titolo sono richiesti." -#: ../../mod/events.php:459 +#: ../../mod/events.php:471 msgid "Event Starts:" msgstr "L'evento inizia:" -#: ../../mod/events.php:459 ../../mod/events.php:473 +#: ../../mod/events.php:471 ../../mod/events.php:485 msgid "Required" msgstr "Richiesto" -#: ../../mod/events.php:462 +#: ../../mod/events.php:474 msgid "Finish date/time is not known or not relevant" msgstr "La data/ora di fine non è definita" -#: ../../mod/events.php:464 +#: ../../mod/events.php:476 msgid "Event Finishes:" msgstr "L'evento finisce:" -#: ../../mod/events.php:467 +#: ../../mod/events.php:479 msgid "Adjust for viewer timezone" msgstr "Visualizza con il fuso orario di chi legge" -#: ../../mod/events.php:469 +#: ../../mod/events.php:481 msgid "Description:" msgstr "Descrizione:" -#: ../../mod/events.php:473 +#: ../../mod/events.php:485 msgid "Title:" msgstr "Titolo:" -#: ../../mod/events.php:475 +#: ../../mod/events.php:487 msgid "Share this event" msgstr "Condividi questo evento" -#: ../../mod/ping.php:240 +#: ../../mod/ping.php:210 ../../mod/ping.php:234 msgid "{0} wants to be your friend" msgstr "{0} vuole essere tuo amico" -#: ../../mod/ping.php:245 +#: ../../mod/ping.php:215 ../../mod/ping.php:239 msgid "{0} sent you a message" msgstr "{0} ti ha inviato un messaggio" -#: ../../mod/ping.php:250 +#: ../../mod/ping.php:220 ../../mod/ping.php:244 msgid "{0} requested registration" msgstr "{0} chiede la registrazione" -#: ../../mod/ping.php:256 +#: ../../mod/ping.php:250 #, php-format msgid "{0} commented %s's post" msgstr "{0} ha commentato il post di %s" -#: ../../mod/ping.php:261 +#: ../../mod/ping.php:255 #, php-format msgid "{0} liked %s's post" msgstr "a {0} piace il post di %s" -#: ../../mod/ping.php:266 +#: ../../mod/ping.php:260 #, php-format msgid "{0} disliked %s's post" msgstr "a {0} non piace il post di %s" -#: ../../mod/ping.php:271 +#: ../../mod/ping.php:265 #, php-format msgid "{0} is now friends with %s" msgstr "{0} ora è amico di %s" -#: ../../mod/ping.php:276 +#: ../../mod/ping.php:270 msgid "{0} posted" msgstr "{0} ha inviato un nuovo messaggio" -#: ../../mod/ping.php:281 +#: ../../mod/ping.php:275 #, php-format msgid "{0} tagged %s's post with #%s" msgstr "{0} ha taggato il post di %s con #%s" -#: ../../mod/ping.php:287 +#: ../../mod/ping.php:281 msgid "{0} mentioned you in a post" msgstr "{0} ti ha citato in un post" @@ -7450,47 +7472,51 @@ msgstr "Duplica come messaggi ricondivisi" msgid "Mirror as my own posting" msgstr "Duplica come miei messaggi" -#: ../../mod/crepair.php:166 +#: ../../mod/crepair.php:168 +msgid "Refetch contact data" +msgstr "Ricarica dati contatto" + +#: ../../mod/crepair.php:170 msgid "Account Nickname" msgstr "Nome utente" -#: ../../mod/crepair.php:167 +#: ../../mod/crepair.php:171 msgid "@Tagname - overrides Name/Nickname" msgstr "@TagName - al posto del nome utente" -#: ../../mod/crepair.php:168 +#: ../../mod/crepair.php:172 msgid "Account URL" msgstr "URL dell'utente" -#: ../../mod/crepair.php:169 +#: ../../mod/crepair.php:173 msgid "Friend Request URL" msgstr "URL Richiesta Amicizia" -#: ../../mod/crepair.php:170 +#: ../../mod/crepair.php:174 msgid "Friend Confirm URL" msgstr "URL Conferma Amicizia" -#: ../../mod/crepair.php:171 +#: ../../mod/crepair.php:175 msgid "Notification Endpoint URL" msgstr "URL Notifiche" -#: ../../mod/crepair.php:172 +#: ../../mod/crepair.php:176 msgid "Poll/Feed URL" msgstr "URL Feed" -#: ../../mod/crepair.php:173 +#: ../../mod/crepair.php:177 msgid "New photo from this URL" msgstr "Nuova foto da questo URL" -#: ../../mod/crepair.php:174 +#: ../../mod/crepair.php:178 msgid "Remote Self" msgstr "Io remoto" -#: ../../mod/crepair.php:176 +#: ../../mod/crepair.php:180 msgid "Mirror postings from this contact" msgstr "Ripeti i messaggi di questo contatto" -#: ../../mod/crepair.php:176 +#: ../../mod/crepair.php:180 msgid "" "Mark this contact as remote_self, this will cause friendica to repost new " "entries from this contact." @@ -7693,7 +7719,7 @@ msgstr "Scegli cosa vuoi fare al destinatario" msgid "Make this post private" msgstr "Rendi questo post privato" -#: ../../mod/display.php:496 +#: ../../mod/display.php:498 msgid "Item has been removed." msgstr "L'oggetto è stato rimosso." @@ -7738,47 +7764,47 @@ msgstr "Problema temporaneo. Attendi e riprova." msgid "Introduction failed or was revoked." msgstr "La presentazione ha generato un errore o è stata revocata." -#: ../../mod/dfrn_confirm.php:429 +#: ../../mod/dfrn_confirm.php:430 msgid "Unable to set contact photo." msgstr "Impossibile impostare la foto del contatto." -#: ../../mod/dfrn_confirm.php:571 +#: ../../mod/dfrn_confirm.php:572 #, php-format msgid "No user record found for '%s' " msgstr "Nessun utente trovato '%s'" -#: ../../mod/dfrn_confirm.php:581 +#: ../../mod/dfrn_confirm.php:582 msgid "Our site encryption key is apparently messed up." msgstr "La nostra chiave di criptazione del sito sembra essere corrotta." -#: ../../mod/dfrn_confirm.php:592 +#: ../../mod/dfrn_confirm.php:593 msgid "Empty site URL was provided or URL could not be decrypted by us." msgstr "E' stato fornito un indirizzo vuoto o non possiamo decrittare l'indirizzo." -#: ../../mod/dfrn_confirm.php:613 +#: ../../mod/dfrn_confirm.php:614 msgid "Contact record was not found for you on our site." msgstr "Il contatto non è stato trovato sul nostro sito." -#: ../../mod/dfrn_confirm.php:627 +#: ../../mod/dfrn_confirm.php:628 #, php-format msgid "Site public key not available in contact record for URL %s." msgstr "La chiave pubblica del sito non è disponibile per l'URL %s" -#: ../../mod/dfrn_confirm.php:647 +#: ../../mod/dfrn_confirm.php:648 msgid "" "The ID provided by your system is a duplicate on our system. It should work " "if you try again." msgstr "L'ID fornito dal tuo sistema è duplicato sul nostro sistema. Se riprovi dovrebbe funzionare." -#: ../../mod/dfrn_confirm.php:658 +#: ../../mod/dfrn_confirm.php:659 msgid "Unable to set your contact credentials on our system." msgstr "Impossibile impostare le credenziali del tuo contatto sul nostro sistema." -#: ../../mod/dfrn_confirm.php:725 +#: ../../mod/dfrn_confirm.php:726 msgid "Unable to update your contact profile details on our system" msgstr "Impossibile aggiornare i dettagli del tuo contatto sul nostro sistema" -#: ../../mod/dfrn_confirm.php:797 +#: ../../mod/dfrn_confirm.php:798 #, php-format msgid "%1$s has joined %2$s" msgstr "%1$s si è unito a %2$s" diff --git a/view/it/strings.php b/view/it/strings.php index e9909effd..6f82e7006 100644 --- a/view/it/strings.php +++ b/view/it/strings.php @@ -76,13 +76,6 @@ $a->strings["Page not found."] = "Pagina non trovata."; $a->strings["Permission denied"] = "Permesso negato"; $a->strings["Permission denied."] = "Permesso negato."; $a->strings["toggle mobile"] = "commuta tema mobile"; -$a->strings["Do you wish to confirm your identity (%s) with %s"] = ""; -$a->strings["Confirm"] = "Conferma"; -$a->strings["Do not confirm"] = ""; -$a->strings["Trust This Site"] = ""; -$a->strings["No Identifier Sent"] = ""; -$a->strings["Requested identity don't match logged in user."] = ""; -$a->strings["Please wait; you are being redirected to <%s>"] = ""; $a->strings["Delete this item?"] = "Cancellare questo elemento?"; $a->strings["Comment"] = "Commento"; $a->strings["show more"] = "mostra di più"; @@ -194,6 +187,7 @@ $a->strings["edit"] = "modifica"; $a->strings["Groups"] = "Gruppi"; $a->strings["Edit group"] = "Modifica gruppo"; $a->strings["Create a new group"] = "Crea un nuovo gruppo"; +$a->strings["Group Name: "] = "Nome del gruppo:"; $a->strings["Contacts not in any group"] = "Contatti in nessun gruppo."; $a->strings["add"] = "aggiungi"; $a->strings["Wall Photos"] = "Foto della bacheca"; @@ -739,7 +733,6 @@ $a->strings["Group not found."] = "Gruppo non trovato."; $a->strings["Group name changed."] = "Il nome del gruppo è cambiato."; $a->strings["Save Group"] = "Salva gruppo"; $a->strings["Create a group of contacts/friends."] = "Crea un gruppo di amici/contatti."; -$a->strings["Group Name: "] = "Nome del gruppo:"; $a->strings["Group removed."] = "Gruppo rimosso."; $a->strings["Unable to remove group."] = "Impossibile rimuovere il gruppo."; $a->strings["Group Editor"] = "Modifica gruppo"; @@ -753,7 +746,7 @@ $a->strings["Existing Page Delegates"] = "Delegati Pagina Esistenti"; $a->strings["Potential Delegates"] = "Delegati Potenziali"; $a->strings["Remove"] = "Rimuovi"; $a->strings["Add"] = "Aggiungi"; -$a->strings["No entries."] = "Nessun articolo."; +$a->strings["No entries."] = "Nessuna voce."; $a->strings["Invalid request identifier."] = "L'identificativo della richiesta non è valido."; $a->strings["Discard"] = "Scarta"; $a->strings["Ignore"] = "Ignora"; @@ -838,6 +831,9 @@ $a->strings["Plugin Settings"] = "Impostazioni plugin"; $a->strings["Off"] = "Spento"; $a->strings["On"] = "Acceso"; $a->strings["Additional Features"] = "Funzionalità aggiuntive"; +$a->strings["General Social Media Settings"] = "Impostazioni Media Sociali"; +$a->strings["Disable intelligent shortening"] = "Disabilita accorciamento intelligente"; +$a->strings["Normally the system tries to find the best link to add to shortened posts. If this option is enabled then every shortened post will always point to the original friendica post."] = "Normalmente il sistema tenta di trovare il migliore link da aggiungere a un post accorciato. Se questa opzione è abilitata, ogni post accorciato conterrà sempre un link al post originale su Friendica."; $a->strings["Built-in support for %s connectivity is %s"] = "Il supporto integrato per la connettività con %s è %s"; $a->strings["enabled"] = "abilitato"; $a->strings["disabled"] = "disabilitato"; @@ -944,6 +940,9 @@ $a->strings["You receive a private message"] = "Ricevi un messaggio privato"; $a->strings["You receive a friend suggestion"] = "Hai ricevuto un suggerimento di amicizia"; $a->strings["You are tagged in a post"] = "Sei stato taggato in un post"; $a->strings["You are poked/prodded/etc. in a post"] = "Sei 'toccato'/'spronato'/ecc. in un post"; +$a->strings["Activate desktop notifications"] = ""; +$a->strings["Note: This is an experimental feature, as being not supported by each browser"] = ""; +$a->strings["You will now receive desktop notifications!"] = ""; $a->strings["Text-only notification emails"] = "Email di notifica in solo testo"; $a->strings["Send text only notification emails, without the html part"] = "Invia le email di notifica in solo testo, senza la parte in html"; $a->strings["Advanced Account/Page Type Settings"] = "Impostazioni avanzate Account/Tipo di pagina"; @@ -1108,6 +1107,7 @@ $a->strings["Invalid profile URL."] = "Indirizzo profilo non valido."; $a->strings["Your introduction has been sent."] = "La tua presentazione è stata inviata."; $a->strings["Please login to confirm introduction."] = "Accedi per confermare la presentazione."; $a->strings["Incorrect identity currently logged in. Please login to this profile."] = "Non hai fatto accesso con l'identità corretta. Accedi a questo profilo."; +$a->strings["Confirm"] = "Conferma"; $a->strings["Hide this contact"] = "Nascondi questo contatto"; $a->strings["Welcome home %s."] = "Bentornato a casa %s."; $a->strings["Please confirm your introduction/connection request to %s."] = "Conferma la tua richiesta di connessione con %s."; @@ -1269,6 +1269,8 @@ $a->strings["Poll interval"] = "Intervallo di poll"; $a->strings["Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval."] = "Ritarda il processo di poll in background di n secondi per ridurre il carico di sistema. Se 0, usa l'intervallo di invio."; $a->strings["Maximum Load Average"] = "Massimo carico medio"; $a->strings["Maximum system load before delivery and poll processes are deferred - default 50."] = "Massimo carico di sistema prima che i processi di invio e di poll siano ritardati. Predefinito a 50."; +$a->strings["Maximum Load Average (Frontend)"] = "Media Massimo Carico (Frontend)"; +$a->strings["Maximum system load before the frontend quits service - default 50."] = "Massimo carico di sistema prima che il frontend fermi il servizio - default 50."; $a->strings["Use MySQL full text engine"] = "Usa il motore MySQL full text"; $a->strings["Activates the full text engine. Speeds up search - but can only search for four and more characters."] = "Attiva il motore full text. Velocizza la ricerca, ma puo' cercare solo per quattro o più caratteri."; $a->strings["Suppress Language"] = "Disattiva lingua"; @@ -1440,6 +1442,7 @@ $a->strings["Private photo"] = "Foto privata"; $a->strings["Public photo"] = "Foto pubblica"; $a->strings["Recent Photos"] = "Foto recenti"; $a->strings["The post was created"] = "Il messaggio è stato creato"; +$a->strings["You already added this contact."] = "Hai già aggiunto questo contatto."; $a->strings["Contact added"] = "Contatto aggiunto"; $a->strings["Move account"] = "Muovi account"; $a->strings["You can import an account from another Friendica server."] = "Puoi importare un account da un altro server Friendica."; @@ -1498,6 +1501,7 @@ $a->strings["bb2dia2bb: "] = "bb2dia2bb: "; $a->strings["bb2md2html2bb: "] = "bb2md2html2bb: "; $a->strings["Source input (Diaspora format): "] = "Sorgente (formato Diaspora):"; $a->strings["diaspora2bb: "] = "diaspora2bb: "; +$a->strings["Not Extended"] = "Not Extended"; $a->strings["Tag removed"] = "Tag rimosso"; $a->strings["Remove Item Tag"] = "Rimuovi il tag"; $a->strings["Select a tag to remove: "] = "Seleziona un tag da rimuovere: "; @@ -1704,6 +1708,7 @@ $a->strings["Return to contact editor"] = "Ritorna alla modifica contatto"; $a->strings["No mirroring"] = "Non duplicare"; $a->strings["Mirror as forwarded posting"] = "Duplica come messaggi ricondivisi"; $a->strings["Mirror as my own posting"] = "Duplica come miei messaggi"; +$a->strings["Refetch contact data"] = "Ricarica dati contatto"; $a->strings["Account Nickname"] = "Nome utente"; $a->strings["@Tagname - overrides Name/Nickname"] = "@TagName - al posto del nome utente"; $a->strings["Account URL"] = "URL dell'utente";