private function EvaluationImplementation::generateSql in Drupal 8 upgrade evaluation 6
Same name and namespace in other branches
- 7 includes/EvaluationImplementation.php \Upgrade_check\EvaluationImplementation::generateSql()
Generate SQL.
9 calls to EvaluationImplementation::generateSql()
- EvaluationImplementation::upgradeCheckCommentData in includes/
EvaluationImplementation.php - Fetch comment data.
- EvaluationImplementation::upgradeCheckEntityData in includes/
EvaluationImplementation.php - Fetching: Nodes/Files usage/Users/Image styles/Roles/Languages/Blocks.
- EvaluationImplementation::upgradeCheckFieldsData in includes/
EvaluationImplementation.php - Fetch fields data.
- EvaluationImplementation::upgradeCheckFilesData in includes/
EvaluationImplementation.php - Fetch files data.
- EvaluationImplementation::upgradeCheckMenusData in includes/
EvaluationImplementation.php - Fetch menus data.
File
- includes/
EvaluationImplementation.php, line 619
Class
Namespace
Upgrade_checkCode
private function generateSql($data, $dontAll = FALSE) {
$result = array();
$fields = $ident = $condition = '';
if (!empty($data) && !empty($data['t']) && !empty($data['a'])) {
if (!empty($data['j']) && !empty($data['j']['t'])) {
if (!empty($data['j']['a']) && !empty($data['j']['jt']) && !empty($data['j']['con'])) {
$sqlVal = $data['a'] . '.' . $data['j']['con']['left'] . ' = ';
$sqlVal .= $data['j']['a'] . '.' . $data['j']['con']['right'];
if ($data['j']['jt'] === 'inner') {
$join = 'INNER';
}
elseif ($data['j']['jt'] === 'left') {
$join = 'LEFT';
}
elseif ($data['j']['jt'] === 'right') {
$join = 'RIGHT';
}
$joinSql = $join . ' JOIN {' . $data['j']['t'] . '} ' . $data['j']['a'] . ' ON ' . $sqlVal;
}
if (!empty($data['j']['f'])) {
foreach ($data['j']['f'] as $valFC) {
$fields .= $ident . $data['j']['a'] . '.' . $valFC;
$ident = ', ';
}
}
if (!empty($data['j']['c']) && is_array($data['j']['c'])) {
$ident = '';
foreach ($data['j']['c'] as $value) {
if (!empty($value) && !empty($value['f']) && !empty($value['v'])) {
$param = '=';
if (!empty($value['p'])) {
$param = $value['p'];
}
if (!empty($conditions)) {
$ident = ' AND ';
}
if (is_numeric($value['v'])) {
$conditions .= $ident . $value['f'] . ' ' . $param . ' ' . $value['v'];
}
else {
$conditions .= $ident . $value['f'] . ' ' . $param . ' "' . $value['v'] . '"';
}
}
}
}
}
if (!empty($data['f']) && is_array($data['f'])) {
$ident = '';
if (!empty($fields)) {
$ident = ', ';
}
foreach ($data['f'] as $valF) {
$fields .= $ident . $data['a'] . '.' . $valF;
$ident = ', ';
}
}
if (!empty($data['c']) && is_array($data['c'])) {
$ident = '';
foreach ($data['c'] as $value) {
if (!empty($value) && !empty($value['f']) && !empty($value['v'])) {
$param = '=';
if (!empty($value['p'])) {
$param = $value['p'];
}
if (!empty($conditions)) {
$ident = ' AND ';
}
if (is_numeric($value['v'])) {
$conditions .= $ident . $value['f'] . ' ' . $param . ' ' . $value['v'];
}
else {
$conditions .= $ident . $value['f'] . ' ' . $param . ' "' . $value['v'] . '"';
}
}
}
}
if (!empty($fields)) {
$query = 'SELECT ' . $fields . ' FROM {' . $data['t'] . '} ' . $data['a'];
if (!empty($joinSql)) {
$query .= ' ' . $joinSql;
}
if (!empty($conditions)) {
$query .= ' WHERE ' . $conditions;
}
if (empty($dontAll)) {
$sql = db_query($query);
while ($data = db_fetch_object($sql)) {
if (!empty($data)) {
$result[] = $data;
}
}
}
else {
return db_query($query);
}
}
}
return $result;
}