/**
* Get all Category detais
**/
function pmx_getAllCatDetais($allcats, &$detais)
{
    global $txt;
    foreach ($allcats as $cat) {
        $detais[$cat['id']] = PortaMx_getCatDetails($cat, PortaMx_getCategories());
        if (!empty($cat['childs'])) {
            pmx_getAllCatDetais($cat['childs'], $detais);
        }
    }
    $detais[0] = array('class' => 'cat_none', 'level' => '0', 'parent' => $txt['pmx_categories_none'], 'name' => $txt['pmx_categories_none']);
}
/**
* AdmArticleOverview
* Called for each artile.
*/
function PmxArticleOverview($article, &$cfg_titleicons, &$cfg_smfgroups, $categories)
{
    global $context, $user_info, $txt;
    if (empty($article['config']['title_align'])) {
        $article['config']['title_align'] = 'left';
    }
    if (empty($article['config']['title_icon'])) {
        $article['config']['title_icon'] = 'none.png';
    }
    if (!empty($article['acsgrp'])) {
        list($grpacs, $denyacs) = Pmx_StrToArray($article['acsgrp'], ',', '=');
    } else {
        $grpacs = $denyacs = array();
    }
    // ID row
    echo '
							<div class="pmx_tbl_tr">
								<div class="pmx_tbl_tdgrid" id="RowMove-' . $article['id'] . '">';
    if (count($context['pmx']['article_rows']) > 1) {
        echo '
									<div class="pmx_clickrow' . (allowPmx('pmx_articles, pmx_admin') ? ' pmx_moveimg" title="' . $txt['pmx_rowmove_updown'] . '" onclick="pmxArtMove(\'' . $article['id'] . '\', \'<b>' . $article['name'] . '</b> - [' . (empty($article['cat']) ? $txt['pmx_default_none'] : $article['cat']) . ']\')"' : '"') . '>
										<div style="padding-left:20px;margin-top:-2px;width:22px;">' . $article['id'] . '</div>
									</div>';
    }
    echo '
								</div>';
    // title row
    echo '
								<div class="pmx_tbl_tdgrid" id="pWind.ypos.' . $article['id'] . '">
									<div onclick="pmxSetTitle(\'' . $article['id'] . '\')"  title="' . $txt['pmx_click_edit_ttl'] . '" style="cursor:pointer;">
										<img id="uTitle.icon.' . $article['id'] . '" style="padding-right:4px;" src="' . $context['pmx_Iconsurl'] . $article['config']['title_icon'] . '" alt="*" title="' . substr($txt['pmx_edit_titleicon'], 0, -1) . '" />
										<img id="uTitle.align.' . $article['id'] . '" src="' . $context['pmx_imageurl'] . 'text_align_' . $article['config']['title_align'] . '.gif" alt="*" title="' . $txt['pmx_edit_title_align'] . $txt['pmx_edit_title_align_types'][$article['config']['title_align']] . '" />
										<span id="sTitle.text.' . $article['id'] . '.">' . (isset($article['config']['title'][$context['pmx']['currlang']]) ? htmlspecialchars($article['config']['title'][$context['pmx']['currlang']], ENT_QUOTES) : '') . '</span>';
    foreach ($context['pmx']['languages'] as $lang => $sel) {
        echo '
										<input id="sTitle.text.' . $lang . '.' . $article['id'] . '." type="hidden" value="' . (isset($article['config']['title'][$lang]) ? htmlspecialchars($article['config']['title'][$lang], ENT_QUOTES) : '') . '" />';
    }
    echo '
										<input id="sTitle.icon.' . $article['id'] . '" type="hidden" value="' . $article['config']['title_icon'] . '" />
										<input id="sTitle.align.' . $article['id'] . '" type="hidden" value="' . $article['config']['title_align'] . '" />
									</div>
								</div>';
    // type row
    echo '
								<div class="pmx_tbl_tdgrid">
									<div style="cursor:default;" title="' . $context['pmx']['RegBlocks'][$article['ctype']]['blocktype'] . ' ' . $context['pmx']['RegBlocks'][$article['ctype']]['description'] . '"><img style="padding-right:5px;" src="' . $context['pmx_imageurl'] . 'type_' . $article['ctype'] . '.gif" alt="*" title="' . $article['ctype'] . '" /><span style="cursor:default;">' . $context['pmx']['RegBlocks'][$article['ctype']]['description'] . '</span></div>
								</div>';
    $detais = array();
    $cat = !empty($article['catid']) ? $article['catid'] : '0';
    pmx_getAllCatDetais(PortaMx_getCategories(), $detais, $txt['pmx_chg_articlcats']);
    $detais['0'] = array('class' => 'cat_none', 'level' => '0', 'parent' => $txt['pmx_categories_none'], 'name' => $txt['pmx_categories_none']);
    // category row
    echo '
								<div class="pmx_tbl_tdgrid">
									<input id="pWind.catid.' . $article['id'] . '" type="hidden" value="' . $cat . '" />
									<div onclick="pmxSetCats(\'' . $article['id'] . '\')" style="cursor:pointer;">';
    foreach ($detais as $cid => $catsDetais) {
        echo '
										<div id="pWind.cat.' . $cid . '.' . $article['id'] . '" title="' . $catsDetais['parent'] . $txt['pmx_chg_articlcats'] . '" class="' . $catsDetais['class'] . '"  style="display:' . ($cid == $cat ? 'block' : 'none') . ';">
											<b>' . $catsDetais['level'] . '</b>
											<span><span class="cat_names">' . $catsDetais['name'] . '</span></span>
										</div>';
    }
    echo '
									</div>
								</div>';
    // create acs groups for acs Popup
    if (!empty($article['acsgrp'])) {
        list($grpacs, $denyacs) = Pmx_StrToArray($article['acsgrp'], ',', '=');
    } else {
        $grpacs = $denyacs = array();
    }
    // options row
    echo '
								<div class="pmx_tbl_tdgrid">
									<input id="grpAcs.' . $article['id'] . '" type="hidden" value="' . implode(',', $grpacs) . '" />
									<input id="denyAcs.' . $article['id'] . '" type="hidden" value="' . implode(',', $denyacs) . '" />
									<div id="pmxSetArtDelete.' . $article['id'] . '"><span id="pmxSetArtClone.' . $article['id'] . '"></span>
										<div id="pWind.grp.' . $article['id'] . '" class="pmx_clickrow' . (!empty($article['acsgrp']) ? ' pmx_access" title="' . $txt['pmx_article_groupaccess'] : '') . '"></div>
										<div class="pmx_clickrow' . (!empty($article['config']['can_moderate']) ? ' pmx_moderate"  title="' . $txt['pmx_article_modaccess'] : '') . '"></div>
										<div class="pmx_clickrow' . (!empty($article['config']['check_ecl']) ? ' pmx_eclsettings" title="' . $txt['pmx_have_artecl_settings'] : '') . '"></div>
										<div class="pmx_clickrow' . (!empty($article['config']['cssfile']) ? ' pmx_custcss" title="' . $txt['pmx_article_cssfile'] : '') . '"></div>
									</div>
								</div>';
    // status row
    echo '
								<div class="pmx_tbl_tdgrid">
									<div class="pmx_clickrow' . ($article['approved'] ? ' pmx_approved" title="' . $txt['pmx_article_approved'] : ' pmx_notapproved" title="' . $txt['pmx_article_not_approved']) . (allowPmx('pmx_articles, pmx_admin') ? ' - ' . $txt['pmx_status_change'] . '" onclick="pToggleArtStatus(this,' . $article['id'] . ',\'approved\')' : '" style="cursor:default') . '"></div>
									<div class="pmx_clickrow' . ($article['active'] ? ' pmx_active" title="' . $txt['pmx_status_activ'] : ' pmx_notactive" title="' . $txt['pmx_status_inactiv']) . ' - ' . $txt['pmx_status_change'] . '" onclick="pToggleArtStatus(this,' . $article['id'] . ',\'active\')"></div>
								</div>';
    // functions row
    echo '
								<div class="pmx_tbl_tdgrid">
									<div class="pmx_clickrow pmx_pgedit" title="' . $txt['pmx_edit_article'] . '" onclick="FormFunc(\'edit_article\', \'' . $article['id'] . '\')"></div>
									<div class="pmx_clickrow pmx_grpacs" title="' . $txt['pmx_chg_articleaccess'] . '" onclick="pmxSetAcs(\'' . $article['id'] . '\')"></div>
									<div class="pmx_clickrow' . (allowPmx('pmx_admin, pmx_articles') || allowPmx('pmx_create') && $article['owner'] == $user_info['id'] ? ' pmx_pgclone" title="' . $txt['pmx_clone_article'] . '" onclick="pmxSetArtClone(\'' . $article['id'] . '\')"' : '"') . '></div>
									<div class="pmx_clickrow' . (allowPmx('pmx_admin, pmx_articles') || allowPmx('pmx_create') && $article['owner'] == $user_info['id'] ? ' pmx_pgdelete" title="' . $txt['pmx_delete_article'] . '" onclick="pmxSetArtDelete(\'' . $article['id'] . '\')"' : '"') . '></div>
								</div>
							</div>';
}