or
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="ObjectDataSource1" OnColumnCreated="RadGrid1_ColumnCreated" OnItemCreated="RadGrid1_ItemCreated" OnItemDataBound="RadGrid1_ItemDataBound"> <MasterTableView HierarchyDefaultExpanded="false" HierarchyLoadMode="Client" AllowSorting="false" DataKeyNames="TypeId, ParentTypeId" Width="100%"> <SelfHierarchySettings ParentKeyName="ParentTypeId" KeyName="TypeId" /> </MasterTableView> <ClientSettings AllowExpandCollapse="true" /></telerik:RadGrid><%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="admin_Default" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <telerik:RadStyleSheetManager ID="RadStyleSheetManager1" runat="server"> </telerik:RadStyleSheetManager> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"/> <div> <table> <tr> <td> </td> <td> <asp:Label runat="server" ID="admin_header" Text='<%#Eval("s_title")%>' Font-Bold="true" Font-Names="verdana" Font-Size="Medium" ForeColor="White" ToolTip='<%#Eval("s_title")%>'></asp:Label> </td> <td> </td> </tr> <tr> <td width="761" align="right"> <asp:FormView ID="fv1" DataSourceID="SqlDataSource1" runat="server" DataKeyNames="cid" DefaultMode="edit"> <EditItemTemplate> <div align="left"> <asp:Label ID="Label1" runat="server" Text="Page Name:" CssClass="content_text_left_bold"></asp:Label><br /> <asp:TextBox ID="s_page_name" runat="server" Text='<%#Bind("s_page_name")%>' Width="761" /> <asp:Label ID="Label2" runat="server" Text="Title:" CssClass="content_text_left_bold"></asp:Label><br /> <asp:TextBox ID="s_title" runat="server" Text='<%#Bind("s_title")%>' Width="761" /> <asp:Label ID="Label4" runat="server" Text="Meta Keywords:" CssClass="content_text_left_bold"></asp:Label><br /> <asp:TextBox ID="s_meta_keywords" runat="server" Text='<%#Bind("s_meta_keywords")%>' Width="761" Rows="4" Wrap="true" TextMode="MultiLine" /> <asp:Label ID="Label5" runat="server" Text="Meta Description:" CssClass="content_text_left_bold"></asp:Label><br /> <asp:TextBox ID="s_meta_description" runat="server" Text='<%#Bind("s_meta_description")%>' Width="761" Rows="4" Wrap="true" TextMode="MultiLine" /> <div> <div> <telerik:RadEditor ID="RadEditor1" runat="server" ImageManager-UploadPaths="/images/content/" ImageManager-DeletePaths="/images/content/" ImageManager-ViewPaths="/images/content/" Content='<%# Bind("page_content") %>' Height="800px" Width="690px" ContentAreaCssFile="~/admin/ContentAreaStyleSheet.css" OnClientLoad="OnClientLoad" ContentFilters="FixEnclosingP"> <FontNames> <telerik:EditorFont Value="Arial" /> <telerik:EditorFont Value="Baskerville Old Face" /> <telerik:EditorFont Value="Bookman old style" /> <telerik:EditorFont Value="Calibri" /> <telerik:EditorFont Value="Century Gothic" /> <telerik:EditorFont Value="Comic Sans MS" /> <telerik:EditorFont Value="Constontia" /> <telerik:EditorFont Value="Cooper Black" /> <telerik:EditorFont Value="Courier New" /> <telerik:EditorFont Value="Garamond" /> <telerik:EditorFont Value="Georgia" /> <telerik:EditorFont Value="Lucida Sans" /> <telerik:EditorFont Value="Lucida Sans Unicode" /> <telerik:EditorFont Value="MS Sans Serif" /> <telerik:EditorFont Value="Segoe UI" /> <telerik:EditorFont Value="Tahoma" /> <telerik:EditorFont Value="Times New Roman" /> <telerik:EditorFont Value="Verdana" /> </FontNames> </telerik:RadEditor> </div> <asp:Button ID="Button1" runat="server" Text="Submit Changes" CommandName="update" /> </div> </EditItemTemplate> </asp:FormView> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>" SelectCommand="SELECT * FROM [content]where cid=@cid" UpdateCommand="UPDATE [content] SET [page_content] = @page_content, [s_title] = @s_title, [s_meta_keywords] =@s_meta_keywords, [s_meta_description] =@s_meta_description, [s_page_name] =@s_page_name WHERE cid=@cid" CancelSelectOnNullParameter="false"> <SelectParameters> <asp:QueryStringParameter Name="cid" Type="string" QueryStringField="cid" /> </SelectParameters> </asp:SqlDataSource> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> </table> </div><script type="text/javascript"> function OnClientLoad(editor) { var tool = editor.getToolByName("ForeColor"); //Add the button to the color picker tool.old_renderFooter = tool.renderFooter; tool.renderFooter = function () { this.old_renderFooter(); //Create a button and add it to the tool var button = document.createElement("button"); button.innerHTML = "Add custom color.."; button.onclick = showColorDialog; this.get_popupElement().appendChild(button); } function showColorDialog() { var myCallbackFunction = function (sender, color) { var colors = tool.get_items(); //If no colors are set get the colors from the editor if (colors.length == 0) { colors = editor.get_colors(); } colors[colors.length] = color; tool.set_items(colors); //Set the color to the current selection editor.get_document().execCommand("ForeColor", false, color); } //Hide the color picker tool.hide(); //Show the Custom Color dialog editor.showExternalDialog( 'ForeColorDialog.aspx', null, 600, 400, myCallbackFunction, null, 'ForeColor', true, Telerik.Web.UI.WindowBehaviors.Close + Telerik.Web.UI.WindowBehaviors.Move, false, false); } };</script> <telerik:RadAjaxManager runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadEditor1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadEditor1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> </form></body></html><configuration> <connectionStrings> <add name="ConnectionString" connectionString="Data Source=SQL2008;Initial Catalog=121212;Persist Security Info=True;User ID=121212;Password=121212" providerName="System.Data.SqlClient" /> </connectionStrings> <location path="Telerik.Web.UI.WebResource.axd"> <system.web> <authorization> <allow users="*"/> </authorization> </system.web> </location> <system.web> <compilation debug="true" targetFramework="4.0"> <assemblies> <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> <add assembly="System.Speech, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> </assemblies> </compilation> <customErrors mode="Off" /> <httpHandlers> <add path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource" verb="*" validate="false" /> <add path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler" verb="*" validate="false" /> <add path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" verb="*" validate="false" /> </httpHandlers> </system.web> <system.webServer> <validation validateIntegratedModeConfiguration="false" /> <handlers> <add name="Telerik_Web_UI_WebResource_axd" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource" /> <add name="Telerik_Web_UI_SpellCheckHandler_axd" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler" /> <add name="Telerik_Web_UI_DialogHandler_aspx" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" /> </handlers> </system.webServer> </configuration><telerik:RadTabStrip ID="RadTabStrip1" runat="server" Align="Justify" Orientation="VerticalLeft" MultiPageID="RadMultiPagePatRecords"> <Tabs> <telerik:RadTab runat="server" Text="Patient Search"> </telerik:RadTab> <telerik:RadTab runat="server" Text="Delinquent Accounts"> </telerik:RadTab> <telerik:RadTab runat="server" Text="Invoices"> </telerik:RadTab> </Tabs> </telerik:RadTabStrip> <telerik:RadMultiPage ID="RadMultiPagePatRecords" runat="server"> <telerik:RadPageView ID="RadPatientSearch" runat="server"> <table> <tr> <td class="labels" align="center"> <asp:Label ID="Label1" runat="server" Text="First Name: "></asp:Label> </td> <td class="textboxes"> <telerik:RadTextBox ID="txtFirstName" runat="server" EmptyMessage="Type Here" Width="100%"> </telerik:RadTextBox> </td> <td class="labels" align="center"> <asp:Label ID="Label2" runat="server" Text="Last Name:"></asp:Label> </td> <td class="textboxes"> <telerik:RadTextBox ID="txtLastName" runat="server" EmptyMessage="Type Here" Width="100%"> </telerik:RadTextBox> </td> <td class="labels" align="center"> <asp:Label ID="Label3" runat="server" Text="DOB:"></asp:Label> </td> <td class="textboxsmall"> <telerik:RadDateInput ID="RadDateInput1" runat="server" DateFormat="MM/dd/yyyy" EmptyMessage="(MM/dd/yyyy)" Width="100%"> <EmptyMessageStyle Font-Size="Smaller" /> </telerik:RadDateInput> </td> </tr> </table> </telerik:RadPageView> </telerik:RadMultiPage><asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"> </telerik:RadScriptManager> <asp:UpdatePanel ID="UpdatePanel2" runat="server"> <ContentTemplate> <div class="fieldset"> <fieldset> <legend>Tvrtka</legend> <telerik:RadComboBox ID="rcbTvrtka" runat="server" AppendDataBoundItems="true" Skin="Hay"> </telerik:RadComboBox> </fieldset> </div> <div class="fieldset"> <fieldset> <legend>Tip usera</legend> <telerik:RadComboBox ID="rcbTipUsera" runat="server" AppendDataBoundItems="true" Skin="Hay"> </telerik:RadComboBox> </fieldset> </div> <div class="fieldset3"> <fieldset> <legend>Aktivan</legend> <asp:CheckBox ID="chkAktivan" runat="server" /> </fieldset> </div> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="btnReset" EventName="Click" /> </Triggers> </asp:UpdatePanel> <div class="fieldset3"> <fieldset> <legend>Pretraga</legend> <asp:Button ID="btnSearch" runat="server" Text="Traži" OnClick="btnSearch_Click" /> </fieldset> </div> <div class="fieldset3"> <fieldset> <legend>Reset</legend> <asp:Button ID="btnReset" runat="server" Text="Resetiraj" OnClick="btnReset_Click" /> </fieldset> </div> <telerik:RadGrid ID="gvKontakti" runat="server" AllowPaging="True" AllowSorting="True" PageSize="25" AutoGenerateColumns="False" CellSpacing="0" GridLines="None" OnNeedDataSource="gvKontakti_NeedDataSource" AllowFilteringByColumn="False" Skin="Hay" OnItemDataBound="gvKontakti_ItemDataBound" OnPreRender="gvKontakti_PreRender" OnUpdateCommand="gvKontakti_UpdateCommand" OnDetailTableDataBind="gvKontakti_DetailTableDataBind" OnInsertCommand="gvKontakti_InsertCommand" OnItemCommand="gvKontakti_ItemCommand"> <MasterTableView DataKeyNames="idKontakt" CommandItemDisplay="Top" InsertItemPageIndexAction="ShowItemOnCurrentPage" TableLayout="Fixed" Caption="Kontakti"> <DetailTables> <telerik:GridTableView Name="Assets" Width="100%" CommandItemDisplay="None" Caption="Asseti"> <ParentTableRelation> <telerik:GridRelationFields DetailKeyField="idKontakt" MasterKeyField="idKontakt" /> </ParentTableRelation> <CommandItemSettings AddNewRecordText="Dodaj novi item" ShowAddNewRecordButton="true" /> <Columns> <telerik:GridBoundColumn UniqueName="Naziv" DataField="NazivAsseta" HeaderText="Naziv" HeaderStyle-Width="200px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="DatumGarancije" HeaderText="Datum garancije" DataField="DatumGarancije" DataFormatString="{0:dd.MM.yyyy.}" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> </Columns> <EditFormSettings UserControlName="UserControls/TicketAssetUserControl.ascx" EditFormType="WebUserControl"> <EditColumn UniqueName="EditCommandColumnItem1"> </EditColumn> </EditFormSettings> </telerik:GridTableView> </DetailTables> <DetailTables> <telerik:GridTableView DataKeyNames="idTicket" Name="Tickets" CommandItemDisplay="None" Caption="Incidenti"> <Columns> <telerik:GridBoundColumn UniqueName="TicketNumber" HeaderText="Broj incidenta" DataField="TicketNumber" HeaderStyle-Width="70px"> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="DatumPrijave" HeaderText="Datum prijave" UniqueName="DatumPrijave" PickerType="DatePicker" DataFormatString="{0:dd.MM.yyyy.}" HeaderStyle-Width="80px"> </telerik:GridDateTimeColumn> <telerik:GridTemplateColumn UniqueName="Opis" HeaderText="Opis" DataField="Opis" HeaderStyle-Width="400px"> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Opis") %>'> </asp:Label> <telerik:RadToolTip ID="RadToolTip1" runat="server" TargetControlID="Label1" Width="150px" RelativeTo="Element" Position="MiddleRight" EnableShadow="false"> <%# DataBinder.Eval(Container, "DataItem.Biljeske") %> </telerik:RadToolTip> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn UniqueName="Status" HeaderText="Status" DataField="Status" HeaderStyle-Width="80px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Prioritet" HeaderText="Prioritet" DataField="Prioritet" HeaderStyle-Width="70px"> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="DatumDo" HeaderText="Deadline" UniqueName="Deadline" PickerType="DatePicker" DataFormatString="{0:dd.MM.yyyy.}" HeaderStyle-Width="80px"> </telerik:GridDateTimeColumn> <telerik:GridBoundColumn UniqueName="Tip" HeaderText="Tip" DataField="Tip" HeaderStyle-Width="80px"> </telerik:GridBoundColumn> <telerik:GridCheckBoxColumn UniqueName="Naplacen" HeaderText="Naplaćen" DataField="IzdanRacun" HeaderStyle-Width="65px"> </telerik:GridCheckBoxColumn> <telerik:GridCheckBoxColumn UniqueName="Zatvoren" HeaderText="Zatvoren" DataField="Zatvoren" HeaderStyle-Width="60px"> </telerik:GridCheckBoxColumn> <telerik:GridBoundColumn UniqueName="DailySum" HeaderText="Efektivno vrijeme" DataField="DailySum" HeaderStyle-Width="70px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="DailyCount" HeaderText="Broj dolazaka" DataField="DailyCount" HeaderStyle-Width="70px"> </telerik:GridBoundColumn> </Columns> </telerik:GridTableView> </DetailTables> <CommandItemSettings ShowAddNewRecordButton="true" AddNewRecordText="Dodaj novi kontakt" /> <RowIndicatorColumn FilterControlAltText="Filter RowIndicator column"> </RowIndicatorColumn> <ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column"> </ExpandCollapseColumn> <Columns> <telerik:GridEditCommandColumn UniqueName="EditCommandColumn" EditText="Detalji" HeaderStyle-Width="50px"> </telerik:GridEditCommandColumn> <telerik:GridBoundColumn UniqueName="Kontakt" DataField="Naziv" HeaderText="Kontakt" HeaderStyle-Width="150px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Tvrtka" HeaderText="Tvrtka" DataField="Tvrtka" HeaderStyle-Width="150px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Funkcija" HeaderText="Funkcija" DataField="Funkcija" HeaderStyle-Width="150px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Tel1" HeaderText="Telefon 1" DataField="Tel1" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Tel2" HeaderText="Telefon 2" DataField="Tel2" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Mob1" HeaderText="Mobitel 1" DataField="Mob1" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Mob2" HeaderText="Mobitel 2" DataField="Mob2" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Email1" HeaderText="E-mail 1" DataField="Email1" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Adresa1" HeaderText="Adresa 1" DataField="Adresa1" HeaderStyle-Width="150px"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Grad" HeaderText="Grad" DataField="Grad" HeaderStyle-Width="100px"> </telerik:GridBoundColumn> <telerik:GridCheckBoxColumn UniqueName="Aktivan" HeaderText="Aktivan" DataField="Aktivan" HeaderStyle-Width="80px"> </telerik:GridCheckBoxColumn> <telerik:GridButtonColumn UniqueName="DeleteColumn" Text="Delete" CommandName="Delete" ConfirmDialogType="RadWindow" ConfirmText="Brisanjem kontakta brišu se i svi asseti!" HeaderStyle-Width="50px"> </telerik:GridButtonColumn> </Columns> <EditFormSettings UserControlName="UserControls/KontaktUserControl.ascx" EditFormType="WebUserControl"> <EditColumn UniqueName="EditCommandColumn1"> </EditColumn> </EditFormSettings> </MasterTableView> <FilterMenu EnableImageSprites="False"> </FilterMenu> <HeaderContextMenu CssClass="GridContextMenu GridContextMenu_Hay"> </HeaderContextMenu> </telerik:RadGrid></asp:Content>TSEntities db = new TSEntities();protected void Page_Load(object sender, EventArgs e){ int idAuthenticatedUser = Convert.ToInt32(Session["authenticatedUI"]); Kontakt kontakt = new Kontakt(); kontakt = db.Kontakt.SingleOrDefault(k => k.idKontakt == idAuthenticatedUser); if (Session["authenticatedUI"] == null) { Response.Redirect("Login.aspx"); } else if (kontakt.idOvlasti == 3 || kontakt.idOvlasti == 4) { if (Request.RawUrl != "/KontaktiWebForm.aspx?idk=" + idAuthenticatedUser) { Response.Redirect("KontaktiWebForm.aspx?idk=" + idAuthenticatedUser); } } if (!IsPostBack) { Populate(); chkAktivan.Checked = true; }}protected void Populate(){ var tvrtkaList = (from t in db.Firma select t).ToList(); var tvrtka = from t in tvrtkaList orderby t.Naziv select new { t.idFirma, t.Naziv }; rcbTvrtka.Items.Clear(); rcbTvrtka.Items.Add(new RadComboBoxItem("Odaberi tvrtku", "0")); rcbTvrtka.DataSource = tvrtka; rcbTvrtka.DataTextField = "Naziv"; rcbTvrtka.DataValueField = "idFirma"; rcbTvrtka.DataBind(); var userType = from u in db.Ovlasti select new { u.idOvlasti, u.Naziv }; rcbTipUsera.Items.Add(new RadComboBoxItem("Odaberi tip", "0")); rcbTipUsera.DataSource = userType; rcbTipUsera.DataTextField = "Naziv"; rcbTipUsera.DataValueField = "idOvlasti"; rcbTipUsera.DataBind();}protected void gvKontakti_NeedDataSource(object sender, Telerik.Web.UI.GridNeedDataSourceEventArgs e){ int idKontakt = Convert.ToInt32(Request.QueryString["idk"]); int idAuthKontakt = Convert.ToInt32(Session["authenticatedUI"]); if (idKontakt > 0 && idAuthKontakt == idKontakt) { gvKontakti.DataSource = from k in db.Kontakt where k.idKontakt == idKontakt && k.Aktivan == true orderby k.Prezime, k.Ime select new { Tvrtka = k.Firma.Naziv, k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Adresa1, k.Adresa2, k.Adresa3, k.Grad, k.PostanskiBroj, k.Drzava, k.Biljeske, k.Aktivan, k.Username, k.Password }; } else if (idKontakt > 0 && idAuthKontakt != idKontakt) { gvKontakti.DataSource = from k in db.Kontakt where k.idKontakt == idKontakt && k.Aktivan == true orderby k.Prezime, k.Ime select new { Tvrtka = k.Firma.Naziv, k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Adresa1, k.Adresa2, k.Adresa3, k.Grad, k.PostanskiBroj, k.Drzava, k.Biljeske, k.Aktivan, k.Username, k.Password }; } else { gvKontakti.DataSource = from k in db.Kontakt where k.Aktivan == true orderby k.Prezime, k.Ime select new { Tvrtka = k.Firma.Naziv, k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Adresa1, k.Adresa2, k.Adresa3, k.Grad, k.PostanskiBroj, k.Drzava, k.Biljeske, k.Aktivan, k.Username, k.Password }; }}protected void gvKontakti_ItemDataBound(object sender, GridItemEventArgs e){ int idKontakt = Convert.ToInt32(Request.QueryString["idk"]); int idAuthKontakt = Convert.ToInt32(Session["authenticatedUI"]); if ((e.Item is GridEditFormItem) && e.Item.IsInEditMode) { UserControl userControl = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID); GridEditFormItem editFormItem = (GridEditFormItem)e.Item; Button btnUpdate = (Button)userControl.FindControl("btnUpdate"); TextBox txtUsername = (TextBox)userControl.FindControl("txtUsername"); TextBox txtPassword = (TextBox)userControl.FindControl("txtPassword"); RadComboBox rcbTvrtka = (RadComboBox)userControl.FindControl("rcbTvrtka"); RadComboBox rcbOvlasti = (RadComboBox)userControl.FindControl("rcbOvlasti"); Kontakt authKontakt = new Kontakt(); authKontakt = db.Kontakt.SingleOrDefault(k => k.idKontakt == idAuthKontakt); var tvrtkeList = (from t in db.Firma orderby t.Naziv select t).ToList(); rcbTvrtka.DataSource = from t in tvrtkeList select new { t.idFirma, t.Naziv }; rcbTvrtka.DataTextField = "Naziv"; rcbTvrtka.DataValueField = "idFirma"; rcbTvrtka.Text = "'<%# DataBinder.Eval(Container, 'DataItem.idFirma') %>'"; rcbTvrtka.DataBind(); rcbOvlasti.DataSource = from o in db.Ovlasti select o; rcbOvlasti.DataTextField = "Naziv"; rcbOvlasti.DataValueField = "idOvlasti"; rcbOvlasti.Text = "'<%# DataBinder.Eval(Container, 'DataItem.idOvlasti') %>'"; rcbOvlasti.DataBind(); rcbOvlasti.Items.FindItemByValue("4").Selected = true; if (authKontakt.idOvlasti == 4 || authKontakt.idOvlasti == 3 || authKontakt.idOvlasti == 2) { rcbOvlasti.Enabled = false; } if (authKontakt.idOvlasti == 4 || authKontakt.idOvlasti == 3) { rcbTvrtka.Enabled = false; } txtUsername.ReadOnly = false; txtPassword.ReadOnly = false; if (!e.Item.OwnerTableView.IsItemInserted) { Kontakt kontakt = new Kontakt(); int idKontaktSelected = Convert.ToInt32(editFormItem.GetDataKeyValue("idKontakt")); kontakt = db.Kontakt.SingleOrDefault(k => k.idKontakt == idKontaktSelected); if (idKontaktSelected == idAuthKontakt || authKontakt.idOvlasti == 2 || authKontakt.idOvlasti == 1) { txtUsername.ReadOnly = false; txtPassword.ReadOnly = false; btnUpdate.Visible = true; } else { txtUsername.ReadOnly = true; txtPassword.ReadOnly = true; btnUpdate.Visible = false; } int idTvrtka = Convert.ToInt16(kontakt.idFirma); rcbTvrtka.Items.FindItemByValue(idTvrtka.ToString()).Selected = true; Session["rcbTvrtka"] = idTvrtka; rcbOvlasti.Items.FindItemByValue(kontakt.idOvlasti.ToString()).Selected = true; CheckBox chkAktivan = (CheckBox)userControl.FindControl("chkAktivan"); if (kontakt.Aktivan == true) { chkAktivan.Checked = true; } else { chkAktivan.Checked = false; } } }}protected void gvKontakti_PreRender(object sender, EventArgs e){ int idKontakt = Convert.ToInt32(Request.QueryString["idk"]); if (!this.IsPostBack && idKontakt > 0) { this.gvKontakti.MasterTableView.Items[0].Edit = true; this.gvKontakti.MasterTableView.Rebind(); }}protected void gvKontakti_UpdateCommand(object sender, GridCommandEventArgs e){ GridEditableItem editedItem = e.Item as GridEditableItem; UserControl userControl = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID); RadComboBox rcbOvlasti = (RadComboBox)userControl.FindControl("rcbOvlasti"); RadComboBox rcbTvrtka = (RadComboBox)userControl.FindControl("rcbTvrtka"); int idKontakt = Convert.ToInt32(editedItem.GetDataKeyValue("idKontakt")); Kontakt kontakt = new Kontakt(); kontakt = db.Kontakt.SingleOrDefault(k => k.idKontakt == idKontakt); int idFirma = Convert.ToInt32(rcbTvrtka.SelectedItem.Value); kontakt.idFirma = Convert.ToInt32(rcbTvrtka.SelectedItem.Value); kontakt.Ime = (userControl.FindControl("txtIme") as TextBox).Text; kontakt.Prezime = (userControl.FindControl("txtPrezime") as TextBox).Text; kontakt.Adresa1 = (userControl.FindControl("txtAdresa1") as TextBox).Text; kontakt.Adresa2 = (userControl.FindControl("txtAdresa2") as TextBox).Text; kontakt.Adresa3 = (userControl.FindControl("txtAdresa3") as TextBox).Text; kontakt.Biljeske = (userControl.FindControl("txtBiljeske") as TextBox).Text; kontakt.Funkcija = (userControl.FindControl("txtFunkcija") as TextBox).Text; kontakt.Prezime = (userControl.FindControl("txtPrezime") as TextBox).Text; kontakt.Grad = (userControl.FindControl("txtGrad") as TextBox).Text; kontakt.Drzava = (userControl.FindControl("txtDrzava") as TextBox).Text; kontakt.PostanskiBroj = (userControl.FindControl("txtPBR") as TextBox).Text; kontakt.Mob1 = (userControl.FindControl("txtMob1") as TextBox).Text; kontakt.Mob2 = (userControl.FindControl("txtMob2") as TextBox).Text; kontakt.Tel1 = (userControl.FindControl("txtTel1") as TextBox).Text; kontakt.Tel2 = (userControl.FindControl("txtTel2") as TextBox).Text; kontakt.Fax = (userControl.FindControl("txtFax") as TextBox).Text; kontakt.Email1 = (userControl.FindControl("txtEmail1") as TextBox).Text; kontakt.Email2 = (userControl.FindControl("txtEmail2") as TextBox).Text; kontakt.Aktivan = (userControl.FindControl("chkAktivan") as CheckBox).Checked; kontakt.idOvlasti = Convert.ToInt32(rcbOvlasti.SelectedItem.Value); kontakt.Username = (userControl.FindControl("txtUsername") as TextBox).Text; string password = (userControl.FindControl("txtPassword") as TextBox).Text; string passwordHash = FormsAuthentication.HashPasswordForStoringInConfigFile(password, "MD5"); if (password.Length > 0) { kontakt.Password = passwordHash; } db.SaveChanges();}protected void gvKontakti_DetailTableDataBind(object sender, GridDetailTableDataBindEventArgs e){ GridDataItem dataItem = (GridDataItem)e.DetailTableView.ParentItem; int idKontakt = Convert.ToInt16(dataItem.GetDataKeyValue("idKontakt")); switch (e.DetailTableView.Name) { case "Assets": { e.DetailTableView.DataSource = from a in db.Asset where a.idKontakt == idKontakt && a.Aktivan == true select new {a.idKontakt, NazivAsseta = a.Naziv, a.DatumGarancije }; } break; case "Tickets": { var ticketList = (from t in db.Ticket where t.idKontakt == idKontakt && t.Zatvoren == false select t).ToList(); e.DetailTableView.DataSource = from t in ticketList where t.Zatvoren == false orderby t.idTicket, t.RedniBroj, t.DatumPrijave select new { t.idTicket, t.idFirma, t.idKontakt, t.idManager, t.idNadredeniTicket, TicketNumber = t.idNadredeniTicket + "-" + t.RedniBroj, t.Biljeske, t.DatumDo, t.DatumPrijave, t.OpciPrioritet, t.Opis, t.OpisZatvoren, t.Prioritet, t.Status, t.Tip, t.VrstaPrijave, t.Zatvoren, NazivKontakta = t.Kontakt == null ? "Bez kontakta" : t.Kontakt.Ime + " " + t.Kontakt.Prezime }; } break; }}protected void gvKontakti_InsertCommand(object sender, GridCommandEventArgs e){ GridEditableItem editedItem = e.Item as GridEditableItem; UserControl userControl = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID); TSEntities db = new TSEntities(); Kontakt kontakt = new Kontakt(); RadComboBox rcbTvrtka = (RadComboBox)userControl.FindControl("rcbTvrtka"); RadComboBox rcbOvlasti = (RadComboBox)userControl.FindControl("rcbOvlasti"); kontakt.idFirma = Convert.ToInt32(rcbTvrtka.SelectedItem.Value); kontakt.Ime = (userControl.FindControl("txtIme") as TextBox).Text; kontakt.Prezime = (userControl.FindControl("txtPrezime") as TextBox).Text; kontakt.Adresa1 = (userControl.FindControl("txtAdresa1") as TextBox).Text; kontakt.Adresa2 = (userControl.FindControl("txtAdresa2") as TextBox).Text; kontakt.Adresa3 = (userControl.FindControl("txtAdresa3") as TextBox).Text; kontakt.Biljeske = (userControl.FindControl("txtBiljeske") as TextBox).Text; kontakt.Funkcija = (userControl.FindControl("txtFunkcija") as TextBox).Text; kontakt.Prezime = (userControl.FindControl("txtPrezime") as TextBox).Text; kontakt.Grad = (userControl.FindControl("txtGrad") as TextBox).Text; kontakt.Drzava = (userControl.FindControl("txtDrzava") as TextBox).Text; kontakt.PostanskiBroj = (userControl.FindControl("txtPBR") as TextBox).Text; kontakt.Mob1 = (userControl.FindControl("txtMob1") as TextBox).Text; kontakt.Mob2 = (userControl.FindControl("txtMob2") as TextBox).Text; kontakt.Tel1 = (userControl.FindControl("txtTel1") as TextBox).Text; kontakt.Tel2 = (userControl.FindControl("txtTel2") as TextBox).Text; kontakt.Fax = (userControl.FindControl("txtFax") as TextBox).Text; kontakt.Email1 = (userControl.FindControl("txtEmail1") as TextBox).Text; kontakt.Email2 = (userControl.FindControl("txtEmail2") as TextBox).Text; kontakt.Aktivan = (userControl.FindControl("chkAktivan") as CheckBox).Checked; kontakt.idOvlasti = Convert.ToInt32(rcbOvlasti.SelectedItem.Value); kontakt.Username = (userControl.FindControl("txtUsername") as TextBox).Text; string passwordHash = FormsAuthentication.HashPasswordForStoringInConfigFile((userControl.FindControl("txtPassword") as TextBox).Text, "MD5"); kontakt.Password = passwordHash; db.AddToKontakt(kontakt); db.SaveChanges();}protected void btnSearch_Click(object sender, EventArgs e){ var kontakti = from k in db.Kontakt select k; int idTipUsera = Convert.ToInt32(rcbTipUsera.SelectedValue); int idTvrtka = Convert.ToInt32(rcbTvrtka.SelectedValue); if (rcbTvrtka.SelectedValue != "0") { kontakti = kontakti.Where(k => k.idFirma == idTvrtka); } if (rcbTipUsera.SelectedValue != "0") { kontakti = kontakti.Where(k => k.idOvlasti == idTipUsera); } if (chkAktivan.Checked == true) { kontakti = kontakti.Where(k => k.Aktivan == true); } else { kontakti = kontakti.Where(k => k.Aktivan == false); } int idKontakt = Convert.ToInt32(Request.QueryString["idk"]); int idAuthKontakt = Convert.ToInt32(Session["authenticatedUI"]); if (idKontakt > 0 && idAuthKontakt == idKontakt) { gvKontakti.DataSource = from k in kontakti where k.idKontakt == idKontakt orderby k.Prezime, k.Ime select new { Tvrtka = k.Firma.Naziv, k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Adresa1, k.Adresa2, k.Adresa3, k.Grad, k.PostanskiBroj, k.Drzava, k.Biljeske, k.Aktivan, k.Username, k.Password }; } else if (idKontakt > 0 && idAuthKontakt != idKontakt) { gvKontakti.DataSource = from k in kontakti where k.idKontakt == idKontakt orderby k.Prezime, k.Ime select new { Tvrtka = k.Firma.Naziv, k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Adresa1, k.Adresa2, k.Adresa3, k.Grad, k.PostanskiBroj, k.Drzava, k.Biljeske, k.Aktivan, k.Username, k.Password }; } else { gvKontakti.DataSource = from k in kontakti orderby k.Prezime, k.Ime select new { Tvrtka = k.Firma.Naziv, k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Adresa1, k.Adresa2, k.Adresa3, k.Grad, k.PostanskiBroj, k.Drzava, k.Biljeske, k.Aktivan, k.Username, k.Password }; } gvKontakti.DataBind();}protected void gvKontakti_ItemCommand(object sender, GridCommandEventArgs e){ if (e.CommandName == "Delete") { GridEditableItem editedItem = e.Item as GridEditableItem; int idKontakt = Convert.ToInt32(editedItem.GetDataKeyValue("idKontakt")); var assets = from a in db.Asset where a.idKontakt == idKontakt select a; Kontakt kontakt = db.Kontakt.SingleOrDefault(k => k.idKontakt == idKontakt); int assetCount = db.Asset.Count(a => a.idKontakt == idKontakt); if (assetCount != 0) { foreach (var asset in assets) { db.DeleteObject(asset); } } db.DeleteObject(kontakt); db.SaveChanges(); }}protected void btnReset_Click(object sender, EventArgs e){ rcbTipUsera.Items.FindItemByValue("0").Selected = true; rcbTvrtka.Items.FindItemByValue("0").Selected = true; chkAktivan.Checked = true; gvKontakti.Rebind();}