Telerik Forums
UI for ASP.NET AJAX Forum
2 answers
212 views
Using your sample I built a custom data provider.  Everythig works except when I try to use resources.

  In your sample you make a trip to the database to fetch the Classes.  Then you make another trip to get the resources. Then you make another trip to align the resources and classes. 

  I use a stored procedure that when I fetch my appointments ( your classes) I also have the resource ID for each appointment in said dataset.  I call LoadResources like the sample. 

  What I am having a problem with is how to align my 2 datasets using 

//Resource site = apt.Owner.Resources.GetResource("Site", ????);

 Here is my code if anybody can help I could move n with my 2 day hang up.

Default.aspx.cs

protected void Page_Load(object sender, EventArgs e)
{
RadScheduler1.GroupBy = "Site";
}

Provived Code

      public override IEnumerable<Appointment> GetAppointments(RadScheduler owner)
        {
            List<Appointment> appointments = new List<Appointment>();

   //Code removed for security, This is how I get my dataset

            DB.m_da = das;

            DataSet ds = new DataSet("Patients");
            DB.m_da.SetRead("[pWebApptsDay]", 0);

            SqlParameter pday = new SqlParameter("@day", System.Data.SqlDbType.VarChar);
            pday.Value = DateTime.Today;
            DateTime dt = DateTime.Today;
            DB.m_da.AddParam(pday);
            DB.m_da.Run(ref ds);

            System.Data.DataRow[] rows = ds.Tables[0].Select(null, null, System.Data.DataViewRowState.CurrentRows);

            foreach (DataRow row in rows)
            {
                Appointment apt = new Appointment();
                apt.Owner = owner;
                DateTime st = new DateTime();
                DateTime et = new DateTime();
                st = (DateTime)(row.ItemArray.GetValue(2));
                et = st.AddMinutes((int)row.ItemArray.GetValue(3));
                System.Drawing.Color color = ColorTranslator.FromWin32((int)row.ItemArray.GetValue(4));

                //trap for bad data IE Nulls
                if (String.IsNullOrEmpty(row.ItemArray.GetValue(5).ToString()))
                    apt.Subject = "Bad Appointment Data Contact Tims Support Appointment id =" + row.ItemArray.GetValue(0).ToString();
                else
                    apt.ID = row.ItemArray.GetValue(0).ToString();
                apt.Subject = (String)row.ItemArray.GetValue(5);
                apt.Start = Convert.ToDateTime(((DateTime)row.ItemArray.GetValue(2)).ToShortDateString() +
                    " " + ((DateTime)row.ItemArray.GetValue(2)).ToShortTimeString());
                apt.End = (apt.Start.AddMinutes((int)row.ItemArray.GetValue(3)));
                apt.BorderColor = color;

                LoadResources(apt);
                //Resource site = apt.Owner.Resources.GetResource("Site", ????);
                apt.Resources.Add(site);

                appointments.Add(apt);
               

            }
            return appointments;

       }
        public override void Insert(RadScheduler owner, Appointment appointmentToInsert)
        {
        }

        public override void Update(RadScheduler owner, Appointment appointmentToUpdate)
        {
        }

        public override void Delete(RadScheduler owner, Appointment appointmentToDelete)
        {
        }

        public override IEnumerable<ResourceType> GetResourceTypes(RadScheduler owner)
        {
            ResourceType[] resourceTypes = new ResourceType[3];
            resourceTypes[0] = new ResourceType("Site", true);
            resourceTypes[1] = new ResourceType("Provider", true);
            resourceTypes[2] = new ResourceType("Resource", true);

            return resourceTypes;
        }

        public override IEnumerable<Resource> GetResourcesByType(RadScheduler owner, string resourceType)
        {
            switch (resourceType)
            {
                case "Site":
                    return GetSite();

                case "Provider":
                    return GetProvider();

                case "Resource":
                    return GetResource();

                default:
                    throw new InvalidOperationException("Unknown resource type: " + resourceType);
            }

        }

        private IEnumerable<Resource> GetSite()
        {
            List<Resource> resources = new List<Resource>();

  //Code removed for security, This is how I get my dataset

            DB.m_da = das;

            DataSet ds = new DataSet("Resources");
            DB.m_da.SetRead("[pWebApptResourceFetch]", 0);

            SqlParameter type = new SqlParameter("@ResourceType", System.Data.SqlDbType.VarChar);
            type.Value = "Site";
            DB.m_da.AddParam(type);
            DB.m_da.Run(ref ds);

            System.Data.DataRow[] rows = ds.Tables[0].Select(null, null, System.Data.DataViewRowState.CurrentRows);

            foreach (DataRow row in rows)
            {
                Resource res = new Resource();
                res.Type = "Site";
                res.Key = row.ItemArray.GetValue(0).ToString();
                res.Text = row.ItemArray.GetValue(1).ToString(); ;
                //res.Attributes["Phone"] = Convert.ToString(reader["Phone"]);
                resources.Add(res);
            }

            return resources;
        }


Thanks for any help :)

Bruce St.Clair
Top achievements
Rank 2
 answered on 04 Aug 2008
0 answers
94 views
Hi,

       Is there a way for the text in a RadTreeNode to have different styles. I want the node to be something like this - (Person name - date - status) but I want the "status" text to be bold and red. Is there a way to do this.

Thanks,
Jayvr
jayvr
Top achievements
Rank 1
 asked on 04 Aug 2008
2 answers
208 views
Hello,

Do you know the best way of preventing the appointment conflict while creating a Recurring appointment?

For example, let see if I already have a resource reserved for 08/1/2008 between 9AM to 12PM on Friday .
When I try to create a new appointment with the same resource today as a recurrning appointment, Weekly, Every Friday, 10 occurences.  Now, it should not let me create the appointment since there is a conflict.

I will really appereciate if you can either direct me what to do here or show a some sort of example.

Thank you,
-Salman
salman
Top achievements
Rank 1
 answered on 04 Aug 2008
1 answer
172 views
I have a column that stores html content. How to display that content in the rotator?
Shaun Peet
Top achievements
Rank 2
 answered on 04 Aug 2008
7 answers
306 views
I am trying to populate an arraylist from the list of items in the gridview.

Here is the code I am using to do this in the RadGrid_ItemDataBound Sub.

  If (TypeOf (e.Item) Is GridDataItem) Then
            If DocumentList Is Nothing Then
                DocumentList = New ArrayList
            End If

            DocumentList.Add(e.Item.DataItem(0))
        End If

This should work, but it populates the arraylist with the data twice.  Not sure what is going on here and any help would be appreciated. 

One example would be this.  If the DocumentID is 8.  Then it will add 8 twice to the array list instead of once.  This even occurs if you put If not ispostaback around the if statement.

Thanks in advance.
David
Top achievements
Rank 1
 answered on 04 Aug 2008
5 answers
579 views
I found example code of how to change the label text for the advanced items in the pager.  Would the same code work to change the "Change Page" text  and the "Displaying Page" text on the standard pager?  And what would be the name of those labels?

protected void RadGrid_Subs_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)  
    {  
        if (e.Item is GridPagerItem)  
        {  
            Label changePageLabel = (Label)e.Item.FindControl("GoToPageLabel");  
            changePageLabel.Visible = false;  
        }  
    } 

Thanks.
Daniel
Telerik team
 answered on 04 Aug 2008
2 answers
176 views
I have a user control that calls a javascript function that is called from my master page.  When I run the user control on a page that does not use radajax, the client javascript function of the user control gets executed just fine.  However, when I run the user control on a page that ajaxifies it, I get a javascript error saying "Object Expected".

Here is the snippet of code from my usercontrol.ascx file:

<

script type="text/javascript">

loadCalendar();

</

script>

<

asp:textbox id="txt_Date" Columns="6" Width=66 runat="server" CssClass="Textbox"></asp:textbox>

<asp:hyperlink id="imgCalendar" runat="server" ImageUrl="../images/smallcalendar.gif" NavigateUrl="javascript:;"></asp:hyperlink>

Here is a snippet of code from my usercontrol .ascx.vb file:

Private

Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim scriptStr As String = _

"javascript:return popUpCalendar(this," & getClientID() & ", 'mm/dd/yyyy', '__doPostBack(\'" & getClientID() & "\')')"

imgCalendar.Attributes.Add(

"onclick", scriptStr)

End Sub

The master page includes the following line of code that holds the popUpCalendar function refered to in the usercontrol .ascx.vb codebehind file:

<script type="text/javascript" language="javascript" src="cal/popcalendar.js"></script>

My aspx page that uses the usercontrol does so as follows:

<

asp:Panel ID="pnlOwnerBeginDate" runat="server"><uc1:DateSelector ID="dsOwnerBeginDate" runat="server" /></asp:Panel>

Then I have a RadAjaxManager on the same .aspx page that updates the pnlOwnerBeginDate as follows:

<

radA:AjaxSetting AjaxControlID="btnSearch">

<UpdatedControls>

<radA:AjaxUpdatedControl ControlID="pnlSupplierInfo_Outer" LoadingPanelID="AjaxLoadingPanelLoad" />

<radA:AjaxUpdatedControl ControlID="pnlTop_Outer" />

<radA:AjaxUpdatedControl ControlID="pnlLabels" />

<radA:AjaxUpdatedControl ControlID="lblNew" />

<radA:AjaxUpdatedControl ControlID="lblInstructions" />

<radA:AjaxUpdatedControl ControlID="pnlOwnerBeginDate" />

</UpdatedControls>

</radA:AjaxSetting>

When btnSearch is clicked on my .aspx page, the popUpCalendar javascript function is not found.  Can you help me figure out what I am missing or doing wrong?

Thanks
Jill

Jill
Top achievements
Rank 1
 answered on 04 Aug 2008
1 answer
99 views
Hi
I have a red combobox and one RadDockableObject , in RadDockableObject value change according to value selected from combobox, but there is a problem first time RadDockableObject is visible but second time if i select different value from combobox then  RadDockableObject don't visible , third time it's visible forth time not .

if i put RadDockableObject in radDockZone it works fine , but it taker space .
I want  to save space . It should be on be top of all controls .

Thanks

ajay tomer
Sophy
Telerik team
 answered on 04 Aug 2008
3 answers
145 views

Hi All,

I am using RadControl asp.net ajax Q1 2008 and asp.net 3.5

In my application ,i am using radajaxmanager,radajaxloadingpanel,radtabstrip.

I used 4 tab and on each tab grid is there.
on each tab grid  loads.
 To have loading panel on grid load i used the following code

On aspx file
I added code as
<script>
 window.onload = function()
            {
               if ('<%= Session("TabClick") %>'=="true")
               {
                setTimeout( function(){
                $find("<%= rdAjaxManagerHistoryGrid.ClientID %>").ajaxRequest("InitialPageLoad");
                }, 200);
                }
                
                
            }
</script>
 Here  Session("TabClick")  variable set on tab click and on initial page load.

The code behind file code are

Protected Sub rdAjaxManagerHistoryGrid_AjaxRequest(ByVal sender As Object, ByVal e As Telerik.Web.UI.AjaxRequestEventArgs) Handles rdAjaxManagerHistoryGrid.AjaxRequest

                if e.Argument = "InitialPageLoad" Then

                 If rtabCall.SelectedIndex = 0 Then
                    rdAjaxManagerHistoryGrid.AjaxSettings.AddAjaxSetting(rdAjaxManagerHistoryGrid, rGridAccounts, LoadingPnlCustom)

                   rGridAccounts.DataSource = Me.AccountsData
                    rGridAccounts.Rebind()
                 end if
             end if
end sub

    rdAjaxManagerHistoryGrid.AjaxSettings.AddAjaxSetting(rdAjaxManagerHistoryGrid, rGridAccounts, LoadingPnlCustom) line is also added on pageload and tab click event.


Query

It shows the loading panel on alternate times.
When i am on tab 1 it shows the loading panel and when go to second tab it also shows the loading panel.
But when i came back to first tab it is not showing the loading panel. And then again go to next tab and come to first tab it showing the loading panel


I want to show loading panel on each tab click.


Thanking you.





 

Daniel
Telerik team
 answered on 04 Aug 2008
3 answers
155 views
I'm building up the menu and our designers have created a background that needs to be visible when the user had clicked into that section. Our menu is blue with a yellow div panel below so when they are 'in' a particular section the menu item should go yellow to look like it flows into the panel below (a bit like a cut out). Say for example my menu has 2 root items called Section 1 and Section 2. If the user selects either item or any child items they will get transfered to the relevant page. When that page loads I need to change the background of the selected section to the yellow background. My menu structure is currently stored in an XML file, is it possible for me to do this? I'm thinking I can determine which section they are in by creating folders that match the Section names and then reading the url and then somehow matching the rootgroup names to the folder they are in before changing the css style but I don't know how or if it is possible? Is there some kind of OnItemDatabound or something or is there a better way?

Can anyone help?

Lloyd
Yana
Telerik team
 answered on 04 Aug 2008
Narrow your results
Selected tags
Tags
+? more
Top users last month
Shiori
Top achievements
Rank 2
Iron
Tien
Top achievements
Rank 1
Iron
Robert
Top achievements
Rank 1
Rob
Top achievements
Rank 4
Bronze
Bronze
Iron
Geoff
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Shiori
Top achievements
Rank 2
Iron
Tien
Top achievements
Rank 1
Iron
Robert
Top achievements
Rank 1
Rob
Top achievements
Rank 4
Bronze
Bronze
Iron
Geoff
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?