Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
ISPConfig 3
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
480
Issues
480
List
Boards
Labels
Service Desk
Milestones
Merge Requests
22
Merge Requests
22
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ISPConfig
ISPConfig 3
Commits
ef8ba79a
Commit
ef8ba79a
authored
Nov 22, 2018
by
Till Brehm
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed 3 unused - searchform - code files.
parent
355e7a9e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
0 additions
and
687 deletions
+0
-687
interface/lib/classes/searchform.inc.php
interface/lib/classes/searchform.inc.php
+0
-349
interface/lib/classes/searchform_actions.inc.php
interface/lib/classes/searchform_actions.inc.php
+0
-202
interface/lib/classes/searchform_tpl_generator.inc.php
interface/lib/classes/searchform_tpl_generator.inc.php
+0
-136
No files found.
interface/lib/classes/searchform.inc.php
deleted
100644 → 0
View file @
355e7a9e
<?php
/*
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of ISPConfig nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
class
searchform
{
public
$debug
=
0
;
public
$errorMessage
;
public
$listDef
;
public
$searchValues
;
public
$pagingHTML
;
public
$pagingValues
;
public
$searchChanged
=
0
;
public
$module
;
public
function
loadListDef
(
$file
,
$module
=
''
)
{
global
$app
,
$conf
;
if
(
!
is_file
(
$file
)){
die
(
"List-Definition:
$file
not found."
);
}
include_once
$file
;
$this
->
listDef
=
$liste
;
$this
->
module
=
$module
;
//* Fill datasources
foreach
(
$this
->
listDef
[
'item'
]
as
$key
=>
$field
)
{
if
(
is_array
(
$field
[
'datasource'
]))
{
$this
->
listDef
[
'item'
][
$key
][
'value'
]
=
$this
->
getDatasourceData
(
$field
);
}
}
return
true
;
}
/**
* Get the key => value array of a form filed from a datasource definitiom
*
* @param field = array with field definition
* @param record = Dataset as array
* @return key => value array for the value field of a form
*/
public
function
getDatasourceData
(
$field
)
{
global
$app
;
$values
=
array
();
if
(
$field
[
'datasource'
][
'type'
]
==
'SQL'
)
{
//* Preparing SQL string. We will replace some common placeholders
$querystring
=
$field
[
'datasource'
][
'querystring'
];
$querystring
=
str_replace
(
'{USERID}'
,
$_SESSION
[
's'
][
'user'
][
'userid'
],
$querystring
);
$querystring
=
str_replace
(
'{GROUPID}'
,
$_SESSION
[
's'
][
'user'
][
'default_group'
],
$querystring
);
$querystring
=
str_replace
(
'{GROUPS}'
,
$_SESSION
[
's'
][
'user'
][
'groups'
],
$querystring
);
$table_idx
=
$this
->
formDef
[
'db_table_idx'
];
//$querystring = str_replace('{RECORDID}',$record[$table_idx],$querystring);
$app
->
uses
(
'tform'
);
$querystring
=
str_replace
(
'{AUTHSQL}'
,
$app
->
tform
->
getAuthSQL
(
'r'
),
$querystring
);
//* Getting the records
$tmp_records
=
$app
->
db
->
queryAllRecords
(
$querystring
);
if
(
$app
->
db
->
errorMessage
!=
''
){
die
(
$app
->
db
->
errorMessage
);
}
if
(
is_array
(
$tmp_records
))
{
$key_field
=
$field
[
'datasource'
][
'keyfield'
];
$value_field
=
$field
[
'datasource'
][
'valuefield'
];
foreach
(
$tmp_records
as
$tmp_rec
)
{
$values
[
$tmp_rec
[
$key_field
]]
=
$tmp_rec
[
$value_field
];
}
}
}
if
(
$field
[
'datasource'
][
'type'
]
==
'CUSTOM'
)
{
//* Calls a custom class to validate this record
if
(
$field
[
'datasource'
][
'class'
]
!=
''
and
$field
[
'datasource'
][
'function'
]
!=
''
)
{
$datasource_class
=
$field
[
'datasource'
][
'class'
];
$datasource_function
=
$field
[
'datasource'
][
'function'
];
$app
->
uses
(
$datasource_class
);
$record
=
array
();
$values
=
$app
->
$datasource_class
->
$datasource_function
(
$field
,
$record
);
}
else
{
$this
->
errorMessage
.
=
"Custom datasource class or function is empty<br>
\r\n
"
;
}
}
return
$values
;
}
public
function
getSearchSQL
(
$sql_where
=
''
)
{
global
$db
;
//* Config vars
$list_name
=
$this
->
listDef
[
'name'
];
$search_prefix
=
$this
->
listDef
[
'search_prefix'
];
//* store retrieval query
foreach
(
$this
->
listDef
[
'item'
]
as
$i
)
{
$field
=
$i
[
'field'
];
//* TODO ? hat sich die suche ge�ndert - has itself search ?
$ki
=
$search_prefix
.
$field
;
if
(
isset
(
$_REQUEST
)
and
$_REQUEST
[
$ki
]
!=
$_SESSION
[
'search'
][
$list_name
][
$ki
]){
$this
->
searchChanged
=
1
;
}
//* suchfield in session store.
if
(
isset
(
$_REQUEST
[
$ki
])){
$_SESSION
[
'search'
][
$list_name
][
$ki
]
=
$_REQUEST
[
$ki
];
}
if
(
$i
[
'formtype'
]
==
'SELECT'
){
if
(
is_array
(
$i
[
'value'
]))
{
$out
=
'<option value=""></option>'
;
foreach
(
$i
[
'value'
]
as
$k
=>
$v
)
{
$selected
=
(
$k
==
$_SESSION
[
'search'
][
$list_name
][
$ki
]
&&
$_SESSION
[
'search'
][
$list_name
][
$ki
]
!=
''
)
?
' SELECTED'
:
''
;
$out
.
=
"<option value='
$k
'
$selected
>
$v
</option>
\r\n
"
;
}
}
$this
->
searchValues
[
$ki
]
=
$out
;
}
else
{
$this
->
searchValues
[
$ki
]
=
$_SESSION
[
'search'
][
$list_name
][
$ki
];
}
}
//* store variables in object. $this->searchValues = $_SESSION["search"][$list_name];
foreach
(
$this
->
listDef
[
'item'
]
as
$i
)
{
$field
=
$i
[
'field'
];
//if($_REQUEST[$search_prefix.$field] != '') $sql_where .= " $field ".$i["op"]." '".$i["prefix"].$_REQUEST[$search_prefix.$field].$i["suffix"]."' and";
if
(
$_SESSION
[
'search'
][
$list_name
][
$ki
]
!=
''
){
$sql_where
.
=
"
$field
"
.
$i
[
'op'
]
.
" '"
.
$i
[
'prefix'
]
.
$_SESSION
[
'search'
][
$list_name
][
$ki
]
.
$i
[
'suffix'
]
.
"' and"
;
}
}
return
(
$sql_where
!=
''
)
?
substr
(
$sql_where
,
0
,
-
3
)
:
'1'
;
}
public
function
getPagingSQL
(
$sql_where
=
'1'
)
{
global
$app
,
$conf
;
$list_name
=
$this
->
listDef
[
'name'
];
$search_prefix
=
$this
->
listDef
[
'search_prefix'
];
$records_per_page
=
$this
->
listDef
[
'records_per_page'
];
$table
=
$this
->
listDef
[
'table'
];
//* set page to seror id session not set
if
(
$_SESSION
[
'search'
][
$list_name
][
'page'
]
==
''
)
$_SESSION
[
'search'
][
$list_name
][
'page'
]
=
0
;
//* Set page size to request if set
if
(
isset
(
$_REQUEST
[
'page'
]))
$_SESSION
[
'search'
][
$list_name
][
'page'
]
=
$_REQUEST
[
'page'
];
//* TODO PAGE to 0 set, if look for themselves ge?ndert. = page auf 0 setzen, wenn suche sich ge�ndert hat.
if
(
$this
->
searchChanged
==
1
)
$_SESSION
[
'search'
][
$list_name
][
'page'
]
=
0
;
$sql_von
=
$_SESSION
[
'search'
][
$list_name
][
'page'
]
*
$records_per_page
;
$record_count
=
$app
->
db
->
queryOneRecord
(
"SELECT count(*) AS anzahl FROM ?? WHERE
$sql_where
"
,
$table
);
$pages
=
$app
->
functions
->
intval
((
$record_count
[
'anzahl'
]
-
1
)
/
$records_per_page
);
$vars
[
'list_file'
]
=
$this
->
listDef
[
'file'
];
$vars
[
'page'
]
=
$_SESSION
[
'search'
][
$list_name
][
'page'
];
$vars
[
'last_page'
]
=
$_SESSION
[
'search'
][
$list_name
][
'page'
]
-
1
;
$vars
[
'next_page'
]
=
$_SESSION
[
'search'
][
$list_name
][
'page'
]
+
1
;
$vars
[
'pages'
]
=
$pages
;
$vars
[
'max_pages'
]
=
$pages
+
1
;
$vars
[
'records_gesamt'
]
=
$record_count
[
'anzahl'
];
$vars
[
'page_params'
]
=
$this
->
listDef
[
'page_params'
];
if
(
$_SESSION
[
'search'
][
$list_name
][
'page'
]
>
0
)
$vars
[
'show_page_back'
]
=
1
;
if
(
$_SESSION
[
'search'
][
$list_name
][
'page'
]
<=
$vars
[
'pages'
]
-
1
)
$vars
[
'show_page_next'
]
=
1
;
$this
->
pagingValues
=
$vars
;
$this
->
pagingHTML
=
$this
->
getPagingHTML
(
$vars
);
return
"LIMIT
$sql_von
,
$records_per_page
"
;
}
public
function
getPagingHTML
(
$vars
)
{
global
$app
;
$page_params
=
$vars
[
'page_params'
];
$list_file
=
$vars
[
'list_file'
];
$content
=
'<a href="'
.
$list_file
.
'?page=0'
.
$page_params
.
'"><img src="../themes/iprg/images/btn_left.png" border="0"></a> '
;
if
(
$vars
[
'show_page_back'
]
==
1
){
$content
.
=
'<a href="'
.
$list_file
.
'?page='
.
$vars
[
'last_page'
]
.
$page_params
.
'"><img src="../themes/iprg/images/btn_back.png" border="0"></a> '
;
}
$content
.
=
' '
.
$app
->
lng
(
'Page'
)
.
' '
.
$vars
[
'next_page'
]
.
' '
.
$app
->
lng
(
'of'
)
.
' '
.
$vars
[
'max_pages'
]
.
' '
;
if
(
$vars
[
'show_page_next'
]
==
1
){
$content
.
=
'<a href="'
.
$list_file
.
'?page='
.
$vars
[
'next_page'
]
.
$page_params
.
'"><img src="../themes/iprg/images/btn_next.png" border="0"></a> '
;
}
else
{
$content
.
=
' '
;
}
$content
.
=
'<a href="'
.
$list_file
.
'?page='
.
$vars
[
'pages'
]
.
$page_params
.
'"> <img src="../themes/iprg/images/btn_right.png" border="0"></a>'
;
return
$content
;
}
public
function
getPagingHTMLasTXT
(
$vars
)
{
global
$app
;
$page_params
=
$vars
[
'page_params'
];
$list_file
=
$vars
[
'list_file'
];
$content
=
'[<a href="'
.
$list_file
.
'?page=0'
.
$page_params
.
'">|<< </a>]'
;
if
(
$vars
[
'show_page_back'
]
==
1
){
$content
.
=
'[<< <a href="'
.
$list_file
.
'?page='
.
$vars
[
'last_page'
]
.
$page_params
.
'">'
.
$app
->
lng
(
'Back'
)
.
'</a>] '
;
}
$content
.
=
' '
.
$app
->
lng
(
'Page'
)
.
' '
.
$vars
[
'next_page'
]
.
' '
.
$app
->
lng
(
'of'
)
.
' '
.
$vars
[
'max_pages'
]
.
' '
;
if
(
$vars
[
'show_page_next'
]
==
1
){
$content
.
=
'[<a href="'
.
$vars
[
'list_file'
]
.
'?page='
.
$vars
[
'next_page'
]
.
$page_params
.
'">'
.
$app
->
lng
(
'Next'
)
.
' >></a>] '
;
}
$content
.
=
'[<a href="'
.
$list_file
.
'?page='
.
$vars
[
'pages'
]
.
$page_params
.
'"> >>|</a>]'
;
return
$content
;
}
public
function
getSortSQL
()
{
$sort_field
=
$this
->
listDef
[
'sort_field'
];
$sort_direction
=
$this
->
listDef
[
'sort_direction'
];
return
(
$sort_field
!=
''
&&
$sort_direction
!=
''
)
?
"ORDER BY
$sort_field
$sort_direction
"
:
''
;
}
public
function
saveSearchSettings
(
$searchresult_name
)
{
global
$app
,
$conf
;
$list_name
=
$this
->
listDef
[
'name'
];
$settings
=
$_SESSION
[
'search'
][
$list_name
];
unset
(
$settings
[
'page'
]);
$data
=
serialize
(
$settings
);
$userid
=
$_SESSION
[
's'
][
'user'
][
'userid'
];
$groupid
=
$_SESSION
[
's'
][
'user'
][
'default_group'
];
$sys_perm_user
=
'riud'
;
$sys_perm_group
=
'r'
;
$sys_perm_other
=
''
;
$module
=
$_SESSION
[
's'
][
'module'
][
'name'
];
$searchform
=
$this
->
listDef
[
'name'
];
$title
=
$searchresult_name
;
$sql
=
'INSERT INTO `searchform` ( '
.
'`sys_userid` , `sys_groupid` , `sys_perm_user` , `sys_perm_group` , `sys_perm_other` , `module` , `searchform` , `title` , `data` '
.
')VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)'
;
$app
->
db
->
query
(
$sql
,
$userid
,
$groupid
,
$sys_perm_user
,
$sys_perm_group
,
$sys_perm_other
,
$module
,
$searchform
,
$title
,
$data
);
}
public
function
decode
(
$record
)
{
global
$app
;
if
(
is_array
(
$record
))
{
foreach
(
$this
->
listDef
[
'item'
]
as
$field
)
{
$key
=
$field
[
'field'
];
switch
(
$field
[
'datatype'
])
{
case
'DATE'
:
if
(
$val
>
0
)
{
$record
[
$key
]
=
date
(
$this
->
dateformat
,
$record
[
$key
]);
}
break
;
case
'INTEGER'
:
$record
[
$key
]
=
$app
->
functions
->
intval
(
$record
[
$key
]);
break
;
case
'DOUBLE'
:
$record
[
$key
]
=
$record
[
$key
];
break
;
case
'CURRENCY'
:
$record
[
$key
]
=
number_format
(
$record
[
$key
],
2
,
','
,
''
);
break
;
case
'VARCHAR'
:
case
'TEXT'
:
default
:
$record
[
$key
]
=
stripslashes
(
$record
[
$key
]);
break
;
}
}
}
return
$record
;
}
/* TODO: check for double quoting mysql value */
public
function
encode
(
$record
)
{
global
$app
;
if
(
is_array
(
$record
))
{
foreach
(
$this
->
listDef
[
'item'
]
as
$field
)
{
$key
=
$field
[
'field'
];
switch
(
$field
[
'datatype'
])
{
case
'VARCHAR'
:
case
'TEXT'
:
if
(
!
is_array
(
$record
[
$key
]))
{
$record
[
$key
]
=
$app
->
db
->
quote
(
$record
[
$key
]);
}
else
{
$record
[
$key
]
=
implode
(
$this
->
tableDef
[
$key
][
'separator'
],
$record
[
$key
]);
}
break
;
case
'DATE'
:
if
(
$record
[
$key
]
>
0
)
{
list
(
$tag
,
$monat
,
$jahr
)
=
explode
(
'.'
,
$record
[
$key
]);
$record
[
$key
]
=
mktime
(
0
,
0
,
0
,
$monat
,
$tag
,
$jahr
);
}
break
;
case
'INTEGER'
:
$record
[
$key
]
=
$app
->
functions
->
intval
(
$record
[
$key
]);
break
;
case
'DOUBLE'
:
$record
[
$key
]
=
$app
->
db
->
quote
(
$record
[
$key
]);
break
;
case
'CURRENCY'
:
$record
[
$key
]
=
str_replace
(
','
,
'.'
,
$record
[
$key
]);
break
;
}
}
}
return
$record
;
}
}
?>
interface/lib/classes/searchform_actions.inc.php
deleted
100644 → 0
View file @
355e7a9e
<?php
/*
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of ISPConfig nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
class
searchform_actions
{
var
$id
;
var
$idx_key
;
var
$DataRowColor
;
var
$SQLExtWhere
=
''
;
var
$SQLOrderBy
=
''
;
function
onLoad
()
{
global
$app
,
$conf
,
$list_def_file
;
if
(
!
is_object
(
$app
->
tpl
))
$app
->
uses
(
'tpl'
);
if
(
!
is_object
(
$app
->
searchform
))
$app
->
uses
(
'searchform'
);
if
(
!
is_object
(
$app
->
tform
))
$app
->
uses
(
'tform'
);
// Load list definition
$app
->
searchform
->
loadListDef
(
$list_def_file
);
// Delete the search form contents, if requested
if
(
$_REQUEST
[
"empty_searchfields"
]
==
'yes'
)
{
$list_name
=
$app
->
searchform
->
listDef
[
"name"
];
unset
(
$_SESSION
[
"search"
][
$list_name
]);
}
// Save the search for later usage
if
(
$_REQUEST
[
"btn_submit_search_save"
]
&&
$_REQUEST
[
"search_save_as"
]
!=
''
)
{
$app
->
searchform
->
saveSearchSettings
(
$_REQUEST
[
"search_save_as"
]);
}
// Set th returnto value for forms
$_SESSION
[
"s"
][
"form"
][
"return_to_url"
]
=
$app
->
searchform
->
listDef
[
"file"
];
if
(
!
is_file
(
'templates/'
.
$app
->
searchform
->
listDef
[
"name"
]
.
'_search.htm'
))
{
$app
->
uses
(
'searchform_tpl_generator'
);
$app
->
searchform_tpl_generator
->
buildHTML
(
$app
->
searchform
->
listDef
);
}
$app
->
tpl
->
newTemplate
(
"searchpage.tpl.htm"
);
$app
->
tpl
->
setInclude
(
'content_tpl'
,
'templates/'
.
$app
->
searchform
->
listDef
[
"name"
]
.
'_search.htm'
);
// Getting Datasets from DB
$records
=
$app
->
db
->
queryAllRecords
(
$this
->
getQueryString
());
$this
->
DataRowColor
=
"#FFFFFF"
;
if
(
is_array
(
$records
))
{
$this
->
idx_key
=
$app
->
searchform
->
listDef
[
"table_idx"
];
foreach
(
$records
as
$rec
)
{
$records_new
[]
=
$this
->
prepareDataRow
(
$rec
);
}
}
$app
->
tpl
->
setLoop
(
'records'
,
$records_new
);
//print_r($records_new);
$this
->
onShow
();
}
function
prepareDataRow
(
$rec
)
{
global
$app
;
$rec
=
$app
->
searchform
->
decode
(
$rec
);
// Alternating datarow colors
$this
->
DataRowColor
=
(
$this
->
DataRowColor
==
"#FFFFFF"
)
?
"#EEEEEE"
:
"#FFFFFF"
;
$rec
[
"bgcolor"
]
=
$this
->
DataRowColor
;
// substitute value for select fields
foreach
(
$app
->
searchform
->
listDef
[
"item"
]
as
$field
)
{
$key
=
$field
[
"field"
];
if
(
$field
[
'formtype'
]
==
"SELECT"
)
{
if
(
$rec
[
$key
]
==
'y'
or
$rec
[
$key
]
==
'n'
)
{
// Set a additional image variable for bolean fields
$rec
[
'_'
.
$key
.
'_'
]
=
(
$rec
[
$key
]
==
'y'
)
?
'list_icon_true.png'
:
'list_icon_false.png'
;
}
// substitute value for select field
$rec
[
$key
]
=
$field
[
'value'
][
$rec
[
$key
]];
}
}
// The variable "id" contains always the index variable
$rec
[
"id"
]
=
$rec
[
$this
->
idx_key
];
return
$rec
;
}
function
getQueryString
()
{
global
$app
;
// Generate the search sql
if
(
$app
->
searchform
->
listDef
[
"auth"
]
!=
'no'
)
{
if
(
$_SESSION
[
"s"
][
"user"
][
"typ"
]
==
"admin"
)
{
$sql_where
=
""
;
}
else
{
$sql_where
=
$app
->
tform
->
getAuthSQL
(
'r'
)
.
" and"
;
}
}
if
(
$this
->
SQLExtWhere
!=
''
)
{
$sql_where
.
=
" "
.
$this
->
SQLExtWhere
.
" and"
;
}
$sql_where
=
$app
->
searchform
->
getSearchSQL
(
$sql_where
);
$app
->
tpl
->
setVar
(
$app
->
searchform
->
searchValues
);
$order_by_sql
=
$this
->
SQLOrderBy
;
// Generate SQL for paging
$limit_sql
=
$app
->
searchform
->
getPagingSQL
(
$sql_where
);
$app
->
tpl
->
setVar
(
"paging"
,
$app
->
searchform
->
pagingHTML
);
return
"SELECT * FROM "
.
$app
->
searchform
->
listDef
[
"table"
]
.
" WHERE
$sql_where
$order_by_sql
$limit_sql
"
;
}
function
onShow
()
{
global
$app
;
// Language File setzen
$lng_file
=
ISPC_WEB_PATH
.
'/lang/lib/lang/'
.
$app
->
functions
->
check_language
(
$_SESSION
[
's'
][
'language'
])
.
'_list.lng'
;
if
(
!
file_exists
(
$lng_file
))
$lng_file
=
ISPC_WEB_PATH
.
'/lang/lib/lang/en_'
.
'_list.lng'
;
include
$lng_file
;
$lng_file
=
"lib/lang/"
.
$app
->
functions
->
check_language
(
$_SESSION
[
"s"
][
"language"
])
.
"_"
.
$app
->
searchform
->
listDef
[
'name'
]
.
"_search.lng"
;
if
(
!
file_exists
(
$lng_file
))
$lng_file
=
'lib/lang/en_'
.
$app
->
searchform
->
listDef
[
'name'
]
.
"_search.lng"
;
include
$lng_file
;
$app
->
tpl
->
setVar
(
$wb
);
$app
->
tpl
->
setVar
(
"form_action"
,
$app
->
searchform
->
listDef
[
"file"
]);
// Parse the templates and send output to the browser
$this
->
onShowEnd
();
}
function
onShowEnd
()
{
global
$app
;
if
(
count
(
$_REQUEST
)
>
0
)
{
$app
->
tpl
->
setVar
(
'searchresult_visible'
,
1
);
if
(
$_REQUEST
[
'searchresult_visible'
]
==
'no'
)
$app
->
tpl
->
setVar
(
'searchresult_visible'
,
0
);
if
(
$_REQUEST
[
'searchform_visible'
]
==
'yes'
)
{
$app
->
tpl
->
setVar
(
'searchform_visible'
,
1
);
}
else
{
$app
->
tpl
->
setVar
(
'searchform_visible'
,
0
);
}
}
else
{
$app
->
tpl
->
setVar
(
'searchform_visible'
,
1
);
if
(
$_REQUEST
[
'searchform_visible'
]
==
'no'
)
$app
->
tpl
->
setVar
(
'searchform_visible'
,
0
);
if
(
$_REQUEST
[
'searchresult_visible'
]
==
'yes'
)
{
$app
->
tpl
->
setVar
(
'searchresult_visible'
,
1
);
}
else
{
$app
->
tpl
->
setVar
(
'searchresult_visible'
,
0
);
}
}
// make columns visible
$visible_columns
=
explode
(
","
,
$app
->
searchform
->
listDef
[
'default_columns'
]);
foreach
(
$visible_columns
as
$col
)
{
$app
->
tpl
->
setVar
(
$col
.
'_visible'
,
1
);
}
$app
->
tpl_defaults
();
$app
->
tpl
->
pparse
();
}
}
?>
interface/lib/classes/searchform_tpl_generator.inc.php
deleted
100644 → 0
View file @
355e7a9e
<?php
/*
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of ISPConfig nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
class
searchform_tpl_generator
{
function
buildHTML
(
$listDef
,
$module
=
''
)
{
global
$app
;
$lang
=
array
();
$html
=
'<form name="myform" action="'
.
$listDef
[
"file"
]
.
'" method="POST">
<div class="frmTextHead"><tmpl_var name="list_head_txt"></div><br />
<tmpl_if name="searchform_visible">
<table border="0" cellspacing="0" cellpadding="4">'
;
$lang
[
"list_head_txt"
]
=
$listDef
[
"name"
];
foreach
(
$listDef
[
"item"
]
as
$field
)
{
$key
=
$field
[
"field"
];
if
(
$field
[
"formtype"
]
==
'SELECT'
)
{
$html
.
=
"
<tr>
<td class=
\"
frmText11
\"
><tmpl_var name=
\"
"
.
$key
.
"_txt
\"
>:</td>
<td><select name=
\"
"
.
$listDef
[
"search_prefix"
]
.
$key
.
"
\"
>{tmpl_var name='"
.
$listDef
[
"search_prefix"
]
.
$key
.
"'}</select></td>
</tr>"
;
}
else
{
$html
.
=
"
<tr>
<td class=
\"
frmText11
\"
><tmpl_var name=
\"
"
.
$key
.
"_txt
\"
>:</td>
<td><input type=
\"
text
\"
name=
\"
"
.
$listDef
[
"search_prefix"
]
.
$key
.
"
\"
value=
\"
{tmpl_var name='"
.
$listDef
[
"search_prefix"
]
.
$key
.
"'}
\"
class=
\"
text
\"
/></td>
</tr>"
;
}
}
$html
.
=
'
<tr>
<td colspan="2" align="center"><input name="Filter" type="image" id="Filter" src="../themes/iprg/images/btn_filter.png"></td>