Telerik Forums
UI for ASP.NET AJAX Forum
9 answers
729 views
I have a page with a RadWindow.  The page that loads in the radwindow is a login form.  Basically when teh Login button is pressed an integer is returned based on if the credentials are successfull or not.  If the integer is 0, it simply lets them know they have the wrong password, this is already setup and works.  However if the returned integer is 1, i want it to close the radwindow, run some serverside code based on a value passed from the RadWindow (ie the Users primary key) and redirect the parent page to another page.  Here is my server side code for the login page:
protected void submitbutton_Click(object sender, EventArgs e) 
    { 
        //checks credentials, returns 1 or 0 
        int authStatus = Authentication.AuthenticateEmployee(txtUsername.Text.Trim(), 
            Encryption.encryptStringSHA256(txtPassword.Text.Trim())); 
 
        switch (authStatus) 
        { 
            case 0: 
                lblStatus.Text = "code0: Your user does not have access"
                break
 
            case 1: 
                lblStatus.Text = "code1: Successfull"
                //here i want it to close the radwindow and run some server side code. 
                break
        } 
         
         
 
 
    }
I know how to pass values from the radwindow to the parent page, but I'm not sure how to access those values server side.
Marin Bratanov
Telerik team
 answered on 22 Aug 2011
1 answer
470 views
Hi Telerik,

I have the following code:

function SaveDashboard(pane, eventArgs) {
    loadingPanel = $find(radAjaxLoadingPanel1ID);
    loadingPanel.show(baseSplitterID);
    eventArgs.set_cancel(true);
    window.PageMethods.SaveToDatabase(
        function (result) {
            if (result == true) {
                window.radalert('Dashboard saved successfully.', 275, 100, "Save Successful");
            }
            else {
                window.radalert('Dashboard NOT saved successfully.', 240, 100, "Save Unsuccessful");
            }
            loadingPanel.hide(baseSplitterID);
        });
}

I would like to display icons indicative of success/failure. That is, changing the titlebar LHS icon and the LHS icon in the body of the window. Do I need to use a full radwindow to do this? 
Marin Bratanov
Telerik team
 answered on 22 Aug 2011
5 answers
102 views
I am having problems closing AdvancedInsertTemplate after users click on Insert button. I can use a redirect but that would not be the best solution. Here is what happens:

  1. Users go to Scheduler page
  2. In code-behind I bind the scheduler to the dataset using BindScheduler() subroutine
  3. When users double-click on the timeslot the AdvancedInsertTemplate opens up with our custom Insert Appointment form
  4. The AdvancedInsertTemplate from as 2 buttons: Create (CommandName: Insert) and Cancel (CommandName: Cancel)
  5. After users enter the appointment details and click Create button a radSchedule1_AppointmentCommand is fired and data is saved into the DB. After save I fire BindScheduler() again in order to bind the newly updated data.
  6. At this point I need to close the modal AdvancedInsertTemplate but it does not close

What is the solution to this issue? thanks
Ilya
Top achievements
Rank 1
 answered on 22 Aug 2011
2 answers
251 views

I am using the AsyncUpload control to upload an employee picture to a telerik AJAX Manager enabled website.  The <ASP:IMAGE> tag that displays the picture is embedded in a Telerik Rad Ajax Loading Panel.

When I upload the picture (to the temporary folder) and then click the page submit button, the employee picture is correctly saved to the temporary folder and then moved to the target folder.  

As people can potentially upload pictures with the same filename, they can clobber each other's previously uploaded files inside the target folder.  I've added logic in the server side submit button handler to rename each uploaded targetfolder file so that it is always unique to a particular employee.   Each employee will end up retaining this filename as it is based on a formula that uses an employee number, even for future subsequent uploads.  At the end of the submit button handler, I repopulate the screen controls.

If I upload two different pictures for the same screen without leaving it, the first upload renders the picture.  On the second upload, the picture doesn't change even though its content and timestamp HAS changed in the target folder.  The reason it doesn't refresh on the second upload is that the <ASP:IMAGE> tag is using the same filename it had from the first upload.  The ajax mechanism doing the background postback isn't telling something (internet explorer?) to reload the image from the targetfolder.

How do I get the uploaded file to be marked as being dirty so that a refresh on the <ASP:IMAGE> tag is forced?

protected void btnSave_Click(object sender, EventArgs e)
{
    System.String result = "OK";
    System.String strUploadedFileName = "";
    System.String strUploadedFileExtension = "";
    System.String strNewEmployeePhotoName = "";
    System.String strEmployeePicturesPath = "";
      
    try
    {
        System.String strCoordinatorID = lblCoordinatorID.Text.Trim();
        if (strCoordinatorID != "")
        {
            EmployeeInfo coordinator = EmployeeInfo.GetEntity(strCoordinatorID);
            if (upldPicture.UploadedFiles.Count>0)
            {
                strEmployeePicturesPath = getMappedFolderPathTo("EmployeePictures");
                strUploadedFileName = upldPicture.UploadedFiles[0].FileName; //file is located in targetfolder at this point
                strUploadedFileExtension = upldPicture.UploadedFiles[0].GetExtension();
                strNewEmployeePhotoName = "COORDINATOR_" + strCoordinatorID + strUploadedFileExtension;
                  
                //rename the file so that it can't be clobbered by someone else uploading another file with same name
                if (File.Exists(@strEmployeePicturesPath + strNewEmployeePhotoName) == true)
                {
                    File.Delete(@strEmployeePicturesPath + strNewEmployeePhotoName); //delete any leftover picture
                }
                File.Move(@strEmployeePicturesPath + strUploadedFileName, @strEmployeePicturesPath + strNewEmployeePhotoName); //do a move incase the source is still open
                File.Delete(@strEmployeePicturesPath + strUploadedFileName); //delete the original file that was uploaded
            }
              
            if (coordinator != null)
            {   //update existing coordinator
                if (strNewEmployeePhotoName!="")
                {
                    coordinator.employeePhotoFileName = strNewEmployeePhotoName;
                }
                EmployeeInfo.Update(coordinator);
            }
            else
            {
                //its a new coordinator so add it
            }
            result = LoadCoordinator(ref coordinator, userpage.editor); //refresh the page
        }//strCoordinatorID != ""
    }
    catch (Exception ex)
    {
        System.Object oe = (Object)ex;
        result = "btnSave_Click: " + et.rptError(ref oe);
    }//try
    lblMsg.Text = result;
}//EOF btnSave_Click
Peter Filipov
Telerik team
 answered on 22 Aug 2011
5 answers
143 views
Hi,
In my aspx page , I have more than 2 Rad windows.

1.    we have a radWindow that opens as a popup window.
2. This popup radWindow has a close button in title bar.
3.     Even after the user closes this window using titlebars close button & opens another popup radwindow from altogether different link, the popup opens earlier(First) radwindow instead of opening second radwindow.

This is causing lot of problems.
Please advise how to fix this issue.
Marin Bratanov
Telerik team
 answered on 22 Aug 2011
1 answer
144 views
I have code where I open a RadWindow upon click of a button, which loads the content correctly and accurately shows the scrollbars. If I close the window using the RadWindow's "X" in the upper right corner and then click the button again to re-open the window, the content loads, but the scrollbars no longer appear even though the content is long enough to warrant the scrollbars. NOTE: this ONLY happens in Firefox. IE displays the correct behavior, showing the scrollbars as necessary.

I've loaded an example of this here: xxxxxxxxxxxxxxx.  Load this in Firefox and press the button that says "See RadWindow ScrollBar Problem". The first time you press it, the scrollbars appear. Close the window and then press the button again. The scrollbars disappear.

Any help would be greatly appreciated.

Thank you,

Rachael
Marin Bratanov
Telerik team
 answered on 22 Aug 2011
1 answer
71 views
I had some code that was working until the latest release of 2011.2.712.40. From RadGrid's OnMasterTableViewCreated:
 

<ClientEvents OnMasterTableViewCreated="DoStuff" />


Looked like this:

 

function DoStuff(sender, args) {
  var tabStrip = $find("<%= MainTabStrip.ClientID %>");
  var pageViewID = tabStrip.get_multiPage().get_selectedPageView()._id;
  ...

BUT tabStrip.get_multiPage() was null!! If I did NOT call this code, it was NOT null a second later, but if I DID call it, it would be stuck as null. Seems like the JS objects weren't loading as [I] expected. Perhaps the order of events changed somwhere?

This is my fix, using setTimeout:
function DoStuff(sender, args) {
  setTimeout(function() {
    var tabStrip = $find("<%= MainTabStrip.ClientID %>"); 
    var pageViewID = tabStrip.get_multiPage().get_selectedPageView()._id;
  }, 0);
  ...
}
Tsvetina
Telerik team
 answered on 22 Aug 2011
5 answers
340 views
For demonstration-sake, let's say we have two controls, a RadCalendar and a RadScheduler.  In order for them to interact with one-another without a refresh, the AjaxManager binds them together.

Unless I'm mistaken, this means any action on either must take the time to update both.  For example, navigating months (without selecting) on the calendar, which should be a very fast operation, takes a long time because the RadSheduler is being re-rendered as well, even though no changes have been made.

Is there a way to bind only specific events together, similar to how the VS.net AjaxManager works ControlID="" EventName=""?  This would allow the Scheduler to be rendered again, only on applicable events.

Thanks,

Brad
Richard
Top achievements
Rank 1
 answered on 22 Aug 2011
2 answers
213 views
It's really a two part problem.  This is what I'm doing,

I call this on the server to set the background color if the input was not considered valid.
textboxname.Style.Add(HtmlTextWriterStyle.BackgroundColor, "red");

Then in a handler for the ClientEvents-OnKeyPress event I call this to set the background color back.
sender.get_styles().EnabledStyle[0] = sender.get_styles().EnabledStyle[0].replace("background-color:red;", "");
sender.updateCssClass();

The first problem is that the background color doesn't change until the focus is moved off the text box, when I want it to occur as soon as the user types something into it.

The second problem is that the color does change if you click off the box, but then it flashes back to red if you mouseover the box and as long as you hold the cursor there.  Mouseout, it goes back to white, back and forth.
Marbry
Top achievements
Rank 1
 answered on 22 Aug 2011
1 answer
75 views
Hi,

I am using the telerik editor in an mvc project. I can see a lot of tools for formatting eg, Font, indentation, bulleting etc, but is there no tool for spell check included in the editor? What do we need to do to incorporate this feature into the standard telerik editor?

Ritu
Marin Bratanov
Telerik team
 answered on 22 Aug 2011
Narrow your results
Selected tags
Tags
+? more
Top users last month
Cynthia
Top achievements
Rank 1
Iron
Toby
Top achievements
Rank 3
Iron
Iron
Iron
Danielle
Top achievements
Rank 1
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Iron
yw
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Cynthia
Top achievements
Rank 1
Iron
Toby
Top achievements
Rank 3
Iron
Iron
Iron
Danielle
Top achievements
Rank 1
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Iron
yw
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?