How do solve win32 messagebox problem

Hi all ,           In the below code am trying to upload file to a folder and if file is already there it will generatr a messagebox(wn32) where it will ask for overwrite but when i run my rails application on client machine this messagebox is not displaying on client machine

require 'dl' # button constantsBUTTONS_OK = 0 BUTTONS_OKCANCEL = 1 BUTTONS_ABORTRETRYIGNORE = 2 BUTTONS_YESNO = 4

CLICKED_CANCEL = 2 CLICKED_ABORT = 3 CLICKED_RETRY = 4 CLICKED_IGNORE = 5 CLICKED_YES = 6 CLICKED_NO = 7

class UploadController < ApplicationController def index      render :file => 'app\views\upload\uploadfile.rhtml'   end

  def message_box(txt, title=APP_TITLE, buttons=BUTTONS_OK)      user32 = DL.dlopen('user32')     msgbox = user32['MessageBoxA', 'ILSSI']    r, rs = msgbox.call(0, txt, title, buttons)     return r   end

  def uploadFile

name=DataFile.save1(params[:upload]) puts name $t=0

k =

File.open("d:/dm/aan.txt").each do |line|    k << line.chomp end

puts k #puts line.size $s=k.size #puts $s

for i in 0..Integer($s)

if $L=(name.eql?(k[i]) == true)

   response = message_box("Are you sure you want to OVERWRITE", "Proceed?", BUTTONS_YESNO) if response == CLICKED_YES

    post = DataFile.save(params[:upload])

    render :text => "File has been uploaded successfully"   else

    render :text => "File cann't successfully"   end end end end end

How should i make this messagebox appear on client side

This code is in the controller and so runs on the server. There is no way it can appear on the client machine.

Colin

Colin Law wrote in post #955797:

Amit Tomar wrote in post #955979:

Colin Law wrote in post #955797:

BUTTONS_OKCANCEL = 1

  user32 = DL.dlopen('user32') name=DataFile.save1(params[:upload]) #puts line.size "Proceed?", BUTTONS_YESNO) if response == CLICKED_YES

This code is in the controller and so runs on the server. There is no way it can appear on the client machine.

Colin

But colin is it possible to do something like this using javascript??

It sure is.

Best,

You will have to do the upload as a multi-step operation, maybe using AJAX. For example you could first post just the filename, get the server to check the name and send the result back to the client to display the overwrite question if necessary. Then do the upload if appropriate. You may have to re-check the filename again of course in case another file of that name has been uploaded in the meantime.

Colin