Advertisement:

Author Topic: Sub-forum em ordem alfabética  (Read 20453 times)

Offline JoseRoberto

  • Newbie
  • *
  • Posts: 7
Sub-forum em ordem alfabética
« on: October 02, 2007, 08:59:05 AM »
Por padrão a ordenação dos fóruns é pelo mais recente. Existe como eu ordenar alfabeticamente somente os sub-fóruns?

Estou usando o SMF em hxxp:www.bregapop.com/forum [nonactive]

No Fórum de notícias gostaria que ficasse ordenado no padrão, mas nos Fóruns de Letras de músicas e Cifras que ficasse em ordenação alfabética.

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #1 on: October 03, 2007, 07:15:16 AM »
Mas tu podes definir a ordem dos sub-quadros... No "manage boards" (na tua admin) tens lá a opção para mover os quadros, e dar-lhes a ordenação que quiseres ;)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline JoseRoberto

  • Newbie
  • *
  • Posts: 7
Re: Sub-forum em ordem alfabética
« Reply #2 on: October 03, 2007, 08:44:40 AM »
Eu sei............. aí eu consigo ordenar do jeito que eu quero, mas não é na ordenação dos sub-quadros ou sub-fóruns, mas é a ordenação dos tópicos dentro de cada sub-fórum, pois cada vez que um tópico é criado, automaticamente ele é o primeiro que aparece. Ok?

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #3 on: October 03, 2007, 09:41:59 AM »
AHHHHHHHHHH :P

Percebi mal, desculpa...

O que tu queres é ordenar os posts pelo título do tópico?
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline JoseRoberto

  • Newbie
  • *
  • Posts: 7
Re: Sub-forum em ordem alfabética
« Reply #4 on: October 03, 2007, 12:51:50 PM »
Sim...... pois, por exemplo, estou usando alguns fóruns para que os próprios usuários cadastrados possam adicionar as letras e cifras de bandas e cantores no padrão nome do artista - nome da música e se o fórum ordenar alfabeticamente pelo título do tópico ficará bem mais organizado.

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #5 on: October 04, 2007, 07:54:04 AM »
Ora bem... A malta anda aqui a partir a carola...

No Sources/MessageIndex.php encontramos:
Code: [Select]
// Default sort methods.
$sort_methods = array(
'subject' => 'mf.subject',
'starter' => 'IFNULL(memf.realName, mf.posterName)',
'last_poster' => 'IFNULL(meml.realName, ml.posterName)',
'replies' => 't.numReplies',
'views' => 't.numViews',
'first_post' => 't.ID_TOPIC',
'last_post' => 't.ID_LAST_MSG'
);

// They didn't pick one, default to by last post descending.
if (!isset($_REQUEST['sort']) || !isset($sort_methods[$_REQUEST['sort']]))
{
$context['sort_by'] = 'last_post';
$_REQUEST['sort'] = 'ID_LAST_MSG';
$ascending = isset($_REQUEST['asc']);
}
// Otherwise default to ascending.
else
{
$context['sort_by'] = $_REQUEST['sort'];
$_REQUEST['sort'] = $sort_methods[$_REQUEST['sort']];
$ascending = !isset($_REQUEST['desc']);
}

Podemos tentar adaptar este "if" para o que nos interessa... Penso eu...

Então vamos a ver... O 1º "if"
Code: [Select]
// They didn't pick one, default to by last post descending.
if (!isset($_REQUEST['sort']) || !isset($sort_methods[$_REQUEST['sort']]))
Este é o default... Vamos deixar o default para todos os quadros que não o que queres... Deve ficar qualquer coisa assim:
Code: [Select]
// They didn't pick one, default to by last post descending.
if (($board != xx) && (!isset($_REQUEST['sort']) || !isset($sort_methods[$_REQUEST['sort']])))
No $board != xx tens de substituir o "xx" pelo ID do quadro...

Agora vamos adaptar para o nosso quadro.
Code: [Select]
// Otherwise default to ascending.
else
{
$context['sort_by'] = $_REQUEST['sort'];
$_REQUEST['sort'] = $sort_methods[$_REQUEST['sort']];
$ascending = !isset($_REQUEST['desc']);
}
Vai ficar:
Code: [Select]
// Otherwise default to ascending.
elseif ($board != xx)
{
$context['sort_by'] = $_REQUEST['sort'];
$_REQUEST['sort'] = $sort_methods[$_REQUEST['sort']];
$ascending = !isset($_REQUEST['desc']);
}
          //finalmente, se for para ordenar no quadro "xx"
        else
        {
$context['sort_by'] = 'subject';
$_REQUEST['sort'] = 'mf.subject';
$ascending = isset($_REQUEST['asc']);
       }

Não tenho a certeza que seja bem isto... Não te esqueças de trocar os "xx" pelo ID do quadro em questão, faz backup do teu MessageIndex.php e coloca lá estas alterações...
Avisa se resultou ou não. Isto é mesmo do alto da minha invenção :P
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline JoseRoberto

  • Newbie
  • *
  • Posts: 7
Re: Sub-forum em ordem alfabética
« Reply #6 on: October 04, 2007, 02:24:05 PM »
Caro Bruno, na versão do SMF que estou usando (1.1.2) não existem as linhas citadas por você no arquivo  Sources/MessageIndex.php

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #7 on: October 05, 2007, 08:23:51 AM »
Devias actualizar para 1.1.4...

Ou então anexa-me o teu MessageIndex. Mas devias mesmo era actualizar...
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline JoseRoberto

  • Newbie
  • *
  • Posts: 7
Re: Sub-forum em ordem alfabética
« Reply #8 on: October 05, 2007, 05:02:56 PM »
Ok... concordo......... irei tentar... vou tentar fazer o backup, desinstalar o SMF 1.1.2, instalar o SMF 1.1.4 e recuperar o backup..... vamos aguardar.....

Offline O Cobra

  • Jr. Member
  • **
  • Posts: 356
  • Gender: Male
    • Portugueses Online
Re: Sub-forum em ordem alfabética
« Reply #9 on: October 05, 2007, 05:27:35 PM »
Ok... concordo......... irei tentar... vou tentar fazer o backup, desinstalar o SMF 1.1.2, instalar o SMF 1.1.4 e recuperar o backup..... vamos aguardar.....
Amigo não é preciso desinstalar a versão 1.1.2, apenas fazer o Large upgrade para a versão 1.1.4, mas gostaria de informar que vai perder todos MOD's

Offline O Cobra

  • Jr. Member
  • **
  • Posts: 356
  • Gender: Male
    • Portugueses Online
Re: Sub-forum em ordem alfabética
« Reply #10 on: October 05, 2007, 05:29:56 PM »
No fórum aonde pertenço ainda continua em 1.1.2 e pelo o que diz o administrador do mesmo, não vai fazer actualizar para 1..1.4

Vamos nós perceber porque...............

Offline JoseRoberto

  • Newbie
  • *
  • Posts: 7
Re: Sub-forum em ordem alfabética
« Reply #11 on: October 05, 2007, 06:39:37 PM »
Tirando uma dúvida: eu posso então aplicar este Large upgrade do 1.1.4 sobre o SMF 1.1.2 instalado no meu domínio?

Offline O Cobra

  • Jr. Member
  • **
  • Posts: 356
  • Gender: Male
    • Portugueses Online
Re: Sub-forum em ordem alfabética
« Reply #12 on: October 05, 2007, 06:41:50 PM »
 ;D É claro que pode e deve o fazer, caso contrário, teria que fazer uma nova instalação do SMF, isto se apagar o 1.1.2

Offline petervmaster

  • Semi-Newbie
  • *
  • Posts: 77
  • Gender: Male
    • ptforum
Re: Sub-forum em ordem alfabética
« Reply #13 on: October 07, 2007, 01:51:30 PM »
Boas a todos

@margarett, fiz como está e funcionou perfeitamente, isto é excelente para acabar com os indices!
Só uma pequena questão, não dá para inverter a ordem?! É que está a ordenar de Z para A e gostaria era que fosse ao contrário ou seja de A para Z.

Cump
petervmaster

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #14 on: October 08, 2007, 06:54:12 PM »
Vê assim:
Code: [Select]
// Otherwise default to ascending.
elseif ($board != xx)
{
$context['sort_by'] = $_REQUEST['sort'];
$_REQUEST['sort'] = $sort_methods[$_REQUEST['sort']];
$ascending = !isset($_REQUEST['desc']);
}
          //finalmente, se for para ordenar no quadro "xx"
        else
        {
$context['sort_by'] = 'subject';
$_REQUEST['sort'] = 'mf.subject';
$ascending = !isset($_REQUEST['desc']);
       }
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline petervmaster

  • Semi-Newbie
  • *
  • Posts: 77
  • Gender: Male
    • ptforum
Re: Sub-forum em ordem alfabética
« Reply #15 on: October 11, 2007, 09:43:49 AM »
Vê assim:
Code: [Select]
// Otherwise default to ascending.
elseif ($board != xx)
{
$context['sort_by'] = $_REQUEST['sort'];
$_REQUEST['sort'] = $sort_methods[$_REQUEST['sort']];
$ascending = !isset($_REQUEST['desc']);
}
          //finalmente, se for para ordenar no quadro "xx"
        else
        {
$context['sort_by'] = 'subject';
$_REQUEST['sort'] = 'mf.subject';
$ascending = !isset($_REQUEST['desc']);
       }

Amigo margarett, funcionou perfeitamente, só lhe queria colocar mais uma questão.
Dá para vários quadros?
Já tentei adicionar com , e ; e acaba por dar erro!

Cump
petervmaster

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #16 on: October 15, 2007, 06:20:05 PM »
Code: [Select]
// Otherwise default to ascending.
elseif ($board != xx)

Passa a:
Code: [Select]
// Otherwise default to ascending.
elseif (($board != xx) && ($board != yy) && ($board != zz))

;)

Vou passar este ao indice
« Last Edit: October 17, 2007, 09:23:23 AM by margarett »
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline petervmaster

  • Semi-Newbie
  • *
  • Posts: 77
  • Gender: Male
    • ptforum
Re: Sub-forum em ordem alfabética
« Reply #17 on: October 15, 2007, 06:23:52 PM »
Muito bom amigo Margarett, obrigado pela disponibilidade, isto é realmente excelente para acabar com os indices  8)

Cump
petervmaster

Offline margarett

  • Local Moderator
  • SMF Super Hero
  • *
  • Posts: 19,761
  • Gender: Male
Re: Sub-forum em ordem alfabética
« Reply #18 on: October 15, 2007, 06:39:17 PM »
E enganei-me :P

Tem de ser em 2 sitios...

É o que indiquei, e este:
Code: [Select]
// They didn't pick one, default to by last post descending.
if ((($board != xx) && ($board != yy) && ($board != zz)) && (!isset($_REQUEST['sort']) || isset($sort_methods[$_REQUEST['sort']])))
« Last Edit: October 17, 2007, 09:23:58 AM by margarett »
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

Quote
Over 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Offline petervmaster

  • Semi-Newbie
  • *
  • Posts: 77
  • Gender: Male
    • ptforum
Re: Sub-forum em ordem alfabética
« Reply #19 on: October 16, 2007, 09:18:28 AM »
Ok amigo, vou testar depois deixo o feedback

Cump
petervmaster