Blame view

app/scripts/controllers/tshirtdesign.js 2.93 KB
6f105dbd5   Truong LD   add source code i...
1
  define(['app'], function (app) {
c8bfdfd96   DANG   event click object
2
  	//'use strict';
6f105dbd5   Truong LD   add source code i...
3

422e7837d   DANG   Change color t-shirt
4
  	app.controller('TshirtdesignCtrl', function ($scope, $rootScope, $illustration) {
6f105dbd5   Truong LD   add source code i...
5
6
7
8
9
10
11
12
13
  		var canvas = new fabric.Canvas('main-design-container');
  		fabric.Object.prototype.transparentCorners = false;
  
  		canvas.on('after:render', function() {
  		});
  		canvas.on({
  			'object:moving': onIllustrationChange,
  			'object:scaling': onIllustrationChange,
  			'object:rotating': onIllustrationChange,
c8bfdfd96   DANG   event click object
14
15
16
17
  			'object:selected': onIllustrationSelected,
  			'selected:deselected' : onIllustrationOut,
  			//'selected:out'     : onIllustrationOut,
  			//'mouse:up' : onIllustrationOut,
6f105dbd5   Truong LD   add source code i...
18
19
  		});
  		function onIllustrationChange(options) {
d75c45c56   Truong LD   remove test showcase
20
21
22
23
24
  			// options.target.setCoords();
  			// canvas.forEachObject(function(obj) {
  			// if (obj === options.target) return;
  			// 	obj.setOpacity(options.target.intersectsWithObject(obj) ? 0.5 : 1);
  			// });
c8bfdfd96   DANG   event click object
25
26
27
28
29
  
  		}
  
  		function onIllustrationOut() {
  			console.log('out object');
6f105dbd5   Truong LD   add source code i...
30
31
32
  		}
  
  		$scope.currentObject = null;
c8bfdfd96   DANG   event click object
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
  		function onIllustrationSelected(options) {
  			var object = options.target;
  			$scope.typeObject = object.type;
  			switch ($scope.typeObject) {
  				case 'i-text' :
  					$('#input-design-text').focus();
  					$rootScope.isShowLeftPanel = 'text';
  					break;
  
  				case 'path-group' :
  					$rootScope.isShowLeftPanel = 'illustration';
  					break;
  
  				default :
  					$rootScope.isShowLeftPanel = 'default';
  					break;
  			}
  			$rootScope.safeApply();
6f105dbd5   Truong LD   add source code i...
51
52
53
54
55
  		}
  
  		// Illustration process
  		$scope.changeIllustrationCategory = function(currentIllustration){
  			$scope.currentIllustrationCate = $illustration.getList(currentIllustration);
c8bfdfd96   DANG   event click object
56
  			//console.log($scope.currentIllustrationCate);
422e7837d   DANG   Change color t-shirt
57
  		};
6f105dbd5   Truong LD   add source code i...
58
59
60
61
  
  		$scope.insertSvg = function(item){
  			fabric.loadSVGFromURL(item.path, function(objects, options) {
  				var shape = fabric.util.groupSVGElements(objects, options);
d75c45c56   Truong LD   remove test showcase
62
  				// shape.setFill('green');
6f105dbd5   Truong LD   add source code i...
63
64
65
66
67
  				canvas.add(shape.scale(0.6));
  				shape.set({ left: 150, top: 200 }).setCoords();
  				canvas.renderAll();
  				canvas.setActiveObject(shape);
  			});
422e7837d   DANG   Change color t-shirt
68
  		};
6f105dbd5   Truong LD   add source code i...
69
70
71
72
73
  
  		// color pattern
  		$scope.changeColorPattern = function(color){
  			canvas.getActiveObject().set("fill", color);
              canvas.renderAll();
422e7837d   DANG   Change color t-shirt
74
  		};
6f105dbd5   Truong LD   add source code i...
75
76
77
78
79
80
81
82
83
84
85
  		$scope.listColorPatterns = [
  			'#000000',
  			'#ffff00',
  			'#ff6600',
  			'#ff0000',
  			'#ff6262',
  			'#ffa19c',
  			'#ff9933',
  			'#c45d01',
  			'#5d2b03',
  			'#ffffcc',
6f105dbd5   Truong LD   add source code i...
86
87
88
89
90
91
92
93
94
95
  			'#000000',
  			'#ffff00',
  			'#ff6600',
  			'#ff0000',
  			'#ff6262',
  			'#ffa19c',
  			'#ff9933',
  			'#c45d01',
  			'#5d2b03',
  			'#ffffcc',
6f105dbd5   Truong LD   add source code i...
96
97
98
99
100
101
102
103
104
105
  			'#000000',
  			'#ffff00',
  			'#ff6600',
  			'#ff0000',
  			'#ff6262',
  			'#ffa19c',
  			'#ff9933',
  			'#c45d01',
  			'#5d2b03',
  			'#ffffcc',
6f105dbd5   Truong LD   add source code i...
106
  			'#ffffcc'
422e7837d   DANG   Change color t-shirt
107
  		];
c8bfdfd96   DANG   event click object
108
109
110
111
  		$scope.focusInputText = function() {
  			if($scope.typeObject != 'i-text')
  				$scope.iText = new fabric.IText('');
  		};
422e7837d   DANG   Change color t-shirt
112

98acd3acd   DANG   Change text
113
114
  		//Design text
  		$scope.inputText = function(e) {
c8bfdfd96   DANG   event click object
115
116
  			var iText = $scope.iText;
  			iText.text = e;
98acd3acd   DANG   Change text
117
118
119
  			canvas.add(iText);
  			canvas.renderAll();
  			canvas.setActiveObject(iText);
c8bfdfd96   DANG   event click object
120
  		};
98acd3acd   DANG   Change text
121

c8bfdfd96   DANG   event click object
122
123
  		//init
  		//$scope.showIllustration('default');
6f105dbd5   Truong LD   add source code i...
124
125
  	});
  });