public function getSettingCriteria($name, $value = null, array $criteria = null)
{
$cloudCredentialsProperty = new CloudCredentialsProperty();
$alias = "ccp_" . trim($this->db()->qstr($name), "'");
$join = "\n JOIN {$cloudCredentialsProperty->table($alias)} ON {$this->columnId()} = {$cloudCredentialsProperty->columnCloudCredentialsId($alias)}\n AND {$cloudCredentialsProperty->columnName($alias)} = {$cloudCredentialsProperty->qstr('name', $name)}";
if (isset($criteria[AbstractEntity::STMT_FROM])) {
$criteria[AbstractEntity::STMT_FROM] .= " {$join}";
} else {
$criteria[AbstractEntity::STMT_FROM] = " {$join}";
}
if (isset($value)) {
$where = "{$cloudCredentialsProperty->columnValue($alias)} = {$cloudCredentialsProperty->qstr('value', $value)}";
if (isset($criteria[AbstractEntity::STMT_WHERE])) {
$criteria[AbstractEntity::STMT_WHERE] .= " AND ({$where})";
} else {
$criteria[AbstractEntity::STMT_WHERE] = $where;
}
}
return $criteria;
}