The visablity is solved, add this to row 194:
<xsl:if test ="//udt:Fields[udt:Searchable='true'][/udt:UserDefinedTable/udt:Context/udt:IsAdministratorRole = 'true']">
For the second problem i added a second variable, called filteredData1:
<xsl:variable name="filteredData1" select="udt:Data[contains(*[name()=$searchColumns][1],$search) or contains(*[name()=$searchColumns][2],$search) or contains(*[name()=$searchColumns][3],$search) or contains(*[name()=$searchColumns][4],$search) or contains(*[name()=$searchColumns][5],$search)or contains(*[name()=$searchColumns][6],$search)or contains(*[name()=$searchColumns][7],$search)or contains(*[name()=$searchColumns][8],$search)or contains(*[name()=$searchColumns][9],$search)or contains(*[name()=$searchColumns][10],$search)]" />
And changed filterData to fiterData1 in rows 203 (<xsl:value-of select="count($filteredData1)+1" />), 334 (<xsl:with-param name="maxPages" select="ceiling(count($filteredData1) div $paging)" />)
The thing seems to be working, but i'm not quite sure the things i've done are correct. Stephan, if you see something Wrong! let me know.
the newbie needs some baby hints