<%@LANGUAGE="VBSCRIPT"%> <!--#include file="Connections/conForum.asp" --> <% ' *** Edit Operations: declare variables MM_editAction = CStr(Request("URL")) If (Request.QueryString <> "") Then MM_editAction = MM_editAction & "?" & Request.QueryString End If ' boolean to abort record edit MM_abortEdit = false ' query string to execute MM_editQuery = "" %> <% ' *** Insert Record: set variables If (CStr(Request("MM_insert")) <> "") Then MM_editConnection = MM_conForum_STRING MM_editTable = "forum1" MM_editRedirectUrl = "thankyou.asp" MM_fieldsStr = "author|value|email|value|subject|value|message|value" MM_columnsStr = "author|',none,''|email|',none,''|subject|',none,''|message|',none,''" ' create the MM_fields and MM_columns arrays MM_fields = Split(MM_fieldsStr, "|") MM_columns = Split(MM_columnsStr, "|") ' set the form values For i = LBound(MM_fields) To UBound(MM_fields) Step 2 MM_fields(i+1) = CStr(Request.Form(MM_fields(i))) Next ' append the query string to the redirect URL If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString Else MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString End If End If End If %> <% ' *** Insert Record: construct a sql insert statement and execute it If (CStr(Request("MM_insert")) <> "") Then ' create the sql insert statement MM_tableValues = "" MM_dbValues = "" For i = LBound(MM_fields) To UBound(MM_fields) Step 2 FormVal = MM_fields(i+1) MM_typeArray = Split(MM_columns(i+1),",") Delim = MM_typeArray(0) If (Delim = "none") Then Delim = "" AltVal = MM_typeArray(1) If (AltVal = "none") Then AltVal = "" EmptyVal = MM_typeArray(2) If (EmptyVal = "none") Then EmptyVal = "" If (FormVal = "") Then FormVal = EmptyVal Else If (AltVal <> "") Then FormVal = AltVal ElseIf (Delim = "'") Then ' escape quotes FormVal = "'" & Replace(FormVal,"'","''") & "'" Else FormVal = Delim + FormVal + Delim End If End If If (i <> LBound(MM_fields)) Then MM_tableValues = MM_tableValues & "," MM_dbValues = MM_dbValues & "," End if MM_tableValues = MM_tableValues & MM_columns(i) MM_dbValues = MM_dbValues & FormVal Next MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")" If (Not MM_abortEdit) Then ' execute the insert Set MM_editCmd = Server.CreateObject("ADODB.Command") MM_editCmd.ActiveConnection = MM_editConnection MM_editCmd.CommandText = MM_editQuery MM_editCmd.Execute MM_editCmd.ActiveConnection.Close If (MM_editRedirectUrl <> "") Then Response.Redirect(MM_editRedirectUrl) End If End If End If %> <% Dim rsMessages__MMColParam rsMessages__MMColParam = "0" if (Request.QueryString("0") <> "") then rsMessages__MMColParam = Request.QueryString("0") %> <% set rsMessages = Server.CreateObject("ADODB.Recordset") rsMessages.ActiveConnection = MM_conForum_STRING rsMessages.Source = "SELECT * FROM forum2 WHERE parentID = " + Replace(rsMessages__MMColParam, "'", "''") + " ORDER BY ID DESC" rsMessages.CursorType = 0 rsMessages.CursorLocation = 2 rsMessages.LockType = 3 rsMessages.Open() rsMessages_numRows = 0 %> <% Dim Repeat1__numRows Repeat1__numRows = 10 Dim Repeat1__index Repeat1__index = 0 rsMessages_numRows = rsMessages_numRows + Repeat1__numRows %> <% ' *** Recordset Stats, Move To Record, and Go To Record: declare stats variables ' set the record count rsMessages_total = rsMessages.RecordCount ' set the number of rows displayed on this page If (rsMessages_numRows < 0) Then rsMessages_numRows = rsMessages_total Elseif (rsMessages_numRows = 0) Then rsMessages_numRows = 1 End If ' set the first and last displayed record rsMessages_first = 1 rsMessages_last = rsMessages_first + rsMessages_numRows - 1 ' if we have the correct record count, check the other stats If (rsMessages_total <> -1) Then If (rsMessages_first > rsMessages_total) Then rsMessages_first = rsMessages_total If (rsMessages_last > rsMessages_total) Then rsMessages_last = rsMessages_total If (rsMessages_numRows > rsMessages_total) Then rsMessages_numRows = rsMessages_total End If %> <% ' *** Recordset Stats: if we don't know the record count, manually count them If (rsMessages_total = -1) Then ' count the total records by iterating through the recordset rsMessages_total=0 While (Not rsMessages.EOF) rsMessages_total = rsMessages_total + 1 rsMessages.MoveNext Wend ' reset the cursor to the beginning If (rsMessages.CursorType > 0) Then rsMessages.MoveFirst Else rsMessages.Requery End If ' set the number of rows displayed on this page If (rsMessages_numRows < 0 Or rsMessages_numRows > rsMessages_total) Then rsMessages_numRows = rsMessages_total End If ' set the first and last displayed record rsMessages_first = 1 rsMessages_last = rsMessages_first + rsMessages_numRows - 1 If (rsMessages_first > rsMessages_total) Then rsMessages_first = rsMessages_total If (rsMessages_last > rsMessages_total) Then rsMessages_last = rsMessages_total End If %> <% ' *** Move To Record and Go To Record: declare variables Set MM_rs = rsMessages MM_rsCount = rsMessages_total MM_size = rsMessages_numRows MM_uniqueCol = "" MM_paramName = "" MM_offset = 0 MM_atTotal = false MM_paramIsDefined = false If (MM_paramName <> "") Then MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "") End If %> <% ' *** Move To Record: handle 'index' or 'offset' parameter if (Not MM_paramIsDefined And MM_rsCount <> 0) then ' use index parameter if defined, otherwise use offset parameter r = Request.QueryString("index") If r = "" Then r = Request.QueryString("offset") If r <> "" Then MM_offset = Int(r) ' if we have a record count, check if we are past the end of the recordset If (MM_rsCount <> -1) Then If (MM_offset >= MM_rsCount Or MM_offset = -1) Then ' past end or move last If ((MM_rsCount Mod MM_size) > 0) Then ' last page not a full repeat region MM_offset = MM_rsCount - (MM_rsCount Mod MM_size) Else MM_offset = MM_rsCount - MM_size End If End If End If ' move the cursor to the selected record i = 0 While ((Not MM_rs.EOF) And (i < MM_offset Or MM_offset = -1)) MM_rs.MoveNext i = i + 1 Wend If (MM_rs.EOF) Then MM_offset = i ' set MM_offset to the last possible record End If %> <% ' *** Move To Record: if we dont know the record count, check the display range If (MM_rsCount = -1) Then ' walk to the end of the display range for this page i = MM_offset While (Not MM_rs.EOF And (MM_size < 0 Or i < MM_offset + MM_size)) MM_rs.MoveNext i = i + 1 Wend ' if we walked off the end of the recordset, set MM_rsCount and MM_size If (MM_rs.EOF) Then MM_rsCount = i If (MM_size < 0 Or MM_size > MM_rsCount) Then MM_size = MM_rsCount End If ' if we walked off the end, set the offset based on page size If (MM_rs.EOF And Not MM_paramIsDefined) Then If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then If ((MM_rsCount Mod MM_size) > 0) Then MM_offset = MM_rsCount - (MM_rsCount Mod MM_size) Else MM_offset = MM_rsCount - MM_size End If End If End If ' reset the cursor to the beginning If (MM_rs.CursorType > 0) Then MM_rs.MoveFirst Else MM_rs.Requery End If ' move the cursor to the selected record i = 0 While (Not MM_rs.EOF And i < MM_offset) MM_rs.MoveNext i = i + 1 Wend End If %> <% ' *** Move To Record: update recordset stats ' set the first and last displayed record rsMessages_first = MM_offset + 1 rsMessages_last = MM_offset + MM_size If (MM_rsCount <> -1) Then If (rsMessages_first > MM_rsCount) Then rsMessages_first = MM_rsCount If (rsMessages_last > MM_rsCount) Then rsMessages_last = MM_rsCount End If ' set the boolean used by hide region to check if we are on the last record MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount) %> <% ' *** Go To Record and Move To Record: create strings for maintaining URL and Form parameters ' create the list of parameters which should not be maintained MM_removeList = "&index=" If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" & MM_paramName & "=" MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone="" ' add the URL parameters to the MM_keepURL string For Each Item In Request.QueryString NextItem = "&" & Item & "=" If (InStr(1,MM_removeList,NextItem,1) = 0) Then MM_keepURL = MM_keepURL & NextItem & Server.URLencode(Request.QueryString(Item)) End If Next ' add the Form variables to the MM_keepForm string For Each Item In Request.Form NextItem = "&" & Item & "=" If (InStr(1,MM_removeList,NextItem,1) = 0) Then MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form(Item)) End If Next ' create the Form + URL string and remove the intial '&' from each of the strings MM_keepBoth = MM_keepURL & MM_keepForm if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len(MM_keepBoth) - 1) if (MM_keepURL <> "") Then MM_keepURL = Right(MM_keepURL, Len(MM_keepURL) - 1) if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len(MM_keepForm) - 1) ' a utility function used for adding additional parameters to these strings Function MM_joinChar(firstItem) If (firstItem <> "") Then MM_joinChar = "&" Else MM_joinChar = "" End If End Function %> <% ' *** Move To Record: set the strings for the first, last, next, and previous links MM_keepMove = MM_keepBoth MM_moveParam = "index" ' if the page has a repeated region, remove 'offset' from the maintained parameters If (MM_size > 0) Then MM_moveParam = "offset" If (MM_keepMove <> "") Then params = Split(MM_keepMove, "&") MM_keepMove = "" For i = 0 To UBound(params) nextItem = Left(params(i), InStr(params(i),"=") - 1) If (StrComp(nextItem,MM_moveParam,1) <> 0) Then MM_keepMove = MM_keepMove & "&" & params(i) End If Next If (MM_keepMove <> "") Then MM_keepMove = Right(MM_keepMove, Len(MM_keepMove) - 1) End If End If End If ' set the strings for the move to links If (MM_keepMove <> "") Then MM_keepMove = MM_keepMove & "&" urlStr = Request.ServerVariables("URL") & "?" & MM_keepMove & MM_moveParam & "=" MM_moveFirst = urlStr & "0" MM_moveLast = urlStr & "-1" MM_moveNext = urlStr & Cstr(MM_offset + MM_size) prev = MM_offset - MM_size If (prev < 0) Then prev = 0 MM_movePrev = urlStr & Cstr(prev) %> <SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT> function DoDateTime(str, nNamedFormat, nLCID) dim strRet dim nOldLCID strRet = str If (nLCID > -1) Then oldLCID = Session.LCID End If On Error Resume Next If (nLCID > -1) Then Session.LCID = nLCID End If If ((nLCID < 0) Or (Session.LCID = nLCID)) Then strRet = FormatDateTime(str, nNamedFormat) End If If (nLCID > -1) Then Session.LCID = oldLCID End If DoDateTime = strRet End Function </SCRIPT> <html> <head> <title>Forum - leave your message here</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="KEYWORDS" content="jewish, news, bukharian, bukhara, buharian, bukharianjews, bucharianjews, tajikistan, israel, judaism, holocaust, hostory, biography, education, jewish organiztions, community, center, press, kosher, restaurant, bible, student, elderly, aging, politics, middle east, human rights, horah, research, glossary, maps, congress, house, senate, travel, medicine, environment, lebanon, librabry, faith, muhammmad, uzbekistan, turkestan, samarkand, rabbi, music, classified, links, search"> <meta name="DESCRIPTION" content="Forum Topics"> <meta name="ROBOTS" content="INDEX,FOLLOW"> <meta name="resource-type" content="document"> <meta http-equiv="expires" content="never"> <meta name="author" content="I-Ying Liao"> <meta name="copyright" content="Copyright (c) 2004 by BJewsUSA.com"> <meta name="revisit-after" content="1 days"> <meta name="distribution" content="Global"> <meta name="rating" content="General"> <script language="JavaScript" src="menu.js"></script> <script language="JavaScript" src="js_top_menu.js"></script> <script language="JavaScript" src="../js_home_icon.js"></script> <link href="../CSS_all.css" rel="stylesheet" type="text/css"> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_validateForm() { //v4.0 var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]); if (val) { nm=val.name; if ((val=val.value)!="") { if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' must contain a number.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; } } if (errors) alert('The following error(s) occurred:\n'+errors); document.MM_returnValue = (errors == ''); } //--> </script> </head> <body onLoad="init();goforit();MM_preloadImages('../images/home2.gif')" leftmargin="0" topmargin="0"> <script type='text/javascript'>function Go(){return}</script> <script type='text/javascript' src='js_left_menu.js'></script> <script type='text/javascript' src='menu2.js'></script> <table class="CSStext2" background="../images/hairline_main_bg.gif" width="762" border="0" cellpadding="0" cellspacing="0"> <!--DWLayoutTable--> <tr> <td background="../images/hairline_below_logo.gif" width="104" height="104" align="left" valign="top"><a href="../index.htm"><img src="../images/logo_title_star.jpg" width="104" height="101" border="0"></a> </td> <td background="../images/hairline_below_logo.gif" width="656" height="104" valign="top"><img src="../images/logo_title_sky.jpg" width="656" height="103"></td> <td width="2"></td> </tr> <tr> <td height="1" class="CSStext2"></td> <td class="CSStext2"></td> <td class="CSStext2"></td> </tr> </table> <table class="CSStext2" background="../images/hairline_main_bg.gif" width="762" border="0" cellspacing="0" cellpadding="0"> <!--DWLayoutTable--> <tr> <td class="CSStext2" width="128" height="16" valign="top" bgcolor="D0E8EF"><a href="../index.htm" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image4','','../images/home2.gif',1)"><img src="../images/home.gif" name="Image4" width="100" height="16" border="0"></a></td> <td class="CSStext2" width="634"></td> </tr> </table> <table class="CSStext" background="../images/hairline_main_bg.gif" width="762" border="0" cellpadding="0" cellspacing="0"> <!--DWLayoutTable--> <tr> <td width="9" height="14" bgcolor="#FFFFFF"></td> <td width="119" bgcolor="#FFFFFF"></td> <td width="625" bgcolor="#FFFFFF"></td> <td width="9"></td> </tr> <tr> <td height="38" bgcolor="#FFFFFF"></td> <td valign="top" bgcolor="#FFFFFF"><img src="../headers/header_MAIN.gif" width="28" height="24"><span class="CSSheader">Forum</span></td> <td bgcolor="#FFFFFF"><div align="right"> </div></td> <td></td> </tr> <tr> <td valign="top" bgcolor="#FFFFFF"></td> <td colspan="2" valign="top" bgcolor="#FFFFFF"> <table width="740" border="1" align="center" cellpadding="2" cellspacing="0" bordercolor="#D7E5E4"> <!--DWLayoutTable--> <tr valign="top" class="CSStext"> <td colspan="3"><b> <font color="#000066">Displaying Messages <%=(rsMessages_first)%> to <%=(rsMessages_last)%> of <%=(rsMessages_total)%></font></b></td> </tr> <tr valign="top" class="CSStext"> <td colspan="3"> <table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr class="CSStext"> <td width="532" valign="middle"><font color="#336699">Welcome to BJewsUSA.Com Forum</font></td> <td width="192" valign="top"> <div align="right"> <% If MM_offset <> 0 Then %> <a href="<%=MM_movePrev%>"><<Previouse</a> <% End If ' end MM_offset <> 0 %> <% If Not MM_atTotal Then %> <a href="<%=MM_moveNext%>">Next>></a> <% End If ' end Not MM_atTotal %> </div></td> </tr> </table></td> </tr> <tr valign="top" class="CSStext"> <td width="174" bgcolor="#D7E5E4"><font color="#000066"><b>Author</b></font></td> <td width="484" bgcolor="#D7E5E4"><font color="#000066"><b>Subject</b></font></td> <td width="64" bgcolor="#D7E5E4"> <div align="left"><font color="#000066"><b>Replies</b></font></div></td> </tr> <tr valign="top" class="CSStext"> <td colspan="3"> <% While ((Repeat1__numRows <> 0) AND (NOT rsMessages.EOF)) %> <% If Not rsMessages.EOF Or Not rsMessages.BOF Then %> <MM_REPEATEDREGION NAME="Repeat1" SOURCE="rsMessages"><MM:DECORATION OUTLINE="Repeat" OUTLINEID=3><MM_HIDDENREGION><MM:DECORATION OUTLINE="Show%20If..." OUTLINEID=4> </MM:DECORATION></MM_HIDDENREGION></MM:DECORATION></MM_REPEATEDREGION><MM_REPEATEDREGION NAME="Repeat1" SOURCE="rsMessages"><MM:DECORATION OUTLINE="Repeat" OUTLINEID=3><MM_HIDDENREGION><MM:DECORATION OUTLINE="Show%20If..." OUTLINEID=4> </MM:DECORATION></MM_HIDDENREGION></MM:DECORATION></MM_REPEATEDREGION><MM_REPEATEDREGION NAME="Repeat1" SOURCE="rsMessages"><MM:DECORATION OUTLINE="Repeat" OUTLINEID=3><MM_HIDDENREGION><MM:DECORATION OUTLINE="Show%20If..." OUTLINEID=4> <table width="732" border="0" cellspacing="2" cellpadding="2"> <!--DWLayoutTable--> <tr class="CSStext"> <td width="149" valign="top"><font color="#660000"><%= Server.HTMLEncode((rsMessages.Fields.Item("author").Value)) %></font><br> <%= DoDateTime((rsMessages.Fields.Item("datestamp").Value), 2, -1) %></td> <td width="416" valign="top"><A HREF="replies.asp?<%= MM_keepURL & MM_joinChar(MM_keepURL) & "ID=" & rsMessages.Fields.Item("ID").Value %>"><%= Server.HTMLEncode((rsMessages.Fields.Item("subject").Value)) %></A></td> <td width="56" valign="top"> <div align="center"><%=(rsMessages.Fields.Item("CountOfID").Value)%></div></td> </tr> </table> <% End If ' end Not rsMessages.EOF Or NOT rsMessages.BOF %> <% Repeat1__index=Repeat1__index+1 Repeat1__numRows=Repeat1__numRows-1 rsMessages.MoveNext() Wend %> </mm:decoration></mm:decoration></td> </tr> </table> <br> <br> <br> <% If rsMessages.EOF And rsMessages.BOF Then %> <p>THERE ARE NO MESSAGES ON THIS FORUM YET<a name="post"></a> </p> <% End If ' end rsMessages.EOF And rsMessages.BOF %> <form name="post_mess" method="POST" action="<%=MM_editAction%>"> <div align="center"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td valign="top" bgcolor="#D7E5E4" class="CSStext"> <div align="center"><b><font color="#000066">Post New Message</font></b></div></td> </tr> </table> <br> <table width="70%" border="0" cellspacing="0" cellpadding="2"> <tr valign="top" class="CSStext"> <td width="103"><b>Name</b></td> <td width="349"> <input type="text" name="author" size="50"> </td> </tr> <tr valign="top" class="CSStext"> <td width="103"><b>Email Address </b></td> <td width="349"> <input type="text" name="email" size="50"> </td> </tr> <tr valign="top" class="CSStext"> <td width="103"><b>Subject</b></td> <td width="349"> <input type="text" name="subject" size="50"> </td> </tr> <tr valign="top" class="CSStext"> <td width="103"><b>Message</b></td> <td width="349"> <textarea name="message" cols="39" rows="5"></textarea> </td> </tr> <tr valign="top" class="CSStext"> <td colspan="2"> <div align="center"> <input type="submit" name="Submit" value="Post Message" onClick="MM_validateForm('author','','R','email','','RisEmail','subject','','R','message','','R');return document.MM_returnValue"> </div></td> </tr> </table> <input type="hidden" name="MM_insert" value="true"> <br> </div> </form></td> <td></td> </tr> </table> <script language="JavaScript" src="../js_footer.js" type="text/JavaScript"></script> <div id="Layer1" style="position:absolute; left:49px; top:59px; width:125px; height:20px; z-index:1"><img src="../images/logo_title.gif" width="157" height="20"></div> </body> </html> <% rsMessages.Close() %>