mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-27 09:09:04 +01:00
added print template to infolog
This commit is contained in:
parent
4e2ae9e19c
commit
80f02187a6
@ -831,7 +831,6 @@ class infolog_ui
|
|||||||
function edit($content = null,$action = '',$action_id=0,$type='',$referer='')
|
function edit($content = null,$action = '',$action_id=0,$type='',$referer='')
|
||||||
{
|
{
|
||||||
$tabs = 'description|links|delegation|project|customfields|history';
|
$tabs = 'description|links|delegation|project|customfields|history';
|
||||||
|
|
||||||
if (is_array($content))
|
if (is_array($content))
|
||||||
{
|
{
|
||||||
//echo "infolog_ui::edit: content="; _debug_array($content);
|
//echo "infolog_ui::edit: content="; _debug_array($content);
|
||||||
@ -841,7 +840,6 @@ class infolog_ui
|
|||||||
$referer = $content['referer']; unset($content['referer']);
|
$referer = $content['referer']; unset($content['referer']);
|
||||||
$no_popup = $content['no_popup']; unset($content['no_popup']);
|
$no_popup = $content['no_popup']; unset($content['no_popup']);
|
||||||
$caller = $content['caller']; unset($content['caller']);
|
$caller = $content['caller']; unset($content['caller']);
|
||||||
|
|
||||||
// convert custom from to 0 or 1, it's unset if not checked, which starts the detection
|
// convert custom from to 0 or 1, it's unset if not checked, which starts the detection
|
||||||
$content['info_custom_from'] = (int)$content['info_custom_from'];
|
$content['info_custom_from'] = (int)$content['info_custom_from'];
|
||||||
|
|
||||||
@ -860,6 +858,10 @@ class infolog_ui
|
|||||||
$content['msg'] = lang('Infolog copied - the copy can now be edited');
|
$content['msg'] = lang('Infolog copied - the copy can now be edited');
|
||||||
$content['info_subject'] = lang('Copy of:').' '.$content['info_subject'];
|
$content['info_subject'] = lang('Copy of:').' '.$content['info_subject'];
|
||||||
}
|
}
|
||||||
|
if ($button == 'print')
|
||||||
|
{
|
||||||
|
$content['js'] = $this->custom_print($content,!$content['info_id'])."\n".$js; // first open the new window and then update the view
|
||||||
|
}
|
||||||
//echo "<p>infolog_ui::edit(info_id=$info_id) '$button' button pressed, content="; _debug_array($content);
|
//echo "<p>infolog_ui::edit(info_id=$info_id) '$button' button pressed, content="; _debug_array($content);
|
||||||
if (($button == 'save' || $button == 'apply') && isset($content['info_subject']) && empty($content['info_subject']))
|
if (($button == 'save' || $button == 'apply') && isset($content['info_subject']) && empty($content['info_subject']))
|
||||||
{
|
{
|
||||||
@ -1008,6 +1010,7 @@ class infolog_ui
|
|||||||
$GLOBALS['egw']->common->get_referer('/index.php?menuaction=infolog.infolog_ui.index'));
|
$GLOBALS['egw']->common->get_referer('/index.php?menuaction=infolog.infolog_ui.index'));
|
||||||
$referer = preg_replace('/([&?]{1})msg=[^&]+&?/','\\1',$referer); // remove previou/old msg from referer
|
$referer = preg_replace('/([&?]{1})msg=[^&]+&?/','\\1',$referer); // remove previou/old msg from referer
|
||||||
$no_popup = $_GET['no_popup'];
|
$no_popup = $_GET['no_popup'];
|
||||||
|
$print = (int) $_REQUEST['print'];
|
||||||
//echo "<p>infolog_ui::edit: info_id=$info_id, action='$action', action_id='$action_id', type='$type', referer='$referer'</p>\n";
|
//echo "<p>infolog_ui::edit: info_id=$info_id, action='$action', action_id='$action_id', type='$type', referer='$referer'</p>\n";
|
||||||
|
|
||||||
$content = $this->bo->read( $info_id || $action != 'sp' ? $info_id : $action_id );
|
$content = $this->bo->read( $info_id || $action != 'sp' ? $info_id : $action_id );
|
||||||
@ -1215,7 +1218,7 @@ class infolog_ui
|
|||||||
// use a typ-specific template (infolog.edit.xyz), if one exists, otherwise fall back to the generic one
|
// use a typ-specific template (infolog.edit.xyz), if one exists, otherwise fall back to the generic one
|
||||||
if (!$this->tmpl->read('infolog.edit.'.$content['info_type']))
|
if (!$this->tmpl->read('infolog.edit.'.$content['info_type']))
|
||||||
{
|
{
|
||||||
$this->tmpl->read('infolog.edit');
|
$this->tmpl->read($print ? 'infolog.edit.print':'infolog.edit');
|
||||||
}
|
}
|
||||||
if ($this->bo->has_customfields($content['info_type']))
|
if ($this->bo->has_customfields($content['info_type']))
|
||||||
{
|
{
|
||||||
@ -1288,7 +1291,7 @@ class infolog_ui
|
|||||||
'status' => $history_stati,
|
'status' => $history_stati,
|
||||||
'action' => array(
|
'action' => array(
|
||||||
'copy' => array('label' => 'Copy', 'title' => 'Copy this Infolog'),
|
'copy' => array('label' => 'Copy', 'title' => 'Copy this Infolog'),
|
||||||
// 'print' => array('label' => 'Print', 'title' => 'Print this Infolog'),
|
'print' => array('label' => 'Print', 'title' => 'Print this Infolog'),
|
||||||
),
|
),
|
||||||
),$readonlys,$preserv+array( // preserved values
|
),$readonlys,$preserv+array( // preserved values
|
||||||
'info_id' => $info_id,
|
'info_id' => $info_id,
|
||||||
@ -1641,6 +1644,23 @@ class infolog_ui
|
|||||||
return $message;
|
return $message;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* return javascript to open compose window to print the Infolog
|
||||||
|
*
|
||||||
|
* @param array $event
|
||||||
|
* @param boolean $added
|
||||||
|
* @return string javascript window.open command
|
||||||
|
*/
|
||||||
|
function custom_print($content,$added)
|
||||||
|
{
|
||||||
|
$vars = array(
|
||||||
|
'menuaction' => 'infolog.infolog_ui.edit',
|
||||||
|
'info_id' => $content['info_id'],
|
||||||
|
'print' => true,
|
||||||
|
);
|
||||||
|
return "window.open('".egw::link('/index.php',$vars)."','_blank','width=700,height=700,scrollbars=yes,status=no');";
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* shows infolog in other applications
|
* shows infolog in other applications
|
||||||
*
|
*
|
||||||
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user