diff -urp blogger.stylish/blogger.module blogger/blogger.module --- blogger.stylish/blogger.module 2009-04-08 15:07:16.000000000 +0200 +++ blogger/blogger.module 2009-04-14 13:45:43.000000000 +0200 @@ -77,8 +77,9 @@ function blogger_admin_settings() { t('none'), t('Name'), t('Blog Count'), - t('Date'), - t('Random') + t('Date (created)'), + t('Random'), + t('Date (changed)'), ), '#description' => t('Order by none, Name or Numbers of blogs.') ); @@ -226,18 +227,41 @@ function blogger_block($op = 'list', $de } } + if ($shownum) { + $itemcount = ', COUNT(u.name) AS numitems '; + } + + switch ($blogger_order) { + case '1': + $order_filter = 'u.name'; + break; + case '2': + $order_filter = 'ORDER BY numitems DESC, u.name'; + break; + case '3': + $order_filter = 'n.created DESC, u.name'; + break; + case '4': + $order_filter = 'RAND()'; + break; + case '5': + $order_filter = 'n.changed DESC, u.name'; + break; + } + + if ($order_filter) { + $order_filter = ' ORDER BY '. $order_filter; + } + $results = db_query(" - SELECT n.uid, u.name, count(u.name) AS numitems, u.picture + SELECT n.uid, u.name, u.picture $itemcount FROM {node} n INNER JOIN {users} u ON u.uid = n.uid WHERE n.type = 'blog' and n.status = 1 AND n.uid NOT IN ($blogger_exclude) - GROUP BY n.uid" - . ($blogger_order <> 0 ? " ORDER BY " : "") - . ($blogger_order == 1 ? "u.name" : "") - . ($blogger_order == 2 ? "numitems DESC, u.name" : "") - . ($blogger_order == 3 ? "n.created DESC, u.name" : "") - . ($blogger_order == 4 ? "RAND()" : "") - ." LIMIT $maxdisp" + GROUP BY n.uid + %s + LIMIT %d", + $order_filter, $maxdisp ); $block_content = '