Revision 658

Date:
2017/07/06 17:36:03
Author:
ahitrov
Revision Log:
Sorting bugs

Files:

Legend:

 
Added
 
Removed
 
Modified
  • utf8/plugins/sphinx/lib/sphinx/Keeper.pm

     
    75 75 my $db_table = delete $opts{db_table} || $self->state->table_name;
    76 76 my @wheres = ("MATCH(?)");
    77 77 my @values = ($text);
    78 my @orders;
    78 79 my $count = delete $opts{count};
    79 80 my $limit = delete $opts{limit};
    80 81 return if $limit && ($limit =~ /\D/ || $limit < 0);
     
    96 97 push @values, ref $opts{object_class} ? @{$opts{object_class}} : $opts{object_class};
    97 98 }
    98 99
    99 my $query = "select ".($count ? 'count(*) as cnt' : '*, weight() as weight')." from $db_table where ".join( ' and ', @wheres );
    100 if ( exists $opts{order_by} ) {
    101 push @orders, $opts{order_by};
    102 } elsif ( !$count ) {
    103 push @orders, 'weight desc, last_edited desc';
    104 }
    105
    106 my $query = "select ".($count ? 'count(*) as cnt' : '*, weight() as weight')." from $db_table where ".join( ' and ', @wheres ).(@orders ? " order by ".join(', ', @orders) : '');
    100 107 if ( $limit && $offset ) {
    101 108 $query .= " limit $offset, $limit ";
    102 109 } elsif ( $limit ) {
     
    175 182 my $dbh = DBI->connect('DBI:mysql:host='.$self->{db_host}.';port='.$self->{db_port}.';mysql_enable_utf8=1')
    176 183 || die "Contenido Error: Не могу соединиться с Sphinx базой данных\n";
    177 184
    185 $dbh->{mysql_auto_reconnect} = 1;
    178 186 # $dbh->{'AutoCommit'} = 1;
    179 # $dbh->{mysql_auto_reconnect} = 1;
    180 187
    181 188 return $dbh;
    182 189 }

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

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

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

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

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