Компонент Флиртики

Компонент Флиртики

#1 24 августа 2018 в 12:12
Добрый день, кто может знает, подскажет, как в флиртиках убрать ограничения по параметрам -мужчины видят только флирты от женщин и наоборот. А сделать так чтоб все получали флирты от всех, не зависимо от пола. При установке компонента появилось поле пол в котором стоят значения 1 | Женщина и 2 | Мужчина Код ниже (фото) в котором убираю строки с цифрами 1,2, получается что видят все и всё, но потом начинаются проблемы при отгадывании флиртов, получается тот кто отправлял его вообще потом в списках нет… Люди подскажи что там правильно вырезать)
и да, создатель компонента молчит)

файл flirtiki\model.php

  1. <?php
  2.  
  3. class modelFlirtiki extends cmsModel{
  4.  
  5. private $options;
  6.  
  7. public function __construct() {
  8. parent::__construct();
  9. $this->options = cmsController::loadOptions('flirtiki');
  10. }
  11.  
  12. public function getFlirtiks($user_id = false, $id = false){
  13.  
  14. if ($user_id) { return $this->getItemByField('flirtiki', 'komu', $user_id); }
  15. if ($id) { return $this->getItemById('flirtiki', $id); }
  16.  
  17. return $this->get('flirtiki');
  18. }
  19.  
  20. public function getFlirtiksCount($user_id = false, $reset = true) {
  21. $count = $user_id ? $this->filterEqual('i.komu', $user_id)->getCount('flirtiki') : $this->getCount('flirtiki');
  22. if ($reset) { $this->resetFilters(); }
  23. return $count;
  24. }
  25.  
  26. public function getStartUsers($my_id, $my_gender, $only_one_user = false){
  27. $this->filterEqual('i.gender', ($my_gender == 1) ? 2 : 1);
  28. $this->getUserExisys($my_id);
  29. $this->order_by = 'rand()';
  30. return $only_one_user ? $this->getItem('cms_users') : $this->get('cms_users');;
  31. }
  32.  
  33. public function get12Users($sender, $my_gender, $my_id){
  34. $this->getUserExisys($my_id, 'end');
  35. $this->filterNotEqual('i.id', $sender)->filterEqual('i.gender', ($my_gender == 1) ? 2 : 1);
  36. if($this->options['no_avatar']) {
  37. $this->filterNotNull('i.avatar');
  38. }
  39. $this->getUserUnion($sender, ($my_gender == 1) ? 2 : 1);
  40. return $this->selectOnly('i.id, i.nickname, i.avatar, i.gender')->get('cms_users');
  41. }
  42.  
  43. public function getUserExisys($my_id, $and = 'start'){
  44. if ($and == 'start'){ $this->filterIsNull('i.is_deleted'); $this->where .= " AND "; }
  45. $this->where .= "i.id NOT IN (SELECT ot_kogo FROM {$this->db->prefix}flirtiki WHERE komu= {$my_id}) AND i.id NOT IN (SELECT komu FROM {$this->db->prefix}flirtiki WHERE ot_kogo={$my_id})";
  46. if ($and == 'end'){ $this->where .= " AND "; $this->filterIsNull('i.is_deleted'); }
  47. return $this;
  48. }
  49.  
  50. public function getUserUnion($sender, $my_gender){
  51. $this->where .= " LIMIT 0, 11 UNION SELECT i.id, i.nickname, i.avatar, i.gender FROM {$this->db->prefix}users i WHERE (i.id = {$sender}) AND (i.gender = {$my_gender}) ORDER BY RAND() ";
  52. return $this;
  53. }
  54.  
  55. public function sendFlirtik($data) {
  56. return $this->insert('flirtiki', $data);
  57. }
  58.  
  59. public function updateFlirtik($id, $data) {
  60. return $this->update('flirtiki', $id, $data);
  61. }
  62.  
  63. public function updateTry($id, $try) {
  64. if($try > 0) {
  65. return $this->update('flirtiki', $id, array('try' => $try));
  66. } else {
  67. return $this->update('flirtiki', $id, array('try' => $try, 'status' => 1));
  68. }
  69. }
  70.  
  71. public function deleteFlirtik($id) {
  72. return $this->delete('flirtiki', $id);
  73. }
  74.  
  75. public function getCities() {
  76. return $this->useCache('geo.cities')->get('geo_cities');
  77. }
  78.  
  79. public function isFiltered($city_id = false, $from = false, $to = false) {
  80. if ($city_id){ $this->filterEqual('i.city', $city_id); }
  81. if ($from){
  82. $this->filterDateOlder('birth_date', intval($from), 'YEAR');
  83. }
  84. if ($to){
  85. $this->filterDateYounger('birth_date', intval($to), 'YEAR');
  86. }
  87. return $this;
  88. }
  89.  
  90. public function deleteFlirt($id) {
  91. if (!is_numeric($id) || !$id) { return false; }
  92. return $this->delete('flirtiki', $id);
  93. }
  94.  
  95. public function deleteController($id){
  96.  
  97. $this->db->dropTable('flirtiki');
  98.  
  99. $this->filterEqual('url', '{flirtiki:my}')->deleteFiltered('menu_items');
  100. $this->filterEqual('controller', 'flirtiki')->deleteFiltered('users_tabs');
  101. $this->filterEqual('controller', 'flirtiki')->deleteFiltered('activity_types');
  102.  
  103. return parent::deleteController($id);
  104.  
  105. }
  106.  
  107. }
  108. ?>
Прикрепленный файл
55_bn3fq.jpg 42 Кб
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.