mcms_pages 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. data/app/assets/images/layouts/default.png +0 -0
  2. data/app/assets/javascripts/pageFormAdmin.js +50 -15
  3. data/app/assets/stylesheets/mcms_pages/images/back_ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  4. data/app/assets/stylesheets/mcms_pages/images/spellayt.gif +0 -0
  5. data/app/assets/stylesheets/mcms_pages/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  6. data/app/assets/stylesheets/mcms_pages/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
  7. data/app/assets/stylesheets/mcms_pages/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  8. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  9. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  10. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  11. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  12. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  13. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  14. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  15. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  16. data/app/assets/stylesheets/mcms_pages/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  17. data/app/assets/stylesheets/mcms_pages/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  18. data/app/assets/stylesheets/mcms_pages/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  19. data/app/assets/stylesheets/mcms_pages/images/ui-bg_green.png +1 -0
  20. data/app/assets/stylesheets/mcms_pages/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  21. data/app/assets/stylesheets/mcms_pages/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  22. data/app/assets/stylesheets/mcms_pages/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  23. data/app/assets/stylesheets/mcms_pages/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  24. data/app/assets/stylesheets/mcms_pages/images/ui-icons_217bc0_256x240.png +0 -0
  25. data/app/assets/stylesheets/mcms_pages/images/ui-icons_222222_256x240.png +0 -0
  26. data/app/assets/stylesheets/mcms_pages/images/ui-icons_2e83ff_256x240.png +0 -0
  27. data/app/assets/stylesheets/mcms_pages/images/ui-icons_454545_256x240.png +0 -0
  28. data/app/assets/stylesheets/mcms_pages/images/ui-icons_469bdd_256x240.png +0 -0
  29. data/app/assets/stylesheets/mcms_pages/images/ui-icons_6da8d5_256x240.png +0 -0
  30. data/app/assets/stylesheets/mcms_pages/images/ui-icons_888888_256x240.png +0 -0
  31. data/app/assets/stylesheets/mcms_pages/images/ui-icons_cd0a0a_256x240.png +0 -0
  32. data/app/assets/stylesheets/mcms_pages/images/ui-icons_d8e7f3_256x240.png +0 -0
  33. data/app/assets/stylesheets/mcms_pages/images/ui-icons_f9bd01_256x240.png +0 -0
  34. data/app/assets/stylesheets/mcms_pages/layout.css.scss +5 -5
  35. data/app/assets/stylesheets/mcms_pages/page_form.css.scss +64 -0
  36. data/app/assets/stylesheets/mcms_pages/page_styles.css +92 -15
  37. data/app/assets/stylesheets/mcms_pages/pages.css.scss +37 -24
  38. data/app/assets/stylesheets/mcms_pages/tabs.css +573 -0
  39. data/app/controllers/admin/layouts_controller.rb +1 -1
  40. data/app/controllers/admin/pages_controller.rb +54 -28
  41. data/app/controllers/admin_controller.rb +36 -2
  42. data/app/controllers/pages_controller.rb +23 -11
  43. data/app/helpers/pages_helper.rb +52 -44
  44. data/app/models/ckeditor/asset.rb +2 -1
  45. data/app/models/page.rb +5 -1
  46. data/app/models/page_part.rb +25 -44
  47. data/app/views/mcms_pages/admin/layouts/index.html.erb +9 -6
  48. data/app/views/mcms_pages/admin/pages/_action.html.erb +22 -3
  49. data/app/views/mcms_pages/admin/pages/_form.html.erb +8 -8
  50. data/app/views/mcms_pages/admin/pages/_form.js.erb +12 -11
  51. data/app/views/mcms_pages/admin/pages/_page_part_edit_form.html.erb +18 -45
  52. data/app/views/mcms_pages/admin/pages/_page_part_edit_form.html.erb~ +113 -0
  53. data/app/views/mcms_pages/admin/pages/_page_part_form.html.erb +5 -5
  54. data/app/views/mcms_pages/admin/pages/_page_part_form.html.erb~ +133 -0
  55. data/app/views/mcms_pages/admin/pages/_page_part_form_field.html.erb +36 -6
  56. data/app/views/mcms_pages/admin/pages/_page_part_page_form_field.html.erb +9 -19
  57. data/app/views/mcms_pages/admin/pages/add_page_part.js.erb +26 -4
  58. data/app/views/mcms_pages/admin/pages/edit.html.erb +2 -0
  59. data/app/views/mcms_pages/admin/pages/index.html.erb +4 -2
  60. data/app/views/mcms_pages/admin/pages/new.html.erb +2 -0
  61. data/app/views/mcms_pages/layouts/_footer.html.erb +3 -2
  62. data/app/views/mcms_pages/layouts/_head.html.erb +18 -0
  63. data/app/views/mcms_pages/layouts/_header.html.erb +3 -2
  64. data/app/views/mcms_pages/layouts/_javascript.html.erb +1 -1
  65. data/app/views/mcms_pages/layouts/_stylesheets.html.erb +2 -3
  66. data/app/views/mcms_pages/layouts/mcms_layout.html.erb +2 -3
  67. data/app/views/mcms_pages/pages/_left_side_body.html.erb +1 -4
  68. data/app/views/mcms_pages/pages/_main_body.html.erb +8 -3
  69. data/app/views/mcms_pages/pages/_menu.html.erb +6 -2
  70. data/app/views/mcms_pages/pages/_menubar.html.erb +16 -6
  71. data/app/views/mcms_pages/pages/_one_column_layout.html.erb +5 -2
  72. data/app/views/mcms_pages/pages/_right_side_body.html.erb +1 -4
  73. data/app/views/mcms_pages/pages/_three_column_layout.html.erb +17 -6
  74. data/app/views/mcms_pages/pages/_two_column_layout.html.erb +21 -9
  75. data/app/views/mcms_pages/pages/home.html.erb +10 -8
  76. data/app/views/mcms_pages/pages/show.html.erb +14 -6
  77. data/db/migrate/20120718115449_add_depth_to_pages.rb +5 -0
  78. data/db/seeds.rb +5 -3
  79. data/lib/generators/mcms_pages/mcms_pages_generator.rb +1 -1
  80. data/lib/generators/mcms_pages/templates/{asset_manager.rb → asset.rb} +28 -25
  81. data/lib/mcms_pages/engine.rb +1 -0
  82. metadata +42 -6
  83. data/app/assets/javascripts/menuPage.js +0 -45
  84. data/app/controllers/application_controller.rb +0 -20
@@ -1,4 +1,4 @@
1
- /*
1
+ /*
2
2
  * @File Name : pageFormAdmin.js
3
3
  * @Company Name : Mindfire Solutions Private Limited
4
4
  * @Creator Name : Vikram Kumar Mishra
@@ -13,6 +13,7 @@ $(document).ready(function(){
13
13
 
14
14
  //assigning DOM element in a variable
15
15
  var treeElement = $('.pages-tree .page-toggle');
16
+ var textBox = $('#page_link_url');
16
17
 
17
18
  /*
18
19
  * @params : None
@@ -30,9 +31,12 @@ $(document).ready(function(){
30
31
  //function call to find first and last li of tree
31
32
  findFirstLastLi();
32
33
 
34
+ //function call to check length of value of textbox
35
+ textBox.blur(validateValue);
36
+
33
37
  } // end initialize function
34
38
 
35
-
39
+
36
40
  /*
37
41
  * @params : None
38
42
  * @return : None
@@ -46,13 +50,14 @@ $(document).ready(function(){
46
50
  $('.page-tabs #page-part-form #page-part-fields-0').show();
47
51
  $('.page-tabs #page-part-form #page-part-fields-0 div').show();
48
52
  $('.page-tabs ul li:first a').addClass('active');
53
+ $('.page-tabs ul li:first').addClass('ui-tabs-selected');
49
54
 
50
55
  //assigning the DOM element in a variable
51
56
  var tabElt = $('.page-tabs ul li a');
52
57
 
53
58
  //function call to show/hide tab content for click event
54
59
  tabElt.click(toggleTab);
55
-
60
+
56
61
  } // end addTab function
57
62
 
58
63
  /*
@@ -64,14 +69,16 @@ $(document).ready(function(){
64
69
 
65
70
  //making all links inactive by removng the class attribute "active"
66
71
  $('.page-tabs ul li a').removeClass('active');
72
+ $('.page-tabs ul li').removeClass('ui-tabs-selected');
67
73
 
68
74
  //activating the currently clicked link
69
75
  $(this).addClass('active');
76
+ $(this).parent('li').addClass('ui-tabs-selected');
70
77
 
71
78
  //finding the href of current link to identify the target div
72
79
  //because ID of target div is the href for the link
73
- var currentTabDiv = $(this).attr('href');
74
-
80
+ var currentTabDiv = $(this).attr('id');
81
+
75
82
  //hide all child divs
76
83
  $('.page-tabs div').hide();
77
84
 
@@ -79,7 +86,7 @@ $(document).ready(function(){
79
86
  $(currentTabDiv).parent().show();
80
87
  $(currentTabDiv).show();
81
88
  $(currentTabDiv+' div').show();
82
-
89
+
83
90
  } // end toggleTab function
84
91
 
85
92
  /*
@@ -88,7 +95,7 @@ $(document).ready(function(){
88
95
  * @purpose : function to show and hide pages tree
89
96
  */
90
97
  var toggleTree = function(e){
91
-
98
+
92
99
  //If this method is called,
93
100
  //the default action of the event will not be triggered.
94
101
  e.preventDefault();
@@ -111,7 +118,7 @@ $(document).ready(function(){
111
118
 
112
119
  //and slide up the child nodes, i.e. hide child nodes
113
120
  nestedElt.slideUp();
114
-
121
+
115
122
  } // end if block
116
123
 
117
124
  // if node with child is not expanded, i.e. node with child is not having
@@ -130,7 +137,7 @@ $(document).ready(function(){
130
137
  //find last li of child element and add the class page-branch-end
131
138
  //nestedElt.find('li:last').addClass('pages-tree-end');
132
139
  $('#pages-records.pages-tree #page-sortable-list li:last-child').addClass('pages-tree-end');
133
-
140
+
134
141
  nestedElt.find('li:last').addClass('pages-tree-end');
135
142
 
136
143
  //check of ul have more than one li as siblings
@@ -149,9 +156,9 @@ $(document).ready(function(){
149
156
 
150
157
  //remove the loading class as the content is loaded
151
158
  liElt.removeClass('page-loading');
152
-
159
+
153
160
  }); // end load method
154
-
161
+
155
162
  } //end else block
156
163
 
157
164
  } // end toggleTree function
@@ -162,7 +169,7 @@ $(document).ready(function(){
162
169
  * @purpose : function to find first and last li element and add class pages-tree-start to it
163
170
  */
164
171
  var findFirstLastLi = function(){
165
-
172
+
166
173
  //adding class pages-tree-start to first li element of tree
167
174
  $('#pages-records.pages-tree #page-sortable-list').find('li:first').addClass('pages-tree-start');
168
175
 
@@ -178,15 +185,43 @@ $(document).ready(function(){
178
185
 
179
186
  //if not then add class pages-tree-end to first li element of nested element of tree
180
187
  nestedElt.find('li:first').addClass('pages-tree-end');
181
-
188
+
182
189
  } // end if
183
-
190
+
184
191
  //adding class pages-tree-end to last li element of nested element of tree
185
192
  $('.page-nested').find('li:last').addClass('pages-tree-end');
186
193
 
187
194
  } // end findFirstLi function
188
195
 
196
+ /*
197
+ * @params : None
198
+ * @return : None
199
+ * @purpose : function to validate link_url value
200
+ */
201
+ var validateValue = function(e){
202
+
203
+ // if user has something in text box then test it
204
+ if($(this).val().length > 0){
205
+
206
+ // if entered value matches the pattern of regular expression
207
+ if(/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test($(this).val())){
208
+
209
+ // return true
210
+ return true;
211
+
212
+ } else {
213
+
214
+ // give a alert message and return false
215
+ alert("invalid URL");
216
+ return false;
217
+ } // end inner if
218
+
219
+ } // end outer if
220
+
221
+ }; // end function
222
+
189
223
  //function call to initialize all the methods required when document is ready
190
224
  initialize();
191
225
 
192
- }); //end ready function
226
+ }); //end ready function
227
+
@@ -6,11 +6,11 @@
6
6
 
7
7
  float:left;
8
8
  padding: 0px;
9
- margin-left: 20px;
10
- margin-bottom: 20px;
9
+ margin-left: 40px;
10
+ margin-bottom: 100px;
11
11
  position: relative;
12
- width: 48%;
13
- height: 48%;
12
+ height: 100%;
14
13
  text-align: center;
14
+ border: 1px solid cyan;
15
+ }
15
16
 
16
- }
@@ -0,0 +1,64 @@
1
+ /*
2
+
3
+ * @File Name : page_form.css.scss
4
+ * @Company Name : Mindfire Solutions Private Limited
5
+ * @Creator Name : Vikram Kumar Mishra
6
+ * @Date Created : 2012-07-12
7
+ * @Date Modified :
8
+ * @Last Modification Details :
9
+ * @Purpose : Place all the styles related to the pages form here.
10
+
11
+ */
12
+
13
+ input[type=text]{
14
+
15
+ width:200px;
16
+
17
+ }
18
+
19
+ .field{
20
+ margin-bottom: 10px;
21
+ }
22
+
23
+ input[type=text], textarea {
24
+ -moz-border-bottom-colors: none;
25
+ -moz-border-image: none;
26
+ -moz-border-left-colors: none;
27
+ -moz-border-right-colors: none;
28
+ -moz-border-top-colors: none;
29
+ border-color: #959595 #D3D3D3 #D3D3D3 #959595;
30
+ border-style: solid;
31
+ border-width: 1px;
32
+ color: #333333;
33
+ font-family: arial;
34
+ font-size: 12px;
35
+ margin: 0 0 0.2em;
36
+ width: 300px;
37
+ padding: 0.4% 0.5%;
38
+ }
39
+
40
+ ul{
41
+
42
+ padding: 0px;
43
+
44
+ }
45
+
46
+ li a{
47
+ cursor: pointer;
48
+ }
49
+ #page-tabs{
50
+ margin-top: 10px;
51
+ width:900px;
52
+ }
53
+ .page-part-fields{
54
+
55
+ padding-top: 10px;
56
+
57
+ }
58
+
59
+ #dashboard a.create-page-part-link{
60
+
61
+ padding: 5px 10px;
62
+
63
+ }
64
+
@@ -43,7 +43,6 @@
43
43
 
44
44
  width: 100%;
45
45
  text-align: center;
46
- background-color: yellow;
47
46
  padding-top: 10px;
48
47
  padding-bottom: 10px;
49
48
  margin-bottom: 10px;
@@ -55,7 +54,6 @@
55
54
 
56
55
  width: 100%;
57
56
  text-align: center;
58
- background-color: yellow;
59
57
  padding-top: 10px;
60
58
  padding-bottom: 10px;
61
59
  position: relative;
@@ -64,32 +62,111 @@
64
62
 
65
63
  }
66
64
 
67
- #page-left-body{
65
+ .page-left-body{
68
66
 
69
- width: 20%;
70
67
  text-align: center;
71
- background-color: blue;
72
- min-height:200px;
73
- border: 1px solid red;
68
+ min-height:350px;
74
69
  float:left;
75
70
  }
76
71
 
77
- #page-main-body{
72
+ .page-main-body{
78
73
 
79
- min-height:100px;
74
+ min-height: 350px;
80
75
  text-align: center;
81
76
  margin-left: 10px;
82
77
  margin-right: 10px;
83
78
  background-color: white;
79
+ float: left;
84
80
  }
85
81
 
86
- #page-right-body{
82
+ .page-right-body{
87
83
 
88
- width: 20%;
84
+ width: 27%;
89
85
  text-align: center;
90
- background-color: blue;
91
- min-height:200px;
92
- border: 1px solid red;
93
- float:right;
86
+ min-height:350px;
87
+ float: left;
88
+ }
89
+
90
+ .pages-menu {
91
+
92
+ width: 100%;
93
+ float: left;
94
+ text-align: right;
95
+ margin-bottom: 20px;
96
+
97
+ }
98
+
99
+ .pages-menu-li{
100
+
101
+ list-style-type: none;
102
+ float: left;
103
+ margin-left: 10px;
104
+ }
105
+
106
+ .pages-menu-ul {
107
+ margin: 0;
108
+ padding: 0;
109
+ height: 1em;
110
+ float: right;
111
+ }
112
+ .pages-menu-ul li {
113
+ list-style: none;
114
+ float: left;
115
+ }
116
+ .pages-menu-ul li a {
117
+ display: block;
118
+ padding: 3px 8px;
119
+ text-decoration: none;
120
+ }
121
+
122
+ .pages-menu-ul li ul {
123
+ display: none;
124
+ width: 10em; /* Width to help Opera out */
125
+ background-color: #69f;
126
+ z-index: 1000;
127
+
128
+ }
129
+
130
+ .pages-menu-ul li:hover ul {
131
+ display: block;
132
+ position: absolute;
133
+ margin: 0;
134
+ padding-bottom: 5px;
135
+ z-index: 1000;
136
+ }
137
+
138
+ .pages-menu-ul li:hover li {
139
+ float: left;
140
+ }
141
+
142
+ .pages-menu-ul li:hover li a {
143
+ border-bottom: 1px solid #fff;
144
+ color: #000;
145
+ }
146
+
147
+ .pages-menu-ul li li a:hover {
148
+ background-color: #8db3ff;
149
+ }
150
+
151
+ #default-page-main-body, #one-column-main-body {
152
+ width: 100%;
153
+ text-align: left;
154
+ }
155
+ #two-column-main-body {
156
+ width: 70%;
157
+ text-align: left;
158
+ }
159
+ #three-column-main-body {
160
+ width: 50%;
161
+ text-align: left;
162
+ }
163
+ #two-column-left-body, #two-column-right-body {
164
+ width: 28%;
165
+ text-align: left;
166
+ }
167
+
168
+ #three-column-left-body, #three-column-right-body {
169
+ width: 20%;
170
+ text-align: left;
94
171
  }
95
172
 
@@ -10,12 +10,25 @@
10
10
 
11
11
  */
12
12
 
13
+ *{
14
+ color: #41403C
15
+ }
16
+
17
+ body {
18
+ background-color: #fff;
19
+ font-family: verdana, arial, helvetica, sans-serif;
20
+ font-size: 13px;
21
+ line-height: 18px; }
13
22
 
14
23
  li{
15
24
  list-style-type: none;
16
25
  display:inline;
17
26
  }
18
27
 
28
+ a{
29
+ text-decoration: none;
30
+ }
31
+
19
32
  .even
20
33
  {
21
34
  background-color: aquamarine;
@@ -33,19 +46,17 @@
33
46
  display: block;
34
47
  }
35
48
 
36
- #application-actions{
49
+ .application-actions {
37
50
  float: right;
38
- padding-left: 15px;
39
51
  padding-top: 0;
40
- width: 30.7%;
52
+ width: 20%;
41
53
  }
42
54
 
43
55
 
44
56
  #pages-records {
45
57
 
46
58
  float: left;
47
- width: 67.7%;
48
- border: 1px solid red;
59
+ width: 63%;
49
60
 
50
61
  #page-sortable-list {
51
62
  margin-top: 6px;
@@ -82,9 +93,10 @@
82
93
  display: inline;
83
94
  line-height: 28px;
84
95
  float: right;
85
- position:relative;
96
+ position:absolute;
86
97
  top: 3px;
87
- width: 120px;
98
+ right: 20px;
99
+ width: 150px;
88
100
  text-align: right;
89
101
 
90
102
  a{
@@ -141,32 +153,33 @@
141
153
  padding: 0;
142
154
  }
143
155
 
144
- .error-explanation
156
+ .error-explanation li
145
157
  {
146
158
  color: red;
147
159
  text-align: left;
160
+ font-weight: bold;
148
161
  }
149
162
 
150
- .pages-menu {
151
-
152
- width: 100%;
153
- float: left;
154
- text-align: right;
155
- margin-bottom: 10px;
156
-
163
+ .notice {
164
+ color: green;
165
+ font-size: 16px;
157
166
  }
158
167
 
159
- .pages-menu-li{
160
-
161
- list-style-type: none;
162
- float: left;
163
- margin-left: 10px;
168
+ #page-new{
169
+ /*background-image: url("/assets/mcms_pages/icons/add.png");
170
+ background-position: 12px 50%;
171
+ background-repeat: no-repeat;*/
172
+ display: block;
164
173
  }
165
174
 
166
- .pages-menu-li ul {display: none; }
167
-
168
- .notice {
169
- color: green;
175
+ #logout-link{
176
+ float: right;
177
+ color: #41403C;
178
+ font-weight: bold;
170
179
  font-size: 16px;
171
180
  }
172
181
 
182
+ .field_with_errors{
183
+ display: inline;
184
+ }
185
+