Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten Ansicht
  #1  
Alt 27.03.08, 14:43
Forum Stammgast
 
Registriert seit: 19.09.07
Beiträge: 160
Pfeil Seitenbrowser verbessern?

Hey Leute,

kann mir jemand helfen wie ich bei der cc_cbrowse Ext den Seitenbrowser verbessern kann? also es werden jetzt mit den vor und zurück schaltflächen alle seiten angezeigt - udn das ist nicht so schön.
kann man es irgendwie so machen, dass es so ungefähr wie hier im forum ist?
also z.B.: Seite 11 von 23 « Erste < 8 9 10 11 12 13 14 > Letzte »

ähnliches problem ist ja auch bei der tt_news.. da werden denn 7 sieten angezeigt, aber wenn man mehrere seiten hat kann man die zwar mit weiter erreichen aber es wirdn icht angezeigt auf welche seite man sich befindet...

jemand eine Idee? nen Code?

Gruß

Geändert von Silver (11.06.08 um 10:07 Uhr).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #2  
Alt 27.03.08, 19:12
Benutzerbild von robelix
Forum Stammgast
 
Registriert seit: 03.12.06
Beiträge: 169

Hab da code rumliegen, der genau sowas macht.

Ist eine aufgebohrte Version von dem aus der pibase - allerdings einer ziemlich Alten - 3.6 oder 3.7 glaub' ich - daher noch die hardcoded Table drin.

PHP-Code:
    function pi_xt_list_browseresults($showResultCount=0,$tableParams='')    {
        
// Initializing variables:
        
$this->pi_alwaysPrev 1;
        
$pointer=$this->piVars['pointer'];

        
$count=$this->internal['res_count'];
        
$results_at_a_time $this->internal['results_at_a_time'];
        
$maxPages $this->internal['maxPages'];

        
$nr_pages ceil($count/$results_at_a_time);

        
$pointer=intval($pointer);

        if (
$nr_pages <= $maxPages) {
            
$startPage 0;
            
$endPage $nr_pages;
        } else {
            if (
$pointer intval($maxPages/2)) {
                
$startPage 0;
                
$endPage $startPage $maxPages;
            } elseif (
$pointer >= $nr_pages-intval($maxPages/2) ) {
                
$endPage $nr_pages;
                
$startPage $endPage $maxPages;
            } else {
                
$startPage $pointer intval($maxPages/2);
                
$endPage $startPage $maxPages;
            }
        }

        
$links=array();

        
# nada if only one page
        
if ($count <= $results_at_a_time) {
            return 
'';
        }

        
// Make browse-table/links:
        # First
        
if ($this->pi_alwaysPrev>=0)    {
            if (
$pointer>0)    {
                
$links[]='
                    <td nowrap="nowrap"><p>'
.$this->pi_linkTP_keepPIvars$this->pi_getLL'pi_list_browseresults_first','<< First',TRUE ), array( 'pointer'=>'0'), $this->typolink_conf["useCacheHash"]).'</p></td>';
            } elseif (
$this->pi_alwaysPrev)    {
                
$links[]='
                    <td nowrap="nowrap"><p>'
.$this->pi_getLL('pi_list_browseresults_first','<< First',TRUE).'</p></td>';
            }
        }
        
# Prev
        
if ($this->pi_alwaysPrev>=0)    {
            if (
$pointer>0)    {
                
$links[]='
                    <td nowrap="nowrap"><p>'
.$this->pi_linkTP_keepPIvars($this->pi_getLL('pi_list_browseresults_prev','< Previous',TRUE),array('pointer'=>$pointer-),$this->typolink_conf["useCacheHash"]).'</p></td>';
            } elseif (
$this->pi_alwaysPrev)    {
                
$links[]='
                    <td nowrap="nowrap"><p>'
.$this->pi_getLL('pi_list_browseresults_prev','< Previous',TRUE).'</p></td>';
            }
        }

        if (
$startPage != 0) {
            
$links[] = '<td>...</td>';
        }

        
# Pages
        
for($a=$startPage$a<$endPage$a++)    {
            if (
$a == $pointer) {
                
$links[]='
                        <td'
.($pointer==$a?$this->pi_classParam('browsebox-SCell':sad:'').' nowrap="nowrap"><p>'.
                    
$this->pi_getLL('pi_list_browseresults_page','Page',TRUE). ' <span class="tx_feuseradmin_currentpage">'.($a+1) . '</span>'.
                    
'</p></td>';
            }
            else {
                
$links[]='
                        <td'
.($pointer==$a?$this->pi_classParam('browsebox-SCell':sad:'').' nowrap="nowrap"><p>'.
                    
$this->pi_linkTP_keepPIvarstrim$this->pi_getLL('pi_list_browseresults_page','Page',TRUE).' '.($a+1)), array('pointer'=>$a), $this->typolink_conf["useCacheHash"]).
                    
'</p></td>';
            }
        }

        if (
$endPage != $nr_pages) {
            
$links[] = '<td>...</td>';
        }

        
# Next
        
if ($pointer<ceil($count/$results_at_a_time)-1)    {
            
$links[]='
                    <td nowrap="nowrap"><p>'
.
                
$this->pi_linkTP_keepPIvars$this->pi_getLL('pi_list_browseresults_next','Next >',TRUE), array('pointer'=>$pointer+1), $this->typolink_conf["useCacheHash"] ).
                
'</p></td>';
        } else {
                
$links[]='
                    <td nowrap="nowrap"><p>'
.$this->pi_getLL('pi_list_browseresults_next','Next >',TRUE).'</p></td>';
        }
        
# Last
        
if ($pointer<ceil($count/$results_at_a_time)-1)    {
            
$links[]='
                    <td nowrap="nowrap"><p>'
.
                
$this->pi_linkTP_keepPIvars$this->pi_getLL'pi_list_browseresults_last','Last >>',TRUE ) ,array( 'pointer'=>ceil$count/$results_at_a_time)-1) , $this->typolink_conf["useCacheHash"]).
                
'</p></td>';
        } else {
                
$links[]='
                    <td nowrap="nowrap"><p>'
.$this->pi_getLL('pi_list_browseresults_last','Last >>',TRUE).'</p></td>';
        }

        
$pR1 $pointer*$results_at_a_time+1;
        
$pR2 $pointer*$results_at_a_time+$results_at_a_time;
        
$sTables '

        <!--
            List browsing box:
        -->
        <div'
.$this->pi_classParam('browsebox').'>'.
            (
$showResultCount '
            <p>'
.
                (
$this->internal['res_count'] ?
                
sprintf(
                    
str_replace('###SPAN_BEGIN###','<span'.$this->pi_classParam('browsebox-strong').'>',$this->pi_getLL('pi_list_browseresults_displays','Displaying results ###SPAN_BEGIN###%s to %s</span> out of ###SPAN_BEGIN###%s</span>')),
                    
$this->internal['res_count'] > $pR1 0,
                    
min(array($this->internal['res_count'],$pR2)),
                    
$this->internal['res_count']
                ) :
                
$this->pi_getLL('pi_list_browseresults_noResults','Sorry, no items were found.')).'</p>':''
            
).
        
'
            <'
.trim('table align="center" '.$tableParams).'>
                <tr>
                    '
.implode('',$links).'
                </tr>
            </table>
        </div>'
;

        return 
$sTables;
    } 
__________________
mysql> SELECT question FROM life, universe, everything WHERE answer=42;
Empty set (2079460347 sec)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #3  
Alt 28.03.08, 09:25
Forum Stammgast
 
Registriert seit: 19.09.07
Beiträge: 160
Daumen hoch Top!

danke schön schon mal für den code!
aber ein frage hab ich noch... was passiert denn hier genau?
PHP-Code:
# Pages 
        
for($a=$startPage$a<$endPage$a++)    { 
            if (
$a == $pointer) { 
                
$links[]=
                        <td'
.($pointer==$a?$this->pi_classParam('browsebox-SCell':sad:'').' nowrap="nowrap"><p>'
                    
$this->pi_getLL('pi_list_browseresults_page','Page',TRUE). ' <span class="tx_feuseradmin_currentpage">'.($a+1) . '</span>'
                    
'</p></td>'
            } 
            else { 
                
$links[]=
                        <td'
.($pointer==$a?$this->pi_classParam('browsebox-SCell':sad:'').' nowrap="nowrap"><p>'
                    
$this->pi_linkTP_keepPIvarstrim$this->pi_getLL('pi_list_browseresults_page','Page',TRUE).' '.($a+1)), array('pointer'=>$a), $this->typolink_conf["useCacheHash"]). 
                    
'</p></td>'
            } 
bzw für was is der code denn genau bestimmt? tt_news?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #4  
Alt 28.03.08, 09:50
Benutzerbild von robelix
Forum Stammgast
 
Registriert seit: 03.12.06
Beiträge: 169

Das is der Teil, der die Seitennummern macht. $startPage und $endPage werden weiter oben zusammengesucht.
Das if ist drinnen um auf die gerade aktuelle Seite keinen Link zu legen.

Und zur Zweiten Frage:
Ja, ich habe ihn auf einigen Seiten bei tt_news in Verwendung, aber sollte prinzipiell mit jedem Plugin funktionieren, das den Pagebrowser aus der pibase verwendet.
__________________
mysql> SELECT question FROM life, universe, everything WHERE answer=42;
Empty set (2079460347 sec)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #5  
Alt 28.03.08, 10:22
Forum Stammgast
 
Registriert seit: 19.09.07
Beiträge: 160

Zitat:
Das is der Teil, der die Seitennummern macht. $startPage und $endPage werden weiter oben zusammengesucht.
Das if ist drinnen um auf die gerade aktuelle Seite keinen Link zu legen.
okay, macht sinn

Zitat:
Und zur Zweiten Frage:
Ja, ich habe ihn auf einigen Seiten bei tt_news in Verwendung, aber sollte prinzipiell mit jedem Plugin funktionieren, das den Pagebrowser aus der pibase verwendet.

ähm, mal ne doofe frage.. irgendwo hängts grad bei mir in wie fern dem aus der pibase? wo müsst ich dnen jetzt den code hinbasteln?

Gruß
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #6  
Alt 16.04.08, 08:16
Forum Stammgast
 
Registriert seit: 19.09.07
Beiträge: 160
Lächeln gelöst

Hey,

okay.. habs erstmal mehr oder weniger gelöst für tt_news ...man sollte einfach mal die manual lesen ;) da kann man TSconfig dem pagebrowser aus der pibase einfügen, eine zeile und fertig

aber falls du noch ne anmerkung hast, immer her damit

Gruß
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #7  
Alt 19.04.08, 10:32
Benutzerbild von robelix
Forum Stammgast
 
Registriert seit: 03.12.06
Beiträge: 169

Habe gerade gesehen, daß in neueren Versionen (ab 4.1?) der Standard-Pagebrowser in der pi_base alle diese Features schon drin hat.
__________________
mysql> SELECT question FROM life, universe, everything WHERE answer=42;
Empty set (2079460347 sec)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #8  
Alt 11.06.08, 10:06
Forum Stammgast
 
Registriert seit: 19.09.07
Beiträge: 160

Huhu, für mein eigentliches Problem war immer noch keine Lösung da...
brauch einen besseren Seitenbrowser für die Extension dmaddredit...
könnte mir da jemand einen basteln? hehe.. einfach nur mit vor und zurück schaltfläche und das ggf immer nur 5 seiten oder so angezeigt werden...

bisher macht die extension das so:
PHP-Code:
function make123($modifier,$value)      {

                
$query $this->makeListQuery($modifier,$value,1);
                
$res mysql(TYPO3_db,$query);
                
$rescount mysql_fetch_row($res);
                
$pages=ceil($rescount[0]/$this->conf["itemsPerPage"]);
                
$pagelist $this->pi_getLL("page");;
                for(
$i=0;$i<$pages;$i++) {
                        
$j=$i+1;
                        
$pagelist .= ($this->piVars[pointer]==$i) ? ' <span class="tx_dmaddredit-pi1-active">'.$j.'</span>' ' '.$this->makeLink($j,liste,$
modifier,$value,1,$i);
                }

        return 
$pagelist;
        } 
schafft es jemand diesen code zu erweitern..?

Gruß
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Antwort


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are An


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
captcha Lesbarkeit verbessern? typonewbe Alle anderen Extensions 3 24.12.07 10:26
Frontend Editing verbessern el-scorcho TYPO3 4.x Fragen und Probleme 0 16.01.07 16:48
simulateStaticDocuments noch weiter verbessern StGaensler Tools und Tipps 2 27.04.06 22:24
"new items" Seitenbrowser funktioniert nicht fschnidi tt_products 4 15.01.06 11:34


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:42 Uhr.


Powered by vBulletin® Version 3.6.8 Patch Level 2 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0
Template-Modifikationen durch TMS