<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE></TITLE>
<META http-equiv=Content-Type content=text/html;charset=UTF-8>
<META content="MSHTML 6.00.5730.11" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#ffffff>
<DIV><FONT size=2>Hi</FONT></DIV>
<DIV><FONT size=2></FONT> </DIV>
<DIV><FONT size=2>there are no search_config parameter set in the post request.
I think the main search input name must be search_config</FONT></DIV>
<DIV><FONT size=2>do you have a <input type="hidden" id="search_config"
name="search_config" element in your search template ?</FONT></DIV>
<DIV><FONT size=2></FONT> </DIV>
<DIV><FONT size=2>regards</FONT></DIV>
<DIV><FONT size=2>Oliver</FONT></DIV>
<DIV> </DIV>
<BLOCKQUOTE
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B>
<A title=veroh@bluewin.ch href="mailto:veroh@bluewin.ch">Véro Herzl -
Bluewin</A> </DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A
title=damien.corpataux@camptocamp.com
href="mailto:damien.corpataux@camptocamp.com">Damien Corpataux</A> ; <A
title=cartoweb-users@lists.maptools.org
href="mailto:cartoweb-users@lists.maptools.org">cartoweb-users@lists.maptools.org</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Tuesday, April 17, 2007 2:21
PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [Cartoweb-users] Plugin
search not working</DIV>
<DIV><BR></DIV>OK, well, I am in the development mode but with Ajax on and
cartoclient.Ajaxheader,tpl, so the error message is for the Ajay part<BR><BR><PRE wrap="">--- Action Search.DoIt triggered ---
Calling Search.DoIt onBeforeAjaxCall()
Calling AjaxPlugins.Common.onBeforeAjaxCall()
Initiating AJAX request
Pending actions: 1
GET params:
ajaxActionRequest=Search.DoIt&
POST params:
posted=1&js_folder_idx=5&js_toolbar_idx=&selection_type=&selection_coords=&features=&js_accounting=version=0;
hasJava=true;winInnerWidth=1024;winInnerHeight=578;screenWidth=1024;
screenHeight=768;screenColorDepth=32&outline_label_text=votre
titre&tool=zoomin&project=n16&recenter_x=&recenter_y=&recenter_doit=0&shortcut_doit=0&openNodes=&layers
[]=OPA&layers[]=OPB&layers[]=OPC&layers[]=OPD&layers[]=OPE&layers[]
=OPF&layers[]=OPG&layers[]=OPH&layers[]=N16&layers[]
=POSTGIS_MAJ&layers[]=EDITPOINT&layers[]=EDITPOLY&layers[]
=EDITLINE&pdfMarginX=20&pdfMarginY=20&pdfA4x=210&pdfA4y=297&pdfA3x=297&pdfA3y=420&pdfOrientation=portrait&pdfMapAngle=&pdfMapCenterX=&pdfMapCenterY=&pdfTitle=&pdfNote=&pdfScalebar=&pdfLegend=0&viewTitle=&author=&handleView=0&locate_MAJ=&locate_MAJ2=&id_recenter_ids=&search_mandat_n16=N2354&search_travaux=&search_date_txt=&search_en_cours=&search_config=&search_sort_column=&search_sort_direction=asc&search_number=&outline_mask=no&outline_point_symbol=circle&outline_point_size=10&outline_line_size=3&outline_line_transparency=100&outline_polygon_transparency=60&edit_validate_all=0&recenter_scale=0&shortcut_id=-
1&mapsize=1&pdfFormat=A4&pdfResolution=96&pdfScale=2500&id_recenter_layer=MAJ&edit_layer=0&
Waiting for response...
Response received!
Error: AjaxHandler.actionRequest(): received response is
malformed!
</PRE>And below it, I got the following failure :<BR>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Failure<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">CartoWeb
version: 3.3.0 [$Revision: 1.2 $]<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">class:<SPAN>
</SPAN>CartoclientException<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">message:<SPAN>
</SPAN>Empty config or config not found<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Backtrace:<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file:
UNKNOWN - UNKNOWN<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
ClientSearch->handleHttpPostRequest(Array(62))<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file: 270
- C:\wamp\www\cartoweb3\common\PluginManager.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
call_user_func_array(Array(2), Array(1))<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file: 320
- C:\wamp\www\cartoweb3\common\PluginManager.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
PluginManager->callPluginImplementing(Object(ClientSearch), "GuiProvider",
"handleHttpPostRequest", Array(1))<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file: 685
- C:\wamp\www\cartoweb3\client\Cartoclient.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
PluginManager->callEnabledPluginsImplementing(1, "GuiProvider",
"handleHttpPostRequest", Array(1))<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file: 995
- C:\wamp\www\cartoweb3\client\Cartoclient.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
Cartoclient->callEnabledPluginsImplementing(1, "GuiProvider",
"handleHttpPostRequest", Array(62))<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file:
1220 - C:\wamp\www\cartoweb3\client\Cartoclient.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
Cartoclient->doMain()<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file: 38
- C:\wamp\www\cartoweb3\htdocs\client.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
Cartoclient->main()<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">file: 3 -
C:\wamp\www\cartoweb3\htdocs\n16.php<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">call:
require_once("C:\wamp\www\cartoweb3\htdocs\client.php")<O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P>
<P class=MsoNormal><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><O:P></O:P></SPAN></P><BR><BR><BR>Damien
Corpataux a écrit :
<BLOCKQUOTE cite=mid46249848.70502@camptocamp.com
type="cite">Hello,<BR><BR>if you are in development mode, when an error
occurs, an alert box is displayed and allows you to print the cartoweb error
message. Can you post this error
message?<BR><BR>Regards,<BR>Damien<BR><BR><BR><A
class=moz-txt-link-abbreviated
href="mailto:veroh@bluewin.ch">veroh@bluewin.ch</A> wrote:
<BLOCKQUOTE
cite=mid4600407.692851176799710599.JavaMail.webmail@lps6zhh.bluewin.ch
type="cite"><PRE wrap="">Hello,
I am trying to implement the plugin search in my project but I got
the following error
--- Action Search.DoIt triggered ---
Calling Search.DoIt onBeforeAjaxCall()
Calling AjaxPlugins.Common.onBeforeAjaxCall()
Initiating AJAX request
Pending actions: 1
GET params:
ajaxActionRequest=Search.DoIt&
POST params:
posted=1&js_folder_idx=5&js_toolbar_idx=&selection_type=&selection_coords=&features=&js_accounting=version=0;
hasJava=true;winInnerWidth=1024;winInnerHeight=578;screenWidth=1024;
screenHeight=768;screenColorDepth=32&outline_label_text=votre
titre&tool=zoomin&project=n16&recenter_x=&recenter_y=&recenter_doit=0&shortcut_doit=0&openNodes=&layers
[]=OPA&layers[]=OPB&layers[]=OPC&layers[]=OPD&layers[]=OPE&layers[]
=OPF&layers[]=OPG&layers[]=OPH&layers[]=N16&layers[]
=POSTGIS_MAJ&layers[]=EDITPOINT&layers[]=EDITPOLY&layers[]
=EDITLINE&pdfMarginX=20&pdfMarginY=20&pdfA4x=210&pdfA4y=297&pdfA3x=297&pdfA3y=420&pdfOrientation=portrait&pdfMapAngle=&pdfMapCenterX=&pdfMapCenterY=&pdfTitle=&pdfNote=&pdfScalebar=&pdfLegend=0&viewTitle=&author=&handleView=0&locate_MAJ=&locate_MAJ2=&id_recenter_ids=&search_mandat_n16=N2354&search_travaux=&search_date_txt=&search_en_cours=&search_config=&search_sort_column=&search_sort_direction=asc&search_number=&outline_mask=no&outline_point_symbol=circle&outline_point_size=10&outline_line_size=3&outline_line_transparency=100&outline_polygon_transparency=60&edit_validate_all=0&recenter_scale=0&shortcut_id=-
1&mapsize=1&pdfFormat=A4&pdfResolution=96&pdfScale=2500&id_recenter_layer=MAJ&edit_layer=0&
Waiting for response...
Response received!
Error: AjaxHandler.actionRequest(): received response is
malformed!
I have a search.ini file in my client_conf :
config.POSTGIS_MAJ.provider.type = fulltextTable
config.POSTGIS_MAJ.provider.table = maj2
config.POSTGIS_MAJ.provider.id = gid
config.POSTGIS_MAJ.provider.columns = mandat_n16, travaux,
date_txt, en_cours
config.POSTGIS_MAJ.provider.fulltextColumns = mandat_n16, travaux,
date_txt, en_cours
config.POSTGIS_MAJ.provider.sortColumn = date_txt
config.POSTGIS_MAJ.provider.sortDirection = asc
config.POSTGIS_MAJ.provider.sortPriorities = date_txt, mandat_n16,
travaux, en_cours
config.POSTGIS_MAJ.provider.labels = mandat_n16, travaux, date_txt,
en_cours
config.POSTGIS_MAJ.formatter.type = smarty
config.POSTGIS_MAJ.formatter.template = search_results
Where POSTGIS is the layer I declared in my MAP file which is a
POSTGRESQL/POSTGIS table (maj2) and gid is the 'id_attribute_string'
I have also one in the server_side :
dbType = pgsql
dsn = pgsql://postgres:afgan6@localhost:5432/demo_n16
config.POSTGIS_MAJ.provider.type = fulltextTable
config.POSTGIS_MAJ.provider.table = maj2
config.POSTGIS_MAJ.provider.id = gid
config.POSTGIS_MAJ.provider.columns = mandat_n16, travaux,
date_txt, en_cours
config.POSTGIS_MAJ.provider.fulltextColumns = mandat_n16, travaux,
date_txt, en_cours
config.POSTGIS_MAJ.provider.sortColumn = date_txt
config.POSTGIS_MAJ.provider.sortDirection = asc
config.POSTGIS_MAJ.provider.sortPriorities = date_txt, mandat_n16,
travaux, en_cours
config.POSTGIS_MAJ.provider.labels = mandat_n16, travaux, date_txt,
en_cours
config.POSTGIS_MAJ.formatter.type = smarty
config.POSTGIS_MAJ.formatter.template = search_results
I modified my cartoclient.tpl by adding two lines
{if $search_active|default:''}<script type="text/javascript" src="
{r type=js plugin=search}Search.ajax.js{/r}"></script>{/if}
which is just after the one for the Ajax ({if $ajaxOn|default:''}
etc..)
and in the div="container", I added in one of my div=folder :
{if $search_active|default:''} {$search} {/if}
I got in templates, two files :
search.tpl:
<div id="search_div">
        <fieldset>
                <legend>{t}Search{/t}
                </legend>
                <br/>
                <table width="100%">
                        <tr>
                        <td>
                                {t}Mandat: {/t}
                        </td>
                        
                        <td>
                                <input type="text" id="search_mandat_n16" name="
search_mandat_n16" size="13"/>
                        </td>
                        </tr>
                        
                        <tr>
                        <td>
                                {t}Type de travaux: {/t}
                        </td>
                        
                        <td>
                                <input type="text" id="search_travaux" name="search_travaux"
size="13"/>
                        </td>
                        </tr>
                        <tr>
                        <td>
                                {t}Date: {/t}
                        </td>
                        
                        <td>
                                <input type="text" id="search_date_txt" name="search_date_txt"
size="13"/>
                        </td>
                        </tr>                        
                        
                        <tr>
                        <td>
                                {t}En cours ou non: {/t}
                        </td>
                        
                        <td>
                                <input type="text" id="search_en_cours" name="search_en_cours"
size="13"/>
                        </td>
                        </tr>
                </table>
                
                <p>
                        <input type="submit" value="{t}Search{/t}" class="form_button"
onclick="Javascript: CartoWeb.trigger('Search.DoIt'); return false;"
/>
                        <input type="hidden" id="search_config" name="search_config" />
                        <input type="hidden" id="search_sort_column" name="
search_sort_column" />
                        <input type="hidden" id="search_sort_direction" name="
search_sort_direction" value="asc" />
                        <input type="hidden" id="search_number" name="search_number" />
                                        
                        <div id="search_results_div">
                        </div>
                </p>
        </fieldset>
</div>
and search_results.tpl
{if $table->numRows > 0}
        <table class="n16table">
                <tr>
                        <th>
                                {t}Id{/t}
                        </th>
                        {foreach from=$table->columnIds item=column}
                                <th>
                                        <a href="Javascript: order('{$column}');">{t}{$column}{/t}
</a>
                                </th>
                        {/foreach}
                </tr>
                
                {foreach from=$table->rows item=row}
                <tr>
                {foreach from=$row->cells item=value}
                <td>
                        <a href="Javascript: recenter('{$row->rowId}');">{$value}</a>
                </td>
                {/foreach}
                </tr>
                {/foreach}
        </table>
{else}
{t}No results{/t}
{/if}
Last but not least, I got the js ! Namely Search.ajax.js
AjaxPlugins.Search = {
handleResponse: function(pluginOutput) {
if (pluginOutput.htmlCode.POSTGIS_MAJ)
$('search_results').innerHTML = pluginOutput.htmlCode.
POSTGIS_MAJ;
                        }
                        };
/*
* Search plugin's Actions
*/
AjaxPlugins.Search.Actions = {};
AjaxPlugins.Search.Actions.DoIt = {
buildPostRequest: function(argObject) {
return AjaxHandler.buildPostRequest();
}
};
function order(column) {
if (column != $('search_sort_column').value){
        $('search_sort_column').value = column;
        $('search_sort_direction').value = 'asc';
        } else {
        if ($('search_sort_direction').value == 'asc') {
        $('search_sort_direction').value = 'desc';
        } else {
        $('search_sort_direction').value = 'asc';
        }
        }
CartoWeb.trigger('Search.DoIt');
}
function recenter(id) {
        if ($('search_config').value == 'POSTGIS_MAJ') {
$('id_recenter_ids').value = gid; //id to recenter
        $('recenter_scale').value = 1000; //scale for recentering
        $('recenter_doit').value = '1';
CartoWeb.trigger('Location.Recenter');
}
I guess you now know all I did. Could someone please tell me what
is wrong.
Apparently, someone else asked the same thing last month but no
final answer was given on the mail list.
PS : Yes, I did clean all the file before trying
Véronique
_______________________________________________
Cartoweb-users mailing list
<A class=moz-txt-link-abbreviated href="mailto:Cartoweb-users@lists.maptools.org">Cartoweb-users@lists.maptools.org</A>
<A class=moz-txt-link-freetext href="http://lists.maptools.org/mailman/listinfo/cartoweb-users">http://lists.maptools.org/mailman/listinfo/cartoweb-users</A>
</PRE></BLOCKQUOTE><BR><BR>
<DIV class=moz-signature>-- <BR>
<STYLE>.signature {
        FONT-SIZE: 0.8em; WIDTH: 27em; COLOR: #9999bb; LINE-HEIGHT: 1.25em; FONT-FAMILY: verdana,helvetica,sans-serif
}
.signature DIV {
        PADDING-RIGHT: 0.22em; MARGIN-TOP: 0.5em; PADDING-LEFT: 0.22em; MARGIN-BOTTOM: 0.5em; PADDING-BOTTOM: 0.22em; PADDING-TOP: 0.22em; BORDER-BOTTOM: 1px dotted; BACKGROUND-COLOR: #fcfcff
}
.signature .attention {
        FONT-WEIGHT: bold; FONT-SIZE: 0.8em; COLOR: #ffbbbb; BACKGROUND-COLOR: #fffafa
}
.header {
        
}
</STYLE>
<DIV class=signature>
<DIV><SPAN style="FONT-WEIGHT: bold">Camptocamp SA</SPAN><BR>Damien
Corpataux<BR>PSE A<BR>CH-1015 Lausanne<BR></DIV>
<DIV>+41 21 619 10 22 <SPAN class=header>(Direct)</SPAN><BR>+41 21 619 10 10
<SPAN class=header>(Centrale)</SPAN><BR>+41 21 619 10 00 <SPAN
class=header>(Fax)</SPAN><BR></DIV>
<DIV style="COLOR: rgb(102,204,102)"><SPAN
style="FONT-SIZE: 24pt; FONT-FAMILY: Webdings; POSITION: relative; TOP: -3px">P</SPAN>
<SPAN>Please consider the environment <BR>Do you really need to print this
email?</SPAN> </DIV></DIV></DIV></BLOCKQUOTE><BR>
<P>
<HR>
<P></P>_______________________________________________<BR>Cartoweb-users
mailing
list<BR>Cartoweb-users@lists.maptools.org<BR>http://lists.maptools.org/mailman/listinfo/cartoweb-users<BR></BLOCKQUOTE></BODY></HTML>