mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-02-27 15:42:08 +01:00
merge from trunk(revision 23607:23739) to 1.4 branch
This commit is contained in:
commit
efb5498561
@ -236,7 +236,7 @@ class bocontacts extends socontacts
|
||||
if (is_null($type)) $type = $contact['fileas_type'];
|
||||
if (!$type) $type = $this->fileas_types[0];
|
||||
|
||||
if (strstr($type,'n_fn')) $contact['n_fn'] = $this->fullname($contact);
|
||||
if (strpos($type,'n_fn') !== false) $contact['n_fn'] = $this->fullname($contact);
|
||||
|
||||
$fileas = str_replace(array('n_prefix','n_given','n_middle','n_family','n_suffix','n_fn','org_name','org_unit','adr_one_locality'),
|
||||
array($contact['n_prefix'],$contact['n_given'],$contact['n_middle'],$contact['n_family'],$contact['n_suffix'],
|
||||
@ -978,7 +978,7 @@ class bocontacts extends socontacts
|
||||
*/
|
||||
function delete_list($list)
|
||||
{
|
||||
if (!$this->ceck_list($list,EGW_ACL_DELETE)) return false;
|
||||
if (!$this->check_list($list,EGW_ACL_DELETE)) return false;
|
||||
|
||||
return parent::delete_list($list);
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ class csv_export
|
||||
foreach($fields as $field => $label)
|
||||
{
|
||||
$value = $data[$field];
|
||||
if (strstr($value,$this->separator) !== false || strstr($value,"\n") !== false || strstr($value,"\r") !== false)
|
||||
if (strpos($value,$this->separator) !== false || strpos($value,"\n") !== false || strpos($value,"\r") !== false)
|
||||
{
|
||||
$value = '"'.str_replace(array('\\','"'),array('\\\\','\\"'),$value).'"';
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ class export_contacts_csv implements iface_export_plugin {
|
||||
* @return string descriprion
|
||||
*/
|
||||
public static function get_description() {
|
||||
return lang("Exports contacts from your Addressbook into a CSV File. CSV means 'Comma Seperated Values'. However in the options Tab you can also choose other seperators.");
|
||||
return lang("Exports contacts from your Addressbook into a CSV File. CSV means 'Comma Seperated Values'. However in the options Tab you can also choose other seperators.");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -530,7 +530,7 @@ class uicontacts extends bocontacts
|
||||
case 'email':
|
||||
case 'email_home':
|
||||
$action_msg = lang('%1 added',$action=='email'?lang('Business email') : lang('Home email'));
|
||||
if (($Ok = !!($contact = $this->read($id)) && strstr($contact[$action],'@')))
|
||||
if (($Ok = !!($contact = $this->read($id)) && strpos($contact[$action],'@') !== false))
|
||||
{
|
||||
if(!@is_object($GLOBALS['egw']->js)) $GLOBALS['egw']->js =& CreateObject('phpgwapi.javascript');
|
||||
|
||||
@ -1045,6 +1045,7 @@ class uicontacts extends bocontacts
|
||||
$content['upload_photo']['tmp_name'] != 'none')
|
||||
{
|
||||
$content['jpegphoto'] = $this->resize_photo($content['upload_photo']);
|
||||
unset($content['upload_photo']);
|
||||
}
|
||||
$links = false;
|
||||
if (!$content['id'] && is_array($content['link_to']['to_id']))
|
||||
@ -1449,7 +1450,7 @@ $readonlys['button[vcard]'] = true;
|
||||
*/
|
||||
function email2link($email)
|
||||
{
|
||||
if (!strstr($email,'@')) return '';
|
||||
if (strpos($email,'@') == false) return '';
|
||||
|
||||
if($GLOBALS['egw_info']['user']['apps']['felamimail'])
|
||||
{
|
||||
|
@ -120,7 +120,7 @@ edit custom field addressbook de Benutzerdefiniertes Feld bearbeiten
|
||||
edit custom fields admin de Benutzerdefinierte Felder bearbeiten
|
||||
edit extra account-data in the addressbook admin de Zusätzliche Benutzerdaten im Adressbuch bearbeiten.
|
||||
edit phonenumbers - addressbook de Telefonnummern bearbeiten
|
||||
email & internet addressbook de Email & Internet
|
||||
email & internet addressbook de E-Mail & Internet
|
||||
empty for all addressbook de leer für alle
|
||||
enable an extra private addressbook addressbook de Privates Adressbuch einschalten
|
||||
enter the path to the exported file here addressbook de Bitte geben Sie den Pfad für die exportierte Datei an
|
||||
@ -135,7 +135,7 @@ export file name addressbook de Dateiname zum Exportieren
|
||||
export from addressbook addressbook de Export vom Adressbuch
|
||||
export selection addressbook de Auswahl exportieren
|
||||
exported addressbook de exportiert
|
||||
exports contacts from your addressbook into a csv file. csv means 'comma seperated values'. however in the options tab you can also choose other seperators. addressbook de Exportiert Kontakte vom Adressbuch in eine CSV Datei. CSV bedeutet 'Komma getrennte Werte'. Im Optionen Reiter können Sie aber auch ein anderes Trennzeichen wählen.
|
||||
exports contacts from your addressbook into a csv file. csv means 'comma seperated values'. however in the options tab you can also choose other seperators. addressbook de Exportiert Kontakte vom Adressbuch in eine CSV Datei. CSV bedeutet 'Komma getrennte Werte'. Im Optionen Reiter können Sie aber auch ein anderes Trennzeichen wählen.
|
||||
extra addressbook de Extra
|
||||
failed to change %1 organisation member(s) (insufficent rights) !!! addressbook de %1 Mitglied(er) der Organisation nicht geändert (fehlende Rechte) !!!
|
||||
fax addressbook de Telefax
|
||||
|
@ -135,7 +135,7 @@ export file name addressbook en Export file name
|
||||
export from addressbook addressbook en Export from Addressbook
|
||||
export selection addressbook en Export selection
|
||||
exported addressbook en exported
|
||||
exports contacts from your addressbook into a csv file. csv means 'comma seperated values'. however in the options tab you can also choose other seperators. addressbook en Exports contacts from your Addressbook into a CSV File. CSV means 'Comma Seperated Values'. However in the options Tab you can also choose other seperators.
|
||||
exports contacts from your addressbook into a csv file. csv means 'comma seperated values'. however in the options tab you can also choose other seperators. addressbook en Exports contacts from your Addressbook into a CSV File. CSV means 'Comma Seperated Values'. However in the options Tab you can also choose other seperators.
|
||||
extra addressbook en Extra
|
||||
failed to change %1 organisation member(s) (insufficent rights) !!! addressbook en failed to change %1 organisation member(s) (insufficent rights) !!!
|
||||
fax addressbook en Fax
|
||||
|
@ -10,7 +10,7 @@
|
||||
/* Basic information about this app */
|
||||
$setup_info['addressbook']['name'] = 'addressbook';
|
||||
$setup_info['addressbook']['title'] = 'Addressbook';
|
||||
$setup_info['addressbook']['version'] = '1.3.002';
|
||||
$setup_info['addressbook']['version'] = '1.4';
|
||||
$setup_info['addressbook']['app_order'] = 4;
|
||||
$setup_info['addressbook']['enable'] = 1;
|
||||
|
||||
@ -44,11 +44,11 @@ $setup_info['addressbook']['hooks'][] = 'config';
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['addressbook']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.3','1.4')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['addressbook']['depends'][] = array(
|
||||
'appname' => 'etemplate',
|
||||
'versions' => Array('1.2','1.3','1.4')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
|
||||
// installation checks for addresbook
|
||||
|
@ -27,12 +27,13 @@ else
|
||||
{
|
||||
$action = '--help';
|
||||
}
|
||||
|
||||
// this is kind of a hack, as the autocreate_session_callback can not change the type of the loaded account-class
|
||||
// so we need to make sure the right one is loaded by setting the domain before the header gets included.
|
||||
$arg0s = explode(',',@$arguments[0]);
|
||||
@list(,$_GET['domain']) = explode('@',$arg0s[0]);
|
||||
|
||||
if (is_dir('/tmp')) ini_set('session.save_path','/tmp'); // regular users may have no rights to apache's session dir
|
||||
|
||||
$GLOBALS['egw_info'] = array(
|
||||
'flags' => array(
|
||||
'currentapp' => 'admin',
|
||||
@ -47,6 +48,9 @@ switch($action)
|
||||
{
|
||||
case '--delete-user':
|
||||
return do_delete_user($arg0s[2],$arg0s[3]);
|
||||
|
||||
case '--change-account-id':
|
||||
return do_change_account_id($arg0s);
|
||||
|
||||
default:
|
||||
usage($action);
|
||||
@ -94,6 +98,8 @@ function usage($action=null,$ret=0)
|
||||
|
||||
echo "--delete-user admin-account[@domain],admin-password,account-to-delete[,account-to-move-data]\n";
|
||||
echo " Deletes a user from eGroupWare. It's data can be moved to an other user or it get deleted too.\n";
|
||||
echo "--change-account-id admin-account[@domain],admin-password,from1,to1[...,fromN,toN]\n";
|
||||
echo " Changes one or more account_id's in the database (make a backup before!).\n";
|
||||
exit;
|
||||
}
|
||||
|
||||
@ -139,3 +145,254 @@ function do_delete_user($user,$new_user=0)
|
||||
echo "Account '$user' deleted.\n";
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
function do_change_account_id($args)
|
||||
{
|
||||
/**
|
||||
* App-, Table- and column-names containing nummeric account-id's
|
||||
* @var array
|
||||
*/
|
||||
$columns2change = array(
|
||||
'phpgwapi' => array(
|
||||
'egw_access_log' => 'account_id',
|
||||
'egw_accounts' => array(array('account_id','.type'=>'abs'),'account_primary_group'),
|
||||
'egw_acl' => array('acl_account','acl_location'),
|
||||
'egw_addressbook' => array('contact_owner','contact_creator','contact_modifier','account_id'),
|
||||
'egw_addressbook2list' => array('list_added_by'),
|
||||
'egw_addressbook_extra' => 'contact_owner',
|
||||
'egw_addressbook_lists' => array('list_owner','list_creator'),
|
||||
'egw_api_content_history' => 'sync_changedby',
|
||||
'egw_applications' => false,
|
||||
'egw_app_sessions' => 'loginid',
|
||||
'egw_async' => 'async_account_id',
|
||||
'egw_categories' => array(array('cat_owner','cat_owner > 0')), // -1 are global cats, not cats from group 1!
|
||||
'egw_config' => false,
|
||||
'egw_history_log' => 'history_owner',
|
||||
'egw_hooks' => false,
|
||||
'egw_interserv' => false,
|
||||
'egw_lang' => false,
|
||||
'egw_languages' => false,
|
||||
'egw_links' => 'link_owner',
|
||||
'egw_log' => 'log_user',
|
||||
'egw_log_msg' => false,
|
||||
'egw_nextid' => false,
|
||||
'egw_preferences' => array(array('preference_owner','preference_owner > 0')),
|
||||
'egw_sessions' => false, // only account_lid stored
|
||||
'egw_vfs' => array('vfs_owner_id','vfs_createdby_id','vfs_modifiedby_id'), // 'vfs_directory' contains account_lid for /home/account
|
||||
),
|
||||
'etemplate' => array(
|
||||
'egw_etemplate' => 'et_group',
|
||||
),
|
||||
'bookmarks' => array(
|
||||
'egw_bookmarks' => 'bm_owner',
|
||||
),
|
||||
'calendar' => array(
|
||||
'egw_cal' => array('cal_owner','cal_modifier'),
|
||||
'egw_cal_dates' => false,
|
||||
'egw_cal_extra' => false,
|
||||
'egw_cal_holidays' => false,
|
||||
'egw_cal_repeats' => false,
|
||||
'egw_cal_user' => array(array('cal_user_id','cal_user_type' => 'u')), // cal_user_id for cal_user_type='u'
|
||||
),
|
||||
'emailadmin' => array(
|
||||
'egw_emailadmin' => false,
|
||||
),
|
||||
'felamimail' => array(
|
||||
'egw_felamimail_accounts' => 'fm_owner',
|
||||
'egw_felamimail_cache' => 'fmail_accountid', // afaik not used in 1.4+
|
||||
'egw_felamimail_displayfilter' => 'fmail_filter_accountid',
|
||||
'egw_felamimail_folderstatus' => 'fmail_accountid', // afaik not used in 1.4+
|
||||
'egw_felamimail_signatures' => 'fm_accountid',
|
||||
),
|
||||
'infolog' => array(
|
||||
'egw_infolog' => array('info_owner',array('info_responsible','.type' => 'comma-sep'),'info_modifier'),
|
||||
'egw_infolog_extra' => false,
|
||||
),
|
||||
'news_admin' => array(
|
||||
'egw_news' => 'news_submittedby',
|
||||
'egw_news_export' => false,
|
||||
),
|
||||
'projectmanager' => array(
|
||||
'egw_pm_constraints' => false,
|
||||
'egw_pm_elements' => array('pe_modifier',array('pe_resources','.type' => 'comma-sep')),
|
||||
'egw_pm_extra' => false,
|
||||
'egw_pm_members' => 'member_uid',
|
||||
'egw_pm_milestones' => false,
|
||||
'egw_pm_pricelist' => false,
|
||||
'egw_pm_prices' => 'pl_modifier',
|
||||
'egw_pm_projects' => array('pm_creator','pm_modifier'),
|
||||
'egw_pm_roles' => false,
|
||||
),
|
||||
'registration' => array(
|
||||
'egw_reg_accounts' => false,
|
||||
'egw_reg_fields' => false,
|
||||
),
|
||||
'resources' => array(
|
||||
'egw_resources' => false,
|
||||
'egw_resources_extra'=> 'extra_owner',
|
||||
),
|
||||
'sitemgr' => array(
|
||||
'egw_sitemgr_active_modules' => false,
|
||||
'egw_sitemgr_blocks' => false,
|
||||
'egw_sitemgr_blocks_lang' => false,
|
||||
'egw_sitemgr_categories_lang' => false,
|
||||
'egw_sitemgr_categories_state' => false,
|
||||
'egw_sitemgr_content' => false,
|
||||
'egw_sitemgr_content_lang' => false,
|
||||
'egw_sitemgr_modules' => false,
|
||||
'egw_sitemgr_notifications' => false,
|
||||
'egw_sitemgr_notify_messages' => false,
|
||||
'egw_sitemgr_pages' => false,
|
||||
'egw_sitemgr_pages_lang' => false,
|
||||
'egw_sitemgr_properties' => false,
|
||||
'egw_sitemgr_sites' => false,
|
||||
),
|
||||
'syncml' => array(
|
||||
'egw_contentmap' => false,
|
||||
'egw_syncmldeviceowner' => false, // Lars: is owner_devid a account_id???
|
||||
'egw_syncmldevinfo' => false,
|
||||
'egw_syncmlsummary' => false,
|
||||
),
|
||||
'tracker' => array(
|
||||
'egw_tracker' => array('tr_assigned','tr_creator','tr_modifier'),
|
||||
'egw_tracker_bounties' => array('bounty_creator','bounty_confirmer'),
|
||||
'egw_tracker_replies' => array('reply_creator'),
|
||||
'egw_tracker_votes' => array('vote_uid'),
|
||||
),
|
||||
'timesheet' => array(
|
||||
'egw_timesheet' => array('ts_owner','ts_modifier'),
|
||||
'egw_timesheet_extra'=> false,
|
||||
),
|
||||
'wiki' => array(
|
||||
'egw_wiki_interwiki' => false,
|
||||
'egw_wiki_links' => false,
|
||||
'egw_wiki_pages' => array(array('wiki_readable','wiki_readable < 0'),array('wiki_writable','wiki_writable < 0')), // only groups
|
||||
'egw_wiki_rate' => false,
|
||||
'egw_wiki_remote_pages' => false,
|
||||
'egw_wiki_sisterwiki'=> false,
|
||||
),
|
||||
'phpbrain' => array( // aka knowledgebase
|
||||
'phpgw_kb_articles' => array('user_id','modified_user_id'),
|
||||
'phpgw_kb_comment' => 'user_id',
|
||||
'phpgw_kb_files' => false,
|
||||
'phpgw_kb_questions' => 'user_id',
|
||||
'phpgw_kb_ratings' => 'user_id',
|
||||
'phpgw_kb_related_art' => false,
|
||||
'phpgw_kb_search' => false,
|
||||
'phpgw_kb_urls' => false,
|
||||
),
|
||||
'polls' => array(
|
||||
'phpgw_polls_data' => false,
|
||||
'phpgw_polls_desc' => false,
|
||||
'phpgw_polls_settings' => false,
|
||||
'phpgw_polls_user' => 'user_id',
|
||||
),
|
||||
// MyDMS ToDo!!!
|
||||
// VFS2 ToDo!!!
|
||||
);
|
||||
|
||||
if (count($args) < 4) usage(); // 4 means at least user,pw,from1,to1
|
||||
|
||||
$ids2change = array();
|
||||
for($n = 2; $n < count($args); $n += 2)
|
||||
{
|
||||
$from = (int)$args[$n];
|
||||
$to = (int)$args[$n+1];
|
||||
if (!$from || !$to) die("\nAccount-id's have to be integers!\n\n");
|
||||
$ids2change[$from] = $to;
|
||||
}
|
||||
$total = 0;
|
||||
foreach($columns2change as $app => $data)
|
||||
{
|
||||
$db = clone($GLOBALS['egw']->db);
|
||||
$db->set_app($app);
|
||||
|
||||
foreach($data as $table => $columns)
|
||||
{
|
||||
if (!$columns)
|
||||
{
|
||||
echo "$app: $table no columns with account-id's\n";
|
||||
continue; // noting to do for this table
|
||||
}
|
||||
if (!is_array($columns)) $columns = array($columns);
|
||||
|
||||
foreach($columns as $column)
|
||||
{
|
||||
$type = $where = null;
|
||||
if (is_array($column))
|
||||
{
|
||||
$type = $column['.type'];
|
||||
unset($column['.type']);
|
||||
$where = $column;
|
||||
$column = array_shift($where);
|
||||
}
|
||||
$total += ($changed = _update_account_id($ids2change,$db,$table,$column,$where,$type));
|
||||
echo "$app: $table.$column $changed id's changed\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
echo "\nTotal of $total id's changed.\n\n";
|
||||
}
|
||||
|
||||
function _update_account_id($ids2change,$db,$table,$column,$where=null,$type=null)
|
||||
{
|
||||
static $update_sql;
|
||||
|
||||
if (is_null($update_sql))
|
||||
{
|
||||
foreach($ids2change as $from => $to)
|
||||
{
|
||||
$update_sql .= "WHEN $from THEN $to ";
|
||||
}
|
||||
$update_sql .= "END";
|
||||
}
|
||||
switch($type)
|
||||
{
|
||||
case 'comma-sep':
|
||||
if (!$where) $where = array();
|
||||
$where[] = "$column IS NOT NULL";
|
||||
$where[] = "$column != ''";
|
||||
$db->select($table,'DISTINCT '.$column,$where,__LINE__,__FILE__);
|
||||
$change = array();
|
||||
while(($row = $db->row(true)))
|
||||
{
|
||||
$ids = explode(',',$old_ids=$row[$column]);
|
||||
foreach($ids as $key => $id)
|
||||
{
|
||||
if (isset($account_id2change[$id])) $ids[$key] = $account_id2change[$id];
|
||||
}
|
||||
$ids = implode(',',$ids);
|
||||
if ($ids != $old_ids)
|
||||
{
|
||||
$change[$old_ids] = $ids;
|
||||
}
|
||||
}
|
||||
$changed = 0;
|
||||
foreach($change as $from => $to)
|
||||
{
|
||||
$db->update($table,array($column=>$to),$where+array($column=>$from),__LINE__,__FILE__);
|
||||
$changed += $db->affected_rows();
|
||||
}
|
||||
break;
|
||||
|
||||
case 'abs':
|
||||
if (!$where) $where = array();
|
||||
$where[$column] = array();
|
||||
foreach(array_keys($ids2change) as $id)
|
||||
{
|
||||
$where[$column][] = abs($id);
|
||||
}
|
||||
$db->update($table,$column.'= CASE '.$column.' '.preg_replace('/-([0-9]+)/','\1',$update_sql),$where,__LINE__,__FILE__);
|
||||
$changed = $db->affected_rows();
|
||||
break;
|
||||
|
||||
default:
|
||||
if (!$where) $where = array();
|
||||
$where[$column] = array_keys($ids2change);
|
||||
$db->update($table,$column.'= CASE '.$column.' '.$update_sql,$where,__LINE__,__FILE__);
|
||||
$changed = $db->affected_rows();
|
||||
break;
|
||||
}
|
||||
return $changed;
|
||||
}
|
||||
|
@ -49,14 +49,14 @@
|
||||
// delete all acl (and memberships) of group
|
||||
$GLOBALS['egw']->acl->delete_account($account_id);
|
||||
|
||||
if(!@rmdir($GLOBALS['egw_info']['server']['files_dir'].SEP.'groups'.SEP.$GLOBALS['egw']->accounts->id2name($account_id)))
|
||||
{
|
||||
$cd = 38;
|
||||
}
|
||||
else
|
||||
{
|
||||
$cd = 32;
|
||||
}
|
||||
// make this information also available in the hook
|
||||
$lid = $GLOBALS['egw']->accounts->id2name($account_id);
|
||||
|
||||
$GLOBALS['egw']->hooks->process($GLOBALS['hook_values'] = array(
|
||||
'account_id' => $account_id,
|
||||
'account_name' => $lid,
|
||||
'location' => 'deletegroup'
|
||||
),False,True); // called for every app now, not only enabled ones)
|
||||
|
||||
$GLOBALS['egw']->accounts->delete($account_id);
|
||||
|
||||
@ -86,18 +86,6 @@
|
||||
{
|
||||
$GLOBALS['egw']->hooks->single($GLOBALS['hook_values'],$app);
|
||||
}
|
||||
|
||||
$basedir = $GLOBALS['egw_info']['server']['files_dir'] . SEP . 'users' . SEP;
|
||||
|
||||
if(!@rmdir($basedir . $lid))
|
||||
{
|
||||
$cd = 34;
|
||||
}
|
||||
else
|
||||
{
|
||||
$cd = 29;
|
||||
}
|
||||
|
||||
return True;
|
||||
}
|
||||
|
||||
@ -145,13 +133,11 @@
|
||||
}
|
||||
$apps->save_repository();
|
||||
|
||||
$basedir = $GLOBALS['egw_info']['server']['files_dir'] . SEP . 'groups' . SEP;
|
||||
$cd = 31;
|
||||
umask(000);
|
||||
if(!@mkdir($basedir . $group_info['account_name'], 0707))
|
||||
{
|
||||
$cd = 37;
|
||||
}
|
||||
$GLOBALS['hook_values'] = $group_info;
|
||||
$GLOBALS['egw']->hooks->process($GLOBALS['hook_values']+array(
|
||||
'location' => 'addgroup'
|
||||
),False,True); // called for every app now, not only enabled ones)
|
||||
|
||||
return True;
|
||||
}
|
||||
|
||||
@ -250,35 +236,16 @@
|
||||
}
|
||||
$apps->save_repository();
|
||||
|
||||
// Set new account_lid, if needed
|
||||
if($group_info['account_name'] && $old_group_info['account_lid'] <> $group_info['account_name'])
|
||||
{
|
||||
$group->data['account_lid'] = $group_info['account_name'];
|
||||
$group->data['firstname'] = $group_info['account_name'];
|
||||
|
||||
$basedir = $GLOBALS['egw_info']['server']['files_dir'] . SEP . 'groups' . SEP;
|
||||
if(!@rename($basedir . $old_group_info['account_lid'], $basedir . $group_info['account_name']))
|
||||
{
|
||||
$cd = 39;
|
||||
}
|
||||
else
|
||||
{
|
||||
$cd = 33;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$cd = 33;
|
||||
}
|
||||
|
||||
$group->set_members($group_info['account_user'],$group_info['account_id']);
|
||||
|
||||
$GLOBALS['hook_values'] = $group_info;
|
||||
$GLOBALS['hook_values']['old_name'] = $group->id2name($group_info['account_id']);
|
||||
|
||||
// This is down here so we are sure to catch the acl changes
|
||||
// for LDAP to update the memberuid attribute
|
||||
$group->data['account_email'] = $group_info['account_email'];
|
||||
$group->save_repository();
|
||||
|
||||
$GLOBALS['hook_values'] = $group_info;
|
||||
$GLOBALS['egw']->hooks->process($GLOBALS['hook_values']+array(
|
||||
'location' => 'editgroup'
|
||||
),False,True); // called for every app now, not only enabled ones)
|
||||
|
@ -890,7 +890,8 @@
|
||||
$jscal =& CreateObject('phpgwapi.jscalendar',False);
|
||||
$userData += $jscal->input2date($_POST['expires'],False,'account_expires_day','account_expires_month','account_expires_year');
|
||||
}
|
||||
$errors = $this->bo->add_user($userData);
|
||||
$errors = $this->bo->edit_user($userData);
|
||||
|
||||
if(!@is_array($errors))
|
||||
{
|
||||
// check if would create a menu
|
||||
@ -898,14 +899,9 @@
|
||||
// there are also some other plugins
|
||||
if(!ExecMethod('admin.uimenuclass.createHTMLCode','edit_user'))
|
||||
{
|
||||
if($userData['account_id'] == $GLOBALS['egw_info']['user']['account_id'])
|
||||
{
|
||||
$GLOBALS['egw']->redirect_link('/index.php',array( // without redirect changes happen only in the next page-view!
|
||||
'menuaction' => 'admin.uiaccounts.list_users'
|
||||
));
|
||||
}
|
||||
// ExecMethod('admin.uiaccounts.list_users');
|
||||
//return False;
|
||||
$GLOBALS['egw']->redirect_link('/index.php',array( // without redirect changes happen only in the next page-view!
|
||||
'menuaction' => 'admin.uiaccounts.list_users'
|
||||
));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -916,8 +912,8 @@
|
||||
'account_id' => $_GET['account_id']
|
||||
));
|
||||
}
|
||||
$this->create_edit_user($userData['account_id']);
|
||||
}
|
||||
// $GLOBALS['egw']->redirect($GLOBALS['egw']->link('/index.php','menuaction=admin.uiaccounts.list_users'));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -41,11 +41,11 @@ admins admin de Administatoren
|
||||
advanced options admin de erweiterte Optionen
|
||||
after how many unsuccessful attempts to login, an account should be blocked (default 3) ? admin de Nach wievielen erfolglosen Versuchen sich anzumelden, soll ein Benutzerkonto gesperrt werden (Vorgabe 3)?
|
||||
after how many unsuccessful attempts to login, an ip should be blocked (default 3) ? admin de Nach wievielen erfolglosen Versuchen sich anzumelden soll eine IP-Adresse gesperrt werden (Vorgabe 3)?
|
||||
aliases admin de Email-Alias
|
||||
aliases admin de E-Mail-Alias
|
||||
all records and account information will be lost! admin de Alle Datensätze und Kontoinformationen sind dann verloren!
|
||||
all users admin de Alle Benutzer
|
||||
allow anonymous access to this app admin de Anonymen Zugriff auf diese Anwendung zulassen
|
||||
alternate email address admin de Alternative Emailadresse
|
||||
alternate email address admin de Alternative E-Mail-Adresse
|
||||
anonymous user admin de Anonymer Benutzer
|
||||
anonymous user (not shown in list sessions) admin de Anonymer Benutzer (wird bei Sitzungen anzeigen nicht angezeigt)
|
||||
anonymous user does not exist! admin de Anonymer Benutzer existiert NICHT!
|
||||
@ -70,7 +70,7 @@ asynchronous timed services admin de Asynchroner zeitgesteuerter Dienst
|
||||
asyncservices not yet installed or other error (%1) !!! admin de Asynchroner Dienst is noch nicht installiert oder ein anderer Fehler ist aufgetreten (%1) !!!
|
||||
attempt to use correct mimetype for ftp instead of default 'application/octet-stream' admin de Soll versucht werden den richtigen MINE-typ für FTP zu verwenden, statt dem Vorgabewert "application/octet-stream"
|
||||
attribute accountstatus explained admin de Dies betrifft das Attribut <b>-accountStatus-</b> aus dem QMAIL Schema
|
||||
attribute mail explained admin de Dies betrifft das Attribut <b><i>-mail-</i></b> aus dem CORE Schema. Dieses Attribut darf nicht leer sein und wird gleichzeitig als Emailadresse innerhalb eGW verwendet.
|
||||
attribute mail explained admin de Dies betrifft das Attribut <b><i>-mail-</i></b> aus dem CORE Schema. Dieses Attribut darf nicht leer sein und wird gleichzeitig als E-Mail-Adresse innerhalb eGW verwendet.
|
||||
attribute mailalternateaddress explained admin de Dies betrifft das Attribut <b>-mailAlternateAddress-</b> aus dem QMAIL Schema. Das experimentelle Schema verwendet dies auch als Alias für mailLocalAddress.
|
||||
attribute mailforwardingaddress explained admin de Dies betrifft das Attribut <b>-mailForwardingAddress-</b> aus dem QMAIL Schema. Darf nicht leer sein. Der Begriff mailRoutingAddress wurde hierfür früher als Alias verwendet.
|
||||
authentication / accounts admin de Benutzerauthentifizierung/Benutzerkonten
|
||||
@ -148,7 +148,7 @@ each value is a line like <id>[=<label>] admin de jeder Wert ist ein Zeile <id>[
|
||||
each value is a line like id[=label] admin de jeder Wert ist eine Zeile id[=label]
|
||||
edit account admin de Benutzerkonto bearbeiten
|
||||
edit application admin de Anwendung bearbeiten
|
||||
edit email settings admin de Email Einstellungen bearbeiten
|
||||
edit email settings admin de E-Mail-Einstellungen bearbeiten
|
||||
edit global category admin de Globale Kategorie bearbeiten
|
||||
edit global category for %1 admin de Globale Kategorie für %1 bearbeiten
|
||||
edit group admin de Gruppe bearbeiten
|
||||
@ -162,8 +162,8 @@ edit this group admin de Diese Gruppe bearbeiten
|
||||
edit this user admin de Diesen Benutzer bearbeiten
|
||||
edit user admin de Benutzer bearbeiten
|
||||
edit user account admin de Benutzerkonto bearbeiten
|
||||
email account active admin de Emailkonto aktiv
|
||||
email address admin de Email-Adresse
|
||||
email account active admin de E-Mail-Konto aktiv
|
||||
email address admin de E-Mail-Adresse
|
||||
enable debug-messages admin de Debug-Meldungen einschalten
|
||||
enable the soap service admin de soap Service einschalten
|
||||
enable the xmlrpc service admin de xmlrpc Service einschalten
|
||||
@ -185,7 +185,7 @@ enter the title of your logo admin de Titel Ihres Logos
|
||||
enter the url or filename (in phpgwapi/templates/default/images) of your logo admin de URL oder Dateiname (in phpgwapi/templates/default/images) Ihres Logos
|
||||
enter the url where your logo should link to admin de URL mit der das Logo verlinkt werden soll
|
||||
enter your default ftp server admin de Standard-FTP-Server
|
||||
enter your default mail domain ( from: user@domain ) admin de Standard EMail-Domain (Von: benutzer@domain)
|
||||
enter your default mail domain ( from: user@domain ) admin de Standard E-Mail-Domain (Von: benutzer@domain)
|
||||
enter your http proxy server admin de HTTP-Proxy-Server
|
||||
enter your http proxy server port admin de HTTP-Proxy-Server-Port
|
||||
enter your smtp server hostname or ip address admin de SMTP-Server Hostname oder IP-Adresse
|
||||
@ -205,7 +205,7 @@ for the times above admin de f
|
||||
for the times below (empty values count as '*', all empty = every minute) admin de für die darunter angegebenen Zeiten (leere Felder zählen als "*", alles leer = jede Minute)
|
||||
force selectbox admin de Auswahl erzwingen
|
||||
forward also to admin de Zusätzlich weiterleiten an
|
||||
forward emails to admin de Emails weiterleiten an
|
||||
forward emails to admin de E-Mails weiterleiten an
|
||||
forward only admin de Nur weiterleiten
|
||||
global categories common de Globale Kategorien
|
||||
group ? admin de Gruppe ?
|
||||
@ -221,7 +221,7 @@ host information admin de Host-Information
|
||||
hour<br>(0-23) admin de Stunde<br>(0-23)
|
||||
how many days should entries stay in the access log, before they get deleted (default 90) ? admin de Wie viele Tage sollen Einträge im Zugangsprotokoll bleiben, bevor sie gelöscht werden (Vorgabe 90)?
|
||||
how many minutes should an account or ip be blocked (default 30) ? admin de Wie viele Minuten soll ein Benutzerkonto oder eine IP gesperrt werden (Vorgabe 30)?
|
||||
how should email addresses for new users be constructed? admin de In welchem Format sollen EMail Adressen von neuen Benutzern erzeugt werden?
|
||||
how should email addresses for new users be constructed? admin de In welchem Format sollen E-Mail-Adressen von neuen Benutzern erzeugt werden?
|
||||
icon admin de Icon
|
||||
idle admin de im Leerlauf
|
||||
if no acl records for user or any group the user is a member of admin de Wenn es keinen ACL-Eintrag für einen Benutzer oder oder eine Gruppe der er angehört gibt
|
||||
@ -264,8 +264,8 @@ login screen admin de Login-Seite
|
||||
login shell admin de Login-Komandointerpreter (Login-Shell)
|
||||
login time admin de Login-Zeit
|
||||
loginid admin de Login-ID
|
||||
mail settings admin de EMail Einstellungen
|
||||
main email-address admin de Stamm-Emailadresse
|
||||
mail settings admin de E-Mail-Einstellungen
|
||||
main email-address admin de Stamm-E-Mail-Adresse
|
||||
main screen message admin de Nachricht der Startseite
|
||||
manager admin de Manager
|
||||
max length of the input [, length of the inputfield (optional)] admin de maximale länge für die Ausgabe [. länge des Feldes (optional)]
|
||||
|
@ -12,7 +12,7 @@
|
||||
/* $Id$ */
|
||||
|
||||
$setup_info['admin']['name'] = 'admin';
|
||||
$setup_info['admin']['version'] = '1.2';
|
||||
$setup_info['admin']['version'] = '1.4';
|
||||
$setup_info['admin']['app_order'] = 1;
|
||||
$setup_info['admin']['tables'] = '';
|
||||
$setup_info['admin']['enable'] = 1;
|
||||
@ -49,6 +49,10 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['admin']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['admin']['depends'][] = array(
|
||||
'appname' => 'etemplate',
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
?>
|
||||
|
@ -1,27 +1,66 @@
|
||||
charset iso-8859-1
|
||||
FR Jour de l'an 1 1 0 0 0
|
||||
FR Lundi de Pâques 24 3 2008 0 0
|
||||
FR Lundi de Pâques 28 3 2005 0 0
|
||||
FR Lundi de Pâques 9 4 2007 0 0
|
||||
FR Lundi de Pâques 12 4 2004 0 0
|
||||
FR Lundi de Pâques 17 4 2006 0 0
|
||||
FR Lundi de Pâques 21 4 2003 0 0
|
||||
FR Fête du travail 1 5 0 0 0
|
||||
FR Ascension 1 5 2008 0 0
|
||||
FR Ascension 5 5 2005 0 0
|
||||
FR Fête de la libération 8 5 0 0 0
|
||||
FR Lundi de Pentecôte 12 5 2008 0 0
|
||||
FR Lundi de Pentecôte 16 5 2005 0 0
|
||||
FR Ascension 17 5 2007 0 0
|
||||
FR Ascension 20 5 2004 0 0
|
||||
FR Ascension 25 5 2006 0 0
|
||||
FR Lundi de Pentecôte 28 5 2007 0 0
|
||||
FR Ascension 29 5 2003 0 0
|
||||
FR Lundi de Pentecôte 31 5 2004 0 0
|
||||
FR Lundi de Pentecôte 5 6 2006 0 0
|
||||
FR Lundi de Pentecôte 9 6 2003 0 0
|
||||
FR Fête nationale 14 7 0 0 0
|
||||
charset utf-8
|
||||
|
||||
regular (year=0):
|
||||
FR Premier de l'an 1 1 0 0 0
|
||||
FR Fête du travail 1 5 0 0 0
|
||||
FR Armistice 1945 8 5 0 0 0
|
||||
FR Fête Nationale 14 7 0 0 0
|
||||
FR Assomption 15 8 0 0 0
|
||||
FR Toussaint 1 11 0 0 0
|
||||
FR Armistice 11 11 0 0 0
|
||||
FR Noël 25 12 0 0 0
|
||||
FR Armistice 1918 11 11 0 0 0
|
||||
FR Noël 25 12 0 0 0
|
||||
|
||||
2007:
|
||||
FR Pâques 8 4 2007 0 0
|
||||
FR Lundi de Pâques 9 4 2007 0 0
|
||||
FR Ascension 17 5 2007 0 0
|
||||
FR Pentecôte 27 5 2007 0 0
|
||||
FR Lundi de Pentecôte 28 5 2007 0 0
|
||||
FR Fête des Mères 3 6 2007 0 0
|
||||
FR Fête des Pères 17 6 2007 0 0
|
||||
|
||||
2008:
|
||||
FR Pâques 23 3 2008 0 0
|
||||
FR Lundi de Pâques 24 3 2008 0 0
|
||||
FR Ascension 1 5 2008 0 0
|
||||
FR Pentecôte 11 5 2008 0 0
|
||||
FR Lundi de Pentecôte 12 5 2008 0 0
|
||||
FR Fête des Mères 25 5 2008 0 0
|
||||
FR Fête des Pères 15 6 2008 0 0
|
||||
|
||||
2009:
|
||||
FR Pâques 12 4 2009 0 0
|
||||
FR Lundi de Pâques 13 4 2009 0 0
|
||||
FR Ascension 21 5 2009 0 0
|
||||
FR Pentecôte 31 5 2009 0 0
|
||||
FR Lundi de Pentecôte 1 6 2009 0 0
|
||||
FR Fête des Mères 6 6 2009 0 0
|
||||
FR Fête des Pères 21 6 2009 0 0
|
||||
|
||||
2010:
|
||||
FR Assomption 4 4 2010 0 0
|
||||
FR Pâques 4 4 2010 0 0
|
||||
FR Ascension 13 5 2010 0 0
|
||||
FR Pentecôte 23 5 2010 0 0
|
||||
FR Lundi de Pentecôte 24 5 2010 0 0
|
||||
FR Fête des Mères 30 5 2010 0 0
|
||||
FR Fête des Pères 20 6 2010 0 0
|
||||
|
||||
2011:
|
||||
FR Lundi de Pâques 24 4 2011 0 0
|
||||
FR Pâques 24 4 2011 0 0
|
||||
FR Fête des Mères 29 5 2011 0 0
|
||||
FR Ascension 2 6 2011 0 0
|
||||
FR Pentecôte 12 6 2011 0 0
|
||||
FR Lundi de Pentecôte 13 6 2011 0 0
|
||||
FR Fête des Pères 19 6 2011 0 0
|
||||
|
||||
2012:
|
||||
FR Pâques 7 4 2012 0 0
|
||||
FR Lundi de Pâques 9 4 2012 0 0
|
||||
FR Ascension 17 5 2012 0 0
|
||||
FR Pentecôte 27 5 2012 0 0
|
||||
FR Lundi de Pentecôte 28 5 2012 0 0
|
||||
FR Lundi de Pentecôte 28 5 2012 0 0
|
||||
FR Fête des Mères 3 6 2012 0 0
|
||||
FR Fête des Pères 17 6 2012 0 0
|
||||
|
|
@ -24,11 +24,14 @@ require_once(EGW_INCLUDE_ROOT.'/calendar/inc/class.bocalupdate.inc.php');
|
||||
class ajaxcalendar {
|
||||
|
||||
/**
|
||||
* @var object $calendar object to handle events
|
||||
* calendar object to handle events
|
||||
*
|
||||
* @var bocalupdate
|
||||
*/
|
||||
var $calendar;
|
||||
|
||||
function ajaxcalendar() {
|
||||
function ajaxcalendar()
|
||||
{
|
||||
$this->calendar = new bocalupdate;
|
||||
}
|
||||
|
||||
|
@ -166,7 +166,6 @@ class bocal
|
||||
}
|
||||
$this->common_prefs =& $GLOBALS['egw_info']['user']['preferences']['common'];
|
||||
$this->cal_prefs =& $GLOBALS['egw_info']['user']['preferences']['calendar'];
|
||||
$this->check_set_default_prefs();
|
||||
|
||||
$this->tz_offset_s = $this->datetime->tz_offset;
|
||||
|
||||
@ -764,7 +763,8 @@ class bocal
|
||||
}
|
||||
break;
|
||||
case MCAL_RECUR_WEEKLY:
|
||||
if (floor(($search_beg_day - $event_start_daybegin_ts)/WEEK_s) % $freq)
|
||||
// we use round(,1) to deal with changing daylight saving
|
||||
if (floor(round(($search_beg_day - $event_start_daybegin_ts)/WEEK_s,1)) % $freq)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -541,7 +541,7 @@ class bocalupdate extends bocal
|
||||
$details['to-fullname'] = $GLOBALS['egw']->common->display_fullname('',$details['to-firstname'],$details['to-lastname']);
|
||||
|
||||
$to = $GLOBALS['egw']->accounts->id2name($userid,'account_email');
|
||||
if (!$to || !strstr($to,'@'))
|
||||
if (!$to || strpos($to,'@') === false)
|
||||
{
|
||||
// ToDo: give an error-message
|
||||
echo '<p>'.lang('Invalid email-address "%1" for user %2',$to,$GLOBALS['egw']->common->grab_owner_name($userid))."</p>\n";
|
||||
|
@ -298,7 +298,7 @@
|
||||
return false;
|
||||
}
|
||||
$charset = split("[\t\n ]+",$lines[0]); // give a bit flexibility in the syntax AND remove the lineend (\n)
|
||||
if (strstr($charset[0],'charset') && $charset[1])
|
||||
if (strpos($charset[0],'charset') !== false && $charset[1])
|
||||
{
|
||||
$lines = $GLOBALS['egw']->translation->convert($lines,$charset[1]);
|
||||
}
|
||||
|
@ -549,7 +549,7 @@
|
||||
}
|
||||
break;
|
||||
case 'MONTHLY':
|
||||
$vcardData['recur_type'] = strstr($recurence,'BYDAY') ?
|
||||
$vcardData['recur_type'] = strpos($recurence,'BYDAY') !== false ?
|
||||
MCAL_RECUR_MONTHLY_WDAY : MCAL_RECUR_MONTHLY_MDAY;
|
||||
break;
|
||||
|
||||
@ -1000,7 +1000,7 @@
|
||||
}
|
||||
break;
|
||||
case 'MONTHLY':
|
||||
$vcardData['recur_type'] = strstr($recurence,'BYDAY') ?
|
||||
$vcardData['recur_type'] = strpos($recurence,'BYDAY') !== false ?
|
||||
MCAL_RECUR_MONTHLY_WDAY : MCAL_RECUR_MONTHLY_MDAY;
|
||||
break;
|
||||
|
||||
|
@ -520,7 +520,7 @@ ORDER BY cal_user_type, cal_usre_id
|
||||
return false;
|
||||
}
|
||||
// new event (without uid) or new created referencing event => create new uid
|
||||
if (!$event['cal_uid'] || $event['cal_reference'] && strstr($event['cal_uid'],'cal-'.$event['calreference'].'-'))
|
||||
if (!$event['cal_uid'] || $event['cal_reference'] && strpos($event['cal_uid'],'cal-'.$event['calreference'].'-') !== false)
|
||||
{
|
||||
$event['cal_uid'] = $GLOBALS['egw']->common->generate_uid('calendar',$cal_id);
|
||||
$this->db->update($this->cal_table,array('cal_uid' => $event['cal_uid']),array('cal_id' => $cal_id),__LINE__,__FILE__);
|
||||
|
@ -156,6 +156,8 @@ class uical
|
||||
}
|
||||
$this->common_prefs = &$GLOBALS['egw_info']['user']['preferences']['common'];
|
||||
$this->cal_prefs = &$GLOBALS['egw_info']['user']['preferences']['calendar'];
|
||||
$this->bo->check_set_default_prefs();
|
||||
|
||||
$this->wd_start = 60*$this->cal_prefs['workdaystarts'];
|
||||
$this->wd_end = 60*$this->cal_prefs['workdayends'];
|
||||
$this->interval_m = $this->cal_prefs['interval'];
|
||||
@ -437,7 +439,7 @@ class uical
|
||||
{
|
||||
if ($baseurl) // we append the value to the baseurl
|
||||
{
|
||||
$baseurl .= strstr($baseurl,'?') === False ? '?' : '&';
|
||||
$baseurl .= strpos($baseurl,'?') === False ? '?' : '&';
|
||||
$onchange="location='$baseurl'+this.value;";
|
||||
}
|
||||
else // we add $name=value to the actual location
|
||||
|
@ -123,7 +123,7 @@ class uiforms extends uical
|
||||
$participants[$uid] = $participant_types[$uid{0}][$id] = ($res_data['new_status'] ? ExecMethod($res_data['new_status'],$id) : 'U').
|
||||
((int) $quantity > 1 ? (int)$quantity : '');
|
||||
// if new_status == 'x', resource is not bookable
|
||||
if(strstr($participant_types[$uid{0}][$id],'x'))
|
||||
if(strpos($participant_types[$uid{0}][$id],'x') !== false)
|
||||
{
|
||||
unset($participant_types[$uid{0}][$id]);
|
||||
unset($participants[$uid]);
|
||||
|
@ -1676,7 +1676,7 @@ class uiviews extends uical
|
||||
'menuaction' => 'calendar.uiviews.planner',
|
||||
'planner_days' => 1,
|
||||
'date' => date('Ymd',$t),
|
||||
),false,strstr($class,'calHoliday') || strstr($class,'calBirthday') ? '' : ' title="'.$this->html->htmlspecialchars(lang('Dayview')).'"');
|
||||
),false,strpos($class,'calHoliday') !== false || strpos($class,'calBirthday') !== false ? '' : ' title="'.$this->html->htmlspecialchars(lang('Dayview')).'"');
|
||||
}
|
||||
if ($days < 5)
|
||||
{
|
||||
|
@ -69,7 +69,10 @@ for ($l = 0; $l < $length; $l += $dist)
|
||||
}
|
||||
}
|
||||
|
||||
session_cache_limiter('public'); // allow caching
|
||||
// allow caching for 7 days
|
||||
header('Cache-Control: public');
|
||||
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+7*24*60*60) . ' GMT');
|
||||
|
||||
if (function_exists('imagegif'))
|
||||
{
|
||||
header("Content-type: image/gif");
|
||||
|
@ -157,7 +157,7 @@ ignore conflict calendar de Konflikt ignorieren
|
||||
import calendar de Importieren
|
||||
import csv-file common de CSV-Datei importieren
|
||||
interval calendar de Intervall
|
||||
invalid email-address "%1" for user %2 calendar de Ungültige Email-Adresse "%1" für Benutzer %2
|
||||
invalid email-address "%1" for user %2 calendar de Ungültige E-Mail-Adresse "%1" für Benutzer %2
|
||||
last calendar de letzte
|
||||
lastname of person to notify calendar de Nachname der zu benachrichtigenden Person
|
||||
length of the time interval calendar de Länge des Zeitintervals
|
||||
@ -221,7 +221,7 @@ private and group public calendar de Privat und Gruppen
|
||||
private only calendar de nur private
|
||||
quantity calendar de Menge
|
||||
re-edit event calendar de Event erneut bearbeiten
|
||||
receive email updates calendar de Empfange E-Mail updates
|
||||
receive email updates calendar de Empfange E-Mail-Updates
|
||||
receive summary of appointments calendar de Zusammenfassung der Termine erhalten
|
||||
recurrence calendar de Wiederholung
|
||||
recurring event calendar de Wiederholender Termin
|
||||
|
@ -1,314 +1,258 @@
|
||||
%1 %2 in %3 calendar el %1 %2 óå %3
|
||||
%1 matches found calendar el %1 üìïéá âñÝèçêáí
|
||||
%1 records imported calendar el %1 åããñáöÝò åéóÞ÷èçêáí
|
||||
%1 records read (not yet imported, you may go back and uncheck test import) calendar el %1 åããñáöÝò äéáâÜóôçêáí (äåí åéóÞ÷èçêáí áêüìá, ìðïñåßôå íá ðÜôå ðßóù êáé íá îåôóåêÜñåôå Äïêéìáóôéêç ÅéóáãùãÞ)
|
||||
(for weekly) calendar el (Ãéá åâäïìáäéáßï)
|
||||
(i/v)cal calendar el (i/v)Cal
|
||||
1 match found calendar el 1 üìïéï âñÝèçêå
|
||||
a calendar el åíá
|
||||
accept calendar el ÁðïäÝ÷ïìáé
|
||||
<b>please note</b>: the calendar use the holidays of your country, which is set to %1. you can change it in your %2.<br />holidays are %3 automatic installed from %4. you can changed it in %5. calendar el <b>Ðáñáêáëþ ðñïóÝîôå</b>:Ôï çìåñïëüãéï ÷ñçóéìïðïéåß ôéò ãéïñôÝò ôçò ÷þñáò óáò, ïé ïðïßåò åßíáé êáèïñéóìÝíåò ôçí %1. Ìðïñåßôå íá ôéò áëëÜîåôå óôéò äéêÝò óáò %2.<br/>Ïé ãéïñôÝò %3 åãêáèßóôáíôáé áõôüìáôá áðü %4. Ìðïñåßôå íá ôï áëëÜîåôå óå %5.
|
||||
accept or reject an invitation calendar el Áðïäå÷ôåßôå Þ áðïññßøôå ìßá ðñüóêëçóç
|
||||
accepted calendar el ÁðïäÝ÷ôçêå
|
||||
access denied to the calendar of %1 !!! calendar el Áðïññßöèçêå ç åßóïäïò óôï çìåñïëüãéï ôïõ %1 !!!
|
||||
action that caused the notify: added, canceled, accepted, rejected, ... calendar el ÅíÝñãåéåò ðïõ ðñïêÜëåóáí ôçí åéäïðïßçóç: ÐñïóôÝèçêå, Áêõñþèçêå, ÁðïäÝ÷ôçêå, Áðïññßöèçêå, ...
|
||||
add a single entry by passing the fields. calendar el ÐñïóèÝóôå ìéá ìïíÞ êáôá÷þñçóç ðåñíþíôáò ôá ðåäßá
|
||||
actions calendar el ÅíÝñãåéåò
|
||||
actions... calendar el ÅíÝñãåéåò...
|
||||
add alarm calendar el ÐñïóèÝóôå Åéäïðïßçóç
|
||||
add contact calendar el ÐñïóèÝóôå ÅðáöÞ
|
||||
added calendar el ÐñïóôÝèçêå
|
||||
address book calendar el Âéâëßï Äéåõèýíóåùí
|
||||
after current date calendar el ÌåôÜ ôçí ôùñéíÞ çìåñïìçíßá
|
||||
alarm calendar el Åéäïðïßçóç
|
||||
alarm added calendar el ÐñïóôÝèçêå åéäïðïßçóç
|
||||
alarm deleted calendar el ÄéáãñÜöçêå åéäïðïßçóç
|
||||
alarm for %1 at %2 in %3 calendar el Åéäïðïßçóç ãéá %1 óôéò %2 ôçí %3
|
||||
alarm management calendar el Äéá÷åßñçóç ÅéäïðïéÞóåùí
|
||||
alarm-management calendar el Äéá÷åßñçóç-ÅéäïðïéÞóåùí
|
||||
alarm management calendar el Äéá÷åßñçóç åéäïðïéÞóåùí
|
||||
alarms calendar el ÅéäïðïéÞóåéò
|
||||
all day calendar el Ïëç ÇìÝñá
|
||||
all categories calendar el ¼ëåò ïé êáôçãïñßåò
|
||||
all day calendar el ¼ëç ìÝñá
|
||||
all events calendar el ¼ëá ôá ãåãïíüôá
|
||||
all participants calendar el ¼ëïé ïé óõììåôÝ÷ïíôåò
|
||||
allows to edit the event again calendar el ÅðéôñÝðåé îáíÜ ôçí åðåîåñãáóßá ôïõ ãåãïíüôïò
|
||||
apply the changes calendar el åöáñìüóôå ôéò áëëáãÝò
|
||||
are you sure you want to delete this country ? calendar el Åéóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò áõôÞ ôç ÷þñá;
|
||||
are you sure you want to delete this holiday ? calendar el Åéóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò áõôÞ ôçí áñãßá;
|
||||
are you sure\nyou want to\ndelete these alarms? calendar el Åéóáé óßãïõñïò\nðùò èÝëåéòn\íá äéáãñÜøåéò áõôÝò ôéò ðñïéäïðïéÞóåéò;
|
||||
are you sure\nyou want to\ndelete this entry ? calendar el Åéóáé óßãïõñïò\nðùò èÝëåéò\níá äáãñÜøåéò áõôÞ ôçí åéóáãùãÞ;
|
||||
are you sure\nyou want to\ndelete this entry ?\n\nthis will delete\nthis entry for all users. calendar el Åéóáé óßãïõñïò\nðùò èÝëåéò íá\näéáãñÜøåéò áõôÞ ôçí åéóáãùãÞ;\n\nÁõôü èá äéáãñÜøåé\náõôÞ ôç êáôá÷þñçóç ãéá üëïõò ôïõò ÷ñÞóôåò.
|
||||
are you sure\nyou want to\ndelete this single occurence ?n\n\this will delete\nthis entry for all users. calendar el Åéóáé óßãïõñïò\nðùò èÝëåéò íá\näéáãñÜøåéò áõôü ôï óõìâÜí;\n\nÁõôü èá äéáãñÜøåé\náõôÞ ôç êáôá÷þñçóç ãéá üëïõò ôïõò ÷ñÞóôåò.
|
||||
before the event calendar el ðñßí ôï ãåãïíüò
|
||||
brief description calendar el ÐåñéãñáöÞ ÁíáöïñÜò
|
||||
business calendar el ÄïõëåéÜ
|
||||
calendar common el Çìåñïëüãéï
|
||||
calendar - [iv]cal importer calendar el Çìåñïëüãéï - [iv]Cal ÅéóÞ÷èç
|
||||
calendar - add calendar el Çìåñïëüãéï - Ðñüóèåóç
|
||||
calendar - edit calendar el Çìåñïëüãéï - Åðåîåñãáóßá
|
||||
back half a month calendar el Ìéóü ìÞíá ðßóù
|
||||
back one month calendar el ¸íá ìÞíá ðßóù
|
||||
before current date calendar el Ðñéí ôçí ôùñéíÞ çìåñïìçíßá
|
||||
before the event calendar el ðñéí ôï ãåãïíüò
|
||||
birthday calendar el ÃåíÝèëéá
|
||||
busy calendar el áðáó÷ïëçìÝíïò
|
||||
by calendar el ìÝóù
|
||||
calendar event calendar el Ãåãïíüò Çìåñïëïãßïõ
|
||||
calendar holiday management admin el Äéá÷åßñçóç Áäåéþí Çìåñïëïãßïõ
|
||||
calendar menu calendar el Ìåíïý Çìåñïëïãßïõ
|
||||
calendar preferences calendar el Éäéüôçôåò Çìåñïëïãßïõ
|
||||
calendar settings admin el Ñõèìßóåéò Çìåñïëïãßïõ
|
||||
calendar-fieldname calendar el Çìåñïëüãéï - Ïíïìá ðåäßïõ
|
||||
can't add alarms in the past !!! calendar el Äåí åðéôñÝðåôáé ç ðñïóèÞêç åéäïðïéÞóåùí óôï ðáñåëèüí
|
||||
canceled calendar el Áêõñþèçêå
|
||||
change all events for $params['old_owner'] to $params['new_owner']. calendar el Áëëáîå üëá ôá ãåãïíüôá ãéá $params['old_owner'] óå $params['new_owner'].
|
||||
change status calendar el ÁëëáãÞ ÊáôÜóôáóçò
|
||||
charset of file calendar el Êùäéêïóåëßäá áñ÷åßïõ
|
||||
click %1here%2 to return to the calendar. calendar el ÊÜíå êëßê %1åäþ%2 ãéá åðéóôñïöÞ óôï çìåñïëüãéï
|
||||
configuration calendar el Äéáìüñöùóç
|
||||
close the window calendar el Êëåßóôå ôï ðáñÜèõñï
|
||||
compose a mail to all participants after the event is saved calendar el ÓõíôÜîôå Ýíá ìÞíõìá óå üëïõò ôïõò óõììåôÝ÷ïíôåò áöïý óùèåß ôï ãåãïíüò
|
||||
copy of: calendar el Áíôßãñáöï ôïõ
|
||||
copy this event calendar el ÁíôéãñÜøôå áõôü ôï ãåãïíüò
|
||||
countries calendar el ×þñåò
|
||||
country calendar el ×þñá
|
||||
created by calendar el ÄçìéïõñãÞèçêå áðü
|
||||
csv-fieldname calendar el CSV-Ïíïìá ðåäßïõ
|
||||
create an exception for the given date calendar el ÄçìéïõñãÞóôå ìéá åîáßñåóç ãéá ôç äïóìÝíç çìåñïìçíßá
|
||||
create new links calendar el ÄçìéïõñãÞóôå íÝá links
|
||||
csv calendar el CSV
|
||||
csv-fieldname calendar el CSV-íïìá ðåäßïõ
|
||||
csv-filename calendar el CSV-Ïíïìá áñ÷åßïõ
|
||||
custom fields calendar el ÐñïóáñìïóìÝíá Ðåäßá
|
||||
custom fields and sorting common el ÐñïóáñìïóìÝíá ðáéäßá êáé ôáîéíüìçóç
|
||||
custom fields common el ÐñïóáñìïóìÝíá ðåäßá
|
||||
daily calendar el ÇìåñÞóéï
|
||||
daily matrix view calendar el ÇìåñÞóéá Åìöáíçóç Êáëïõðéïý
|
||||
days calendar el çìÝñåò
|
||||
days of the week for a weekly repeated event calendar el ÇìÝñåò ôçò åâäïìÜäáò ãéá Ýíá åâäïìáäéáßá åðáíáëáìâáíüìåíï ãåãïíüò
|
||||
days repeated calendar el åðáíáëáìâáíüìåíåò çìÝñåò
|
||||
dayview calendar el ÇìåñÞóéá ÅìöÜíçóç
|
||||
default appointment length (in minutes) calendar el ðñïêáèïñéóìÝíï ìÞêïò ñáíôåâïý
|
||||
dayview calendar el ÇìåñÞóéá åìöÜíéóç
|
||||
default appointment length (in minutes) calendar el ðñïêáèïñéóìÝíï ìÞêïò óõíÜíôçóçò
|
||||
default calendar filter calendar el ÐñïêáèïñéóìÝíï ößëôñï çìåñïëïãßïõ
|
||||
default calendar view calendar el ÐñïêáèïñéóìÝíç åìöÜíçóç çìåñïëïãßïõ
|
||||
default length of newly created events. the length is in minutes, eg. 60 for 1 hour. calendar el ÐñïêáèïñéóìÝíï ìÞêïò ôùí ðéü ðñüóöáôá äçìéïõñãçìÝíùí ãåãïíüôùí. Ôï ìÞêïò åßíáé óå ëåðôÜ, ð.÷. 60 ãéá 1 þñá
|
||||
defines the size in minutes of the lines in the day view. calendar el Ïñßæåé ôï ìÝãåèïò óå ëåðôÜ ôùí ãñáììþí óôçí çìåñÞóéá åìöÜíçóç
|
||||
delete a single entry by passing the id. calendar el ÄéáãñÜøôå ìéá ìïíÞ êáôá÷þñçóç ðåñíþíôáò ôï id
|
||||
delete an entire users calendar. calendar el ÄéáãñáöÞ ïëüêëçñïõ ôïõ çìåñïëïãßïõ ôïõ ÷ñÞóôç
|
||||
delete selected contacts calendar el ÄéáãñáöÞ åðåëåãìÝíùí åðáöþí
|
||||
delete series calendar el ÄéáãñáöÞ ÓåéñÜò
|
||||
delete single calendar el ÄéáãñáöÞ ÌïíÞ
|
||||
deleted calendar el ÄéáãñÜöçêå
|
||||
description calendar el ÐåñéãñáöÞ
|
||||
disable calendar el Áðåíåñãïðïßçóç
|
||||
disabled calendar el áðåíåñãïðïéÞèçêå
|
||||
display interval in day view calendar el ÅìöÜíçóç êåíþí óôçí ÇìåñÞóéá ÅìöÜíçóç
|
||||
display mini calendars when printing calendar el ÅìöÜíçóç ìßíé çìåñïëïãßùí üôáí åêôõðþíùíôáé
|
||||
display status of events calendar el ÅìöÜíçóç ÊáôÜóôáóçò ôùí Ãåãïíüôùí
|
||||
displays your default calendar view on the startpage (page you get when you enter egroupware or click on the homepage icon)? calendar el Åìöáíßæåé ôçí ðñïêáèïñéóìÝíç åìöÜíçóç ôïõ çìåñïëïãßïõ óôçí áñ÷éêÞ óåëßäá(ç óåëßäá ðïõ ðáßñíåôå üôáí ìðáßíåôå óôï eGroupWare Þ êÜíåôå click óôçí áñ÷éêÞ óåëßäá
|
||||
do you want to be notified about new or changed appointments? you be notified about changes you make yourself.<br>you can limit the notifications to certain changes only. each item includes all the notification listed above it. all modifications include changes of title, description, participants, but no participant responses. if the owner of an event requested any notifcations, he will always get the participant responses like acceptions and rejections too. calendar el
|
||||
do you want to receive a regulary summary of your appointsments via email?<br>the summary is sent to your standard email-address on the morning of that day or on monday for weekly summarys.<br>it is only sent when you have any appointments on that day or week. calendar el
|
||||
default calendar view calendar el ÐñïêáèïñéóìÝíç åìöÜíéóç çìåñïëïãßïõ
|
||||
default length of newly created events. the length is in minutes, eg. 60 for 1 hour. calendar el ÐñïêáèïñéóìÝíç äéÜñêåéá ôùí ðéï ðñüóöáôá äçìéïõñãçìÝíùí ãåãïíüôùí. Ç äéÜñêåéá åßíáé óå ëåðôÜ, ð.÷. 60 ãéá 1 þñá
|
||||
default week view calendar el ÐñïêáèïñéóìÝíç åìöÜíéóç åâäïìÜäáò
|
||||
delete series calendar el ÄéáãñáöÞ óåéñÜò
|
||||
delete this alarm calendar el ÄéáãñÜøôå áõôÞ ôçí åéäïðïßçóç
|
||||
delete this event calendar el ÄéáãñÜøôå áõôü ôï ãåãïíüò
|
||||
delete this exception calendar el ÄéáãñÜøôå áõôÞ ôçí åîáßñåóç
|
||||
delete this series of recuring events calendar el ÄéáãñÜøôå áõôÞ ôç óåéñÜ ôùí åðáíåìöáíéæüìåíùí ãåãïíüôùí
|
||||
disinvited calendar el Ìç ðñïóêåêëçìÝíïé
|
||||
display status of events calendar el ÅìöÜíéóç êáôÜóôáóçò ãåãïíüôùí
|
||||
displayed view calendar el åìöáíéæüìåíç åéêüíá
|
||||
displays your default calendar view on the startpage (page you get when you enter egroupware or click on the homepage icon)? calendar el Åìöáíßæåé ôçí ðñïêáèïñéóìÝíç åìöÜíéóç ôïõ çìåñïëïãßïõ óôçí áñ÷éêÞ óåëßäá(ç óåëßäá ðïõ ðáßñíåôå üôáí ìðáßíåôå óôï eGroupWare Þ êÜíåôå click óôçí áñ÷éêÞ óåëßäá
|
||||
do you want a weekview with or without weekend? calendar el ÈÝëåôå íá åðéèåùñÞóåôå ôçí åâäïìÜäá ìå Þ ÷ùñßò ôá Óáââáôïêýñéáêá;
|
||||
do you want to be notified about new or changed appointments? you be notified about changes you make yourself.<br>you can limit the notifications to certain changes only. each item includes all the notification listed above it. all modifications include changes of title, description, participants, but no participant responses. if the owner of an event requested any notifcations, he will always get the participant responses like acceptions and rejections too. calendar el ÈÝëåôå íá åéäïðïéçèåßôå ãéá íÝåò óõíáíôÞóåéò Þ áëëáãÝò óõíáíôÞóåùí;Èá åéäïðïéÞóôå ãéá áëëáãÝò ðïõ êÜíåôå ï ßäéïò.<br>Ìðïñåßôå íá åëëáôôþóåôå ôéò åéäïðïéÞóåéò óå ïñéóìÝíåò áëëáãÝò ìüíï. ÊÜèå áíôéêÝéìåíï ðåñéëáìâÜíåé üëåò ôéò åéäïðïéÞóåéò óå ìßá ëßóôá áðü ðÜíù ôïõ.¼ëåò ïé ôñïðïðïéÞóåéò óõìðåñéëáìâÜíïõí áëëáãÝò ôïõ ôßôëïõ, ôçò ðåñéãñáöÞò, ôùí óõììåôå÷üíôùí, áëëÜ êáìßá áðÜíôçóç óõììåôÝ÷ïíôïò. Áí ï éäéïêôÞôçò åíüò ãåãïíüôïò æÞôçóå êÜðïéá åéäïðïßçóç, èá ëáìâÜíåé ðÜíôá ôéò áðáíôÞóåéò ôùí óõììåôå÷üíôùí ùò áðïäï÷Ýò êáé áðïññßøåéò åðßóçò.
|
||||
do you want to receive a regulary summary of your appointsments via email?<br>the summary is sent to your standard email-address on the morning of that day or on monday for weekly summarys.<br>it is only sent when you have any appointments on that day or week. calendar el ÈÝëåôå íá ëáìâÜíåôå ìßá ôáêôéêÞ ðåñßëçøç ôùí óõíáíôÞóåþí óáò ìÝóù email;<br>Ç ðåñßëçøç óôÝëíåôáé óôçí óõíçèéóìÝíç óáò äéåýèõíóç email ôï ðñùß åêåßíçò ôçò çìÝñáò Þ ôç ÄåõôÝñá ãéá åâäïìáäéáßåò ðåñéëÞøåéò.<br>ÓôÝëíåôáé ìüíïí üôáí Ý÷åôå êÜðïéá óõíÜíôçóç åêåßíç ôçí çìÝñá Þ åâäïìÜäá.
|
||||
do you wish to autoload calendar holidays files dynamically? admin el ÈÝëåôå íá öïñôùèïýí ôá áñ÷åßá áäåéþí ôïõ çìåñïëïãßïõ äõíáìéêÜ?
|
||||
download calendar el Öüñôùìá
|
||||
duration calendar el ÄéÜñêåéá
|
||||
edit series calendar el Åðåîåñãáóßá ÓåéñÜò
|
||||
edit single calendar el Åðåîåñãáóßá ÌïíÞ
|
||||
email notification calendar el Åéäïðïßçóç Email
|
||||
email notification for %1 calendar el Åéäïðïßçóç Email ãéá %1
|
||||
download this event as ical calendar el Öüñôùóç ôïõ ãåãïíüôïò ùò iCal
|
||||
duration of the meeting calendar el ÄéÜñêåéá ôçò óõíÜíôçóçò
|
||||
edit exception calendar el Åðåîåñãáóßá åîáßñåóçò
|
||||
edit series calendar el Åðåîåñãáóßá óåéñÜò
|
||||
edit this event calendar el Åðåîåñãáóßá ôïõ ãåãïíüôïò
|
||||
edit this series of recuring events calendar el Åðåîåñãáóßá óåéñÜò åðáíáëáìâáíüìåíùí ãåãïíüôùí
|
||||
empty for all calendar el Üäåéï ãéá üëïõò
|
||||
enable calendar el Åíåñãïðïßçóç
|
||||
enabled calendar el åíåñãïðïéÞèçêå
|
||||
end date/time calendar el ÔÝëïò Çìåñïìçíßáò/×ñüíïõ
|
||||
end calendar el ÔÝëïò
|
||||
end date/time calendar el ÔÝëïò Çìåñïìçíßáò/¿ñáò
|
||||
enddate calendar el Ôåëïò çìåñïìçíßáò
|
||||
ends calendar el ôåëéþíåé
|
||||
enter output filename: ( .vcs appended ) calendar el ÂÜëôå Ïíïìá Áñ÷åßïõ ãéá Åîïäï: (.vcs ðñïóáñôÞèçêå)
|
||||
enddate / -time of the meeting, eg. for more then one day calendar el Çìåñïìçíßá ôÝëïõò / -þñá óõíÜíôçóçò, ð.÷. ãéá ðåñéóóüôåñï áðü ìßá ìÝñá.
|
||||
enddate of the export calendar el Çìåñïìçíßá ôÝëïõò åîáãùãÞò
|
||||
ends calendar el ôåëåéþíåé
|
||||
error adding the alarm calendar el ÓöÜëìá óôçí ðñïóèÞêç åéäïðïßçóçò
|
||||
error: importing the ical calendar el ÓöÜëìá: óôçí åéóáãùãÞ ôïõ iCal
|
||||
error: no participants selected !!! calendar el ÓöÜëìá: äåí Ý÷åé åðéëå÷èåß êÜðïéïò óõììåôÝ÷ùí !!!
|
||||
error: saving the event !!! calendar el ÓöÜëìá: óôçí áðïèÞêåõóç ôïõ ãåãïíüôïò !!!
|
||||
error: starttime has to be before the endtime !!! calendar el ÓöÜëìá: Ç þñá Ýíáñîçò ðñÝðåé íá Ýéíáé ðñéí ôçí ôÝëïõò
|
||||
event copied - the copy can now be edited calendar el Ôï ãåãïíüò áíôéãñÜöçêå - ôï áíôßãñáöï ìðïñåß ôþñá íá åðåîåñãáóôåß
|
||||
event deleted calendar el Ãåãïíüò äéáãñÜöçêå
|
||||
event details follow calendar el Áêïëïõèïýí ËåðôïìÝñéåò Ãåãïíüôùí
|
||||
event saved calendar el Ãåãïíüò áðïèçêÝõôçêå
|
||||
event will occupy the whole day calendar el Ôï ãåãïíüò èá áðáó÷ïëÞóåé ïëüêëçñç ôçí çìÝñá
|
||||
exception calendar el Åîáßñåóç
|
||||
exceptions calendar el ÅîáéñÝóåéò
|
||||
execute a further action for this entry calendar el ÅêôåëÝóôå ðåñáéôÝñù åíÝñãåéá ãéá áõôÞí ôçí êáôá÷þñçóç
|
||||
export calendar el ÅîáãùãÞ
|
||||
export a list of entries in ical format. calendar el ÅîáãùãÞ ëßóôáò áðï êáôá÷ùñßóåéò óå iCal ìïñöÞ.
|
||||
extended calendar el ÅêôåôáìÝíïò
|
||||
extended updates always include the complete event-details. ical's can be imported by certain other calendar-applications. calendar el ÅêôåôáìÝíåò åíçìåñþóåéò ðÜíôá ðåñéëáìâÜíïõí ôéò ïëïêëçñïìÝíåò ëåðôïìÝñéåò-ãåãïíüôùí. iCal's ìðïñïýí íá åéóá÷èïýí áðï óõãêåêñéìÝíåò Üëëåò åöáñìïãÝò-çìåñïëïãßùí
|
||||
external participants calendar el ÅîùôåñéêÝò óõìåôï÷Ýò
|
||||
failed sending message to '%1' #%2 subject='%3', sender='%4' !!! calendar el ÁðÝôõ÷å ç áðïóôïëÞ ìçíýìáôïò óôï '%1' #%2 èÝìá='%3', áðïóôïëÝáò='%4' !!!
|
||||
fieldseparator calendar el Äéá÷ùñéóôÞò ðåäßùí
|
||||
filename calendar el ¼íïìá áñ÷åßïõ
|
||||
firstname of person to notify calendar el Ïíïìá ôïõ áôüìïõ íá åéäïðïéçèåß
|
||||
for calendar el ãéá
|
||||
for which views should calendar show distinct lines with a fixed time interval. calendar el Ãéá ðïéåò åìöáíßóåéò ðñÝðåé ôï çìåñïëüãéï íá äåß÷íåé åõäéÜêñéôåò ãñáììÝò ìå êáèïñéóìÝíá ÷ñïíéêÜ äéáóôÞìáôá.
|
||||
format of event updates calendar el ÌïñöÞ áðï åíçìåñùìÝíá ãåãïíüôá
|
||||
fr calendar el Ðá
|
||||
free/busy calendar el ÅëÝõèåñï/Áðáó÷ïëçìÝíï
|
||||
frequency calendar el Óõ÷íüôçôá
|
||||
forward half a month calendar el Ðñïþèçóç ìéóïý ìÞíá
|
||||
forward one month calendar el Ðñïþèçóç åíüò ìçíüò
|
||||
four days view calendar el ÅìöÜíéóç ôåóóÜñùí çìåñþí
|
||||
freetime search calendar el ÁíáæÞôçóç åëÝõèåñïõ ÷ñüíïõ
|
||||
fri calendar el Ðáñ
|
||||
full description calendar el ÐëÞñçò ÐåñéãñáöÞ
|
||||
fullname of person to notify calendar el ÐëÞñåò üíïìá ôïõ áôüìïõ íá åéäïðïéçèåß
|
||||
generate printer-friendly version calendar el ÐáñÜãåôå öéëéêïý-åêôõðùôÞ Ýêäïóç
|
||||
general calendar el ÃåíéêÜ
|
||||
global public and group public calendar el Ãåíéêïý Êïéíïý êáé ïìáäéêïý êïéíïý
|
||||
global public only calendar el Ãåíéêïý Êïéíïý Ìüíï
|
||||
go! calendar el Îåêßíá!
|
||||
grant calendar access common el Ìåôáâßâáóç ÄéêáéùìÜôùí Çìåñïëïãßïõ
|
||||
group invitation calendar el Ðñüóêëçóç ïìÜäáò
|
||||
group planner calendar el ÏìÜäá Ðñïãñáììáôéóìïý
|
||||
group public only calendar el ÏìÜäá Êïéíïý Ìüíï
|
||||
groupmember(s) %1 not included, because you have no access. calendar el Ôá ìÝëç ôçò ïìÜäáò %1 äåí óõìðåñéëáìâÜíïíôáé, ãéáôß äåí Ý÷ïõí äéêáßùìá åéóüäïõ.
|
||||
here is your requested alarm. calendar el Ùñßóôå ç æçôïýìåíç åéäïðïßçóç
|
||||
hide private infos calendar el Áðüêñõøç ðñïóùðéêþí ðëçñïöïñéþí
|
||||
high priority calendar el øçëÞ ðñïôåñáéüôçôá
|
||||
holiday calendar el Áäåéá
|
||||
holiday management calendar el Äéá÷åéñçóôÞò Áäåéáò
|
||||
holiday-management calendar el Áäåéá-Äéá÷åéñçóôÞò
|
||||
holidays calendar el Áäåéåò
|
||||
hours calendar el Ùñåò
|
||||
i participate calendar el ÓõìåôÝ÷ù
|
||||
how far to search (from startdate) calendar el ðüóï ìáêñõÜ íá øÜîåé (áðü ôçí áñ÷éêÞ çìåñïìçíßá)
|
||||
how many minutes should each interval last? calendar el Ðüóá ëåðôÜ ðñÝðåé êÜèå äéÜëåéììá íá äéáñêåß;
|
||||
ical calendar el iCal
|
||||
ical / rfc2445 calendar el iCal / rfc2445
|
||||
ical export calendar el iCal ÅîáãùãÞ
|
||||
ical file calendar el iCal áñ÷åßï
|
||||
ical import calendar el iCal ÅéóáãùãÞ
|
||||
ical successful imported calendar el iCal åðéôõ÷Þò åéóáãùãÞ
|
||||
if checked holidays falling on a weekend, are taken on the monday after. calendar el Áí ôóåêáñéóìÝíåò áñãåßåò ðÝöôïõí Óáââáôïêýñéáêï, ëïãáñéÜæïíôáé óôç ÄåõôÝñá ðïõ áêïëïõèåß
|
||||
if you dont set a password here, the information is available to everyone, who knows the url!!! calendar el Áí äåí êáèïñßóåôå Ýíáí êùäéêü åäþ, ç ðëçñïöïñßá åßíáé äéáèÝóéìç óå üëïõò, ðïõ ãíùñßæïõí ôï URL!!!
|
||||
ignore conflict calendar el Áãíüçóç Óõìðôþóåùí
|
||||
import calendar el ÅéóáãùãÞ
|
||||
import csv-file common el ÅéóáãùãÞ CSV-Áñ÷åßïõ
|
||||
interval calendar el ÄéÜóôçìá
|
||||
intervals in day view calendar el ÄéáóÞìáôá óå åìöÜíçóç çìÝñáò
|
||||
intervals per day in planner view calendar el ÄéáóôÞìáôá áíá çìÝñá óå åìöÜíçóç ðñïãñÜììáôïò
|
||||
invalid entry id. calendar el ËÜèïò id êáôá÷þñçóçò
|
||||
invalid email-address "%1" for user %2 calendar el ¶êõñç äéåýèõíóç email "%1" ãéá ôï ÷ñÞóôç %2
|
||||
last calendar el ôåëåõôÜéï
|
||||
lastname of person to notify calendar el Åðßèåôï ôïõ áôüìïõ ãéá åéäïðïßçóç
|
||||
length shown<br>(emtpy for full length) calendar el Åìöáíéæüìåíï ìÞêïò<br>(Üäåéï ãéá ðëÞñåò ìÞêïò)
|
||||
length<br>(<= 255) calendar el ÌÞêïò<br>(<= 255)
|
||||
load [iv]cal calendar el Öüñôùóç [iv]Cal
|
||||
length of the time interval calendar el ÄéÜñêåéá ôïõ äéáëåßììáôïò
|
||||
link to view the event calendar el Óýíäåóìïò ãéá ðáñáêïëïýèçóç ôïõ ãåãïíüôïò
|
||||
links calendar el Óýíäåóìïé
|
||||
links, attachments calendar el Óýíäåóìïé, ÐñïóêïëëÞóåéò
|
||||
listview calendar el Ëßóôá åìöÜíéóçò
|
||||
location calendar el Ôïðïèåóßá
|
||||
location to autoload from admin el Ôïðïèåóßá ãéá áõôüìáôï öüñôùìá áðü
|
||||
matrixview calendar el ÅìöÜíçóç Êáëïõðéïý
|
||||
location, start- and endtimes, ... calendar el Ôïðïèåóßá, ¸íáñîç- êáé ÔÝëïò, ...
|
||||
mail all participants calendar el ÁðïóôïëÞ ìçíýìáôïò óå üëïõò ôïõò óõììåôÝ÷ïíôåò
|
||||
minutes calendar el ËåðôÜ
|
||||
mo calendar el Äå
|
||||
modified calendar el ÔñïðïðïéÞèçêå
|
||||
modify list of external participants calendar el Ëßóôá ÔñïðïðïéÞóåùí áðï ÅîùôåñéêÝò Óõìåôï÷Ýò
|
||||
mon calendar el Äåõ
|
||||
month calendar el ÌÞíáò
|
||||
monthly calendar el Ìçíéáßïò
|
||||
monthly (by date) calendar el Ìçíéáßïò (áíá çìåñïìçíßá)
|
||||
monthly (by day) calendar el Ìçíéáßïò (áíá çìÝñá)
|
||||
monthview calendar el Ìçíéáßá ÅìöÜíçóç
|
||||
new entry calendar el Íåá Êáôá÷þñçóç
|
||||
new name must not exist and not be empty!!! calendar el Ôï íÝï üíïìá äåí ðñÝðåé íá õðÜñ÷åé êáé äåí ðñÝðåé íá åßíáé Üäåéï!!!
|
||||
new search with the above parameters calendar el íÝá áíáæÞôçóç ìå ôéò ðáñáðÜíù ðáñáìÝôñïõò
|
||||
no events found calendar el Äåí âñÝèçêå êáíÝíá ãåãïíüò
|
||||
no filter calendar el ÊáíÝíá ößëôñï
|
||||
no matches found calendar el Äåí âñÝèçêáí üìïéá
|
||||
no response calendar el Äåí Áíôáðïêñßíåôáé
|
||||
non blocking calendar el ìç áðïêëåéüìåíï
|
||||
notification messages for added events calendar el ÌÞíõìá Åéäïðïßçóçò ãéá ãåãïíüôá ðïõ ðñïóôÝèçêáí
|
||||
notification messages for canceled events calendar el ÌÞíõìá Åéäïðïßçóçò ãéá ãåãïíüôá çìåñïëïãßïõ
|
||||
notification messages for disinvited participants calendar el ÌÞíõìá Åéäïðïßçóçò ãéá óõììåôÝ÷ïíôåò ðïõ äåí Ý÷ïõí ðñïóêëçèåß
|
||||
notification messages for modified events calendar el ÌÞíõìá Åéäïðïßçóçò ãéá ãåãïíüôá ðïõ ôñïðïðïéÞèçêáí
|
||||
notification messages for your alarms calendar el ÌÞíõìá Åéäïðïßçóçò ãéá ôéò åéäïðïéÞóåéò óáò
|
||||
notification messages for your responses calendar el ÌÞíõìá Åéäïðïßçóçò ãéá ôéò áðáíôÞóåéò óáò
|
||||
number of intervals per day in planner view calendar el Áñéèìüò áðï ÄéáêïðÝò áíá ÇìÝñá ôçí ÅìöÜíçóç Ðñïãñáììáôéóìïý
|
||||
number of months calendar el Áñéèìüò ìçíþí
|
||||
number of records to read (%1) calendar el Áñéèìüò åããñáöþí ãéá íá äéáâáóôïýí (%1)
|
||||
observance rule calendar el Êáíüíáò ÅðéôÞñçóçò
|
||||
occurence calendar el ÓõìâÜí
|
||||
old startdate calendar el ÐáëéÜ Áñ÷éêÞÇìåñïìçíßá
|
||||
olddate calendar el ÐáëéáÇìåñïìçíßá
|
||||
on %1 %2 %3 your meeting request for %4 calendar el Óôéò %1 %2 %3 ç áßôçóç ãéá óõíÜíôçóç ãéá %4
|
||||
on all changes calendar el óå üëåò ôéò áëëáãÝò
|
||||
on all modification, but responses calendar el óå üëåò ôéò áëëáãÝò, áëëá áðïêñßíåôáé
|
||||
on any time change too calendar el óå êÜèå áëëáãÞ þñáò åðßóçò
|
||||
on invitation / cancelation only calendar el óå ðñüóêëçóç / áêõñþóåéò ìüíï
|
||||
on participant responses too calendar el
|
||||
on participant responses too calendar el óå óõììåôÝ÷ïíôïò áðáíôÞóåéò åðßóçò
|
||||
on time change of more than 4 hours too calendar el óå áëëáãÞ þñáò ãéá ðÜíù áðï 4 þñåò åðßóçò
|
||||
open todo's: calendar el Áíïéãìá Íá Ãéíïõí ôá ÈÝìáôá:
|
||||
order calendar el ÓåéñÜ
|
||||
overlap holiday calendar el
|
||||
participant calendar el ÓõìåôÝ÷ùí
|
||||
participants calendar el Óõìåôï÷Ýò
|
||||
participates calendar el ÓõìåôÝ÷ù
|
||||
one month calendar el Ýíáò ìÞíáò
|
||||
one week calendar el ìßá åâäïìÜäá
|
||||
one year calendar el Ýíá Ýôïò
|
||||
only the initial date of that recuring event is checked! calendar el Ìüíïí ç áñ÷éêÞ çìåñïìçíßá áõôïý ôïõ åðáíáëáìâáíüìåíïõ ãåãïíüôïò åéíáé ôóåêáñéóìÝíç!
|
||||
open todo's: calendar el ÅêêñåìÞ èÝìáôá
|
||||
overlap holiday calendar el óõìðßðôïõóá ãéïñôÞ
|
||||
participants calendar el ÓõììåôÝ÷ïíôåò
|
||||
participants disinvited from an event calendar el ÓõììåôÝ÷ïíôåò ðïõ äåí Ý÷ïõí ðñïóêëçèåß ãéá Ýíá ãåãïíüò
|
||||
participants, resources, ... calendar el ÓõììåôÝ÷ïíôåò, Ðüñïé, ...
|
||||
people holiday calendar el Üäåéåò áôüìùí
|
||||
permission denied calendar el Ç Áäåéá áðïññßðôåôáé
|
||||
planner calendar el Ðñüãñáììá
|
||||
planner by category calendar el Ðñüãñáììá áíá êáôçãïñßá
|
||||
planner by user calendar el Ðñüãñáììá áíá ÷ñÞóôç
|
||||
please confirm,accept,reject or examine changes in the corresponding entry in your calendar calendar el Ðáñáêáëþ åðéâåâáéþóôå, áðïäå÷ôÞôå, áðïññéøôå Þ åîåôÜóôå áëëáãÝò óôçí ó÷åôéêÞ êáôá÷þñçóç óôï çìåñïëüãéï óáò
|
||||
please note: you can configure the field assignments after you uploaded the file. calendar el Ðáñáêáëþ ðñïóÝîôå: Ìðïñåßôå íá äéáìïñöþóåôå ôá ðåäßá áíÜèåóçò åñãáóéþí ÁÖÏÕ öïñôþóåôå ôï áñ÷åßï
|
||||
preselected group for entering the planner calendar el ÐñïåðéëåãìÝíç ïìÜäá ãéá åéóáãïãÞ óôï ðñüãñáììá
|
||||
print calendars in black & white calendar el Åêôýðùóç çìåñïëïãßùí óå Üóðñï êáé ìáýñï
|
||||
print the mini calendars calendar el Åêôýðùóç ôùí ìßíé çìåñïëïãßùí
|
||||
printer friendly calendar el Öéëéêü ÅêôõðùôÞ
|
||||
privat calendar el Éäéáßôåñï
|
||||
previous calendar el ðñïçãïýìåíï
|
||||
private and global public calendar el Éäéáßôåñá êáé Ãåíéêþí Public
|
||||
private and group public calendar el Éäéáßôåñá êáé ÏìÜäá Public
|
||||
private only calendar el Éäéáßôåñï Ìüíï
|
||||
quantity calendar el Ðïóüôçôá
|
||||
re-edit event calendar el Îáíá-ÅðåîåñãáóìÝíï Ãåãïíüò
|
||||
read a list of entries. calendar el ÄéÜâáóìá ìéáò ëßóôáò áðï êáôá÷ùñÞóåéò
|
||||
read a single entry by passing the id and fieldlist. calendar el ÄéÜâáóå ìéá ìïíÞ êáôá÷þñçóç ðåñíþíôáò ôï id êáé ôçí ëéóôá ðåäßùí
|
||||
read this list of methods. calendar el ÄéÜâáóå ôçí ëßóôá ôùí ìåèüäùí
|
||||
receive email updates calendar el ËÞøç åíçìåñùìÝíùí email
|
||||
receive extra information in event mails calendar el
|
||||
receive summary of appointments calendar el
|
||||
recurring event calendar el
|
||||
refresh calendar el
|
||||
reinstate calendar el
|
||||
rejected calendar el
|
||||
repeat day calendar el
|
||||
repeat end date calendar el
|
||||
repeat type calendar el
|
||||
repeating event information calendar el
|
||||
repetition calendar el
|
||||
repetitiondetails (or empty) calendar el
|
||||
reset calendar el
|
||||
rule calendar el
|
||||
sa calendar el Óá
|
||||
receive summary of appointments calendar el ÐáñáëáâÞ ðåñßëçøçò ôùí óõíáíôÞóåùí
|
||||
recurrence calendar el ÅðáíÜëçøç
|
||||
recurring event calendar el Åðáíáëáìâáíüìåíï ãåãïíüò
|
||||
rejected calendar el Áðïññßöèçêå
|
||||
repeat days calendar el ÅðáíÜëçøç çìåñþí
|
||||
repeat the event until which date (empty means unlimited) calendar el ÅðáíÜëáâå ôï ãåãïíüò ìÝ÷ñé ðïéá çìåñïìçíßá (êåíü óçìáßíåé ÷ùñßò ðåñéïñéóìü)
|
||||
repeat type calendar el Ôýðïò åðáíÜëçøçò
|
||||
repeating event information calendar el Ðëçñïöïñßåò Åðáíáëáìâáíüìåíïõ Ãåãïíüôïò
|
||||
repeating interval, eg. 2 to repeat every second week calendar el ÅðáíÜëçøç äéáëåßììáôïò, ð.÷. 2 ãéá íá åðáíáëáìâÜíåé êÜèå äåýôåñç åâäïìÜäá
|
||||
repetition calendar el ÅðáíÜëçøç
|
||||
repetitiondetails (or empty) calendar el ËåðôïìÝñåéåò åðáíÜëçøçò (Þ êåíü)
|
||||
reset calendar el Åðáíáêáèïñéóìüò
|
||||
resources calendar el Ðüñïé
|
||||
rule calendar el Êáíüíáò
|
||||
sat calendar el Óáâ
|
||||
scheduling conflict calendar el
|
||||
search results calendar el
|
||||
selected contacts (%1) calendar el
|
||||
send updates via email common el
|
||||
send/receive updates via email calendar el
|
||||
set a year only for one-time / non-regular holidays. calendar el
|
||||
set new events to private calendar el
|
||||
should invitations you rejected still be shown in your calendar ?<br>you can only accept them later (eg. when your scheduling conflict is removed), if they are still shown in your calendar! calendar el
|
||||
should new events created as private by default ? calendar el
|
||||
should the mini calendars by printed / displayed in the printer friendly views ? calendar el
|
||||
should the printer friendly view be in black & white or in color (as in normal view)? calendar el
|
||||
should the status of the event-participants (accept, reject, ...) be shown in brakets after each participants name ? calendar el
|
||||
show day view on main screen calendar el
|
||||
show default view on main screen calendar el
|
||||
show high priority events on main screen calendar el
|
||||
show invitations you rejected calendar el
|
||||
show list of upcoming events calendar el
|
||||
single event calendar el
|
||||
sorry, the owner has just deleted this event calendar el
|
||||
sorry, this event does not exist calendar el
|
||||
sorry, this event does not have exceptions defined calendar el
|
||||
sort by calendar el
|
||||
specifies the the number of intervals shown in the planner view. calendar el
|
||||
start date/time calendar el
|
||||
start- and enddates calendar el
|
||||
startdate calendar el
|
||||
startrecord calendar el
|
||||
su calendar el Êõ
|
||||
submit to repository calendar el
|
||||
saves the changes made calendar el áðïèçêåýåé ôéò áëëáãÝò ðïõ Ýãéíáí
|
||||
select a %1 calendar el ÅðéëÝîôå Ýíá %1
|
||||
select a time calendar el ÅðéëÝîôå ìßá þñá
|
||||
select resources calendar el ÅðéëÝîôå ðüñïõò
|
||||
select who should get the alarm calendar el ÅðéëÝîôå ðïéïò èá Ýðñåðå íá ðÜñåé ôçí åéäïðïßçóç
|
||||
set a year only for one-time / non-regular holidays. calendar el Êáèïñßóôå Ýíá Ýôïò ìüíïí ãéá ìéáò öïñÜò/ ìç ôáêôéêÝò ãéïñôÝò.
|
||||
should the status of the event-participants (accept, reject, ...) be shown in brakets after each participants name ? calendar el Èá Ýðñåðå ç êáôÜóôáóç ôïõ ãåãïíüôïò-óõììåôå÷üíôùí (áðïäÝ÷ïìáé, áðïññßðôù,...)íá åìöáíßæåôáé óå ðáñÝíèåóç äßðëá áðü ôï üíïìá ôïõ êÜèå óõììåôÝ÷ïíôïò;
|
||||
show default view on main screen calendar el ÐáñïõóéÜóôå ðñïêáèïñéóìÝíç åìöÜíéóç óôçí êýñéá ïäüíç
|
||||
show invitations you rejected calendar el ÐáñïõóéÜóôå ôéò ðñïóêëÞóåéò ðïõ áðïññßøáôå
|
||||
show list of upcoming events calendar el ÐáñïõóéÜóôå ôç ëßóôá ôùí åðåñ÷üìåíùí ãåãïíüôùí
|
||||
show this month calendar el ÐáñïõóéÜóôå áõôü ôï ìÞíá
|
||||
show this week calendar el ÐáñïõóéÜóôå áõôÞí ôçí åâäïìÜäá
|
||||
single event calendar el ìïíáäéêü ãåãïíüò
|
||||
start calendar el ¸íáñîç
|
||||
start date/time calendar el Çìåñïìçíßá/¿ñá Ýíáñîçò
|
||||
startdate / -time calendar el çìåñïìçíßá/ -þñá Ýíáñîçò
|
||||
startdate and -time of the search calendar el çìåñïìçíßá Ýíáñîçò êáé þñá ôçò áíáæÞôçóçò
|
||||
startdate of the export calendar el Áñ÷éêÞ çìåñïìçíßá ôçò åîáãùãÞò
|
||||
status changed calendar el Ç êáôÜóôáóç Üëëáîå
|
||||
submit to repository calendar el ÕðïâïëÞ óôçí áðïèÞêç
|
||||
sun calendar el Êõñ
|
||||
tentative calendar el
|
||||
test import (show importable records <u>only</u> in browser) calendar el
|
||||
text calendar el
|
||||
th calendar el Ðå
|
||||
the following conflicts with the suggested time:<ul>%1</ul> calendar el
|
||||
the user %1 is not participating in this event! calendar el
|
||||
there was an error trying to connect to your news server.<br>please contact your admin to check the news servername, username or password. calendar el
|
||||
this day is shown as first day in the week or month view. calendar el
|
||||
this defines the end of your dayview. events after this time, are shown below the dayview. calendar el
|
||||
this defines the start of your dayview. events before this time, are shown above the dayview.<br>this time is also used as a default starttime for new events. calendar el
|
||||
this group that is preselected when you enter the planner. you can change it in the planner anytime you want. calendar el
|
||||
this is mostly caused by a not or wrongly configured smtp server. notify your administrator. calendar el
|
||||
this message is sent for canceled or deleted events. calendar el
|
||||
this message is sent for modified or moved events. calendar el
|
||||
this message is sent to every participant of events you own, who has requested notifcations about new events.<br>you can use certain variables which get substituted with the data of the event. the first line is the subject of the email. calendar el
|
||||
this message is sent when you accept, tentative accept or reject an event. calendar el
|
||||
this message is sent when you set an alarm for a certain event. include all information you might need. calendar el
|
||||
this month calendar el Áõôü ôï ìÞíá
|
||||
this week calendar el ÁõôÞ ôçí ÅâäïìÜäá
|
||||
this year calendar el Áõôü ôï ÷ñüíï
|
||||
tentative calendar el Äïêéìáóôéêüò
|
||||
this day is shown as first day in the week or month view. calendar el ÁõôÞ ç ìÝñá ðáñïõóéÜæåôáé ùò ç ðñþôç ìÝñá ôçò åâäïìáäéáßáò Þ ôçò ìçíéáßáò åìöÜíéóçò
|
||||
this defines the end of your dayview. events after this time, are shown below the dayview. calendar el Áõôü êáèïñßæåé ôï ôÝëïò ôçò çìåñÞóéáò ðñïâïëÞò. Ãåãïíüôá ìåôÜ áðü áõôÞ ôçí þñá, ðáñïõóéÜæïíôáé êÜôù áðü ôçí çìåñÞóéá ðñïâïëÞ.
|
||||
this defines the start of your dayview. events before this time, are shown above the dayview.<br>this time is also used as a default starttime for new events. calendar el Áõôü êáèïñßæåé ôçí áñ÷Þ ôçò çìåñÞóéáò ðñïâïëÞò. Ãåãïíüôá ðñéí áðü áõôÞ ôçí þñá, ðáñïõóéÜæïíôáé ðÜíù áðü ôçí çìåñÞóéá ðñïâïëÞ.<br>ÁõôÞ ç þñá ÷ñçóéìïðïéåßôáé åðßóçò êáé ùò ðñïêáèïñéóìÝíç þñá Ýíáñîçò ãéá íÝá ãåãïíüôá.
|
||||
thu calendar el ÐÝì
|
||||
title calendar el Ôßôëïò
|
||||
title of the event calendar el
|
||||
title-row calendar el
|
||||
to many might exceed your execution-time-limit calendar el
|
||||
to-firstname calendar el
|
||||
to-fullname calendar el
|
||||
to-lastname calendar el
|
||||
today calendar el ÓÞìåñá
|
||||
translation calendar el
|
||||
tu calendar el Ôñ
|
||||
tue calendar el Ôñß
|
||||
update a single entry by passing the fields. calendar el
|
||||
updated calendar el
|
||||
use end date calendar el
|
||||
view this entry calendar el
|
||||
we calendar el Ôå
|
||||
wed calendar el Ôåô
|
||||
week calendar el ÅâäïìÜäá
|
||||
weekday starts on calendar el Îåêßíçìá ôçò åâäïìÜäáò
|
||||
weekly calendar el
|
||||
weekview calendar el
|
||||
when creating new events default set to private calendar el
|
||||
which events do you want to see when you enter the calendar. calendar el
|
||||
which of calendar view do you want to see, when you start calendar ? calendar el
|
||||
work day ends on calendar el
|
||||
work day starts on calendar el
|
||||
workdayends calendar el
|
||||
yearly calendar el
|
||||
yearview calendar el
|
||||
you can either set a year or a occurence, not both !!! calendar el
|
||||
you can only set a year or a occurence !!! calendar el
|
||||
you do not have permission to add alarms to this event !!! calendar el
|
||||
you do not have permission to delete this alarm !!! calendar el
|
||||
you do not have permission to enable/disable this alarm !!! calendar el
|
||||
you do not have permission to read this record! calendar el
|
||||
you have %1 high priority events on your calendar today. common el
|
||||
you have 1 high priority event on your calendar today. common el
|
||||
you have a meeting scheduled for %1 calendar el
|
||||
you have not entered a title calendar el
|
||||
you have not entered a valid date calendar el
|
||||
you have not entered a valid time of day calendar el
|
||||
you have not entered participants calendar el
|
||||
you must enter one or more search keywords calendar el
|
||||
you must select a [iv]cal. (*.[iv]cs) calendar el
|
||||
you need to set either a day or a occurence !!! calendar el
|
||||
your meeting scheduled for %1 has been canceled calendar el
|
||||
your meeting that had been scheduled for %1 has been rescheduled to %2 calendar el
|
||||
your suggested time of <b> %1 - %2 </b> conflicts with the following existing calendar entries: calendar el
|
||||
yearly calendar el Åôçóßùò
|
||||
|
@ -12,7 +12,7 @@
|
||||
/* $Id$ */
|
||||
|
||||
$setup_info['calendar']['name'] = 'calendar';
|
||||
$setup_info['calendar']['version'] = '1.3.001';
|
||||
$setup_info['calendar']['version'] = '1.4';
|
||||
$setup_info['calendar']['app_order'] = 3;
|
||||
$setup_info['calendar']['enable'] = 1;
|
||||
|
||||
@ -46,11 +46,11 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['calendar']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['calendar']['depends'][] = array(
|
||||
'appname' => 'etemplate',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
|
||||
// installation checks for calendar
|
||||
|
@ -1520,4 +1520,10 @@
|
||||
|
||||
return $GLOBALS['setup_info']['calendar']['currentver'] = '1.3.001';
|
||||
}
|
||||
|
||||
$test[] = '1.3.001';
|
||||
function calendar_upgrade1_3_001()
|
||||
{
|
||||
return $GLOBALS['setup_info']['calendar']['currentver'] = '1.4';
|
||||
}
|
||||
?>
|
||||
|
@ -380,7 +380,7 @@ class imap_client {
|
||||
|
||||
case 'NO':
|
||||
/* Ignore this error from M$ exchange, it is not fatal (aka bug). */
|
||||
if (strstr($message[$tag], 'command resulted in') === false) {
|
||||
if (strpos($message[$tag], 'command resulted in') === false) {
|
||||
return PEAR::raiseError(sprintf(lang("Could not complete request. Reason Given: %s"), $message[$tag]), 'horde.error', null, null, $response[$tag]);
|
||||
}
|
||||
break;
|
||||
|
@ -361,7 +361,7 @@ class pleskimap extends defaultimap
|
||||
// we dont set passwords shorten then 5 chars, as it only give an error in plesk
|
||||
if (!is_null($password) && $password)
|
||||
{
|
||||
if (strlen($password) < 5 || strstr($password,$account_lid))
|
||||
if (strlen($password) < 5 || strpos($password,$account_lid) !== false)
|
||||
{
|
||||
$this->error = lang('Plesk requires passwords to have at least 5 characters and not contain the account-name --> password NOT set!!!');
|
||||
}
|
||||
@ -429,7 +429,7 @@ class pleskimap extends defaultimap
|
||||
{
|
||||
$line = trim(fgets($fp));
|
||||
list($name,$value) = split(': *',$line,2);
|
||||
if (!is_null($value) && !strstr($name,'An error occured') && $name)
|
||||
if (!is_null($value) && strpos($name,'An error occured') === false && $name)
|
||||
{
|
||||
$values[$name] = $value;
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ admin dn emailadmin de Admin DN
|
||||
admin password emailadmin de Admin Passwort
|
||||
admin username emailadmin de Administrator Benutzername
|
||||
advanced options emailadmin de erweiterte Einstellungen
|
||||
alternate email address emailadmin de zusätzliche EMailadressen
|
||||
alternate email address emailadmin de zusätzliche E-Mail-Adressen
|
||||
any application emailadmin de jede Anwendung
|
||||
any group emailadmin de jede Gruppe
|
||||
bad login name or password. emailadmin de Falscher Benutzername oder Passwort.
|
||||
@ -13,7 +13,7 @@ bad or malformed request. server responded: %s emailadmin de Falsche oder ung
|
||||
bad request: %s emailadmin de Falsche Anfrage: %s
|
||||
can be used by application emailadmin de Kann von folgender Anwendung verwendet werden
|
||||
can be used by group emailadmin de Kann von folgender Gruppe verwendet werden
|
||||
connection dropped by imap server. emailadmin de Verbindung von IMAP Server beendet.
|
||||
connection dropped by imap server. emailadmin de Verbindung von IMAP-Server beendet.
|
||||
could not complete request. reason given: %s emailadmin de Konnte Anfrage nicht beenden. Grund: %s
|
||||
could not open secure connection to the imap server. %s : %s. emailadmin de Konnte keine sichere Verbindung zum IMAP Server aufbauen. %s: %s.
|
||||
cram-md5 or digest-md5 requires the auth_sasl package to be installed. emailadmin de CRAM-MD5 oder DIGEST-MD5 erforder das das Auth_SASL Packet instaliert ist.
|
||||
@ -23,19 +23,19 @@ default emailadmin de Vorgabe
|
||||
deliver extern emailadmin de extern ausliefern
|
||||
do you really want to delete this profile emailadmin de Wollen Sie dieses Profil wirklich löschen
|
||||
domainname emailadmin de Domänenname
|
||||
edit email settings emailadmin de EMail Einstellungen
|
||||
email account active emailadmin de EMailkonto aktiv
|
||||
email address emailadmin de EMailadresse
|
||||
email settings common de EMailkonto
|
||||
edit email settings emailadmin de E-Mail-Einstellungen
|
||||
email account active emailadmin de E-Mail-Konto aktiv
|
||||
email address emailadmin de E-Mail-Adresse
|
||||
email settings common de E-Mail-Konto
|
||||
emailadmin emailadmin de EMailAdmin
|
||||
enable cyrus imap server administration emailadmin de Cyrus IMAP-Server Administration aktivieren
|
||||
enable sieve emailadmin de Sieve aktivieren
|
||||
encryption settings emailadmin de Verschlüsselungseinstellungen
|
||||
enter your default mail domain (from: user@domain) emailadmin de Standard EMail-Domain (Von: benutzer@domain)
|
||||
enter your default mail domain (from: user@domain) emailadmin de Standard E-Mail-Domain (Von: benutzer@domain)
|
||||
error connecting to imap server. %s : %s. emailadmin de Fehler beim Verbinden mit dem IMAP Server. %s : %s.
|
||||
error connecting to imap server: [%s] %s. emailadmin de Fehler beim Verbinden mit dem IMAP Server. [%s] %s.
|
||||
forward also to emailadmin de zusätzlich weiterleiten
|
||||
forward email's to emailadmin de EMail's weiterleiten an
|
||||
forward email's to emailadmin de E-Mails weiterleiten an
|
||||
forward only emailadmin de nur weiterleiten
|
||||
global options emailadmin de Globale Optionen
|
||||
if using ssl or tls, you must have the php openssl extension loaded. emailadmin de Wenn Sie SSL oder TLS benutzern, müssen Sie die openssl PHP Erweiterung geladen haben.
|
||||
@ -53,17 +53,17 @@ ldap basedn emailadmin de LDAP BaseDN
|
||||
ldap server emailadmin de LDAP Server
|
||||
ldap server accounts dn emailadmin de LDAP-Server Benutzerkonten DN
|
||||
ldap server admin dn emailadmin de LDAP-Server Administrator DN
|
||||
ldap server admin password emailadmin de LDAP-Server Administrator Passwort
|
||||
ldap server admin password emailadmin de LDAP-Server Administrator-Passwort
|
||||
ldap server hostname or ip address emailadmin de LDAP-Server Hostname oder IP-Adresse
|
||||
ldap settings emailadmin de LDAP Einstellungen
|
||||
ldap settings emailadmin de LDAP-Einstellungen
|
||||
leave empty for no quota emailadmin de leer lassen um Quota zu deaktivieren
|
||||
mail settings admin de Mail Einstellungen
|
||||
mail settings admin de E-Mail-Einstellungen
|
||||
name of organisation emailadmin de Name der Organisation
|
||||
no alternate email address emailadmin de keine zusätzlichen EMailadressen
|
||||
no alternate email address emailadmin de keine zusätzlichen E-Mail-Adressen
|
||||
no encryption emailadmin de keine Verschlüsselung
|
||||
no forwarding email address emailadmin de keine Weiterleitungsadresse definiert
|
||||
no message returned. emailadmin de Keine Nachricht zurückgeliefert.
|
||||
no supported imap authentication method could be found. emailadmin de Keine unterstützte IMAP Authentifizierungsmethode gefunden.
|
||||
no supported imap authentication method could be found. emailadmin de Keine unterstützte IMAP-Authentifizierungsmethode gefunden.
|
||||
order emailadmin de Reihenfolge
|
||||
organisation emailadmin de Organisation
|
||||
plesk can't rename users --> request ignored emailadmin de Plesk kann keine Benutzer umbenennen --> Anforderung ignoriert
|
||||
@ -83,7 +83,7 @@ quota settings emailadmin de Quota Einstellungen
|
||||
remove emailadmin de Entfernen
|
||||
select type of imap/pop3 server emailadmin de IMAP/POP3-Server Typ auswählen
|
||||
select type of smtp server emailadmin de SMTP-Server Typ auswählen
|
||||
server settings emailadmin de Server Einstellungen
|
||||
server settings emailadmin de Server-Einstellungen
|
||||
sieve server hostname or ip address emailadmin de Sieve-Server Hostname oder IP-Adresse
|
||||
sieve server port emailadmin de Sieve-Server Port
|
||||
sieve settings emailadmin de Sieve Einstellungen
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
$setup_info['emailadmin']['name'] = 'emailadmin';
|
||||
$setup_info['emailadmin']['title'] = 'EMailAdmin';
|
||||
$setup_info['emailadmin']['version'] = '1.2.002';
|
||||
$setup_info['emailadmin']['version'] = '1.4';
|
||||
$setup_info['emailadmin']['app_order'] = 10;
|
||||
$setup_info['emailadmin']['enable'] = 2;
|
||||
|
||||
@ -38,11 +38,11 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['emailadmin']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3','1.4')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['felamimail']['depends'][] = array(
|
||||
'appname' => 'egw-pear',
|
||||
'versions' => Array('1.4.000')
|
||||
'versions' => Array('1.4.000','1.5')
|
||||
);
|
||||
// installation checks for felamimail
|
||||
$setup_info['emailadmin']['check_install'] = array(
|
||||
|
@ -195,4 +195,11 @@
|
||||
|
||||
return $GLOBALS['setup_info']['emailadmin']['currentver'] = '1.2.002';
|
||||
}
|
||||
|
||||
|
||||
$test[] = '1.2.002';
|
||||
function emailadmin_upgrade1_2_002()
|
||||
{
|
||||
return $GLOBALS['setup_info']['emailadmin']['currentver'] = '1.4';
|
||||
}
|
||||
?>
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
$setup_info['et_media']['name'] = 'et_media';
|
||||
$setup_info['et_media']['title'] = 'eT-Media';
|
||||
$setup_info['et_media']['version'] = '1.2';
|
||||
$setup_info['et_media']['version'] = '1.4';
|
||||
$setup_info['et_media']['app_order'] = 100; // at the end
|
||||
$setup_info['et_media']['tables'] = array('egw_et_media');
|
||||
$setup_info['et_media']['enable'] = 1;
|
||||
@ -34,9 +34,9 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['et_media']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.2','1.3','1.4')
|
||||
'versions' => Array('1.2','1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['et_media']['depends'][] = array(
|
||||
'appname' => 'etemplate',
|
||||
'versions' => Array('1.2','1.3','1.4')
|
||||
'versions' => Array('1.2','1.3','1.4','1.5')
|
||||
);
|
||||
|
@ -61,7 +61,7 @@
|
||||
foreach($this->customfields as $name => $field)
|
||||
{
|
||||
// check if the customfield get's displayed for type $value, we can have multiple comma-separated types now
|
||||
if (!empty($field['type2']) && !strstr(','.$field['type2'].',',','.$value.','))
|
||||
if (!empty($field['type2']) && strpos(','.$field['type2'].',',','.$value.',') === false)
|
||||
{
|
||||
continue; // not for our content type
|
||||
}
|
||||
|
@ -769,7 +769,7 @@
|
||||
}
|
||||
else // add the tables array
|
||||
{
|
||||
if (strstr($fnew,'?>')) // remove a closeing tag
|
||||
if (strpos($fnew,'?>') !== false) // remove a closeing tag
|
||||
{
|
||||
$fnew = str_replace('?>','',$fnew);
|
||||
}
|
||||
|
246
etemplate/inc/class.etemplate_request.inc.php
Normal file
246
etemplate/inc/class.etemplate_request.inc.php
Normal file
@ -0,0 +1,246 @@
|
||||
<?php
|
||||
/**
|
||||
* eGroupWare - eTemplate request object
|
||||
*
|
||||
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
|
||||
* @package etemplate
|
||||
* @link http://www.egroupware.org
|
||||
* @author Ralf Becker <RalfBecker@outdoor-training.de>
|
||||
* @copyright (c) 2007 by Ralf Becker <RalfBecker@outdoor-training.de>
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
/**
|
||||
* Class to represent the persitent information stored on the server for each eTemplate request
|
||||
*
|
||||
* The information is stored in the users session
|
||||
*
|
||||
* There are two ways to instanciate a request object:
|
||||
*
|
||||
* a) a new request:
|
||||
*
|
||||
* $request = new etemplate_request(); $id = $request->id();
|
||||
*
|
||||
* b) open or modify an existing request:
|
||||
*
|
||||
* if (!($request = etemplate_request::read($id)))
|
||||
* {
|
||||
* // request not found
|
||||
* }
|
||||
*
|
||||
* Ajax request can use this object to open the original request by using the id, they have to transmitt back,
|
||||
* and register further variables, modify the registered ones or delete them.
|
||||
*/
|
||||
class etemplate_request
|
||||
{
|
||||
/**
|
||||
* here is the request data stored
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
private $data=array();
|
||||
/**
|
||||
* Flag if data has been modified and therefor need to be stored again in the session
|
||||
*
|
||||
* @var boolean
|
||||
*/
|
||||
private $data_modified=false;
|
||||
/**
|
||||
* request id
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
private $id;
|
||||
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @param array $id_data
|
||||
* @return etemplate_request
|
||||
*/
|
||||
function __construct($id=null)
|
||||
{
|
||||
if (!$id) $id = $this->request_id();
|
||||
|
||||
$this->id = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* return the id of this request
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
function id()
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Read the request via it's id, returns a request_object or false
|
||||
*
|
||||
* @param string $id
|
||||
* @return etempalte_request/boolean the object or false if $id is not found
|
||||
*/
|
||||
static function read($id)
|
||||
{
|
||||
if (!($data = $GLOBALS['egw']->session->request($id,'etemplate')))
|
||||
{
|
||||
return false; // request not found
|
||||
}
|
||||
$request = new etemplate_request($id);
|
||||
$request->data = $data;
|
||||
|
||||
return $request;
|
||||
}
|
||||
|
||||
/**
|
||||
* Register a form-variable to be processed
|
||||
*
|
||||
* @param string $form_name form-name
|
||||
* @param string $type etemplate type
|
||||
* @param array $data=array() optional extra data
|
||||
*/
|
||||
public function set_to_process($form_name,$type,$data=array())
|
||||
{
|
||||
if (!$form_name || !$type) return;
|
||||
|
||||
$data['type'] = $type;
|
||||
|
||||
$this->data['to_process'][$form_name] = $data;
|
||||
$this->data_modified = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Unregister a form-variable to be no longer processed
|
||||
*
|
||||
* @param string $form_name form-name
|
||||
*/
|
||||
public function unset_to_process($form_name)
|
||||
{
|
||||
unset($this->data['to_process'][$form_name]);
|
||||
$this->data_modified = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* return the data of a form-var to process or the whole array
|
||||
*
|
||||
* @param string $form_name=null
|
||||
* @return array
|
||||
*/
|
||||
public function get_to_process($form_name=null)
|
||||
{
|
||||
return $form_name ? $this->data['to_process'][$form_name] : $this->data['to_process'];
|
||||
}
|
||||
|
||||
/**
|
||||
* check if something set for a given $form_name
|
||||
*
|
||||
* @param string $form_name
|
||||
* @return boolean
|
||||
*/
|
||||
public function isset_to_process($form_name)
|
||||
{
|
||||
return isset($this->data['to_process'][$form_name]);
|
||||
}
|
||||
|
||||
/**
|
||||
* magic function to set all request-vars, used eg. as $request->method = 'app.class.method';
|
||||
*
|
||||
* @param string $var
|
||||
* @param mixed $val
|
||||
*/
|
||||
function __set($var,$val)
|
||||
{
|
||||
if ($this->data[$var] !== $val)
|
||||
{
|
||||
$this->data[$var] = $val;
|
||||
$this->data_modified = true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* magic function to access the request-vars, used eg. as $method = $request->method;
|
||||
*
|
||||
* @param string $var
|
||||
* @return mixed
|
||||
*/
|
||||
function __get($var)
|
||||
{
|
||||
return $this->data[$var];
|
||||
}
|
||||
|
||||
/**
|
||||
* creates a new request-id via microtime()
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
function _request_id()
|
||||
{
|
||||
list($msec,$sec) = explode(' ',microtime());
|
||||
$time = 100 * $sec + (int)(100 * $msec); // gives precision of 1/100 sec
|
||||
$id = $GLOBALS['egw_info']['flags']['currentapp'] .':'. $time;
|
||||
|
||||
return $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* saves content,readonlys,template-keys, ... via eGW's app_session function
|
||||
*
|
||||
* As a user may open several windows with the same content/template wie generate a location-id from microtime
|
||||
* which is used as location for request to descriminate between the different windows. This location-id
|
||||
* is then saved as a hidden-var in the form. The above mentions session-id has nothing to do / is different
|
||||
* from the session-id which is constant for all windows opened in one session.
|
||||
*/
|
||||
function __destruct()
|
||||
{
|
||||
if ($this->data_modified) $GLOBALS['egw']->session->app_session($this->id,'etemplate',$this->data);
|
||||
|
||||
if (substr($GLOBALS['egw_info']['server']['sessions_type'],0,4) == 'php4' && !$this->garbage_collection_done)
|
||||
{
|
||||
$this->php4_request_garbage_collection();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* a little bit of garbage collection for php4 sessions (their size is limited by memory_limit)
|
||||
*
|
||||
* With constant eTemplate use it can grow quite big and lead to unusable sessions (php terminates
|
||||
* before any output with "Allowed memory size of ... exhausted").
|
||||
* We delete now sessions once used after 10min and sessions never or multiple used after 60min.
|
||||
*/
|
||||
private function _php4_request_garbage_collection()
|
||||
{
|
||||
// now we are on php4 sessions and do a bit of garbage collection
|
||||
$app_sessions =& $_SESSION[EGW_SESSION_VAR]['app_sessions']['etemplate'];
|
||||
$session_used =& $app_sessions['session_used'];
|
||||
|
||||
if ($this->id)
|
||||
{
|
||||
//echo "session_used[$id_used]='".$session_used[$id_used]."'<br/>\n";
|
||||
++$session_used[$this->id]; // count the number of times a session got used
|
||||
}
|
||||
$this->garbage_collection_done = true;
|
||||
|
||||
if (count($app_sessions) < 20) return; // we dont need to care
|
||||
|
||||
list($msec,$sec) = explode(' ',microtime());
|
||||
$now = 100 * $sec + (int)(100 * $msec); // gives precision of 1/100 sec
|
||||
|
||||
foreach(array_keys($app_sessions) as $id)
|
||||
{
|
||||
list(,$time) = explode(':',$id);
|
||||
|
||||
if (!$time) continue; // other data, no session
|
||||
|
||||
//echo ++$n.') '.$id.': '.(($now-$time)/100.0)."secs old, used=".$session_used[$id].", size=".strlen($app_sessions[$id])."<br>\n";
|
||||
|
||||
if ($session_used[$id] == 1 && $time < $now - 10*6000 || // session used and older then 10min
|
||||
$time < $now - 60*6000) // session not used and older then 1h
|
||||
{
|
||||
//echo "<p>boetemplate::php4_session_garbage_collection('$id_used'): unsetting session '$id' (now=$now)</p>\n";
|
||||
unset($app_sessions[$id]);
|
||||
unset($session_used[$id]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -496,7 +496,7 @@
|
||||
{
|
||||
$cols[$widget['name']] = $label;
|
||||
}
|
||||
elseif (strstr($cols[$col],$label) === false)
|
||||
elseif (strpos($cols[$col],$label) === false)
|
||||
{
|
||||
$cols[$col] .= ($cols[$col] ? ', ' : '').$label;
|
||||
$cols['name2col'][$col] = $col;
|
||||
|
@ -328,7 +328,7 @@ class so_sql
|
||||
{
|
||||
foreach($query as $col => $val)
|
||||
{
|
||||
if (is_int($col) || strstr($join,$col) === false) continue;
|
||||
if (is_int($col) || strpos($join,$col) === false) continue;
|
||||
$query[] = $this->db->expression($this->table_name,$this->table_name.'.',array($col=>$val));
|
||||
unset($query[$col]);
|
||||
}
|
||||
|
@ -972,7 +972,7 @@
|
||||
{
|
||||
if (($keys['name'] != $last['name'] || // write only newest version
|
||||
$keys['template'] != $last['template']) &&
|
||||
!strstr($keys['name'],'test'))
|
||||
strpos($keys['name'],'test') === false)
|
||||
{
|
||||
$tpl->read($keys);
|
||||
$to_trans += $tpl->getToTranslate();
|
||||
@ -1340,7 +1340,7 @@
|
||||
foreach($strings as $str)
|
||||
{
|
||||
if (strlen($str) > 1 && $str{0} != '@' && $str{0} != '$' &&
|
||||
strstr($str,'$row') === false && strstr($str,'$cont') === false)
|
||||
strpos($str,'$row') === false && strpos($str,'$cont') === false)
|
||||
{
|
||||
$to_trans[trim(strtolower($str))] = $str;
|
||||
}
|
||||
|
@ -89,13 +89,13 @@
|
||||
$tab_widget =& new etemplate('etemplate.tab_widget');
|
||||
$tab_widget->no_onclick = true;
|
||||
|
||||
if ($value && !strstr($value,'.'))
|
||||
if ($value && strpos($value,'.') === false)
|
||||
{
|
||||
$value = $tmpl->name . '.' . $value;
|
||||
}
|
||||
foreach($names as $k => $name)
|
||||
{
|
||||
if (!strstr($name,'.'))
|
||||
if (strpos($name,'.') === false)
|
||||
{
|
||||
$name = $names[$k] = $tmpl->name . '.' . $name;
|
||||
}
|
||||
@ -112,7 +112,7 @@
|
||||
|
||||
foreach($names as $k => $name)
|
||||
{
|
||||
if (!strstr($name,'.'))
|
||||
if (strpos($name,'.') === false)
|
||||
{
|
||||
$name = $names[$k] = $tmpl->name . '.' . $name;
|
||||
}
|
||||
|
@ -928,7 +928,7 @@
|
||||
{
|
||||
$help = lang($help);
|
||||
}
|
||||
if (($use_tooltip_for_help = strstr($help,'<') && strip_tags($help) != $help)) // helptext is html => use a tooltip
|
||||
if (($use_tooltip_for_help = strpos($help,'<') !== false && strip_tags($help) != $help)) // helptext is html => use a tooltip
|
||||
{
|
||||
$options .= $this->html->tooltip($help);
|
||||
}
|
||||
@ -1169,11 +1169,11 @@
|
||||
$onclick = ($onclick ? preg_replace('/^return(.*);$/','if (\\1) ',$onclick) : '').$cell['onchange'];
|
||||
}
|
||||
$html .= !$readonly ? $this->html->submit_button($form_name,$label,$onclick,
|
||||
strlen($label) <= 1 || $cell['no_lang'],$options,$img,$app,(($type=='buttononly') ? 'button' : 'submit')) :
|
||||
strlen($label) <= 1 || $cell['no_lang'],$options,$img,$app,$type == 'buttononly' ? 'button' : 'submit') :
|
||||
$this->html->image($app,$ro_img);
|
||||
}
|
||||
$extra_label = False;
|
||||
if (!$readonly)
|
||||
if (!$readonly && $type != 'buttononly') // input button, are never submitted back!
|
||||
{
|
||||
$GLOBALS['egw_info']['etemplate']['to_process'][$form_name] = $cell['type'];
|
||||
if (strtolower($name) == 'cancel')
|
||||
|
@ -304,8 +304,8 @@
|
||||
|
||||
if($this->data_type != 'node')
|
||||
{
|
||||
$found_at = strstr($this->data,'PHP_SERIALIZED_OBJECT&:');
|
||||
if($found_at != False)
|
||||
$found_at = strpos($this->data,'PHP_SERIALIZED_OBJECT&:');
|
||||
if($found_at !== False)
|
||||
{
|
||||
return unserialize(str_replace ('PHP_SERIALIZED_OBJECT&:', '', $this->data));
|
||||
}
|
||||
@ -359,8 +359,8 @@
|
||||
$retval['attributes'] = $this->attributes;
|
||||
if($this->data_type != 'node')
|
||||
{
|
||||
$found_at = strstr($this->data,'PHP_SERIALIZED_OBJECT&:');
|
||||
if($found_at != False)
|
||||
$found_at = strpos($this->data,'PHP_SERIALIZED_OBJECT&:');
|
||||
if($found_at !== False)
|
||||
{
|
||||
$retval['value'] = unserialize(str_replace ('PHP_SERIALIZED_OBJECT&:', '', $this->data));
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
@ -84,6 +84,7 @@ creates an english ('en') langfile from label and helptexts (for application in
|
||||
css class for the table-tag etemplate fr Classe CSS pour le tag de la table
|
||||
css properties etemplate fr propriétés CSS
|
||||
css-class name for this row, preset: 'nmh' = nextmatch header, 'nmr' = alternating nm row, 'nmr0'+'nmr1' nm rows etemplate fr Nom de la classe CSS pour cette ligne, préréglé: 'nmh' = entête prochaine correspondance, 'nmr' = alterne la ligne prochaine correspondance, 'nmr0'+'nmr1' lignes prochaines correspondances
|
||||
css-class name for this row, preset: 'th' = header, 'row' = alternating row, 'row_off'+'row_on' rows etemplate fr nom de la classe CSS pour cette ligne, préréglé: 'th' = en-tête, 'row' = ligne alternante, 'row_off'+'row_on' lignes
|
||||
css-styles etemplate fr Styles CSS
|
||||
custom etemplate fr personnalisé
|
||||
custom fields etemplate fr champs personnalisé
|
||||
|
@ -13,7 +13,7 @@
|
||||
/* $Id$ */
|
||||
|
||||
$setup_info['etemplate']['name'] = 'etemplate';
|
||||
$setup_info['etemplate']['version'] = '1.2';
|
||||
$setup_info['etemplate']['version'] = '1.4';
|
||||
$setup_info['etemplate']['app_order'] = 60; // just behind the developers-tools
|
||||
$setup_info['etemplate']['tables'] = array('egw_etemplate');
|
||||
$setup_info['etemplate']['enable'] = 1;
|
||||
@ -39,6 +39,6 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['etemplate']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
?>
|
||||
|
||||
|
@ -92,4 +92,18 @@
|
||||
$GLOBALS['setup_info']['etemplate']['currentver'] = '1.2';
|
||||
return $GLOBALS['setup_info']['etemplate']['currentver'];
|
||||
}
|
||||
|
||||
|
||||
$test[] = '1.2';
|
||||
function etemplate_upgrade1_2()
|
||||
{
|
||||
$GLOBALS['egw_setup']->oProc->AlterColumn('egw_etemplate','et_modified',array(
|
||||
'type' => 'int',
|
||||
'precision' => '8',
|
||||
'nullable' => False,
|
||||
'default' => '0'
|
||||
));
|
||||
|
||||
return $GLOBALS['setup_info']['etemplate']['currentver'] = '1.4';
|
||||
}
|
||||
?>
|
||||
|
@ -860,7 +860,7 @@
|
||||
$uiinfolog->import_mail(
|
||||
$this->sessionData['to'],
|
||||
$this->sessionData['subject'],
|
||||
$this->sessionData['body'],
|
||||
$this->convertHTMLToText($this->sessionData['body']),
|
||||
$this->sessionData['attachments']
|
||||
);
|
||||
}
|
||||
|
@ -1269,6 +1269,11 @@
|
||||
foreach((array)$headersNew as $headerObject) {
|
||||
#if($count == 0) _debug_array($headerObject);
|
||||
$uid = $headerObject['UID'];
|
||||
|
||||
// make dates like "Mon, 23 Apr 2007 10:11:06 UT" working with strtotime
|
||||
if(substr($headerObject['DATE'],-2) === 'UT') {
|
||||
$headerObject['DATE'] .= 'C';
|
||||
}
|
||||
|
||||
$retValue['header'][$sortOrder[$uid]]['subject'] = $this->decode_header($headerObject['SUBJECT']);
|
||||
$retValue['header'][$sortOrder[$uid]]['size'] = $headerObject['SIZE'];
|
||||
|
@ -19,8 +19,8 @@ all address books felamimail de Alle Adressb
|
||||
all folders felamimail de Alle Ordner
|
||||
all of felamimail de mit allen
|
||||
allow images from external sources in html emails felamimail de Erlaube Bilder von externen Quellen in HTML emails
|
||||
allways a new window felamimail de jede Mail in einem neuen Fenster
|
||||
always show html emails felamimail de HTML Emails mmer anzeigen
|
||||
allways a new window felamimail de jede E-Mail in einem neuen Fenster
|
||||
always show html emails felamimail de HTML-E-Mails immer anzeigen
|
||||
and felamimail de und
|
||||
any of felamimail de mit einem
|
||||
any status felamimail de Alle Stati
|
||||
@ -50,7 +50,7 @@ close all felamimail de Schlie
|
||||
close this page felamimail de Diese Seite schließen
|
||||
close window felamimail de Fenster schließen
|
||||
color felamimail de Farbe
|
||||
compose felamimail de EMail schreiben
|
||||
compose felamimail de E-Mail schreiben
|
||||
compress folder felamimail de Ordner komprimieren
|
||||
condition felamimail de Bedingung
|
||||
configuration felamimail de Konfiguration
|
||||
@ -90,10 +90,10 @@ discard felamimail de verwerfen
|
||||
discard message felamimail de Nachricht verwerfen
|
||||
display message in new window felamimail de Nachricht in neuem Fenster anzeigen
|
||||
display messages in multiple windows felamimail de Nachrichten in mehreren Fenstern anzeigen
|
||||
display of html emails felamimail de HTML EMails anzeigen
|
||||
display of html emails felamimail de HTML-E-Mails anzeigen
|
||||
display only when no plain text is available felamimail de nur anzeigen wenn kein Plain Text vorhanden ist
|
||||
display preferences felamimail de Anzeige Einstellungen
|
||||
displaying html messages is disabled felamimail de Die Anzeige von HTML EMails ist deaktiviert.
|
||||
displaying html messages is disabled felamimail de Die Anzeige von HTML-E-Mails ist deaktiviert.
|
||||
do it! felamimail de Mach es!
|
||||
do not use sent felamimail de Gesendete Objekte (Sent) nicht verwenden
|
||||
do not use trash felamimail de Gelöschte Objekte (Trash) nicht verwenden
|
||||
@ -104,7 +104,7 @@ does not contain felamimail de enth
|
||||
does not match felamimail de trifft nicht zu
|
||||
does not match regexp felamimail de trift nicht zu regulärer Ausdruck
|
||||
don't use draft folder felamimail de keine Vorlagen Ordner verwenden
|
||||
don't use sent felamimail de Keinen gesendenten EMail speichern
|
||||
don't use sent felamimail de Keinen gesendeten E-Mails speichern
|
||||
don't use trash felamimail de Keinen Mülleimer verwenden
|
||||
down felamimail de runter
|
||||
download felamimail de Speichern
|
||||
@ -113,15 +113,15 @@ draft folder felamimail de Vorlagen Ordner
|
||||
e-mail felamimail de E-Mail
|
||||
e-mail address felamimail de E-Mailadresse
|
||||
e-mail folders felamimail de E-Mail Ordner
|
||||
edit email forwarding address felamimail de Bearbeiten der EMailweiterleitung
|
||||
edit email forwarding address felamimail de Bearbeiten der E-Mail-Weiterleitung
|
||||
edit filter felamimail de Filter bearbeiten
|
||||
edit rule felamimail de Regel bearbeiten
|
||||
edit selected felamimail de Ausgewählte bearbeiten
|
||||
edit vacation settings felamimail de Abwesenheitsnotiz bearbeiten
|
||||
email address felamimail de EMailadresse
|
||||
email address felamimail de E-Mail-Adresse
|
||||
email forwarding address felamimail de Zieladresse
|
||||
email signature felamimail de EMail Signatur
|
||||
emailaddress felamimail de EMailadresse
|
||||
email signature felamimail de E-Mail-Signatur
|
||||
emailaddress felamimail de E-Mail-Adresse
|
||||
empty trash felamimail de Trash-Ordner leeren
|
||||
enable felamimail de Aktivieren
|
||||
encrypted connection felamimail de verschlüsselte Verbindung
|
||||
@ -184,7 +184,7 @@ identifying name felamimail de Identifizierender Name
|
||||
identity felamimail de Identität
|
||||
if felamimail de Wenn
|
||||
if from contains felamimail de wenn Von enthält
|
||||
if mail header felamimail de wenn EMail Header enthält
|
||||
if mail header felamimail de wenn E-Mail-Header enthält
|
||||
if message size felamimail de wenn Nachrichtengröße
|
||||
if subject contains felamimail de wenn Betreff enthält
|
||||
if to contains felamimail de wenn An enthält
|
||||
@ -210,7 +210,7 @@ javascript felamimail de JavaScript
|
||||
jumping to end felamimail de springe zum Ende
|
||||
jumping to start felamimail de springe zum Anfang
|
||||
keep a copy of the message in your inbox felamimail de eine Kopie der Nachricht in der INBOX behalten
|
||||
keep local copy of email felamimail de Kopie der EMail behalten
|
||||
keep local copy of email felamimail de Kopie der E-Mail behalten
|
||||
kilobytes felamimail de Kilobytes
|
||||
language felamimail de Sprache
|
||||
last name felamimail de Nachname
|
||||
@ -220,12 +220,12 @@ less than felamimail de kleiner als
|
||||
light gray felamimail de Hellgrau
|
||||
list all felamimail de Alle anzeigen
|
||||
loading felamimail de lade
|
||||
location of buttons when composing felamimail de Ort der Knöpfe beim EMail schreiben
|
||||
location of buttons when composing felamimail de Ort der Knöpfe beim E-Mail schreiben
|
||||
mail server login type admin de Typ der Mailserver Anmeldung
|
||||
mail settings felamimail de EMail Einstellungen
|
||||
mail settings felamimail de E-Mail-Einstellungen
|
||||
mainmessage felamimail de Hauptnachricht
|
||||
manage emailaccounts preferences de EMailkonten verwalten
|
||||
manage emailfilter / vacation preferences de Verwalten der EMailfilter und Abwesenheitsnotiz
|
||||
manage emailaccounts felamimail de E-Mail-Konten verwalten
|
||||
manage emailfilter / vacation preferences de Verwalten der E-Mail-Filter und Abwesenheitsnotiz
|
||||
manage folders common de Ordner verwalten
|
||||
manage sieve common de Sieve Scripte verwalten
|
||||
manage signatures felamimail de Signaturen verwalten
|
||||
@ -267,7 +267,7 @@ no messages were selected. felamimail de Es wurde keine NAchricht ausgew
|
||||
no plain text part found felamimail de Kein Text Teil gefunden.
|
||||
no previous message felamimail de Keine vorherige Nachricht vorhanden
|
||||
no supported imap authentication method could be found. felamimail de Keine unterstützte IMAP Authentifizierungsmethode gefunden.
|
||||
no valid emailprofile selected!! felamimail de Sie haben kein gültiges Email Profil ausgewählt!
|
||||
no valid emailprofile selected!! felamimail de Sie haben kein gültiges E-Mail-Profil ausgewählt!
|
||||
none felamimail de kein
|
||||
on behalf of felamimail de im Auftrag von
|
||||
one address is not valid felamimail de Eine Adresse ist ungültig
|
||||
@ -290,7 +290,7 @@ port felamimail de Port
|
||||
posting felamimail de sende
|
||||
previous felamimail de vorherige
|
||||
previous message felamimail de vorherige Nachricht
|
||||
print it felamimail de EMail drucken
|
||||
print it felamimail de E-Mail drucken
|
||||
print this page felamimail de Diese Seite drucken
|
||||
quicksearch felamimail de Schnellsuche
|
||||
read felamimail de gelesen
|
||||
@ -311,7 +311,7 @@ reply all felamimail de allen Antworten
|
||||
reply to felamimail de Antwort an
|
||||
replyto felamimail de Antwort an
|
||||
respond felamimail de Antworte
|
||||
respond to mail sent to felamimail de Anworte auf EMails die gesendet werden an
|
||||
respond to mail sent to felamimail de Antworte auf E-Mails die gesendet werden an
|
||||
return felamimail de Zurück
|
||||
return to options page felamimail de zurück zu Einstellungen
|
||||
right felamimail de Rechts
|
||||
@ -329,11 +329,11 @@ search felamimail de Suchen
|
||||
search for felamimail de Suchen nach
|
||||
select felamimail de Auswählen
|
||||
select all felamimail de alle auswählen
|
||||
select emailprofile felamimail de EMailprofil auswählen
|
||||
select emailprofile felamimail de E-Mail-Profil auswählen
|
||||
select folder felamimail de Ordner auswählen
|
||||
select your mail server type admin de Wählen Sie den Typ des Mailservers
|
||||
send felamimail de Senden
|
||||
send a reject message felamimail de Ablehnungsemail senden
|
||||
send a reject message felamimail de Ablehnungs-E-Mail senden
|
||||
sent folder felamimail de Ordner für gesendete Nachrichten
|
||||
server supports mailfilter(sieve) felamimail de Server unterstützt Mailfilter(Sieve)
|
||||
show header felamimail de Kopfzeilen anzeigen
|
||||
@ -395,7 +395,7 @@ unsubscribed successfully! felamimail de Erfolgreich abbestellt
|
||||
up felamimail de hoch
|
||||
updating message status felamimail de aktualisiere Nachrichtenstatus
|
||||
updating view felamimail de aktualisiere Ansicht
|
||||
use <a href="%1">emailadmin</a> to create profiles felamimail de benutzen Sie <a href="%1">EmailAdmin</a> um Profile zu erstellen
|
||||
use <a href="%1">emailadmin</a> to create profiles felamimail de benutzen Sie <a href="%1">EMailAdmin</a> um Profile zu erstellen
|
||||
use a signature felamimail de Signatur benutzen
|
||||
use a signature? felamimail de Eine Signatur benutzen?
|
||||
use addresses felamimail de Adresse benutzen
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
$setup_info['felamimail']['name'] = 'felamimail';
|
||||
$setup_info['felamimail']['title'] = 'FeLaMiMail';
|
||||
$setup_info['felamimail']['version'] = '1.3.006';
|
||||
$setup_info['felamimail']['version'] = '1.4';
|
||||
$setup_info['felamimail']['app_order'] = 2;
|
||||
$setup_info['felamimail']['enable'] = 1;
|
||||
|
||||
@ -40,15 +40,15 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['felamimail']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.2','1.3','1.4')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['felamimail']['depends'][] = array(
|
||||
'appname' => 'emailadmin',
|
||||
'versions' => Array('1.2')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['felamimail']['depends'][] = array(
|
||||
'appname' => 'egw-pear',
|
||||
'versions' => Array('1.4.000')
|
||||
'versions' => Array('1.4.000','1.5')
|
||||
);
|
||||
// installation checks for felamimail
|
||||
$setup_info['felamimail']['check_install'] = array(
|
||||
|
@ -418,4 +418,11 @@
|
||||
|
||||
return $GLOBALS['setup_info']['felamimail']['currentver'] = '1.3.006';
|
||||
}
|
||||
|
||||
|
||||
$test[] = '1.3.006';
|
||||
function felamimail_upgrade1_3_006()
|
||||
{
|
||||
return $GLOBALS['setup_info']['felamimail']['currentver'] = '1.4';
|
||||
}
|
||||
?>
|
||||
|
@ -34,9 +34,6 @@
|
||||
|
||||
function bofilemanager()
|
||||
{
|
||||
$this->so =& CreateObject('filemanager.sofilemanager');
|
||||
$this->so->db_init();
|
||||
|
||||
$this->vfs =& CreateObject('phpgwapi.vfs');
|
||||
|
||||
error_reporting(4);
|
||||
|
@ -1,54 +0,0 @@
|
||||
<?php
|
||||
/**************************************************************************\
|
||||
* eGroupWare - Filemanager *
|
||||
* http://www.egroupware.org *
|
||||
* ------------------------------------------------------------------------ *
|
||||
* This program is free software; you can redistribute it and/or modify it *
|
||||
* under the terms of the GNU General Public License as published by the *
|
||||
* Free Software Foundation; either version 2 of the License, or (at your *
|
||||
* option) any later version. *
|
||||
\**************************************************************************/
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
class sofilemanager
|
||||
{
|
||||
var $db;
|
||||
|
||||
function sofilemanager()
|
||||
{
|
||||
$this->db = clone($GLOBALS['egw']->db);
|
||||
}
|
||||
|
||||
/* Any initializations that need to be done */
|
||||
function db_init()
|
||||
{
|
||||
$this->db->Auto_Free = 0;
|
||||
}
|
||||
|
||||
/* General SQL query */
|
||||
function db_query($query)
|
||||
{
|
||||
|
||||
return $this->db->query($query);
|
||||
}
|
||||
|
||||
/* Fetch next array for $query_id */
|
||||
function db_fetch_array($query_id)
|
||||
{
|
||||
// $egw->db->Query_ID = $query_id;
|
||||
$this->db->next_record();
|
||||
return $this->db->Record;
|
||||
}
|
||||
|
||||
/*
|
||||
General wrapper for all other db calls
|
||||
Calls in here are simply returned, so not all will work
|
||||
*/
|
||||
function db_call($function, $query_id)
|
||||
{
|
||||
// $egw->db->Query_ID = $query_id;
|
||||
return $this->db->$function();
|
||||
}
|
||||
}
|
||||
?>
|
@ -1430,7 +1430,7 @@
|
||||
}
|
||||
|
||||
/* TODO is this right or should it be a single $ ? */
|
||||
if($$this->newfile_or_dir[strlen($this->newfile_or_dir)-1] == ' ' || $this->newfile_or_dir[0] == ' ')
|
||||
if($this->newfile_or_dir[strlen($this->newfile_or_dir)-1] == ' ' || $this->newfile_or_dir[0] == ' ')
|
||||
{
|
||||
$this->messages[]= $GLOBALS['egw']->common->error_list(array(lang('Cannot create directory because it begins or ends in a space')));
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
$setup_info['filemanager']['name'] = 'filemanager';
|
||||
$setup_info['filemanager']['title'] = 'Filemanager';
|
||||
$setup_info['filemanager']['version'] = '1.2';
|
||||
$setup_info['filemanager']['version'] = '1.4';
|
||||
$setup_info['filemanager']['app_order'] = 6;
|
||||
$setup_info['filemanager']['enable'] = 1;
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['filemanager']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => array('1.3')
|
||||
'versions' => array('1.3','1.4','1.5')
|
||||
);
|
||||
|
||||
// installation checks for filemanager
|
||||
|
@ -183,13 +183,6 @@ class boinfolog
|
||||
$this->enums['type'] += $this->config->config_data['types'];
|
||||
//echo "types:<pre>"; print_r($this->enums['type']); echo "</pre>\n";
|
||||
}
|
||||
// sort types by there translation
|
||||
foreach($this->enums['type'] as $key => $val)
|
||||
{
|
||||
if (($val = lang($key)) != $key.'*') $this->enums['type'][$key] = lang($key);
|
||||
}
|
||||
natcasesort($this->enums['type']);
|
||||
|
||||
if ($this->config->config_data['group_owners']) $this->group_owners = $this->config->config_data['group_owners'];
|
||||
|
||||
if (isset($this->config->config_data['customfields']) && is_array($this->config->config_data['customfields']))
|
||||
@ -221,6 +214,13 @@ class boinfolog
|
||||
$this->implicit_rights = 'edit';
|
||||
}
|
||||
}
|
||||
// sort types by there translation
|
||||
foreach($this->enums['type'] as $key => $val)
|
||||
{
|
||||
if (($val = lang($key)) != $key.'*') $this->enums['type'][$key] = lang($key);
|
||||
}
|
||||
natcasesort($this->enums['type']);
|
||||
|
||||
$this->user = $GLOBALS['egw_info']['user']['account_id'];
|
||||
|
||||
$this->tz_offset = $GLOBALS['egw_info']['user']['preferences']['common']['tz_offset'];
|
||||
@ -507,7 +507,10 @@ class boinfolog
|
||||
{
|
||||
$responsible =& $values['info_responsible'];
|
||||
}
|
||||
$status_only = in_array($this->user, $responsible); // responsible has implicit right to change status
|
||||
if (!($status_only = in_array($this->user, $responsible))) // responsible has implicit right to change status
|
||||
{
|
||||
$status_only = !!array_intersect($responsible,array_keys($GLOBALS['egw']->accounts->memberships($this->user)));
|
||||
}
|
||||
}
|
||||
if ($values['info_id'] && !$this->check_access($values['info_id'],EGW_ACL_EDIT) && !$status_only ||
|
||||
!$values['info_id'] && $values['info_id_parent'] && !$this->check_access($values['info_id_parent'],EGW_ACL_ADD))
|
||||
@ -559,7 +562,7 @@ class boinfolog
|
||||
{
|
||||
$values['info_status'] = 'done';
|
||||
}
|
||||
if (count($values['info_responsible']) && $values['info_status'] == 'offer')
|
||||
if ($values['info_responsible'] && $values['info_status'] == 'offer')
|
||||
{
|
||||
$values['info_status'] = 'not-started'; // have to match if not finished
|
||||
}
|
||||
|
@ -469,9 +469,23 @@ class uiinfolog
|
||||
return $this->edit($do_id,$action,$action_id,'',$called_as);
|
||||
case 'delete':
|
||||
if (!($values['msg'] = $this->delete($do_id,$called_as,$called_as ? '' : 'index'))) return;
|
||||
// did we deleted the entries, whos subentries we are showing?
|
||||
if ($action == 'sp' && $action_id == $do_id)
|
||||
{
|
||||
// redirect to our referer or reset the subentry view
|
||||
if (!$called_as && $own_referer)
|
||||
{
|
||||
$this->tmpl->location($own_referer); // eg. redirect back to calendar
|
||||
}
|
||||
else
|
||||
{
|
||||
unset($action_id); unset($action);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'close':
|
||||
return $this->close($do_id,$called_as,$do == 'close_subs');
|
||||
$this->close($do_id,$called_as);
|
||||
break;
|
||||
case 'sp':
|
||||
return $this->edit(0,'sp',$do_id,'',$called_as);
|
||||
case 'view':
|
||||
@ -578,7 +592,7 @@ class uiinfolog
|
||||
}
|
||||
}
|
||||
}
|
||||
return $referer ? $this->tmpl->location($referer) : $this->index();
|
||||
if ($referer) $this->tmpl->location($referer);
|
||||
}
|
||||
|
||||
function delete($values=0,$referer='',$called_by='')
|
||||
@ -658,11 +672,11 @@ class uiinfolog
|
||||
{
|
||||
//echo "uiinfolog::edit: content="; _debug_array($content);
|
||||
$info_id = $content['info_id'];
|
||||
$action = $content['action'];
|
||||
$action_id = $content['action_id'];
|
||||
$referer = $content['referer'];
|
||||
$no_popup = $content['no_popup'];
|
||||
$caller = $content['caller'];
|
||||
$action = $content['action']; unset($content['action']);
|
||||
$action_id = $content['action_id']; unset($content['action_id']);
|
||||
$referer = $content['referer']; unset($content['referer']);
|
||||
$no_popup = $content['no_popup']; unset($content['no_popup']);
|
||||
$caller = $content['caller']; unset($content['caller']);
|
||||
|
||||
// convert custom from to 0 or 1, it's unset if not checked, which starts the detection
|
||||
$content['info_custom_from'] = (int)$content['info_custom_from'];
|
||||
@ -977,6 +991,7 @@ class uiinfolog
|
||||
$content['info_owner'] = $this->user;
|
||||
}
|
||||
}
|
||||
$preserv = $content;
|
||||
// for implizit edit of responsible user make all fields readonly, but status and percent
|
||||
if ($info_id && !$this->bo->check_access($info_id,EGW_ACL_EDIT) && $this->bo->is_responsible($content))
|
||||
{
|
||||
@ -985,6 +1000,7 @@ class uiinfolog
|
||||
{
|
||||
$readonlys[$name] = true;
|
||||
}
|
||||
unset($readonlys[$tabs]);
|
||||
// need to set all customfields extra, as they are not set if empty
|
||||
foreach($this->bo->customfields as $name => $value)
|
||||
{
|
||||
@ -1034,27 +1050,13 @@ class uiinfolog
|
||||
'info_priority' => $this->bo->enums['priority'],
|
||||
'info_confirm' => $this->bo->enums['confirm'],
|
||||
'info_status' => $this->bo->status[$content['info_type']]
|
||||
),$readonlys,array( // preserved values
|
||||
),$readonlys,$preserv+array( // preserved values
|
||||
'info_id' => $info_id,
|
||||
'info_id_parent'=> $content['info_id_parent'],
|
||||
'info_link_id' => $content['info_link_id'],
|
||||
'info_owner' => $content['info_owner'],
|
||||
'info_datemodified' => $content['info_datemodified'],
|
||||
'info_modifier' => $content['info_modifier'],
|
||||
'action' => $action,
|
||||
'action_id' => $action_id,
|
||||
'referer' => $referer,
|
||||
'no_popup' => $no_popup,
|
||||
'link_to' => array('to_id' => $content['link_to']['to_id']), // in case tab gets not viewed
|
||||
'blur_title' => $content['blur_title'],
|
||||
'old_pm_id' => $old_pm_id,
|
||||
// preserv project fields, in case project tab is disabled, but user has rights to edit the entry
|
||||
'pl_id' => $content['pl_id'],
|
||||
'info_price' => $content['info_price'],
|
||||
'info_used_time' => $content['info_used_time'],
|
||||
'info_planned_time' => $content['info_planned_time'],
|
||||
// preserve the type in case it's readonly (no delete rights from group owner)
|
||||
'info_type' => $content['info_type'],
|
||||
),$no_popup ? 0 : 2);
|
||||
}
|
||||
|
||||
@ -1195,7 +1197,7 @@ class uiinfolog
|
||||
* 2. with $_GET['uid] = someuid (we come from display mail)
|
||||
*
|
||||
* @author Cornelius Weiss <nelius@cwtech.de>
|
||||
* @param unknown_type $_to_emailAddress
|
||||
* @param string $_to_emailAddress
|
||||
* @param string $_subject
|
||||
* @param string $_body
|
||||
* @param array $_attachments
|
||||
@ -1239,7 +1241,7 @@ class uiinfolog
|
||||
$bofelamimail->reopen($mailbox);
|
||||
|
||||
$headers = $bofelamimail->getMessageHeader($uid);
|
||||
$bodyParts = $bofelamimail->getMessageBody($uid,'');
|
||||
$bodyParts = $bofelamimail->getMessageBody($uid,'text/plain');
|
||||
$attachments = $bofelamimail->getMessageAttachments($uid);
|
||||
|
||||
if (isset($headers['FROM'])) $mailaddress = $bofelamimail->decode_header($headers['FROM']);
|
||||
|
@ -110,7 +110,7 @@ empty for all infolog de leer f
|
||||
enddate infolog de Fällig am
|
||||
enddate can not be before startdate infolog de Das Fälligkeitsdatum kann nicht vor dem Startdatum liegen
|
||||
enter a custom contact, leave empty if linked entry should be used infolog de benutzerdefinierter Kontakt, leer lassen um die Daten der Verknüpfung zu verwenden
|
||||
enter a custom phone/email, leave empty if linked entry should be used infolog de benutzerdefinierte Telefonnumer/Emailadresse, leer lassen um die Daten der Verknüpfung zu verwenden
|
||||
enter a custom phone/email, leave empty if linked entry should be used infolog de benutzerdefinierte Telefonnumer/E-Mail-Adresse, leer lassen um die Daten der Verknüpfung zu verwenden
|
||||
enter a textual description of the log-entry infolog de geben Sie eine textliche Beschreibung des Eintrags ein
|
||||
enter the query pattern infolog de geben Sie ein Suchmuster ein
|
||||
entry and all files infolog de Eintrag und alle Dateien
|
||||
@ -200,7 +200,7 @@ pattern for search in projects infolog de Muster f
|
||||
percent completed infolog de Prozent erledigt
|
||||
permission denied infolog de Zugriff verweigert
|
||||
phone infolog de Anruf
|
||||
phone/email infolog de Telefon/Email
|
||||
phone/email infolog de Telefon/E-Mail
|
||||
phonecall infolog de Telefonanruf
|
||||
planned infolog de geplant
|
||||
planned time infolog de geplante Zeit
|
||||
|
@ -123,8 +123,10 @@ finish infolog sl Konec
|
||||
for which types should this field be used infolog sl Za ketere tipe naj bo to polje uporabljeno
|
||||
from infolog sl Od
|
||||
general infolog sl Splošno
|
||||
group owner for infolog sl Skupinski lastnik za
|
||||
high infolog sl Visoko
|
||||
id infolog sl Šifra
|
||||
if a type has a group owner, all entries of that type will be owned by the given group and not the user who created it! infolog sl Če ima vrsta skupinskega lastnika, bo lastnik vseh vnosov te vrste dana skupina in NE uporabnik, ki jo je ustvaril!
|
||||
if not set, the line with search and filters is hidden for less entries then "max matches per page" (as defined in your common preferences). infolog sl Če ni nastavljen, je vrstica za iskanje in filtriranje skrita za manj vnosov kakor "maksimalno število zadetkov na stran" (kakor je definirano v vaših nastavitvah.
|
||||
import infolog sl Uvoz
|
||||
import next set infolog sl Uvozi naslednji niz
|
||||
|
@ -12,7 +12,7 @@
|
||||
/* $Id$ */
|
||||
|
||||
$setup_info['infolog']['name'] = 'infolog';
|
||||
$setup_info['infolog']['version'] = '1.3.001';
|
||||
$setup_info['infolog']['version'] = '1.4';
|
||||
$setup_info['infolog']['app_order'] = 5;
|
||||
$setup_info['infolog']['tables'] = array('egw_infolog','egw_infolog_extra');
|
||||
$setup_info['infolog']['enable'] = 1;
|
||||
@ -65,11 +65,11 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['infolog']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['infolog']['depends'][] = array(
|
||||
'appname' => 'etemplate',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
|
||||
|
||||
|
@ -568,3 +568,9 @@
|
||||
|
||||
return $GLOBALS['setup_info']['infolog']['currentver'] = '1.3.001';
|
||||
}
|
||||
|
||||
$test[] = '1.3.001';
|
||||
function infolog_upgrade1_3_001()
|
||||
{
|
||||
return $GLOBALS['setup_info']['infolog']['currentver'] = '1.4';
|
||||
}
|
||||
|
@ -18,7 +18,7 @@
|
||||
</rows>
|
||||
</grid>
|
||||
</template>
|
||||
<template id="infolog.edit.links" template="" lang="" group="0" version="1.0.1.001">
|
||||
<template id="infolog.edit.links" template="" lang="" group="0" version="1.3.001">
|
||||
<grid width="100%" height="245" overflow="auto">
|
||||
<columns>
|
||||
<column width="100"/>
|
||||
@ -31,6 +31,9 @@
|
||||
<row class="row" disabled="@status_only">
|
||||
<link-to span="all" id="link_to"/>
|
||||
</row>
|
||||
<row>
|
||||
<link-add span="all" id="link_to"/>
|
||||
</row>
|
||||
<row class="th">
|
||||
<description span="all" value="Existing links"/>
|
||||
</row>
|
||||
|
@ -183,7 +183,7 @@
|
||||
|
||||
foreach($time as $t)
|
||||
{
|
||||
if (strstr($t,'-') !== False && strstr($t,'/') === False)
|
||||
if (strpos($t,'-') !== False && strpos($t,'/') === False)
|
||||
{
|
||||
list($min,$max) = $arr = explode('-',$t);
|
||||
|
||||
@ -638,7 +638,7 @@
|
||||
$times['error'] .= $line;
|
||||
}
|
||||
}
|
||||
elseif (strstr($line,$this->cronline) !== False)
|
||||
elseif (strpos($line,$this->cronline) !== False)
|
||||
{
|
||||
$cron_units = array('min','hour','day','month','dow');
|
||||
foreach($cron_units as $n => $u)
|
||||
|
@ -300,7 +300,7 @@ class bolink extends solink
|
||||
{
|
||||
if (is_array($id))
|
||||
{
|
||||
if (!strstr($app_link_id,':')) $app_link_id = $this->temp_link_id($app2,$id2); // create link_id of temporary link, if not given
|
||||
if (strpos($app_link_id,':') === false) $app_link_id = $this->temp_link_id($app2,$id2); // create link_id of temporary link, if not given
|
||||
|
||||
if (isset($id[$app_link_id]) && is_array($id[$app_link_id])) // check for unlinked-marker
|
||||
{
|
||||
@ -697,7 +697,7 @@ class bolink extends solink
|
||||
@reset($this->link_pathes);
|
||||
while ((list($valid,$trans) = @each($this->link_pathes)) && !$tfname)
|
||||
{ // check case-insensitive for WIN etc.
|
||||
$check = $valid[0] == '\\' || strstr(':',$valid) ? 'eregi' : 'ereg';
|
||||
$check = $valid[0] == '\\' || strpos(':',$valid) !== false ? 'eregi' : 'ereg';
|
||||
$valid2 = str_replace('\\','/',$valid);
|
||||
//echo "<p>attach_file: ereg('".$this->send_file_ips[$valid]."', '$file[ip]')=".ereg($this->send_file_ips[$valid],$file['ip'])."</p>\n";
|
||||
if ($check('^('.$valid2.')(.*)$',$file['path'],$parts) &&
|
||||
@ -870,7 +870,7 @@ class bolink extends solink
|
||||
*/
|
||||
function is_win_path($path)
|
||||
{
|
||||
return $path[0] == '\\' || strstr($path,':');
|
||||
return $path{0} == '\\' || $path{1} == ':';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -76,23 +76,23 @@
|
||||
/*
|
||||
Determine platform
|
||||
*/
|
||||
if(strstr($HTTP_USER_AGENT,'Win'))
|
||||
if(strpos($HTTP_USER_AGENT,'Win') !== false)
|
||||
{
|
||||
$this->BROWSER_PLATFORM='Win';
|
||||
}
|
||||
elseif(strstr($HTTP_USER_AGENT,'Mac'))
|
||||
elseif(strpos($HTTP_USER_AGENT,'Mac') !== false)
|
||||
{
|
||||
$this->BROWSER_PLATFORM='Mac';
|
||||
}
|
||||
elseif(strstr($HTTP_USER_AGENT,'Linux'))
|
||||
elseif(strpos($HTTP_USER_AGENT,'Linux') !== false)
|
||||
{
|
||||
$this->BROWSER_PLATFORM='Linux';
|
||||
}
|
||||
elseif(strstr($HTTP_USER_AGENT,'Unix'))
|
||||
elseif(strpos($HTTP_USER_AGENT,'Unix') !== false)
|
||||
{
|
||||
$this->BROWSER_PLATFORM='Unix';
|
||||
}
|
||||
elseif(strstr($HTTP_USER_AGENT,'Beos'))
|
||||
elseif(strpos($HTTP_USER_AGENT,'Beos') !== false)
|
||||
{
|
||||
$this->BROWSER_PLATFORM='Beos';
|
||||
}
|
||||
|
@ -777,7 +777,7 @@
|
||||
while ($f = readdir($d))
|
||||
{
|
||||
$ext = strtolower(strrchr($f,'.'));
|
||||
if (($ext == '.gif' || $ext == '.png') && strstr($f,'navbar') === False)
|
||||
if (($ext == '.gif' || $ext == '.png') && strpos($f,'navbar') === False)
|
||||
{
|
||||
return True;
|
||||
}
|
||||
@ -844,7 +844,7 @@
|
||||
|
||||
$imagedir = EGW_SERVER_ROOT . '/'.$appname.'/templates/'.$GLOBALS['egw_info']['server']['template_set'].'/images';
|
||||
$imagedir_default = EGW_SERVER_ROOT . '/'.$appname.'/templates/idots/images';
|
||||
$imagedir_olddefault = EGW_SERVER_ROOT . '/'.$appname.'/images';
|
||||
$imagedir_olddefault = EGW_SERVER_ROOT . '/'.$appname.'/templates/default/images';
|
||||
|
||||
if ($this->is_image_dir ($imagedir))
|
||||
{
|
||||
@ -856,7 +856,7 @@
|
||||
}
|
||||
elseif ($this->is_image_dir ($imagedir_olddefault))
|
||||
{
|
||||
return $GLOBALS['egw_info']['server']['webserver_url'].'/'.$appname.'/images';
|
||||
return $GLOBALS['egw_info']['server']['webserver_url'].'/'.$appname.'/templates/default/images';
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -130,7 +130,7 @@ class contacts extends bocontacts
|
||||
$fields = explode(',',$fields);
|
||||
}
|
||||
if (!$order) $order = $fields ? $fields[0] : 'org_name,n_family,n_given';
|
||||
if ($order && !strstr($order,'_')) $order = 'contact_'.$order;
|
||||
if ($order && strpos($order,'_') === false) $order = 'contact_'.$order;
|
||||
|
||||
//echo '<p>contacts::search('.($cquery ? $cquery.'*' : $query).','.print_r($fields,true).",'$order $sort','','".($cquery ? '' : '%')."',false,'OR',".(!$limit ? 'false' : "array($start,$limit)").",".print_r($sfilter,true).");</p>\n";
|
||||
$rows =& $this->search($cquery ? $cquery.'*' : $query,$fields,$order.($sort ? ' '.$sort : ''),'',
|
||||
|
@ -448,8 +448,7 @@ class egw_framework
|
||||
if ($data['status'] == 4)
|
||||
{
|
||||
$apps[$app]['target'] = ' target="'.$app.'" onClick="'."if (this != '') { window.open(this+'".
|
||||
(strstr($apps[$app]['url'],'?') ||
|
||||
ini_get('session.use_trans_sid') && substr($GLOBALS['egw_info']['server']['sessions_type'],0,4) == 'php4' ?'&':'?').
|
||||
(strpos($apps[$app]['url'],'?') !== false ? '&' : '?').
|
||||
"referer='+encodeURI(location),this.target,'width=800,height=600,scrollbars=yes,resizable=yes'); return false; } else { return true; }".'"';
|
||||
}
|
||||
elseif(isset($GLOBALS['egw_info']['flags']['navbar_target']) && $GLOBALS['egw_info']['flags']['navbar_target'])
|
||||
|
@ -150,16 +150,16 @@ class html
|
||||
$content);
|
||||
|
||||
// First match things beginning with http:// (or other protocols)
|
||||
$Protocol = '(http|ftp|https):\/\/';
|
||||
$Domain = '([\w]+.[\w]+)';
|
||||
$Protocol = '(http:\/\/|(ftp:\/\/|https:\/\/))'; // only http:// gets removed, other protocolls are shown
|
||||
$Domain = '([\w-]+\.[\w-.]+)';
|
||||
$Subdir = '([\w\-\.,@?^=%&;:\/~\+#]*[\w\-\@?^=%&\/~\+#])?';
|
||||
$Expr = '/' . $NotAnchor . $Protocol . $Domain . $Subdir . '/i';
|
||||
|
||||
$result = preg_replace( $Expr, "<a href=\"$0\" target=\"_blank\">$2$3</a>", $result );
|
||||
$result = preg_replace( $Expr, "<a href=\"$0\" target=\"_blank\">$2$3$4</a>", $result );
|
||||
|
||||
// Now match things beginning with www.
|
||||
$NotHTTP = '(?<!:\/\/)';
|
||||
$Domain = 'www(.[\w]+)';
|
||||
$Domain = 'www(\.[\w-.]+)';
|
||||
$Subdir = '([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?';
|
||||
$Expr = '/' . $NotAnchor . $NotHTTP . $Domain . $Subdir . '/i';
|
||||
|
||||
@ -585,7 +585,7 @@ class html
|
||||
* @param string $base_href='' if passed activates the browser for image at absolute path passed
|
||||
* @return string the necessary html for the textarea
|
||||
*/
|
||||
function fckEditor($_name, $_content, $_mode, $_options=array('toolbar_expanded' =>'true'), $_height='400px', $_width='100%',$_base_href)
|
||||
function fckEditor($_name, $_content, $_mode, $_options=array('toolbar_expanded' =>'true'), $_height='400px', $_width='100%',$_base_href='')
|
||||
{
|
||||
if (!$this->htmlarea_availible() || $_mode == 'ascii')
|
||||
{
|
||||
|
@ -215,7 +215,7 @@ Calendar.setup(
|
||||
$fields[$n] = $i;
|
||||
break;
|
||||
}
|
||||
if (strstr($long_name,$fields[$n]) == $long_name) // partcial match => multibyte saver
|
||||
if (@strstr($long_name,$fields[$n]) == $long_name) // partcial match => multibyte saver
|
||||
{
|
||||
$partcial_match = $i;
|
||||
}
|
||||
|
@ -185,7 +185,7 @@
|
||||
function gethttpsocketfile($file,$user='',$passwd='',$string=False)
|
||||
{
|
||||
$server = str_replace('http://','',$file);
|
||||
$file = strstr($server,'/');
|
||||
$file = @strstr($server,'/');
|
||||
$server = str_replace($file,'',$server);
|
||||
|
||||
//allows for access to http-auth pages - added by Dave Hall <dave.hall@mbox.com.au>
|
||||
|
@ -566,7 +566,7 @@ class PHPMailer
|
||||
// Retry while there is no connection
|
||||
while($index < count($hosts) && $connection == false)
|
||||
{
|
||||
if(strstr($hosts[$index], ":"))
|
||||
if(strpos($hosts[$index], ":") !== false)
|
||||
list($host, $port) = explode(":", $hosts[$index]);
|
||||
else
|
||||
{
|
||||
|
@ -214,8 +214,18 @@
|
||||
{
|
||||
return $values;
|
||||
}
|
||||
if (!($max_session_size = ini_get('memory_limit'))) $max_session_size = '16M';
|
||||
switch(strtoupper(substr($max_session_size,-1)))
|
||||
{
|
||||
case 'M': $max_session_size *= 1024*1024; break;
|
||||
case 'K': $max_session_size *= 1024; break;
|
||||
}
|
||||
$max_session_size /= 4; // use at max 1/4 of the memory_limit to read sessions, the others get ignored
|
||||
|
||||
while (($file = readdir($dir)))
|
||||
{
|
||||
if (filesize($path.'/'.$file) >= $max_session_size) continue;
|
||||
|
||||
if (substr($file,0,5) != 'sess_' || $session_cache[$file] === false)
|
||||
{
|
||||
continue;
|
||||
|
@ -317,7 +317,7 @@ class SMTP
|
||||
# headers.
|
||||
$field = substr($lines[0],0,strpos($lines[0],":"));
|
||||
$in_headers = false;
|
||||
if(!empty($field) && !strstr($field," ")) {
|
||||
if(!empty($field) && strpos($field," ") === false) {
|
||||
$in_headers = true;
|
||||
}
|
||||
|
||||
|
@ -349,7 +349,7 @@
|
||||
{
|
||||
$data = &$this->charsets[$charset = strtolower($this->db->f('charset'))];
|
||||
$lang = $this->langs[$this->db->f('lang')].' ('.$this->db->f('lang').')';
|
||||
if ($distinct || strstr($data,$lang) === false)
|
||||
if ($distinct || strpos($data,$lang) === false)
|
||||
{
|
||||
$data .= ($data ? ', ' : $charset.': ').$lang;
|
||||
}
|
||||
|
@ -151,7 +151,7 @@ class uiaccountsel extends accounts
|
||||
case 'groupmembers':
|
||||
if ($account_sel == 'primary_group')
|
||||
{
|
||||
$memberships = array($GLOBALS['egw']->accounts->data['account_primary_group']);
|
||||
$memberships = array($GLOBALS['egw_info']['user']['account_primary_group']);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -258,7 +258,7 @@ class uiaccountsel extends accounts
|
||||
if ($extra_label)
|
||||
{
|
||||
//in php5 this put's the extra-label at the end: $select = array($extra_label) + $select;
|
||||
$select2 = array($extra_label);
|
||||
$select2 = array('' => $extra_label);
|
||||
$select2 += $select;
|
||||
$select =& $select2; unset($select2);
|
||||
}
|
||||
|
204
phpgwapi/inc/class.vfs_home.inc.php
Normal file
204
phpgwapi/inc/class.vfs_home.inc.php
Normal file
@ -0,0 +1,204 @@
|
||||
<?php
|
||||
/**
|
||||
* eGroupWare API: VFS - Homedirectories
|
||||
*
|
||||
* @link http://www.egroupware.org
|
||||
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
|
||||
* @package api
|
||||
* @subpackage vfs
|
||||
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
||||
* @copyright (c) 2007 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
require_once(EGW_API_INC.'/class.vfs.inc.php');
|
||||
|
||||
/**
|
||||
* eGroupWare API: VFS - Homedirectories
|
||||
*
|
||||
* This class implements some necessary stuff for user- and group-directories ontop the vfs class.
|
||||
*
|
||||
* Some of it is already implemented in the filemanager app, but it's also needed for the WebDAV access:
|
||||
* - show only directories in /home, to which the user has at least read-access
|
||||
*
|
||||
* Stuff dealing with creation, renaming or deletion of users via some hooks from admin:
|
||||
* - create the homedir if a new user gets created
|
||||
* - rename the homedir if the user-name changes
|
||||
* - delete the homedir or copy its content to an other users homedir, if a user gets deleted
|
||||
* --> these hooks are registered via phpgwapi/setup/setup.inc.php and called by the admin app
|
||||
*/
|
||||
class vfs_home extends vfs
|
||||
{
|
||||
/**
|
||||
* List a directory, reimplemented to hide dirs the user has no rights to read
|
||||
*
|
||||
* @param array $data
|
||||
* @param string $data['string'] path
|
||||
* @param array $data['relatives'] Relativity array (default: RELATIVE_CURRENT)
|
||||
* @param boolean $data['checksubdirs'] If true return information for all subdirectories recursively
|
||||
* @param string $data['mime'] Only return information for locations with MIME type specified (eg. 'Directory')
|
||||
* @param boolean $data['nofiles'] If set and $data['string'] is a directory, return information about the directory, not the files in it.
|
||||
* @return array of arrays of file information.
|
||||
*/
|
||||
function ls($data)
|
||||
{
|
||||
//error_log("vfs_home(".print_r($data,true).")");
|
||||
$fileinfos = parent::ls($data);
|
||||
|
||||
if (!$this->override_acl && !$data['nofiles'] && ($data['string'] == $this->fakebase || $data['string'].$this->fakebase.'/'))
|
||||
{
|
||||
//error_log("vfs_home() grants=".print_r($this->grants,true));
|
||||
|
||||
// remove directories the user has no rights to see, no grant from the owner
|
||||
foreach($fileinfos as $key => $info)
|
||||
{
|
||||
//error_log("vfs_home() ".(!$this->grants[$info['owner_id']] ? 'hidding' : 'showing')." $info[directory]/$info[name] (owner=$info[owner_id])");
|
||||
|
||||
if (!$this->grants[$info['owner_id']])
|
||||
{
|
||||
unset($fileinfos[$key]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $fileinfos;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook called after new accounts have been added
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $data['account_id'] numerical id
|
||||
* @param string $data['account_lid'] account-name
|
||||
*/
|
||||
function addAccount($data)
|
||||
{
|
||||
// create a user-dir
|
||||
$save_id = $this->working_id;
|
||||
$this->working_id = $data['account_id'];
|
||||
$save_currentapp = $GLOBALS['egw_info']['flags']['currentapp'];
|
||||
$GLOBALS['egw_info']['flags']['currentapp'] = 'filemanager';
|
||||
|
||||
$this->override_acl = true;
|
||||
$this->mkdir(array(
|
||||
'string' => $this->fakebase.'/'.$data['account_lid'],
|
||||
'relatives' => array(RELATIVE_ROOT),
|
||||
));
|
||||
$this->override_acl = false;
|
||||
|
||||
$this->working_id = $save_id;
|
||||
$GLOBALS['egw_info']['flags']['currentapp'] = $currentapp;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook called after accounts has been modified
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $data['account_id'] numerical id
|
||||
* @param string $data['account_lid'] new account-name
|
||||
* @param string $data['old_loginid'] old account-name
|
||||
*/
|
||||
function editAccount($data)
|
||||
{
|
||||
if ($data['account_lid'] == $data['old_loginid']) return; // nothing to do here
|
||||
|
||||
// rename the user-dir
|
||||
$this->override_acl = true;
|
||||
$this->mv(array(
|
||||
'from' => $this->fakebase.'/'.$data['old_loginid'],
|
||||
'to' => $this->fakebase.'/'.$data['account_lid'],
|
||||
'relatives' => array(RELATIVE_ROOT,RELATIVE_ROOT),
|
||||
));
|
||||
$this->override_acl = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook called before an account get deleted
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $data['account_id'] numerical id
|
||||
* @param string $data['account_lid'] account-name
|
||||
* @param int $data['new_owner'] account-id of new owner, or false if data should get deleted
|
||||
*/
|
||||
function deleteAccount($data)
|
||||
{
|
||||
if ($data['new_owner'])
|
||||
{
|
||||
// ToDo: copy content of user-dir to new owner's user-dir
|
||||
|
||||
}
|
||||
// delete the user-directory
|
||||
$this->override_acl = true;
|
||||
$this->delete(array(
|
||||
'string' => $this->fakebase.'/'.$data['account_lid'],
|
||||
'relatives' => array(RELATIVE_ROOT),
|
||||
));
|
||||
$this->override_acl = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook called after new groups have been added
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $data['account_id'] numerical id
|
||||
* @param string $data['account_name'] group-name
|
||||
*/
|
||||
function addGroup($data)
|
||||
{
|
||||
// create a group-dir
|
||||
$save_id = $this->working_id;
|
||||
$this->working_id = $data['account_id'];
|
||||
$save_currentapp = $GLOBALS['egw_info']['flags']['currentapp'];
|
||||
$GLOBALS['egw_info']['flags']['currentapp'] = 'filemanager';
|
||||
|
||||
$this->override_acl = true;
|
||||
$this->mkdir(array(
|
||||
'string' => $this->fakebase.'/'.$data['account_name'],
|
||||
'relatives' => array(RELATIVE_ROOT),
|
||||
));
|
||||
$this->override_acl = false;
|
||||
|
||||
$this->working_id = $save_id;
|
||||
$GLOBALS['egw_info']['flags']['currentapp'] = $currentapp;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook called after group has been modified
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $data['account_id'] numerical id
|
||||
* @param string $data['account_name'] new group-name
|
||||
* @param string $data['old_name'] old account-name
|
||||
*/
|
||||
function editGroup($data)
|
||||
{
|
||||
if ($data['account_name'] == $data['old_name']) return; // nothing to do here
|
||||
|
||||
// rename the group-dir
|
||||
$this->override_acl = true;
|
||||
$this->mv(array(
|
||||
'from' => $this->fakebase.'/'.$data['old_name'],
|
||||
'to' => $this->fakebase.'/'.$data['account_name'],
|
||||
'relatives' => array(RELATIVE_ROOT,RELATIVE_ROOT),
|
||||
));
|
||||
$this->override_acl = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook called before a group get deleted
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $data['account_id'] numerical id
|
||||
* @param string $data['account_name'] account-name
|
||||
*/
|
||||
function deleteGroup($data)
|
||||
{
|
||||
// delete the group-directory
|
||||
$this->override_acl = true;
|
||||
$this->delete(array(
|
||||
'string' => $this->fakebase.'/'.$data['account_name'],
|
||||
'relatives' => array(RELATIVE_ROOT),
|
||||
));
|
||||
$this->override_acl = false;
|
||||
}
|
||||
|
||||
}
|
@ -1,32 +1,33 @@
|
||||
<?php
|
||||
/**
|
||||
* FileManger - WebDAV access
|
||||
* eGroupWare API: VFS - WebDAV access
|
||||
*
|
||||
* Using the PEAR HTTP/WebDAV/Server class (which need to be installed!)
|
||||
*
|
||||
* @link http://www.egroupware.org
|
||||
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
|
||||
* @package filemanger
|
||||
* @package api
|
||||
* @subpackage vfs
|
||||
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
||||
* @copyright (c) 2006 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
||||
* @version $Id: class.boetemplate.inc.php 21437 2006-04-24 20:42:42Z ralfbecker $
|
||||
* @version $Id$
|
||||
*/
|
||||
|
||||
require_once('HTTP/WebDAV/Server.php');
|
||||
require_once(EGW_API_INC.'/class.vfs_home.inc.php');
|
||||
|
||||
/**
|
||||
* FileManger - WebDAV access
|
||||
*
|
||||
* Using the PEAR HTTP/WebDAV/Server class (which need to be installed!)
|
||||
*
|
||||
* @package filemanger
|
||||
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
||||
* @copyright (c) 2006 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
||||
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
|
||||
*/
|
||||
|
||||
class vfs_webdav_server extends HTTP_WebDAV_Server
|
||||
{
|
||||
/**
|
||||
* instance of the vfs class
|
||||
*
|
||||
* @var vfs_home
|
||||
*/
|
||||
var $vfs;
|
||||
|
||||
var $dav_powered_by = 'eGroupWare WebDAV server';
|
||||
@ -46,7 +47,7 @@ class vfs_webdav_server extends HTTP_WebDAV_Server
|
||||
|
||||
parent::HTTP_WebDAV_Server();
|
||||
|
||||
$this->vfs =& CreateObject('phpgwapi.vfs');
|
||||
$this->vfs =& new vfs_home;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -3310,8 +3310,7 @@ class XML
|
||||
function prestr ( $string, $delimiter )
|
||||
{
|
||||
// Return the substring.
|
||||
return substr($string, 0, strlen($string) - strlen(strstr($string,
|
||||
"$delimiter")));
|
||||
return substr($string, 0, strlen($string) - strlen(@strstr($string,$delimiter)));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -131,7 +131,7 @@
|
||||
if (isset($_POST['login'])) // on login
|
||||
{
|
||||
$GLOBALS['login'] = $_POST['login'];
|
||||
if (strstr($GLOBALS['login'],'@') === False || count($GLOBALS['egw_domain']) == 1)
|
||||
if (strpos($GLOBALS['login'],'@') === False || count($GLOBALS['egw_domain']) == 1)
|
||||
{
|
||||
$GLOBALS['login'] .= '@' . get_var('logindomain',array('POST'),$GLOBALS['egw_info']['server']['default_domain']);
|
||||
}
|
||||
|
@ -779,8 +779,9 @@ class Horde_iCalendar {
|
||||
break;
|
||||
|
||||
// Recurrence fields.
|
||||
case 'EXRULE':
|
||||
case 'RRULE':
|
||||
break;
|
||||
case 'EXRULE':
|
||||
|
||||
//Text Fields
|
||||
case 'SUMMARY':
|
||||
|
@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
/*
|
||||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
||||
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
|
||||
@ -40,7 +40,7 @@ function ServerMapFolder( $resourceType, $folderPath )
|
||||
{
|
||||
// Get the resource type directory.
|
||||
//INTEGRATION $sResourceTypePath = $GLOBALS["UserFilesDirectory"] . $resourceType . '/' ;
|
||||
$sResourceTypePath = $GLOBALS["UserFilesDirectory"] . '/' ;
|
||||
$sResourceTypePath = $GLOBALS["UserFilesDirectory"];
|
||||
|
||||
// Ensure that the directory exists.
|
||||
CreateServerFolder( $sResourceTypePath ) ;
|
||||
@ -93,6 +93,9 @@ function CreateServerFolder( $folderPath )
|
||||
|
||||
function GetRootPath()
|
||||
{
|
||||
//INTEGRATION: alogrithm below does not work if eGW is installed outside the docroot
|
||||
return $_SERVER['DOCUMENT_ROOT'];
|
||||
|
||||
$sRealPath = realpath( './' ) ;
|
||||
|
||||
$sSelfPath = $_SERVER['PHP_SELF'] ;
|
||||
|
@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
/*
|
||||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
||||
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
|
||||
@ -29,6 +29,9 @@ function RemoveExtension( $fileName )
|
||||
|
||||
function GetRootPath()
|
||||
{
|
||||
//INTEGRATION: alogrithm below does not work if eGW is installed outside the docroot
|
||||
return $_SERVER['DOCUMENT_ROOT'];
|
||||
|
||||
$sRealPath = realpath( './' ) ;
|
||||
|
||||
$sSelfPath = $_SERVER['PHP_SELF'] ;
|
||||
|
@ -149,8 +149,8 @@ FCKConfig.ToolbarSets["egw_advanced"] = [
|
||||
['TextColor','BGColor']
|
||||
] ;
|
||||
|
||||
FCKConfig.EnterMode = 'p' ; // p | div | br
|
||||
FCKConfig.ShiftEnterMode = 'br' ; // p | div | br
|
||||
FCKConfig.EnterMode = 'br' ; // p | div | br
|
||||
FCKConfig.ShiftEnterMode = 'p' ; // p | div | br
|
||||
|
||||
FCKConfig.Keystrokes = [
|
||||
[ CTRL + 65 /*A*/, true ],
|
||||
|
@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
/*
|
||||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
||||
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
|
||||
@ -30,4 +30,4 @@ if ( version_compare( phpversion(), '5', '<' ) )
|
||||
else
|
||||
include_once( 'fckeditor_php5.php' ) ;
|
||||
|
||||
?>
|
||||
?>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
/*
|
||||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
||||
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
|
||||
@ -157,4 +157,4 @@ class FCKeditor
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
?>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<?php
|
||||
<?php
|
||||
/*
|
||||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
||||
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
|
||||
@ -157,4 +157,4 @@ class FCKeditor
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
?>
|
||||
|
@ -1,4 +1,4 @@
|
||||
%1 email addresses inserted common de %1 Email Adressen eingefügt
|
||||
%1 email addresses inserted common de %1 E-Mail-Adressen eingefügt
|
||||
%1 is not executable by the webserver !!! common de %1 ist nicht ausführbar durch den Webserver !!!
|
||||
%1egroupware%2 is a multi-user, web-based groupware suite written in %3php%4. common de %1eGroupWare%2 ist eine, in %3PHP%4 programmierte, webbasierende, mehrbenutzer Groupware Suite.
|
||||
(shift-)click or drag to change value jscalendar de (Shift-) Klicken oder drücken um den Wert zu ändern
|
||||
@ -218,7 +218,7 @@ egroupware: login blocked for user '%1', ip %2 common de eGroupWare: Anmelden ge
|
||||
egypt common de ÄGYPTEN
|
||||
el salvador common de EL SALVADOR
|
||||
email common de E-Mail
|
||||
email-address of the user, eg. "%1" common de E-Mail Adresse des Benutzers, zB. "%1"
|
||||
email-address of the user, eg. "%1" common de E-Mail-Adresse des Benutzers, z.B. "%1"
|
||||
emotions tinymce de Emotion
|
||||
enabled common de Verfügbar
|
||||
end date common de Enddatum
|
||||
@ -322,7 +322,7 @@ high common de Hoch
|
||||
highest common de Höchste
|
||||
holy see (vatican city state) common de VATICAN
|
||||
home common de Home
|
||||
home email common de private Email
|
||||
home email common de private E-Mail
|
||||
honduras common de HONDURAS
|
||||
hong kong common de HONG KONG
|
||||
how many icons should be shown in the navbar (top of the page). additional icons go into a kind of pulldown menu, callable by the icon on the far right side of the navbar. common de Wie viele Icons sollen in der Navigation angezeigt werden (die obere Nabigation). Weitere Applikationen werden über ein Auswahlmenü angeboten. Das Auswahlmenü kann über das rechte Icon geöffnet werden
|
||||
@ -628,11 +628,11 @@ select all %1 %2 for %3 common de Alles ausw
|
||||
select category common de Kategorie auswählen
|
||||
select date common de Datum auswählen
|
||||
select group common de Gruppe auswählen
|
||||
select home email address common de private Email-Adresse auswählen
|
||||
select home email address common de private E-Mail-Adresse auswählen
|
||||
select multiple accounts common de mehrere Benutzer auswählen
|
||||
select one common de Eine(n) auswählen
|
||||
select user common de Benutzer auswählen
|
||||
select work email address common de geschäftl. Email-Addresse auswählen
|
||||
select work email address common de geschäftl. E-Mail-Addresse auswählen
|
||||
selection common de Auswahl
|
||||
send common de Abschicken
|
||||
senegal common de SENEGAL
|
||||
@ -698,7 +698,7 @@ thailand common de THAILAND
|
||||
the api is current common de Die API ist aktuell
|
||||
the api requires an upgrade common de Die API benötigt eine Aktualisierung
|
||||
the following applications require upgrades common de Die folgenden Anwendungen benötigen eine Aktualisierung
|
||||
the mail server returned common de Der EMailserver liefert zurück
|
||||
the mail server returned common de Der E-Mail-Server liefert zurück
|
||||
the search has been compleated. the search string could not be found. tinymce de Die Suche wurde abgeschlossen. Das Suchwort wurde nicht gefunden.
|
||||
this application is current common de Diese Anwendung ist aktuell
|
||||
this application requires an upgrade common de Diese Anwendung benötigt eine Aktualisierung
|
||||
@ -782,7 +782,7 @@ which groups common de Welche Gruppen
|
||||
width common de Breite
|
||||
window name tinymce de Fenster Name
|
||||
wk jscalendar de KW
|
||||
work email common de geschäftliche Email
|
||||
work email common de geschäftliche E-Mail
|
||||
written by: common de Geschrieben von:
|
||||
year common de Jahr
|
||||
yemen common de YEMEN
|
||||
|
@ -12,6 +12,10 @@
|
||||
- use the %1, %2 buttons to select month jscalendar fr - Utiliser les boutons %1, %2 pour sélectionner le mois
|
||||
- use the %1, %2 buttons to select year jscalendar fr - Utiliser les boutons %1, %2 pour sélectionner l'année
|
||||
00 (disable) admin fr 00 (non actif)
|
||||
1 day common fr 1 Jour
|
||||
1 hour common fr 1 Heure
|
||||
1 month common fr 1 Mois
|
||||
1 week common fr 1 Semaine
|
||||
13 (ntp) admin fr 13 (ntp)
|
||||
3 number of chars for day-shortcut jscalendar fr 3 nombre de caractères pour le raccourci jour
|
||||
3 number of chars for month-shortcut jscalendar fr 3 nombre de caractères pour le raccourci mois
|
||||
@ -21,6 +25,7 @@ about common fr A propos de
|
||||
about %1 common fr A propos de %1
|
||||
about egroupware common fr A propos d'eGroupware
|
||||
about the calendar jscalendar fr A propos du Calendrier
|
||||
about this editor common fr A propos de cet éditeur
|
||||
access common fr Accès
|
||||
access not permitted common fr Accès non permis
|
||||
account has been created common fr Le compte a été créé
|
||||
@ -61,7 +66,7 @@ antigua and barbuda common fr ANTIGUE ET BARBADE
|
||||
application common fr Application
|
||||
apply common fr Appliquer
|
||||
april common fr Avril
|
||||
are you sure you want to delete these entries ? common fr Etes-vous sûr de vouloir effacer ces entrées ?
|
||||
are you sure you want to delete these entries ? common fr Etes-vous sûr de vouloir supprimer ces entrées ?
|
||||
are you sure you want to delete this entry ? common fr Etes-vous sûr de vouloir supprimer cette entrée ?
|
||||
argentina common fr ARGENTINE
|
||||
armenia common fr ARMENIE
|
||||
@ -74,12 +79,13 @@ autohide sidebox menu's common fr Cacher automatiquement la barre de menu lat
|
||||
autohide sidebox menus common fr Cacher automatiquement la barre de menu latérale
|
||||
automatically hide the sidebox menu's? common fr Cacher automatiquement la barre de menu latérale ?
|
||||
automatically hide the sidebox menus? common fr Cacher automatiquement la barre de menu latérale ?
|
||||
autosave default category common fr Sauvegarde automatique dans catégorie par défaut
|
||||
autosave default category common fr Enregistrement automatique dans catégorie par défaut
|
||||
azerbaijan common fr AZERBAIDJAN
|
||||
back common fr Retour
|
||||
back to user login common fr Retour au Login utilisateur
|
||||
background color: common fr Couleur de fond
|
||||
backupdir '%1' is not writeable by the webserver common fr Le répertoire de sauvegarde '%1' n'est pas "écrivable" par le serveur web
|
||||
background color common fr Couleur de fond
|
||||
background color: common fr Couleur de fond:
|
||||
backupdir '%1' is not writeable by the webserver common fr Le serveur web ne peut pas écrire dans le répertoire de sauvegarde '%1'
|
||||
bad login or password common fr Mauvais login ou mot de passe
|
||||
bahamas common fr BAHAMAS
|
||||
bahrain common fr BAHRAIN
|
||||
@ -107,6 +113,7 @@ brazil common fr BRESIL
|
||||
british indian ocean territory common fr TERRITOIRES ANGLAIS DE L'OCEAN INDIEN
|
||||
brunei darussalam common fr SULTANAT DE BRUNEI
|
||||
bulgaria common fr BULGARIE
|
||||
bulleted list common fr Liste à points
|
||||
burkina faso common fr BURKINA FASO
|
||||
burundi common fr BURUNDI
|
||||
calendar common fr Calendrier
|
||||
@ -114,7 +121,7 @@ cambodia common fr CAMBODGE
|
||||
cameroon common fr CAMEROUN
|
||||
canada common fr CANADA
|
||||
cancel common fr Annuler
|
||||
cannot replace %1 because it is a directory common fr Impossible de remplacer %1 car c'est un répertoire
|
||||
cannot replace %1 because it is a directory common fr Impossible de remplacer %1 car est un répertoire
|
||||
cant open '%1' for %2 common fr Impossible d'ouvrir '%1' pour %2
|
||||
cape verde common fr CAP VERT
|
||||
caption common fr Légende
|
||||
@ -153,6 +160,7 @@ clear form common fr Effacer le formulaire
|
||||
click common fr Cliquer
|
||||
click or mouse over to show menus common fr Cliquer ou passer la souris dessus pour voir les menus
|
||||
click or mouse over to show menus? common fr Cliquer ou passer la souris dessus pour voir les menus?
|
||||
click this image on the navbar: %1 common fr Cliquez cette image sur la barre de navigation: %1
|
||||
close common fr Fermer
|
||||
close sidebox common fr Fermer la barre de menu latérale
|
||||
cocos (keeling) islands common fr ILES COCOS (KEELING)
|
||||
@ -168,6 +176,7 @@ congo, the democratic republic of the common fr CONGO, REPUBLIQUE DEMOCRATIQUE D
|
||||
contacting server... common fr Connexion au serveur...
|
||||
cook islands common fr ILES COOK
|
||||
copy common fr Copier
|
||||
copy selection common fr Copier la sélection
|
||||
copy table row tinymce fr Copier ligne
|
||||
copy/cut/paste is not available in mozilla and firefox.\ndo you want more information about this issue? tinymce fr Copier/Couper/Coller non disponible dans Mozilla et Firefox.\nVoulez-vous plus d'informations sur ce problème?
|
||||
copy/cut/paste is not available in mozilla and firefox.ndo you want more information about this issue? tinymce fr Copier/Couper/Coller non disponible dans Mozilla et Firefox.\nVoulez-vous plus d'informations sur ce problème?
|
||||
@ -180,7 +189,9 @@ croatia common fr CROATIE
|
||||
cuba common fr CUBA
|
||||
currency common fr Devise
|
||||
current common fr Courant
|
||||
current style common fr Style actuel
|
||||
current users common fr Utilisateurs connectés
|
||||
cut selection common fr Couper la sélection
|
||||
cut table row tinymce fr Couper ligne
|
||||
cyprus common fr CHYPRE
|
||||
czech republic common fr REPUBLIQUE TCHEQUE
|
||||
@ -190,6 +201,7 @@ date modified tinymce fr Date modifi
|
||||
date selection: jscalendar fr Sélection de la date :
|
||||
datetime port.<br>if using port 13, please set firewall rules appropriately before submitting this page.<br>(port: 13 / host: 129.6.15.28) admin fr Port Datetime.<br>Si vous utilisez le port 13, adaptez svp les règles de votre pare-feu avant de soumettre cette page.<br>(Port: 13 / Hôte: 129.6.15.28)
|
||||
december common fr Décembre
|
||||
decrease indent common fr Réduire l'indentation
|
||||
default tinymce fr Défaut
|
||||
default category common fr Catégorie par défaut
|
||||
default height for the windows common fr Hauteur par défaut de la fenêtre
|
||||
@ -223,7 +235,7 @@ domestic common fr Int
|
||||
dominica common fr DOMINIQUE
|
||||
dominican republic common fr REPUBLIQUE DOMINICAINE
|
||||
done common fr Fait
|
||||
down tinymce fr Base
|
||||
down tinymce fr Bas
|
||||
drag to move jscalendar fr Glisser pour le déplacer
|
||||
e-mail common fr email
|
||||
east timor common fr TIMOR EST
|
||||
@ -238,11 +250,12 @@ egypt common fr EGYPTE
|
||||
el salvador common fr SALVADOR
|
||||
email common fr E-mail
|
||||
email-address of the user, eg. "%1" common fr Adresse e-mail de l'utilisateur, p.ex. "%1"
|
||||
emotions tinymce fr Emoticons
|
||||
emotions tinymce fr Emoticônes
|
||||
en common fr en
|
||||
enabled common fr Activé
|
||||
end date common fr Date de fin
|
||||
end time common fr Heure de fin
|
||||
enlarge editor common fr Agrandir l'Editeur
|
||||
enter the location of egroupware's url.<br>example: http://www.domain.com/egroupware or /egroupware<br><b>no trailing slash</b> admin fr Entrer l´URL d´eGroupWare.<br>Exemple: http://www.domain.com/egroupware ou /egroupware<br><b>Pas de slash final</b>
|
||||
entry has been deleted sucessfully common fr Entrée supprimée avec succès
|
||||
entry updated sucessfully common fr Entrée mise à jour avec succès
|
||||
@ -250,7 +263,7 @@ equatorial guinea common fr GUINEE EQUATORIALE
|
||||
eritrea common fr ERYTHREE
|
||||
error common fr Erreur
|
||||
error creating %1 %2 directory common fr Erreur à la création du répertoire %1 %2
|
||||
error deleting %1 %2 directory common fr Erreur à l'effacement du répertoire %1 %2
|
||||
error deleting %1 %2 directory common fr Erreur à la suppression du répertoire %1 %2
|
||||
error renaming %1 %2 directory common fr Erreur au renommage du répertoire %1 %2
|
||||
estonia common fr ESTONIE
|
||||
ethiopia common fr ETHIOPIE
|
||||
@ -293,9 +306,11 @@ folder name missing. tinymce fr Nom de dossier manquant.
|
||||
folder not found. tinymce fr Dossier introuvable.
|
||||
folder with specified new name already exists. folder was not renamed/moved. tinymce fr Il existe déjà un dossier à ce nom. Le dossier n'a pas été renommé/déplacé.
|
||||
folder(s) tinymce fr Dossier(s)
|
||||
font color common fr Couleur de la Police
|
||||
for mouse out tinymce fr Pour la souris en dehors
|
||||
for mouse over tinymce fr Pour la souris au dessus
|
||||
force selectbox common fr Forcer la boîte de sélection
|
||||
forever common fr Toujours
|
||||
france common fr FRANCE
|
||||
french guiana common fr GUYANNE FRANCAISE
|
||||
french polynesia common fr POLYNESIE FRANCAISE
|
||||
@ -315,7 +330,7 @@ gibraltar common fr GIBRALTAR
|
||||
global common fr Global
|
||||
global public common fr Public global
|
||||
go today jscalendar fr Aller à aujourd'hui
|
||||
grant access common fr Autoriser l'accés
|
||||
grant access common fr Autoriser l'accès
|
||||
greece common fr GRECE
|
||||
greenland common fr GROENLANDE
|
||||
grenada common fr GRENADE
|
||||
@ -339,14 +354,17 @@ haiti common fr HAITI
|
||||
heard island and mcdonald islands common fr ILE HEARD ET ILES MCDONALD
|
||||
height common fr Hauteur
|
||||
help common fr Aide
|
||||
help using editor common fr Aide à l'utilisation de l'éditeur
|
||||
high common fr Haut
|
||||
highest common fr Plus haut
|
||||
holy see (vatican city state) common fr VATICAN
|
||||
home common fr Accueil
|
||||
home email common fr email Accueil
|
||||
home email common fr email privé
|
||||
honduras common fr HONDURAS
|
||||
hong kong common fr HONG KONG
|
||||
how many icons should be shown in the navbar (top of the page). additional icons go into a kind of pulldown menu, callable by the icon on the far right side of the navbar. common fr Combien d'icônes devraient être affichées sur la barre de navigation (haut de page). Les icônes suplémentaires seront placées dans une liste que l'ont appelera via une icône à droite de la barre de navigation.
|
||||
horizontal rule common fr Règle Horizontale
|
||||
how many icons should be shown in the navbar (top of the page). additional icons go into a kind of pulldown menu, callable by the icon on the far right side of the navbar. common fr Combien d'icônes devraient être affichées sur la barre de navigation (haut de page). Les icônes suplémentaires seront placées dans une liste que l'on appellera via une icône à droite de la barre de navigation.
|
||||
how to show the general egroupware menu ? common fr Comment afficher le menu général d'eGroupWare ?
|
||||
hungary common fr HONGRIE
|
||||
iceland common fr ISLANDE
|
||||
iespell not detected. click ok to go to download page. common fr ieSpell non détecté. Cliquez sur Ok pour aller à la page de téléchargement.
|
||||
@ -355,6 +373,7 @@ if there are some images in the background folder you can choose the one you wou
|
||||
image description tinymce fr Description de l'image
|
||||
image title tinymce fr Titre de l'image
|
||||
image url common fr URL de l'Image
|
||||
increase indent common fr Augmenter le retrait
|
||||
indent tinymce fr Retrait
|
||||
india common fr INDE
|
||||
indonesia common fr INDONESIE
|
||||
@ -368,10 +387,13 @@ insert column before common fr Ins
|
||||
insert date tinymce fr Insérer la date
|
||||
insert emotion tinymce fr Insérer une émoticône
|
||||
insert file tinymce fr Insérer un fichier
|
||||
insert image common fr Insérer une image
|
||||
insert link to file tinymce fr Insérer un lien vers un fichier
|
||||
insert row after common fr Insérer une ligne après
|
||||
insert row before common fr Insérer une ligne avant
|
||||
insert table common fr Insérer une table
|
||||
insert time tinymce fr Insérer l'heure
|
||||
insert web link common fr Insérer un lien web
|
||||
insert/edit image tinymce fr Insérer/modifier une image
|
||||
insert/edit link tinymce fr Insérer/modifier un lien
|
||||
insert/modify table tinymce fr Insérer/modifier le tableau
|
||||
@ -385,7 +407,7 @@ iraq common fr IRAK
|
||||
ireland common fr IRLANDE
|
||||
israel common fr ISRAEL
|
||||
it has been more then %1 days since you changed your password common fr Cela fait plus de %1 jours que vous n'avez pas changé votre mot de passe
|
||||
it is recommended that you run setup to upgrade your tables to the current version common fr Il vous est recommandé d'exécuter "setup" pour mettre à jour vos tables vers la version courante.
|
||||
it is recommended that you run setup to upgrade your tables to the current version common fr Il vous est recommandé d'exécuter "setup" pour mettre à jour vos tables vers la version actuelle.
|
||||
italic common fr Italique
|
||||
italic.gif common fr italic.gif
|
||||
italy common fr ITALIE
|
||||
@ -436,6 +458,8 @@ local common fr Local
|
||||
login common fr Login
|
||||
loginid common fr LoginID
|
||||
logout common fr Déconnexion
|
||||
lost login id common fr Identifiant oublié
|
||||
lost password common fr Mot de passe oublié
|
||||
low common fr Bas
|
||||
lowest common fr Plus bas
|
||||
luxembourg common fr LUXEMBOURG
|
||||
@ -446,7 +470,7 @@ mail domain, eg. "%1" common fr Domaine email, p.ex. "%1"
|
||||
main category common fr Catégorie principale
|
||||
main screen common fr Ecran principal
|
||||
maintainer common fr Mainteneur
|
||||
make window resizable tinymce fr Fabriquer une fenêtre redimensionnable
|
||||
make window resizable tinymce fr Rendre la fenêtre redimensionnable
|
||||
malawi common fr MALAWI
|
||||
malaysia common fr MALAYSIE
|
||||
maldives common fr MALDIVES
|
||||
@ -522,6 +546,8 @@ norfolk island common fr ILE NORFOLK
|
||||
normal common fr Normal
|
||||
northern mariana islands common fr ILES MARIANA DU NORD
|
||||
norway common fr NORVEGE
|
||||
not common fr pas
|
||||
not a user yet? register now common fr Pas encore identifié? Enregisrez-vous maintenant
|
||||
not assigned common fr non assigné
|
||||
note common fr Note
|
||||
notes common fr Notes
|
||||
@ -537,6 +563,7 @@ on mouse over common fr Sur le rel
|
||||
only files with extensions are permited, e.g. "imagefile.jpg". tinymce fr Seuls les fichiers avec des extensions sont permis, ex: "fichier_image.jpg".
|
||||
only private common fr seulement privés
|
||||
only yours common fr seulement les vôtres
|
||||
oops! you caught us in the middle of system maintainance. common fr Oups! Vous êtes arrivé en pleine maintenance système.
|
||||
open file in new window tinymce fr Ouvrir le fichier dans une nouvelle fenêtre
|
||||
open in new window tinymce fr Ouvrir dans la fenêtre
|
||||
open in parent window / frame tinymce fr Ouvrir dans fenêtre / cadre parent
|
||||
@ -573,9 +600,11 @@ password must contain at least %1 special characters common fr Le mot de passe d
|
||||
password must contain at least %1 uppercase letters common fr Le mot de passe doit contenir au moins %1 caractères majuscules
|
||||
password must have at least %1 characters common fr Le mot de passe doit contenir au moins %1 caractères
|
||||
paste as plain text tinymce fr Coller en tant que texte simple
|
||||
paste from clipboard common fr Coller depuis le presse-papiers
|
||||
paste from word tinymce fr Coller depuis Word
|
||||
paste table row after tinymce fr Coller ligne après
|
||||
paste table row before tinymce fr Coller ligne avant
|
||||
path common fr Chemin
|
||||
path not found. tinymce fr Chemin non trouvé.
|
||||
path to user and group files has to be outside of the webservers document-root!!! common fr Le chemin vers les fichiers des utilisateurs et groupes DOIT ETRE EN DEHORS de la racine des documents du serveur web!!!
|
||||
pattern for search in addressbook common fr Chaîne à rechercher dans le carnet d'adresses
|
||||
@ -597,11 +626,13 @@ please select common fr Veuillez s
|
||||
please set your global preferences common fr Veuillez définir vos préférences globales !
|
||||
please set your preferences for this application common fr Veuillez définir vos préférences pour cette application
|
||||
please wait... common fr Veuillez patienter...
|
||||
please, check back with us shortly. common fr Veuillez revenir bientôt afin de vérifier avec nous.
|
||||
poland common fr POLOGNE
|
||||
popup url tinymce fr URL de la Popup
|
||||
portugal common fr PORTUGAL
|
||||
position (x/y) tinymce fr Position (X/Y)
|
||||
postal common fr Code postal
|
||||
powered by common fr Motorisé par
|
||||
powered by egroupware version %1 common fr Motorisé par <a href="http://www.egroupware.org">eGroupWare</a> version %1
|
||||
powered by phpgroupware version %1 common fr Motorisé par eGroupWare version %1
|
||||
preferences common fr Préférences
|
||||
@ -623,8 +654,11 @@ read common fr Lire
|
||||
read this list of methods. common fr Lisez cette liste de méthodes.
|
||||
reading common fr Lecture
|
||||
redo tinymce fr Refaire
|
||||
redoes your last action common fr Refait votre dernière action
|
||||
refresh tinymce fr Rafraîchir
|
||||
register common fr S'enregistrer
|
||||
reject common fr Rejeter
|
||||
remember me common fr Se souvenir de moi
|
||||
remove col tinymce fr Supprimer la colonne
|
||||
remove selected accounts common fr supprimer les comptes sélectionnés
|
||||
remove shortcut common fr Supprimer le raccourci
|
||||
@ -668,13 +702,13 @@ select all %1 %2 for %3 common fr S
|
||||
select category common fr Sélectionner la catégorie
|
||||
select date common fr Sélectionner la date
|
||||
select group common fr Sélectionner le groupe
|
||||
select home email address common fr Sélectionner l'email maison
|
||||
select home email address common fr Sélectionner l'email privé
|
||||
select multiple accounts common fr Sélectionner des comptes multiples
|
||||
select one common fr Sélectionner un(e)
|
||||
select the default height for the application windows common fr Choisissez la hauteur par défaut de la fenêtre d'application
|
||||
select the default width for the application windows common fr Choisissez la largeur par défaut de la fenêtre d'application
|
||||
select user common fr Sélectionner l'utilisateur
|
||||
select work email address common fr Sélectionner l'email Bureau
|
||||
select work email address common fr Sélectionner l'email professionnel
|
||||
selection common fr Sélection
|
||||
send common fr Envoyer
|
||||
senegal common fr SENEGAL
|
||||
@ -689,8 +723,10 @@ setup main menu common fr Menu principal du Setup
|
||||
seychelles common fr SEYCHELLES
|
||||
show all common fr Afficher tous les éléments
|
||||
show all categorys common fr Afficher toutes les catégories
|
||||
show as topmenu common fr Afficher en tant que menu supérieur
|
||||
show clock? common fr Afficher l'horloge?
|
||||
show home and logout button in main application bar? common fr Afficher les boutons Accueil et Déconnexion dans la barre d'application principale?
|
||||
show in sidebox common fr Afficher dans la barre de menu latérale
|
||||
show locationbar tinymce fr Afficher la barre d'adresse
|
||||
show logo's on the desktop. common fr Afficher le logo sur le bureau?
|
||||
show menu common fr Afficher le menu
|
||||
@ -724,12 +760,15 @@ start with common fr commence par
|
||||
starting up... common fr Démarrage...
|
||||
status common fr Etat
|
||||
stretched common fr étiré
|
||||
strikethrough common fr Barré
|
||||
striketrough tinymce fr Barré
|
||||
subject common fr Objet
|
||||
submit common fr Envoyer
|
||||
subscript common fr Indice
|
||||
substitutions and their meanings: common fr Substitutions et leurs sens:
|
||||
sudan common fr SOUDAN
|
||||
sunday common fr Dimanche
|
||||
superscript common fr Exposant
|
||||
suriname common fr SURINAM
|
||||
svalbard and jan mayen common fr SVALBARD ETJAN MAYEN
|
||||
swaziland common fr SWAZILAND
|
||||
@ -768,7 +807,8 @@ to go back to the msg list, click <a href= %1 >here</a> common fr Pour revenir
|
||||
today common fr Aujourd'hui
|
||||
todays date, eg. "%1" common fr date d'aujourd'hui, p.ex. "%1"
|
||||
toggle first day of week jscalendar fr Voir le premier jour de la semaine
|
||||
toggle fullscreen mode tinymce fr Passer en plein écran
|
||||
toggle fullscreen mode tinymce fr Basculer en plein écran
|
||||
toggle html source common fr Basculer en code HTML source
|
||||
togo common fr TOGO
|
||||
tokelau common fr TOKELAU
|
||||
tonga common fr TONGA
|
||||
@ -789,6 +829,7 @@ ukraine common fr UKRAINE
|
||||
underline common fr Souligné
|
||||
underline.gif common fr underline.gif
|
||||
undo tinymce fr Défaire
|
||||
undoes your last action common fr Annule votre dernière action
|
||||
united arab emirates common fr EMIRATS ARABES UNIS
|
||||
united kingdom common fr ROYAUME UNI
|
||||
united states common fr ETATS-UNIS
|
||||
@ -836,17 +877,19 @@ western sahara common fr SAHARA OUEST
|
||||
what color should all the blank space on the desktop have common fr Quelle couleur l'espace vide du bureau doit-il avoir?
|
||||
what style would you like the image to have? common fr Quel style souhaitez-vous pour l'image?
|
||||
when you say yes the home and logout buttons are presented as applications in the main top applcation bar. common fr Si vous dites oui, les bouttons Accueil et Déconnexion sont affichés comme des applications dans la barre d'application principale.
|
||||
where and how will the egroupware links like preferences, about and logout be displayed. common fr Ou et comment seront affichés les liens comme Préférences, A propos de et Déconnexion.
|
||||
which groups common fr Quels groupes
|
||||
width common fr Largeur
|
||||
window name tinymce fr Nom de la fenêtre
|
||||
wk jscalendar fr Sem.
|
||||
work email common fr email Bureau
|
||||
work email common fr email professionnel
|
||||
would you like to display the page generation time at the bottom of every window? common fr Voulez-vous voir apparaître le temps de génération en bas de chaque fenêtre?
|
||||
writing common fr écriture
|
||||
written by: common fr Ecrit par:
|
||||
year common fr Année
|
||||
yemen common fr YEMEN
|
||||
yes common fr Oui
|
||||
you are in text mode. use the [<>] button to switch back to wysiwig. common fr Vous êtes en MODE TEXTE. Utilisez le bouton [<>] pour revenir à WYSIWIG.
|
||||
you are required to change your password during your first login common fr Il vous est demandé de changer votre mot de passe lors de votre première connexion
|
||||
you have been successfully logged out login fr Déconnexion réussie
|
||||
you have not entered a title common fr Vous n'avez pas entré de titre
|
||||
@ -858,6 +901,7 @@ you have selected an invalid main category common fr Vous avez s
|
||||
you have successfully logged out common fr Vous vous êtes correctement déconnecté
|
||||
you must enter the url tinymce fr Vous devez entrer une URL
|
||||
you need to add the webserver user '%1' to the group '%2'. common fr Vous devez ajouter l'utilisateur du serveur web '%1' au groupe '%2'.
|
||||
you've tried to open the egroupware application: %1, but you have no permission to access this application. common fr Vous avez tenté d'ouvrir l'application eGroupWare: %1, mais vous n'avez aucune permission d'y accéder.
|
||||
your message could <b>not</b> be sent!<br> common fr Votre message n'a <b>pas</b> pu être envoyé!<br>
|
||||
your message has been sent common fr Votre message a été envoyé
|
||||
your search returned %1 matchs common fr Votre recherche a retourné %1 résultats
|
||||
|
@ -12,6 +12,10 @@
|
||||
- use the %1, %2 buttons to select month jscalendar pt-br - Use os botões %1, %2 para selecionar o mês
|
||||
- use the %1, %2 buttons to select year jscalendar pt-br - Use os botões %1, %2 para selecionar o ano
|
||||
00 (disable) admin pt-br 00 (desabilitado)
|
||||
1 day common pt-br 1 Dia
|
||||
1 hour common pt-br 1 Hora
|
||||
1 month common pt-br 1 Mês
|
||||
1 week common pt-br 1 Semana
|
||||
13 (ntp) admin pt-br 13 (ntp)
|
||||
3 number of chars for day-shortcut jscalendar pt-br 3 números para atalho-dia
|
||||
3 number of chars for month-shortcut jscalendar pt-br 3 números para atalho-mês
|
||||
@ -21,6 +25,7 @@ about common pt-br Sobre
|
||||
about %1 common pt-br Sobre %1
|
||||
about egroupware common pt-br Sobre eGroupWare
|
||||
about the calendar jscalendar pt-br Sobre a Agenda
|
||||
about this editor common pt-br Sobre este editor
|
||||
access common pt-br Acesso
|
||||
access not permitted common pt-br Acesso não permitido
|
||||
account has been created common pt-br A conta foi criada
|
||||
@ -78,6 +83,7 @@ autosave default category common pt-br Salvar automaticamente categoria padr
|
||||
azerbaijan common pt-br AZERBAIJÃO
|
||||
back common pt-br Voltar
|
||||
back to user login common pt-br Voltar a tela de login
|
||||
background color common pt-br Cor de Fundo
|
||||
background color: common pt-br Cor de fundo:
|
||||
backupdir '%1' is not writeable by the webserver common pt-br O servidor web não tem permissão de escrita no diretório de backup '%1'
|
||||
bad login or password common pt-br Login ou senha incorretos
|
||||
@ -153,6 +159,7 @@ clear form common pt-br Limpar Formul
|
||||
click common pt-br Clique
|
||||
click or mouse over to show menus common pt-br Clique ou passe o mouse sobre os menús
|
||||
click or mouse over to show menus? common pt-br Clicar ou passar o mouse sobre os menús?
|
||||
click this image on the navbar: %1 common pt-br Clique nesta imagem na barra de navegação: %1
|
||||
close common pt-br Fechar
|
||||
close sidebox common pt-br Fechar caixa lateral
|
||||
cocos (keeling) islands common pt-br COCOS (KEELING) ISLANDS
|
||||
@ -168,6 +175,7 @@ congo, the democratic republic of the common pt-br REP
|
||||
contacting server... common pt-br Contactando servidor...
|
||||
cook islands common pt-br ILHAS COOK
|
||||
copy common pt-br Copiar
|
||||
copy selection common pt-br Copiar seleção
|
||||
copy table row tinymce pt-br Copiar linha da tabela
|
||||
copy/cut/paste is not available in mozilla and firefox.\ndo you want more information about this issue? tinymce pt-br Copiar/Recortar/Colar não está disponível no Mozilla e Firefox.\nVocê quer mais informações a respeito?
|
||||
copy/cut/paste is not available in mozilla and firefox.ndo you want more information about this issue? tinymce pt-br Copiar/Recortar/Colar não está disponível no Mozilla e Firefox.\nVocê quer mais informações a respeito?
|
||||
@ -180,7 +188,9 @@ croatia common pt-br CRO
|
||||
cuba common pt-br CUBA
|
||||
currency common pt-br Moeda
|
||||
current common pt-br Atualizado
|
||||
current style common pt-br Estilo atual
|
||||
current users common pt-br Usuários ativos
|
||||
cut selection common pt-br Recortar seleção
|
||||
cut table row tinymce pt-br Recortar linha da tabela
|
||||
cyprus common pt-br CHIPRE
|
||||
czech republic common pt-br REPÚBLICA CHECA
|
||||
@ -190,6 +200,7 @@ date modified tinymce pt-br Data modificada
|
||||
date selection: jscalendar pt-br Seleção da data:
|
||||
datetime port.<br>if using port 13, please set firewall rules appropriately before submitting this page.<br>(port: 13 / host: 129.6.15.28) admin pt-br Porta da Data e hora.<br>Quando usar a porta 13, por favor configure os filtros do firewall antes de submeter as alterações.<br>(Porta: 13 / Host: 129.6.15.28)
|
||||
december common pt-br Dezembro
|
||||
decrease indent common pt-br Diminuir recuo
|
||||
default tinymce pt-br Padrão
|
||||
default category common pt-br Categoria padrão
|
||||
default height for the windows common pt-br Altura padrão para as janelas
|
||||
@ -243,6 +254,7 @@ en common pt-br en
|
||||
enabled common pt-br Habilitado
|
||||
end date common pt-br Data do término
|
||||
end time common pt-br Hora do término
|
||||
enlarge editor common pt-br Aumentar editor
|
||||
enter the location of egroupware's url.<br>example: http://www.domain.com/egroupware or /egroupware<br><b>no trailing slash</b> admin pt-br Informe a localização da Extranet em um URL .<br>Exemplo: http://www.seudomínio.com.br/extranet ou /extranet<br><b>Não finalize com uma BARRA</b>
|
||||
entry has been deleted sucessfully common pt-br Entrada removida com sucesso
|
||||
entry updated sucessfully common pt-br Entrada atualizada com sucesso
|
||||
@ -293,9 +305,11 @@ folder name missing. tinymce pt-br Nome da pasta faltando.
|
||||
folder not found. tinymce pt-br Pasta não encontrada.
|
||||
folder with specified new name already exists. folder was not renamed/moved. tinymce pt-br Uma pasta com o novo nome informado já existe. A pasta não foi renomeada/movida.
|
||||
folder(s) tinymce pt-br pasta(s)
|
||||
font color common pt-br Cor da Fonte
|
||||
for mouse out tinymce pt-br para mouse fora
|
||||
for mouse over tinymce pt-br para mouse por cima
|
||||
force selectbox common pt-br Forçar caixa de seleção
|
||||
forever common pt-br Para sempre
|
||||
france common pt-br FRANÇA
|
||||
french guiana common pt-br GUIANA FRANCESA
|
||||
french polynesia common pt-br FRANÇA POLYNÉSIA
|
||||
@ -339,6 +353,7 @@ haiti common pt-br HAITI
|
||||
heard island and mcdonald islands common pt-br HEARD ISLAND AND MCDONALD ISLANDS
|
||||
height common pt-br Altura
|
||||
help common pt-br Ajuda
|
||||
help using editor common pt-br Ajuda para usar o editor
|
||||
high common pt-br Alto
|
||||
highest common pt-br Mais alto
|
||||
holy see (vatican city state) common pt-br VATICANO
|
||||
@ -346,7 +361,9 @@ home common pt-br P
|
||||
home email common pt-br E-mail residencial
|
||||
honduras common pt-br HONDURAS
|
||||
hong kong common pt-br HONG KONG
|
||||
horizontal rule common pt-br Régua Horizontal
|
||||
how many icons should be shown in the navbar (top of the page). additional icons go into a kind of pulldown menu, callable by the icon on the far right side of the navbar. common pt-br Quantos ícones devem ser mostrados na barra de navegação (ao topo da página). Ícones adicionais serão colocados em um recurso adicional em forma de menú suspenso à direita da barra de navegação.
|
||||
how to show the general egroupware menu ? common pt-br Como exibir o menu geral do eGroupWare ?
|
||||
hungary common pt-br HUNGRIA
|
||||
iceland common pt-br ISLÂNDIA
|
||||
iespell not detected. click ok to go to download page. common pt-br ieSpell não detectado. Clique Ok para ir para a página de download.
|
||||
@ -355,6 +372,7 @@ if there are some images in the background folder you can choose the one you wou
|
||||
image description tinymce pt-br Descrição da imagem
|
||||
image title tinymce pt-br Título da imagem
|
||||
image url common pt-br URL da imagem
|
||||
increase indent common pt-br Aumentar recuo
|
||||
indent tinymce pt-br Recúo para dentro
|
||||
india common pt-br INDIA
|
||||
indonesia common pt-br INDONESIA
|
||||
@ -368,10 +386,13 @@ insert column before common pt-br Inserir coluna antes
|
||||
insert date tinymce pt-br Inserir data
|
||||
insert emotion tinymce pt-br Inserir emoção
|
||||
insert file tinymce pt-br Inserir arquivo
|
||||
insert image common pt-br Inserir imagem
|
||||
insert link to file tinymce pt-br Inserir link para arquivo
|
||||
insert row after common pt-br Inserir linha depois
|
||||
insert row before common pt-br Inserir linha antes
|
||||
insert table common pt-br Inserir tabela
|
||||
insert time tinymce pt-br Inserir horário
|
||||
insert web link common pt-br Inserir link para web
|
||||
insert/edit image tinymce pt-br Inserir/Editar imagem
|
||||
insert/edit link tinymce pt-br Inserir/Editar link
|
||||
insert/modify table tinymce pt-br Inserir/Modificar tabela
|
||||
@ -522,6 +543,8 @@ norfolk island common pt-br ILHAS NORFOLK
|
||||
normal common pt-br Normal
|
||||
northern mariana islands common pt-br NORTHERN MARIANA ISLANDS
|
||||
norway common pt-br NORUEGA
|
||||
not common pt-br não
|
||||
not a user yet? register now common pt-br Ainda não é um usuário? Registre-se agora
|
||||
not assigned common pt-br Não atribuído
|
||||
note common pt-br Nota
|
||||
notes common pt-br Notas
|
||||
@ -537,6 +560,7 @@ on mouse over common pt-br Passar o mouse
|
||||
only files with extensions are permited, e.g. "imagefile.jpg". tinymce pt-br Somente arquivos com extensões são permitidos, por exemplo: "imagem.jpg"
|
||||
only private common pt-br Apenas particular
|
||||
only yours common pt-br somente as suas
|
||||
oops! you caught us in the middle of system maintainance. common pt-br Oops! Você nos pegou no meio de uma manutenção de sistema.
|
||||
open file in new window tinymce pt-br Abrir arquivo em uma nova janela
|
||||
open in new window tinymce pt-br Abrir em uma nova janela
|
||||
open in parent window / frame tinymce pt-br Abrir na janela / frame pai
|
||||
@ -573,9 +597,11 @@ password must contain at least %1 special characters common pt-br Senha deve ter
|
||||
password must contain at least %1 uppercase letters common pt-br Senha deve ter ao menos %1 caractere(s) maiúsculo(s)
|
||||
password must have at least %1 characters common pt-br Senha deve ter ao menos %1 caractere(s)
|
||||
paste as plain text tinymce pt-br Colar como texto plano
|
||||
paste from clipboard common pt-br Colar da área de transferência
|
||||
paste from word tinymce pt-br Colar do Word
|
||||
paste table row after tinymce pt-br Colar linha de tabela depois
|
||||
paste table row before tinymce pt-br Colar linha de tabela antes
|
||||
path common pt-br Caminho
|
||||
path not found. tinymce pt-br Caminho não encontrado
|
||||
path to user and group files has to be outside of the webservers document-root!!! common pt-br O caminho para usuários e grupos deve ser FORA do servidor da extranet.!!!
|
||||
pattern for search in addressbook common pt-br Padrão para pesquisa em Contatos
|
||||
@ -597,11 +623,13 @@ please select common pt-br Por favor selecione
|
||||
please set your global preferences common pt-br Por favor configure suas preferências gerais
|
||||
please set your preferences for this application common pt-br Configure suas preferências para este aplicativo
|
||||
please wait... common pt-br Aguarde...
|
||||
please, check back with us shortly. common pt-br Por favor, volte a nos contactar mais tarde.
|
||||
poland common pt-br POLÔNIA
|
||||
popup url tinymce pt-br URL Popup
|
||||
portugal common pt-br PORTUGAL
|
||||
position (x/y) tinymce pt-br Posição (X/Y)
|
||||
postal common pt-br CEP
|
||||
powered by common pt-br Desenvolvido por
|
||||
powered by egroupware version %1 common pt-br Atualizado pela <a href="http://www.egroupware.com.br" target="_blank">eGW-BR</a> sobre a plataforma eGW versão %1
|
||||
powered by phpgroupware version %1 common pt-br Desenvolvido por eGroupWare versão %1
|
||||
preferences common pt-br Preferências
|
||||
@ -623,8 +651,11 @@ read common pt-br Leitura
|
||||
read this list of methods. common pt-br Leia a lista de métodos.
|
||||
reading common pt-br Lendo
|
||||
redo tinymce pt-br Refazer
|
||||
redoes your last action common pt-br Repetir sua última ação
|
||||
refresh tinymce pt-br Atualizar
|
||||
register common pt-br Registrar
|
||||
reject common pt-br Rejeitar
|
||||
remember me common pt-br Lembre-se de mim
|
||||
remove col tinymce pt-br Remover coluna
|
||||
remove selected accounts common pt-br apagar contas selecionadas
|
||||
remove shortcut common pt-br Remover tecla de atalho
|
||||
@ -689,8 +720,10 @@ setup main menu common pt-br Menu principal de configura
|
||||
seychelles common pt-br SEYCHELLES
|
||||
show all common pt-br Exibir tudo
|
||||
show all categorys common pt-br Mostrar todas as Categorias
|
||||
show as topmenu common pt-br Exibir como menu superior
|
||||
show clock? common pt-br Exibir relógio
|
||||
show home and logout button in main application bar? common pt-br Exibir Página Inicial e Desconectar na barra de aplicativos principais?
|
||||
show in sidebox common pt-br Exibir como menu lateral
|
||||
show locationbar tinymce pt-br Exibir local da barra
|
||||
show logo's on the desktop. common pt-br Exibir logotipo na tela.
|
||||
show menu common pt-br Mostrar menu
|
||||
@ -727,9 +760,11 @@ stretched common pt-br esticado
|
||||
striketrough tinymce pt-br Batida completamente
|
||||
subject common pt-br Assunto
|
||||
submit common pt-br Enviar
|
||||
subscript common pt-br Subscrito
|
||||
substitutions and their meanings: common pt-br Substituições e seus efeitos:
|
||||
sudan common pt-br SUDÃO
|
||||
sunday common pt-br Domingo
|
||||
superscript common pt-br Sobrescrito
|
||||
suriname common pt-br SURINAME
|
||||
svalbard and jan mayen common pt-br SVALBARD AND JAN MAYEN
|
||||
swaziland common pt-br SUAZILÂNDIA
|
||||
@ -769,6 +804,7 @@ today common pt-br Hoje
|
||||
todays date, eg. "%1" common pt-br Data de hoje, ex. "%1"
|
||||
toggle first day of week jscalendar pt-br Utilizar como primeiro dia da semana
|
||||
toggle fullscreen mode tinymce pt-br Alterar para modo tela cheia
|
||||
toggle html source common pt-br Alterar para fonte HTML
|
||||
togo common pt-br TOGO
|
||||
tokelau common pt-br TOKELAU
|
||||
tonga common pt-br TONGA
|
||||
@ -789,6 +825,7 @@ ukraine common pt-br UCR
|
||||
underline common pt-br Sublinhado
|
||||
underline.gif common pt-br underline.gif
|
||||
undo tinymce pt-br Desfazer
|
||||
undoes your last action common pt-br Desfazer sua última ação
|
||||
united arab emirates common pt-br EMIRADOS ÁRABES UNIDOS
|
||||
united kingdom common pt-br INGLATERRA
|
||||
united states common pt-br ESTADOS UNIDOS
|
||||
@ -836,6 +873,7 @@ western sahara common pt-br WESTERN SAHARA
|
||||
what color should all the blank space on the desktop have common pt-br Que cor todo espaço em branco deve ter na tela?
|
||||
what style would you like the image to have? common pt-br Que estilo você quer que a imagem tenha?
|
||||
when you say yes the home and logout buttons are presented as applications in the main top applcation bar. common pt-br Quando você escolhe sim, os botões Página Inicial e Desconectar são exibidos como aplicativos na barra de aplicativos principais.
|
||||
where and how will the egroupware links like preferences, about and logout be displayed. common pt-br Onde e como links como Preferências, Sobre e Desconectar serão exibidos ?
|
||||
which groups common pt-br Qual grupo
|
||||
width common pt-br Largura
|
||||
window name tinymce pt-br Nome da janela
|
||||
@ -847,6 +885,7 @@ written by: common pt-br Escrito por:
|
||||
year common pt-br Ano
|
||||
yemen common pt-br YEMEN
|
||||
yes common pt-br Sim
|
||||
you are in text mode. use the [<>] button to switch back to wysiwig. common pt-br Você está em MODO TEXTO. Use o botão [<>] para alternar para WYSIWIG.
|
||||
you are required to change your password during your first login common pt-br Você foi solicitado a alterar a sua senha na primeira sessão.
|
||||
you have been successfully logged out login pt-br Você foi desconectado com sucesso
|
||||
you have not entered a title common pt-br Você não informou um título
|
||||
@ -858,6 +897,7 @@ you have selected an invalid main category common pt-br Voc
|
||||
you have successfully logged out common pt-br Você encerrou a sessão corretamente.
|
||||
you must enter the url tinymce pt-br Você precisa informar a URL
|
||||
you need to add the webserver user '%1' to the group '%2'. common pt-br Você precisa adicionar o usuário webserver '%1' ao grupo '%2'.
|
||||
you've tried to open the egroupware application: %1, but you have no permission to access this application. common pt-br Você tentou abrir a aplicação: %1, mas você não tem permissão para acessá-la.
|
||||
your message could <b>not</b> be sent!<br> common pt-br <b>Não</b> foi possível enviar sua mensagem!<br>
|
||||
your message has been sent common pt-br Sua mensagem foi enviada.
|
||||
your search returned %1 matchs common pt-br Sua pesquisa retornou %1 ocorrências
|
||||
|
@ -14,7 +14,7 @@
|
||||
/* Basic information about this app */
|
||||
$setup_info['phpgwapi']['name'] = 'phpgwapi';
|
||||
$setup_info['phpgwapi']['title'] = 'eGroupWare API';
|
||||
$setup_info['phpgwapi']['version'] = '1.3.019';
|
||||
$setup_info['phpgwapi']['version'] = '1.3.021';
|
||||
$setup_info['phpgwapi']['versions']['current_header'] = '1.28';
|
||||
$setup_info['phpgwapi']['enable'] = 3;
|
||||
$setup_info['phpgwapi']['app_order'] = 1;
|
||||
@ -54,6 +54,14 @@
|
||||
$setup_info['phpgwapi']['tables'][] = 'egw_addressbook_lists';
|
||||
$setup_info['phpgwapi']['tables'][] = 'egw_addressbook2list';
|
||||
|
||||
// hooks used by vfs_home to manage user- and group-directories
|
||||
$setup_info['phpgwapi']['hooks']['addaccount'] = 'phpgwapi.vfs_home.addAccount';
|
||||
$setup_info['phpgwapi']['hooks']['deleteaccount'] = 'phpgwapi.vfs_home.deleteAccount';
|
||||
$setup_info['phpgwapi']['hooks']['editaccount'] = 'phpgwapi.vfs_home.editAccount';
|
||||
$setup_info['phpgwapi']['hooks']['addgroup'] = 'phpgwapi.vfs_home.addGroup';
|
||||
$setup_info['phpgwapi']['hooks']['deletegroup'] = 'phpgwapi.vfs_home.deleteGroup';
|
||||
$setup_info['phpgwapi']['hooks']['editgroup'] = 'phpgwapi.vfs_home.editGroup';
|
||||
|
||||
/* Basic information about this app */
|
||||
$setup_info['notifywindow']['name'] = 'notifywindow';
|
||||
$setup_info['notifywindow']['title'] = 'Notify Window';
|
||||
@ -63,3 +71,5 @@
|
||||
$setup_info['notifywindow']['tables'] = '';
|
||||
$setup_info['notifywindow']['hooks'][] = 'home';
|
||||
|
||||
|
||||
|
||||
|
@ -437,7 +437,7 @@
|
||||
'link_app2' => array('type' => 'varchar','precision' => '25','nullable' => False),
|
||||
'link_id2' => array('type' => 'varchar','precision' => '50','nullable' => False),
|
||||
'link_remark' => array('type' => 'varchar','precision' => '100'),
|
||||
'link_lastmod' => array('type' => 'int','precision' => '4','nullable' => False),
|
||||
'link_lastmod' => array('type' => 'int','precision' => '8','nullable' => False),
|
||||
'link_owner' => array('type' => 'int','precision' => '4','nullable' => False)
|
||||
),
|
||||
'pk' => array('link_id'),
|
||||
@ -459,7 +459,7 @@
|
||||
'n_suffix' => array('type' => 'varchar','precision' => '64'),
|
||||
'n_fn' => array('type' => 'varchar','precision' => '128'),
|
||||
'n_fileas' => array('type' => 'varchar','precision' => '255'),
|
||||
'contact_bday' => array('type' => 'varchar','precision' => '10'),
|
||||
'contact_bday' => array('type' => 'varchar','precision' => '12'),
|
||||
'org_name' => array('type' => 'varchar','precision' => '64'),
|
||||
'org_unit' => array('type' => 'varchar','precision' => '64'),
|
||||
'contact_title' => array('type' => 'varchar','precision' => '64'),
|
||||
@ -544,7 +544,7 @@
|
||||
'list_added' => array('type' => 'int','precision' => '8'),
|
||||
'list_added_by' => array('type' => 'int','precision' => '4')
|
||||
),
|
||||
'pk' => array('ab_id','list_id'),
|
||||
'pk' => array('contact_id','list_id'),
|
||||
'fk' => array(),
|
||||
'ix' => array(),
|
||||
'uc' => array()
|
||||
|
@ -298,7 +298,7 @@
|
||||
'n_suffix' => array('type' => 'varchar','precision' => '64'),
|
||||
'n_fn' => array('type' => 'varchar','precision' => '128'),
|
||||
'n_fileas' => array('type' => 'varchar','precision' => '255'),
|
||||
'contact_bday' => array('type' => 'varchar','precision' => '10'),
|
||||
'contact_bday' => array('type' => 'varchar','precision' => '12'),
|
||||
'org_name' => array('type' => 'varchar','precision' => '64'),
|
||||
'org_unit' => array('type' => 'varchar','precision' => '64'),
|
||||
'contact_title' => array('type' => 'varchar','precision' => '64'),
|
||||
@ -753,4 +753,29 @@
|
||||
|
||||
return $GLOBALS['setup_info']['phpgwapi']['currentver'] = '1.3.019';
|
||||
}
|
||||
|
||||
|
||||
$test[] = '1.3.019';
|
||||
function phpgwapi_upgrade1_3_019()
|
||||
{
|
||||
$GLOBALS['egw_setup']->oProc->AlterColumn('egw_addressbook','contact_bday',array(
|
||||
'type' => 'varchar',
|
||||
'precision' => '12'
|
||||
));
|
||||
|
||||
return $GLOBALS['setup_info']['phpgwapi']['currentver'] = '1.3.020';
|
||||
}
|
||||
|
||||
|
||||
$test[] = '1.3.020';
|
||||
function phpgwapi_upgrade1_3_020()
|
||||
{
|
||||
$GLOBALS['egw_setup']->oProc->AlterColumn('egw_links','link_lastmod',array(
|
||||
'type' => 'int',
|
||||
'precision' => '8',
|
||||
'nullable' => False
|
||||
));
|
||||
|
||||
return $GLOBALS['setup_info']['phpgwapi']['currentver'] = '1.3.021';
|
||||
}
|
||||
?>
|
||||
|
@ -38,6 +38,12 @@
|
||||
* @var Template
|
||||
*/
|
||||
var $tpl;
|
||||
/**
|
||||
* Instance of the Savant template class
|
||||
*
|
||||
* @var tplsavant2
|
||||
*/
|
||||
var $tplsav2;
|
||||
/**
|
||||
* true if $this->navbar() was called
|
||||
*
|
||||
@ -107,7 +113,7 @@
|
||||
if($GLOBALS['egw_info']['user']['preferences']['common']['show_general_menu'] != 'sidebox')
|
||||
{
|
||||
$GLOBALS['egw']->hooks->process('topmenu_info');
|
||||
echo $this->topmenu();
|
||||
$content = $this->topmenu();
|
||||
}
|
||||
|
||||
$this->navbar_done = true;
|
||||
@ -139,7 +145,7 @@
|
||||
$vars = $this->_get_navbar($apps);
|
||||
|
||||
$this->tpl->set_var($vars);
|
||||
$content = $this->tpl->fp('out','navbar_header');
|
||||
$content .= $this->tpl->fp('out','navbar_header');
|
||||
|
||||
// general (app-unspecific) sidebox menu
|
||||
if($GLOBALS['egw_info']['user']['preferences']['common']['show_general_menu'] == 'sidebox')
|
||||
@ -532,7 +538,7 @@
|
||||
}
|
||||
}
|
||||
// settings for the extra icons dif
|
||||
if ($i < $max_icons) // no extra icon div
|
||||
if ($i <= $max_icons) // no extra icon div
|
||||
{
|
||||
$this->tpl->set_var('app_extra_icons_div','');
|
||||
$this->tpl->set_var('app_extra_icons_icon','');
|
||||
@ -626,7 +632,7 @@
|
||||
$this->_add_topmenu_info_item($this->_current_users());
|
||||
$this->_add_topmenu_info_item($this->_get_quick_add());
|
||||
|
||||
$this->tplsav2->display('topmenu.tpl.php');
|
||||
return $this->tplsav2->fetch('topmenu.tpl.php');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -764,7 +770,7 @@ function _sidebox_menu_item($item_link='',$item_text='')
|
||||
$var['item_link'] = $item_link['link'];
|
||||
if ($item_link['target'])
|
||||
{
|
||||
if (strstr($item_link['target'], 'target=')) {
|
||||
if (strpos($item_link['target'], 'target=') !== false) {
|
||||
$var['target'] = $item_link['target'];
|
||||
} else {
|
||||
$var['target'] = ' target="' . $item_link['target'] . '"';
|
||||
|
@ -198,7 +198,7 @@
|
||||
$vars = $this->template->get_undefined('row_colspan');
|
||||
foreach($vars as $var)
|
||||
{
|
||||
if(strstr($var,'lang_'))
|
||||
if(strpos($var,'lang_') !== false)
|
||||
{
|
||||
$value = str_replace('lang_','',$var);
|
||||
$value = str_replace('_',' ',$value);
|
||||
|
@ -113,7 +113,7 @@
|
||||
|
||||
// make categories called via sidebox menu of an app, to behave like a part of that app
|
||||
$referer = $GLOBALS['egw']->common->get_referer('/preferences/index.php');
|
||||
if (!strstr($referer,'menuaction=preferences.uicategories'))
|
||||
if (strpos($referer,'menuaction=preferences.uicategories') === false)
|
||||
{
|
||||
$this->referer = $referer;
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ max matches per page preferences de maximale Treffer pro Seite
|
||||
max number of icons in navbar preferences de Maximale Anzahl von Icons in der Navigationsleiste
|
||||
no default preferences de Keine Vorgabe
|
||||
no user-selection at all common de Überhaupt keine Benutzerauswahl
|
||||
note: this feature does *not* change your email password. this will need to be done manually. preferences de Hinweis: Diese Funktion ändert *nicht* Ihr Passwort auf dem E-Mail server. Dies müssen sie separat tun.
|
||||
note: this feature does *not* change your email password. this will need to be done manually. preferences de Hinweis: Diese Funktion ändert *nicht* Ihr Passwort auf dem E-Mail-Server. Dies müssen Sie separat tun.
|
||||
please, select a new theme preferences de Bitte ein neues Schema wählen
|
||||
popup with search preferences de Popup mit Suche
|
||||
re-enter your password preferences de Neues Passwort wiederholen
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
$setup_info['preferences']['name'] = 'preferences';
|
||||
$setup_info['preferences']['title'] = 'Preferences';
|
||||
$setup_info['preferences']['version'] = '1.2';
|
||||
$setup_info['preferences']['version'] = '1.4';
|
||||
$setup_info['preferences']['app_order'] = 1;
|
||||
$setup_info['preferences']['tables'] = '';
|
||||
$setup_info['preferences']['enable'] = 2;
|
||||
@ -28,6 +28,6 @@
|
||||
/* Dependencies for this app to work */
|
||||
$setup_info['preferences']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.2','1.3','1.4','1.5')
|
||||
);
|
||||
?>
|
||||
|
@ -335,10 +335,7 @@ class bo_resources
|
||||
$data = $this->so->search($criteria,$only_keys,$order_by='',$extra_cols='',$wildcard='%',$empty,$op='OR','',$filter);
|
||||
foreach($data as $num => $resource)
|
||||
{
|
||||
if($num != 0)
|
||||
{
|
||||
$list[$resource['res_id']] = $resource['name']. ($resource['short_description'] ? ', ['.$resource['short_description'].']':'');
|
||||
}
|
||||
$list[$resource['res_id']] = $resource['name']. ($resource['short_description'] ? ', ['.$resource['short_description'].']':'');
|
||||
}
|
||||
return $list;
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
$setup_info['resources']['name'] = 'resources';
|
||||
$setup_info['resources']['title'] = 'Resources';
|
||||
$setup_info['resources']['version'] = '1.2';
|
||||
$setup_info['resources']['version'] = '1.4';
|
||||
$setup_info['resources']['app_order'] = 5;
|
||||
$setup_info['resources']['tables'] = array('egw_resources','egw_resources_extra');
|
||||
$setup_info['resources']['enable'] = 1;
|
||||
@ -37,13 +37,13 @@
|
||||
|
||||
$setup_info['resources']['depends'][] = array(
|
||||
'appname' => 'phpgwapi',
|
||||
'versions' => Array('1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['resources']['depends'][] = array( // cause eTemplates is not in the api yet
|
||||
'appname' => 'etemplate',
|
||||
'versions' => Array('1.0.1','1.2','1.3')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
$setup_info['resources']['depends'][] = array( // cause of vfs psuedoprotocol is not fully in the api yet
|
||||
'appname' => 'filemanager',
|
||||
'versions' => Array('1.0.0','1.0.1','1.2')
|
||||
'versions' => Array('1.3','1.4','1.5')
|
||||
);
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user