Commit 96f5e120 authored by Frank Bergmann's avatar Frank Bergmann

- Added code to test login and interactively test the protocol

parent e46c5da3
<master src="../../intranet-core/www/admin/master">
<property name="title">@page_title@</property>
<property name="main_navbar_label">admin</property>
<h1>@page_title@</h1>
<table cellpadding=2 cellspacing=0 border=0 width=100%>
<tr>
<td valign=top width="50%">
<if "" eq @token@>
<p>
You have to login and obtain a security token before
you can execute any other XML-RPC calls. <br>
Please use the same email/password as for manual
login. Please note that only administrators have the right
to execute XML-RPC calls on their account.
</p>
<ul>
<li><a href="login-test">Login</a>
</ul>
</if>
<else>
<ul>
<li><a href="select-test">Select</a>
<li><a href="call-test">Call</a>
</ul>
</else>
</td>
<td width=2>&nbsp;</td>
<td valign=top width="50%">
</td>
</tr>
<tr>
<td colspan=3>
</td>
</tr>
</table><br>
ad_page_contract {
Autenticate the user and issue an auth-token
that needs to be specified for every xmlrpc-request
@author Frank Bergmann (frank.bergmann@project-open.com)
} {
{ token ""}
}
# ------------------------------------------------------------
# Security & Defaults
# ------------------------------------------------------------
set return_url "[ad_conn url]?[ad_conn query]"
set page_title "XML-RPC"
set context_bar [im_context_bar $page_title]
# ------------------------------------------------------------
#
# ------------------------------------------------------------
<master>
<property name="title">@page_title@</property>
<property name="main_navbar_label">admin</property>
<h1>Error on @page_title@</h1>
<p>
Login unsuccessful.
</p>
<table cellpadding=1 cellspacing=0 border=0>
<tr>
<td>Status:</td>
<td>@status@</td>
</tr>
<tr>
<td>Info:</td>
<td>@info@</td>
</tr>
<tr>
<td>Error Message:</td>
<td>@error@</td>
</tr>
</table>
ad_page_contract {
Autenticate the user and issue an auth-token
that needs to be specified for every xmlrpc-request
@author Frank Bergmann (frank.bergmann@project-open.com)
} {
email
pass
{url "/RPC2/" }
{method "sqlapi.login"}
}
# ------------------------------------------------------------
# Security & Defaults
# ------------------------------------------------------------
set return_url "[ad_conn url]?[ad_conn query]"
set page_title "Login-Test-2"
set context_bar [im_context_bar $page_title]
set user_id [ad_maybe_redirect_for_registration]
set user_is_admin_p [im_is_user_site_wide_or_intranet_admin $user_id]
if {!$user_is_admin_p} {
ad_return_complaint 1 "<li>[_ intranet-core.lt_You_need_to_be_a_syst]">
return
}
# ------------------------------------------------------------
# Call the Login XML-RPC procedure
# ------------------------------------------------------------
set error ""
set result ""
set token ""
set info ""
if {[catch {
set login_result [xmlrpc::remote_call http://172.26.0.3:30038/RPC2 sqlapi.login -string $email -string $pass]
set status [lindex $login_result 0]
set user_id [lindex $login_result 1]
set timestamp [lindex $login_result 2]
set token [lindex $login_result 3]
} err_msg]} {
append error $err_msg
}
# ad_return_complaint 1 "$error - $status - token=$token - $login_result"
if {"ok" == $status} {
ad_returnredirect [export_vars -base "index" {user_id timestamp token}]
}
# ad_return_complaint 1 "<pre>token=$token\ninfo=$info\nerror=$error</pre>"
<master>
<property name="title">@page_title@</property>
<property name="main_navbar_label">admin</property>
<h1>@page_title@</h1>
<form action="login-test-2" method=POST>
<table cellpadding=1 cellspacing=0 border=0>
<tr>
<td valign=top>Email:</td>
<td><input type=text name=email value="you@yourdomain.com" size=30></td>
</tr>
<tr>
<td valign=top>Password:</td>
<td><input type=password name=pass value="" size=30></td>
</tr>
<tr>
<td></td>
<td><input type=submit></td>
</tr>
</table>
</form>
ad_page_contract {
Autenticate the user and issue an auth-token
that needs to be specified for every xmlrpc-request
@author Frank Bergmann (frank.bergmann@project-open.com)
} {
}
# ------------------------------------------------------------
# Security & Defaults
# ------------------------------------------------------------
set return_url "[ad_conn url]?[ad_conn query]"
set page_title "Login-Test"
set context_bar [im_context_bar $page_title]
set user_id [ad_maybe_redirect_for_registration]
set user_is_admin_p [im_is_user_site_wide_or_intranet_admin $user_id]
if {!$user_is_admin_p} {
ad_return_complaint 1 "<li>[_ intranet-core.lt_You_need_to_be_a_syst]">
return
}
# ------------------------------------------------------------
#
# ------------------------------------------------------------
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment