[eGroupWare-svn] r55955 - in /trunk/infolog: ./ inc/ setup/
[email protected] Sat, 30 Apr 2016 17:05:23 -0000
| Newsgroups | gmane.comp.web.egroupware.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: ralfbecker
Date: Sat Apr 30 19:05:23 2016
New Revision: 55955
URL: http://svn.stylite.de/viewvc/egroupware?rev=55955&view=rev
Log:
using new api for InfoLog
Removed:
trunk/infolog/setup/etemplates.inc.php
Modified:
trunk/infolog/inc/class.infolog_bo.inc.php
trunk/infolog/inc/class.infolog_customfields.inc.php
trunk/infolog/inc/class.infolog_datasource.inc.php
trunk/infolog/inc/class.infolog_export_csv.inc.php
trunk/infolog/inc/class.infolog_export_ical.inc.php
trunk/infolog/inc/class.infolog_groupdav.inc.php
trunk/infolog/inc/class.infolog_hooks.inc.php
trunk/infolog/inc/class.infolog_ical.inc.php
trunk/infolog/inc/class.infolog_import_ical.inc.php
trunk/infolog/inc/class.infolog_import_infologs_csv.inc.php
trunk/infolog/inc/class.infolog_merge.inc.php
trunk/infolog/inc/class.infolog_so.inc.php
trunk/infolog/inc/class.infolog_tracking.inc.php
trunk/infolog/inc/class.infolog_ui.inc.php
trunk/infolog/inc/class.infolog_widget.inc.php
trunk/infolog/inc/class.infolog_wizard_export_csv.inc.php
trunk/infolog/inc/class.infolog_wizard_import_infologs_csv.inc.php
trunk/infolog/inc/class.infolog_zpush.inc.php
trunk/infolog/index.php
trunk/infolog/setup/setup.inc.php
trunk/infolog/setup/tables_update.inc.php
Modified: trunk/infolog/inc/class.infolog_bo.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_bo.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_bo.inc.php (original)
+++ trunk/infolog/inc/class.infolog_bo.inc.php Sat Apr 30 19:05:23 2016
@@ -11,13 +11,21 @@
* @version $Id$
*/
-define('EGW_ACL_UNDELETE',EGW_ACL_CUSTOM_1); // undelete right
+use EGroupware\Api;
+use EGroupware\Api\Link;
+use EGroupware\Api\Acl;
+use EGroupware\Api\Vfs;
/**
* This class is the BO-layer of InfoLog
*/
class infolog_bo
{
+ /**
+ * Undelete right
+ */
+ const ACL_UNDELETE = Acl::CUSTOM1;
+
var $enums;
var $status;
/**
@@ -204,7 +212,7 @@
'ongoing' => 'ongoing', // iCal has no status on notes
'done' => 'done' ),
);
- if (($config_data = config::read('infolog')))
+ if (($config_data = Api\Config::read('infolog')))
{
if (isset($config_data['status']) && is_array($config_data['status']))
{
@@ -226,7 +234,7 @@
}
if ($config_data['group_owners']) $this->group_owners = $config_data['group_owners'];
- $this->customfields = egw_customfields::get('infolog');
+ $this->customfields = Api\Storage\Customfields::get('infolog');
if ($this->customfields)
{
foreach($this->customfields as $name => $field)
@@ -244,7 +252,7 @@
$save_config = true;
}
}
- if ($save_config) config::save_value('customfields',$this->customfields,'infolog');
+ if ($save_config) Api\Config::save_value('customfields',$this->customfields,'infolog');
}
if (is_array($config_data['responsible_edit']))
{
@@ -278,7 +286,7 @@
$this->user = $GLOBALS['egw_info']['user']['account_id'];
$this->now = time();
- $this->user_time_now = egw_time::server2user($this->now,'ts');
+ $this->user_time_now = Api\DateTime::server2user($this->now,'ts');
$this->grants = $GLOBALS['egw']->acl->get_grants('infolog',$this->group_owners ? $this->group_owners : true);
$this->so = new infolog_so($this->grants);
@@ -297,17 +305,13 @@
* checks if there are customfields for typ $typ
*
* @param string $type
- * @param boolean $links = false if true check only customfields containing links, default false = all custom fields
* @return boolean True if there are customfields for $typ, else False
*/
- function has_customfields($type,$links=false)
- {
- if ($links) $link_types = customfields_widget::get_customfield_link_types();
-
+ function has_customfields($type)
+ {
foreach($this->customfields as $field)
{
- if ((!$type || empty($field['type2']) || in_array($type,is_array($field['type2']) ? $field['type2'] : explode(',',$field['type2']))) &&
- (!$links || in_array($field['type'],$link_types)))
+ if ((!$type || empty($field['type2']) || in_array($type,is_array($field['type2']) ? $field['type2'] : explode(',',$field['type2']))))
{
return True;
}
@@ -319,7 +323,7 @@
* check's if user has the requiered rights on entry $info_id
*
* @param int|array $info data or info_id of infolog entry to check
- * @param int $required_rights EGW_ACL_{READ|EDIT|ADD|DELETE}
+ * @param int $required_rights ACL::{READ|EDIT|ADD|DELETE}|infolog_bo::ACL_UNDELETE
* @param int $other uid to check (if info==0) or 0 to check against $this->user
* @param int $user = null user whos rights to check, default current user
* @return boolean
@@ -356,14 +360,14 @@
if (!is_array($info) && !($info = $this->so->read(array('info_id' => $info_id)))) return false;
if ($info['info_status'] == 'deleted' &&
- ($required_rights == EGW_ACL_EDIT || // no edit rights for deleted entries
- $required_rights == EGW_ACL_ADD || // no add rights for deleted entries
- $required_rights == EGW_ACL_DELETE && ($this->history == 'history_no_delete' || // no delete at all!
+ ($required_rights == Acl::EDIT || // no edit rights for deleted entries
+ $required_rights == Acl::ADD || // no add rights for deleted entries
+ $required_rights == Acl::DELETE && ($this->history == 'history_no_delete' || // no delete at all!
$this->history == 'history_admin_delete' && (!isset($GLOBALS['egw_info']['user']['apps']['admin']) || $user!=$this->user)))) // delete only for admins
{
$access = false;
}
- elseif ($required_rights == EGW_ACL_UNDELETE)
+ elseif ($required_rights == self::ACL_UNDELETE)
{
if ($info['info_status'] != 'deleted')
{
@@ -372,11 +376,11 @@
else
{
// undelete requires edit rights
- $access = $this->so->check_access( $info,EGW_ACL_EDIT,$this->implicit_rights == 'edit',$grants,$user );
- }
- }
- }
- elseif ($required_rights == EGW_ACL_UNDELETE)
+ $access = $this->so->check_access( $info,Acl::EDIT,$this->implicit_rights == 'edit',$grants,$user );
+ }
+ }
+ }
+ elseif ($required_rights == self::ACL_UNDELETE)
{
$access = false;
}
@@ -423,7 +427,7 @@
if ($info['info_link_id'] > 0 &&
(isset($info['links']) && ($link = $info['links'][$info['info_link_id']]) || // use supplied links info
- ($link = egw_link::get_link($info['info_link_id'])) !== False)) // if link not found in supplied links, we always search!
+ ($link = Link::get_link($info['info_link_id'])) !== False)) // if link not found in supplied links, we always search!
{
if (isset($info['links']) && isset($link['app']))
{
@@ -436,7 +440,7 @@
$app = $link['link_app'.$nr];
$id = $link['link_id'.$nr];
}
- $title = egw_link::title($app,$id);
+ $title = Link::title($app,$id);
if ((string)$info['info_custom_from'] === '') // old entry
{
@@ -493,7 +497,7 @@
if ($fromTZId === $toTZId) return;
- $tz = egw_time::$server_timezone;
+ $tz = Api\DateTime::$server_timezone;
if ($fromTZId)
{
@@ -505,12 +509,12 @@
}
elseif (is_null($fromTZId))
{
- $tz = egw_time::$user_timezone;
- $fromTZ = egw_time::$user_timezone;
+ $tz = Api\DateTime::$user_timezone;
+ $fromTZ = Api\DateTime::$user_timezone;
}
else
{
- $fromTZ = egw_time::$server_timezone;
+ $fromTZ = Api\DateTime::$server_timezone;
}
if ($toTZId)
{
@@ -522,30 +526,30 @@
}
elseif (is_null($toTZId))
{
- $toTZ = egw_time::$user_timezone;
+ $toTZ = Api\DateTime::$user_timezone;
}
else
{
- $toTZ = egw_time::$server_timezone;
- }
- //error_log(__METHOD__.'(values[info_enddate]='.date('Y-m-d H:i:s',$values['info_enddate']).", from=".array2string($fromTZId).", to=".array2string($toTZId).") tz=".$tz->getName().', fromTZ='.$fromTZ->getName().', toTZ='.$toTZ->getName().', userTZ='.egw_time::$user_timezone->getName());
+ $toTZ = Api\DateTime::$server_timezone;
+ }
+ //error_log(__METHOD__.'(values[info_enddate]='.date('Y-m-d H:i:s',$values['info_enddate']).", from=".array2string($fromTZId).", to=".array2string($toTZId).") tz=".$tz->getName().', fromTZ='.$fromTZ->getName().', toTZ='.$toTZ->getName().', userTZ='.Api\DateTime::$user_timezone->getName());
foreach($this->timestamps as $key)
{
if ($values[$key])
{
- $time = new egw_time($values[$key], $tz);
+ $time = new Api\DateTime($values[$key], $tz);
$time->setTimezone($fromTZ);
if ($time->format('Hi') == '0000')
{
// we keep dates the same in new timezone
- $arr = egw_time::to($time,'array');
- $time = new egw_time($arr, $toTZ);
+ $arr = Api\DateTime::to($time,'array');
+ $time = new Api\DateTime($arr, $toTZ);
}
else
{
$time->setTimezone($toTZ);
}
- $values[$key] = egw_time::to($time,'ts');
+ $values[$key] = Api\DateTime::to($time,'ts');
}
}
//error_log(__METHOD__.'() --> values[info_enddate]='.date('Y-m-d H:i:s',$values['info_enddate']));
@@ -562,7 +566,7 @@
{
if (empty($ts) || $date_format == 'server') return $ts;
- return egw_time::server2user($ts,$date_format);
+ return Api\DateTime::server2user($ts,$date_format);
}
/**
@@ -596,9 +600,8 @@
{
return null;
}
- $info_id = $data['info_id']; // in case the uid was specified
-
- if (!$ignore_acl && !$this->check_access($data,EGW_ACL_READ)) // check behind read, to prevent a double read
+
+ if (!$ignore_acl && !$this->check_access($data,Acl::READ)) // check behind read, to prevent a double read
{
return False;
}
@@ -640,7 +643,7 @@
{
return False;
}
- if (!$this->check_access($info,EGW_ACL_DELETE))
+ if (!$this->check_access($info,Acl::DELETE))
{
return False;
}
@@ -649,7 +652,7 @@
{
foreach($children as $id => $owner)
{
- if ($delete_children && $this->so->grants[$owner] & EGW_ACL_DELETE)
+ if ($delete_children && $this->so->grants[$owner] & Acl::DELETE)
{
$this->delete($id,$delete_children,$new_parent,$skip_notification); // call ourself recursive to delete the child
}
@@ -674,13 +677,13 @@
$this->so->write($deleted);
- egw_link::unlink(0,'infolog',$info_id,'','!file','',true); // keep the file attachments, hide the rest
+ Link::unlink(0,'infolog',$info_id,'','!file','',true); // keep the file attachments, hide the rest
}
else
{
$this->so->delete($info_id,false); // we delete the children via bo to get all notifications!
- egw_link::unlink(0,'infolog',$info_id);
+ Link::unlink(0,'infolog',$info_id);
}
if ($info['info_status'] != 'deleted') // dont notify of final purge of already deleted items
{
@@ -717,8 +720,8 @@
{
$values = $values_in;
//echo "boinfolog::write()values="; _debug_array($values);
- if (!$values['info_id'] && !$this->check_access(0,EGW_ACL_EDIT,$values['info_owner']) &&
- !$this->check_access(0,EGW_ACL_ADD,$values['info_owner']))
+ if (!$values['info_id'] && !$this->check_access(0,Acl::EDIT,$values['info_owner']) &&
+ !$this->check_access(0,Acl::ADD,$values['info_owner']))
{
return false;
}
@@ -728,7 +731,7 @@
$old = $this->read($values['info_id'], false, 'server');
}
- if (($status_only = $values['info_id'] && !$this->check_access($values,EGW_ACL_EDIT)))
+ if (($status_only = $values['info_id'] && !$this->check_access($values,Acl::EDIT)))
{
if (!isset($values['info_responsible']))
{
@@ -744,11 +747,11 @@
}
if (!$status_only && $values['info_status'] != 'deleted')
{
- $status_only = $undelete = $this->check_access($values['info_id'],EGW_ACL_UNDELETE);
- }
- }
- 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))
+ $status_only = $undelete = $this->check_access($values['info_id'],self::ACL_UNDELETE);
+ }
+ }
+ if ($values['info_id'] && !$this->check_access($values['info_id'],Acl::EDIT) && !$status_only ||
+ !$values['info_id'] && $values['info_id_parent'] && !$this->check_access($values['info_id_parent'],Acl::ADD))
{
return false;
}
@@ -851,7 +854,7 @@
// Check required custom fields
if($throw_exception)
{
- $custom = egw_customfields::get('infolog');
+ $custom = Api\Storage\Customfields::get('infolog');
foreach($custom as $c_name => $c_field)
{
if($c_field['type2']) $type2 = is_array($c_field['type2']) ? $c_field['type2'] : explode(',',$c_field['type2']);
@@ -860,7 +863,7 @@
// Required custom field
if(!$values['#'.$c_name])
{
- throw new egw_exception_wrong_userinput(lang('For infolog type %1, %2 is required',lang($values['info_type']),$c_field['label']));
+ throw new Api\Exception\WrongUserinput(lang('For infolog type %1, %2 is required',lang($values['info_type']),$c_field['label']));
}
}
}
@@ -869,10 +872,10 @@
if (isset($this->group_owners[$values['info_type']]))
{
$values['info_owner'] = $this->group_owners[$values['info_type']];
- if (!($this->grants[$this->group_owners[$values['info_type']]] & EGW_ACL_EDIT))
- {
- if (!$this->check_access($values['info_id'],EGW_ACL_EDIT) ||
- !$values['info_id'] && !$this->check_access($values,EGW_ACL_ADD)
+ if (!($this->grants[$this->group_owners[$values['info_type']]] & Acl::EDIT))
+ {
+ if (!$this->check_access($values['info_id'],Acl::EDIT) ||
+ !$values['info_id'] && !$this->check_access($values,Acl::ADD)
)
{
return false; // no edit rights from the group-owner and no implicit rights (delegated and sufficient rights)
@@ -950,11 +953,11 @@
// Check for restore of deleted entry, restore held links
if($old['info_status'] == 'deleted' && $values['info_status'] != 'deleted')
{
- egw_link::restore('infolog', $info_id);
+ Link::restore('infolog', $info_id);
}
// notify the link-class about the update, as other apps may be subscribt to it
- egw_link::notify_update('infolog',$info_id,$values);
+ Link::notify_update('infolog',$info_id,$values);
// pre-cache the new values
self::set_link_cache($values);
@@ -1056,7 +1059,7 @@
{
if (!empty($query['col_filter'][$key]))
{
- $query['col_filter'][$key] = egw_time::user2server($query['col_filter'][$key],'ts');
+ $query['col_filter'][$key] = Api\DateTime::user2server($query['col_filter'][$key],'ts');
}
}
}
@@ -1069,7 +1072,7 @@
{
foreach ($ret as $id => &$data)
{
- if (!$this->check_access($data,EGW_ACL_READ))
+ if (!$this->check_access($data,Acl::READ))
{
unset($ret[$id]);
continue;
@@ -1079,21 +1082,21 @@
{
if ($data[$key])
{
- $time = new egw_time($data[$key], egw_time::$server_timezone);
+ $time = new Api\DateTime($data[$key], Api\DateTime::$server_timezone);
if (!isset($query['date_format']) || $query['date_format'] != 'server')
{
if ($time->format('Hi') == '0000')
{
// we keep dates the same in user-time
- $arr = egw_time::to($time,'array');
- $time = new egw_time($arr, egw_time::$user_timezone);
+ $arr = Api\DateTime::to($time,'array');
+ $time = new Api\DateTime($arr, Api\DateTime::$user_timezone);
}
else
{
- $time->setTimezone(egw_time::$user_timezone);
+ $time->setTimezone(Api\DateTime::$user_timezone);
}
}
- $data[$key] = egw_time::to($time,'ts');
+ $data[$key] = Api\DateTime::to($time,'ts');
}
}
// pre-cache title and file access
@@ -1161,7 +1164,7 @@
'info_addr' => implode(', ',$emails),
'info_subject' => $_subject,
'info_des' => $_message,
- 'info_startdate' => egw_time::server2user($_date),
+ 'info_startdate' => Api\DateTime::server2user($_date),
'info_status' => $status,
'info_priority' => 1,
'info_percent' => $status == 'done' ? 100 : 0,
@@ -1173,7 +1176,7 @@
);
if ($GLOBALS['egw_info']['user']['preferences']['infolog']['cat_add_default']) $info['info_cat'] = $GLOBALS['egw_info']['user']['preferences']['infolog']['cat_add_default'];
// find the addressbookentry to link with
- $addressbook = new addressbook_bo();
+ $addressbook = new Api\Contacts();
$contacts = array();
foreach ($emails as $mailadr)
{
@@ -1196,7 +1199,7 @@
// create the rest a "ordinary" links
foreach ($contacts as $contact)
{
- egw_link::link('infolog',$info['link_to']['to_id'],'addressbook',$contact['id']);
+ Link::link('infolog',$info['link_to']['to_id'],'addressbook',$contact['id']);
}
}
if (is_array($_attachments))
@@ -1205,12 +1208,12 @@
{
if($attachment['egw_data'])
{
- egw_link::link('infolog',$info['link_to']['to_id'],egw_link::DATA_APPNAME, $attachment);
+ Link::link('infolog',$info['link_to']['to_id'],Link::DATA_APPNAME, $attachment);
}
else if(is_readable($attachment['tmp_name']) ||
- (egw_vfs::is_readable($attachment['tmp_name']) && parse_url($attachment['tmp_name'], PHP_URL_SCHEME) === 'vfs'))
- {
- egw_link::link('infolog',$info['link_to']['to_id'],'file', $attachment);
+ (Vfs::is_readable($attachment['tmp_name']) && parse_url($attachment['tmp_name'], PHP_URL_SCHEME) === 'vfs'))
+ {
+ Link::link('infolog',$info['link_to']['to_id'],'file', $attachment);
}
}
}
@@ -1294,7 +1297,7 @@
* Check access to the file store
*
* @param int|array $id id of entry or entry array
- * @param int $check EGW_ACL_READ for read and EGW_ACL_EDIT for write or delete access
+ * @param int $check Acl::READ for read and Acl::EDIT for write or delete access
* @param string $rel_path = null currently not used in InfoLog
* @param int $user = null for which user to check, default current user
* @return boolean true if access is granted or false otherwise
@@ -1312,10 +1315,10 @@
*/
function set_link_cache(array $info)
{
- egw_link::set_cache('infolog',$info['info_id'],
+ Link::set_cache('infolog',$info['info_id'],
$this->link_title($info),
- $this->file_access($info,EGW_ACL_EDIT) ? EGW_ACL_READ|EGW_ACL_EDIT :
- ($this->file_access($info,EGW_ACL_READ) ? EGW_ACL_READ : 0));
+ $this->file_access($info,Acl::EDIT) ? EGW_ACL_READ|EGW_ACL_EDIT :
+ ($this->file_access($info,Acl::READ) ? Acl::READ : 0));
}
/**
@@ -1334,7 +1337,7 @@
{
return False;
}
- $GLOBALS['egw']->translation->add_app('infolog');
+ Api\Translation::add_app('infolog');
$do_events = $args['location'] == 'calendar_include_events';
$to_include = array();
@@ -1357,12 +1360,12 @@
{
foreach ($infos as $info)
{
- $start = new egw_time($info['info_startdate'],egw_time::$user_timezone);
+ $start = new Api\DateTime($info['info_startdate'],Api\DateTime::$user_timezone);
$title = ($do_events?common::formattime($start->format('H'),$start->format('i')).' ':'').
$info['info_subject'];
- $view = egw_link::view('infolog',$info['info_id']);
+ $view = Link::view('infolog',$info['info_id']);
$size = null;
- $edit = egw_link::edit('infolog',$info['info_id'], $size);
+ $edit = Link::edit('infolog',$info['info_id'], $size);
$edit['size'] = $size;
$content=array();
$status = $this->status[$info['info_type']][$info['info_status']];
@@ -1372,10 +1375,10 @@
$status => 'status'
) as $icon => $default)
{
- $icons[common::image('infolog',$icon) ? $icon : $default] = $icon;
- }
- $content[] = html::a_href($title,$view);
- $html = html::table(array(1 => $content));
+ $icons[Api\Image::find('infolog',$icon) ? $icon : $default] = $icon;
+ }
+ $content[] = Api\Html::a_href($title,$view);
+ $html = Api\Html::table(array(1 => $content));
$to_include[] = array(
'starttime' => $info['info_startdate'],
@@ -1421,8 +1424,8 @@
'ongoing' : 'infolog/'.$row['info_status'],
'class' => $row['info_id_parent'] ? 'infolog_rowHasParent' : null,
);
- if (common::image('infolog', $icon=$row['info_type'].'_element') ||
- common::image('infolog', $icon=$row['info_type']))
+ if (Api\Image::find('infolog', $icon=$row['info_type'].'_element') ||
+ Api\Image::find('infolog', $icon=$row['info_type']))
{
$infos[$row['info_id']]['icon'] = 'infolog/'.$icon;
}
@@ -1450,19 +1453,19 @@
{
if (!is_object($this->categories))
{
- $this->categories = new categories($this->user,'infolog');
+ $this->categories = new Api\Categories($this->user,'infolog');
}
$old_cats_preserve = array();
if ($info_id && $info_id > 0)
{
- // preserve categories without users read access
+ // preserve Api\Categories without users read access
$old_infolog = $this->read($info_id);
$old_categories = explode(',',$old_infolog['info_cat']);
if (is_array($old_categories) && count($old_categories) > 0)
{
foreach ($old_categories as $cat_id)
{
- if ($cat_id && !$this->categories->check_perms(EGW_ACL_READ, $cat_id))
+ if ($cat_id && !$this->categories->check_perms(Acl::READ, $cat_id))
{
$old_cats_preserve[] = $cat_id;
}
@@ -1518,7 +1521,7 @@
{
if (!is_object($this->categories))
{
- $this->categories = new categories($this->user,'infolog');
+ $this->categories = new Api\Categories($this->user,'infolog');
}
if (!is_array($cat_id_list))
@@ -1528,7 +1531,7 @@
$cat_list = array();
foreach($cat_id_list as $cat_id)
{
- if ($cat_id && $this->categories->check_perms(EGW_ACL_READ, $cat_id) &&
+ if ($cat_id && $this->categories->check_perms(Acl::READ, $cat_id) &&
($cat_name = $this->categories->id2name($cat_id)) && $cat_name != '--')
{
$cat_list[] = $cat_name;
@@ -1671,13 +1674,13 @@
* X-INFOLOG-STATUS is only used, if translated to the vtodo-status gives the identical vtodo status
* --> the user did not changed it
*
- * @param string $vtodo_status {CANCELLED|NEEDS-ACTION|COMPLETED|IN-PROCESS}
+ * @param string $_vtodo_status {CANCELLED|NEEDS-ACTION|COMPLETED|IN-PROCESS}
* @param string $x_infolog_status preserved original infolog status
* @return string
*/
- function vtodo2status($vtodo_status,$x_infolog_status=null)
- {
- $vtodo_status = strtoupper($vtodo_status);
+ function vtodo2status($_vtodo_status,$x_infolog_status=null)
+ {
+ $vtodo_status = strtoupper($_vtodo_status);
if ($x_infolog_status && $this->status2vtodo($x_infolog_status) == $vtodo_status)
{
@@ -1800,7 +1803,7 @@
$filter = array('col_filter' => array('info_uid' => $infoData['info_uid']));
foreach($this->so->search($filter) as $egwData)
{
- if (!$this->check_access($egwData,EGW_ACL_READ)) continue;
+ if (!$this->check_access($egwData,Acl::READ)) continue;
$foundInfoLogs[$egwData['info_id']] = $egwData['info_id'];
}
return $foundInfoLogs;
@@ -1852,7 +1855,7 @@
foreach ($this->so->search($filter) as $itemID => $egwData)
{
- if (!$this->check_access($egwData,EGW_ACL_READ)) continue;
+ if (!$this->check_access($egwData,Acl::READ)) continue;
switch ($infoData['info_type'])
{
@@ -1925,7 +1928,7 @@
// __FILE__, __LINE__, PEAR_LOG_DEBUG);
foreach ($this->so->search($filter) as $itemID => $egwData)
{
- if (!$this->check_access($egwData,EGW_ACL_READ)) continue;
+ if (!$this->check_access($egwData,Acl::READ)) continue;
// Horde::logMessage("findVTODO Trying\n"
// . print_r($egwData, true),
// __FILE__, __LINE__, PEAR_LOG_DEBUG);
@@ -1947,8 +1950,8 @@
if (isset($egwData['info_startdate']) && $egwData['info_startdate'])
{
// We compare the date only
- $taskTime = new egw_time($infoData['info_startdate'],egw_time::$server_timezone);
- $egwTime = new egw_time($egwData['info_startdate'],egw_time::$server_timezone);
+ $taskTime = new Api\DateTime($infoData['info_startdate'],Api\DateTime::$server_timezone);
+ $egwTime = new Api\DateTime($egwData['info_startdate'],Api\DateTime::$server_timezone);
if ($taskTime->format('Ymd') != $egwTime->format('Ymd'))
{
if ($this->log)
@@ -1992,8 +1995,8 @@
if (isset($egwData['info_enddate']) && $egwData['info_enddate'])
{
// We compare the date only
- $taskTime = new egw_time($infoData['info_enddate'],egw_time::$server_timezone);
- $egwTime = new egw_time($egwData['info_enddate'],egw_time::$server_timezone);
+ $taskTime = new Api\DateTime($infoData['info_enddate'],Api\DateTime::$server_timezone);
+ $egwTime = new Api\DateTime($egwData['info_enddate'],Api\DateTime::$server_timezone);
if ($taskTime->format('Ymd') != $egwTime->format('Ymd'))
{
if ($this->log)
@@ -2021,8 +2024,8 @@
if (isset($egwData['info_datecompleted']) && $egwData['info_datecompleted'])
{
// We compare the date only
- $taskTime = new egw_time($infoData['info_datecompleted'],egw_time::$server_timezone);
- $egwTime = new egw_time($egwData['info_datecompleted'],egw_time::$server_timezone);
+ $taskTime = new Api\DateTime($infoData['info_datecompleted'],Api\DateTime::$server_timezone);
+ $egwTime = new Api\DateTime($egwData['info_datecompleted'],Api\DateTime::$server_timezone);
if ($taskTime->format('Ymd') != $egwTime->format('Ymd'))
{
if ($this->log)
Modified: trunk/infolog/inc/class.infolog_customfields.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_customfields.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_customfields.inc.php (original)
+++ trunk/infolog/inc/class.infolog_customfields.inc.php Sat Apr 30 19:05:23 2016
@@ -5,10 +5,13 @@
* @link http://www.egroupware.org
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
- * @copyright (c) 2003-14 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2003-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+
+use EGroupware\Api;
+use EGroupware\Api\Etemplate;
require_once(EGW_INCLUDE_ROOT . '/admin/inc/class.customfields.inc.php');
/**
@@ -26,7 +29,7 @@
/**
* instance of the config class for infolog
*
- * @var config
+ * @var Api\Config
*/
var $config_data;
/**
@@ -39,12 +42,12 @@
function __construct( )
{
parent::__construct('infolog');
-
+
$this->bo = new infolog_bo();
- $this->tmpl = new etemplate_new();
+ $this->tmpl = new Etemplate();
$this->content_types = &$this->bo->enums['type'];
$this->status = &$this->bo->status;
- $this->config_data = config::read('infolog');
+ $this->config_data = Api\Config::read('infolog');
$this->fields = &$this->bo->customfields;
$this->group_owners =& $this->bo->group_owners;
}
@@ -55,6 +58,8 @@
*/
protected function app_index(&$content, &$sel_options, &$readonlys, &$preserve)
{
+ unset($sel_options); // not used, but required by function signature
+
$n = 0;
foreach($this->status[$this->content_type] as $name => $label)
{
@@ -83,7 +88,6 @@
function update_fields(&$content)
{
- $typ = $content['type2'];
$fields = &$content['fields'];
$create = $fields['create'];
@@ -129,8 +133,8 @@
{
foreach(explode("\n",$field['values']) as $line)
{
- list($var,$value) = explode('=',trim($line),2);
- $var = trim($var);
+ list($var2,$value) = explode('=',trim($line),2);
+ $var = trim($var2);
$values[$var] = empty($value) ? $var : $value;
}
}
@@ -156,7 +160,7 @@
uasort($this->fields,sort_by_order);
$n = 0;
- foreach($this->fields as $name => $data)
+ foreach(array_keys($this->fields) as $name)
{
$this->fields[$name]['order'] = ($n += 10);
}
@@ -265,7 +269,7 @@
}
else
{
- foreach($this->content_types as $letter => $name)
+ foreach($this->content_types as $name)
{
if($name == $new_name)
{
@@ -285,15 +289,15 @@
$this->save_repository();
return $new_name;
}
-
+
function save_repository()
{
// save changes to repository
- config::save_value('types',$this->content_types,'infolog');
+ Api\Config::save_value('types',$this->content_types,'infolog');
//echo '<p>'.__METHOD__.'() \$this->status=<pre style="text-aling: left;">'; print_r($this->status); echo "</pre>\n";
- config::save_value('status',$this->status,'infolog');
+ Api\Config::save_value('status',$this->status,'infolog');
//echo '<p>'.__METHOD__.'() \$this->fields=<pre style="text-aling: left;">'; print_r($this->fields); echo "</pre>\n";
- egw_customfields::save('infolog', $this->fields);
- config::save_value('group_owners',$this->group_owners,'infolog');
+ Api\Storage\Customfields::save('infolog', $this->fields);
+ Api\Config::save_value('group_owners',$this->group_owners,'infolog');
}
}
Modified: trunk/infolog/inc/class.infolog_datasource.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_datasource.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_datasource.inc.php (original)
+++ trunk/infolog/inc/class.infolog_datasource.inc.php Sat Apr 30 19:05:23 2016
@@ -6,10 +6,13 @@
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
* @subpackage projectmanager
- * @copyright (c) 2005-8 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2005-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+
+use EGroupware\Api\Link;
+use EGroupware\Api\Acl;
include_once(EGW_INCLUDE_ROOT.'/projectmanager/inc/class.datasource.inc.php');
@@ -93,11 +96,13 @@
*
* @param array $element source project element representing an InfoLog entry, $element['pe_app_id'] = info_id
* @param int $target target project id
- * @param array $target_data=null data of target-project, atm not used by the infolog datasource
+ * @param array $extra =null data of target-project, atm not used by the infolog datasource
* @return array/boolean array(info_id,link_id) on success, false otherwise
*/
function copy($element,$target,$extra=null)
{
+ unset($extra); // not used, but required by function signature
+
$info =& $this->infolog_bo->read((int) $element['pe_app_id']);
if (!is_array($info)) return false;
@@ -116,11 +121,11 @@
if(!($info['info_id'] = $this->infolog_bo->write($info))) return false;
// link the new infolog against the project and setting info_link_id and evtl. info_from
- $old_link = $info['info_link_id'] ? egw_link::get_link($info['info_link']) : $info['info_link'];
- $info['info_link_id'] = egw_link::link('projectmanager',$target,'infolog',$info['info_id'],$element['pe_remark'],0,0,1);
+ $old_link = $info['info_link_id'] ? Link::get_link($info['info_link']) : $info['info_link'];
+ $info['info_link_id'] = Link::link('projectmanager',$target,'infolog',$info['info_id'],$element['pe_remark'],0,0,1);
if (!$info['info_from'] || $old_link && $info['info_from'] == $old_link['title'])
{
- $info['info_from'] = egw_link::title('projectmanager',$target);
+ $info['info_from'] = Link::title('projectmanager',$target);
}
if ($info['info_status'] == 'template')
{
@@ -129,14 +134,14 @@
$this->infolog_bo->write($info);
// creating again all links, beside the one to the source-project
- foreach(egw_link::get_links('infolog',$element['pe_app_id']) as $link)
+ foreach(Link::get_links('infolog',$element['pe_app_id']) as $link)
{
if ($link['app'] == 'projectmanager' && $link['id'] == $element['pm_id'] || // ignoring the source project
- $link['app'] == egw_link::VFS_APPNAME) // ignoring files attachments for now
+ $link['app'] == Link::VFS_APPNAME) // ignoring files attachments for now
{
continue;
}
- egw_link::link('infolog',$info['info_id'],$link['app'],$link['id'],$link['remark']);
+ Link::link('infolog',$info['info_id'],$link['app'],$link['id'],$link['remark']);
}
$ret = array($info['info_id'],$info['info_link_id']);
@@ -181,7 +186,7 @@
$GLOBALS['infolog_bo'] = new infolog_bo();
}
// dont delete infolog, which are linked to other elements, but their project
- if (count(egw_link::get_links('infolog',$id)) > 1)
+ if (count(Link::get_links('infolog',$id)) > 1)
{
return false;
}
@@ -198,7 +203,7 @@
function change_status($id,$status)
{
//error_log("datasource_infolog::change_status($id,$status)");
- if (($info = $this->infolog_bo->read($id)) && $this->infolog_bo->check_access($info,EGW_ACL_EDIT))
+ if (($info = $this->infolog_bo->read($id)) && $this->infolog_bo->check_access($info,Acl::EDIT))
{
if ($status == 'active' && in_array($info['info_status'],array('template','nonactive','archive')))
{
Modified: trunk/infolog/inc/class.infolog_export_csv.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_export_csv.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_export_csv.inc.php (original)
+++ trunk/infolog/inc/class.infolog_export_csv.inc.php Sat Apr 30 19:05:23 2016
@@ -1,6 +1,6 @@
<?php
/**
- * eGroupWare
+ * EGroupware Infolog - export plugin
*
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @package infolog
@@ -11,6 +11,9 @@
* @version $Id$
*/
+use EGroupware\Api;
+use EGroupware\Api\Link;
+
/**
* export plugin of infolog
*/
@@ -18,7 +21,7 @@
public function __construct() {
- translation::add_app('infolog');
+ Api\Translation::add_app('infolog');
$this->bo = new infolog_bo();
$this->get_selects();
}
@@ -42,7 +45,7 @@
switch($options['selection'])
{
case 'search':
- $query = array_merge((array)$GLOBALS['egw']->session->appsession('session_data','infolog'), $query);
+ $query = array_merge((array)Api\Cache::getSession('infolog', 'session_data'), $query);
// Fall through
case 'filter':
case 'all':
@@ -94,7 +97,7 @@
if($row[$field]) $cf_preload[$app][] = $row[$field];
}
if($cf_preload[$app]){
- $selects[$field] = egw_link::titles($app, $cf_preload[$app]);
+ $selects[$field] = Link::titles($app, $cf_preload[$app]);
//error_log('Preload ' . $field . '['.$app . ']: ' . implode(',',$cf_preload[$app]));
}
}
@@ -104,7 +107,7 @@
} while($query['start'] < $query['total']);
return $this->export_object;
- break;
+
default:
$ids = $selection = explode(',',$options['selection']);
$this->export_records($this->export_object, $options, $selection, $ids);
@@ -118,22 +121,22 @@
// Pre-load links all at once
if($ids && $options['mapping']['info_link_id'])
{
- $links = egw_link::get_links_multiple('infolog', $ids, true, '!'.egw_link::VFS_APPNAME);
+ $links = Link::get_links_multiple('infolog', $ids, true, '!'.Link::VFS_APPNAME);
foreach($links as $id => $link) {
if(!is_array($selection[$id])) break;
$selection[$id]['info_link_id'] = $link;
- if($options['convert']) $selection[$id]['info_link_id'] = egw_link::title($link['app'], $link['id']);
+ if($options['convert']) $selection[$id]['info_link_id'] = Link::title($link['app'], $link['id']);
}
}
// If exporting PM fields, pre-load them all at once
if($ids && ($options['mapping']['pm_id'] || $options['mapping']['project']))
{
- $projects = egw_link::get_links_multiple('infolog', $ids, true, 'projectmanager');
+ $projects = Link::get_links_multiple('infolog', $ids, true, 'projectmanager');
foreach($projects as $id => $links)
{
if(!is_array($selection[$id])) break;
$selection[$id]['pm_id'] = current($links);
- $selection[$id]['project'] = egw_link::title('projectmanager', $selection[$id]['pm_id']);
+ $selection[$id]['project'] = Link::title('projectmanager', $selection[$id]['pm_id']);
$this->selects['pl_id'] = ExecMethod('projectmanager.projectmanager_pricelist_bo.pricelist',$selection[$id]['pm_id']);
}
}
@@ -141,11 +144,11 @@
foreach ($selection as $_identifier) {
if(!is_array($_identifier)) {
$record = new infolog_egw_record($_identifier);
- if($link = $links[$record->info_id]) $record->info_link_id = $options['convert'] ? egw_link::title($link['app'], $link['id']) : $link;
- if($project = $projects[$record->info_id])
+ if(($link = $links[$record->info_id])) $record->info_link_id = $options['convert'] ? Link::title($link['app'], $link['id']) : $link;
+ if(($project = $projects[$record->info_id]))
{
$record->pm_id = current($project);
- $record->project = egw_link::title('projectmanager', $record->pm_id);
+ $record->project = Link::title('projectmanager', $record->pm_id);
}
} else {
$record = new infolog_egw_record();
@@ -249,7 +252,7 @@
foreach($filters as $field_name => &$settings)
{
if($this->selects[$field_name]) $settings['values'] = $this->selects[$field_name];
-
+
// Infolog can't handle ranges in custom fields due to the way searching is done.
if(strpos($field_name, '#') === 0 && strpos($settings['type'],'date') === 0) unset($filters[$field_name]);
}
Modified: trunk/infolog/inc/class.infolog_export_ical.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_export_ical.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_export_ical.inc.php (original)
+++ trunk/infolog/inc/class.infolog_export_ical.inc.php Sat Apr 30 19:05:23 2016
@@ -10,6 +10,8 @@
* @copyright Nathan Gray
* @version $Id$
*/
+
+use EGroupware\Api;
/**
* export iCal plugin of infolog
@@ -25,15 +27,15 @@
$options = $_definition->plugin_options;
$this->bo = new infolog_bo();
- $limit_exception = bo_merge::is_export_limit_excepted();
- if (!$limit_exception) $export_limit = bo_merge::getExportLimit('infolog');
+ $limit_exception = Api\Storage\Merge::is_export_limit_excepted();
+ if (!$limit_exception) $export_limit = Api\Storage\Merge::getExportLimit('infolog');
$ids = array();
$query = array();
switch($options['selection'])
{
case 'search':
- $query = array_merge($GLOBALS['egw']->session->appsession('session_data','infolog'), $query);
+ $query = array_merge(Api\Cache::getSession('infolog', 'session_data'), $query);
// Fall through
case 'all':
$query['num_rows'] = $export_limit ? $export_limit : -1;
Modified: trunk/infolog/inc/class.infolog_groupdav.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_groupdav.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_groupdav.inc.php (original)
+++ trunk/infolog/inc/class.infolog_groupdav.inc.php Sat Apr 30 19:05:23 2016
@@ -5,16 +5,17 @@
* @link http://www.egroupware.org
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @package infolog
- * @subpackage groupdav
+ * @subpackage caldav
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @copyright (c) 2007-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @version $Id$
*/
use EGroupware\Api;
+use EGroupware\Api\Acl;
/**
- * EGroupware: GroupDAV access: infolog handler
+ * EGroupware: CalDAV access: infolog handler
*
* Permanent error_log() calls should use $this->caldav->log($str) instead, to be send to PHP error_log()
* and our request-log (prefixed with "### " after request and response, like exceptions).
@@ -623,7 +624,7 @@
$action = $GLOBALS['egw_info']['user']['preferences']['groupdav']['infolog-cat-action'];
//error_log(__METHOD__.'('.array2string($task).', '.array2string($oldTask).") action=$action");
- if ($task['info_cat'] && ($new_cat = categories::id2name($task['info_cat'])) &&
+ if ($task['info_cat'] && ($new_cat = Api\Categories::id2name($task['info_cat'])) &&
strpos($new_cat, '@') !== false)
{
$new_user = $GLOBALS['egw']->accounts->name2id($new_cat, 'account_email');
@@ -633,17 +634,17 @@
if ($new_user)
{
// make sure category is global, as otherwise it will not be transmitted to other users
- if (!categories::is_global($task['info_cat']))
- {
- $cat_obj = new categories(categories::GLOBAL_ACCOUNT, 'infolog');
- $cat = categories::read($task['info_cat']);
- $cat['owner'] = categories::GLOBAL_ACCOUNT;
+ if (!Api\Categories::is_global($task['info_cat']))
+ {
+ $cat_obj = new Api\Categories(categories::GLOBAL_ACCOUNT, 'infolog');
+ $cat = Api\Categories::read($task['info_cat']);
+ $cat['owner'] = Api\Categories::GLOBAL_ACCOUNT;
$cat['access'] = 'public';
$cat_obj->edit($cat);
}
// if replace, remove user of old category from responsible
if ($action == 'replace' && $oldTask && $oldTask['info_cat'] &&
- ($old_cat = categories::id2name($oldTask['info_cat'])) && strpos($old_cat, '@') !== false &&
+ ($old_cat = Api\Categories::id2name($oldTask['info_cat'])) && strpos($old_cat, '@') !== false &&
($old_user = $GLOBALS['egw']->accounts->name2id($old_cat, 'account_email')) &&
($key = array_search($old_user, (array)$task['info_responsible'])) !== false)
{
@@ -722,7 +723,7 @@
/**
* Check if user has the neccessary rights on a task / infolog entry
*
- * @param int $acl EGW_ACL_READ, EGW_ACL_EDIT or EGW_ACL_DELETE
+ * @param int $acl Acl::READ, Acl::EDIT or Acl::DELETE
* @param array|int $task task-array or id
* @return boolean null if entry does not exist, false if no access, true if access permitted
*/
@@ -732,7 +733,7 @@
$access = $this->bo->check_access($task,$acl);
- if (!$access && $acl == EGW_ACL_EDIT && $this->bo->is_responsible($task))
+ if (!$access && $acl == Acl::EDIT && $this->bo->is_responsible($task))
{
$access = true; // access limited to $this->bo->responsible_edit fields (handled in infolog_bo::write())
}
@@ -774,7 +775,7 @@
/**
* Add extra properties for calendar collections
*
- * @param array $props =array() regular props by the groupdav handler
+ * @param array $props =array() regular props by the Api\CalDAV handler
* @param string $displayname
* @param string $base_uri =null base url of handler
* @param int $user =null account_id of owner of collection
@@ -785,7 +786,7 @@
unset($base_uri); // not used, but required by function signature
// calendar description
- $displayname = translation::convert(lang('Tasks of'),translation::charset(),'utf-8').' '.$displayname;
+ $displayname = Api\Translation::convert(lang('Tasks of'),Api\Translation::charset(),'utf-8').' '.$displayname;
$props['calendar-description'] = Api\CalDAV::mkprop(Api\CalDAV::CALDAV,'calendar-description',$displayname);
// supported components, currently only VEVENT
$props['supported-calendar-component-set'] = Api\CalDAV::mkprop(Api\CalDAV::CALDAV,'supported-calendar-component-set',array(
@@ -802,7 +803,7 @@
Api\CalDAV::mkprop(Api\CalDAV::CALDAV,'calendar-multiget',''))))),
);
// only advertice rfc 6578 sync-collection report, if "delete-prevention" is switched on (deleted entries get marked deleted but not actualy deleted
- $config = config::read('infolog');
+ $config = Api\Config::read('infolog');
if ($config['history'])
{
$props['supported-report-set']['sync-collection'] = Api\CalDAV::mkprop('supported-report',array(
@@ -842,7 +843,7 @@
{
if (!isset($hook_data['setup']))
{
- translation::add_app('infolog');
+ Api\Translation::add_app('infolog');
$infolog = new infolog_bo();
$types = $infolog->enums['type'];
}
Modified: trunk/infolog/inc/class.infolog_hooks.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_hooks.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_hooks.inc.php (original)
+++ trunk/infolog/inc/class.infolog_hooks.inc.php Sat Apr 30 19:05:23 2016
@@ -1,14 +1,20 @@
<?php
/**
- * InfoLog - Admin-, Preferences- and SideboxMenu-Hooks
+ * EGroupware InfoLog - Admin-, Preferences- and SideboxMenu-Hooks
*
* @link http://www.egroupware.org
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
- * @copyright (c) 2003-13 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2003-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+
+use EGroupware\Api;
+use EGroupware\Api\Link;
+use EGroupware\Api\Framework;
+use EGroupware\Api\Egw;
+use EGroupware\Api\Acl;
/**
* Class containing admin, preferences and sidebox-menus (used as hooks)
@@ -24,7 +30,7 @@
static function not_enum_group_acls($location)
{
unset($location); // not used, but part of hook signature
- $config = config::read('infolog');
+ $config = Api\Config::read('infolog');
return $config['group_owners'];
}
@@ -38,15 +44,6 @@
static function search_link($location)
{
unset($location); // not used, but part of hook signature
- // register our not_enum_group_acls hook, if not already registered
- // can be removed after next infolog version update after 1.6
- if ($GLOBALS['egw']->hooks->single('not_enum_group_acls', 'infolog') === false)
- {
- $setup_info = array();
- include(EGW_INCLUDE_ROOT.'/infolog/setup/setup.inc.php');
- $GLOBALS['egw']->hooks->register_hooks('infolog',$setup_info['infolog']['hooks']);
- unset($setup_info);
- }
return array(
'query' => 'infolog.infolog_bo.link_query',
@@ -93,32 +90,32 @@
if ($location == 'sidebox_menu')
{
// Magic etemplate2 favorites menu (from nextmatch widget)
- display_sidebox($appname, lang('Favorites'), egw_framework::favorite_list($appname));
+ display_sidebox($appname, lang('Favorites'), Framework\Favorites::list_favorites($appname));
$file = array(
- 'infolog list' => egw::link('/index.php',array(
+ 'infolog list' => Egw::link('/index.php',array(
'menuaction' => 'infolog.infolog_ui.index',
'ajax' => 'true')),
array(
- 'text' => lang('Add %1',lang(egw_link::get_registry($appname, 'entry'))),
+ 'text' => lang('Add %1',lang(Link::get_registry($appname, 'entry'))),
'no_lang' => true,
'link' => "javascript:app.infolog.add_link_sidemenu();"
),
- 'Placeholders' => egw::link('/index.php','menuaction=infolog.infolog_merge.show_replacements')
+ 'Placeholders' => Egw::link('/index.php','menuaction=infolog.infolog_merge.show_replacements')
);
display_sidebox($appname,$GLOBALS['egw_info']['apps']['infolog']['title'].' '.lang('Menu'),$file);
}
- if ($GLOBALS['egw_info']['user']['apps']['admin'] && !html::$ua_mobile)
+ if ($GLOBALS['egw_info']['user']['apps']['admin'] && !Api\Header\UserAgent::mobile())
{
$file = Array(
- 'Site configuration' => egw::link('/index.php',array(
+ 'Site configuration' => Egw::link('/index.php',array(
'menuaction' => 'infolog.infolog_ui.admin' )),
- 'Global Categories' => egw::link('/index.php',array(
+ 'Global Categories' => Egw::link('/index.php',array(
'menuaction' => 'admin.admin_categories.index',
'appname' => $appname,
'global_cats'=> True)),
- 'Custom fields, typ and status' => egw::link('/index.php',array(
+ 'Custom fields, typ and status' => Egw::link('/index.php',array(
'menuaction' => 'infolog.infolog_customfields.index')),
);
if ($location == 'admin')
@@ -133,7 +130,7 @@
}
/**
- * populates $settings for the preferences
+ * populates $settings for the Api\Preferences
*
* @return array
*/
@@ -488,7 +485,7 @@
*/
private static function all_cats()
{
- $categories = new categories('','infolog');
+ $categories = new Api\Categories('','infolog');
$accountId = $GLOBALS['egw_info']['user']['account_id'];
foreach((array)$categories->return_sorted_array(0,False,'','','',true) as $cat)
@@ -524,7 +521,7 @@
if ($data['prefs']['notify_due_delegated'] || $data['prefs']['notify_due_responsible'] ||
$data['prefs']['notify_start_delegated'] || $data['prefs']['notify_start_responsible'])
{
- $async = new asyncservice();
+ $async = new Api\AsyncService();
if (!$async->read('infolog-async-notification'))
{
@@ -537,17 +534,17 @@
* ACL rights and labels used
*
* @param string|array string with location or array with parameters incl. "location", specially "owner" for selected acl owner
- * @return array acl::(READ|ADD|EDIT|DELETE|PRIVAT|CUSTOM(1|2|3)) => $label pairs
+ * @return array Acl::(READ|ADD|EDIT|DELETE|PRIVAT|CUSTOM(1|2|3)) => $label pairs
*/
public static function acl_rights($params)
{
unset($params); // not used, but default function signature for hooks
return array(
- acl::READ => 'read',
- acl::ADD => 'add',
- acl::EDIT => 'edit',
- acl::DELETE => 'delete',
- acl::PRIVAT => 'private',
+ Acl::READ => 'read',
+ Acl::ADD => 'add',
+ Acl::EDIT => 'edit',
+ Acl::DELETE => 'delete',
+ Acl::PRIVAT => 'private',
);
}
@@ -562,7 +559,7 @@
unset($location); // not used, but part of hook signature
return true;
}
-
+
/**
* Mail integration hook to import mail message contents into an infolog entry
*
@@ -570,9 +567,11 @@
*/
public static function mail_import($args)
{
+ unset($args); // not used, but required by function signature
+
return array (
'menuaction' => 'infolog.infolog_ui.mail_import',
- 'popup' => egw_link::get_registry('infolog', 'edit_popup')
+ 'popup' => Link::get_registry('infolog', 'edit_popup')
);
}
}
Modified: trunk/infolog/inc/class.infolog_ical.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_ical.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_ical.inc.php (original)
+++ trunk/infolog/inc/class.infolog_ical.inc.php Sat Apr 30 19:05:23 2016
@@ -12,6 +12,7 @@
*/
use EGroupware\Api;
+use EGroupware\Api\Acl;
/**
* InfoLog: Create and parse iCal's
@@ -180,8 +181,8 @@
$taskData['info_cat'] = $cats[0];
}
- $taskData = translation::convert($taskData,
- translation::charset(), $charset);
+ $taskData = Api\Translation::convert($taskData,
+ Api\Translation::charset(), $charset);
if ($this->log)
{
@@ -201,8 +202,8 @@
// check if we have vtimezone component data for tzid of event, if not default to user timezone (default to server tz)
if (!calendar_timezones::add_vtimezone($vcal, $tzid))
{
- error_log(__METHOD__."() unknown TZID='$tzid', defaulting to user timezone '".egw_time::$user_timezone->getName()."'!");
- calendar_timezones::add_vtimezone($vcal, egw_time::$user_timezone->getName());
+ error_log(__METHOD__."() unknown TZID='$tzid', defaulting to user timezone '".Api\DateTime::$user_timezone->getName()."'!");
+ calendar_timezones::add_vtimezone($vcal, Api\DateTime::$user_timezone->getName());
$tzid = null;
}
if (!isset(self::$tz_cache[$tzid]))
@@ -457,22 +458,22 @@
}
elseif(is_null($tzid))
{
- $tz = egw_time::$user_timezone;
+ $tz = Api\DateTime::$user_timezone;
}
else
{
- $tz = egw_time::$server_timezone;
+ $tz = Api\DateTime::$server_timezone;
}
if (!is_a($time,'DateTime'))
{
- $time = new egw_time($time,egw_time::$server_timezone);
+ $time = new Api\DateTime($time,Api\DateTime::$server_timezone);
}
$time->setTimezone($tz);
// check for date --> export it as such
if ($time->format('Hi') == '0000')
{
- $arr = egw_time::to($time, 'array');
+ $arr = Api\DateTime::to($time, 'array');
$value = array(
'year' => $arr['year'],
'month' => $arr['month'],
@@ -493,7 +494,7 @@
}
else
{
- $value = egw_time::to($time, 'ts');
+ $value = Api\DateTime::to($time, 'ts');
}
}
//error_log(__METHOD__."(, '$attr', ".array2string($time_in).', '.array2string($tzid).') tz='.$tz->getName().', value='.array2string($value).(is_int($value)?date('Y-m-d H:i:s',$value):''));
@@ -542,7 +543,7 @@
// setting owner or responsible for new tasks based on folder
if (!is_null($user) && $_taskID == -1)
{
- if ($this->check_access($taskData, EGW_ACL_ADD))
+ if ($this->check_access($taskData, Acl::ADD))
{
$taskData['info_owner'] = $user;
}
@@ -632,7 +633,7 @@
*/
protected static function date2ts($date)
{
- return is_scalar($date) ? $date : egw_time::to($date, 'ts');
+ return is_scalar($date) ? $date : Api\DateTime::to($date, 'ts');
}
/**
@@ -922,8 +923,8 @@
{
if(!($note = $this->read($_noteID, true, 'server'))) return false;
- $note = translation::convert($note,
- translation::charset(), $charset);
+ $note = Api\Translation::convert($note,
+ Api\Translation::charset(), $charset);
switch ($_type)
{
@@ -935,8 +936,8 @@
if (!empty($note['info_cat']))
{
$cats = $this->get_categories(array($note['info_cat']));
- $note['info_cat'] = translation::convert($cats[0],
- translation::charset(), $charset);
+ $note['info_cat'] = Api\Translation::convert($cats[0],
+ Api\Translation::charset(), $charset);
}
$vnote = new Horde_Icalendar_Vnote();
$vnote->setAttribute('PRODID','-//EGroupware//NONSGML EGroupware InfoLog '.$GLOBALS['egw_info']['apps']['infolog']['version'].'//'.
@@ -1084,7 +1085,7 @@
case 'text/plain':
$note = array();
$note['info_type'] = 'note';
- $txt = str_replace("\r\n", "\n", translation::convert($_data, $charset));
+ $txt = str_replace("\r\n", "\n", Api\Translation::convert($_data, $charset));
$match = null;
if (preg_match('/([^\n]+)\n\n(.*)/ms', $txt, $match))
@@ -1208,13 +1209,13 @@
error_log(__FILE__.'['.__LINE__.'] '.__METHOD__.
'(' . $this->productManufacturer .
', '. $this->productName .', ' .
- ($this->tzid ? $this->tzid : egw_time::$user_timezone->getName()) .
+ ($this->tzid ? $this->tzid : Api\DateTime::$user_timezone->getName()) .
")\n" , 3, $this->logfile);
}
//Horde::logMessage('setSupportedFields(' . $this->productManufacturer . ', '
// . $this->productName .', ' .
- // ($this->tzid ? $this->tzid : egw_time::$user_timezone->getName()) .')',
+ // ($this->tzid ? $this->tzid : Api\DateTime::$user_timezone->getName()) .')',
// __FILE__, __LINE__, PEAR_LOG_DEBUG);
}
}
Modified: trunk/infolog/inc/class.infolog_import_ical.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_import_ical.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_import_ical.inc.php (original)
+++ trunk/infolog/inc/class.infolog_import_ical.inc.php Sat Apr 30 19:05:23 2016
@@ -1,6 +1,6 @@
<?php
/**
- * eGroupWare
+ * EGroupware - Infolog iCal import
*
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @package calendar
@@ -10,7 +10,6 @@
* @copyright Nathan Gray
* @version $Id$
*/
-
/**
* import ical for infolog
@@ -30,7 +29,6 @@
'action' => insert,
'last' => true,
),*/
-
);
/**
@@ -71,9 +69,9 @@
protected $errors = array();
/**
- * List of actions, and how many times that action was taken
- */
- protected $results = array();
+ * List of actions, and how many times that action was taken
+ */
+ protected $results = array();
/**
* imports entries according to given definition object.
@@ -109,7 +107,7 @@
return $success;
}
-
+
/**
* returns translated name of plugin
*
@@ -163,39 +161,38 @@
}
/**
- * Returns warnings that were encountered during importing
- * Maximum of one warning message per record, but you can append if you need to
- *
- * @return Array (
- * record_# => warning message
- * )
- */
- public function get_warnings() {
+ * Returns warnings that were encountered during importing
+ * Maximum of one warning message per record, but you can append if you need to
+ *
+ * @return Array (
+ * record_# => warning message
+ * )
+ */
+ public function get_warnings() {
return $this->warnings;
}
/**
- * Returns errors that were encountered during importing
- * Maximum of one error message per record, but you can append if you need to
- *
- * @return Array (
- * record_# => error message
- * )
- */
- public function get_errors() {
+ * Returns errors that were encountered during importing
+ * Maximum of one error message per record, but you can append if you need to
+ *
+ * @return Array (
+ * record_# => error message
+ * )
+ */
+ public function get_errors() {
return $this->errors;
}
/**
- * Returns a list of actions taken, and the number of records for that action.
- * Actions are things like 'insert', 'update', 'delete', and may be different for each plugin.
- *
- * @return Array (
- * action => record count
- * )
- */
- public function get_results() {
- return $this->results;
- }
-} // end of iface_export_plugin
-?>
+ * Returns a list of actions taken, and the number of records for that action.
+ * Actions are things like 'insert', 'update', 'delete', and may be different for each plugin.
+ *
+ * @return Array (
+ * action => record count
+ * )
+ */
+ public function get_results() {
+ return $this->results;
+ }
+}
Modified: trunk/infolog/inc/class.infolog_import_infologs_csv.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_import_infologs_csv.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_import_infologs_csv.inc.php (original)
+++ trunk/infolog/inc/class.infolog_import_infologs_csv.inc.php Sat Apr 30 19:05:23 2016
@@ -10,6 +10,8 @@
* @version $Id$
*/
+use EGroupware\Api;
+use EGroupware\Api\Link;
/**
* class import_csv for infolog
@@ -129,7 +131,7 @@
$this->tracking = new infolog_tracking($this->boinfolog);
// Need translations for some human stuff (early type detection)
- translation::add_app('infolog');
+ Api\Translation::add_app('infolog');
// set FieldMapping.
$import_csv->mapping = $_definition->plugin_options['field_mapping'];
@@ -193,7 +195,7 @@
if(!$record['info_type'] || $record['info_type'] && !$this->boinfolog->enums['type'][$record['info_type']])
{
// Check for translated type
- $un_trans = translation::get_message_id($record['info_type'],'infolog');
+ $un_trans = Api\Translation::get_message_id($record['info_type'],'infolog');
if($record['info_type'] && $this->boinfolog->enums['type'][$un_trans])
{
$record['info_type'] = $un_trans;
@@ -339,8 +341,8 @@
// Check for link during dry run
if($_data['link_custom'])
{
- list($app, $app_id) = explode(':', $_data['link_custom'],2);
- $app_id = $this->link_by_cf($record_num, $app, $field, $app_id);
+ list($app, $app_id2) = explode(':', $_data['link_custom'],2);
+ $app_id = $this->link_by_cf($record_num, $app, $field, $app_id2);
}
$this->results[$_action]++;
@@ -371,7 +373,7 @@
break;
}
default:
- throw new egw_exception('Unsupported action');
+ throw new Api\Exception('Unsupported action');
}
// Process some additional fields
@@ -379,7 +381,7 @@
return $result;
}
$info_link_id = $_data['info_link_id'];
- foreach(self::$special_fields as $field => $desc) {
+ foreach(array_keys(self::$special_fields) as $field) {
if(!$_data[$field]) continue;
if(strpos($field, 'link') === 0) {
list($app, $app_id) = explode(':', $_data[$field],2);
@@ -396,7 +398,7 @@
if ($app && $app_id) {
$id = $_data['info_id'] ? $_data['info_id'] : (int)$result;
//echo "<p>linking infolog:$id with $app:$app_id</p>\n";
- $link_id = egw_link::link('infolog',$id,$app,$app_id);
+ $link_id = Link::link('infolog',$id,$app,$app_id);
if ($link_id && !$info_link_id)
{
$to_write = array(
@@ -503,7 +505,7 @@
// Extra conversion functions - must be static
public static function project_id($num_or_title)
{
- static $boprojects;
+ static $boprojects=null;
if (!$num_or_title) return false;
@@ -526,15 +528,15 @@
* This is a copy of what's in importexport_basic_import_csv, and can go
* away if this is changed to extend it
*/
- protected function link_by_cf($record_num, $app, $fieldname, $value)
+ protected function link_by_cf($record_num, $app, $fieldname, $_value)
{
$app_id = false;
- list($custom_field, $value) = explode(':',$value);
+ list($custom_field, $value) = explode(':',$_value);
// Find matching entry
if($app && $custom_field && $value)
{
- $cfs = config::get_customfields($app);
+ $cfs = Api\Storage\Customfields::get($app);
// Error if no custom fields, probably something wrong in definition
if(!$cfs[$custom_field])
{
@@ -558,10 +560,10 @@
if($custom_field[0] != '#') $custom_field = '#' . $custom_field;
// Search
- if(egw_link::get_registry($app, 'query'))
+ if(Link::get_registry($app, 'query'))
{
$options = array('filter' => array("$custom_field = " . $GLOBALS['egw']->db->quote($value)));
- $result = egw_link::query($app, '', $options);
+ $result = Link::query($app, '', $options);
// Only one allowed
if(count($result) != 1)
Modified: trunk/infolog/inc/class.infolog_merge.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_merge.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_merge.inc.php (original)
+++ trunk/infolog/inc/class.infolog_merge.inc.php Sat Apr 30 19:05:23 2016
@@ -6,16 +6,19 @@
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @author Nathan Gray
* @package infolog
- * @copyright (c) 2007-14 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2007-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @copyright 2011 Nathan Gray
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+use EGroupware\Api;
+use EGroupware\Api\Link;
+
/**
* Infolog - document merge object
*/
-class infolog_merge extends bo_merge
+class infolog_merge extends Api\Storage\Merge
{
/**
* Functions that can be called via menuaction
@@ -49,8 +52,8 @@
'info_created',
);
- // switch of handling of html formated content, if html is not used
- $this->parse_html_styles = egw_customfields::use_html('infolog');
+ // switch of handling of Api\Html formated content, if Api\Html is not used
+ $this->parse_html_styles = Api\Storage\Customfields::use_html('infolog');
}
/**
@@ -118,11 +121,11 @@
{
$array['#'.$name] = '';
}
- // Format date cfs per user preferences
+ // Format date cfs per user Api\Preferences
if($field['type'] == 'date' || $field['type'] == 'date-time')
{
$this->date_fields[] = '#'.$name;
- $array['#'.$name] = egw_time::to($array['#'.$name], $field['type'] == 'date' ? true : '');
+ $array['#'.$name] = Api\DateTime::to($array['#'.$name], $field['type'] == 'date' ? true : '');
}
}
@@ -132,17 +135,17 @@
// Timesheet time
if(strpos($content, 'info_sum_timesheets'))
{
- $links = egw_link::get_links('infolog',$id,'timesheet');
+ $links = Link::get_links('infolog',$id,'timesheet');
$sum = ExecMethod('timesheet.timesheet_bo.sum',$links);
$info['$$info_sum_timesheets$$'] = $sum['duration'];
}
// Check for linked project ID
- $links = egw_link::get_links('infolog', $id, 'projectmanager');
+ $links = Link::get_links('infolog', $id, 'projectmanager');
foreach($links as $app_id)
{
$array['pm_id'] = $app_id;
- $array['project'] = egw_link::title('projectmanager', $app_id);
+ $array['project'] = Link::title('projectmanager', $app_id);
break;
}
@@ -162,14 +165,14 @@
}
/**
- * Generate table with replacements for the preferences
+ * Generate table with replacements for the Api\Preferences
*
*/
public function show_replacements()
{
$GLOBALS['egw_info']['flags']['app_header'] = lang('infolog').' - '.lang('Replacements for inserting entries into documents');
$GLOBALS['egw_info']['flags']['nonavbar'] = false;
- common::egw_header();
+ $GLOBALS['egw']->framework->header();
echo "<table width='90%' align='center'>\n";
echo '<tr><td colspan="4"><h3>'.lang('Infolog fields:')."</h3></td></tr>";
@@ -177,7 +180,7 @@
$n = 0;
$tracking = new infolog_tracking($this->bo);
$fields = array('info_id' => lang('Infolog ID'), 'pm_id' => lang('Project ID'), 'project' => lang('Project name')) + $tracking->field2label + array('info_sum_timesheets' => lang('Used time'));
- translation::add_app('projectmanager');
+ Api\Translation::add_app('projectmanager');
foreach($fields as $name => $label)
{
if (in_array($name,array('custom'))) continue; // dont show them
@@ -228,7 +231,7 @@
echo '<tr><td colspan="4"><h3>'.lang('Custom fields').":</h3></td></tr>";
foreach($this->contacts->customfields as $name => $field)
{
- echo '<tr><td>{{info_contact/#'.$name.'}}</td><td colspan="3">'.$field['label']."</td></tr>\n";
+ echo '<tr><td>{{info_contact/#'.$name.'}}</td><td colspan="3">'.$field['label']."</td></tr>\n";
}
echo '<tr><td colspan="4"><h3>'.lang('General fields:')."</h3></td></tr>";
@@ -258,6 +261,6 @@
echo "</table>\n";
- common::egw_footer();
+ $GLOBALS['egw']->framework->footer();
}
}
Modified: trunk/infolog/inc/class.infolog_so.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_so.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_so.inc.php (original)
+++ trunk/infolog/inc/class.infolog_so.inc.php Sat Apr 30 19:05:23 2016
@@ -5,10 +5,14 @@
* @link http://www.egroupware.org
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
- * @copyright (c) 2003-13 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2003-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+
+use EGroupware\Api;
+use EGroupware\Api\Link;
+use EGroupware\Api\Acl;
/**
* storage object / db-layer for InfoLog
@@ -21,7 +25,7 @@
/**
* Instance of the db class
*
- * @var egw_db
+ * @var Api\Db
*/
var $db;
/**
@@ -64,7 +68,7 @@
/**
* Constructor
*
- * @param array $grants=array()
+ * @param array $grants =array()
* @return soinfolog
*/
function __construct( $grants=array() )
@@ -102,9 +106,9 @@
*
* @param array|int $info data or info_id of InfoLog entry
* @param int $required_rights EGW_ACL_xyz anded together
- * @param boolean $implicit_edit=false responsible has only implicit read and add rigths, unless this is set to true
- * @param array $grants=null grants to use, default (null) $this->grants
- * @param int $user=null user to check, default (null) $this->user
+ * @param boolean $implicit_edit =false responsible has only implicit read and add rigths, unless this is set to true
+ * @param array $grants =null grants to use, default (null) $this->grants
+ * @param int $user =null user to check, default (null) $this->user
* @return boolean True if access is granted else False
*/
function check_access( $info,$required_rights,$implicit_edit=false,array $grants=null,$user=null )
@@ -139,8 +143,8 @@
// ACL only on public entrys || $owner granted _PRIVATE
(!!($grants[$owner] & $required_rights) ||
$this->is_responsible($info,$user) && // implicite rights for responsible user(s) and his memberships
- ($required_rights == EGW_ACL_READ || $required_rights == EGW_ACL_ADD || $implicit_edit && $required_rights == EGW_ACL_EDIT)) &&
- ($info['info_access'] == 'public' || !!($this->grants[$user] & EGW_ACL_PRIVATE));
+ ($required_rights == Acl::READ || $required_rights == Acl::ADD || $implicit_edit && $required_rights == Acl::EDIT)) &&
+ ($info['info_access'] == 'public' || !!($this->grants[$user] & Acl::PRIVAT));
// error_log(__METHOD__."($info[info_id],$required_rights,$implicit_edit,".array2string($grants).",$user) returning ".array2string($access_ok));
return $access_ok;
@@ -181,16 +185,16 @@
/**
* generate sql to be AND'ed into a query to ensure ACL is respected (incl. _PRIVATE)
*
- * @param string $filter: ''|all - list all entrys user have rights to see<br>
+ * @param string $_filter ''|all - list all entrys user have rights to see<br>
* private|own - list only his personal entrys (incl. those he is responsible for !!!),
* responsible|my = entries the user is responsible for
* delegated = entries the user delegated to someone else
* @return string the necesary sql
*/
- function aclFilter($filter = False)
+ function aclFilter($_filter = False)
{
$vars = null;
- preg_match('/(my|responsible|delegated|own|privat|private|all|user)([0-9,-]*)/',$filter_was=$filter,$vars);
+ preg_match('/(my|responsible|delegated|own|privat|private|all|user)([0-9,-]*)/',$_filter,$vars);
$filter = $vars[1];
$f_user = $vars[2];
@@ -224,7 +228,7 @@
{
$public_user_list[] = $user;
}
- if ($grant & EGW_ACL_PRIVATE)
+ if ($grant & Acl::PRIVAT)
{
$private_user_list[] = $user;
}
@@ -266,21 +270,21 @@
)," AND info_responsible='0' OR ",$this->responsible_filter($f_user),')');
}
}
- //echo "<p>aclFilter(filter='$filter_was',user='$f_user') = '$filtermethod', privat_user_list=".print_r($privat_user_list,True).", public_user_list=".print_r($public_user_list,True)."</p>\n";
+ //echo "<p>aclFilter(filter='$_filter',user='$f_user') = '$filtermethod', privat_user_list=".print_r($privat_user_list,True).", public_user_list=".print_r($public_user_list,True)."</p>\n";
return $this->acl_filter[$filter.$f_user] = $filtermethod; // cache the filter
}
/**
* generate sql to filter based on the status of the log-entry
*
- * @param string $filter done = done or billed, open = not (done, billed, cancelled or deleted), offer = offer
- * @param boolean $prefix_and=true if true prefix the fileter with ' AND '
+ * @param string $_filter done = done or billed, open = not (done, billed, cancelled or deleted), offer = offer
+ * @param boolean $prefix_and =true if true prefix the fileter with ' AND '
* @return string the necesary sql
*/
- function statusFilter($filter = '',$prefix_and=true)
+ function statusFilter($_filter = '',$prefix_and=true)
{
$vars = null;
- preg_match('/(done|open|offer|deleted|\+deleted)/',$filter,$vars);
+ preg_match('/(done|open|offer|deleted|\+deleted)/',$_filter,$vars);
$filter = $vars[1];
switch ($filter)
@@ -298,7 +302,7 @@
/**
* generate sql to filter based on the start- and enddate of the log-entry
*
- * @param string $filter upcoming = startdate is in the future
+ * @param string $_filter upcoming = startdate is in the future
* today: startdate < tomorrow
* overdue: enddate < tomorrow
* date: today <= startdate && startdate < tomorrow
@@ -306,10 +310,10 @@
* limitYYYY/MM/DD not older or open
* @return string the necesary sql
*/
- function dateFilter($filter = '')
+ function dateFilter($_filter = '')
{
$vars = null;
- preg_match('/(open-upcoming|upcoming|today|overdue|date|enddate)([-\\/.0-9]*)/',$filter,$vars);
+ preg_match('/(open-upcoming|upcoming|today|overdue|date|enddate)([-\\/.0-9]*)/',$_filter,$vars);
$filter = $vars[1];
if (isset($vars[2]) && !empty($vars[2]) && ($date = preg_split('/[-\\/.]/',$vars[2])))
@@ -393,7 +397,7 @@
// entry without uid --> create one based on our info_id and save it
if (!$this->data['info_uid'] || strlen($this->data['info_uid']) < $minimum_uid_length)
{
- $this->data['info_uid'] = common::generate_uid('infolog', $this->data['info_id']);
+ $this->data['info_uid'] = Api\CalDAV::generate_uid('infolog', $this->data['info_id']);
$this->db->update($this->info_table,
array('info_uid' => $this->data['info_uid']),
array('info_id' => $this->data['info_id']), __LINE__,__FILE__);
@@ -428,7 +432,7 @@
}
$this->db->delete($this->info_table,array('info_id'=>$info_id),__LINE__,__FILE__);
$this->db->delete($this->extra_table,array('info_id'=>$info_id),__LINE__,__FILE__);
- egw_link::unlink(0,'infolog',$info_id);
+ Link::unlink(0,'infolog',$info_id);
if ($this->data['info_id'] == $info_id)
{
@@ -499,15 +503,14 @@
'info_responsible' => implode(',',$new_responsible),
),array('info_id' => $row['info_id']),__LINE__,__FILE__,'infolog');
}
-
}
/**
* writes the given $values to InfoLog, a new entry gets created if info_id is not set or 0
*
* @param array $values with the data of the log-entry
- * @param int $check_modified=0 old modification date to check before update (include in WHERE)
- * @param string $purge_cfs=null null=dont, 'ical'=only iCal X-properties (cfs name starting with "#"), 'all'=all cfs
+ * @param int $check_modified =0 old modification date to check before update (include in WHERE)
+ * @param string $purge_cfs =null null=dont, 'ical'=only iCal X-properties (cfs name starting with "#"), 'all'=all cfs
* @return int|boolean info_id, false on error or 0 if the entry has been updated in the meantime
*/
function write($values, $check_modified=0, $purge_cfs=null) // did _not_ ensure ACL
@@ -567,7 +570,7 @@
// entry without (reasonable) uid --> create one based on our info_id and save it
if (!$this->data['info_uid'] || strlen($this->data['info_uid']) < $minimum_uid_length)
{
- $update['info_uid'] = $this->data['info_uid'] = common::generate_uid('infolog', $info_id);
+ $update['info_uid'] = $this->data['info_uid'] = Api\CalDAV::generate_uid('infolog', $info_id);
}
// entry without caldav_name --> generate one based on info_id plus '.ics' extension
if (empty($this->data['caldav_name']))
@@ -685,7 +688,7 @@
$action = isset($action2app[$query['action']]) ? $action2app[$query['action']] : $query['action'];
if ($action)
{
- $links = solink::get_links($action=='sp'?'infolog':$action,
+ $links = Link\Storage::get_links($action=='sp'?'infolog':$action,
is_array($query['action_id']) ? $query['action_id'] : explode(',',$query['action_id']),'infolog','',$query['col_filter']['info_status'] =='deleted');
if (count($links))
@@ -767,14 +770,14 @@
if ($col[0] == '#' && $query['custom_fields'] && $data)
{
$filtermethod .= " AND main.info_id IN (SELECT DISTINCT info_id FROM $this->extra_table WHERE ";
- $custom_fields = config::get_customfields('infolog');
+ $custom_fields = Api\Storage\Customfields::get('infolog');
if($custom_fields[substr($col,1)]['type'] == 'select' && $custom_fields[substr($col,1)]['rows'] > 1)
{
// Multi-select - any entry with the filter value selected matches
$filtermethod .= $this->db->expression($this->extra_table, array(
'info_extra_name' => substr($col,1),
- $this->db->concat("','",'info_extra_value',"','").' '.$this->db->capabilities[egw_db::CAPABILITY_CASE_INSENSITIV_LIKE].' '.$this->db->quote('%,'.$data.',%'),
+ $this->db->concat("','",'info_extra_value',"','").' '.$this->db->capabilities[Api\Db::CAPABILITY_CASE_INSENSITIV_LIKE].' '.$this->db->quote('%,'.$data.',%'),
)).')';
}
else
@@ -792,7 +795,7 @@
if ((int)$query['cat_id'])
{
- $categories = new categories('','infolog');
+ $categories = new Api\Categories('','infolog');
$cats = $categories->return_all_children((int)$query['cat_id']);
$filtermethod .= ' AND info_cat'.(count($cats)>1? ' IN ('.implode(',',$cats).') ' : '='.(int)$query['cat_id']);
}
@@ -805,7 +808,7 @@
if ($this->db->capabilities['like_on_text']) $columns[] = 'info_des';
$wildcard = $op = null;
- $so_sql = new so_sql('infolog', $this->info_table, $this->db);
+ $so_sql = new Api\Storage\Base('infolog', $this->info_table, $this->db);
$search = $so_sql->search2criteria($query['search'], $wildcard, $op, null, $columns);
$sql_query = 'AND ('.(is_numeric($query['search']) ? 'main.info_id='.(int)$query['search'].' OR ' : '').
implode($op, $search) .')';
@@ -841,7 +844,7 @@
if ($sortbycf != '')
{
$sort_col = "(SELECT DISTINCT info_extra_value FROM $this->extra_table sub2 WHERE sub2.info_id=main.info_id AND info_extra_name=".$this->db->quote($sortbycf).")";
- if (!isset($custom_fields)) $custom_fields = config::get_customfields('infolog');
+ if (!isset($custom_fields)) $custom_fields = Api\Storage\Customfields::get('infolog');
switch($custom_fields[$sortbycf]['type'])
{
case 'int':
@@ -863,7 +866,7 @@
$cols = isset($query['cols']) ? $query['cols'] : 'main.*';
if (is_array($cols)) $cols = implode(',',$cols);
$rs = $this->db->query($sql='SELECT '.$mysql_calc_rows.' '.$distinct.' '.$cols.' '.$info_customfield.' '.$sql_query.$query['append'].' '.$ordermethod,__LINE__,__FILE__,
- (int) $query['start'],isset($query['start']) ? (int) $query['num_rows'] : -1,false,egw_db::FETCH_ASSOC);
+ (int) $query['start'],isset($query['start']) ? (int) $query['num_rows'] : -1,false,Api\Db::FETCH_ASSOC);
//echo "<p>db::query('$sql',,,".(int)$query['start'].','.(isset($query['start']) ? (int) $query['num_rows'] : -1).")</p>\n";
if ($mysql_calc_rows)
@@ -887,7 +890,7 @@
static $index_load_cfs = null;
if (is_null($index_load_cfs) && $query['col_filter']['info_type'])
{
- $config_data = config::read('infolog');
+ $config_data = Api\Config::read('infolog');
$index_load_cfs = $config_data['index_load_cfs'];
if (!is_array($index_load_cfs)) $index_load_cfs = explode(',', $index_load_cfs);
}
Modified: trunk/infolog/inc/class.infolog_tracking.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_tracking.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_tracking.inc.php (original)
+++ trunk/infolog/inc/class.infolog_tracking.inc.php Sat Apr 30 19:05:23 2016
@@ -5,15 +5,18 @@
* @link http://www.egroupware.org
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package tracker
- * @copyright (c) 2007-12 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2007-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+use EGroupware\Api;
+use EGroupware\Api\Link;
+
/**
* Tracker - tracking object for the tracker
*/
-class infolog_tracking extends bo_tracking
+class infolog_tracking extends Api\Storage\Tracking
{
/**
* Application we are tracking (required!)
@@ -176,16 +179,16 @@
if (!$old || $old['info_status'] == 'deleted')
{
return lang('New %1 created by %2 at %3',lang($this->infolog->enums['type'][$data['info_type']]),
- common::grab_owner_name($this->infolog->user),$this->datetime('now'));
+ Api\Accounts::username($this->infolog->user),$this->datetime('now'));
}
elseif($data['info_status'] == 'deleted')
{
return lang('%1 deleted by %2 at %3',lang($this->infolog->enums['type'][$data['info_type']]),
- common::grab_owner_name($data['info_modifier']),
+ Api\Accounts::username($data['info_modifier']),
$this->datetime($data['info_datemodified']));
}
return lang('%1 modified by %2 at %3',lang($this->infolog->enums['type'][$data['info_type']]),
- common::grab_owner_name($data['info_modifier']),
+ Api\Accounts::username($data['info_modifier']),
$this->datetime($data['info_datemodified']));
}
@@ -205,7 +208,7 @@
{
foreach($data['info_responsible'] as $uid)
{
- $responsible[] = common::grab_owner_name($uid);
+ $responsible[] = Api\Accounts::username($uid);
}
}
if ($GLOBALS['egw_info']['user']['preferences']['infolog']['show_id'])
@@ -218,7 +221,7 @@
'info_addr' => $data['info_addr'],
'info_cat' => $data['info_cat'] ? $GLOBALS['egw']->categories->id2name($data['info_cat']) : '',
'info_priority' => lang($this->infolog->enums['priority'][$data['info_priority']]),
- 'info_owner' => common::grab_owner_name($data['info_owner']),
+ 'info_owner' => Api\Accounts::username($data['info_owner']),
'info_status' => lang($data['info_status']=='deleted'?'deleted':$this->infolog->status[$data['info_type']][$data['info_status']]),
'info_percent' => (int)$data['info_percent'].'%',
'info_datecompleted' => $data['info_datecompleted'] ? $this->datetime($data['info_datecompleted']) : '',
@@ -236,7 +239,7 @@
if (in_array($data['info_contact'],$lkeys))
{
list($app,$id) = explode(':',$data['info_contact']);
- if (!empty($app)&&!empty($id)) $value = egw_link::title($app,$id);
+ if (!empty($app)&&!empty($id)) $value = Link::title($app,$id);
}
}
$details[$name] = array(
@@ -328,7 +331,7 @@
}
break;
case self::CUSTOM_NOTIFICATION:
- $info_config = config::read('infolog');
+ $info_config = Api\Config::read('infolog');
if(!$info_config[self::CUSTOM_NOTIFICATION])
{
return '';
Modified: trunk/infolog/inc/class.infolog_ui.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_ui.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_ui.inc.php (original)
+++ trunk/infolog/inc/class.infolog_ui.inc.php Sat Apr 30 19:05:23 2016
@@ -9,6 +9,13 @@
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+
+use EGroupware\Api;
+use EGroupware\Api\Link;
+use EGroupware\Api\Framework;
+use EGroupware\Api\Egw;
+use EGroupware\Api\Acl;
+use EGroupware\Api\Etemplate;
/**
* This class is the UI-layer (user interface) of InfoLog
@@ -40,7 +47,7 @@
/**
* instance of the etemplate class
*
- * @var etemplate
+ * @var Etemplate
*/
var $tmpl;
/**
@@ -90,17 +97,17 @@
*/
function __construct()
{
- if ($GLOBALS['egw_info']['flags']['currentapp'] != 'infolog') translation::add_app('infolog');
+ if ($GLOBALS['egw_info']['flags']['currentapp'] != 'infolog') Api\Translation::add_app('infolog');
// Make sure Global category is infolog - on first load, it may not be
if($GLOBALS['egw_info']['flags']['currentapp'] == 'infolog' && !$GLOBALS['egw']->categories->app_name)
{
- $GLOBALS['egw']->categories = new categories();
+ $GLOBALS['egw']->categories = new Api\Categories();
}
$this->bo = new infolog_bo();
- $this->tmpl = new etemplate_new();
+ $this->tmpl = new Etemplate();
$this->user = $GLOBALS['egw_info']['user']['account_id'];
@@ -109,7 +116,7 @@
// read the duration format from project-manager
if ($GLOBALS['egw_info']['apps']['projectmanager'])
{
- $pm_config = config::read('projectmanager');
+ $pm_config = Api\Config::read('projectmanager');
$this->duration_format = str_replace(',','',implode('', (array)$pm_config['duration_units']));
//error_log(__METHOD__."() ".__LINE__." duration_format=$this->duration_format, duration_unit=".array2string($pm_config['duration_units']));
$this->hours_per_workday = $pm_config['hours_per_workday'];
@@ -135,12 +142,6 @@
}
*/
$GLOBALS['infolog_ui'] =& $this; // make ourself availible for ExecMethod of get_rows function
-
- // can be removed for next release / infolog update
- if (!$GLOBALS['egw']->hooks->hook_exists('calendar_set','infolog'))
- {
- $GLOBALS['egw']->hooks->register_single_app_hook('infolog','calendar_set');
- }
}
/**
@@ -173,14 +174,14 @@
if (!isset($info['info_anz_subs'])) $info['info_anz_subs'] = $this->bo->anzSubs($id);
$this->bo->link_id2from($info,$action,$action_id); // unset from for $action:$action_id
$info['info_percent'] = (int) $info['info_percent'].'%';
- $editrights = $this->bo->check_access($info,EGW_ACL_EDIT);
+ $editrights = $this->bo->check_access($info,Acl::EDIT);
$isresposible = $this->bo->is_responsible($info);
if ((!($editrights || // edit rights or more then standard responsible rights
$isresposible && array_diff($this->bo->responsible_edit,array('info_status','info_percent','info_datecompleted')))))
{
$info['class'] .= 'rowNoEdit ';
}
- if ($info['status'] == 'deleted' && !$this->bo->check_access($info, EGW_ACL_UNDELETE))
+ if ($info['status'] == 'deleted' && !$this->bo->check_access($info, infolog_bo::ACL_UNDELETE))
{
$info['class'] .= 'rowNoUndelete ';
}
@@ -195,11 +196,11 @@
{
$info['class'] .= 'rowNoCloseAll ';
}
- if (!$this->bo->check_access($info,EGW_ACL_DELETE))
+ if (!$this->bo->check_access($info,Acl::DELETE))
{
$info['class'] .= 'rowNoDelete ';
}
- if (!$this->bo->check_access($info,EGW_ACL_ADD))
+ if (!$this->bo->check_access($info,Acl::ADD))
{
$info['class'] .= 'rowNoSubs ';
}
@@ -211,13 +212,13 @@
if (!$show_links) $show_links = $this->prefs['show_links'];
if (($show_links != 'none' && $show_links != 'no_describtion' ||
$this->prefs['show_times'] || isset($GLOBALS['egw_info']['user']['apps']['timesheet'])) &&
- (isset($info['links']) || ($info['links'] = egw_link::get_links('infolog',$info['info_id'],'','link_lastmod DESC',true,true))))
+ (isset($info['links']) || ($info['links'] = Link::get_links('infolog',$info['info_id'],'','link_lastmod DESC',true,true))))
{
$timesheets = array();
foreach ($info['links'] as $link)
{
// incl. link modification time into row_mod (link's lastmod is always in server-time!)
- $link_mod = egw_time::server2user($link['lastmod']);
+ $link_mod = Api\DateTime::server2user($link['lastmod']);
if ($info['row_mod'] < $link_mod) $info['row_mod'] = $link_mod;
if ($link['deleted']) continue; // skip deleted links, but incl. them in row_mod!
@@ -225,7 +226,7 @@
if ($show_links != 'none' && $show_links != 'no_describtion' &&
$link['link_id'] != $info['info_link_id'] &&
($link['app'] != $action || $link['id'] != $action_id) &&
- ($show_links == 'all' || ($show_links == 'links') === ($link['app'] != egw_link::VFS_APPNAME)))
+ ($show_links == 'all' || ($show_links == 'links') === ($link['app'] != Link::VFS_APPNAME)))
{
$info['filelinks'][] = $link;
}
@@ -315,7 +316,7 @@
unset($query['col_filter']['parent_id']);
if(!$query['action'])
{
- egw_cache::setSession('infolog', $query['session_for'].'session_data', $query);
+ Api\Cache::setSession('infolog', $query['session_for'].'session_data', $query);
}
$query['actions'] = $this->get_actions($query);
$query['row_id'] = 'info_id';
@@ -364,7 +365,7 @@
$id = $link['id'];
}
if(!is_array($id)) $id = explode(',',$id);
- if (!($linked = egw_link::get_links_multiple($app,$id,true,'infolog','',$query['col_filter']['info_status'] == 'deleted')))
+ if (!($linked = Link::get_links_multiple($app,$id,true,'infolog','',$query['col_filter']['info_status'] == 'deleted')))
{
$rows = array(); // no infologs linked to selected link --> no rows to return
return 0;
@@ -378,7 +379,7 @@
$links[$key] = array_unique($links[$key]);
if($key == 'linked')
{
- $linked = array('app' => $app, 'id' => $id, 'title' => (count($id) == 1 ? egw_link::title($app, $id) : lang('multiple')));
+ $linked = array('app' => $app, 'id' => $id, 'title' => (count($id) == 1 ? Link::title($app, $id) : lang('multiple')));
}
}
if(count($links))
@@ -397,7 +398,7 @@
unset($query['custom_fields']);
if ($query['col_filter']['info_type'])
{
- $tpl = new etemplate_new;
+ $tpl = new Etemplate;
if ($tpl->read('infolog.index.rows.'.$query['col_filter']['info_type']))
{
$query['template'] = $tpl->name;
@@ -411,7 +412,7 @@
$clear_status_filter = true;
}
}
- // Template change forces the UI to do a full update first, no point in getting rows right now
+ // Framework\Template change forces the UI to do a full update first, no point in getting rows right now
if($old_template && $old_template != $query['template']) return 0;
// do we need to read the custom fields, depends on the column is enabled and customfields exist, prefs are filter specific
@@ -455,7 +456,7 @@
// query all links and sub counts in one go
if ($infos && (!$query['csv_export'] || !is_array($query['csv_export'])))
{
- $links = egw_link::get_links_multiple('infolog',array_keys($infos),true,'','link_lastmod DESC',true); // true=incl. deleted
+ $links = Link::get_links_multiple('infolog',array_keys($infos),true,'','link_lastmod DESC',true); // true=incl. deleted
$anzSubs = $this->bo->anzSubs(array_keys($infos));
}
$rows = array();
@@ -551,7 +552,7 @@
$headers[] = lang($this->filters[$query['filter']]);
}
if ($query['action'] && ($title = $query['action_title'] || is_array($query['action_id']) ?
- $query['action_title'] : egw_link::title($query['action']=='sp'?'infolog':$query['action'],$query['action_id'])))
+ $query['action_title'] : Link::title($query['action']=='sp'?'infolog':$query['action'],$query['action_id'])))
{
$headers[] = $title;
}
@@ -581,9 +582,9 @@
{
if ($info['info_cat']) $set['cat_id'] = $info['info_cat'];
- foreach(egw_link::get_links('infolog',$info['info_id'],'','link_lastmod DESC',true) as $link)
- {
- if ($link['app'] != 'timesheet' && $link['app'] != egw_link::VFS_APPNAME)
+ foreach(Link::get_links('infolog',$info['info_id'],'','link_lastmod DESC',true) as $link)
+ {
+ if ($link['app'] != 'timesheet' && $link['app'] != Link::VFS_APPNAME)
{
$set['link_app'][] = $link['app'];
$set['link_id'][] = $link['id'];
@@ -607,7 +608,7 @@
return $data;
}
$event = array_merge($data,array(
- 'category' => $GLOBALS['egw']->categories->check_list(EGW_ACL_READ, $infolog['info_cat']),
+ 'category' => $GLOBALS['egw']->categories->check_list(Acl::READ, $infolog['info_cat']),
'priority' => $infolog['info_priority'] + 1,
'public' => $infolog['info_access'] != 'private',
'title' => $infolog['info_subject'],
@@ -619,8 +620,8 @@
unset($event['entry_id']);
if (!$event['end']) $event['end'] = $event['start'] + (int) $GLOBALS['egw_info']['user']['preferences']['calendar']['defaultlength']*60;
- // Match categories by name
- $event['category'] = $GLOBALS['egw']->categories->name2id(categories::id2name($infolog['info_cat']));
+ // Match Api\Categories by name
+ $event['category'] = $GLOBALS['egw']->categories->name2id(Api\Categories::id2name($infolog['info_cat']));
// make current user the owner of the new event, not the selected calendar, if current user has rights for it
$event['owner'] = $user = $GLOBALS['egw_info']['user']['account_id'];
@@ -665,16 +666,16 @@
$event['link_id'][] = $infolog['info_link']['id'];
// Copy infolog's links
- foreach(egw_link::get_links('infolog',$infolog['info_id'],'','link_lastmod DESC',true) as $link)
- {
- if ($link['app'] != egw_link::VFS_APPNAME)
+ foreach(Link::get_links('infolog',$infolog['info_id'],'','link_lastmod DESC',true) as $link)
+ {
+ if ($link['app'] != Link::VFS_APPNAME)
{
$event['link_app'][] = $link['app'];
$event['link_id'][] = $link['id'];
}
}
// Copy same custom fields
- foreach(array_keys(config::get_customfields('calendar')) as $name)
+ foreach(array_keys(Api\Storage\Customfields::get('calendar')) as $name)
{
if ($this->bo->customfields[$name]) $event['#'.$name] = $infolog['#'.$name];
}
@@ -706,11 +707,11 @@
$own_referer = common::get_referer();
if (strpos($own_referer,'menuaction=infolog.infolog_ui.edit') !== false)
{
- $own_referer = $GLOBALS['egw']->session->appsession('own_session','infolog');
+ $own_referer = Api\Cache::getSession('infolog', 'own_session');
}
else
{
- $GLOBALS['egw']->session->appsession('own_session','infolog',$own_referer);
+ Api\Cache::setSession('infolog', 'own_session', $own_referer);
}
}
@@ -768,17 +769,17 @@
$success, $failed, $action_msg, $values['nm'], $msg, $values['nm']['checkboxes']['no_notifications']))
{
$msg .= lang('%1 entries %2',$success,$action_msg);
- egw_framework::message($msg);
+ Framework::message($msg);
}
elseif(is_null($msg))
{
$msg .= lang('%1 entries %2, %3 failed because of insufficent rights !!!',$success,$action_msg,$failed);
- egw_framework::message($msg,'error');
+ Framework::message($msg,'error');
}
elseif($msg)
{
$msg .= "\n".lang('%1 entries %2, %3 failed.',$success,$action_msg,$failed);
- egw_framework::message($msg,'error');
+ Framework::message($msg,'error');
}
unset($values['nm']['multi_action']);
unset($values['nm']['select_all']);
@@ -793,7 +794,7 @@
//echo "<p>".__METHOD__."(action='$action/$action_id',called_as='$called_as/$values[referer]',own_referer='$own_referer') values=\n"; _debug_array($values);
if (!is_array($values))
{
- $nm = egw_cache::getSession('infolog', $this->called_by.'session_data');
+ $nm = Api\Cache::getSession('infolog', $this->called_by.'session_data');
unset($nm['rows']);
if ($values === 'reset_action_view')
{
@@ -807,10 +808,10 @@
$nm['action_id'] = 0;
$nm['action_title'] = '';
// check if action-view reset filter and restore it
- if (($filter = egw_cache::getSession('infolog', 'filter_reset_from')))
+ if (($filter = Api\Cache::getSession('infolog', 'filter_reset_from')))
{
$nm['filter'] = $filter;
- egw_cache::unsetSession('infolog', 'filter_reset_from');
+ Api\Cache::unsetSession('infolog', 'filter_reset_from');
}
}
$values = array('nm' => $nm);
@@ -852,7 +853,7 @@
{
unset($values['nm']['multi_action']);
unset($values['nm']['action_id']);
- egw_cache::setSession('infolog', $values['nm']['session_for'].'session_data', $values['nm']);
+ Api\Cache::setSession('infolog', $values['nm']['session_for'].'session_data', $values['nm']);
$this->tmpl->location($own_referer);
}
else
@@ -1018,7 +1019,7 @@
// remove types owned by groups the user has no edit grant
foreach($this->bo->group_owners as $type => $group)
{
- if (!($this->bo->grants[$group] & EGW_ACL_EDIT))
+ if (!($this->bo->grants[$group] & Acl::EDIT))
{
unset($types[$type]);
}
@@ -1046,7 +1047,7 @@
unset($types['delete']);
foreach($types as $type => &$data)
{
- $image_exists = common::image('infolog',$type);
+ $image_exists = Api\Image::find('infolog',$type);
$data = array(
'caption' => $data,
'icon' => $image_exists ? $type : 'infolog/navbar',
@@ -1060,7 +1061,7 @@
$statis = $this->bo->get_status($query['col_filter']['info_type'], $icons);
foreach($statis as $type => &$data)
{
- $image_exists = common::image('infolog',$icons[$type]);
+ $image_exists = Api\Image::find('infolog',$icons[$type]);
$data = array(
'caption' => $data,
'icon' => $image_exists ? $icons[$type] : 'infolog/status',
@@ -1072,9 +1073,9 @@
'caption' => 'Open',
'default' => true,
'allowOnMultiple' => false,
- 'onExecute' => html::$ua_mobile?'javaScript:app.infolog.viewEntry':'',
+ 'onExecute' => Api\Header\UserAgent::mobile()?'javaScript:app.infolog.viewEntry':'',
'url' => 'menuaction=infolog.infolog_ui.edit&info_id=$id',
- 'popup' => egw_link::get_registry('infolog', 'add_popup'),
+ 'popup' => Link::get_registry('infolog', 'add_popup'),
'group' => $group=1,
),
'parent' => array(
@@ -1098,7 +1099,7 @@
'sub' => array(
'caption' => 'Sub-entry',
'url' => 'menuaction=infolog.infolog_ui.edit&action=sp&action_id=$id',
- 'popup' => egw_link::get_registry('infolog', 'add_popup'),
+ 'popup' => Link::get_registry('infolog', 'add_popup'),
'allowOnMultiple' => false,
'hint' => 'Add a new sub-task, -note, -call to this entry',
'icon' => 'new',
@@ -1106,7 +1107,7 @@
'copy' => array(
'caption' => 'Copy',
'url' => 'menuaction=infolog.infolog_ui.edit&action=copy&info_id=$id',
- 'popup' => egw_link::get_registry('infolog', 'add_popup'),
+ 'popup' => Link::get_registry('infolog', 'add_popup'),
'allowOnMultiple' => false,
'icon' => 'copy',
),
@@ -1147,7 +1148,7 @@
'group' => $group,
'icon' => 'completed',
),
- 'cat' => nextmatch_widget::category_action(
+ 'cat' => Etemplate\Widget\Nextmatch::category_action(
'infolog',$group,'Change category','cat_'
),
'responsible' => array(
@@ -1203,9 +1204,9 @@
'caption' => 'Schedule appointment',
'group' => $group,
'url' => 'menuaction=calendar.calendar_uiforms.edit&'.
- egw_link::get_registry('calendar', 'add_app') . '[]=infolog&'.egw_link::get_registry('calendar','add_id').'[]=$id',
+ Link::get_registry('calendar', 'add_app') . '[]=infolog&'.Link::get_registry('calendar','add_id').'[]=$id',
'allowOnMultiple' => false,
- 'popup' => egw_link::get_registry('calendar', 'add_popup'),
+ 'popup' => Link::get_registry('calendar', 'add_popup'),
);
}
if ($GLOBALS['egw_info']['user']['apps']['timesheet'])
@@ -1216,7 +1217,7 @@
'url' => 'menuaction=timesheet.timesheet_ui.edit&link_app[]=infolog&link_id[]=$id',
'group' => $group,
'allowOnMultiple' => false,
- 'popup' => egw_link::get_registry('timesheet', 'add_popup'),
+ 'popup' => Link::get_registry('timesheet', 'add_popup'),
);
}
if ($GLOBALS['egw_info']['user']['apps']['tracker'])
@@ -1227,9 +1228,9 @@
'hint' => 'Convert to a ticket',
'group' => $group,
'url' => 'menuaction=tracker.tracker_ui.edit&'.
- egw_link::get_registry('tracker', 'add_app') . '[]=infolog&'.egw_link::get_registry('tracker','add_id').'[]=$id',
+ Link::get_registry('tracker', 'add_app') . '[]=infolog&'.Link::get_registry('tracker','add_id').'[]=$id',
'allowOnMultiple' => false,
- 'popup' => egw_link::get_registry('tracker', 'add_popup'),
+ 'popup' => Link::get_registry('tracker', 'add_popup'),
);
}
@@ -1322,10 +1323,10 @@
$msg = lang('You need to select an entry for linking.');
break;
}
- $title = egw_link::title($app, $link_id);
+ $title = Link::title($app, $link_id);
foreach($checked as $id)
{
- if(!$this->bo->check_access($id, EGW_ACL_EDIT))
+ if(!$this->bo->check_access($id, Acl::EDIT))
{
$failed++;
continue;
@@ -1333,7 +1334,7 @@
if($add_remove == 'add')
{
$action_msg = lang('linked to %1', $title);
- if(egw_link::link('infolog', $id, $app, $link_id))
+ if(Link::link('infolog', $id, $app, $link_id))
{
$success++;
}
@@ -1345,7 +1346,7 @@
else
{
$action_msg = lang('unlinked from %1', $title);
- $count = egw_link::unlink(0, 'infolog', $id, '', $app, $link_id);
+ $count = Link::unlink(0, 'infolog', $id, '', $app, $link_id);
$success += $count;
}
}
@@ -1360,9 +1361,9 @@
case 'ical':
// infolog_ical lets horde be auto-loaded, so it must go first
$boical = new infolog_ical();
- html::content_header('todo.ics','text/calendar');
+ Api\Header\Content::type('todo.ics','text/calendar');
echo $boical->exportvCalendar($checked);
- common::egw_exit();
+ exit();
}
@@ -1397,7 +1398,7 @@
case 'type':
$action_msg = lang('changed type');
// Dont allow to change the type, if user has no delete rights from the group-owner
- if ($id && !($this->bo->grants[$entry['info_owner']] & EGW_ACL_DELETE))
+ if ($id && !($this->bo->grants[$entry['info_owner']] & Acl::DELETE))
{
$failed++;
break;
@@ -1406,7 +1407,7 @@
try {
$this->bo->write($entry, true,true,true,$skip_notifications,true); // Throw exceptions
}
- catch (egw_exception_wrong_userinput $e)
+ catch (Api\Exception\WrongUserinput $e)
{
$msg .= "\n".$e->getMessage();
$failed++;
@@ -1475,7 +1476,7 @@
case 'cat':
if($settings)
{
- $cat_name = categories::id2name($settings);
+ $cat_name = Api\Categories::id2name($settings);
$action_msg = lang('changed category to %1', $cat_name);
}
else
@@ -1500,7 +1501,7 @@
$users = explode(',', $user_str);
foreach($users as $account_id)
{
- $names[] = common::grab_owner_name($account_id);
+ $names[] = Api\Accounts::username($account_id);
}
$action_msg .= implode(', ', $names);
$function = $add_remove == 'add' ? 'array_merge' : 'array_diff';
@@ -1590,7 +1591,7 @@
if (is_array($values) || $info_id <= 0)
{
- if (($values['delete'] || $values['delete_subs']) && $info_id > 0 && $this->bo->check_access($info_id,EGW_ACL_DELETE))
+ if (($values['delete'] || $values['delete_subs']) && $info_id > 0 && $this->bo->check_access($info_id,Acl::DELETE))
{
$deleted = $this->bo->delete($info_id,$values['delete_subs'],$values['info_id_parent'], $skip_notification);
}
@@ -1677,7 +1678,7 @@
if (in_array($button,array('copy','schedule','ical','tracker')))
{
$action = $button;
- if (!$info_id || $this->bo->check_access($info_id,EGW_ACL_EDIT))
+ if (!$info_id || $this->bo->check_access($info_id,Acl::EDIT))
{
$button = 'apply'; // need to store infolog first
}
@@ -1701,10 +1702,10 @@
if (($button == 'save' || $button == 'apply') && $info_id)
{
$old = $this->bo->read($info_id);
- if (!($edit_acl = $this->bo->check_access($info_id,EGW_ACL_EDIT)))
+ if (!($edit_acl = $this->bo->check_access($info_id,Acl::EDIT)))
{
$status_only = $this->bo->is_responsible($old);
- $undelete = $this->bo->check_access($old,EGW_ACL_UNDELETE);
+ $undelete = $this->bo->check_access($old,infolog_bo::ACL_UNDELETE);
}
}
if (($button == 'save' || $button == 'apply') && (!$info_id || $edit_acl || $status_only || $undelete))
@@ -1730,7 +1731,7 @@
{
$content['link_to'] = array();
}
- $content['info_link_id'] = (int)($info_link_id = egw_link::link('infolog',$content['link_to']['to_id'],$app,$id));
+ $content['info_link_id'] = (int)($info_link_id = Link::link('infolog',$content['link_to']['to_id'],$app,$id));
}
else
{
@@ -1738,13 +1739,13 @@
}
if ($old_link_id && $old_link_id != $content['info_link_id'])
{
- $link = egw_link::get_link($old_link_id);
+ $link = Link::get_link($old_link_id);
// remove selected project, if removed link is that project
if($link['link_app2'] == 'projectmanager' && $link['link_id2'] == $content['old_pm_id'])
{
unset($content['pm_id'], $content['old_pm_id']);
}
- egw_link::unlink($old_link_id);
+ Link::unlink($old_link_id);
}
// if added link is a project and no other project selected, also add as project
if ($app == 'projectmanager' && $id && !$content['pm_id'])
@@ -1762,7 +1763,7 @@
$content['msg'] = $info_id !== 0 || !$content['info_id'] ? lang('Error: saving the entry') :
lang('Error: the entry has been updated since you opened it for editing!').'<br />'.
lang('Copy your changes to the clipboard, %1reload the entry%2 and merge them.','<a href="'.
- htmlspecialchars(egw::link('/index.php',array(
+ htmlspecialchars(Egw::link('/index.php',array(
'menuaction' => 'infolog.infolog_ui.edit',
'info_id' => $content['info_id'],
'no_popup' => $no_popup,
@@ -1776,7 +1777,7 @@
$GLOBALS['egw']->preferences->add('infolog','preferred_type',$content['info_type']);
$GLOBALS['egw']->preferences->save_repository(false,'user',false);
$content['msg'] = lang('InfoLog entry saved');
- egw_framework::refresh_opener($content['msg'],'infolog',$info_id,$operation);
+ Framework::refresh_opener($content['msg'],'infolog',$info_id,$operation);
}
$content['tabs'] = $active_tab;
if ((int) $content['pm_id'] != (int) $content['old_pm_id'])
@@ -1786,7 +1787,7 @@
if ($content['pm_id'])
{
//echo "<p>this->link->link('infolog',{$content['link_to']['to_id']},'projectmanager',{$content['pm_id']});</p>";
- egw_link::link('infolog',$content['link_to']['to_id'],'projectmanager',$content['pm_id']);
+ Link::link('infolog',$content['link_to']['to_id'],'projectmanager',$content['pm_id']);
// making the project the selected link, if no other link selected
if (!$info_link_id || $info_link_id == 'projectmanager:'.$content['old_pm_id'])
{
@@ -1796,7 +1797,7 @@
if ($content['old_pm_id'])
{
//echo "<p>this->link->unlink2(0,infolog,{$content['link_to']['to_id']},0,'projectmanager',{$content['old_pm_id']});</p>\n";
- egw_link::unlink2(0,infolog,$content['link_to']['to_id'],0,'projectmanager',$content['old_pm_id']);
+ Link::unlink2(0,infolog,$content['link_to']['to_id'],0,'projectmanager',$content['old_pm_id']);
}
$content['old_pm_id'] = $content['pm_id'];
}
@@ -1804,13 +1805,13 @@
if ($info_id && is_array($content['link_to']['to_id']) && count($content['link_to']['to_id']))
{
//echo "<p>writing links for new entry $info_id</p>\n"; _debug_array($content['link_to']['to_id']);
- egw_link::link('infolog',$info_id,$content['link_to']['to_id']);
+ Link::link('infolog',$info_id,$content['link_to']['to_id']);
$content['link_to']['to_id'] = $info_id;
}
if ($info_link_id && strpos($info_link_id,':') !== false) // updating info_link_id if necessary
{
list($app,$id) = explode(':',$info_link_id);
- $link = egw_link::get_link('infolog',$info_id,$app,$id);
+ $link = Link::get_link('infolog',$info_id,$app,$id);
if ((int) $content['info_link_id'] != (int) $link['link_id'])
{
$content['info_link_id'] = $link['link_id'];
@@ -1838,20 +1839,20 @@
);
if (!($content['msg'] = $this->delete($info_id,$referer,'edit'))) return; // checks ACL first
- egw_framework::refresh_opener($content['msg'],'infolog',$info_id,'delete');
+ Framework::refresh_opener($content['msg'],'infolog',$info_id,'delete');
}
// called again after delete confirmation dialog
elseif ($button == 'deleted' && $content['msg'])
{
- egw_framework::refresh_opener($content['msg'],'infolog',$info_id,'delete');
+ Framework::refresh_opener($content['msg'],'infolog',$info_id,'delete');
}
if ($button == 'save' || $button == 'cancel' || $button == 'delete' || $button == 'deleted')
{
if ($no_popup)
{
- egw::redirect_link($referer,array('msg' => $content['msg']));
- }
- egw_framework::window_close();
+ Egw::redirect_link($referer,array('msg' => $content['msg']));
+ }
+ Framework::window_close();
}
}
// on a type-change, set the status to the default status of that type, if the actual status is not supported by the new type
@@ -1915,7 +1916,7 @@
// set blank behind all , and . if words are too long, apply wordwrap afterwards to make sure we get
if (strlen($word)>75)
{
- $buff = html::activate_links($word);
+ $buff = Api\Html::activate_links($word);
if (strlen($buff) == strlen($word)) // no links -> try to break overlong words
{
if (!(strpos($word,',')===false) && strpos($word,', ')===false) $word = str_replace(',',', ',$word);
@@ -1948,21 +1949,21 @@
case 'datetime': $set_startdate = $this->bo->user_time_now; break;
case 'empty': $set_startdate = 0; break;
}
- if ((int)$content['info_link_id'] > 0 && !egw_link::get_link($content['info_link_id']))
+ if ((int)$content['info_link_id'] > 0 && !Link::get_link($content['info_link_id']))
{
$content['info_link_id'] = 0; // link has been deleted
if (!$content['info_custom_link']) $content['info_from'] = '';
}
if (!$info_id && $action_id && $action == 'sp') // new SubProject
{
- if (!$this->bo->check_access($action_id,EGW_ACL_ADD))
+ if (!$this->bo->check_access($action_id,Acl::ADD))
{
return $referer ? $this->tmpl->location($referer) : $this->index(0,$action,$action_id);
}
}
else
{
- $undelete = $this->bo->check_access($info_id,EGW_ACL_UNDELETE);
+ $undelete = $this->bo->check_access($info_id,infolog_bo::ACL_UNDELETE);
}
$content['links'] = $content['link_to'] = array(
'to_id' => $info_id,
@@ -1975,7 +1976,7 @@
switch ($action)
{
case 'schedule':
- egw::redirect_link('/index.php',array(
+ Egw::redirect_link('/index.php',array(
'menuaction' => 'calendar.calendar_uiforms.edit',
'link_app' => 'infolog',
'link_id' => $info_id,
@@ -1984,9 +1985,9 @@
case 'ical':
$boical = new infolog_ical();
$result = $boical->exportVTODO($content,'2.0','PUBLISH',false);
- html::content_header('todo.ics', 'text/calendar');
+ Api\Header\Content::type('todo.ics', 'text/calendar');
echo $result;
- common::egw_exit();
+ exit();
case 'sp':
case 'copy':
$info_id = 0;
@@ -1999,16 +2000,16 @@
unset($action); // it get stored in $content and will cause an other copy after [apply]
break;
case 'to_tracker':
- egw::redirect_link('/index.php',array(
+ Egw::redirect_link('/index.php',array(
'menuaction' => 'tracker.tracker_ui.edit',
- egw_link::get_registry('tracker', 'add_app').'[]' => 'infolog',
- egw_link::get_registry('tracker','add_id').'[]' => $info_id,
+ Link::get_registry('tracker', 'add_app').'[]' => 'infolog',
+ Link::get_registry('tracker','add_id').'[]' => $info_id,
));
break;
case 'projectmanager':
$pm_links = array($action_id);
default: // to allow other apps to participate
- $content['info_subject'] = egw_link::title($action, $id);
+ $content['info_subject'] = Link::title($action, $id);
$action_ids = explode(',',$action_id);
if(count($action_ids) == 1)
{
@@ -2016,14 +2017,14 @@
}
foreach ($action_ids as $n => $id)
{
- egw_link::link('infolog', $content['link_to']['to_id'], $action, $id);
+ Link::link('infolog', $content['link_to']['to_id'], $action, $id);
// calling "infolog_set" hook for first, in case app wants to set some more values
- if (!$n && ($set = $GLOBALS['egw']->hooks->single(array('location'=>'infolog_set','id'=>$action_id),$action)))
+ if (!$n && ($set = Api\Hooks::single(array('location'=>'infolog_set','id'=>$action_id),$action)))
{
foreach((array)$set['link_app'] as $i => $l_app)
{
- if (($l_id=$set['link_id'][$i])) egw_link::link('infolog',$content['link_to']['to_id'],$l_app,$l_id);
+ if (($l_id=$set['link_id'][$i])) Link::link('infolog',$content['link_to']['to_id'],$l_app,$l_id);
}
unset($set['link_app']);
unset($set['link_id']);
@@ -2037,7 +2038,7 @@
{
if (!isset($pm_links))
{
- $pm_links = egw_link::get_links('infolog',$info_id,'projectmanager');
+ $pm_links = Link::get_links('infolog',$info_id,'projectmanager');
}
break; // normal edit
}
@@ -2069,7 +2070,7 @@
// remove types owned by groups the user has no edit grant (current type is made readonly)
foreach($this->bo->group_owners as $type => $group)
{
- if (!($this->bo->grants[$group] & EGW_ACL_EDIT))
+ if (!($this->bo->grants[$group] & Acl::EDIT))
{
if ($type == $content['info_type'])
{
@@ -2087,7 +2088,7 @@
{
$content['info_owner'] = $this->bo->group_owners[$content['info_type']];
// Dont allow to change the type, if user has no delete rights from the group-owner
- if ($info_id && !($this->bo->grants[$content['info_owner']] & EGW_ACL_DELETE))
+ if ($info_id && !($this->bo->grants[$content['info_owner']] & Acl::DELETE))
{
//echo "<p>setting type to r/o as user has no delete rights from group #$group</p>\n";
$readonlys['info_type'] = true;
@@ -2107,7 +2108,7 @@
unset($preserv['links']); unset($preserv['link_to']);
// for no edit rights or 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) && !$undelete)
+ if ($info_id && !$this->bo->check_access($info_id,Acl::EDIT) && !$undelete)
{
$readonlys['__ALL__'] = true; // make all fields not explicitly set readonly
if ($this->bo->is_responsible($content))
@@ -2131,7 +2132,7 @@
$this->tmpl->setElementAttribute('button[save]', 'label', 'Un-Delete');
}
- if (!($readonlys['button[delete]'] = !$info_id || !$this->bo->check_access($info_id,EGW_ACL_DELETE)))
+ if (!($readonlys['button[delete]'] = !$info_id || !$this->bo->check_access($info_id,Acl::DELETE)))
{
$content['info_anz_subs'] = $this->bo->anzSubs($info_id); // to determine js confirmation of delete or not
}
@@ -2303,16 +2304,16 @@
// Get links to be copied, if not excluded
if (!in_array('link_to',$exclude_fields) || !in_array('attachments',$exclude_fields))
{
- foreach(egw_link::get_links($content['link_to']['to_app'], $info_id) as $link)
- {
- if ($link['app'] != egw_link::VFS_APPNAME && !in_array('link_to', $exclude_fields))
- {
- egw_link::link('infolog', $content['link_to']['to_id'], $link['app'], $link['id'], $link['remark']);
- }
- elseif ($link['app'] == egw_link::VFS_APPNAME && !in_array('attachments', $exclude_fields))
- {
- egw_link::link('infolog', $content['link_to']['to_id'], egw_link::VFS_APPNAME, array(
- 'tmp_name' => egw_link::vfs_path($link['app2'], $link['id2']).'/'.$link['id'],
+ foreach(Link::get_links($content['link_to']['to_app'], $info_id) as $link)
+ {
+ if ($link['app'] != Link::VFS_APPNAME && !in_array('link_to', $exclude_fields))
+ {
+ Link::link('infolog', $content['link_to']['to_id'], $link['app'], $link['id'], $link['remark']);
+ }
+ elseif ($link['app'] == Link::VFS_APPNAME && !in_array('attachments', $exclude_fields))
+ {
+ Link::link('infolog', $content['link_to']['to_id'], Link::VFS_APPNAME, array(
+ 'tmp_name' => Link::vfs_path($link['app2'], $link['id2']).'/'.$link['id'],
'name' => $link['id'],
), $link['remark']);
}
@@ -2326,19 +2327,19 @@
// we need this if copy is triggered via context menu action
if (!isset($content['info_contact']) || empty($content['info_contact']) || $content['info_contact'] === 'copy:')
{
- $linkinfos = egw_link::get_link($info_link_id);
+ $linkinfos = Link::get_link($info_link_id);
$content['info_contact'] = $linkinfos['link_app1']=='infolog'? $linkinfos['link_app2'].':'.$linkinfos['link_id2']:$linkinfos['link_app1'].':'.$linkinfos['link_id1'];
if (stripos($content['info_contact'],'projectmanager')!==false) $content['pm_id'] = $linkinfos['link_app1']=='projectmanager'? $linkinfos['link_id1']:$linkinfos['link_id2'];
}
unset($content['info_link_id']);
}
- $content['info_owner'] = !(int)$this->owner || !$this->bo->check_perms(EGW_ACL_ADD,0,$this->owner) ? $this->user : $this->owner;
+ $content['info_owner'] = !(int)$this->owner || !$this->bo->check_perms(Acl::ADD,0,$this->owner) ? $this->user : $this->owner;
if (!empty($content['info_subject']))
{
if ($create_sub)
{
- $config = config::read('infolog');
+ $config = Api\Config::read('infolog');
$prefix = lang(empty($config['sub_prefix']) ? 'Re:': $config['sub_prefix']);
}
else
@@ -2370,7 +2371,7 @@
$alt = $id;
}
}
- return $icon ? html::image('infolog',$icon,lang($alt),'border=0') : lang($alt);
+ return $icon ? Api\Html::image('infolog',$icon,lang($alt),'border=0') : lang($alt);
}
/**
@@ -2443,14 +2444,14 @@
'info_cc' => 'CC',
);
// add customfields to field list
- foreach(config::get_customfields('infolog') as $name => $data)
+ foreach(Api\Storage\Customfields::get('infolog') as $name => $data)
{
$excludefields['#'.$name] = $data['label'];
}
$sub_excludefields = $excludefields;
unset($sub_excludefields['info_id_parent']); // always set to parent!
- $config = config::read('infolog');
+ $config = Api\Config::read('infolog');
if($content)
{
@@ -2465,23 +2466,23 @@
$extra = array_intersect($content['responsible_edit'],array_keys($fields));
$this->bo->responsible_edit = array_unique(array_merge($this->bo->responsible_edit,$extra));
}
- config::save_value('copy_excludefields', $content['copy_excludefields'] ? $content['copy_excludefields'] : null, 'infolog');
- config::save_value('sub_excludefields', $content['sub_excludefields'] ? $content['sub_excludefields'] : array('*NONE*'), 'infolog');
- config::save_value('responsible_edit', $this->bo->responsible_edit, 'infolog');
- config::save_value('implicit_rights', $this->bo->implicit_rights = $content['implicit_rights'] == 'edit' ? 'edit' : 'read', 'infolog');
- config::save_value('history', $this->bo->history = $content['history'], 'infolog');
- config::save_value('index_load_cfs', implode(',', (array)$content['index_load_cfs']), 'infolog');
- config::save_value('sub_prefix', $content['sub_prefix'], 'infolog');
+ Api\Config::save_value('copy_excludefields', $content['copy_excludefields'] ? $content['copy_excludefields'] : null, 'infolog');
+ Api\Config::save_value('sub_excludefields', $content['sub_excludefields'] ? $content['sub_excludefields'] : array('*NONE*'), 'infolog');
+ Api\Config::save_value('responsible_edit', $this->bo->responsible_edit, 'infolog');
+ Api\Config::save_value('implicit_rights', $this->bo->implicit_rights = $content['implicit_rights'] == 'edit' ? 'edit' : 'read', 'infolog');
+ Api\Config::save_value('history', $this->bo->history = $content['history'], 'infolog');
+ Api\Config::save_value('index_load_cfs', implode(',', (array)$content['index_load_cfs']), 'infolog');
+ Api\Config::save_value('sub_prefix', $content['sub_prefix'], 'infolog');
// Notifications
$notifications =& $config[infolog_tracking::CUSTOM_NOTIFICATION];
$notifications[$content['notification_type']] = $content['notification'];
- config::save_value(infolog_tracking::CUSTOM_NOTIFICATION, $notifications,'infolog');
+ Api\Config::save_value(infolog_tracking::CUSTOM_NOTIFICATION, $notifications,'infolog');
}
if($button == 'save' || $button == 'cancel')
{
- egw::redirect_link('/index.php', array(
+ Egw::redirect_link('/index.php', array(
'menuaction' => 'admin.admin_ui.index',
'ajax' => 'true'
), 'admin');
@@ -2541,7 +2542,7 @@
if (!is_array($mailContent) && ($_GET['egw_data']))
{
// get the mail raw data
- egw_link::get_data ($_GET['egw_data']);
+ Link::get_data ($_GET['egw_data']);
return false;
}
@@ -2561,7 +2562,7 @@
* @param $args['view_id'] name of the id-var for location == 'infolog'
* @param $args[$args['view_id']] id of the entry
* this function can be called for any app, which should include infolog: \
- * $GLOBALS['egw']->hooks->process(array( \
+ * Api\Hooks::process(array( \
* * 'location' => 'infolog', \
* * 'app' => <your app>, \
* * 'view_id' => <id name>, \
@@ -2572,7 +2573,7 @@
function hook_view($args)
{
// Load JS for infolog actions
- egw_framework::validate_file('.','app','infolog');
+ Framework::includeJS('.','app','infolog');
switch ($args['location'])
{
@@ -2605,10 +2606,10 @@
// Set to calling app, so actions wind up in the correct place client side
$GLOBALS['egw_info']['flags']['currentapp'] = $app;
- translation::add_app('infolog');
-
- // Still want infolog categories though
- $GLOBALS['egw']->categories = new categories('','infolog');
+ Api\Translation::add_app('infolog');
+
+ // Still want infolog Api\Categories though
+ $GLOBALS['egw']->categories = new Api\Categories('','infolog');
$this->index(null,$app,$args[$view_id],array(
'menuaction' => $view,
isset($view_id2) ? $view_id2 : $view_id => $args[$view_id]
Modified: trunk/infolog/inc/class.infolog_widget.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_widget.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_widget.inc.php (original)
+++ trunk/infolog/inc/class.infolog_widget.inc.php Sat Apr 30 19:05:23 2016
@@ -10,6 +10,9 @@
* @version $Id$
*/
+use EGroupware\Api;
+use EGroupware\Api\Etemplate;
+
/**
* Infolog widget et2 representation:
* Both infolog-value and infolog-fields widgets are using client-side et2_widget_entry
@@ -19,8 +22,8 @@
* options="[field(e.g. sum), compare, alternate_fields(e.g. (-)#customfileds, use '-' if we need subtraction)]"
* />
*
- */
-
+ */
+
/**
* eTemplate extension: InfoLog widget
*
@@ -32,7 +35,7 @@
* 3) colon (:) separted list of alternative fields: the first non-empty one is used if the selected value is empty
* There's a special field "sum" in 1), which sums up all fields given in alternatives.
*/
-class infolog_widget extends etemplate_widget_entry
+class infolog_widget extends Etemplate\Widget\Entry
{
/**
* exported methods of this class
@@ -66,16 +69,18 @@
/**
* Constructor of the extension
- *
*/
function __construct($xml)
{
parent::__construct($xml);
+
$this->infolog = new infolog_bo();
}
public function get_entry($value, array $attrs)
{
+ unset($attrs); // not used
+
// Already done
if (is_array($value) && !(array_key_exists('app',$value) && array_key_exists('id', $value))) return $value;
@@ -90,200 +95,54 @@
}
return array();
}
- /**
- * pre-processing of the extension
- *
- * This function is called before the extension gets rendered
- *
- * @param string $name form-name of the control
- * @param mixed &$value value / existing content, can be modified
- * @param array &$cell array with the widget, can be modified for ui-independent widgets
- * @param array &$readonlys names of widgets as key, to be made readonly
- * @param mixed &$extension_data data the extension can store persisten between pre- and post-process
- * @param etemplate &$tmpl reference to the template we belong too
- * @return boolean true if extra label is allowed, false otherwise
- */
- function pre_process($name,&$value,&$cell,&$readonlys,&$extension_data,&$tmpl)
- {
- switch($cell['type'])
- {
- case 'infolog-fields':
- translation::add_app('addressbook');
- $cell['sel_options'] = $this->_get_fields();
- $cell['type'] = 'select';
- $cell['no_lang'] = 1;
- break;
-
- case 'infolog-value':
- default:
- if (substr($value,0,8) == 'infolog:') $value = substr($value,8); // link-entry syntax
- if (!$value || !$cell['size'] || (!is_array($this->data) || $this->data['info_id'] != $value) &&
- !($this->data = $this->infolog->read($value)))
- {
- $cell = $tmpl->empty_cell();
- $value = '';
- break;
- }
- list($type,$compare,$alternatives,$contactfield,$regex,$replace) = explode(',',$cell['size'],6);
- $value = $this->data[$type];
- $cell['size'] = '';
- $cell['no_lang'] = 1;
- $cell['readonly'] = true;
-
- switch($type)
- {
- case '': // Sum of the alternatives, field-name can be prefixed with a minus to substract it's value
- $cell['type'] = 'float';
- $cell['size'] = ',,,%0.2lf';
- $value = 0.0;
- foreach(explode(':',$alternatives) as $name)
- {
- if ($name[0] === '-')
- {
- $val = '-'.$this->data[substr($name, 1)];
- }
- else
- {
- $val = $this->data[$name];
- }
- $value += str_replace(array(' ',','), array('','.'), $val);
- }
- $alternatives = '';
- break;
-
- case 'info_startdate':
- case 'info_datemodified':
- case 'info_datecompleted':
- $cell['type'] = 'date-time';
- break;
-
- case 'info_enddate':
- $cell['type'] = 'date';
- break;
-
- case 'info_owner':
- case 'info_responsible':
- $cell['type'] = 'select-owner';
- break;
-
- case 'info_cat':
- $cell['type'] = 'select-cat';
- break;
-
- case 'info_access':
- $cell['type'] = 'select-access';
- break;
-
- case 'info_type':
- case 'info_priority':
- case 'info_confirm':
- $cell['sel_options'] = $this->infolog->enums[$type];
- $cell['type'] = 'select';
- break;
-
- case 'info_status':
- $cell['sel_options'] = $this->infolog->status[$this->data['info_type']];
- $cell['type'] = 'select';
- break;
-
- default:
- if ($type{0} == '#') // custom field --> use field-type itself
- {
- $field = $this->infolog->customfields[substr($type,1)];
- if (($cell['type'] = $field['type']))
- {
- if ($field['type'] == 'select')
- {
- $cell['sel_options'] = $field['values'];
- }
- break;
- }
- }
- $cell['type'] = 'label';
- break;
- }
- if ($alternatives && empty($value)) // use first non-empty alternative if value is empty
- {
- foreach(explode(':',$alternatives) as $name)
- {
- if (($value = $this->data[$name])) break;
- }
- }
- if (!empty($compare)) // compare with value and print a X is equal and nothing otherwise
- {
- $value = $value == $compare ? 'X' : '';
- $cell['type'] = 'label';
- }
- // modify the value with a regular expression
- if (!empty($regex))
- {
- $parts = explode('/',$regex);
- if (strchr(array_pop($parts),'e') === false) // dont allow e modifier, which would execute arbitrary php code
- {
- $value = preg_replace($regex,$replace,$value);
- }
- $cell['type'] = 'label';
- $cell['size'] = '';
- }
- // use a contact widget to render the value, eg. to fetch contact data from an linked infolog
- if (!empty($contactfield))
- {
- $cell['type'] = 'contact-value';
- $cell['size'] = $contactfield;
- }
- break;
- }
- $cell['id'] = ($cell['id'] ? $cell['id'] : $cell['name'])."[$type]";
-
- return True; // extra label ok
- }
function _get_fields()
{
- static $fields;
+ static $fields=null;
- if (!is_null($fields)) return $fields;
-
- $fields = array(
- '' => lang('Sum'),
- 'info_type' => lang('Type'),
- 'info_subject' => lang('Subject'),
- 'info_des' => lang('Description'),
- 'info_cat' => lang('Category'),
- 'info_from' => lang('Contact'),
- 'info_addr' => lang('Phone/Email'),
- 'info_responsible' => lang('Responsible'),
- 'info_startdate' => lang('Startdate'),
- 'info_enddate' => lang('Enddate'),
- 'info_status' => lang('Status'),
- 'info_priority' => lang('Priority'),
- 'info_location' => lang('Location'),
- 'info_percent' => lang('Completed'),
- 'info_datecompleted' => lang('Date completed'),
- // meta data
- // PM fields
- 'info_planned_time' => lang('planned time'),
- 'info_used_time' => lang('used time'),
- 'pl_id' => lang('Pricelist'),
- 'info_price' => lang('Price'),
- // other
- 'info_owner' => lang('Owner'),
- 'info_access' => lang('Access'),
- 'info_id' => lang('Id#'),
- 'info_link_id' => lang('primary link'),
- 'info_modifier' => lang('Modifierer'),
- 'info_datemodified' => lang('Last modified'),
-// 'info_id_parent' => lang('Parent'),
-// 'info_confirm' => lang('Confirm'),
-// 'info_custom_from' => lang('Custom from'),
- );
- foreach(config::get_customfields('infolog') as $name => $data)
+ if (!isset($fields))
{
- $fields['#'.$name] = lang($data['label']);
+ $fields = array(
+ '' => lang('Sum'),
+ 'info_type' => lang('Type'),
+ 'info_subject' => lang('Subject'),
+ 'info_des' => lang('Description'),
+ 'info_cat' => lang('Category'),
+ 'info_from' => lang('Contact'),
+ 'info_addr' => lang('Phone/Email'),
+ 'info_responsible' => lang('Responsible'),
+ 'info_startdate' => lang('Startdate'),
+ 'info_enddate' => lang('Enddate'),
+ 'info_status' => lang('Status'),
+ 'info_priority' => lang('Priority'),
+ 'info_location' => lang('Location'),
+ 'info_percent' => lang('Completed'),
+ 'info_datecompleted' => lang('Date completed'),
+ // meta data
+ // PM fields
+ 'info_planned_time' => lang('planned time'),
+ 'info_used_time' => lang('used time'),
+ 'pl_id' => lang('Pricelist'),
+ 'info_price' => lang('Price'),
+ // other
+ 'info_owner' => lang('Owner'),
+ 'info_access' => lang('Access'),
+ 'info_id' => lang('Id#'),
+ 'info_link_id' => lang('primary link'),
+ 'info_modifier' => lang('Modifierer'),
+ 'info_datemodified' => lang('Last modified'),
+ // 'info_id_parent' => lang('Parent'),
+ // 'info_confirm' => lang('Confirm'),
+ // 'info_custom_from' => lang('Custom from'),
+ );
+ foreach(Api\Storage\Customfields::get('infolog') as $name => $data)
+ {
+ $fields['#'.$name] = lang($data['label']);
+ }
}
return $fields;
}
}
// register widgets for etemplate2
-etemplate_widget::registerWidget('infolog_widget',array('infolog-value', 'infolog-fields'));
+Etemplate\Widget::registerWidget('infolog_widget',array('infolog-value', 'infolog-fields'));
Modified: trunk/infolog/inc/class.infolog_wizard_export_csv.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_wizard_export_csv.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_wizard_export_csv.inc.php (original)
+++ trunk/infolog/inc/class.infolog_wizard_export_csv.inc.php Sat Apr 30 19:05:23 2016
@@ -1,6 +1,6 @@
<?php
/**
- * eGroupWare - Wizard for Infolog CSV export
+ * EGroupware - Wizard for Infolog CSV export
*
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @package infolog
@@ -9,6 +9,8 @@
* @author Nathan Gray
* @version $Id$
*/
+
+use EGroupware\Api;
class infolog_wizard_export_csv extends importexport_wizard_basic_export_csv
{
@@ -24,7 +26,7 @@
// Custom fields
unset($this->export_fields['custom']); // Heading, not a real field
- $custom = config::get_customfields('infolog', true);
+ $custom = Api\Storage\Customfields::get('infolog', true);
foreach($custom as $name => $data) {
$this->export_fields['#'.$name] = $data['label'];
}
Modified: trunk/infolog/inc/class.infolog_wizard_import_infologs_csv.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_wizard_import_infologs_csv.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_wizard_import_infologs_csv.inc.php (original)
+++ trunk/infolog/inc/class.infolog_wizard_import_infologs_csv.inc.php Sat Apr 30 19:05:23 2016
@@ -1,6 +1,6 @@
<?php
/**
- * eGroupWare - Wizard for Infolog CSV import
+ * EGroupware - Wizard for Infolog CSV import
*
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @package infolog
@@ -8,6 +8,9 @@
* @author Nathan Gray
* @version $Id$
*/
+
+use EGroupware\Api;
+use EGroupware\Api\Acl;
class infolog_wizard_import_infologs_csv extends importexport_wizard_basic_import_csv
{
@@ -30,7 +33,7 @@
$this->mapping_fields = array('info_id' => 'Infolog ID') + $tracking->field2label + infolog_import_infologs_csv::$special_fields;
// List each custom field
unset($this->mapping_fields['custom']);
- $custom = config::get_customfields('infolog');
+ $custom = Api\Storage\Customfields::get('infolog');
foreach($custom as $name => $data) {
$this->mapping_fields['#'.$name] = $data['label'];
}
@@ -52,10 +55,10 @@
function wizard_step50(&$content, &$sel_options, &$readonlys, &$preserv)
{
$result = parent::wizard_step50($content, $sel_options, $readonlys, $preserv);
-
+
return $result;
}
-
+
# Skipped for now (or forever)
function wizard_step60(&$content, &$sel_options, &$readonlys, &$preserv)
{
@@ -66,7 +69,7 @@
if($content['record_owner'])
{
$bo = new infolog_bo();
- $access = $bo->check_access(0,EGW_ACL_EDIT, $content['record_owner']);
+ $access = $bo->check_access(0,Acl::EDIT, $content['record_owner']);
}
// return from step60
@@ -115,6 +118,6 @@
unset ($preserv['button']);
return 'infolog.importexport_wizard_chooseowner';
}
-
+
}
}
Modified: trunk/infolog/inc/class.infolog_zpush.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/inc/class.infolog_zpush.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/inc/class.infolog_zpush.inc.php (original)
+++ trunk/infolog/inc/class.infolog_zpush.inc.php Sat Apr 30 19:05:23 2016
@@ -9,6 +9,9 @@
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
+
+use EGroupware\Api;
+use EGroupware\Api\Acl;
/**
* InfoLog activesync plugin
@@ -69,7 +72,7 @@
*
* Currently we only return an own infolog
*
- * @param int $account=null account_id of addressbook or null to get array of all addressbooks
+ * @param int $account =null account_id of addressbook or null to get array of all addressbooks
* @return string|array folder name of array with int account_id => folder name pairs
*/
private function get_folders($account=null)
@@ -109,6 +112,7 @@
*/
public function GetFolder($id)
{
+ $type = $owner = null;
$this->backend->splitID($id, $type, $owner);
$folderObj = new SyncFolder();
@@ -151,6 +155,7 @@
*/
public function StatFolder($id)
{
+ $type = $owner = null;
$this->backend->splitID($id, $type, $owner);
$stat = array(
@@ -183,13 +188,16 @@
* will work OK apart from that.
*
* @param string $id folder id
- * @param int $cutoffdate=null
+ * @param int $cutoffdate =null
* @return array
*/
function GetMessageList($id, $cutoffdate=NULL)
{
+ unset($cutoffdate); // not used, but required by function signature
+
if (!isset($this->infolog)) $this->infolog = new infolog_bo();
+ $type = $user = null;
$this->backend->splitID($id,$type,$user);
if (!($infolog_types = $GLOBALS['egw_info']['user']['preferences']['activesync']['infolog-types']))
{
@@ -232,6 +240,7 @@
$bodypreference = $contentparameters->GetBodyPreference(); /* fmbiete's contribution r1528, ZP-320 */
debugLog (__METHOD__."('$folderid', $id, truncsize=$truncsize, bodyprefence=$bodypreference, mimesupport=$mimesupport)");
+ $type = $account = null;
$this->backend->splitID($folderid, $type, $account);
if ($type != 'infolog' || !($infolog = $this->infolog->read($id, true, 'server')))
{
@@ -267,7 +276,7 @@
$message->$key = array();
foreach($infolog[$attr] ? explode(',',$infolog[$attr]) : array() as $cat_id)
{
- $message->categories[] = categories::id2name($cat_id);
+ $message->categories[] = Api\Categories::id2name($cat_id);
}
break;
@@ -304,6 +313,8 @@
*/
public function StatMessage($folderid, $infolog)
{
+ unset($folderid); // not used, info_id does not depend on folder
+
if (!isset($this->infolog)) $this->infolog = new infolog_bo();
if (!is_array($infolog)) $infolog = $this->infolog->read($infolog, true, 'server');
@@ -338,6 +349,8 @@
*/
public function ChangeFolder($id, $oldid, $displayname, $type)
{
+ unset($id, $oldid, $displayname, $type); // not used
+
debugLog(__METHOD__." not implemented");
}
@@ -353,6 +366,8 @@
*/
public function DeleteFolder($parentid, $id)
{
+ unset($parentid, $id); // not used
+
debugLog(__METHOD__." not implemented");
}
@@ -377,6 +392,7 @@
{
if (!isset($this->infolog)) $this->infolog = new infolog_bo();
unset($contentParameters); // not used but required
+ $type = $account = null;
$this->backend->splitID($folderid, $type, $account);
//debugLog(__METHOD__. " Id " .$id. " Account ". $account . " FolderID " . $folderid);
if ($type != 'infolog') // || !($infolog = $this->addressbook->read($id)))
@@ -385,8 +401,8 @@
return false;
}
$infolog = array();
- if (empty($id) && $this->infolog->check_access(0, EGW_ACL_EDIT, $account) ||
- ($infolog = $this->infolog->read($id)) && $this->infolog->check_access($infolog, EGW_ACL_EDIT))
+ if (empty($id) && $this->infolog->check_access(0, Acl::EDIT, $account) ||
+ ($infolog = $this->infolog->read($id)) && $this->infolog->check_access($infolog, Acl::EDIT))
{
if (!$infolog) $infolog = array();
foreach (self::$mapping as $key => $attr)
@@ -472,6 +488,8 @@
*/
public function DeleteMessage($folderid, $id, $contentParameters)
{
+ unset($contentParameters); // not used
+
if (!isset($this->infolog)) $this->infolog = new infolog_bo();
$ret = $this->infolog->delete($id);
@@ -498,6 +516,8 @@
*/
public function SetReadFlag($folderid, $id, $flags, $contentParameters)
{
+ unset($folderid, $id, $flags, $contentParameters); // not used
+
return false;
}
@@ -513,6 +533,8 @@
*/
function ChangeMessageFlag($folderid, $id, $flags)
{
+ unset($folderid, $id, $flags); // not used
+
return false;
}
@@ -527,6 +549,7 @@
*/
function AlterPingChanges($folderid, &$syncstate)
{
+ $type = $owner = null;
$this->backend->splitID($folderid, $type, $owner);
if ($type != 'infolog') return false;
@@ -544,7 +567,7 @@
));
$changes = array(); // no change
- $syncstate_was = $syncstate;
+ //$syncstate_was = $syncstate;
if ($ctag !== $syncstate)
{
@@ -556,14 +579,14 @@
}
/**
- * Populates $settings for the preferences
+ * Populates $settings for the Api\Preferences
*
* @param array|string $hook_data
* @return array
*/
function egw_settings($hook_data)
{
- if (!$hook_data['setup']) translation::add_app('infolog');
+ if (!$hook_data['setup']) Api\Translation::add_app('infolog');
if (!isset($this->infolog)) $this->infolog = new infolog_bo();
if (!($types = $this->infolog->enums['type']))
Modified: trunk/infolog/index.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/index.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/index.php (original)
+++ trunk/infolog/index.php Sat Apr 30 19:05:23 2016
@@ -1,11 +1,11 @@
<?php
/**
- * eGroupWare - InfoLog
+ * EGroupware - InfoLog
*
* @link http://www.egroupware.org
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
- * @copyright (c) 2003-12 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2003-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
@@ -18,14 +18,14 @@
)
);
include('../header.inc.php');
-auth::check_password_age('infolog','index');
+
include_once(EGW_INCLUDE_ROOT.'/infolog/setup/setup.inc.php');
if ($setup_info['infolog']['version'] != $GLOBALS['egw_info']['apps']['infolog']['version'])
{
$GLOBALS['egw']->framework->render('<p style="text-align: center; color:red; font-weight: bold;">'.lang('Your database is NOT up to date (%1 vs. %2), please run %3setup%4 to update your database.',
$setup_info['infolog']['version'],$GLOBALS['egw_info']['apps']['infolog']['version'],
'<a href="../setup/">','</a>')."</p>\n");
- $GLOBALS['egw']->common->egw_exit();
+ exit();
}
unset($setup_info);
Modified: trunk/infolog/setup/setup.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/setup/setup.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/setup/setup.inc.php (original)
+++ trunk/infolog/setup/setup.inc.php Sat Apr 30 19:05:23 2016
@@ -6,13 +6,13 @@
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
* @subpackage setup
- * @copyright (c) 2003-14 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2003-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
$setup_info['infolog']['name'] = 'infolog';
-$setup_info['infolog']['version'] = '14.3';
+$setup_info['infolog']['version'] = '16.1';
$setup_info['infolog']['app_order'] = 5;
$setup_info['infolog']['tables'] = array('egw_infolog','egw_infolog_extra');
$setup_info['infolog']['enable'] = 1;
@@ -65,15 +65,8 @@
$setup_info['infolog']['hooks']['calendar_set'] = 'infolog.infolog_ui.calendar_set';
$setup_info['infolog']['hooks']['mail_import'] = 'infolog_hooks::mail_import';
-/* Dependencies for this app to work */
+// Dependencies for this app to work
$setup_info['infolog']['depends'][] = array(
- 'appname' => 'phpgwapi',
- 'versions' => Array('14.1')
+ 'appname' => 'api',
+ 'versions' => Array('16.1')
);
-$setup_info['infolog']['depends'][] = array(
- 'appname' => 'etemplate',
- 'versions' => Array('14.1')
-);
-
-
-
Modified: trunk/infolog/setup/tables_update.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/infolog/setup/tables_update.inc.php?rev=55955&r1=55954&r2=55955&view=diff
==============================================================================
--- trunk/infolog/setup/tables_update.inc.php (original)
+++ trunk/infolog/setup/tables_update.inc.php Sat Apr 30 19:05:23 2016
@@ -6,7 +6,7 @@
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @package infolog
* @subpackage setup
- * @copyright (c) 2003-14 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
+ * @copyright (c) 2003-16 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @version $Id$
*/
@@ -797,3 +797,9 @@
return $GLOBALS['setup_info']['infolog']['currentver'] = '14.3';
}
+
+
+function infolog_upgrade14_3()
+{
+ return $GLOBALS['setup_info']['infolog']['currentver'] = '16.1';
+}
------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z