Rev 419 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php/** phpMyEdit - instant MySQL table editor and code generator** extensions/phpMyEdit-slide.class.php - slide show extension for phpMyEdit* ____________________________________________________________** Developed by Ondrej Jombik <nepto@platon.sk>* Copyright (c) 2002-2006 Platon Group, http://platon.sk/* All rights reserved.** See README file for more information about this software.* See COPYING file for license information.** Download the latest version from* http://platon.sk/projects/phpMyEdit/*//* $Platon: phpMyEdit/extensions/phpMyEdit-slide.class.php,v 1.10 2006-01-22 21:44:24 nepto Exp $ *//** Coding elapsed time: from 8:30 to 10:30 at 30th October 2002* with heavy patching phpMyEdit core class.** Music used: E-Type (Campione, This is the Way and others)*/require_once dirname(__FILE__).'/../phpMyEdit.class.php';class phpMyEdit_slide extends phpMyEdit{// Extension options arrayvar $ext;function phpMyEdit_slide($opts) /* {{{ */{$execute = 1;isset($opts['execute']) && $execute = $opts['execute'];$opts['execute'] = 0;parent::phpMyEdit($opts);$this->ext = $opts['ext'];$execute && $this->execute($opts);} /* }}} */function display_record_buttons() /* {{{ */{// TODO: classify this table and cellsecho '<table border=0 cellpadding=0 cellspacing=0 width="100%" style="border:0;padding:0;">';echo '<tr><td align=left style="text-align:left;border:0;padding:0;" nowrap>' . "\n";if ($this->change_operation()) {echo '<input type="submit" name="savechange" value="'.$this->labels['Save'].'" />'."\n";echo '<input type="submit" name="morechange" value="'.$this->labels['Apply'].'" />'."\n";echo '<input type="button" name="cancel" value="'.$this->labels['Cancel'].'" onClick="form.submit();" />'."\n";echo '<input type="hidden" name="rec_change" value="1">';} elseif ($this->view_operation()) {if ($this->change_enabled()) {echo '<input type="submit" name="operation" value="'.$this->labels['Change'].'" />'."\n";}echo '<input type="submit" name="cancel" value="'.$this->labels['Cancel'].'" />'."\n";}if (! $this->ext['prev_disable']) {$disabled = $this->ext['prev'] ? '' : ' disabled';echo '<input'.$disabled.' type="submit" name="'.ltrim($disabled).'prev" value="'.$this->labels['Prev'].'"> ';echo '<input type="hidden" name="rec_prev" value="'.$this->ext['prev'].'">';}if (! $this->ext['next_disable']) {$disabled = $this->ext['next'] ? '' : ' disabled';echo '<input'.$disabled.' type="submit" name="'.ltrim($disabled).'next" value="'.$this->labels['Next'].'">';echo '<input type="hidden" name="rec_next" value="'.$this->ext['next'].'">';}echo '</td></tr></table>'."\n";} /* }}} */function execute($opts) /* {{{ */{if ($this->get_cgi_var('rec_change')&& ($this->next_operation() || $this->prev_operation())) {$this->operation = $this->labels['Change'];}if (! $this->change_operation()) {$this->operation = $this->labels['View'];}if ($this->prev_operation()) {! $this->ext['prev_disabled'] && $this->rec = $this->get_cgi_var('rec_prev');$this->prev = '';}if ($this->next_operation()) {! $this->ext['next_disabled'] && $this->rec = $this->get_cgi_var('rec_next');$this->next = '';}if (! $this->rec) {$this->rec = $this->ext['rec'];}if (! $this->rec|| (! $this->ext['prev_disable'] && ! $this->ext['prev'])|| (! $this->ext['next_disable'] && ! $this->ext['next'])) {if ($this->connect() == false) {return false;}$query_parts = array('type' => 'select',// XXX FIXME - simplify query'select' => 'PMEtable0.'.$this->key,'from' => $this->get_SQL_join_clause(),'where' => $this->get_SQL_where_from_query_opts());// TODO: order by clausule according to default sort order options$res = $this->myquery($this->get_SQL_query($query_parts), __LINE__);$ids = array();while (($row = @mysql_fetch_array($res, MYSQL_NUM)) !== false) {$ids[] = $row[0];}@mysql_free_result($res);if ($this->rec) {$idx = array_search($this->rec, $ids);$idx === false && $idx = 0;} else {$idx = 0;}$this->rec = $ids[$idx];! $this->ext['prev'] && $this->ext['prev'] = $ids[$idx - 1];! $this->ext['next'] && $this->ext['next'] = $ids[$idx + 1];}$this->recreate_fdd();$this->recreate_displayed();parent::execute();} /* }}} */}/* Modeline for ViM {{{* vim:set ts=4:* vim600:fdm=marker fdl=0 fdc=0:* }}} */?>