Search

Is there any way we could have the option to make the admin screen for /blueprints/pages/ display in a hierarchical fashion (for readability/scanability purposes)? In other words, to have all children grouped below their parents, perhaps indented or otherwise set apart visually? As it stands now, it's a bit difficult to scan the list and usability will progressively worsen as the number of pages increases. There's no built-in sorting mechanism on the column headings, either, but I assume this is intentional.

There's no built-in sorting mechanism on the column headings, either, but I assume this is intentional.

You cannot sort the table because the sort order represents the order of the pages in your navigation data source.

You cannot sort the table because the sort order represents the order of the pages in your navigation data source.

Ah, yes. That makes sense.

What about the hierarchy issue? The pages that have parent pages would not appear in the navigation menu anyway, right? Is there a way to make the admin display more easily scannable by grouping the child pages under their parents? Or would this really put a cramp in things for some other reason?

The pages that have parent pages would not appear in the navigation menu anyway, right?

Wrong, and their lies one of the problems.

I place any child pages underneath their parent page. Also, I don't scan page titles but rather the URLs which gives a clear picture.

Parent pages its children are all on the Navigation DS unless filtering is applied.

Hey Allen,

Just me or is the symbol operation of union and intersection backwards?

In logic class an OR, or UNION, is:

A + B (A OR B)

The intersection is a bit tricky but how about:

A n B (A AND B)
A . B
A , B (meaning, both .. this is most familiar with {A,B} but the {} would be too much for the regex I guess)

I guess I'm being anal. But at least wikipedia agrees on the union (disjoint union) symbol.

Here, A and B represent values not sets of records which match those values, so you cannot talk about union and intersection in the same way. The intersection operation is not defined on values, so "," means something different.

  • A: Require a match for A
  • A + B: Require a match for A union B (both)
  • A , B: Union(entries matching A, entries matching B)

The "," operator acts like a "split" statement, saying "evaluate parts separately, then join". So effectively both operators are union, but in different contexts: one for values, the other for evaluated value matches.

I see. The keyword intersection must have thrown me off then.

I place any child pages underneath their parent page. Also, I don't scan page titles but rather the URLs which gives a clear picture.

Yes, I will do that as well. I just thought that a little indentation would improve readability. I wasn't questioning the actual data structure, only the visual display. I guess I assumed that something like this could be accomplished with a bit of CSS.

But if it's not something that's in the cards, I understand. Thanks for your replies.

Hey Crystal, sorry for my delayed response to your question: Child page organisation/indentation is not on the cards because it conflicts with page order (for navigation DSs). We did in fact want this for the 1.0 release, but in the end decided there was no good way to implement it. Of course, if anyone has ideas on the matter, please feel free to suggest them.

Have you thought about how reordering would work if child pages were indented? By design, Symphony lets you reorder children independently of their parent, and this is the desired behaviour. Indendation would require that you can only order pages with respect to their siblings, or would otherwise employ some confusing mechanism to denote either order or structure.

Unfortunately, I just don't think it's the right place for this list to display a nested structure. A hierarchical view could be put on a separate page (perhaps an extension idea), but a solution which combines these two goes against our goal of keeping the core as simple and minimal as possible.

Scott,

I'm afraid my brain might be on the verge of meltdown at this point. I think I may have to put some of my development on ice for a few weeks while I work on other projects. I'm not technically a developer, really, more of a designer and coder, at least where Symphony is concerned. Everything I know about PHP/SQL is self-taught in an as needed fashion, so my input may prove to be less than useful.

Unfortunately, I wasn't thinking necessarily about the back-end problems as much as I should have been. The way my mind works is very visual, so the first thing I notice is how something looks, then I figure out how to fix it from a technical perspective. I design first, then create the code to display the design. I suspect the way development works might be almost the opposite of that. For all I know, you may very well be constrained by having to create your design around the parameters of what the programming allows. I think that's where I sometimes run into trouble. I've been trying to reconcile the two approaches, but obviously, I still have work to do.

Thanks for your replies. I look forward to seeing how the final release turns out.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details