function recurse_pages($pages, $spaces = 0, $layoutsBlocks = [], $pageWidgets = [], $pagesWidgets = [])
{
    $data = '';
    foreach ($pages as $page) {
        // Блок
        $currentBlock = array_get($pageWidgets, $page['id'] . '.0');
        $currentPosition = array_get($pageWidgets, $page['id'] . '.1');
        $data .= '<tr data-id="' . $page['id'] . '" data-parent-id="' . $page['parent_id'] . '">';
        $data .= '<td>';
        if (!empty($page['childs'])) {
            $data .= '<div class="input-group">';
        }
        $data .= Form::select('blocks[' . $page['id'] . '][block]', [], $currentBlock, ['class' => 'widget-blocks form-control', 'data-layout' => $page['layout_file'], 'data-value' => $currentBlock]);
        if (!empty($page['childs'])) {
            $data .= "<div class=\"input-group-btn\">" . Form::button(NULL, ['data-icon' => 'level-down', 'class' => 'set_to_inner_pages btn btn-warning', 'title' => trans('widgets::core.button.select_childs')]) . '</div></div>';
        }
        $data .= '</td><td>';
        $data .= Form::text('blocks[' . $page['id'] . '][position]', (int) $currentPosition, ['maxlength' => 4, 'size' => 4, 'class' => 'form-control text-right widget-position']);
        $data .= '</td><td></td>';
        if (acl_check('page::edit')) {
            $data .= '<th>' . str_repeat("-&nbsp;", $spaces) . link_to_route('backend.page.edit', $page['title'], [$page['id']]) . '</th>';
        } else {
            $data .= '<th>' . str_repeat("-&nbsp;", $spaces) . $page['title'] . '</th>';
        }
        $data .= '</tr>';
        if (!empty($page['childs'])) {
            $data .= recurse_pages($page['childs'], $spaces + 5, $layoutsBlocks, $pageWidgets, $pagesWidgets);
        }
    }
    return $data;
}
Example #2
0
function recurse_pages($id = 0, $level = 0)
{
    $level++;
    $sql = "SELECT * FROM page_content WHERE parent = " . $id . " ORDER BY page_content_title ASC";
    $pageResults = dbQuery($sql);
    $count = 0;
    while ($pInfo = dbFetchArray($pageResults)) {
        $padding = 18 * $level;
        if ($level != 1) {
            $style = "style=\"padding-left:" . ($padding + 18) . "px; background-repeat:no-repeat; background-position:" . $padding . "px 0px; background-image:url(images/directory_arrow.gif);\"";
        } else {
            $class = "";
        }
        //SECURITY CHECK
        //ONLY SHOW PAGES THAT THE USER HAS ACCESS TOO
        $row = $count % 2;
        echo "<tr>\n";
        echo "<td  nowrap width=\"1\">\n";
        if ($pInfo['page_content_member']) {
            echo "<a href=\"javascript:void(0);\" title=\"Membership Required\"><img src=\"images/icons/lock_16x16.gif\" border=\"0\"><a>";
        }
        echo "</td>\n";
        echo "<td nowrap width\"1\">" . date('m/d/Y', $pInfo['page_content_publish_date']) . "</td>\n";
        echo "<td " . $style . "><a href=\"" . PAGE_MANAGE . "?action=edit&section=webpage&id=" . $pInfo['page_content_id'] . "\">" . output($pInfo['page_content_title']) . "</a></td>\n";
        echo "<td nowrap width\"1\">";
        if ($pInfo['page_content_status'] == 'pending') {
            echo "<span class=\"textPending\">Pending</span>";
        } else {
            if ($pInfo['page_content_status'] == 'published') {
                echo "<span class=\"textActive\">Published</span>";
            } else {
                echo "<span class=\"textInactive\">Unpublished</span>";
            }
        }
        echo "</td>\n";
        echo "<td nowrap width\"1\">\n";
        echo "<span class=\"smallText\"><abbr title=\"by " . getAuthor($pInfo['page_content_author']) . "\" style=\"margin:2px;\">Created: " . date('m/d/y g:i a', $pInfo['page_content_added']) . " </abbr></span>\n";
        //check to see if this page has been edited
        //display
        $modifiedResults = dbQuery('SELECT * FROM page_content_log WHERE page_content_id = ' . $pInfo['page_content_id'] . ' LIMIT 1');
        if (dbNumRows($modifiedResults)) {
            $m = dbFetchArray($modifiedResults);
            echo "<br>";
            echo "<span class=\"smallText\" style=\"font-style:italic;\"><abbr style=\"margin:2px;\" title=\"by " . getAuthor($m['user_id']) . "\">Last Modified: " . date('m/d/y g:i a', $m['page_content_log_timestamp']) . "</abbr></span>";
        }
        echo "</td>\n";
        echo "<td align=\"right\" >";
        if ($level == 1) {
            echo "<a class=\"table_addsubpage_link\" href=\"" . PAGE_PUBLISH . "?section=webpage&parent=" . $pInfo['page_content_id'] . "\" title=\"Add Sub Page\">Add Subpage</a>";
            echo " ";
        }
        if (user_has_permission('banners')) {
            //echo "<a class=\"table_banner_link\" href=\"".PAGE_MANAGE."?action=banners&section=webpage&id=".$pInfo['page_content_id']."\" title=\"Add Banner\">Advert</a>\n";
            //echo " ";
        }
        if (user_has_permission('content') && user_has_page_permissions($pInfo['page_content_id'])) {
            echo "<a class=\"table_edit_link\" href=\"" . PAGE_MANAGE . "?action=edit&section=webpage&id=" . $pInfo['page_content_id'] . "\" title=\"Edit " . output($pInfo['page_content_title']) . "\">Edit</a>\n";
            echo " ";
        }
        if (user_has_permission('admin')) {
            echo "<a class=\"table_delete_link\" href=\"" . PAGE_MANAGE . "?action=delete&section=webpage&id=" . $pInfo['page_content_id'] . "\" title=\"Delete " . output($pInfo['page_content_title']) . "\" onclick=\"return confirm('Are you sure you want to delete this page? THIS IS NOT UNDOABLE');\">Delete</a>\n";
        }
        echo "</td>\n";
        echo "</tr>\n";
        recurse_pages($pInfo['page_content_id'], $level);
        $count++;
    }
}
Example #3
0
function recurse_pages($pages, $spaces = 0, $layouts_blocks = array(), $page_widgets = array(), $pages_widgets = array())
{
    $data = '';
    foreach ($pages as $page) {
        // Блок
        $current_block = Arr::path($page_widgets, $page['id'] . '.0');
        $current_position = Arr::path($page_widgets, $page['id'] . '.1');
        $data .= '<tr data-id="' . $page['id'] . '" data-parent-id="' . $page['parent_id'] . '">';
        $data .= '<td>';
        if (!empty($page['childs'])) {
            $data .= '<div class="input-group">';
        }
        $data .= Form::hidden('blocks[' . $page['id'] . '][name]', $current_block, array('class' => 'widget-blocks form-control', 'data-layout' => $page['layout_file']));
        if (!empty($page['childs'])) {
            $data .= "<div class=\"input-group-btn\">" . Form::button(NULL, UI::icon('level-down'), array('class' => 'set_to_inner_pages btn', 'title' => __('Select to child pages'))) . '</div></div>';
        }
        $data .= '</td><td>';
        $data .= Form::input('blocks[' . $page['id'] . '][position]', (int) $current_position, array('maxlength' => 4, 'size' => 4, 'class' => 'form-control text-right widget-position'));
        $data .= '</td><td></td>';
        if (Acl::check('page.edit')) {
            $data .= '<th>' . str_repeat("-&nbsp;", $spaces) . HTML::anchor(Route::get('backend')->uri(array('controller' => 'page', 'action' => 'edit', 'id' => $page['id'])), $page['title']) . '</th>';
        } else {
            $data .= '<th>' . str_repeat("-&nbsp;", $spaces) . $page['title'] . '</th>';
        }
        $data .= '</tr>';
        if (!empty($page['childs'])) {
            $data .= recurse_pages($page['childs'], $spaces + 5, $layouts_blocks, $page_widgets, $pages_widgets);
        }
    }
    return $data;
}
Example #4
0
			                </tr>
			              </table></td>
			            </tr>
                        <? } ?>
			          </table>
				      <table border="0" cellspacing="0" width="100%" cellpadding="5" class="stripeTable">
				        <tr >
				          <td class="tableRowHeader" ><input type="checkbox" name="checkAll" id="checkAll" /></td>
				          <td class="tableRowHeader"  align="left">Publish Date</td>
                          <td class="tableRowHeader" align="left">Title</td>
				          <td class="tableRowHeader"  align="left">Status</td>
				          <td class="tableRowHeader"  align="left">&nbsp;</td>
				          <td class="tableRowHeader"  align="left">&nbsp;</td>
			            </tr>
                        <?
						recurse_pages();
						?>
		            </table>
                </form>
                </td>
			  </tr>
  			</table>
                  <?
			break;
		}
	break;
	
	}
?>

</div>