Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   цикличные маркеры в шаблоне расширения (http://forum.typo3.ru/showthread.php?t=10185)

Anlov 20.06.2012 18:05

цикличные маркеры в шаблоне расширения
 
Привет.
Есть проблема: пишу расширение, в котором должны показываться курсы и для каждого курса - расписание.
Код HTML:

<!-- ###LISTVIEW### -->
        <table class="tbl_seminar_detail_view">
                <!-- ###SEMINAR### -->
                <tr><td colspan="5">###LINK###</td></tr>
                <tr valign="top" align="left">
                        <th class="th_seminar_number_label">###LABEL_NUMBERS###</th>
                        <th class="th_seminar_location_label">###LABEL_LOCATIONS###</th>
                        <th class="th_seminar_date_label">###LABEL_DATES###</th>
                        <th class="th_seminar_status_label">###LABEL_STATUS###</th>
                        <th class="th_seminar_buchen_label">###LABEL_BUCHEN###</th>
                </tr>
               
                <!-- ###KURS### -->
                <tr valign="top">
                        <td class="td_kurs_number_value">###FIELD_NUMBERS###</td>
                        <td class="td_kurs_location_value">###FIELD_LOCATIONS###</td>
                        <td class="td_kurs_date_value">###FIELD_DATES###</td>
                        <td class="td_kurs_status_value">###FIELD_STATUS###</td>

                <!-- ###KURS### -->
                <!-- ###SEMINAR### -->
        </table>
<!-- ###LISTVIEW### -->

PHP код:

function main() {
$content .= $this->seminarList($seminar_nr);
}
function 
seminarList($number) {
$subpart $this->cObj->getSubpart($this->template,'###LISTVIEW###');
        
$seminar $this->cObj->getSubpart($subpart,'###SEMINAR###');
        
$kurs $this->cObj->getSubpart($subpart,'###KURS###');
}
...
здесь идет MYSQL QUERY для получения списка семинаров...
if(
$res) {
            
$list='';
            while(
$row=$GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
                
$markerArray['###LINK###']=$this->pi_linkTP(htmlentities($row['th_thema']),array($this->prefixId.'[topic_id]'=> $row['th_nr']));
                
$markerArray['###LABEL_NUMBERS###'] = $this->pi_getLL('label_numbers');
                
$markerArray['###LABEL_LOCATIONS###'] = $this->pi_getLL('label_locations');
                
$markerArray['###LABEL_DATES###'] = $this->pi_getLL('label_dates');
                
$markerArray['###LABEL_STATUS###'] = $this->pi_getLL('label_status');
                
...
здесь идет MYSQL QUERY для получения расписания для каждого семинара...
                if(
$res_ku) {
                    
$list_ku '';
                    while(
$row_ku $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res_ku)) {
                        
$markerArray['###FIELD_NUMBERS###'] = $row_ku['ku_nr'];
                        
$markerArray['###FIELD_LOCATIONS###'] = utf8_encode($row_ku['so_loc']);
                        
$markerArray['###FIELD_DATES###'] = $date_begin."-".$date_end;
                        
$markerArray['###FIELD_STATUS###'] = utf8_encode($row_ku['ku_status']);
                        
                        
$list_ku .= $this->cObj->substituteMarkerArrayCached($kurs,$markerArray);
                    }
                    
$subpartArray['###KURS###'] = $list_ku;
}
                
$list .= $this->cObj->substituteMarkerArrayCached($seminar,$markerArray);
            }
            
$subpartArray['###SEMINAR###']=$list;
        } 

        return 
$this->cObj->substituteMarkerArrayCached($subpart,$markerArray,$subpartArray,array()); 

на выходе получаю только одно занятие, или три, или вообще ни одного... короче, не выходит каменный цветок. помогайте, плиз.

Anlov 28.06.2012 12:23

не поверю, что никто расширений не пишет...

Valery Romanchev 28.06.2012 12:26

Цитата:

Сообщение от Anlov (Сообщение 34142)
не поверю, что никто расширений не пишет...

с маркерами врядли кто-то пишет
посмотрите экстеншен smarty или вариант разработки на extbase


Часовой пояс GMT +4, время: 19:34.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot