David 10 jaren geleden
bovenliggende
commit
2fee3d7d47
6 gewijzigde bestanden met toevoegingen van 59 en 20 verwijderingen
  1. 10 1
      back/db.py
  2. 20 17
      back/mover.py
  3. 1 1
      back/tasks.py
  4. 18 0
      back/web.py
  5. 9 1
      front/controllers/uploadListCtrl.js
  6. 1 0
      front/views/uploadList.html

+ 10 - 1
back/db.py

@@ -78,6 +78,15 @@ class db():
         for fname in os.listdir(RAW_PATH):
             if fname.endswith("mp4"):
                 self.insert_raw(file_info(os.path.join(RAW_PATH,fname)))
+	
+    def videoData(self,v_id):
+        ret = jsonable(self.ul_files.find_one({"_id": ObjectId(v_id)}))
+        return ret
+
+    def findCutId(self,video):
+        ret = self.cut_files.find_one({"out_fname": video})["_id"]
+        return ret
+
 
 
 def get_video_length(fname):
@@ -91,7 +100,7 @@ def get_video_length(fname):
 def file_info(fname):
     return {'file':fname,
             'length': get_video_length(fname),
-            'date': time.ctime(os.path.getctime(fname))
+            'date': os.path.getctime(fname)
            }
 
 def jsonable(el):

+ 20 - 17
back/mover.py

@@ -12,22 +12,25 @@ if len(sys.argv) != 2:
     sys.exit()
 
 fname=sys.argv[1]
+out_fname=os.path.join(RAW_PATH, os.path.basename(fname).replace('flv','mp4'))
+in_fname=fname
+if os.path.isfile(out_fname):
+    print("file out exists")
+    sys.exit()
 if fname.endswith("flv"):
-    out_fname=os.path.join(RAW_PATH, os.path.basename(fname).replace('flv','mp4'))
-    in_fname=fname
-    if os.path.isfile(out_fname):
-        print("file out exists")
-        sys.exit()
-    process=[ 'ffmpeg',
-            '-loglevel', 'error',
-            '-i', in_fname,
-            '-c', 'copy',
-            '-movflags', '+faststart',
-            '-f','mp4',
-            out_fname
-          ]
+	process=[ 'ffmpeg',
+	        '-loglevel', 'error',
+	        '-i', in_fname,
+	        '-c', 'copy',
+	        '-movflags', '+faststart',
+	        '-f','mp4',
+	        out_fname
+	      ]
+	
+	print(" ".join(process))
+	proc=Popen(process, universal_newlines=True)
+	proc.wait()
+else:
+	os.rename(in_fname,out_fname);
 
-    print(" ".join(process))
-    proc=Popen(process, universal_newlines=True)
-    proc.wait()
-    d.insert_raw(file_info(out_fname))
+d.insert_raw(file_info(out_fname))

+ 1 - 1
back/tasks.py

@@ -151,10 +151,10 @@ def run_process(process = None):
                  "error": "Argumento process invalido"
                }
     proc=Popen(process, stderr=PIPE, universal_newlines=True)
+    job = get_current_job()
     while True:
         line = proc.stderr.readline()
         if line != '' and line !=b'':
-            job = get_current_job()
             job.meta['progress'] = line.rstrip()
             job.save()
         else:

+ 18 - 0
back/web.py

@@ -88,6 +88,24 @@ def upload():
     tasks.upload_video(video,prof,texto1,texto2)
     return jsonify(ret)
 
+@app.route(BASE_PATH + '/reupload/<video_id>')
+def reupload(video_id):
+    today=datetime.date.today()
+
+    data = d.videoData(video_id)
+
+    video=data["video"]
+    tsplit=data["title"].split("-")
+    prof=tsplit[0]
+    texto1=tsplit[1]
+    texto2=tsplit[2]
+
+    cutid = d.findCutId(video)
+    tasks.upload_video(cutid,prof,texto1,texto2)
+
+    ret={"status":"Procesando"}
+    return jsonify(ret)
+
 @app.route(BASE_PATH + '/job')
 def job():
     job = tasks.long_job.delay("test")

+ 9 - 1
front/controllers/uploadListCtrl.js

@@ -1,10 +1,18 @@
-app.controller('uploadListCtrl', ['$scope', '$http', function ($scope, $http) {
+app.controller('uploadListCtrl', ['$scope', '$http', function ($scope, $http,notify) {
 	$scope.update = function() {
 		$http.get('back/list/uploaded').success(function(data) {
 	   		$scope.videolist = data.list;
 		});
 	};
 
+	$scope.retry = function(id) {
+		$http.get('back/reupload/'+id).success(function(data) {
+			notify({message:data.status,classes:"alert"});
+		}).error(function(data){
+			notify({message:data.status,classes:"alert alert-danger"});
+		});
+	};
+
 	$scope.update();
 
 }]);

+ 1 - 0
front/views/uploadList.html

@@ -23,6 +23,7 @@
 		<td>
 			<a ng-href="http://youtube.com/watch?v={{v.yt}}" target="_blank">Link</a>
 			<button class="btn" ngclipboard data-clipboard-text="{{v.yt}}">Copiar</button>
+			<button class="btn" ng-click="retry(v._id)">retry</button>
 		</td>
 	</tr>
 </table>