<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();}An unhandled exception was generated during the execution of the
current web request. Information regarding the origin and location of the
exception can be identified using the exception stack trace below.
|
|
<script id="ListBoxItemTransfer" type="text/javascript">
function lbdropped(sender, args) {
sender.trackChanges();
var destinationListBox = transferManager.performTransfer(sender, args);
sender.commitChanges();
//Call back function
var senderListboxId = sender.get_id();
if (senderListboxId == 'rlbFuncImprovement' || senderListboxId == 'rlbTechImprovement' || senderListboxId == 'rlbConsolidation') {
var objectIds = '';
var items = args.get_sourceItems();
var i = 0;
for (i = 0; i < items.length; i++) {
if (objectIds == '') {
objectIds = items[i].get_value();
}
else {
objectIds = objectIds +
',' + items[i].get_value();
}
}
var arrgument = senderListboxId + ',' + objectIds + ", 0";
CallServer(arrgument,
'');
}
}
//Multi-list box transfer generic code
(
function ($) {
transferManager =
function () { }
transferManager.performTransfer =
function (sender, args) {
var destinationItemIndex = this._getDestinationIndex(args);
var destinationListBox = this._getDestinationListBox(args);
if (destinationListBox == null || destinationListBox.get_id() == document.getElementById('rlbProposed').id)
return;
var reorderIndex = args.get_dropPosition() == 0 ?
destinationItemIndex : destinationItemIndex + 1;
var items = args.get_sourceItems();
this._transfer(items, destinationListBox, reorderIndex);
return destinationListBox;
}
transferManager._transfer =
function (items, destination, reorderIndex) {
$.each(items,
function (index, item) {
destination.trackChanges();
destination.get_items().insert(reorderIndex, item);
destination.commitChanges();
});
}
transferManager._getDestinationIndex =
function (args) {
var destinationItem = args.get_destinationItem();
if (destinationItem)
return destinationItem.get_index();
return 0;
}
transferManager._getDestinationListBox =
function (args) {
var destinationItem = args.get_destinationItem();
if (destinationItem) {
var id = destinationItem.get_listBox().get_id();
return $find(id);
}
var parent = $(args.get_htmlElement()).parent();
if (parent.is(".RadListBox")) {
var id = parent[0].id;
return $find(id);
}
else if (parent.is(".rlbGroup")) {
var id = parent[0].parentNode.id;
return $find(id);
}
return null;
}
})($telerik.$);
</script>
function
ContextMenuClicked(sender, args) {
window.open(args._node._properties._data.value,
'_blank');
}
This function get the value property of the treeview node where the URL is stored, but unfortuanetely this doesn't work because it is stopped by the IE popup blocker.
I suppose I could create a unique context menu for every single node - but there might be hundreds of nodes and I worry this would make things slow.
Please can you think of a way I can solve this problem?
Many thanks for your help