I try to get a random number like this:
PHP Code:
PHP Code:
<?php
class doyouknow_Api_Page extends vB_Api_Extensions
{
public $product = 'doyouknow';
public $version = '1.0.0';
public $developer = 'test';
public $title = 'Kennst Du schon';
public $minver = '5.0.0 Beta 1';
public $maxver = '6.0.0';
public $infourl = '';
public $checkurl = '';
public $AutoInstall = 1;
public $extensionOrder = 5;
public function fetchPageById($page, $pageid, $routeData = array())
{
$page['random'] = vB::getDatastore()->rand(1,3);
return $page;
}
}
?>
Try it also with $page['random'] = rand(1,3);
in template:
HTML Code:
<vb:if condition="$page['random'] == 1>do something</vb:if>
<vb:if condition="$page['random'] == 2>do something more
<vb:else />
do something else
</vb:if>
But know I only have a blank window with background look like background-stylevar.
Is there a possible way to get a random number so I could change sortorder about a if condition=random ==1 / 2 /3 eg or could I change the limit of data so I can change the "selection" by a if on timenow = monday ... or any other way?
Iam totally become desperate on this thing!
Any help pleeeeease...
I just try to do a list of 15 different (random) user.
Iam very thankfull for any help I could get!
Thanks a lot again!
Got it:
Creat a new php-file "random.php" (place it into ...includes/vb5/frontend/controller/ :
PHP Code:
<?php
class vB5_Frontend_Controller_Random extends vB5_Frontend_Controller {
public function randomnum() {
$output = rand(1,3);
return $output;
}
}
?>
Put the following in your template:
{vb:action random_result, random, randomnum}
{vb:raw $random_result}
Question: How could I get max(userid) to limit the random?
Because I got no answer to this poor forum-system (without a good code documentation and unfortunately no support) I did the following:
go to core/vb/db/mysql/querydefs.php and find:
PHP Code:
switch ($params['sortfield'])
{
case 'username':
$sqlsort = 'user.username';
break;
case 'joindate':
$sqlsort = 'user.joindate';
break;
case 'posts':
$sqlsort = 'user.posts';
break;
case 'reputation':
$sqlsort = 'user.reputation';
break;
case 'lastvisity':
$sqlsort = 'session.lastactivity';
break;
default:
$sqlsort = 'user.username';
}
Replace it with:
PHP Code:
switch ($params['sortfield'])
{
case 'username':
$sqlsort = 'user.username';
break;
case 'joindate':
$sqlsort = 'user.joindate';
break;
case 'posts':
$sqlsort = 'user.posts';
break;
case 'reputation':
$sqlsort = 'user.reputation';
break;
case 'lastvisity':
$sqlsort = 'session.lastactivity';
break;
case 'random':
$sqlsort = 'rand()';
break;
default:
$sqlsort = 'user.username';
}
now you could use random as a config like this:
HTML Code:
{vb:set config, {vb:php array}}
{vb:set config.perpage, {vb:raw widgetConfig.number_of_users}}
{vb:set config.sortfield, 'random'}
Hope it will help someone... wish somebody is make a little documentation about how to make a mod with own sql, classes and functions.
Iam not that got in php...so I have to find workarounds :-)