{$content} IPSCONTENT; return $return; } function rows( $table, $headers, $rows ) { $return = ''; $return .= <<
IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'no_results', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<rootButtons['add'] ) ) ): $return .= <<rootButtons['add']['link'] ) ): $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<rootButtons['add']['class'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<rootButtons['add']['data'] ) ): $return .= <<rootButtons['add']['data'] as $k => $v ): $return .= <<rootButtons['add']['hotkey'] ) ): $return .= << IPSCONTENT; $val = "{$table->rootButtons['add']['title']}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; else: $return .= << $r ): $return .= << IPSCONTENT; foreach ( $r as $k => $v ): $return .= <<mainColumn ?: $table->quickSearch ) OR $k === 'o_invoice' ): $return .= <<mainColumn ): $return .= <<rowClasses[ $k ] ) ): $return .= <<rowClasses[ $k ] ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<mainColumn && $k !== '_buttons' && $k !== 'photo' ): $return .= <<langPrefix}{$k}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; if ( $k === '_buttons' ): $return .= <<getTemplate( "global", "core" )->controlStrip( $v ); $return .= << IPSCONTENT; endforeach; $return .= << IPSCONTENT; endforeach; $return .= << IPSCONTENT; if ( isset( $headers['_buttons'] ) ): $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->buttons( $table->rootButtons, '' ); endif; $return .= << IPSCONTENT; if ( $quickSearch !== NULL or $table->advancedSearch or !empty( $table->filters ) ): $return .= <<
IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->pagination( $table->baseUrl, $table->pages, $table->page, $table->limit ); $return .= <<
IPSCONTENT; /* $return .= <<
  • $table->sortBy, 'sortdirection' => $table->sortDirection, 'filter' => '' ) )->setPage( 'page', 1 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'all', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<
  • IPSCONTENT; foreach ( $table->filters as $k => $q ): $return .= << $k, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection) )->setPage( 'page', 1 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; $val = "{$k}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endforeach; $return .= << --> IPSCONTENT; */ $return .= << IPSCONTENT; if ( $quickSearch !== NULL ): $return .= << IPSCONTENT; if ( $table->advancedSearch ): $return .= << '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'search', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; elseif ( $table->advancedSearch ): $return .= << '1', 'filter' => $table->filter, 'sortby' => $table->sortBy, 'sortdirection' => $table->sortDirection ) ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'search', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= <<
    IPSCONTENT; endif; $return .= <<{$table->extraHtml}
    IPSCONTENT; foreach ( $headers as $k => $header ): $return .= <<sortBy, mb_strrpos( $table->sortBy, ',' ) + 1 ) ) : $table->sortBy ) ): $return .= <<sortDirection == 'asc' ): $return .= <<classes ) ): $return .= <<classes[ $header ], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<noSort ) ): $return .= <<sortBy and $header == ( mb_strrpos( $table->sortBy, ',' ) !== FALSE ? trim( mb_substr( $table->sortBy, mb_strrpos( $table->sortBy, ',' ) + 1 ) ) : $table->sortBy ) ): $return .= <<widths[ $header ] ) ): $return .= << IPSCONTENT; if ( !\in_array( $header, $table->noSort ) ): $return .= <<sortBy and $table->sortDirection == 'desc' ): $return .= << $table->filter, 'sortby' => $header, 'sortdirection' => 'asc' ) ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; else: $return .= << $table->filter, 'sortby' => $header, 'sortdirection' => 'desc' ) ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; endif; $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; else: $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; elseif ( $header === '_buttons' ): $return .= <<  IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= $table->rowsTemplate[0]->{$table->rowsTemplate[1]}( $table, $headers, $rows ); $return .= <<
    IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->pagination( $table->baseUrl, $table->pages, $table->page, $table->limit ); $return .= <<
    IPSCONTENT; return $return; }}