Revision 3 (by ahitrov@rambler.ru, 2010/03/24 15:19:32) The CORE
<% join($delimiter, @parts) %>
<%args>
	$p => 1
	$n => 10
	$total => undef
	$href => undef
	$params => {}
	$pname => 'p'
	$delimiter => ' | '

</%args>
<%init>
	
	# ���� !$href � ���� �������� �� �������� DirectoryIndex, ����: 
	# .../../gallery.html. � ������ � ��� �������������, ����: <a href="?param=1">, 
	# �� IE �������� �� .../../gallery.html?param=1., � NN (4.x) �������� �� 
	# .../../?param=1.., ��������� ���� ������� � ��������� ������ ��� �����.
	#
	if (!$href)
	{
		$href = $r->uri();
		$href =~ s/\/([\w]{1,}(\.[sp]?html?))//;
		$href = $1;
		if ($href =~ /(index|default|main)$2/ ){
			$href = '';
		}
	}

	my $parts = int($total/$n) + ($total % $n ? 1 : 0);
	my @parts;
	foreach my $pn (1 .. $parts)
	{
		$params->{$pname} = $pn;
		push @parts, ($pn == $p) ? "<b>$pn</b>" : "<a href=\"$href?".join('&', map { "$_=$params->{$_}" } keys %$params)."\">$pn</a>";
	}

</%init>

Небольшая справка по веткам

cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.

koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.

utf8 – актуальная ветка, заточенная под UTF-8.

Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.