⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 leadcapturesetup.jsp

📁 国外的一套开源CRM
💻 JSP
字号:
<%@ page import="org.ofbiz.entity.*" %>
<%@ page import="org.ofbiz.entity.model.*" %>
<%@ page import="java.lang.reflect.Method" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="org.ofbiz.entity.util.SequenceUtil" %>
<%@ page import="com.sourcetap.sfa.replication.*" %>
<%@ page import="com.sourcetap.sfa.ui.*"%>
<%@ page import="com.sourcetap.sfa.event.*"%>
<%@ page import="com.sourcetap.sfa.util.*" %>
<%@ page import="java.net.*" %>

<%@ page import="javax.servlet.ServletException" %>
<%@ page import="javax.servlet.http.HttpServletRequest" %>
<%@ page import="javax.servlet.http.HttpServletResponse" %>
<%@ page import="javax.servlet.http.HttpServlet" %>


<%@ include file="/includes/header.jsp" %>
<jsp:useBean id="leadEventProcessor" class="com.sourcetap.sfa.lead.LeadEventProcessor" scope="application" />
<jsp:useBean id="importEventProcessor" class="com.sourcetap.sfa.event.GenericImportEventProcessor" scope="application" />

<%
  String screen = "LEAD";
  String screenSection = "LeadHeader";
  String entityName = "Lead";
  CsvConverter csvConverter = null;
	String action = "start"; // default action

	if ( request.getParameter("action") != null )
	{
		action = request.getParameter("action");
	}

    try{

		if(action.equals("start")){
		
			ModelEntity entity = delegator.getModelEntity(entityName);

	 		UIWebScreenSection uiWebScreenSection = importEventProcessor.getUiWebScreenSection(userInfo, screen, screenSection, delegator, uiCache); 				
			List fields = uiWebScreenSection.getDisplayFields(uiCache);
			
			int numFields = fields.size();			
			
%>
			<table width="100%" class="freeFormSectionDisplayTable"><tr><td valign="top">
			<tr><td><center><b>Choose Fields to include in Form.</b></center></td></tr>
			<tr><td>
			      <!-- title table -->
					  <center><table class="freeFormSectionDisplayTable" cellspacing="0" cellpadding="2" id='queryListTable'>
					  <form method="post" action="/sfa/control/leadCaptureSetup">
						   <input type=hidden name=action value="generate">
						   <input type="hidden" name="numFields" value="<%=numFields%>">
							<input type=hidden id=queryListMaxRows name=queryListMaxRows value=4>
 						<tr><td class=freeFormSectionLabel><center>Field<center></td>
						    <td class=freeFormSectionLabel><center>Label</center></td>
						</tr>
<%			

			Iterator fieldIter = fields.iterator();
			StringBuffer fieldNameOptions = new StringBuffer(200);
			
			while (fieldIter.hasNext())
			{
			
			     UIFieldInfo fieldInfo = (UIFieldInfo)fieldIter.next();
				//     if ( fieldInfo.getIsVisible() && !fieldInfo.getIsReadOnly() )

	  	    	String fieldName = UIWebUtility.getHtmlName(screenSection, fieldInfo, 0);
     			String displayName = fieldInfo.getDisplayLabel();
							
				if ( fieldName.equals("lastUpdatedStamp") || fieldName.equals("lastUpdatedTxStamp") ||
				     fieldName.equals("createdStamp") || fieldName.equals("createdTxStamp") )
				     continue;

				String htmlName = fieldName;
				String displayObjectId = fieldInfo.getDisplayObjectId();
				String displayTypeId = "TEXT"; //fieldInfo.getDisplayTypeId();
				String attributeId = fieldInfo.getAttributeId();
				String displayLabel = fieldInfo.getDisplayLabel();
				String optValue = htmlName + ";" + attributeId + ";" + displayTypeId + ";" + displayObjectId + ";" + displayLabel;
				fieldNameOptions.append("<option value='" + optValue + "'>" + displayLabel + "</option>");	
			}
			
			for ( int i=1; i < 5; i++)
			{
				out.write("<tr id=queryListRow" + i + "><td><select name=queryListField" + i + ">" +  fieldNameOptions.toString() + "</select></td>\n");
				out.write("	<td><input name=queryListLabel" + i + " size=30></td>\n");
				out.write("	<td><img src=/sfaimages/remove.gif alt=Del onClick=delConditionRow(" + i + ")>\n");
				out.write("	    <img src=/sfaimages/add.gif alt=Add onClick=addConditionRow(" + i + ")></td>\n");
				out.write("</tr>");		
			}

%>
				</table></center>
				</td></tr>
				<tr><td><center>
				<table><tr><td>URL to Redirect to on Success:</td><td><input name="onSuccessURL" size=80></td></tr>
				       <tr><td>URL to Redirect to on Error:</td><td><input name="onErrorURL" size=80></td></tr>	
				</table>			
				<tr><td><center><input type=submit value="Generate HTML"></center></td></tr>
				</form>
			</table>
			
			<script type='text/javascript'>
			function addConditionRow(i) {
				var tab1=document.getElementById('queryListTable')
				if ( tab1 ) {
					var numRows = tab1.rows.length
					var maxRows = 30
					if ( numRows > maxRows )
						alert("Can't have more than 10 fields");
					else {
						var x = tab1.insertRow(numRows)
						var maxRows = document.getElementById('queryListMaxRows')
						var newRow = maxRows.value -  -1
						maxRows.value = newRow
						x.id = "queryListRow" + newRow
						var c1=x.insertCell(0)
						var c2=x.insertCell(1)
						var c3=x.insertCell(2)
						c1.innerHTML="<select name=queryListField" + newRow + "><%=fieldNameOptions.toString()%></select>"
						c2.innerHTML="<input name=queryListLabel" + newRow + " size=30>"
						c3.innerHTML="<img src=/sfaimages/remove.gif alt=Del onClick=delConditionRow(" + newRow + ")>" + " <img src=/sfaimages/add.gif alt=Add onClick=addConditionRow(" + newRow + ")>"
					}
					fixSize()
				}
			}
			function delConditionRow(i)
			{
				var row1 = document.getElementById('queryListRow' + i)
				var tab = document.getElementById('queryListTable')
				var rows = tab.rows
				if ( rows.length == 2 ) {
					event.returnValue = false
					return;
				}
				for ( i=0; i < rows.length; i++ ) {
					row = rows[i];
					if ( row.id == row1.id) {
						tab.deleteRow(i);
						break;
					}
				}
				fixSize()
			}
			</script>
			
<%

		} else if(action.equals("generate")) {

			StringBuffer formHTML = new StringBuffer(1000);
			String successURL = UtilFormatOut.checkNull(request.getParameter("onSuccessURL"));
			String errorURL = UtilFormatOut.checkNull(request.getParameter("onErrorURL"));

			String path = request.getRequestURL().toString();
			int lastSlash = path.lastIndexOf('/');
			path = path.substring(0, lastSlash);
			formHTML.append("<form action=" + path + "/leadCapture target='_self' method=post>\n");
			formHTML.append("<input type=hidden name=action value='save'>\n");
			formHTML.append("<input type=hidden name=cid value='" + userInfo.getAccountId() + "'>\n");
			formHTML.append("<input type=hidden name=uid value='" + userInfo.getPartyId() + "'>\n");
			formHTML.append("<input type=hidden name=onSuccess value='" + successURL + "'>\n");
			formHTML.append("<input type=hidden name=onError value='" + errorURL+ "'>\n");
			formHTML.append("<table>\n");
			      
			String queryListMaxRows = request.getParameter("queryListMaxRows");
			// if queryListMaxRows is set, then we are using advanced query mode
			if ( (queryListMaxRows != null ) && ( queryListMaxRows.length() > 0) )
			{
				int maxRows = Integer.valueOf(queryListMaxRows).intValue();
				for ( int i=1; i <= maxRows; i++ )
				{
					String qlFieldInfo = request.getParameter("queryListField" + i);
					if ( ( qlFieldInfo != null ) && ( qlFieldInfo.length() > 0 ) )
					{
						StringTokenizer tokSemi = new StringTokenizer(qlFieldInfo,";");
						String qlFieldName = "";
						String qlAttributeId = "";
						String qlDisplayObjectId = "";
						String qlDisplayTypeId = "";
						String qlDisplayLabel = "";
						
						if (tokSemi.countTokens() == 5) {
								qlFieldName = tokSemi.nextToken();
								qlAttributeId = tokSemi.nextToken();
								qlDisplayTypeId = tokSemi.nextToken();
								qlDisplayObjectId = tokSemi.nextToken();
								qlDisplayLabel = tokSemi.nextToken();
						}
						else
						{
							qlFieldName = qlFieldInfo;
						}
			
						String qlLabel  = request.getParameter("queryListLabel" + i);
						if ( (qlLabel == null ) || ( qlLabel.length() < 1) )
							qlLabel = qlDisplayLabel;

						formHTML.append("<tr><td>" + qlLabel + "<td><input name='" + qlFieldName + "' size=30></td></tr>\n");			
													
					}
				}
			}
			formHTML.append("<tr><td colspan=2><center><input type=submit value=submit></center></td></tr>\n");
			formHTML.append("</table>\n");		
			formHTML.append("</form>\n");
			
			out.write("<center><br><h3>copy and paste the code below into your web page</h3><p>\n");
			out.write("<textarea rows=20 cols=80>" + formHTML.toString() + "</textarea></center>");
	
	   } else {
	    out.write("csv Null error");
	   }

%>
</table>

  <%
    } catch (Exception e) { e.printStackTrace();
    }
  %>

<%@ include file="/includes/footer.jsp" %>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -