Revize ecfe4a41
Přidáno uživatelem Michal Kliment před asi 9 roky(ů)
application/controllers/monitoring.php | ||
---|---|---|
|
||
$filter_form->add('device_name');
|
||
|
||
$filter_form->add('member_id')
|
||
->type('select')
|
||
->label('Member')
|
||
->values(ORM::factory('member')->select_list('id', 'name'));
|
||
$filter_form->add('member_name')
|
||
->callback('json/member_name');
|
||
|
||
$filter_form->add('state')
|
||
->type('select')
|
||
... | ... | |
));
|
||
|
||
$filter_form->add('town')
|
||
->type('select')
|
||
->values(
|
||
array_unique(
|
||
ORM::factory('town')->select_list('town', 'town')
|
||
)
|
||
);
|
||
->type('combo')
|
||
->callback('json/town_name');
|
||
|
||
$filter_form->add('street')
|
||
->type('select')
|
||
->values(
|
||
array_unique(
|
||
ORM::factory('street')->select_list('street', 'street')
|
||
)
|
||
);
|
||
->type('combo')
|
||
->callback('json/street_name');
|
||
|
||
$filter_form->add('type')
|
||
->type('select')
|
||
... | ... | |
if (!$action)
|
||
{
|
||
$action_options = array();
|
||
$do_id = isset($device) ? $device->user->member_id : NULL;
|
||
|
||
// access control
|
||
if ($this->acl_check_new('Monitoring_Controller', 'monitoring',
|
||
$device->user->member_id))
|
||
if ($this->acl_check_new('Monitoring_Controller', 'monitoring', $do_id))
|
||
{
|
||
$action_options['add'] = __('Add');
|
||
}
|
||
|
||
if ($this->acl_check_edit('Monitoring_Controller', 'monitoring',
|
||
$device->user->member_id))
|
||
if ($this->acl_check_edit('Monitoring_Controller', 'monitoring', $do_id))
|
||
{
|
||
$action_options['edit'] = __('Edit');
|
||
}
|
||
|
||
if ($this->acl_check_delete('Monitoring_Controller', 'monitoring',
|
||
$device->user->member_id))
|
||
if ($this->acl_check_delete('Monitoring_Controller', 'monitoring', $do_id))
|
||
{
|
||
$action_options['delete'] = __('Delete');
|
||
}
|
application/controllers/search.php | ||
---|---|---|
// each rule should get oportunity to be searched (reserved limits)
|
||
$result_limit = !empty($limit) ? ceil($limit / count($search_rules)) : NULL;
|
||
|
||
$total_count = 0;
|
||
|
||
// foreach all search rules
|
||
foreach ($search_rules as $rule)
|
||
{
|
||
... | ... | |
$total_counts[$rule['model']] = 1;
|
||
}
|
||
|
||
$result = $search_model->{$rule['method']}($key, $result_limit);
|
||
$method_result_limit = ceil($result_limit * $rule['limit_weight']);
|
||
$result = $search_model->{$rule['method']}($key, $method_result_limit);
|
||
|
||
foreach ($result as $row)
|
||
{
|
||
... | ... | |
// add rating about the current result
|
||
$sums[$rule['model']][$row->id] += $percent * $weight;
|
||
$counts[$rule['model']][$row->id]++;
|
||
|
||
$total_count++;
|
||
|
||
// end if we have already enought results
|
||
if (!empty($limit) && $total_count >= $limit)
|
||
{
|
||
break 3;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
$result_sums = array();
|
||
$this->results = array();
|
||
|
||
// transforms to 1-dimensional array
|
||
foreach ($sums as $model => $model_sums)
|
application/libraries/Filter_form.php | ||
---|---|---|
|
||
$query = Input::instance()->get('query');
|
||
|
||
// load query from database
|
||
if ($query && is_numeric($query) && isset($this->queries[$query]))
|
||
// load query from database (because of #895 can be from different URL)
|
||
if ($query && is_numeric($query))
|
||
{
|
||
$data = json_decode($this->queries[$query]->values, TRUE);
|
||
|
||
$on = @$data["on"];
|
||
$types = @$data["types"];
|
||
$operations = @$data["opers"];
|
||
$values = @$data["values"];
|
||
$tables = @$data["tables"];
|
||
$loaded_query = new Filter_query_Model($query);
|
||
|
||
$this->loaded_from_saved_query = TRUE;
|
||
if ($loaded_query && $loaded_query->id) {
|
||
|
||
$data = json_decode($loaded_query->values, TRUE);
|
||
|
||
$on = @$data["on"];
|
||
$types = @$data["types"];
|
||
$operations = @$data["opers"];
|
||
$values = @$data["values"];
|
||
$tables = @$data["tables"];
|
||
|
||
$this->loaded_from_saved_query = TRUE;
|
||
|
||
}
|
||
else
|
||
{
|
||
$on = $types = $operations = $values = $tables = NULL;
|
||
status::warning('Invalid saved query');
|
||
}
|
||
|
||
$this->first_load = FALSE;
|
||
}
|
||
// load query from URL
|
||
else
|
||
{
|
||
{
|
||
$on = Input::instance()->get('on');
|
||
$types = Input::instance()->get('types');
|
||
$operations = Input::instance()->get('opers');
|
||
... | ... | |
{
|
||
$data = json_decode($this->queries[$this->default_query_id]->values, TRUE);
|
||
|
||
$on = $data["on"];
|
||
$types = $data["types"];
|
||
$operations = $data["opers"];
|
||
$values = $data["values"];
|
||
$tables = $data["tables"];
|
||
$on = @$data["on"];
|
||
$types = @$data["types"];
|
||
$operations = @$data["opers"];
|
||
$values = @$data["values"];
|
||
$tables = @$data["tables"];
|
||
|
||
$this->can_add = FALSE;
|
||
$this->loaded_from_saved_query = TRUE;
|
application/libraries/importers/Fio_Bank_Statement_File_Importer.php | ||
---|---|---|
/*
|
||
* This file is part of open source system FreenetIS
|
||
* and it is released under GPLv3 licence.
|
||
*
|
||
*
|
||
* More info about licence can be found:
|
||
* http://www.gnu.org/licenses/gpl-3.0.html
|
||
*
|
||
*
|
||
* More info about project can be found:
|
||
* http://www.freenetis.org/
|
||
*
|
||
*
|
||
*/
|
||
|
||
/**
|
||
* FIO abstract importer that handles storing of transfers. Subclass add method
|
||
* for handling different input file types and format.
|
||
*
|
||
*
|
||
* @author Ondrej Fibich, Jiri Svitak
|
||
* @since 1.1
|
||
*/
|
||
... | ... | |
* Download of new transaction will start from this transaction.
|
||
* Transactions are identified by their transaction codes that are stored
|
||
* in the bank transfer model.
|
||
*
|
||
*
|
||
* @Override
|
||
*/
|
||
protected function before_download(Bank_account_Model $bank_account,
|
||
Bank_Account_Settings $settings)
|
||
{
|
||
{
|
||
// get last transaction ID of this bank account that is stored in database
|
||
$bt_model = new Bank_transfer_Model();
|
||
$ltc = $bt_model->get_last_transaction_code_of($bank_account->id);
|
||
|
||
|
||
if (empty($ltc) || $ltc <= 0)
|
||
{
|
||
$ltc = 0; // no transaction for this account
|
||
}
|
||
|
||
|
||
// set a start transaction for downloading of next transactions
|
||
$url = $settings->get_download_base_url() . 'set-last-id/'
|
||
$url = $settings->get_download_base_url() . 'set-last-id/'
|
||
. $settings->api_token . '/' . $ltc . '/';
|
||
|
||
|
||
$ch = curl_init();
|
||
curl_setopt($ch, CURLOPT_URL, $url);
|
||
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
|
||
... | ... | |
{
|
||
return TRUE;
|
||
}
|
||
|
||
|
||
// error in downloading
|
||
$m = __('Setting of the last downloaded transaction has failed');
|
||
throw new Exception($m . ' (' . $response . ')');
|
||
}
|
||
|
||
|
||
/**
|
||
* Gets parsed data.
|
||
*
|
||
*
|
||
* @return array Contains array of transactions
|
||
*/
|
||
protected abstract function get_parsed_transactions();
|
||
|
||
|
||
/*
|
||
* @Override
|
||
*/
|
||
... | ... | |
$statement = new Bank_statement_Model();
|
||
$ba = $this->get_bank_account();
|
||
$user_id = $this->get_user_id();
|
||
|
||
|
||
try
|
||
{
|
||
/* header */
|
||
|
||
|
||
$statement->transaction_start();
|
||
$header = $this->get_header_data();
|
||
|
||
|
||
// bank statement
|
||
$statement->bank_account_id = $ba->id;
|
||
$statement->user_id = $this->get_user_id();
|
||
... | ... | |
$statement->opening_balance = $header->openingBalance;
|
||
$statement->closing_balance = $header->closingBalance;
|
||
$statement->save_throwable();
|
||
|
||
|
||
/* transactions */
|
||
|
||
|
||
// preparation of system double-entry accounts
|
||
$suppliers = ORM::factory('account')->get_account_by_attribute(Account_attribute_Model::SUPPLIERS);
|
||
$member_fees = ORM::factory('account')->get_account_by_attribute(Account_attribute_Model::MEMBER_FEES);
|
||
$operating = ORM::factory('account')->get_account_by_attribute(Account_attribute_Model::OPERATING);
|
||
$cash = ORM::factory('account')->get_account_by_attribute(Account_attribute_Model::CASH);
|
||
|
||
|
||
$account = $ba->get_related_account_by_attribute_id(Account_attribute_Model::BANK);
|
||
$bank_interests = $ba->get_related_account_by_attribute_id(Account_attribute_Model::BANK_INTERESTS);
|
||
|
||
... | ... | |
elseif ($item['typ'] == 'Vklad pokladnou')
|
||
{
|
||
$member_id = $this->find_member_by_vs($item['vs']);
|
||
|
||
|
||
if (!$member_id)
|
||
{
|
||
// if VS is empty, that it is deposit (propably
|
||
// accountant came to bank with cash and put
|
||
// them on the association bank account).
|
||
// Otherwise if there is a VS that wrong (because
|
||
// it was not founded in DB) then assume that it
|
||
// is member fee. (#851)
|
||
if (empty($item['vs']))
|
||
{
|
||
// deposit transfer
|
||
$transfer_id = Transfer_Model::insert_transfer(
|
||
$cash->id, $account->id, null, null,
|
||
$user_id, null, $datetime, $now,
|
||
$item['typ'], abs($item['castka'])
|
||
);
|
||
|
||
$stats['deposits'] += abs($item['castka']);
|
||
$stats['deposits_nr']++;
|
||
}
|
||
else // undefined member fee
|
||
{
|
||
// double-entry incoming transfer
|
||
$transfer_id = Transfer_Model::insert_transfer(
|
||
$member_fees->id, $account->id, null,
|
||
null, $user_id, null, $datetime, $now,
|
||
$item['zprava'], abs($item['castka'])
|
||
);
|
||
|
||
$stats['member_fees'] += abs($item['castka']);
|
||
$stats['unidentified_nr']++;
|
||
}
|
||
|
||
$bt->clear();
|
||
$bt->set_logger(false);
|
||
$bt->origin_id = null;
|
||
$bt->destination_id = $ba->id;
|
||
$bt->transfer_id = $transfer_id;
|
||
$bt->bank_statement_id = $statement->id;
|
||
$bt->transaction_code = $item['id_pohybu'];
|
||
$bt->number = $number;
|
||
$bt->constant_symbol = $item['ks'];
|
||
$bt->variable_symbol = $item['vs'];
|
||
$bt->specific_symbol = $item['ss'];
|
||
$bt->save();
|
||
$stats['unidentified_nr']++;
|
||
}
|
||
else
|
||
{
|
||
// double-entry incoming transfer
|
||
$transfer_id = Transfer_Model::insert_transfer(
|
||
$member_fees->id, $account->id, null, $member_id,
|
||
$user_id, null, $datetime, $now, $item['zprava'],
|
||
abs($item['castka'])
|
||
);
|
||
// incoming bank transfer
|
||
$bt->clear();
|
||
$bt->set_logger(false);
|
||
$bt->origin_id = $counter_ba->id;
|
||
$bt->destination_id = $ba->id;
|
||
$bt->transfer_id = $transfer_id;
|
||
$bt->bank_statement_id = $statement->id;
|
||
$bt->transaction_code = $item['id_pohybu'];
|
||
$bt->number = $number;
|
||
$bt->constant_symbol = $item['ks'];
|
||
$bt->variable_symbol = $item['vs'];
|
||
$bt->specific_symbol = $item['ss'];
|
||
$bt->save();
|
||
|
||
// assign transfer? (0 - invalid id, 1 - assoc id, other are ordinary members)
|
||
if ($member_id && $member_id != Member_Model::ASSOCIATION)
|
||
{
|
||
$ca = ORM::factory('account')
|
||
->where('member_id', $member_id)
|
||
->find();
|
||
|
||
// has credit account?
|
||
if ($ca->id)
|
||
{
|
||
// add affected member for notification
|
||
$this->add_affected_member($member_id);
|
||
|
||
// assigning transfer
|
||
$a_transfer_id = Transfer_Model::insert_transfer(
|
||
$account->id, $ca->id, $transfer_id, $member_id,
|
||
$user_id, null, $datetime, $now,
|
||
__('Assigning of transfer'), abs($item['castka'])
|
||
);
|
||
// double-entry incoming transfer
|
||
$transfer_id = Transfer_Model::insert_transfer(
|
||
$member_fees->id, $account->id, null, $member_id,
|
||
$user_id, null, $datetime, $now, $item['zprava'],
|
||
abs($item['castka'])
|
||
);
|
||
// incoming bank transfer
|
||
$bt->clear();
|
||
$bt->set_logger(false);
|
||
$bt->origin_id = $counter_ba->id;
|
||
$bt->destination_id = $ba->id;
|
||
$bt->transfer_id = $transfer_id;
|
||
$bt->bank_statement_id = $statement->id;
|
||
$bt->transaction_code = $item['id_pohybu'];
|
||
$bt->number = $number;
|
||
$bt->constant_symbol = $item['ks'];
|
||
$bt->variable_symbol = $item['vs'];
|
||
$bt->specific_symbol = $item['ss'];
|
||
$bt->save();
|
||
|
||
// transaction fee
|
||
$fee = $fee_model->get_by_date_type(
|
||
$datetime, 'transfer fee'
|
||
);
|
||
if ($fee && $fee->fee > 0)
|
||
{
|
||
$tf_transfer_id = Transfer_Model::insert_transfer(
|
||
$ca->id, $operating->id, $transfer_id,
|
||
$member_id, $user_id, null, $datetime,
|
||
$now, __('Transfer fee'), $fee->fee
|
||
);
|
||
}
|
||
// do not change owner if there is already
|
||
// one (#800)
|
||
if (!$counter_ba->member_id)
|
||
{
|
||
$counter_ba->member_id = $member_id;
|
||
$counter_ba->save_throwable();
|
||
}
|
||
}
|
||
}
|
||
// member fee stats
|
||
$stats['member_fees'] += abs($item['castka']);
|
||
$stats['member_fees_nr']++;
|
||
}
|
||
// assign transfer? (0 - invalid id, 1 - assoc id, other are ordinary members)
|
||
if ($member_id && $member_id != Member_Model::ASSOCIATION)
|
||
{
|
||
$ca = ORM::factory('account')
|
||
->where('member_id', $member_id)
|
||
->find();
|
||
|
||
// has credit account?
|
||
if ($ca->id)
|
||
{
|
||
// add affected member for notification
|
||
$this->add_affected_member($member_id);
|
||
|
||
// assigning transfer
|
||
$a_transfer_id = Transfer_Model::insert_transfer(
|
||
$account->id, $ca->id, $transfer_id, $member_id,
|
||
$user_id, null, $datetime, $now,
|
||
__('Assigning of transfer'), abs($item['castka'])
|
||
);
|
||
|
||
// transaction fee
|
||
$fee = $fee_model->get_by_date_type(
|
||
$datetime, 'transfer fee'
|
||
);
|
||
if ($fee && $fee->fee > 0)
|
||
{
|
||
$tf_transfer_id = Transfer_Model::insert_transfer(
|
||
$ca->id, $operating->id, $transfer_id,
|
||
$member_id, $user_id, null, $datetime,
|
||
$now, __('Transfer fee'), $fee->fee
|
||
);
|
||
}
|
||
// do not change owner if there is already
|
||
// one (#800)
|
||
if (!$counter_ba->member_id)
|
||
{
|
||
$counter_ba->member_id = $member_id;
|
||
$counter_ba->save_throwable();
|
||
}
|
||
}
|
||
}
|
||
// member fee stats
|
||
$stats['member_fees'] += abs($item['castka']);
|
||
$stats['member_fees_nr']++;
|
||
}
|
||
// otherwise we assume that it is member fee
|
||
else
|
||
{
|
||
// let's identify member
|
||
$member_id = $this->find_member_by_vs($item['vs']);
|
||
|
||
|
||
if (!$member_id)
|
||
{
|
||
$stats['unidentified_nr']++;
|
||
... | ... | |
$ca = ORM::factory('account')
|
||
->where('member_id', $member_id)
|
||
->find();
|
||
|
||
|
||
// has credit account?
|
||
if ($ca->id)
|
||
{
|
||
// add affected member for notification
|
||
$this->add_affected_member($member_id);
|
||
|
||
|
||
// assigning transfer
|
||
$a_transfer_id = Transfer_Model::insert_transfer(
|
||
$account->id, $ca->id, $transfer_id, $member_id,
|
||
... | ... | |
|
||
// let's check duplicities
|
||
$duplicities = $bt->get_transaction_code_duplicities($transaction_codes, $ba->id);
|
||
|
||
|
||
if (count($duplicities) > count($transaction_codes))
|
||
{
|
||
$dm = __('Duplicate transaction codes') . ': ' . implode(', ', $duplicities);
|
||
throw new Duplicity_Exception($dm);
|
||
}
|
||
|
||
|
||
// done
|
||
$statement->transaction_commit();
|
||
|
||
|
||
// return
|
||
return $statement;
|
||
}
|
||
... | ... | |
Log::add_exception($e);
|
||
$this->add_exception_error($e);
|
||
return NULL;
|
||
}
|
||
}
|
||
}
|
||
}
|
application/models/ip_address.php | ||
---|---|---|
LEFT JOIN members_whitelists mw ON mw.member_id = m.id AND
|
||
mw.since <= CURDATE() AND mw.until >= CURDATE()
|
||
WHERE ip.member_id IS NULL
|
||
GROUP BY ip.id
|
||
) ip
|
||
$where
|
||
")->current()->total;
|
application/models/search.php | ||
---|---|---|
* - weight: that defines importance of the property in system, these field
|
||
* is used for searching of results. Weight should be a non-negative
|
||
* number from interval (0, 10>
|
||
* - limit_weight: that may be use for rising number of searched results
|
||
* in the simple AJAX search
|
||
* - ignore_special_threatment: that defines whether weight can be changed
|
||
* if property equals to searched keyword [optional, default FALSE]
|
||
* - variation_enabled: enable variations of keyword for searching this
|
||
... | ... | |
'method' => 'member_name',
|
||
'model' => 'member',
|
||
'weight' => 5,
|
||
'limit_weight' => 2.5,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
... | ... | |
'method' => 'member_id',
|
||
'model' => 'member',
|
||
'weight' => 0.1,
|
||
'limit_weight' => 0.5,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'member_variable_symbol',
|
||
'model' => 'member',
|
||
'weight' => 0.1,
|
||
'limit_weight' => 0.5,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'member_comment',
|
||
'model' => 'member',
|
||
'weight' => 0.5,
|
||
'limit_weight' => 0.5,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
... | ... | |
'method' => 'member_town',
|
||
'model' => 'member',
|
||
'weight' => 0.4,
|
||
'limit_weight' => 1,
|
||
'ignore_special_threatment' => TRUE,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Members_Controller', 'members')
|
||
... | ... | |
'method' => 'member_street',
|
||
'model' => 'member',
|
||
'weight' => 0.6,
|
||
'limit_weight' => 1,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
... | ... | |
'method' => 'member_street_number',
|
||
'model' => 'member',
|
||
'weight' => 0.1,
|
||
'limit_weight' => 1,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'member_organization_identifier',
|
||
'model' => 'member',
|
||
'weight' => 0.1,
|
||
'limit_weight' => 1,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'member_vat_organization_identifier',
|
||
'model' => 'member',
|
||
'weight' => 0.1,
|
||
'limit_weight' => 1,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'user_name',
|
||
'model' => 'user',
|
||
'weight' => 1,
|
||
'limit_weight' => 1,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Users_Controller', 'show')
|
||
),
|
||
... | ... | |
'method' => 'user_login',
|
||
'model' => 'user',
|
||
'weight' => 0.5,
|
||
'limit_weight' => 1,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'user_contact',
|
||
'model' => 'user',
|
||
'weight' => 0.1,
|
||
'limit_weight' => 1,
|
||
'access' => array('Members_Controller', 'members')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'town_name',
|
||
'model' => 'town',
|
||
'weight' => 1,
|
||
'limit_weight' => 1,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Address_points_Controller', 'town')
|
||
),
|
||
... | ... | |
'method' => 'device_name',
|
||
'model' => 'device',
|
||
'weight' => 1,
|
||
'limit_weight' => 1,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Devices_Controller', 'devices')
|
||
),
|
||
... | ... | |
'method' => 'device_mac',
|
||
'model' => 'device',
|
||
'weight' => 0.5,
|
||
'limit_weight' => 1,
|
||
'access' => array('Devices_Controller', 'devices')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'device_ip_address',
|
||
'model' => 'device',
|
||
'weight' => 0.5,
|
||
'limit_weight' => 1,
|
||
'access' => array('Devices_Controller', 'devices')
|
||
),
|
||
array(
|
||
'method' => 'device_ssid',
|
||
'model' => 'device',
|
||
'weight' => 0.5,
|
||
'limit_weight' => 1,
|
||
'access' => array('Devices_Controller', 'devices')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'subnet_name',
|
||
'model' => 'subnet',
|
||
'weight' => 1,
|
||
'limit_weight' => 1,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Subnets_Controller', 'subnet')
|
||
),
|
||
... | ... | |
'method' => 'subnet_address',
|
||
'model' => 'subnet',
|
||
'weight' => 1,
|
||
'limit_weight' => 1,
|
||
'access' => array('Subnets_Controller', 'subnet')
|
||
),
|
||
array
|
||
... | ... | |
'method' => 'link_name',
|
||
'model' => 'link',
|
||
'weight' => 1,
|
||
'limit_weight' => 1,
|
||
'variation_enabled' => TRUE,
|
||
'access' => array('Links_Controller', 'link')
|
||
),
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE m.name LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, array
|
||
(
|
||
" (" . __('I') . ")",
|
||
Config::get('lang'),
|
||
"%$keyword%"
|
||
));
|
||
}
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE m.id LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, array
|
||
(
|
||
" (" . __('I') . ")",
|
||
Config::get('lang'),
|
||
"$keyword%"
|
||
));
|
||
}
|
||
... | ... | |
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN accounts a ON a.member_id = m.id
|
||
LEFT JOIN variable_symbols vs ON vs.account_id = a.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE vs.variable_symbol LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, array
|
||
(
|
||
__('Variable symbol') . ": ",
|
||
" (" . __('I') . ")",
|
||
Config::get('lang'),
|
||
"$keyword%"
|
||
));
|
||
}
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE m.comment LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, array
|
||
(
|
||
__('Comment') . ": ",
|
||
" (" . __('I') . ")",
|
||
Config::get('lang'),
|
||
"%$keyword%"
|
||
));
|
||
}
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE CONCAT(tw.town, IF(tw.quarter IS NOT NULL, CONCAT(' ', tw.quarter), '')) LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, " (" . __('I') . ")", "%$keyword%");
|
||
".$sql_limit, " (" . __('I') . ")", Config::get('lang'), "%$keyword%");
|
||
}
|
||
|
||
/**
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE CONCAT(s.street, ' ',ap.street_number) LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, " (" . __('I') . ")", "%$keyword%");
|
||
".$sql_limit, " (" . __('I') . ")", Config::get('lang'), "%$keyword%");
|
||
}
|
||
|
||
/**
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE ap.street_number LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, " (" . __('I') . ")", "$keyword%");
|
||
".$sql_limit, " (" . __('I') . ")", Config::get('lang'), "$keyword%");
|
||
}
|
||
|
||
/**
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE m.organization_identifier LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, array
|
||
(
|
||
" (" . __('I') . ")",
|
||
Config::get('lang'),
|
||
"$keyword%"
|
||
));
|
||
}
|
||
... | ... | |
CONCAT(IFNULL(t.translated_term,e.value),' ',m.name,IF(mf.id IS NOT NULL,?,'')) AS return_value,
|
||
'members/show/' AS link FROM members m
|
||
JOIN enum_types e ON m.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
JOIN address_points ap ON m.address_point_id = ap.id
|
||
LEFT JOIN streets s ON ap.street_id = s.id
|
||
JOIN towns tw ON ap.town_id = tw.id
|
||
LEFT JOIN membership_interrupts mi ON m.id = mi.member_id
|
||
LEFT JOIN members_fees mf ON mi.members_fee_id = mf.id AND (mf.activation_date < CURDATE() AND mf.deactivation_date > CURDATE())
|
||
WHERE m.vat_organization_identifier LIKE ? COLLATE utf8_general_ci
|
||
GROUP BY m.id
|
||
ORDER BY ABS(LENGTH(value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, array
|
||
(
|
||
" (" . __('I') . ")",
|
||
Config::get('lang'),
|
||
"$keyword%"
|
||
));
|
||
}
|
||
... | ... | |
LEFT JOIN users_contacts uc ON u.id = uc.user_id
|
||
LEFT JOIN contacts c ON uc.contact_id = c.id
|
||
LEFT JOIN enum_types e ON c.type = e.id
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = 'cs'
|
||
LEFT JOIN translations t ON e.value LIKE t.original_term AND t.lang = ?
|
||
WHERE c.value LIKE ? COLLATE utf8_general_ci
|
||
ORDER BY ABS(LENGTH(c.value) - " . mb_strlen($keyword) . ")
|
||
".$sql_limit, __('User') . ": ", "%$keyword%");
|
||
".$sql_limit, __('User') . ": ", Config::get('lang'), "%$keyword%");
|
||
}
|
||
|
||
/**
|
application/vendors/deb/freenetis/changelog | ||
---|---|---|
freenetis (1.1.7) stable; urgency=low
|
||
* Fix release
|
||
* Fixes #895: Notification activation for members filtered by stored query
|
||
* Fixes #913: Fulltext search weights fix for important results
|
||
* Fixes #917: Count of IP addresses in IP grid
|
||
* Fixes #918: Monitoring activation for filtered devices
|
||
* Closes #953: Support for deposit payment by cash removed from FIO importer
|
||
-- Ondrej Fibich <ondrej.fibich@gmail.com> Thu, 29 Jan 2015 17:27:11 +0100
|
||
|
||
freenetis (1.1.6) stable; urgency=hight
|
||
* Fix release
|
||
* Fixes #894: Member name length limitation extended
|
||
... | ... | |
|
||
freenetis (1.1.4) stable; urgency=hight
|
||
* Fix release
|
||
* Fixes #880: Fixes filter initialization due to forgotten JS debug
|
||
* Fixes #880: Fixes filter initialization due to forgotten JS debug
|
||
* Fixes #881: Filter initialization if field has no class
|
||
-- Ondrej Fibich <ondrej.fibich@gmail.com> Tue, 11 Feb 2014 15:12:02 +0100
|
||
|
version.php | ||
---|---|---|
* The current version of FreenetIS.
|
||
* This value must be changed by developers in a new release of FreenetIS.
|
||
*/
|
||
define('FREENETIS_VERSION', '1.1.6');
|
||
define('FREENETIS_VERSION', '1.1.7');
|
Také k dispozici: Unified diff
Release 1.1.7