diff --git a/source/app/app.js b/source/app/app.js deleted file mode 100644 index 47a705f..0000000 --- a/source/app/app.js +++ /dev/null @@ -1,39 +0,0 @@ - -'use strict'; - -angular - /** - * default bootstraping of angular application - * structure dependencies application - */ - .module('app', [ - 'ui.utils', - 'ui.router', - 'restangular', - 'ui.bootstrap', - 'toastr', - 'app.layout' - ]) - - .config( function ( $urlRouterProvider, $logProvider, $locationProvider, RestangularProvider, config ) { - // - $locationProvider.html5Mode(false); - // OTHERWICE - $urlRouterProvider.otherwise('/layout/home'); - // Do I need to have a log.debug message visible ? - $logProvider.debugEnabled(!config.production); - - // Do I need customize a request base url ? - // RestangularProvider.setBaseUrl(config.apiPath); - // Do I need customize a request headers for application ? - // RestangularProvider.setDefaultHeaders({'custom-header': 'best request'}); - - }) - - .run( function ( $rootScope, $state, $log, config ) { - // Do I need to state parameters visible in the html view ? - $rootScope.$state = $state; - // log a configuration of aplication - $log.debug('app config\n', config); - - }); diff --git a/source/app/filters/humanize.filter.js b/source/app/filters/humanize.filter.js deleted file mode 100644 index bd86e2e..0000000 --- a/source/app/filters/humanize.filter.js +++ /dev/null @@ -1,26 +0,0 @@ - -'use strict'; - -angular - // as a deep for root module - .module('app') - // filter injector name - .filter('humanizeFilter', function () { - // filter method - return function ( string ) { - // filter executer - return String( string ) - // from camel case - .replace( /([A-Z])([A-Z])([a-z])|([a-z])([A-Z])/g, '$1$4 $2$3$5' ) - // .replace(/([a-z]){1,1}([A-Z])/g, function ( sib, f, s ) { return f+" "+s; }) - // spec - .replace(/[_-]+/g, ' ') - // normalize - .replace(/\s+/g, ' ') - // trim - .replace(/^\s*|\s*$/g, '') - // capitalize - .toLowerCase() - .replace(/^.{1,1}/, function ( sib ) { return sib.toUpperCase(); }); - }; - }); diff --git a/source/app/states/aleksandr/aleksandrForm.controller.js b/source/app/states/aleksandr/aleksandrForm.controller.js new file mode 100644 index 0000000..604ebb5 --- /dev/null +++ b/source/app/states/aleksandr/aleksandrForm.controller.js @@ -0,0 +1,123 @@ + +'use strict'; + +angular + + .module('layout.aleksandrForm') + .controller('aleksandrFormController', function ( $scope /*, $log, fromRoot*/ ) { + + var vm = $scope.vm = { + connections: [ + { + rank: 1, + name: 'Bower', + logo: 'https://libraries.io/assets/bower/bower-2b966bdccce8fcfcfb81cc75b7b113b01c311bc508413961dc189ff75b1b637c.png', + description: 'Manages all these things for you.', + url: 'https://gulp.readme.io/docs' + }, + { + rank: 2, + name: 'Gulp', + logo: 'http://cloud.atechmedia.com/blog/finding-a-frontend-workflow-isnt-easy/gulp.png', + description: 'Automate and enhance your workflow.', + url: 'https://gulp.readme.io/docs' + }, + { + rank: 3, + name: 'Angular', + description: 'HTML enhanced for web apps!', + url: 'https://docs.angularjs.org/api', + logo: 'https://s3-us-west-2.amazonaws.com/s.cdpn.io/68939/angular-logo.png' + }, + { + rank: 4, + name: 'JQuery', + description: 'DOM Traversal and Manipulation', + url: 'https://api.jquery.com/', + logo: 'https://brand.jquery.org/resources/jquery-mark-light.gif' + }, + { + rank: 5, + name: 'Lodash', + description: 'A modern JavaScript utility library.', + url: 'https://api.jquery.com/', + logo: 'data:image/jpeg;base64,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' + }, + { + rank: 6, + name: 'Moment', + description: 'Parse, validate and manipulate dates.', + url: 'http://momentjs.com/docs/', + logo: 'data:image/png;base64,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' + }, + { + rank: 7, + name: 'Bootstrap', + description: 'Designed for everyone, everywhere.', + url: 'http://getbootstrap.com/', + logo: 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxQSEhUUEhQUFRQUFA8PFBQVFBQUFxQUFBQWFhQVFBUYHCggGBolHBUUITEhJSksLi40Fx8zODQsNygtLjcBCgoKDg0OGxAQGiwkHSY0LCwsNDQsLCwrLCwsLCw0NSwsLCwsKy0sLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLP/AABEIAKAAoAMBIgACEQEDEQH/xAAcAAACAgMBAQAAAAAAAAAAAAAAAQIGAwUHBAj/xAA6EAACAgECBAQEAwUHBQAAAAABAgADEQQSBQYhMQcTIkEyUWFxFEJiI1KRkrEVM3KBobLDJDV0g5P/xAAYAQEBAQEBAAAAAAAAAAAAAAAAAQIDBP/EACARAQEAAgIDAQADAAAAAAAAAAABAhEhMQMSQVEiYYH/2gAMAwEAAhEDEQA/AOW7Y9sUYM9r0jENsccKQEZEMRkQFiAEcYhSAjCwhIHgQ2wzGIUsSRWGJIiBDbHiSAikBiPbFHCjEMRiOB445HMc25nmGYo4U8RmIQzIHHmRjEBgx4ihCnHFmEgeYzIyRhTzHIxgwHHFmEinmGYoCB5IxFCbc08xGKMGA4CEIDElmdF8MuRquIaTVvadrFkooYZzUyqHZ8ZwwO9Bj9J+cpPMHA7tFcadQu1x1BHVXX2dD7iZ9pbolm9NfCKPMqnMunoaxglas7t2RFLsfsqjJno4LwqzVX10VAF7GCjPYfNm+gGTPpXlPlajh9QrpUbiB5lpHrsb3JPsPkOwmM8/VnLP1cCTkPiW3d+DtxjPesHH+Hdn/LE0Wp071MUsR63HdHUowz29LDM+t5qeZOXKNdUa9QgPfY4wHrJ/Mjex7fQ46znPL+sTy/r5YJjnb+IcucO4TXuShtVq2U+TU4Nz2MPzeWowqjIyQs4/xvSX12n8UCt1mb3DY3ZsJOWA+HPU4nSZbdcctvBGIo8zTaUJEQEg8uYYijm3IRwzCFPMBEI4Hb/AHXK2m1FOfWlwtx+ixFCn6+qt/wDT5zoHMHL+n1tXlaisOvXaezIT7o3dT2nFfCzg2tH/AF2hNVm13012ndjWXXCsRvwR7qQfY+xne6X3KCQVJAJU4yPocHE8vk4y3HHPtwbmXwi1VBLaUjU15OB0S1RnoCCdrfcEduw7Tn2qoaptlqNW46lLFKN/KwBn17MOq0ldo22Ijr3w6hh/AiWeW/Vnkv1w3wIoVtdax6lNOxU/Lc6g/wCk7xNZw7l/TaexrKKK63ZdjMihcrkHBx9QJs5jPL2u2cru7EIQmWVM8Sudf7NrQIm668W+WT8CbNu5n9zjeMAd/pPnrVal7Hayxi7uS7sxyWY9yZ03x9vzqNKn7tVz/wD0dR/xzlmZ6fHNTb0eOamzzHFCbdDjAgDDMDyRyMYmnM4QxHABHFiMiFdF8GOa00l76e9ttWoKFWJwqXLkdT7BgQM/pWd+nx2RPovw20GpXT0v+PXU6ZkUqj6ch0GANgt84/CQR1BnDy4ztyzn1eYQhODmIQhAIQmh535hGg0dl3Tfjy6lP5rWztH1x1J+gMSbI4Z4q8VGo4ldtOVq26YdcjNfx/b1Fhj6SpQJPckknJJJyST3JPuTFPZJqaeqcTSUIo4UZhGIQrxgRxQzNuSWY8yEcipRmIQJgPMuPIHP9vDSUK+bp3O5qs4KH3eonpn5qeh+Y7zFy94f6jWrv09umZem79r6kz++mMiXPhHgg27Oq1Q2/uUJ1P8A7H7fyn7zGWWPVZtx+ugcuc96LWsEot/aEE+Uysr9Bk9Mdh8+0ss1PL/Lmm0SbNNUqA43N3ZsdtznqZtp5brfDlf6EITT8x8zabQpv1FgU4JVB1d+/RU7nt37Sa2jZavVJUjWWMERAWZmOAoHckz5w8RubzxHUBlyKKty0qehOcbrGHsWwOnsAPrJc+c/XcSOzHladW3LUDksR8LWn3PvjsM+/eVEz0YePXNdsMdc0wY5ERgzq6GI4oQqWYZihIPHJCRjzNuaUJcfCrlyjX6tqtSrMgqawBXZDuDKO4+8tmv4Ty5Tc1FrXLYj+W+X1GFP1btjr3mLnJdJ7ORCSl48U+SK+GvS1Ds1V/mYVyCUZNpwG9wQ3T7GUzS6OyzJrrscDoSiO+PvtBxLLLNrKjpr2rYPWzI4+F0Yow+zL1EvXCfFniFOA7V3gZ/vUw38yYlCzj79vtM2m0llmTXXZYB3KIzgfcqDiLJeyyXt1anxxsA9eiRj811LIP4Gpv6xajxxsI9GirU/NtQzj+ArX+s5IATkKCSM9ACTke2Jd/EHkQcOWhktsu87zS2a9oQIEIzgnvvPf5TFwwlT1x2nxfxW4heCFdKFPtUvq7YPrbJlKvtZ2LuzO7dWdmLMx/Ux6mZNNoLbATXVbYB3KVu4H3KgzPwTh/n6iqk7h5ltdTlVJKBnCkkfTPvNSSdNcR4xAS0+IPKI4delVb2Whq1sLMgGCWKhfT09pWq9LYzBFrsLnqECMWI+YUDMSyzcWVjjmTT6Z7GKojuw7qiM7D7hRkRaih0O11ZG77XVkbHzwwzKqEBMq6VyQoRyzfCoRizf4VxkyN9LI211ZGHdXUqw+4IyICEJERgwryQizGJpzdK8BP8AuFn/AI7/AO9Zt+ZuIcCTXXfitNqGuFv7VvUULdMnaH6rjHTEqfhRzFRodW9upYqhqasEKz+ospxhQfkZaeKa/lvUXPfab2ext7nbqQCfsBgdpxyn898/4x9bTxN5ffX38OsW0NpLrEoVVXaa1tAdnDe+5Ux1AwQvfMweI3PN3DNRXpNClVVdVSOQUyG3ZwoGegAH3OZX+e/EpLvw9WgQ11aWyu9WcY3NV/dqEzkIPfPU9O2Ouy4zxrgvFvLv1dl2mvVNroo+IDrt3bCGHfBGD1kmN1Nzg11tsudOA1cTXhmqCip9VbTTdt6bq3Qu3X3YeWwB/VIeI3PV3DNRXpNClVddVSMQU3A7s7VAyMAAffrKxzz4gLa+lr4epSjRPXbWWGN9iDamV7hANw69TuM3PGeM8F4qa79VZdprlQI6L+YDrtLbCGA64IwesTGzW5wa/Xt8QteaqNFxnSqlepcCt8qGDLbUW9XzKlCAfk09/jVzFfp9PRXUQF1Samu7KgkgLX8J/KfU38ZQvEznKrWrVptIpXS6ceksMF2C7FIU9QqqWHXqdxlj5u5t4ZxHSVtY1i6mhGaqsq+3zWVcq+Bh1ygk9erYSdLlrLbdTRQeCavTVpWuTUVDblwNikd0xg5BHXPeVnjHMGto4ppDZpatNZqDXpbLFfzl1FRtryAdq7WXJ+Z9c0+u1HA9eKrTZZoLq19aVIFyc56MFIJBzhh169pi595/p1Go0X4YPZVorUvZ39LWsrJ0G7r2U9T3LfSMceeiRZvFPj9ya7SaRSvk2WaK1ht9W5dSuMN7fCJ7vEznY8MvrFFNb3XV7nssz0rRiEQAdT1Lnv0+ueld525k4Xq3o1SW2fiKrdJhSrqBWt6vZuUjuF3Su+LXMen1+oqs0zFlWg1sSjIQ29j2YA9iIxx63Fk3pb+XtZxF+HqNDpKtIrHzG1dty5t3El3CGsYyT3JOAMdZ6/Eytn4Fv1DU3Xoaf2tWCu4uFYow+hwZpuJcxcM4noNPTqr7dM9ArJVULAsqbOg2kMMZI9xmeTmjmvhz8HbQ6RrQU2CtbK2ywrsDFiwG0FgCf8+wjXPX0ku4t3ifzdbw+rSfh1TzblsHmuu7YiCrcqj5sXX+WanjuoHFuAnWXIq6jT7yGUe9b7WA+QYe03HiT/Z7V6OriBsr3ra9V9fesotQdW6Ho29fYj0/aU7m7m3R1cPHDuG7nrPS21sgbd25hkj1Mx7nsJJOJqcmM4mnNRAQBjnd1eOEWYxNuZwEMQxIpiMyOYzAeYCEMQHJSMYMipQijgKSMjiMwoECM/0hHA33M/Nmo14qGo2YpFgr2LtwH2Zz16/As0cjmPMkmg8whDEK8cYkd0N025p7owZjzHukE90kWmMNGXgTzAGQ3QDQrJCQDRh5BOMSG4Q3QMmYy0xb5ItCpZhmQ3R7oVOEjuhvkGQGGZj3R7oH/9k=' + }, + { + rank: 8, + name: 'angular-bootstrap', + description: 'Bootstrap components written in pure AngularJS.', + url: 'https://angular-ui.github.io/bootstrap/', + logo: 'https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcQnPV51-ZQPUUKiRON4AdpNyblrnYQ3zUhyfARWGla8fOxY2C34qA' + }, + { + rank: 9, + name: 'font-awesome', + description: 'Font Awesome gives you scalable vector icons.', + url: 'http://fontawesome.io/', + logo: 'http://ahmed-badawy.com/blog/wp-content/uploads/2015/02/fontawesome.png' + }, + { + rank: 10, + name: 'angular-ui-router', + description: 'Easy way make application states.', + url: 'https://github.com/angular-ui/ui-router', + logo: 'data:image/jpeg;base64,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' + }, + { + rank: 11, + name: 'restangular', + description: 'Easy way make application requests.', + url: 'https://github.com/mgonto/restangular', + logo: 'data:image/jpeg;base64,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' + }, + { + rank: 11, + name: 'PACE', + description: 'Automatic page load progress bar.', + url: 'http://github.hubspot.com/pace/docs/welcome/', + logo: 'data:image/png;base64,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' + }, + { + rank: 12, + name: 'angular-toastr', + description: 'Toastr is a angular library for non-blocking notifications', + url: 'https://foxandxss.github.io/angular-toastr/', + logo: 'data:image/jpeg;base64,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' + } + + ], + // special fields for entering info + + nameAleksandrForm: '', + upassword: '', + emailUserAleksandrForm: '', + telefoneAleksandrForm: '', + setInfoUserAleksandrForm: setInfoUser, + infoUser : ["nameAleksandrForm", "upassword", "emailUserAleksandrForm", "telefoneAleksandrForm"] + + }; +// The function saves the user data and clears the fields + function setInfoUser () { + var inputFind = angular.element(document.querySelectorAll(".inputInfo")); + for (var i =0; i< vm.infoUser.length; i++) { + inputFind[i].textContent = $scope.vm[vm.infoUser[i]]; + $scope.vm[vm.infoUser[i]] = ""; + } + } + + }); diff --git a/source/app/states/aleksandr/aleksandrForm.html b/source/app/states/aleksandr/aleksandrForm.html new file mode 100644 index 0000000..22b8516 --- /dev/null +++ b/source/app/states/aleksandr/aleksandrForm.html @@ -0,0 +1,44 @@ + +
+

Введите ваши данные и нажмите сохранить

+
+ +
+ +

Ваш логин: {{vm.nameAleksandrForm}}

+ +

Ваш пароль: {{vm.upassword}}

+ +

Ваш email: {{vm.emailUserAleksandrForm}}

+ +

Ваш телефон: {{vm.telefoneAleksandrForm}}

+ + +
+ + +
+ +

Карточка посетителя, сюда сохраняются ваши введенные данные

+ + +
+ +

+

Ваш логин

+ +
+

+

Ваш пароль

+ +
+ +

+

Ваш email

+
+ +

+

Ваш телефон

+ +
+
\ No newline at end of file diff --git a/source/app/states/aleksandr/aleksandrForm.module .js b/source/app/states/aleksandr/aleksandrForm.module .js new file mode 100644 index 0000000..9541dfd --- /dev/null +++ b/source/app/states/aleksandr/aleksandrForm.module .js @@ -0,0 +1,26 @@ + +'use strict'; + +angular + + .module('layout.aleksandrForm', [ + ]) + + .config( function ( $stateProvider ) { + + $stateProvider.state('layout.aleksandrForm', { + url: '/aleksandrForm', + templateUrl: 'app/states/aleksandr/aleksandrForm.html', + controller: 'aleksandrFormController', + + resolve: { + // resolve это убъект уникальных для этой страници зависимостей + // имена полей обьектов могут быть затянуты в контроллер твоей страници как зависимость + // обычно используеться для выполнения важных для страници запросов + // без которых страницу будет невозможно нарисовать + fromRoot: function ( user ) { + return {user: user, prepered: true}; + } + } + }); + }); diff --git a/source/app/states/alina/alina.html b/source/app/states/alina/alina.html index 60ce8b7..098c417 100644 --- a/source/app/states/alina/alina.html +++ b/source/app/states/alina/alina.html @@ -1,7 +1,7 @@ -
+
-

'Allo, 'Allo!

+

'Hello my friends!

I'm Yeoman
angular-dft alwaes a pleasure scaffolding your application. diff --git a/source/app/states/dima/dima.controller.js b/source/app/states/dima/dima.controller.js index 8614cb2..dcbf3ed 100644 --- a/source/app/states/dima/dima.controller.js +++ b/source/app/states/dima/dima.controller.js @@ -8,6 +8,9 @@ angular .controller('dimaController', function ( $scope, $log, fromRoot ) { var vm = $scope.vm = { + + some: "TestTesTest", + connections: [ { rank: 1, diff --git a/source/app/states/dima/dima.html b/source/app/states/dima/dima.html index a4b0a30..6351ad5 100644 --- a/source/app/states/dima/dima.html +++ b/source/app/states/dima/dima.html @@ -1,7 +1,7 @@ -

- +

'Привет, 'Привет!

+

{{ vm.some }}

I'm Yeoman
angular-dft alwaes a pleasure scaffolding your application. diff --git a/source/app/states/fedoseev/fedoseev.html b/source/app/states/fedoseev/fedoseev.html index c62b37f..a5ee1a3 100644 --- a/source/app/states/fedoseev/fedoseev.html +++ b/source/app/states/fedoseev/fedoseev.html @@ -1,4 +1,187 @@ -

+
+
+
+
+
+ +
+

Time Line the WordPress theme

+ + + + + + +
+
+
+ +
+
2012
+
2011 + + + + + + + + + + + + +
+
2010
+
2009
+
2008
+
2007
+
2006
+
+
+
+
+
+
+
+

25.04.2011

+
+
+

Omnis voluptas. assumenda est omnis doloresd repelledus.

+
+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugiat aperiam adipisci, saepe ea, porro ad eveniet nihil ipsum reiciendis labore magni, nesciunt voluptatibus sint voluptatum aspernatur magnam provident veritati aliquid magnam provident veritatis.

+

Details 19

+
+
+
+
+
+

21.04.2011

+
+
+

Omnis voluptas. assumenda est omnis doloresd repelledus.

+
+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugiat aperiam adipisci, saepe ea, porro ad eveniet nihil ipsum reiciendis labore magni, nesciunt voluptatibus sint voluptatum aspernatur magnam provident veritati aliquid magnam provident veritatis.adsa sadwq qwe asdasd as

+

Details 19

+
+
+
+
+
+

18.04.2011

+
+
+

Omnis voluptas. assumenda est omnis doloresd repelledus.

+
+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugiat aperiam adipisci, saepe ea, porro ad eveniet nihil ipsum reiciendis labore magni, nesciunt voluptatibus sint voluptatum aspernatur magnam provident veritati aliquid magnam provident veritatis.

+

Details 19

+
+
+
+
+
+

16.04.2011

+
+
+

Omnis voluptas. assumenda est omnis doloresd repelledus.

+
+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugiat aperiam adipisci, saepe ea, porro ad eveniet nihil ipsum reiciendis labore magni, nesciunt voluptatibus sint voluptatum aspernatur magnam provident veritati aliquid magnam provident veritatis.

+

Details 19

+
+
+
+
+
+ + +
+
+ +

Time Line is the new way to present your blog entries and organize an archives. Portfolio included.

+
+
+
+ +
+
+
+
+

About

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nemo iusto fugiat excepturi, maiores sunt quibusdam ipsa, doloremque quisquam nulla, ratione magnam odio voluptatum non pariatur reiciendis! Quibusdam laborum, nesciunt pariatur reiciendis! sdam labonesciunt omnis?

+

«Consectetur adipisicing elit. Quam iusto, libero dolore similique et, commodi laudantium sequi illo harum eveniet ex vel nostrum ipsa quae repellendus eius quas nemo Lorem ipsum dolor sit amet, c minus.

+
+
+

Recent works

+ + + + +
+
+

Get in touch

+
+

* required

+

* required

+ + +
+
+
+
+
+
+
+

2012 © Company Name

+

WordPress Theme by PandaThemes

+
+
+ +
diff --git a/source/app/states/home/home.module.js b/source/app/states/home/home.module.js deleted file mode 100644 index 7506b6b..0000000 --- a/source/app/states/home/home.module.js +++ /dev/null @@ -1,26 +0,0 @@ - -'use strict'; - -angular - - .module('layout.home', [ - - ]) - - .config( function ( $stateProvider ) { - - $stateProvider.state('layout.home', { - url: '/home', - templateUrl: 'app/states/home/home.html', - controller: 'homeController', - /** - * - */ - resolve: { - // get and prepere user from root - fromRoot: function ( user ) { - return {user: user, prepered: true}; - } - } - }); - }); diff --git a/source/app/states/layout.controller.js b/source/app/states/layout.controller.js index 447f7ad..a8b5562 100644 --- a/source/app/states/layout.controller.js +++ b/source/app/states/layout.controller.js @@ -14,5 +14,4 @@ angular toastr.error('Sorry but this state not specified by scaffolding.', state); } }; - }); diff --git a/source/app/states/layout.html b/source/app/states/layout.html index d76ae4e..9508afa 100644 --- a/source/app/states/layout.html +++ b/source/app/states/layout.html @@ -26,6 +26,10 @@
  • Dima
  • Fedoseev
  • Nakhaev
  • +
  • Pasha
  • +
  • Alina
  • + +
  • aleksandrForm
  • diff --git a/source/app/states/layout.module.js b/source/app/states/layout.module.js index e693ac5..5c0c288 100644 --- a/source/app/states/layout.module.js +++ b/source/app/states/layout.module.js @@ -10,7 +10,10 @@ angular 'layout.home', 'layout.yakov', 'layout.dima', - 'layout.nakhaev' + 'layout.fedoseev', + 'layout.nakhaev', + 'layout.alina', + 'layout.aleksandrForm' ]) .config( function ( $stateProvider ) { diff --git a/source/app/states/home/home.controller.js b/source/app/states/pasha/pasha.controller.js similarity index 99% rename from source/app/states/home/home.controller.js rename to source/app/states/pasha/pasha.controller.js index 9b32161..d7a8880 100644 --- a/source/app/states/home/home.controller.js +++ b/source/app/states/pasha/pasha.controller.js @@ -3,9 +3,8 @@ angular - .module('layout.home') - - .controller('homeController', function ( $scope, $log, fromRoot ) { + .module('layout.pasha') + .controller('pashaController', function ( $scope, $log, fromRoot ) { var vm = $scope.vm = { connections: [ diff --git a/source/app/states/pasha/pasha.html b/source/app/states/pasha/pasha.html new file mode 100644 index 0000000..cfd7062 --- /dev/null +++ b/source/app/states/pasha/pasha.html @@ -0,0 +1,25 @@ +
    +
    +

    'Allo, 'Allo! Yakov?

    +

    + I'm Yeoman
    + angular-dft alwaes a pleasure scaffolding your application. +

    + +

    With many thanks to the contributions of Yeoman.

    + +

    Also with great gratitude to the project connected the following technologies.

    +
    +
    +
    +
    + {{ awesomeThing.title }} +
    +

    {{ item.name }}

    +

    {{ item.description }}

    +
    +
    +
    +
    + +
    diff --git a/source/app/states/pasha/pasha.module.js b/source/app/states/pasha/pasha.module.js new file mode 100644 index 0000000..ace8d27 --- /dev/null +++ b/source/app/states/pasha/pasha.module.js @@ -0,0 +1,29 @@ + +'use strict'; + +angular + + .module('layout.pasha', [ + + ]) + + .config( function ( $stateProvider ) { + + $stateProvider.state('layout.pasha', { + url: '/pasha', + templateUrl: 'app/states/pasha/pasha.html', + controller: 'pashaController', + /** + * + */ + resolve: { + // resolve is an object, unique for that page dependencies + // the names of objects fields can be pulled into controller + // usually used to execution of important requests on that page, + // without which the page cannot be draw + fromRoot: function ( user ) { + return {user: user, prepered: true}; + } + } + }); + }); diff --git a/source/assets/images/TimeLine/Latest_1.png b/source/assets/images/TimeLine/Latest_1.png new file mode 100644 index 0000000..b61163b Binary files /dev/null and b/source/assets/images/TimeLine/Latest_1.png differ diff --git a/source/assets/images/TimeLine/Latest_2.png b/source/assets/images/TimeLine/Latest_2.png new file mode 100644 index 0000000..dfa213d Binary files /dev/null and b/source/assets/images/TimeLine/Latest_2.png differ diff --git a/source/assets/images/TimeLine/Latest_3.png b/source/assets/images/TimeLine/Latest_3.png new file mode 100644 index 0000000..e4515ff Binary files /dev/null and b/source/assets/images/TimeLine/Latest_3.png differ diff --git a/source/assets/images/TimeLine/Latest_4.png b/source/assets/images/TimeLine/Latest_4.png new file mode 100644 index 0000000..1dc2774 Binary files /dev/null and b/source/assets/images/TimeLine/Latest_4.png differ diff --git a/source/assets/images/TimeLine/Logo.png b/source/assets/images/TimeLine/Logo.png new file mode 100644 index 0000000..ce7fbc3 Binary files /dev/null and b/source/assets/images/TimeLine/Logo.png differ diff --git a/source/assets/images/TimeLine/bg.jpg b/source/assets/images/TimeLine/bg.jpg new file mode 100644 index 0000000..58f1601 Binary files /dev/null and b/source/assets/images/TimeLine/bg.jpg differ diff --git a/source/assets/images/TimeLine/city_1.jpg b/source/assets/images/TimeLine/city_1.jpg new file mode 100644 index 0000000..92f9c49 Binary files /dev/null and b/source/assets/images/TimeLine/city_1.jpg differ diff --git a/source/assets/images/TimeLine/city_2.jpg b/source/assets/images/TimeLine/city_2.jpg new file mode 100644 index 0000000..021f165 Binary files /dev/null and b/source/assets/images/TimeLine/city_2.jpg differ diff --git a/source/assets/images/TimeLine/city_3.jpg b/source/assets/images/TimeLine/city_3.jpg new file mode 100644 index 0000000..c96026e Binary files /dev/null and b/source/assets/images/TimeLine/city_3.jpg differ diff --git a/source/assets/images/TimeLine/city_4.jpg b/source/assets/images/TimeLine/city_4.jpg new file mode 100644 index 0000000..ca980c6 Binary files /dev/null and b/source/assets/images/TimeLine/city_4.jpg differ diff --git a/source/assets/images/TimeLine/comments.png b/source/assets/images/TimeLine/comments.png new file mode 100644 index 0000000..2682550 Binary files /dev/null and b/source/assets/images/TimeLine/comments.png differ diff --git a/source/assets/images/TimeLine/icons.png b/source/assets/images/TimeLine/icons.png new file mode 100644 index 0000000..4e1a916 Binary files /dev/null and b/source/assets/images/TimeLine/icons.png differ diff --git a/source/assets/images/TimeLine/like.png b/source/assets/images/TimeLine/like.png new file mode 100644 index 0000000..702306d Binary files /dev/null and b/source/assets/images/TimeLine/like.png differ diff --git a/source/assets/images/TimeLine/purch_btn.jpg b/source/assets/images/TimeLine/purch_btn.jpg new file mode 100644 index 0000000..d25e305 Binary files /dev/null and b/source/assets/images/TimeLine/purch_btn.jpg differ diff --git a/source/styles/all.less b/source/styles/all.less index 5bac055..bd25298 100644 --- a/source/styles/all.less +++ b/source/styles/all.less @@ -9,6 +9,10 @@ // common components // @import 'less/components/some-component-name.less'; + // unique style sheet for pages @import 'less/pages/home.less'; @import 'less/pages/yakov.less'; +@import 'less/pages/fedoseev.less'; +@import 'less/pages/dima.less'; +@import 'less/pages/aleksandr.less'; \ No newline at end of file diff --git a/source/styles/less/pages/aleksandr.less b/source/styles/less/pages/aleksandr.less new file mode 100644 index 0000000..050f70b --- /dev/null +++ b/source/styles/less/pages/aleksandr.less @@ -0,0 +1,22 @@ + +#aleksFormFirst { + padding: 10px; + background-color: lightslategray; + border-radius: 10px; + max-width: 100%; + max-height: 100%; +} + +#aleksFormLast { + padding: 10px; + margin-top: 30px; + background-color: @green; + max-width: 100%; + max-height: 100%; + border-radius: 10px; +} +h3 { + text-align: center; +} + + diff --git a/source/styles/less/pages/dima.less b/source/styles/less/pages/dima.less new file mode 100644 index 0000000..fa3f9bd --- /dev/null +++ b/source/styles/less/pages/dima.less @@ -0,0 +1,6 @@ +#dimaPage { + // style only for dimaPage template + + background-color: @orange; + +} diff --git a/source/styles/less/pages/fedoseev.less b/source/styles/less/pages/fedoseev.less new file mode 100644 index 0000000..eccd418 --- /dev/null +++ b/source/styles/less/pages/fedoseev.less @@ -0,0 +1,424 @@ +//@grid-gutter-width: 20px; + + +#fed { + .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 { + padding-right: 10px; + padding-left: 10px; + } + .container { + max-width: 940px; + padding: 0; + } + + font-family: Arial, Helvetica, sans-serif; + max-height: 1300px; + padding-top: 1px; + background: url(../../../assets/images/TimeLine/bg.jpg) center center / cover no-repeat; + + .bodyContainer { + max-width: 1140px; + margin: 50px auto 0 auto; + background: rgba(0,0,0,.3); + @media(max-width: 768px) { + margin-top: 10px; + img { + margin-left: 15px; + } + } + } + + header { + padding-top: 32px; + @media(max-width: 768px) { + margin-top: 15px; + } + + } + .socials { + float: right; + color: white; + font-size: 11px; + padding: 18px 0 0 82px; + @media(max-width: 800px) { + padding: 18px 20px 0 20px; + } + + p { + display: inline-block; + margin-right: 30px; + @media(max-width: 740px) { + display:block; + } + } + + } + .soc { + margin-left: 4px; + float: right; + overflow: hidden; + display: inline-block; + width: 16px; + height: 16px; + background: url(../../../assets/images/TimeLine/icons.png) ; + } + a:nth-child(6) { + background-position: -20px 0 ; + } + a:nth-child(5) { + background-position: -40px 0 ; + } + a:nth-child(4) { + background-position: -60px 0 ; + } + a:nth-child(3) { + background-position: -80px 0 ; + } + .navbar { + min-height: 42px; + margin-top: 35px; + margin-bottom: 0; + border-radius: 0; + background: rgba(0,0,0,.5); + @media(max-width: 768px) { + margin-top: 15px; + } + a { + color: white; + font-size: 16px; + + } + a:hover { + background: rgba(0,0,0,.3); + } + a:focus { + background: rgba(0,0,0,.7); + } + } + .nav>li>a { + padding: 7px 13px 5px 15px; + border-left: 1px #363636 solid; + } + .nav>li>a:last-child { + border-right: 1px #363636 solid; + } + .nav>li { + padding-top: 5px; + } + .dropdown-menu { + background: rgba(0,0,0,.7); + } + .navbar-toggle { + background-color: white;//!! + } + .container-fluid { + padding-left: 73px; + @media(max-width: 850px) { + padding-left: 15px; + } + } + .bl { + margin-top: -1px; + background: rgba(0,0,0,.3); + width: 100%; + height: 5px; + } + .fa-search { + color: grey; + margin-left: -18px; + margin-right: 77px; + font-size: 12px; + } + .search { + width: 150px; + height: 24px; + border-radius: 2px; + border: 0; + font-size: 11px; + padding: 5px; + padding-right: 25px; + } + .datePick { + padding-left: 95px; + min-height: 60px; + background-color: #a44a7d; + @media(max-width: 1020px) { + padding-left: 15px; + } + a{ + text-transform: uppercase; + font-size: 11px; + display: inline-block; + padding: 24px 8px 20px 9px; + text-decoration: none; + color: rgba(255,255,255,.80); + + } + .active>a { + background-color: rgba(0,0,0,.1); + color:white; + } + .active { + color: white; + background-color: rgba(0,0,0,.25); + } + } + + .year { + margin: 0; + padding: 0 6px 0 10px; + + font-weight: bold; + color: rgba(255,255,255,.80); + font-size: 18px; + display: inline-block; + } + .year>div { + margin-left: -5px; + height: 60px; + display: inline-block; + } + .year>div:first-child { + margin-left: 0px; + } + .year a:hover { + background-color: rgba(50,50,50,.30); + } + .year:hover { + color: white; + cursor: pointer; + } + + .wrapper { + background-color: white; + padding-top: 47px; + @media(max-width: 992px) { + padding-top: 15px; + } + + + &>.container:first-child { + border-bottom: 1px solid #e5e5e5; + padding-bottom: 33px; + } + } + .thumbn { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + padding: 0; + border: 0; + p{ + font-size: 13px; + margin-bottom: 15px; + } + &>p:first-child { + color: #b8b8b8; + } + span { + color: black; + } + .caption p:first-child { + margin-top: 10px; + min-height: 170px; + @media(max-width: 992px) { + min-height: 70px; + } + } + .caption { + padding-left: 0; + } + } + .thumb-unit { + display: inline-block; + position: relative; + width: 220px; + height: 120px; + overflow: hidden; + } + + .thumb-overlay { + position: absolute; + top: 100%; + right: 0; + bottom: null; + left: 0; + height: 100%; + background: rgba(0,0,0,.5); + transition: all .25s; + h1 { + font-size: 14px; + color: white; + font-weight: bold; + margin: 11px 10px 4px 10px; + } + + } + .thumb-unit:hover .thumb-overlay{ + top:40%; + } + + .thumb-unit {// :nth-child(1) + background: url(../../../assets/images/TimeLine/city_1.jpg) center center / cover ; + } + + .comments { + background: url(../../../assets/images/TimeLine/comments.png) no-repeat; + padding-left: 20px; + font-size: 11px; + font-weight: bold; + text-decoration: none; + color: black; + display: inline-block; + height: 25px; + } + .detailsBtn { + font-size: 10px; + display: inline-block; + padding: 2px 8px; + text-decoration: none; + width: 48px; + height: 21px; + border: 1px solid #cccccc; + border-radius: 2px; + box-shadow: 0 0 4px 4px #eeeeee; + color: black; + background-image: -webkit-linear-gradient(#fff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(#fff 0%, #e0e0e0 100%); + background-image: linear-gradient(#fff 0%, #e0e0e0 100%); + background-repeat: repeat-x; + margin-right: 10px; + margin-left: 5px; + } + .detailsBtn:hover { + background-image: -webkit-linear-gradient(#e0e0e0 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(#e0e0e0 0%, #e0e0e0 100%); + background-image: linear-gradient(#e0e0e0 0%, #e0e0e0 100%); + } + + .purchase { + padding: 50px 0 45px 0 ; + h2 { + font-size: 24px; + margin-top: 5px; + line-height: 1.2; + color: #555555; + } + a { + background: url(../../../assets/images/TimeLine/purch_btn.jpg) -2px ; + height: 62px; + width: 240px; + border-radius: 5px; + + } + a:hover { + box-shadow: 0 0 4px 4px #eeeeee; + } + } + + .floatRight { + float: right; + } + + footer { + background-color: rgba(0,0,0,.3); + padding-top: 10px; + article { + padding: 0; + } + h1 { + font-size: 18px; + color: white; + margin-bottom: 15px; + } + p { + font-size: 13px; + color: white; + word-spacing: 1.3; + } + + .container { + border-bottom: 1px solid rgba(255,255,255,.3); + padding-bottom: 48px; + } + .marked { + margin-top: 15px; + position: relative; + padding-left: 40px; + span { + left: -5px; + top: -30px; + position: absolute; + font-size: 50px; + } + } + + .recent { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + @media(max-width: 992px) { + justify-content: center; + } + a { + margin-bottom: 10px; + } + h1 { + width: 100%; + } + @media(max-width: 680px) { + a:last-child { + display: none; + } + h1 { + padding-left: 10px; + } + } + } + form { + border-radius: 2px; + background-color: rgba(0,0,0,.5); + padding: 11px 11px 45px 11px; + input[type="text"], textarea, input[type="submit"] { + font-size: 11px; + border-radius: 2px; + border: 0; + margin-bottom: 7px; + color: grey; + padding: 5px 8px; + } + input[type="text"] { + width: 166px; + } + p { + display: inline-block; + margin-left: 10px; + font-size: 11px; + color: grey; + } + textarea { + width: 277px; + } + input[type="submit"] { + margin: 2px 7px 5px 0; + float: right; + text-transform: uppercase; + } + input[type="submit"]:hover { + background-color: #c3c3c3; + } + } + } + .copyrights { + background-color: rgba(0,0,0,.3); + .container { + padding-top: 10px; + } + p { + display: inline-block; + font-size: 11px; + color: #b7b6b5; + } + } +}