/* * Spreed WebRTC. * Copyright (C) 2013-2014 struktur AG * * This file is part of Spreed WebRTC. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . * */ define(['underscore'], function(underscore) { // buddyPicture return ["mediaStream", "$window", function(mediaStream, $window) { var buddyPicture = { update: function(data, url) { if (typeof(url) !== "undefined") { data.buddyPicture = url; } else { url = data.buddyPicture; } if (!url) { return; } if (url.indexOf("img:") === 0) { data.buddyPicture = data.buddyPictureLocalUrl = mediaStream.url.buddy(url.substr(4)); } }, toString: function(img, mime_type) { if (img) { if (typeof(mime_type) === "undefined") { mime_type = "image/jpeg"; } var canvas = $window.document.createElement("canvas"); canvas.width = img.width; canvas.height = img.height; var ctx = canvas.getContext("2d"); ctx.drawImage(img, 0, 0); return canvas.toDataURL(mime_type); } return null; } }; return buddyPicture; }]; });