home *** CD-ROM | disk | FTP | other *** search
Wrap
import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.Component; import java.awt.Container; import java.awt.Event; import java.awt.Font; import java.awt.Panel; import java.awt.TextArea; import java.awt.TextField; import java.io.DataInputStream; import java.io.FileInputStream; import java.io.InputStream; import java.net.URL; import java.util.StringTokenizer; import java.util.Vector; public class JDPAddToHtml extends JDPClassLayout { JDPJagg jaggSQL; JDPPopupMessage popuppanel; JDPLayoutMgr targetLayoutMgr; JDPUtils utils; TextField htmlpagename; TextField htmltitle; TextField classname; JDPChoice requireLogin; JDPChoice username; Vector valueusername; JDPChoice runInWebPage; TextField width; TextField height; TextArea htmlText; String wwwroot; String JDPSystem; String JDPDirectory; boolean finishedBuild; int maxWriteChars = 900; String outputText; String inputText; void loadChoices() { this.valueusername = new Vector(); new JDPLoadChoice(super.user, this.jaggSQL, this.username, "DISTINCT username", "password", "JDPUser", "(jdpsystem0 = '" + super.user.JDPSystem + "' " + "OR jdpsystem1 = '" + super.user.JDPSystem + "' " + "OR jdpsystem2 = '" + super.user.JDPSystem + "' " + "OR jdpsystem3 = '" + super.user.JDPSystem + "' " + "OR jdpsystem4 = '" + super.user.JDPSystem + "' " + "OR jdpsystem5 = '" + super.user.JDPSystem + "' " + "OR jdpsystem6 = '" + super.user.JDPSystem + "' " + "OR jdpsystem7 = '" + super.user.JDPSystem + "' " + "OR jdpsystem8 = '" + super.user.JDPSystem + "' " + "OR jdpsystem9 = '" + super.user.JDPSystem + "') ", this.valueusername); this.requireLogin.addItem("No"); this.requireLogin.addItem("Yes"); this.requireLogin.addItem("Automatic"); this.runInWebPage.addItem("No"); this.runInWebPage.addItem("Yes"); } void retrieveHandle() { for(int var1 = 0; var1 < super.user.gParm.size(); ++var1) { if (super.user.gParm.elementAt(var1) instanceof JDPLayoutMgr) { this.targetLayoutMgr = (JDPLayoutMgr)super.user.gParm.elementAt(var1); this.htmlpagename.setText(this.targetLayoutMgr.appName + ".html"); this.htmltitle.setText(this.targetLayoutMgr.appName); this.classname.setText(this.targetLayoutMgr.appName); this.buildOutputText(); return; } } } void buildOutputText() { String var1 = ""; boolean var2 = false; this.outputText = ""; if (this.htmlpagename.getText().indexOf(".htm") < 0) { this.htmlpagename.setText(this.htmlpagename.getText() + ".html"); } StringTokenizer var3 = new StringTokenizer(this.inputText); var1 = var3.nextToken("\r\n"); for(int var8 = var3.countTokens(); var1 != null && var3.hasMoreTokens(); var1 = var3.nextToken()) { if (var1.indexOf("<title") >= 0) { String var10001 = this.outputText; this.outputText = var10001 + "<title>" + this.htmltitle.getText() + "</title>\r\n"; } else if (var1.indexOf("<applet") >= 0) { String var4 = "10"; String var5 = "10"; if (this.runInWebPage.getSelectedItem().equals("Yes")) { var4 = this.width.getText(); var5 = this.height.getText(); } String var9 = this.outputText; this.outputText = var9 + "<applet codebase=\"" + this.wwwroot + "\" "; if (this.runInWebPage.getSelectedItem().equals("Yes") && this.requireLogin.getSelectedItem().equals("No")) { var9 = this.outputText; this.outputText = var9 + "archive=\"JDPSingle.jar\" code=JDPSingle.class "; } else { var9 = this.outputText; this.outputText = var9 + "archive=\"JDPMain.jar\" code=JDesignerPro.class "; } var9 = this.outputText; this.outputText = var9 + "width=" + var4 + " height=" + var5 + ">\r\n"; var9 = this.outputText; this.outputText = var9 + "<param name=\"JDPSystem\" value=\"" + this.JDPSystem + "\">\r\n"; String var6 = this.classname.getText(); if (this.requireLogin.getSelectedItem().equals("No")) { var9 = this.outputText; this.outputText = var9 + "<param name=\"JDPClassName\" value=\"" + var6 + "\">\r\n"; } if (this.runInWebPage.getSelectedItem().equals("Yes") && !this.requireLogin.getSelectedItem().equals("No")) { var9 = this.outputText; this.outputText = var9 + "<param name=\"JDPInWebPage\" value=\"yes\">\r\n"; } if (this.requireLogin.getSelectedItem().equals("Automatic")) { var9 = this.outputText; this.outputText = var9 + "<param name=\"JDPUsername\" value=\"" + this.username.getSelectedItem() + "\">\r\n"; var9 = this.outputText; this.outputText = var9 + "<param name=\"JDPPassword\" value=\"" + (String)this.valueusername.elementAt(this.username.getSelectedIndex()) + "\">\r\n"; } var9 = this.outputText; this.outputText = var9 + "</applet>\r\n"; } else if (var1 != null) { this.outputText = this.outputText + var1 + "\r\n"; } } this.finishedBuild = true; this.htmlText.setText(this.outputText); } boolean createPage() { String var1 = this.JDPDirectory + this.htmlpagename.getText().trim(); this.outputText = ""; String var2 = "w+"; String var3 = ""; try { String var4 = this.htmlText.getText(); if (!this.utils.writeToFile(var1, var4, var2)) { super.user.mainmsg.setStatusMsg("Failed to write new document " + var3 + " to server.", 30); return false; } else { if (!JDesignerPro.executable) { var3 = super.user.wwwroot; var3 = var3.substring(0, var3.lastIndexOf("/")); var3 = var3 + "/" + this.htmlpagename.getText().trim(); } else { var3 = var1; } super.user.mainmsg.setStatusMsg("Document " + var3 + " successfully created.", 30); return true; } } catch (Exception var6) { ((Throwable)var6).printStackTrace(); return false; } } boolean checkFields() { String var5 = ""; String var6 = ""; try { var5 = super.user.wwwroot; var5 = var5.substring(0, var5.lastIndexOf("/")); var5 = var5 + "/" + this.htmlpagename.getText(); var6 = this.htmlpagename.getText(); if (!var6.equals("") && !var6.equals(".html") && !var6.equals(".htm")) { InputStream var2; if (!JDesignerPro.executable) { URL var1 = new URL(var5); var2 = var1.openStream(); } else { FileInputStream var4 = new FileInputStream(super.user.JDesignerPro.JDPDirectory + var6); var2 = (InputStream)var4; } new DataInputStream(var2); super.user.mainmsg.setStatusMsg("Html file already exists. Press Create again to replace.", 20); return false; } else { super.user.mainmsg.setStatusMsg("You must first enter a valid html file name.", 10); return false; } } catch (Exception var7) { return true; } } public boolean handleEvent(Event var1) { switch (var1.id) { case 202: if (var1.target instanceof JDPTabSelectPanel) { this.retrieveHandle(); return false; } return false; case 503: case 504: case 505: this.popuppanel.postEvent(var1); return false; case 1001: if (var1.target instanceof Button) { String var2 = (String)var1.arg; if (var2.trim().compareTo("Create") != 0) { return true; } else { if (super.user.mainmsg.getStatusMsg().equals("Html file already exists. Press Create again to replace.") || this.checkFields()) { this.createPage(); } return true; } } else if (var1.target instanceof JDPChoice) { if (this.requireLogin.getSelectedItem().equals("No")) { this.username.disable(); this.runInWebPage.select("Yes"); this.runInWebPage.disable(); } else if (this.requireLogin.getSelectedItem().equals("Yes")) { this.username.disable(); this.runInWebPage.enable(); } else { this.username.enable(); this.runInWebPage.enable(); } if (this.runInWebPage.getSelectedItem().equals("Yes")) { this.width.enable(); this.height.enable(); } else { this.width.disable(); this.height.disable(); } this.buildOutputText(); return true; } else if (var1.target instanceof TextField) { this.buildOutputText(); return true; } else { return false; } case 1005: if (var1.target instanceof TextField) { this.buildOutputText(); return true; } case 401: if (var1.key == 9) { if (var1.modifiers != 1) { if (var1.target.equals(this.htmlpagename)) { super.user.u.cursor(this.htmltitle); return true; } if (var1.target.equals(this.htmltitle)) { super.user.u.cursor(this.classname); return true; } if (var1.target.equals(this.classname)) { super.user.u.cursor(this.requireLogin); return true; } if (var1.target.equals(this.requireLogin)) { super.user.u.cursor(this.username); return true; } if (var1.target.equals(this.username)) { super.user.u.cursor(this.runInWebPage); return true; } if (var1.target.equals(this.runInWebPage)) { super.user.u.cursor(this.width); return true; } if (var1.target.equals(this.width)) { super.user.u.cursor(this.height); return true; } if (var1.target.equals(this.height)) { super.user.u.cursor(this.htmlText); return true; } if (var1.target.equals(this.htmlText)) { super.user.u.cursor(this.htmlpagename); return true; } } else { if (var1.target.equals(this.htmltitle)) { super.user.u.cursor(this.htmlpagename); return true; } if (var1.target.equals(this.classname)) { super.user.u.cursor(this.htmltitle); return true; } if (var1.target.equals(this.requireLogin)) { super.user.u.cursor(this.classname); return true; } if (var1.target.equals(this.username)) { super.user.u.cursor(this.requireLogin); return true; } if (var1.target.equals(this.runInWebPage)) { super.user.u.cursor(this.username); return true; } if (var1.target.equals(this.width)) { super.user.u.cursor(this.runInWebPage); return true; } if (var1.target.equals(this.height)) { super.user.u.cursor(this.width); return true; } if (var1.target.equals(this.htmlText)) { super.user.u.cursor(this.height); return true; } if (var1.target.equals(this.htmlpagename)) { super.user.u.cursor(this.htmlText); return true; } } return true; } return false; default: return false; } } public void InitClass(JDPUser var1, Panel var2, String var3) { super.user = var1; this.jaggSQL = new JDPJagg(var1.jaggPath); this.jaggSQL.setNULL("space"); this.jaggSQL.setMRW("100"); this.jaggSQL.loadSettings(var1); if (JDPJagg.useJaggServer) { this.maxWriteChars = 100000; } if (this.utils == null) { this.utils = var1.u; } this.wwwroot = var1.JDesignerPro.wwwroot; this.JDPSystem = var1.JDPSystem; this.JDPDirectory = var1.JDesignerPro.JDPDirectory; ((Container)this).setLayout(new BorderLayout()); this.popuppanel = new JDPPopupMessage(var1, this); ((Container)this).add(this.popuppanel); Panel var4 = new Panel(); ((Container)var4).setLayout(new BorderLayout()); Panel var5 = new Panel(); ((Container)var5).setLayout(new BorderLayout()); Panel var6 = new Panel(); ((Container)var6).setLayout(new BorderLayout()); JDPScrollPanel var7 = new JDPScrollPanel(); this.htmlpagename = new TextField("", 20); this.htmltitle = new TextField("", 30); this.classname = new TextField("", 20); this.requireLogin = new JDPChoice(); this.username = new JDPChoice(); this.runInWebPage = new JDPChoice(); this.width = new TextField("600", 6); this.height = new TextField("400", 6); this.htmlText = new TextArea(""); this.htmlText.setFont(new Font("Courier", 0, 12)); this.loadChoices(); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Html Page Name:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Html Title Text:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Class to load:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Login to JDP required:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Username for auto login:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Run applet inside web page:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Applet Width:", Color.black)); ((Container)var7).add("Left", new JDPWrapLabel(var1, "Applet Height:", Color.black)); ((Container)var7).add("Right", this.htmlpagename); ((Container)var7).add("Right", this.htmltitle); ((Container)var7).add("Right", this.classname); ((Container)var7).add("Right", this.requireLogin); ((Container)var7).add("Right", this.username); ((Container)var7).add("Right", this.runInWebPage); ((Container)var7).add("Right", this.width); ((Container)var7).add("Right", this.height); ((Container)var6).add("North", var7); ((Container)var6).add("Center", this.htmlText); this.requireLogin.select("No"); this.username.disable(); this.runInWebPage.select("Yes"); this.popuppanel.addComponent(this.htmlpagename, "Enter the html page name", "Name of the html page that will be created to load your new applet"); this.popuppanel.addComponent(this.requireLogin, "Login required", "Choose No for a simple applet, Yes to utilize JDP user access control or Auto to skip login window"); this.popuppanel.addComponent(this.username, "Auto login username", "Choose the JDP username for an automatic log in"); this.popuppanel.addComponent(this.runInWebPage, "Applet runs in web page", "Login and auto login applets may run as a frame. No login must run in an html page."); this.popuppanel.addComponent(this.width, "Applet width", "For applets running in a web page specify the applet width"); this.popuppanel.addComponent(this.height, "Applet height", "For applets running in a web page specify the applet height"); this.popuppanel.addComponent(this.htmlText, "Generated Html", "Modify the generated html as necessary before creating the file"); String[] var8 = new String[]{"Create"}; int[] var9 = new int[]{0}; JDPButtons var10 = new JDPButtons(var1, var8, var9, JDPButtons.HORIZONTAL); ((Container)var6).add("South", var10); this.popuppanel.addComponent(var10.button[0], "Create Html Doc", "Create new html document reading for loading"); ((Container)var4).add("Center", var6); ((Container)this).add("Center", new JDPChiselFramePanel(var1, "Create an html page for an Applet", var4, "North")); ((Component)var2).paintAll(((Component)var2).getGraphics()); this.inputText = var1.u.readFromFile(var1.JDesignerPro.JDPDirectory + "Applications/Layouts/htmllayout.html"); this.retrieveHandle(); var1.gParm.addElement(this); } }