public function __construct($quick = false, $no_search = false, PlFilterCondition $cond = null)
{
- Platal::load('search', 'search.inc.php');
-
if ($no_search) {
return;
}
$this->conds->addChild($ufc);
$orders = $ufb->getOrders();
- $orders[] = new UFO_Promo(UserFilter::DISPLAY, true);
- $orders[] = new UFO_Name(Profile::DN_SORT);
if (S::logged() && Env::has('nonins')) {
$this->conds = new PFC_And($this->conds,
- new UFC_Not(new UFC_Dead()),
- new UFC_Registered()
+ new PFC_Not(new UFC_Dead()),
+ new PFC_Not(new UFC_Registered())
);
}
$this->conds->addChild($ufb->getUFC());
}
- public function &get(PlLimit $limit = null, $orders = array())
+ protected function &getFilterResults(PlFilter &$pf, PlLimit $limit)
{
- $orders = array_merge($orders, $this->orders);
-
- $uf = $this->buildFilter($this->conds, $orders);
- if (is_null($limit)) {
- $limit = new PlLimit(20, 0);
- }
- $it = $uf->getProfiles($limit);
- $this->count = $uf->getTotalCount();
- return $it;
+ return $pf->getProfiles($limit, Profile::FETCH_MINIFICHES);
}
}
-class ArraySet extends UserSet
+class ArraySet extends ProfileSet
{
public function __construct(array $users)
{
}
}
-class MinificheView extends MultipageView
+abstract class ProfileView extends MultipageView
+{
+ protected function getBoundValue($obj)
+ {
+ if ($obj instanceof Profile) {
+ switch ($this->bound_field) {
+ case 'name':
+ $name = $obj->name('%l');
+ return strtoupper($name);
+ case 'promo':
+ return $obj->promo();
+ default:
+ return null;
+ }
+ }
+ return null;
+ }
+}
+
+class MinificheView extends ProfileView
{
public function __construct(PlSet &$set, $data, array $params)
{
parent::__construct($set, $data, $params);
}
- protected function getBoundValue($obj)
- {
- if ($obj instanceof Profile) {
- switch ($this->bound_field) {
- case 'name':
- $name = $obj->name('%l');
- return strtoupper($name[0]);
- case 'promo':
- return $obj->promo();
- default:
- return null;
- }
- }
- return null;
- }
-
public function bounds()
{
$order = Env::v('order', $this->defaultkey);
}
}
-class MentorView extends MultipageView
+class MentorView extends ProfileView
{
public function __construct(PlSet &$set, $data, array $params)
{
parent::__construct($set, $data, $params);
}
- protected function getBoundValue($obj)
- {
- if ($obj instanceof Profile) {
- switch ($this->bound_field) {
- case 'name':
- $name = $obj->name('%l');
- return strtoupper($name[0]);
- case 'promo':
- return $obj->promo();
- default:
- return null;
- }
- }
- return null;
- }
-
public function bounds()
{
$order = Env::v('order', $this->defaultkey);
}
}
-class TrombiView extends MultipageView
+class TrombiView extends ProfileView
{
public function __construct(PlSet &$set, $data, array $params)
{
new UFO_Promo(UserFilter::DISPLAY, true),
new UFO_Name(Profile::DN_SORT),
), 'promotion'));
+ $set->addCond(new UFC_Photo());
parent::__construct($set, $data, $params);
}
- protected function getBoundValue($obj)
- {
- if ($obj instanceof Profile) {
- switch ($this->bound_field) {
- case 'name':
- $name = $obj->name('%l');
- return strtoupper($name[0]);
- case 'promo':
- return $obj->promo();
- default:
- return null;
- }
- }
- return null;
- }
-
public function bounds()
{
$order = Env::v('order', $this->defaultkey);