%@ CodePage=65001 %> <% Const EW_PAGE_ID = "add" Const EW_TABLE_NAME = "players" %> <% Session.Timeout = 100 %> <% Response.Expires = 0 Response.ExpiresAbsolute = Now() - 1 Response.AddHeader "pragma", "no-cache" Response.AddHeader "cache-control", "private, no-cache, no-store, must-revalidate" %> <% ' Open connection to the database Dim conn Set conn = Server.CreateObject("ADODB.Connection") conn.Open EW_DB_CONNECTION_STRING %> <% Dim Security Set Security = New cAdvancedSecurity %> <% If Not Security.IsLoggedIn() Then Call Security.AutoLogin() If Not Security.IsLoggedIn() Then Call Security.SaveLastUrl() Call Page_Terminate("login.asp") End If %> <% ' Common page loading event (in userfn60.asp) Call Page_Loading() %> <% ' Page load event, used in current page Call Page_Load() %> <% Response.Buffer = True ' Load key values from QueryString Dim bCopy bCopy = True If Request.QueryString("ID").Count > 0 Then players.ID.QueryStringValue = Request.QueryString("ID") Else bCopy = False End If ' Create form object Dim objForm Set objForm = ew_GetUploadObj() ' Process form if post back If objForm.GetValue("a_add")&"" <> "" Then players.CurrentAction = objForm.GetValue("a_add") ' Get form action Call GetUploadFiles() ' Get upload files Call LoadFormValues() ' Load form values ' Not post back Else If bCopy Then players.CurrentAction = "C" ' Copy Record Else players.CurrentAction = "I" ' Display Blank Record Call LoadDefaultValues() ' Load default values End If End If ' Close form object Set objForm = Nothing ' Perform action based on action code Select Case players.CurrentAction Case "I" ' Blank record, no action required Case "C" ' Copy an existing record If Not LoadRow() Then ' Load record based on key Session(EW_SESSION_MESSAGE) = "No records found" ' No record found Call Page_Terminate(players.ReturnUrl) ' Clean up and return End If Case "A" ' Add new record players.SendEmail = True ' Send email on add success If AddRow() Then ' Add successful Session(EW_SESSION_MESSAGE) = "Add New Record Successful" ' Set up success message Call Page_Terminate(players.KeyUrl(players.ReturnUrl, "")) ' Clean up and return Else Call RestoreFormValues() ' Add failed, restore form values End If End Select ' Render row based on row type players.RowType = EW_ROWTYPE_ADD ' add ' Render add type Call RenderRow() %>
Add to TABLE: Players
Go Back
<%= Session(EW_SESSION_MESSAGE) %>
<% Session(EW_SESSION_MESSAGE) = "" ' Clear message in Session End If %> <% ' If control is passed here, simply terminate the page without redirect Call Page_Terminate("") ' ----------------------------------------------------------------- ' Subroutine Page_Terminate ' - called when exit page ' - clean up ADO connection and objects ' - if url specified, redirect to url, otherwise end response ' Sub Page_Terminate(url) ' Page unload event, used in current page Call Page_Unload() ' Global page unloaded event (in userfn60.asp) Call Page_Unloaded() conn.Close ' Close Connection Set conn = Nothing Set Security = Nothing Set players = Nothing ' Go to url if specified If url <> "" Then Response.Clear Response.Redirect url End If ' Terminate response Response.End End Sub ' ' Subroutine Page_Terminate (End) ' ---------------------------------------- %> <% ' Function Get upload files Function GetUploadFiles() ' Get upload data players.Picture.Upload.Index = objForm.Index If players.Picture.Upload.UploadFile() Then ' No action required Else Response.Write players.Picture.Upload.Message Response.End End If players.CV.Upload.Index = objForm.Index If players.CV.Upload.UploadFile() Then ' No action required Else Response.Write players.CV.Upload.Message Response.End End If End Function %> <% ' Load default values Function LoadDefaultValues() players.Picture.CurrentValue = Null ' Clear file related field players.CV.CurrentValue = Null ' Clear file related field End Function %> <% ' Load form values Function LoadFormValues() ' Load from form players.FullName.FormValue = objForm.GetValue("x_FullName") players.Position_ID.FormValue = objForm.GetValue("x_Position_ID") players.Club_Id.FormValue = objForm.GetValue("x_Club_Id") players.Height.FormValue = objForm.GetValue("x_Height") players.Weight.FormValue = objForm.GetValue("x_Weight") players.VideoFileName.FormValue = objForm.GetValue("x_VideoFileName") End Function ' Restore form values Function RestoreFormValues() players.FullName.CurrentValue = players.FullName.FormValue players.Position_ID.CurrentValue = players.Position_ID.FormValue players.Club_Id.CurrentValue = players.Club_Id.FormValue players.Height.CurrentValue = players.Height.FormValue players.Weight.CurrentValue = players.Weight.FormValue players.VideoFileName.CurrentValue = players.VideoFileName.FormValue End Function %> <% ' Load row based on key values Function LoadRow() Dim rs, sSql, sFilter sFilter = players.SqlKeyFilter If Not IsNumeric(players.ID.CurrentValue) Then LoadRow = False ' Invalid key, exit Exit Function End If sFilter = Replace(sFilter, "@ID@", ew_AdjustSql(players.ID.CurrentValue)) ' Replace key value ' Call Row Selecting event Call players.Row_Selecting(sFilter) ' Load sql based on filter players.CurrentFilter = sFilter sSql = players.SQL Set rs = Server.CreateObject("ADODB.Recordset") rs.Open sSql, conn If rs.Eof Then LoadRow = False Else LoadRow = True rs.MoveFirst Call LoadRowValues(rs) ' Load row values ' Call Row Selected event Call players.Row_Selected(rs) End If rs.Close Set rs = Nothing End Function ' Load row values from recordset Sub LoadRowValues(rs) players.ID.DbValue = rs("ID") players.FullName.DbValue = rs("FullName") players.Picture.Upload.DbValue = rs("Picture") players.Position_ID.DbValue = rs("Position_ID") players.Club_Id.DbValue = rs("Club_Id") players.Height.DbValue = rs("Height") players.Weight.DbValue = rs("Weight") players.CV.Upload.DbValue = rs("CV") players.VideoFileName.DbValue = rs("VideoFileName") End Sub %> <% ' Render row values based on field settings Sub RenderRow() ' Call Row Rendering event Call players.Row_Rendering() ' Common render codes for all row types ' FullName players.FullName.CellCssStyle = "" players.FullName.CellCssClass = "" ' Picture players.Picture.CellCssStyle = "" players.Picture.CellCssClass = "" ' Position_ID players.Position_ID.CellCssStyle = "" players.Position_ID.CellCssClass = "" ' Club_Id players.Club_Id.CellCssStyle = "" players.Club_Id.CellCssClass = "" ' Height players.Height.CellCssStyle = "" players.Height.CellCssClass = "" ' Weight players.Weight.CellCssStyle = "" players.Weight.CellCssClass = "" ' CV players.CV.CellCssStyle = "" players.CV.CellCssClass = "" ' VideoFileName players.VideoFileName.CellCssStyle = "" players.VideoFileName.CellCssClass = "" If players.RowType = EW_ROWTYPE_VIEW Then ' View row ElseIf players.RowType = EW_ROWTYPE_ADD Then ' Add row ' FullName players.FullName.EditCustomAttributes = "" players.FullName.EditValue = ew_HtmlEncode(players.FullName.CurrentValue) ' Picture players.Picture.EditCustomAttributes = "" If Not IsNull(players.Picture.Upload.DbValue) Then players.Picture.EditValue = players.Picture.Upload.DbValue players.Picture.ImageWidth = 50 players.Picture.ImageHeight = 50 players.Picture.ImageAlt = "" Else players.Picture.EditValue = "" End If ' Position_ID players.Position_ID.EditCustomAttributes = "" sSqlWrk = "SELECT [ID], [Position] FROM [positions]" Set rswrk = Server.CreateObject("ADODB.Recordset") rswrk.Open sSqlWrk, conn If Not rswrk.Eof Then arwrk = rswrk.GetRows Else arwrk = "" End If rswrk.Close Set rswrk = Nothing arwrk = ew_AddItemToArray(arwrk, 0, Array("", "Please Select")) players.Position_ID.EditValue = arwrk ' Club_Id players.Club_Id.EditCustomAttributes = "" sSqlWrk = "SELECT [ID], [Name] FROM [Clubs]" sSqlWrk = sSqlWrk & " ORDER BY [Name] Asc" Set rswrk = Server.CreateObject("ADODB.Recordset") rswrk.Open sSqlWrk, conn If Not rswrk.Eof Then arwrk = rswrk.GetRows Else arwrk = "" End If rswrk.Close Set rswrk = Nothing arwrk = ew_AddItemToArray(arwrk, 0, Array("", "Please Select")) players.Club_Id.EditValue = arwrk ' Height players.Height.EditCustomAttributes = "" players.Height.EditValue = ew_HtmlEncode(players.Height.CurrentValue) ' Weight players.Weight.EditCustomAttributes = "" players.Weight.EditValue = ew_HtmlEncode(players.Weight.CurrentValue) ' CV players.CV.EditCustomAttributes = "" If Not IsNull(players.CV.Upload.DbValue) Then players.CV.EditValue = players.CV.Upload.DbValue Else players.CV.EditValue = "" End If ' VideoFileName players.VideoFileName.EditCustomAttributes = "" players.VideoFileName.EditValue = ew_HtmlEncode(players.VideoFileName.CurrentValue) ElseIf players.RowType = EW_ROWTYPE_EDIT Then ' Edit row ElseIf players.RowType = EW_ROWTYPE_SEARCH Then ' Search row End If ' Call Row Rendered event Call players.Row_Rendered() End Sub %> <% ' Add record Function AddRow() On Error Resume Next Dim rs, sSql, sFilter Dim rsnew Dim bCheckKey, sSqlChk, sWhereChk, rsChk Dim bInsertRow ' Check for duplicate key bCheckKey = True sFilter = players.SqlKeyFilter If players.ID.CurrentValue = "" Or IsNull(players.ID.CurrentValue) Then bCheckKey = False Else sFilter = Replace(sFilter, "@ID@", ew_AdjustSql(players.ID.CurrentValue)) ' Replace key value End If If Not IsNumeric(players.ID.CurrentValue) Then bCheckKey = False End If If bCheckKey Then Set rsChk = players.LoadRs(sFilter) If Not (rsChk Is Nothing) Then Session(EW_SESSION_MESSAGE) = "Duplicate value for primary key" rsChk.Close Set rsChk = Nothing AddRow = False Exit Function End If End If ' Add new record sFilter = "(0 = 1)" players.CurrentFilter = sFilter sSql = players.SQL Set rs = Server.CreateObject("ADODB.Recordset") rs.CursorLocation = EW_CURSORLOCATION rs.Open sSql, conn, 1, 2 rs.AddNew If Err.Number <> 0 Then Session(EW_SESSION_MESSAGE) = Err.Description rs.Close Set rs = Nothing AddRow = False Exit Function End If ' Field FullName Call players.FullName.SetDbValue(players.FullName.CurrentValue, Null) rs("FullName") = players.FullName.DbValue ' Field Picture Call players.Picture.Upload.SaveToSession() ' Save file value to Session players.Picture.Upload.DbValue = rs("Picture") ' Get original value If IsNull(players.Picture.Upload.Value) Then rs("Picture") = Null Else rs("Picture") = ew_UploadFileNameEx(ew_UploadPathEx(True, "pictures/"), players.Picture.Upload.FileName) End If ' Field Position_ID Call players.Position_ID.SetDbValue(players.Position_ID.CurrentValue, Null) rs("Position_ID") = players.Position_ID.DbValue ' Field Club_Id Call players.Club_Id.SetDbValue(players.Club_Id.CurrentValue, Null) rs("Club_Id") = players.Club_Id.DbValue ' Field Height Call players.Height.SetDbValue(players.Height.CurrentValue, Null) rs("Height") = players.Height.DbValue ' Field Weight Call players.Weight.SetDbValue(players.Weight.CurrentValue, Null) rs("Weight") = players.Weight.DbValue ' Field CV Call players.CV.Upload.SaveToSession() ' Save file value to Session players.CV.Upload.DbValue = rs("CV") ' Get original value If IsNull(players.CV.Upload.Value) Then rs("CV") = Null Else rs("CV") = ew_UploadFileNameEx(ew_UploadPathEx(True, "cvs/"), players.CV.Upload.FileName) End If ' Field VideoFileName Call players.VideoFileName.SetDbValue(players.VideoFileName.CurrentValue, Null) rs("VideoFileName") = players.VideoFileName.DbValue ' Check recordset update error If Err.Number <> 0 Then Session(EW_SESSION_MESSAGE) = Err.Description rs.Close Set rs = Nothing AddRow = False Exit Function End If ' Call Row Inserting event bInsertRow = players.Row_Inserting(rs) If bInsertRow Then ' Field Picture If Not IsNull(players.Picture.Upload.Value) Then Call ew_SaveFile(ew_UploadPathEx(True, "pictures/"), rs("Picture"), players.Picture.Upload.Value) If players.Picture.Upload.Action = "2" Or players.Picture.Upload.Action = "3" Then ' Update/Remove If players.Picture.Upload.DbValue <> "" Then ew_DeleteFile ew_UploadPathEx(True, "pictures/") & players.Picture.Upload.DbValue End If ' Field CV If Not IsNull(players.CV.Upload.Value) Then Call ew_SaveFile(ew_UploadPathEx(True, "cvs/"), rs("CV"), players.CV.Upload.Value) If players.CV.Upload.Action = "2" Or players.CV.Upload.Action = "3" Then ' Update/Remove If players.CV.Upload.DbValue <> "" Then ew_DeleteFile ew_UploadPathEx(True, "cvs/") & players.CV.Upload.DbValue End If ' Clone new rs object Set rsnew = ew_CloneRs(rs) rs.Update If Err.Number <> 0 Then Session(EW_SESSION_MESSAGE) = Err.Description AddRow = False Else AddRow = True End If Else rs.CancelUpdate If players.CancelMessage <> "" Then Session(EW_SESSION_MESSAGE) = players.CancelMessage players.CancelMessage = "" Else Session(EW_SESSION_MESSAGE) = "Insert cancelled" End If AddRow = False End If rs.Close Set rs = Nothing If AddRow Then players.ID.DbValue = rsnew("ID") ' Call Row Inserted event Call players.Row_Inserted(rsnew) End If ' Field Picture Call players.Picture.Upload.RemoveFromSession() ' Remove file value from Session ' Field CV Call players.CV.Upload.RemoveFromSession() ' Remove file value from Session If IsObject(rsnew) Then rsnew.Close Set rsnew = Nothing End If End Function %> <% ' Page Load event Sub Page_Load() '***Response.Write "Page Load" Server.ScriptTimeout=1000 Session.Timeout = 1000 End Sub ' Page Unload event Sub Page_Unload() '***Response.Write "Page Unload" End Sub %>