2012-09-28 2 views
0

클릭하면 Aviary 모달을 소환하는 내 페이지의 업로드 된 미리보기 이미지 옆에 Edit 버튼이 있습니다. 내가하고 싶은 일은 Aviary에서 편집 결과를 저장할 때 FP의 원본 파일을 대체하는 것입니다. filepicker.saveAs는 새로운 파일로 저장하고 싶지 않기 때문에 올바른 해결책으로 보이지 않습니다. FP에서 파일을 바꾸기를 원합니다. 원본 URL에 전체 파일을 POST하도록 지정했기 때문에 "뒤로 저장"설명서가 적용되지 않는 것 같습니다. 이상적으로는 원래 URL과 새로운 Aviary URL을 가져 와서 원래 URL의 내용을 바꾸는 기능을 갖기를 원합니다.Aviary로 편집 한 후 Filepicker 파일 바꾸기

현재이 기능을 사용할 수 있습니까? 감사!!! 나는 여기에 내 코드를 붙여 넣은

:

curl -X POST -d "url=https://www.filepicker.io/static/img/watermark.png" 
    https://www.filepicker.io/api/file/gNw4qZUbRaKIhpy-f-b9 

예를 들어 나 자바 스크립트에서 당신은 실제로뿐만 아니라 filepicker URL에 URL을 게시 할 수 있습니다

<script src='http://feather.aviary.com/js/feather.js'></script> 
<script src="https://api.filepicker.io/v0/filepicker.js"></script> 
<script type="text/javascript"> 
$(document).on('click', '.delete-image', function(e) { 
    var image = $(this).closest('tr').attr('data-image'); 
    $('.modal-footer .btn-danger').remove(); 
    $('.modal-footer').append("<button class='delete-confirmed btn btn-danger' data-image='"+image+"'>Delete</button>"); 
    $('#myModal').modal('show'); 
    return false; 
}); 

$(document).on('click', '.delete-confirmed', function(e) { 
    e.preventDefault(); 
    var image = $(this).attr('data-image'); 
    var row = $("tr[data-image="+image+"]"); 
    $('#myModal').modal('hide'); 
    $.ajax({ 
    url: row.attr('data-link'), 
    dataType: 'json', 
    type: 'DELETE', 
    success: function(data) { 
     if (data.success) { 
     row.hide(); 
     filepicker.revokeFile(row.attr('data-fplink'), function(success, message) { 
      console.log(message); 
     }); 
     } 
    } 
    }); 
    return false; 
}); 

//Setup Aviary 
var featherEditor = new Aviary.Feather({ 
    //Get an api key for Aviary at http://www.aviary.com/web-key 
    apiKey: '<%= AVIARY_KEY %>', 
    apiVersion: 2, 
    appendTo: '' 
}); 
//When the user clicks the button, import a file using Filepicker.io 
$(document).on('click', '.edit-image', function(e) { 
    var image = $(this).closest('tr').attr('data-image'); 
    var url = $(this).closest('tr').attr('data-fplink'); 
    $('#aviary').append("<img id='img-"+image+"'src='"+url+"'>"); 
    //Launching the Aviary Editor 
    featherEditor.launch({ 
    image: 'img-'+image, 
    url: url, 
    onSave: function(imageID, newURL) { 
     //Export the photo to the cloud using Filepicker.io! 
     //filepicker.saveAs(newURL, 'image/png'); 
     console.log('savin it!'); 
    } 
    }); 
}); 

filepicker.setKey('<%= FILEPICKER_KEY %>'); 
var conversions = { 'original': {}, 
        'thumb': { 
        'w': 32, 
        'format': 'jpg' 
        }, 
}; 
$(document).on("click", "#upload-button", function() { 
    filepicker.getFile(['image/*'], { 'multiple': true, 
            'services': [filepicker.SERVICES.COMPUTER, filepicker.SERVICES.URL, filepicker.SERVICES.FLICKR, filepicker.SERVICES.DROPBOX, filepicker.SERVICES.IMAGE_SEARCH], 
            'maxsize': 10000*1024, 
            'conversions': conversions 
            }, 
            function(images){ 
     $.each(images, function(i, image) { 
     $.ajax({ 
      url: "<%= product_images_path(@product.id) %>", 
      type: 'POST', 
      data: {image: JSON.stringify(image)}, 
      dataType: 'json', 
      success: function(data) { 
      if (data.success) { 
       $('.files').append('<tr><td><img src="'+image.data.conversions.thumb.url+'"</td></tr>') 
      } 
      } 
     }); 
     }); 
    }); 
}); 

답변

0

$.post(fpurl, {url: aviary_url}, function(response){console.log(response);}); 
관련 문제