New to Concrete5

Permalink
I'm new to Conrete5 ..but I'm loving it so far. I have a few questions I haven't been able to figure out on my own.

1. Where is the Dashboard navigation located? (IE: Sitemap, File Manager, Reports, etc). I'd like to add a few links there and maybe take some away.

2. If I would like to make a simple news section of my site is there any way of setting up a page like thishttp://demo.controlfreakcms.com/demo/index.cfm/news/... where the news stories get listed by date with a thumbnail of the image on the next page next to the story? I'm assuming my choices are either download easynews or maybe post a new page and use the blog layout.. but I'm not sure either of those will give me something exactly like my example and that from my experience is a pretty standard way of displaying news and press releases.

3. Is there a way to make page titles display automatically without having to add an auto-nav above each page?

That's really it for now.. I can't believe I've only been using Concrete5 for less than a week now and I only have three remaining questions.

Any help would be greatly appreciated.

Thank you!

getjoel
 
dwayneparton replied on at Permalink Reply
dwayneparton
1. I don't know that I understand what you are trying to do here.

2. Yeah you can do something like this pretty easy with the page list block. Remo has a great tutorial on this. One approach would be to create a page type called News and add a custom attribute to it called thumbnail. Then you would need to add the page list block to the mother page. You can create a template to show your page title, thumbnail, and description attributes. I know that probably doesn't help much but below is Remos tutorial. It's really easy to follow.

Tutorial -http://www.codeblog.ch/2009/03/concrete5-templates/...
Page Type Documentation -http://www.concrete5.org/documentation/general-topics/page-types/...

3. If you want to display a page title you can add this to your template:
<h1><?php echo $c->getCollectionName() ?></h1>

*You don't have to use h1, that is just how I handle it. Wrap it how ever you like :)


Hope that helps some.
getjoel replied on at Permalink Reply 1 Attachment
getjoel
Thanks Dwayne!

To answer your first question.. I'd like to hide the marketplace link and the pages and themes link from the Dashboard for most of my clients.. and I might want to add a few links at some point.

I also need to know what the databased links are for areas in the dashboard so I can add icons to my Dashboard like the attached file.

Essentially I'd just like to customize the dashboard and would like to know where those pages lie.. : )
jeckerman replied on at Permalink Reply
jeckerman
Hi Joel,

#1:
The dashboard are mostly "single pages". Here is a good tutorial to get familiar with adding one of your own:http://www.concrete5.org/documentation/how-tos/developers/build-a-s...

To edit the default options in dashboard, copy /concrete/single_pages/dashboard/view.php
to
/single_pages/dashboard/view.php

And go to town.

The tutorial with the FAQ example link above, will be the most helpful.

#2: The tutorial above should help you with this one as well for the news content.

#3:
To add the page titles, you can edit the page type (say wide.php) and then place
<? print $c->getCollectionName(); ?>


Where you want the page title to display.

I wrote this sorta fast while I'm doing a project tonight, so if anything doesn't make sense, just hollar.

- Josh
jeckerman replied on at Permalink Reply
jeckerman
Ah! And shame on me for using <? and not <?php... its getting late. :-)

- Josh
getjoel replied on at Permalink Reply
getjoel
Thanks Josh.. I'll definitely check that out.. but if I'm not mistaken that file you mentioned only gives me the ability to edit the stuff in the main body.. Not the links going down the left hand side of the dashboard.. correct?

Thanks again!
jeckerman replied on at Permalink Reply
jeckerman
No problem. To edit those, you need to dig into the controller for the dashboard, under /concrete/controllers/dashboard/controller.php

You'll see the various module folders for the left hand links (scrapbook, pages, reports, etc..)

- Josh
jeckerman replied on at Permalink Reply
jeckerman
Or better yet in the dashboard, click on the Sitemap, and check to display 'system pages', then you can just change the permissions so only you the "super admin" can see them, and not the other admins.

- Josh
getjoel replied on at Permalink Reply
getjoel
Dude.. You freaken rock! Thank you.. I did not know about the system pages.. Very cool feature.

Now I just need to be able to link the icons to the right pages in that side navigation. I opened the page you told me to and don't see any references to any of that pages in that navigation.

You said /concrete/controllers/dashboard/controller.php right?

I opened that page and this is all I saw..

<?php
defined('C5_EXECUTE') or die("Access Denied.");
class DashboardController extends Controller {

public function view() {
$this->set('latest_version', Config::get('APP_VERSION_LATEST'));
Loader::model('dashboard/homepage');
$dh = new DashboardHomepageView();
$modules = $dh->getModules();
$this->set('dh', $dh);
$this->set('modules', $modules);
$html = Loader::helper('html');
$this->addHeaderItem($html->javascript('swfobject.js'));
}

public function module($module = null, $task = null) {
Loader::model('dashboard/homepage');
$dh = new DashboardHomepageView();

$mod = $dh->getByHandle($module);
if ($mod->pkgID > 0) {
$pkg = Package::getByID($mod->pkgID);
$class = Loader::dashboardModuleController($mod->dbhModule, $pkg);
} else {
$class = Loader::dashboardModuleController($mod->dbhModule);
}

$args = func_get_args();

array_shift($args);
array_shift($args); // no that's not a misprint

if (method_exists($class, $task)) {
try {
$resp = call_user_func_array(array($class, $task), $args);
if ($resp) {
$this->set('message', $resp);
}
} catch(Exception $e) {
$this->set('error', $e);
}
}

print $this->view();
}

}

?>
jeckerman replied on at Permalink Reply
jeckerman
No problem at all, glad to help. Concrete5 is what rescued me from Drupal. :-)

That controller is one part of it, also check out /concrete/themes/core/dashboard.php here it loops through the dashboard pages and displays them, sets the clicked one active, etc..

I know I'm being somewhat general here, so hopefully this is helping a bit.

- Josh
getjoel replied on at Permalink Reply
getjoel
Question for you.. Your strip of code for the page titles works great.. Thanks! But my question is this.. I just discovered how cool it is to simply give people a one column template and let them add their own columns using the ADD LAYOUT tool. The problem with it is that the page title should really show up above the main column.. Not the left column. So if I add your strip of code..

<h2><?php echo $c->getCollectionName() ?></H2>

above the main div tag..

<?php
$a = new Area('Main');
$a->display($c);

?>

The page title shows up left justified and looks pretty bad..

Is there any way around this? The only thing I can think of is to put a small three column template with the page title above it above the main div tag.. but that won't look right on other layouts.. Also wondering if there's a way to have a different page title than the name of the page.. (IE: on the system I'm using now.. you can choose a page tile and a navigation title. ) This is comes in handy on things like the homepage where you don't want HOME showing up above the copy.. but you want the button in then navigation to say home..
12345j replied on at Permalink Reply
12345j
it splits the parent div, do if you put it in a different div the layout should work.
getjoel replied on at Permalink Reply
getjoel
Not for me.. I put it above the main body tag that comes out of the box with Blue Host.. and this is what I'm seeing.. http://www.getcontrolfreak.com/demo/index.php?cID=1....
12345j replied on at Permalink Best Answer Reply
12345j
yeah- it will be default to float left. why are you using <pagetitles>? if you set that to <div class="pagetitle"> and then in your css do something like .pagetitles {margin-left: 150px;} it should go to the right.
getjoel replied on at Permalink Reply
getjoel
Yeah.. I thought about that.. but then if a client sets up a page without three columns it won't look right.

I have page titles because I can't leave it up to my clients to remember to put them in their own pages.. and without them the user gets lost. : (
12345j replied on at Permalink Reply
12345j
yeah, but <pagetitle> isn't an html tag- at least I don't think so.
getjoel replied on at Permalink Reply
getjoel
What does that mean? I don't need it to have a title called page title.. I'm just used to a system where the page title and navigation title are databased and integrated into the design so the user doesn't have to think about it.