Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
534 views
Hi,
I'm building a web-based enterprise CRM using Google Apps for our email and calendar back-end. I'm very interested in implementing a Telerik scheduler that uses the Google API to read and update event information. Google has a .NET library for handling the API calls:
http://code.google.com/apis/gdata/client-cs.html
http://code.google.com/apis/calendar/developers_guide_protocol.html#AuthClientLogin

My question is, can I take the the feed for an event list, as it's returned by the Google Data API, and pass it into Telerik scheduler for display? The feed looks something like this:

<feed xmlns='http://www.w3.org/2005/Atom'
    xmlns:gd='http://schemas.google.com/g/2005'>
  <id>http://www.google.com/calendar/feeds/jo@gmail.com/private-magicCookie/full</id>
  <updated>2006-03-29T07:35:59.000Z</updated>
  <title type='text'>Jo March</title>
  <subtitle type='text'>This is my main calendar.</subtitle>
  <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml'
    href='http://www.google.com/calendar/feeds/jo@gmail.com/private-magicCookie/full'></link>
  <link rel='self' type='application/atom+xml'
    href='http://www.google.com/calendar/feeds/jo@gmail.com/private-magicCookie/full'></link>
  <author>
    <name>Jo March</name>
    <email>jo@gmail.com</email>
  </author>
  <generator version='1.0' uri='http://www.google.com/calendar/'>CL2</generator>
  <gd:where valueString='California'></gd:where>
  <entry>
    <id>http://www.google.com/calendar/feeds/jo@gmail.com/private-magicCookie/full/entryID</id>
    <published>2006-03-30T22:00:00.000Z</published>
    <updated>2006-03-28T05:47:31.000Z</updated>
    <category scheme='http://schemas.google.com/g/2005#kind'
      term='http://schemas.google.com/g/2005#event'></category>
    <title type='text'>Lunch with Darcy</title>
    <content type='text'>Lunch to discuss future plans.</content>
    <link rel='alternate' type='text/html'
      href='http://www.google.com/calendar/event?eid=aTJxcnNqbW9tcTJnaTE5cnMybmEwaW04bXMgbWFyY2guam9AZ21haWwuY29t'
      title='alternate'></link>
    <link rel='self' type='application/atom+xml'
      href='http://www.google.com/calendar/feeds/jo@gmail.com/private-magicCookie/full/entryID'></link>
    <author>
      <name>Jo March</name>
      <email>jo@gmail.com</email>
    </author>
    <gd:transparency
      value='http://schemas.google.com/g/2005#event.opaque'></gd:transparency>
    <gd:eventStatus
      value='http://schemas.google.com/g/2005#event.confirmed'></gd:eventStatus>
    <gd:comments>
      <gd:feedLink
        href='http://www.google.com/calendar/feeds/jo@gmail.com/private-magicCookie/full/entryID/comments/'></gd:feedLink>
    </gd:comments>
    <gd:when startTime='2006-03-30T22:00:00.000Z'
      endTime='2006-03-30T23:00:00.000Z'></gd:when>
    <gd:where></gd:where>
  </entry>
</feed>


...thanks for your help!
Peter
Telerik team
 answered on 21 Mar 2008
4 answers
196 views
Firefox 3 is rapidly nearing release. What is Telerik's road map for achieving compatibility with Firefox 3? Using Prometheus Q3, I see some breaking problems with the combo box control. It seems to be a JavaScript issue, probably due to Fx3's support of JS 1.8. I have some large customers that are wondering when we'll be supporting Fx3, and I would like to see where you guys are at with that. Thanks!
Helen
Telerik team
 answered on 21 Mar 2008
1 answer
134 views
Hello,

I have added NodeExpand event handler to my tree.
tree.NodeExpand += new RadTreeViewEventHandler(Tree_NodeExpand)

When I click on expand (+) button, then NodeExpand event is fired and Tree_NodeExpand method is performed.

But if I open node by calling expand() method at client side, then node is expanded but tree's NodeExpand event is not fired and event handler is not performed.

ExpandMode of my nodes is ServerSide and I work with RadAjaxManager and RadTreeView controls of Prometheus for ASP.NET.

How may I fix the problem?

Thanks,
Olga
Veselin Vasilev
Telerik team
 answered on 21 Mar 2008
0 answers
119 views
I tried searching but I couldn't find anything adding an image for the current node. I came up with this code which will add an image to the current node. I bet someone is going to responsd with an easier way to do this too lol.

Protected Sub RadMenu1_NodeCreated(ByVal sender As Object, ByVal e As Telerik.Web.UI.RadTreeNodeEventArgs) Handles RadMenu1.NodeCreated

If Request.Url.AbsolutePath.Contains(e.Node.NavigateUrl.Remove(0, 1)) Then

e.Node.ImageUrl =

"images/yourimage.jpg"

End If

End Sub

Chuck
Top achievements
Rank 1
 asked on 21 Mar 2008
13 answers
1.5K+ views
I am currently using RadGrid for ASP.NET in my production environment and am trying to make the transition to the Prometheus controls, specifically with the RadGrid control.

I have created a custom skin using the Office2007 as a template and changing minor things like font size, color, some images, etc. For the row css classes, the only difference between GridRow and GridAltRow is the background colour (white or gray) and font colour.

.GridRow_TelerikCustomSkin td 
{ 
    background-color:White; 
    color: #333333; 
    border-bottom: 1px solid #dedede; 
    border-right: 1px solid white; 
    padding-top:4px; 
    padding-bottom:4px; 
} 
 
.GridAltRow_TelerikCustomSkin td 
{ 
    background-color:#f2f2f2; 
    border-right: solid 1px #f2f2f2; 
    border-bottom: solid 1px #dedede; 
    padding-top:4px; 
    padding-bottom:4px; 
} 

In the current version of RadGrid for ASP.NET, I can customize the cssclass for certain records in the ItemDataBound event (e.g. showing cancelled records in red font, etc.) A custom cssclass like statusPurchaseOrderCancelled would look like this -

.statusPurchaseOrderCancelled td 
{ 
    color: red;     
    font-style: italic; 
} 

The original skin cssclass for each row would be preserved such that if it is a GridRow, it would still show up with a white background and the new red and italic font and if it is a GridAltRow, it would show up with a gray background with the new red and italic font. So the statusPurchaseOrderCancelled cssclass seemed to be APPENDED to any existing ones.

Unfortunately the new Prometheus controls don't work the same way and instead the new cssclass REPLACES the original GridRow_TelerikCustomSkin or GridAltRow_TelerikCustomSkin so that the default background colour, row height and padding is lost. In order to preserve the existing styling functionality I would have to create two css classes for every record "status" with each one duplicating the properties of the original class except for font color. For example there would be a statusPurchaseOrderCancelled_GridRow and statusPurchaseOrderCancelled_GridAltRow and I would have to add case statements in the ItemDataBound event to determine which one to use.

Is this the intended functionality of the Prometheus controls?


Dimo
Telerik team
 answered on 21 Mar 2008
1 answer
79 views
I need some help in determining what the best method is for generating a pop-up, context-like menu for items in a grid would be.

I have a grid that is populated with files.  What I'd like to do is have an AJAX'ed pop-up when a user clicks on a row in the grid (or possibly even just on row hover - I haven't totally made up my mind yet).  Based on certain conditions of the row, the pop-up will display certain actions that the user can do (ie - "Delete File", "Move File". "Open File", etc).  So, whatever the ultimate solution is, the pop-up should be created on the fly via AJAX, rather than created before.

My first inclination is to use the ToolTip due to the fact that it seems like there is more control over this and I like the appearance of this more than the Menu.  The biggest question, however, is will using a ToolTip ultimately be more difficult to accomplish than using a Menu?

Also, I'm having a little trouble determining exactly how to wire all this together, so any pointers on required components/methods to use would be greatly appreciated.

Thanks in advance,
Ryan
Sebastian
Telerik team
 answered on 21 Mar 2008
1 answer
151 views
Hi everyone!

In my site, you can make some queries against a database. After the search you're redirected to a searchResults.aspx and a querystring parameter is passed along with the search criteria.

I really need to have the "special" caracters not encoded, and it's working great.

The problem is that if I'm redirected to a result page with the following querystring param...

http://localhost:1504/wwwroot/searchResults.aspx?q=OiqfgWbKF+Cj00+gMYgbZ89dQs8C3h2FAKVvKAvzbNQmzlu5Oikn/19VPTUpq8MFl0okjNo1pKOPsM4ynr/DQg==


... the paging on the results Grid doesn't work anymore because it changes the special characters (for example: the equal sign "=" is encoded to "%3d")
to:

http://localhost:1504/wwwroot/searchResults.aspx?q=OiqfgWbKF+Cj00+gMYgbZ89dQs8C3h2FAKVvKAvzbNQmzlu5Oikn%2f19VPTUpq8MFl0okjNo1pKOPsM4ynr%2fDQg%3d%3d

Does anyone know how can I avoid this behaviour? I mean, can the paging mechanism keep my original URL without encoding it?

Thanks!
Rosen
Telerik team
 answered on 21 Mar 2008
1 answer
166 views
i'm completing the process of moving existing grid's to prometheus and have found that the asp.net version of grid would set the class of each cell in the grid footer row as well as setting the class for the <tr> row tag.

in prometheus, this isn't happening.

  <tr class="GridFooter_Grid">
   <td class="GridFooter_Grid">&nbsp;</td>

in prometheus this comes out as:
  <tr class="GridFooter_Grid">
   <td>&nbsp;</td>

internet explorer then gets choosy about setting borders on the footer. my grid skin sets a border-top which no longer appears (this is after adding the style into the skin as "tr.GridFooter_Grid" to go with the existing "td.GridFooter_Grid" - before i added that, the footer wasnt being styled at all).

any ideas?

Pavel
Telerik team
 answered on 21 Mar 2008
1 answer
103 views
Is there a way to programatically activate the premium Rad Editor for MOSS 2007? I have more than a hundred websites and that's a lot of clicks.
Rumen
Telerik team
 answered on 21 Mar 2008
3 answers
169 views
Using Q3-2007 1218 + hotfix.
I am having difficulties getting a custom object collection to sort, or more correclty to sort when paging to Page 2+.  From reading the docs this should ok since I am using the OnNeedDataSource to wire up the source and am using the supported IList binding.  According to the docs if done this way all sorting etc should be handled.

The custom collection will sort when the header is changed to either ascending or descending order correctly, but when using the paging control to move beyond page1 the dataset does not page at all.  When the datasource is a datatable the problem does not occur.

is there something I am missing?

Thanks,
Jason



using System;
using System.Collections.Generic;
using System.Data;
using System.Web.UI;
using Telerik.Web.UI;

namespace Test
{
    public partial class Test : Page
    {
        public string _alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

        protected void Page_Load(object sender, EventArgs e)
        {
        }

        /// <summary>
        /// Handles the ItemDataBound1 event of the RadGrid control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="T:Telerik.WebControls.GridItemEventArgs"/> instance containing the event data.</param>
        protected void Grid_ItemDataBound(object sender, GridItemEventArgs e)
        {
        }

        /// <summary>
        /// Handles the PageIndexChanged event of the RadGrid control.
        /// </summary>
        /// <param name="source">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        protected void Grid_PageIndexChanged(object source, GridPageChangedEventArgs e)
        {
        }

        public List<Thing> ObjectList()
        {
            List<Thing> list = new List<Thing>();
            foreach (char c in _alphabet)
            {
                string str = c.ToString();
                list.Add(new Thing(str));
            }
            return list;
        }

        public DataTable ObjectListAsDataTable()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("Name", typeof (string));
            List<Thing> list = ObjectList();
            foreach (Thing t in list)
            {
                DataRow row = dt.NewRow();
                row["Name"] = t.Name;
                dt.Rows.Add(row);
            }
            return dt;
        }

        protected void Grid_NeedDataSource3(object source, GridNeedDataSourceEventArgs e)
        {
            uxGrid3.DataSource = ObjectList();
        }

        protected void Grid_NeedDataSource4(object source, GridNeedDataSourceEventArgs e)
        {
            uxGrid4.DataSource = ObjectListAsDataTable();
        }
    }

   
    public class Thing
    {
        public Thing(string name)
        {
            _name = name;
        }

        private string _name;
        public string Name
        {get
        {
            return _name;
        }
            set { _name = value;}
           
        }
    }
}



============================== aspx




<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="Test" %>
<%@ Import namespace="Telerik.Web.UI"%>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<html>
<head><title>Test</title></head>
<body>
<form runat="server" id="form1">
<asp:ScriptManager runat="server" ID="uxScriptManager"></asp:ScriptManager>
    <div>
    <telerik:RadAjaxManager ID="uxRadAjaxManager" runat="server">
       <AjaxSettings>
           <telerik:AjaxSetting AjaxControlID="uxGrid3">
               <UpdatedControls>
                   <telerik:AjaxUpdatedControl ControlID="uxGrid3" LoadingPanelID="uxRadAjaxLoadingPanel"/>
               </UpdatedControls>
           </telerik:AjaxSetting>
           <telerik:AjaxSetting AjaxControlID="uxGrid4">
           <UpdatedControls>
                   <telerik:AjaxUpdatedControl ControlID="uxGrid4" LoadingPanelID="uxRadAjaxLoadingPanel"/>
             </UpdatedControls>
           </telerik:AjaxSetting>
       </AjaxSettings>
   </telerik:RadAjaxManager>
   <telerik:RadAjaxLoadingPanel ID="uxRadAjaxLoadingPanel" runat="server" Height="75px" Width="75px" Transparency="25">
       <img alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>' style="border:0;" />
   </telerik:RadAjaxLoadingPanel>

    After sorting, I Don't Work on Page 2. I am using a IList
<telerik:RadGrid EnableViewState="true" ID="uxGrid3" runat="server"
            ShowFooter="True" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" CssClass="RadGrid"
            ShowGroupPanel="False" MasterTableView-DataKeyNames="Name" HorizontalAlign="NotSet" Skin="Telerik" OnNeedDataSource="Grid_NeedDataSource3">
            <MasterTableView
                PageSize="10" GridLines="Vertical" DataKeyNames="Name"
                CommandItemDisplay="Bottom" HorizontalAlign="NotSet" AllowFilteringByColumn="False">
              <HeaderStyle CssClass="GridHeader" ></HeaderStyle>
                <RowIndicatorColumn UniqueName="RowIndicator" Visible="False">
                    <HeaderStyle Width="10px" />
                </RowIndicatorColumn>
                <Columns>
                <telerik:GridBoundColumn DataField="Name" DataType="System.String" HeaderText="Test" SortExpression="Name" UniqueName="LocDesc"></telerik:GridBoundColumn>
                    <telerik:GridTemplateColumn UniqueName="Name"
                        SortExpression="Name" HeaderText="Site">
                        <ItemTemplate>
                            <%# Eval("Name") %>
                        </ItemTemplate>
                    </telerik:GridTemplateColumn>
                    </Columns>
                    </MasterTableView>
                    </telerik:RadGrid>

After sorting I work Fine, I am a datatable client.
<telerik:RadGrid EnableViewState="true" ID="uxGrid4" runat="server"
            ShowFooter="True" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" CssClass="RadGrid"
            ShowGroupPanel="False" MasterTableView-DataKeyNames="Name" HorizontalAlign="NotSet" Skin="Telerik" OnNeedDataSource="Grid_NeedDataSource4">
            <MasterTableView
                PageSize="10" GridLines="Vertical" DataKeyNames="Name"
                CommandItemDisplay="Bottom" HorizontalAlign="NotSet" AllowFilteringByColumn="False">
              <HeaderStyle CssClass="GridHeader" ></HeaderStyle>
                <RowIndicatorColumn UniqueName="RowIndicator" Visible="False">
                    <HeaderStyle Width="10px" />
                </RowIndicatorColumn>
                <Columns>
                <telerik:GridBoundColumn DataField="Name" DataType="System.String" HeaderText="Test" SortExpression="Name" UniqueName="LocDesc"></telerik:GridBoundColumn>
                    <telerik:GridTemplateColumn UniqueName="Name"
                        SortExpression="Name" HeaderText="Site">
                        <ItemTemplate>
                            <%# Eval("Name") %>
                        </ItemTemplate>
                    </telerik:GridTemplateColumn>
                    </Columns>
                    </MasterTableView>
                    </telerik:RadGrid>
    </div>
</form>
</body>
</html>


Ves
Telerik team
 answered on 21 Mar 2008
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jake
Top achievements
Rank 1
RBarnes
Top achievements
Rank 1
Iron
Iron
Rami
Top achievements
Rank 1
Iron
Veteran
Nathan
Top achievements
Rank 1
Kumeri
Top achievements
Rank 1
Iron
Veteran
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jake
Top achievements
Rank 1
RBarnes
Top achievements
Rank 1
Iron
Iron
Rami
Top achievements
Rank 1
Iron
Veteran
Nathan
Top achievements
Rank 1
Kumeri
Top achievements
Rank 1
Iron
Veteran
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?