Forum export to HTML and Print. More...
Public Member Functions | |
| ilForumExportGUI () | |
| & | executeCommand () |
| Execute Command. | |
| printThread () | |
| Print Thread. | |
| printPost () | |
| Print Posting. | |
| exportHTML () | |
| Export to HTML. | |
Forum export to HTML and Print.
Definition at line 34 of file class.ilForumExportGUI.php.
| & ilForumExportGUI::executeCommand | ( | ) |
| ilForumExportGUI::exportHTML | ( | ) |
Export to HTML.
Definition at line 276 of file class.ilForumExportGUI.php.
References $_GET, $ilias, $lng, $tpl, ilUtil::deliverData(), exit, ilForumProperties::getInstance(), and ilUtil::switchColor().
{
global $lng, $tpl, $ilDB, $ilUser, $ilAccess, $ilias;
if (!$ilAccess->checkAccess('read,visible', '', $_GET['ref_id']))
{
$ilias->raiseError($lng->txt('permission_denied'), $ilias->error_obj->MESSAGE);
}
$tplEx = new ilTemplate('tpl.forums_export_html.html', true, true, 'Modules/Forum');
// threads
for ($j = 0; $j < count($_POST['forum_id']); $j++)
{
$objCurrentTopic = new ilForumTopic(addslashes($_POST['forum_id'][$j]), $ilAccess->checkAccess('moderate_frm', '', $_GET['ref_id']));
// get forum- and thread-data
$this->frm->setWhereCondition('top_pk = '.$ilDB->quote($objCurrentTopic->getForumId()));
if (is_array($frmData = $this->frm->getOneTopic()))
{
$objFirstPostNode = $objCurrentTopic->getFirstPostNode();
$postTree = $objCurrentTopic->getPostTree($objFirstPostNode);
$posNum = count($postTree);
$z = 0;
foreach ($postTree as $post)
{
$tplEx->setCurrentBlock('posts_row');
$rowCol = ilUtil::switchColor($z++, 'tblrow2', 'tblrow1');
$tplEx->setVariable('ROWCOL', $rowCol);
$objForumProperties = ilForumProperties::getInstance($frmData['top_frm_fk']);
if ($objForumProperties->isAnonymized())
{
// if anonymized
if ($post->getUserAlias() != '') $tplEx->setVariable('AUTHOR', $post->getUserAlias());
else $tplEx->setVariable('AUTHOR', $lng->txt('forums_anonymous'));
}
else
{
// get author data
$author = $this->frm->getUserData($post->getUserId(), $post->getImportName());
$tplEx->setVariable('AUTHOR', $author['login']);
}
if ($post->getUserId())
{
// get create- and update-dates
if ($post->getUpdateUserId())
{
$lastuserdata = $this->frm->getUserData($post->getUpdateUserId());
$tplEx->setVariable('POST_UPDATE', "<br />[".$lng->txt('edited_at').": ".
$this->frm->convertDate($post->getChangeDate())." - ".strtolower($lng->txt('from'))." ".
$lastuserdata['login']."]");
}
if ($author['public_profile'] != 'n')
{
$tplEx->setVariable('TXT_REGISTERED', $lng->txt('registered_since'));
$tplEx->setVariable('REGISTERED_SINCE', $this->frm->convertDate($author['create_date']));
}
if ($ilAccess->checkAccess('moderate_frm', '', $_GET['ref_id']))
{
$numPosts = $this->frm->countUserArticles($post->getUserId());
}
else
{
$numPosts = $this->frm->countActiveUserArticles($post->getUserId());
}
$tplEx->setVariable('TXT_NUM_POSTS', $lng->txt('forums_posts'));
$tplEx->setVariable('NUM_POSTS', $numPosts);
}
$tplEx->setVariable('SUBJECT', $post->getSubject());
$tplEx->setVariable('TXT_CREATE_DATE', $lng->txt('forums_thread_create_date'));
$tplEx->setVariable('POST_DATE', $this->frm->convertDate($post->getCreateDate()));
$tplEx->setVariable('SPACER', "<hr noshade width=\"100%\" size=\"1\" align=\"center\" />");
if ($post->isCensored())
{
$tplEx->setVariable('POST', nl2br(stripslashes($post->getCensorshipComment())));
}
else
{
$tplEx->setVariable('POST', nl2br($this->frm->prepareText($post->getMessage(), 0, '', 'export')));
}
$tplEx->parseCurrentBlock('posts_row');
unset($author);
} // foreach ($postTree as $post)
$tplEx->setCurrentBlock('posttable');
$tplEx->setVariable('TXT_AUTHOR', $lng->txt('author'));
$tplEx->setVariable('TXT_POST', $lng->txt('forums_thread').': '.$objCurrentTopic->getSubject());
$tplEx->parseCurrentBlock('posttable');
// Thread Headline
$tplEx->setCurrentBlock('thread_headline');
$tplEx->setVariable('T_TITLE', $objCurrentTopic->getSubject());
if ($ilAccess->checkAccess('moderate_frm', '', $_GET['ref_id']))
{
$tplEx->setVariable('T_NUM_POSTS', $objCurrentTopic->countPosts());
}
else
{
$tplEx->setVariable('T_NUM_POSTS', $objCurrentTopic->countActivePosts());
}
$tplEx->setVariable('T_NUM_VISITS', $objCurrentTopic->getVisits());
$tplEx->setVariable('T_FORUM', $frmData['top_name']);
$objForumProperties = ilForumProperties::getInstance($frmData['top_frm_fk']);
if ($objForumProperties->isAnonymized())
{
unset($t_author);
if ($objCurrentTopic->getUserAlias() != '') $tplEx->setVariable('T_AUTHOR', $objCurrentTopic->getUserAlias());
else $tplEx->setVariable('T_AUTHOR', $lng->txt('forums_anonymous'));
}
else
{
unset($t_author);
$t_author = $this->frm->getUser($objCurrentTopic->getUserId());
$tplEx->setVariable('T_AUTHOR', $t_author->getLogin());
}
$tplEx->setVariable('T_TXT_FORUM', $lng->txt('forum').': ');
$tplEx->setVariable('T_TXT_TOPIC', $lng->txt('forums_thread').': ');
$tplEx->setVariable('T_TXT_AUTHOR', $lng->txt('forums_thread_create_from').': ');
$tplEx->setVariable('T_TXT_NUM_POSTS', $lng->txt('forums_articles').': ');
$tplEx->setVariable('T_TXT_NUM_VISITS', $lng->txt('visits').': ');
$tplEx->parseCurrentBlock('thread_headline');
$tplEx->setCurrentBlock('thread_block');
$tplEx->parseCurrentBlock('thread_block');
$tplEx->setCurrentBlock('forum_block');
$tplEx->parseCurrentBlock('forum_block');
} // if (is_array($frmData = $this->frm->getOneTopic()))
} // for ($j = 0; $j < count($_POST["forum_id"]); $j++)
ilUtil::deliverData($tplEx->get(), 'forum_html_export_'.$_GET['ref_id'].'.html');
exit();
}
Here is the call graph for this function:| ilForumExportGUI::ilForumExportGUI | ( | ) |
| ilForumExportGUI::printPost | ( | ) |
Print Posting.
Definition at line 178 of file class.ilForumExportGUI.php.
References $_GET, $ilias, $lng, $tpl, and ilForumProperties::getInstance().
{
global $tpl, $lng, $ilDB, $ilAccess, $ilias;
if (!$ilAccess->checkAccess('read,visible', '', $_GET['ref_id']))
{
$ilias->raiseError($lng->txt('permission_denied'), $ilias->error_obj->MESSAGE);
}
$tplEx = new ilTemplate('tpl.forums_export_print.html', true, true, 'Modules/Forum');
$tplEx->setVariable('CSSPATH', $tpl->tplPath);
// get forum- and thread-data
$this->frm->setWhereCondition('top_pk = '.$ilDB->quote($_GET['top_pk']));
if (is_array($frmData = $this->frm->getOneTopic()))
{
// post object
$post = new ilForumPost(addslashes($_GET['print_post']));
// headline
$tplEx->setVariable('HEADLINE', $lng->txt('forum').': '.$frmData['top_name'].' > '.
$lng->txt('forums_thread').': '.$post->getThread()->getSubject());
$tplEx->setCurrentBlock('posts_row');
$tplEx->setVariable('ROWCOL', 'tblrow2');
$objForumProperties = ilForumProperties::getInstance($frmData['top_frm_fk']);
if ($objForumProperties->isAnonymized())
{
if ($post->getUserAlias() != '') $tplEx->setVariable('AUTHOR', $post->getUserAlias());
else $tplEx->setVariable('AUTHOR', $lng->txt('forums_anonymous'));
}
else
{
// get author data
$author = $this->frm->getUserData($post->getUserId(), $post->getImportName());
$tplEx->setVariable('AUTHOR', $author['login']);
}
if ($post->getUserId())
{
// get create- and update-dates
if ($post->getUpdateUserId())
{
$lastuserdata = $this->frm->getUserData($post->getUpdateUserId());
$tplEx->setVariable('POST_UPDATE', "<br />[".$lng->txt('edited_at').": ".
$this->frm->convertDate($post->getChangeDate())." - ".strtolower($lng->txt('from'))." ".$lastuserdata['login']."]");
}
if ($author['public_profile'] != 'n')
{
$tplEx->setVariable('TXT_REGISTERED', $lng->txt('registered_since'));
$tplEx->setVariable('REGISTERED_SINCE', $this->frm->convertDate($author['create_date']));
}
if ($ilAccess->checkAccess('moderate_frm', '', $_GET['ref_id']))
{
$numPosts = $this->frm->countUserArticles($post->getUserId());
}
else
{
$numPosts = $this->frm->countActiveUserArticles($post->getUserId());
}
$tplEx->setVariable('TXT_NUM_POSTS', $lng->txt('forums_posts'));
$tplEx->setVariable('NUM_POSTS', $numPosts);
}
$tplEx->setVariable('SUBJECT', $post->getSubject());
$tplEx->setVariable('TXT_CREATE_DATE', $lng->txt('forums_thread_create_date'));
$tplEx->setVariable('POST_DATE', $this->frm->convertDate($post->getCreateDate()));
$tplEx->setVariable('SPACER', "<hr noshade width=\"100%\" size=\"1\" align=\"center\" />");
if ($post->isCensored())
{
$tplEx->setVariable('POST', nl2br(stripslashes($post->getCensorshipComment())));
}
else
{
$tplEx->setVariable('POST', nl2br($this->frm->prepareText($post->getMessage(), 0, '', 'export')));
}
$tplEx->parseCurrentBlock('posts_row');
$tplEx->setCurrentBlock('posttable');
$tplEx->setVariable('TXT_AUTHOR', $lng->txt('author'));
$tplEx->setVariable('TXT_POST', $lng->txt('forums_thread').': '.$post->getThread()->getSubject());
$tplEx->parseCurrentBlock('posttable');
} // if (is_array($frmData = $this->frm->getOneTopic()))
$tplEx->show();
}
Here is the call graph for this function:| ilForumExportGUI::printThread | ( | ) |
Print Thread.
Definition at line 68 of file class.ilForumExportGUI.php.
References $_GET, $ilias, $lng, $tpl, ilForumProperties::getInstance(), and ilUtil::switchColor().
{
global $tpl, $lng, $ilDB, $ilUser, $ilAccess, $ilias;
if (!$ilAccess->checkAccess('read,visible', '', $_GET['ref_id']))
{
$ilias->raiseError($lng->txt('permission_denied'), $ilias->error_obj->MESSAGE);
}
$tplEx = new ilTemplate('tpl.forums_export_print.html', true, true, 'Modules/Forum');
$tplEx->setVariable('CSSPATH', $tpl->tplPath);
// get forum- and thread-data
$this->frm->setWhereCondition('top_pk = '.$ilDB->quote($_GET['thr_top_fk']));
if (is_array($frmData = $this->frm->getOneTopic()))
{
$objCurrentTopic = new ilForumTopic(addslashes($_GET['print_thread']), $ilAccess->checkAccess('moderate_frm', '', $_GET['ref_id']));
$objFirstPostNode = $objCurrentTopic->getFirstPostNode();
$postTree = $objCurrentTopic->getPostTree($objFirstPostNode);
$posNum = count($postTree);
// headline
$tplEx->setVariable('HEADLINE', $lng->txt('forum').': '.$frmData['top_name'].' > '.
$lng->txt('forums_thread').': '.$objCurrentTopic->getSubject().' > '.
$lng->txt('forums_count_art').': '.$posNum);
$z = 0;
foreach ($postTree as $post)
{
$tplEx->setCurrentBlock('posts_row');
$rowCol = ilUtil::switchColor($z++, 'tblrow2', 'tblrow1');
$tplEx->setVariable('ROWCOL', $rowCol);
// forum properties
$objForumProperties = ilForumProperties::getInstance($frmData['top_frm_fk']);
if ($objForumProperties->isAnonymized())
{
// if anonymized
if ($post->getUserAlias() != '') $tplEx->setVariable('AUTHOR', $post->getUserAlias());
else $tplEx->setVariable('AUTHOR', $lng->txt('forums_anonymous'));
}
else
{
// get author data
$author = $this->frm->getUserData($post->getUserId(), $post->getImportName());
$tplEx->setVariable('AUTHOR', $author['login']);
}
if ($post->getUserId())
{
// get create- and update-dates
if ($post->getUpdateUserId() > 0)
{
$last_user_data = $this->frm->getUserData($post->getUpdateUserId());
$tplEx->setVariable('POST_UPDATE', "<br />[".$lng->txt("edited_at").": ".
$this->frm->convertDate($post->getChangeDate())." - ".strtolower($lng->txt("from"))." ".$last_user_data['login']."]");
}
if ($author['public_profile'] != 'n')
{
$tplEx->setVariable('TXT_REGISTERED', $lng->txt('registered_since').':');
$tplEx->setVariable('REGISTERED_SINCE', $this->frm->convertDate($author['create_date']));
}
if ($ilAccess->checkAccess('moderate_frm', '', $_GET['ref_id']))
{
$numPosts = $this->frm->countUserArticles($post->getUserId());
}
else
{
$numPosts = $this->frm->countActiveUserArticles($post->getUserId());
}
$tplEx->setVariable('TXT_NUM_POSTS', $lng->txt('forums_posts').':');
$tplEx->setVariable('NUM_POSTS', $numPosts);
}
$tplEx->setVariable('SUBJECT', $post->getSubject());
$tplEx->setVariable('TXT_CREATE_DATE', $lng->txt('forums_thread_create_date'));
$tplEx->setVariable('POST_DATE', $this->frm->convertDate($post->getCreateDate()));
$tplEx->setVariable('SPACER', "<hr noshade width=\"100%\" size=\"1\" align=\"center\" />");
if ($post->isCensored() > 0)
{
$tplEx->setVariable('POST', nl2br(stripslashes($post->getCensorshipComment())));
}
else
{
$tplEx->setVariable('POST', nl2br($this->frm->prepareText($post->getMessage(), 0, '', 'export')));
}
$tplEx->parseCurrentBlock('posts_row');
unset($author);
} // foreach ($postTree as $post)
$tplEx->setCurrentBlock('posttable');
$tplEx->setVariable('TXT_AUTHOR', $lng->txt('author'));
$tplEx->setVariable('TXT_POST', $lng->txt('forums_thread').': '.$objCurrentTopic->getSubject());
$tplEx->parseCurrentBlock('posttable');
} // if (is_array($frmData = $this->frm->getOneTopic()))
$tplEx->show();
}
Here is the call graph for this function:
1.7.1