Buzz: sinvolle Seiten-Links-Verteilung

Beitrag lesen

Hi,

nachdem hier vor kurzem jemand das Thema ansprach, wie man die Seiten-Links bei mehreren Seiten sinnvoll verteilen könnte, habe ich angefangen eine Klasse zu schreiben.

Man übergibt ihr nach und nach Methode für Methode die..
...Anzahl der Seiten
...maximale Anzahl der Seiten-Links (mindestens jedoch 3)
...die aktive Seite
...andere Parameter für die Ausgabe, die hier aber unwichtig sind.

Nun wird geprüft, ob die Anzahl der Seiten kleiner ist wie maximale Anzahl der Seiten-Links; ist die der Fall wird ein Array mit den Seiten 1 bis Anzahl der Seiten gefüllt, dieser kann dann an eine andere Methode übergeben werden und eine Ausgabe, nach jeweiligen Parametern, zusammengestellt werden.

Ist jedoch die Anzahl der Seiten größer wie die maximale Anzahl der Seitenlinks, so beginnt der schwierigere Teil, zu dem ich dann auch eine Frage habe:
Zuerst wird Seite 1 und die Anzahl der Seiten in ein Array gespeichert; sprich erste und letzte Seite.
Dann die aktive Seite, sofern sie nicht gleich der ersten oder letzten Seite ist.
Dann wird überprüft, wieviele Links noch bis zur maximal Anzahl der Seiten-Links zur Verfügung stehen, diese werden dann auf den Bereich vor und nach der aktiven Seite relativ verteilt.
Ist nun noch mindestens ein Link vor bzw. nach der aktiven Seite "erlaubt", so wird jeweils eine Seite vor bzw. eine Seite nach der aktiven Seite in den Array gefüllt.

Hierzu ein kleines Bsp:
aktive Seite:10
gesamt Anzahl der Seiten:20
maximal Anzahl der Seitenlinks:10
d.h. der Array würde bis hierher so aussehen:
1,20,10,9,11 oder sortiert so:
1,9,10,11,20

nun wären vor der aktiven Seite noch 2 weiter Seiten-Links erlaubt und nach der aktiven Seite noch 3.
Um deren verteilung geht es nun:
Wie fändet ihr es sinnvoll, diese Links vor bzw. nach der aktiven Seite noch zu verteilen?
Einfach gleichmäßig verteilen, oder irgendwie anders?
Und wie könnte der Ansatz dafür aussehen?

Sorry für den etwas langen Text, aber so finde ich es einigermaßen verständlich.

Bin für jede Idee dankbar.

Jedem ein frohes Neus
grieß
    Buzz