Telerik Forums
UI for ASP.NET AJAX Forum
8 answers
318 views
Hello There, 

I am trying to export a RadGrid to an excel sheet but I get this error"   Script control 'RadGrid1' is not a registered script control. Script controls must be registered using RegisterScriptControl() before calling RegisterScriptDescriptors().
Parameter name: scriptControl ". However, when I use GridView, it works fine. this is the function to export the Radgrid to excel.

 Response.Clear();
          
            Response.AddHeader("content-disposition", "attachment;filename=FileName.xls");
            Response.Charset = "";
         // Response.Cache.SetCacheability(HttpCacheability.NoCache);
            Response.ContentType = "application/vnd.xls";
         // htmlWrite.WriteLine(header2);
            System.IO.StringWriter stringWrite = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
            RadGrid1.RenderControl(htmlWrite);
            //GridView1.RenderControl(htmlWrite);
            Response.Write(stringWrite.ToString());
            Response.End();

Thank you so much
Ahsan 
Shinu
Top achievements
Rank 2
 answered on 04 Jul 2012
3 answers
118 views
I have a nested radgrid which does not page. All it does is collapse the grid when I try. I based it off of the grid/hierarchy with Templates demo from the telerik demo site and the code behind that it shows does not seem to be anything special but everything that I have tried has not worked. The nest radgrid that I am referencing is the one called RepresentedGrid.
If I remove the datasourceid and rely only on the needdatasource function being explicitly set up in the grid then I end up with an empty grid.
Part of the problem is the fact that even if I try to set up a page index changed function, the grid is never found so I end up with errors about instance not being set to an object.

   </telerik:RadAjaxManager>
   <telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True"
       AllowSorting="True" CellSpacing="0" GridLines="None" PageSize="20"
       ShowFooter="True" Width="979px" AutoGenerateColumns="false">
        
       <MasterTableView DataKeyNames="Fullname,FileAs, Email, Department, Company, BusinessPhone, BusinessFax, Website, Categories, OtherNotes, LinkedDocs, Represented" PageSize="20">
        <NestedViewTemplate>
        <asp:Panel runat="server" ID="InnerContainer" Visible="false" BackColor="AliceBlue">
        <telerik:RadTabStrip runat="server" ID="TabStip1" MultiPageID="Multipage1" SelectedIndex="0">
                       <Tabs>
                           <telerik:RadTab runat="server" Text="Contact Information" PageViewID="PageView1">
                           </telerik:RadTab>
                           <telerik:RadTab runat="server" Text="Distributors/Distributing" PageViewID="PageView2">
                           </telerik:RadTab>
                       </Tabs>
                   </telerik:RadTabStrip>
        <telerik:RadMultiPage runat="server" ID="Multipage1" SelectedIndex="0" RenderSelectedPageOnly="false">
        <telerik:RadPageView runat="server" ID="PageView1">
        <table >
        <tr><td>Business Fax:</td><td><%# Eval("BusinessFax")%></td></tr>
        <tr><td>Business Address:</td><td><%# addressFormat(Eval("BusinessAddress"))%></td></tr>
        <tr><td>Attached Documents:</td><td><%# documentShow(Eval("LinkedDocs"))%></td></tr>
        <%--<tr><td>Representing/Represented By:</td><td><%# cleanRepresented (Eval("Represented"))%></td></tr>--%>
        <tr><td>Other Notes:</td><td><%# Eval("OtherNotes")%></td></tr>
        </table>
        </telerik:RadPageView>
        <telerik:RadPageView runat="server" ID="RadPageView2">
 
<asp:SqlDataSource ID="SqlDataSource3" ConnectionString="<%$ ConnectionStrings:SterlingConnection %>"
                               ProviderName="System.Data.SqlClient" SelectCommand='<%# vendorCrossReference(Eval("VendorID"))%>'
                               runat="server">
<telerik:RadGrid runat="server" ID="RepresentedGrid" DataSourceID="SqlDataSource3" ShowFooter="true" AllowPaging="True" EnableAJAX="True"
                                AllowSorting="true"  >
                                <PagerStyle Mode="Slider"></PagerStyle> 
                               <MasterTableView ShowHeader="true" AutoGenerateColumns="False" AllowPaging="true"
                                   DataKeyNames="VendorID, Fullname,FileAs, Email, Department, Company, BusinessPhone, BusinessFax, Website, Categories, OtherNotes, LinkedDocs, Represented"
                                   PageSize="20"  >
                                   
                                  <Columns>
                                  
                                    <telerik:GridBoundColumn SortExpression ="Company" HeaderText="Company" DataField ="Company" >
                                   </telerik:GridBoundColumn>
                                   <telerik:GridBoundColumn SortExpression ="Email" HeaderText="Email" DataField ="Email"  AllowFiltering="false" DataFormatString="<a href='mailto:{0}'>{0}</a>">
                                   </telerik:GridBoundColumn>
                                    
                                   <telerik:GridBoundColumn SortExpression ="Website" HeaderText="Website" AllowFiltering="false" DataField ="Website"  DataFormatString="<a href='{0}' target='_blank'>{0}</a>" >
                                   </telerik:GridBoundColumn>
                                   <telerik:GridBoundColumn SortExpression ="BusinessPhone" HeaderText="Business Phone" AllowFiltering="false" DataField ="BusinessPhone">
                                   </telerik:GridBoundColumn>
                                    <telerik:GridBoundColumn SortExpression ="BusinessFax" HeaderText="Business Fax" DataField ="BusinessFax">
                                   </telerik:GridBoundColumn>
                                   <telerik:GridBoundColumn SortExpression ="BusinessAddress" HeaderText="Business Address" DataField ="BusinessAddress">
                                   </telerik:GridBoundColumn>
 
 
                                  </Columns>
 
 
        </MasterTableView>
        </telerik:RadGrid>
 
        </telerik:RadPageView>
        </telerik:RadMultiPage>
         
        </asp:Panel>
        </NestedViewTemplate>   
        
       <Columns>
        
       <telerik:GridBoundColumn SortExpression ="Company" HeaderText="Company" DataField ="Company" >
        </telerik:GridBoundColumn>
       <telerik:GridBoundColumn SortExpression ="Email" HeaderText="Email" DataField ="Email" AllowFiltering="false" DataFormatString="<a href='mailto:{0}'>{0}</a>">
       </telerik:GridBoundColumn> 
       <telerik:GridBoundColumn SortExpression ="Website" HeaderText="Website" AllowFiltering="false" DataField ="Website" DataFormatString="<a href='{0}' target='_blank'>{0}</a>" >
       </telerik:GridBoundColumn>
       <telerik:GridBoundColumn SortExpression ="BusinessPhone" HeaderText="Business Phone" AllowFiltering="false" DataField ="BusinessPhone">
       </telerik:GridBoundColumn>
        <telerik:GridBoundColumn SortExpression ="Categories" HeaderText="Categories" DataField ="Categories">
       </telerik:GridBoundColumn>
 
 
       </Columns>

       Public Sub RepresentedGrid_NeedDataSource(ByVal source As Object, ByVal e As GridNeedDataSourceEventArgs)
           If Not e.IsFromDetailTable Then
 
               Dim dataSource As SqlDataSource = RadGrid1.MasterTableView.Items(0).ChildItem.FindControl("SqlDataSource3")
               Dim RepresentedGrid As RadGrid
               RepresentedGrid = RadGrid1.MasterTableView.Items(0).ChildItem.FindControl("RepresentedGrid")
               RepresentedGrid.DataSource = dataSource
 
            
           End If
       End Sub
 
Protected Sub RadGrid1_ItemCreated(ByVal sender As Object, ByVal e As GridItemEventArgs) Handles RadGrid1.ItemCreated
           If TypeOf e.Item Is GridNestedViewItem Then
           Dim typeContent = DirectCast(e.Item.FindControl("RepresentedGrid"), RadGrid)
           AddHandler typeContent.NeedDataSource, AddressOf Me.RepresentedGrid_NeedDataSource
           End If
End Sub
Anna
Top achievements
Rank 1
 answered on 03 Jul 2012
3 answers
100 views
How can i achieve reording in RowDrop function if the RadGrid is using OpenAccessDataSource as the datasource?

I implemented reorder items code in RowDrop using normal SQL update statement. The SQL update statement passed all checking and retured true for the update process. Howevever, it seems the order in the database doesn't change at all and the RadGrid.Rebind() returns the same order as before. 

Can anyone help me out?

Thanks
Felipe de Jesús
Top achievements
Rank 1
 answered on 03 Jul 2012
3 answers
197 views
Hi,

Attached, pls take a look at my picture. First let me say that for confidential purpose, I have edited the pic by white-out the data rows.
 
As you can see, at the very bottom of the grid, right below the footer, there is a blank, white row. It's happen when I first loaded the page,  selected two dates above and click "View" to populate the grid. It's automatically fixed (The blank row automatically go away) upon subsequent operation on the grid (Refresh, filter, etc). It didn't happen to every project that I'm working on. I have spent tremendous time to compare these projects to find out the cause, but still couldn't. Would you please help?

Thanks

Lamk.
LamKhoa
Top achievements
Rank 1
 answered on 03 Jul 2012
0 answers
81 views
Never mind, wish i could cancel a post...
KubuliJohn
Top achievements
Rank 1
 asked on 03 Jul 2012
2 answers
136 views
I am working with HTML that embeds a video, here is what I would like to edit:

<p><asset id="705277"><!-- BroadcastDEVPlayer --><div style="display: none;"><!--div--></div><!-- By use of this code snippet, I agree to the Brightcove Publisher T and C found at https://accounts.brightcove.com/en/terms-and-conditions/.  --><script language="JavaScript" type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"><!--script--></script><object id="myExperience1716942643001" class="BrightcoveExperience"><param name="bgcolor" value="#FFFFFF"><!--param--></param><!--p--><param name="width" value="640"><!--param--></param><param name="height" value="390"><!--param--></param><param name="playerID" value="1686393367001"><!--param--></param><param name="playerKey" value="AQ~~,AAAABvZFG8E~,tuqDbg7x3grEeW3gQXG_DLcv5dBdNd_2"><!--param--></param><param name="isSlim" value="true"><!--param--></param><param name="dynamicStreaming" value="true"><!--param--></param><param name="@videoPlayer" value="1716942643001"><!--param--></param></object><!-- This script tag will cause the Brightcove Players defined above it to be created as soon as the line is read by the browser. If you wish to have the player instantiated only after the rest of the HTML is processed and the page load is complete, remove the line.  --><script type="text/javascript">brightcove.createExperiences();</script><!-- End of Brightcove Player --></asset></p><p />

However, when I view the HTML that actually got inserted to the editor, everything that should have been enclosed by the p and asset tags got moved outside them.  What is causing it and what can I do to prevent it?  I have experimented with turning off filters, but that doesn't seem to help.

<p><asset id="705277"><!-- BroadcastDEVPlayer --></asset></p><div style="display: none;"><!--div--></div><!-- By use of this code snippet, I agree to the Brightcove Publisher T and C found at https://accounts.brightcove.com/en/terms-and-conditions/.  --><script language="JavaScript" type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"><!--script--></script><object type="application/x-shockwave-flash" data="http://c.brightcove.com/services/viewer/federated_f9?&amp;width=640&amp;height=390&amp;flashID=myExperience1716942643001&amp;bgcolor=%23FFFFFF&amp;playerID=1686393367001&amp;playerKey=AQ~~%2CAAAABvZFG8E~%2CtuqDbg7x3grEeW3gQXG_DLcv5dBdNd_2&amp;isSlim=true&amp;dynamicStreaming=true&amp;%40videoPlayer=1716942643001&amp;autoStart=&amp;debuggerID=&amp;startTime=1341257000939" id="myExperience1716942643001" width="640" height="390" class="BrightcoveExperience" seamlesstabbing="false"><param name="allowScriptAccess" value="always"><param name="allowFullScreen" value="true"><param name="seamlessTabbing" value="false"><param name="swliveconnect" value="true"><param name="wmode" value="window"><param name="quality" value="high"><param name="bgcolor" value="#FFFFFF"></object><!-- This script tag will cause the Brightcove Players defined above it to be created as soon as the line is read by the browser. If you wish to have the player instantiated only after the rest of the HTML is processed and the page load is complete, remove the line.  --><script type="text/javascript">brightcove.createExperiences();</script><!-- End of Brightcove Player -->

Thanks,
Igor
Igor
Top achievements
Rank 1
 answered on 03 Jul 2012
8 answers
267 views
Hey,

I have a RadTreeView inside a RadPane.  The RadPane has Scrolling="Y" and when the RadTreeView expands beyond the height of the Pane a scroll bar appears in the Pane and everything works great.  However, when the user checks/unchecks items in the TreeView there is an Ajax postback so I can display / hide information in other controls based on the selected items.  I have the TreeView as the AjaxControlID in an AjaxSetting as well as an AjaxUpdatedControl with the LoadingPanelID set. Like so:
<telerik:AjaxSetting AjaxControlID="tvwTermZone">
    <UpdatedControls>
        <telerik:AjaxUpdatedControl ControlID="tvwTermZone" LoadingPanelID="lPnlMain" />
    </UpdatedControls>
</telerik:AjaxSetting>

When the TreeView extends beyond the bottom of the RadPane the LoadingPanel is displayed over it's expanded size beyond the bottom of the scrolled RadPane, so that it shows over the cotrols that are in the RadPane below the Pane that contains the TreeView in it and the 'waiting' gif shows outside of the containing RadPane as well.  Is there any way to keep the LoadingPanel over the RadPane that holds the TreeView?

Thanks in Advance
Dave
Dave
Top achievements
Rank 1
 answered on 03 Jul 2012
1 answer
113 views
Hi,
I  have a radlist view in which I'm doing Manual Updates. I would like to be able to use the ItemUpdated Event and just set KeepInEditMode to true. Unfortunately I discovered this event isn't fired if you are using Manual Updates. How else could I achieve this so as soon as item is updated it's thrown back into edit mode?

thanks

Karl
Karl
Top achievements
Rank 1
 answered on 03 Jul 2012
2 answers
147 views
I am using the latest Telerik dlls and all my events are firing correctly in the code behind. When you add or delete a row in the grid it updates the datasource correctly and I can debug and see on the OnNeedDataSource that the correct datasource is being set with either the row added or deleted. But the client grid is still showing the row you deleted or not showing the row you added. I have tried it with a RadAjaxManager and a RadAjaxPanel and both don't update the grid correctly. When I do an edit it will update correctly. Here is the code aspx code.
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server">
                    <telerik:RadGrid ID="dgStations" runat="server" PageSize="10" AllowPaging="true"
                        AutoGenerateColumns="false" OnInsertCommand="dgStationsOnInsertCommand" OnUpdateCommand="dgStationsOnUpdateCommand"
                        OnDeleteCommand="dgStationsOnDeleteCommand" OnNeedDataSource="dgStationsOnNeedDataSource">
                        <PagerStyle Mode="NextPrevAndNumeric" />
                        <MasterTableView DataKeyNames="StationId" CommandItemDisplay="Top" InsertItemPageIndexAction="ShowItemOnCurrentPage">
                            <Columns>
                                <telerik:GridBoundColumn DataField="Description" HeaderText="Description" SortExpression="Description">
                                </telerik:GridBoundColumn>
                                <telerik:GridBoundColumn DataField="ServerPort" HeaderText="Server Port" SortExpression="ServerPort">
                                </telerik:GridBoundColumn>
                                <telerik:GridEditCommandColumn ButtonType="LinkButton" UniqueName="EditCommandColumn"
                                    EditText="Edit">
                                </telerik:GridEditCommandColumn>
                                <telerik:GridButtonColumn ConfirmText="Delete this station?" ConfirmDialogType="Classic"
                                    ButtonType="LinkButton" CommandName="Delete" Text="Delete" UniqueName="DeleteColumn">
                                </telerik:GridButtonColumn>
                            </Columns>
                        </MasterTableView>
                    </telerik:RadGrid>
                </telerik:RadAjaxPanel>

Any idea why it isn't updating correctly?
Eric
Top achievements
Rank 1
 answered on 03 Jul 2012
0 answers
153 views
hi everybody
i have this error when i try to edit:

Procedure or function sp_c_comprasivamodificacion has too many arguments specified.

this is a simple sp for testing:

ALTER procedure [dbo].[sp_c_comprasivamodificacion]
 @fechaEmision as date, @id as int
AS

UPDATE       tbl_c_iva_compras
SET          fechaEmision = @fechaEmision where id=@id

and this is my my aspx:




 <telerik:RadGrid ID="RadGrid1" runat="server" Skin="Sunset" GridLines="None"
        AllowPaging="True" PageSize="15" AllowSorting="True" AutoGenerateColumns="False"
        ShowStatusBar="True" AllowAutomaticDeletes="True" AllowAutomaticInserts="True"
        AllowAutomaticUpdates="True" EnableLinqExpressions="False" DataSourceID="SqlDataSource1"
                        Width="1155px">
        
      
<MasterTableView CommandItemDisplay="Top"
                   DataKeyNames="id,NoCorrelativo,fechaEmision"         DataSourceID="SqlDataSource1" EditMode="EditForms" PageSize="10" >
<RowIndicatorColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>

<ExpandCollapseColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
    <Columns>
       <telerik:GridBoundColumn DataField="cod_pfiscal" visible="false"
            HeaderText="cod_pfiscal" SortExpression="cod_pfiscal"
            UniqueName="cod_pfiscal" DataType="System.Int32">
           <HeaderStyle Width="5px" />
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="NoCorrelativo"
            HeaderText="No" SortExpression="NoCorrelativo"
            UniqueName="NoCorrelativo" DataType="System.Int32">
            <HeaderStyle Width="5px" />
        </telerik:GridBoundColumn>
    .
    .
    .
    .

        <telerik:GridEditCommandColumn CancelText="Cancelar" EditText="Editar"
            UpdateText="Modificar">
            <HeaderStyle Width="80px" />
            </telerik:GridEditCommandColumn>
    </Columns>
    <EditFormSettings  CaptionFormatString="Editar Factura: {0}" CaptionDataField="VGrLocales" EditFormType="Template" EditColumn-EditText="Editar" EditColumn-UpdateText="Modificar"  PopUpSettings-Modal="True">
<EditColumn UniqueName="EditCommandColumn1"></EditColumn>
   
     <FormTemplate>
    
                    <br /><br />
                    <div class="_100">
                    <div class="_25">
                       <div class="_100">
                       <div class="_50">
                       <label>Fecha:</label>
                            
                             <telerik:RadDatePicker RangeMinDate="1940/05/01" MinDate="1940/01/01" ID="fecha_emision" Runat="server"  Skin="Default" DbSelectedDate='<%# Bind("fechaEmision") %>'
                            EnableEmbeddedBaseStylesheet="False" Width="100">
                            <DateInput EnableEmbeddedBaseStylesheet="False">
                            </DateInput>
                        <Calendar UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False"
                         ViewSelectorText="x" EnableEmbeddedBaseStylesheet="False"></Calendar>
                        <DatePopupButton ImageUrl="" HoverImageUrl=""></DatePopupButton>
                        </telerik:RadDatePicker>
                       </div>
                       <div class="_50">
                       <label>Numero</label>
                       <asp:TextBox ID="TextBox4" Width="50" runat="server" Text='<%# Bind( "numeroDoc" ) %>' > </asp:TextBox></center><center>
                       
                       </div>
                    
                       </div>
                               
                      </div>
                      <div class="_25">
                      
                       <label>Proveedor:</label>
     
                      <telerik:RadComboBox runat="server" ID="RadComboBox2" DataTextField="nombreProveedor" Skin="Simple"
                            DataValueField="nombreProveedor" DataSourceID="SqlDataSource2" SelectedValue='<%# Bind( "nombreProveedor") %>'  Width="210" Height="130">
                        </telerik:RadComboBox><br /><br />
                    
                      
                       </div>
                      <div class="_25">
                      <label>Gravadas:</label>
                            
                             <asp:TextBox ID="TextBox1" runat="server" MaxLength="10" Width="80" Text='<%# Bind( "CGInternas" ) %>'> </asp:TextBox>

                            
                       </div>
                       <div class="_25">
                       
                       <div class="_100">
                       <div class="_50">
                       
                                <asp:Button ID="Button1" Text='<%# Iif (TypeOf Container is GridEditFormInsertItem, "AGREGAR", "MODIFICAR") %>'
                                    runat="server" CommandName='<%# Iif (TypeOf Container is GridEditFormInsertItem, "PerformInsert", "Update") %>'>
                                </asp:Button>&nbsp;
                             
                           
                           </div>
                        <div class="_50">
              <asp:Button ID="Button2" Text="SALIR"  runat="server" CausesValidation="False" CommandName="Cancel" Width="100">
                                </asp:Button>
                               
                           </div>
                       
                       </div>
                       
                       
                       </div>
                       </div>
                           
                  
                </FormTemplate>




<PopUpSettings Modal="True" ZIndex="2500" Height="150px" Width="550px"></PopUpSettings>
    </EditFormSettings>
   
    <PagerStyle NextPageText="Siguiente" PrevPageText="Anterior" />
   
</MasterTableView>
        
         <ClientSettings>
            <ClientEvents OnRowDblClick="RowDblClick" />
         <ClientEvents OnPopUpShowing="PopUpCentered" />
        </ClientSettings>
    
                    </telerik:RadGrid>




 <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConflictDetection="OverwriteChanges"
                        ConnectionString="<%$ ConnectionStrings:CONTASConnectionString %>"
                        SelectCommand="SELECT id, cod_pfiscal, NoCorrelativo, CONVERT (char(10), fechaEmision, 103) AS fechaEmision, cod_factura, numeroDoc, RTRIM(nrc) AS nrc, RTRIM(nombreProveedor) AS nombreProveedor, Total, FechaPago, FechaCancelado, CGInternas, CreditoFiscal, Retenc_13_SujetosNoDom, Retenc_13_SujetosExcl, Iva_Ant_a_Cta_Ret, Iva_Perc_2Tarjeta FROM tbl_c_iva_compras WHERE (cod_pfiscal = @cod_pfiscal) AND (tipodoc = 'CF') ORDER BY NoCorrelativo"
                                      
                        InsertCommand="sp_c_comprasiva"

       
                        InsertCommandType="StoredProcedure"
                        UpdateCommand="sp_c_comprasivamodificacion"
                        UpdateCommandType="StoredProcedure" >                                                                                  
                        <SelectParameters>
                            <asp:ControlParameter ControlID="cobperiodos" Name="cod_pfiscal"
                                PropertyName="SelectedValue" />
                        </SelectParameters>

                      
                        <UpdateParameters>
                            <asp:Parameter DbType="Date" Name="fechaEmision" />
                            <asp:Parameter Name="id" Type="Int32" />
                        </UpdateParameters>

                      
                        <InsertParameters>
      
                            <asp:Parameter Name="fechaEmision" />
                            <asp:Parameter Name="numeroDoc" />
                            <asp:Parameter Name="CGInternas" Type="Decimal" />
                            <asp:Parameter Name="nombreProveedor" />
      
                            <asp:ControlParameter ControlID="cobperiodos" Name="codpfiscal"
                                PropertyName="SelectedValue" />
                            <asp:sessionparameter Name="correlativo" sessionfield="correlativo" />
      
                            
                            <asp:ControlParameter ControlID="tipofactura" Name="tipo"
                                PropertyName="SelectedValue" />
                        </InsertParameters>
                     </asp:SqlDataSource>


i hope anyone can help me :(
Robert
Top achievements
Rank 2
 asked on 03 Jul 2012
Narrow your results
Selected tags
Tags
+? more
Top users last month
Hiba
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Max
Top achievements
Rank 1
Veteran
Iron
Alina
Top achievements
Rank 1
Rakhee
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Hiba
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Max
Top achievements
Rank 1
Veteran
Iron
Alina
Top achievements
Rank 1
Rakhee
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?