Example #1
0
function buildAggregation($formFilters = array())
{
    global $availAggs;
    $formFiltersIndex = array_keys($formFilters);
    $aggsQuery = '';
    foreach ($availAggs as $value) {
        $excludeFilter = '';
        if (in_array($value, $formFiltersIndex)) {
            $excludeFilter = $value;
        }
        if ($value == 'Marks') {
            $aggFilter = buildFilter($formFilters, $excludeFilter);
            $aggsQuery .= ' "Marks": {
                                            ' . $aggFilter . ',
                                          
                                          "aggs": {
                                             "Marks": {
                                                "range": {
                                                   "field": "Marks",
                                                   "ranges": [
                                                      {
                                                         "key": "0 TO 20",
                                                         "to": 20
                                                      },
                                                      {
                                                         "key": "20 TO 40",
                                                         "from": 20,
                                                         "to": 40
                                                      },
                                                      {
                                                         "key": "40 TO 60",
                                                         "from": 40,
                                                         "to": 60
                                                      },
                                                      {
                                                         "key": "60 TO 80",
                                                         "from": 60,
                                                         "to": 80
                                                      },
                                                      {
                                                         "key": "80 TO 100",
                                                         "from": 80,
                                                         "to": 100
                                                      }
                                                      
                                                   ]
                                                }
                                             }
                                          }
                                       },';
        } else {
            $aggFilter = buildFilter($formFilters, $excludeFilter);
            $aggsQuery .= '"' . $value . '": {
                                ' . $aggFilter . ',
                                "aggs": {
                                   "' . $value . '": {
                                      "terms": {
                                         "field": "' . $value . '",
                                         "size": 200
                                      }
                                   }
                                }
                             },';
        }
        // End If Marks Condition.
    }
    // End Foreach Aggregation loop
    $aggsQuery = '"aggs": {' . rtrim($aggsQuery, ",") . '}';
    return $aggsQuery;
}
function displayFilter($page, $name, $id, $ele_id, $overrides = "")
{
    print "\n<p><form name=\"{$name}\" action=\"" . XOOPS_URL . "/modules/pageworks/index.php?page={$page}\" method=\"post\">\n";
    print buildFilter($id, $ele_id, "", $name, $overrides);
    print "<input type=hidden name=calview value=" . $_POST['calview'] . ">\n";
    print "</form></p>\n";
}
function formulize_buildQSFilter($handle, $search_text)
{
    formulize_benchmark("start of building filter");
    $elementMetaData = formulize_getElementMetaData($handle, true);
    // true means this is a handle
    $id = $elementMetaData['ele_id'];
    if ($elementMetaData['ele_type'] == "select" or $elementMetaData['ele_type'] == "radio" or $elementMetaData['ele_type'] == "checkbox") {
        $qsfparts = explode("_", $search_text);
        $search_term = strstr($search_text, "_") ? $qsfparts[1] : $search_text;
        $filterHTML = buildFilter("search_" . $handle, $id, _formulize_QSF_DefaultText, $name = "{listofentries}", $search_term);
        return $filterHTML;
    }
    return "";
}
Example #4
0
function buildAggregation($formFilters = array())
{
    global $availAggs;
    $formFiltersIndex = array_keys($formFilters);
    $aggsQuery = '';
    foreach ($availAggs as $value) {
        $excludeFilter = '';
        if (in_array($value, $formFiltersIndex)) {
            $excludeFilter = $value;
        }
        if ($value == 'Price') {
            $aggFilter = buildFilter($formFilters, $excludeFilter);
            $aggsQuery .= ' "Price": {
                                            ' . $aggFilter . ',
                                          
                                          "aggs": {
                                             "Price": {
                                                "range": {
                                                   "field": "Price",
                                                   "ranges": [
                                                      {
                                                         "key": "0 TO 1000",
                                                         "to": 1000
                                                      },
                                                      {
                                                         "key": "1000 TO 3000",
                                                         "from": 1000,
                                                         "to": 3000
                                                      },
                                                      {
                                                         "key": "3000 TO 5000",
                                                         "from": 3000,
                                                         "to": 5000
                                                      },
                                                      {
                                                         "key": "5000 TO 10000",
                                                         "from": 5000,
                                                         "to": 10000
                                                      },
                                                      {
                                                         "key": "10000 TO 50000",
                                                         "from": 10000,
                                                         "to": 50000
                                                      },
                                                      {
                                                         "key": "50000 TO 100000",
                                                         "from": 50000,
                                                         "to": 100000
                                                      }
                                                   ]
                                                }
                                             }
                                          }
                                       },';
        } else {
            $aggFilter = buildFilter($formFilters, $excludeFilter);
            $aggsQuery .= '"' . $value . '": {
                                ' . $aggFilter . ',
                                "aggs": {
                                   "' . $value . '": {
                                      "terms": {
                                         "field": "' . $value . '",
                                         "size": 200
                                      }
                                   }
                                }
                             },';
        }
        // End If Price Condition.
    }
    // End Foreach Aggregation loop
    $aggsQuery = '"aggs": {' . rtrim($aggsQuery, ",") . '}';
    return $aggsQuery;
}
Example #5
0
function getData($_int, $_gr, $_vi, $_ft)
{
    if ($_int) {
        buildInternalUsers();
    }
    if ($_gr) {
        buildGroups();
    }
    if ($_vi) {
        buildTracking();
    }
    if ($_ft) {
        buildFilter();
    }
}
Example #6
0
function buildAggregation($formFilters = array())
{
    global $availAggs;
    $formFiltersIndex = array_keys($formFilters);
    $aggsQuery = '';
    foreach ($availAggs as $value) {
        $excludeFilter = '';
        if (in_array($value, $formFiltersIndex)) {
            $excludeFilter = $value;
        }
        $aggFilter = buildFilter($formFilters, $excludeFilter);
        $aggsQuery .= '"' . $value . '": {
                                ' . $aggFilter . ',
                                "aggs": {
                                   "' . $value . '": {
                                      "terms": {
                                         "field": "' . $value . '",
                                         "size": 200
                                      }
                                   }
                                }
                             },';
    }
    // End Foreach Aggregation loop
    $aggsQuery = '"aggs": {' . rtrim($aggsQuery, ",") . '}';
    return $aggsQuery;
}