Hi all,
we have built an experimental social network site based on ELGG 0.6 at http://calumet.unibo.it and we believe the concept behind this software is the most important one these days.
Unfortunately the more we try getting the grips with the software, the more we get stuck in a sort of dumb behaviour, which I would like to outline here.
In today's specific case, I am trying to put a text in for the Terms & Conditions to use the website.
By looking at the URL when I click on "Terms and Conditions", I see the file is
content/terms.php
which essentially has just one line of code inside:
echo templates_page_draw( array(
sprintf(gettext("%s Terms & Conditions"),sitename),
templates_draw(array(
'contents' => $the_content,
'name' => sprintf(gettext("%s Terms & Conditions"),sitename),
'context' => 'contentholder'
)
)
)
);
Okay.
Now, after verifying that $the_content has some value in it, the page shows a standard page with absolutely no content. It seems there is no way to se whym nor to troubleshoot this kind of problems.
In hundreds of hours developing on ELGG I have been stuck in this situation hundreds of times: you get no content and there's absolutely no hint about where the problem is.
Is there any way to see what I am missing? If the values I specified in the call to template_draw() are wrong, is there any way to see it?
I feel this is a key issue in designing a system that's likely to be open to modifications.
This do-all function, template_draw, is making us loose any chance of backtracking execution flow, it seems there is no way of understanding what the system is expecting me to pass as parameters, no way of understanding how to fix things.
We developers make mistakes and there have to be a way to see what the system is "thinking", if there is some parameter missing or wrong, we need to figure it out.
Is there any way to get "the system by the balls" and understand why there's no output in this and similar cases?
Any link to some documentation explaining how the units/mods/content are structured and interlinked would be of great help, I have visited the doc WIKI and eventually got lost without finding an architecture overview.
Thanks in advance for any help you might give,