Request for review : ldap_control_paged_result & ldap_control_paged_result_response

From: Date: Thu, 01 Jan 1970 00:00:00 +0000
Subject: Request for review : ldap_control_paged_result & ldap_control_paged_result_response
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969383719@lists.php.net to get a copy of this message
Hi, Could you review the attached patch adding documention to the function ldap_control_paged_result & ldap_control_paged_result_response. Regards, NB : I'm not very familiar with doc process so correct me if I'm wrong. -- Jean-Sébastien H. au-fil-du.net

Index: en/reference/ldap/functions/ldap-control-paged-result-response.xml =================================================================== --- en/reference/ldap/functions/ldap-control-paged-result-response.xml (révision 324333) +++ en/reference/ldap/functions/ldap-control-paged-result-response.xml (copie de travail) @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision$ --> +<!-- $Revision$ --> <refentry xml:id='function.ldap-control-paged-result-response' xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>ldap_control_paged_result_response</refname> - <refpurpose>Extract paged results control response</refpurpose> + <refpurpose>Retrieve the pagination cookie.</refpurpose> </refnamediv> - + <refsect1 role="description"> &reftitle.description; <methodsynopsis> @@ -15,9 +15,64 @@ <methodparam choice="opt"><type>string</type><parameter role="reference">cookie</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter role="reference">estimated</parameter></methodparam> </methodsynopsis> - &warn.undocumented.func; + <para>Retrieve the pagination information send by the server.</para> </refsect1> + <refsect1 role="parameters"> + &reftitle.parameters; + <para> + <variablelist> + <varlistentry> + <term><parameter>link</parameter></term> + <listitem> + <para> + An LDAP link identifier, returned by <function>ldap_connect</function>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>result</parameter></term> + <listitem> + <para> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>cookie</parameter></term> + <listitem> + <para> + An opaque structure sent by the server. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>estimated</parameter></term> + <listitem> + <para> + The estimated number of entries to retrieve. + </para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refsect1> + + <refsect1 role="returnvalues"> + &reftitle.returnvalues; + <para> + Returns &true; or &false; on error. + </para> + </refsect1> + + <refsect1 role="seealso"> + &reftitle.seealso; + <para> + <simplelist> + <member><function>ldap_control_paged_result</function></member> + <member><link>http://www.ietf.org/rfc/rfc2696.txt</link></member> + </simplelist> + </para> + </refsect1> </refentry> <!-- Keep this comment at the end of the file Index: en/reference/ldap/functions/ldap-control-paged-result.xml =================================================================== --- en/reference/ldap/functions/ldap-control-paged-result.xml (révision 324333) +++ en/reference/ldap/functions/ldap-control-paged-result.xml (copie de travail) @@ -1,22 +1,147 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision$ --> +<!-- $Revision$ --> <refentry xml:id='function.ldap-control-paged-result' xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>ldap_control_paged_result</refname> - <refpurpose>Inject paged results control</refpurpose> + <refpurpose>Send LDAP pagination control</refpurpose> </refnamediv> + <refsect1 role="description"> &reftitle.description; <methodsynopsis> - <type>mixed</type><methodname>ldap_control_paged_result</methodname> + <type>bool</type><methodname>ldap_control_paged_result</methodname> <methodparam><type>resource</type><parameter>link</parameter></methodparam> <methodparam><type>int</type><parameter>pagesize</parameter></methodparam> - <methodparam choice="opt"><type>bool</type><parameter role="reference">iscritical</parameter></methodparam> - <methodparam choice="opt"><type>string</type><parameter role="reference">cookie</parameter></methodparam> + <methodparam choice="opt"><type>bool</type><parameter>iscritical</parameter></methodparam> + <methodparam choice="opt"><type>string</type><parameter>cookie</parameter></methodparam> </methodsynopsis> - &warn.undocumented.func; + <para>Enable LDAP pagination by sending the pagination control (page size, cookie...).</para> </refsect1> + <refsect1 role="parameters"> + &reftitle.parameters; + <para> + <variablelist> + <varlistentry> + <term><parameter>link</parameter></term> + <listitem> + <para> + An LDAP link identifier, returned by <function>ldap_connect</function>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>pagesize</parameter></term> + <listitem> + <para> + The number of entries by page. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>iscritical</parameter></term> + <listitem> + <para> + Indicates whether the pagination is critical of not. + If true and if the server doesn't support pagination, the search + will return no result. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>cookie</parameter></term> + <listitem> + <para> + An opaque structure sent by the server (<function>ldap_control_paged_result_response</function>). + </para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refsect1> + +<refsect1 role="returnvalues"> + &reftitle.returnvalues; + <para> + Returns true or &false; on error. + </para> + </refsect1> + + <refsect1 role="examples"> + &reftitle.examples; + <para> + The example below show the retrieval of the first page of a search paginated with one entry by page. + <example> + <title>LDAP pagination</title> + <programlisting role="php"> +<![CDATA[ +<?php +// $ds is a valid link identifier for a directory server +// $person is all or part of a person's name, eg "Jo" + +$dn = "o=My Company, c=US"; +$filter="(|(sn=$person*)(givenname=$person*))"; +$justthese = array("ou", "sn", "givenname", "mail"); + +// enable pagination with a page size of 1. +ldap_control_paged_result($ds, 1); + +$sr=ldap_search($ds, $dn, $filter, $justthese); + +$info = ldap_get_entries($ds, $sr); + +echo $info["count"]." entries returned\n"; + +?> +]]> + </programlisting> + </example> + </para> <para> + The example below show the retrieval of all the result paginated with 100 entries by page. + <example> + <title>LDAP pagination</title> + <programlisting role="php"> +<![CDATA[ +<?php +// $ds is a valid link identifier for a directory server +// $person is all or part of a person's name, eg "Jo" + +$dn = "o=My Company, c=US"; +$filter="(|(sn=$person*)(givenname=$person*))"; +$justthese = array("ou", "sn", "givenname", "mail"); + +// enable pagination with a page size of 100. +$pageSize = 100; + +$cookie = ''; +do { + ldap_control_paged_result($ds, $pageSize, true, $cookie); + + $result = ldap_search($ds, $dn, $filter, $justthese); + $entries = ldap_get_entries($ds, $result); + + foreach ($entries as $e) { + print $e["dn"] . PHP_EOL; + } + + ldap_control_paged_result_response($ds, $result, $cookie); + +} while($cookie !== null && $cookie != ''); +?> +]]> + </programlisting> + </example> + </para> + </refsect1> + <refsect1 role="seealso"> + &reftitle.seealso; + <para> + <simplelist> + <member><function>ldap_control_paged_result_response</function></member> + <member><link>http://www.ietf.org/rfc/rfc2696.txt</link></member> + </simplelist> + </para> + </refsect1> </refentry> <!-- Keep this comment at the end of the file
« previous php.doc (#969383719) next »