new \Where(\Where::_and([ \Where::_operator(self::$TO,'=',$to), \Where::_operator(self::$OID,'=',$oid), \Where::_operator(self::$PROFILE,'=',PID), ])), \Query::COUNT => 1, ]); return \DB::fetch($r); } static function toggle($to,$oid,$type=null):bool{ if(!IF_PROFILE) return false; $to = intval($to); $oid = intval($oid); $r = self::select($q = [ \Query::TABLES => [self::$table_name], \Query::WHERE => new \Where(\Where::_and([ \Where::_operator(self::$TO,'=',$to), \Where::_operator(self::$OID,'=',$oid), \Where::_operator(self::$PROFILE,'=',PID), ])), \Query::COUNT => 1, ]); if(\Db::numRows($r)){ $l = \DB::fetch($r); self::deleteByID($l[self::$ID]); return false; } else { self::insert([ self::$TO=>$to, self::$OID=>$oid, self::$TYPE=>0, self::$PROFILE=>PID, ]); return true; } } static function columnInfo() : array { return [ new C([ C::VAR_NAME =>&self::$ID, C::TYPE =>eColumnType::INT, C::AUTO_INCREMENT =>true, C::PRIMARY =>true, C::DEFAULT =>0, C::HIDDEN =>true, C::TH =>V::get(Vars::$ID), ]), new C([ C::VAR_NAME => &self::$TO, C::TYPE => eColumnType::INT, ]), new C([ C::VAR_NAME => &self::$OID, C::TYPE => eColumnType::INT, ]), new C([ C::VAR_NAME => &self::$TYPE, C::TYPE => eColumnType::INT, ]), new C([ C::VAR_NAME => &self::$PROFILE, C::TYPE => eColumnType::INT, C::DEFAULT => intval(PID), //C::TH => V::get(Vars::$PROFILE), c::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$ACCOUNT, C::TYPE => eColumnType::INT, C::DEFAULT => intval(\Site::$owner_id), //C::TH => V::get(Vars::$ACCOUNT), c::HIDDEN => true, ]), new C([ C::VAR_NAME => &self::$CREATED, C::TYPE => eColumnType::INT, C::LENGTH => 11, //C::TH => V::get(Vars::$CREATED), C::DEFAULT => time(), c::FUNC_VALUE_DATA => function($v){return self::formatDate($v[self::$CREATED]);}, c::HIDDEN => true, ]), ]; } } new Like();