Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var streetNewName = '',
- newStreet = '';
- $(function(){
- jQuery.fn.getText = function(){
- return $(this)
- .clone()
- .children()
- .remove()
- .end()
- .text();
- };
- $('body').on('hover', 'table.street_table', function(){
- return $tableRow = $('table.street_table').find('tr');
- });
- var $tableRow = $('table.street_table').find('tr'), //строка таблицы
- $renameInput = $('input.street_rename_input'), //инпут переименовать
- $renameConfirm = $('i.confirm.rename'), //кнопка ок в инпуте
- $renameCancel = $('i.cancel.rename'), //кнопка отменить в инпуте
- $addStreet = $('a.add_street'), //кнопка добавить улицу
- $addStreetInput = $('div.edit_rename.adding'), //инпут добавления улицы
- $addStreetConfirm = $('i.confirm.add'), //кнопка ок в инпуте добавления
- $addStreetCancel = $('i.cancel.add'), //кнопка отменить в добавления
- $tableEditButton = $tableRow.find('i.street_edit'); //карандашик редактипрования
- //действия с кнопкой "Добавить улицу" и с ее инпутом
- $addStreet.click(function(){
- if(!($(this).hasClass('hidden'))){
- $(this).animate({'height':'2px'}, 200).addClass('hidden');
- setTimeout(function(){
- $addStreetInput.removeClass('hide bounceOut').addClass('animated bounceIn');
- }, 150);
- }
- });
- $addStreetConfirm.click(function(){
- newStreet = $addStreetInput.find('input').val();
- $addStreetInput
- .addClass('bounceOut')
- .removeClass('bounceIn');
- setTimeout(function(){
- $addStreet
- .removeClass('hidden')
- .animate({'height':'33px'});
- $addStreetInput.addClass('hide');
- }, 550);
- return newStreet;
- });
- $addStreetCancel.click(function(){
- $addStreetInput
- .addClass('bounceOut')
- .removeClass('bounceIn');
- setTimeout(function(){
- $addStreet
- .removeClass('hidden')
- .animate({'height':'33px'});
- $addStreetInput.addClass('hide');
- }, 550);
- });
- $addStreetInput.focus().keyup(function(e){
- if(e.keyCode == 13){
- $addStreetConfirm.click();
- }
- if(e.keyCode == 27){
- $addStreetCancel.click();
- }
- });
- //таблица, ее ячейки и панель редактирования
- $tableRow.hover(function(){
- $container = $(this).find('td:eq(1)');
- if(!(($container).hasClass('editing'))){
- $container.append('<i class="street_edit fa fa-pencil"></i>');
- }
- $container.find('i.street_edit').click(function(){
- $(this).remove();
- $tableRow
- .find('td.editing')
- .find('div.edit_panel')
- .remove();
- $tableRow
- .find('td.editing')
- .removeClass('editing');
- $container
- .addClass('editing')
- .append("<div class=\"edit_panel zoomIn animated\">"
- +"<a href=\"#\" class=\"street_delete\">УДАЛИТЬ<\/a>"
- +"<a href=\"#\" class=\"street_rename\">РЕДАКТИРОВАТЬ<\/a>"
- +"<i class=\"street_close fa fa-times\"><\/i>"
- +"<\/div>");
- $deleteButton = $container.find('a.street_delete');
- $editButton = $container.find('a.street_rename');
- $editPanel = $container.find('div.edit_panel');
- $close = $container.find('i.street_close');
- $closeHtml = '<i class=\"street_close fa fa-times\"><\/i>';
- $editButton.click(function(){
- $currentValue = $container.getText();
- $editPanel.append('<div class=\"edit_rename zoomIn animated\">'
- +'<input type=\"text\" name=\"rename\" value=\"' + $currentValue + '\" class=\"street_rename_input\" />'
- +'<i class=\"confirm rename fa fa-check\"></i>'
- +'<i class=\"cancel rename fa fa-times\"></i>'
- +'</div>');
- $close.remove();
- $inputWrapper = $container.find('div.edit_rename');
- $input = $container.find('input.street_rename_input');
- $confirm = $container.find('i.confirm');
- $cancel = $container.find('i.cancel');
- $confirm.click(function(){
- streetNewName = $input.val();
- $container
- .removeClass('editing')
- .find('div.edit_panel')
- .removeClass('zoomIn')
- .addClass('zoomOut');
- setTimeout(function(){
- $container
- .find('div.edit_panel')
- .remove();
- },650);
- // console.log(streetNewName);
- return streetNewName;
- });
- $cancel.click(function(){
- $container
- .removeClass('editing')
- .find('div.edit_panel')
- .removeClass('zoomIn')
- .addClass('zoomOut');
- setTimeout(function(){
- $container
- .find('div.edit_panel')
- .remove();
- },650);
- });
- $inputWrapper.focus().keyup(function(e){
- if(e.keyCode == 13){
- $confirm.click();
- }
- if(e.keyCode == 27){
- $cancel.click();
- }
- });
- });
- $deleteButton.click(function(){
- $container
- .removeClass('editing')
- .find('div.edit_panel')
- .removeClass('zoomIn')
- .addClass('zoomOut');
- setTimeout(function(){
- $container
- .find('div.edit_panel')
- .remove();
- },650);
- });
- $container.find('i.street_close').click(function(){
- $container
- .removeClass('editing')
- .find('div.edit_panel')
- .removeClass('zoomIn')
- .addClass('zoomOut');
- setTimeout(function(){
- $container
- .find('div.edit_panel')
- .remove();
- },650);
- });
- });
- },function(){
- $container.find('i.street_edit').remove();
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement