summaryrefslogtreecommitdiff
path: root/ext/mnogosearch
diff options
context:
space:
mode:
authorSergey Kartashoff <gluke@php.net>2001-02-05 15:15:09 +0000
committerSergey Kartashoff <gluke@php.net>2001-02-05 15:15:09 +0000
commitfb057e7ea9165ead016242f849a23d98a29ff1f7 (patch)
tree82edf8179f49798919b4f97c15e5808622a58b1a /ext/mnogosearch
parentf182245c530301e3d4e4789dd4ef5a8732f3cb57 (diff)
downloadphp-git-fb057e7ea9165ead016242f849a23d98a29ff1f7.tar.gz
Added new Udm_Clear_Search_Limits mnogosearch extension function.
@- Added Udm_Clear_Search_Limits mnoGoSearch extension function.
Diffstat (limited to 'ext/mnogosearch')
-rw-r--r--ext/mnogosearch/php_mnogo.c39
-rw-r--r--ext/mnogosearch/php_mnogo.h7
-rw-r--r--ext/mnogosearch/test.php2
3 files changed, 41 insertions, 7 deletions
diff --git a/ext/mnogosearch/php_mnogo.c b/ext/mnogosearch/php_mnogo.c
index 97b2dabeae..24fe5abee0 100644
--- a/ext/mnogosearch/php_mnogo.c
+++ b/ext/mnogosearch/php_mnogo.c
@@ -72,17 +72,20 @@ static int le_link,le_res;
function_entry mnogosearch_functions[] = {
PHP_FE(udm_alloc_agent, NULL)
PHP_FE(udm_set_agent_param, NULL)
+
PHP_FE(udm_add_search_limit, NULL)
- PHP_FE(udm_free_agent, NULL)
-
+ PHP_FE(udm_clear_search_limits, NULL)
+
PHP_FE(udm_errno, NULL)
PHP_FE(udm_error, NULL)
PHP_FE(udm_find, NULL)
- PHP_FE(udm_free_res, NULL)
- PHP_FE(udm_get_res_field, NULL)
PHP_FE(udm_get_res_param, NULL)
-
+ PHP_FE(udm_get_res_field, NULL)
+
+ PHP_FE(udm_free_res, NULL)
+ PHP_FE(udm_free_agent, NULL)
+
{NULL, NULL, NULL}
};
@@ -435,6 +438,32 @@ DLEXPORT PHP_FUNCTION(udm_add_search_limit)
/* }}} */
+/* {{{ proto int udm_clear_search_limits(int agent)
+ Clear all mnoGoSearch search restrictions */
+DLEXPORT PHP_FUNCTION(udm_clear_search_limits)
+{
+ pval ** yyagent;
+ UDM_AGENT * Agent;
+ switch(ZEND_NUM_ARGS()){
+ case 1: {
+ if (zend_get_parameters_ex(1, &yyagent)==FAILURE) {
+ RETURN_FALSE;
+ }
+ }
+ break;
+ default:
+ WRONG_PARAM_COUNT;
+ break;
+ }
+ ZEND_FETCH_RESOURCE(Agent, UDM_AGENT *, yyagent, -1, "mnoGoSearch-Agent", le_link);
+
+ UdmClearLimits(Agent->Conf);
+
+ RETURN_TRUE;
+}
+/* }}} */
+
+
/* {{{ proto int udm_find(int agent, string query)
Perform search */
DLEXPORT PHP_FUNCTION(udm_find)
diff --git a/ext/mnogosearch/php_mnogo.h b/ext/mnogosearch/php_mnogo.h
index 4603d8fc27..ac323358c1 100644
--- a/ext/mnogosearch/php_mnogo.h
+++ b/ext/mnogosearch/php_mnogo.h
@@ -48,17 +48,20 @@ DLEXPORT PHP_MINFO_FUNCTION(mnogosearch);
DLEXPORT PHP_FUNCTION(udm_alloc_agent);
DLEXPORT PHP_FUNCTION(udm_set_agent_param);
+
DLEXPORT PHP_FUNCTION(udm_add_search_limit);
-DLEXPORT PHP_FUNCTION(udm_free_agent);
+DLEXPORT PHP_FUNCTION(udm_clear_search_limits);
DLEXPORT PHP_FUNCTION(udm_error);
DLEXPORT PHP_FUNCTION(udm_errno);
DLEXPORT PHP_FUNCTION(udm_find);
-DLEXPORT PHP_FUNCTION(udm_free_res);
DLEXPORT PHP_FUNCTION(udm_get_res_field);
DLEXPORT PHP_FUNCTION(udm_get_res_param);
+DLEXPORT PHP_FUNCTION(udm_free_res);
+DLEXPORT PHP_FUNCTION(udm_free_agent);
+
#else
#define mnogosearch_module_ptr NULL
diff --git a/ext/mnogosearch/test.php b/ext/mnogosearch/test.php
index 2dd86c2a1e..446c209f08 100644
--- a/ext/mnogosearch/test.php
+++ b/ext/mnogosearch/test.php
@@ -43,6 +43,8 @@
// Udm_Add_Search_Limit($udm,UDM_LIMIT_TAG,"01");
// Udm_Add_Search_Limit($udm,UDM_LIMIT_CAT,"01");
// Udm_Add_Search_Limit($udm,UDM_LIMIT_LANG,"en");
+
+// Udm_Clear_Search_Limits($udm);
// Stage 4: perform search