]> git.pld-linux.org Git - packages/php.git/commitdiff
- update mnogosearch extension to 1.68 version
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Mon, 24 Feb 2003 20:45:53 +0000 (20:45 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    php-mnogosearch-php-extension-1.68.patch -> 1.1

php-mnogosearch-php-extension-1.68.patch [new file with mode: 0644]

diff --git a/php-mnogosearch-php-extension-1.68.patch b/php-mnogosearch-php-extension-1.68.patch
new file mode 100644 (file)
index 0000000..6d08207
--- /dev/null
@@ -0,0 +1,189 @@
+diff -urN php-4.3.1.org/ext/mnogosearch/php_mnogo.c php-4.3.1/ext/mnogosearch/php_mnogo.c
+--- php-4.3.1.org/ext/mnogosearch/php_mnogo.c  Mon Feb 24 21:42:43 2003
++++ php-4.3.1/ext/mnogosearch/php_mnogo.c      Mon Dec 16 20:17:09 2002
+@@ -1,5 +1,5 @@
+ /* $Source$ */
+-/* $Id$ */
++/* $Id$ */
+ /*
+    +----------------------------------------------------------------------+
+@@ -163,6 +163,8 @@
+ #if UDM_VERSION_ID >= 30204
+       PHP_FE(udm_parse_query_string,  NULL)
+       PHP_FE(udm_make_excerpt,        NULL)
++      PHP_FE(udm_set_agent_param_ex,  NULL)
++      PHP_FE(udm_get_res_field_ex,    NULL)
+ #endif
+ #endif
+@@ -466,7 +468,9 @@
+                               UdmVarListReplaceStr(&Env->Vars,"DBAddr",dbaddr);
+                               if(UDM_OK!=UdmDBSetAddr(Env->db,dbaddr,UDM_OPEN_MODE_READ)){
+                                   sprintf(Env->errstr,"Invalid DBAddr: '%s'",dbaddr);
++#if UDM_VERSION_ID <= 30207
+                                   Env->errcode=1;
++#endif
+                                   php_error(E_WARNING,"%s(): Invalid DBAddr", get_active_function_name(TSRMLS_C));
+                                   RETURN_FALSE;
+                               }
+@@ -517,7 +521,9 @@
+                               UdmVarListReplaceStr(&Env->Vars,"DBAddr",dbaddr);
+                               if(UDM_OK!=UdmDBSetAddr(Env->db,dbaddr,UDM_OPEN_MODE_READ)){
+                                   sprintf(Env->errstr,"Invalid DBAddr: '%s'",dbaddr);
++#if UDM_VERSION_ID <= 30207
+                                   Env->errcode=1;
++#endif
+                                   php_error(E_WARNING,"%s(): Invalid DBAddr", get_active_function_name(TSRMLS_C));
+                                   RETURN_FALSE;
+                               }
+@@ -997,6 +1003,8 @@
+               case UDM_PARAM_VARDIR:
+ #if UDM_VERSION_ID < 30200
+                       udm_snprintf(Agent->Conf->vardir,sizeof(Agent->Conf->vardir)-1,"%s%s",val,UDMSLASHSTR);
++#elif UDM_VERSION_ID >= 30208
++                      UdmVarListReplaceStr(&Agent->Conf->Vars,"Vardir",val);
+ #elif UDM_VERSION_ID >= 30204
+                       UdmVarListReplaceStr(&Agent->Conf->Vars,"Vardir",val);
+                       snprintf(Agent->Conf->vardir,sizeof(Agent->Conf->vardir)-1,"%s%s",val,UDMSLASHSTR);
+@@ -1665,6 +1673,106 @@
+       RETURN_TRUE;
+ }
+ /* }}} */
++
++/* {{{ proto int udm_set_agent_param_ex(int agent, string var, string val)
++   Set mnoGoSearch agent session parameters extended */
++DLEXPORT PHP_FUNCTION(udm_set_agent_param_ex)
++{
++      pval **yyagent, **yyvar, **yyval;
++      char *val, *var;
++      UDM_AGENT * Agent;
++
++      switch(ZEND_NUM_ARGS()){
++      
++              case 3:                 
++                      if(zend_get_parameters_ex(3,&yyagent,&yyvar,&yyval)==FAILURE){
++                              RETURN_FALSE;
++                      }
++                      convert_to_string_ex(yyvar);
++                      convert_to_string_ex(yyval);
++                      ZEND_FETCH_RESOURCE(Agent, UDM_AGENT *, yyagent, -1, "mnoGoSearch-agent", le_link);
++                      var = Z_STRVAL_PP(yyvar);
++                      val = Z_STRVAL_PP(yyval);
++                      
++                      break;
++                      
++              default:
++                      WRONG_PARAM_COUNT;
++                      break;
++      }
++      
++      UdmVarListReplaceStr(&Agent->Conf->Vars,var,val);
++      
++      if (!strcasecmp(var,"LocalCharset")) {
++              const char * charset=UdmVarListFindStr(&Agent->Conf->Vars,"LocalCharset","iso-8859-1");
++              Agent->Conf->lcs=UdmGetCharSet(charset);
++      } else if (!strcasecmp(var,"BrowserCharset")) {
++              const char * charset=UdmVarListFindStr(&Agent->Conf->Vars,"BrowserCharset","iso-8859-1");
++              Agent->Conf->bcs=UdmGetCharSet(charset);
++      } else if (!strcasecmp(var,"Synonym")) {
++              if (UdmSynonymListLoad(Agent->Conf,val)) {
++                      php_error(E_WARNING, "%s(): %s", get_active_function_name(TSRMLS_C),Agent->Conf->errstr);
++                      RETURN_FALSE;
++              } else UdmSynonymListSort(&(Agent->Conf->Synonyms));
++      } else if (!strcasecmp(var,"Stopwordfile")) {
++              if (UdmStopListLoad(Agent->Conf,val)) {
++                      php_error(E_WARNING, "%s(): %s", Agent->Conf->errstr, get_active_function_name(TSRMLS_C));
++                      RETURN_FALSE;
++              }
++      } else if (!strcasecmp(var,"MinWordLen")) {
++              Agent->Conf->WordParam.min_word_len=atoi(val);
++      } else if (!strcasecmp(var,"MaxWordLen")) {
++              Agent->Conf->WordParam.max_word_len=atoi(val);
++#if UDM_VERSION_ID <= 30207
++      } else if (!strcasecmp(var,"VarDir")) {
++              snprintf(Agent->Conf->vardir,sizeof(Agent->Conf->vardir)-1,"%s%s",val,UDMSLASHSTR);
++#endif
++      }
++
++      RETURN_TRUE;
++}
++
++/* {{{ proto string udm_get_res_field_ex(int res, int row, string field)
++   Fetch mnoGoSearch result field */
++DLEXPORT PHP_FUNCTION(udm_get_res_field_ex)
++{
++      pval **yyres, **yyrow_num, **yyfield_name;
++
++      UDM_RESULT * Res;
++      int row;
++      char *field;
++      
++      switch(ZEND_NUM_ARGS()){
++              case 3: {
++                              if (zend_get_parameters_ex(3, &yyres,&yyrow_num,&yyfield_name)==FAILURE){
++                                      RETURN_FALSE;
++                              }
++                              convert_to_string_ex(yyrow_num);
++                              convert_to_string_ex(yyfield_name);
++                              field = Z_STRVAL_PP(yyfield_name);
++                              row = atoi(Z_STRVAL_PP(yyrow_num));
++                      }
++                      break;
++              default:
++                      WRONG_PARAM_COUNT;
++                      break;
++      }
++      
++      ZEND_FETCH_RESOURCE(Res, UDM_RESULT *, yyres, -1, "mnoGoSearch-Result", le_res);
++      if(row<Res->num_rows){
++              if (!strcasecmp(field,"URL")) {
++                  char        *al;
++                  al = (char *)MyRemoveHiLightDup((const char *)(UdmVarListFindStr(&(Res->Doc[row].Sections), field, "")));
++                  UdmVarListReplaceStr(&Res->Doc[row].Sections,field,al);
++                  free(al);
++              }
++              RETURN_STRING((char *)UdmVarListFindStr(&Res->Doc[row].Sections,field,""),1);
++      } else {
++              php_error(E_WARNING,"%s(): row number too large", get_active_function_name(TSRMLS_C));
++              RETURN_FALSE;
++      }
++}
++/* }}} */
+ #endif
+ /* {{{ proto int udm_find(int agent, string query)
+@@ -2071,7 +2179,13 @@
+                       break;
+       }
+       ZEND_FETCH_RESOURCE(Agent, UDM_AGENT *, yyagent, -1, "mnoGoSearch-Agent", le_link);
+-#if UDM_VERSION_ID >= 30204
++#if UDM_VERSION_ID >= 30208
++      if (UdmEnvErrMsg(Agent->Conf) && strlen(UdmEnvErrMsg(Agent->Conf))) {
++          RETURN_LONG(1);
++      } else {
++          RETURN_LONG(0);
++      }
++#elif UDM_VERSION_ID >= 30204
+       RETURN_LONG(UdmEnvErrCode(Agent->Conf));
+ #else
+       RETURN_LONG(UdmDBErrorCode(Agent->db));
+diff -urN php-4.3.1.org/ext/mnogosearch/php_mnogo.h php-4.3.1/ext/mnogosearch/php_mnogo.h
+--- php-4.3.1.org/ext/mnogosearch/php_mnogo.h  Mon Feb 24 21:42:43 2003
++++ php-4.3.1/ext/mnogosearch/php_mnogo.h      Sun Nov 24 20:39:46 2002
+@@ -1,5 +1,5 @@
+ /* $Source$ */
+-/* $Id$ */
++/* $Id$ */
+ /* 
+    +----------------------------------------------------------------------+
+@@ -68,6 +68,8 @@
+ #if UDM_VERSION_ID >= 30204
+ DLEXPORT PHP_FUNCTION(udm_parse_query_string);
+ DLEXPORT PHP_FUNCTION(udm_make_excerpt);
++DLEXPORT PHP_FUNCTION(udm_set_agent_param_ex);
++DLEXPORT PHP_FUNCTION(udm_get_res_field_ex);
+ #endif
+ #endif
This page took 0.047011 seconds and 4 git commands to generate.