Hallo Liebe Gemeinde,
ich habe ein Problem, und zwar gibt es 2 Bereiche, Bereich 'Aktuelles' und Bereich 'Projekte', in jedem dieser beiden Bereich sind Projekte aufgelistet, klickt man bsp. auf ein Projekt vom Bereich 'Aktuelles' kommt man (wie auch beim Klick auf ein Projekt unter 'Projekt') auf die Beschreibung des Projekts, um das ganze bequem zu handhaben gibt es ein "Vorheriges"- und ein "Nächstes"-Button.
Schön und gut, das ganze wird mit Zend gehandhabt, habe nur leider keine Erfahrung bisher mit Zend und hoffe daher auf Eure Hilfe.
Klickt man also auf einen der beiden genannten Buttons kommt man zum nächsten Projekt, jedoch nur zu dem, welches sich in dem entsprechenden Bereich befindet (unter Projekte befinden sich alle, also auch jene die sich im Bereich 'Aktuelles' tummeln, der Link ist ebenfalls derselbe), und das ist das Problem, es sollte eigentlich so sein, dass es beim Klick egal in welche Richtung sich das nächste Projekt aus dem Bereich 'Projekte' bezieht, nehme ich die Sessions raus, spielt er ganz verrückt und macht was er will....
Hier mal eine entsprechende Datei (view.phtml):
Und hier noch die andere Datei (ProjectsController.php):
Vielen Dank schonmal im Voraus
ich habe ein Problem, und zwar gibt es 2 Bereiche, Bereich 'Aktuelles' und Bereich 'Projekte', in jedem dieser beiden Bereich sind Projekte aufgelistet, klickt man bsp. auf ein Projekt vom Bereich 'Aktuelles' kommt man (wie auch beim Klick auf ein Projekt unter 'Projekt') auf die Beschreibung des Projekts, um das ganze bequem zu handhaben gibt es ein "Vorheriges"- und ein "Nächstes"-Button.
Schön und gut, das ganze wird mit Zend gehandhabt, habe nur leider keine Erfahrung bisher mit Zend und hoffe daher auf Eure Hilfe.
Klickt man also auf einen der beiden genannten Buttons kommt man zum nächsten Projekt, jedoch nur zu dem, welches sich in dem entsprechenden Bereich befindet (unter Projekte befinden sich alle, also auch jene die sich im Bereich 'Aktuelles' tummeln, der Link ist ebenfalls derselbe), und das ist das Problem, es sollte eigentlich so sein, dass es beim Klick egal in welche Richtung sich das nächste Projekt aus dem Bereich 'Projekte' bezieht, nehme ich die Sessions raus, spielt er ganz verrückt und macht was er will....
Hier mal eine entsprechende Datei (view.phtml):
PHP-Code:
<?php
$this->placeholder ( 'css' )->set ( 'projects' );
$project = $this->project;
if ($project != NULL) {
$backAction = $project->finished == 'yes' ? array ('controller' => 'project', 'action' => 'index' ) : array ('controller' => 'index', 'action' => 'index' );
$from_session = new Zend_Session_Namespace ( 'FROM' );
if ($from_session->from == 'aktuell') {
$back_link = array('controller' => 'index', 'action' => 'index');
} else {
$back_link = array('controller' => 'project', 'action' => 'index');
}
$submenu = '<a href="' . $this->url ($back_link, null, true ) . '">< zurück</a>'; // <span class="grey">' . $project->project . '</span>';
$this->placeholder ( 'submenu' )->set ( $submenu );
$project_menu = 'Projekt: ';
$project_menu .= isset($this->lastID) ? '<a href="' . $this->url ( array('controller' => 'project', 'action' => 'view', 'ID' => $this->lastID), null, true ) . '">< vorheriges</a> ' : null ;
$project_menu .= isset($this->nextID) && isset($this->lastID) ? ' ' : null;
$project_menu .= isset($this->nextID) ? '<a href="' . $this->url ( array('controller' => 'project', 'action' => 'view', 'ID' => $this->nextID), null, true ) . '">nächstes ></a>' : null ;
$this->placeholder ( 'project_menu' )->set ( $project_menu );
$project_images = $this->project_images;
$link_numbers = '<a href="javascript: void(0);" onclick="toggle_lower();" ><</a> ';
$images = '';
$i = 1;
$opacity = 0;
foreach ( $project_images as $image ) {
$images .= '<div id="image_container_' . $i . '" style="position:absolute; opacity: ' . $opacity . ';"><img id="image' . $i . '" src="' . Zend_Controller_Front::getInstance ()->getBaseUrl () . '/images/projects/' . $project->ID . '_' . $image->images_ID . '.png" /></div>';
$link_numbers .= '<a href="javascript: void(0);" onclick="toggle(' . $i . ');" id="image_link_' . $i . '">' . $i . '</a> ';
$i ++;
$opacity = 0;
}
$link_numbers .= '<a href="javascript: void(0);" onclick="toggle_higher();" >></a>';
$date = split ( '-', $project->date );
?>
PHP-Code:
$projects = new ProjectsModel ( );
$projects = $projects->fetchAll ( 'finished = \'yes\'', 'date DESC', 0, 60 );
$this->view->projects = $projects;
$from_session = new Zend_Session_Namespace ( 'FROM' );
$from_session->from = 'finished';
}
public function viewAction() {
$project = new ProjectsModel ( );
$projectID = $this->getRequest ()->getParam ( 'ID', 0 );
$this->view->project = $project->fetchRow ( 'ID = ' . $projectID );
$project_images = new ProjectsImagesModel ( );
$this->view->project_images = $project_images->fetchAll ( 'projects_ID = ' . $projectID, 'sortierung ASC' );
/* if ($this->view->project->finished == 'yes') {
$where = 'finished = \'yes\'';
} elseif ($this->view->project->aktuell == 'yes') {
$where = 'aktuell = \'yes\'';
}*/
$from_session = new Zend_Session_Namespace ( 'FROM' );
$where = $from_session->from . ' = "yes"';
$projects = $project->fetchAll ( $where, 'date DESC', 0, 60 );
unset($current);
$last = null;
$next = null;
foreach ( $projects as $row ) {
if ($projectID == $row->ID) {
$current = $row->ID;
} else {
if (isset ( $current ) && $projectID != $row->ID) {
$last = $row->ID;
break;
}
$next = $row->ID;
}
}
$this->view->nextID = $next;
$this->view->lastID = $last;
}
}

Kommentar