diff options
author | Endi Sukma Dewata <edewata@redhat.com> | 2012-03-24 02:27:47 -0500 |
---|---|---|
committer | Endi Sukma Dewata <edewata@redhat.com> | 2012-03-26 11:43:54 -0500 |
commit | 621d9e5c413e561293d7484b93882d985b3fe15f (patch) | |
tree | 638f3d75761c121d9a8fb50b52a12a6686c5ac5c /dogtag/tks-ui | |
parent | 40d3643b8d91886bf210aa27f711731c81a11e49 (diff) | |
download | pki-621d9e5c413e561293d7484b93882d985b3fe15f.tar.gz pki-621d9e5c413e561293d7484b93882d985b3fe15f.tar.xz pki-621d9e5c413e561293d7484b93882d985b3fe15f.zip |
Removed unnecessary pki folder.
Previously the source code was located inside a pki folder.
This folder was created during svn migration and is no longer
needed. This folder has now been removed and the contents have
been moved up one level.
Ticket #131
Diffstat (limited to 'dogtag/tks-ui')
36 files changed, 3431 insertions, 0 deletions
diff --git a/dogtag/tks-ui/CMakeLists.txt b/dogtag/tks-ui/CMakeLists.txt new file mode 100644 index 000000000..31d58dfba --- /dev/null +++ b/dogtag/tks-ui/CMakeLists.txt @@ -0,0 +1,8 @@ +project(tks-ui) + +install( + DIRECTORY + shared/ + DESTINATION + ${SHARE_INSTALL_PREFIX}/${APPLICATION_NAME}/${PROJECT_NAME} +) diff --git a/dogtag/tks-ui/LICENSE b/dogtag/tks-ui/LICENSE new file mode 100644 index 000000000..e281f4362 --- /dev/null +++ b/dogtag/tks-ui/LICENSE @@ -0,0 +1,291 @@ +This Program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published +by the Free Software Foundation; version 2 of the License. + +This Program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with this Program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. diff --git a/dogtag/tks-ui/build.xml b/dogtag/tks-ui/build.xml new file mode 100644 index 000000000..26d16c67b --- /dev/null +++ b/dogtag/tks-ui/build.xml @@ -0,0 +1,273 @@ +<!-- ### BEGIN COPYRIGHT BLOCK ### + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + ### END COPYRIGHT BLOCK ### --> +<project name="tks-ui" default="main" basedir="."> + + <import file="config/product.xml"/> + <import file="config/product-ext.xml" optional="true"/> + + + <target name="clean" + depends="" + description="--> remove component directories"> + <echo message="${begin.clean.log.message}"/> + <delete dir="${dist.base}"/> + <delete dir="${build.dir}"/> + <echo message="${end.clean.log.message}"/> + </target> + + + <target name="download" + depends="" + description="--> download dependent components"> + <echo message="${begin.download.log.message}"/> + <echo message="${empty.download.log.message}"/> + <echo message="${end.download.log.message}"/> + </target> + + + <target name="compile_java" + depends="" + description="--> compile java source code into classes"> + <echo message="${begin.compile.java.log.message}"/> + <echo message="${empty.compile.java.log.message}"/> + <echo message="${end.compile.java.log.message}"/> + </target> + + + <target name="build_jars" + depends="compile_java" + description="--> generate jar files"> + <echo message="${begin.build.jars.log.message}"/> + <echo message="${empty.build.jars.log.message}"/> + <echo message="${end.build.jars.log.message}"/> + </target> + + + <target name="build_jni_headers" + depends="compile_java" + description="--> generate jni header files"> + <echo message="${begin.build.jni.headers.log.message}"/> + <echo message="${empty.build.jni.headers.log.message}"/> + <echo message="${end.build.jni.headers.log.message}"/> + </target> + + + <target name="build" + depends="build_jars,build_jni_headers" + description="--> build classes, jars, and jni headers"> + <echo message="${notify.build.log.message}"/> + </target> + + + <target name="compile_junit_tests" + depends="build" + description="--> compile junit test source code"> + <echo message="${begin.compile.junit.tests.log.message}"/> + <echo message="${empty.compile.junit.tests.log.message}"/> + <echo message="${end.compile.junit.tests.log.message}"/> + </target> + + + <target name="run_junit_tests" + depends="compile_junit_tests" + description="--> execute junit tests"> + <echo message="${begin.run.junit.tests.log.message}"/> + <echo message="${empty.run.junit.tests.log.message}"/> + <echo message="${end.run.junit.tests.log.message}"/> + </target> + + + <target name="verify" + depends="run_junit_tests" + description="--> build and execute junit tests"> + <echo message="${notify.verify.log.message}"/> + </target> + + + <target name="clean_javadocs" + depends="" + description="--> remove javadocs directory"> + <echo message="${begin.clean.javadocs.log.message}"/> + <echo message="${empty.clean.javadocs.log.message}"/> + <echo message="${end.clean.javadocs.log.message}"/> + </target> + + + <target name="compose_javadocs" + depends="build" + description="--> generate javadocs"> + <echo message="${begin.compose.javadocs.log.message}"/> + <echo message="${empty.compose.javadocs.log.message}"/> + <echo message="${end.compose.javadocs.log.message}"/> + </target> + + + <target name="document" + depends="clean_javadocs,compose_javadocs" + description="--> remove old javadocs and compose new javadocs"> + <echo message="${notify.document.log.message}"/> + </target> + + + <target name="distribute_binaries" + depends="document" + description="--> create the zip and gzipped tar binary distributions"> + <echo message="${begin.distribute.binaries.log.message}"/> + <mkdir dir="${dist.base.binaries}"/> + + <echo message="${begin.binary.wrappers.log.message}"/> + <echo message="${empty.binary.wrappers.log.message}"/> + <echo message="${end.binary.wrappers.log.message}"/> + + <echo message="${begin.binary.zip.log.message}"/> + <zip destfile="${dist.base.binaries}/${dist.name}.zip"> + <zipfileset dir="./shared" + filemode="644" + prefix="usr/share/${product.prefix}/${product}"> + <include name="**"/> + </zipfileset> + <zipfileset dir="." + filemode="644" + prefix="usr/share/doc/${dist.name}"> + <include name="LICENSE"/> + </zipfileset> + </zip> + <echo message="${end.binary.zip.log.message}"/> + + <echo message="${begin.binary.tar.log.message}"/> + <tar longfile="gnu" + destfile="${dist.base.binaries}/${dist.name}.tar"> + <tarfileset dir="./shared" + mode="644" + prefix="${dist.name}/usr/share/${product.prefix}/${product}"> + <include name="**"/> + </tarfileset> + <tarfileset dir="." + mode="644" + prefix="${dist.name}/usr/share/doc/${dist.name}"> + <include name="LICENSE"/> + </tarfileset> + </tar> + <echo message="${end.binary.tar.log.message}"/> + + <echo message="${begin.binary.gtar.log.message}"/> + <gzip destfile="${dist.base.binaries}/${dist.name}.tar.gz" + src="${dist.base.binaries}/${dist.name}.tar"/> + <delete file="${dist.base.binaries}/${dist.name}.tar"/> + <delete dir="${dist.name}"/> + <checksum fileext=".md5"> + <fileset dir="${dist.base.binaries}/"> + <include name="**/*"/> + <exclude name="**/*.asc"/> + <exclude name="**/*.md5"/> + </fileset> + </checksum> + <checksum fileext=".sha1" + algorithm="SHA"> + <fileset dir="${dist.base.binaries}/"> + <include name="**/*"/> + <exclude name="**/*.asc"/> + <exclude name="**/*.md5"/> + </fileset> + </checksum> + <echo message="${end.binary.gtar.log.message}"/> + + <echo message="${end.distribute.binaries.log.message}"/> + </target> + + + <target name="distribute_source" + depends="" + description="--> create the zip and gzipped tar source distributions"> + <echo message="${begin.distribute.source.log.message}"/> + <mkdir dir="${dist.base.source}"/> + + <echo message="${begin.source.zip.log.message}"/> + <zip destfile="${dist.base.source}/${src.dist.name}.zip"> + <zipfileset dir="." + filemode="644" + prefix="${src.dist.name}"> + <include name="${specfile}"/> + <include name="LICENSE"/> + <include name="build.xml"/> + <include name="config/product*.xml"/> + <include name="config/release*.xml"/> + <include name="release"/> + <include name="shared/**"/> + </zipfileset> + </zip> + <echo message="${end.source.zip.log.message}"/> + + <echo message="${begin.source.tar.log.message}"/> + <tar longfile="gnu" + destfile="${dist.base.source}/${src.dist.name}.tar"> + <tarfileset dir="." + mode="644" + prefix="${src.dist.name}"> + <include name="${specfile}"/> + <include name="LICENSE"/> + <include name="build.xml"/> + <include name="config/product*.xml"/> + <include name="config/release*.xml"/> + <include name="release"/> + <include name="shared/**"/> + </tarfileset> + </tar> + <echo message="${end.source.tar.log.message}"/> + + <echo message="${begin.source.gtar.log.message}"/> + <gzip destfile="${dist.base.source}/${src.dist.name}.tar.gz" + src="${dist.base.source}/${src.dist.name}.tar"/> + <delete file="${dist.base.source}/${src.dist.name}.tar"/> + <delete dir="${dist.name}"/> + <checksum fileext=".md5"> + <fileset dir="${dist.base.source}/"> + <include name="**/*"/> + <exclude name="**/*.asc"/> + <exclude name="**/*.md5"/> + </fileset> + </checksum> + <checksum fileext=".sha1" + algorithm="SHA"> + <fileset dir="${dist.base.source}/"> + <include name="**/*"/> + <exclude name="**/*.asc"/> + <exclude name="**/*.md5"/> + </fileset> + </checksum> + <echo message="${end.source.gtar.log.message}"/> + + <echo message="${end.distribute.source.log.message}"/> + </target> + + + <target name="distribute" + depends="distribute_binaries,distribute_source" + description="--> create binary and source component distributions"> + <echo message="${notify.distribute.log.message}"/> + </target> + + + <target name="main" + depends="clean,distribute" + description="--> clean, build, verify, document, distribute [default]"> + <echo message="${notify.main.log.message}"/> + </target> + +</project> + diff --git a/dogtag/tks-ui/build_dogtag b/dogtag/tks-ui/build_dogtag new file mode 100755 index 000000000..e769ab5d8 --- /dev/null +++ b/dogtag/tks-ui/build_dogtag @@ -0,0 +1,82 @@ +#!/bin/bash +# BEGIN COPYRIGHT BLOCK +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# (C) 2007 Red Hat, Inc. +# All rights reserved. +# END COPYRIGHT BLOCK + +# Always switch into the base directory of this +# shell script prior to executing it so that all +# of its output is written to this directory +cd `dirname $0` + +# Retrieve the directory name housing this component +PWD=`pwd` + +# Set Dogtag component-specific environment variables +DOGTAG_BUILD_SCRIPT=`basename $0` +export DOGTAG_BUILD_SCRIPT +DOGTAG_COMPONENT=`basename ${PWD}` +export DOGTAG_COMPONENT +DOGTAG_SPECFILE="dogtag-pki-tks-ui.spec" +export DOGTAG_SPECFILE + +# Set PKI 'ant' environment variables (originally obtained from specfile) +PKI_PRODUCT_UI_FLAVOR_PREFIX="dogtag" +export PKI_PRODUCT_UI_FLAVOR_PREFIX +PKI_PRODUCT_PREFIX="pki" +export PKI_PRODUCT_PREFIX +PKI_PRODUCT="tks-ui" +export PKI_PRODUCT +PKI_VERSION="9.0.0" +export PKI_VERSION + +# Set Dogtag helper variables +DOGTAG_COMPONENT_NAME=${PKI_PRODUCT} +export DOGTAG_COMPONENT_NAME +DOGTAG_WGET_URL=http://cvs.fedora.redhat.com/viewvc +export DOGTAG_WGET_URL + +# Obtain '${DOGTAG_SPECFILE}' as necessary +if [ "$1" = "refresh" ]; then + if [ -f "${DOGTAG_SPECFILE}" ]; then + printf "Removing '${DOGTAG_SPECFILE}' . . . " + rm -rf ${DOGTAG_SPECFILE} + printf "done.\n" + fi + shift +fi +if [ ! -f "${DOGTAG_SPECFILE}" ]; then + # Check for Fedora Operating System + if [ ! -f /etc/fedora-release ]; then + printf "'${DOGTAG_COMPONENT_NAME}' ONLY builds on Fedora!\n" + exit 255 + fi + # Obtain Fedora Operating System Version + FEDORA_VERSION="F-`cat /etc/fedora-release | awk '{print $3}'`" + export FEDORA_VERSION + # Retrieve '${DOGTAG_SPECFILE}' from Koji + printf "Fetching '${DOGTAG_SPECFILE}' for '${FEDORA_VERSION}' . . .\n" + wget -O ${DOGTAG_SPECFILE} ${DOGTAG_WGET_URL}/${FEDORA_VERSION}/${DOGTAG_COMPONENT_NAME}/${DOGTAG_SPECFILE}?view=co + if [ ! -s "${DOGTAG_SPECFILE}" ]; then + printf "Failed to fetch '${DOGTAG_SPECFILE}' for '${FEDORA_VERSION}'!\n" + rm -rf ${DOGTAG_SPECFILE} + exit 255 + fi +fi + +# Invoke the shared Dogtag PKI build script +config-ext/build_dogtag_pki $@ + diff --git a/dogtag/tks-ui/dogtag-pki-tks-ui.spec b/dogtag/tks-ui/dogtag-pki-tks-ui.spec new file mode 100644 index 000000000..f51d903a7 --- /dev/null +++ b/dogtag/tks-ui/dogtag-pki-tks-ui.spec @@ -0,0 +1,61 @@ +Name: dogtag-pki-tks-ui +Version: 9.0.0 +Release: 1%{?dist} +Summary: Dogtag Certificate System - Token Key Service User Interface +URL: http://pki.fedoraproject.org/ +License: GPLv2 +Group: System Environment/Base + +BuildArch: noarch + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: ant + +Source0: http://pki.fedoraproject.org/pki/sources/%{name}/%{name}-%{version}.tar.gz + +# NOTE: Several PKI packages require a "virtual" UI component. These +# "virtual" UI components are "Provided" by various UI "flavors" +# including "dogtag", "redhat", and "null". Consequently, +# all "dogtag", "redhat", and "null" UI components MUST be +# mutually exclusive! +Provides: pki-tks-ui = %{version}-%{release} + +Obsoletes: pki-tks-ui < %{version}-%{release} + +Conflicts: redhat-pki-tks-ui + +%description +Dogtag Certificate System is an enterprise software system designed +to manage enterprise Public Key Infrastructure (PKI) deployments. + +The Dogtag Token Key Service User Interface contains the graphical +user interface for the Dogtag Token Key Service. + +%prep + +%setup -q + +%build +ant \ + -Dproduct.ui.flavor.prefix="dogtag" \ + -Dproduct.prefix="pki" \ + -Dproduct="tks-ui" \ + -Dversion="%{version}" + +%install +rm -rf %{buildroot} +cd dist/binary +unzip %{name}-%{version}.zip -d %{buildroot} + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%doc LICENSE +%{_datadir}/pki/ + +%changelog +* Fri Nov 19 2010 Matthew Harmsen <mharmsen@redhat.com> 9.0.0-1 +- Updated Dogtag 1.3.x --> Dogtag 2.0.0 --> Dogtag 9.0.0. diff --git a/dogtag/tks-ui/shared/webapps/tks/404.html b/dogtag/tks-ui/shared/webapps/tks/404.html new file mode 100755 index 000000000..2fc48f1c0 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/404.html @@ -0,0 +1,146 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2009 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<script language=javascript> +var url = document.URL; +var protocol = location.protocol; +var hostname = location.hostname; +var port = location.port; +</script> + +<head> +<title>TKS 404 Error!</title> +<!-- always expand ALL relative paths --> +<script language=javascript> +document.write('<link rel="shortcut icon" href="'); +document.write(protocol); +document.write('//'); +document.write(hostname); +document.write(':'); +document.write(port); +document.write('/tks/img/favicon.ico'); +document.write('" />'); +document.write('<link rel="stylesheet" href="'); +document.write(protocol); +document.write('//'); +document.write(hostname); +document.write(':'); +document.write(port); +document.write('/tks/css/pki-base.css'); +document.write('" type="text/css" />'); +document.write('<META http-equiv=Content-Type content="text/html; charset=UTF-8">'); +</script> +</head> +<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366"> +<div id="header"> +<!-- always expand ALL relative paths --> +<script language=javascript> +document.write('<a href="http://pki.fedoraproject.org/" title="Visit pki.fedoraproject.org for more information about Dogtag products and services"><img src="'); +document.write(protocol); +document.write('//'); +document.write(hostname); +document.write(':'); +document.write(port); +document.write('/tks/img/logo_header.gif'); +document.write('" alt="Dogtag" id="myLogo" /></a>'); +</script> + <div id="headertitle"> + <a href="/" title="Dogtag Network homepage">Dogtag<sup><font size="-2">®</font></sup> Certificate System</a> + </div> + <div id="account"> + <dl><dt><span></span></dt><dd></dd></dl> + </div> +</div> + +<div id="mainNavOuter"> +<div id="mainNav"> +<div id="mainNavInner"> + +</div><!-- end mainNavInner --> +</div><!-- end mainNav --> +</div><!-- end mainNavOuter --> + + +<div id="bar"> + +<div id="systembar"> +<div id="systembarinner"> + +<div> + - +</div> + + +</div> +</div> + +</div> +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Certificate System TKS Error Page +</font><br> +<p> +</font> +<p> +<script language=javascript> +document.write('<center>'); +document.write('<table border="1" cellspacing="0" cellpadding="0">'); +document.write('<tr valign="TOP">'); +document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">HTTP STATUS</font></b></td>'); +document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">DESCRIPTION</font></b></td>'); +document.write('</tr>'); +document.write('<tr valign="TOP">'); +document.write('<td align="center"><b><font size="+3" color="red">'); +document.write('404'); +document.write('</font></b></td>'); +document.write('<td><b><font size="+1" color="RED">'); +document.write('The requested resource could not be found but may be available again in the future.'); +document.write('</font></b><br><b><font size="+1" color="RED">'); +document.write('Please check the validity of the URL listed below:'); +document.write('</font></b><br><br>'); +document.write('<center><b><font size="+1"><a href="'); +document.write(url); +document.write('">'); +document.write(url); +document.write('</a>'); +document.write('</font></b></center><br></td>'); +document.write('</tr>'); +document.write('</table>'); +document.write('</center>'); +</script> +<div id="footer"> +</div> +<!-- +To prevent Internet Explorer from overriding the display of this custom error +page by displaying it's own "Friendly HTTP Error Message", always include the +following 'padding' to ensure that the text size exceeds 512 bytes: + +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +--> +</body> +</html> + diff --git a/dogtag/tks-ui/shared/webapps/tks/500.html b/dogtag/tks-ui/shared/webapps/tks/500.html new file mode 100755 index 000000000..88829b9bd --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/500.html @@ -0,0 +1,139 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2009 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<script language=javascript> +var url = document.URL; +var protocol = location.protocol; +var hostname = location.hostname; +var port = location.port; +</script> + +<head> +<title>TKS 500 Error!</title> +<!-- always expand ALL relative paths --> +<script language=javascript> +document.write('<link rel="shortcut icon" href="'); +document.write(protocol); +document.write('//'); +document.write(hostname); +document.write(':'); +document.write(port); +document.write('/tks/img/favicon.ico'); +document.write('" />'); +document.write('<link rel="stylesheet" href="'); +document.write(protocol); +document.write('//'); +document.write(hostname); +document.write(':'); +document.write(port); +document.write('/tks/css/pki-base.css'); +document.write('" type="text/css" />'); +document.write('<META http-equiv=Content-Type content="text/html; charset=UTF-8">'); +</script> +</head> +<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366"> +<div id="header"> +<!-- always expand ALL relative paths --> +<script language=javascript> +document.write('<a href="http://pki.fedoraproject.org/" title="Visit pki.fedoraproject.org for more information about Dogtag products and services"><img src="'); +document.write(protocol); +document.write('//'); +document.write(hostname); +document.write(':'); +document.write(port); +document.write('/tks/img/logo_header.gif'); +document.write('" alt="Dogtag" id="myLogo" /></a>'); +</script> + <div id="headertitle"> + <a href="/" title="Dogtag Network homepage">Dogtag<sup><font size="-2">®</font></sup> Certificate System</a> + </div> + <div id="account"> + <dl><dt><span></span></dt><dd></dd></dl> + </div> +</div> + +<div id="mainNavOuter"> +<div id="mainNav"> +<div id="mainNavInner"> + +</div><!-- end mainNavInner --> +</div><!-- end mainNav --> +</div><!-- end mainNavOuter --> + + +<div id="bar"> + +<div id="systembar"> +<div id="systembarinner"> + +<div> + - +</div> + + +</div> +</div> + +</div> +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Certificate System TKS Error Page +</font><br> +<p> +</font> +<p> +<script language=javascript> +document.write('<center>'); +document.write('<table border="1" cellspacing="0" cellpadding="0">'); +document.write('<tr valign="TOP">'); +document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">HTTP STATUS</font></b></td>'); +document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">DESCRIPTION</font></b></td>'); +document.write('</tr>'); +document.write('<tr valign="TOP">'); +document.write('<td align="center"><b><font size="+3" color="red">'); +document.write('500'); +document.write('</font></b></td>'); +document.write('<td><b><font size="+1" color="RED">'); +document.write('The server encountered an unexpected condition which prevented it from fulfilling the request.<br>'); +document.write('Please consult your local administrator for further assistance. The Certificate System logs may provide further information.'); +document.write('</font></b><br></td>'); +document.write('</tr>'); +document.write('</table>'); +document.write('</center>'); +</script> +<div id="footer"> +</div> +<!-- +To prevent Internet Explorer from overriding the display of this custom error +page by displaying it's own "Friendly HTTP Error Message", always include the +following 'padding' to ensure that the text size exceeds 512 bytes: + +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding] +--> +</body> +</html> + diff --git a/dogtag/tks-ui/shared/webapps/tks/GenUnexpectedError.template b/dogtag/tks-ui/shared/webapps/tks/GenUnexpectedError.template new file mode 100644 index 000000000..53e975d14 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/GenUnexpectedError.template @@ -0,0 +1,68 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<CMS_TEMPLATE> + +<TITLE>TKS Processing Error!</TITLE> + +<BODY BGCOLOR="white"> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Problem Processing Your Request +</font> + +<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%" BACKGROUND="/tks/agent/graphics/hr.gif" > + <tr> + <td> </td> + </tr> +</table> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="JavaScript"> +var authority = 'Certificate System'; +if (result.fixed.authorityName != null) { + authority = result.fixed.authorityName; +} + +document.writeln('<P>'); +document.write('The '+authority+' encountered an unexpected error '); +document.writeln(' while processing your request.'); +document.writeln( + 'The following is a detailed message of the error that occurred.'); + +document.writeln('<P>'); +document.writeln('<BLOCKQUOTE><B><PRE>'); +if (result.fixed.unexpectedError != null) { + document.write(result.fixed.unexpectedError); +} else { + document.write('No further details provided.'); +} +document.writeln('</PRE></B></BLOCKQUOTE>'); + +document.writeln('<P>'); +document.writeln( + 'Please consult your local administrator for further assistance.'); +document.writeln('The Certificate System logs may provide further information.'); +</SCRIPT> + +</font> +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenError.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenError.template new file mode 100644 index 000000000..e4a49ae07 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenError.template @@ -0,0 +1,78 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Processing Error!</TITLE> + +<BODY BGCOLOR="white"> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Problem Processing Your Request +</font> + +<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%" BACKGROUND="/tks/agent/graphics/hr.gif" > + <tr> + <td> </td> + </tr> +</table> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="JavaScript"> + +document.writeln('<P>'); +document.write('The '+result.fixed.authorityName+' '); +document.writeln('encountered a problem while processing your request. '); +document.writeln( + 'The following is a detailed message of the error that occurred.'); + +document.writeln('<P>'); +document.writeln('<BLOCKQUOTE><B><PRE>'); +if (result.fixed.errorDetails != null) { + document.write(result.fixed.errorDetails); +} else { + document.write('No further details provided.'); +} +document.writeln('</PRE></B></BLOCKQUOTE>'); + +if (result != null && result.recordSet != null && result.recordSet.length > 0){ + document.writeln('<P>'); + document.write('Additional Information:'); + document.writeln('<P>'); + document.write('<BLOCKQUOTE><B><PRE>'); + document.writeln('<UL>'); + for (var i = 0; i < result.recordSet.length; i++) { + if (result.recordSet[i].errorDescription != null) { + document.writeln(result.recordSet[i].errorDescription); + } + } + document.writeln('</UL>'); + document.write('</PRE></B></BLOCKQUOTE>'); +} +</SCRIPT> + +<P> +Please consult your local administrator for further assistance. +The Certificate System logs may provide further information. + +</font> +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenPending.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenPending.template new file mode 100644 index 000000000..a75a5ebdc --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenPending.template @@ -0,0 +1,61 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Request Pending</TITLE> + +<BODY bgcolor="white"> + + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Request Successfully Submitted +</font> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="JavaScript"> +var authority = 'Certificate Managment System'; +if (result.fixed.authorityName != null) + authority = result.fixed.authorityName; +document.writeln('<P>'); +document.write('Congratulations, your request has been successfully '); +document.write('submitted to the '+authority+'. '); +document.write('Your request will be processed when an authorized agent '); +document.writeln('verifies and validates the information in your request.'); + +document.writeln('<P>'); +document.write('Your request ID is '); +if (result.fixed.requestId != null) { + document.write('<B>'+result.fixed.requestId+'</B>.'); + document.writeln('<P>'); + document.write('Your can check on the status of your request with '); + document.write('an authorized agent or local administrator '); + document.writeln('by referring to this request ID.'); +} else { + document.write('<B>not provided.</B> '); + document.write('<P>'); + document.writeln('Please consult your local administrator for assistance.'); +} +</SCRIPT> + +</font> +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenRejected.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenRejected.template new file mode 100644 index 000000000..112717a7e --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenRejected.template @@ -0,0 +1,82 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Request Rejected</TITLE> + +<BODY bgcolor="white"> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Request Rejected +</font> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="JavaScript"> + +var authority = 'Certificate System'; +if (result.fixed.authorityName != null) { + authority = result.fixed.authorityName; +} + +document.writeln('<P>'); +document.write('Your request has been rejected by the '+authority+'. ' ); +document.write('This may indicate that some attributes of the request '); +document.write('violate the policies of this '+authority+'. '); + +document.writeln('<P>'); +document.writeln('Violation details: '); + +document.writeln('<P>'); +document.writeln('<BLOCKQUOTE><B><PRE>'); +if (result == null || result.recordSet == null || result.recordSet.length == 0){ + document.writeln('No further details provided.'); +} +else { + document.writeln('<UL>'); + for (var i = 0; i < result.recordSet.length; i++) { + if (result.recordSet[i].policyMessage != null) { + document.writeln(result.recordSet[i].policyMessage); + } + } + document.writeln('</UL>'); +} +document.writeln('</PRE></B></BLOCKQUOTE>'); + +document.writeln('<P>'); +document.write('Your request ID is '); +if (result.fixed.requestId == null) { + document.write('<B>not provided</B>.'); + document.writeln('<P>'); + document.write( + 'Please consult your local administrator for further assistance.'); +} else { + document.write('<B>'+result.fixed.requestId+'</B>. '); + document.writeln('<P>'); + document.write( + 'You can contact an authorized agent or local administrator for '); + document.writeln('further assistance by referring to the request ID.'); +} +</SCRIPT> + +</font> +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenSuccess.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenSuccess.template new file mode 100644 index 000000000..02a9b9b8b --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenSuccess.template @@ -0,0 +1,44 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<!-- This template is intended to be replaced by request specific results ! --> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Generic Request Success</TITLE> + +<BODY BGCOLOR=white> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Request Successfully Submited +</font> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="Javascript"> +var authority = 'Certificate System'; +if (request.fixed.authorityName != null) + authority = request.fixed.authorityName; + +document.writeln('<P>'); +document.write('Congratulations, your request has been successfully '); +document.write('submitted and processed by the '+authority+'.'); +</SCRIPT> + +</font> +</body> diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenSvcPending.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenSvcPending.template new file mode 100644 index 000000000..cb36a5881 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenSvcPending.template @@ -0,0 +1,61 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Request Svc Pending</TITLE> + +<BODY bgcolor="white"> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Request Successfully Submitted +</font> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="JavaScript"> +document.writeln('<P>'); +document.write('Your request has been successfully submitted and processed '); +document.writeln('by the '+result.fixed.authorityName+'.'); +document.write('The '+result.fixed.authorityName+' is waiting for a remote '); +if (result.fixed.remoteAuthorityName != null) + document.write(result.fixed.remoteAuthorityName); +else + document.write('Certificate Manager or Data Recovery manager'); +document.write(' to fill your request.'); + +document.writeln('<P>'); +document.write('Your request ID is '); +if (result.fixed.requestId != null) { + document.write('<B>'+result.fixed.requestId+'</B>.'); + document.write('<P>'); + document.write('Your can check on status of your request with an '+ + 'authorized agent or local administrator by referring '+ + 'to this request ID.'); +} else { + document.write('not provided. '); + document.writeln('Please consult your local administrator for assistance.'); +} +</SCRIPT> + + +</font> +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenUnauthorized.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenUnauthorized.template new file mode 100644 index 000000000..c6e62f841 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenUnauthorized.template @@ -0,0 +1,42 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<!-- This template is intended to be replaced by request specific results ! --> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Generic Unauthorized</TITLE> + +<BODY BGCOLOR=white> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Unauthorized Access +</font> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="Javascript"> +document.writeln('<P>'); +document.write('You are not authorized for this operation.'); +document.write('<BR>'); +document.write('If you think this is an error please contact your '); +document.writeln('local administrator for further assistance.'); +</SCRIPT> + +</font> +</body> diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/GenUnexpectedError.template b/dogtag/tks-ui/shared/webapps/tks/agent/GenUnexpectedError.template new file mode 100644 index 000000000..53287a8a0 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/GenUnexpectedError.template @@ -0,0 +1,68 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<HTML> +<CMS_TEMPLATE> + +<TITLE>TKS Agent Processing Error!</TITLE> + +<BODY BGCOLOR="white"> + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Problem Processing Your Request +</font> + +<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%" BACKGROUND="/tks/agent/graphics/hr.gif" > + <tr> + <td> </td> + </tr> +</table> + +<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> + +<SCRIPT LANGUAGE="JavaScript"> +var authority = 'Certificate System'; +if (result.fixed.authorityName != null) { + authority = result.fixed.authorityName; +} + +document.writeln('<P>'); +document.write('The '+authority+' encountered an unexpected error '); +document.writeln(' while processing your request.'); +document.writeln( + 'The following is a detailed message of the error that occurred.'); + +document.writeln('<P>'); +document.writeln('<BLOCKQUOTE><B><PRE>'); +if (result.fixed.unexpectedError != null) { + document.write(result.fixed.unexpectedError); +} else { + document.write('No further details provided.'); +} +document.writeln('</PRE></B></BLOCKQUOTE>'); + +document.writeln('<P>'); +document.writeln( + 'Please consult your local administrator for further assistance.'); +document.writeln('The Certificate System logs may provide further information.'); +</SCRIPT> + +</font> +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/cms-funcs.js b/dogtag/tks-ui/shared/webapps/tks/agent/cms-funcs.js new file mode 100644 index 000000000..c8ffd51c7 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/cms-funcs.js @@ -0,0 +1,538 @@ +// --- BEGIN COPYRIGHT BLOCK --- +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; version 2 of the License. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// Copyright (C) 2007 Red Hat, Inc. +// All rights reserved. +// --- END COPYRIGHT BLOCK --- + +//<!-- + + +function checkClientTime() +{ + var speed; + var server_date = new Date(serverdate); + var client_date = new Date(); + var zone = client_date.getTimezoneOffset(); + var timediff = 0; + + var serverutc = server_date.getTime(); + var clientutc = client_date.getTime(); + + var offset = clientutc - serverutc; + if (offset >0) { + speed = 'fast'; + } else { + speed = 'slow'; + } + timediff = Math.round(Math.abs(offset/1000/60)); + + if (timediff > 10) { + msg = 'Your computer\'s clock is '+ timediff+ ' minutes '+ speed + + '\n\nYou may encounter problems using your certificate\n' + + 'as your clock is set incorrectly.\n\n' + + 'According to the server, the time is:\n ' + server_date + + '\n\nPlease correct your clock before proceeding with enrollment'+ + '\n\nYour timezone is set to ' + (-zone/60) +' hours relative to GMT.\n' + + 'If you change your timezone, you may need to restart your browser\n'+ + 'before continuing.'; + alert(msg); + return false; + } + return true; +} + + + + +function doubleQuotes(componentName) +{ + for (i=0; i < componentName.length; i++) { + if (componentName.charAt(i) == '"') { + return true; + } + } + return false; +} + +function escapeDNComponent(str) +{ + var outStr = ""; + var escapeValue = false; + + // Do we need to escape any characters + for (i=0; i < str.length; i++) { + c = str.charAt(i); + if (c == ',' || c == '=' || c == '+' || c == '<' || + c == '>' || c == '#' || c == ';' || c == '\r' || + c == '\n') { + escapeValue = true; + break; + } + } + + if (escapeValue == true) { + outStr += '"'; + outStr += str; + outStr += '"'; + } else { + outStr += str; + } + return outStr; +} + +function formulateDN(form, distinguishedName) +{ + // Note: The alerts about double quotes are here to avoid + // problems with the code dealing with quoting and escaping in the + // Netscape Directory Server 1.0 implementation. + with (form) { + distinguishedName.value = ''; + if (form.E != null) { + if (E.value != '') { + if (doubleQuotes(E.value) == true) { + alert('Double quotes are not allowed in the E-mail field'); + E.value = ''; + E.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'E=' + escapeDNComponent(E.value); + } + } + if (form.CN!= null) { + if (CN.value != '') { + if (doubleQuotes(CN.value) == true) { + alert('Double quotes are not allowed in Common Name field'); + CN.value = ''; + CN.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'CN=' + escapeDNComponent(CN.value); + } + } + if (form.UID1 != null) { + if (UID1.value != '') { + if (doubleQuotes(UID1.value) == true) { + alert('Double quotes are not allowed in the user id field'); + UID1.value = ''; + UID1.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'UID=' + escapeDNComponent(UID1.value); + } + } + if (form.OU != null) { + if (OU.value != '') { + if (doubleQuotes(OU.value) == true) { + alert('Double quotes are not allowed in Org Unit field'); + OU.value = ''; + OU.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'OU=' + escapeDNComponent(OU.value); + } + } + if (form.O != null) { + if (O.value != '') { + if (doubleQuotes(O.value) == true) { + alert('Double quotes are not allowed in Organization field.'); + O.value = ''; + O.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'O=' + escapeDNComponent(O.value); + } + } + if (form.L != null) { + if (L.value != '') { + if (doubleQuotes(L.value) == true) { + alert('Double quotes are not allowed in Locality field.'); + L.value = ''; + L.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'L=' + escapeDNComponent(L.value); + } + } + if (form.ST != null) { + if (ST.value != '') { + if (doubleQuotes(ST.value) == true) { + alert('Double quotes are not allowed in State field.'); + ST.value = ''; + ST.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'ST=' + escapeDNComponent(ST.value); + } + } + if (form.C != null) { + if (C.value != '') { + if (doubleQuotes(C.value) == true) { + alert('Double quotes are not allowed in Country field.'); + C.value = ''; + C.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'C=' + escapeDNComponent(C.value); + } + } + } +} + +function isValidIssuerDN(form) +{ + // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01 + // that are triggered on formation of the nickname on import of a CA cert if + // that cert does not contain an OU or O component. + if ((form.OU.value == '') && (form.O.value == '')) { + alert("You must enter an Organization Unit or an Organization."); + return false; + } else { + return true; + } +} + +function isValidAdminDN(form) +{ + // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01 + // that are triggered on formation of the nickname on import of a personal cert if + // that cert does not contain a common name. + + if (form.CN.value == '') { + alert("You must enter a Common Name."); + return false; + } else { + return true; + } +} + +function isValidCSR(form) +{ + // Note: the checks here are of mixed origin. Some are required for Navigator + // and Communicator. The CSR field checks are to avoid server side rejection of the + // submission. These checks can be split up to be different for different types of + // certificates. + + formulateDN(form, form.subject); + // DEBUG + //alert(form.subject); + + with (form) { + if (email != null) { + if (E.value == "" && email.checked) { + alert("E-mail certificates must include an E-mail address."); + return false; + } + } + if (CN.value == "") { + alert("You must supply your name for the certificate."); + return false; + } + return true; + } +} + +function isNumber(string, radix) { + var i = 0; + var legalDigits; + if (radix == null || radix == 10) { + legalDigits = "0123456789"; + } else if (radix == 16) { + legalDigits = "0123456789abcdefABCDEF:"; + } else { + return false; + } + for(; i < string.length; ++i) { + if (string.charAt(i) != ' ') + break; + } + if (string.charAt(i) == '+' || string.charAt(i) == '-' ) { + ++i; + } + if (radix == 16 && i < string.length - 2 && + string.charAt(i) == '0' && + (string.charAt(i+1) == 'x' || string.charAt(i+1) == 'X') && + legalDigits.indexOf(string.charAt(i+2)) != -1) { + i += 3; + } + for(; i < string.length; ++i) { + if (legalDigits.indexOf(string.charAt(i)) == -1) + break; + } + for(; i < string.length; ++i) { + if (string.charAt(i) != ' ') + return false; + } + return true; +} + +function dateForm(name) +{ + var i; + document.write('<FORM NAME=\"'+ name +'\">'); + document.write('<SELECT NAME=\"day\"><OPTION VALUE=0> '); + for (i=1; i <=31; ++i) + document.write('<OPTION VALUE='+i+'>'+i); + document.write('</SELECT>'); + document.write('<SELECT NAME=\"month\">'+ + '<OPTION VALUE=13> '+ + '<OPTION VALUE=0>January'+ + '<OPTION VALUE=1>February'+ + '<OPTION VALUE=2>March'+ + '<OPTION VALUE=3>April'+ + '<OPTION VALUE=4>May'+ + '<OPTION VALUE=5>June'+ + '<OPTION VALUE=6>July'+ + '<OPTION VALUE=7>August'+ + '<OPTION VALUE=8>September'+ + '<OPTION VALUE=9>October'+ + '<OPTION VALUE=10>November'+ + '<OPTION VALUE=11>December'+ + '</SELECT>' + ); + + document.write('<SELECT NAME=\"year\"><OPTION VALUE=0> '); + for (i=1996; i <=2006; ++i) + document.write('<OPTION VALUE='+i+'>'+i); + document.write('</SELECT>'); + document.write('</FORM>'); +} + +function dateIsEmpty(form) +{ + return form.day.selectedIndex == 0 && + form.month.selectedIndex == 0 && + form.year.selectedIndex == 0; +} + + +function convertDate(form, fieldName) +{ + var date; + var day = form.day.options[form.day.selectedIndex].value; + var month = form.month.options[form.month.selectedIndex].value; + var year = form.year.options[form.year.selectedIndex].value; + date = new Date(year,month,day); + + // see if normalization was required + if (date.getMonth() != month || date.getDate() != day ) { + alert(fieldName + " is invalid"); + return null; + } + else + return Math.round(date.getTime() / 1000); +} + +function daysToSeconds(days){ + return 3600 * 24 * days; +} + +// encloses value in double quotes preceding all embedded double quotes with \ +function escapeValue(value) +{ + var result; + var fromIndex = 0, toIndex = 0; + + // kludgy work-around for indexOf JavaScript bug on empty string + if (value == "") + return '\"\"'; + + result = '\"'; + while ((toIndex = value.indexOf('\"',fromIndex)) != -1) { + result += value.substring(fromIndex,toIndex); + result += '\\"'; + fromIndex = toIndex + 1; + } + result += value.substring(fromIndex,value.length); + result += '\"'; + return result; +} + +// encloses value in double quotes preceding all embedded double quotes and +// backslashes with backslash +function escapeValueJSString(value) +{ + var result = ""; + + // Do we need to escape any characters + for (i=0; i < value.length; i++) { + c = value.charAt(i); + if (c == '\\' | c == '"') { + result += '\\'; + } + result += c; + } + return '\"' + result + '\"'; +} + +function escapeValueRfc1779(value) +{ + var result = ""; + + // Do we need to escape any characters + for (i=0; i < value.length; i++) { + c = value.charAt(i); + if (c == ',' || c == '=' || c == '+' || c == '<' || + c == '>' || c == '#' || c == ';' || c == '\r' || + c == '\n' || c == '\\' | c == '"') { + result += '\\'; + } + result += c; + } + return result; +} + +// helper function to construct name component(pattern) +function makeComponent(list,tag,value,asPattern) +{ + var last = list.length; + if (asPattern) { + list[last] = (value == "") ? "*" : (tag+"="+escapeValueRfc1779(value)); + } + else if (value != "") + list[last] = tag+"="+escapeValueRfc1779(value); +} + +// If asPattern is false formulates the RFC 1779 format subject name +// from the component parts skipping all components with blank values, +// otherwise builds RFC 1779-like matching pattern from components +function computeNameCriterion(form) +{ + var asPattern = form.match[1].checked; + var result = new Array; + + with (form) { + // The order of clauses here determines how components are ordered + // in the name sent in the client's request. A site may wish to + // re-order the clauses here if their conventions produce names + // with components in a different order. + makeComponent(result,"E",E.value,asPattern); + makeComponent(result,"CN",CN.value,asPattern); + makeComponent(result,"UID",UID.value,asPattern); + makeComponent(result,"OU",OU.value,asPattern); + makeComponent(result,"O",O.value,asPattern); + makeComponent(result,"L",L.value,asPattern); + makeComponent(result,"ST",ST.value,asPattern); + makeComponent(result,"C",C.value,asPattern); + } + if (result.length == 0) + return asPattern ? "0 == 0" : "0 == 1"; + else + return "subject" + ( asPattern ? " ~= " : " == ") + + escapeValue(result.join(', ')); +} + +function booleanCrit(crit,radioArg) +{ + for (var i = 0; i < radioArg.length; ++i ){ + if( radioArg[i].checked ) { + if (radioArg[i].value.length != 0) { + crit[crit.length] = radioArg[i].name + " == " + radioArg[i].value; + } + return; + } + } +} + +function isHTTPEscapeChar(c) +{ + if (c == '%' || c == '#' || c == '+' || c == '=' || c == '\n' || + c == '\r' || c == '\t' || c == ';' || c == '&' || + c == '>') { + return true; + } + + return false; +} + +function produceHTTPEscapedString(inString) +{ + table = new Object(); + table["%"] = "25"; + table["#"] = "23"; + table["+"] = "2B"; + table["="] = "3D"; + table["\n"] = "0A"; + table["\r"] = "0D"; + table["\t"] = "09"; + table[";"] = "3B"; + table["&"] = "26"; + table[">"] = "3E"; + + outString = ""; + + for (i=0; i < inString.length; i++) { + if (inString.charAt(i) == ' ') { + outString += '+'; + } else { + if (isHTTPEscapeChar(inString.charAt(i))) { + outString += "%" + table[inString.substring(i, i+1)]; + } else { + outString += inString.charAt(i); + } + } + } + + return outString; +} + +// strips (optional) spaces and 0[xX] prefix at the beginning of s +function stripPrefix(s) +{ + var i; + for(i = 0; i < s.length - 1; ++i) { + if (s.charAt(i) != ' ' ) + break; + } + if (s.charAt(i) == '0' && (s.charAt(i+1) == 'x' || s.charAt(i+1) == 'X')) { + return s.substring(i+2,s.length); + } else { + return s.substring(i,s.length);; + } +} + +// removes colons from value and returns the result +// used as helper to convert colon-separated hexadecimal numbers +// to regular numbers +function removeColons(value) +{ + var result = ""; + + for (i=0; i < value.length; i++) { + c = value.charAt(i); + if (c != ':' ){ + result += c; + } + } + return result; +} + +function navMajorVersion() +{ + return parseInt(navigator.appVersion.substring(0, navigator.appVersion.indexOf("."))); +} +//--> + + + + + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/funcs.js b/dogtag/tks-ui/shared/webapps/tks/agent/funcs.js new file mode 100644 index 000000000..daef83d17 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/funcs.js @@ -0,0 +1,686 @@ +// --- BEGIN COPYRIGHT BLOCK --- +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; version 2 of the License. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// Copyright (C) 2007 Red Hat, Inc. +// All rights reserved. +// --- END COPYRIGHT BLOCK --- + +//<!-- +function doubleQuotes(componentName) +{ + for (i=0; i < componentName.length; i++) { + if (componentName.charAt(i) == '"') { + return true; + } + } + return false; +} + +function escapeDNComponent(str) +{ + var outStr = ""; + var escapeValue = false; + + // Do we need to escape any characters + for (i=0; i < str.length; i++) { + c = str.charAt(i); + if (c == ',' || c == '=' || c == '+' || c == '<' || + c == '>' || c == '#' || c == ';' || c == '\r' || + c == '\n') { + escapeValue = true; + break; + } + } + + if (escapeValue == true) { + outStr += '"'; + outStr += str; + outStr += '"'; + } else { + outStr += str; + } + return outStr; +} + +function formulateDN(form, distinguishedName) +{ + // Note: The alerts about double quotes are here to avoid + // problems with the code dealing with quoting and escaping in the + // Netscape Directory Server 1.0 implementation. + with (form) { + distinguishedName.value = ''; + if (form.eMail != null) { + if (eMail.value != '') { + if (doubleQuotes(eMail.value) == true) { + alert('Double quotes are not allowed in the E-mail field'); + eMail.value = ''; + eMail.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'E=' + escapeDNComponent(eMail.value); + } + } + if (form.commonName != null) { + if (commonName.value != '') { + if (doubleQuotes(commonName.value) == true) { + alert('Double quotes are not allowed in Common Name field'); + commonName.value = ''; + commonName.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'CN=' + escapeDNComponent(commonName.value); + } + } + if (form.userID != null) { + if (userID.value != '') { + if (doubleQuotes(userID.value) == true) { + alert('Double quotes are not allowed in the user id field'); + userID.value = ''; + userID.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'UID=' + escapeDNComponent(userID.value); + } + } + if (form.orgUnit != null) { + if (orgUnit.value != '') { + if (doubleQuotes(orgUnit.value) == true) { + alert('Double quotes are not allowed in Org Unit field'); + orgUnit.value = ''; + orgUnit.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'OU=' + escapeDNComponent(orgUnit.value); + } + } + if (form.org != null) { + if (org.value != '') { + if (doubleQuotes(org.value) == true) { + alert('Double quotes are not allowed in Organization field.'); + org.value = ''; + org.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'O=' + escapeDNComponent(org.value); + } + } + if (form.locality != null) { + if (locality.value != '') { + if (doubleQuotes(locality.value) == true) { + alert('Double quotes are not allowed in Locality field.'); + locality.value = ''; + locality.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'L=' + escapeDNComponent(locality.value); + } + } + if (form.state != null) { + if (state.value != '') { + if (doubleQuotes(state.value) == true) { + alert('Double quotes are not allowed in State field.'); + state.value = ''; + state.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'ST=' + escapeDNComponent(state.value); + } + } + if (form.country != null) { + if (country.value != '') { + if (doubleQuotes(country.value) == true) { + alert('Double quotes are not allowed in Country field.'); + country.value = ''; + country.focus(); + return; + } + if (distinguishedName.value != '') distinguishedName.value += ', '; + distinguishedName.value += 'C=' + escapeDNComponent(country.value); + } + } + } +} + +function isValidIssuerDN(form) +{ + // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01 + // that are triggered on formation of the nickname on import of a CA cert if + // that cert does not contain an OU or O component. + if ((form.orgUnit.value == '') && (form.org.value == '')) { + alert("You must enter an Organization Unit or an Organization."); + return false; + } else { + return true; + } +} + +function isValidAdminDN(form) +{ + // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01 + // that are triggered on formation of the nickname on import of a personal cert if + // that cert does not contain a common name. + + if (form.commonName.value == '') { + alert("You must enter a Common Name."); + return false; + } else { + return true; + } +} + +function isValidCSR(form) +{ + // Note: the checks here are of mixed origin. Some are required for Navigator + // and Communicator. The CSR field checks are to avoid server side rejection of the + // submission. These checks can be split up to be different for different types of + // certificates. + + formulateDN(form, form.subject); + + with (form) { + if (isEmailCert != null) { + if (eMail.value == "" && isEmailCert.checked) { + alert("E-mail certificates must include an E-mail address."); + return false; + } + } + if (commonName.value == "") { + alert("You must supply your name for the certificate."); + return false; + } + if (csrRequestorName.value == "") { + csrRequestorName.value = commonName.value; + } + if (csrRequestorPhone.value == "" && csrRequestorEmail.value == "") { + alert("You must supply a contact phone number or e-mail address."); + return false; + } + return true; + } +} + +function isNegative(string) { + if (string.charAt(0) == '-') + return true; + else + return false; +} + +function isNumber(string, radix) { + var i = 0; + var legalDigits; + if (radix == null || radix == 10) { + legalDigits = "0123456789"; + } else if (radix == 16) { + legalDigits = "0123456789abcdefABCDEF:"; + } else { + return false; + } + for(; i < string.length; ++i) { + if (string.charAt(i) != ' ') + break; + } + if (string.charAt(i) == '+' || string.charAt(i) == '-' ) { + ++i; + } + if (radix == 16 && i < string.length - 2 && + string.charAt(i) == '0' && + (string.charAt(i+1) == 'x' || string.charAt(i+1) == 'X') && + legalDigits.indexOf(string.charAt(i+2)) != -1) { + i += 3; + } + for(; i < string.length; ++i) { + if (legalDigits.indexOf(string.charAt(i)) == -1) + break; + } + for(; i < string.length; ++i) { + if (string.charAt(i) != ' ') + return false; + } + return true; +} + +function isDecimalNumber(string) { + var i = 0; + var legalDigits = "0123456789"; + + for (; i < string.length; i++) { + if (string.charAt(i) != ' ') + break; + } + if (i < string.length && + legalDigits.indexOf(string.charAt(i)) != -1) { + i++; + } else + return false; + + for (; i < string.length; i++) { + if (legalDigits.indexOf(string.charAt(i)) == -1) + break; + } + for (; i < string.length; i++) { + if (string.charAt(i) != ' ') + return false; + } + + return true; +} + +function isHexNumber(string) { + var i = 0; + var legalDigits = "0123456789abcdefABCDEF"; + + for (; i < string.length; i++) { + if (string.charAt(i) != ' ') + break; + } + if (i < string.length - 2 && + string.charAt(i) == '0' && + (string.charAt(i+1) == 'x' || string.charAt(i+1) == 'X') && + legalDigits.indexOf(string.charAt(i+2)) != -1) { + i += 3; + } else + return false; + + for (; i < string.length; i++) { + if (legalDigits.indexOf(string.charAt(i)) == -1) + break; + } + for (; i < string.length; i++) { + if (string.charAt(i) != ' ') + return false; + } + + return true; +} + +function trim(string) { + var i, k, newString; + + for (i = 0; i < string.length; i++) { + if (string.charAt(i) != ' ' ) + break; + } + for (k = string.length - 1; k > i; k--) { + if (string.charAt(k) != ' ' ) + break; + } + k++; + + if (k > i) + newString = string.substring(i, k); + else + newString = null; + + return newString; +} + + +function dateForm(name) +{ + var i; + document.write('<FORM NAME=\"'+ name +'\">'); + document.write('<SELECT NAME=\"day\"><OPTION VALUE=0> '); + for (i=1; i <=31; ++i) + document.write('<OPTION VALUE='+i+'>'+i); + document.write('</SELECT>'); + document.write('<SELECT NAME=\"month\">'+ + '<OPTION VALUE=13> '+ + '<OPTION VALUE=0>January'+ + '<OPTION VALUE=1>February'+ + '<OPTION VALUE=2>March'+ + '<OPTION VALUE=3>April'+ + '<OPTION VALUE=4>May'+ + '<OPTION VALUE=5>June'+ + '<OPTION VALUE=6>July'+ + '<OPTION VALUE=7>August'+ + '<OPTION VALUE=8>September'+ + '<OPTION VALUE=9>October'+ + '<OPTION VALUE=10>November'+ + '<OPTION VALUE=11>December'+ + '</SELECT>' + ); + + document.write('<SELECT NAME=\"year\"><OPTION VALUE=0> '); + for (i=1996; i <=2006; ++i) + document.write('<OPTION VALUE='+i+'>'+i); + document.write('</SELECT>'); + document.write('</FORM>'); +} + +function dateIsEmpty(form) +{ + return form.day.selectedIndex == 0 && + form.month.selectedIndex == 0 && + form.year.selectedIndex == 0; +} + + +function convertDate(form, fieldName) +{ + var date; + var day = form.day.options[form.day.selectedIndex].value; + var month = form.month.options[form.month.selectedIndex].value; + var year = form.year.options[form.year.selectedIndex].value; + date = new Date(year,month,day); + + // see if normalization was required + if (date.getMonth() != month || date.getDate() != day || year == 0) { + alert(fieldName + " is invalid"); + return null; + } + else + return date.getTime(); +// return Math.round(date.getTime() / 1000); +} + +function daysToSeconds(days){ + return 3600 * 24 * days; +} + +// encloses value in double quotes preceding all embedded double quotes with \ +function escapeValue(value) +{ + var result; + var fromIndex = 0, toIndex = 0; + + // kludgy work-around for indexOf JavaScript bug on empty string + if (value == "") + return '\"\"'; + + result = '\"'; + while ((toIndex = value.indexOf('\"',fromIndex)) != -1) { + result += value.substring(fromIndex,toIndex); + result += '\\"'; + fromIndex = toIndex + 1; + } + result += value.substring(fromIndex,value.length); + result += '\"'; + return result; +} + +// encloses value in double quotes preceding all embedded double quotes and +// backslashes with backslash +function escapeValueJSString(value) +{ + var result = ""; + + // Do we need to escape any characters + for (i=0; i < value.length; i++) { + c = value.charAt(i); + if (c == '\\' | c == '"') { + result += '\\'; + } + result += c; + } + return '\"' + result + '\"'; +} + +function escapeValueRfc1779(value) +{ + var result = ""; + + // Do we need to escape any characters + for (i=0; i < value.length; i++) { + c = value.charAt(i); + if (c == ',' || c == '=' || c == '+' || c == '<' || + c == '>' || c == '#' || c == ';' || c == '\r' || + c == '\n' || c == '\\' || c == '"') { + result += '\\'; + } + result += c; + } + return result; +} + +// helper function to construct name component(pattern) +function makeComponent(list,tag,value,asPattern) +{ + var last = list.length; +// if (asPattern) { +// list[last] = (value == "") ? "*" : (tag+"="+escapeValueRfc1779(value)); +// } +// else if (value != "") + if (value != "") { + list[last] = tag+"="+escapeValueRfc1779(value); +// } else if (!asPattern) { +// list[last] = tag+"=*"; + } +// alert("asPattern = " + asPattern); +} + +// If asPattern is false formulates the RFC 1779 format subject name +// from the component parts skipping all components with blank values, +// otherwise builds RFC 1779-like matching pattern from components +function computeNameCriterion(form) +{ + var asPattern = form.match[1].checked; + var result = new Array; + + with (form) { + // The order of clauses here determines how components are ordered + // in the name sent in the client's request. A site may wish to + // re-order the clauses here if their conventions produce names + // with components in a different order. + makeComponent(result,"E",eMail.value,asPattern); + makeComponent(result,"CN",commonName.value,asPattern); + makeComponent(result,"UID",userID.value,asPattern); + makeComponent(result,"OU",orgUnit.value,asPattern); + makeComponent(result,"O",org.value,asPattern); + makeComponent(result,"L",locality.value,asPattern); + makeComponent(result,"ST",state.value,asPattern); + makeComponent(result,"C",country.value,asPattern); + } + if (result.length == 0) +// return asPattern ? "0 == 0" : "0 == 1"; + return "(x509Cert.subject=*)"; + else { + return "(x509Cert.subject" + (asPattern ? "~=" : "=") + escapeValue(nsjoin(result,",")) + ")"; + } +// escapeValue(result.join(', ')); +} + +// helper function to construct name component(pattern) +function makeComponentFilter(list,tag,value,asPattern) +{ + var last = list.length; + if (value != "") { + if (asPattern) { + list[last] = "(x509Cert.subject=*"+tag+"=*"+ + escapeValueRfc1779(value)+"*)"; + } else { + // exact match (either the end, or appended with ",") + list[last] = "(|(x509Cert.subject=*"+tag+"="+ + escapeValueRfc1779(value)+",*)" + +"(x509Cert.subject=*"+tag+"="+ + escapeValueRfc1779(value)+"))"; + } + } +} + +function computeNameFilter(form) +{ + var asPattern = form.match[1].checked; + var result = new Array; + + with (form) { + // The order of clauses here determines how components are ordered + // in the name sent in the client's request. A site may wish to + // re-order the clauses here if their conventions produce names + // with components in a different order. + makeComponentFilter(result,"E",eMail.value,asPattern); + makeComponentFilter(result,"CN",commonName.value,asPattern); + makeComponentFilter(result,"UID",userID.value,asPattern); + makeComponentFilter(result,"OU",orgUnit.value,asPattern); + makeComponentFilter(result,"O",org.value,asPattern); + makeComponentFilter(result,"L",locality.value,asPattern); + makeComponentFilter(result,"ST",state.value,asPattern); + makeComponentFilter(result,"C",country.value,asPattern); + } + if (result.length == 0) { + return "(x509Cert.subject=*)"; + } else { + if (asPattern) { + return "(|" + nsjoin(result,"") + ")"; + } else { + return "(&" + nsjoin(result,"") + ")"; + } + } +} + +function booleanCrit(crit,radioArg) +{ + for (var i = 0; i < radioArg.length; ++i ){ + if( radioArg[i].checked ) { + if (radioArg[i].value.length != 0) { + crit[crit.length] = radioArg[i].name + " == " + radioArg[i].value; + } + return; + } + } +} + +function isHTTPEscapeChar(c) +{ + if (c == '%' || c == '#' || c == '+' || c == '=' || c == '\n' || + c == '\r' || c == '\t' || c == ';' || c == '&' || + c == '>') { + return true; + } + + return false; +} + +function produceHTTPEscapedString(inString) +{ + table = new Object(); + table["%"] = "25"; + table["#"] = "23"; + table["+"] = "2B"; + table["="] = "3D"; + table["\n"] = "0A"; + table["\r"] = "0D"; + table["\t"] = "09"; + table[";"] = "3B"; + table["&"] = "26"; + table[">"] = "3E"; + + outString = ""; + + for (i=0; i < inString.length; i++) { + if (inString.charAt(i) == ' ') { + outString += '+'; + } else { + if (isHTTPEscapeChar(inString.charAt(i))) { + outString += "%" + table[inString.substring(i, i+1)]; + } else { + outString += inString.charAt(i); + } + } + } + + return outString; +} + +function isHex(string) +{ + if (string.charAt(0) == '0' && + (string.charAt(1) == 'x' || string.charAt(1) == 'X')) { + return true; + } else { + return false; + } +} + +function writeError(errorDetails) +{ + document.write("<center><h2><b>" + + "Problem Processing Your Request" + + "</b></h2></center><p>" + + "The service encountered a problem " + + "when processing your request. This problem may " + + "indicate a flaw in the form used to submit your " + + "request or the values that were entered into the form." + + "The following message supplies more information " + + "about the error that occurred.<p>"); + document.write("<blockquote><b><pre>"); + if (errorDetails != null) { + document.write(errorDetails); + } else { + document.write("Unable to provide details. " + + "Contact Administrator."); + } + document.write("</pre></b></blockquote>"); + if (result.header.errorDescription != null) { + document.write('<p>Additional Information:<p>'); + document.write('<blockquote><b>'); + document.write(result.header.errorDescription); + document.write('</b></blockquote>'); + } + document.write("<p>"); + document.write("Please consult your local administrator for " + + "further assistance."); + document.write("The certificate server's log may provide " + + "further information."); +} + +// strips (optional) spaces and 0[xX] prefix at the beginning of s +function stripPrefix(s) +{ + var i; + for(i = 0; i < s.length - 1; ++i) { + if (s.charAt(i) != ' ' ) + break; + } + if (s.charAt(i) == '0' && (s.charAt(i+1) == 'x' || s.charAt(i+1) == 'X')) { + return s.substring(i+2,s.length); + } else { + return s.substring(i,s.length);; + } +} + +// removes colons from value and returns the result +// used as helper to convert colon-separated hexadecimal numbers +// to regular numbers +function removeColons(value) +{ + var result = ""; + + for (i=0; i < value.length; i++) { + c = value.charAt(i); + if (c != ':' ){ + result += c; + } + } + return result; +} + +// Replacement for the array.join() function which isn't in MSIE 3.0 + +function nsjoin(array,str) { + val = ""; + for (i=0; i<array.length; i++) { + val = val + array[i]; + if (i < (array.length-1)) val = val+str; + } + return val; +} +//--> diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/dgLeftTab.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/dgLeftTab.gif Binary files differnew file mode 100644 index 000000000..35a76c859 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/dgLeftTab.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/dgRightTab.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/dgRightTab.gif Binary files differnew file mode 100644 index 000000000..a519bc759 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/dgRightTab.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/favicon.ico b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/favicon.ico Binary files differnew file mode 100644 index 000000000..efc1d33f4 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/favicon.ico diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/goto-tall.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/goto-tall.gif Binary files differnew file mode 100644 index 000000000..6eea3ef5c --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/goto-tall.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/gray90.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/gray90.gif Binary files differnew file mode 100644 index 000000000..c6f811102 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/gray90.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/hr.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/hr.gif Binary files differnew file mode 100644 index 000000000..14f8acf92 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/hr.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/lgLeftTab.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/lgLeftTab.gif Binary files differnew file mode 100644 index 000000000..a78fbc89d --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/lgLeftTab.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/lgRightTab.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/lgRightTab.gif Binary files differnew file mode 100644 index 000000000..71852402d --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/lgRightTab.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/logo_header.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/logo_header.gif Binary files differnew file mode 100644 index 000000000..573482227 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/logo_header.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/graphics/spacer.gif b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/spacer.gif Binary files differnew file mode 100644 index 000000000..13acffe53 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/graphics/spacer.gif diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/header.template b/dogtag/tks-ui/shared/webapps/tks/agent/header.template new file mode 100644 index 000000000..dc92d82ad --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/header.template @@ -0,0 +1,82 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<head> +<CMS_TEMPLATE> +<title>Header</title> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +</head> + +<body onResize=location.reload() bgcolor="#CCCCCC" link="#FFFFFF" vlink="#FFFFFF" alink="#CCCCFF"> +<table border="0" width="100%" cellspacing="0" cellpadding="0" bgcolor="#000080"> + <tr> + <td> + <table border="0" cellspacing="12" cellpadding="0"> + <tr> + <td><img src="/tks/agent/graphics/logo_header.gif"></td> + <td> </td> + <td><font size="+1" face="PrimaSans BT, Verdana, sans-serif" color="white"><b>Dogtag<sup><font color="#999999" size="-2">®</font></sup> Agent Services</b></font></td> + </tr> + </table> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><img src="/tks/agent/graphics/spacer.gif" alt="" width="12" height="21"></td> +<SCRIPT type="text/javascript"> + for (var i = 0; i < result.recordSet.length; ++i) { + if (result.recordSet[i].id == header.selected) { + document.write('<td><img src="/tks/agent/graphics/lgLeftTab.gif" width="13" height="21"><\/td>'); + document.write('<td bgcolor="#cccccc" nowrap>'); + } else { + document.write('<td><img src="/tks/agent/graphics/dgLeftTab.gif" width="13" height="21"><\/td>'); + document.write('<td bgcolor="#999999" nowrap>'); + } + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif">'); + if (result.recordSet[i].type == "CertificateAuthority") { + type = "Certificate Manager"; + } else if (result.recordSet[i].type == "KeyRecoveryAuthority") { + type = "Data Recovery Manager"; + } else if (result.recordSet[i].type == "OCSPAuthority") { + type = "Online Certificate Status Manager"; + } else if (result.recordSet[i].type == "RegistrationAuthority") { + type = "Registration Manager"; + } + if (result.recordSet[i].id == header.selected) { + document.write('<b>' + type + '<\/b>'); + } else { + document.write('<a href="../' + + result.recordSet[i].id + + '/index.html" target="_top">' + + type + '<\/a>'); + } + document.write('<\/font><\/td>'); + if (result.recordSet[i].id == header.selected) { + document.write('<td><img src="/tks/agent/graphics/lgRightTab.gif" width="16" height="21" alt=""><\/td>'); + } else { + document.write('<td><img src="/tks/agent/graphics/dgRightTab.gif" width="16" height="21" alt=""><\/td>'); + } + } +</SCRIPT> + </tr> + </table> + </td> + </tr> +</table> +</body> +</html> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/helpfun.js b/dogtag/tks-ui/shared/webapps/tks/agent/helpfun.js new file mode 100644 index 000000000..f9580279a --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/helpfun.js @@ -0,0 +1,36 @@ +// --- BEGIN COPYRIGHT BLOCK --- +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; version 2 of the License. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// Copyright (C) 2007 Red Hat, Inc. +// All rights reserved. +// --- END COPYRIGHT BLOCK --- + + +function help(helptopic) { + + var HelpWin=window.open("","MyWin", "toolbar=no,directories=no,menubar=no,status=no,scrollbars=yes,resizable=yes,width=500,height=500"); + + HelpWin.location = helptopic; + HelpWin.focus(); + +} + +function helpstatus(helpline) { + + window.status = helpline; + + return true; + +} + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/index.html b/dogtag/tks-ui/shared/webapps/tks/agent/index.html new file mode 100644 index 000000000..30662d47a --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/index.html @@ -0,0 +1,23 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<html> +<script lang="javascript"> + // redirect to 'ROOT' + window.location = "/"; +</script> +</html> diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/index.template b/dogtag/tks-ui/shared/webapps/tks/agent/index.template new file mode 100644 index 000000000..588712364 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/index.template @@ -0,0 +1,140 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<head> +<CMS_TEMPLATE> +<title>TKS Agent</title> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +</head> + +<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366"> +<table border="0" width="100%" cellspacing="0" cellpadding="6"> + <tr bgcolor="#000080"> + <td> + <table border="0" cellspacing="12" cellpadding="0"> + <tr> + <td><img src="/tks/agent/graphics/logo_header.gif"></td> + <td> </td> + <td><font size="+1" face="PrimaSans BT, Verdana, sans-serif" color="white"><b>Dogtag<sup><font color="#999999" size="-2">®</font></sup> Agent Services</b></font></td> + </tr> + </table> + </td> + </tr> + <tr valign="TOP"> + <td> </td> + <td> + <table border="0" cellspacing="0" cellpadding="0"> + <tr valign="TOP"> + <td> </td> + <td> </td> + </tr> +<SCRIPT type="text/javascript"> +function displayError() +{ + document.write("<center><h2><b>" + + "Problem Processing Your Request" + + "</b></h2></center><p>" + + "The service encountered a problem " + + "when processing your request. This problem may " + + "indicate a flaw in the form used to submit your " + + "request or the values that were entered into the form." + + "The following message supplies more information " + + "about the error that occurred.<p>"); + document.write("<blockquote><b><pre>"); + if (result.header.errorDetails != null) { + document.write(result.header.errorDetails); + } else { + document.write("Unable to provide details. " + + "Contact Administrator."); + } + document.write("</pre></b></blockquote>"); + if (result.header.errorDescription != null) { + document.write('<p>Additional Information:<p>'); + document.write('<blockquote><b>'); + document.write(result.header.errorDescription); + document.write('</b></blockquote>'); + } + document.write("<p>"); + document.write("Please consult your local administrator for " + + "further assistance."); + document.write("The certificate server's log may provide " + + "further information."); +} + +if (result.header.errorDetails != null) { + displayError(); +} else { + var displayServices = 'true'; + for (var i = 0; i < result.recordSet.length; ++i) { + document.write('<tr valign="TOP">'); + document.write('<td>'); + document.write('<img src="/graphics/goto-tall.gif" width="10" height="15"> </td>'); + document.write('<td>'); + document.write('<font face="PrimaSans BT, Verdana, sans-serif">'); + document.write('<a href="'); + document.write(result.recordSet[i].id + '/index.html'); + if (result.recordSet[i].type == "RegistrationAuthority") { + document.write('">Registration Manager Agent Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + document.write('The operations available through this menu are used to process certificate requests, revoke certificates, and update information in the directory server.'); + } else if (result.recordSet[i].type == "CertificateAuthority") { + document.write('">Certificate Manager Agent Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + document.write('The operations available through this menu are used to process certificate requests, revoke certificates, and update information in the directory server.'); + } else if (result.recordSet[i].type == "OCSPAuthority") { + displayServices = 'false'; + document.write('">Online Certificate Status Manager Agent Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + document.write('The operations available through this menu are used to check certificate status.'); + } else if (result.recordSet[i].type == "KeyRecoveryAuthority") { + displayServices = 'false'; + document.write('">Data Recovery Manager Agent Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + document.write('The operations available through this menu are used to process key requests, and recover keys.'); + } else { + document.write('">Internal Error</a></font>'); + } + document.write('</font></td></tr>'); + } +} +document.write('<tr valign="TOP">'); +document.write('<td> </td>'); +document.write('<td> </td>'); +document.write('</tr>'); +if (displayServices== 'true') +{ + document.write('<tr valign="TOP">'); + document.write('<TD><IMG src="/graphics/goto-tall.gif" width="10" height="15"></TD>'); + document.write('<TD><FONT face="PrimaSans BT, Verdana, sans-serif">'); + document.write('<A href="ports">Services Summary</A></FONT></TD>'); + document.write('</tr>'); +} +document.write('<TR valign="TOP">'); +document.write('<TD> </TD>'); +document.write('<TD> </TD>'); +document.write('</tr>'); +document.write('</table>'); +document.write('</td>'); +document.write('<td> </td>'); +document.write('</tr>'); +</SCRIPT> + +</table> +</body> +</html> diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/ports.template b/dogtag/tks-ui/shared/webapps/tks/agent/ports.template new file mode 100644 index 000000000..e1f1ee73e --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/ports.template @@ -0,0 +1,121 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<head> +<CMS_TEMPLATE> +<title>TKS Agent Ports</title> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +</head> + +<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366"> +<table border="0" width="100%" cellspacing="0" cellpadding="6"> + <tr bgcolor="#000080"> + <td> + <table border="0" cellspacing="12" cellpadding="0"> + <tr> + <td><img src="/tks/agent/graphics/logo_header.gif"></td> + <td> </td> + <td><font size="+1" face="PrimaSans BT, Verdana, sans-serif" color="white"><b>Dogtag<sup><font color="#999999" size="-2">®</font></sup> Services Summary</b></font></td> + </tr> + </table> + </td> + </tr> + <tr valign="TOP"> + <td> </td> + <td> + <table border="0" cellspacing="0" cellpadding="0"> + <tr valign="TOP"> + <td> </td> + <td> </td> + </tr> +<SCRIPT type="text/javascript"> +function displayError() +{ + document.write("<center><h2><b>" + + "Problem Processing Your Request" + + "</b></h2></center><p>" + + "The service encountered a problem " + + "when processing your request. This problem may " + + "indicate a flaw in the form used to submit your " + + "request or the values that were entered into the form." + + "The following message supplies more information " + + "about the error that occurred.<p>"); + document.write("<blockquote><b><pre>"); + if (result.header.errorDetails != null) { + document.write(result.header.errorDetails); + } else { + document.write("Unable to provide details. " + + "Contact Administrator."); + } + document.write("</pre></b></blockquote>"); + if (result.header.errorDescription != null) { + document.write('<p>Additional Information:<p>'); + document.write('<blockquote><b>'); + document.write(result.header.errorDescription); + document.write('</b></blockquote>'); + } + document.write("<p>"); + document.write("Please consult your local administrator for " + + "further assistance."); + document.write("The certificate server's log may provide " + + "further information."); +} + +if (result.header.errorDetails != null) { + displayError(); +} else { + for (var i = 0; i < result.recordSet.length; ++i) { + if (result.recordSet[i].port == -1) + continue; + document.write('<tr valign="TOP">'); + document.write('<td>'); + document.write('<img src="/tks/agent/graphics/goto-tall.gif" width="10" height="15"> </td>'); + document.write('<td>'); + document.write('<font face="PrimaSans BT, Verdana, sans-serif">'); + document.write('<a href="'); + document.write(result.recordSet[i].prefix + "://" + + result.header.hostname + ":" + + result.recordSet[i].port); + if (result.recordSet[i].type == "eeGateway.http.port") { + document.write('">End Users Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + } else if (result.recordSet[i].type == "eeGateway.https.port") { + document.write('">SSL End Users Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + } else if (result.recordSet[i].type == "agentGateway.https.port") { + document.write('">Agent Services</a></font>'); + document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>'); + } else { + document.write('">Internal Error</a></font>'); + } + document.write('</font></td></tr>'); + } +} +</SCRIPT> + <tr valign="TOP"> + <td> </td> + <td> </td> + </tr> + </table> + </td> + <td> </td> + </tr> +</table> +</body> +</html> diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/tks/getStats.template b/dogtag/tks-ui/shared/webapps/tks/agent/tks/getStats.template new file mode 100644 index 000000000..a08a6fe60 --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/tks/getStats.template @@ -0,0 +1,141 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<head> + <title>Display CRL</title> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> +<SCRIPT LANGUAGE="JavaScript"></SCRIPT> +<SCRIPT LANGUAGE="JavaScript" SRC="../helpfun.js"></SCRIPT> +<SCRIPT LANGUAGE="JavaScript"> +<!-- +if (navigator.appName == "Microsoft Internet Explorer") { + document.writeln('<META HTTP-EQUIV="Pragma" CONTENT="no-cache">'); +} +//--> +</SCRIPT> +</head> + +<CMS_TEMPLATE> + +<body bgcolor="#FFFFFF" link="#6666CC" vlink="#6666CC" alink="#333399"> +<font face="PrimaSans BT, Verdana, sans-serif" size="+1"> +Statistics +</font><br> +<table border="0" cellspacing="0" cellpadding="0" background="/graphics/hr.gif" width="100%"> + <tr> + <td> </td> + </tr> +</table> +<br> + +<SCRIPT LANGUAGE="JavaScript"> +<!-- + document.writeln('<table border="0" cellspacing="0" cellpadding="0" width="100%">'); + document.writeln('<tr align="left" bgcolor="#e5e5e5"><td align="left">'); + document.writeln('<font face="PrimaSans BT, Verdana, sans-serif" size="-1">'); + document.writeln('Detailed Information (Start Time <b>' + header.startTime + '</b>, Current Time: <b>' + header.curTime + '</b>)</font></td><td align=right><a href="getStats?op=clear">Clear Statistics</a></td></tr></table>'); + + document.writeln('<table border="0" cellspacing="2" cellpadding="2" width="100%">'); + document.writeln('<tr>'); + document.writeln('<td width="40%">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Action</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b># of operations</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Time Taken (in msec)</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Min</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Max</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Std Dev</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Avg</b></font></td>'); + document.writeln('<td align="left">'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln('<b>Percentage</b></font></td>'); + document.writeln('</tr>'); + for (var i = 0; i <= recordCount; i++) { + if (result.recordSet[i].name.charAt(0) == '-') { + document.writeln('<tr><td>'); + } else { + document.writeln('<tr bgcolor="#cccccc"><td>'); + } + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln(result.recordSet[i].name + '</font></td>'); + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln(result.recordSet[i].noOfOp+'</font></td>'); + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + document.writeln(result.recordSet[i].timeTaken+'</font></td>'); + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + if (result.recordSet[i].max == -1) { + document.writeln('-</font></td>'); + } else { + document.writeln(result.recordSet[i].min+'</font></td>'); + } + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + if (result.recordSet[i].max == -1) { + document.writeln('-</font></td>'); + } else { + document.writeln(result.recordSet[i].max+'</font></td>'); + } + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + if (result.recordSet[i].stddev == -1) { + document.writeln('-</font></td>'); + } else { + document.writeln(result.recordSet[i].stddev+'</font></td>'); + } + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + if (result.recordSet[i].noOfOp == 0) { + document.writeln('-'); + } else { + document.writeln(Math.round(100*(result.recordSet[i].avg))/100); + } + document.writeln('</font></td>'); + document.writeln('<td>'); + document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">'); + if (result.recordSet[i].noOfOp == 0) { + document.writeln('-'); + } else { + document.writeln(Math.round(100*(result.recordSet[i].percentage))/100 + '%'); + } + document.writeln('</font></td>'); + document.writeln('</tr>'); + } + document.writeln('</table><br>'); + +//--> +</SCRIPT> + +</BODY> +</HTML> + diff --git a/dogtag/tks-ui/shared/webapps/tks/agent/tks/index.html b/dogtag/tks-ui/shared/webapps/tks/agent/tks/index.html new file mode 100644 index 000000000..615afae2c --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/agent/tks/index.html @@ -0,0 +1,31 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<head> + <meta http-equiv="content-type" + content="text/html; charset=ISO-8859-1"> + <link rel="shortcut icon" href="/tks/agent/graphics/favicon.ico" /> + <title>TKS Agent</title> +</head> +<body> +<div style="text-align: center;"><big><big><big><big><span + style="font-weight: bold;">TKS services</span></big></big></big></big><br> +</div> +</body> +</html> diff --git a/dogtag/tks-ui/shared/webapps/tks/index.html b/dogtag/tks-ui/shared/webapps/tks/index.html new file mode 100644 index 000000000..30662d47a --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/index.html @@ -0,0 +1,23 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<html> +<script lang="javascript"> + // redirect to 'ROOT' + window.location = "/"; +</script> +</html> diff --git a/dogtag/tks-ui/shared/webapps/tks/services.template b/dogtag/tks-ui/shared/webapps/tks/services.template new file mode 100644 index 000000000..be72e2cdc --- /dev/null +++ b/dogtag/tks-ui/shared/webapps/tks/services.template @@ -0,0 +1,106 @@ +<!-- --- BEGIN COPYRIGHT BLOCK --- + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Copyright (C) 2007 Red Hat, Inc. + All rights reserved. + --- END COPYRIGHT BLOCK --- --> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<CMS_TEMPLATE> +<title>TKS Services</title> + <link rel="shortcut icon" href="img/favicon.ico" /> + <link rel="stylesheet" href="css/pki-base.css" type="text/css" /> + <META http-equiv=Content-Type content="text/html; charset=UTF-8"> + +</head> +<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366"> + +<div id="header"> + <a href="http://pki.fedoraproject.org/" title="Visit pki.fedoraproject.org for more information about Dogtag products and services"><img src="img/logo_header.gif" alt="Dogtag" id="myLogo" /></a> + <div id="headertitle"> + <a href="/" title="Dogtag Network homepage">Dogtag<sup><font size="-2">®</font></sup> Certificate System</a> + </div> + <div id="account"> + <dl><dt><span></span></dt><dd></dd></dl> + </div> +</div> + +<div id="mainNavOuter"> +<div id="mainNav"> +<div id="mainNavInner"> + +</div><!-- end mainNavInner --> +</div><!-- end mainNav --> +</div><!-- end mainNavOuter --> + + +<div id="bar"> + +<div id="systembar"> +<div id="systembarinner"> + +<div> + - +</div> + + +</div> +</div> + +</div> + + +<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif"> +Certificate System TKS Services Page +</font><br> +<p> +</font> +<p> +<center> +<table border="0" cellspacing="0" cellpadding="0"> +<tr valign="TOP"> +<td> </td> +<td> </td> +</tr> +<script language=javascript> +for (var i=0; i<result.recordSet.length; ++i) { + document.write('<tr valign="TOP">'); + document.write('<td>'); + document.write('<td>'); + document.write('<font size=4 face="PrimaSans BT, Verdana, sans-serif">'); + document.write('<li><a href="'); + document.write(result.recordSet[i].prefix + "://" + + result.recordSet[i].host + ":" + result.recordSet[i].port + "/"+ + result.recordSet[i].uri); + if (result.recordSet[i].type == "admin") { + document.write('">Admin Services</a></font>'); + } else if (result.recordSet[i].type == "agent") { + document.write('">Agent Services</a></font>'); + } else if (result.recordSet[i].type == "ee") { + document.write('">SSL End Users Services</a></font>'); + } + + document.write('</font></td></tr>'); +} +</script> +<tr valign="TOP"> +<td> </td> +<td> </td> +</tr> +</table> +</center> +<div id="footer"> +</div> +</body> +</html> |