7 function GALLERY_LIST() {}
\r
9 function settemplate($template) {
\r
10 $this->template = & $template;
\r
13 function display($sortorder) {
\r
17 if(!$NPG_CONF['template']) $NPG_CONF['template'] = 1;
\r
19 $this->template = & new NPG_TEMPLATE($NPG_CONF['template']);
\r
20 //$this->template->readall();
\r
22 $template_header = $this->template->section['LIST_HEADER'];
\r
23 if($NPG_CONF['thumborlist']=='list')$template_body = $this->template->section['LIST_BODY'];
\r
24 if($NPG_CONF['thumborlist']=='thumb')$template_body = $this->template->section['LIST_THUM'];
\r
26 $template_footer = $this->template->section['LIST_FOOTER'];
\r
28 $actions = new LIST_ACTIONS();
\r
29 $parser = new PARSER($actions->getdefinedActions(),$actions);
\r
30 $actions->setparser($parser);
\r
33 $parser->parse($template_header);
\r
37 case 'title': $so = ' order by title ASC, albumid DESC'; break;
\r
38 case 'desc': $so = ' order by description ASC, albumid DESC'; break;
\r
39 case 'owner': $so = ' order by ownername ASC, albumid DESC'; break;
\r
40 case 'date': $so = ' order by modified DESC, albumid DESC'; break;
\r
41 case 'numb': $so = ' order by numberofimages DESC, albumid DESC'; break;
\r
43 case 'titlea': $so = ' order by title DESC, albumid DESC'; break;
\r
44 case 'desca': $so = ' order by description DESC, albumid DESC'; break;
\r
45 case 'ownera': $so = ' order by ownername DESC, albumid DESC'; break;
\r
46 case 'datea': $so = ' order by modified ASC, albumid DESC'; break;
\r
47 case 'numba': $so = ' order by numberofimages ASC, albumid DESC'; break;
\r
48 default : $so =''; break;
\r
51 $query = "select a.*, b.mname as ownername from ".sql_table('plug_gallery_album').' as a left join '.sql_table('member').' as b on a.ownerid=b.mnumber '.$so;
\r
52 $result = mysql_query($query);
\r
53 $albums = $gmember->getallowedalbums();
\r
54 $albumids = $gmember->getAllowedAlbumsids();
\r
56 while ($row = mysql_fetch_object($result)) {
\r
57 if(!$row->ownername) $row->ownername = 'guest';
\r
58 $actions->setCurrentRow($row);
\r
59 //if its public, show it
\r
60 //echo $row->albumid;
\r
61 if($row->publicalbum){
\r
62 $parser->parse($template_body);
\r
64 //if its not public, check if its in the array of allowed albums for this member
\r
65 elseif(@in_array($row->albumid,$albumids) ){
\r
66 $parser->parse($template_body);
\r
71 $parser->parse($template_footer);
\r
72 } //end of display function
\r
75 } //end of list class
\r
77 class LIST_ACTIONS extends BaseActions {
\r
78 var $CurrentRow; //query object
\r
82 function LIST_ACTIONS() {
\r
83 $this->BaseActions();
\r
87 function getdefinedActions() {
\r
91 'sortbydescription',
\r
97 'centeredtopmargin',
\r
112 function setParser(&$parser) {$this->parser =& $parser; }
\r
113 function setCurrentRow(&$currentrow) { $this->CurrentRow =& $currentrow; }
\r
115 function parse_breadcrumb() {
\r
116 //$breadcrumb = getBreadcrumb(); echo $breadcrumb;
\r
117 echo __NPG_BREADCRUMB_GALLERY;
\r
119 function parse_sortbytitle() {
\r
120 $so = requestvar('sort');
\r
121 if($so == 'title') $so = 'titlea'; else $so = 'title';
\r
122 echo generateLink('list', $so);
\r
124 function parse_sortbydescription() {
\r
125 $so = requestvar('sort');
\r
126 if($so == 'desc') $so = 'desca'; else $so = 'desc';
\r
127 echo generateLink('list', $so);
\r
129 function parse_sortbyowner() {
\r
130 $so = requestvar('sort');
\r
131 if($so == 'owner') $so = 'ownera'; else $so = 'owner';
\r
132 echo generateLink('list', $so);
\r
134 function parse_sortbymodified() {
\r
135 $so = requestvar('sort');
\r
136 if($so == 'date') $so = 'datea'; else $so = 'date';
\r
137 echo generateLink('list', $so);
\r
139 function parse_sortbynumber() {
\r
140 $so = requestvar('sort');
\r
141 if($so == 'numb') $so = 'numba'; else $so = 'numb';
\r
142 echo generateLink('list', $so);
\r
145 function parse_albumthumbnail() {
\r
147 echo $CONF['IndexURL'].$this->CurrentRow->thumbnail; }
\r
148 function parse_centeredtopmargin($height,$adjustment) {
\r
149 global $NP_BASE_DIR;
\r
150 $image_size = getimagesize($NP_BASE_DIR.$this->CurrentRow->thumbnail);
\r
151 $topmargin = ((intval($height) - intval($image_size[1])) / 2) + intval($adjustment);
\r
152 echo 'margin-top: '.$topmargin.'px;';
\r
155 function parse_albumlink() {
\r
156 echo generateLink('album', $this->CurrentRow->albumid);
\r
158 function parse_title() {echo $this->CurrentRow->title; }
\r
159 function parse_description() {echo $this->CurrentRow->description; }
\r
160 function parse_ownerid() {echo $this->CurrentRow->ownerid; }
\r
161 function parse_ownername() {echo $this->CurrentRow->ownername; }
\r
162 function parse_modified($format = 'M j, h:i',$arg1 ='',$arg2='',$arg3='') {
\r
163 if($arg1) $arg1 = ','.$arg1;
\r
164 if($arg2) $arg2 = ','.$arg2;
\r
165 if($arg3) $arg3 = ','.$arg3;
\r
166 $format = $format . $arg1 . $arg2 . $arg3;
\r
167 $d = $this->CurrentRow->modified;
\r
168 $d = converttimestamp($d);
\r
169 $d = date($format,$d);
\r
172 function parse_numberofimages() {echo $this->CurrentRow->numberofimages; }
\r
174 function parse_addalbumlink() {$aa = generateLink('addAlbumF'); echo $aa;}
\r
175 function parse_addpictureslink() {$ap = generateLink('batchaddPictF'); echo $ap;}
\r
178 function parse_if($field, $name='', $value = '') {
\r
183 case 'canaddpicture':
\r
184 $condition = $gmember->canAddPicture();
\r
186 case 'canaddalbum':
\r
187 $condition = $gmember->canAddAlbum();
\r
193 $this->_addIfCondition($condition);
\r