Правки для сохранения в архив

parent 9622aa79
......@@ -58,6 +58,11 @@
{
display: none;
}
.b-preview_inner.active
{
display: block;
}
.b-loading {
display: none;
......
{"B-KazwCAcxM":"","B24WGzEo8v_":"","B9RwSi4oPAh":"","B9mWsSwAvo-":{"1":["a1654267236-1.jpg","a1654267236-2.jpg"]}}
\ No newline at end of file
{"B-KazwCAcxM":{"1":["a1654273551-3.jpg","a1654273551-2.jpg"],"2":["a1654273551-5.jpg","a1654273551-1.jpg"]},"B24WGzEo8v_":"","B9RwSi4oPAh":{"1":["a1654273593-5.jpg","a1654273593-6.jpg"],"2":["a1654273593-2.jpg","a1654273593-1.jpg"],"3":["a1654273593-4.jpg","a1654273593-3.jpg"]},"CSY8k3jD-6d":{"1":["a1654273618-5.jpg","a1654273618-6.jpg"],"2":["a1654273618-2.jpg","a1654273618-7.jpg"],"3":["a1654273618-4.jpg","a1654273618-1.jpg"],"4":["a1654273618-8.jpg","a1654273618-3.jpg"]}}
\ No newline at end of file
......@@ -124,17 +124,19 @@ $(document).ready(function(){
if (folderType == 'arch') {
if (archiveData[folderName]) {
var pairs = Object.keys(archiveData[folderName]);
if (pairs > 0)
if (pairs.length > 0)
{
var $folderContentWrap = $('.b-folder-content[data-folder="' + folderName + '"]', $foldersArchContentWrap);
pairs.forEach(function(pair){
$('.b-foto_inner[data-foto="' + archiveData[folderName][pair][0] + '"] ', $folderContentWrap).click();
$('.b-foto_inner[data-foto="' + archiveData[folderName][pair][1] + '"] ', $folderContentWrap).click();
//$('.b-foto_inner[data-foto="' + archiveData[folderName][pair][0] + '"] ', $folderContentWrap).click();
//$('.b-foto_inner[data-foto="' + archiveData[folderName][pair][1] + '"] ', $folderContentWrap).click();
$('.b-foto_inner[data-foto="' + archiveData[folderName][pair][0] + '"] ', $folderContentWrap).trigger( "click", {data: 'emul'});
$('.b-foto_inner[data-foto="' + archiveData[folderName][pair][1] + '"] ', $folderContentWrap).trigger( "click", {data: 'emul'});
});
$('.b-list_folders-item[data-folder="' + folderName + '"]').removeClass('viewed');
$saveButton.addClass('disabled');
//$('.b-list_folders-item[data-folder="' + folderName + '"]').removeClass('viewed');
//$saveButton.addClass('disabled');
}
}
}
......@@ -228,13 +230,13 @@ $(document).ready(function(){
function ShowFoldersNew()
{
$listFoldersNew.show();
$foldersNewContentWrap.show();
$foldersNewContentWrap.addClass('active');
}
function ShowFoldersArch()
{
$listFoldersArch.show();
$foldersArchContentWrap.show();
$foldersArchContentWrap.addClass('active');
}
// Обработка нажатия клавиш:
......@@ -244,7 +246,7 @@ $(document).ready(function(){
if (e.keyCode == 32)
{
var
$activeFolder = $('.b-folder-content.active', $foldersContentWrap),
$activeFolder = $('.b-preview_inner.active .b-folder-content.active', $foldersContentWrap),
$fotos = $('.b-foto_inner', $activeFolder);
if ($fotos.length == 2) {
......@@ -275,7 +277,14 @@ $(document).ready(function(){
});
// Клик на фото:
$foldersContentWrap.on('click', '.b-foto_inner', function(){
$foldersContentWrap.on('click', '.b-foto_inner', function(event, param){
var isEmul = false;
if (param) {
if (param['data'] == 'emul') {
isEmul = true;
}
}
var
$this = $(this),
......@@ -284,7 +293,7 @@ $(document).ready(function(){
folderName = $currentFolderWrap.data('folder'),
$pairedFoto;
console.log('AAA folderName ', folderName);
//console.log('AAA folderName ', folderName);
if (!$this.hasClass('selected'))
{
......@@ -313,7 +322,10 @@ $(document).ready(function(){
foto1.appendTo($('.sorted',$currentFolderWrap));
foto2.appendTo($('.sorted',$currentFolderWrap));
SetDataGroupContents($currentFolderWrap);
MarkArchFolderViewed(folderName, $this);
if (!isEmul) {
MarkArchFolderViewed(folderName, $this);
}
currentNumToSelect[folderName] = getCurrenNumToSelect($currentFolderWrap);
hasSelectedFoto[folderName] = false;
......@@ -326,10 +338,12 @@ $(document).ready(function(){
$this.addClass('selected');
// Если осталось одно неразмеченное фото, то выбираем и его автоматически:
if (hasSelectedFoto[folderName]) {
var notSelectedFotos = $('.b-foto_inner:not(.selected)', $currentFolderWrap);
if (notSelectedFotos.length == 1) {
notSelectedFotos.click();
if (!isEmul) {
if (hasSelectedFoto[folderName]) {
var notSelectedFotos = $('.b-foto_inner:not(.selected)', $currentFolderWrap);
if (notSelectedFotos.length == 1) {
notSelectedFotos.click();
}
}
}
......@@ -425,7 +439,7 @@ $(document).ready(function(){
var type = $(this).val();
$listFolders.hide();
$foldersContentWrapInner.hide();
$foldersContentWrapInner.removeClass('active');
if (type == 'new') ShowFoldersNew();
if (type == 'arch') ShowFoldersArch();
......@@ -505,7 +519,8 @@ $(document).ready(function(){
action = $form.attr('action'),
method = $form.attr('method');
console.log('AAA data = ', data);
//console.log('AAA data = ', data);
//return false;
$.ajax(action, {
type: method,
......
......@@ -100,27 +100,25 @@ class Main extends Common
*/
chdir('public/');
$file_name = "fotos.dat";
// Сохраняем в файл данные о состоянии архива:
$file_name = "fotos.dat";
$file_data = json_decode(file_get_contents($file_name), true);
foreach($data as $folder => $pairs) {
$data_folder = $pairs;
if (is_array($pairs)) {
$data_folder = [];
foreach($pairs as $pair => $files) {
$data_folder[$pair] = [];
foreach($files as $file) {
$data_folder[$pair][] = 'a'.$unic.'-'.$file;
$pieces = explode("-", $file);
$name = $pieces[count($pieces)-1];
$data_folder[$pair][] = 'a'.$unic.'-'.$name;
}
}
}
$file_data[$folder] = $data_folder;
}
file_put_contents($file_name, json_encode($file_data));
foreach($data as $folder => $pairs) {
......@@ -128,10 +126,26 @@ class Main extends Common
$from = "fotos/$folder";
$to = "fotos-arch/$folder";
// Переименовываем файлы внутри папки:
if (is_dir($to)) {
$d = dir($to);
while (false !== ($entry = $d->read()))
{
if ($entry == "." || $entry == "..") continue;
$pieces = explode("-", $entry);
$name = $pieces[count($pieces)-1];
rename("$to/$entry", "$to/a$unic-$name");
}
$d->close();
}
// Копируем папку в директорию-архив:
if (is_dir($from)) {
// Копируем папку в директорию-архив:
//$folders_list[] = $folder;
$folders_list[] = $folder;
mkdir($to, 0777);
chmod($to, 0777);
......@@ -143,7 +157,6 @@ class Main extends Common
}
$d->close();
// Удаляем старую папку:
$folders_list[] = $from;
$includes = glob($from.'/*');
......@@ -160,7 +173,7 @@ class Main extends Common
$resp = [
'result' => true,
'folders' => $folders_list,
//'folders' => $folders_list,
];
return new JsonResponse($resp);
}
......@@ -230,7 +243,6 @@ class Main extends Common
}
}
$resp = [
'folders' => $folders,
'archive' => $archive_data
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment