Telerik Forums
UI for ASP.NET AJAX Forum
2 answers
144 views

Good day there, I have recently started using Telerik Radcontrols and I must say they are awesome. Since I am still new at this, I have been experiencing a problem loading data in Hierarchy mode "old master detail" style in my grid. I have done reading and research but can't seem to get it right. Could you please assist me :)

Here are the details. I would like to load a grid, displaying companies, and on the following hierarchy, customers that belong to this company. I have a customer table, a company table, and a customer_company table that links the two with a companyid and a customer id.

Here is my aspx.

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Company.aspx.cs" Inherits="_Default" Title="Untitled Page" %>

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<br /><br /><br /><br /><br /><br />
<telerik:RadGrid ID="RadGrid1" runat="server" GridLines="None" AllowCustomPaging="True" AllowPaging="True" OnItemCommand="RadGrid1_ItemCommand" Skin="WebBlue">
<HeaderContextMenu EnableTheming="True">
<CollapseAnimation Duration="200" Type="OutQuint" />
</HeaderContextMenu>
<ClientSettings AllowExpandCollapse="True">
</ClientSettings>
<MasterTableView AllowMultiColumnSorting="True" HierarchyLoadMode="client" HierarchyDefaultExpanded="true" DataSourceID="SqlDataSource1" CommandItemDisplay="Top" AllowFilteringByColumn="True" AutoGenerateColumns="False" DataKeyNames="com_cde" AllowSorting="True">
<RowIndicatorColumn>
<HeaderStyle Width="20px" />
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px" />
</ExpandCollapseColumn>
<DetailTables>
<telerik:GridTableView DataKeyNames="com_cde" DataSourceID="SqlDataSource1" Width="100%" runat="server">
<ParentTableRelation>
<telerik:GridRelationFields DetailKeyField="com_cde" MasterKeyField="com_cde" />
</ParentTableRelation>
<DetailTables>
<telerik:GridTableView DataKeyNames="cnt_prs_cde" DataSourceID="SqlDataSource3" Width="100%" runat="server">
<ParentTableRelation>
<telerik:GridRelationFields DetailKeyField="cnt_prs_cde" MasterKeyField="cnt_prs_cde" />
</ParentTableRelation>
<Columns>
<telerik:GridEditCommandColumn></telerik:GridEditCommandColumn>
<telerik:GridClientDeleteColumn ConfirmText="Are you sure you wish to delete this contact person?" ConfirmTitle="Delete contact person" Text="Delete" UniqueName="column"></telerik:GridClientDeleteColumn>
<telerik:GridBoundColumn DataField="cnt_prs_cde" DataType="System.Int32" HeaderText="Code"
ReadOnly="True" SortExpression="cnt_prs_cde" UniqueName="cnt_prs_cde">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_nme" HeaderText="Name" SortExpression="cnt_prs_nme"
UniqueName="cnt_prs_nme">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_sur_nme" HeaderText="Surname"
SortExpression="cnt_prs_sur_nme" UniqueName="cnt_prs_sur_nme">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_cel_nbr" HeaderText="Cell number"
SortExpression="cnt_prs_cel_nbr" UniqueName="cnt_prs_cel_nbr">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_fax_nbr" HeaderText="Fax number"
SortExpression="cnt_prs_fax_nbr" UniqueName="cnt_prs_fax_nbr">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_eml_adr_wrk" HeaderText="Work email"
SortExpression="cnt_prs_eml_adr_wrk" UniqueName="cnt_prs_eml_adr_wrk">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_eml_adr_alt" HeaderText="Alternatative email"
SortExpression="cnt_prs_eml_adr_alt" UniqueName="cnt_prs_eml_adr_alt">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="cnt_prs_wrk_nbr" HeaderText="Work number"
SortExpression="cnt_prs_wrk_nbr" UniqueName="cnt_prs_wrk_nbr">
</telerik:GridBoundColumn>
<telerik:GridCheckBoxColumn DataField="acv_ind" DataType="System.Boolean" HeaderText="Active"
SortExpression="acv_ind" UniqueName="acv_ind">
</telerik:GridCheckBoxColumn>
</Columns>
</telerik:GridTableView>
</DetailTables>
<Columns>
<telerik:GridEditCommandColumn></telerik:GridEditCommandColumn>
<telerik:GridClientDeleteColumn ConfirmText="Are you sure you wish to delete this company?" ConfirmTitle="Delete company" Text="Delete" UniqueName="column"></telerik:GridClientDeleteColumn>
<telerik:GridBoundColumn DataField="com_cde" DataType="System.Int32" HeaderText="Code"
ReadOnly="True" SortExpression="com_cde" UniqueName="com_cde">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="com_nme" HeaderText="Name" SortExpression="com_nme"
UniqueName="com_nme">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="com_reg_nbr" HeaderText="Registration no" SortExpression="com_reg_nbr"
UniqueName="com_reg_nbr">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="com_inc_dte" DataType="System.DateTime" HeaderText="Incorporation date"
SortExpression="com_inc_dte" UniqueName="com_inc_dte">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="com_inc_tax_nbr" HeaderText="Incorporation tax no"
SortExpression="com_inc_tax_nbr" UniqueName="com_inc_tax_nbr">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="com_vat_nbr" HeaderText="Vat no" SortExpression="com_vat_nbr"
UniqueName="com_vat_nbr">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="com_paye_nbr" HeaderText="Paye nr" SortExpression="Paye nr"
UniqueName="com_paye_nbr">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="acv_ind" DataType="System.Int32" HeaderText="Active"
SortExpression="acv_ind" UniqueName="acv_ind">
</telerik:GridBoundColumn>
</Columns>
</telerik:GridTableView>
</DetailTables>
<EditFormSettings>
<EditColumn UniqueName="EditCommandColumn1">
</EditColumn>
</EditFormSettings>
</MasterTableView>
<FilterMenu EnableTheming="True">
<CollapseAnimation Duration="200" Type="OutQuint" />
</FilterMenu>
<AlternatingItemStyle BackColor="White" VerticalAlign="Middle" />
</telerik:RadGrid><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:AccbizConnectionString %>"
DeleteCommand="spAccbiz_company_delete" DeleteCommandType="StoredProcedure" InsertCommand="spAccbiz_company_insert"
InsertCommandType="StoredProcedure" SelectCommand="spAccbiz_get_company" SelectCommandType="StoredProcedure"
UpdateCommand="spAccbiz_company_update" UpdateCommandType="StoredProcedure">
<DeleteParameters>
<asp:Parameter Name="com_cde" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="com_cde" Type="Int32" />
<asp:Parameter Name="com_nme" Type="String" />
<asp:Parameter Name="com_reg_nbr" Type="String" />
<asp:Parameter Name="com_inc_dte" Type="DateTime" />
<asp:Parameter Name="com_inc_tax_nbr" Type="String" />
<asp:Parameter Name="com_vat_nbr" Type="String" />
<asp:Parameter Name="com_paye_nbr" Type="String" />
<asp:Parameter Name="com_typ_cde" Type="Int32" />
<asp:Parameter Name="acv_ind" Type="Boolean" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="com_nme" Type="String" />
<asp:Parameter Name="com_reg_nbr" Type="String" />
<asp:Parameter Name="com_inc_dte" Type="DateTime" />
<asp:Parameter Name="com_inc_tax_nbr" Type="String" />
<asp:Parameter Name="com_vat_nbr" Type="String" />
<asp:Parameter Name="com_paye_nbr" Type="String" />
<asp:Parameter Name="com_typ_cde" Type="Int32" />
<asp:Parameter Name="acv_ind" Type="Boolean" />
</InsertParameters>
</asp:SqlDataSource>
&nbsp;
<asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:AccbizConnectionString%>"
DeleteCommand="spAccbiz_contact_person_delete" DeleteCommandType="StoredProcedure"
InsertCommand="spAccbiz_contact_person_insert" InsertCommandType="StoredProcedure"
SelectCommand="spAccbiz_contact_person_exists" SelectCommandType="StoredProcedure"
UpdateCommand="spAccbiz_contact_person_update" UpdateCommandType="StoredProcedure">
<DeleteParameters>
<asp:Parameter Name="cnt_prs_cde" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="cnt_prs_cde" Type="Int32" />
<asp:Parameter Name="cnt_prs_nme" Type="String" />
<asp:Parameter Name="cnt_prs_sur_nme" Type="String" />
<asp:Parameter Name="cnt_prs_cel_nbr" Type="String" />
<asp:Parameter Name="cnt_prs_fax_nbr" Type="String" />
<asp:Parameter Name="cnt_prs_eml_adr_wrk" Type="String" />
<asp:Parameter Name="cnt_prs_eml_adr_alt" Type="String" />
<asp:Parameter Name="cnt_prs_wrk_nbr" Type="String" />
<asp:Parameter Name="acv_ind" Type="Boolean" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="cnt_prs_cde" Type="Int32" />
<asp:Parameter Name="cnt_prs_nme" Type="String" />
<asp:Parameter Name="cnt_prs_sur_nme" Type="String" />
<asp:Parameter Name="cnt_prs_cel_nbr" Type="String" />
<asp:Parameter Name="cnt_prs_fax_nbr" Type="String" />
<asp:Parameter Name="cnt_prs_eml_adr_wrk" Type="String" />
<asp:Parameter Name="cnt_prs_eml_adr_alt" Type="String" />
<asp:Parameter Name="cnt_prs_wrk_nbr" Type="String" />
<asp:Parameter Name="acv_ind" Type="Boolean" />
</InsertParameters>
<SelectParameters>
<asp:SessionParameter Name="com_cde" SessionField="com_cde" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
</asp:Content>

Here is examples of my sql that is executing. datasource 1 selects * from company, and datasource 2 selects * from customer where the customer code is associated with the company code in the company_customer table.

Can anybody please let me know what I am doing that is incorrect? Do I need to explicitly state a grouping field (tried, made no difference).....

Thank you in advance.

RB

Riaan
Top achievements
Rank 1
 answered on 20 Feb 2009
1 answer
115 views
Hello,

Is there a way to remove or just have one of my column headings? 

Thanks,
Michael
Bruno
Top achievements
Rank 2
 answered on 20 Feb 2009
1 answer
171 views

I have an issue where a Detail Table (GridTableView) column is being clipped by the parent RadGrid making the long field data inaccessible.
Picture

What happens here, is the width of the detail table column exceeds the width of the parent table.
In the process the data on the right gets cut off and there's no scroll bar to access that clipped data.

I have tried setting horizontal scroll bars on the RadGrid which only worked for scrolling to the parent data and
did nothing for the Detail tables, it still got clipped by the width of the parent grid.

I have also tried inserting a scrollable DIV inside the Comments field to no avail.

Is there a way to either add a scroll bar to the Detail Table?


Thanks!

Sebastian
Telerik team
 answered on 20 Feb 2009
1 answer
312 views

I am creating a site that uses RadWindows extensively and have only come to realize now that if someone presses the ESC key windows will close.  Is there anyway to prevent this behavior other than capturing and canceling the ESC key in every last RadWindow.  My site has RadWindows whose pages contain TabStrips with a RadWindow attached to each tab.  Adding the javascript event handling and canceling to every page manually seems to be a poor option.

Thanks for any advice,
Nathan
Fiko
Telerik team
 answered on 20 Feb 2009
2 answers
140 views
Can some one help me eith this problem. When I call radalert in my program I receive the following JavaScript error 

Object does not support this property or method

This is the code in my aspx page

        <telerik:RadScriptManager ID="RadScriptManager1" runat="server">
        </telerik:RadScriptManager>
        <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
        </telerik:RadAjaxManager>
        <telerik:RadWindowManager ID="Singleton" runat="server" Skin="Vista" EnableEmbeddedScripts="true">
            <Windows>
                <telerik:RadWindow ID="RadWindow1" runat="server" NavigateUrl="COBRAEvents.aspx"
                    OpenerElementID="Label1" Skin="Vista" Left="5" Top="1px" OnClientClose="OnClientclose"
                    ReloadOnShow="True" Style="display: none;" Behavior="Default" InitialBehavior="None"
                    Modal="True" VisibleStatusbar="False" Width="730px" Height="375px" ShowContentDuringLoad="False"
                    VisibleTitlebar="False">
                </telerik:RadWindow>
            </Windows>
        </telerik:RadWindowManager>
        <script type="text/javascript">
            function ShowAlert()

            {
               radalert("Data Saved Successfully",320,200,"Success");
            }
       </script>

I call the function ShowAlert() as follows
           string strSavesSuccessfully = "<script>Javascript:ShowAlert();</script>";
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "strSavesSuccessfully", strSavesSuccessfully);


Thank you
Maher


Maher
Top achievements
Rank 1
 answered on 20 Feb 2009
1 answer
92 views
I have a radGrid that is using Inline Edit. The issue here is that I'm currently using a asp:Calendar control but would like to use the rad:RadCalendar control. However when I simply replace the ASP one with the radCalendar the updateCommand no longer fires when clicking update in the current row that is in edit mode? Very strange.

Here is the Code and I've shown both Calendar controls here. The radCalendar control is currently commented out.

Thanks,

<rad:RadGrid ID="holidayRadGrid" AllowPaging="True" 
                    AllowSorting="True" GridLines="Horizontal" HorizontalAlign="Center" ShowFooter="true" 
                    ShowStatusBar="true" EnableAJAX="false" EnableAJAXLoadingTemplate="True" LoadingTemplateTransparency="25" 
                    AutoGenerateColumns="False" Skin="Grid" SkinsPath="~/App_Themes/VertexDefault" OnNeedDataSource="holidayRadGrid_NeedDataSource" 
                    OnUpdateCommand="holidayRadGrid_UpdateCommand" PageSize="18" runat="server"> 
                    <MasterTableView DataKeyNames="HolidayID,HolidayYear,HolidayDate,HolidayName" EditMode="InPlace" TableLayout="Auto" AllowNaturalSort="false" 
                        BorderColor="Black"> 
                        <Columns> 
                            <rad:GridEditCommandColumn UniqueName="EditCommandColumn" AutoPostBackOnFilter="false" HeaderStyle-Width="10px" /> 
                            <rad:GridBoundColumn HeaderStyle-Width="60px" DataField="HolidayName" HeaderText="Holiday" 
                                SortExpression="HolidayName" UniqueName="HolidayName" ReadOnly="true" /> 
                            <rad:GridTemplateColumn HeaderStyle-Width="100px" DataField="HolidayDate"   
                                SortExpression="HolidayDate" UniqueName="HolidayDate" > 
                                <ItemTemplate> 
                                    <asp:Label ID="holidayDateLabel" Text='<%# (DateTime) Eval("HolidayDate") == DateTime.MinValue ? ValidDate.ToString() : String.Format("{0:MM/dd/yyyy}", Eval("HolidayDate")) %>' runat="server" /> 
                                </ItemTemplate> 
                                <EditItemTemplate> 
                                   <asp:Calendar ID="holidayDateCalendar" SelectedDate='<%# (DateTime) Eval("HolidayDate") == DateTime.MinValue ? ValidDate : Eval("HolidayDate") %>'  VisibleDate='<%# (DateTime) Eval("HolidayDate") == DateTime.MinValue ? ValidDate : Eval("HolidayDate") %>' runat="server" /> 
                                   <%--<rad:RadCalendar ID="holidayDateCalendar" AutoPostBack="true" EnableMultiSelect="false" SelectedDate='<%# (DateTime) Eval("HolidayDate") == DateTime.MinValue ? ValidDate : Eval("HolidayDate") %>'  VisibleDate='<%# (DateTime) Eval("HolidayDate") == DateTime.MinValue ? ValidDate : Eval("HolidayDate") %>' runat="server" />--%> 
                                </EditItemTemplate> 
                            </rad:GridTemplateColumn> 
                            <rad:GridBoundColumn DataField="HolidayID" UniqueName="HolidayID" ReadOnly="true" Display="false" /> 
                            <rad:GridBoundColumn DataField="HolidayYear" UniqueName="HolidayYear" ReadOnly="true" Display="false" /> 
                        </Columns> 
                    </MasterTableView> 
                    <ClientSettings EnablePostBackOnRowClick="true"> 
                                <ClientEvents OnGridCreated="holidayRadGridCreated" OnRowContextMenu="holidayRadGridRowContextMenu" /> 
                    </ClientSettings> 
                </rad:RadGrid> 

Sebastian
Telerik team
 answered on 20 Feb 2009
4 answers
124 views
I'm using a master page that uses user controls with an AJAX Manager and AJAX Manager Proxies.  In my page, I have the splitter that has two panes.   Pane one contains a control that has a Radio Button List.  When the radio button list value changes, it raises an event.  In Pane 2 is the RadScheduler.  The code-behind captures the first panes Radio Button List event that is raised and captures the event.  This works....BUT....the radscheduler is one step behind updating.  So, if I select the radio button with the value of 10, the radscheduler MinutesPerRow does not change on the AJAX call.  If I change the radio button list value to 15, the radscheduler will update with the 10, not the 15.  If I change it to 25, it will update the scheduler to 15 and not 25....why is there this delay????


<%

@ Page Language="VB" MasterPageFile="~/TelerikAJAXMasterPage.master" AutoEventWireup="false" CodeFile="Scheduler.aspx.vb" Inherits="Scheduler_Scheduler" %>

 

<%

@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>

 

<%

@ Register TagPrefix="Scheduler" TagName="DisplayPanel" Src="~/Controls/Scheduler/DisplayPanel.ascx" %>

 

<

asp:Content ContentPlaceHolderID="AJAXContentPlaceHolder" runat="server">

 

 

<script type="text/javascript" language="javascript">

 

 

function AppointmentEditing(sender, eventArgs) {

 

 

var apt = eventArgs.get_appointment();

 

window.radopen(

"Appointment.aspx?Mode=Edit&AppointmentId=" + apt.ID, "rwAdvancedForm");

 

eventArgs.set_cancel(

true);

 

}

 

function AppointmentInserting(sender, eventArgs) {

 

 

var start = formatDate(eventArgs.get_startTime());

 

 

var isAllDay = eventArgs.get_isAllDay();

 

 

// New appointment

 

window.radopen(

"Appointment.aspx?Mode=Insert&Start=" + start + "&IsAllDay=" + isAllDay, "rwAdvancedForm");

 

eventArgs.set_cancel(

true);

 

}

 

function formatDate(date) {

 

 

var year = padNumber(date.getUTCFullYear(), 4);

 

 

var month = padNumber(date.getUTCMonth() + 1, 2);

 

 

var day = padNumber(date.getUTCDate(), 2);

 

 

var hour = padNumber(date.getUTCHours(), 2);

 

 

var minute = padNumber(date.getUTCMinutes(), 2);

 

 

return year + month + day + hour + minute;

 

}

 

function padNumber(number, totalDigits) {

 

number = number.toString();

 

var padding = '';

 

 

if (totalDigits > number.length) {

 

 

for (i = 0; i < (totalDigits - number.length); i++) {

 

padding +=

'0';

 

}

}

 

return padding + number.toString();

 

}

 

function refreshScheduler() {

 

 

var ajaxManager = $find("RadAjaxManager2");

 

ajaxManager.ajaxRequest(

'RebindScheduler');

 

}

</

script>

 

<

telerik:RadSplitter ID="rpScheduler" Width="1024" BorderSize="0"

 

 

FullScreenMode="true" BorderStyle="None" runat="server" Skin="Vista">

 

 

<telerik:RadPane ID="rpOptions" Width="22px" runat="server">

 

 

<telerik:RadSlidingZone ID="rszOptions" runat="server">

 

 

<telerik:RadSlidingPane Title="Display" Width="230" runat="server">

 

 

<Scheduler:DisplayPanel ID="dpSideBar" runat="server" />

 

 

</telerik:RadSlidingPane>

 

 

</telerik:RadSlidingZone>

 

 

</telerik:RadPane>

 

<

telerik:RadPane ID="rpBody" runat="server">

 

 

<telerik:RadScheduler ID="rsMainScheduler"

 

 

DataEndField="End" DataKeyField="ID" DataStartField="Start"

 

 

DataSubjectField="Subject"

 

 

StartEditingInAdvancedForm="true"

 

 

StartInsertingInAdvancedForm="true"

 

 

OnClientAppointmentEditing="AppointmentEditing"

 

 

OnClientAppointmentInserting="AppointmentInserting"

 

 

SelectedView="DayView"

 

 

Height="600"

 

 

runat="server" Skin="Vista" MonthView-HeaderDateFormat="MMMM, yyyy">

 

 

<TimelineView UserSelectable="false" />

 

 

</telerik:RadScheduler>

 

</

telerik:RadPane>

 

</

telerik:RadSplitter>

 

<

telerik:RadAjaxManagerProxy ID="rampScheduler" runat="server">

 

 

<AjaxSettings>

 

 

<telerik:AjaxSetting AjaxControlID="rpScheduler">

 

 

<UpdatedControls>

 

 

<telerik:AjaxUpdatedControl ControlID="rpScheduler" />

 

 

</UpdatedControls>

 

 

</telerik:AjaxSetting>

 

 

</AjaxSettings>

 

</

telerik:RadAjaxManagerProxy>

 

</

asp:Content>

 

Peter
Telerik team
 answered on 20 Feb 2009
5 answers
106 views
I would like to have a bottom (blue) border on the input text box of the Default2006 skin just like on the sides and the top.  I've tried changing some styles in the skin's stylesheet, but can't seem to make it work.  Any ideas?
Sebastian
Telerik team
 answered on 20 Feb 2009
1 answer
118 views
Hi,
I need to pick images in my application and the File Explorer Demo shows exactly what I need.
There's just one problem, my images is on a different domain!

Can the File Explorer grab directories and files through for example a web service?
Or is there some other way to get my images?

/Mattias

Lini
Telerik team
 answered on 20 Feb 2009
5 answers
146 views
Hi there,

I have formatted a few RadDockZones within the confines of a table.  I have a table with 3 rows, 1st and 3rd row has 1 cell that spans the page, the middle row has 3 cells, middle cell is 40% in width and the outer 2 are 30% each.

When I load the page I can instantly see that the zones are slightly larger and hanging off of the right hand edge of the table cell.  Any idea how I can resolve this issue as it looks a bit odd at current.

Thanks in advance!
Tim Carmichael
Top achievements
Rank 1
 answered on 20 Feb 2009
Narrow your results
Selected tags
Tags
+? more
Top users last month
Tien
Top achievements
Rank 1
Iron
Krasimir
Top achievements
Rank 3
Bronze
Iron
Iron
Cedar
Top achievements
Rank 1
Iron
Emil
Top achievements
Rank 1
Iron
Kyle Watson
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Tien
Top achievements
Rank 1
Iron
Krasimir
Top achievements
Rank 3
Bronze
Iron
Iron
Cedar
Top achievements
Rank 1
Iron
Emil
Top achievements
Rank 1
Iron
Kyle Watson
Top achievements
Rank 1
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?